How IP Multicasting Works

Three improtant procedures in multicasting.

Tao Zhou

April 30, 1997

4 Min Read
ITPro Today logo in a gray background | ITPro Today

Three procedures are important in IP multicasting: how to join amulticast group, how to map an IP multicast address to a hardware address, andhow to forward multicast data. Let's use a CEO audio conference to explain howIP multicasting works. Figure A shows the Ethernet network layout for theconference. Computers CEO, A, C, and F participate in this audio conference.

The unique IP multicast address for the audio conferencing application is239.100.200.30. This address represents the multicast group that includescomputers CEO, A, C, and F. The four computers join the conference by specifyingthe same IP multicast address, 239.100.200.30, in the application. They becomemembers of the same multicast group when they start the application. Membershipin the group is dynamic. A computer can be at any location on the network, canjoin and leave a group at any time, and can be a member of several multicastgroups.

When a source host sends IP data to a destination host in an IP network,the source host must resolve the destination host's IP address to its hardwareaddress so that the data can move through the ISO/OSI model's two lowest layers,the data link and physical layers. IP multicasting follows this principle, too,but the big difference is that the destination hardware address identifies agroup of hosts that participate in the multicast application; the destinationhardware address is not a physical address of any machine. A source host in themulticast group sends data to this address. A group of destination hosts listento this address to receive data.

IGMP's rule for mapping an IP multicast address to an Ethernet multicastaddress is that you place the low-order 23 bits of the IP multicast address intothe low-order 23 bits of a special 48-bit Ethernet address, 01.00.5E.00.00.00.Therefore, IP multicast address 239.100.200.30 maps to the Ethernet address 01.00.5E.64.D8.1E. In Figure A, computers A, C, and F listen to the address01.00.5E.64.D8.1E and receive the audio stream that computer CEO sends to thataddress. Computer G in Figure A listens to the Ethernet address01.00.5E.64.D8.1E, too, because the IP address 238.100.200.30 that computer Ghas joined maps to the same Ethernet address. Only 23 bits of 28 definable bitsof an IP multicast address go into the Ethernet multicast address, so 32different IP multicast addresses can map to the same Ethernet address.

IGMP requires that IP software be intelligent enough to tell whether thecomputer wants the multicast data it receives. If the computer doesn't want thedata, it quietly discards the data. Computer G receives the audio, finds theaudio is not what it wants, then discards the audio. To save processor cycles,don't use IP multicast addresses that map to the same Ethernet address on thesame network. An easy way to avoid using those addresses is to standardize onthe first two dotted decimal numbers of IP multicast addresses in your network­239.100.0.0,for example. If you standardize on these numbers, you will have 65,536 IPmulticast addresses that will not map to the same Ethernet address; 65,536 IPapplications are unlikely to run on a network at the same time.

IGMP doesn't define how to map an IP multicast address to a hardwareaddress other than Ethernet addresses. According to IGMP, however, theprocedures for Ethernet work for any networks that conform to IEEE 802.2.

Router 1 and router 2 in Figure A are multicast-aware routers supportingIGMP. A multicast router forwards multicast data to only its immediatelyattached subnets that contain computers participating in a specific multicastgroup. To forward data to only these specific computers, IGMP requires that themulticast router keep track of the group membership status of computers on itsimmediately attached subnets: IGMP periodically queries whether theseneighboring computers are still active in a group.

In the example, router 1 knows that computer C in sub-net 3 is in the group239.100.200.30, so router 1 forwards the audio to subnet 3 but not subnet 2because computer B is not in the multicast group. Similarly, router 2 knows thatcomputer F in subnet 5 is in the group 239.100.200.30, so router 2 forwards theaudio to subnet 5 but not subnet 4 because computer E is in a differentmulticast group. When the CEO audio travels on subnet 3, it passes by computerD, because computer D is not interested in the audio and its network interfacecard filters out the audio.

IGMP doesn't define specifications for IP multicast routing protocols thatfind an optimal path to forward multicast data from a source to a group ofdestination hosts. Three major multicast routing protocols are Distance VectorMulticast Routing Protocol (DVMRP), Multicast Open Shortest Path First (MOSPF),and Protocol Independent Multicast (PIM). A multicast router uses at least oneof these protocols.

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like