PO

From Gnutella2
Jump to: navigation, search

Root Packets
CRAWLA - CRAWLR
HAW - LNI
KHL - KHLA - KHLR
PI - PO - PUSH
QKA - QKR
Q2 - QA - QH2 - QHT
UPROC - UPROD

/PO - Pong

The pong packet serves as a reply to a one or two hop ping (/PI) packet. It indicates that the pinged node received and processed the ping, and in the case of UDP, that the local node was able to received UDP from the sender.

Sending

Send a pong packet in response to a direct or relayed ping request.

Receiving

No action is required in response to a pong packet. If the packet contains a /PO/RELAY marker child, test the sender's network address against the list of active TCP connections and if there is no match, consider the local node able to receive UDP.

Payload

This packet has no payload at the current time.

Children

The ping packet has one child packet type defined at the current time:

  • /PO/RELAY

/PO/RELAY - Relayed Pong Marker

If a /PO packet contains a /PO/RELAY child marker, the pong was sent in response to a relayed ping.

Sending

The /PO/RELAY child marker should be added to a /PO if the pong is being sent in response to a relayed ping.

Receiving

No specific action is required for a relayed pong.

Payload

This packet has no payload at the current time.

Children

This packet has no known children at the current time.