TCP
From Ciscowiki
Contents |
Description:
Transmission Control Protocol (TCP).
Complete Definition:
TCP is connection oriented while UDP is not, and provides guarantee of in-order delivery and retransmission.
The Transmission Control Protocol (TCP) is one of the core protocols of the Internet protocol suite. TCP provides reliable, in-order delivery of a stream of bytes, making it suitable for applications like file transfer and e-mail. It is so important in the Internet protocol suite that sometimes the entire suite is referred to as "the TCP/IP protocol suite." TCP is the transport protocol that manages the individual conversations between web servers and web clients. TCP divides the HTTP messages into smaller pieces, called segments, to be sent to the destination client. It is also responsible for controlling the size and rate at which messages are exchanged between the server and the client.
There are a few key features that set TCP apart from User Datagram Protocol (UDP:
TCP has:
- Ordered data transfer - the destination host rearranges according to sequence number
- Retransmission of lost packets - any cumulative stream not acknowledged will be retransmitted
- Discarding duplicate packets
- Error-free data transfer
- Flow control - limits the rate a sender transfers data to guarantee reliable delivery. When the receiving host's buffer fills, then next acknowledgement contains a 0 in the window size, to stop transfer and allow the data in the buffer to be processed.
- Congestion control - sliding window



