introduction to multicast multimedia delivery for internet broadcasters
DESCRIPTION
Guide for using Multicast networking for multimedia content delivery.TRANSCRIPT
![Page 1: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/1.jpg)
Introduction To MulticastMultimedia Delivery For
Internet Broadcasters
Written By
David Childers
![Page 2: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/2.jpg)
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
![Page 3: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/3.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 EraTurre Publishing
Research On High-Profile Digital Video ProductionDigital Content Association of Japan
Video Podcasting in Perspective: The History, Technology, Aesthetics and Instructional Uses of a New MediumJournal of Educational Technology Systems
Video Podcasting: When, Where and How it's Currently used for InstructionThe National Convention of the Association for Educational Communications and Technology
IP Packet Charging Model For Multimedia ServicesNational University of Rwanda
Preservation of audiovisual mediums: Problems and challengesPlatform for Archiving and Preservation of Art on Electronic and Digital Media
P2P Technology Trend and Application to Home NetworkElectronics and Telecommunications Research Institute Journal
Peer To Peer Computing - The Evolution of a Disruptive TechnologyIdea Group Publishing
Peer-to-Peer Systems and ApplicationsLecture Notes In Computer ScienceSpringer Berlin / Heidelberg
Mr. Childers has also written several guides including:
- Guide To Cyber Security
- Introduction To Broadcast Station Imaging
- Linux Applications For Internet Broadcasters
- How To Mobilize Your Broadcast Audience
- Introduction To Creative Commons Licensing For Broadcasters
- Media Server Security Guide
- Basic Internet Video Production Guide
- SHOUTcast Streaming - Best of Technical Support
- SHOUTcast Audio And Video Streaming Guide
- Streaming Media Handbook
- Icecast Streaming Handbook
- Search Engine Optimization Guide
- Internet Broadcast Promotion Handbook
- Internet Broadcast Revenue Handbook
- Guide For Creating Effective Internet Audio Commercials
- Broadcasters Social Media Guide
- Broadcasters Guide For Creating An Effective Media Kit
- Broadcasters Guide For Creating An Effective Newsletter
- Broadcaster Website Development Guide
- Broadcasters Guide To Understanding Your Audience
These guides can be read or downloaded FOR FREE at the Colossus Facebook publication page located here:www.facebook.com/pages/Colossus/127135787300504
![Page 4: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/4.jpg)
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
![Page 5: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/5.jpg)
Index
- Introduction
- Theory
- Requirements
- Data Structure
- Data Control
- Data Routing
- Error Correction
- Stream Announcements
- Software
- Virtual Private Networks
- Additional Information
![Page 6: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/6.jpg)
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.
![Page 7: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/7.jpg)
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 DestinationSource 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
![Page 8: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/8.jpg)
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.
![Page 9: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/9.jpg)
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
![Page 10: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/10.jpg)
Data Control
Multicast requires specialized data control to provide content synchronization and multimedia broadcast support.
Real Time Transport Protocol
RTP 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 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.
![Page 11: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/11.jpg)
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 is 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 is 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 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 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.
![Page 12: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/12.jpg)
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
ABC DEF 001
Primary Redundant Error CorrectionData Data Code
Third Data Packet
HIG JKL 003
Primary Redundant Error CorrectionData Data Code
Second Data Packet
DEF HIG 002
Primary Redundant Error CorrectionData Data Code
Fourth Data Packet
JKL MNO 004
Primary Redundant Error CorrectionData 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/
![Page 13: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/13.jpg)
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.
![Page 14: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/14.jpg)
Software
Multicast enabled reception and broadcast software
VLCwww.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
![Page 15: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/15.jpg)
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
![Page 16: Introduction To Multicast Multimedia Delivery For Internet Broadcasters](https://reader035.vdocuments.net/reader035/viewer/2022081811/544e9ee5b1af9f2f638b506c/html5/thumbnails/16.jpg)
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