[ih] Question on Flow Control

Vint Cerf vint at google.com
Mon Dec 29 09:46:56 PST 2025


inline comment

On Mon, Dec 29, 2025 at 12:07 PM John Day via Internet-history <
internet-history at elists.isoc.org> wrote:

> To some extent you are right, it is a rat-hole. ;-)
>
> However, it appears the belief that it was Go-Back-N is because textbooks
> gave that illusion. As near as I can tell, GBN didn’t exist in 1973 and if
> SDLC is the first fixed window, then it was still in development.
>
> Gerard LeLann says he introduced sliding window to CYCLADES and TCP when
> he moved from Rennes to IRIA in 72, but I don’t know what form of sliding
> window it was. He presented his thoughts on it when Vint and Bob visited
> IRIA in March 1973. I haven’t found that presentation and later papers on
> the topic by Gerard don’t clarify it.
>
Gerard and I met in 1973 at INRIA and he came to stanford in 1974 during
the detailed specification of TCP. We used the sliding window and
mechanisms for accepting packets arriving out of order. SACK was a later
development in the evolution of TCP/IP and was allowed but not required, as
I recall.

>
> As for TCP initially using Selective-repeat or SACK, do you remember what
> the TCP retransmission time out was at that time? It makes a difference.
> The nominal value in the textbooks is RTT + 4D, where D is the mean
> variation. There is an RFC that says if 4D < 1 sec, set it to 1 sec. which
> seems high, but that is what it says.
>
> Take care,
> John
>
> > On Dec 29, 2025, at 11:54, Craig Partridge <craig at tereschau.net> wrote:
> >
> > This is a complete rabbit hole, in part because so many folks
> misunderstood things in the late 1970s early 1980s.  (People used to say
> TCP used go-back-N when, except for the very  first implementations, it
> used selective-repeat).
> >
> > But hey, sometimes rabbit holes are fun.
> >
> > Note that ALOHA was also around (1970 I believe) and once it got
> slotted, I believe it used windows and used a pure go-back-N.  I don't have
> a precise timing for when slotting came into fashion.
> >
> > Side note for those who didn't track this stuff.  A key issue is whether
> the receiver buffers packets received out of order.  If not, then if a
> packet is lost, all following are discarded, and the receiver must resend
> everything from the point of loss (go-back-N).  If the receiver buffers,
> then the sender should simply send the missing packet and (with luck
> assuming just one loss) transmission can proceed more efficiently assuming
> a shared medium... (this is selective-repeat)
> >
> > Craig
> >
> > On Mon, Dec 29, 2025 at 9:59 AM John Day via Internet-history <
> internet-history at elists.isoc.org <mailto:internet-history at elists.isoc.org>>
> wrote:
> >> As we all know, there are two forms of sliding window flow control:
> >> 1) the static window, where an Ack causes the window to be moved and
> requires two extra commands, and
> >> 2) the dynamic window, with a credit field that is added to the Ack
> value to find the Right Window Edge (RWE) and doesn’t need the two extra
> commands.
> >>
> >> Static window is found in datacomm protocols such as SDLC, HDLC, and
> variations on them.  (HDLC was created from SDLC.)
> >> Dynamic window is found in most Transport protocols such as TCP, TS,
> TP4, SCTP, QUIC, etc.
> >>
> >> Most textbooks present these as a progression from a simple
> stop-and-wait protocol with increasing complexity through static window to
> dynamic window as if this was the order of development. That dynamic
> winsdow was an enhancement of static window.
> >>
> >> However, that does not seem to be borne out by the historical record,
> but it isn’t clear. This is what I have been able to determine:
> >> 1) Static window is in SDLC, an integral part of IBM’s SNA.
> >>
> >> 2) SNA was released in 1974 with SDLC.
> >>
> >> 3) I have not been able to find anyone (or any paper) who knows about
> the development inside IBM of SDLC, nor was SDLC based on precursors either
> inside or outside IBM.
> >>
> >> 4) I have not been able to find anything about a sliding window flow
> control protocol prior to 72 or 73.
> >>
> >> 5) Dynamic window first appeared in CYCLADES TS in late 1972 or early
> 73 and was incorporated into the early drafts of Sept 73.
> >>
> >> That doesn’t give much time for overlap and IBM in this period kept
> their cards pretty close to their chest.
> >>
> >> So the questions are:
> >>
> >> 1) Did fixed window originate at IBM with SDLC?
> >>
> >> 2) Was there an earlier fixed window precursor to SDLC that was inside
> or outside IBM?
> >>
> >> 3)  Was there an external fixed window precursor that was the example
> for both?
> >>
> >> 4)  Is this a case of independent invention?  Were static and dynamic
> window flow control invented independently?
> >>
> >> It isn’t an earth-shattering question, but it is curious and does seem
> to run counter to the typical exposition in textbooks.
> >>
> >> Take care,
> >> John Day
> >>
> >>
> >> --
> >> Internet-history mailing list
> >> Internet-history at elists.isoc.org <mailto:
> Internet-history at elists.isoc.org>
> >> https://elists.isoc.org/mailman/listinfo/internet-history
> >> -
> >> Unsubscribe:
> https://app.smartsheet.com/b/form/9b6ef0621638436ab0a9b23cb0668b0b?The%20list%20to%20be%20unsubscribed%20from=Internet-history
> >
> >
> >
> > --
> > *****
> > Craig Partridge's email account for professional society activities and
> mailing lists.
>
> --
> Internet-history mailing list
> Internet-history at elists.isoc.org
> https://elists.isoc.org/mailman/listinfo/internet-history
> -
> Unsubscribe:
> https://app.smartsheet.com/b/form/9b6ef0621638436ab0a9b23cb0668b0b?The%20list%20to%20be%20unsubscribed%20from=Internet-history
>


-- 
Please send any postal/overnight deliveries to:
Vint Cerf
Google, LLC
1900 Reston Metro Plaza, 16th Floor
Reston, VA 20190
+1 (571) 213 1346


until further notice


More information about the Internet-history mailing list