Ircse09 Submission 24
Ircse09 Submission 24
Ircse09 Submission 24
David Espina
Dariusz Baha
Project in Electronics
Computer science
ABSTRACT
The Transport Control Protocol (TCP) and Internet
Protocol (IP) are the two most important communication
protocols used in computer network today. In this paper we
describe the evolution and the basic functionality of the
TCP\IP protocol. After reading this article the reader will
have a brief knowledge of the origin and evolution of TCP
and IP, as well as their structure, operational lifetime and
philosophy. We expose the reasons why the first
information networks needed to evolve to become what we
know nowadays as the internet. Finally a future view is
detailed of what the recent studies and tested technologies
bring as the best solution to support the growing demands
of the users and technological improvements. Multi-bit
control feedback, are the key words to describe the future
in network communications. Technologies like FAST TCP,
delay-based systems and the 4G Mobile Networks based on
IP are the most modern researches and the future for all
networks communication.
1. INTRODUCTION
The TCP protocol belongs to the Transport Layer in the
OSI model which is an abstraction model for computer
communication through networks. The task of the TCP
protocol is to ensure a reliable communication between two
hosts on an unreliable network. In one end it provides a
service to the communicating application and in the other
end, the IP protocol.
In section II the birth of the protocols is explained both
sociological and technological purposes. Since the 1960s
the military in collaboration with several different
universities in the U.S. started working in the
implementation of a global network which purpose was
connecting different locations working under different
protocols and share information with several kinds of
storage systems.
In Section III we explain some basic functionalities of the
TCP protocol and how it works. We will concentrate on
connection establishment, connection release and the
sliding window protocol.
An expert reader may be interested in skipping the whole
previous sections to section IV where is explained in detail
the most recent discoveries and implementation about TCP
page 1 of 8
2. History of TCP/IP
IP was born to cover U.S. Department of Defenses
communication needs. Last years of the 1960s the
Advanced Research Projects Agency (ARPA), which is
known nowadays as DARPA, started developing in
common with some partner universities and the corporate
research community the design of standard protocols and
started building first multi-vendors networks. The result of
working all together was ARPANET, the first packet
switching network that was tested in 1969 with four nodes
using Network Control Protocol. After the successful test
the new born network turned into an operational network
called ARPA Internet. In 1974 Vinton G.Cerf and Robert
E.Kahn designed TCP/IP protocols.
In January 1980 the Institute of Information Sciences at
University of Southern California elaborated a reference
document [5] describing the philosophy of the Internet
Protocol. It was designed to be used in an environment of
computer communication networks oriented to packet
switched systems interconnected between them.
In 1985 ARPANET started suffering from congestion and
the National Science Foundations developed NSFNET to
support the previous net which was finally closed in 1989.
The NSFNET was based on multiple regional networks and
peer networks such as NASA Science Network. By 1986
there was a network architecture connecting campuses and
research organizations connected also to super computer
facilities. Over the years the speed of transmissions had to
be increased and by 1991 the backbone was moved to a
private company which started charging for connections
and companies like IBM developed ANSNET in parallel
which was nor aimed to enrich these companies.
The structure of the information running through the
network was designed as blocks of data split in small
page 2 of 8
3. Present TCP/IP
To accomplish its task, both the receiver and the sender
must create communication end points, called sockets, or
more precisely the communicating processes on each of the
senders and receivers machines are creating the sockets. It
is trough the sockets that the communicating processes can
send and receive data. Each socket has an IP address and a
port number. There are some well known port numbers like
port 21 for the FTP protocol which with many others is
included in the TCP/IP suite. Port numbers below 1024 are
reserved for such well known services. A TCP connection
is established between two hosts only, which mean that
multicasting and broadcasting is not supported. Some
features of the TCP include buffering of data, which means
that the data passed to TCP may not be sent immediately
instead the TCP may buffer it. Hence a larger chunk of data
can be sent. This means that the data is sent as a byte
stream and not as a message stream.
page 3 of 8
page 4 of 8
that are received after a lost packet. After the lost packets
timer has expired the sender will retransmit it and all the
discarded frames. A more efficient way is to use selective
repeat, instead of discarding, the out of order packets are
buffered. And only the lost packets will have to be
retransmitted by the sender. For more efficiency selective
repeat can use negative acknowledgements (NAK) when it
detects that a packet must be lost. This is faster because the
sender does not have to wait for a timeout. Figure below
shows an example of Go Back N (a) and Selective Repeat
(b).
4. Future TCP/IP
According to the metrics presented by Claffy [1], While
almost 60% of packets are 44 bytes or less, constituting a
total of 7% of the byte volume, over half of the bytes are
carried in packets of size 1500 bytes or larger. These
results mean that even during the young period of the
internet (year 1998) the volume of packets was growing
fast as the demand of the users and the amount of them was
developing logarithmically. The demand is bigger and more
exigent nowadays. Media, streaming, p2p and other
services with an important load of traffic with heavy
content are the users needs to be covered. TCP will not be
able to support an upcoming demand of larger packages as
shown in Figure 4.1.
page 5 of 8
packets where
pkts/sec. being
the round-trip time and
is the
(delayed) end-to-end loss probability, in period t. As long
as the mathematical explanation develops two equations
describe flow-level dynamics and equilibrium. There are
currently other algorithms to improve congestion control
such us HSTCP, STCP and Reno. Despite their different
aspect they all have similarities concerning structure and
dynamics at flow-level. Their congestion windows evolve
all according to:
page 6 of 8
4.1.5 Architecture
According to [6] TCP congestions control protocol is split
into four independent functionally components:
Data control: determines which packets to transmit.
Window control: determines how many packets to transmit.
Business control: determines when to transmit.
Estimation component: takes decisions to control the other
three components.
This last component meant to rule the others handles two
fragments of feedback information for every packet sent.
One is a multi-bit queuing delay and the other one is a onebit loss-or-no-loss flag, understanding flag as an indicator.
These two separate pieces of information are used by the
other three components. Data control chooses the next
packet to send from 3 different sources: new packets,
packets with negative acknowledgement, and packets
already transmitted but not acknowledged. Packet
regulation at RTT time domain is done by window control.
Finally business control makes the transmission fluent
according to the available bandwidth. To fulfill FAST TCP
two extra mechanisms are used one to supplement selfclocking in streaming out individual packets and the other
to increase window size smoothly in smaller bursts. A
detailed explanation can be found at [6].
page 7 of 8
4.2 Future IP
It is on some developers mind the future of mobile
communications an IP based network that will be part of
the 4G Mobile Networks. This forces to make
improvements to change from the traditional packetswitched networks to a packet based wireless IP network
and also is seen as the motor-breath for new
communication systems and technologies development.
The infrastructures of a wireless network are not so much
physically dependent as wired networks, which brings
economic and security issues to debate just to come up with
a compromise relation between users and operators.
As is explained by Kurtansky [3] in his paper, AAAC Arch.
stands for Authentication, Authorization, Accounting and
Charing Architecture. According to the paper this
architecture has been implemented to facilitate the
deployment of a ubiquitous mobile IPv6-based, QoS-aware
infrastructure through a flexible and evolutionary AAAC
Architecture.
In order to give support to both AAAC client and AAAC
server [3] focuses on both DIAMETER client and
DIAMETER server. Client daemon is in charge of
accepting registration requests and forwarding to the server
daemon. It uses User Registration Protocol (URP) and
DIAMETER protocol. The server daemon has the task of
authentication, authorization, and accounting based on the
user profile information as show in Figure 4.2.
6. REFERENCES
[1] Claffy, K., Miller, G., Thompson, K.,(1998), The
793.
[5] University of South California (1980), DOD Standard
page 8 of 8