Beruflich Dokumente
Kultur Dokumente
for Multimedia
The Evolution of
Communication Networks
For over 100 years, the POTS (Plain Old
Telephone System) has been the primary focus of
conventional voice-band communications
POTS network is well designed and well
engineered for the transmission and switching of
3-Khz voice calls
Real-time
Low-latency
High-reliability
Moderate-fidelity
Packet Networks
POTS network is not designed for other forms of
communications, such as wide-band speech,
audio, images, video, facsimile and data.
About 30 years ago, a second communications
network was created with the goal of providing a
better transport mechanism for data networking.
The resulting network is called a packet network
because data is transmitted and routed along the
network in the form of units of information
Routing
Network: graph of nodes (subnetworks) and edges
(links between subnetworks)
Problem: find an optimal path from a given source to
a given destination node
Routing is the problem of the main task of the
network layer and involves two major subproblems:
Find an optimal path in the routing graph, under
changing network loads and perhaps even a
changing network topology
Get all incoming packets through a router at runtime
in an optimal way
Approaches to Routing
Connectionless: the pathfinding algorithm is
executed every time a packet is injected into the
network (e.g., IP). Each packet finds its way
independent of other packets and carries a
destination address.
Efficient for short connections (no connect and
disconnect phases in the protocol)
Robust in the case of a node failure (no state
information stays in the nodes)
Easy internetworking
Routing Algorithms
Static routing: all routes are pre-computed for a
given topology and are independent of the current
network load
Each node has a table with entries in the form
[source; destination; outgoing link]
An incoming packet contains the destination
address (or, in the case of virtual circuits, the
connection identifier)
Routing decision is reduced to a quick table look-up
When the network topology changes, a network
control center re-computes the global routing table,
and the new table is downloaded into all nodes
Broadcast Routing
Send a distinct packet to each destination
Bandwidth wasteful
Requires the source to have a complete list of all
destinations
Flooding
Every incoming packet in a node of the subnet is
sent out to every outgoing line except the one it
arrived on
Must have a way to dump the number of
duplicate packets
E.g., each router can keep track of which
packets in a sequence have already been sent
Congestion Control:
Traffic Shaping
Sender and network agree on average rate and
burstiness of data transmission
It is not so important for file transfer but very
important for real-time data (audio/video) which do
not tolerate congestion well
Needs traffic policing to monitor the traffic flow
and make sure that the customer is following the
agreement
Flow Control
Flow control is typically performed using the
Sliding Window mechanism
The sliding-window algorithm allows the sender to
transmit packets at its own speed until a window of
size W is used up. It then has to stop and wait until
acknowledgments from the receiver open the
window again.
In the TCP protocol, W is not counted in terms of
packet but in terms of bytes in transfer
Sliding Window
Throughput
The throughput of a network corresponds to its
effective bandwidth or bit rate, i.e., the physical link
bit rate minus the various overheads
Example: ATM technology over a SONET
(Synchronous Optical NETwork) fiber optics
transmission system. The network carriers
provisioned bit rate is 155.52 Mb/s. Principal
overheads are approximately 3% for SONET and
9.5% for ATM. Thus, the maximum throughput of
this network is actually 136 Mb/s
Other factors that affect throughput are network
congestion, bottlenecks, node or line faults
Error Rate
Defined in terms of the bit (packet) error rate,
i.e., the ratio of the average number of corrupted
bits (packets) to the total number of bit (packets)
transmitted
Examples:
In fiber optics transmission, the bit error rate range
from 10-8 to 10-12
In satellite transmission systems, the bit error rate is
on the order of 10-7
Causes of Errors in
Packet-Switching Systems
Individual bits in packets are inverted or lost
Error-correction codes are able to correct the error or
detect it and request retransmission
Bit error recovery is based on error detection and
retransmission
The sender learns about bit error in one of two ways:
The receiver sends a negative acknowledgment
(NACK)
The sender signals a time-out unless a positive
acknowledgment is received within a predefined
interval
Causes of Errors in
Packet-Switching Systems (contd)
Packets are lost in transit (inadvertent error),
dropped by an intermediate node (deliberate error) or
delayed
In a connection-oriented network, when packets are lost
or dropped, the receiving end-system is usually able to
detect such a situation and inform the sending side
Packet loss recovery is based on sequence numbers
In the case of connectionless networks, packet loss or
dropped packets are difficult, if not impossible to detect
The primary reason for packets being dropped or lost
in high-speed networks is insufficient buffer space at
the receiving end-system due to congestion in the
network
Causes of Errors in
Packet-Switching Systems (contd)
Packets arrive out-of-order
It is the job of the receiving end-system to
rearrange the received packets in the numerical
sequence in which they were originally sent
IMPORTANT: packet retransmission (especially if
it has to be carried out on an end-to-end basis)
significantly increases latency
For real-time video or audio transmission, delay is a
more important performance issue than error rate,
so in many cases it is preferable to forget the error
and simply work with the received data stream as is
Delay (Latency)
End-to-end delay is formed by:
Network delay, composed of
transit delay which depends on the physical
distance between the two ends
transmission delay which is the time required to
transmit a block of data and depends on the bit rate
and on processing delays in the intermediate nodes,
including routing and buffering
Interface delay, which is the delay incurred
between the time a sender is ready to begin ending
a block of data and the time the network is ready to
transmit the data
QoS (contd)
Resource Reservation and Scheduling
If an application knows in advance that it requires certain
QoS resources it can make a reservation with the network for
those resources for the period in question. The network can
either deny the request or schedule the application for that
period and reserve the resources requested
Resource Negotiations
If the network administrator feels that the requested
resources might overtax the capabilities of the network, it can
negotiate with the requester and offer lower QoS parameters.
A mutually acceptable set of QoS parameters can then be
negotiated.
QoS (contd)
Admission Control
If the QoS demands of the particular application are
so high that the network cannot meet them, the
network has the choice of not letting the application
on to the network.
Guaranteed QoS
The user may expect a guaranteed level of service
from the network. Whether these guarantees are
statistical or absolute depends upon the
negotiations between the user and the network.
Media Filtering
In a multicast scenario, not all receivers have the
same QoS requirements
E.g., a PC connected via a telephone line will not
be able to receive video at the same rate as a
highend UNIX workstation connected via ATM
A solution: media filtering
The internal network nodes implement media filters,
so that the sender needs to create only one flow
satisfying the maximum QoS, saving considerable
bandwidth
Media Scaling
A problem with a static QoS contract between
the sender and receivers of a multicast stream is
the variance of many parameters throughout the
duration of the transmission, both at the end notes
and within the network.
It would be desirable to adjust the QoS
parameters during a multimedia connection. When
applied to a multimedia data stream, this is called
media scaling.