Patent Description:
Multicast is used in many types of communication networks to deliver various types of information.

The ietf document with title "BIER Penultimate Hop Popping" discloses that BIER PHP is applicable to any scenario where the multicast flow overlay edge router does not support BIER.

In at least some example embodiments, an apparatus includes at least one processor and at least one memory including program code, wherein the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least send, by an egress leaf router associated with a multicast domain toward a penultimate hop router of the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least receive, by the egress leaf router from the penultimate hop router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least send, by the egress leaf router toward the penultimate hop router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) service signaling or Ethernet Virtual Private Network (EVPN) service signaling. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid BIER Forwarding Router Identifier (BFR-ID) provided by the egress leaf router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV).

In at least some example embodiments, a non-transitory computer-readable medium includes instructions configured to cause an apparatus to at least send, by an egress leaf router associated with a multicast domain toward a penultimate hop router of the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least receive, by the egress leaf router from the penultimate hop router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least send, by the egress leaf router toward the penultimate hop router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) service signaling or Ethernet Virtual Private Network (EVPN) service signaling. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid BIER Forwarding Router Identifier (BFR-ID) provided by the egress leaf router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV).

In at least some example embodiments, a method includes sending, by an egress leaf router associated with a multicast domain toward a penultimate hop router of the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the method includes receiving, by the egress leaf router from the penultimate hop router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the method includes sending, by the egress leaf router toward the penultimate hop router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) service signaling or Ethernet Virtual Private Network (EVPN) service signaling. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid BIER Forwarding Router Identifier (BFR-ID) provided by the egress leaf router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV).

In at least some example embodiments, an apparatus includes means for sending, by an egress leaf router associated with a multicast domain toward a penultimate hop router of the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the apparatus includes means for receiving, by the egress leaf router from the penultimate hop router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the apparatus includes means for sending, by the egress leaf router toward the penultimate hop router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) service signaling or Ethernet Virtual Private Network (EVPN) service signaling. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid BIER Forwarding Router Identifier (BFR-ID) provided by the egress leaf router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV). Generally, the apparatus comprises means for performing steps of a corresponding method. The means may include circuit or circuitry configured to perform steps of the corresponding method. The means may include at least one processor and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus to perform steps of the corresponding method.

In at least some example embodiments, an apparatus includes at least one processor and at least one memory including program code, wherein the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least receive, by a penultimate hop router of a multicast domain from an egress leaf router associated with the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least send, by the penultimate hop router toward the egress leaf router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least send, by the penultimate hop router within the multicast domain based on the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, to send the advertisement including the multicast domain information of the penultimate hop router of the multicast domain, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least remove, from the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, to send the advertisement including the multicast domain information of the penultimate hop router of the multicast domain, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least maintain, within the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least receive, by the penultimate hop router from the egress leaf router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) signaling or Ethernet Virtual Private Network (EVPN) signaling. In at least some example embodiments, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least receive, by the penultimate hop router via the multicast domain, a packet including a multicast packet, a multicast domain header, and a multicast domain label, wherein the multicast packet includes a multicast payload and an upstream assigned label associated with the egress leaf router, remove, by the penultimate hop router from the packet the multicast domain label and the multicast domain header, to recover thereby the multicast packet, and forward, by the penultimate hop router toward the egress leaf router, the multicast packet. In at least some example embodiments, to forward the multicast packet, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least send, by the penultimate hop router, the multicast packet over each interface of the penultimate hop router on which the penultimate hop router received a route related to the multicast domain. In at least some example embodiments, to forward the multicast packet, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least determine, by the penultimate hop router, based on a mapping of the upstream assigned label for the egress leaf router to a multicast domain prefix for the egress leaf router, an interface of the penultimate hop router that is connected to the egress leaf router and send, by the penultimate hop router via the interface of the penultimate hop router that is connected to the egress leaf router, the multicast packet. In at least some example embodiments, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to at least determine the mapping of the upstream assigned label for the egress leaf router to the multicast domain prefix for the egress leaf router based on routes advertised by a routing information protocol. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain comprises an invalid BIER Forwarding Router Identifier (BFR-ID). In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV).

In at least some example embodiments, a non-transitory computer-readable medium includes instructions configured to cause an apparatus to at least receive, by a penultimate hop router of a multicast domain from an egress leaf router associated with the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least send, by the penultimate hop router toward the egress leaf router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least send, by the penultimate hop router within the multicast domain based on the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, to send the advertisement including the multicast domain information of the penultimate hop router of the multicast domain, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least remove, from the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, to send the advertisement including the multicast domain information of the penultimate hop router of the multicast domain, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least maintain, within the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least receive, by the penultimate hop router from the egress leaf router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) signaling or Ethernet Virtual Private Network (EVPN) signaling. In at least some example embodiments, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least receive, by the penultimate hop router via the multicast domain, a packet including a multicast packet, a multicast domain header, and a multicast domain label, wherein the multicast packet includes a multicast payload and an upstream assigned label associated with the egress leaf router, remove, by the penultimate hop router from the packet the multicast domain label and the multicast domain header, to recover thereby the multicast packet, and forward, by the penultimate hop router toward the egress leaf router, the multicast packet. In at least some example embodiments, to forward the multicast packet, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least send, by the penultimate hop router, the multicast packet over each interface of the penultimate hop router on which the penultimate hop router received a route related to the multicast domain. In at least some example embodiments, to forward the multicast packet, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least determine, by the penultimate hop router, based on a mapping of the upstream assigned label for the egress leaf router to a multicast domain prefix for the egress leaf router, an interface of the penultimate hop router that is connected to the egress leaf router and send, by the penultimate hop router via the interface of the penultimate hop router that is connected to the egress leaf router, the multicast packet. In at least some example embodiments, the non-transitory computer-readable medium includes instructions configured to cause the apparatus to at least determine the mapping of the upstream assigned label for the egress leaf router to the multicast domain prefix for the egress leaf router based on routes advertised by a routing information protocol. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain comprises an invalid BIER Forwarding Router Identifier (BFR-ID). In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV).

In at least some example embodiments, a method includes receiving, by a penultimate hop router of a multicast domain from an egress leaf router associated with the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the method includes sending, by the penultimate hop router toward the egress leaf router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the method includes sending, by the penultimate hop router within the multicast domain based on the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, sending the advertisement including the multicast domain information of the penultimate hop router of the multicast domain includes removing, from the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, sending the advertisement including the multicast domain information of the penultimate hop router of the multicast domain includes maintaining, within the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, the method includes receiving, by the penultimate hop router from the egress leaf router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) signaling or Ethernet Virtual Private Network (EVPN) signaling. In at least some example embodiments, the method includes receiving, by the penultimate hop router via the multicast domain, a packet including a multicast packet, a multicast domain header, and a multicast domain label, wherein the multicast packet includes a multicast payload and an upstream assigned label associated with the egress leaf router, removing, by the penultimate hop router from the packet the multicast domain label and the multicast domain header, to recover thereby the multicast packet, and forwarding, by the penultimate hop router toward the egress leaf router, the multicast packet. In at least some example embodiments, forwarding the multicast packet includes sending, by the penultimate hop router, the multicast packet over each interface of the penultimate hop router on which the penultimate hop router received a route related to the multicast domain. In at least some example embodiments, forwarding the multicast packet includes determining, by the penultimate hop router, based on a mapping of the upstream assigned label for the egress leaf router to a multicast domain prefix for the egress leaf router, an interface of the penultimate hop router that is connected to the egress leaf router and sending, by the penultimate hop router via the interface of the penultimate hop router that is connected to the egress leaf router, the multicast packet. In at least some example embodiments, the method includes determining the mapping of the upstream assigned label for the egress leaf router to the multicast domain prefix for the egress leaf router based on routes advertised by a routing information protocol. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain comprises an invalid BIER Forwarding Router Identifier (BFR-ID). In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV).

In at least some example embodiments, an apparatus includes means for receiving, by a penultimate hop router of a multicast domain from an egress leaf router associated with the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast domain information of the penultimate hop router includes an identifier of the penultimate hop router within the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes a request by the egress leaf router for the penultimate hop router to use penultimate hop popping. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the apparatus includes means for sending, by the penultimate hop router toward the egress leaf router, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the apparatus includes means for sending, by the penultimate hop router within the multicast domain based on the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain, an advertisement including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an invalid node identifier provided by the egress leaf router. In at least some example embodiments, the means for sending the advertisement including the multicast domain information of the penultimate hop router of the multicast domain includes means for removing, from the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, the means for sending the advertisement including the multicast domain information of the penultimate hop router of the multicast domain includes means for maintaining, within the advertisement, the invalid node identifier provided by the egress leaf router. In at least some example embodiments, the apparatus includes means for receiving, by the penultimate hop router from the egress leaf router, multicast service signaling including the multicast domain information of the penultimate hop router of the multicast domain. In at least some example embodiments, the multicast service signaling includes at least one of Multicast Virtual Private Network (MVPN) signaling or Ethernet Virtual Private Network (EVPN) signaling. In at least some example embodiments, the apparatus includes means for receiving, by the penultimate hop router via the multicast domain, a packet including a multicast packet, a multicast domain header, and a multicast domain label, wherein the multicast packet includes a multicast payload and an upstream assigned label associated with the egress leaf router, means for removing, by the penultimate hop router from the packet the multicast domain label and the multicast domain header, to recover thereby the multicast packet, and means for forwarding, by the penultimate hop router toward the egress leaf router, the multicast packet. In at least some example embodiments, the means for forwarding the multicast packet includes means for sending, by the penultimate hop router, the multicast packet over each interface of the penultimate hop router on which the penultimate hop router received a route related to the multicast domain. In at least some example embodiments, the means for forwarding the multicast packet includes means for determining, by the penultimate hop router, based on a mapping of the upstream assigned label for the egress leaf router to a multicast domain prefix for the egress leaf router, an interface of the penultimate hop router that is connected to the egress leaf router and means for sending, by the penultimate hop router via the interface of the penultimate hop router that is connected to the egress leaf router, the multicast packet. In at least some example embodiments, the apparatus includes means for determining the mapping of the upstream assigned label for the egress leaf router to the multicast domain prefix for the egress leaf router based on routes advertised by a routing information protocol. In at least some example embodiments, the multicast domain is a Bit Index Explicit Replication (BIER) domain, wherein the multicast domain information of the penultimate hop router of the multicast domain includes a BIER Forwarding Router Identifier (BFR-ID) of the penultimate hop router. In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain comprises an invalid BIER Forwarding Router Identifier (BFR-ID). In at least some example embodiments, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain includes an implicit null label or an implicit null type-length-value (TLV). Generally, the apparatus comprises means for performing steps of a corresponding method. The means may include circuit or circuitry configured to perform steps of the corresponding method. The means may include at least one processor and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus to perform steps of the corresponding method.

To facilitate understanding, identical reference numerals have been used herein, wherever possible, in order to designate identical elements that are common among the various figures.

Various example embodiments for supporting multicast in communication systems are presented. Various example embodiments for supporting multicast in communication systems are presented within the context of a communication system that is using Bit Index Explicit Replication (BIER) and BIER penultimate hop (PH) popping (PHP) to support multicast; however, it will be appreciated that various example embodiments for supporting multicast in communication systems may be used within the various other communication systems which may use various other multicast techniques to support multicast. In at least some example embodiments, supporting multicast in communication systems may include supporting use of multicast domain information of a PH router of the multicast domain by an egress leaf router associated with the multicast domain for multicast service signaling to a root router of the multicast domain. According to the invention, the egress leaf router associated with the multicast domain uses the multicast domain identification information of the PH router of the multicast domain (e.g., an identifier of the PH router within the multicast domain) as its own identification information (e.g., as opposed to using its own identifier) for multicast service signaling to the root router of the multicast domain. In at least some example embodiments, in which the multicast domain is based on BIER, supporting multicast in communication systems may include supporting use of BIER domain information (e.g., a BIER Forwarding Router Identifier (BFR-ID) or the like) of a PH BIER router by an egress leaf router associated with the BIER domain for multicast service signaling to a root BIER router of the BIER domain. It will be appreciated that at least some such example embodiments may obviate a need for assignment of a BFR-ID to an egress leaf router that is not part of the BIER datapath given that the PH BIER router removes the BIER header from packets before forwarding packets to the egress leaf router and, further, that obviating the need to assign a unique BFR-ID to the egress leaf router also may provide various advantages given that the BIER header usually can support only a limited number of bits (e.g., currently, most implementations support a <NUM>-bit Bit String Length (BSL) in the BIER header). It will be appreciated that these and various other example embodiments and advantages or potential advantages of supporting multicast in communication systems (including within communication systems in which multicast is supported using BIER) may be further understood by way of reference to the various figures, which are discussed further below.

<FIG> depicts an example embodiment of a communication system configured to support multicasting of information from a multicast source to a set of multicast receivers via a BIER domain.

The communication system <NUM> supports multicasting of content from a multicast source <NUM> to a set of multicast receivers <NUM>. The communication system <NUM> supports multicasting of content from the multicast source <NUM> to the multicast receivers <NUM> using multicast techniques. For example, the multicast source <NUM> may be a content server or other suitable source of content which may be multicast to the multicast receivers <NUM>. For example, the multicast receivers <NUM> may include end devices (e.g., end user devices, network devices, or the like) which are the consumers of the multicast content (e.g., smartphones, tablets, laptops, televisions, or the like), devices supporting end devices which are the consumers of the multicast content (e.g., customer edge routers, gateways, or the like), or the like, as well as various combinations thereof. For example, the multicast content may include multimedia content, video content, audio content, software (e.g., software releases, updated, patches, or the like), or any other types of content which may be distributed using multicast techniques.

The communication system <NUM> supports multicasting of multicast content from the multicast source <NUM> to the multicast receivers <NUM> using a hierarchy of multicast routers based on BIER. The hierarchy of multicast routers based on BIER supports a BIER domain <NUM>. The multicast routers include a root BIER router <NUM>, a set of penultimate hop (PH) BIER routers <NUM>, and a set of egress leaf routers <NUM>. The root BIER router <NUM> is configured as a Bit-Forwarding Ingress Router (BFIR) of the BIER domain <NUM>. The PH BIER routers <NUM> may be configured to perform penultimate hop popping (PHP) for the BIER domain <NUM>, in which case the PH BIER routers <NUM> will operate as the Bit-Forwarding Egress Routers (BFERs) of the BIER domain <NUM>. The set of egress leaf routers <NUM> may include BIER capable routers and BIER incapable routers. The root BIER router <NUM> and the PH BIER routers <NUM> are part of the BIER domain <NUM> (and, optionally, although not depicted, at least a portion of the egress leaf routers <NUM> also may be considered to be part of the BIER domain <NUM> under certain circumstances). For example, BIER may be supported based on RFC <NUM>.

The communication system <NUM>, as indicated above, supports multicasting of multicast content from the multicast source <NUM> to the multicast receivers <NUM> based on use of BIER within the BIER domain <NUM>. BIER utilizes BIER packets to transport multicast packets (e.g., an upstream assigned label and a multicast payload in the form of a customer multicast packet being sent from the multicast source <NUM> to the multicast receivers <NUM> of the multicast group) via the BIER domain <NUM>. BIER utilizes a BIER packet, including a BIER header and a BIER payload that includes the multicast packet, to transport the multicast packet via the BIER domain <NUM>. BIER utilizes a bit string (referred to as the BIER BitString) in the BIER header to identify egress leaf routers from which the multicast packets being transported in the BIER payloads are to exit the BIER domain <NUM> (referred to as BFERs), where each bit position in the bit string corresponds to a different one of the egress leaf routers (i.e., each bit of the bit string provides a unique BFR-ID for the egress leaf router with which it is associated). This provides a limitation on the number of BFERs which may be supported for the multicast domain within a single Set Identifier (SI), since the number of bit positions which may be supported in a single SI in the BIER header is limited. It will be appreciated that BIER may be hardware dependent (e.g., it is possible that not every type of hardware is capable of supporting the BIER datapath) such that, as noted above, the egress leaf routers <NUM> serving the multicast receivers <NUM> may include a combination of BIER capable routers (e.g., routers capable of supporting the BIER datapath) and BIER incapable routers (e.g., routers incapable of supporting the BIER datapath).

The communication system <NUM>, as indicated above, also supports use of BIER PHP, which has been introduced to allow BIER incapable routers to utilize the BIER domain <NUM> to operate as egress leaf routers <NUM> for various virtual private network (VPN) services (e.g., Multicast Virtual Private Network (MVPN) services, Ethernet Virtual Private Network (EVPN) services, or the like). In BIER PHP, the PH BIER router <NUM> receives a BIER packet including a BIER header and a BIER payload that includes a multicast packet (e.g., an upstream assigned label and a multicast payload in the form of a customer multicast packet being sent from the multicast source <NUM> to the multicast receivers <NUM> of the multicast group), removes the BIER header from the BIER packet to recover the multicast packet being transported as the BIER payload (e.g., the upstream assigned label and the multicast payload in the form of a customer multicast packet being sent from the multicast source <NUM> to the multicast receivers <NUM> of the multicast group), and forwards the multicast packet (e.g., the upstream assigned label and the multicast payload in the form of a customer multicast packet being sent from the multicast source <NUM> to the multicast receivers <NUM> of the multicast group) recovered from the BIER packet toward the egress leaf router(s) <NUM> with the upstream assigned label as the outermost label. For example, for MVPN/EVPN services, the upstream assigned label may be a Border Gateway Protocol (BGP) upstream assigned label (e.g., a Multiprotocol - BGP (MP-BGP) upstream assigned label, such as an MP-BGP upstream assigned label that is based on the https://tools. org/html/draft-zzhang-bess-mvpn-evpn-aggregation-label-<NUM> document) or other suitable specific label. For example, BIER PHP may be supported based on the https://tools. org/html/draft-zzhang-bier-php-<NUM> document. It is noted that, while the BIER incapable routers do not operate within the BIER datapath (e.g., since the BIER header is removed by the PH BIER routers), the https://tools. org/html/draft-zzhang-bier-php-<NUM> document for BIER PHP indicates that BIER signaling be started on the BIER incapable routers such that the BIER incapable routers are configured with BIER signaling and BFR-IDs.

The communication system <NUM> is configured to support use of BIER information of a PH BIER router <NUM> by an egress leaf router <NUM> supported by the PH BIER router <NUM>, thereby obviating a need for the assignment of unique BIER information to the egress leaf router <NUM> in addition to the PH BIER router <NUM>. For example, the BIER information of the PH BIER router <NUM> which may be used by egress leaf router <NUM> may be the BFR-ID of the PH BIER router. It will be appreciated that this may provide various advantages, because it obviates a need for assignment of a BFR-ID to a router that is not part of the BIER datapath (namely, the egress leaf router <NUM>) given that the PH BIER router <NUM> terminates BIER packets by removing the BIER headers from the BIER packets before forwarding the multicast packets (e.g., customer multicast packets and associated upstream assigned labels) being transport in the BIER payloads of the BIER packets to the egress leaf routers <NUM>. Additionally, it will be appreciated that obviating the need to assign a unique BFR-ID to the egress leaf router <NUM> also may provide various advantages given that the BFR-ID typically is a limitation in the BIER datapath (e.g., a limitation on the number of BFERs which may be supported in a given multicast domain within a certain SI). In other words, use of the BFR-ID of the PH BIER router <NUM> by an egress leaf router <NUM> supported by the PH BIER router <NUM>, rather than using its own unique assigned BFR-ID, essentially enables the PH BIER router <NUM> to become the BFER in place of the egress leaf router <NUM>. As discussed further, the use of BIER information of the PH BIER router <NUM> by an egress leaf router <NUM> supported by the PH BIER router <NUM> may be used by egress leaf routers <NUM> that are BIER incapable routers and/or BIER capable routers.

The communication system <NUM> is configured to support multicast in a manner configured to enable a PH BIER router <NUM> that is supporting an egress leaf router <NUM> to operate as a BFER in place of the egress leaf router <NUM> while also enabling the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM>, thereby obviating a need for assignment of a BFR-ID to the egress leaf router <NUM> since the egress leaf router <NUM> is not part of the BIER datapath given that the PH BIER router <NUM> supporting the egress leaf router <NUM> removes the BIER headers from the BIER packets before forwarding the multicast packets (e.g., customer multicast packets and associated upstream assigned labels) being transport in the BIER payloads of the BIER packets to the egress leaf router <NUM>. This enables the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> supporting the egress leaf router <NUM> in its multicast service signaling to the root BIER router <NUM> such that the root BIER router <NUM> will build the BIER header to the PH BIER router <NUM> supporting the egress leaf router <NUM>, rather than to the egress leaf router <NUM>, such that PHP may be used at the PH BIER router <NUM>. It will be appreciated that the multicast service signaling from the egress leaf router <NUM> to the root BIER router <NUM> may be based on a Border Gateway Protocol (BGP), such as MP-BGP, or other suitable multicast service signaling protocols. This provides much needed savings in the BIER header (Bit String) given that the BFR-IDs of the leaf routers are removed and only the BFR-IDs of the PH routers (which now are the new EBBRs) are advertised via the MP-BGP signaling (e.g., in the example in <FIG>, the actual bits being used on the BIER header if the egress leaf routers <NUM> advertise their own BIER-ID was <NUM> bits as compared to <NUM> bits now that the egress leaf routers <NUM> use the BFR-IDs of their connected PH BIER routers <NUM>).

The egress leaf router <NUM> sends, to the PH BIER router <NUM>, an indication of a request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM>. The indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> also may be considered to be an indication of a request by the egress leaf router <NUM> for the upstream BIER router to become a PH BIER router for the egress leaf router. The indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> also may be considered to be an indication of a request by the egress leaf router <NUM> for the upstream BIER router, when it becomes a PH BIER router for the egress leaf router, to also become a BFER (e.g., having its own BFR-ID and advertising itself to the BIER domain <NUM> as a BFER with its own BFR-ID) for the egress leaf router <NUM>. The egress leaf router <NUM> may send the indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> by advertising implicit null functionality to the PH BIER router <NUM>. The egress leaf router <NUM> may advertise implicit null functionality to the PH BIER router <NUM> using an implicit null label (e.g., using a label <NUM> value), an implicit null TLV (e.g., a TLV as described in the https://tools. org/html/draft-zzhang-bier-php-<NUM> document), or the like, as well as various combinations thereof. The egress leaf router <NUM> may send the indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> by advertising implicit null functionality to the PH BIER router <NUM> while setting the BFR-ID to an "Invalid BFR-ID" so as to indicate to the PH BIER router <NUM> that the egress leaf router will use the BFR-ID of the PH BIER router <NUM> and also that the egress leaf router <NUM> is configured to obtain its BFR-ID from the PH BIER router <NUM> automatically. It will be appreciated that other types of indications may be used by the egress leaf router <NUM> to indicate the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> (e.g., a new TLV or other suitable indicator). The advertising of implicit null functionality to the PH BIER router <NUM> by the egress leaf router <NUM> informs the PH BIER router <NUM> that it is to use PHP for popping the BIER headers from the BIER packets before forwarding the multicast packets (e.g., customer multicast packets and associated upstream assigned labels) being transport in the BIER payloads of the BIER packets to the egress leaf router <NUM>. The PH BIER router <NUM> receives, from the egress leaf router <NUM>, the indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM>. An example of such a process is depicted in <FIG>.

<FIG> depicts the communication system of <FIG>, for illustrating a request by an egress leaf router <NUM> to use information of a PH BIER router <NUM>. In general, <FIG> illustrates requests from each of the egress leaf routers <NUM> to the connected PH BIER routers <NUM> requesting use of the BFR-IDs of the connected PH BIER routers <NUM>. More specifically, <FIG> illustrates that the egress leaf router with BIER-Prefix=M sends a request to use BFR-ID=<NUM> of the connected PH BIER router <NUM>, the egress leaf routers with BIER-Prefix=N and BIER-Prefix=O send requests to use BFR-ID=<NUM> of the connected PH BIER router <NUM>, and the egress leaf routers with BIER-Prefix=P and BIER-Prefix=Q send requests to use BFR-ID=<NUM> of the connected PH BIER router <NUM>.

The PH BIER router <NUM>, based on the indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM>, performs a number of actions. The indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> causes the PH BIER router <NUM> to configure itself to use PHP for popping the BIER headers from BIER packets before forwarding the multicast packets (e.g., customer multicast packets and associated upstream assigned labels) being transport in the BIER payloads of the BIER packets to the egress leaf router <NUM>. The indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> causes the PH BIER router <NUM> to configure itself to operate as a BFER for the egress leaf router <NUM> (e.g., such that the PH BIER router <NUM> is configured to have its own BFR-ID and to advertise itself to the BIER domain <NUM> as a BFER with its own BFR-ID). The indication of the request by the egress leaf router <NUM> to use the BFR-ID of the PH BIER router <NUM> also causes the PH BIER router <NUM> to provide its BFR-ID to the egress leaf router <NUM> for use in its multicast signaling to the root BIER router <NUM>.

The PH BIER router <NUM> may provide its BFR-ID to the BIER domain <NUM> and to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router based on flooding of its BFR-ID. The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling. The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling via a BIER sub-TLV that includes the BFR-ID of the PH BIER router <NUM>. The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling via a routing information protocol (e.g., an IGP, a BGP, or the like) configured for advertising routes. The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling via a routing information protocol in various ways. An example of such a process is depicted in <FIG>.

<FIG> depicts the communication system of <FIG>, for illustrating flooding of information of a PH BIER router <NUM> from the PH BIER router <NUM> to the BIER domain <NUM> and to the egress leaf router <NUM> requesting to use information of the PH BIER router <NUM>. In general, <FIG> illustrates advertisements from the PH BIER routers <NUM> to the connected egress leaf routers <NUM> responsive to the requests from each of the egress leaf routers <NUM> to the connected PH BIER routers <NUM> requesting use of the BFR-IDs of the connected PH BIER routers <NUM>. More specifically, <FIG> illustrates that the PH BIER router <NUM> with BFR-ID=<NUM> advertises BFR-ID=<NUM> to the egress leaf router with BIER-Prefix=M, the PH BIER router <NUM> with BFR-ID=<NUM> advertises BFR-ID=<NUM> to the egress leaf routers with BIER-Prefix=N and BIER-Prefix=O, and the PH BIER router <NUM> with BFR-ID=<NUM> advertises BFR-ID=<NUM> to the egress leaf routers with BIER-Prefix=P and BIER-Prefix=Q.

The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling in a manner for indicating to the BIER domain <NUM> that the egress leaf router <NUM> has the same BFR-ID as the PH BIER router <NUM>.

The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling without indicating to the BIER domain <NUM> that the egress leaf router <NUM> is using the BFR-ID of the PH BIER router <NUM>. The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM> without indicating to the BIER domain <NUM> that the egress leaf router <NUM> is using the BFR-ID of the PH BIER router <NUM> by removing the BIER INFO TLV of the egress leaf router <NUM> (e.g., the BIER INFO TLV of the egress leaf router <NUM> received by the PH BIER router <NUM> from the egress leaf router <NUM>) from the route that is advertised by the PH BIER router <NUM>. It will be appreciated that, in this case, the egress leaf router <NUM> is removed from the BIER datapath.

The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling without indicating to the BIER domain <NUM> that the egress leaf router <NUM> is using the BFR-ID of the PH BIER router <NUM>. The PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM> without indicating to the BIER domain <NUM> that the egress leaf router <NUM> is using the BFR-ID of the PH BIER router <NUM> by leaving the BFR-ID in the BIER INFO TLV received from the egress leaf router (e.g., the "Invalid BFR-ID" provided in the BIER INFO TLV of the egress leaf router) unchanged in the route that is advertised by the PH BIER router <NUM>.

It will be appreciated that the PH BIER router <NUM> may flood its BFR-ID to the BIER domain <NUM>, including to the egress leaf router <NUM> that requested to use the BFR-ID of the PH BIER router <NUM>, using BIER signaling via a routing information protocol in various other ways.

The egress leaf router <NUM> receives the BFR-ID of the PH BIER router <NUM> from the PH BIER router <NUM>, sets the BFR-ID of the PH BIER router <NUM> as its own BFR-ID, and uses the BFR-ID of the PH BIER router <NUM> for multicast service signaling (e.g., MVPN, EVPN, or the like) for establishing multicast service. The egress leaf router <NUM>, as indicated above, may receive the BFR-ID of the PH BIER router <NUM> from the PH BIER router <NUM> using BIER signaling (e.g., a BIER sub-TLV) via a routing information protocol (e.g., an IGP, a BGP, or the like) configured for advertising routes.

The egress leaf router <NUM> sends multicast service signaling, using the BFR-ID of the PH BIER router <NUM>, toward the root BIER router <NUM> for establishing multicast service. The egress leaf router <NUM> sends the multicast service signaling to the connected PH BIER router <NUM>. The PH BIER router <NUM> receives the multicast service signaling from the egress leaf router <NUM> and forwards the multicast service signaling from the egress leaf router <NUM> toward the root BIER router <NUM> such that the root BIER router <NUM> learns the BFR-ID of the PH BIER router <NUM> from the multicast service signaling of the egress leaf router <NUM>. The root BIER router <NUM> receives the multicast service signaling, including the BFR-ID of the PH BIER router <NUM>. As discussed herein, the multicast service signaling may be based on BGP, such as MP-BGP (e.g., based on the https://tools. org/html/draft-ietf-bier-mvpn-<NUM> document), or using any other suitable multicast service signaling protocol. The multicast service signaling may include MVPN service signaling or EVPN service signaling for establishing MVPN service or EVPN service, respectively (or may include other suitable types of multicast service signaling). The multicast service signaling may be sent in various ways which may depend on the type of multicast service signaling. For example, in the case of MVPN service signaling or EVPN service signaling for establishing MVPN service or EVPN service, respectively, the egress leaf router <NUM> may use the BFR-ID of the PH BIER router <NUM> in the BFR-ID Field of the Tunnel Attribute (PTA) of the x-PMSI (Provider Service Multicast Interface) A-D route (e.g., as discussed in the https://tools. org/html/draft-ietf-bier-mvpn-<NUM> document). An example of such a process is depicted in <FIG>.

<FIG> depicts the communication system of <FIG>, for illustrating use of information of a PH BIER router <NUM> (e.g., the BFR-ID of the PH BIER router <NUM>) by an egress leaf router <NUM> for multicast service signaling. In general, <FIG> illustrates MVPN service signaling from two of the egress leaf routers <NUM> (illustrative, the egress leaf routers <NUM> with BIER-Prefix IDs "N" and "O") to their connect PH BIER router <NUM> (illustratively, the PH BIER router <NUM> having a BFR-ID of "<NUM>") using BGP MVPN AD Route BIER PTAs. More specifically, <FIG> illustrates MVPN service signaling using BGP MVPN AD Route BIER PTAs having the following fields: Tunnel type (= 0x0B), MPLS Label, Sub-Domain, BFR-ID (= PH <NUM> BFR-ID=<NUM>), and BFR-Prefix. It will be appreciated that fewer or more, as well as different, fields may be included within a BGP MVPN AD Route BIER PTA. It will be appreciated that other route types or data structures may be used for multicast service signaling (e.g., for MVPN service, for other types of service such as EVPN or the like, and so forth).

The root BIER router <NUM> receives the multicast service signaling of the egress leaf router <NUM>, learns the BFR-ID of the PH BIER router <NUM> from the multicast service signaling of the egress leaf router <NUM>, and uses the BFR-ID of the PH BIER router <NUM> for building the BIER packets that are used to transport multicast packets (including the multicast payloads of the multicast source <NUM> and associated upstream assigned labels) to the egress leaf router <NUM> for delivery to multicast receivers <NUM>. The root BIER router <NUM> uses the BFR-ID of the PH BIER router <NUM> for building the BIER packets, that are used to transport multicast packets (including the multicast payloads of the multicast source <NUM> and associated upstream assigned labels) to the egress leaf router <NUM> for delivery to multicast receivers <NUM>, by building the BIER header for the BIER packets to the PH BIER router <NUM> rather than to the egress leaf router <NUM> that initiated the multicast service signaling (since the BFR-ID of the PH BIER router <NUM>, rather than a unique BFR-ID of the egress leaf router <NUM>, is included in the multicast service signaling from the egress leaf router <NUM>). The root BIER router <NUM> uses the BFR-ID of the PH BIER router <NUM>, for building the BIER packets that are used to transport multicast packets (including the multicast payloads of the multicast source <NUM> and associated upstream assigned labels) to the egress leaf router <NUM> for delivery to multicast receivers <NUM>, by using the BFR-ID of the PH BIER router <NUM> to mark the appropriate bit in the BIER-Index of the BIER headers of BIER packets that are used to transport multicast packets (including the multicast payloads of the multicast source <NUM> and associated upstream assigned labels) to the egress leaf router <NUM> for delivery to multicast receivers <NUM> (namely, to mark the bit in the BIER-Index such that it identifies the PH BIER router <NUM> as the BFER for the BIER packets).

The root BIER router <NUM> sends the BIER packets, which are used to transport multicast packets (including the multicast payloads of the multicast source <NUM> and associated upstream assigned labels) to the egress leaf router <NUM> for delivery to multicast receivers <NUM>, via the BIER domain <NUM>. The BIER packets are routed through the BIER domain <NUM> based on the BIER header of the BIER packets until reaching the PH BIER router <NUM> associated with the egress leaf router <NUM>. The PH BIER router <NUM> removes the BIER headers from the BIER packets based on PHP (since the BIER headers of the BIER packets are marked with the BFR-ID of the PH BIER router <NUM>) to recover the multicast packets from the BIER payloads of the BIER packets and forwards the multicast packets (including the multicast payloads of the multicast source <NUM> and associated upstream assigned labels) such that the multicast packets reach the egress leaf router <NUM> and, thus, such that the multicast receivers <NUM> of the multicast group connected to the egress leaf router <NUM> receive the multicast payloads of the multicast packets (i.e., the original multicast payloads of the multicast source <NUM>). The PH BIER router <NUM> may forward the multicast packets recovered from the BIER packets, such that the multicast packets reach the egress leaf router <NUM>, in a number of ways as discussed further below. The egress leaf router <NUM> receives the multicast packets (including the multicast payloads of the multicast source <NUM> and associated upstream assigned labels) from the PH BIER router <NUM>, removes the upstream assigned labels from the multicast packets to recover the multicast payloads, and forwards the multicast payloads (i.e., the original payload of the multicast source, which may be customer multicast packets) toward associated multicast receivers <NUM> supported by the egress leaf router <NUM> based on the upstream assigned labels of the multicast packets. An example of such a process is depicted in <FIG>.

The PH BIER router <NUM>, as indicated above, may forward the multicast packets, such that the multicast packets reach the egress leaf router <NUM>, in a number of ways. However, it is noted that, since the PH BIER router <NUM> is not part of the BGP signaling, the PH BIER router <NUM> will not have an understanding of the upstream assigned label of the egress leaf router <NUM>, which may impact the manner in which the PH BIER router determines forwarding of multicast packets toward the egress leaf router <NUM>. For example, the PH BIER router <NUM> with BFR-ID=B does not know which upstream assigned label was assigned to the egress leaf router <NUM> with BIER-Prefix=N and which upstream assigned label was assigned to the egress leaf router <NUM> with BIER-Prefix=O and, similarly, the PH BIER router <NUM> with BFR-ID=C does not know which upstream assigned label was assigned to the egress leaf router <NUM> with BIER-Prefix=P and which upstream assigned label was assigned to the egress leaf router <NUM> with BIER-Prefix=Q. As a result, the PH BIER router <NUM> may perform forwarding of the multicast packets recovered from the BIER packets, such that the multicast recovered from the BIER packets reach the egress leaf router <NUM>, in a number of ways.

In at least some example embodiments, in which the PH BIER router <NUM> does not attempt to learn upstream assigned label information for the egress leaf router <NUM>, the PH BIER router <NUM> will broadcast the multicast packets on all interfaces on which the PH BIER router <NUM> received a route with the BIER TLV. This may cause the multicast packets to be sent to other egress leaf routers, in addition to the egress leaf router <NUM> for which the multicast packets are intended, however, the other egress leaf routers that do not need the multicast packets but which receive the multicast packets anyway may simply drop the multicast packets (e.g., based on a determination that the upstream assigned label attached to the multicast payload in the multicast packets does not match its own upstream assigned label).

In at least some example embodiments, in which the PH BIER router <NUM> does attempt to learn upstream assigned label information for the egress router <NUM>, the PH BIER router <NUM> will determine, based on the learned information, the interface to which the egress leaf router <NUM> is connected and send the multicast packets on the interface to which the egress leaf router <NUM> is connected. The upstream assigned label information that is learned for the egress leaf router <NUM> may include a mapping of the upstream assigned label for the egress leaf router <NUM> to a BIER prefix for the egress leaf router <NUM>. The PH BIER router <NUM> may learn the upstream assigned label information for the egress leaf router <NUM> by listening to the routes advertised by the routing information protocol (e.g., BGP routes of BGP) and, upon receiving a route for the egress leaf router <NUM> (or any other egress leaf router for which it is operating as a PH BIER router), noting the upstream assigned label for the egress leaf router <NUM> and the associated BIER prefix for the egress leaf router <NUM> such that the PH BIER router <NUM> may create and store the mapping of the upstream assigned label for the egress leaf router <NUM> to a BIER prefix for the egress leaf router <NUM>. For example, in the case of BGP, the PH BIER router <NUM> can be part of the BGP domain and listen to all BGP routes and, upon receiving a BGP AD route for the egress leaf router <NUM> for which it is acting as a PH router for, noting the upstream assigned unique label for the egress leaf router <NUM> and the BIER prefix for the egress leaf router <NUM> such that the PH BIER router <NUM> may now use the BIER prefix of the BGP AD route PTA to determine the interface of the PH BIER router <NUM> via which the PH BIER router <NUM> is connected to the egress leaf router <NUM> and then configure the datapath to forward the multicast packets with that specific upstream assigned label out of that interface.

It will be appreciated that, although primarily described with respect to sending of the BIER packets which are used to transport multicast payloads of the multicast source <NUM> to a single egress leaf router <NUM> of a single PH BIER router <NUM>, the BIER packets which are used to transport multicast payloads of the multicast source <NUM> may be sent to any suitable number of egress leaf routers <NUM> of any suitable number of PH BIER routers <NUM> depending on the set of multicast receivers <NUM> that belong to the associated multicast group.

<FIG> depicts the communication system of <FIG>, for illustrating multicasting of content from the multicast source <NUM> to multicast receivers <NUM> based on use of PHP at the PH BIER routers <NUM>. As depicted in <FIG>, a multicast payload from the multicast source <NUM> is multicasted to the multicast receivers <NUM> that are part of the multicast group. The multicast source <NUM> provides the multicast payload to the root BIER router <NUM> (e.g., where the multicast payload may be a customer multicast packet that is configured to transport content from the multicast source <NUM> to the multicast receivers <NUM> that are part of the multicast group, such as an IP packet, an MPLS packet, or the like). The root BIER router <NUM> receives the multicast payload from the multicast source <NUM>, adds the upstream assigned label to the multicast payload to form a multicast packet, and generates a BIER packet including the multicast packet (including the multicast payload and the upstream assigned label), based on addition of a BIER header and a BIER label, for supporting multicasting of the multicast packet (again, including the multicast payload and the upstream assigned label) to each of the PH BIER routers <NUM> supporting egress leaf routers <NUM> that are serving multicast receivers <NUM> that are part of the multicast group. The PH BIER routers <NUM> that receive the BIER packet including the multicast packet (again, including the multicast payload and the upstream assigned label) remove the BIER label and the BIER header and forward the multicast packet (again, including the multicast payload and the upstream assigned label)to egress leaf routers <NUM> that are serving multicast receivers <NUM> that are part of the multicast group (e.g., by sending the multicast packet over each interface of the PH BIER router <NUM> on which the PH BIER router <NUM> received a route with the BIER TLV, by sending the multicast packet over each interface of the PH BIER router <NUM> that is determined by the PH BIER router <NUM> from a mapping of the upstream assigned label for the respective egress leaf router <NUM> that is included within the multicast packet to a BIER prefix for the respective egress leaf router <NUM>, or the like). The egress routers <NUM> that receive the multicast packet (again, including the multicast payload and the upstream assigned label) remove the upstream assigned label from the multicast packet to recover the multicast payload and use the upstream assigned label to forward the recovered multicast payload to connected multicast receivers <NUM> that are part of the multicast group.

It will be appreciated that, in at least some embodiments, if an egress leaf router <NUM> does not advertise implicit null functionality or is not configured to obtain its BFR-ID automatically, the egress leaf router <NUM> may not use the BFR-ID of the PH BIER router <NUM> and, thus, may utilize its own BFR-ID rather than using the BFR-ID of the PH BIER router <NUM>.

It will be appreciated that, although primarily presented herein with respect to various example embodiments in which multicast is based on BIER, various example embodiments presented herein also may be used or adapted for use in networks in which multicast is based on various other types of multicast mechanisms.

<FIG> depicts an example embodiment of a method for supporting multicasting of information from a multicast source to a set of multicast receivers via a multicast domain based on use by an egress leaf router of multicast domain information of a penultimate hop router of the multicast domain. It will be appreciated that, although primarily presented as being performed serially, at least a portion of the functions of method <NUM> may be performed contemporaneously or in a different order than as presented with respect to <FIG>. At block <NUM>, method <NUM> begins. At block <NUM>, an egress leaf router associated with the multicast domain sends, toward a penultimate hop router of the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. At block <NUM>, the penultimate hop router of the multicast domain receives, from the egress leaf router associated with the multicast domain, the indication of the request by the egress leaf router to use multicast domain information of the penultimate hop router of the multicast domain. At block <NUM>, method <NUM> ends. It will be appreciated that various multicast support functions presented herein with respect to <FIG> may be incorporated within the context of method <NUM> of <FIG>.

Various example embodiments for supporting multicast in a communication system may provide various advantages or potential advantages. For example, various example embodiments for supporting multicast may support movement of the BFER role to routers higher in the BIER hierarchy (e.g., closer to the root BIER router), thereby increasing the number of egress leaf routers which may be supported given a finite number of BFR-IDs available for use within a BIER domain and an SI. For example, various example embodiments for supporting multicast may obviate a need for assignment of BFR-IDs to routers that are not part of the BIER datapath (namely, egress leaf routers) given that the PH BIER routers remove the BIER header from packets before forwarding the packets to the egress leaf routers. For example, various example embodiments for supporting multicast, by obviating the need to assign unique BFR-IDs to egress leaf routers, also may provide various advantages given that the BFR-ID typically is a limitation in the BIER datapath, e.g., a limitation on the number of BFERs which may be supported in a given multicast domain and an SI (e.g., most vendors support only a certain BSI BIER set index within a SI (e.g., <NUM>)), such as by providing savings to the number of bits that are used in the BSI within a given SI by setting the PH router BFR-ID in the BIER header and omitting the egress leaf router BFR-ID from the BIER header (since they are replaced by the PH router). For example, various example embodiments for supporting multicast may support use of the BFR-IDs of PF routers by BIER capable egress leaf routers, in addition to BIER incapable egress leaf routers, for supporting additional savings in the BIER BIT Index space and BFR-IDs based on use of PHP procedures. For example, various example embodiments for supporting multicast may enable a significantly larger number of egress leaf nodes to be supported without requiring use of BIER packet duplication with SIs. For example, if BIER supports only <NUM> bits in the BIER header, the BIER domain would otherwise be limited to use of only <NUM> leaf PE routers; however, by operating upstream PH BIER routers as BFERs and having the egress leaf routers utilize the BFR-IDs of the PH BIER routers, significantly more than <NUM> leaf PE routers may be supported even though BIER may only support <NUM> bits in the BIER header. Various example embodiments for supporting multicast in a communication system may provide various other advantages or potential advantages.

<FIG> depicts an example embodiment of a computer suitable for use in performing various functions presented herein.

The computer <NUM> includes a processor <NUM> (e.g., a central processing unit, a processor, a processor having a set of processor cores, a processor core of a processor, or the like) and a memory <NUM> (e.g., a random access memory, a read only memory, or the like). The processor <NUM> and the memory <NUM> may be communicatively connected. In at least some embodiments, the computer <NUM> may include at least one processor and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the computer to perform various functions presented herein.

The computer <NUM> also may include a cooperating element <NUM>. The cooperating element <NUM> may be a hardware device. The cooperating element <NUM> may be a process that can be loaded into the memory <NUM> and executed by the processor <NUM> to implement various functions presented herein (in which case, for example, the cooperating element <NUM> (including associated data structures) can be stored on a non-transitory computer-readable storage medium, such as a storage device or other suitable type of storage element (e.g., a magnetic drive, an optical drive, or the like)).

It will be appreciated that computer <NUM> may represent a general architecture and functionality suitable for implementing functional elements described herein, portions of functional elements described herein, or the like, as well as various combinations thereof. For example, computer <NUM> may provide a general architecture and functionality that is suitable for implementing one or more elements presented herein, such as a multicast source <NUM> or a portion thereof, a root BIER router <NUM> or a portion thereof, an element of BIER domain <NUM> or a portion thereof, a PH BIER router <NUM> or a portion thereof, an egress leaf router <NUM> or a portion thereof, a multicast receiver <NUM> or a portion thereof, or the like, as well as various combinations thereof.

It will be appreciated that at least some of the functions presented herein may be implemented in software (e.g., via implementation of software on one or more processors, for executing on a general purpose computer (e.g., via execution by one or more processors) so as to provide a special purpose computer, and the like) and/or may be implemented in hardware (e.g., using a general purpose computer, one or more application specific integrated circuits, and/or any other hardware equivalents).

It will be appreciated that at least some of the functions presented herein may be implemented within hardware, for example, as circuitry that cooperates with the processor to perform various functions. Portions of the functions/elements described herein may be implemented as a computer program product wherein computer instructions, when processed by a computer, adapt the operation of the computer such that the methods and/or techniques described herein are invoked or otherwise provided. Instructions for invoking the various methods may be stored in fixed or removable media (e.g., non-transitory computer-readable media), transmitted via a data stream in a broadcast or other signal bearing medium, and/or stored within a memory within a computing device operating according to the instructions.

It will be appreciated that the term "or" as used herein refers to a non-exclusive "or" unless otherwise indicated (e.g., use of "or else" or "or in the alternative").

Claim 1:
An apparatus comprised by an egress leaf router for use in a multicast domain including a root router and one or more penultimate hop routers, characterized in that it comprises:
means for sending, by an egress leaf router associated with the multicast domain toward a penultimate hop router of the multicast domain, an indication of a request by the egress leaf router to use multicast domain information of the penultimate hop router as its own identification information for multicast service signaling to the root router, the multicast domain information of the penultimate hop router including an identifier of the penultimate hop router within the multicast domain;
means for receiving by the egress leaf router from the penultimate hop router, an advertisement including the multicast domain information of the penultimate hop router;
means for sending, by the egress leaf router toward the root router, multicast service signaling including the multicast domain information of the penultimate hop router as its own identification information for establishing multicast service.