Transmission Control Protocol (TCP)

Transmission Control Protocol (TCP)

TCP is a connection oriented protocol and offers end-to-end packet delivery. It acts as back bone for connection.It exhibits the following key features:

  • Transmission Control Protocol (TCP) corresponds to the Transport Layer of OSI Model.
  • TCP is a reliable and connection-oriented protocol.
  • TCP offers:
    1. Stream Data Transfer.
    2. Reliability.
    3. Efficient Flow Control
    4. Full-duplex operation.
    5. Multiplexing.
  • TCP offers connection-oriented end-to-end packet delivery.
  • TCP ensures reliability by sequencing bytes with a forwarding acknowledgment number that indicates to the destination the next byte the source expects to receive.
  • It retransmits the bytes not acknowledged within a specified time period.

TCP Services

TCP offers following services to the processes at the application layer:

  • Stream Delivery Service
  • Sending and Receiving Buffers
  • Bytes and Segments
  • Full Duplex Service
  • Connection-Oriented Service
  • Reliable Service

Stream Deliver Service

The TCP protocol is stream-oriented because it allows the sending process to send data as a stream of bytes and the receiving process to obtain data as a stream of bytes.

Sending and Receiving Buffers

It may not be possible for sending and receiving process to produce and obtain data at same speed, therefore, TCP needs buffers for storage at sending and receiving ends.

Bytes and Segments

The Transmission Control Protocol (TCP), at the transport layer groups the bytes into a packet. This packet is called a segment. Before transmission of these packets, these segments are encapsulated into an IP datagram.

Full Duplex Service

Transmitting the data in duplex mode means flow of data in both the directions at the same time.

Connection Oriented Service

TCP offers connection oriented service in the following manner:

  1. TCP of process-1 informs TCP of process – 2 and gets its approval.
  2. TCP of process – 1 and TCP of process – 2 and exchange data in both two directions.
  3. After completing the data exchange, when buffers on both sides are empty, the two TCP’s destroy their buffers.

Reliable Service

For sake of reliability, TCP uses acknowledgement mechanism.