본문 바로가기
Computer Science/네트워크

[Network] TCP와 UDP 비교

by JYHAN 2020. 4. 15.

TCP와 UDP의 비교

TCP

  • 대부분의 인터넷 응용 분야들은 신뢰성순차적인 전달을 필요로한다. UDP로는 이를 만족시킬 수 없으므로 다른 프로토콜이 필요하여 탄생한 것이 TCP이다. TCP(Transmission Control Protocol, 전송제어 프로토콜)는 신뢰성이 없는 인터넷을 통해 종단간에 바이트 스트림 전송하도록 설계되었다. TCP 서비스는 송신자와 수신자 모두가 소켓이라고 부르는 종단을 생성함으로써 이루어진다. TCP 에서 연결 설정(Connection Establishment)는 3-way handshake를 통해 행해진다.
  • 모든 TCP 연결은 전이중(full-duplex), 점대점(point to point)방식이다. 전이중이란 전송이 양방향으로 동시에 일어날 수 있음을 의미하며 점대점이란 각 연결이 정확히 2개의 종단점을 가지고 있음을 의미한다. TCP는 멀티캐스팅이나 브로드캐스팅을 지원하지 않는다.

 

UDP

  • UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜)는 비연결형 프로토콜이다. IP 데이터그램을 캡슐화하여 보내는 방법과 연결 설정을 하지 않고 보내는 방법을 제공한다. UDP는 흐름제어, 오류제어 또는 손상된 세그먼트의 수신에 대한 재전송을 하지 않는다.종종 클라이언트는 서버로 짧은 요청을 보내고, 짧은 응답을 기대한다. 만약 요청 또는 응답이 손실된다면, 클라이언트는 time out 되고 다시 시도할 수 있으면 된다. 코드가 간단할 뿐만 아니라 TCP 처럼 초기설정(initial setup)에서 요구되는 프로토콜보다 적은 메시지가 요구된다.
  • UDP를 사용한 것들에는 DNS가 있다. 어떤 호스트 네임의 IP 주소를 찾을 필요가 있는 프로그램은, DNS 서버로 호스트 네임을 포함한 UDP 패킷을 보낸다. 이 서버는 호스트의 IP 주소를 포함한 UDP 패킷으로 응답한다. 사전에 설정이 필요하지 않으며 그 후에 해제가 필요하지 않다.

 

 


 

https://asfirstalways.tistory.com/356

위 링크에서 공부한 내용을 복습하기 위해 옮겨적은 것입니다.

'Computer Science > 네트워크' 카테고리의 다른 글

[Network] OSI 7계층  (0) 2020.10.28
[Network] HTTP & HTTPS  (0) 2020.09.24
[Network] TCP 3-way Handshake  (0) 2020.04.06
[Network] HTTP의 GET과 POST비교  (0) 2020.04.05

댓글