Post

Udp, 신뢰적 데이터 전송의 원리

Udp, 신뢰적 데이터 전송의 원리

UDP란

  • UDP(User Datagram Protocol)란 음성통신(VoIP, Voice over IP)나 이름 결정, DHCP나 시각 동기화 등 즉시성을 요하는 애플리케이션에서 사용한다.
  • 커넥션리스 타입 프로토콜이며 UDP 커넥션이라는 통신로를 만들고 애플리케이션 데이터를 송신한다.
  • 포맷을 간단하게 하거나 확인 응답을 생략하는 등 즉시성을 향상하는 것을 목표로 한다.

UDP의 장단점

장점

  • 핸드셰이크나 데이터가 제대로 도착했는지 확인하지 않기떄문에 TCP 보다 훨씬 빠르게 데이터를 전송할 수 있다.
  • 비디오 재성, DNS 조회와 같이 시간에 민감한 전송을 위한 인터넷을 통해 사용된다.

단점

  • TCP와 비교하여 먼저 연결을 설정하거나 패킷의 순서를 표시하거나, 의도한 대로 도착했는지 확인하지않아 신뢰성 및 안정성이 떨어진다.
  • 전송중 패킷이 손실될수 있어 DDoS 공격 1의 형태로 악용될 수 있다.

UDP 체크섬에 대한 설명

  • 체크섬은 받아들인 UDP 데이터그램 2의 손상 여부 정합성 체크에 사용되는 2바이트 필드 이다.
  • 서버가 UDP 헤더에 포함된 UDP 데이터그램 길이 3와 체크섬을 이용해 데이터가 손상되지 않았는가를 체크한다.(체크섬 검증) 체크섬 검증에 성공하면 데이터를 받아들인다.

전송후 대기 프로토콜이란

정지대기 프로토콜 (Stop-and-Wait)

  • 가장 간단한 형태의 오류 제어 프로토콜 중 하나로 데이터를 전송한 후 수신자로부터 확인(ACK)을 받을 때까지 대기하는 방식이다.

동작방식

  1. 송신자가 데이터 프레임을 수신자에게 전송합니다.
  2. 수신자는 데이터 프레임을 정상적으로 받으면 ACK(Positive Acknowledgement)를 송신자에게 보냅니다.
  3. 송신자는 ACK를 받을 때까지 기다립니다.
  4. 만약 송신자가 일정 시간 동안 ACK를 받지 못하면, 데이터 프레임을 재전송합니다.

출처 : https://zrr.kr/UdB4

파이프라인 프로토콜이란

  • 데이터 처리와 전송을 효율적으로 수행하기 위한 기술적이 개념으로 사용된다.
  • 파이프라인은 일련의 작업이 연속적으로 실행되는 것을 의미하며, 각 작업은 다음 작업으로의 입력이 되어 연결되어 있다.

Go-Back-N

Go-Back-N은 신뢰성 있는 데이터 전송을 위해 사용되는 오류 제어 프로토콜 중 하나로, 전송자와 수신자 간의 데이터 흐름을 관리하여 데이터의 손실이나 손상을 감지하고 복구하는 기술이다. Go-Back-N은 파이프라인 프로토콜의 한 형태로 볼 수 있으며, 데이터를 연속적으로 전송하는 방식으로 동작합니다.

출처 : https://zrr.kr/UdB4



  1. Distributed Denial of Service의 약자로 웹사이트 또는 네트워크 리소스 운영이 불가능하도록 악성 트래픽을 대량으로 보내는 공격이다.
     ↩︎

  2. UDP 패킷을 데이터그램이라고 한다.
     ↩︎

  3. UDP 데이터그램의 길이는 UDP 헤더와 UDP 페이로드를 합친 데이터 그림 전체 길이를 나타내는 2바이트 필드이다.
     ↩︎

This post is licensed under CC BY 4.0 by the author.