TCP vs UDP
tech

TCP vs UDP

✅ TCP vs UDP

OSI 7계층과 TCP/IP 4계층

 

네트워크 프로토콜 계층은 OSI 7계층과 TCP/IP 4계층으로 다눌 수 있다.

IP 프로토콜 보다 더 높은 계층에 TCP 프로토콜이 존재하기 때문에 앞서 다룬 IP 프로토콜의 한계를 보완할 수 있다.

 

*TCP/IP 4계층은 OSI 7계층보다 먼저 개발되었고, 둘은 정확하게 일치하지 않는다.

 

Socket(소켓) : 네트워크 환경에 연결할 수 있게 만들어진 연결부를 말한다.

 

✅ TCP/IP

TCP 세그먼트에는 IP 패킷의 출발지, 목적지 IP정보를 보완할 수 있는 출발지 PORT, 목적지 PORT, 전송 제어, 순서, 검증 정보 등을 포함한다.

 

TCP 특징

Transmission Control Protocol 전송 제어 프로토콜

연결 지향 - TCP 3 way handshake (가상 연결)

 

* SYN은 Syncronize, ACK는 Acknowledgment의 약자

 

클라이언트는 서버에 접속을 요청하는 SYN 패킷

⇒ 서버는 SYN요청을 받고 클라이언트에게 요청을 수락한다는 ACK 와 SYN가 설정된 패킷을 발송

⇒ 클라이언트가 다시 ACK으로 응답하기를 기다림

⇒ 클라이언트가 서버에게 ACK을 보내면 이 이후로부터 연결이 성립되며 데이터를 전송

 

만약 서버가 꺼져있다면, 클라이언트가 SYN을 보내고 서버에서 응답이 없기 떄문에 데이터를 보내지 않는다.

 

현재에는 최적화가 이루어져 3번 ACK을 보낼때 데이터를 함께 보내기도 한다.

 

  • 데이터 전달 보증 ⇒ 데이터 전송이 성공적으로 이루어진다면, 응답을 돌려주기 때문에 IP패킷의 비연결성을 보완할 수 있다.
  • 순서 보장 ⇒ 패킷이 순서대로 도착하지 않는다면 TCP 세그먼트에 있는 정보를 토대로 다시 재전송 요청을 한다. 비신뢰성을 보완할 수 있다.
  • 신뢰할 수 있는 프로토콜 (같은 계층에 속한 UCP에 비해 상대적으로 신뢰할 수 있음)

 

UCP 특징

  • IP 프로코콜에 PORT, 체크섬 필드 정보만 추가된 단순한 프로토콜 ⇒ 하얀 도화지에 비유 (기능이 거의 없음). 따라서 커스터마이징이 가능하다.
  • 비 연결지향 - 3 way handshake 방식을 사용하지 않기 때문에 빠른 속도 보장
  • 신뢰성보다는 연속성이 중요한 서비스(실시간 스트리밍)에 자주 사용된다.

 

✅ 정리

TCP UDP
연결지향형 프로토콜 비 연결지향형 프로토콜
전송 순서 보장 전송 순서 보장 X
데이터 수신 여부 확인함 데이터 수신 여부 확인하지 않음
신뢰성 높지만 속도 느림 신뢰성 낮지만 속도 빠름

 

'tech' 카테고리의 다른 글

HTTP 헤더  (0) 2021.08.10
HTTP  (0) 2021.08.10
인터넷 프로토콜  (0) 2021.08.10
웹 서비스 캐시  (0) 2021.08.10
운영체제  (0) 2021.08.10