Configuring IP Multicast
IP multicast

Multimedia applications offer the integration of sound, graphics, animation, text, and video, which are all delivered over IP and an existing Campus infrastructure. These types of applications have become an effective means of corporate communication; however, sending combined media over a campus data network brings with it the potential for high bandwidth consumption. IP Multicast is an efficient means of delivering media to many hosts over a single IP flow.

Multimedia traffic can work its way through the network in one of several ways.

Unicast
An application sends one copy of each packet to every client unicast address requiring the multimedia flow. If the group is large, the same information is carried multiple times from sender to receiver. Unicast transmission has significant scaling restrictions.

Broadcast
An application sends one copy of each packet to a destination broadcast address. The network interface card of all hosts seeing the broadcast packets must process all broadcast packets. This is inefficient if only a small group in the network actually needs the data flow. Multimedia broadcast is rarely implemented.

Multicast
A multimedia server sends one copy of each packet to a single destination IP address that can be received by many end stations if they choose to "listen" on that address. In the figure , the video server transmits a single video stream to a set of host devices listening to a specific multicast address. Only 1.5 Mbps of server-to-network bandwidth is utilized regardless of the number of receiving hosts.

Multicasting conserves bandwidth by replicating packets only onto segments where listening devices exist, allowing an arbitrary number of clients to subscribe to the multicast address. Multicast flows minimize processing required by network devices and non-listening hosts.

IP Multicast is the transmission of an IP data frame to a host group that is defined by a single IP Multicast address. IP Multicasting has these characteristics:

  • Delivers a multicast datagram to a destination multicast address (also known as a multicast group) with the same best-effort reliability as a regular unicast IP datagram
  • Allows group members to join and leave dynamically
  • Supports all host groups regardless of the location or number of members
  • Supports the membership of a single host in one or more multicast groups
  • Can carry multiple data streams to a single group address
  • Can use a single group address for multiple host applications
  • Multicast server does not keep track of the number of recipients

In IP multicasting, the variability in delivery time is limited to the differences in end-to-end network delay along the complete server-to-client path. In a unicast scenario, the server must sequence transmission of multiple copies of the data to multiple unicast hosts, so variability in delivery time is large, especially for large transmissions or large distribution lists.

Multicast traffic is handled at the transport layer using the User Datagram Protocol (UDP). Unlike the Transmission Control Protocol (TCP), UDP adds no reliability, flow control, or error recovery functions to IP. Because of the simplicity of UDP, data packet headers contain fewer bytes and consume less network overhead than TCP. Therefore, reliability in multicast is managed by observing receivers and monitoring the networks ability to deliver the multicast packets in sequence without delay.

IP Multicast Group Membership
IP multicast relies on the concept of group members and a group address. The group address is a single IP Multicast address that is the destination address of all packets sent from a source. Receiving devices join that group and listen for packets with the destination IP address of the group. In normal TCP/IP operations, packets arrive at a destination address by traversing routers that forward the packets on a hop-by-hop basis based on the IP destination of the packet and entries in the routing table. Routers do not forward traffic in this manner to multicast destination addresses.

By default, multicast traffic is blocked at the Layer 3 devices, as is the case with broadcast traffic. Routers between a multicast source and its receiving hosts must be configured with a multicast protocol that will determine where the receivers exist so that the flow is sent only onto segments with receivers and is not replicated onto segments with no group members listening for that flow. Receivers join a group by registering with a local router. The routers between the source and receiver must be configured to deliver the multicast stream from the source to all segments hosting devices that have joined the group. Once a receiver joins a group, packets addressed to that group are placed onto the segment where the receivers are located and multiple group members can receive a single flow. PIM and IGMP are multicast protocols that keep multicast traffic isolated to portions of the network where group members are located.

A single device can be a source for one flow and be a group member or receiver for a second flow. In the figure, two flows are arriving at group members 1 and 2. One flow comes from the device on the top, which is a source for the stream. This is represented by the dark arrows. A second flow from the device on the right is represented by the pale arrows. For the first flow, the device on the top of the figure is a source, but for the second flow, it is a group member listening to the flow from the device on the right. Group members 1 and 2 are listeners or group members for both flows, therefore sending no multicast packets.