UDP (User Datagram Protocol)

게임 서버 프로그래밍/네트워크 개념정리

2020. 2. 19. 10:43

정의

User Datagram Protocol의 약자로서 데이터를 포장하여 호스트의 어떤 포트에서 다른 호스트의 또 어떤 포트로 전달하는데 쓴다.

 

특징

비연결성이고, 신뢰성이 없으며, 순서화되지 않는 Datagram 서비스를 제공

일대다 연결이 가능

 

장점

각 데이터그램은 자체로 완결된 것으로, 두 호스트 간 어떤 공유상태에도 의존하지 않음

우체통에 편지를 집어넣는 행위와 유사하다. 편지를 넣고난 후에는 어떠한 신경을 쓰지 않아도 됨

헤더가 단순

 

단점

트래픽을 제한해 주거나, 데이터를 순서대로 전달해 주지 않고, 데이터의 전달을 보장해 주지도 않는다.

 

패킷구조

 

 

발신 포트번호 (16 bit)

데이터그램의 출처가 되는 포트 번호를 기재한다. 수신자가 발신자에게 응답하고자 할 때 유용하다.

 

수신 포트번호 (16 bit)

데이터그램의 목적지가 되는 포트 번호를 기재한다. UDP 모듈은 이 포트에 바인딩해 둔 프로세스에

데이터 그램을 전달한다.

 

길이 (16 bit)

UDP 헤더와 페이로드의 합친 길이

 

체크섬 (16bit)

UDP 헤더와 페이로드, 그리고 IP 헤더 몇몇 필드를 엮어 계산한 체크섬. 필수사항이 아니다.

보통 밑단 계층에서 자체적으로 체크섬을 돌리므로 잘 쓰지않는 필드.(0으로 채워둠)

'게임 서버 프로그래밍 > 네트워크 개념정리' 카테고리의 다른 글

NAT과 P2P  (0) 2020.02.19
TCP (Transmission Control Protocol)  (0) 2020.02.19
서브넷과 서브넷 마스크  (0) 2020.02.18
ARP (주소 결정 프로토콜)  (0) 2020.02.18
IP 주소와 패킷 구조  (0) 2020.02.18