A Brief History of TCP/IP and TCP Congestion Control ==================================================== Timeline Comments ~1973 NCP Network Control Program (TCP/IP together, Vint Cerf) | \ ~1975 TCP IP TCP (transport layer) separated from IP (network layer) | ~1980 | Official RFCs for UDP (RFC 768), TCP (RFC 793), and IP (RFC 791) | ~1983 BSD 4.3 First open release of TCP/IP source code in BSD 4.3 Unix | ~1986 problem! TCP congestion collapse observed at Lawrence Berkeley Labs (LBL) | \ LB DB Loss-Based (LB) versus Delay-Based (DB) congestion control | \ ~1988 Tahoe \ "TCP Congestion Avoidance and Control" Van Jacobson (ACM SIGCOMM'88) | \ ~1989 Reno \ Fast Retransmit algorithm based on triple duplicate ACKs | \ ~1991 NewReno \ Fast Recovery algorithm by Sally Floyd (LBL) | \ ~1992 | Vegas Delay-based congestion control (vs loss-based) | ~1993 SACK Selective ACKnowledgement (SACK) version of TCP | ... and many more! (CUBIC, Westwood, Fast, Scalable, Compound, BBR...)