The Transmission Control Protocol (TCP) has proved to be a reliable transport protocol that has withstood the test of time. It is part of the TCP/IP protocol suite deployed on the Internet, and it currently supports a variety of underlying networking technologies such as Wireless, Satellite and High-Speed networks.
The congestion control mechanism used by current implementation of TCP (known as TCP-Reno/new Reno) is based on the Additive Increase Multiple Decrease (AIMD) algorithm that was first introduced by Van Jacobsen in 1988 after the Internet experienced heavy congestion which subsequently led to a phenomenon called congestion collapse. The algorithm assumes no prior knowledge of end-to-end path conditions and blindly follows the same routine at the beginning of every connection namely, a slow start phase, a congestion avoidance phase and in the event of a lost segment reduces the transmission rate accordingly.
The network will experience different conditions depending on the amount of traffic exerted on it. At times it will endure heavy load while at other times there will be small amount of traffic. In the event that the end-to-end path characteristics are known and the amount of traffic generated is predictable, the AIMD algorithm does not take advantage of that information. In this thesis we investigate ways of predicting the available bandwidth between two hosts frequently in contact with each other through the deployment of bandwidth estimation tools. We would like to explore the possibility that AIMD can take advantage of bandwidth measurements collected between these hosts.