https://g2.doxu.org/index.php?title=PI&feed=atom&action=history
PI - Revision history
2024-03-28T22:32:16Z
Revision history for this page on the wiki
MediaWiki 1.38.4
https://g2.doxu.org/index.php?title=PI&diff=85126&oldid=prev
Ram: /* Receiving */ Clarified that leaves should never be forwarded /PI/UDP messages
2014-01-15T22:41:31Z
<p><span dir="auto"><span class="autocomment">Receiving: </span> Clarified that leaves should never be forwarded /PI/UDP messages</span></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 22:41, 15 January 2014</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l35">Line 35:</td>
<td colspan="2" class="diff-lineno">Line 35:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>immediately.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>immediately.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>If the ping was received from a TCP neighbour and contains a /PI/UDP child packet,</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>If the ping was received <ins style="font-weight: bold; text-decoration: none;">by a hub </ins>from a TCP neighbour and contains a /PI/UDP child packet,</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>but no /PI/RELAY tag, a /PI/RELAY tag should be added and the packet forwarded to</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>but no /PI/RELAY tag, a /PI/RELAY tag should be added and the packet forwarded to</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>all neighbouring hubs. If a /PI/RELAY tag was present, the node should send a /PO</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>all neighbouring hubs. If a /PI/RELAY tag was present, the node should send a /PO</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>packet with a /PO/RELAY tag to the UDP address identified in the /PI/UDP child</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>packet with a /PO/RELAY tag to the UDP address identified in the /PI/UDP child</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>packet.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>packet.</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Note that leaf nodes should '''never''' be forwarded /PI packets with a /PI/UDP child: these need to be handled by hubs only.</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Payload ==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Payload ==</div></td></tr>
</table>
Ram
https://g2.doxu.org/index.php?title=PI&diff=2888&oldid=prev
Dcat at 04:06, 1 January 2009
2009-01-01T04:06:26Z
<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 04:06, 1 January 2009</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">[[LNI|<< LNI]] | [[PO|PO >>]] | [[Root_packets_index|Packet Index]]</del></div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">{{Packets}}</ins></div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>= /PI - Ping =</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>= /PI - Ping =</div></td></tr>
</table>
Dcat
https://g2.doxu.org/index.php?title=PI&diff=1639&oldid=prev
Spooky: nav
2005-09-05T23:37:02Z
<p>nav</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:37, 5 September 2005</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">[[LNI|<< LNI]] | [[PO|PO >>]] | [[Root_packets_index|Packet Index]]</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>= /PI - Ping =</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>= /PI - Ping =</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
</table>
Spooky
https://g2.doxu.org/index.php?title=PI&diff=882&oldid=prev
Dcat at 18:01, 19 March 2005
2005-03-19T18:01:01Z
<p></p>
<p><b>New page</b></p><div>= /PI - Ping =<br />
<br />
The ping packet is used to verify the presence of the addressed node, testing that:<br />
<br />
* The destination node is online<br />
* The destination node can receive the transmission<br />
* The local node can receive the reply<br />
<br />
Aside from performing a "keep-alive" function on TCP links, pings can be used to<br />
solicit inbound UDP datagrams to test the local node's ability to receive UDP. Many<br />
NAT systems will route UDP traffic from nodes with whom a persistent TCP stream<br />
has been established, so it is necessary to test inbound traffic from nodes with which<br />
there is no TCP connection. This is achieved by sending a ping with a /PI/UDP packet<br />
to a connected hub via TCP, which will forward the request to its neighbours who<br />
then reply to the originator via UDP.<br />
<br />
== Sending ==<br />
<br />
On a TCP stream connection, if one end has not received a valid packet from the<br />
other after an internally determined period of time, it has the option of sending a<br />
keep-alive ping to verify the other end's presence. If a pong is not received in a<br />
timeout period it may close the connection.<br />
<br />
If a node needs to verify that it is able to receive UDP datagrams from nodes with<br />
which it does not have a TCP stream connection, it may send a ping packet with a<br />
/PI/UDP child packet. If it then receives a /PO (pong) packet with a /PO/RELAY child<br />
tag and there is no TCP connection to the sender, it can assume it is able to receive<br />
UDP.<br />
<br />
== Receiving ==<br />
<br />
Upon receiving a keep-alive ping, a node should respond with a keep-alive pong<br />
immediately.<br />
<br />
If the ping was received from a TCP neighbour and contains a /PI/UDP child packet,<br />
but no /PI/RELAY tag, a /PI/RELAY tag should be added and the packet forwarded to<br />
all neighbouring hubs. If a /PI/RELAY tag was present, the node should send a /PO<br />
packet with a /PO/RELAY tag to the UDP address identified in the /PI/UDP child<br />
packet.<br />
<br />
== Payload ==<br />
<br />
This packet has no payload at the current time.<br />
<br />
== Children ==<br />
<br />
The ping packet has two child packets defined at the current time:<br />
<br />
* /PI/RELAY<br />
* /PI/UDP<br />
<br />
== /PI/RELAY - Relayed Ping Marker ==<br />
<br />
If a /PI packet contains a /PI/RELAY child marker, the ping has been relayed for a<br />
third party. The receiving node should reply to the original party rather than the<br />
sender. The original party should be contacted via UDP with the address contained in<br />
the /PI/UDP child. If the /PI/UDP child is absent, the packet is invalid.<br />
<br />
=== Sending ===<br />
<br />
The /PI/RELAY child should be added to a /PI packet when relaying a ping to hub<br />
neighbours at the request of a leaf.<br />
<br />
=== Receiving ===<br />
<br />
Upon receiving a /PI packet with a /PI/RELAY tag, a /PO (pong) packet should be<br />
sent via UDP to the node identified in the /PI/UDP child.<br />
<br />
=== Payload ===<br />
<br />
This packet has no payload at the current time.<br />
<br />
=== Children ===<br />
<br />
This packet has no known children at the current time.<br />
<br />
<br />
== /PI/UDP - Ping Response Address ==<br />
<br />
The /PI/UDP child packet specifies the return address for a relay able or relayed<br />
ping.<br />
<br />
=== Sending ===<br />
<br />
Add a /PI/UDP child packet to a /PI packet to request a relayed "two hop" ping.<br />
<br />
=== Receiving ===<br />
<br />
The /PI/UDP child packet indicates that a /PI packet needs to be relayed.<br />
<br />
=== Payload ===<br />
<br />
The /PI/UDP packet contains an endpoint address.<br />
<br />
=== Children ===<br />
<br />
This packet has no known children at the current time.</div>
Dcat