TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)는 네트워크에서 데이터를 주고받을 때 사용하는 대표적인 프로토콜입니다. 쉽게 설명하자면, TCP는 “신뢰할 수 있는 우체부”, UDP는 “빠른 택배”라고 생각하면 됩니다.
📌 TCP (Transmission Control Protocol)
- 특징: 신뢰성이 중요할 때 사용
- 비유: 우체부가 등기우편을 보내는 방식
- 주요 사용처: 웹 브라우징(HTTP, HTTPS), 이메일(SMTP, IMAP, POP3), 파일 전송(FTP), 원격 접속(SSH)
✅ TCP의 동작 방식
- 3-way Handshake
- 4-way Handshake
🔹 장점
- 데이터 유실 없이 정확하게 전송됨
- 순서를 보장해서 안정적인 데이터 전송 가능
🔻 단점
- 속도가 느림 (연결 설정, 확인 응답 등으로 오버헤드 발생)
- 실시간 전송이 필요한 경우에는 비효율적
📌 UDP (User Datagram Protocol)
- 특징: 빠른 전송이 중요할 때 사용
- 비유: 택배 기사가 초인종만 누르고 바로 떠나는 방식
- 주요 사용처: 실시간 스트리밍(영상, 음성), 온라인 게임, VoIP(인터넷 전화)
✅ UDP의 동작 방식
- Handshake 과정 없음
🔹 장점
- 속도가 빠름 (연결 과정 없이 바로 데이터 전송)
- 실시간 서비스에 적합
🔻 단점
- 데이터가 손실될 가능성이 있음
- 패킷이 순서대로 도착하지 않을 수도 있음
📌 TCP vs UDP 비교
TCP | UDP | |
연결 방식 | 연결형(3-way handshake) | 비연결형 |
데이터 전달 보장 | 보장 (재전송 가능) | 보장 안 함 (손실 가능) |
패킷 순서 | 순서 보장 | 순서 보장 안 됨 |
속도 | 느림 (확인 응답 필요) | 빠름 (즉시 전송) |
대표적인 사용처 | 웹, 이메일, 파일 전송 | 실시간 스트리밍, 게임, VoIP |
📌 언제 TCP, UDP를 사용할까?
✔ TCP가 적합한 경우
• 웹사이트 접속 (HTTP, HTTPS)
• 이메일 송수신 (SMTP, IMAP, POP3)
• 파일 다운로드 (FTP)
• 금융 거래 시스템
✔ UDP가 적합한 경우
• 온라인 게임 (빠른 응답이 중요)
• 실시간 영상/음성 스트리밍 (유튜브 라이브, Zoom 등)
• DNS 요청 (빠른 응답 필요)
• VoIP (카카오톡/디스코드 음성 통화)