BIER Introduction and Underlay¶
First part of the 3-article series on BIER, discussing fundamental concepts and BIER underlay.
The series is composed of the following posts:
- Introduction to BIER and BIER Underlay (present article)
- BIER Table Lookup: https://juniper.github.io/techposts/bier-table-lookup/article
- BIER Overlay: https://juniper.github.io/techposts/bier-overlay/article
Introduction¶
BIER (Bit Index Explicit Replication) provides a multicast-capable layer 2.5 architecture with no per-tree multicast states in the core. The economy of scale implied in such a reduced state is achieved by carrying the information encoding the destination routers within the packet header itself. Detailed BIER architecture has been published in the IETF Standard RFC-8279. In generic multicast terms, BIER achieves a bi-directional, simultaneous selective, and inclusive PMSI (Provider Multicast Service Interface) functionality on a per packet basis while relying on state equivalent to longest prefix match in unicast, which, in itself was one of the key ingredients permitting IP to scale beyond other network technologies deployed.
BIER architecture is structured into three independent layers: a BIER underlay, a BIER layer, and ultimately, a BIER overlay. The underlay functionality may be provided by OSPF, ISIS, BGP, statically configured tables or even be programmed via a centralized infrastructure. The overlay utilizing BIER PMSI consists typically of MVPN, EVPN, or Global IP Multicast though BIER ultimately does not limit itself to any specific overlay technology or even to carrying just IP in architectural terms.
In a BIER multicast domain, each node with attached multicast listeners or sources is configured with a unique identification number, which represents a bit position in a bitstring included subsequently in the BIER header itself. A multicast packet enters a BIER domain at a Bit Forwarding Ingress Router (BFIR) and leaves the domain via one or more BIT Forwarding Egress Routers (BFER) while replication happens in the intermediate BFRs. A BIER domain may contain again one or more sub-domains. A sub-domain may be mapped to a particular multi-topology and the resulting flexibility helps to cover many use cases. For each of the sub-domains, the BFIR/BFER are identified by a unique BFR-ID within it while BFRs do not need BFR-IDs to participate in the BIER domain.
As a simple and convenient BIER underlay, ISIS can deliver the necessary infrastructure to build the BIER label and the forwarding bitmasks (FBM) in the BIER routers. BIER layer provides the encapsulation and various bitmask lengths (BML) support. The BIER overlay such as MVPN provides the necessary infrastructure to discover the BFER nodes and to create the bitstring and VPN label it will append to the multicast packet.
Juniper Networks PTX10002-36QDD is the first platform supporting BIER. It's a 36x 800Gbps router based on Express5 and running next-generation JUNOS operating system. In JUNOS , the BIER Underlay support is provided by ISIS and MVPN includes BIER PMSI configuration.
To start with a concrete example, let us consider the following customer domain where BIER is applied. Here R1 to R7 constitutes the core of the BIER domain. The multicast source is behind R1 at IXIA and listeners are at R4, R5, R6, R7 and are connected to IXIA.

ISIS acting as the BIER underlay advertises the BIER labels and builds the FBMs for each of the forwarding next-hop routers in the core. BIER layer provides the MPLS encapsulation, BSL, SI related functionalities and MVPN overlay uses the BIER PMSI to connect the BFIR and BFER's to send the multicast data.
CE1 (IXIA connected to R1) as the multicast source sends the multicast packet to PE1(R1). PE1 has remote receivers attached and it encapsulates the packet with BIER label, BIER header and VPN label and subsequently forwards the packets to the core. The BIER label helps to identify the BIFT table of the relevant sub-domains and BIER Header contains the bitstring info needed to identify the various Bit Forwarding Egress Routers (BFER) the packet has to be replicated to. Once the packet is received at the egress BFRs, it uses the VPN label learned via the MVPN overlay to redirect the packet to the respective VPN customer.
BIER on PTX10002-36QDD¶
BIER on PTX10002-36QDD with 23.4R2-S1 release supports ISIS as the preferred IGP and "default topology" and multiple sub-domains. In the upcoming releases, we will be supporting BIER on ISIS multi-topologies too.
In our journey to understanding BIER, we will be using the following topology.

- R1, R4, R5, R6, R7 are BFIR or BFER routers.
- R2 and R3 are BFR. R5 can act as BFR as well as BFIR/BFER.
- The links between R2&R3, R2&R5, R3&R7 and R5&R7 are in link bundle.
- R1, R4, R5, R6, R7 are the provider edge routers and customer edge router are simulated on the IXIA connected to these routers.
- R2 will be acting as the route-reflector for the MVPN family.
BIER Logical Topology¶

BIER Underlay¶
JUNOS-EVO supports ISIS as the BIER underlay protocol with default topology.
To enable the BIER functionality, configure bier in forwarding options as shown and reboot the system or restart the PFE.
ISIS with Single BIER Sub-Domain¶
BIER is configured on the BFIR and BFER as follows:
BIER is configured on the BFR as follows, please note that there is no bfr-id present in the BFR:
BIER sub-domain created is bound to the ISIS:
ISIS helps to inform the bier sub-domain created, the bfr-ids and bfr-prefixes within the domain:
The ISIS route table for BIER:
ISIS with Multiple BIER Sub-Domains¶
Each of the BFR router is configured with one more sub-domain, with BFR-ID's as follows:
| Router | BSL | BFR-ID | Sub-Set | BFR-ID Sub-Set Range |
|---|---|---|---|---|
| R1 | 256 | 1 | 0 | 1-256 |
| R2 | 256 | - | - | - |
| R3 | 256 | - | - | - |
| R4 | 256 | 300 | 1 | 257-512 |
| R5 | 256 | 600 | 2 | 513-768 |
| R6 | 256 | 1000 | 3 | 769-1024 |
| R7 | 256 | 7 | 0 | 1-256 |
BIER Config on BFIR/BFER router R1:
The ISIS binding to BIER sub-domain:
BIER Config on the BFR router R2:
ISIS carries both the BIER sub-domain information:
Label Allocation Schema in BIER¶
The label allocation schema is per IGP topology per sub-domain per sub-set. For example, if the DUT supports two IGP topologies each with two sub-domains with a sub-set of 4, the labels are allocated as follows:
| IGP Topology-ID | Label | Sub-Domain | BSL | SI |
|---|---|---|---|---|
| 1 | L1 | 10 | 256 | 0 |
| 1 | L2 | 10 | 256 | 1 |
| 1 | L3 | 10 | 256 | 2 |
| 1 | L4 | 10 | 256 | 3 |
| 1 | L5 | 20 | 256 | 0 |
| 1 | L6 | 20 | 256 | 1 |
| 1 | L7 | 20 | 256 | 2 |
| 1 | L8 | 20 | 256 | 3 |
| 2 | L9 | 10 | 256 | 0 |
| 2 | L10 | 10 | 256 | 1 |
| 2 | L11 | 10 | 256 | 2 |
| 2 | L12 | 10 | 256 | 3 |
| 2 | L13 | 20 | 256 | 0 |
| 2 | L14 | 20 | 256 | 1 |
| 2 | L15 | 20 | 256 | 2 |
| 2 | L16 | 20 | 256 | 3 |

Label Allocation Schema in JUNOS-EVO¶
PTX10002-36QDD with 23.4R2 supports BIER on a default ISIS topology with 18 BIER sub-domains(with default ISIS packet size) and sets varying from 2 to 16.

Label Allocation with a Single BIER Sub-Domain¶
In the below configuration, we have 4 sets defined, each set having 256 as the bit string length, ie the node supports 256*4 or 1024 unique BFIR/BFER nodes in the BIER sub-domain 100.
Each of the set is assigned with a label as shown below, as we have only BFR-IDs from the first set, rest of the table bier routes are marked as "Discard"
Once the number of sets is increased from 4 to 8, eight MPLS labels got created as shown below, one each for the sets
JUNOS supports 16 sets for each BIER sub-domain
Once the BFR-ID is configured in such a manner that one ID is present from each set, the BIER route status changes from "Discard" to "Composite"
In the following topology BFR-IDs 1, 4, 5, 6 & 7 are taken from the first set 1-256

The MPLS Label Table is as follows:
But when the BIER-ID is selected from all four sets, ie 1 from the first set (1-256), 300 from the second set (257-512), 600 from the third set (513-768) and 1000 from the fourth set (769-1024), the label allocation values changes as follows:

The "Discard" state changes to "Multicast (IPv4) Composite"
Label Allocation with Multiple BIER Sub-Domains¶
The underlay ISIS can support multiple bier sub-domains in the default topology. In the below diagram, we have two sub-domains.

As we have two BIER domains, for each domain, labels are created for the number of sets configured. Labels 16, 17, 18 and 19 are for the BIER sub-domain:100 and Labels 20, 21, 22, and 23 are for BIER sub-domain:200.
Conclusion¶
This first article covers the basics of BIER Multicast Replication, the label allocation and the underlay. Follow up posts will cover table lookup and overlay. Stay tuned.
Useful links¶
RFC/Drafts
- https://datatracker.ietf.org/doc/rfc8279/
- https://datatracker.ietf.org/doc/rfc8296/
- https://datatracker.ietf.org/doc/rfc8401/
- https://datatracker.ietf.org/doc/rfc8556/
- https://datatracker.ietf.org/doc/draft-ietf-bess-mvpn-evpn-aggregation-label/14/
- https://www.rfc-editor.org/rfc/rfc7902.html
PTX10002-36QDD:
- https://juniper.github.io/techposts/introducing-ptx10002-36qdd/article
- https://juniper.github.io/techposts/express-5-overview/article
- https://www.juniper.net/us/en/products/routers/ptx-series/ptx10002-36qdd-packet-transport-router.html
BIER TechPost Articles
- https://juniper.github.io/techposts/bier-table-lookup/article
- https://juniper.github.io/techposts/bier-overlay/article
- https://juniper.github.io/techposts/bier-mvpn-in-ptx-express-5/article
- https://juniper.github.io/techposts/eantc-bier-interop-testing-on-ptx10002-36qdd/article
EANTC 2024 InterOP Report
Glossary¶
- BIER: Bit Index Explicit Replication
- BFR: Bit Forwarding Router
- BFR-NBR: BFR Neighbor
- BFR-Prefix: BFR Prefix IP address
- BFER: Bit Forwarding Egress Router
- BFIR Bit Forwarding Ingress Router
- BIRT: Bit Index Routing Table
- BIFT: Bit Index Forwarding Table
- BML: Bit Mask Length
- BSL: Bit String Length
- BFR-Id: BFR Identifier
- BGP: Border Gateway Protocol
- DCB: Domain-wide Common Block
- DLU: Destination Lookup
- EANTC: European Advanced Networking Test Center
- EPP: Egress Packet Processor
- FBM: Forwarding Bit Mask
- IGMP: Internet Group Management Protocol
- IGP: Interior Gateway Protocol
- IGP: Ingress Parser
- ISIS: Intermediate System Intermediate System
- LDP: Label Distribution Protocol
- LSA: Link State Advertisement
- MCE: Multicast Engine
- m-LDP: Multicast LDP
- MPLS: Multi Protocol Label Switching
- MVPN: Multicast VPN
- MWC: MPLS World Congress
- OSPF: Open Shortest Path First
- PIM: Protocol Independent Multicast
- PMSI: Provider Multicast Service Interface
- RFC: Request For Comments
- RSVP-TE: Resource Reservation Protocol -- Traffic Engineering
- VRF: Virtual Routing and Forwarding
- VPN: Virtual Private Network
Acknowledgments¶
Thanks To: Jeffrey Zhang, Vinod Kumar Nagaraj, Venkatesan Parthasarathi, Poorna Pushkala Balasubramanian, Sambasiva Rao p,Antoni Przygienda, Nicolas Fevrier, Vasily Mukhin, Sanoj Vivekanandan, Dmitry Shokarev, Krzysztof Szarkowicz