Allocation of Bandwidth by TCP
The transmission rates of Internet traffic flows are controlled by TCP (Transmission Control Protocol), using an algorithm developed by Van Jacobson in 1988. This Demonstration shows the rates that TCP chooses and the packet drop probabilities that it induces in a simple network with three flows and two links. The three flow rates are shown by how thick the lines are, and each link is labeled with its induced packet drop probability . The rates and packet drop probabilities depend on the link capacities, and on the round trip time (RTT) of each of the flows.
The TCP algorithm, invented by Van Jacobson in 1988, controls congestion on the Internet. It runs in every computer's operating system, and it manages the flow rate: if it senses the network is uncongested it will increase the rate; if it senses the network is congested it will decrease the rate. It can be shown that the outcome is that pkt/sec, where is the round trip time in seconds and is the packet drop probability; the typical packet size is 1500 bytes. The packet drop probability at a link is determined by the rates of the flows that pass through the link; for a link with a large buffer, the formula is , where is the link capacity and is the total flow rate.
This Demonstration shows the flow rates that ensue in a simple two-hop network. TCP "aims" to share capacity fairly—but the philosophical question of how to define fairness is complicated when there are multiple paths through the network, and the TCP algorithm is biased in favor of short flows.
You can manipulate the link capacity of each of the two links, and the round trip time of each of the three flows.
D. Wischik's lecture notes on Network Performance models.
R. J. Gibbens, S. K. Sargood, C. Van Eijl, F. P. Kelly, H. Azmoodeh, R. N. Macfadyen, and N. W. Macfadyen, "Fixed-Point Models for the End-to-End Performance Analysis of IP Networks," ITC Specialist Seminar on IP Traffic Measurement, Modeling and Management, 2000.
T. Bu and D. Towsley, "Fixed Point Approximation for TCP Behavior in an AQM Network," Proceedings of ACM SIGMETRICS (also available as UMass CMPSCI Technical Report 00–43), 2001.
M. Mathis, J. Semke, J. Mahdavi, and T. Ott, "The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm," ACM/SIGCOMM CCR, 1997.