2.2.1 PNRP Header

All PNRP Messages use the common header as follows.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

FieldID

Length

Identifier

VersionMajor

VersionMinor

MessageType

Message ID

FieldID (2 bytes): The type of message. MUST be set to 0x0010 (PNRP_HEADER).

Length (2 bytes): The length, in bytes, of the PNRP Header. MUST be set to 0x000C.

Identifier (1 byte): MUST be set to 0x51.

VersionMajor (1 byte): Major version of protocol. MUST be set to 0x04.

VersionMinor (1 byte): Minor version of protocol. MUST be set to 0x00.

MessageType (1 byte): The type of message following the PNRP Header. MUST be one of the following.

Value

Meaning

0x01

SOLICIT

0x02

ADVERTISE

0x03

REQUEST

0x04

FLOOD

0x07

INQUIRE

0x08

AUTHORITY

0x09

ACK

0x0B

LOOKUP

Message ID (4 bytes): An arbitrary 32-bit value used for acknowledgment tracking. This value is generated by the protocol; the algorithm used to generate the Message ID value MUST minimize the probability of generating duplicate Message ID values within a window of time at least as large as the round-trip latency of a protocol message.