BIER Bit Indexed Explicit Replication MBONED, IETF 92 Greg Shepherd.

Slides:



Advertisements
Similar presentations
MPLS VPN.
Advertisements

Identifying MPLS Applications
Copyright © 2004 Juniper Networks, Inc. Proprietary and Confidentialwww.juniper.net 1 Multicast in BGP/MPLS VPNs and VPLS draft-raggarwa-l3vpn-mvpn-vpls-mcast-
© 2009 Cisco Systems, Inc. All rights reserved. Cisco Public Presentation_ID 1 BGP Diverse Paths draft-ietf-grow-diverse-bgp-paths-dist-02 Keyur Patel.
Copyright © 2004 Juniper Networks, Inc. Proprietary and Confidentialwww.juniper.net 1 Multicast in BGP/MPLS VPNs draft-ietf-l3vpn-2547bis-mcast-00.txt.
© 2010 Cisco and/or its affiliates. All rights reserved. 1 Segment Routing Clarence Filsfils – Distinguished Engineer Christian Martin –
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—2-1 Label Assignment and Distribution Introducing Typical Label Distribution in Frame-Mode MPLS.
BIER Use case draft-kumar-bier-use-cases
CS Summer 2003 Lecture 14. CS Summer 2003 MPLS VPN Architecture MPLS VPN is a collection of sites interconnected over MPLS core network. MPLS.
MPLS H/W update Brief description of the lab What it is? Why do we need it? Mechanisms and Protocols.
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
Internet Networking Spring 2002
© 2006 Cisco Systems, Inc. All rights reserved. Implementing Secure Converged Wide Area Networks (ISCW) Module 4: Frame Mode MPLS Implementation.
Bit Indexed Explicit Replication BIER
Multicast VPN using BIER IETF 91, Honolulu ietf
MPLS L3 and L2 VPNs Virtual Private Network –Connect sites of a customer over a public infrastructure Requires: –Isolation of traffic Terminology –PE,
Announcements List Lab is still under construction Next session we will have paper discussion, assign papers,
A Study of MPLS Department of Computing Science & Engineering DE MONTFORT UNIVERSITY, LEICESTER, U.K. By PARMINDER SINGH KANG
1 Copyright © 2012, Elsevier Inc. All rights Reserved Chapter 4 Advanced Internetworking Computer Networks, 5th Edition.
1 Multi-Protocol Label Switching (MPLS) presented by: chitralekha tamrakar (B.S.E.) divya krit tamrakar (B.S.E.) Rashmi shrivastava(B.S.E.) prakriti.
L3VPN WG2013-Nov-71 Ingress Replication P-Tunnels in MVPN I ngress Replication has always been one of the P-tunnel technologies supported by MVPN But there’s.
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
IETF 68, MPLS WG, Prague P2MP MPLS-TE Fast Reroute with P2MP Bypass Tunnels draft-leroux-mpls-p2mp-te-bypass-01.txt J.L. Le Roux (France Telecom) R. Aggarwal.
Network Layer introduction 4.2 virtual circuit and datagram networks 4.3 what’s inside a router 4.4 IP: Internet Protocol  datagram format  IPv4.
IGP Multicast Architecture Lucy Yong, Weiguo Hao, Donald Eastlake Andrew Qu, Jon Hudson, Uma Chunduri November 2014 Honolulu USA draft-yong-rtgwg-igp-mutlicast-arch-00.
P2MP MPLS-TE FRR with P2MP Bypass Tunnel draft-leroux-mpls-p2mp-te-bypass-00.txt J.L. Le Roux (France Telecom) R. Aggarwal (Juniper) IETF 67, MPLS WG,
61st IETF Washington DC November 2004 BGP/MPLS IP Multicast VPNs draft-yasukawa-l3vpn-p2mp-mcast-00.txt Seisho Yasukawa (NTT) Shankar Karuna (Motorola)
Interior Gateway Protocol. Introduction An IGP (Interior Gateway Protocol) is a protocol for exchanging routing information between gateways (hosts with.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
IGP Multicast Architecture Lucy Yong, Weiguo Hao, Donald Eastlake Andrew Qu, Jon Hudson, Uma Chunduri November 2014 Honolulu USA draft-yong-rtgwg-igp-mutlicast-arch-00.
L3VPN WG2014-Jul-221 Ingress Replication P-Tunnels in MVPN I ngress Replication (IR) is one of the MVPN P-tunnel technologies But there’s a lot of confusing.
© J. Liebeherr, All rights reserved 1 Multicast Routing.
1MPLS QOS 10/00 © 2000, Cisco Systems, Inc. rfc2547bis VPN Alvaro Retana Alvaro Retana
Inter-Area P2MP Segmented LSPs draft-raggarwa-seamless-mcast-03.txt
Base Specification for Multicast in BGP/MPLS VPNs draft-raggarwa-l3vpn-2547-mvpn-00.txt Rahul Aggarwal Juniper Networks.
MPLS WG1 Targeted mLDP Base mLDP spec didn’t consider use of LDP multipoint extensions over Targeted mLDP sessions LDP speaker must choose “upstream LSR”,
July 24, 2007IETF 69, L3VPN WG1 Progress on Arch Doc draft-ietf-l3vpn-mcast-2547bis-mcast-05 Areas of new work: –Clarification of upstream multicast hop.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—6-1 Scaling Service Provider Networks Scaling IGP and BGP in Service Provider Networks.
Entropy Labels in MPLS Forwarding draft-kompella-mpls-entropy-label-02
73rd IETF - Minneapolis I. T. N. M. draft-wijnands-mpls-mldp-in-band-signaling-00.
Copyright © 2004 Juniper Networks, Inc. Proprietary and Confidentialwww.juniper.net 1 Multicast in VPLS draft-raggarwa-l2vpn-vpls-mcast-00.txt Rahul Aggarwal.
© 2015 Cisco and/or its affiliates. All rights reserved. Public 1 Toerless Eckert, IJsbrand Wijnands,
1 IJsbrand Wijnands (ED) Cisco Eric Rosen (ED) Juniper Andrew DolganowAlcatel-Lucent Tony PrzygiendaEricsson Sam AldrinHuawei.
Multi-protocol Label Switching
Multi-protocol Label Switching (MPLS) RFC 3031 MPLS provides new capabilities: QoS support Traffic engineering VPN Multiprotocol support.
MVPN/EVPN C-Multicast/SMET Route Enhancements Zhaohui Zhang, Robert Kebler Wen Lin, Eric Rosen Juniper Networks 96 th IETF, Berlin.
BIER Use Case in VXLAN draft-wang-bier-vxlan-use-case-00 Linda Wang (Presenting) Sandy. Zhang & F. Hu.
Global Table Multicast with BGP-MVPN Protocol
Multi Node Label Routing – A layer 2.5 routing protocol
Softwire Mesh Framework: Multicast
(How the routers’ tables are filled in)
Multicast VPN using BIER
Routing Protocols and Concepts
draft-wijnands-mpls-mldp-vpn-in-band-signaling-00
Chapter 5: Dynamic Routing
MPLS Basics 2 2.
Multicast/BIER As A Service
A Unified Approach to IP Segment Routing
Link-State Routing Protocols
Dynamic Routing and OSPF
BIER PIM SIGNALLING Hooman Bidgoli, Jayant Kotalwar, Andrew Dolganow (Nokia) Fengman Xu (Verizon) IJsbrand Wijnands, Mankamana Mishra (Cisco) Zhaohui.
BIER PIM Signaling Draft-hfa-bier-pim-tunneling-00 IETF 99
Link-State Routing Protocols
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
IS-IS VPLS for Data Center Network draft-xu-l2vpn-vpls-isis-02
Dynamic Routing Protocols part3 B
Optional Read Slides: Network Multicast
draft-liu-pim-mofrr-tilfa-00
BIER P2MP mLDP Signaling
BGP Signaled Multicast
Presentation transcript:

BIER Bit Indexed Explicit Replication MBONED, IETF 92 Greg Shepherd

The BIER Epiphany Only encode the end-receivers in the packet header. – Not the intermediate nodes. Assign end-receivers a Bit Position from a Bit String. – The smallest identifier possible. Encode the Bit String in the packet header. – Using some sort of encapsulation. Create a Bit Forwarding Table on all BIER nodes to allow multicast packet forwarding using the Bit String in the packet. – Derived from the RIB, SPF based. We call it, Bit Indexed Explicit Replication (BIER).

IETF The BIER idea was presented in a BOF at the IETF in Hawaii. – November 2014 – First IETF WG Meeting, March 2015 Vendors collaborating (presenting) with us; – Ericsson – Alcatel-Lucent – Juniper – Huawei Received very good traction, driving this to a new Working Group

BIER IETF BIER Charter: er/charter/ IETF 92 Hack-a-thon Best Hardcore Hack Winner: Markus Stenberg BIER in OpenWRT for Homnet

IETF drafts draft-shepherd-bier-problem-statement draft-wijnands-bier-architecture draft-wijnands-mpls-bier-encapsulation draft-kumar-bier-use-cases draft-rosen-l3vpn-mvpn-bier draft-psenak-ospf-bier-extensions draft-przygienda-bier-isis-ranges

Solution Overview

BitString BIER Domain LSA 1 - A/32 LSA 5 – E/32 LSA 4 – D/32 LSA 3 – C/32 LSA 2 – B/32 1. Assign a unique Bit Position from a BitString to each BFER in the BIER domain. 2. Each BFER floods their Bit Position to BFR-prefix mapping using the IGP (OSPF, ISIS) B/32 A/32 C/32 D/32 E/ Basic Idea BIER

BIER Domain 1. Assign a unique Bit Position from a mask to each edge router in the BIER domain. 2. Each edge router floods their bit-position-to-ID mapping with a new LSA – OSPF or ISIS 3. All BFR’s use unicast RIB to calculate a best path for each BFR-prefix BitMaskNbr 0011A 0100B 1000C 4. Bit Positions are OR’d together to form a Bit Mask per BFR-nbr 5. Packets are forwarded and replicated hop-by-hop using the Bit Forwarding Table.. Basic Idea BIER

Bit Index Forwarding Table D, F and E advertise their Bit positions in the IGP (flooded). A, B and C know the mapping between the Bit and RID, Based on shortest path route to RID, the Bit Mask Forwarding Table is created. C AB D F E BMNbr 0111B BMNbr 0011C 0100E BMNbr 0001D 0010F BMNbr 0011C B BM-ER

Forwarding Packets C AB D F E Overlay session 0001 BMNbr 0111B BMNbr 0011C 0100E BMNbr 0001D 0010F 0001 AND &0011&0111 &0001 Nbr 0011C B

Forwarding Packets C AB D F E Overlay session Nbr 0111B Nbr 0011C 0100E Nbr 0001D 0010F AND 0100 AND &0011&0111 &0001 &0100 Nbr 0011C B AND

Forwarding Packets C AB D F E Nbr 0111B Nbr 0011C 0100E Nbr 0001D 0010F AND AND Nbr 0011C B &0011&0111 &0001 &0100&0010 AND Overlay session

Forwarding Packets As you can see from the previous slides, the result from the bitwise AND (&) between the Bit Mask in the packet and the Forwarding table is copied in the packet for each neighbor. This is the key mechanism to prevent duplication. Look at the next slide to see what happens if the bits are not reset If the previous bits would not have been reset, E would forward the packet to C and vice versa.

Forwarding Packets C AB D F E Nbr 0111B Nbr 0011C 0100E Nbr 0001D 0010F 0111 AND AND Nbr 0011C B &0011&0111 &0100 AND Overlay session 0111

How many Bits and Where? The number of multicast egress routers that can be addressed is depending on the number of Bits that can be included in the BitString The BitString length is depending on the encapsulation type and router platform. We identified 5 different encoding options, most attractive below; 1.MPLS, below the bottom label and before IP header. 2.IPv6, extensions header.

MPLS encapsulation Top LabelBottom LabelBIER HeaderVPN LabelPayload MPLS Label stack from top to bottom IPv4/IPv6/L2 Between MPLS and IP Top LabelNormal label from Platform Label Space Bottom LabelThe last label in the MPLS header. BIER HeaderThe BIER header encoded between MPLS and IP header PayloadStart of the encapsulated packet | | Proto | Len | Entropy | | BitString (first 32 bits) ~ ~ ~ ~ BitString (last 32 bits) | | Reserved | BFIR-id | Proto = 1: MPLS packet with downstream-assigned label at top of stack.

MVPN over BIER

BIER replaces PIM, mLDP, RSVP-TE or IR in the core. BIER represents a full mesh (P2MP) connectivity between all the PE’s in the network. There is no need to explicitly signal any MDT’s (or PMSI’s). With MVPN there are many profiles, – This is partly due to the tradeoff between ‘State’ and ‘Flooding’. – Different C-multicast signaling options. MVPN over BIER, there is one profile. – BGP for C-multicast signaling. No need for Data-MDTs.

MVPN over BIER The BGP control plane defined for MVPN can be re-used. PIM (S,G)/(*,G) can be translated into BGP updates. Requirement, we depend on Leaf AD routes for explicit tracking! Big difference, there is no Tree per VPN…!!! The BIER packets needs to carry Source ID and upstream VPN context label C D A B BIER PIM RR (*,G):0:0001 (*,G) (S,G) (S1,G) (S2,G) (*,G):0:0010 (*,G):0:0001

Sets and Areas

BIER Sets To increase the scale we group the egress routers in Sets. Each Bit Position is unique in the context of a give Set The packet carries the Set ID. I A GB 1:0001 C D E F H 1:0010 1:0100 2:0001 2:0010 2:0100 Set 1 Set 2 1:0111 2:0111 SetBMNbr 10111I 2 I Note, Bit Positions 1,2,3 appear in both Sets, jet do not overlap due to Sets. Note, we create different forwarding entries for each Set J 1:0111 2:0111

BIER Sets There is no topological restriction which set an egress belongs to But it may be more efficient if it follows the topology I A GB 1:0001 C D E F H 1:0010 2:0001 1:0100 2:0010 2:0100 Set 1 Set 2 1:0111 2:0111 Note, we create different forwarding entries for each Set J Set 2 Set 1 SetBMNbr 10111I 2 I 2:0001 1:0100 1:0011 2:0110

BIER Sets If a multicast flow has multiple receivers in different Sets, the packet needs to be replicated multiple times by the ingress router, for each set once. Is that a problem? We don’t think so… The Set identifier is part of the packet. Can be implemented as MPLS label.

BIER Area A bit Mask only needs to be unique in its own area. ABR’s translate Bit Masks between area’s. Requires a IP lookup and state on the ABRs. This is very similar for ‘Segmented Inter-AS MVPN’. B AABR BMNbr 0:10ABR {0:01}{0:10} {0:01} BMNbr 0:01A BMNbr 0:01B BMNbr 0:10ABR Area 1Area 2

Interdomain BIER A bit Mask only needs to be unique in its own area. Requires a IP lookup and state on peering routers. P2P Peering link could use PIM or IGMP/MLD to join outside BIER domain P2MP Peering exchanges could run BIER, peering routers then opperate as ABRs, but no PIM signaling between domains. A AB BMNbr 0:10B {0:01}{0:10} {0:01} BMNbr 0:01A BMNbr 0:01B BMNbr 0:10B SP1SP2 B

BIER Forwarding

BIER Forwarding, neighbor based. When a packet is received with a BitString, it needs to be matched against each Neighbor in the BFT to determine which neighbor(s) to replicate the packet to. This model works well for systems that have multi-cores and allow parallel processing. Each neighbor can be processed independently in parallel. Its works less well for serialized processing as it requires a neighbor walk for each packet. BIER Forwarding Table 54321Nbr 1A 1B 1C 11D Packet IN Packet OUT = & Packet OUT = & &

BIER Forwarding, Bit Indexed We translate the BFT neighbor table in to a table sorting on Bit Position (and not by neighbor). We walk the Bit Mask in the packet and Index into the FIB table. BFT Neighbors 54321Nbr 1A 1B 1C 11D BFT Indexed 54321Nbr D A B C D

BIER FIB Label Forwarding Table 54321Nbr D A B C D BIER Forwarding, Bit Indexed We walk the Bits in the packet, as soon as we hit a ‘1’, we copy the packet, index into the FIB table with the position of the Bit. The Bit Mask entry is reverse ‘&’ with the Bit Mask in the packet. This resets the Bits that where processed Packet IN 1 Walk Bit Mask Packet OUT = & Copy &

BIER FIB Label Forwarding Table 54321Nbr D A B C D BIER Forwarding, Bit Indexed We walk the Bits in the packet, as soon as we hit a ‘1’, we copy the packet, index into the FIB table with the position of the Bit. The Bit Mask entry is reverse ‘&’ with the Bit Mask in the packet. This resets the Bits that where processed Packet IN Packet OUT 5432 Walk Bit Mask = Copy & = Packet OUT & Copy & 11011

BIER Forwarding, Bit Indexed Walking the bits in a Bit String takes less clock cycles compared to walking a list of neighbors. For that reason its faster to walk the Bit String and index into the neighbor table. The table is a NxN bit matrix, where N is the Bit String length. Bits that where already processed are reset so we don’t processes them if they appears later in a Bit String. This way we avoid multiple copies being forwarded. Kudo’s to John Bettink!

BIER Forwarding, Bit Indexed Walking the Bit String in the packet is basically a repeating of ‘Find First Set’ Bit operation. Could be optimized to record the last position. – Checkout Bruijn sequence (Count the consecutive zero bits) Is supported in compilers ffs and can be done in HW fairly easily.

Conclusions

Advantages Packets forwarded via BIER follow the unicast path towards the receiver, inheriting unicast features like FRR and LFA. There is no per multicast flow state in the network. Multicast convergence is as fast as unicast, there is no multicast state to re-converge, signal, etc. Nice plugin for SDN, its only the ingress and egress that need to exchange Sender and Receiver information. The core network provides a many-2-many connectively between all BIER routers by default following the IGP. No Multicast control protocol in the network.

Disadvantages The Bit String length has an upper bound and may not cover all deployment scenarios. Using sets to increase the number of egress routers may cause the ingress to replicate the packet multiple times. Using area’s requires the ABR to have state. Existing ‘low-end’ platforms are less flexible to adopt BIER.

Questions?