An MPLS-Based Forwarding Plane for Service Function Chaining

Slides:



Advertisements
Similar presentations
Network Layer IPv6 Slides were original prepared by Dr. Tatsuya Suda.
Advertisements

Network Service Header (NSH) draft-quinn-sfc-nsh IETF 90
IP Security. Overview In 1994, Internet Architecture Board (IAB) issued a report titled “Security in the Internet Architecture”. This report identified.
MOBILITY SUPPORT IN IPv6
COS 420 Day 16. Agenda Assignment 3 Corrected Poor results 1 C and 2 Ds Spring Break?? Assignment 4 Posted Chap Due April 6 Individual Project Presentations.
IPSec IPSec provides the capability to secure communications across a LAN, across private and public wide area networks (WANs) and across the Internet.
Application of PWE3 to MPLS Transport Networks
MPLS Label Last Update Copyright 2011 Kenneth M. Chipps Ph.D. 1.
K. Salah1 Security Protocols in the Internet IPSec.
Multi-protocol Label Switching (MPLS) RFC 3031 MPLS provides new capabilities: QoS support Traffic engineering VPN Multiprotocol support.
J. Halpern (Ericsson), C. Pignataro (Cisco)
SFC Trace Issue Analysis and Solutions IETF 94 Yokohama draft-yang-sfc-trace-issue-analysis-00 Xu. Yang L. Zhu G. Karagiannis.
VPNs & IPsec Dr. X Slides adopted by Prof. William Enck, NCSU.
Konstantin agouros Omkar deshpande
Ready-to-Deploy Service Function Chaining for Mobile Networks
Requirements for LER Forwarding of IPv4 Option Packets
UDP Encapsulation for IP Tunneling
Connecting MPLS-SPRING Islands over IP Networks
draft-patel-raszuk-bgp-vector-routing-01
Residence Time Measurement draft-mirsky-mpls-residence-time-02
ODL SFC, Implementing IETF SFC November 14, 2016
SFC Working Group Session 97th IETF Seoul, South Korea Chairs overview
An IPv6 Flow Label Specification Proposal
Requirements for Ring Protection in MPLS-TP
Segment Routing (SR) Introduction and Tutorial
Presenter: Jeffrey Zhang
In-Band Authentication Extension for Protocol Independent Multicast (PIM) draft-bhatia-zhang-pim-auth-extension-00 Manav Bhatia
Advertising Encapsulation Capability Using OSPF
Multi Protocol Label Switching (MPLS)
Multi-layer OAM for SFC Networks draft-wang-sfc-multi-layer-oam-09
An MPLS-Based Forwarding Plane for Service Function Chaining
MPLS Basics 2 2.
Guide to TCP/IP Fourth Edition
Debashish Purkayastha, Dirk Trossen, Akbar Rahman
CHAPTER 8 Network Management
N. Kumar, C. Pignataro, F. Iqbal, Z. Ali (Presenter) - Cisco Systems
Zhenbin Li, Shunwan Zhuang Huawei Technologies
Service Function Chaining-Enabled
A Unified Approach to IP Segment Routing
Greg Mirsky Jeff Tantsura Mach Chen Ilya Varlashkin
EVPN Interworking with IPVPN
Bala’zs, Norm, Jouni DetNet WG London, 23rd March, 2018
Xiaohu Xu & Stewart Bryant (Huawei) Hamid Assarpour (Broadcom)
BIER for EVPN BUM Traffic
Xiaohu Xu (Huawei) Stewart Bryant (Huawei) Hamid Assarpour (Broadcom)
draft-ietf-detnet-dp-sol-00 Issues
Carlos J. Bernardos, Alain Mourad, Akbar Rahman
draft-sitaraman-mpls-rsvp-shared-labels-00
Separating Routing Planes using Segment Routing draft-gulkohegde-spring-separating-routing-planes-using-sr-00 IETF 98 – Chicago, USA Shraddha Hegde
Xiaohu Xu (Huawei) Stewart Bryant (Huawei) Hamid Assarpour (Broadcom)
IETF 100, November 2017 Singapore
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.
Comparing draft-ietf-mpls-sfc and draft-malis-mpls-sfc-encapsulation
Consideration of IPv6 Encapsulation for Path Services draft-li-6man-ipv6-sfc-ifit-00 Zhenbin Li, Shuping Peng.
DetNet Data Plane design team IETF 98, Chicago, 2017
draft-guichard-sfc-nsh-sr-02
Return Path in SFC OAM
IPv6 Encapsulation for IOAM - Enhancement of IPv6 Extension Headers draft-li-6man-ipv6-sfc-ifit-01 draft-li-6man-enhanced-extension-header-00 Zhenbin.
BIER in IPv6 draft-zhang-bier-bierin6-03
BGP-LCU draft-szarecki-idr-bgp-lcu-traffic-steering-00
How OAM Identified in Overlay Protocols draft-mirsky-rtgwg-oam-identify Greg Mirsky IETF-104 March 2019, Prague.
draft-ietf-bier-ipv6-requirements-01
OAM for Deterministic Networks draft-mirsky-detnet-oam
Editors: Bala’zs Varga, Jouni Korhonen
Internet Protocol version 6 (IPv6)
Geneve applicability for service function chaining draft-boutros-nvo3-geneve-applicability-for-sfc-02 Sami Boutros Dharma Rajan Philip Kippen Pierluigi.
EVPN control plane for Geneve draft-boutros-bess-evpn-geneve-03
Large-Scale Deterministic Network Update
Inter-AS OAM for SR Networks IETF 105, Montreal
BIER Penultimate Hop Popping draft-zzhang-bier-php-00
Presentation transcript:

An MPLS-Based Forwarding Plane for Service Function Chaining draft-farrel-mpls-sfc-02 Stewart Bryant <stewart.bryant@gmail.com> Adrian Farrel <afarrel@juniper.net> John Drake <jdrake@juniper.net> IETF-100, Singapore, November 2017

Where To Have This Discussion? SFC WG has developed problem statement and architecture for SFC We re-use these SFC chartered to work on “generic encapsulation” that is “agnostic to the layer at which it is applied” Has developed the NSH This work is specific to an MPLS forwarding plane and uses an MPLS encapsulation In this meeting we present in MPLS and SFC Need review from experts Want to be sure MPLS parts work Want to be sure SFC parts work Some functions need specific MPLS extensions Let the chairs and ADs work out where the work belongs

Recall the SFC Architecture 2 SFI4 SFI5 SFI6 Classifier SFI1 SFI3 Sources SFC Proxy . Destinations SFF1 SFP SFF2 SFF3 Packets flow from source to destination Packets are classified onto a Service Function Path (SFP) SFP traverses a series of Service Function Forwarders (SFFs) Each SFF delivers packets on the SFP to a specific Service Function Instance (SFI) SFC Proxy may be placed between SFF and SFI

Objectives / Non-objectives Not trying to replace or obsolete NSH Looking at a specific environment where deployed MPLS routers can serve as SFFs No change to forwarding plane Able to forward SFC packets “at line speed” Support both modes of MPLS forwarding Label swapping (also known as traditional MPLS) Label stacking (also known as MPLS Segment Routing) (Advanced function: allow “mix” of swapping and stacking) Aim to get high level of SFC functionality Possible that some features will be sacrificed in compromise with desire to achieve points 2 and 3 Must support SFC architecture (RFC 7665) Should support metadata Try to integrate with control plane solutions draft-ietf-bess-nsh-bgp-control-plane

Service Function Label Overview of Solution Basic building block is a two-label unit Labels included as Label Stack Entries Neither of the labels can be in the range 0..15 I.e., must not overlap with Special Purpose Label values This two-label unit is used differently for label swapping and label stacking SFC Context Label Service Function Label

Service Function Label = SI MPLS Label Swapping Tunnels between SFFs “as normal” Of course, we are interested in MPLS as the transport SPI and SI used “as normal” for NSH Some limitation as SPI is constrained here to 20 bits MPLS-SFC processing… Labels are looked up and acted on by SFF to determine next hop Maybe forward to SFI or SFC proxy Maybe forward to next SFF In some cases action can be achieved simply through SPI In other cases need the two label context SI is updated before further forwarding (it’s a swap) SPI and SI set during classification Potentially also during re-classification Tunnel Labels SFC Context Label = SPI Service Function Label = SI Payload

Label Stacking (MPLS-SR) Tunnel labels might not be needed SFC Context Label can be the SID of the SFF MPLS-SR processing Stack of two-label units SFC Context Label Tells you how to get to next SFF (tunnel of SR) SF Label identifies the SF given the SFC context Pop the two-label unit before forwarding to next SFF Tunnel Labels SFC Context Label Service Function Label SFC Context Label Service Function Label Payload

What About Metadata? MPLS encapsulation not well suited for carrying “arbitrary” metadata We define an Extended Special Purpose Label This three-label sequence can be included at the bottom of the label stack Metadata label is an index into a store of metadata Must also not use 0..15 Store may be populated though management plane, control plane, or in-band (next slide) This approach is not good for “per-packet metadata” (e.g., hashes) Works fine for per-SFP or per-flow metadata 15 = Extended Special Purpose Label Follows Metadata Label Indicator (MLI) Metadata Label

In-Band Metadata Distribution Consider draft-farrel-sfc-convent Defines use of NSH with Next Protocol == None Can be used to send NSH packets along an SFP without carrying payload (but still carrying metadata) This draft defines how to do this in MPLS Use an Extended Special Purpose Label Hence, a three label sequence Placed at the bottom of the label stack Rest of stack exactly as for SFP Metadata carried as payload Formatted as TLV Type field defined by SFC WG for NSH Metadata as defined by SFC WG 15 = Extended Special Purpose Label Follows Metadata Present Indicator (MPI) Metadata Label Length Type Metadata

Next Steps There are always things to polish, but… This is now relative stable Support for swapping and stacking in a common way took some effort, but has good benefits Fits with BESS control plane work To the authors it seems “obvious” What do other people think? The authors think this is in charter for MPLS WG Use of special purpose labels belongs in MPLS But obviously it needs review by SFC WG Actions for chairs Decide where this belongs Think about adoption