상세 컨텐츠

본문 제목

통신 프로토콜 TCP, UDP, ICMP 차이, 사용 예시

IT/네트워크

by JR 2026. 4. 30. 10:51

본문

300x250

 

 

 

TCP, UDP, ICMP 차이

TCP (Transmission Control Protocol)

  • 연결 지향형 (3-way handshake로 연결 수립)
  • 신뢰성 보장: 패킷 순서 보장, 재전송, 흐름 제어, 혼잡 제어
  • 속도: 상대적으로 느림 (오버헤드 큼)
  • 용도: HTTP/HTTPS, SSH, FTP, 이메일(SMTP) — 데이터 무결성이 중요한 통신

UDP (User Datagram Protocol)

  • 비연결형 (handshake 없이 바로 전송)
  • 신뢰성 없음: 순서/도착 보장 안 함, 재전송 없음
  • 속도: 빠르고 가벼움 (헤더 8바이트)
  • 용도: DNS, DHCP, VoIP, 영상 스트리밍, 온라인 게임 — 속도가 중요한 통신

ICMP (Internet Control Message Protocol)

  • 제어/진단용 프로토콜 (데이터 전송이 아닌 네트워크 상태 통보)
  • 포트 개념 없음 (TCP/UDP와 달리 IP 계층에서 직접 동작)
  • 용도: ping(Echo Request/Reply), traceroute, "Destination Unreachable", "TTL Exceeded" 등 오류·상태 메시지

한눈에 비교

구분 TCP UDP ICMP
계층 Transport (L4) Transport (L4) Network (L3)
연결 연결형 비연결형 비연결형
신뢰성 있음 없음 없음
포트 사용 사용 미사용
대표 용도 웹, 파일전송 스트리밍, DNS ping, 오류통보

 

핵심: TCP는 "정확하게", UDP는 "빠르게", ICMP는 "네트워크 상태를 알리기 위해" 쓰는 프로토콜입니다.

 

TCP / UDP / ICMP 사용 케이스 예시

TCP — 신뢰성·순서 보장이 중요한 통신

  1. 웹 서비스 (HTTP/HTTPS)
    • 웹페이지 로딩, REST API 호출
    • HTML·JSON 데이터가 한 바이트라도 깨지면 안 됨
  2. 파일 전송 (FTP, SFTP, SCP)
    • 파일 업로드/다운로드
    • 모든 패킷이 정확한 순서로 도착해야 파일 무결성 보장
  3. 이메일 (SMTP, IMAP, POP3)
    • 메일 송수신
    • 메일 본문·첨부파일 손실 시 치명적
  4. 데이터베이스 연결 (MySQL, PostgreSQL, Redis)
    • 애플리케이션 서버 ↔ DB 쿼리·응답
    • 트랜잭션 정합성 필수

UDP — 속도·실시간성이 중요한 통신

  1. DNS 조회
    • 도메인 → IP 변환 (google.com → 142.250.207.46)
    • 짧은 질의·응답이라 TCP 핸드셰이크가 오히려 비효율적
  2. 실시간 영상·음성 (VoIP, 화상회의, 라이브 스트리밍)
    • Zoom, Discord 음성, 유튜브 라이브
    • 패킷 몇 개 빠져도 영상이 잠깐 깨지는 게 낫지, 재전송으로 끊기면 더 나쁨
  3. 온라인 게임 (FPS, MMORPG의 위치 동기화)
    • 배틀그라운드, LoL의 실시간 좌표 전송
    • 0.1초 늦은 정확한 데이터보다 지금 바로 도착한 데이터가 가치 있음
  4. NTP (시각 동기화)
    • 서버 시계 맞추기
    • 가볍고 빠른 질의·응답

ICMP — 네트워크 진단·제어 메시지

  1. ping (Echo Request / Reply)
    • 서버가 살아있는지, 응답시간(latency)이 얼마인지 확인
    • 가장 흔한 네트워크 진단 도구
  2. traceroute / tracert
    • 출발지 → 목적지까지 거치는 라우터 경로 추적
    • TTL을 1씩 늘려가며 "TTL Exceeded" ICMP 메시지를 받아 경로 파악
  3. Destination Unreachable / Host Unreachable
    • 라우터가 "이 IP 못 찾음", "포트 닫혀 있음"을 송신자에게 자동 통보
    • 방화벽 차단·라우팅 오류 디버깅에 활용
  4. Path MTU Discovery
    • 경로상 최대 전송 단위(MTU) 자동 탐색
    • 패킷 분할 없이 효율적으로 전송하기 위함

한눈에 정리

프로토콜 대표 사용 케이스

TCP 웹(HTTPS), 파일전송(FTP), 이메일(SMTP), DB 연결
UDP DNS, 영상/음성 스트리밍, 온라인 게임, NTP
ICMP ping, traceroute, 네트워크 오류 통보

 

 

300x250

관련글 더보기