CMU Campus Multicast Environment


 

Brief Introduction to Multicast

This document is intended to briefly explain multicast. There are links at the end that lead to more technical documentation.

What is Multicast?

Multicast is a technology that allows many people to share a video/audio stream without having to have a point-to-point (or client-server) connection for each participant. This model is known as unicast. Many streaming clients are unicast, requiring a separate stream for each participant. Unicast streams create more of a load on the server. Additionally, if there are more than 1 client at a site, then the load increases on the network. This increase in load can be substantial.

Why use Multicast?

Multicast makes the most of the network. In many cases, a "server" is not needed or utilized. A "source" can be a PC, for instance. The source need only send out one stream. If clients share a network, they will share the stream. The distribution is a tree structure - normally only going where there are clients (this is called sparse-mode, which is the most widely distributed mode deployed).

What's out there?

There are is amazing amount data being transmitted via multicast streams. The content varies from test-sessions, audio-only broadcast, music broadcasts, technology conferences, to NASA videos and NASA streams from space. There are Internet "Video Jukeboxes" and privately and commercially hosted radio streams.

To see what's available at any given time, you need a session directory tool (called a Program Guide in certain client software). This will list all of the streams that have been formally announced. These announcements contain mandatory and optional information. There are also streams that you can't see in the session directory listing. It is possible to view these streams, but you would need to know how to join them from other sources.

Where can I get the client applications?

IPTV Viewer:

IPTV is a Cisco product and is a complete utility, meaning that it comes with a Program Guide and the tools to receive audio and video. IPTV supports many different types of video streams. Through our affiliation with Abilene, we can get the IPTV client for free. This can be downloaded from the University of Oregon. This currently works under Windows only.

MacTV

Another product that works great out of the box. Only for the Mac.

"Standard" Utilities:

There are utilities that predate the World Wide Web. These tools were initially developed for UNIX operating systems. They are currently being developed and supported by the UCL Networked Multimedia Research Group at University College London. Minimally, you need the session directory, and audio tool, and a video tool. Our recommendations are sdr, rat and vic. To see if your platform is supported, look at their grid. vic does not support all video streams, although there is other available software that does. There are no versions currently available for the Mac, but source code is available. To see what the various applications look like, go here.

Be sure to install all the utilities in the same directory on your machine. Once installed, start up sdr. It will begin populating with sessions:

If you right-click on a session listing, you can view information about the session. If you left click, vic and rat should start up (assuming all is installed correctly). If there are problems with the installation, please refer to the installation instructions supplied with the software.

What do I do if I don't see any sessions?

If your session directory tool doesn't populate with active sessions, multicast may not be enabled, or your host may be having problems. It sometimes takes up to 15 minutes to populate the session directory with all of the session announcements. If still no sessions appear, please contact Shirl at sgg@cmu.edu.


Want to learn more?

If you want to learn more about the technology, here are some good places to start:

·        NLANR/NCNE’s Multicast Documentation

·        Cisco’s Multicast Overview

·        Onet’s Brief Overview of IP Multicast

·        Vbrick’s Introduction to Multicast

·        Ncast’s Recasting Multicast