1.8 Addressing Issues
The addresses available for multicast usage range from 224.0.0.0 to 239.255.255.255. This plentiful, but finite, range is controlled by the Internet Assigned Numbers Authority (IANA). Certain subranges within the class D range of addresses are reserved for specific uses:
224.0.0.0/24: The link-local multicast range
224.2.0.0/16: The Session Announcement Protocol (SAP)/Session Description Protocol (SDP) range
232.0.0.0/8: The SSM range
233.0.0.0/8: The AS-encoded, statically assigned GLOP range (RFC 3180)
239.0.0.0/8: The administratively scoped multicast range (RFC 2365)
For a complete list of IANA assigned multicast addresses, refer to the http://www.iana.org/assignments/multicast-addresses Web site.
If class D addresses had been assigned in the same manner unicast addresses were allocated, this address space would have been exhausted long ago. In general, IANA allocates static multicast addresses only used for protocol control. Examples of this type of address include
224.0.0.1: All systems on this subnet
224.0.0.2: All routers on this subnet
224.0.0.5: OSPF routers
224.0.0.6: OSPF designated routers (DRs)
224.0.0.12: DHCP server/relay agent
To protect against address exhaustion, a simple dynamic address allocation mechanism is used in the SAP/SDP block. Applications such as Session Directory Tool (SDR) that use this mechanism randomly select an unused address in this range. This dynamic allocation mechanism for global multicast addresses is somewhat analogous functionally to DHCP, which dynamically assigns unicast addresses on a LAN.
Unfortunately, some applications require the use of static multicast addresses. GLOP, described in RFC 3180, provides static multicast ranges for organizations that already have reserved an AS number. In GLOP, an AS number is used to derive a /24 block within the 233/8 range. The static multicast range is created in the following form:
233.[first byte of AS number].[second byte of AS number].0/24
For example, AS 12345 is automatically allocated 233.48.57.0/24. Here is an easy way to compute this:
Convert the AS number to hexadecimal: 12345 = 0x3039.
Convert the first byte back to decimal: 0x30 = 48.
Convert the second byte back to decimal: 0x39 = 57.
Thus any organization with an AS number is automatically assigned a /24 of multicast addresses. GLOP is not an acronym or abbreviation; for some odd reason it was selected as the name for this clever mechanism.
Addresses in the 239/8 range are defined as administratively scoped. Packets destined for these addresses should not be forwarded outside an administratively defined boundary (typically a domain border), which is somewhat analogous to unicast private address space, such as 10/8. Scoping is discussed in further detail in Chapter 4.
Addresses in the 232/8 range are reserved for SSM. A wonderful byproduct of SSM is that the group address no longer needs to be globally unique. The source-group tuple, or channel, provides all the required uniqueness because the receiver is specifying interest in only one source for the group.
Multicast addressing allocation had long been a headache for multicast engineers. The recent addition of of SSM finally provided the long-sought coup de grace in this struggle. It is now generally agreed that between SSM, GLOP, administrative scoping, and SAP/SDP, current multicast address allocation schemes are sufficient for the Internet until IPv6 becomes prevalent. In IPv6, the number of multicast and unicast addresses available is practically infinite.