Understanding Multicast addressing

Level: - Beginner
Keywords: - : what is multicast address, various available multicast addresses
Reference: - cisco.com
Author: - Surender Singh

There are three ways to design multipoint networking applications: unicast, broadcast, and multicast.

  • Unicast. With a unicast design, applications can send one copy of each packet to each member of the multicast group. This technique is simple to implement, but it has significant scaling restrictions if the group is large. In addition, it requires extra bandwidth, because the same information has to be carried multiple times -- even on shared links.
  • Broadcast. In a broadcast design, applications can send one copy of each packet and address it to a broadcast address. This technique is even simpler than unicast for the application to implement. However, if this technique is used, the network must either stop broadcasts at the LAN boundary (a technique that is frequently used to prevent broadcast storms) or send the broadcast everywhere. Sending the broadcast everywhere is a significant usage of network resources if only a small group actually needed to see the packets.
  • Multicast. With a multicast design, applications can send one copy of each packet and address it to the group of computers that want to receive it. This technique addresses packets to a group of receivers rather than to a single receiver, and it depends on the network to forward the packets to only the networks that need to receive them.

IP addresses are organized into classes A, B, C, D, and E. Class A, B, and C addresses are the IP addresses used to identify hosts on a network, but what about class D and E addresses? Class E addresses are used for experimental purposes, while the class D addresses range is used for multicast addresses.

The Class D address space uses addresses from 224.0.0.0 to 239.255.255.255 (The most significant bits of the first octet are 111). The Internet Assigned Numbers Association (IANA) is the governing body that maintains and assigns class D addresses. There are several different types of multicast addresses to fill specific multicast needs.

Addresses 224.0.0.0 to 224.0.0.255 are reserved link local addresses. These addresses should be used on the local network segment. They should not be forwarded by a router, and they have a time to live (TTL) of 1. Routing protocols use these addresses for updates and neighbor discovery. Examples include 224.0.0.10 for EIGRP (IGRP) and 224.0.0.5 for OSPF.

The 224.0.1.0 to 238.255.255.255 addresses are called globally scoped addresses. These addresses can be used to pass multicast traffic between networks and over the Internet. Many of these addresses have been reserved for specific applications. An example of a globally scoped address is 224.0.1.1, which is reserved for the Network Time Protocol (NTP).

Limited scope addresses fall within the range of 239.0.0.0 to 239.255.255.255. These addresses are assigned to an organization or group and are generally restricted to a single autonomous system (AS). Limited scope addresses can also be referred to as administratively scoped addresses.

Addresses 233.0.0.0 to 233.255.255.255 are reserved for organizations that have been assigned a valid AS from the IANA. These addresses are known as glop addresses. To calculate the glop address for an AS, convert the AS number into hexadecimal notation (hex), separate the resulting value into two octets and insert the value into the glop address. As an example: AS 56789 equals DDD5 in hex. Divide DDD5 into two octets DD and D5. Convert the two octets to decimal and insert them in the glop address range gives you 233.221.213.0 as the reserved glop address subnet for AS 56789.

Are you interested in knowing the usage of full range of multicast IP addresses? Below link will provide this information. Very good and interesting read.

http://www.iana.org/assignments/multicast-addresses

In normal operating mode a network card will only receive packets addressed to the burned-in MAC address or the local segment’s broadcast address (all 1s).  There is a need to
send packets to multiple hosts and still differentiate between different multicast groups.  In the 802.3 standard, the least significant bit (bit 0) of the first octet is used
to signify whether a packet is a broadcast or multicast packet.  IP multicast traffic relies on this bit to transmit data to a group of hosts.

Multicast IP addresses are mapped to MAC addresses by using the lower 23 bits of the IP address.  The Internet Assigned Numbers Association (IANA) owns a block of MAC addresses
(01:00:5E:00:00:00 to 01:00:5E:FF:FF:FF) half of which are allocated for multicast addressing (01:00:5E:00:00:00 to 01:00:5E:7F:FF:FF).  The IP address 224.1.1.1 would map to
01:00:5E:01:01:01. 

A problem arises when the last 23 bits of a multicast address are the same (An example is 224.1.1.1 and 238.129.1.1) resulting in non-unique multicast MAC addresses.  This
problem can be avoided in two ways.  The first is by ensuring that the lower 16 bits (or last 2 octets) of any multicast addresses are unique.  The second is to only use the multicast
addresses from 239.128.X.X through 239.255.X.X.

Hosts that wish to receive specific multicast traffic must join the desired multicast group.  The Internet Group Management Protocol (IGMP) is used to dynamically register
hosts to multicast groups within a LAN.  There are currently two versions of IGMP in wide use today--version 1 and version 2.  Hosts send IGMP membership reports to indicate that they are
interested in joining a particular multicast group.  Multicast routers periodically send IGMP queries to verify that at least one host is still interested in receiving traffic for that
group.  If there is no reply to three consecutive queries, the router times out the group and stops forwarding traffic directed to that group.  IGMP version 2 adds a leave group
message that allows a host to indicate to a multicast router an intention to leave a group.

A switch is designed to flood broadcast and multicast traffic to every port on the destination LAN.  There are two methods used to control multicast traffic to a switch.  These methods
are CGMP and IGMP snooping.

CGMP is a Cisco proprietary protocol that allows Catalyst switches to make layer 2 forwarding decisions based on IGMP information.  When a host sends a IGMP report to a multicast
router (that has CGMP enabled), the router processes the request normally and also creates a CGMP join message and sends it to the switch.  The switch adds the port to its
content addressable memory (CAM) for the multicast group.  The switch will send multicast traffic only to the ports registered in the CAM for a particular group.  The switch
only listens to CGMP join and leave messages from the router with all other multicast traffic being forwarded using the CAM table.

With IGMP snooping, the switch examines (snoops) some layer 3 information from IGMP packets sent between a host and a router.  When the switch hears an IGMP report message, that host is added to the table entry for the particular multicast group. When the switch hears an IGMP query message, that host is removed from the table.  Since IGMP multicast traffic is
indistinguishable from other multicast traffic, a switch configured for IGMP snooping must examine all multicast packets.  This can overload a switch’s processor.

If you have any suggestions or want to add more to this article do write us an email articles@knowurtech.com

What Next?


If you liked this article, you can share it with others using the following link:


Related Content :