[e2e] YNT: A Question on the TCP handoff
David P. Reed
dpreed at reed.com
Wed Dec 7 08:02:23 PST 2005
Detlef Bosau wrote:
>If you are looking around in archives: During the last week I thought
>about why we use ACK in TCP and not NAK. One obvious reason for ACK is
>the ACK pacing mechanism. However: Has there ever been a discussion?
Huge discussions in 1975-1976 when I was involved. The issue is the
basic assumption about the network environment. Lampson and Sturgis in
their work on two-phase commit protocols assumed you could not reliably
tell whether a packet was delivered, so a NAK was at best an unreliable
indicator of packet loss. Given that there was no channel model for
the Internet as a whole (to presume stochastic model was to presume
homogeneity, and the Internet was about interconnecting maximally
heterogeneous networks), one could not even reason probabalistically
about what a NAK might mean, or what the lack of a NAK might mean.
I didn't invent this network reliability model (Lampson and Sturgis'
paper was circulated in draft form very widely during this timeframe),
but it is summarized in the opening chapters of my Ph.D. thesis (Naming
and Synchronization in a Decentralized Computer System, MIT-LCS-TR-205,
More information about the end2end-interest