DISTRIBUTED MULTIMEDIA SYSTEMS
Lecture 12: Network Protocols
12.1Introduction
Welcome to twelve lecture on network protocols. In order to distribute a multimedia
product, it is necessary to have a set of protocols which enable smooth transmission of
data between two hosts. The protocols are the rules and conventions useful for
network communication between two computers.
12.2 Lecture objectives
At the end of this lecture you will:
i) Have a detailed idea on the applications requirements
ii) Be able to list the protocols used for multimedia networking
12.3 Lecture Outline
Transport Subsystem
Requirements
Distributed multimedia applications put new requirements on application designers, As
well as network protocol and system designers. We analyze the most important enforced
requirements with respect to the multimedia transmission.
User and Application Requirements
Network multimedia applications by themselves impose new requirements onto data
handling in computing and communications because they need (1) substantial data
throughput, (2) fast date forwarding, (3) service guarantees, and (4) multicasting.
Data Throughput
Audio and video data resemble a stream-like behavior, and they demand, even in a
compressed mode, high data throughput. In a workstation or network, several of those
streams may exist concurrently demanding a high throughput. Further, the date
movement requirements on the local end-system translate into terms of manipulation
of large quantities of data in real-time where, for example, data copying can create a
bottleneck in the system.
11
0
DISTRIBUTED MULTIMEDIA SYSTEMS
Fast Data Forwarding
Fast data forwarding imposes a problem on end-systems where different
applications exist in the same end-system, and they each require data movement
ranging from normal, error-free data transmission to new time-constraint traffic
types. But generally, the faster a communication system can transfer a data
packet, the fewer packets need to be buffered. The requirement leads to a careful
spatial and temporal resource management in the end-systems and routers/switches. The
application imposes constraints on the total maximal end-to-end delay. In a retrieval-like
application, such as video-on-demand, a delay of up to one second may be easily
tolerated. In an opposite dialogue application, such as a videophone or videoconference,
demand end-to-end delays lower that typically 200 m/sec inhibit a natural communication
between the users.
Service Guarantees
Distributed multimedia applications need service guarantees; otherwise their acceptance
does not come through as these systems, working with continuous media, compete
against radio and television services. To achieve services guarantees, resource
management must be used. Without resource management in end-systems and
switches/routers, multimedia systems cannot provide reliable QoS to their users because
transmission over unreserved resources leads to dropped or delayed packets.
Multicasting
Multicast is important for multimedia-distributed applications in terms of sharing
resources like the network bandwidth and the communication protocol processing
at end-systems.
Processing and Protocol Constraints
Communication protocols have, on the contrary, some constraints which need to
be considered when we want to match application requirements to system platforms.
A typical multimedia application does not require processing of audio and video
to be performed by the application itself. Usually the data are obtained from a source
(e.g., microphone, camera, disk, and network) and are forwarded to a sink (e.g.,
11
1
DISTRIBUTED MULTIMEDIA SYSTEMS
speaker, display, and network). In such a case, the requirements of continuous-media
data are satisfied best if they take “take shortest possible path” through the system, i.e.,
to copy data directly from adapter-to-adapter, and the program merely sets the correct
switches for the data flow by connecting sources to sinks. Hence, the application itself
never really touches the data as is the case in traditional processing. A problem with
direct copying from adapter-to-adapter is the control and the change of QoS parameters.
In multimedia systems, such an adapter-to-adapter connection is defined by the
capabilities of the two involved adapters and the bus performance. In today’s systems,
this connection is static. This architecture of low-level data streaming corresponds to
proposals for using additional new busses for
audio and video transfer within a computer. It also enables a switch-based rather than
bus-based data transfer architecture. Note, in practice we encounter headers and
trailers surrounding continuous-media data coming from devices and being delivered
to devices. In the case of compressed video data, e.g., MPEG-2, the program stream
contains several layers of headers compared with the actual group of pictures to be
displayed. Protocols involve a lot of data movement because of the layered structure of
the communication architecture. But copying of data is expensive and has become a
bottleneck, hence other mechanisms for buffer management must be found.
Different layers of the communication system may have different PDU sizes;
therefore, a segmentation and reassembly occur. This phase has to be done fast, and
efficient. Hence, this portion of a protocol stack, at least in the lower layers, is done
in hardware, or through efficient mechanisms in software.
Transport Layer
Transport protocols, to support multimedia transmission, need to have new
features and provide the following function, semi-reliability, multicasting, NAK (None-
Acknowledgment)-based error recovery mechanism and rate control.
First, we present transport protocols, such as TCP and UDP, which are used in the Internet
protocol stack for multimedia transmission, and secondly we analyze new emerging
transport protocols, such as RTP, XTP and other protocols, which are suitable
11
2
DISTRIBUTED MULTIMEDIA SYSTEMS
for multimedia.
Internet Transport Protocols
The Internet protocol stack includes two types of transport protocols:
Transmission Control Protocol(TCP)
Early implementations of video conferencing applications were implemented on top of
the TCP protocol. TCP provides a reliable, serial communication path, or virtual circuit,
between processes exchanging a full-duplex stream of bytes. Each process is assumed to
reside in an internet host that is identified by an IP address. Each process has a number of
logical, full-duplex ports through which it can set up and use as full-duplex TCP
connections. Multimedia applications do not always require full-duplex connections for
the transport of continuous media. An example is a TB broadcast over LAN, which
requires a full-duplex control connection, but often a simplex continuous media
connection is sufficient. During the data transmission over the TCP connection, TCP
must achieve reliable, sequenced delivery of a stream of bytes by means of an underlying,
unreliable datagram service. To achieve this, TCP makes use of retransmission on
timeouts and positive acknowledgments upon receipt of information. Because
retransmission can cause both out-of-order arrival and duplication of data., sequence
numbering is crucial. Flow control in TCP makes use of a window technique in which the
receiving side of the connection reports to the sending side the sequence numbers it may
transmit at any time and those it has received contiguously thus far. For multimedia, the
positive acknowledgment causes substantial overhead as all packets are sent with a fixed
rate. Negative acknowledgment would be a better strategy. Further, TCP is not suitable
for real-time video and audio transmission because its retransmission mechanism may
cause a violation of deadlines which disrupt the continuity of the continuous media
streams. TCP was designed as a transport protocol suitable for non-real-time reliable
applications, such as file transfer, where it performs the best.
User Datagram Protocol(UDP)
UDP is a simple extension to the Internet network protocol IP that supports multiplexing
of datagrams exchanged between pairs of Internet hosts. It offers only multiplexing and
11
3
DISTRIBUTED MULTIMEDIA SYSTEMS
check summing, nothing else. Higher-level protocols using UDP must provide their own
retransmission, packetization, reassembly, flow control, congestion avoidance, etc.
Many multimedia applications use this protocol because it provides to some degree the
real-time transport property, although loss of PDUs may occur. For experimental
purposes, UDP above IP can be used as a simple, unreliable connection for medium
transport. In general, UDP is not suitable for continuous media streams because it does
not provide the notion of connections, at least at the transport layer; therefore, different
service guarantees cannot be provided.
Real-time Transport Protocol(RTP)
RTP is an end-to-end protocol providing network transport function suitable for
applications transmitting real-time data, such as audio, video or simulation data over
multicast or unicast network services. It is specified and still augmented by the
Audio/Video Transport Working Group. RTP is primarily designed to satisfy the needs
of multi-party multimedia conferences, but it is not limited to that particular application.
RTP has a companion protocol RTCP (RTP-Control Protocol) to convey information
about the participants of a conference. RTP provides functions, such as determination of
media encoding, synchronization, framing, error detection, encryption, timing and source
identification. RTCP is used for the monitoring of QoS and for conveying information
about the participants in an ongoing session. The first aspect of RTCP, the monitoring is
done by an application called a QoS monitor which receives the RTCP messages. RTP
does not address resource reservation and does not guarantee QoS for real-time
services. This means that it does not provide mechanism to ensure timely
delivery of data or guaranteed delivery, but relies on lower-layer services to do so.
RTP makes use of the network protocol ST-II or UDP/IP for the delivery of data.
It relies on the underlying protocols(s) to provide demultiplexing.
Profiles are used to specify certain parts of the header for particular sets of
applications. This means that particular media information is stored in an
audio/video profile, such as a set of formats (e.g., media encodings) and a
default mapping of those formats.
11
4
DISTRIBUTED MULTIMEDIA SYSTEMS
Xpress Transport Protocol (XTP)
XTP was designed to be an efficient protocol, taking into account the low error
ratios and higher speeds of current networks. It is still in the process of augmentation by
the XTP Form to provide a better platform for the incoming variety of applications.
XTP integrates transport and network protocol functionalities to have more control over
the environment in which it operates. XTP is intended to be useful in a wide variety of
environments, from real-time control systems to remote procedure calls in distributed
operating systems and distributed databases to bulk data transfer. It defines for this
purpose six service types: connection, transaction, unacknowledged data gram,
acknowledged datagram, isochronous stream and bulk data. In XTP, the end-user is
represented by a context becoming active within an XTP implementation.
Other Transport Protocols
Some other designed transport protocols which are used for multimedia
transmission are:
Tenet Transport Protocols
The Tenet protocol suite for support of multimedia transmission was developed
by the Tenet Group at the University of California at Berkeley. The transport
protocols in this protocol stack are the Teal-time Message Transport Protocol
(RMTP) and Continuous Media Transport Protocol (CMTP). They run above the
Real-Time Internet Protocol (RTIP).
Heidelberg Transport System (HeiTS)
The Heidelberg Transport system (HeiTS) is a transport system for multimedia
communication. It was developed at the IBM European Networking Center
(ENC), Heidelberg. HeiTS provides the raw transport of multimedia over networks.
METS: A Multimedia Enhanced Transport Service
METS is the multimedia transport service developed at the University
of Lancaster. It runs on top of ATM networks.
The transport protocol provides an ordered, but non-assured, connection oriented
11
5
DISTRIBUTED MULTIMEDIA SYSTEMS
communication service and features resource allocation based on the user’s QoS
specification. It allows the user to select upcalls for the notification of corrupt
and lost data at the receiver, and also allows the user to re-negotiate QoS levels.
Network Layer
The requirements on the network layer for multimedia transmission are a
provision of high bandwidth, multicasting, resource reservation and Qos guarantees, new
routing protocols with support for streaming capabilities and new higher-capacity routers
with support of integrated services.
Internet Services and Protocols
Internet is currently going through major changes and extensions to meet the growing
need for real-time services from multimedia applications. There are several protocols
which are changing to provide integrated services, such as best effort service, real-time
service and controlled link sharing. The new service, controlled link sharing, is
requested by the network operators. They need the ability to control the sharing of
bandwidth on a particular link among different traffic classes. They also want to divide
traffic into few administration classes and assign to each a minimal percentage to the
link bandwidth under conditions of overload, while allowing ‘unused’ bandwidth to be
available at other times.
Internet Protocol (IP)
IP provides for the unreliable carriage of datagrams form source host to destination host,
possibly passing through one or more gateways (routers) and networks in the process.
We examine some of the IP properties which are relevant to multimedia transmission
requirements:
- Type of Service: IP includes identification of the service quality through the Type of
Service (TOS) specification. TOS specifies (1) precedence relation and (2) services such as
minimize delay, maximize throughput, maximize reliability, minimize monetary cost and
normal service. Any assertion of TOS can only be used if the network into which an IP
packet is injected has a class of service that matches the particular combination of
11
6
DISTRIBUTED MULTIMEDIA SYSTEMS
TOS markings selected.
Internet Group Management Protocol ( IGMP)
Internet Group Management protocol (ICMP) is a protocol for managing Internet
multicasting groups. It is used by conferencing applications to join and leave particular
multicast group. The basic service permits a source to send datagrams to all members of
a multicast group. There are no guarantees of the delivery to any or all targets in the
group. Multicast routers periodically send queries (Host Membership Query Messages) to
refresh their knowledge of memberships present on a particular network. If no reports are
received for a particular group after some number of queries, the routers assume the
group has no local members, and that they need not forward remotely originated
multicasts for that group onto the local network. Otherwise, hosts respond to a query by
generating reports (Host Membership Reports), reporting each host group to which they
belong on the network interface from which the query was received. To avoid an
“impulsion” of concurrent reports there are two possibilities: either a host, rather than
sending reports immediately, delays for a D-second interval the generation of the report;
or, a report is sent with an IP destination address equal to the host group address being
reported. This causes other members of the same group on the network to overhear the
report and only one report per group is presented on the network. \
Resource reservation Protocol (RSVP)
RSVP is a protocol which transfers reservations and keeps a state at the intermediate
nodes. It does not have a data transfer component. RSVP messages are sent as IP
datagrams, and the router keeps “soft state”, which is refreshed by periodic reservation
messages. In the absence of the refresh messages, the routers delete the reservation after
a certain timeout. This protocol was specified by IETF to provide one of the components
for integrated services on the Internet. To implement integrated services, four
components need to be implemented: the packet scheduler, admission control routine,
classifier, and the reservation setup protocol.
STream protocol, Version 2 (ST-II)
ST-II provides a connection-oriented, guaranteed service for data transport based
11
7
DISTRIBUTED MULTIMEDIA SYSTEMS
on the stream model. The connections between the sender and several receivers are
setup as uni-directional connections, although also duplex connections can be setup. ST-
II is an extension of the original ST protocol. It consists of two components:
the ST Control Message Protocol (SCMP), which is a reliable, connectionless transport
for the protocol messages and the ST protocol itself, which is an unreliable transport
for the data.
12.4 End of lecture activities (self –tests)