ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [정보통신공학] Protocol Architecture (1)
    Major/Data and Computer Communications 2022. 4. 13. 21:07

    Protocol Architecture 

    - 하드웨어와 소프트웨어어의 layered structrue → systems 사이 data 교환을 support

    - Modules are arranged in a vertical stack 

      → N층에 있다면 (N-1)층까지의 기능을 의존

      → stack에 있는 각 계층은 functions의 subset처럼 기능

      → 각각의 계층 independent

    - ex : TCP/IP protocol suite and OSI model

     

    Key Features of a Protocol

    - function은 반드시 both systems에 exist

    - protocol : 컴퓨터간에 정보를 주고 받을 때의 통신방법에 대한 규칙과 약속

     

    ① Syntax : format of data blocks 데이터 블록의 형식을 다룬다

    ② Semantics : control information for coordination and error handling 조정과 오류관리를 위한 제어 정보를 다룬다

    ③ Timing : speed matching and sequencing 속도 조절과 순서 조절을 다룬다

     

    Simple Protocol Architecture

    - Communication tasks are organized into three relatively independent layers:

     

    ① Network access layer

    - Concerned with the exchange of data between computer and network

    - 컴퓨터와 네크워크 사이 데이터 교환

    ② Transport layer

    - Provides reliable data transfer

    ③ Application layer

    - Contains logic to support applications 

     

     

    [ Network access layer ]

     

    - 호스트들 간의 논리적 통신을 돕는다

    - end system 과 접근하는 network 사이 data exchange에 관여한다

    - 목적지 주소를 제공

    - 같은 네트워크에 연결되어있는 시스템끼리 access & route

    - ☆ 네트워크에 따라 소프트웨어가 달라질 수 있다 (Software depends on the type of networks)

    - Higher-layers와는 관련이 없다, 네트워크 문제가 생기면 해당 계층(network access layer)에서 해결해야한다

       => 각각의 계층 independent

     

    [ Transport layer ]

     

    - 응용 프로세스 간의 논리적 통신을 돕는다

    - end system에서 돌아간다

    - ☆ reliable delivery 데이터를 제공하는데 관여한다

    - the nature of the applications 와는 independent

     

    [ Application Layer ]

     

    - end system에서만 존재한다

    - 각 type의 application마다 분리된 module이 필요하다

    - user applications를 지지할 수 있는 logic을 포함한다

     

     

     

     

    컴퓨터끼리 통신할때 항상 같은 계층끼리만 연결(통신) 가능하다 (Application layer 끼리, Transport layer 끼리) => Peer Layer

     

    Addressing

    통신을 하기 위해 두 개의 addressing이 필요하다

    (1) Each computer on the network has a unique network address (컴퓨터 A,B,C를 찾아가는 주소)

    (2) Each application has an address that is unique with that computer (SAPs) (컴퓨터 내부 Application을 찾아가는 주소)

    컴퓨터를 찾아가는 주소, 컴퓨터 내부 applicaiton을 찾아가는 주소가 필요하다

     

    protocol 구조를 간단하게 그림으로 살펴보자. 컴퓨터 A와 B가 통신하는 것을 나타낸 것이다

    컴퓨터 A에서 Applicaiton layer에 있던 data가 transport layer로 전송된다

    그 과정에서 data앞에 port 1에서 port 2로 가라는 주소 header가 붙는다

    이 주소 header를 포함한 transport에 있는 data 전체를 Protocol Data Unit (PDU)라고 한다. 이것에 대해서는 뒤에서 살펴보자

     

     또 transport layer 에서 network access layer로 넘어갈때 컴퓨터 A에서 B로 가라는 주소 header가 붙고

    이 header와 기존 data 모두 합쳐 network access PDU가 된다

     

    상위 계층에서 내려온 data는 하위 계층에게 단지 하나의 데이터일 뿐이다

    상위 계층에서 data와 header를 합친 것인지 전혀 관심이 없으므로 그냥 전체를 하나의 데이터로 보면된다

     

    주소에 따라 A의 데이터는 컴퓨터 B로 가서 2번 포트로 들어가게된다

     

    컴퓨터 A에서 데이터 앞에 주소 header를 붙이는 것을 encapsulation이라고 하고

    컴퓨터 B에서 데이터 앞에 있던 주소 header를 떼는 것을 decapsulation이라고 한다

     

     

    Protocol Data Unit (PDU)

    앞서 말한 PDU는 상위 계층 데이터와 현재 계층 데이터를 합한 전체 데이터를 말한다

    상위 계층 데이터가 PDU header에 해당한다고 생각하면 된다

    일반적으로 control information은 PDU header에 존재한다

     

    transport layer의  header는 통신이 도착하는 컴퓨터에서 쓰인다고 생각하면 된다

     

    Network Access Protocol

    transport layer에서 segement(TL PDU)를 받은 후, network access protocol은 control information이 담겨있는 network access PDU를 만든다

    network access PDU header에는 통신하는 컴퓨터들의 주소들이 담겨있다

     

    정리하자면, 
    - transport layout PDU : 도착한 컴퓨터 내부에서 쓰일 정보
    - network access PDU : 통신하는 컴퓨터들의 주소 정보

     

Designed by Tistory.