Source Specific Multicast (SSM) VII

Source Specific Multicast (SSM) VII
Table of Contents

In this post, we will look at Source Specific Multicast, or SSM. This is a different approach to multicast that simplifies the overall architecture by removing the need for an RP entirely.

In the previous posts, we covered PIM Sparse Mode, where receivers join a shared tree rooted at the RP and then optionally switch to the shortest path tree toward the source. We also looked at Auto-RP and BSR, which solve the problem of dynamically distributing RP information to all routers. SSM takes a different approach by eliminating the shared tree concept altogether.

Multicast PIM Sparse Mode
Sparse Mode only sends traffic to parts of the network that explicitly request it. Routers with interested receivers send Join messages toward

Any Source Multicast (ASM)

Before we look at SSM, let's briefly talk about Any Source Multicast, or ASM. This is the traditional multicast model we have been using throughout this series.

With ASM, receivers join a multicast group without specifying a source. They simply say 'I want traffic for group 239.1.1.1' and the network figures out how to deliver traffic from any source sending to that group. This is why it is called Any Source Multicast.

ASM relies on an RP to connect sources and receivers. Receivers join the shared tree rooted at the RP, and sources register with the RP so their traffic can reach the shared tree. Once traffic is flowing, routers can optionally switch to the shortest path tree for efficiency.

The downside of ASM is the complexity of managing the RP. You need to either configure the RP statically on every router or use a dynamic mechanism like Auto-RP or BSR. SSM removes this complexity entirely by eliminating the RP from the picture.

SSM Overview

Source-specific multicast uses a subset of PIM sparse mode and IGMPv3 to allow a client to receive multicast traffic directly from the source. SSM uses the PIM sparse-mode functionality to create the shortest path tree (SPT) between the receiver and the source without the help of an RP.

With SSM, receivers specify both the multicast group and the source address they want to receive traffic from. Instead of joining (*, G) and relying on the RP to connect them to sources, receivers join (S, G) directly. The last hop router builds the shortest path tree toward the source immediately, without involving an RP at any point.

This makes SSM simpler to deploy and more secure. There is no RP to configure or protect, no shared tree to build, and receivers only get traffic from sources they explicitly request. The trade-off is that receivers must know the source address in advance. The default SSM range is 232.0.0.0/8. You can also configure additional addresses using the ip pim ssm acl command with an ACL to define custom groups.

IGMPv3

For SSM to work, receivers must be able to tell the last hop router (LHR) which source they want to receive traffic from. IGMPv1 and IGMPv2 do not support this. When a host sends an IGMPv2 membership report, it only contains the group address. The router learns that someone on the segment wants traffic for that group, but it has no idea which source the receiver is interested in.

IGMPv3 adds source filtering to solve this problem. When a host sends an IGMPv3 membership report, it can include a list of sources it wants to receive from. This is called an include mode report, where the host says, 'I want traffic for this group, but only from these specific sources.' The host can also use exclude mode to say, 'I want traffic for this group from any source except these.'

For SSM, receivers use the include mode with a single source address. The last hop router receives this report and knows exactly which (S, G) tree to join. It sends a PIM join directly toward the source without ever contacting an RP.

Source-Specific Multicast Quick Reference

  • SSM uses PIM sparse mode mechanics but without an RP
  • Receivers must specify both the group and the source address
  • IGMPv3 is required on the LHR
  • Default SSM range is 232.0.0.0/8
  • Enable SSM on the LHR with ip pim ssm default
  • Enable IGMPv3 on receiver-facing interfaces with ip igmp version 3
  • Only (S, G) state is created, no (*, G) shared tree
  • PIM joins go directly toward the source, not the RP
  • Receivers join with ip igmp join-group <group> source <source>

Source Specific Multicast Lab

We will use the following topology for this lab. We have six routers with the sender connected to r1 and the receiver connected to r6. The sender has the IP address 10.1.0.10 and the receiver has 10.1.1.11. All point-to-point links use the 172.16.x.x range for IP addressing. Each router has a loopback interface with the address 10.0.0.x, where x is the router number. For example, r3 has 10.0.0.3, r4 has 10.0.0.4, and so on.

ssm lab
Netlab - The Fastest Way to Build Network Labs
Netlab then takes care of creating the topology, assigning IP addresses, configuring routing protocols, and even pushing custom configs.
Great! You’ve successfully signed up.
Welcome back! You've successfully signed in.
You've successfully subscribed to Packetswitch.
Your link has expired.
Success! Check your email for magic link to sign-in.
Success! Your billing info has been updated.
Your billing was not updated.