사용자 데이터그램 프로토콜: 아키텍처, 작업 및 응용

문제를 제거하기 위해 도구를 사용해보십시오





컴퓨터 네트워킹의 UDP(User Datagram Protocol)는 David P. Reed가 1980년에 개발했습니다. 이것은 표준 프로토콜이며 TCP/IP 프로토콜 인터넷을 통해. 이 프로토콜을 사용하면 컴퓨터의 응용 프로그램이 IP(인터넷 프로토콜) 네트워크를 통해 한 컴퓨터에서 다른 컴퓨터로 데이터그램 형식의 메시지를 전송할 수 있습니다. 이 UDP는 전송 제어 프로토콜에 대한 대체 통신 프로토콜입니다. 이 프로토콜은 인터넷에서 정보가 교환되는 방식을 규정하는 TCP와 같은 일련의 규칙을 제공합니다. 이 문서에서는 개요에 대해 설명합니다. UDP 또는 사용자 데이터그램 프로토콜 – 응용 프로그램 작업.


사용자 데이터그램 프로토콜이란 무엇입니까?

그만큼 통신 프로토콜 인터넷 응용 프로그램 간에 안정적이고 대기 시간이 짧은 연결을 설정하는 데 사용되는 것을 사용자 데이터그램 프로토콜 또는 UDP라고 합니다. UDP 프로토콜은 비디오 재생, 게임 등과 같이 시간에 민감한 기반 응용 프로그램에 특히 선택됩니다. 이 프로토콜은 데이터를 전송하기 전에 대상을 통해 견고한 연결을 설정하는 데 더 많은 시간을 사용하지 않기 때문에 통신 속도를 높입니다.



UDP는 IP 서비스를 사용하여 최상의 전달 메커니즘을 제공합니다. 이 프로토콜에서 수신자는 수신된 패킷 승인을 생성하지 않으며 순차적으로 발신자는 전송된 패킷 승인에 대해 남아 있지 않습니다. 따라서 이 결함은 이 프로토콜을 신뢰할 수 없고 처리하기 쉽게 만듭니다.

특징

그만큼 사용자 데이터그램 프로토콜의 기능 다음을 포함합니다.



  • 이것은 연결 지향 프로토콜이 아닙니다.
  • 데이터 전달은 보장되지 않습니다.
  • 이 프로토콜은 매우 간단하고 조회 기반 통신에 적합합니다.
  • 패킷을 대량으로 전송합니다.
  • UDP 데이터그램은 DNS, NFS, TFTP, SNMP 등에서 활용됩니다.
  • 이 프로토콜은 한 방향으로 흐르는 데이터에 적합합니다.
  • 혼잡 제어 메커니즘을 제공하지 않습니다.
  • 멀티미디어 스트리밍, VoIP 등과 같은 스트리밍 애플리케이션에 적합합니다.
  • 혼잡이나 흐름 제어가 없으므로 발신자가 수신자의 버퍼를 초과할 수 있습니다.
  • IP에 프로세스 간 주소 지정 및 체크섬을 추가합니다.
  • 소켓이 데이터그램 모드 내에서 열리면 사용됩니다.
  • 데이터 전송을 위해 UDP에는 잠금 단계 프로토콜이 필요합니다.

형질

그만큼 사용자 데이터그램 프로토콜의 특성 다음을 포함합니다.

  • 이 프로토콜은 변수이자 비연결형 프로토콜입니다.
  • 거의 Null 프로토콜입니다.
  • 이 프로토콜은 데이터 흐름이 한 방향일 때 좋습니다.
  • 이 프로토콜을 사용하면 혼잡 제어 메커니즘이 제공되지 않습니다.
  • 이 프로토콜은 최소한의 전송 서비스를 제공합니다.
  • UDP는 상태 비저장 프로토콜입니다.
  • UDP 데이터그램은 유사한 경로를 사용하고 목적지에 올바른 순서로 도착합니다.
  • UDP 애플리케이션은 항상 신뢰할 수 없는 것으로 간주됩니다.
  • UDP는 일단 목적지가 데이터를 얻을 준비가 되면 네트워크에 데이터를 제공합니다.

사용자 데이터그램 프로토콜 아키텍처

사용자 데이터그램 프로토콜 패킷은 일반적으로 사용자 데이터그램이라고 하며 헤더 크기는 8바이트로 고정되어 있습니다. 사용자 데이터그램 형식에 대해 논의해 보겠습니다. UDP의 헤더는 소스 포트 번호, 목적지 포트 번호, 총 길이 및 체크섬의 4개 필드를 포함하며 각 필드는 아래에서 설명합니다.

  사용자 데이터그램 프로토콜 헤더 형식
사용자 데이터그램 프로토콜 헤더 형식
  • 소스 포트 번호는 패킷을 전송할 포트를 인식하는 16비트 정보입니다.
  • 대상 포트 번호는 대상 시스템에서 애플리케이션 수준 서비스를 식별하는 데 사용되는 16비트 데이터인 데이터를 허용할 포트를 단순히 인식합니다.
  • 길이는 헤더를 구성하는 전체 UDP 패킷 길이를 식별하는 16비트 필드입니다. 따라서 헤더 크기가 8바이트이므로 최소값은 8바이트가 됩니다.
  • 체크섬은 16비트 필드로, 전송 중에 데이터가 파괴될 수 있으므로 데이터가 올바른지 여부를 확인합니다. 따라서 체크섬은 선택적 필드이므로 체크섬을 작성해야 하는지 여부는 주로 애플리케이션에 따라 다릅니다.

체크섬을 작성하지 않으려면 다음으로 모든 16비트가 '0'으로 남습니다. 이 프로토콜에서 체크섬 필드는 전체 패킷 즉 헤더와 데이터 부분에 부여되지만 IP의 체크섬 필드는 헤더 필드에만 적용된다.

사용자 데이터그램 프로토콜은 어떻게 작동합니까?

사용자 데이터그램 프로토콜은 IP를 사용하여 한 PC에서 다른 PC로 데이터그램을 얻습니다. 이 프로토콜은 UDP 패킷 내에서 데이터를 수집하고 패킷에 자체 헤더 데이터를 포함하여 작동합니다. 따라서 이 데이터에는 대화할 소스 및 대상 포트 IP, 패킷 길이 및 체크섬이 모두 포함됩니다. UDP 패킷이 IP 패킷 내에서 요약되면 해당 대상으로 전송됩니다.

이 프로토콜은 TCP와 달리 수신 컴퓨터에 직접 연결하지 않으므로 패킷을 올바른 대상으로 전송하는 것을 보장하지 않지만 데이터를 외부로 전송하고 송수신 컴퓨터 사이의 장치에 따라 다릅니다. 데이터를 올바르게 가져옵니다.

대부분의 응용 프로그램은 UDP를 통해 보낸 패킷의 결과로 받을 것으로 예상되는 응답을 기다립니다. 따라서 애플리케이션이 특정 시간에 응답을 받지 못하면 애플리케이션은 다시 패킷을 전송하거나 시도를 종료합니다.

이 프로토콜은 데이터의 순서, 신뢰성 또는 무결성을 제공하기 위해 핸드셰이킹 대화를 포함하지 않는 간단한 전송 모델을 사용합니다. 결과적으로 이 프로토콜의 서비스는 무책임하므로 패킷이 순서가 맞지 않거나 중복된 것으로 나타나거나 경고 없이 사라질 수 있습니다.

차이점 B/w TCP와 UDP

그만큼 TCP와 UDP의 차이점 다음을 포함합니다.

TCP

UDP

TCP는 데이터 전송을 위해 설정된 연결을 사용합니다. UDP는 비연결형 프로토콜입니다.
이 프로토콜은 신뢰할 수 있습니다. 이 프로토콜은 신뢰할 수 없습니다.
데이터 시퀀싱이 가능합니다. 데이터 시퀀싱이 불가능합니다.
광범위한 오류 검사를 위한 메커니즘을 제공합니다. 체크섬이 있는 기본 오류 검사 메커니즘이 있습니다.
속도는 UDP보다 느립니다. 속도는 TCP보다 빠릅니다.
방송을 지원하지 않습니다. 방송을 지원합니다.
이 프로토콜에서는 손실된 패킷의 재전송 가능성이 있습니다. 패킷 재전송이 손실될 가능성은 없습니다.
바이트 스트림 연결이 있습니다. 메시지 스트림 연결이 있습니다.
20~60개의 가변 헤더 길이가 있습니다. 고정 헤더 길이는 8바이트입니다.
TCP의 무게는 무겁습니다. UCP의 무게는 무겁지 않습니다.
이 프로토콜은 ACK, SYN 및 SYN-ACK와 같은 핸드셰이킹 기술을 사용합니다. 핸드셰이킹 기술을 사용하지 않습니다.
이 프로토콜은 다음에서 사용됩니다. FTP , SMTP, HTTP 및 HTTPS. 이 프로토콜은 DHCP, DNS, TFTP, RIP,  VoIP 및 SNMP에서 사용됩니다.
UDP에 비해 오버헤드가 높습니다. 오버헤드는 TCP에 비해 매우 낮습니다.

장점과 단점

그만큼 UDP의 장점 다음을 포함합니다.

  • 이 프로토콜을 사용하면 멀티캐스트 및 브로드캐스트 전송이 가능합니다.
  • UDP는 패킷 오버헤드가 작기 때문에 대역폭을 매우 효율적으로 활용합니다.
  • UDP는 매우 빠릅니다.
  • 패킷의 버퍼링 및 번호 매기기가 없습니다.
  • 핸드셰이킹에 대한 요구 사항은 없습니다.
  • 혼잡 제어가 없으므로 실시간 기반 응용 프로그램에 활용됩니다.
  • 이 프로토콜은 오류를 감지하기 위해 모든 패킷을 통해 체크섬을 사용합니다.
  • 이 프로토콜은 호스트 간에 단일 데이터 패킷을 교환해야 하는 이벤트에서도 사용할 수 있습니다.

그만큼 UDP의 단점 다음을 포함합니다.

  • UDP 프로토콜은 신뢰할 수 없고 연결이 없는 전송 프로토콜입니다.
  • 이 프로토콜은 오류 제어를 사용하지 않습니다. 따라서 이 프로토콜이 수신된 패킷 내에서 오류를 감지하면 자동으로 삭제합니다.
  • 혼잡 및 흐름 제어 메커니즘이 없습니다.
  • 보장된 배송은 없습니다.
  • 소비자 데이터그램 프로토콜은 대부분 패킷 손실로 어려움을 겪습니다.
  • UDP는 데이터 손실을 일으킵니다.
  • 라우터는 이 프로토콜에 대해 다소 부주의하므로 충돌이 발생하면 다시 전송하지 않습니다.

사용자 데이터그램 프로토콜의 응용/사용

그만큼 사용자 데이터그램 프로토콜의 응용 프로그램 또는 사용 다음을 포함합니다.

  • UDP는 시간에 민감한 애플리케이션과 더 큰 클라이언트 기반의 작은 쿼리에 응답하는 서버에서도 사용됩니다.
  • 이것은 특히 네트워크 전체에 전송하기 위한 패킷 브로드캐스트에 적합합니다.
  • Voice over IP, 온라인 게임 및 도메인 이름 시스템에서도 사용됩니다.
  • 이 프로토콜은 음성, 게임 및 비디오 통신과 같은 네트워크 응용 프로그램에 사용됩니다.
  • 무손실 데이터 전송이 필요한 경우에 사용됩니다.
  • 이 프로토콜은 단순히 패킷 스위칭을 지원하므로 멀티캐스팅에 활용됩니다.
  • UDP는 신뢰할 수 있는 데이터 교환에 의존하지만 패킷에 응답하는 자체 기술을 포함해야 하는 응용 프로그램에서 사용됩니다.
  • UDP는 안정성보다 속도가 중요한 모든 곳에서 사용됩니다.

따라서 이것은 모든 것에 관한 것입니다. 사용자 데이터그램 프로토콜 개요 – 아키텍처, 애플리케이션 작업. 사용자 데이터그램 프로토콜의 다양한 작업에는 주로 비접촉 서비스, 흐름 및 오류 제어, 캡슐화 및 캡슐화 해제가 포함됩니다. 사용자 데이터그램 프로토콜의 예는 다음과 같습니다. 온라인 게임, 화상 회의, VoIP(Voice over IP) 및 DNA(도메인 이름 시스템). UDP 포트란 무엇입니까?