TLV Parsing in VPP Hongjun Intel Danny Intel Keith Cisco

Slides:



Advertisements
Similar presentations
IPv6. Major goals 1.support billions of hosts, even with inefficient address space allocation. 2.reduce the size of the routing tables. 3.simplify the.
Advertisements

1 Internet Protocol Version 6 (IPv6) What the caterpillar calls the end of the world, nature calls a butterfly. - Anonymous.
2: Comparing IPv4 and IPv6 Rick Graziani Cabrillo College
NETWORK LAYER (1) T.Najah AlSubaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Network Service Header (NSH) draft-quinn-sfc-nsh IETF 90
Introducing MPLS Labels and Label Stacks
A Compression Format for RPL Control Messages draft-goyal-roll-rpl-compression-00 Mukul Goyal University of Wisconsin Milwaukee.
Variable Length Data and Records Eswara Satya Pavan Rajesh Pinapala CS 257 ID: 221.
IP Protocol. The Internet Protocol (IP) is a network-layer (Layer 3) protocol that contains addressing information and some control information that enables.
Source Port # (16)Destination Port # (16) Sequence Number (32 bits) Acknowledgement Number (32 bits) Hdr Len (4) Flags (6)Window Size (16) Options (if.
Oct 19, 2004CS573: Network Protocols and Standards1 IP: Datagram and Addressing Network Protocols and Standards Autumn
13.6 Representing Block and Record Addresses Ramya Karri CS257 Section 2 ID: 206.
Gursharan Singh Tatla Transport Layer 16-May
Bhanu Choudhary CS257 Section 1 ID: 101.  Introduction  Addresses in Client-Server Systems  Logical and Structured Addresses  Pointer Swizzling 
13.6 Representing Block and Record Addresses
IETF SFC: Service Chain Header draft-zhang-sfc-sch-01
CSE4213 Computer Networks II
BAI513 - PROTOCOLS ARP BAIST – Network Management.
Linux File system Implementations
Cisco Confidential © 2010 Cisco and/or its affiliates. All rights reserved. 1 draft-pillay-esnault-ospf-service-distribution-00.txt Padma Pillay-Esnault.
73rd IETF - Minneapolis I. T. N. M. draft-wijnands-mpls-mldp-in-band-signaling-00.
Extended Attributes RADEXT - Interim Alan DeKok FreeRADIUS.
Residence Time Measurement draft-mirsky-mpls-residence-time-04 Greg Mirsky John Drake
Network Service Header (NSH) draft-quinn-sfc-nsh IETF 89 A. Chauhan Citrix U. Elzur Intel B. McConnell Rackspace C. Wright Red Hat Inc. P. Quinn J. Guichard.
Madhuri Gollu Id: 207. Agenda Agenda  Records with Variable Length Fields  Records with Repeating Fields  Variable Format Records  Records that do.
8 Byte BGP Communities Finding a practical way forward.
1 Lot 3 - Développements MNGT To FAC-CM Interface Version 1.
J. Halpern (Ericsson), C. Pignataro (Cisco)
File System Implementation
Only Use FD.io VPP to Achieve high performance service function chaining Yi Intel.
Overlay Network Engine (ONE)
ODL SFC and VPP Integration
IP Routers – internal view
CS522 Advanced database Systems
CS Data Structures Chapter 8 Lists Mehmet H Gunes
NDN Messages and NDN Packets
7 Network Layer Part IV Computer Networks Tutun Juhana
Database Management Systems (CS 564)
CS 153: Concepts of Compiler Design October 3 Class Meeting
FAWN: A Fast Array of Wimpy Nodes
IPv6 Router Alert Option for MPLS OAM
IP Addressing Introductory material.
IP Addressing Introductory material.
IPv4 Addresses.
Extending TLVs Richard Maiden Intel May 2018.
Chapter 11: File System Implementation
Guide to TCP/IP Fourth Edition
Further considerations on WUR frame format
File System B. Ramamurthy B.Ramamurthy 11/27/2018.
RADIUS Attributes for NSH
CMPE 152: Compiler Design October 4 Class Meeting
Main Memory Session - 16.
Lu Huang Shujun Hu China Mobile
NSH context header allocation for Mobility
Variable Length Data and Records
IETF 100, November 2017 Singapore
FAWN: A Fast Array of Wimpy Nodes
BFD for VXLAN draft-spallagatti-bfd-vxlan
CS 432: Compiler Construction Lecture 11
ICOM 5016 – Introduction to Database Systems
File Organization.
Symbol Table 薛智文 (textbook ch#2.7 and 6.5) 薛智文 96 Spring.
Consideration of IPv6 Encapsulation for Path Services draft-li-6man-ipv6-sfc-ifit-00 Zhenbin Li, Shuping Peng.
VIJAYA PAMIDI CS 257- Sec 01 ID:102
IPv6 Encapsulation for IOAM - Enhancement of IPv6 Extension Headers draft-li-6man-ipv6-sfc-ifit-01 draft-li-6man-enhanced-extension-header-00 Zhenbin.
How OAM Identified in Overlay Protocols draft-mirsky-rtgwg-oam-identify Greg Mirsky IETF-104 March 2019, Prague.
KySat Packet format legend
Data plane round-table Feedback
Geneve applicability for service function chaining draft-boutros-nvo3-geneve-applicability-for-sfc-02 Sami Boutros Dharma Rajan Philip Kippen Pierluigi.
IESG LC: BFD for VXLAN draft-ietf-bfd-vxlan
Presentation transcript:

Vengada Prasad Govindan @ Cisco TLV Parsing in VPP Hongjun Ni @ Intel Danny Zhou @ Intel Keith Burns @ Cisco Vengada Prasad Govindan @ Cisco

NSH Header Length: total length, in 4-byte words, of NSH including the Base Header, the Service Path Header and the optional variable TLVs. The Length MUST be of value 0x6 for MD Type = 0x1, and MUST be of value 0x2 or higher for MD Type = 0x2. The NSH header length MUST be an integer number of 4 bytes.

NSH MD-type 2 TLV Class: describes the scope of the "Type" field. The TLV Class will identify a specific vendor, or specific standards body allocated types. A new IANA registry will be created for TLV Class type. Type: the specific type of information being carried, within the scope of a given TLV Class. Value allocation is the responsibility of the TLV Class owner. C bit: Encoding the criticality of the TLV within the Type field, and is consistent with IPv6 option types: the most significant bit of the Type field indicates whether the TLV is mandatory for the receiver to understand/process. Reserved bits: three reserved bit are present for future use. The reserved bits MUST be set to 0x0. Length: Length of the variable metadata, in 4-byte words. A value of 0x0 or higher can be used. A value of 0x0 denotes a TLV header without a Variable Metadata field.

NSH MD-type 2 Option Mapping Table Add an option mapping table: Key: TLV Class + Type Entry: Option Size (in 4-Byte unit) Function pointer to option handling routine Function pointer to add option handling routine Function pointer to pop option handling routine Function pointer to trace option handling routine

NSH MD-type 2 Support in VPP Add NSH MD-type 2 Option Mapping Table. Allocate an array to store each packets’ TLVs, and store array address to nsh_header->tlvs[0]. Augment command “create nsh entry” to support TLVs. Augment nsh_mapping_by_key with TLVs. Augment nsh_add_del_entry in nsh.api to support TLVs. Augment Honeycomb to support NSH TLVs.

iOAM over NSH: POT Option

iOAM over VxLAN-GPE: Header and Option

iOAM over VxLAN-GPE: Option Process vxlan_gpe_encap_decap_ioam_v4_one_inline vxlan_gpe_ioam_set_rewrite

iOAM over IPv6: Header and Option

iOAM over IPv6: Option Process

Problems to discuss Use generic TLV parser APIs or Graph node in IPv6, iOAM and NSH_SFC plugins? Decouple VxLAN-GPE and iOAM components?