ICNS `06. International conference on
Download
Report
Transcript ICNS `06. International conference on
COMMUNICATION NETWORK PROTOCOLS
Simply the rules and standards set up to govern
communications over a network architecture
More specifically, communication protocols are
sets of rules that regulate the exchange of
messages to provide a reliable and orderly flow
of information among communicating processes
CATEGORIES OF COMMUNICATION SERVICES
Connection-Oriented – require explicit set up
of connection before communication
commences
Messages are delivered reliably and in
sequence
Connectionless – no initial connection set up
required
Messages are delivered on a best-effort basis
in timing and route, and may arrive in arbitrary
order – useful analogy is the postal service
OSI PROTOCOL SUITE
A protocol suite consists of the layers of a standardized
network architecture
The first of the two most popular of these is the the Open
Systems Interconnection (OSI) from the International
Standards Organization
Consists of 7 layers
Serves to abstract away the details of the network
communication from the communicating processes
The above is achieved through the process of encapsulation
Specifically, each layer in the protocol receives a Protocol
Data Unit (PDU) from its upper layer and encapsulates it with
a header of information for its peer layer in the communicating
process, which peels these encapsulations off in reverse order
OSI MODEL
THE PHYSICAL LAYER
The physical layer specifies the electrical and
mechanical characteristics of the physical
communication link between two nodes
This is where electrical or optical signals are
converted to bits, or vice versa
Bit synchronization is the process of detecting
the beginning of a bit, or sequence of bits
BIT SYNCHRONOUS VERSUS CHARACTER
ASYNCHRONOUS
Bit sequences may be bit synchronous or
character asynchronous
Bit synchronous sequences are large blocks of
bits transmitted at a regular rate
Results in higher data transfer rate and more
efficient utilization of the link
Character asynchronous data are small fixedsize bit sequences transmitted asynchronously
Low-speed character-oriented terminals
generally use this method
STANDARDIZATION OF PHYSICAL LINKS
Standardization required to allow peers to
communicate extends all the way down to the
physical level, for things like coding method,
modulation technique, and wire and connector
specifications
RS232C and X.21 are two typical such
standardizations
THE DATALINK LAYER
Ensures reliable data transfer for groups of bits, called frames
Protocols here handle configuration setup, error controls,
sequencing and flow control of frames
Configuration concerns the establishment and termination of a
connection, and whether it should be full or half duplex, and
synchronous or asynchronous
Errors include transmission errors and loss or replication of data
frames
Sequencing uses sequence numbers to maintain orderly delivery of
frames
Flow control is necessary when receiver cannot keep pace with
sender, perhaps because of limited buffer space
THE DATALINK LAYER
All of these control functions contribute
overhead bits which are added to frames as
headers or trailers
Consequentially, each control protocol at this
layer has a particular format so that bits can
be interpreted correctly
THE NETWORK LAYER
The Network Layer is concerned with sending packets
over multiple links, as opposed to the previous two layers
which are each concerned with only one physical link
Packets, the fundamental data unit of the network layer,
are not analogous to frames, as they are not bounded by
the size of the physical link
The routing function of the network layer consists of
determining, given the destination address of a packet,
what link to forward that packet to
Congestion control is the alleviation of node bottlenecks
in the network through routing changes
THE NETWORK LAYER
When routing decisions are made when a connection
is established it is called a virtual circuit
These deliver packets, called datagrams, in order
Datagrams require reassembly in proper sequence
Not all packets are data packets
Control packets are also used for network address
resolution and status broadcasting
Such protocols generally use datagram services
since packets are small and short-lived
THE TRANSPORT LAYER
Serves as the interface between the communication
subnetwork (physical, data link and network layers), and
network independent layers (session, presentation and
application)
Primary responsibility is to provide reliable end-to-end
communication between processes
All network-dependent issues are abstracted away before we
reach this level
At the Transport layer is where messages are broken into
packets, or, at the receiving process, packets are assembled
into messages
Several sessions may be multiplexed into a single transport
connection, or alternatively a single session could occupy
multiple transport connections
SESSIONS
Sessions are categorized according to their
requirements for error handling and
multiplexing
OSI defines 5 classes of transport services to
support sessions, TP0-TP4
TP4 is the most common transport service,
and allows multiplexing, sessions, error
detection, and retransmission
It is a reliable connection-oriented service for
unreliable networks
SESSION, PRESENTATION AND
APPLICATION LAYERS
Layers above the Transport Layer are considered to
be 'on top' of the implementation of the system, and
thus can be considered together
The Session Layer provides additional dialog and
synchronization services to the Transport Layer
The Presentation Layer provides data encryption,
compression and code conversion for messages that
use different coding schemes
The standard for the Application Layer is left entirely
up to the developer of the application in question
TCP/IP
There are two major types of system
interactions – interprocess and internode
Stated another way, as system designers we
are primarily concerned with 1) how is
communication maintained between a pair of
processes, and 2) how are messages routed
through network nodes?
Thus the Transport and Network Layers are
most important to us
ENTER TCP/IP
TCP/IP is a protocol suite designed to address
these needs
TCP is a Transport Layer protocol equivalent
to TP4 in the OSI
IP is an internet protocol which encompasses
a bit more than the network layer of the OSI
The primary focus of TCP/IP is connecting
networks, rather than connecting computers
as in the OSI
TCP/IP
TCP/IP
At the Transport Layer we have the option of
connection-oriented or connectionless service
Either can be implemented through virtual
circuit or datagram at the network level
Connection-oriented communication has a
more stringent requirement for correct and
orderly delivery of of messages
On the other hand, a datagram is a simpler
and more efficient implementation at the
network level
PHILOSOPHY OF TCP/IP
By combining the connection-oriented
transport layer with a datagram network layer
we accommodate a large class of network
applications
In other words shift the burden of providing
reliable from the network to the operating
system level
Here we have more control of the host than we
do in the network
PROCESS COMMUNICATION
Generally uses ports, identified by a port id
A process may have multiple ports, and
different processes may share a common
destination port
Only unique within a local host
A nonambiguous network-wide endpoint can
thus be established by concatenating the port
id with the host and network addresses
INTERNET ADDRESSES
Full internet address consists of a network
address and a host address within that
network
May contain subnetwork address
Internet IP address is 32 bits long
SOCKETS
A socket specifies the interface to a port
It is an abstraction of network I/O that allows
standard read and write operations
The socket is configured to conform to a
particular protocol family and communication
service
For TCP the socket must be bound to a
destination transport port before read and
write operations can take place
The destination port number is chosen by the
operating system
Efficiency Study of TCP Protocols in Infrastructured
Wireless Networks
Goal of research to isolate most efficient
solution to non-congestion packet loss in TCP
protocol over wireless network
TCP is inherently inefficient over wireless
networks
TCP Tahoe and Reno, the two most common
TCP distributions, both assume packet loss to
be the result of congestion, since random loss
occurs in wired networks less than 1% of the
time
Efficiency Study of TCP Protocols in Infrastructured
Wireless Networks
However, in a wireless network schema two
other kinds of packet loss become common,
these being random packet loss, which
manifests through bit corruption, and
disconnection packet loss, which occurs when
a mobile host disconnects from the network
Both Tahoe and Reno will interpret this as
congestion and trigger defensive action, which
slows throughput rates
FOUR PROPOSED SOLUTIONS
TCP Westwood – Relies on a more optimistic estimation of the available bandwidth after a
loss event has occurred
TCP Jersey – Actually distinguishes between congestion and noncongestion loss
TCP Veno focuses on solving the random non-congestion loss problem by using two
parameters, the expected rate, and the actual rate, to calculate the backlog in the router
queue that is used as an indication of congestion
Expected rate is calculated as the ratio of the congestion window over the best RTT
Actual rate is calculated as the ratio of the congestion window over the latest RTT
JTCP – assumes network congestion can be inferred from the difference in interarrival times
of successive packet ACKs
Interarrival jitter – time difference between two packets on the sender side versus the time
difference between the same two packets on the receiver side
If greater than 0, then the second packet traveled longer through the network than the first
Jitter ratio – variance of the queue rate – remember that queues form because rate of arrival
of packets is greater than service rate at the router
JTCP uses jitter ratio, or variance in queue length, to determine types of loss in the network
BENCHMARK METRICS
Throughput – the ratio of the total data
transferred to the time it took to transfer
Average Congestion Window – the sum of all
congestion window sizes divided by the
number of transmissions – provides an idea of
the protocols resilience to loss and ability to
recover
Time to Complete – time to transfer a
continuous block of memory (file)
RESULTS
RESUTS
RESULTS
REFERENCES
Milan Todorovi´c, No´e L´opez-Benitez. Efficiency Study of TCP Protocols in Infrastructured
Wireless NetworksNetworking and Services, 2006.
ICNS '06. International conference on
103,16-18 July 2006.