본문 바로가기

CS/컴퓨터 네트워크

[네트워크] Ch1.3 레이어드 프로토콜 모델(Layered Protocol Model)

 

본 글은 학교 네트워크 수업을 들으며, "Computer Networking: A Top-Down Approach 8ed(컴퓨터 네트워킹: 하향식 접근 제8판)"을 기반으로 공부한 내용을 정리한 글입니다.

 

Ch1.3 레이어드 프로토콜 모델(Layered Protocol Model)

레이어트 모델의 필요성(Need of Layered Protocol Model)

레이어드 모델 사용 시의 이점들

- 어떤 레이어를 변경시킨 게 다른 레이어에 영향을 주지 않음.

-> 즉, independent함 : layer을 하나씩만 보면 되니까 편리함!!

- 프로토콜 설계와 구현을 쉽게 할 수 있음.

- 각 레이어에서 활동하는 회사들끼리 경쟁을 부추길 수 있음

- 프로토콜을 더 잘 배우고 이해할 수 있음

=> `요약) 레이어링은 각 레이어를 독립적으로 만들어서 프로토콜을 쉽게 이해하고 설계할 수 있도록 도움.`

레이어링 예시

왼쪽 : 네트워크 구조에서의 예시, 오른쪽 : 현실에서의 예시로 비유

인터페이스 : 인접한 두 레이어가 데이터를 주고 받는 방법을 정의한 것.

 

Independence of Protocol and Interface 

레이어 모델을 사용하는 두 개체가 성공적으로 통신하기 위해선 3가지의 필요조건이 있음.

1. 두 개체 간 `레이어 수가 같아야 함`.

2. 대응되는 레이어끼리 `프로토콜이 같아야 함`.

3. 인접하는 레이어끼리 `인터페이스가 같아야 함`.

 

- 이 때, 어떠한 것들이 layer가 동일하며 역할이 동일할 때 둘을 `peer-to-peer` 하다고 함.

- 이 때, 서로 다른 프로토콜끼리/인접하지 않은 레이어끼리는 통신이 불가능함.

이러한 프로토콜과 인터페이스의 `독립성(independence`는 네트워크 구조에 있어서 핵심이 됨.


Layered Protocol Reference Model

Standardized reference protocol architectures(표준화된 레퍼런스 프로토콜 구조들)

- 어떤 기기든간에 서로 통신 가능함

- 어떤 판매 회사든간에 잘 팔릴 만한 상품을 만들 수 있음.

- 소비자들은 판매 회사랑 상관없이 원하는 통신 기기를 고를 수 있음.

 

이러한 architecture에는 대표적으로 아래 2가지가 있음.

1. OSI(Open Systems Interconnection) Reference Model

- ISO에서 공식적으로 만든 표준임. 

- 7개의 레이어로 되어 있음.

- 약간 좀 학문적이고 이론적인 시스템임.

2. TCP/IP protocol suite

- 사실상의 표준

- 5개의 레이어로 되어 있음.

- 오늘날 가장 널리 쓰임.

 


OSI 7 Layer Model

1. Application layer(응용 계층)

- OSI 환경에 접속하기 위한 어플리케이션들이 정의되어 있음.

ex. 동영상 재생 어플리케이션

 

2. Presentation layer(표현 계층)

- 어플리케이션에 쓰일 데이터 포맷이 정의되어 있음.

ex. 데이터 포맷과 부호화(coding), 데이터 압축, 암호화

 

3. Session layer(세션 계층)

- 두 어플리케이션 사이의 대화를 컨트롤함.

ex. 대화 규칙들(open, close, play, stop 등), 리모컨의 왼쪽 오른쪽 방향키, Error recovery

 

4. Transport layer(전송 계층)

- end system 간에 데이터 교환을 어떻게 잘 할 수 있을까 그 논리적 통신 규칙을 제공함.

ex. 오류가 났을 때는 어케할까 우리? 통신의 시작과 끝은 어떻게 정의할래?

- Common transport layer services : error free, in sequence, no losses, no duplicates, quality of service, ...

 

5. Network layer(네트워크 계층)

- end system 간 패킷 전달을 위한 라우팅과 포워딩을 수행하는 계층.

- Basic network layer services : 라우팅, 포워딩

 

6. Data link layer(데이터 링크 계층)

- 터미널간에 reliable한 프레임 전달을 담당함.

- datalink layer services : framing, MAC, error detection and control, flow control, ...

 

7. Physical layer(물리 계층)

- 장치 간의 물리적인 인터페이스와 비트 전송을 담당함.

- 실제로 데이터가 비트 단위로 전송되는 레이어임.

 

Q. TCP/IP에서 어플리케이션 레이어 하나만 쓰는 이유?

A. 레이어들 간의 독립성 때문에, 각 레이어는 많은 회사들을 통해 다뤄질거고 이러한 레이어들은 인터페이스를 통해서만 통신이 가능함.

따라서 App. ~ Ses. layer을 하나의 App. layer로 합쳐서 짜면 훨씬 설계하기가 더 편함.