Posts [Network] TCP VS UDP
Post
Cancel

[Network] TCP VS UDP

전송계층

→ TCP와 UDP는 TCP/IP의 전송계층 에서 사용되는 프로토콜이다. 전송계층은 IP에 의해 전달되는 패킷의 오류를 검사하고 재전송 요구 등의 제어를 담당하는 계층이다.

TCP VS UDP

TCP는 Transmission Control Protocol 의 약자이고, UDP는 User Datagram Protocol의 약자이다. 두 프로토콜은 모두 패킷을 한 컴퓨터에서 다른 컴퓨터로 전달해주는 IP 프로토콜을 기반으로 구현되어 있지만, 서로 다른 특징을 가지고 있다.

그림으로 비교하는 TCP VS UDP

TCP

img

  • 연결형 서비스 : 연결형 서비스로 가상 회선 방식을 제공한다. (3 way handshaking, 4 way handshaking)
  • 흐름제어 : 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지한다. (수신자가 윈도우크기 값을 통해 수신량을 정할 수 있다.)
  • 혼잡제어 : 네트워크 내의 패킷 수가 넘치게 증가하지 않도록 방지
  • 신뢰성이 높은 전송
  • 전이중(전송이 양방향으로 동시에 일어날 수 있다.), 점대점 방식(각 연결이 정확히 2개의 종단점을 가지고 있다)

UDP

img

즉, 신뢰성이 요구되는 어플리케이션에서는 TCP를 사용하고 간단한 데이터를 빠른 속도로 전송하고자 하는 어플리케션은 UDP를 사용한다.

공통점

  • 포트 번호를 이용하여 주소를 지정한다
  • 데이터 오류 검사를 위한 체크섬이 존재한다

차이점

  • TCP: 연결을 성공해야 통신이 가능하다 (연결형 프로토콜 3-way handshaking 과정을 통해 연결을 설정하고 4-way handshaking을 통해 연결을 해제)
  • UDP: 비연결형 프로토콜(연결 없이 통신이 가능)
  • TCP: 데이터의 경계를 구분하지 않는다. (Byte -Stream Service)
  • UDP: 데이터의 경계를 구분함 (Datagram Service)
  • TCP: 신뢰성 있는 데이터 전송(데이터의 재전송 존재)
  • UDP: 신뢰성 있는 데이터 전송(데이터의 재전송 없음)
  • TCP: 일대일 (Unicast) 통신
  • UDP: 일대일, 일대다(Broadcast), 다대다(Multicast) 통신
This post is licensed under CC BY 4.0 by the author.

[Network] OSI 7Layer

[Network] HTTP와 HTTPS 개념 및 차이

Loading comments from Disqus ...