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.
