Number
133
Author
zzz
Created
Thread
http://zzz.i2p/topics/2230
Last updated
Status
Closed

Overview

This proposal is about improving the success rate for introductions. See [TRAC-TICKET].

Motivation

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

In an SSU [RouterAddress] containing introducers, the publisher may optionally include expiration times for each introducer.

Specification

iexp{X}={nnnnnnnnnn}

X :: The introducer number (0-2)

nnnnnnnnnn :: The time in seconds (not ms) since the epoch.

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.
  • The introducer expirations are in the [RouterAddress] mapping. They are not the (currently unused) 8-byte expiration field in the [RouterAddress].

Example: iexp0=1486309470

Migration

No issues. Implementation is optional. Backwards compatibility is assured, as older routers will ignore unknown parameters.