Clean up proposal 133

This commit is contained in:
str4d
2017-04-07 10:17:31 +00:00
parent e6b7d972c6
commit 82718f86e8
2 changed files with 36 additions and 17 deletions

View File

@ -22,6 +22,7 @@ class DataSpecLexer(RegexLexer):
(r'(\s*)([0-9]+)(\+)?', bygroups(Text, Number, Punctuation)), (r'(\s*)([0-9]+)(\+)?', bygroups(Text, Number, Punctuation)),
(r'(-)([0-9]+)', bygroups(Punctuation, Number)), (r'(-)([0-9]+)', bygroups(Punctuation, Number)),
(r'(\s*)(->|<=|>=|\*|\^)', bygroups(Text, Operator)), (r'(\s*)(->|<=|>=|\*|\^)', bygroups(Text, Operator)),
(r'(\s*)([\w=]*)(\{[\w]+\})', bygroups(Text, Text, Name.Tag)),
(r'(\s*)([\w()-=\'<>?]+)', bygroups(Text, Comment)), (r'(\s*)([\w()-=\'<>?]+)', bygroups(Text, Comment)),
], ],
'boundary': [ 'boundary': [

View File

@ -5,7 +5,7 @@ Introducer Expiration
:author: zzz :author: zzz
:created: 2017-02-05 :created: 2017-02-05
:thread: http://zzz.i2p/topics/2230 :thread: http://zzz.i2p/topics/2230
:lastupdated: 2017-02-05 :lastupdated: 2017-04-07
:status: Open :status: Open
.. contents:: .. contents::
@ -14,38 +14,49 @@ Introducer Expiration
Overview Overview
======== ========
Introducers expire after a certain time, but that info isn't published in the Router Info. This proposal is about improving the success rate for introductions. See
Routers must currently use heuristics to estimate when an introducer is no longer valid. [TRAC-TICKET]_.
Motivation Motivation
========== ==========
Improve success rate for introductions. Introducers expire after a certain time, but that info isn't published in the
[RouterInfo]_. Routers must currently use heuristics to estimate when an
introducer is no longer valid.
Design Design
====== ======
Include new parameters in a SSU Router Address containing introducers. In an SSU [RouterAddress]_ containing introducers, the publisher may optionally
include expiration times for each introducer.
Specification Specification
============= =============
In a SSU Router Address containing introducers, the publisher may optionally include expiration times for each introducer. .. raw:: html
The expiration is specified as iexpX=nnnnnnnnnn where X is the introducer number (0-2)
and nnnnnnnnnn is the time in seconds (not ms) since the epoch.
Each expiration must be greater than the publish date of the Router Info, {% highlight lang='dataspec' %}
and less than 6 hours after the publish date of the Router Info. iexp{X}={nnnnnnnnnn}
Publishing routers and introducers should attempt to keep the introducer valid until expiration, X :: The introducer number (0-2)
however there is no way for them to guarantee this.
Routers should not use a published introducer after its expiration. nnnnnnnnnn :: The time in seconds (not ms) since the epoch.
{% endhighlight %}
Example: iexp0=1486309470 Notes
`````
* Each expiration must be greater than the publish date of the [RouterInfo]_,
and less than 6 hours after the publish date of the RouterInfo.
* Publishing routers and introducers should attempt to keep the introducer valid
until expiration, however there is no way for them to guarantee this.
* Routers should not use a published introducer after its expiration.
Example: ``iexp0=1486309470``
Migration Migration
@ -56,7 +67,14 @@ Backwards compatibility is assured, as older routers will ignore unknown paramet
See Also References
======== ==========
Trac ticket 1352 .. [RouterAddress]
{{ ctags_url('RouterAddress') }}
.. [RouterInfo]
{{ ctags_url('RouterInfo') }}
.. [TRAC-TICKET]
http://{{ i2pconv('trac.i2p2.i2p') }}/ticket/1352