Multicast - Overview (1)
Multicast is used to send the same data packets to multiple receivers. By sending to multiple receivers, the packets are not duplicated for every receiver. Instead, they are sent in a single stream, where downstream routers perform packet multiplication over receiving links. The sender or source of multicast traffic does not have to know the unicast addresses of the receiver.
Unicast transmission sends multiple copies of data, one copy for each receiver. In other words, in unicast, the source sends a separate copy of the packet to each host that needs the information. Multicast transmission sends a single copy of data to multiple receivers.
In multicast, the sender sends only one copy of a single data packet that is addressed to a group of receivers—a multicast group. Downstream multicast routers replicate and forward the data packet to all those branches where receivers exist. Receivers express their interest in multicast traffic by registering at their first-hop router using IGMP.
Routers replicate the packet at any point where the network paths diverge and use Reverse-Path Forwarding (RPF) techniques to ensure that the packet is forwarded to the appropriate downstream paths without routing loops.
Most multicast applications are UDP-based. Best-effort delivery results in occasional packet drops. Applications must expect occasional duplicate packets to arrive, and they should be designed accordingly. Out-of-sequence delivery of packets to the application may also occur. It remains a challenge to restrict multicast traffic to only a selected group of receivers. Eavesdropping issues are not sufficiently solved yet.
The two most common models are:
- One-to-many model, where one sender sends data to many receivers
- Many-to-many model, where a host can simultaneously be a sender and a receiver.
Many new multipoint applications are emerging as demand for them grows.
- Real-time applications include live broadcasts, financial data delivery, whiteboard collaboration, and video conferencing.
- Not-real-time applications include file transfer, data and file replication, and VoD.
A multicast address is associated with a group of interested receivers. The sender sends a single datagram (from the sender's unicast address) to the multicast address, and the intermediary routers take care of making copies and sending them to all receivers that have registered their interest in data from that sender.
|
Address Scope |
Addresses |
Use |
|
Local-scope |
224.0.0.0 through 224.0.0.255 |
Reserved by the IANA for network protocol use |
|
Global-scope |
224.0.1.0 through 238.255.255.255 |
Allocated dynamically throughout the internet |
|
Administratively scoped |
239.0.0.0 through 239.255.255.255 |
Reserved for use inside private domains |
|
Address |
Use |
|
224.0.0.1 |
All Hosts |
|
224.0.0.2 |
All IPv4 routers |
|
224.0.0.13 |
All PIMv2 routers |
|
224.0.0.5, 224.0.0.6, 224.0.0.9, 224.0.0.10 |
Used by unicast routing protocols |
IP multicast service models consist of three main components: senders send to a multicast address, receivers express an interest in a multicast address, and routers deliver traffic from the senders to the receivers.
IP Multicast service model characteristics include:
- Host extensions for IP Multicasting.
- Each multicast group is identified by a Class D IP address.
- Members join and leave the group and indicate this to the routers.
- Routers listen to all multicast addresses and use multicast routing protocols to manage groups.
RFC 1112 specifies the host extensions for IP to support multicast:
- IP multicast allows hosts to join a group that receives multicast packets.
- It allows users to dynamically register (join or leave multicast groups) based on the applications they use.
- It uses IP datagrams to transmit data.
The Class D IP addresses (224.0.0.0 to 239.255.255.255) define each multicast group. Addresses are allocated dynamically and represent receiver groups, not the individual hosts.
Receivers may dynamically join or leave an IPv4 multicast group at any time using IGMP messages, and may dynamically join or leave an IPv6 multicast group at any time using Multicast Listener Discovery (MLD) messages. Messages are sent to the last-hop routers, which manage group membership.
Routers use multicast routing protocols—for example, PIM—to efficiently forward multicast data to multiple receivers. The routers listen to all multicast addresses and create multicast distribution trees, which are used for multicast packet forwarding.
Characteristics of the Multicast protocol include:
- Multicast network routers are distinct from source and receiver segments.
- Sources simply start sending data without any indication and first-hop routers forward data.
- Receivers report their membership to last-hop routers.
- Last-hop (leaf) routers communicate group membership to the network.
Routers identify multicast traffic and forward the packets from senders toward the receivers. When the source becomes active, it starts sending the data without any indication. First-hop routers, to which the sources are directly connected, start forwarding the data to the network. Receivers that are interested in receiving IPv4 multicast data register to the last-hop routers using IGMP membership messages. Last-hop routers are those routers that have directly connected receivers. Last-hop routers forward the group membership information of their receivers to the network, so that the other routers are informed about which multicast flows are needed.

