You are on page 1of 16

Introduction To Multicast

Multimedia Delivery For


Internet Broadcasters

Written By

David Childers
Creative Common License

This body of work is released under the Attribution-ShareAlike version 3.0, Creative Common License.

The work may be freely distributed or modified for commercial or non commercial purposes.

If this work is modified, compliance with the Attribution-ShareAlike version 3.0, Creative Common License is required.

These requirements include:

- Any derivatives of this work must be attributed to David Childers.


- Any derivatives of this work must reference any additional sources that may be used.
- Alterations, transforming, or building upon this work requires distributing the resulting work only under the same,
similar or a compatible license.

For the complete legal code, please refer here:


www.creativecommons.org/licenses/by-sa/3.0/legalcode

Cover graphic - Tango Applications Internet, Public Domain image.


www.openclipart.org/detail/35389/tango-applications-internet-by-warszawianka

Foreword graphic - Philippe de Champaigne - Still Life with a Skull, Public Domain image.
en.wikipedia.org/wiki/File:StillLifeWithASkull.jpg
About The Author

David Childers is the Content Manager and Senior Editor for the International Broadcasting portal
www.BroadcastingWorld.net. He is also the webmaster of the SHOUTcast video streaming information resource,
www.scvi.net. He is very active in the Internet broadcast industry.

Mr. Childers' work has been cited in several national and International publications, such as:

Five Essays on Copyright In the Digital Era


Turre Publishing

Research On High-Profile Digital Video Production


Digital Content Association of Japan

Video Podcasting in Perspective: The History, Technology, Aesthetics and Instructional Uses of a New Medium
Journal of Educational Technology Systems

Video Podcasting: When, Where and How it's Currently used for Instruction
The National Convention of the Association for Educational Communications and Technology

IP Packet Charging Model For Multimedia Services


National University of Rwanda

Preservation of audiovisual mediums: Problems and challenges


Platform for Archiving and Preservation of Art on Electronic and Digital Media

P2P Technology Trend and Application to Home Network


Electronics and Telecommunications Research Institute Journal

Peer To Peer Computing - The Evolution of a Disruptive Technology


Idea Group Publishing

Peer-to-Peer Systems and Applications


Lecture Notes In Computer Science
Springer Berlin / Heidelberg

Mr. Childers has also written several guides including:

- Guide To Cyber Security - Icecast Streaming Handbook

- Introduction To Broadcast Station Imaging - Search Engine Optimization Guide

- Linux Applications For Internet Broadcasters - Internet Broadcast Promotion Handbook

- How To Mobilize Your Broadcast Audience - Internet Broadcast Revenue Handbook

- Introduction To Creative Commons Licensing For - Guide For Creating Effective Internet Audio Commercials
Broadcasters
- Broadcasters Social Media Guide
- Media Server Security Guide
- Broadcasters Guide For Creating An Effective Media Kit
- Basic Internet Video Production Guide
- Broadcasters Guide For Creating An Effective Newsletter
- SHOUTcast Streaming - Best of Technical Support
- Broadcaster Website Development Guide
- SHOUTcast Audio And Video Streaming Guide
- Broadcasters Guide To Understanding Your Audience
- Streaming Media Handbook

These guides can be read or downloaded FOR FREE at the Colossus Facebook publication page located here:
www.facebook.com/pages/Colossus/127135787300504
Foreword

Greetings once again.

The use of alternative technology can greatly assist with the delivery of large amounts of multimedia data. This can
be achieved at substantial resource and monetary savings without using software that is prone to causing computer
security issues or carrying the specter of litigation.

The musical inspiration for this guide is Tomaso Albinoni - Adagio G Minor.

I would like to thank Scarlet Coker for providing assistance with the editing of the manuscript and James Davey at
Broadcasting World for allowing me the opportunity to create this guide.

It is my sincere hope that the reader finds this guide beneficial.

David Childers
www.scvi.net

June 2012

Posveèeno Neži Vidmar.

Non Est Ad Astra Mollis E Terris Via.

Technology makes it possible for people to gain control over everything, except over technology.

John Tudor
Index

- Introduction

- Theory

- Requirements

- Data Structure

- Data Control

- Data Routing

- Error Correction

- Stream Announcements

- Software

- Virtual Private Networks

- Additional Information
Introduction

Multicast provides very efficient use of network resources for the delivery of data to multiple clients and is used
extensively in Europe and Asia. This technology is also being rapidly deployed in South America as a sustainable
resource for data delivery. Multicast can be used to broadcast live multimedia, which can consist of either audio or
video content.

Some notable events of multicast broadcasting include:

March 1992 - The Internet Engineering Task Force conference was broadcast using multicast.

Early 1993 - The multicast radio station Radio Free VAT, was started by Dave Hayesat.

March 1993 - Carl Malamud creates Internet talk radio using multicast broadcasting.

June 1993 – The first live performance by a band, Severe Tire Damage, was broadcast using multicast.

November 1994 - A Rolling Stones concert in Dallas, Texas was broadcast using multicast.

May 1996 – First Internet broadcast of the Cannes film festival using multicast.

October 2001 – University of Oregon provides multicast broadcast relay of NASA television.

April 2004 - GWR Radio is the first station in the UK to continuously broadcast live audio using multicast.

June 2004 – BBC provides live coverage of the World Olympics using multicast.

September 2004 – BBC provides regular radio and television multicast broadcast.
Theory

The concept of multicast networking was first proposed by Steve Deering in his 1988 Ph.D. dissertation.

Multicast

This technology provides the ability to deliver data from a single source to multiple destinations. This is achieved
without the need for a centralized data server or requiring a data connection for each individual destination. Network
hardware duplicates the data throughout the network. This allows the delivery of content using a single data
connection, which provides very efficient use of network resources.

Destination Destination
Source O ------------> O ------------> O ------------> O ------------> O
Destination Destination

Unicast

This technology is commonly used for Internet broadcasting. This method requires a central data server to deliver
content using multiple server/ client connections. Each client requesting data must be provided with its own data
communication connection. This method of content delivery is very inefficient and requires substantial hardware and
bandwidth resources.

Destination
/|\
|
|
|
|
Destination <------------- O -------------> Destination
/|
/|
Source / |
|
\|/
Destination

Multicast networking uses class D IP addresses which consists of the following address ranges:

IPv4

224.0.0.0 to 239.255.255.255

IPv6

FF00:0000:0000:0000:0000:0000:0000:0000 to FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
Requirements
(Broadcasting and Receiving)

- Access to a network that supports multicasting.

OR

- Access to a virtual private network that supports multicasting.

- Operating system that supports multicasting.

- Ability to run multicast routing daemon.

- Bandwidth to support multicast broadcast content.

- Network hardware must be multicast enabled.

Note

- It is important to use the appropriate routing daemon for the specific type of network topology used.

* Tree.

* Mesh.

- It is important to configure the routing daemon to link with the multicast network using the correct hardware.

* Ethernet connection.

* Wireless connection.

* Port number.
Data Structure

Multicast data delivery requires a specialized data structure to allow it to function.

Transmission Control Protocol (TCP)

TCP is not suitable for multicast network support, due to the need for exchanging control dialogue between the data
sender and receiver. The primary focus of TCP is to provide data integrity, reliability of delivery, and quality of service,
which requires the constant exchange of information.

Example TCP communication flow

-------------------------->
O Sender O Receiver
<--------------------------

User Datagram Protocol (UDP)

UDP is ideal for multicast data delivery. It uses a delivery method that does not require the exchange of control
dialogue between the data sender and receiver. The lack of exchanging control information does come at a cost
however. There is no guarantee that the data will be delivered without the verification of data that is exchanged
between the sender and the receiver using TCP. UDP is commonly referred to as the “Send and Pray” protocol, due to
the protocols inability to provide data delivery guarantee.

Example UDP communication flow

-------------------------->
O Sender O Receiver
Data Control

Multicast requires specialized data control to provide content synchronization and multimedia broadcast support.

Real Time Transport Protocol (RTP)

This is a control method designed for the delivery of multimedia over data networks. It provides detection and
organization of data that is out of sequence, however it does not provide quality of service for the data being sent.

Real Time Streaming Protocol (RTSP)

This is a control method designed to provide functionality to Internet broadcast content. It provides the ability to play
or pause multimedia data that is being broadcast.

RTP and RTSP are used together to provide ease of use for broadcast multimedia content.
Data Routing

Multicast requires specialized network routing to allow the distribution of data without the need for a centralized server
or requiring multiple data transmissions.

Protocol Independent Multicast (PIM)

These are a group of multicast routing protocols used to control the distribution of data. They do not include the ability
to acquire network composition. They use network topology information that is provided by other network routing
methods.

There are four PIM modes:

- Sparse Mode (SM)


- Dense Mode (DM)
- Source Specific Multicast (SSM)
- Bi Directional.

Sparse Mode (SM) is generally the most efficient mode for delivering data over a wide geographic network. It
constructs an organized distribution tree within a multicast group.

Internet Group Management Protocol (IGMP)

This protocol allows a network hardware device to indicate if it wants to participate in a multicast group.

IGMP Snooping (*)

This is a IPv4 multicast process that allows network hardware to identify members of a multicast group that want to
receive multicast packets. Members of a group that do not wish to participate can be filtered from the links.

Multicast Listener Discovery (MLD) (*)

This is a IPv6 multicast process that allows network hardware to identify members of a multicast group that want to
receive multicast packets. Members of a group that do not wish to participate can be filtered from the links. This is
very similar to IGMP Snooping for IPv4 networks.

(*) Note

Both IGMP snooping and MLD are designed to stop data from being received by members of a multicast group that do
not wish to participate.

Distance Vector Multicast Routing Protocol (DVMRP)

This protocol allows a network device to receive data from the network and forward it through each subscribed
network device within a multicast network. A "prune message" is sent If a network device does not wish to subscribe
to a multicast group. This message removes the network device from receiving data from the multicast group.

DVMRP has difficulties with network scaling and is best used in small network environments. It must periodically re
flood a network to detect new hosts which makes it a very inefficient and problematic protocol.

IGMP Proxy

This is a simple multicast routing method that uses Internet Group Management Protocol (IGMP) information to
dynamically route multicast data. IGMP proxies do not require multicast routing protocols to function, such as Protocol
Independent Multicast (PIM) or Distance Vector Multicast Routing Protocol (DVMRP). This method is limited to a tree
network topology, since no routing protocol is used.
Error Correction

These are experimental features that are intended to provide a quality of service ability for multicast data delivery.

Forward Error Correction

This is a method for controlling errors of data being sent using unreliable communications methods, such as multicast.
Data is redundantly encoded using an Error Correcting Code which enables the detection of errors that may occur in a
data transmission. This process allows any errors to be corrected without the need to re transmit data.

Example

First Data Packet Third Data Packet

ABC DEF 001 HIG JKL 003

Primary Redundant Error Correction Primary Redundant Error Correction


Data Data Code Data Data Code

Second Data Packet Fourth Data Packet

DEF HIG 002 JKL MNO 004

Primary Redundant Error Correction Primary Redundant Error Correction


Data Data Code Data Data Code

If the second data packet is “lost” from the example above, the Error Correction Code will indicate to use the
redundant data DEF from the first packet.

If the third data packet is “lost” from the example above, the Error Correction Code will indicate to use the redundant
data HIG from the second packet.

And so on.

IETF FEC documentation

RFC 2733
An RTP Payload Format for Generic Forward Error Correction.

RFC 5109
RTP Payload Format for Generic Forward Error Correction.

FEC software implementations

VLC

RTP streaming with FEC protection.


forum.videolan.org/viewtopic.php?f=4&t=95636

Forward Error Correction multicast streaming.


trac.videolan.org/vlc/ticket/820

SMPTE 2022

The Society of Motion Picture and Television Engineers introduced a standard known as SMPTE 2022. This standard
describes a Forward Error Correction method that provides a method for real time RTP multimedia distribution.

SMPTE 2022 software implementation

VLC

SMPTE-2022 lib in C for VLC and other's.


smpte-2022lib.sourceforge.net/
Stream Announcements

Broadcasters have the ability to transmit public announcements on multicast enabled networks to advertise their
content. This is achieved using the Session Announcement Protocol (SAP). This is a format designed for describing
streaming media parameters and is similar to the Shoutcast station directory which lists all known broadcasters using
Shoutcast.

Some of the information contained in a SAP announcement include:

- Type of multimedia broadcast (audio/ video).


- Bitrate of multimedia broadcast.
- URL of multimedia broadcast.

You must be connected to a multicast enabled network to view SAP announcements.

SAP announcements can be viewed using the VLC software.


www.videolan.org

Viewing SAP announcements with VLC

Open VLC software (For version 2.01)

- Click View tab. (Top of player.)

- Click Playlist tab. (Top of list.)

- Click Local Network. (Left side of player – underneath Playslist.)

- Scroll down on Local Network list.

- Find Network streams (SAP).

- Click Network streams (SAP).

- Find an SAP announcement you wish to view / listen to.

- Right click on the announcement and select play.


Software

Multicast enabled reception and broadcast software

VLC
www.videolan.org

Multicast Routing Daemons

IPV4

Pimd

Network routing application that uses Protocol Independent Multicast - Sparse Mode.

github.com/troglobit/pimd

github.com/troglobit/pimd#readme

SMCRoute
(IPv4 and IPv6)

Network routing application that can be used as an alternative to dynamic multicast routers like mrouted or pimd
where static multicast routes should be maintained.

github.com/troglobit/smcroute

github.com/troglobit/smcroute#readme

Mrouted

Network application that uses Distance Vector Multicast Routing Protocol.

www.github.com/troglobit/mrouted

github.com/troglobit/mrouted#readme

IGMP Proxy

Dynamic network routing application.

sourceforge.net/projects/igmpproxy/

IPV6

ECMH (Easy Cast du Multi Hub)

Network routing application that allows IPv6 multicast to be used without the need for Protocol Independent Multicast.

www.unfix.org/projects/ecmh/

MRD6

Network routing application.

www.fivebits.net/proj/mrd6

www-x.antd.nist.gov/ipv6/mrd6.html

SMCRoute
(IPv4 and IPv6)

Network routing application that can be used as an alternative to dynamic multicast routers like mrouted or pimd
where static multicast routes should be maintained.

github.com/troglobit/smcroute

github.com/troglobit/mrouted#readme
Virtual Private Network

For multicast data delivery to work, all network hardware devices must be configured to support multicast. The ability
to configure network hardware may present a problem on lease networks or for service providers that do not support
multicast networking. A Virtual Private Network can create a dynamic virtual network that does not require network
hardware configuration to support multicast. This method allows both class D multicast addressing and multicast
routing.

N2N

This is a software application that builds a virtual ethernet network between multiple computers that uses a full mesh
topology. All nodes talk directly to each other, and there is no need for a central server.

www.ntop.org/products/n2n/

Current development branch of the n2n p2p vpn software

github.com/meyerd/n2n

Jn2n

A simple Java desktop application providing a graphical interface for n2n.

code.google.com/p/jn2n/

Free n2n supernode

n2n v2 supernode: IP: 88.86.108.50 port: 86

n2n v1 supernode: IP: 88.86.108.50 port: 82

www.vpnhosting.cz/wiki/index.php/N2n_Gui_En#Frequently_asked_questions

PeerVPN - the open source Peer to Peer VPN

This is a software application that builds a virtual ethernet network between multiple computers that uses a full mesh
topology. All nodes talk directly to each other, and there is no need for a central server.

www.peervpn.net
Additional Information

MBONE: Multicasting Tomorrow's Internet

A book about the multicasting backbone and the future of multimedia on the Internet
Copyright 1996, 1998 by Kevin Savetz, Neil Randall, and Yves Lepage.

This site contains the full text of our book, MBONE: Multicasting Tomorrow's Internet. This book was published by IDG in
April 1996 and is now out of print. We are putting the book on the Web in its entirety in the hope that someone will find
it useful. However, we have not updated the material since we wrote it, and don't intend to do so.

www.savetz.com/mbone/

You can view broadcast both audio and video using VLC

wiki.videolan.org/Documentation:Streaming_HowTo_New

wiki.videolan.org/Documentation:Streaming_HowTo

You might also like