📦 네트워크 데이터 단위 완벽 정리 (스트리밍부터 패킷, 세그먼트, 프레임까지)
✅ 들어가며
네트워크 공부를 하다 보면 자주 마주치는 용어들이 있습니다:
패킷(Packet), 세그먼트(Segment), 프레임(Frame), 그리고 스트림(Stream).
이 개념들을 정확히 이해하면, 네트워크 계층 구조나 트래픽 흐름, 성능 튜닝, 보안까지 훨씬 더 잘 이해할 수 있게 됩니다.
📌 OSI 계층과 데이터 단위
계층 대표 프로토콜 데이터 단위
7 ~ 5 (응용 ~ 세션 계층) | HTTP, FTP 등 | 메시지 (Message) |
4 (전송 계층) | TCP, UDP | 세그먼트 (Segment) |
3 (네트워크 계층) | IP | 패킷 (Packet) |
2 (데이터 링크 계층) | Ethernet, PPP | 프레임 (Frame) |
1 (물리 계층) | 케이블, 전기 신호 | 비트 (Bit) |
📌 데이터 흐름 이해하기
1. 애플리케이션/소켓 단계
- 프로그램(프로세스)은 소켓을 통해 데이터를 주고받습니다.
- 이때 데이터는 스트림(Stream) 형태로 처리되며, 끝이 명확하지 않은 일렬의 흐름입니다.
- 대표 예: 웹 브라우저에서 HTTP 요청 전송
2. TCP 계층 (L4)
- TCP는 스트림 데이터를 세그먼트(Segment) 단위로 잘라서 처리합니다.
- 이 자르는 작업을 세그멘테이션(Segmentation) 이라고 합니다.
3. IP 계층 (L3)
- TCP 세그먼트를 캡슐화(Encapsulation)해서 패킷(Packet) 이 됩니다.
- 이 패킷은 실제 인터넷상에서 라우팅되는 데이터 단위입니다.
4. 데이터 링크 계층 (L2)
- 패킷은 다시 프레임(Frame) 으로 감싸져 실제로 네트워크 케이블이나 무선 환경을 통해 전송됩니다.
- 프레임에는 MAC 주소, 체크섬 등이 포함되어 있습니다.
5. 물리 계층 (L1)
- 프레임은 0과 1의 비트(Bit) 형태로 전기적 신호로 바뀌어 송수신됩니다.
📌 핵심 단위 요약 및 개념 정리
구분 설명
Stream | 소켓 통신에서 전송되는 연속된 데이터 흐름 (끝을 알 수 없음) |
Segment | TCP가 스트림 데이터를 일정 크기로 잘라낸 단위 |
Packet | IP 계층에서 세그먼트를 캡슐화한 단위 (라우팅 대상) |
Frame | 실제 전송을 위해 패킷을 감싼 단위 (MAC 주소 포함) |
📌 관련 개념 정리
📏 MSS (Maximum Segment Size)
- 세그먼트의 최대 크기
- 보통은 MTU에서 IP 헤더(20B, source/destination IP address 등)와 TCP 헤더(20B, source/destination port, 길이 등)를 뺀 값
→ MSS = MTU - 40B
📏 MTU (Maximum Transmission Unit)
- 프레임 단위로 전송 가능한 최대 크기
- Ethernet 환경에서는 일반적으로 1500 bytes가 기본
🧠 Encapsulation & Decapsulation
- Encapsulation: 상위 계층의 데이터를 하위 계층 포맷으로 감싸는 것
→ 예: Segment → Packet → Frame - Decapsulation: 반대로 수신 측에서 데이터를 해석하며 풀어내는 것
📝 마무리 요약
네트워크 통신은 추상적인 스트림 데이터를 실제 전송 가능한 작은 조각들로 분해하고, 이를 다시 물리 신호로 바꾸는 과정을 거칩니다.
- 스트림: 애플리케이션 관점의 흐름
- 세그먼트: TCP 단위
- 패킷: IP 라우팅 단위
- 프레임: 실제 전송 단위
- 비트: 물리적 신호
✅ 실제 개발자에게 왜 중요한가?
- MTU보다 큰 데이터 전송은 IP Fragmentation을 유발해 성능 저하를 초래할 수 있음
- 세그먼트 단위 전송은 TCP 윈도우 사이즈, 혼잡 제어(Congestion Control) 와 직접적으로 연관
- 프레임 단위 오버헤드는 네트워크 병목 분석에서 매우 중요
이 정리를 머리에 제대로 넣고 있으면, 단순한 개발을 넘어서 TCP 튜닝, 네트워크 장애 분석, 보안 위협 탐지 같은 고급 영역에서도 유리한 위치를 선점할 수 있습니다.
필수 개념이니 정리해서 암기해 두시길 바랍니다 💡
참조
https://www.youtube.com/watch?v=p6ASAAMwgd8
'개발 > 네트워크' 카테고리의 다른 글
tcp 혼잡제어 (0) | 2025.05.27 |
---|---|
VPN의 작동 원리 (0) | 2025.05.27 |
공유기 및 스위치에 대하여 (0) | 2025.05.27 |
TCP 송/수신 원리 (0) | 2025.05.27 |
HTTPS와 SSL/TSL (0) | 2025.05.22 |