Glossary

IP Multicast

What is IP Multicast

IP multicast is a method of transmitting data across a network that lets a sender deliver a single stream to many receivers at the same time, instead of being limited to point-to-point (unicast) or send-to-everyone (broadcast) delivery. The central concept is the multicast group: a collection of receivers that have expressed interest in a specific data stream. A sender transmits to the group, and every member of the group receives the same data.

Compared with the alternatives, multicast has several defining characteristics:

  • Efficient one-to-many and many-to-many delivery: multiple receivers in a group can receive the same stream simultaneously, which suits applications where many devices share the same data, such as live video streaming, video conferencing, online gaming, and data synchronization across distributed applications.

  • Bandwidth efficiency: unlike broadcast, multicast is delivered only to receivers that asked for it, so data travels only where it is needed rather than to every node on the network.

  • Send once, serve many: because receivers in a group share the same data, the sender transmits once rather than separately to each receiver.

  • Reach across LANs and WANs: multicast works within a local area network and can also be routed across wide area networks.

  • Standard group management protocols: in IPv4 networks, IGMP (Internet Group Management Protocol) manages group membership; in IPv6 networks, MLD (Multicast Listener Discovery) does the equivalent job.

How IP Multicast Works

Multicast delivery involves cooperation between Layer 2 and Layer 3 mechanisms, each solving a different part of the problem.

Group membership. Hosts tell the network which groups they want to join using IGMP (IPv4) or MLD (IPv6). A router acting as the querier periodically asks which groups still have members, and hosts respond with membership reports.

Layer 2 control: snooping. By default, when a Layer 2 switch receives a multicast packet, it floods it to every port in the VLAN — wasting bandwidth and exposing traffic to hosts that never asked for it. IGMP Snooping (and MLD Snooping for IPv6) fixes this by having the switch listen to group-management messages and build multicast forwarding entries, so multicast traffic is forwarded only to the ports that need it. In this model, ports have two roles: member ports face hosts that want the group's data, and router ports face the multicast router.

The switch's handling of each message type follows a consistent pattern. General queries are forwarded to all other ports in the VLAN, and the receiving port is learned as a dynamic router port with an aging timer. Membership reports are forwarded out the router ports, and the receiving port is added to the group's forwarding entry as a dynamic member port, again with an aging timer. When a host sends a leave message, the switch forwards it toward the routers but does not remove the port immediately — it cannot tell whether other members still sit behind that port — so it resets the aging timer instead, unless fast leave is enabled, in which case the port is removed straight away. Port aging times follow defined formulas: after a report, the aging time is the robustness factor multiplied by the general query interval plus the maximum response time; after a leave, it is the specific query interval multiplied by the robustness factor.

Two refinements build on this. A snooping proxy lets an edge switch answer on behalf of its downstream hosts — consolidating joins and sending a leave upstream only when the last member port for a group is removed — which reduces message load on upstream devices when many hosts join and leave frequently. And a multicast VLAN lets users in different VLANs share a single multicast stream: the upstream router sends one copy into the multicast VLAN, and the Layer 2 device replicates it into each bound user VLAN, replacing VLAN tags on protocol messages as needed, instead of the router sending a separate copy per user VLAN.

Layer 3 routing: PIM. Between routers, multicast is routed with PIM (Protocol Independent Multicast), so called because it can use routes from static routes or any unicast routing protocol — RIP, OSPF, IS-IS, BGP, and others — rather than requiring its own. PIM Sparse Mode (PIM-SM), suited to networks where group members are numerous but sparsely distributed, works in a "pull" fashion around a central Rendezvous Point (RP) that all PIM routers know about. When a host joins a group, the last-hop router sends a Join hop by hop toward the RP, building a shared tree rooted there. When a source starts sending, its first-hop router wraps the traffic in Register messages and unicasts them to the RP, which then forwards the traffic down the shared tree.

Several mechanisms keep this reliable:

  • RPF (Reverse Path Forwarding) check: because a multicast destination address identifies a group rather than a location, routers rely on the packet's source address instead. A router checks that a multicast packet arrived on the interface it would itself use to reach the source; if not, the packet is dropped. This ensures a correct, loop-free path.

  • Neighbor discovery: PIM interfaces periodically send Hello messages to the all-PIM-routers address 224.0.0.13 with a TTL of 1, to find neighbors, negotiate parameters, and keep relationships alive.

  • DR election: on a shared segment, one PIM router is elected Designated Router — the highest DR priority wins, with the numerically larger IP address as the tiebreaker. The DR registers sources with the RP on the source side and sends Joins on behalf of members on the receiver side.

  • SPT switchover: to avoid making the RP a bottleneck, traffic can switch from the shared tree to a direct shortest-path tree between source and receiver.

  • Assert: when several routers on one segment could forward the same multicast traffic, an election — by unicast routing protocol preference, then metric to the source, then interface IP address — ensures only one forwards, so receivers get a single copy.

Why IP Multicast is Beneficial

  • Saves bandwidth at scale: One stream serves any number of receivers, and traffic flows only along paths where receivers actually exist, rather than being replicated once per receiver.

  • Reduces load on senders and routers: A source transmits once, and the network handles replication only where paths diverge.

  • Keeps unwanted traffic off the wire: With snooping, hosts that have not joined a group do not receive its traffic, which saves bandwidth and limits unnecessary exposure of that data.

  • Scales across both IPv4 and IPv6: IGMP and MLD, and their snooping counterparts, give IPv4 and IPv6 networks equivalent multicast control.

  • Flexible for real network designs: Multicast VLANs avoid duplicate streams across user VLANs, snooping proxies reduce control-message load, and protocol-independent PIM lets multicast routing build on whatever unicast routing a network already runs.

At Asteraix

What We Can Do at Asteraix

AsterNOS supports the full multicast path described above, from Layer 2 snooping through multicast VLANs to PIM-SM routing, configurable through the CLI.

  • IGMP Snooping with querier and tuning controls: In VLAN configuration, igmp-snooping enable turns on snooping, igmp-snooping querier enable and igmp-snooping querier-ip <ip-address> provide a querier where no router does, and igmp-snooping query-interval, query-max-response-time, last-member-query-interval, and robustness tune the timers that determine port aging.

  • Fast leave and snooping proxy: igmp-snooping fast-leave enable removes a port from a group as soon as a leave message arrives, and igmp-snooping-proxy enable lets an edge device send consolidated join and leave messages upstream.

  • MLD Snooping for IPv6: A matching set of commands — mld-snooping enable, mld-snooping querier enable, mld-snooping querier-ip, the same timer and robustness controls, mld-snooping fast-leave enable, and mld-snooping-proxy enable — gives IPv6 networks the same Layer 2 multicast control.

  • Static multicast where it is needed: igmp-snooping mrouter ethernet <interface-name> defines a static router port, and interface l2mc-static-group ethernet <interface-name> <vlan-id> <ip-address> adds a static member port — as in AsterNOS's documented example where only two of three users receive group 224.1.1.1.

  • Multicast VLAN: igmp-snooping mvlan <multicast-vlan> <user-vlan> binds one or more user VLANs (comma-separated or as a range) to a multicast VLAN, so the upstream router sends a single copy of each stream.

  • PIM-SM routing: ip pim enables PIM on an interface, ip pim rp <A.B.C.D> <A.B.C.D/M> configures a static RP for a group range, unknown-multicast trap lets the source-side DR register sources with the RP, ip igmp enables IGMP on the member-facing VLAN interface, and ip mroute ethernet <interface_id> <A.B.C.D> <A.B.C.D> adds a static multicast route. The documented example builds a PIM-SM network across three devices running OSPF, with a host subscribing to a source over Layer 3. In this release, PIM supports Sparse Mode with static RP.

  • Full visibility for verification: show vlan igmp-snooping, show vlan igmp-snooping mrouter, show vlan igmp-snooping mrouter-aging, show vlan igmp-snooping mvlan, and show l2-multicast-table cover the Layer 2 side, while show ip pim interface, show ip pim neighbor, show ip pim rp-info, show ip pim rpf, and show ip mroute cover PIM state and multicast routes.