forked from I2P_Developers/i2p.www
SSU: IPv6 Peer Testing updates
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
{% extends "global/layout.html" %}
|
{% extends "global/layout.html" %}
|
||||||
{% block title %}{% trans %}Secure Semireliable UDP{% endtrans %} (SSU){% endblock %}
|
{% block title %}{% trans %}Secure Semireliable UDP{% endtrans %} (SSU){% endblock %}
|
||||||
{% block lastupdated %}{% trans %}May 2016{% endtrans %}{% endblock %}
|
{% block lastupdated %}{% trans %}June 2016{% endtrans %}{% endblock %}
|
||||||
{% block accuratefor %}0.9.26{% endblock %}
|
{% block accuratefor %}0.9.27{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
<p>{% trans transports=site_url('docs/transport'), ntcp=site_url('docs/transport/ntcp') -%}
|
<p>{% trans transports=site_url('docs/transport'), ntcp=site_url('docs/transport/ntcp') -%}
|
||||||
@@ -489,8 +489,8 @@ any additional information. Alice may go on to establish a session
|
|||||||
with either Bob or Charlie, but it is not required.
|
with either Bob or Charlie, but it is not required.
|
||||||
{%- endtrans %}</p>
|
{%- endtrans %}</p>
|
||||||
|
|
||||||
|
<h3>IPv6 Notes</h3>
|
||||||
<p>
|
<p>
|
||||||
IPv6 Notes:
|
|
||||||
Through release 0.9.26, only testing of IPv4 addresses is supported.
|
Through release 0.9.26, only testing of IPv4 addresses is supported.
|
||||||
Only testing of IPv4 addresses is supported.
|
Only testing of IPv4 addresses is supported.
|
||||||
Therefore, all Alice-Bob and Alice-Charlie communication must be via IPv4.
|
Therefore, all Alice-Bob and Alice-Charlie communication must be via IPv4.
|
||||||
@@ -499,6 +499,11 @@ Alice's address, when specified in the PeerTest message, must be 4 bytes.
|
|||||||
As of release 0.9.27, testing of IPv6 addresses is supported,
|
As of release 0.9.27, testing of IPv6 addresses is supported,
|
||||||
and Alice-Bob and Alice-Charlie communication may be via IPv6.
|
and Alice-Bob and Alice-Charlie communication may be via IPv6.
|
||||||
See <a href="/spec/proposals/126-ipv6-peer-testing">Proposal 126</a> for details.
|
See <a href="/spec/proposals/126-ipv6-peer-testing">Proposal 126</a> for details.
|
||||||
|
</p><p>
|
||||||
|
Alice sends the request to Bob using an existing session over the transport (IPv4 or IPv6) that she wishes to test.
|
||||||
|
When Bob receives a request from Alice via IPv4, Bob must select a Charlie that advertises an IPv4 address.
|
||||||
|
When Bob receives a request from Alice via IPv6, Bob must select a Charlie that advertises an IPv6 address.
|
||||||
|
The actual Bob-Charlie communication may be via IPv4 or IPv6 (i.e., independent of Alice's address type).
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
@@ -5,7 +5,7 @@ IPv6 Peer Testing
|
|||||||
:author: zzz
|
:author: zzz
|
||||||
:created: 2016-05-02
|
:created: 2016-05-02
|
||||||
:thread: http://zzz.i2p/topics/2119
|
:thread: http://zzz.i2p/topics/2119
|
||||||
:lastupdated: 2016-05-02
|
:lastupdated: 2016-06-29
|
||||||
:status: Open
|
:status: Open
|
||||||
|
|
||||||
.. contents::
|
.. contents::
|
||||||
@@ -40,10 +40,25 @@ and then you won't get any more (after the RI expires in everybody's netdb).
|
|||||||
Design
|
Design
|
||||||
======
|
======
|
||||||
|
|
||||||
Implement Peer Testing for IPv6.
|
Implement Peer Testing for IPv6,
|
||||||
|
by removing previous restrictions that peer testing was only allowed for IPv4.
|
||||||
|
The peer test message already has a field for IP length.
|
||||||
|
|
||||||
|
|
||||||
Specification
|
Specification
|
||||||
=============
|
=============
|
||||||
|
|
||||||
TBD, but basically, allow IPv6 addresses and connections in the Peer Testing protocol.
|
In the Peer Testing sections of the SSU overview and SSU specification, make the following changes:
|
||||||
|
|
||||||
|
IPv6 Notes:
|
||||||
|
Through release 0.9.26, only testing of IPv4 addresses is supported.
|
||||||
|
Only testing of IPv4 addresses is supported.
|
||||||
|
Therefore, all Alice-Bob and Alice-Charlie communication must be via IPv4.
|
||||||
|
Bob-Charlie communication, however, may be via IPv4 or IPv6.
|
||||||
|
Alice's address, when specified in the PeerTest message, must be 4 bytes.
|
||||||
|
As of release 0.9.27, testing of IPv6 addresses is supported, and Alice-Bob and Alice-Charlie communication may be via IPv6.
|
||||||
|
|
||||||
|
Alice sends the request to Bob using an existing session over the transport (IPv4 or IPv6) that she wishes to test.
|
||||||
|
When Bob receives a request from Alice via IPv4, Bob must select a Charlie that advertises an IPv4 address.
|
||||||
|
When Bob receives a request from Alice via IPv6, Bob must select a Charlie that advertises an IPv6 address.
|
||||||
|
The actual Bob-Charlie communication may be via IPv4 or IPv6 (i.e., independent of Alice's address type).
|
||||||
|
@@ -3,8 +3,8 @@ SSU Protocol Specification
|
|||||||
==========================
|
==========================
|
||||||
.. meta::
|
.. meta::
|
||||||
:category: Transports
|
:category: Transports
|
||||||
:lastupdated: May 2016
|
:lastupdated: June 2016
|
||||||
:accuratefor: 0.9.26
|
:accuratefor: 0.9.27
|
||||||
|
|
||||||
.. contents::
|
.. contents::
|
||||||
|
|
||||||
@@ -1074,6 +1074,11 @@ Notes
|
|||||||
and Alice-Bob and Alice-Charlie communication may be via IPv6.
|
and Alice-Bob and Alice-Charlie communication may be via IPv6.
|
||||||
See Proposal 126 for details.
|
See Proposal 126 for details.
|
||||||
|
|
||||||
|
Alice sends the request to Bob using an existing session over the transport (IPv4 or IPv6) that she wishes to test.
|
||||||
|
When Bob receives a request from Alice via IPv4, Bob must select a Charlie that advertises an IPv4 address.
|
||||||
|
When Bob receives a request from Alice via IPv6, Bob must select a Charlie that advertises an IPv6 address.
|
||||||
|
The actual Bob-Charlie communication may be via IPv4 or IPv6 (i.e., independent of Alice's address type).
|
||||||
|
|
||||||
* A peer must maintain a table of active test states (nonces). On reception of
|
* A peer must maintain a table of active test states (nonces). On reception of
|
||||||
a PeerTest message, look up the nonce in the table. If found, it's an
|
a PeerTest message, look up the nonce in the table. If found, it's an
|
||||||
existing test and you know your role (Alice, Bob, or Charlie). Otherwise, if
|
existing test and you know your role (Alice, Bob, or Charlie). Otherwise, if
|
||||||
|
Reference in New Issue
Block a user