UDP는 단순한 메세지 기반인 전송 계층 프로토콜임
UDP가 checksum을 통해 헤더와 페이로드의 진실성 확인을 제공하지만, 상위 계층 프로토콜에 메세지 전달 보장을 제공하지 않음
UDP의 특징들
Attributes | TCP (Transmission Control Protocol) | UDP (User Datagram Protocol) |
---|---|---|
프토코콜 | 연결기반(connection-oriented) 프로토콜 | 단순한 메세지 기반(message-oriented)인 비연결(connectionless) 프토토콜 |
end to end communications | 설정해야 함 | 설정하지 않아도 됨 |
데이터 | byte stream으로써 읽혀짐 | datagram으로 패킷이 개별적으로 보내짐 |
데이터 전송 | 커넥션을 거쳐서 양방향으로 전송됨 | 출발지에서 목적지로 단방향으로 전송됨 |
데이터 순서 | 순서대로 재정렬되므로 순서를 보장할 수 있음 | 순서를 보장할 수 없음 |
처리 | 복잡함, 소켓 커넥션을 설정하기 위해 3개의 패킷이 필요함, 신뢰할 수 있음, 혼잡 제어, 흐름 제어를 다룸 | 단순함, 신뢰할 수 없음, 혼잡 제어, 흐름제어를 하지 않음 |
에러 체크 | timout, checksum, acknowledgement를 사용하여 error를 예방하고 수정함 | checksum만을 사용해서 error를 피함, error 수정 불가능함 |
속도와 효율성 | 지연시간이 김, 많은 리소스를 소모함 | connection이 빠르게 시작됨, 지연시간이 짧음, 더 적은 리소스를 소모함 |
cast | unicast | unicast, multicast, broadcast |
애플리케이션 | 이미지, 웹페이지, 데이터 파일 등 데이터 진실성이 전송 속도 보다 중요한 애플리케이션에 적합함 | 정확성보다 전송 속도가 중요한 실시간 데이터 전송에 이상적임 |