데이터, 세그먼트, 패킷

유영·2023년 5월 3일
0

HTTP

목록 보기
17/22

1. 프로토콜 데이터 단위 (PDU)

프로토콜 데이터 단위(Protocol Data Unit)는 데이터 통신에서
상위 계층이 전달한 데이터에 붙이는 제어정보를 뜻한다.

모든 계층에서, 우리가 전송하는 데이터를 데이터라고 부를까? PDU를 알고난 후 부터는 그렇지 않을 것이다.
물론 데이터 자체는 동일하지만 각 레이어를 거치면서 헤더 정보가 추가되면서 이름이 달라진다.

  • 사용자는 Data 라고 부르고,
  • TCP는 Segment 라고 부르고,
  • IP는 Packet 이라고 부르고,
  • 데이터링크는 Frame,
  • 컴퓨터 하드웨어는 그것을 Bit 로 연산하고 다루게 되는 것.
  • Datagram : 사용자의 순수한 메시지를 다르게 부르는 말 (UDP)

2. 세그먼트 (전송 계층(4))

예를 들면, 상위 계층에서 데이터를 전달받은 전송계층에서는 아래의 정보들를 추가해 그룹화 한다.
이때부터 데이터는 데이터가 아니라, 세그먼트라고 불리는 것이다.

  • 발신지 포트 : 발신하는 application의 포트
  • 목적지 포트 : 수신해야 할 application의 포트
  • 순서 번호 : 순차적 전송할 경우 순서를 붙이며, 순서가 어긋나면 목적지 프로토콜이 이를 바로 잡는다.
  • 오류검출코드 : 발신지와 목적지 프로토콜은 세그먼트를 연산하여 오류 검출 코드를 각각 만든다.
  • 만약 발신지에서 전송한 세그먼트에 포함된 오류 검출 코드와 목적지에서 만든 오류 검출 코드가 다르다면
    전송되는 과정에서 오류가 발생한 것이다. 이 경우, 수신측은 그 세그먼트를 폐기하고 복구 절차를 밟는다.
  • 오류검출코드는 체크섬, 프레임 체크 시퀀스라고도 부른다.

3. 패킷 (네트워크 계층(3))

전송 계층으로 부터 전달받은 세그먼트는 네트워크 계층의 정보를 포함해 패킷이라고 불리게 된다.

  • 발신지 컴퓨터 주소(Destination IP) : 패킷의 발신자 주소
  • 목적지 컴퓨터 주소(Source IP) : 패킷의 수신자 주소
  • 서비스 요청 : 네트워크 접속 프로토콜은 우선 순위와 같은 서브 네트워크의 사용을 요청할 수 있다.

    전반적인 네트워킹에서의 packet의 의미
    Circuit switching vs Packet switching 의 개념으로 회선교환(circuit switching)에 대비되는 모든 데이터 교환을 일컬어 packet switching이라고 할 수 있다. ATM cell switching은 물론이고, Ethernet frame switching, Frame Relay frame switching, 등등 회선교환이 아닌 모든 데이터 단위가 packet의 범주에 들어간다.

4.그 외 헷갈리던 용어 정리

  • Datagram : 데이터그램은 사용자의 순수한 message를 다르게 부르는 말이다.
  • IP Packet : IP packet에서의 packet은 이 사용자 datagram을 layer-2의 MTU에 맞춰서 토막을 낸 상태. 그러니까 packet은 토막난 상태의 사용자 정보 스트림을 말한다.
  • SDU(Service Data Unit) : PDU와 SDU는 다른 용어이니 헷갈리면 안된다. SDU는 상향/하향 통신 레이어 간에 전달되는 실제 정보를 말한다. PDU는 동일 레이어 내에서 데이터 단위를 부르는 이름이고.
    즉, PDU = PCI(프로토콜 통신 유닛의 줄인말로 쉽게 말하면 헤더 정보) + SDU 라고 생각하자.

참고
https://velog.io/@hidaehyunlee/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%84%B8%EA%B7%B8%EB%A8%BC%ED%8A%B8-%ED%8C%A8%ED%82%B7-%ED%97%B7%EA%B0%88%EB%A6%B4-%EB%95%90-PDU%EB%A5%BC-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90

0개의 댓글