ETC/etc

TCP / UDP 에 대한 설명

띵조 2025. 3. 12. 11:20
728x90
반응형

TCP / UDP 

TCP (Transmission Control Protocol) 와  UDP (User Datagram Protocol) 는 전송 계층에서 사용하는 프로토콜이다. 데이터를 네트워크를 통해 전송할 때 사용된다.

 

TCP (Transmission Control Protocol)

특징

- 연결형 프로토콜

     ==> 데이터를 보내기 전, 송신자와 수신자 간 3 - way Handshake를 통해 연결 확립

- 신뢰성 보장

     ==> 데이터가 손실되거나 순서가 바뀌면 재전송 (ACK, Sequence Number 사용)

- 순서 보장

     ==> 패킷이 전송된 순서대로 도착하도록 패킷 정렬 기능 포함

- 오류 검출 및 복구

     ==> 전송 중 오류가 발생하면 자동으로 재전송하여 정확한 데이터 전달 보장

 

동작 과정

1. SYN (Synchronize) : 클라이언트 -> 서버 (연결 요청)

2. SYN - ACK (Synchronize -> Acknowledgment) : 서버 -> 클라이언트 (응답)

3. ACK (Acknowledge) : 클라이언트 -> 서버 (연결 확립) -> 연결이 완료되면 데이터를 송수신

 

사용 예시

- 웹 브라우징 (HTTP, HTTPS)

- 파일 전송 (FTP)

- 이메일 (SMTP, IMAP, POP#)

- 원격 접속 (SSH, Telnet)

 

UDP (User Datagram Protocol)

특징

- 비연결형 프로토콜

     ==> 송신자와 수신자가 연결을 확립하지 않고, 데이터를 전송함

- 빠른 속도 

     ==> 연결 설정이 없고 오류 검출 후 재전송을 하지 않으므로 빠름

- 신뢰성이 낮음

     ==> 패킷이 손실될 수 있으며, 도착 순서가 보장되지 않음

- 오버헤드가 낮음

     ==> 데이터 전송 시 오류 제어 및 순서 보장 기능 없음, 간단한 구조

 

동작 방식

- 패킷 (데이터그램)을 전송하면 수신 여부 확인 없이 계속 전송

- 수신자가 데이터를 잃어버리면 송신자는 이를 알지 못함

 

사용 예시

- 실시간 스트리밍 (Youtube, TV)

- 온라인 게임 (빠른 응답 필요)

- VoIP (Skype, Zoom)

- DNS (도메인 네임 조회)

 

데이터의 정확성이 중요하면 TCP 사용 (웹사이트, 파일 전송, 이메일)

속도가 중요하고 약간의 데이터 손실이 허용 가능하면 UDP 사용 (스트리밍, 게임)

구분 TCP UDP
연결 방식 연결형 (Conndection - Oriented) 비연결형 (Connectionless)
신뢰성 높음 (데이터 재전송, 순서 보장) 낮음 (순서 보장 X, 재전송 X)
속도 상대적으로 느림 빠름
오류 처리 자동 재전송 및 흐름 제어 없음
패킷 순서 순서 보장 순서 보장 X
용도  HTTP, FTP, 이메일 원격 접속 실시간 스트리밍, 게임, VoIP, DNS
728x90
반응형

'ETC > etc' 카테고리의 다른 글

MSSQL 단축키 및 기본 명령어  (0) 2024.11.20
스토리지와 RAID  (0) 2024.11.07