The IPv6 addressing architecture details are covered in the RFC4291: IP Version 6 Addressing Architecture. This document identifies the different types of IPv6 addresses and the use cases for any of them: unicast, anycast and multicast. There aren’t broadcast addresses in IPv6.
A multicast address is an identifier used by groups of interfaces interested in receiving similar content, like a video live stream, live event scoring or ticketing information in the banking sector. The different subtypes of multicast addresses cover previously discusses use cases: one-to-many, few-to-many and many-to-many are the most common ones.
Multicast addresses are assigned from the FF00::/8 block. A value of 0xFF (b’11111111) identifies an address as a multicast address; any other value identifies an address as a unicast address.
From the design point of view, it’s interesting to know how to match the addressing to the use case depending on the business need.
Specific Source Multicast
The fundamental difference between the ASM and SSM models is that in SSM model the Source is known (by any means). This is a small but very important distinction as the addressing, control protocols involved in setting up the tree and complexity varies:
- Any Source Multicast (ASM)
- Use shared trees (*,G) and source trees (S,G) (optionally)
- Suboptimal paths in case the data flows over the shared tree
- Less state on the network, because the shared tree is used by al Sources
- Requires RP as a Source discovery mechanism and RP engineering
- Specific Source Multicast (SSM)
- Use source trees (S,G)
- Optimal path from the Receiver to the Source
- More state on the network lead to a less scalable solution
- Does not require RP, Receivers must know the Source in advance
General multicast address
General multicast address fields were redefined in RFC 7371. The ff1 flag bits define the multicast address type. The scope of the address is defined in the scop field.
ff1 indicates how the address is constructed, if it has an embedded RP included, is a temporal or permanent address or if it’s based on a unicast address. In the case the address is based on a unicast address, the temporary field T must be also set.
Temporary addresses differentiate user/corporation defined addresses from well-known IANA reserved addresses.
Unicast-based multicast address
This subtype of addresses allows for creating globally unique mcast groups. These addresses can be used by any organization to provide mcast services without the need to be constituted as LIR and have an own ASN.
Unicast prefix and length is embedded in the mcast address fields.
Source Specific multicast address
Source specific multicast addresses are a subset of the unicast-based multicast addresses (Network prefix = Plen = 0)
Embedded RP multicast address
Embedded RP multicast addresses allows for Static RP to multicast group mapping. This mechanism allows for inter-domain multicast (there is no MSDPv6).
Last but not least, it’s important to be aware that like in the previous version of the IP protocol, it exists MAC overloading from multiple multicast IP addresses to a single MAC address.
Multicast groups must be wisely chosen to minimize unintended effects like source interference.
I hope you find it interesting.