[ih] TCP RTT Estimator (JNC history site contents)
Greg Skinner
gregskinner0 at icloud.com
Thu Mar 27 13:28:11 PDT 2025
On Mar 27, 2025, at 12:41 PM, John Gilmore <gnu at toad.com> wrote:
>
> Greg Skinner via Internet-history <internet-history at elists.isoc.org> wrote:
>> BTW, Jim Mathis' TIU implementation is available on Noel Chiappa's ana-3.lcs.mit.edu <http://ana-3.lcs.mit.edu/> site. [1]
>> The documentation is dated April 1979.
>> --gregbo
>> [1] http://ana-3.lcs.mit.edu/~jnc/tech/mos/
>
> Noel's ana-3 site is dead now, but it has apparently moved to:
>
> http://mercury.lcs.mit.edu/~jnc/
Odd, because I have been able to access it. Here is part of the documentation on TCP retransmission, from http://ana-3.lcs.mit.edu/~jnc/tech/mos/docs/tiunv2.lpt:
2. Output Packet Processing ______ ______ __________
[…]
d. Retransmission of Unacknowledged Text or Control ______________ __ ______________ ____ __ _______
At present, the TCP process gets signaled every second
and counts down the signals by using the WAKEUP counter in the TCB.
When this counter reaches zero, the retransmission is triggered; a new
value for the retransmission interval (RTXDLY) is calculated; and WAKEUP
is initialized to that value. Currently, the new value for RTXDLY can
either be constant or increase linearly or exponentially with the number
of unsuccessful retransmissions of a packet.
111
17 April 1979 D R A F T at 11:10
When the retransmission time-out expires, the TCP
determines whether the head of the retransmission queue has been
retransmitted the maximum number of times; if so, the remote TCP is
declared "not responding," and the connection is marked as suspended. A
count is kept in the RETRY field of the TCB, is incremented on every
retransmission, and is reset to zero whenever a new packet has been
received. If the connection is not in a usable state (i.e., if it is
attempting to open or close), the connection is aborted.
After deciding to retransmit, the TCP checks the head of
the retransmission buffer to see whether it contains control or data;
these two cases are handled separately. If it contains control, a
packet containing this control function is constructed and transmitted.
If it contains data, a packet is constructed that contains all the data
from the head of the retransmission buffer to its end or to the first
control function indicator, with the amount of data not exceeding the
maximum allowed in a single packet. Thus the data packet boundaries are
not preserved.
More information about the Internet-history
mailing list