Clean up proposal 133
This commit is contained in:
@ -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': [
|
||||||
|
@ -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
|
||||||
|
Reference in New Issue
Block a user