TCP- Transmission Control
Protocol.
Prepared by: Parackattu. Akhil. B
Transmission Control Protocol.
 TCP is called a connection oriented , reliable transport protocol. It creates
a virtual connection between two TCPs to send data.
 The TCP protocols were initially developed as part of the research network
developed by the United States Defense Advanced Research Projects
Agency(DARPA or ARPA).
 Initially, this fledgling network, called the Arpanet, was designed to use a
number of protocols that had been adapted from existing technologies.
 It is a process to process protocol. It uses port numbers. In addition, TCP
uses flow and error control mechanism at the transport level.
 It adds connection-oriented and reliability features to the services of IP.
TCP Services.
 Services offered by TCP are.
I. Stream Delivery Services
II. Connection oriented service.
III. Reliable service.
Stream Delivery Service.
 TCP is a stream oriented protocol. It allows the sending process to deliver the
data as a stream of bytes.
 And allows the receiving process to obtain data as a stream of bytes. The
sending process produces the stream of bytes and the receiving process
consumes them.
Connection Oriented Service.
 TCP is a connection oriented protocol.
 When a process at site “A “ wants to send and receive data from another
process at site “B”, the following thing occurs:
1. The two TCPs establish a connection between them.
2. Data are exchanged in both direction.
3. The connection is terminated.
Reliable Service.
 TCP is a reliable service transport protocol.
 It uses an acknowledgement mechanism to check the safe and sound
arrival of data.
TCP Features.
 TCP has a several Features which are mentioned below.
• Numbering system.
• Byte number.
• Sequence number.
• Acknowledgment number.
• Flow control.
• Error control.
• Congestion control.
Numbering System.
 TCP keeps a track of the segments being transmitted or received, there is
no field for segment number value in the segment header.
 Instead there are two fields called sequence number and acknowledgment
number.
 These two fields refer to the byte number and not the segment number.
Byte Number.
 TCP numbers all data bytes that are transmitted in a connection. Numbering
in each direction.
 When TCP receives bytes of data from a process, its stores them in sending
buffer and numbers them.
 The number does not necessarily start from “0”. It can be any random
number.
 In short we can say the bytes of data being transferred in each connection
are numbered by TCP. The numbering is used for flow and control.
Sequence Number.
 After the bytes have been numbered , TCP assigns a sequence number to
each segment that is being sent.
 The sequence number for each segment is the number of the first byte
carried in that segment.
 The value in the sequence number field of a segment defines the number of
the first data byte contained in that segment.
Acknowledgment Number.
 Acknowledgment number defines the number of next byte that party
expect to receive.
 In addition, the acknowledgment number is cumulative.
 Which means that the party takes the number of last byte that it has
received safe and sounds add 1 to it, and announces the sum as an
acknowledgement number.
Flow control.
 TCP provides the flow control. The receiver of the data controls the amount
of data that are to be sent by the sender.
 This is done to prevent the receiver from being overwhelmed with data.
 The numbering system allows TCP to use a byte oriented flow control.
Error Control.
 To provide reliable service, TCP implements an error control mechanism.
 Although error control consider a segment as the unit of data for error
detection, error control is byte oriented,.
 Error detection and correction in TCP is achieved through the use of three
simple methods.
 Checksum.
 Acknowledgment.
 Time out.
Congestion Control.
 TCP takes into account congestion in the network.
 The amount of data send by the sender is not only controlled by the
receiver, but is also determined by the level of congestion in the network.
TCP connection.
 A connection oriented protocol establishes connection between virtual
path between source and destination. All segment belonging to the
message are sent over this virtual path.
 TCP connection are virtual , not physical. It operates at higher level.
 It use the services of IP to deliver individual segment to the receiver, but it
controls the connection itself.
 If a segment is lost or corrupted, it retransmits. Unlike TCP, IP is unaware of
this transmission.
 If a segment arrives out of order, TCP holds it until the missing segments
arrive; IP is unaware of this recording.
 In TCP, connection-oriented transmission requires three phases: connection
establishment, data transfer, and connection termination.
Connection Establishment.
 TCP transmits data in full duplex mode. When two TCPs in two machines are
connected, they are able to send segments to each other simultaneously.
 This implies that each party must initialize communication and get approval
from the other party before any data are transferred.
 This connection establishment in TCP is called three way hand shaking.
Data transfer.
 After connection establishment the data transfer in TCP takes place. The
data transfer takes place in bidirectional.
 Where the client and server can both send data and acknowledgments
.
 The acknowledgments are piggybacked with data
 It uses buffer to store the stream of data coming from the sending
application.
Connection termination.
 Any of the two parties involved in exchanging data can close the
connection, although it is usually initiated by the client.
 Most of the implementation today allow two options for connection
termination they are:
 Three –way handshaking
 Four way handshaking with a half -close option.
Strengths of TCP.
 Dial-up lines.
 LANs.
 High Speed fiber optic networks.
 Low speed long haul networks.
THANK YOU!!

TCP- Transmission Control Protocol

  • 1.
  • 2.
    Transmission Control Protocol. TCP is called a connection oriented , reliable transport protocol. It creates a virtual connection between two TCPs to send data.  The TCP protocols were initially developed as part of the research network developed by the United States Defense Advanced Research Projects Agency(DARPA or ARPA).  Initially, this fledgling network, called the Arpanet, was designed to use a number of protocols that had been adapted from existing technologies.  It is a process to process protocol. It uses port numbers. In addition, TCP uses flow and error control mechanism at the transport level.  It adds connection-oriented and reliability features to the services of IP.
  • 3.
    TCP Services.  Servicesoffered by TCP are. I. Stream Delivery Services II. Connection oriented service. III. Reliable service.
  • 4.
    Stream Delivery Service. TCP is a stream oriented protocol. It allows the sending process to deliver the data as a stream of bytes.  And allows the receiving process to obtain data as a stream of bytes. The sending process produces the stream of bytes and the receiving process consumes them.
  • 5.
    Connection Oriented Service. TCP is a connection oriented protocol.  When a process at site “A “ wants to send and receive data from another process at site “B”, the following thing occurs: 1. The two TCPs establish a connection between them. 2. Data are exchanged in both direction. 3. The connection is terminated.
  • 6.
    Reliable Service.  TCPis a reliable service transport protocol.  It uses an acknowledgement mechanism to check the safe and sound arrival of data.
  • 7.
    TCP Features.  TCPhas a several Features which are mentioned below. • Numbering system. • Byte number. • Sequence number. • Acknowledgment number. • Flow control. • Error control. • Congestion control.
  • 8.
    Numbering System.  TCPkeeps a track of the segments being transmitted or received, there is no field for segment number value in the segment header.  Instead there are two fields called sequence number and acknowledgment number.  These two fields refer to the byte number and not the segment number.
  • 9.
    Byte Number.  TCPnumbers all data bytes that are transmitted in a connection. Numbering in each direction.  When TCP receives bytes of data from a process, its stores them in sending buffer and numbers them.  The number does not necessarily start from “0”. It can be any random number.  In short we can say the bytes of data being transferred in each connection are numbered by TCP. The numbering is used for flow and control.
  • 10.
    Sequence Number.  Afterthe bytes have been numbered , TCP assigns a sequence number to each segment that is being sent.  The sequence number for each segment is the number of the first byte carried in that segment.  The value in the sequence number field of a segment defines the number of the first data byte contained in that segment.
  • 11.
    Acknowledgment Number.  Acknowledgmentnumber defines the number of next byte that party expect to receive.  In addition, the acknowledgment number is cumulative.  Which means that the party takes the number of last byte that it has received safe and sounds add 1 to it, and announces the sum as an acknowledgement number.
  • 12.
    Flow control.  TCPprovides the flow control. The receiver of the data controls the amount of data that are to be sent by the sender.  This is done to prevent the receiver from being overwhelmed with data.  The numbering system allows TCP to use a byte oriented flow control.
  • 13.
    Error Control.  Toprovide reliable service, TCP implements an error control mechanism.  Although error control consider a segment as the unit of data for error detection, error control is byte oriented,.  Error detection and correction in TCP is achieved through the use of three simple methods.  Checksum.  Acknowledgment.  Time out.
  • 14.
    Congestion Control.  TCPtakes into account congestion in the network.  The amount of data send by the sender is not only controlled by the receiver, but is also determined by the level of congestion in the network.
  • 15.
    TCP connection.  Aconnection oriented protocol establishes connection between virtual path between source and destination. All segment belonging to the message are sent over this virtual path.  TCP connection are virtual , not physical. It operates at higher level.  It use the services of IP to deliver individual segment to the receiver, but it controls the connection itself.  If a segment is lost or corrupted, it retransmits. Unlike TCP, IP is unaware of this transmission.  If a segment arrives out of order, TCP holds it until the missing segments arrive; IP is unaware of this recording.  In TCP, connection-oriented transmission requires three phases: connection establishment, data transfer, and connection termination.
  • 16.
    Connection Establishment.  TCPtransmits data in full duplex mode. When two TCPs in two machines are connected, they are able to send segments to each other simultaneously.  This implies that each party must initialize communication and get approval from the other party before any data are transferred.  This connection establishment in TCP is called three way hand shaking.
  • 17.
    Data transfer.  Afterconnection establishment the data transfer in TCP takes place. The data transfer takes place in bidirectional.  Where the client and server can both send data and acknowledgments .  The acknowledgments are piggybacked with data  It uses buffer to store the stream of data coming from the sending application.
  • 18.
    Connection termination.  Anyof the two parties involved in exchanging data can close the connection, although it is usually initiated by the client.  Most of the implementation today allow two options for connection termination they are:  Three –way handshaking  Four way handshaking with a half -close option.
  • 19.
    Strengths of TCP. Dial-up lines.  LANs.  High Speed fiber optic networks.  Low speed long haul networks.
  • 20.