Search
Home Search Center IP Encyclopedia Online Courses

What Is PIM?

Protocol Independent Multicast (PIM) is a multicast routing solution that uses unicast routing table to perform reverse path forwarding (RPF) checks on multicast packets and creates multicast routing entries if multicast packets pass RPF checks. PIM does not depend on any particular unicast routing protocol for topology discovery.

Why Do We Need PIM?

The multicast backbone (Mbone) was established in 1992 as a virtual backbone for IP multicast traffic to support network video and audio conferencing. Mbone uses Multicast Open shortest Path First (MOSPF) and the Distance Vector Multicast Routing Protocol (DVMRP).

Mbone promotes the use and development of multicast technology and routing multicast protocols. However, new problems arise: If multicast routes need to be created using multiple routing protocols, different protocols need to import routes of each other, which involves complex operations. Additionally, network devices need to maintain both unicast and multicast routing information.

PIM was developed to simplify operations and reduce network device load by eliminating the need to maintain a large amount of routing information. Instead, network devices only need to main group member and source information and obtain routing information from the unicast routing table. PIM is most widely used intra-domain multicast protocol.

Currently, Huawei switches support PIM-DM and PIM-SM.

What Are Application Scenarios of PIM?

PIM-DM Application

The following figure shows multicast services deployed on a small-scale network. The Interior Gateway Protocol (IGP) is running on the network and all network segments are reachable. Multicast group members are densely distributed. Hosts on this network want to receive video on demand (VoD) information, and network bandwidth needs to be used efficiently.

PIM-DM application in a single AS
PIM-DM application in a single AS

Implementation Plan

HostA, HostB, and HostC are receivers of multicast video streams. The entire PIM domain runs PIM-DM. RouterA connects to the multicast source. RouterB connects to the network segment of HostA. RouterD and RouterF connect to the network segment of HostB and HostC.

The network deployment must meet the following requirements:

  • PIM-DM must be enabled on all router interfaces.

  • IGMP must run between the routers and hosts on a shared network segment (between RouterB and HostA, and between RouterD/RouterF and HostB/HostC).

    All router interfaces on the same network segment must run the same IGMP protocol version (IGMPv2 is recommended) and be configured with the same parameter settings, such as the query interval and timeout period of group memberships. If IGMP versions or parameter settings are inconsistent, IGMP group memberships on routers will be different.

After the network is deployed, HostA, HostB, and HostC can receive multicast data from the multicast source, and users can watch video programs they request.

PIM-SM Application

The following figure shows multicast services deployed on a large-scale network. The Interior Gateway Protocol (IGP) is running on the network and all network segments are reachable. Multicast group members are sparsely distributed. Hosts on this network want to receive VoD information, and network bandwidth needs to be used efficiently.

PIM-SM application in a single AS
PIM-SM application in a single AS

Implementation Plan

HostA, HostB, and HostC are receivers of multicast video streams. The entire PIM domain runs PIM-SM. RouterA connects to multicast source S1, and RouterC connects to multicast source S2. RouterB connects to the network segment of HostA. RouterE and RouterG connect to the network segment of HostB and HostC.

The network deployment must meet the following requirements:

  • PIM-SM must be enabled on all router interfaces.

  • The core router closest to the multicast source is used as a C-RP because multicast sources are densely distributed. The interfaces of RouterC and RouterD are configured as the C-BSR and C-RP. The BSR and RP are elected dynamically.

    Recommended RP deployment is as follows:

    • On small- and medium-scale networks, configure a static RP because of its stability and low requirements on network devices.

      If there is only one multicast source, use the router directly connected to the multicast source as a static RP so that the source DR does not need to register with the RP.

      If a static RP is deployed, all routers including the RP in the same domain must be configured with the same RP information and the same range of multicast groups.

    • On large-scale networks, use a dynamic RP because of its high reliability and ease of maintenance.

      If multiple densely distributed multicast sources exist on the network, a core device close to the multicast sources is used as the C-RP. If there are multiple densely distributed group members, a core device close to the group members is used as the C-RP.

  • IGMP must run between the routers and hosts on a shared network segment (between RouterB and HostA, and between RouterE/RouterG and HostB/HostC).

    All router interfaces on the same network segment must run the same IGMP protocol version and be configured with the same parameter settings, such as the query interval and timeout period of group memberships. If IGMP versions or parameter settings are inconsistent, IGMP group memberships on routers will be different.

  • After the network is deployed, HostA, HostB, and HostC send Join messages to the RP based on service requirements, and multicast data sent from the multicast source can reach the receivers.

How Does PIM Work?

Concepts

PIM network
PIM network

Multicast Distribution Tree

On a PIM network, a point-to-multipoint (P2MP) multicast forwarding path is established for each multicast group. The multicast forwarding path is also called a multicast distribution tree (MDT) because of its tree shape.

Two types of MDT are available:

  • Shortest path tree (SPT) uses the multicast source as the root and multicast group members as leaves. SPT applies to both PIM-DM and PIM-SM networks.

    In Figure, the MDT, RouterE → RouterD → RouterA/RouterB, is an SPT, on which the source is the root and HostA and HostB are leaves.

  • Rendezvous point tree (RPT) uses a rendezvous point (RP) as the root and multicast group members as leaves. RPT applies to PIM-SM networks.

PIM Router

Routers with PIM enabled on interfaces are called PIM routers. Roles of routers on an MDT include:

  • Leaf router

    A router that connects to user hosts, which may not be multicast group members. RouterA, RouterB, and RouterC in Figure are leaf routers.

  • First-hop router

    A router that directly connects to the multicast source on the multicast forwarding path and is responsible for forwarding multicast data from the multicast source. RouterE in Figure, is the first-hop router.

  • Last-hop router

    A router that directly connects to multicast group members (receivers) on the multicast forwarding path and is responsible for forwarding multicast data to these members. RouterA and RouterB in Figure are last-hop routers.

  • Intermediate router

    A router located between the first-hop and last-hop routers. RouterD in Figure is an intermediate router.

PIM Routing Entry

A PIM routing table contains two types of PIM routing entries: (S, G) and (*, G), where S indicates a specific multicast source, G indicates a specific multicast group, and * indicates any multicast source.

  • (S, G) entries are typically used to establish an SPT on a PIM-DM or PIM-SM network.
  • (*, G) entries are typically used to establish an RPT on a PIM-SM network.

A PIM router may have both (S, G) and (*, G) entries. When a PIM router receives a multicast packet with source address S and group address G and the packet passes the RPF check, the router forwards the packet according to the following rules:

  • If a matching (S, G) entry exists, the router forwards the packet according to the (S, G) entry.
  • If no matching (S, G) entry exists but a matching (*, G) entry exists, the router creates an (S, G) entry based on the (*, G) entry, and forwards the packet according to the (S, G) entry.

PIM routing entries contain the following information to guide multicast packet forwarding:

  • Multicast source address
  • Multicast group address
  • Upstream interface, which receives multicast data on the local router, such as Int3 in Figure.
  • Downstream interface, which forwards multicast data, such as Int1 and Int2 in Figure.

PIM-DM

PIM-DM forwards multicast packets in push mode and is used on small-scale networks with densely distributed multicast group members. PIM-DM assumes that each network segment has multicast group members. When a multicast source sends multicast packets, PIM-DM floods all PIM routers on the network with the multicast packets and prunes the branches that do not have multicast group members. Through periodic flooding and pruning, PIM-DM creates and maintains a unidirectional loop-free SPT that connects the multicast source and group members. If a new member joins a multicast group on the network segment connected to a leaf router on a pruned branch, the router can initiate the graft mechanism before starting new flooding and prune. The pruned branch turns into a forwarding branch.

PIM-DM uses neighbor discovery, flood, prune, graft, assert, and state refresh mechanisms. The flood, prune, and graft mechanisms are used to establish an SPT. For details about all of these six mechanisms, see the sections below.

Neighbor Discovery

PIM routers send Hello messages through PIM-enabled interfaces. In a Hello message:
  • The destination address is 224.0.0.13 (indicating all PIM routers in the same network segment).
  • The source address is the IP address of the interface that sent the Hello message.
  • The time to live (TTL) value is 1.

Hello messages are used to discover PIM neighbors, adjust PIM protocol parameters, and maintain neighbor relationships.

  • Discovering PIM neighbors

    All PIM routers on the same network segment must receive Hello messages. By exchanging Hello messages, directly connected PIM routers learn neighbor information and establish neighbor relationships.

    A PIM router can receive other PIM messages to create multicast routing entries only after it establishes neighbor relationships with other PIM routers.

Adjusting PIM protocol parameters

A Hello message carries the following PIM protocol parameters for controlling PIM protocol packet exchange between PIM neighbors:

  • DR_Priority: indicates the priority used for designated router (DR) election among interfaces. The interface with the highest priority becomes the DR.

  • Holdtime: indicates the period during which a neighbor is considered reachable.

  • LAN_Delay: indicates the delay in transmitting Prune messages on a shared network segment.

  • Neighbor-Tracking: indicates the neighbor tracking function.

  • Override-Interval: indicates the interval for overriding the prune mechanism.

  • Maintaining neighbor relationships

    If a PIM router does not receive a new Hello message from its PIM neighbor within the holdtime, it considers the neighbor unreachable and deletes the neighbor from the neighbor list.

    Changes of PIM neighbors lead to multicast topology changes on the network. If an upstream or downstream neighbor in the MDT is unreachable, multicast routes re-converge and the MDT is re-established.

Flooding

On a PIM-DM network, multicast packets from a multicast source are flooded throughout the entire network. When a PIM router receives a multicast packet, it uses unicast routing information to perform an RPF check. If the packet passes the RPF check, the router creates an (S, G) entry, in which the downstream interface list contains all the interfaces connected to PIM neighbors, except the interface connected to the upstream router. The router then forwards subsequent multicast packets through each downstream interface.

When the multicast packets reach a leaf router, the leaf router processes the packets as follows:

  • If the network segment connected to the leaf router has group members, the leaf router adds its interface that is connected to the network segment to the downstream interface list of the (S, G) entry, and forwards subsequent multicast packets to the group members.
  • If the network segment connected to the leaf router has no group member and the leaf router does not need to forward multicast packets to downstream PIM neighbors, the leaf router initiates the prune mechanism and stops forwarding.

In the following figure, RouterA, RouterB, and RouterC on the PIM-DM network establish PIM neighbor relationships by exchanging Hello messages. HostA joins multicast group G using Internet Group Management Protocol (IGMP) running between RouterA and HostA, but HostB does not join a multicast group.

Flooding mechanism
Flooding mechanism

The flooding process is as follows:

  1. Multicast source S sends a multicast packet to multicast group G.
  2. RouterC receives the multicast packet and performs the RPF check based on the unicast routing table. If the packet passes the RPF check, RouterC creates an (S, G) entry, in which the downstream interface list contains interfaces connected to RouterA and RouterB. RouterC forwards subsequent packets to RouterA and RouterB.
  3. RouterA receives the multicast packet from RouterC. The packet passes the RPF check, and RouterA creates an (S, G) entry, in which the downstream interface list contains the interface connected to HostA. RouterA forwards subsequent packets to HostA.
  4. RouterB receives the multicast packet from RouterC. Because the downstream network segment does not have group members or PIM neighbors, RouterB sends a Prune message to RouterC.

Pruning

When a PIM router receives a multicast packet, it performs an RPF check on the packet. If the packet passes the RPF check but the downstream network segment does not need to receive the multicast packet, the PIM router sends a Prune message to the upstream router. After receiving the Prune message, the upstream router deletes the downstream interface from the downstream interface list of the created (S, G) entry and no longer forwards multicast packets to the downstream interface. A leaf router initiates the prune mechanism, and the Prune message is sent upstream by hop along the MDT to prune the network segment with no group members.

The PIM router starts a prune timer for the pruned downstream interface. The interface resumes forwarding multicast packets after the timer expires. Subsequently, multicast packets are flooded throughout the entire network and new group members can receive multicast packets. If a leaf router connected to a network segment that has no group members receives the flooded multicast packets, the leaf router initiates the prune mechanism. PIM-DM updates the SPT periodically through the process of periodic flooding and pruning.

After a downstream interface of a leaf router is pruned, the leaf router will initiate either the graft or state refresh mechanism:

  • When new members join a multicast group on the network segment connected to the leaf router and want to receive multicast packets before the prune timer expires, the leaf router initiates the graft mechanism.

  • When no member joins a multicast group on the network segment connected to the leaf router and the downstream interface still needs to be suppressed, the leaf router initiates the state refresh mechanism.

In the following figure, no group member connects to RouterB, so RouterB sends a Prune message to the upstream router.

Pruning mechanism
Pruning mechanism

The prune process is as follows:

  1. RouterB sends a Prune message to RouterC, instructing RouterC not to forward data to the downstream network segment.
  2. After receiving the Prune message, RouterC stops forwarding data to its downstream interface connected to RouterB, and deletes this downstream interface from the (S, G) entry. The prune process for this network segment ends. RouterC sends multicast packets only to RouterA, which then forwards the packets to connected group members, such as HostA.

Graft

PIM-DM uses the graft mechanism to enable new group members on a pruned network segment to rapidly obtain multicast data. IGMP helps a leaf router learn whether new group members have joined a multicast group on the connected network segment. If a leaf router learns that new group members have joined multicast group G, the leaf router sends a Graft message to the upstream router. The message requests the upstream router to resume multicast packet forwarding on the downstream interface and to add the downstream interface to the downstream interface list of the (S, G) entry.

A graft process is initiated by a leaf router and ends at the upstream router that receives the multicast packets.

In the following figure, RouterC no longer sends multicast packets to RouterB after the prune process ends. When HostB joins multicast group G, RouterB initiates the graft mechanism.

Graft mechanism
Graft mechanism

The graft process shown in this example is as follows:

  1. RouterB wants to resume packet forwarding to HostB before the next flood-prune process, so it sends a Graft message to RouterC, requesting RouterC to resume multicast packet forwarding on the downstream interface connected to RouterB.
  2. After receiving the Graft message, RouterC resumes multicast packet forwarding on the interface and adds the interface to the downstream interface list of the (S, G) entry. The graft process for RouterB ends. RouterC sends subsequent multicast packets to RouterB, which then forwards the packets to HostB.

State Refresh

To prevent a pruned interface from resuming multicast packet forwarding after the prune timer expires, the first-hop router nearest to the multicast source periodically sends a State-Refresh message throughout the entire PIM-DM network. PIM routers receiving the State-Refresh message refresh the prune timer state. If no group member joins a multicast group on the network segment connected to a leaf router in a pruned branch, the upstream interface connected to this router remains suppressed.

In the following figure, RouterC's interface connected to RouterB is pruned, and no hosts under RouterB join a group.

State refresh mechanism
State refresh mechanism

The state refresh process shown in this example is as follows:

  1. RouterC sends a State-Refresh message to RouterA and RouterB.
  2. RouterC has a pruned interface and refreshes the prune timer state of this interface. When the next prune-graft process starts, the pruned interface is still disabled from forwarding multicast packets, because no group members connect to RouterB.

Assert

When multicast packets pass the RPF check on multiple PIM routers connecting to a network segment, the assert mechanism is required to ensure that only one PIM router forwards the multicast packets to the network segment. When a PIM router receives a multicast packet that is the same as the multicast packet it sends to other neighbors, the PIM router sends an Assert message with the destination address 224.0.0.13 to all other PIM routers on the same network segment. The PIM routers carry out assert election by comparing their parameters to those carried in the received Assert message. The election rules are as follows:

  1. If these routers have different unicast routing priorities, the router with the highest unicast routing priority wins.
  2. If these routers have the same unicast routing priority, the router with the smallest route cost to the multicast source wins.
  3. If these routers have the same unicast routing priority and the same route cost to the multicast source, the router with the highest IP address for the downstream interface wins.

A PIM router performs the following operations based on assert election results:

  • If a router wins the assert election, its downstream interface becomes the assert winner and is responsible for forwarding multicast packets to the shared network segment.

  • If a router loses the assert election, its downstream interface becomes an assert loser, which is deleted from the downstream interface list of the (S, G) entry and no longer forward multicast packets to the shared network segment.

After an assert election is complete, only one downstream interface exists on the shared network segment and it transmits only one copy of multicast packets. All assert losers periodically resume multicast packet forwarding, causing an assert election each time.

In the following figure, RouterB and RouterC receive multicast packets from the multicast source. The multicast packets from RouterA pass RPF checks on RouterB and RouterC, so both routers create (S, G) entries. Downstream interfaces RouterB and RouterC are connected to the same network segment, so they both send multicast data to this network segment.

Assert mechanism
Assert mechanism

The assert process shown in this example is as follows:

  1. RouterB and RouterC each receive a multicast packet from each other through a downstream interface, but both packets fail RPF checks and are discarded. RouterB and RouterC then send an Assert message to the network segment.

  2. RouterB compares its own routing information with that carried in the Assert message sent by RouterC. RouterB wins the assert election because its route cost to the multicast source is lower. RouterB continues to forward multicast packets to the network segment, whereas RouterC discards multicast packets because these packets fail RPF checks.

  3. RouterC compares its own routing information with that carried in the Assert message sent by RouterB. RouterC fails the assert election because its route cost to the multicast source is higher. RouterC then prohibits its downstream interface from forwarding multicast packets to the network segment and deletes the interface from the downstream interface list of the (S, G) entry.

PIM-SM (ASM Model)

In Any-Source Multicast (ASM) implementation, PIM-Sparse Mode (PIM-SM) forwards multicast packets in pull mode and is for use on large-scale networks with sparsely distributed group members. Devices on the PIM-SM network work as follows:

  • A Rendezvous Point (RP), an important PIM router, is available to provide services for group members or multicast sources that appear at any time. All PIM routers on the network know the position of the RP.

  • When a user host joins a multicast group G using IGMP, the last-hop router sends a Join message to the RP. A (*, G) entry is created hop by hop, and an RPT with the RP as the root is generated.

  • When a multicast source sends the first multicast packet to a multicast group G, the first-hop router encapsulates the multicast data in a Register message and sends the Register message to the RP in unicast mode. The RP then creates an (S, G) entry and registers multicast source information.

In the ASM model, PIM-SM uses the neighbor discovery, DR election, RP discovery, RPT setup, multicast source registration, SPT switchover, and assertion mechanisms. A Bootstrap router (BSR) can also be configured to implement fine-grained management in a single PIM-SM domain.

Neighbor Discovery

Neighbor discovery in PIM-SM is similar to that in PIM-DM. For details, see "PIM-DM Neighbor Discovery".

DR Election

The network segment where a multicast source or group member resides is usually connected to multiple PIM routers. These PIM routers exchange Hello messages to set up PIM neighbor relationships. The Hello messages carry the DR priority and the interface address of the network segment. Each PIM router compares its own information with the information carried in messages sent by its neighbors. A DR is then elected for multicast data forwarding on the source side or the receiver side. The election rules are as follows:

  • If all PIM routers on the network segment allow Hello messages to carry DR priorities, the PIM router with the highest DR priority is elected as the DR.

  • If multiple PIM routers have the same DR priority, or if at least one PIM router does not allow Hello messages to carry the DR priority, the PIM router with the largest IP address is elected as the DR.

If an existing DR becomes faulty, PIM neighbor relationships time out, and a new DR election is triggered among PIM neighbors.

The following figure, shows two types of DRs in the ASM model:

  • Source DR

    It is connected to a multicast source. On the shared network segment connected to the multicast source, the source DR is responsible for sending Register messages to the RP.

  • Receiver DR

    It is connected to group members. On the shared network segment connected to group members, the receiver DR is responsible for sending Join messages to the RP.

DR election
DR election

RP Discovery

An RP is responsible for processing Register messages from the multicast source and Join messages from group members. All PIM routers on the network know the location of the RP.

An RP can serve multiple multicast groups simultaneously, but each multicast group can be associated with only one RP. RPs can be configured statically or elected dynamically:

  • Static RP

    All PIM routers on the network are manually configured with the same RP address.

  • Dynamic RP

    Several PIM routers in a PIM domain are configured as candidate RPs (C-RPs) and an RP is elected from them. One or more PIM routers are configured as candidate BSRs (C-BSRs), and a BSR from them to collect and advertise C-RP information.

    During a BSR election, each C-BSR considers itself the BSR and sends the entire network a BootStrap message that carries its address and priority. Each PIM router compares the Bootstrap messages it receives from C-BSRs. The BSR is elected based on the result of the comparison:

    • If the C-BSRs have different priorities, the C-BSR with the highest priority (largest priority value) is elected as the BSR.

    • If the C-BSRs have the same priority, the C-BSR with the largest IP address is elected as the BSR.

    Dynamic RP election
    Dynamic RP election

    The RP election process is as follows:

    1. C-RPs send Advertisement messages to the BSR. An Advertisement message carries the address of the C-RP, the range of the multicast groups that it serves, and its priority value.

    2. The BSR collects the information in an RP-Set, encapsulates the RP-Set in a Bootstrap message, and advertises the message to each PIM-SM router on the network.

    3. Routers elect an RP from multiple C-RPs that serve a specific multicast group based on the RP-set and the following election rules:
      • The C-RP with the longest mask length of the served group address range matching the specific multicast group wins.

      • If multiple C-RPs have the same mask length, the C-RP with the highest priority (smallest priority value) wins.

      • If multiple C-RPs have the same priority values, the C-RPs use a hash algorithm to calculate their hash values. The C-RP with the largest hash value wins.

      • If all the preceding values are the same, the C-RP with the largest IP address wins.

    4. PIM routers save the relationship between this multicast group and its RP for subsequent operations. This relationship is the same on all PIM routers because they use the same RP-Set and the same election rules.

RPT Setup

A PIM-SM RPT is a multicast distribution tree (MDT) that uses an RP as the root and group member routers as leaves. In the following figure, when a host joins a multicast group G using IGMP, the receiver DR sends a Join message to the RP. A (*, G) entry is created hop by hop, and an RPT with the RP as the root is generated.

RPT setup
RPT setup

During RPT setup, PIM routers perform an RPF check before sending a Join message. Each router searches for a unicast route toward the RP, in which the outbound interface is the upstream interface and the next hop is the RPF neighbor. Join messages are forwarded from the receiver DR to the RP hop by hop along the unicast route.

Multicast Source Registration

Multicast source registration
Multicast source registration

In the following figure, a new multicast source on the PIM-SM network must register with the RP so that the RP can forward multicast data from this source to group members.

The registration and forwarding process is as follows:

  1. The multicast source sends a multicast packet to the source DR.
  2. After receiving the multicast packet, the source DR encapsulates the multicast packet into a Register message and sends the Register message to the RP.
  3. After receiving the Register message, the RP decapsulates it, creates an (S, G) entry, and sends multicast data to group members along the RPT.

SPT Switchover

A multicast group on a PIM-SM network can be associated with only one RP and sets up only one RPT. Normally, all multicast packets destined for a multicast group are encapsulated in Register messages and sent to the RP. The RP then decapsulates the packets and forwards them along the RPT to multicast group members. All multicast packets pass through the RP. If the number of multicast packets increases dramatically and the RP becomes heavily burdened, PIM-SM allows the RP or the receiver DR to trigger an SPT switchover.

  • SPT switchover triggered by the RP

    After receiving a Register message from the source DR, the RP decapsulates the Register message and forwards multicast packets along the RPT to group members. The RP also sends a Join message to the source DR to set up an SPT from the RP to the source.

    After the SPT is set up, the source DR forwards multicast packets directly to the RP. After the switchover, the source DR and RP no longer need to encapsulate or decapsulate packets.

  • SPT switchover triggered by the receiver DR

    In the following figure, the receiver DR periodically checks the forwarding rate of multicast packets. When the receiver DR finds that the forwarding rate is higher than the configured threshold, it triggers an SPT switchover.

    SPT switchover triggered by the receiver DR
    SPT switchover triggered by the receiver DR

    The SPT switchover is as follows:

    1. The receiver DR sends a Join message to the source DR hop by hop, creates an (S, G) entry hop by hop, and then sets up an SPT from the source DR to the receiver DR.
    2. After the SPT is set up, the receiver DR sends Prune messages along the RPT to the RP, which then deletes the downstream interface connected to the receiver DR from the (*, G) entry. After the prune action is complete, the RP no longer forward multicast packets along the RPT.
    3. Because the SPT does not pass through the RP, the RP continues to send Prune messages along the RPT to the source DR, which then deletes the downstream interface connected to the RP from the (S, G) entry. After the prune action is complete, the source DR no longer forward multicast packets along the SPT to the RP.

Assert

The assert mechanism in PIM-SM is similar to that in PIM-DM.

BSR Administrative Domain

To provide fine-grained network management, a PIM-SM network has both a global domain and multiple BSR administrative domains. This reduces the workload on individual BSRs and allows for the use of private group addresses to provide special services to users in specific domains.

Each BSR administrative domain maintains only one BSR, which serves multicast groups within a specific range. The global domain maintains a BSR that serves multicast groups not served by an administrative domain.

This section describes the relationship between BSR administrative domains and the global domain in terms of domain space, group address ranges, and multicast functions.

  • Domain space

    The following figure shows the relationship between BSR administrative domains and the global domain in terms of domain space.

    Domain space
    Domain space

    BSR administrative domains for the same group address contain different PIM routers. A PIM router belongs to only one BSR administrative domain. BSR administrative domains are independent of and isolated from each other. Each BSR administrative domain manages the multicast groups within a specific group address range. Multicast packets within this range can be transmitted only within this administrative domain and cannot cross its border.

    The global domain contains all PIM routers on the PIM-SM network. A multicast packet that does not belong to any BSR administrative domain can be transmitted throughout the entire PIM network.

  • Group address range

    The following figure shows the relationship between BSR administrative domains and the global domain in terms of group address ranges.

    Group address ranges
    Group address ranges

    Each BSR administrative domain serves multicast groups within a specific range. The group address ranges served by different BSR administrative domains can overlap. The group address range of BSR1 overlaps that of BSR3. The address of a multicast group that a BSR administrative domain serves is used as a private group address and is valid only in its BSR administrative domain.

    the group address range of the global domain is G-G1-G2 excluding group addresses G1 and G2.

  • Multicast function

    The global domain and each BSR administrative domain have their respective C-RP and BSR devices. These devices function only in the domain where they reside. Each domain holds independent BSR and RP elections.

    Each BSR administrative domain has a border. Multicast messages from this domain, such as C-RP Advertisement messages or BSR BootStrap messages, can be transmitted only within the domain from which they originate. Multicast messages from the global domain can be transmitted throughout the entire global domain and traverse any BSR administrative domain.

PIM-SM (SSM Model)

The SSM model uses IGMPv3/MLDv2 and PIM-SM technology. There is no need to maintain an RP, set up an RPT, or register a multicast source. An SPT can be built directly between the source and group members.

In the SSM model, user hosts know the locations of multicast sources before requesting multicast services. When user hosts join multicast groups, they can specify the sources from which they want to receive data. After receiving requests from user hosts, the receiver DR sends a Join message to the source DR. The Join message is then transmitted upstream hop by hop to set up an SPT between the source and group members.

In the SSM model, PIM-SM uses the neighbor discovery, DR election, and SPT setup mechanisms.

Neighbor Discovery

Neighbor discovery in PIM-SM is similar to that in PIM-DM.

DR Election

DR election in PIM-SM (SSM model) is similar to that in PIM-SM (ASM model).

SPT Setup

SPT setup
SPT setup

The SPT setup process is as follows:

  1. Using IGMPv3/MLDv2, RouterD and RouterE learn that packets from user hosts have the same multicast group address but are requesting multicast data from different source addresses. They send Join messages to sources hop by hop.
  2. PIM routers create (S1, G) and (S2, G) entries based on the Join messages and set up SPTs from S1 to HostA and from S2 to HostB.
  3. After SPTs are set up, the sources forward multicast packets along the SPTs to group members.

Comparison with the ASM Model

The major difference between the SSM and ASM models is that the SSM model allows hosts to specify multicast sources and the ASM does not. Table1 gives more detail about the differences between the two models.

Table 1-1 Comparisons between PIM implementations

Protocol

Model

Usage Scenario

Implementation

Protocol Independent Multicast - Sparse Mode (PIM-SM)

ASM model

Large-scale network where multicast group members are distributed sparsely

An MDT is set up when receivers join a multicast group. PIM-SM needs to maintain an RP, set up an RPT, and register a multicast source.

SSM model

Scenarios where user hosts know the exact locations of multicast sources in advance and can specify the sources from which they want to receive data before they join multicast groups

PIM-SSM does not need to maintain an RP, set up an RPT, or register a multicast source.

About This Topic
  • Author: Ge Kairong
  • Updated on: 2025-01-21
  • Views: 6282
  • Average rating:
Share link to