cheriton@PESCADERO.STANFORD.EDU ("David Cheriton") (02/05/88)
I was referred to the 1975 AFIPS NCC paper by Crowthers et al. to understand better the reasoning behind the current E2E protocol in the ARPAnet. Here are a few reactions to this paper. 1. The paper argues in several places for something more than imp-to-imp protocol and concludes that a network-level end-to-end protocol is needed. However, it seems to me that a higher-level protocol (such as TCP) would satisfy the reasons for the e2e protocol. 2. The paper is concerned with buffering allocation in the dst. node as an important feature. However, this concern seems to be based on the model of reliable comm. from IMP to host and the host being able to flow control (block) messages/packets from the network. In the current common environment of IMP connecting to IP gateways which are in turn connected to much higher-speed local area networks, one might observe that: i) the IMP/gateway should have no trouble emptying its incoming packets onto the local network (56Kb to 10Mb). ii) the communication to the gateway may be reliable, X.25 etc. but the packet is then typically just tossed out on the Ethernet for delivery to the host, with some possibility of loss. This the reliable delivery and flow control to the destination IMP seems to buy very little, if anything. 3. The paper mentions some discussions of the time suggesting that some other people felt that end-to-end protocols would be best done in the hosts, and argues against this. However, most of the arguments seem to be objecting to TCP/IP style processing in the hosts. From the current perspective, it seems like unless we want to throw out TCP style transport-level processing the host, one should really rethink the value of the network-level e2e protocol. In general, I conclude that we are carrying a lot of history here. I would conjecture that a best-efforts network with perhaps some rate-control mechanism for congestion avoidance would be simpler and faster.