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.


  • [Snapshot]
  • [Snapshot]
  • [Snapshot]


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.
See also:
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.
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.

Mathematica »
The #1 tool for creating Demonstrations
and anything technical.
Wolfram|Alpha »
Explore anything with the first
computational knowledge engine.
MathWorld »
The web's most extensive
mathematics resource.
Course Assistant Apps »
An app for every course—
right in the palm of your hand.
Wolfram Blog »
Read our views on math,
science, and technology.
Computable Document Format »
The format that makes Demonstrations
(and any information) easy to share and
interact with.
STEM Initiative »
Programs & resources for
educators, schools & students.
Computerbasedmath.org »
Join the initiative for modernizing
math education.
Step-by-Step Solutions »
Walk through homework problems one step at a time, with hints to help along the way.
Wolfram Problem Generator »
Unlimited random practice problems and answers with built-in step-by-step solutions. Practice online or make a printable study sheet.
Wolfram Language »
Knowledge-based programming for everyone.
Powered by Wolfram Mathematica © 2018 Wolfram Demonstrations Project & Contributors  |  Terms of Use  |  Privacy Policy  |  RSS Give us your feedback
Note: To run this Demonstration you need Mathematica 7+ or the free Mathematica Player 7EX
Download or upgrade to Mathematica Player 7EX
I already have Mathematica Player or Mathematica 7+