CS

[CS] TCP/UDP

pearhyunjin 2024. 2. 5. 10:34

TCP (Transmission Control Protocol, 전송 제어 프로토콜)

인터넷을 통해 디바이스에서 웹 서버로 데이터를 전송하는 네트워크 프로토콜로 TCP/IP 프로토콜이라고도 불린다.

연결 기반이기 때문에 데이터를 전송하는 동안 수신자와 발신자 사이에 연결을 설정하고 유지해 데이터가 온전히 도착함을 보장한다.

 

UDP (User Datagram Protocol, 사용자 데이터그램 프로토콜)

비연결 방식이기 때문에 두 당사자 간에 사전 연결을 설정하지 않아 속도가 훨씬 빠르고 간단하지만

그 과정에서 데이터가 손실될 가능성이 있어 안정성이 떨어진다.


TCP 장/단점

+) 운영체제와 독집적으로 작동하기 때문에 시스템과 디바이스 간 상호 운용성이 향상된다.

+) 데이터를 전송할 때 오류를 검사하여 전송되 데이터가 목적지에 온전하게 도달하도록 보장한다.

+) 수신자의 용량에 따라 데이터를 전송하는 속도를 최적화하고 변경한다.

+) 데이터가 목적지에 도달했는지 확인하고 전송이 실패한 경우 재전송 시도한다.

-) 상당히 많은 대역폭을 사용하며, UDP보다 속도가 느리다.

-) 전송 중 소량의 데이터라도 손실되면 다른 정보를 또한 로드하지 못할 수 있다.

-) 근거리 통신망이나 개인 영역 네트워크에서 제대로 작동하지 않는다.

 

UDP 장/단점

+) 더 작은 패킷을 더 적은 오버헤드로 전송하여 엔드투엔드 지연을 줄인다.

+) 일부 패킷이 누락되더라도 데이터를 전송하므로 패킷 손실이 전체 전송 중단으로 이어지지 않는다.

+) 브로드캐스트 및 멀티캐스트 기능을 통해 하나의 UDP 전송을 여러 수신자에게 한 번에 전송할 수 있다.

+) 빠르고 효율적이다.

-) 데이터 패킷이 목적지에 성공적으로 도달했는지 확인하지 않는다.

-) 전송이 성공적임을 보장할 수 없다. 일부 패킷이 손상되었을 경우 발신자가 이를 알 수 없다.

-) 라우터가 데이터 패킷의 우선순위를 정해야 하는 경우 TCP가 우선일 가능성이 높다.

-) 특정 순서로 데이터를 전송하지 않기 때문에 패킷 순서가 바뀌어 도착할 수 있다.

 

TCP  UDP 차이점

가장 큰 차이점은 UDP는 사용자가 데이터 재전송을 허용하거나 수신을 승이할 필요가 없기 때문에 속도가 TCP보다 빠르다는 것이다.

하지만 그로 인해 UDP의 안정성은 TCP보다 떨어진다.

  TCP UDP
속도 느림 빠름
신뢰도 높음 낮음
전송 방법 패킷이 순서대로 전달됨 패킷이 스트레이트로 전달됨
오류 감지 및 수정 있음 없음
혼잡도 제어 있음 없음
전송 인정 있음 오직 체크섬

 

 


* 체크섬 - 중복 검사의 한 형태로 오류 정정을 통해서 공간이나 시간 속에서 송신된 자료의 무결성을 보호하는 단순한 방법

                   통신에서 순환 중복 검사(CRC)를 체크섬이라고 말하기도 한다.

* https://nordvpn.com/ko/blog/tcp-udp-comparison/

* 출처