본문 바로가기
카테고리 없음

[네트워크/Transport Layer] 전송 계층의 역할과 TCP vs UDP 핵심 완벽 정리

by Lsung 2026. 9. 1.

1. 5계층 구조와 계층별 통신 단위 (PDU)

네트워크 계층 구조에서는 각 계층마다 데이터를 식별하는 대상과 통신 단위(PDU, Protocol Data Unit)가 명확히 나누어집니다.

계층 (Layer) 식별 대상 주요 주소/식별자 데이터 단위 (PDU) 핵심 역할
응용 계층 (Application) 애플리케이션 - 메시지 (Message) 유저 인터페이스 및 데이터 생성
전송 계층 (Transport) 프로세스 (Process) 포트 번호 (Port Number) 세그먼트 (Segment) 프로세스 대 프로세스 논리적 통신
네트워크 계층 (Network) 호스트 (Host / 컴퓨터) IP 주소 데이터그램 (Datagram) 호스트 대 호스트 라우팅
링크 계층 (Link) 노드 (Node), 링크레이어에서는 = 노드간 커뮤니케이션을 제공한다.] MAC 주소 프레임 (Frame) 인접한 노드 간 프레임 전송
물리 계층 (Physical) 신호 - 비트 (Bit) 물리적 전기/광 신호 전달

💡 핵심 차이점

**IP(Network Layer)**는 목적지 **컴퓨터(Host)**를 찾아가는 주소 역할을 하고, **TCP/UDP(Transport Layer)**는 해당 컴퓨터 내부에서 실행 중인 **특정 프로그램(Process)**을 포트 번호로 찾아갑니다.

2. 전송 계층(Transport Layer)의 핵심 메커니즘

  • 엔드 시스템(End System) 동작: 전송 계층 프로토콜은 중간 라우터가 아닌 네트워크 양 끝단의 종단 시스템에서만 작동합니다.
  • 멀티플렉싱 & 디멀티플렉싱:
    • 멀티플렉싱 (Multiplexing): 여러 애플리케이션 소켓의 메시지에 포트 번호 헤더를 붙여 하위 네트워크 계층으로 내려보내는 과정.
    • 디멀티플렉싱 (Demultiplexing): 수신한 패킷의 포트 번호를 확인하여 상위의 올바른 소켓(프로세스)으로 분배하는 과정.
  • 소켓 (Socket): 애플리케이션과 전송 계층 간의 통로 역할을 하며, OS/컴파일러가 제공하는 인터페이스를 이용해 프로그래머가 쉽게 이용할 수 있습니다.
  • 제약 사항: 패킷 교환망 기반이므로 지연(Delay)이나 대역폭(Bandwidth)을 엄격히 보장(Guarantee)할 수는 없습니다 (최선형 서비스) [cite: 지연이나 대역폭에 대한 보장은 불가능하다., 지연은 딜레이. 지연이나 대역폭에 대한 보장은 패킷망이라 불가능해, 보장하지 않는다는 최선을 다한다!].

3. TCP vs UDP 프로토콜 비교

① TCP (Transmission Control Protocol, 전송 제어 프로토콜)

  • 연결 지향형 (Connection-Oriented): 통신 전 연결을 설정하고 상태 정보를 유지합니다 [cite: TCP 커넥션 오리엔티드 트랜스포트, 통신하는 동안 정보를 유지하느냐 안 하느냐의 물음인 듯, 어쨌든 TCP 는 커넥션 정보를 유지하지만 UDT는 그렇지 않는데.].
  • 신뢰성 보장: 패킷 손실 시 재전송, 순서 정렬, 오류 제어, 흐름 제어(Flow Control), 혼잡 제어(Congestion Control)를 수행합니다.
  • 주요 용도: 웹(HTTP/HTTPS), 파일 전송(FTP), SSH 등 데이터의 정밀함이 중요한 서비스.

② UDP (User Datagram Protocol, 사용자 데이터그램 프로토콜)

  • 비연결형 (Connectionless): 연결 설정 및 상태 유지 없이 바로 전송합니다.
  • 오버헤드 최소화: 헤더 크기가 8바이트로 작고, 소켓 리소스를 적게 소모하여 오버헤드가 매우 적습니다.
  • 오류 처리 방식: 패킷이 깨지면 아무 말 없이 버리며(Drop), 재전송이나 순서 정렬을 하지 않습니다.
  • 주요 용도: 실시간 스트리밍, 음성 통신(VoIP), 영상 전송 등 일부 프레임 손실이 발생해도 통신에 지장이 없는 서비스 [cite: 가다가 좀 없어져도 상관없는 데이터 면 udp..?, 영상에서 초당24~30 프레임인 거, 음성통신에서는 64k 날아갈 때 중간에 2k 정도 날아가도 이용은 돼.].

4. 요약 및 시사점

  1. IP는 '컴퓨터', TCP/UDP는 '프로그램'을 찾는다: IP 주소로 해당 호스트를 찾아가고, Port 번호로 그 안의 소켓 및 프로세스를 찾아갑니다.
  2. 트레이드오프 (Trade-off): TCP는 속도와 리소스를 사용하는 대신 '신뢰성'을 챙기고, UDP는 신뢰성을 포기하는 대신 '빠른 속도와 효율성'을 제공합니다.
  3. 네트워크 흐름 및 혼잡 제어: TCP는 수신 측의 상황을 고려하는 흐름 제어와, 네트워크 도로망 전체의 유입량을 통제하는 혼잡 제어를 통해 전체 시스템의 안정성을 유지합니다.