cha_eyoon 2024. 3. 3. 10:34

UDP(User Datagram Protocol)

  • 비연결형, 신뢰성이 없는 전송 프로토콜
  • 흐름제어, 오류제어 및 손상된 세그먼트의 수신에 대한 재전송을 하지 않음
  • 순서를 보장하지 않지만 TCP보다 간단하고 빠름
  • 간결한 헤더

UDP Checksum

UDP Header
Checksum 계산 방식

  1. 도착 IP주소, 송신 포트번호, 수신 포트번호, 데이터 길이, payload 등의 데이터들을 16비트 단위로 쪼개서 전부 더한다.
  2. 더하는 도중 overflow되서 carry-out된 값이 있다면 결과에 다시 더해서 sum 값을 만든다.
  3. 계산한 sum 값에 1의 보수를 취하면 checksum
  • 송신측과 수신측의 checksum이 동일하다면 에러가 없는 것
  • 전송 도중 checksum이 바뀔 수 있다.

UDP 사용 사례

  • 실시간 스트리밍 서비스
    • 손실 없는 데이터보다 끊김 없는 감상이 더 중요함
    • 온라인 게임 및 인터넷 전화에 사용 
  • DNS(Domain Name System)
    • DNS는 request(도메인 이름)와 response(IP 주소)가 간결하므로 TCP를 사용하면 오버헤드가 큼
    • 도메인 이름을 IP로 변경해야 하므로 많은 클라이언트를 수용하는 DNS 서버는 TCP보다 UDP 적합
  • SNMP(Simple Network Management Protocol) 
    • SNMP Manager: 네트워크 상의 장치들을 관리
    • SNMP Agent: 각 네트워크 장치에 설치 및 SNMP Manager의 요청에 응답
    • Manager가 주기적으로 Agent에게 물어보는 형태이므로 간결한 UDP 사용(polling 방식)

 

 

Q. UDP 사용 사례에 대해 TCP의 특징과 비교해서 설명하시오.

 

 

참고

https://code-lab1.tistory.com/25

 

[네트워크] UDP란? UDP의 개념과 이해 | UDP checksum

UDP란? UDP(User Datagram Protocol)는 비연결형, 신뢰성이 없는 전송 프로토콜이다. IP데이터그램을 캡슐화하여 보내는 방법과 연결 설정을 하지 않고 보내는 방법을 제공한다. UDP는 TCP/IP 5계층에서 Transp

code-lab1.tistory.com