TCP vs UDP

2023. 3. 18. 18:11CS

728x90

TCP (Transmission Control Protocol)와 UDP (User Datagram Protocol)는

전송 계층에서 사용되는 프로토콜입니다.

둘 다 패킷 통신을 통해 데이터를 전송하며, IP 프로토콜 위에서 작동합니다.

하지만, TCP와 UDP는 각각 다른 특징과 용도가 있습니다.

 

  1. 연결 지향성 (Connection-Oriented) vs 비연결 지향성 (Connectionless)
    TCP 연결 지향성 프로토콜입니다. 클라이언트와 서버 간에 연결을 설정한 , 데이터를 전송하고 연결을 해제합니다. 이로 인해 신뢰성이 높아지지만, 연결 설정 과정이 필요하기 때문에 UDP보다 속도가 느릴 있습니다. 반면, UDP 비연결 지향성 프로토콜입니다. 데이터를 전송하기 전에 연결 설정 과정이 필요하지 않기 때문에 속도가 빠릅니다. 그러나, 데이터의 신뢰성은 보장되지 않습니다.
  2. 신뢰성 (Reliable) vs 비신뢰성 (Unreliable)
    TCP 데이터 전송 손실이나 오류가 발생하면 재전송을 시도하여 신뢰성을 보장합니다. 반면, UDP 전송 오류가 발생하면 재전송을 시도하지 않습니다. 따라서 데이터의 손실이나 왜곡이 발생할 있지만, 실시간 데이터 전송에는 유용합니다.

  3. 흐름 제어 (Flow Control) vs 비흐름 제어 (No Flow Control)
    TCP 데이터 전송 속도가 수신 측의 처리 속도를 초과하지 않도록 흐름을 제어합니다. 반면, UDP 전송하는 측과 수신하는 측의 속도 차이를 고려하지 않습니다.

  4. 혼잡 제어 (Congestion Control) vs 무혼잡 제어 (No Congestion Control)
    TCP 네트워크 혼잡을 감지하고 데이터 전송 속도를 조절하여 혼잡을 제어합니다. 반면, UDP 혼잡을 감지하지 않고 데이터 전송 속도를 일정하게 유지합니다.

  5. 데이터의 크기 (Data Size)
    TCP 데이터를 전송하는 적합합니다. 데이터의 크기가 크더라도 전송이 보장되기 때문입니다. 반면, UDP 작은 데이터를 빠르게 전송하는 적합합니다. 대부분의 DNS, 스트리밍, 게임 데이터 등의 작은 데이터 전송에 사용됩니다.

 

**흐름 제어와 혼잡 제어의 차이란?**

흐름 제어(Flow Control)와 혼잡 제어(Congestion Control)는 네트워크에서 데이터 전송을 제어하기 위한 메커니즘입니다.

하지만, 둘은 서로 다른 역할을 수행합니다.

 

흐름 제어는 데이터의 송신 측과 수신 측의 처리 속도 차이를 해결하기 위한 기법입니다.

송신 측과 수신 측의 속도 차이가 발생하면 데이터 전송 과정에서 문제가 발생할 수 있습니다.

이를 해결하기 위해 송신 측은 수신 측에서 추가 트래픽을 받을 수 있을 때까지

데이터를 전송하지 않도록 흐름을 제어합니다.

따라서, 흐름 제어는 종단 간 메커니즘(end-to-end mechanism)으로 송신 측과 수신 측 간의 트래픽을 제어합니다.

 

반면, 혼잡 제어는 네트워크에서 네트워크 혼잡을 제어하기 위한 메커니즘입니다.

네트워크 혼잡이 발생하면 네트워크 전체 성능에 영향을 미치며, 이는 데이터 전송의 속도를 감소시킵니다.

이를 방지하기 위해 혼잡 제어는 송신 측에서 네트워크 혼잡을 감지하고 데이터 전송 속도를 조절하여 네트워크 혼잡을 제어합니다.

혼잡 제어는 네트워크 계층과 전송 계층에서 처리하는 책임이 있으며, 네트워크 내에서 네트워크 혼잡을 감지하고 대처합니다.

 

따라서, 흐름 제어와 혼잡 제어는 데이터 전송에서 각각 다른 역할을 수행하며, 서로 다른 측면에서 데이터 전송을 제어합니다.

728x90

'CS' 카테고리의 다른 글

DNS Round Rrobin 이란?  (2) 2023.03.21
HTTP vs HTTPS  (0) 2023.03.20
HTTP GET vs POST?  (0) 2023.03.17
트랜잭션의 연산 중 ROLLBACK 이란?  (0) 2023.03.16
거품 정렬(Bubble Sort)이란?  (0) 2023.03.15