본문 바로가기
CS/데이터 통신

2. Protocol Model

by D.O.T 2024. 4. 22.
Seven layers of the OSI Model

 

OSI Model's Commuication

OSI는 응용 프로그램 계층, 표현 계층, 세션 계층, 전송 계층, 네트워크 계층, 데이터 링크 계층, 물리 계층으로 7개의 레이어를 가진다. 흔히, 자격증 공부에서는 '물데네 전세표응'으로 외우는 유명한 녀석이다.

 

OSI의 7계층을 살펴보면 프로토콜의 원칙을 잘 지키고 있음을 알 수 있다.

각 레이어는 양방향으로 통신이 되며, 같은 계층을 가지고 있다.

참고로 네트워크, 데이터 링크, 물리 계층의 경우 통신 상 존재하는 중간 라우터, 스위치 등에 의해 추가적인 통신이 발생

 

각 계층은 어떤 일을 하는지 보자.

 

Physical Layer

 

그림 A. 물리 계층 표현

 

물리 계층은 그림 A와 같이 구성되어있다.

프로토콜 원칙에서 설명했지만, 각 계층은 두가지 역할을 수행해야 한다고 했다. 이 그림은 그것을 나타내고 있다.

실제로 통신 상 선을 타고 다음 목적지로 이동할 수 있는 역할을 하는 계층이다. 이 때, 디지털 신호로 변환해서 전송하게 된다. 반대로 통신 상 선을 타고 도착한 데이터를 수신하고 데이터 링크로 전달하는 역할도 하는 계층이다.

그림에 보면 맨 앞에 빨간 부분(110)을 hop이라고 부르고 이것은 목적지로 향하는 정보이다.

 

자세한 내용은 네트워크에서 알 수 있으니 이정도 개념만 알고 있으면 된다.

 

Data link Layer

그림 B. 데이터 링크 계층 표현

데이터 링크 계층은 다음 hop으로 전달될 프레임을 추가하는 역할을 한다.

여기서 말하는 프레임이란 현재 데이터에 대한 오류 검출에 대한 비트를 추가하는 것을 의미한다.

송신 측에서는 network layer로 부터 데이터를 전달 받고 오류에 대해 검증할 수 있는 코드를 추가하고 물리 계층으로 전달한다. 수신 측에서는 프레임을 통해 데이터에 대한 오류 검증 코드가 유효한지 확인하고 network layer로 전달한다.

자세한 내용은 뒤에서 다루겠다.

 

Network Layer

 

그림 C. 네트워크 계층 표현

 

네트워크 계층은 Transport Layer로부터 받은 패킷에 대해 목적지를 정한다.

이 때, 목적지까지의 각 라우터를 hop이라고 하는데 해당 hop의 위치를 정하게 된다.

마찬가지로 양 레이어로 송, 수신한다.

hop

만약, A에서 D에 대한 목적지를 정했다고 해보자.

그럼 A는 네트워크 계층에서 D로 가기 위한 중간 라우터인 B(hop) 정보를 추가한다.

B에서는 패킷을 전달받고 패킷 헤더에서 목적지 주소를 찾고 D로 가기 위한 중간 라우터인 C(hop) 정보를 추가한다.

C에서는 직접적으로 D로 연결하게 되는데 이런 과정을 해주는 것이 네트워크 계층이다.

 

정확히 어떻게 하는지는 네트워크를 공부하면서 알게 될 것이므로 이정도만 알면 된다!

 

Transport Layer

 

실질적으로 패킷으로 만드는 단계이다.

데이터를 세그먼트라는 단위로 조각내어 하나의 데이터 그램을 생성하는데 이건 나중에 알면 된다.

전송 계층

그 외, 다른 계층은 통신의 개념과는 많이 다른가보다 따로 교재에서 다루고 있지 않다.


TCP/IP 모델

TCP/IP Model

 

TCP/IP에서는 5개의 Layers이 있다. 본 포스트도 교재와 동일하게 OSI 계층과의 연관성을 이해하기 위해 TCP/IP의 3계층(Internet), 2계층(Network Interface), 1계층(Hardware Devices)을 OSI 계층 명칭과 동일시한다.

 

실제 인터넷에서 통신 과정

 

실제로 인터넷을 이용해 통신할 때는 TCP/IP가 사용된다. 제어판에서 네트워크 관리만 들어가봐도 TCP/IP를 사용하고 있음을 알 수 있다. 앞에서 각 계층은 설명한 OSI 계층과 같은 역할을 수행한다.

 

다만, 표현 방식을 정확히 할 필요가 있을 것 같다.

Application 계층으로 부터 Original Data에 각 계층에 Header를 추가하는 형태로 패킷을 생성하여 통신하게 된다.

이 과정을 Encapsulate(캡슐화)라고 하고 반대로 수신된 패킷을 응용 프로그램에 전달되는 과정을 Decapsulate라고 한다.

 

Multiplexing & Demultiplexing

 

그 외에도 Multiplexing과 Demultiplexing에 대한 개념을 알고 있으면 좋다.

TCP/IP에서는 출발지에서 특정 프로토콜은 TCP로 특정 프로토콜은 UDP로 생성할 수 있는데 이 과정을 Multiplexing이라고 하고 반대로 목적지에서 반대 과정인 Demultiplexing도 수행한다.

'CS > 데이터 통신' 카테고리의 다른 글

4. Physical Layer - Digital Signals  (0) 2024.04.24
3. Physical Layer - Data와 Signals 그리고 Bandwidth  (0) 2024.04.23
1. Protocol Layering  (1) 2024.04.22