Protocol Layers and Their Service Models (James F. Kurose, Keith Ross - Computer Networking- A Top Down Approach-Pearson (2020) 교과서 참고)

park.js·2024년 9월 8일
3

CS

목록 보기
5/6

모든 내용과 이미지는 Computer Networking- A Top Down Approach-Pearson을 참고하였습니다.

Chapter 1.5


이번 글에서는 네트워크의 프로토콜 계층 구조와 서비스 모델을 다루며, 인터넷 프로토콜 스택과 OSI 모델에 대해 설명할 것임.
또한, 네트워크 통신에서의 캡슐화(encapsulation)역캡슐화(de-encapsulation) 과정도 포함하여 정리할 것임.

1. 네트워크 계층 구조의 필요성

인터넷은 매우 복잡한 시스템임.
수많은 애플리케이션과 프로토콜, 다양한 종단 시스템, 패킷 스위치 및 다양한 링크 레벨 매체들이 존재함.
이 복잡한 시스템을 어떻게 체계적으로 정리할 수 있을까?
다행히 네트워크 아키텍처를 설명하는 계층적 구조가 존재함. 계층적 구조는 복잡한 시스템을 명확하게 설명하고 유지보수할 수 있는 유용한 도구임.

2. OSI 7계층 모델과 인터넷 프로토콜 스택

OSI 모델

OSI 모델은 7계층으로 이루어진 네트워크 통신 모델임:


1. Application (응용)
2. Presentation (표현)
3. Session (세션)
4. Transport (전송)
5. Network (네트워크)
6. Data Link (데이터 링크)
7. Physical (물리)

이 중에서 PresentationSession 계층은 인터넷 프로토콜 스택에서 생략됨. 이 두 계층의 기능은 필요에 따라 응용 프로그램에서 구현됨.

  • Presentation 계층은 데이터를 암호화하거나, 압축하고, 기계 특유의 형식으로 변환하는 역할을 함. 예를 들어, HTTPS 프로토콜에서 암호화와 복호화가 이 계층에서 이루어짐.
  • Session 계층은 통신 중 동기화와 체크포인트, 데이터 교환 복구 등을 담당함. 하지만, 이 기능도 애플리케이션에서 구현될 수 있음.

인터넷 프로토콜 스택(중요!!!!)

인터넷 프로토콜 스택은 OSI 모델보다 간소화된 5계층 모델로 이루어짐:

  1. Application (응용)
  2. Transport (전송)
  3. Network (네트워크)
  4. Link (데이터 링크)
  5. Physical (물리)
  • Application Layer (응용 계층): 사용자가 사용하는 애플리케이션과 해당 프로토콜을 포함함. 예를 들어 HTTP, FTP, SMTP 등이 있음.
  • Transport Layer (전송 계층): 애플리케이션 간 데이터 전송을 담당하며, TCPUDP 프로토콜이 사용됨. TCP는 신뢰성 있는 데이터 전송을 보장하는 반면, UDP는 신뢰성 없이 빠르게 데이터를 전송함.
  • Network Layer (네트워크 계층): 데이터를 송수신할 경로를 찾아주며, IP 주소와 라우팅을 담당함.
  • Link Layer (데이터 링크 계층): 인접한 네트워크 장치 간의 데이터 전송을 담당하며, 이더넷이나 Wi-Fi 등이 속함.
  • Physical Layer (물리 계층): 물리적인 매체를 통해 데이터를 전송함. 케이블이나 무선 신호를 통해 데이터를 비트 단위로 주고받음.

3. 캡슐화(Encapsulation)와 역캡슐화(De-encapsulation)

네트워크에서 데이터가 전송될 때, 각 계층은 데이터를 처리하면서 자신만의 헤더를 추가하는 캡슐화 과정을 거침. 그리고 수신 측에서 이 헤더들을 제거하는 역캡슐화 과정을 거쳐 데이터가 상위 계층으로 전달됨.

캡슐화

  1. Application Layer: 사용자가 입력한 데이터가 메시지로 전송됨.
  2. Transport Layer: 메시지에 세그먼트가 추가됨.
  3. Network Layer: 세그먼트IP 헤더를 추가하여 데이터그램이 됨.
  4. Link Layer: 프레임 헤더프레임 트레일러가 추가됨.
  5. Physical Layer: 비트로 변환되어 물리적 매체를 통해 전송됨.

역캡슐화

수신 측에서는 이 과정을 역순으로 수행함. 물리 계층에서 받은 비트 데이터를 링크 계층에서 프레임으로 처리하고, 네트워크 계층에서 데이터그램으로 변환하여 목적지까지 도달함.

4. Why Layering?

계층 구조의 주요 이점은 다음과 같음:

  1. 복잡한 시스템 처리:
    • 복잡한 네트워크 시스템을 계층으로 나눠서 각 계층의 기능을 명확하게 정의할 수 있음.
  2. 모듈화의 장점:
    • 계층 구조 덕분에 한 계층의 구현을 변경하더라도 다른 계층에 영향을 미치지 않음. 이를 통해 시스템 유지보수 및 업데이트가 용이해짐.
  3. 계층화의 단점:
    • 계층 구조는 중복된 기능을 초래할 수 있음. 예를 들어, 오류 검출 기능이 여러 계층에서 중복되어 있을 수 있음. 또한, 각 계층에서 추가되는 오버헤드로 인해 성능 저하가 발생할 수 있음.

결론

네트워크 통신의 계층적 구조는 복잡한 시스템을 이해하고 관리하는 데 유용한 도구임. OSI 모델과 인터넷 프로토콜 스택은 계층적 구조의 대표적인 예로, 네트워크 통신의 각 단계에서 어떤 일이 일어나는지 명확하게 설명함. 캡슐화역캡슐화 과정은 데이터를 안전하고 효율적으로 전달하기 위한 핵심 개념임.


profile
참 되게 살자

1개의 댓글

comment-user-thumbnail
2024년 9월 29일

이해가 너무 잘 돼요..ㅠㅠ 정리를 너무 잘하셨네요..!

답글 달기