Network
TCP와 UDP의 차이에 대해서 설명해주세요
TCP의 3-way handshake·흐름 제어·혼잡 제어부터 UDP의 비연결형 특성까지. 두 프로토콜의 작동 원리를 인터랙티브 시각화로 완전히 이해합니다.
2026년 3월 15일 · 약 12분 읽기
Q. "TCP와 UDP의 차이를 설명하고, 각각 어떤 상황에서 사용하는지 말씀해주세요."
예상 꼬리질문
답변 가이드
"TCP는 연결 지향 프로토콜로 3-way handshake를 통해 연결을 수립하고, 재전송·ACK·순서 보장으로 신뢰성을 제공합니다. UDP는 비연결형 프로토콜로 핸드셰이크 없이 데이터를 즉시 전송하며 오버헤드를 최소화합니다."
"TCP는 흐름 제어(Sliding Window)와 혼잡 제어(Slow Start·CUBIC)로 네트워크 안정성을 보장하지만 지연이 발생합니다."
"웹·이메일·파일 전송은 TCP, 게임·DNS·스트리밍·VoIP는 UDP가 적합합니다. QUIC은 UDP 위에서 TCP의 신뢰성을 구현한 현대적 대안으로 HTTP/3의 기반입니다."
유튜브 영상은 가끔 화질이 떨어져도 끊기지 않고 재생되지만, 인터넷 뱅킹에서는 단 1비트도 손실되면 안 됩니다.
이 차이를 만드는 것이 바로 TCP와 UDP입니다. 두 프로토콜의 작동 원리를 시각화로 직접 체험하며 "언제 무엇을 쓸지"를 완전히 이해해 봅시다.
1. 연결 모델 — 핸드셰이크가 있느냐 없느냐
꼬리질문: "TCP 3-way handshake 과정을 설명해주세요"
TCP와 UDP의 가장 근본적인 차이는 연결 수립 과정입니다. TCP는 데이터 전송 전 반드시 3-way handshake(SYN → SYN-ACK → ACK)를 수행해 양측이 서로의 초기 시퀀스 번호를 교환합니다.
UDP는 핸드셰이크 없이 즉시 데이터를 전송합니다.
아래 시뮬레이션에서 TCP와 UDP의 패킷 흐름을 직접 비교해 보세요.
데이터 전송 전 3-way handshake로 연결을 수립합니다
2. 헤더 구조 — 신뢰성의 대가는 헤더 크기
꼬리질문: "TCP와 UDP 헤더 구조의 차이가 왜 중요한가요?"
TCP가 신뢰성을 보장할 수 있는 이유는 헤더에 담긴 제어 정보 덕분입니다. Sequence Number로 순서를 보장하고, Acknowledgment Number로 수신을 확인하며, Window Size로 흐름을 제어합니다.
반면 UDP 헤더는 출발지 포트·목적지 포트·길이·체크섬 4개 필드, 고정 8바이트가 전부입니다.
두 헤더 구조를 클릭하며 각 필드의 역할을 확인해 보세요.
각 필드를 클릭하면 역할과 세부 설명을 볼 수 있습니다
UDP 헤더는 TCP 최소 헤더보다 60% 더 작습니다
3. 흐름 제어와 혼잡 제어 — TCP가 네트워크를 지키는 방법
꼬리질문: "TCP의 흐름 제어와 혼잡 제어를 설명해주세요"
TCP의 흐름 제어(Flow Control)는 수신자 버퍼가 넘치지 않도록 Sliding Window 방식으로 전송량을 조절합니다. 혼잡 제어(Congestion Control)는 네트워크 전체를 보호하기 위해 Slow Start에서 시작해 Congestion Avoidance로 전환하며 혼잡 윈도우(cwnd)를 조정합니다.
버튼으로 패킷 손실 이벤트를 발생시키며 TCP가 어떻게 반응하는지 확인해 보세요.
Slow Start에서 지수 증가, ssthresh 도달 후 선형 증가
4. 핵심 차이 비교표 — 한눈에 정리
꼬리질문: "실무에서 TCP와 UDP를 어떻게 선택하나요?"
TCP와 UDP는 트레이드오프 관계입니다. 신뢰성과 순서 보장을 얻으면 지연과 오버헤드가 생기고, 속도와 낮은 지연을 얻으면 신뢰성은 애플리케이션이 직접 처리해야 합니다.
항목을 클릭하며 두 프로토콜의 차이를 상세히 비교해 보세요.
각 항목을 클릭하면 상세 설명을 볼 수 있습니다
5. 언제 무엇을 쓸까 — 실무 선택 가이드
꼬리질문: "QUIC이 무엇이고 왜 등장했나요?"
데이터 손실이 치명적이면 TCP(웹·이메일·파일 전송·금융 거래), 실시간성이 중요하면 UDP(온라인 게임·VoIP·DNS·스트리밍)를 선택합니다.
그리고 둘의 장점을 모두 원한다면 UDP 기반의 QUIC(HTTP/3)이 현대적 대안입니다. TCP의 HOL Blocking과 긴 연결 수립 시간을 해결했습니다.
카드를 클릭하며 각 사례가 어떤 프로토콜을 선택하는지 확인해 보세요.
데이터 손실이 치명적인 경우 — 모든 데이터가 완전하게 전달되어야 합니다
면접 체크리스트
이 항목들을 자신 있게 설명할 수 있다면 TCP/UDP 질문은 준비 완료입니다.
- - TCP: 연결 지향·신뢰성·순서 보장 — 3-way handshake, ACK, 재전송
- - UDP: 비연결형·낮은 지연·최소 오버헤드 — 8바이트 헤더, 즉시 전송
- - 흐름 제어 vs 혼잡 제어: 수신자 보호 vs 네트워크 전체 보호
- - 선택 기준: 데이터 무결성 필요 → TCP, 실시간성 중요 → UDP
- - QUIC: UDP 위의 신뢰성 — HTTP/3의 기반, TCP의 HOL Blocking 해결
참고 자료
- High Performance Browser Networking — Building Blocks of TCP — TCP 핸드셰이크·흐름 제어·혼잡 제어를 웹 성능 관점에서 정밀하게 설명
- HAProxy — Choosing the Right Transport Protocol: TCP vs UDP vs QUIC — 실제 프록시 서버 운영 관점에서 세 프로토콜을 비교한 실무 중심 글
- Pinggy — TCP vs UDP Complete Guide — 개념부터 실제 사용 사례까지 그림과 함께 이해하기 쉽게 정리된 가이드
의견을 들려주세요
서비스 개선에 큰 도움이 됩니다. 익명으로 자유롭게 남겨주세요.