UDP

oyeon·2023년 9월 21일
0

컴퓨터 네트워크

목록 보기
6/15

UDP

User Datagram Protocol

  • Transport Layer(4L)의 비연결 지향적 프로토콜

특징

  • 비연결형 서비스로 데이터그램 방식을 제공
  • 데이터 경계를 구분한다 (데이터그램 서비스)
  • 정보를 주고 받을 때, 정보를 보내거나 받는다는 신호절차를 거치지 않는다.(3-way handshaking X, connectionless)
  • UDP header의 checksum 필드를 통해 최소한의 오류만 검출한다.
  • 패킷관리가 필요하다.
  • 패킷 오버헤드가 적어 네트워크 부하가 감소되는 장점
  • 신뢰성이 낮다
  • TCP보다 속도가 빠르다
  • 신뢰성보다 전송속도가 중요할 때 사용(ex. 스트리밍 사이트)
  • ex. DNS, SNMP

UDP checksum

  • 위의 UDP segment header를 보면 checksum 항목이 있다. 이는 전송된 segment의 에러를 탐지위한 것이다.

계산과정

  1. 도착 IP 주소, 송신 포트번호, 수신 포트번호, 데이터 길이, payload 등의 데이터들을 16비트 단위로 쪼개서 전부 더한다.
  2. 만약, 더하는 도중 overflow 되어 carry-out 값(1)이 생기면 결과에 1을 더해 sum을 만든다.
  3. 계산한 sum 값에 1의 보수를 취한 값이 checksum 이다.

검증과정

  1. 계산한 checksum 값을 송신측에서 header의 checksum 영역에 넣어 수신측에 보낸다.
  2. 수신측에서도 checksum 값을 계산하고, 송신측에서 보낸 checksum과 비교한다.
  3. 만약 동일하다면 에러가 없는 것이고, 동일하지 않다면 에러가 있는 것으로 이해하면 된다.

※ 100% 검증은 불가하다

  • 전송도중 checksum 값이 바뀔 수 있기 때문
  • 데이터가 변형되었음에도 불구, 계산한 checksum 값이 같은 상황이 있을 수도 있기 때문

reference
https://mangkyu.tistory.com/15
https://coding-factory.tistory.com/614
https://code-lab1.tistory.com/25

profile
Enjoy to study

0개의 댓글

관련 채용 정보