Skip to content

데이터 단위와 캡슐화

계층별 데이터 단위

네트워크에서 데이터는 각 계층마다 고유한 단위로 다루어진다. 이 단위들을 정확히 구분하는 것이 네트워크 이해의 핵심이다.

계층데이터 단위연관 키워드
L5~L7 (소켓/애플리케이션)Stream소켓(Socket), 연속적 데이터
L4 (TCP)SegmentMSS (Maximum Segment Size)
L3 (IP)PacketMTU (Maximum Transmission Unit)
L1~L2 (이더넷)Frame이더넷, MAC 주소
L4 (UDP)Datagram비연결형 단위

연관 검색어처럼 외우자. 소켓 = Stream, TCP = Segment + MSS, IP = Packet + MTU, 이더넷 = Frame

MTU와 MSS: 크기 제한

인터넷에서 데이터를 유통할 때는 최대 크기 제한이 있다.

용어정의크기
MTUMaximum Transmission Unit -- 패킷의 최대 크기1500 bytes (일반적)
MSSMaximum Segment Size -- TCP 세그먼트의 최대 크기~1460 bytes

MTU 1500에서 IP 헤더(20 bytes)와 TCP 헤더(20 bytes)를 빼면 MSS가 약 1460 bytes가 된다. 만약 보내려는 데이터가 4MB라면, 1460 bytes 크기의 세그먼트 약 2,800개 이상으로 쪼개져서 전송된다.

캡슐화(Encapsulation)와 디캡슐화(Decapsulation)

캡슐화는 데이터를 한 계층의 단위로 감싸는 과정이다. 러시아 전통 목각 인형 마트료시카에 비유하면 이해하기 쉽다.

캡슐화의 3가지 특징

  1. 단위화: 데이터를 일정 크기의 단위로 만든다 (택배 박스에 담기)
  2. 포장: 각 계층의 헤더를 앞에 붙인다 (송장 부착)
  3. 은닉: 내부 내용을 바깥에서 알 수 없다 (택배 박스 안을 모름)

택배로 이해하는 캡슐화

세그먼테이션(Segmentation): 큰 데이터의 분할

에펠탑을 택배로 보내려면 어떻게 해야 할까? 분해 → 운송 → 조립이다. 네트워크에서도 마찬가지이다.

소켓에서 내려오는 Stream 데이터는 크기가 수 MB에 달할 수 있지만, 네트워크에서 유통 가능한 최대 크기는 MTU(1500 bytes)뿐이다. 따라서 TCP 스택에서 **세그먼테이션(분할)**이 일어난다.

  • 송신 측에서 분해(세그먼테이션)가 일어난다
  • 수신 측에서 조립(재조립)이 일어난다
  • TCP는 각 세그먼트에 **순서 번호(Sequence Number)**를 부여하여 올바른 순서로 재조립할 수 있도록 한다

프레임의 특성: 수시로 바뀌는 트럭

패킷은 출발지에서 목적지까지 내용이 유지되지만, 프레임은 경유 구간마다 바뀐다. 택배 박스(패킷)는 그대로이지만, 그것을 실어 나르는 트럭(프레임)은 물류센터를 지날 때마다 다른 트럭으로 옮겨 실린다.

핵심 정리

  1. Stream(소켓) → Segment(TCP) → Packet(IP) → Frame(이더넷)
  2. MTU = 1500 bytes, MSS ≈ 1460 bytes
  3. 캡슐화는 마트료시카 -- 안으로 넣으면 Encapsulation, 꺼내면 Decapsulation
  4. 송신 시 Encapsulation + 세그먼테이션, 수신 시 Decapsulation + 재조립
  5. 패킷은 유지되지만, 프레임은 경유 구간마다 바뀐다
  6. 각 계층의 헤더에는 보통 송신자와 수신자를 식별하기 위한 정보가 들어 있다