You are on page 1of 36

Protocols in IPTV

Manish Das

05/14/10
05/14/10
Video encoding
 Video in its most basic form is a sequence of images, which
are displayed in a sequential order. The technical term for one
of these video images is “a frame.” The human eye in general
can comfortably watch TV at around 25 frames per second
(fps).
 Devices called video encoders are used to compress video
content contained in each of the frames, while maintaining a
high level of picture quality.
 Standard practice is to use Motion Picture Expert Group
(MPEG) encoding.
 An uncompressed video signal is compressed and an MPEG
elementary stream as a continuous real-time digital signal is
outputted from the encoder. This is known as Elementary
Stream.
05/14/10
Video encoding
MPEG uses three fundamental techniques to achieve compression:

Subsampling Reduces colour information which


is less sensitive to eye
Spatial compression Removes redundant information
within frames using the property
that pixels within a single frame
are related to their neigbours

Temporal compression Removes redundant information


between frames
05/14/10
Video encoding
Compression achieved:

Coding version SDTV HDTV


MPEG-2 3.5 Mbps 19.3 Mbps
MPEG-4 2 Mbps 8 Mbps

05/14/10
Video packetising
 In order for the elementary streams to be
transmitted over the digital network, each
elementary stream is converted into an
interleaved stream of time stamped Packetized
Elementary Stream (PES) packets.

 A PES packet may be a fixed (or variable) sized


block, with up to 65536 bytes per packet. This
includes an allocation of 6 bytes for the header
with the remainder of the packet used to carry
content.

05/14/10
MPEG Transport Stream (TS) construction

 The next layer deals with building a transport


stream, which consists of a continuous stream of
packets.
 These packets, commonly called TS packets, are
formed by breaking up the PES packets into fixed-
sized TS packets of 188 bytes.
 Each TS packet comprises 184 bytes of payload
and a 4 byte header.

05/14/10
MPEG Stream Encoder Flow

05/14/10
MPEG Transport Stream (TS)

Header (4 Video Payload (184 bytes)


bytes)

188 bytes

05/14/10
Formation of IP Packets

 Once the TS has been structured and formatted it is passed


down to either the transport layer (UDP) directly or a layer
that uses the Real-Time Transport Protocol (RTP).
 RTP delivers end-to-end streams of audio and video by
encapsulating the content into a particular format called a
packet. Each packet consists of a header and the payload
IPTV data.
 To improve bandwidth efficiency, the payload typically
includes seven MPEG-TS packet.

05/14/10
RTP encapsulation

RTP Header MPEG TS MPEG TS MPEG TS MPEG TS MPEG TS MPEG TS MPEG


(12 bytes) (188 (188 (188 (188 bytes) (188 bytes) (188 TS
bytes) bytes) bytes) bytes) (188
bytes)

05/14/10
Formation of IP Packets: Transport Layer

 RTP packets form the input to the transport layer UDP


or TCP.
 It is also possible to map MPEGTS packets directly into
the transport layer protocol payload. This effectively
avoids the RTP layer completely. But a number of
service providers use RTP to address the inherent
unreliability of the UDP protocol.
 In the context of IPTV, UDP is useful when a data
center needs to send IP video content to multiple users
and is the most popular transport level protocol
employed by IPTV service providers.
 An RTP header is identifiable with a value of 5004 in a
User Datagram Protocol (UDP) header.

05/14/10
UDP encapsulation

UDP Header RTP Header 7 X MPEG TS Packets (188 bytes)


(8 bytes) (12 bytes)
Optional

05/14/10
Why UDP?

 IPTV is a real-time application and does not tolerate delays. TCP can often introduce
latency into the delivery of IP video content due to fact that the protocol employs flow
control mechanisms.

 UDP ensures that delivery of IPTV content is not delayed even if there is delayed or
damaged packets contained in the network traffic, whereas in using TCP, TV viewers
are faced with a pause as they wait for a delayed packet or picture frame to arrive or
wait for the damaged packet to be replaced.

 Low overhead: The size of the header is only 8 bytes when compared to the TCP
header, which occupies 20 bytes of data.

 Speedy connection setup: The establishment and teardown of connections between


IPTVCDs (set top box) and IPTV data center networking components takes place in
a very short time period. Therefore, the delivery of video packets using the UDP
protocol is generally quicker compared to using the TCP protocol.

 Easy implementation: From a technical perspective UDP is pretty easy to implement


because it is not required to keep track of video packets once they are sent onto the
IP network.

05/14/10
The IP Layer

 Next task is IP encapsulation.


 20 byte header is added to the payload.

IPv4 UDP RTP Header 7 X MPEG TS Packets (188 bytes)


Header Header (12 bytes)
(20 bytes) (8 bytes) Optional

05/14/10
To Recapitulate

05/14/10
Now the delivery mechanism

 In standard broadcast systems all of the normal


broadcast channels are delivered to the STB in
the home (via Cable, Satellite or Terrestrial).
 There could be hundreds of channels, all of
which are delivered simultaneously. The STB
tunes to the desired channel in response to
requests from the viewer’s remote control.
 As a result of this local tuning the channel
changes are almost instantaneous.

05/14/10
Now the delivery mechanism

 In order to preserve bandwidth over the final link


to the house, IPTV systems are designed to
deliver only the requested channel to the STB.
 In order to change channels, special commands
are sent into the Access network requesting a
change of channel.
 Thus in IPTV systems the channel change is
made in the network and not on the local STB.

05/14/10
Now the delivery mechanism

 IP communication is normally one to one – unicast.


 This method of communications is not effective for
delivering traditional broadcast style channels because
the duplication of point-to-point sessions would
overwhelm the network.
 So IPTV uses multicast to provide a single broadcast TV
channel to multiple clients simultaneously.
 The primary purpose of multicast technologies is to
ensure that end users are able to instantaneously and
reliably switch channels during a TV viewing session.

05/14/10
Features of IP Multicast in IPTV network

 Only a single copy of every video stream needs to be


sent to a router, which in turn makes a copy of that
stream for the requesting devices.
 Multicast not only reduce the bandwidth requirements of
the network but the processing power of the content
server can also be kept relatively low because it only
transmits one copy of an IPTV stream at a time.
 But it increases the workload and processing
requirements of routers as they handle additional tasks
such as replicating video streams and keeping track of
multiple copies of video packets. Processing the various
tasks associated with IP multicasting adds a significant
burden to the workload of IP routers.

05/14/10
A simple example

• multiple unicasts • IP multicast

R R

S S

R R

R R

05/14/10
Channel zapping in IPTV

 Every channel has a multicast group IP address.


 Internet Group Management Protocol (IGMP) is
used for zapping channels.
 IGMP v2 is widely used in IPTV.
 Whenever an end user changes a channel, the
SETOPBOX responds by sending two
commands to the central equipment:
(1) To leave the existing video multicast.
(2) To join the desired new video multicast.

05/14/10
IGMP message format

05/14/10
Encapsulation of IGMP packet

05/14/10
Typical IPTV System: Selection of first channel

Headend Transport Access Home


The request for the VoIP
Router examines the
channel Other
finally ends up request to see if the
DSLAM examines the
Content
at the IPTV data center request to see if the Subscriber
requested channel
where Sources
all broadcast requested channel presses
already exists at one of
channels are available. already exists at one of channel
its ports. If this is the
The IP address of the its ports. If this is the The IP set-top box number
case, then the Router
subscriber’s IP set-top case, then the DSLAM accepts the channel
simply copies the IGMP
simply copies the
box get added to the request command
stream and sends to Router
Apps list. The
multicast the requesting device
stream and sendsIGMP to JOIN and sends this
Servers
channel is then copied the requesting device. instruction in the form
and sent onward to the of an IGMP join
IP set-top box. request to the
If the requested
DSLAM.
channel is not Video Stream
Video available in the
Servers Router, the request
IGMP JOIN STB
is sent to the
upstream routers. IGMP JOIN
Transport
Network xDSL CPE/
FTTH
MPEG If the requested channelIGMP DSLAM
Encoders is not available in the
DSLAM, the request is Computer
sent to the upstream
routers.
Digital and
Analog
Receivers

05/14/10
Channel selection: Possible steps that may occur
across a DSL based IPTV network
 Once a subscriber wishes to select a channel they press a channel number
on their remote control or select from an EPG application. These commands
are received by the infrared receiver.
 The IP set-top box accepts the channel changing command and sends this
instruction in the form of an IGMP join request to the DSLAM. The DSLAM
sees the request and will either pass onward or else examine the request to
see if the requested channel already exists at one of its ports. If this is the
case, then the DSLAM simply copies the stream and sends to the requesting
device.
 If the requested channel is not available in the DSLAM, the request is sent to
the upstream routers.
 When the router located at the regional office receives a request that has not
been serviced by the various downstream network components, it also has
two options, namely, to copy the stream to the correct interface or pass the
request upstream to the distribution router in the event that the channel is
unavailable at its downstream interface.

05/14/10
Channel selection: Possible steps that may occur
across a DSL based IPTV network
 The request for the channel finally ends up at the IPTV data center where
all broadcast channels are available. It is important to note that the
channel is generally identified by an IP address. The IP address of the
subscriber’s IP set-top box get added to the multicast list. The channel is
then copied and sent onward to the IP set-top box.
 The set-top receives the new IP stream. It then buffers in memory, and
waits for an I-frame to arrive before decoding starts. The I-frame contains
all of the necessary information required to reconstruct the original picture
frame. Once the I-frame is received the IP set-top box, which can take
between a half and two full seconds, can start the process of displaying
the channel.
 The first picture frame of the new channel is displayed on the TV display.
Note that the ITU-T FG IPTV group is recommending that the time taken
to acquire a broadcast channel should not exceed 2.5 s.

05/14/10
Typical IPTV System: Change of channel
Headend Transport Access Home
VoIP
Other
Content Subscriber
Sources changes
The channel
termination of number
the stream
IGMP The set-top box issues
takes place in
an IGMP Leave
Apps Router
the DSLAM.
message to terminate
Servers the stream associated
with the old stream.
Video Stream
Video
Servers IGMP LEAVE
STB
IGMP JOIN
Transport
Network xDSL CPE/
FTTH A join
MPEG IGMP DSLAM
message is
Encoders then sent toComputer
start viewing
the next
channel.
Digital and
Analog
Receivers

05/14/10
Channel change: Possible steps that may occur
across a DSL based IPTV network
The process involved in changing channels in the middle of the TV
viewing experience is quite similar to selecting a channel. There is
however a couple of extra steps:

 When a viewer wants to change to another IPTV signal the remote


control button is pressed and the instruction is accepted by the IP
set-top box.
 The set-top box issues an IGMP Leave message to terminate the
stream associated with the old stream.
 The termination of the stream takes place in the DSLAM.
 A join message is then sent to start viewing the next channel.

05/14/10
Session Announcement Protocol (SAP)

 Session Announcement Protocol (SAP) is used to


inform multicast enabled receivers periodically about
programs currently being multicast on a network.
 The most important part of a SAP message is the
multicast address of the multicast stream. Once the user
device has this address, it can send a request to the
network to join that multicast.
 By default, SAP communications always take place on
the multicast group address 224.2.127.254 on port
9875. Specialized software on the user device converts
the information received from SAP into a list of choices
from which the user can select.

05/14/10
MULTICASTING IPTV content across IPV6
networks
 IPv6 deployment requires service providers to
use a multicasting signaling protocol called
Multicast Listener Discovery (MLD) when
delivering broadcast TV channels to IPTV end
users.
 MLD has been derived IGMP.

05/14/10
Video Server Multicast TV
BNG

T1

T2 T2

DSLAM # 1 DSLAM # 2 DSLAM # 3 DSLAM # 4


IGMP
JOIN

TV TV

ADSL MODEM

SETTOP
05/14/10 BOX

PC PC PC
Time-shift TV

05/14/10
Video on Demand (VoD)

 VoD is unicast delivery and uses RTSP.


 The Real Time Streaming Protocol (RTSP) is a
protocol for use in streaming media systems which
allows a client to remotely control a streaming media
server, issuing VCR-like commands such as "play" and
"pause", and allowing time-based access to files on a
server
 RTSP requests are based on HTTP requests
 In RTSP we can distinguish following requests:
DESCRIBE, SETUP, PLAY, PAUSE, RECORD,
TEARDOWN.
 RTSP servers use RTP among other things the transport
protocol for the actual audio/video data and RTCP to
monitor quality of streaming.
05/14/10
Example:RTSP with UDP-Based RTP Delivery
DESCRIBE
rtsp://192.168.1.25:554/mp
eg4/movies/3idiots.mpg
RTSP/1.0 200 RTSP/1.0
OK CSec: 101
CSec: 101 Accept: application/sdp
Content-Base: OPTIONS
RTSP/1.0 200
rtsp://192.168.1. rtsp://192.168.1.25:554/mp
OK
25:554/mpeg4/m eg4/movies/3idiots.mpg
RTSP/1.0
CSec: 102
ovies/3idiots. CSec: 102 SETUP
mpgPublic:
200 OK rtsp://192.168.1.25:554/mp
DESCRIBE,
CSeq: 103
Content-Type: eg4/movies/3idiots.mpg
OPTIONS,
Session:
application/sdp CSeq: 103
PAUSE,
1234567891;
Content-Length: Transport:
PLAY
320PLAY,
timeout=10 RTP/UDP;unicast;client_p
rtsp://192.168.1.25:554/m
SETUP,
Transport:
<SDP ort=4042-4043
peg4/movies/3idiots.mpg
TEARDOWN,
RTP/UDP;un
Data..........> RTSP/1.0
ANNOUNCE
icast;mode= CSeq: 104
play; Session: 1234567891
client_port=4 PAUSE
042-4043; rtsp://192.168.1.25:554/m
server_port=
RTSP/1.0 peg4/movies/3idiots.mpg
5072-5073
200 OK CSeq: 105
TEARDOWN
CSeq: 104 Session: 1234567891
SP/1.0 200
RTSession: rtsp://192.168.1.25:554/m
OK1234567891 peg4/movies/3idiots.mpg
CSeq: 105 RTSP/1.0
Session: CSeq: 106
12 34567891
RTSP/1.0 200 Session: 1234567891
OK
CSeq: 106
Session:
1234567891

05/14/10
Thank You!

05/14/10

You might also like