90 likes | 456 Vues
Principles of Congestion Control. Chapter 3.6 Computer Networking : A top-down approach. Principles of Congestion Control. Congestion: informally: “too many sources sending too much data too fast for network to handle” manifestations: lost packets (buffer overflow at routers)
E N D
Principles of Congestion Control Chapter 3.6 Computer Networking: A top-down approach
Principles of Congestion Control Congestion: • informally: “too many sources sending too much data too fast for network to handle” • manifestations: • lost packets (buffer overflow at routers) • long delays (queuing in router buffers) • different from flow control! • a top-10 problem! • 3 examples of cause and costs of congestion control Transport Layer
Causes/costs of congestion: scenario 1 lout lin : original data unlimited shared output link buffers Host A Host B Host C • large delays when congested • maximum achievable throughput • two senders, two receivers • one router, infinite buffers • no retransmission Host D Transport Layer
Causes/costs of congestion: scenario 2 • one router, finite buffers • sender retransmission of lost packet Host A lout lin : original data Host C l'in : original data, plus retransmitted data Host B finite shared output link buffers Transport Layer
Causes/costs of congestion: scenario 2 l l l > = l l l C/2 in in in C/2 C/2 out out out C/3 lout lout lout C/4 C/2 C/2 C/2 a. lin lin lin b. c. • always: (goodput) • “perfect” retransmission only when loss: • retransmission of delayed (not lost) packet makes larger (than perfect case) for same “costs” of congestion: • more work needed for given “goodput” (retransmission) • unneeded retransmissions: link carries multiple copies of packets Transport Layer
Causes/costs of congestion: scenario 3 Host A Host D • four senders • multihop paths • timeout/retransmit lin: original data lout l'in: original data, plus retransmitted data Host B finite shared output link buffers R1 R2 Host C Transport Layer
Causes/costs of congestion: scenario 3 Host B Host A lout Another “cost” of congestion: • when packet dropped, any “upstream transmission capacity used for that packet was wasted! Transport Layer
Approaches towards congestion control Two broad approaches towards congestion control: Network-assisted congestion control: • routers provide feedback to end systems • single bit indicating congestion (SNA, DECbit, TCP/IP ECN, ATM) • explicit rate sender should send at End-to-end congestion control: • no explicit feedback from network • congestion inferred from end-system observed loss, delay • approach taken by TCP Transport Layer
Network-assistedcongestioncontrol • Feedback in twoways • Direct feedback – network router sender (choke packet) • Network feedback via receiver – Router marks a packet and receiver notifysender