[CS공부] 네트워크 구조(6)-Frame, Packet, Segment, Datagram (5계층 기준 데이터 단위 정리)

Min Kim·2023년 2월 20일
0

CS 공부

목록 보기
7/15
post-thumbnail

들어가기 전에


Frame, Packet, Segment, Datagram의 개념을 알아봅시다.

1. 단위 비교


1) Segment

  • TCP 단계에서 사용하는 단위 (전송 계층)
  • 스트림 데이터를 일정 길이로 분해(세그먼트화)한 조각
  • 헤더는 포트

😜 추가 지식

  • 일정 길이의 최대 길이 : MSS(Maximum Segment Size). 패킷의 최대 크기에 기초해서 만들어 짐 (헤더 부분이 빠지므로 패킷 크기보다 작음)
  • 소켓 단계에서 부르는 데이터는 file이라 쓰고 이걸 스트림 데이터라고 부름

2) Packet

  • IP 단계에서 사용하는 단위 (네트워크 계층)
  • 전송을 위해 분할된 데이터 조각(세그먼트)에 목적지까지의 전달을 위하여 Source IP 와 Destination IP가 포함된 IP Header가 붙은 형태의 메세지
  • 헤더는 IP

😜 추가 지식

  • 패킷의 최대 크기 : MTU(Maximum Transport Unit). 보통 1500byte 크기

3) Frame

  • TCP/IP 단계 아래에서 사용하는 단위 (데이터 링크 계층)
  • 최종적으로 데이터를 전송하기 전에 패킷에 Header(Mac Address 포함)CRC를 위한 Trailer가 붙은 메세지
  • 헤더는 MAC 주소

😜 추가 지식

  • MAC 주소와 IP 주소의 차이
    • IP 주소는 네트워크 통신에 있어서 각각의 통신기기(컴퓨터, 노트북, 스마트폰 등)에 할당된 식별번호
    • MAC 주소는 IP주소와 마찬가지로 네트워크 통신에서 통신기기의 식별번호
    • 다만 IP주소는 임시적으로 다른 주체(통신사)에 의해 할당 되는 것, MAC 주소는 통신기기의 하드웨어 자체에 부여된 고유한 식별번호

4) Datagram (IP Datagram)

  • IP 단계에서 기본 전송 단위
  • IP 계층의 가변길이 패킷
  • 헤더데이터 부분으로 구성
  • 인터넷 문서(RFC)에서는, 네트워크계층 상의 프로토콜 데이터 단위(PDU)를 데이터그램 이라고 함

😜 추가 지식

  • 여기서 쓰이는 IP 데이터그램과 소켓 단계에서 쓰이는 데이터그램 차이
    • 소켓 단계에서 말하는 데이터그램은 패킷교환에서 각각 독립적으로 취급되는 각각의 패킷을 말함
    • 그래서 데이터그램 방식으로 통신한다는 패킷교환에서 각 패킷이 독립적으로 처리되어 목적지까지 도달하는 방식(UDP)을 뜻함
    • 비연결성이 특징

2. 캡슐화


캡슐화(Encapsulation)

  • 데이터에 제어 정보를 덧붙이는 것
  • 캡슐화는 어떤 네트워크를 통과하기 위해 전송하려는 데이터를 다른 무언가로 감싸서 보내고 해당 네트워크를 통과하면 감싼 부분을 다시 벗겨내어(역 캡슐화) 전송하는 기능
  • 상위 계층 데이터, 헤더를 모두 하위 계층 데이터 부분에 포함, 해당 계층 헤더를 앞에 삽입
  • 데이터 통신시, 해당 유닛(Unit)을 표준으로 통신하기 때문에 그 모양으로 맞추기 위해 캡슐화를 함

PDU(Protocol data unit) 구성

  • SDU(Service Data Unit): 전송하려는 데이터
  • PCI(Protocol Control Information): 프로토콜 제어 정보, 송신자 수신자 주소, 오류 검출 코드

😜 추가 지식

  • PDU는 계층의 응용 데이터
  • 각 계층에서 PDU의 본체는 상위 계층이 다루는 PDU

참고


해당 사이트의 내용을 참고로 작성했습니다. 추후에 더 알게 되는 내용들을 추가하겠습니다.

Difference Between Segments, Packets and Frames
Just Blue
PDU(Protocol Data Unit)_Frame, Packet, Segment, Datagram
[네트워크] Segment, Packet, Frame, Datagram
테너토너
네트워크 데이터 단위 정리 (매우 중요!)
데이터그램 (Datagram) 이란?

profile
Better & Better 꾸준히 성장하는 개발자

0개의 댓글