streaming updates

This commit is contained in:
zzz
2015-06-17 13:51:27 +00:00
parent 50ccbb5b8e
commit ca1a0fa5e9
2 changed files with 21 additions and 13 deletions

View File

@@ -1,7 +1,7 @@
{% extends "global/layout.html" %}
{% block title %}{% trans %}Streaming Library{% endtrans %}{% endblock %}
{% block lastupdated %}{% trans %}December 2013{% endtrans %}{% endblock %}
{% block accuratefor %}0.9.9{% endblock %}
{% block lastupdated %}{% trans %}June 2015{% endtrans %}{% endblock %}
{% block accuratefor %}0.9.20{% endblock %}
{% block content %}
<h2>{% trans %}Overview{% endtrans %}</h2>
@@ -206,8 +206,11 @@ As of release {{ release }}.
What to do on an inactivity timeout - do nothing, disconnect, or send a duplicate ack.
{%- endtrans %}</td></tr>
<tr><td>i2p.streaming.inactivityTimeout</td><td>90*1000</td></tr>
<tr><td>i2p.streaming.initialAckDelay</td><td>2000</td></tr>
<tr><td>i2p.streaming.inactivityTimeout</td><td>90*1000</td>
<td>{% trans %}Idle time before sending a keepalive{% endtrans %}</td></tr>
<tr><td>i2p.streaming.initialAckDelay</td><td>750</td>
<td>{% trans %}Delay before sending an ack{% endtrans %}</td></tr>
<tr><td>i2p.streaming.initialResendDelay</td><td>1000</td><td>{% trans -%}
The initial value of the resend delay field in the packet header, times 1000.
@@ -419,7 +422,7 @@ There is no ping function at the I2CP layer (equivalent to ICMP echo) or in data
This function is provided in streaming.
Pings and pongs may not be combined with a standard streaming packet;
if the ECHO option is set, then
most other flags, options, ackThrough, sequenceNum, NACKs, payload, etc. are ignored.
most other flags, options, ackThrough, sequenceNum, NACKs, etc. are ignored.
{%- endtrans %}</p>
<p>{% trans -%}
@@ -434,6 +437,11 @@ The sendStreamId must be zero, and the receiveStreamId is the sendStreamId from
The pong packet does not include any payload that was contained in the ping.
{%- endtrans %}</p>
<p>{% trans -%}
As of release 0.9.18, pings and pongs may contain a payload.
The payload in the ping, up to a maximum of 32 bytes, is returned in the pong.
{%- endtrans %}</p>
<p>{% trans -%}
Streaming may be configured to disable sending pongs with the configuration i2p.streaming.answerPings=false.
{%- endtrans %}</p>
@@ -466,18 +474,18 @@ The following Control Block Sharing parameters can be set per router:
The following parameters are hardcoded, but may be of interest for analysis:
{%- endtrans %}</p>
<ul>
<li>MIN_RESEND_DELAY = 2*1000 (minimum RTO)
<li>MAX_RESEND_DELAY = 45*1000 (maximum RTO)
<li>MIN_RESEND_DELAY = 100 ms (minimum RTO)
<li>MAX_RESEND_DELAY = 45 sec (maximum RTO)
<li>MIN_WINDOW_SIZE = 1
<li>TREND_COUNT = 3
<li>MIN_MESSAGE_SIZE = 512 (minimum MTU)
<li>INBOUND_BUFFER_SIZE = maxMessageSize * (maxWindowSize + 2)
<li>INITIAL_TIMEOUT (valid only before RTT is sampled) = 9000
<li>INITIAL_TIMEOUT (valid only before RTT is sampled) = 9 sec
<li>"alpha" ( RTT dampening factor as per RFC 6298 ) = 0.125</li>
<li>"beta" ( RTTDEV dampening factor as per RFC 6298 ) = 0.25</li>
<li>"K" ( RTDEV multiplier as per RFC 6298 ) = 4</li>
<li>PASSIVE_FLUSH_DELAY = 250
<li>Maximum RTT estimate: 60*1000
<li>PASSIVE_FLUSH_DELAY = 175 ms
<li>Maximum RTT estimate: 60 sec
</ul>
</p>

View File

@@ -1,7 +1,7 @@
{% extends "global/layout.html" %}
{% block title %}{% trans %}Streaming Library Specification{% endtrans %}{% endblock %}
{% block lastupdated %}{% trans %}April 2015{% endtrans %}{% endblock %}
{% block accuratefor %}0.9.19{% endblock %}
{% block lastupdated %}{% trans %}June 2015{% endtrans %}{% endblock %}
{% block accuratefor %}0.9.20{% endblock %}
{% block content %}
<p><a href="{{ site_url('docs/api/streaming') }}">{% trans -%}
See the Streaming page for an overview of the Streaming Library.
@@ -135,7 +135,7 @@ Was also sent in retransmitted packets until release 0.9.1.
Unused or ignored; the interactive profile is unimplemented.
<tr><td>9<td>ECHO<td align="center">--<td align="center">--<td>
Unused except by ping programs.
If set, most other options, and the payload, are ignored. See
If set, most other options are ignored. See
<a href="{{ site_url('docs/api/streaming') }}">the streaming docs</a>.
<tr><td>10<td>NO_ACK<td align="center">--<td align="center">--<td>
This flag simply tells the recipient to ignore the ackThrough field in the header.