The Transmission Control Protocol (TCP) is a set of rules used by host computers on the Internet for the transmission of information from one computer to another. The TCP protocol converts messages into streams of packets at the source, then reassembles them back into messages at the destination.
The TCP protocol permits every application to manage the collective congestion on the Internet. TCP uses packet loss as a congestion detection method. When packets are lost due to congestion, TCP reduces the data rate of the application to prevent further congestion. TCP attempts to achieve fairness among competing data flows, so that all suffer equally when facing the weak part of the network. With a few notable exceptions, nearly every P2P protocol uses TCP to regulate congestion.