[Network] TCP와 UDP

Minhyuk Song·2024년 3월 26일
0

Network

목록 보기
2/3

TCP/UDP
(이미지 출처 - https://www.top10vpn.com/pl/przewodniki/udp-vs-tcp/)

[학습 목표]

각 서비스마다 어울리는 프로토콜이 있다. 어떠한 특징을 가진 프로토콜인지 확인하고 어울리는 서비스를 찾아가보자!

[알아보기]

TCP (Transfer Control Protocol)

TCP는 연결 지향적 프로토콜로, 데이터 전송 전에 통신할 두 단말이 연결을 설정하고 데이터
전송이 끝난 후에 연결을 해제하는 과정을 거칩니다. 즉, TCP는 패킷을 전송하기 위한 논리적 경로를 배정합니다.

  • 3 way handshake (연결)
  • 4 way handshake (해제)

데이터를 전송하는 과정에서 데이터의 순서 보장, 오류 검출 및 수정 등의 기능을 제공합니다.

  • 데이터의 흐름 제어
  • 데이터의 혼잡 제어

이렇게 연결, 데이터 제어, 해제 등의 과정이 있기 때문에 UDP 방식에 비해 소요되는 시간이 많아 느리지만, 신뢰성이 뛰어납니다. 이런 점을 생각하면 TCP는 신뢰성이 있는 데이터 전송을 하는 방식과 어울리다는 걸 알 수 있습니다.

  • 파일 전송
  • HTTP
  • 전자 우편, 이메일

UDP (User Datagram Protocol)

UDP는 비연결 지향적 프로토콜로, 연결 설정 없이 데이터를 바로 전송할 수 있습니다. 서로 다른 경로로 족립적으로 처리하는 데이터그램 방식이기에 패킷에 순서를 부여하지 않고 데이터 제어 과정이 없습니다.

연결 과정과 데이터 전송 과정을 보면 TCP보다 속도가 빠르며 네트워크 부하가 적다는 장점이 있지만 신뢰성있는 데이터의 전송을 보장하지는 못한다는 걸 알 수 있습니다. 이런 점을 생각하면 UDP는 연속성이 중요한 서비스가 적합합니다.

  • 실시간 스트리밍 서비스
  • DNS
  • 온라인 게임

[다시 되짚어보기]


(이미지 출처 - https://freeropeov.space/product_details/10142578.html)

요약

TCP는 연결 지향적 프로토콜로, 데이터 전송 전에 통신할 두 단말이 연결을 설정하고 데이터 전송이 끝난 후 연결을 해제하는 과정을 거칩니다. 이 과정에서 데이터의 순서 보장, 오류 검출 및 수정 등의 기능을 제공합니다.

반면, UDP는 비연결 지향적 프로토콜로, 연결 설정 없이 데이터를 바로 전송할 수 있습니다. 이로 인해 TCP보다 빠른 전송이 가능하지만, 데이터의 순서 보장이나 오류 검출 및 수정 기능은 제공하지 않습니다.

이러한 차이점으로 인해 TCP와 UDP는 각각 다른 상황에서 사용됩니다. TCP는 데이터의 정확성이 중요한 이메일, 웹 페이지 전송 등에 사용되며, UDP는 실시간 스트리밍, 온라인 게임 등 실시간성이 중요한 경우에 사용됩니다.

예시

오버워치 게임 서버로 알아보는 UDP와 TCP 차이와 사용 상황

profile
스크린을 넘어 유쾌한 경험을 드리는 프론트엔드 개발자가 되도록 노력하고 있습니다.

0개의 댓글