Multicast address

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

A multicast address is a logical identifier for a group of hosts in a computer network that are available to process datagrams or frames intended to be multicast for a designated network service. Multicast addressing can be used in the link layer (layer 2 in the OSI model), such as Ethernet multicast, and at the internet layer (layer 3 for OSI) for Internet Protocol Version 4 (IPv4) or Version 6 (IPv6) multicast.

IPv4[edit]

IPv4 multicast addresses are defined by the most-significant bit pattern of 1110. This originates from the classful network design of the early Internet when this group of addresses was designated as Class D. The CIDR notation for this group is 224.0.0.0/4. The group includes the addresses from 224.0.0.0 to 239.255.255.255. Address assignments from within this range are specified in RFC 5771, an Internet Engineering Task Force (IETF) Best Current Practice document (BCP 51).

The address range is divided into blocks each assigned a specific purpose or behavior.

IP multicast address range Description Routable
224.0.0.0 to 224.0.0.255 Local subnetwork[1] No
224.0.1.0 to 224.0.1.255 Internetwork control Yes
224.0.2.0 to 224.0.255.255 AD-HOC block 1[2] Yes
224.3.0.0 to 224.4.255.255 AD-HOC block 2[3] Yes
232.0.0.0 to 232.255.255.255 Source-specific multicast[1] Yes
233.0.0.0 to 233.251.255.255 GLOP addressing[4] Yes
233.252.0.0 to 233.255.255.255 AD-HOC block 3[5] Yes
234.0.0.0 to 234.255.255.255 Unicast-prefix-based Yes
239.0.0.0 to 239.255.255.255 Administratively scoped[1] Yes
Local subnetwork
Addresses in the range of 224.0.0.0 to 224.0.0.255 are individually assigned by IANA and designated for multicasting on the local subnetwork only. For example, the Routing Information Protocol (RIPv2) uses 224.0.0.9, Open Shortest Path First (OSPF) uses 224.0.0.5 and 224.0.0.6, and Zeroconf mDNS uses 224.0.0.251. Routers must not forward these messages outside the subnet in which they originate.
Internetwork control block
Addresses in the range 224.0.1.0 to 224.0.1.255 are individually assigned by IANA and designated as the Internetwork Control Block. This block of addresses is used for traffic that must be routed through the public Internet, such as for applications of the Network Time Protocol (224.0.1.1).
AD-HOC block
Addresses in three separate blocks are not individually assigned by IANA. These addresses are globally routed and are used for applications that don't fit either of the previously described purposes.[6]
Source-specific multicast
The 232.0.0.0/8 (IPv4) and FF3x::/32 (IPv6) blocks are reserved for use by source-specific multicast.
GLOP
The 233.0.0.0/8 range was originally assigned by RFC 2770 as an experimental, public statically assigned multicast address space for publishers and Internet service providers that wished to source content on the Internet. The allocation method is termed GLOP addressing and provides implementers a block of 255 addresses that is determined by their 16-bit autonomous system number (ASN) allocation. In a nutshell, the middle two octets of this block are formed from assigned ASNs, giving any operator assigned an ASN 256 globally unique multicast group addresses. The method is not applicable to the newer 32-bit extension AS numbers. RFC 3180, superseding RFC 2770, envisioned the use of the range for many-to-many multicast applications. This block has been one of the most successful multicast addressing schemes.[citation needed] Unfortunately, with only 256 multicast addresses available to each autonomous system, GLOP is not adequate for large-scale broadcasters.[7]
Unicast-prefix-based
The 234.0.0.0/8 range is assigned by RFC 6034 as a range of global IPv4 multicast address space provided to each organization that has /24 or larger globally routed unicast address space allocated; one multicast address is reserved per /24 of unicast space. A resulting advantage over GLOP is that the mechanisms in IPv4 and IPv6 become more similar.
Administratively scoped
The 239.0.0.0/8 range is assigned by RFC 2365 for private use within an organization. From the RFC, packets destined to administratively scoped IPv4 multicast addresses do not cross administratively defined organizational boundaries, and administratively scoped IPv4 multicast addresses are locally assigned and do not have to be globally unique. The RFC also discusses structuring the 239.0.0.0/8 range to be loosely similar to the scoped IPv6 multicast address range described in RFC 1884.

Notable addresses[edit]

The following table is a list of notable well-known IPv4 addresses that are reserved for IP multicasting and that are registered with the Internet Assigned Numbers Authority (IANA).[8]

IP multicast address Description Routable
224.0.0.0 Base address (reserved) No
224.0.0.1 The All Hosts multicast group addresses all hosts on the same network segment. No
224.0.0.2 The All Routers multicast group addresses all routers on the same network segment. No
224.0.0.4 This address is used in the Distance Vector Multicast Routing Protocol (DVMRP) to address multicast routers. No
224.0.0.5 The Open Shortest Path First (OSPF) All OSPF Routers address is used to send Hello packets to all OSPF routers on a network segment. No
224.0.0.6 The OSPF All Designated Routers ""(DR)"" address is used to send OSPF routing information to designated routers on a network segment. No
224.0.0.9 The Routing Information Protocol (RIP) version 2 group address is used to send routing information to all RIP2-aware routers on a network segment. No
224.0.0.10 The Enhanced Interior Gateway Routing Protocol (EIGRP) group address is used to send routing information to all EIGRP routers on a network segment. No
224.0.0.13 Protocol Independent Multicast (PIM) Version 2 No
224.0.0.18 Virtual Router Redundancy Protocol (VRRP) No
224.0.0.19–21 IS-IS over IP No
224.0.0.22 Internet Group Management Protocol (IGMP) version 3[9] No
224.0.0.102 Hot Standby Router Protocol version 2 (HSRPv2) / Gateway Load Balancing Protocol (GLBP) No
224.0.0.107 Precision Time Protocol (PTP) version 2 peer delay measurement messaging No
224.0.0.251 Multicast DNS (mDNS) address No
224.0.0.252 Link-local Multicast Name Resolution (LLMNR) address No
224.0.0.253 Teredo tunneling client discovery address[10] No
224.0.1.1 Network Time Protocol clients listen on this address for protocol messages when operating in multicast mode. Yes
224.0.1.22 Service Location Protocol version 1 general Yes
224.0.1.35 Service Location Protocol version 1 directory agent Yes
224.0.1.39 The Cisco multicast router AUTO-RP-ANNOUNCE address is used by RP mapping agents to listen for candidate announcements. Yes
224.0.1.40 The Cisco multicast router AUTO-RP-DISCOVERY address is the destination address for messages from the RP mapping agent to discover candidates. Yes
224.0.1.41 H.323 Gatekeeper discovery address Yes
224.0.1.129–132 Precision Time Protocol (PTP) version 1 messages (Sync, Announce, etc.) except peer delay measurement Yes
224.0.1.129 Precision Time Protocol (PTP) version 2 messages (Sync, Announce, etc.) except peer delay measurement Yes
239.255.255.250 Simple Service Discovery Protocol address Yes
239.255.255.253 Service Location Protocol version 2 address Yes

IPv6[edit]

Multicast addresses in IPv6 use the prefix ff00::/8. IPv6 multicast addresses can be made up using the old format (RFC 2373) or the new format (RFC 3306, updated by RFC 7371).

General multicast address format (old)
Bits 8 4 4 112
Field prefix flags scope group ID
General multicast address format (new)
Bits 8 4 4 4 4 8 64 32
Field prefix ff1 scope ff2 reserved plen network prefix group ID

The prefix holds the value ff for all multicast addresses.

Currently, 3 of the 4 flag bits in the flags field (ff1) are defined;[11] the most-significant flag bit is reserved for future use. The other three flags are known as R, P and T.

Multicast address flags[12]
Bit[note 1] Flag 0 1
0 (MSB) Reserved (Reserved) (Reserved)
1 R (Rendezvous)[13] Rendezvous point not embedded Rendezvous point embedded
2 P (Prefix)[14] Without prefix information Address based on network prefix
3 (LSB) T (Transient)[15] Well-known multicast address Dynamically assigned multicast address

Similar to a unicast address, the prefix of an IPv6 multicast address specifies its scope, however, the set of possible scopes for a multicast address is different. The 4-bit sc (or scope) field (bits 12 to 15) is used to indicate where the address is valid and unique.

Multicast address scope
IPv6 address[note 2] IPv4 equivalent[16] Scope Purpose
ff00::/16-ff0f::/16 Reserved
ffx1::/16 127.0.0.0/8 Interface-local Packets with this destination address may not be sent over any network link, but must remain within the current node; this is the multicast equivalent of the unicast loopback address.
ffx2::/16 224.0.0.0/24 Link-local Packets with this destination address may not be routed anywhere.
ffx3::/16 239.255.0.0/16 IPv4 local scope
ffx4::/16 Admin-local The smallest scope that must be administratively configured.
ffx5::/16 Site-local Restricted to the local physical network.
ffx8::/16 239.192.0.0/14 Organization-local Restricted to networks used by the organization administering the local network. (For example, these addresses might be used over VPNs; when packets for this group are routed over the public internet (where these addresses are not valid), they would have to be encapsulated in some other protocol.)
ffxe::/16 224.0.1.0-238.255.255.255 Global scope Eligible to be routed over the public internet.

The service is identified in the 112-bit Group ID field. For example, if ff02::101 refers to all Network Time Protocol (NTP) servers on the local network segment, then ff08::101 refers to all NTP servers in an organization's networks. The Group ID field may be further divided for special multicast address types.

The following table is a list notable IPv6 multicast addresses that are registered with the Internet Assigned Numbers Authority (IANA).[17]

Well-known IPv6 multicast addresses
Address Description
ff02::1 All nodes on the local network segment
ff02::2 All routers on the local network segment
ff02::5 OSPFv3 All SPF routers
ff02::6 OSPFv3 All DR routers
ff02::8 IS-IS for IPv6 routers
ff02::9 RIP routers
ff02::a EIGRP routers
ff02::d PIM routers
ff02::16 MLDv2 reports (defined in RFC 3810)
ff02::1:2 All DHCP servers and relay agents on the local network segment (defined in RFC 3315)
ff02::1:3 All LLMNR hosts on the local network segment (defined in RFC 4795)
ff05::1:3 All DHCP servers on the local network site (defined in RFC 3315)
ff0x::c Simple Service Discovery Protocol
ff0x::fb Multicast DNS
ff0x::101 Network Time Protocol
ff0x::108 Network Information Service
ff0x::181 Precision Time Protocol (PTP) version 2 messages (Sync, Announce, etc.) except peer delay measurement
ff02::6b Precision Time Protocol (PTP) version 2 peer delay measurement messages
ff0x::114 Used for experiments

Ethernet[edit]

Ethernet frames with a value of 1 in the least-significant bit of the first octet[note 3] of the destination address are treated as multicast frames and are flooded to all points on the network. While frames with ones in all bits of the destination address (FF-FF-FF-FF-FF-FF) are sometimes referred to as broadcasts, Ethernet network equipment generally does not distinguish between multicast and broadcast frames. Modern Ethernet controllers filter received packets to reduce CPU load, by looking up the hash of a multicast destination address in a table, initialized by software, which controls whether a multicast packet is dropped or fully received.

The IEEE has allocated the address block 01-80-C2-00-00-00 to 01-80-C2-FF-FF-FF for group addresses for use by standard protocols. Of these, the MAC group addresses in the range of 01-80-C2-00-00-00 to 01-80-C2-00-00-0F are not relayed by MAC bridges conforming to 802.1D.[18]

Some well known Ethernet multicast addresses[19]
Ethernet multicast address Type Field Usage
01-00-0C-CC-CC-CC CDP (Cisco Discovery Protocol), VTP (VLAN Trunking Protocol), UDLD (Unidirectional Link Detection)
01-00-0C-CC-CC-CD Cisco Shared Spanning Tree Protocol Address
01-80-C2-00-00-00 Spanning Tree Protocol (for bridges) IEEE 802.1D
01-80-C2-00-00-00, or

01-80-C2-00-00-03, or 01-80-C2-00-00-0E

0x88CC Link Layer Discovery Protocol
01-80-C2-00-00-08 0x0802 Spanning Tree Protocol (for provider bridges) IEEE 802.1ad
01-80-C2-00-00-01 0x8808 Ethernet flow control (Pause frame) IEEE 802.3x
01-80-C2-00-00-02 0x8809 Ethernet OAM Protocol IEEE 802.3ah (A.K.A. "slow protocols")
01-80-C2-00-00-30 - 01-80-C2-00-00-3F 0x8902 Ethernet CFM Protocol IEEE 802.1ag
01-00-5E-00-00-00 - 01-00-5E-7F-FF-FF 0x0800 IPv4 Multicast (RFC 1112), insert the low 23 Bits of the multicast IPv4 Address into the Ethernet Address (RFC 7042 2.1.1.)
33-33-xx-xx-xx-xx 0x86DD IPv6 Multicast (RFC 2464), insert the low 32 Bits of the multicast IPv6 Address into the Ethernet Address (RFC 7042 2.3.1.)
01-0C-CD-01-00-00 -

01-0C-CD-01-01-FF

0x88B8 IEC 61850-8-1 GOOSE Type 1/1A
01-0C-CD-02-00-00 -

01-0C-CD-02-01-FF

0x88B9 GSSE (IEC 61850 8-1)
01-0C-CD-04-00-00 -

01-0C-CD-04-01-FF

0x88BA Multicast sampled values (IEC 61850 8-1)
01-1B-19-00-00-00, or

01-80-C2-00-00-0E

0x88F7 Precision Time Protocol (PTP) version 2 over Ethernet (layer-2)

802.11[edit]

802.11 wireless networks use the same 01:00:5E:xx:xx:xx and 33:33:xx:xx:xx:xx MAC addresses for multicasting as Ethernet.

See also[edit]

Notes[edit]

  1. ^ The recommended style for Request for Comments (RFC) documents is "MSB 0" bit numbering.
  2. ^ x is a place holder indicating that the value of the flags field is unimportant in the current discussion.
  3. ^ On Ethernet, the least-significant bit of an octet is the first to be transmitted. A multicast is indicated by the first transmitted bit of the destination address being 1.

References[edit]

  1. ^ a b c IP Multicast Routing Configuration Guide, Cisco, p. 17-19, retrieved 2017-05-27 
  2. ^ AD-HOC Block 1
  3. ^ AD-HOC Block 2
  4. ^ Fall, K.R. and Stevens, W.R. (2011). TCP/IP Illustrated. 1. Addison-Wesley. p. 55. ISBN 9780321336316. 
  5. ^ AD-HOC Block 3
  6. ^ RFC 5771 Section 6.
  7. ^ "Frequently Asked Questions (FAQ) File for Multicasting". Multicast Tech. Archived from the original on 2011-05-16. 
  8. ^ IANA IP multicast addresses assignments. Internet Assigned Numbers Authority .
  9. ^ RFC 3376 Section 4.2.14
  10. ^ RFC 4380 item 2.17
  11. ^ Hinden, R.; Deering, S. (February 2006) IP Version 6 Addressing Architecture, IETF, RFC 4291.
  12. ^ Silvia Hagen (May 2006). IPv6 Essentials (Second ed.). O'Reilly. ISBN 978-0-596-10058-2. 
  13. ^ RFC 3956
  14. ^ RFC 3306
  15. ^ RFC 4291
  16. ^ RFC 2365 section 8.
  17. ^ IANA Internet Protocol Version 6 Multicast Addresses. Internet Assigned Numbers Authority.
  18. ^ IEEE. "Standard Group MAC Address: A Tutorial Guide" (PDF). IEEE Standards Association. pp. 2–3. 
  19. ^ Patton, Michael A. et. al.. "Multicast (including Broadcast) Addresses". cavebear.com. Karl Auerbach.