UDP - User Datagram Protocol

pcapkit.protocols.transport.udp contains UDP only, which implements extractor for User Datagram Protocol (UDP) *, whose structure is described as below:

Octets

Bits

Name

Description

0

0

udp.srcport

Source Port

2

16

udp.dstport

Destination Port

4

32

udp.len

Length (header includes)

6

48

udp.checksum

Checksum


class pcapkit.protocols.transport.udp.UDP(file=None, length=None, **kwargs)[source]

Bases: Transport[UDP]

This class implements User Datagram Protocol.

This class currently supports parsing of the following protocols, which are registered in the self.__proto__ attribute:

Port Number

Protocol

80

pcapkit.protocols.application.http.HTTP

Parameters
  • *args (Any) – Arbitrary positional arguments.

  • **kwargs (Any) – Arbitrary keyword arguments.

Return type

Protocol[PT]

classmethod __index__()[source]

Numeral registry index of the protocol.

Return type

TransType

Returns

Numeral registry index of the protocol in IANA.

property name: Literal['User Datagram Protocol']

Name of current protocol.

Return type

Literal[‘User Datagram Protocol’]

property length: Literal[8]

Header length of current protocol.

Return type

Literal[8]

property src: int

Source port.

Return type

int

property dst: int

Destination port.

Return type

int

read(length=None, **kwargs)[source]

Read User Datagram Protocol (UDP).

Structure of UDP header [RFC 768]:

 0      7 8     15 16    23 24    31
+--------+--------+--------+--------+
|     Source      |   Destination   |
|      Port       |      Port       |
+--------+--------+--------+--------+
|                 |                 |
|     Length      |    Checksum     |
+--------+--------+--------+--------+
|
|          data octets ...
+---------------- ...
Parameters
  • length (Optional[int]) – Length of packet data.

  • **kwargs (Any) – Arbitrary keyword arguments.

Return type

UDP

Returns

Parsed packet data.

make(**kwargs)[source]

Make (construct) packet data.

Parameters

**kwargs (Any) – Arbitrary keyword arguments.

Return type

NoReturn

Returns

Constructed packet data.

__proto__: DefaultDict[int, tuple[str, str]]

Protocol index mapping for decoding next layer, c.f. self._decode_next_layer & self._import_next_layer.

Type

DefaultDict[int, tuple[str, str]]

Data Structures

class pcapkit.protocols.data.transport.udp.UDP(srcport, dstport, len, checksum)[source]

Bases: Info

Data model for UDP protocol.

Parameters
  • *args (VT) – Arbitrary positional arguments.

  • **kwargs (VT) – Arbitrary keyword arguments.

Return type

Info

srcport: int

Source port.

dstport: int

Destination port.

len: int

Length (header includes).

checksum: bytes

Checksum.


*

https://en.wikipedia.org/wiki/User_Datagram_Protocol