School of Computing and Technology
MBIS09 Systems Intregration
Postgraduate Programme
Contents
What is TCP/IP?
The OSI model  
  Encapsulation
TCP/IP list  
DoD Model  
Protocols  
Application layer
Host-to-Host layer
 
Connection-oriented
 
Acknowledgement
 
Windowing
 
Connectionless
Internet layer
 
Internet Protocol
Network Accesslayer
References  


Keywords search

Powered by s.w.a.x


HOST-TO-HOST TRANSPORT LAYER

HOST-TO-HOST TRANSPORT LAYER

This layer is responsible for delivery packets between the Internet layer and an application. An important concept in the world of TCP/IP communications is that of port numbers. Each application running in the computer will be given a unique port number at the Transport layer.
There are two types of protocol within the Transport layer. The first we shall look at is TCP, which is a connection-oriented protocol.

  • Connection-Oriented Protocol

The type of communication this protocol delivers is known as reliable data delivery. When a connection-oriented protocol (like TCP) sends data between two machines, the sending machine first informs the network that it needs to start a conversation with some other machine on the network. A connection-oriented protocol has the following features:

- The network guarantees that all packets sent will be delivered in the correct order, without loss or duplication. If this is not possible, the network will terminate the call.
- If a network becomes overly busy, future call requests are refused in order to preserve the integrity of existing calls.

Therefore, it is not possible to send a broadcast packet using a connected-oriented protocol. By definition, a broadcast packet is sent to multiple hosts on the same network. The first thing a connection-oriented protocol tries to do is contact the intended destination machine and sees if it will accept new calls. In a properly designed network addressing scheme, no computer will claim to have a broadcast address. The second type of protocol at the Transport layer is the connectionless protocol.

- Transmission Control Protocol (TCP)

TCP is the connection-oriented protocol, amongst the TCP/IP protocol stack, which operates at the transport layer. It provides a reliable connection between different hosts. With this protocol, all packets are sequenced and acknowledged, and a virtual circuit is established for communications. Upper level applications using TCP/IP include the following:
- Virtual Terminal Protocol (Telnet)
- File Transfer Protocol (FTP)
- Simple Mail Transfer Protocol (SMTP)

TCP provides reliability through the use of acknowledgements with retransmission.

  • Acknowledgement
    The idea of acknowledgement is that the receiving machine has to reply to the sending machine that the message sent was received intact. If an acknowledgement is not received, the sending machine will assume that the message was not received and will retransmit it.
    If the receiving machine had to reply to every packet, the result would be a lot of overhead on the network (assuming that most packets get through in a well-designed network). To reduce overheads, TCP introduces a concept called windowing.

  • Windowing
    This is a concept, whereby the receiving machine tells the sending machine how many bytes it can accept-essentially how much space is available in its receive buffer. The sending machine uses the window size to determine how much data can be sent before it can receive another acknowledgement. If an acknowledgement is not received within the specified window size, retransmission occurs, beginning with the last acknowledged data. Typically, if the receiving machine's receive buffer is getting full, it will advertise a decreasing window size to slow the rate of incoming traffic. If a window size of zero is advertised, the sender will not send any further data until it receives an acknowledgment with a nonzero window value.
    The window size normally is determined by an algorithm coded into the TCP protocol stack, and varies according to the characteristics of the host machines and network in use.
    To establish a TCP connection, a three-step handshake is exchanged between sender and receiver to establish a dialogue before data is transmitted. This is illustrated in FIG 2.

FIG 2: THE TCP THREE-WAY HANDSHAKE TO INITIATE A CONNECTION

 


 

 
 

Copyright 2003© - All Rights Reserved