컴퓨터공학/컴퓨터망

[컴퓨터망] User Datagram Protocol (UDP)

NIMHO 2022. 7. 3. 17:51
728x90

복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.

Introduction

  • 아래 그림은 TCP/IP protocol 스위트의 다른 protocol과 계층에 대한 user datagram protocol(UDP)의 관계를 보여준다.
  • UDP는 애플리케이션 계층과 IP 계층 사이에 위치하며 애플리케이션 프로그램과 네트워크 운영 사이의 중개 역할을 한다.

Position of UDP in the TCP/IP protocol suite

 

User datagram

  • user datagram이라고 불리는 UDP 패킷은 8Byte의 고정 크기 헤더를 가지고 있다.
  • 아래 그림은 user datagram의 형식을 보여준다.

User datagram format

IP address : 4Byte (32bit)
Port number : 2Byte (16bit)

checksum
UDP는 simple해서 (real time) 문제있으면 버린다. (real time이라서)
TCP는 복잡해서 문제있으면 알려준다.

 

UDP Services

  • 지난 블로그에서 transport layer protocol에 의해 제공되는 일반적인 서비스에 대해 논의했다.
  • 이 섹션에서는 UDP가 제공하는 일반 서비스의 일부에 대해 설명한다.
  • UDP는 port number만 제공한다.

2022.07.03 - [컴퓨터공학/컴퓨터망] - [컴퓨터망] Transport Layer

 

[컴퓨터망] Transport Layer

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶Process

dhalsdl12.tistory.com

 

Topics Discussed in the Section

  • Process-to-Process Communication
  • Connectionless Service
  • Flow Control
  • Error Control
  • Congestion Control
  • Encapsulation and Decapsulation
  • Queuing
  • Multiplexing and Demultiplexing
  • Comparison between UDP and Generic Simple Protocol

Pseudoheader for checksum calculation

source IP address, destination IP address는 IP head에 있는 정보이다.
Header 두 라인의 문제가 아니더라도 IP의 문제가 나면 error가 난다.
따라서 Pseudoheader와 header 다섯 라인으로 checksum 구한 후 계산한다.
UDP는 real time이라서 error control이 따로 필요하지 않다.

Encapsulation and decapsulation

encapsulation한 후 network를 통해 넘어가서 decapsulation한다.

Queues in UDP

일반적으로는 양쪽에 queue가 있다.
send할때도, read/request할때도 queue에서 담겨서 순서를 기다린다.

Multiplexing and demultiplexing

여러 응용 protocol이 똑같이 UDP를 사용한다.

UDP는 오류 감지를 위해 패킷에 추가된 선택적 체크섬을 제외하고
지난 에서 논의한 connectionless simple protocol 의 예다.

 

UDP Application

  • UDP는 신뢰할 수 있는 transport-layer protocol에 대해 지난 글에서 언급한 기준을 거의 충족하지 않는다.
  • 하지만, 일부 응용 프로그램에서는 UDP가 선호됩니다.
  • 그 이유는 일부 service은 받아들일 수 없거나 바람직하지 않은 부작용이 있을 수 있기 때문이다.
  • 애플리케이션 설계자는 최적화를 위해 타협할 필요가 있습니다.

 

UDP Package

  • UDP가 UDP packet의 송수신을 처리하는 방법을 보여주기 위해, 우리는 UDP package의 간단한 버전을 제시한다.
  • UDP package는 제어 블록 테이블, 입력 큐, 제어 블록 모듈, 입력 모듈, 출력 모듈의 다섯 가지 구성 요소를 포함한다.

UDP design

Queues : 언제 읽을지 모르니까 queue가 존재한다. 대기하고 있다가 읽는다.
(TCP : 양쪽 다 queue가 있다.)
보낼때는 network로 바로 보낸다. (queue X)
728x90