네트워크

[TCP / UDP] TCP와 UDP의 특징과 차이

yebin0322 2025. 2. 12. 10:26
반응형
  • 인터넷에서 데이터를 전송하는 두 가지 주요 프로토콜

Transmission Control Protocol(TCP)

  1. Connection-Oriented(연결 지향적)
  • 3-Way Handshake(세션 연결) 방식 사용
  • 데이터 전송 전에 연결을 먼저 설정 -> 안정적
  • 패킷이 유실되면 재전송
  1. 3-Way Handshake 과정(이 과정이 끝나야 데이터 전송 가능)

    1. 클라이언트 -> 서버 : SYN(연결 요청)
    2. 서버 -> 클라이언트 : SYN-ACK(요청 승인)
    3. 클라이언트 -> 서버 : ACK(연결 완료)
  2. 신뢰성 보장(패킷 순서, 재전송)

  • 패킷이 도착했는지 확인(ACK 신호)
  • 순서가 어긋나면 다시 정렬
  • 손실된 패킷은 재전송

적합한 사용

  • 데이터 손실이 있으면 안 되는 경우
    ex) 웹사이트, 금융 거래, 이메일, 파일 전송
  • 순서가 중요한 경우
    ex) HTTP(요청과 응답은 짝을 맞춰야 하기 때문), FTP

User Datagram Protocol(UDP)

  1. Connectionless(비연결성)
  • 연결 과정 없이 바로 데이터 전송
  • TCP처럼 세션을 유지하지 않음
  • 패킷을 개별적으로 처리
  1. 빠름
  • 재전송 기능 없음
  • 데이터를 빠르게 보냄
  1. 신뢰도 낮음
  • 데이터 패킷이 손실되거나 순서가 바뀔 수 있음

적합한 사용

  • 실시간 서비스
    ex)온라인 게임, VoIP, 동영상 스트리밍
  • DNS 조회 : 도메인 -> IP 변환, 빠른 응답 필요
  • 방송형 통신(multicast, broadcast)

차이

특징 TCP UDP
연결 방식 연결형(세션 유지) 비연결형(세션 없음)
신뢰성 신뢰성 높음(데이터 손실 없음) 신뢰성 낮음(데이터 손실 가능)
데이터 순서 보장 순서 보장(패킷이 순서대로 도착) 순서 보장 안 됨
에러 검출 및 재전송 있음(손실 시 재전송) 없음(손실 시 무시)
속도 느림(확인 과정이 필요하기 때문) 빠름(바로 전송)
사용 예시 웹 브라우징(HTTP/HTTPS), 이메일(SMTP), 파일 전송(FTP), 메시징(TCP 기반) 실시간 스트리밍, 온라인 게임, VoIP(음성 통화)
반응형