36
06/06/22 Protocols in IPTV Manish Das

Protocols in IPTV

Embed Size (px)

DESCRIPTION

Deals with compression of video signals for delivery in IPTV network. Protocols involved in IPTV multicast, unicast, VoD.

Citation preview

Page 1: Protocols in IPTV

04/08/23

Protocols in IPTV

Manish Das

Page 2: Protocols in IPTV

04/08/23

Page 3: Protocols in IPTV

04/08/23

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.

Page 4: Protocols in IPTV

04/08/23

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

Page 5: Protocols in IPTV

04/08/23

Video encoding

Compression achieved:

Coding version SDTV HDTV

MPEG-2 3.5 Mbps 19.3 Mbps

MPEG-4 2 Mbps 8 Mbps

Page 6: Protocols in IPTV

04/08/23

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.

Page 7: Protocols in IPTV

04/08/23

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.

Page 8: Protocols in IPTV

04/08/23

MPEG Stream Encoder Flow

Page 9: Protocols in IPTV

04/08/23

MPEG Transport Stream (TS)

Header (4 bytes)

Video Payload (184 bytes)

188 bytes

Page 10: Protocols in IPTV

04/08/23

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.

Page 11: Protocols in IPTV

04/08/23

RTP encapsulation

RTP Header

(12 bytes)

MPEG TS

(188 bytes)

MPEG TS

(188 bytes)

MPEG TS

(188 bytes)

MPEG TS

(188 bytes)

MPEG TS

(188 bytes)

MPEG TS

(188 bytes)

MPEG TS

(188 bytes)

Page 12: Protocols in IPTV

04/08/23

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.

Page 13: Protocols in IPTV

04/08/23

UDP encapsulation

UDP Header

(8 bytes)

RTP Header

(12 bytes)

Optional

7 X MPEG TS Packets (188 bytes)

Page 14: Protocols in IPTV

04/08/23

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.

Page 15: Protocols in IPTV

04/08/23

The IP Layer

Next task is IP encapsulation. 20 byte header is added to the payload.

IPv4

Header

(20 bytes)

UDP

Header

(8 bytes)

RTP Header

(12 bytes)

Optional

7 X MPEG TS Packets (188 bytes)

Page 16: Protocols in IPTV

04/08/23

To Recapitulate

Page 17: Protocols in IPTV

04/08/23

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.

Page 18: Protocols in IPTV

04/08/23

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.

Page 19: Protocols in IPTV

04/08/23

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.

Page 20: Protocols in IPTV

04/08/23

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.

Page 21: Protocols in IPTV

04/08/23

A simple example

• multiple unicasts • IP multicast

S S

R

R

R

R

R

R

Page 22: Protocols in IPTV

04/08/23

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.

Page 23: Protocols in IPTV

04/08/23

IGMP message format

Page 24: Protocols in IPTV

04/08/23

Encapsulation of IGMP packet

Page 25: Protocols in IPTV

04/08/23

Typical IPTV System: Selection of first channel

TransportHeadend Access Home

TransportNetwork xDSL CPE/

FTTH

Computer

STB

IGMPRouter

Digital and Analog

Receivers

MPEG Encoders

AppsServers

IGMP DSLAM

VideoServers

OtherContentSources

VoIP

Subscriber presses channel numberThe IP set-top box

accepts the channel request command

and sends this instruction in the form

of an IGMP join request to the

DSLAM.

IGMP JOIN

DSLAM examines 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.

IGMP JOIN

Router examines the request to see if the requested channel

already exists at one of its ports. If this is the case, then the Router

simply copies the stream and sends to the requesting device

If the requested channel is not available in the Router, the request is sent to the upstream routers.

IGMP JOIN

Video Stream

The request for the channel finally ends up at the IPTV data center

where all broadcast channels are available. 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.

Page 26: Protocols in IPTV

04/08/23

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.

Page 27: Protocols in IPTV

04/08/23

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.

Page 28: Protocols in IPTV

04/08/23

Typical IPTV System: Change of channel

TransportHeadend Access Home

TransportNetwork xDSL CPE/

FTTH

Computer

STB

IGMPRouter

Digital and Analog

Receivers

MPEG Encoders

AppsServers

IGMP DSLAM

VideoServers

OtherContentSources

VoIP

Subscriber changes channel number

IGMP JOIN

Video Stream

IGMP LEAVE

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.

Page 29: Protocols in IPTV

04/08/23

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.

Page 30: Protocols in IPTV

04/08/23

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.

Page 31: Protocols in IPTV

04/08/23

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.

Page 32: Protocols in IPTV

04/08/23

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

T2 T2

T1

PC PC

Multicast TVMulticast TV

TVTV

IGMP JOIN

PC

BNG

SETTOP BOX

ADSL MODEM

Video Server

Page 33: Protocols in IPTV

04/08/23

Time-shift TV

Page 34: Protocols in IPTV

04/08/23

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.

Page 35: Protocols in IPTV

04/08/23

Example:RTSP with UDP-Based RTP DeliveryDESCRIBE rtsp://192.168.1.25:554/mpeg4/movies/3idiots.mpgRTSP/1.0CSec: 101Accept: application/sdp

RTSP/1.0 200 OKCSec: 101Content-Base: rtsp://192.168.1.25:554/mpeg4/movies/3idiots.mpgContent-Type: application/sdpContent-Length: 320<SDP Data..........>

OPTIONS rtsp://192.168.1.25:554/mpeg4/movies/3idiots.mpgCSec: 102

RTSP/1.0 200 OKCSec: 102Public: DESCRIBE, OPTIONS, PAUSE, PLAY, SETUP, TEARDOWN, ANNOUNCE

SETUP rtsp://192.168.1.25:554/mpeg4/movies/3idiots.mpgCSeq: 103Transport: RTP/UDP;unicast;client_port=4042-4043

RTSP/1.0 200 OKCSeq: 103Session: 1234567891;timeout=10Transport: RTP/UDP;unicast;mode=play; client_port=4042-4043;server_port=5072-5073

PLAY rtsp://192.168.1.25:554/mpeg4/movies/3idiots.mpgRTSP/1.0CSeq: 104Session: 1234567891

RTSP/1.0 200 OKCSeq: 104Session: 1234567891

PAUSE rtsp://192.168.1.25:554/mpeg4/movies/3idiots.mpgCSeq: 105Session: 1234567891

RTSP/1.0 200

OKCSeq: 105

Session:

1234567891

TEARDOWN rtsp://192.168.1.25:554/mpeg4/movies/3idiots.mpgRTSP/1.0CSeq: 106Session: 1234567891RTSP/1.0 200

OKCSeq: 106Session: 1234567891

Page 36: Protocols in IPTV

04/08/23

Thank You!