백엔드

[Web] 프로토콜과 TCP / UDP란?

연유뿌린빙수 2025. 3. 1. 15:42

프로토콜(Protocol)이란?

프로토콜(Protocol)이란 컴퓨터나 네트워크 장치 간에 데이터를 송수신하기 위한 규칙과 절차를 의미한다.

쉽게 말해, 서로 다른 장치나 시스템이 원활하게 통신할 수 있도록 약속한 규칙이다.

프로토콜의 주요 역할

  1. 주소 지정(Addressing)
    • 송신자와 수신자를 정확히 식별하기 위한 방법 제공 (예: IP 주소)
  2. 오류 제어(Error Control)
    • 데이터가 손상 없이 전달되었는지 확인 (예: TCP의 오류 검출)
  3. 흐름 제어(Flow Control)
    • 송신자와 수신자의 데이터 처리 속도 조절 (예: TCP의 윈도우 크기 조절)
  4. 세그먼트화(Segmentation)와 재조립(Reassembly)
    • 데이터를 작은 조각으로 나누고 다시 합치는 과정 (예: TCP의 패킷 분할 및 조립)
  5. 라우팅(Routing)
    • 최적의 경로를 찾아 데이터를 전달하는 역할 (예: IP 라우팅)

 

 

이러한 개념에서 중요한 것이 TCP와 UDP인데,

어플리케이션에서 이와 같은 설정들의 특징을 통해 웹 어플리케이션을 설계하는 것이 중요하다.

TCP란?

TCP란 Transmission Control Protocol로, 연결 지향적 프로토콜이다.

패킷이 손실되지 않고, 순서대로 작동하도록 보장한다.

  • HTTP, HTTPS : 웹 브라우징
  • FTP : 파일전송
  • SMTP, POP3, IMAP : 전자 메일 전송
  • SSH : 보안 접속

 

UDP란?

UDP란 User Datagram Protocol로, 신뢰성을 보장하지 않는 비연결형 프로토콜이다.

주로 데이터를 빠르게 전송하는 것이 중요한 애플리케이션에서 사용되며, 실시간 통신이나 스트리밍 서비스에서 운용된다.

  • DNS(도메인 네임 시스템)
  • 영상 스트리밍(주로 사용되는 OTT), 실시간 방송 서비스

 

 

TCP와 UDP의 선택 기준

이러한 특징들 때문에,

데이터의 신뢰성과 정확한 전송이 중요한 경우 TCP를 선택하고(데이터의 정확성과 순서를 중시),

빠른 전송 속도가 더 중요하거나 일부 데이터의 손실이 허용되는 경우 UDP를 선택한다(속도와 효율성을 중시).

 

 

 


REF

https://f-lab.kr/insight/differences-between-tcp-and-udp?gad_source=1&gclid=Cj0KCQiA2oW-BhC2ARIsADSIAWpBjYKMmigCEj96uLC6rcWfttELDY17IvzpdVoZdNCnTIaRKrCIUikaAlL6EALw_wcB