You are on page 1of 5

Optibase White Paper

Internet Group Management Protocol

Introduction 2
Why not use IP Broadcast or Unicast? 2
IP Multicasting over IGMP – The most Efficient Way to Stream Rich Media 3

By Arthur Rabinowitz, Networking Support Engineer


Copyright Information
The contents of this publication may not be reproduced in any form by any means, in part or in whole, without the prior
written permission of the publisher. The authors and publisher make no warranty of any kind with regard to this
material, including, but not limited to, the implied warranties of merchantability and fitness for any particular purpose.
Neither shall the authors or publisher be liable for any errors contained herein or for incidental or consequential
damages in connection with the furnishing or use of this material. The information herein is subject to change without
notice.
Introduction

Streaming video over the broadband Internet and IP networks can be costly in terms of bandwidth
and networking resources. IP multicasting, based on the IGMP protocol, is designed to make video
streaming as efficient as possible. The following paper describes IP multicasting based on IGMP.
IGMP (Internet Group Management Protocol) is how IP Multicasts are enabled on an IP network.
IGMP allows broadcasters or webcasters to send content to a large number of subscribers
effectively without choking the network, because traffic is sent only to a Group Destination
Address (GDA). Clients use IGMP to register themselves as receivers of certain Multicast
Groups. Through IGMP, clients can announce their willingness to join, accept, or leave, Multicast
streaming from the multicast group. Clients may join and leave the group at will. Only receivers
that are registered to a specific GDA are influenced by the multicast traffic, which generally has
no impact on other hosts using the network.

Why not use IP Broadcast or Unicast?

Were webcasters or broadcasters to stream content as an IP broadcast, every host on the network,
even those that don’t want or need the information, would still have to process it. IP broadcasts
are handled on each host as a Level III event, in its own broadcast domain. Thus, every event
involves the CPU of the receiving hosts, forcing these to process unnecessary information.
Another problem associated with IP broadcasts is that not all routers support this type of
transmission. As a result many clients are unable to receive content.

One way of solving the lack of router support for IP broadcasts is by transmitting a Unicast
stream. When using Unicast, a copy of the same content is sent to everyone on the network.
Although this method solves the problem of broadcasts that do not cross routers, it creates a
serious bandwidth problem. Networks, unlike radio or RF domains, have a limited amount of
available bandwidth. It is therefore important to ensure that the network is used efficiently and
that transmissions take up only the bandwidth needed. Some applications, such as video-on-
demand, which do not share networking resources with other services, use the Multiple Unicast to
distribute content.
IP Multicasting over IGMP – The most Efficient Way to Stream Rich Media

IP multicasting is the most efficient way to stream rich media over networks. In IP multicasting,
everyone who wants to get the content can receive it while the network itself manages the groups
of receivers and clients. To implement IP multicastng, the network must be Multicast aware of
when and where the stream is duplicated. When using the IGMP protocol, a transmitter sends a
stream and additional messages to the router closest to it or to the router that is located on the
same SUBNET. Upon receiving the information, the router creates a GDA (Group Destination
Address) that is defined by a particular Class D IP Address. (Class D IP addresses range from
224.0.0.0 to 239.255.255.255). The router then checks to see if there are any clients for this
group. If there are no clients, the router drops each packet that it receives from the transmitter
without sending them anywhere.

Route r Route r Other


Multica st se rve r
Network

I am s ta rting
M ulticas t fro m
227.2.4.66:12345
Route r

Route r
Route r

Route r

Ne tw ork A

Route r
Route r
Ne tw ork B
Ne tw ork
C

Figure 1

If however, a client - even if located on a remote network – wants to receive the stream, several
things happen;
• First the receiver sends a dedicated Multicast IP address (to which all Multicast enabled
routers listen) to all routers on its subnet, stating that it wishes to join a multicast group.

• If the router on the subnet recognized the group, it begins to release packets to the
requesting receiver. If the router, however, does not recognize the IGMP group, it sends
out messages and begins to search for the group.

• By communicating with other routers, the router to which the original request was made,
is able to find the multicast group. Routers communicate with each other through
“routing” protocols such as MOSPF and DVMRP, that have been adapted for IGMP use.

• When the multicast group is found, the other router along the way acts as the “source”
router, either releasing or duplicating the stream.

I want to rece ive


M ulticas t fro m
227.2.4.66:12345

Route r Route r Other


M ultica st se rve r
Some one wa nts Network
M ulticas t 227.2.4.66:12345
I am sta rting I will s top dro pping
M ulticast fro m and s tart s e nding
227.2.4.66:12345
Route r

Route r
Route r

W he re is Route r
M ulticas t
227.2.4.66:12345
Ne tw ork A

Route r
Route r
I want to rece ive
Ne tw ork B
M ulticas t fro m
Ne tw ork
227.2.4.66:12345
C

Figure 2: Conserving Bandwidth by Using IGMP

The above diagram shows how IGMP conserves bandwidth. The remote receiver in Network A is
receiving a stream from the first router after the source router. This router, which is IGMP version
2 enabled, duplicates the stream at the point where the stream needs to be duplicated and not at
the source router, thus conserving bandwidth.
The IGMP version is use today is version 2. The major difference between IGMP version 1 and
version 2 is in how clients are dropped from multicast groups. IGMP version 1 specified that
routers would continue to release the stream to the receiver for a number of minutes, even after
the receiver had ceased t listening to the stream. In IGMP version 1, receivers couldn’t tell routers
when they wanted to stop receiving the stream. IGMP version 2 lets receivers send a message
telling the router to stop releasing packets if there are no other receivers present. In this way
version 2 enhances bandwidth conservation over version 1.