[e2e] Nagle algorithm clarification
braden at ISI.EDU
Tue Jan 30 09:23:50 PST 2001
*> So, I turn to RFC896 and find that it's official status is "unknown" - what
*> does that mean? How can an RFC that is a "standard" mandate the
*> implementation of an RFC of "unknown" status?
The "Unknown" status was Jon Postel's choice of wording. Maybe a better
term would have been "pre-standards".
In 1984 when RFC896 was written, the Internet was still very much in
the research phase. The IETF had not yet been formed (if I recall
correctly without looking it up); its predecessor task forces INARCH
and Gateway Algorithms were just starting up (as was the End-to-End
Task Force, BTW). The technical development of the Internet was under
the direction of the IAB, whose membership was basically chosen by the
US government -- ARPA, NSF, DOE, and NASA, mostly from the research
community. The only Internet "vendor" was BBN. There were no Internet
standards as we now know them. If you asked a person from the media
about the "Internet", you would have drawn a complete blank.
To answer your other question, lots of RFCs mandate the use of
basic pieces of computer science and mathematics that are described
by documents that are not standards. The description of an algorithm
does not have to be a standard, in order to be required by a document
that IS a standard.
*> "inhibit the sending of new TCP segments when
*> new outgoing data arrives from the user if any previously
*> transmitted data on the connection remains unacknowledged. This
*> inhibition is to be unconditional; no timers, tests for size of
*> data received, or other conditions are required."
*> 896 states "This inhibition is to be unconditional" but 1122 adds "or until
*> the TCP can send a full-sized segment".
*> So, there appears to be a conflict in the RFCs. Any comments on which is the
*> correct implementation?
Uhhh, maybe you should take the later document as more authoritative?
More information about the end2end-interest