본문 바로가기
CS 지식

TCP와 UDP의 특징과 차이

by chanfficial 2022. 11. 4.

네트워크의 계층에는 데이터의 전달을 담당하는(송신자와 수신자를 연결하는) 전송계층이 있고, 전송계층에서 데이터를 보내기 위해 사용하는 프로토콜이 바로 TCP 와 UDP 이다.

전송계층에서 사용하는 프로토콜인 TCP 와 UDP

 

 

1. TCP(Transmission Control Protocol)

 

TCP 는 IP 프로토콜 위에서 연결형 서비스를 지원하는 전송계층 프로토콜로, 인터넷 환경에서 기본으로 사용한다.

 

TCP 특징

  • 연결형 서비스를 제공한다.
  • 3-way handShaking 과정을 통해 연결하고, 4-way handShaking 을 통해 연결을 해제한다.
  • 전이중(Full-Duplex) 방식의 양방향 가상 회선을 제공한다.
  • 신뢰성 있는 데이터 전송을 보장한다.

TCP는 연결형 서비스로 신뢰성을 보장하기 때문에 3-way handShaking 의 특징을 갖는다. 또한 데이터의 흐름 제어나 혼잡 제어와 같은 기능도 하기 때문에 UDP 보다 속도가 느릴 수 밖에 없는 것이다.

그렇기 때문에 TCP 는 파일 전송 처럼 신뢰성 있는 전송이 필요할 때 사용하는 프로토콜 이다.

(3-way handShaking: 수신자와 송신자를 확실히 하여 정확한 정보를 보장하기 위해 세션을 수립하는 과정)

 

 

2. UDP(User Datagram Protocol)

 

UDP 는 인터넷에서 정보를 주고받을 때, 서로 주고받는 형식이 아닌 한쪽에서 일방적으로 보내는 방식의 통신 프로토콜.

 

UDP 특징

  • 비연결형 서비스로 데이터그램 방식을 제공한다.
  • 정보를 주고받을 때 보내거나 받는다는 신호절차를 거치지 않는다.
  • 신뢰성이 낮다

UDP 는 서로 다른 경로로 독립적으로 처리하지만 패킷에 순서를 부여하지 않고 흐름 제어나 혼잡 제어 같은 기능을 처리하지 않기 때문에 TCP 보다 속도가 빠르며 네트워크 부하가 적다.

그렇기 때문에 UDP 는 실시간 서비스(streaming) 처럼 연속성이 중요한 전송에서 사용한다.

 

 

 

 

TCP 와 UDP 를 표로 비교해보면 아래와 같다.

  TCP UDP
연결 방식 연결형 서비스 비연결형 서비스
패킷 교환 방식 가상 회선 방식 데이터그램 방식
전송 순서 전송 순서 보장 순서가 바뀔 수 있음
수신 여부 확인 확인 확인하지 않음
통신 방식 1 : 1 통신 1 : 1 or 1 : N or N : N 통신
신뢰성 높음 낮음
전송 속도 느림 빠름

 

 

정리 참고 블로그 

https://mangkyu.tistory.com/15

'CS 지식' 카테고리의 다른 글

HTTP의 GET 과 POST  (0) 2022.11.12
HTTP 와 HTTPS  (0) 2022.11.12
대칭키와 공개키  (0) 2022.11.10
OSI 7계층이란 ?  (1) 2022.11.03
[TCP] 3-way / 4-way handShake  (0) 2022.11.02