Update proposal 126 and related specs

This commit is contained in:
zzz
2016-07-18 16:20:07 +00:00
parent b70d180cad
commit e1a3cd6cb3
3 changed files with 37 additions and 7 deletions

View File

@ -1,6 +1,6 @@
{% extends "global/layout.html" %}
{% block title %}{% trans %}Secure Semireliable UDP{% endtrans %} (SSU){% endblock %}
{% block lastupdated %}{% trans %}June 2016{% endtrans %}{% endblock %}
{% block lastupdated %}{% trans %}July 2016{% endtrans %}{% endblock %}
{% block accuratefor %}0.9.27{% endblock %}
{% block content %}
@ -497,7 +497,8 @@ 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.
and Alice-Bob and Alice-Charlie communication may be via IPv6,
if Bob and Charlie indicate support with a 'B' capability in their published IPv6 address.
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.
@ -552,7 +553,13 @@ here. Implementers should add defenses where appropriate.
If the peer address contains the 'B' capability, that means
they are willing and able to participate in peer tests as
a 'Bob' or 'Charlie'.
{%- endtrans %}</dd>
{%- endtrans %}
Through 0.9.26, peer testing was not supported for IPv6 addresses, and
the 'B' capability, if present for an IPv6 address, must be ignored.
As of 0.9.27, peer testing is supported for IPv6 addresses, and
the presence or absense of the 'B' capability in an IPv6 address
indicates actual support (or lack of support).
</dd>
<dt>C</dt>
<dd>{% trans -%}
If the peer address contains the 'C' capability, that means

View File

@ -5,7 +5,7 @@ IPv6 Peer Testing
:author: zzz
:created: 2016-05-02
:thread: http://zzz.i2p/topics/2119
:lastupdated: 2016-06-29
:lastupdated: 2016-07-18
:status: Open
.. contents::
@ -48,6 +48,15 @@ The peer test message already has a field for IP length.
Specification
=============
In the Capabilities section of the SSU overview, make the following addition:
Through 0.9.26, peer testing was not supported for IPv6 addresses, and
the 'B' capability, if present for an IPv6 address, must be ignored.
As of 0.9.27, peer testing is supported for IPv6 addresses, and
the presence or absense of the 'B' capability in an IPv6 address
indicates actual support (or lack of support).
In the Peer Testing sections of the SSU overview and SSU specification, make the following changes:
IPv6 Notes:
@ -56,9 +65,22 @@ 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.
As of release 0.9.27, testing of IPv6 addresses is supported, and Alice-Bob and Alice-Charlie communication may be via IPv6,
if Bob and Charlie indicate support with a 'B' capability in their published IPv6 address.
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).
Migration
=========
Routers may either:
1) Not increment their version to 0.9.27 or higher
2) Remove the 'B' capability from any published IPv6 SSU addresses
3) Implement IPv6 peer testing

View File

@ -3,7 +3,7 @@ SSU Protocol Specification
==========================
.. meta::
:category: Transports
:lastupdated: June 2016
:lastupdated: July 2016
:accuratefor: 0.9.27
.. contents::
@ -1071,7 +1071,8 @@ Notes
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.
and Alice-Bob and Alice-Charlie communication may be via IPv6,
if Bob and Charlie indicate support with a 'B' capability in their published IPv6 address.
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.