Analysis

기본적인 UDP Packet 분석

DarkSoul.Story 2013. 1. 30. 11:16
반응형

UDP는 전송계층 (Transport Layer)을 이용하는 어플리케이션을 식별한다.TCP헤더와 다르게 수신 확인 여부를 확인하는 정보 없이 패킷을 보내기만 하므로 포트 번호를 비롯한 전송에 필요한 정보만 포함한다.  UDP는 단순한 4개의 필드(Source Port, Destination Port, Length, Checksum)로 구성된 8Byte헤더를 사용하기 때문에 특별히 문제가 발생하는 일이 드물다. 


Source Port

Destination Port

Length

Checksum


[그림.1 UDP 패킷 구조]

[그림.1 UDP 패킷 구조]의 구성 필드별 내용을 살펴 보면 다음과 같다.

① Source Port 

이 필드는 2Byte의 길이를 가지고 있으며,  발신지(출발지) 포트 번호 정보를 가지고 있다. 통신에 있어서 클라이언트는 임의의 포트 번호를 사용하고, 서버는 잘 알려진 포트 번호를 사용한다.  


② Destination Port

이 필드는 2Byte의 길이를 가지고 있으며, TCP나 UDP나 동일한 목적을 갖는다. 응답 패킷에서 수신 중인 포트를 열기 위하거나, 또는 일부의 경우 전송하는 어플리케이션이나 프로토콜을 정의하기 위한 목적이다. 

③ Length

이 필드는 2Byte의 길이를 가지고 있으며, UDP 헤더에서 유효한 데이터의 끝까지 패킷의 길이를 정의한다. 이 필드는 중복 필드이며, 전체 통신 프로세스에서는 실제로 필요하지 않다. 

④ Checksum

이 필드는 2Byte의 길이를 가지고 있으며, 오류 유무를 검사하기 위해 존재한다. 하지만 UDP 기반의 통신은 항상 체크섬을 요구하지 않는다. 가끔 이 필드가 모두 0(0x00)으로 설정되있는것을 볼 수 있을 것이다. 모두 0(0x00)으로 설정되는 것은 체크섬이 인증되지 않았다는 의미이다.

[그림.2]와 [그림.3]은 실제 와이어샤크(wireshark)를 이용하여 캡쳐한 UDP 패킷을 이다. 실제 패킷 내용과 위에서 설명한 내용을 비교 하여 살펴보면, 이해하기 쉬울 것이다.

[그림.2 클라이언트 UDP 패킷]


[그림.3 서버 UDP 패킷]


UDP는 기본적으로 위와 같지만, UDP를 사용하는 어플리케이션과 같이 생각하는것이 더 좋다.

UDP를 사용하는 일반적인 어플리케이션은 DHCP/BOOTP/SIP/TRP/DNS/TFTP/다양한 스트리밍 비디오 어플리케이션이 있다.


반응형

'Analysis' 카테고리의 다른 글

기본적인 DHCP Packet 분석  (0) 2013.01.30
기본적인 DNS Packet 분석  (2) 2013.01.30
기본적인 ICMP Packet 분석  (0) 2013.01.30
기본적인 ARP Packet 분석  (0) 2013.01.30
와이어샤크(wireshark) Edit 메뉴  (0) 2012.12.27