2023년 1월 1일
08:00 AM
Buffering ...

최근 글 👑

[백엔드] 기술 면접 Top30 - #9 TCP/UDP

2023. 9. 13. 09:19ㆍ[백엔드] 기술면접
반응형

TCP / UDP

 

 

TCP와 UDP란?

컴퓨터 네트워크에서 데이터 통신을 위한 두 가지 중요한 프로토콜입니다.

이 두 프로토콜은 서로 다른 방식으로 데이터를 전송하고 관리합니다.

 

TCP ( Transmission Control Protocol )

 

연결 지향 프로토콜

  • 데이터를 전송하기 전에 두 컴퓨터 간에 연결을 설정하고, 데이터를 전송한 후에 연결을 해체하는 절차
  • 데이터가 손실되지 않고 순서대로 도착하는 것을 보장

신뢰성

  • 데이터 전송 중 손실된 패킷을 재전송하고, 중복된 패킷을 제거하여 신뢰성 있는 데이터 전송을 보장

흐름 제어

  • 수신 측의 처리 속도에 맞춰 데이터를 전송하여 네트워크 혼잡을 방지하고 최적의 성능을 유지

순서 보장

  • 데이터가 전송된 순서대로 수신되도록 보장

UDP ( User Datagram Protocol )

 

비연결 지향 프로토콜

  • 데이터를 전송하기 전에 연결 설정 과정을 거치지 않는다.
  • 데이터 그램단위로 데이터를 전송하며, 연결 설정 및 해제 과정이 없어 빠른 데이터 전송이 가능

비신뢰성

  • 데이터를 전송하고 그 결과에 대한 확인이나 재전송을 하지 않는다.
  • 따라서 데이터가 손실될 수 있고, 순서가 뒤바뀔 수도 있다.

효율성

  • TCP보다 오베허드가 적으므로, 실시간 응용 프로그램(e.g. 스트리밍, 음성 통화)에서 주로 사용된다.

예측 가능한 도착 시간

  • 데이터가 언제 도착할지를 보장하지 않지만, 실시간 응용 프로그램에서는 이러한 특성이 유용할 수 있다.

요약

TCP는 신뢰성과 순서를 중요시하는 연결 지향 프로토콜이며, 데이터 손실과 혼잡을 관리한다. 
UDP는 빠른 비연결 지향 프로토콜로 데이터를 빠르게 전송하지만, 신뢰성은 보장하지 않는다.
어떤 프로토콜을 사용할지는 응용 프로그램 요구 사항에 따라 선택하면 된다.
반응형