728x90
반응형
이번 포스트에서는 TCP와 UDP를 적용하기 이전에 간단하게 이 둘을 훌어보도록 하겠습니다.
TCP와 UDP 모두 OSI 7계층 모델을 5개로 나타낸 TCP/IP 모델의 4층에 위치합니다.
전송 계층에서 사용하는 프로토콜이며 두 프로토콜의 차이점을
몇 가지 기준으로 비교해보도록 하겠습니다.
1. 연결 지향성의 시각
1 - 1) TCP
연결 지향의 시각으로 보면 TCP는 연결형 서비스입니다.
연결을 위해 할당되는 논리적인 경로가 있고 전송 순서가 보장된다
1 - 2) UDP
연결 지향의 시각으로 보면 UDP는 비연결형 서비스입니다.
연결이라는 개념 자체가 없기에 논리적인 경로가 없고 전송 순서가 보장되지 않습니다.
2. 속도와 신뢰성의 시각
2 - 1) TCP
속도와 신뢰성의 시각으로 보면 TCP는 신뢰성은 높지만 속도는 낮습니다.
TCP에서는 보내는 데이터가 분실되면 다시 전송합니다.
또, 혼잡제어를 통해 통신이 정상적으로 이뤄질 수 없는 상황에서는 일부만 전송합니다.
신뢰성을 보장할 수 있지만 그만큼 고려할 사항이 많아져 전송 속도가 느립니다.
2 - 2) UDP
속도와 신뢰성의 시각으로 보면 UDP는 신뢰성은 낮지만 속도는 높습니다.
UDP에서는 보내는 데이터가 분실되어도 아무것도 하지 않습니다.
또, 받는 쪽의 상황을 고려하지 않고 그냥 전송합니다.
신뢰성을 확보할 순 없지만 단순하게 동작하므로 전송 속도가 빠릅니다.
따라서 필요한 상황에 맞춰서
TCP를 사용할 것인지, UDP를 사용할 것인지를 결정하면 됩니다.
728x90
반응형
'C#' 카테고리의 다른 글
PacketSession (0) | 2024.12.31 |
---|---|
RecvBuffer와 SendBuffer (0) | 2024.12.30 |
Connect를 위한 Connector 생성 (0) | 2024.12.25 |
Session_2 (0) | 2024.12.24 |
Session_1 (0) | 2024.12.24 |