Programmable Data Plane at Terabit Speeds

Size: px
Start display at page:

Download "Programmable Data Plane at Terabit Speeds"

Transcription

1 AUGUST 2018 Programmable Data Plane at Terabit Speeds Milad Sharif SOFTWARE ENGINEER

2 PISA: Protocol Independent Switch Architecture

3 PISA Block Diagram Match+Action Stage Memory ALU Programmable Parser Programmable Match-Action Pipeline 3

4 PISA Match-Action Unit Multiple simultaneous lookups and actions can be supported Memory ALU Memory ALU Memory ALU Memory ALU Memory ALU Memory ALU Sequential Execution (Match dependency) Staggered Execution (Action dependency) Parallel Execution (No dependency)

5 Introducing Tofino

6 6.5Tb/s Tofino TM Overview Four Match+Action Pipelines Fully programmable PISA Embodiment Single Shared Packet Buffer 16nm technology Port Configurations SerDes, support 1G, 10G, 25G, 40G, 50G, and 100G ports CPU Interfaces PCIe: Gen3 4/ 2/ 1 Dedicated 100GE port Match+Action Pipeline 0 Match+Action Pipeline 2 + Serial I/O Shared Packet Buffer + TM Match+Action Pipeline 1 Match+Action Pipeline 3 6

7 Tofino Simplified Block Diagram Reset / Clocks PCIe CPU DMA engines Control & configuration Rx s 10/25/40/50/100 Pipeline Egress Pipeline Tx 10/25/40/50/100 pipe 0 Rx s 10/25/40/50/100 Pipeline Egress Pipeline Tx 10/25/40/50/100 pipe 1 Traffic Manager Rx s 10/25/40/50/100 Pipeline Egress Pipeline Tx 10/25/40/50/100 pipe 2 Rx s 10/25/40/50/100 Pipeline Egress Pipeline Tx 10/25/40/50/100 pipe 3 7

8 Fully-Programmable Parser TCAM SRAM Eth. Data State Next state Action IPv4 Protocol== 0x11 IPv6 Protocol== 0x06 Match Field Extract Next state Match Field selection Packet Header Vector UDP TCP Input Shift Register shift control From Output Field Extractor 8

9 Packet Header Vector (PHV) A set of uniform containers that carry the headers and metadata. along the pipeline bit words Fields can be packed into any container or their combination. Packing is decided by PHV Allocation pass in the compiler bit words bit words 32 9

10 Match Action Unit Delay Xbar Key # Operand Data Instr. RAM PHV Match RAM/TCAM Action RAM Instruction Address ALUs: Meters, Statistisc, Stateful

11 Match Action Pipeline Full packet Parser Match Action Unit Match Action Unit Match Action Unit Match Action Unit Deparser

12 Match Action Pipeline Full packet urpf Parser IPv4 ACL Deparser IPv4 IPv6 IPv6 ACL Multiple small tables per stage Large tables spread over multiple stages

13 Unified Match Action Pipeline Combined /Egress Match-Action Pipeline MAU 0 PHV MAU n PHV Buffer Parser Deparser Packet Constructor Queues And Packet Buffers Packet body

14 Unified Match Action Pipeline Egress header Combined /Egress Match-Action Pipeline Egress Packet body MAU 0 PHV MAU n PHV Egress Deparser Egress Deparser Egress Packet Constructor Buffer Parser Deparser Packet Constructor Queues And Packet Buffers Packet body

15 Unified Match Action Pipeline Egress header Combined /Egress Match-Action Pipeline Egress Packet body MAU 0 PHV MAU n PHV Egress Deparser Egress Deparser Egress Packet Constructor Buffer Parser Deparser Packet Constructor Queues And Packet Buffers Recirculation Buffer (Packet Reference, Metadata) Packet body

16 Programming Tofino

17 Tofino Architecture Data plane interfaces Intrinsic Metadata ingress_mac_tstamp ingress timestamp assigned by ucast_egress_port output port Tofino-specific Extern Registers, Counters, Meters, Filters, etc. /// Register extern Register<T, I> { /// Instantiate an array of <size> registers. /// The initial value is undefined. Register(bit<32> size); /// Initialize an array of <size> registers and set /// their value to initial_value. Register(bit<32> size, T initial_value); /// Return the value of register at specified index. T read(in I index); /// Write value to register at specified index. void write(in I index, in T value); }

18 Runtime Configuration User Defined P4 16 Core Library Application Packet Test Framework P4 Architecture Model PSA V1Model Extern Libraries /// Indexed counter with `size independent /// counter values. extern Counter<W, I> { /// Constructor W : width of the counter value. I : width of the counter index. type : counter type. Packet an byte /// counters are supported. Counter(bit<32> size, CounterType_t type); P4 Program Arch. Definition Provided by Barefoot Networks P4 Compiler Fronend Backend P4 Visualization Target-Specific Configuration BF-Runtime info BF-Runtime APIs ASIC driver ASIC Model /// Increment the counter value. index: index of the counter to be /// incremented. void count(in I index); }

19 Multi Pipeline configuration App1.p4 P4 Compiler Pipeline Configuration P4 16 Core Library Extern Libraries Arch. Definition App2.p4 P4 Compiler Pipeline Configuration

20 Thank You Contact Information

Programmable Data Plane at Terabit Speeds Vladimir Gurevich May 16, 2017

Programmable Data Plane at Terabit Speeds Vladimir Gurevich May 16, 2017 Programmable Data Plane at Terabit Speeds Vladimir Gurevich May 16, 2017 Programmable switches are 10-100x slower than fixed-function switches. They cost more and consume more power. Conventional wisdom

More information

Programmable Forwarding Planes at Terabit/s Speeds

Programmable Forwarding Planes at Terabit/s Speeds Programmable Forwarding Planes at Terabit/s Speeds Patrick Bosshart HIEF TEHNOLOGY OFFIER, BREFOOT NETWORKS nd the entire Barefoot Networks team Hot hips 30, ugust 21, 2018 Barefoot Tofino : Domain Specific

More information

What s happening in the Networking Landscape?

What s happening in the Networking Landscape? What s happening in the Networking Landscape? An overview on contemporary merchant switching silicon and SDN landscape Paolo Bianco GCN Systems Engineer paolo.bianco@dell.com Windows Server: Power your

More information

P51: High Performance Networking

P51: High Performance Networking P51: High Performance Networking Lecture 6: Programmable network devices Dr Noa Zilberman noa.zilberman@cl.cam.ac.uk Lent 2017/18 High Throughput Interfaces Performance Limitations So far we discussed

More information

P4 Language Design Working Group. Gordon Brebner

P4 Language Design Working Group. Gordon Brebner P4 Language Design Working Group Gordon Brebner Language Design Working Group Responsibilities Defining the P4 language specification Managing the graceful evolution of the language Membership Co-chairs:

More information

A 400Gbps Multi-Core Network Processor

A 400Gbps Multi-Core Network Processor A 400Gbps Multi-Core Network Processor James Markevitch, Srinivasa Malladi Cisco Systems August 22, 2017 Legal THE INFORMATION HEREIN IS PROVIDED ON AN AS IS BASIS, WITHOUT ANY WARRANTIES OR REPRESENTATIONS,

More information

Cisco Nexus 3000 Switch Architecture

Cisco Nexus 3000 Switch Architecture Cisco Nexus 000 Switch Architecture Faraz Taifehesmatian, Technical Marketing Engineer CCIE R&S, DC BRKDCN-7 Cisco Webex Teams Questions? Use Cisco Webex Teams (formerly Cisco Spark) to chat with the speaker

More information

Be Fast, Cheap and in Control with SwitchKV. Xiaozhou Li

Be Fast, Cheap and in Control with SwitchKV. Xiaozhou Li Be Fast, Cheap and in Control with SwitchKV Xiaozhou Li Goal: fast and cost-efficient key-value store Store, retrieve, manage key-value objects Get(key)/Put(key,value)/Delete(key) Target: cluster-level

More information

P4FPGA Expedition. Han Wang

P4FPGA Expedition. Han Wang P4FPGA Expedition Han Wang Ki Suh Lee, Vishal Shrivastav, Hakim Weatherspoon, Nate Foster, Robert Soule 1 Cornell University 1 Università della Svizzera italiana Networking and Programming Language Workshop

More information

Scaling Hardware Accelerated Network Monitoring to Concurrent and Dynamic Queries with *Flow

Scaling Hardware Accelerated Network Monitoring to Concurrent and Dynamic Queries with *Flow Scaling Hardware Accelerated Network Monitoring to Concurrent and Dynamic Queries with *Flow John Sonchack, Oliver Michel, Adam J. Aviv, Eric Keller, Jonathan M. Smith Measuring High Speed Networks 00

More information

FastReact. In-Network Control and Caching for Industrial Control Networks using Programmable Data Planes

FastReact. In-Network Control and Caching for Industrial Control Networks using Programmable Data Planes FastReact In-Network Control and Caching for Industrial Control Networks using Programmable Data Planes Authors: Jonathan Vestin Andreas Kassler Johan

More information

Programming Network Data Planes

Programming Network Data Planes Advanced Topics in Communication Networks Programming Network Data Planes Laurent Vanbever nsg.ee.ethz.ch ETH Zürich Sep 27 2018 Materials inspired from Jennifer Rexford, Changhoon Kim, and p4.org Last

More information

PVPP: A Programmable Vector Packet Processor. Sean Choi, Xiang Long, Muhammad Shahbaz, Skip Booth, Andy Keep, John Marshall, Changhoon Kim

PVPP: A Programmable Vector Packet Processor. Sean Choi, Xiang Long, Muhammad Shahbaz, Skip Booth, Andy Keep, John Marshall, Changhoon Kim PVPP: A Programmable Vector Packet Processor Sean Choi, Xiang Long, Muhammad Shahbaz, Skip Booth, Andy Keep, John Marshall, Changhoon Kim Fixed Set of Protocols Fixed-Function Switch Chip TCP IPv4 IPv6

More information

P4 16 Portable Switch Architecture (PSA)

P4 16 Portable Switch Architecture (PSA) P4 16 Portable Switch Architecture (PSA) Version 1.0 The P4.org Architecture Working Group March 1, 2018 1 Abstract P4 is a language for expressing how packets are processed by the data plane of a programmable

More information

Experiences with Programmable Dataplanes

Experiences with Programmable Dataplanes Experiences with Programmable Dataplanes Ronald van der Pol SURFnet Overview MoLvaLon for Programmable Dataplanes OpenFlow and Pipelines Various Network Silicon Table Type PaQterns (TTPs) and P4 Summary

More information

NetCache: Balancing Key-Value Stores with Fast In-Network Caching

NetCache: Balancing Key-Value Stores with Fast In-Network Caching NetCache: Balancing Key-Value Stores with Fast In-Network Caching Xin Jin, Xiaozhou Li, Haoyu Zhang, Robert Soulé Jeongkeun Lee, Nate Foster, Changhoon Kim, Ion Stoica NetCache is a rack-scale key-value

More information

Leveraging Stratum and Tofino Fast Refresh for Software Upgrades

Leveraging Stratum and Tofino Fast Refresh for Software Upgrades ONF CONNECT DECEMBER 2018 Leveraging Stratum and Tofino Fast Refresh for Software Upgrades Antonin Bas Software Engineer, Barefoot Networks Agenda Introduction to Tofino and programmability Synergy between

More information

NetCache: Balancing Key-Value Stores with Fast In-Network Caching

NetCache: Balancing Key-Value Stores with Fast In-Network Caching NetCache: Balancing Key-Value Stores with Fast In-Network Caching Xin Jin, Xiaozhou Li, Haoyu Zhang, Robert Soulé Jeongkeun Lee, Nate Foster, Changhoon Kim, Ion Stoica NetCache is a rack-scale key-value

More information

Programming NFP with P4 and C

Programming NFP with P4 and C WHITE PAPER Programming NFP with P4 and C THE NFP FAMILY OF FLOW PROCESSORS ARE SOPHISTICATED PROCESSORS SPECIALIZED TOWARDS HIGH-PERFORMANCE FLOW PROCESSING. CONTENTS INTRODUCTION...1 PROGRAMMING THE

More information

Tutorial S TEPHEN IBANEZ

Tutorial S TEPHEN IBANEZ Tutorial S TEPHEN IBANEZ Outline P4 Motivation P4 for NetFPGA Overview P4->NetFPGA Workflow Overview Tutorial Assignments What is P4? Programming language to describe packet processing logic Used to implement

More information

Configuring Online Diagnostics

Configuring Online Diagnostics Configuring Online s This chapter contains the following sections: Information About Online s, page 1 Guidelines and Limitations for Online s, page 4 Configuring Online s, page 4 Verifying the Online s

More information

P4 16 Portable Switch Architecture (PSA)

P4 16 Portable Switch Architecture (PSA) P4 16 Portable Switch Architecture (PSA) Version 1.1 The P4.org Architecture Working Group November 22, 2018 1 Abstract P4 is a language for expressing how packets are processed by the data plane of a

More information

Linux Network Programming with P4. Linux Plumbers 2018 Fabian Ruffy, William Tu, Mihai Budiu VMware Inc. and University of British Columbia

Linux Network Programming with P4. Linux Plumbers 2018 Fabian Ruffy, William Tu, Mihai Budiu VMware Inc. and University of British Columbia Linux Network Programming with P4 Linux Plumbers 2018 Fabian Ruffy, William Tu, Mihai Budiu VMware Inc. and University of British Columbia Outline Introduction to P4 XDP and the P4 Compiler Testing Example

More information

Software Defined Networking Data centre perspective: Open Flow

Software Defined Networking Data centre perspective: Open Flow Software Defined Networking Data centre perspective: Open Flow Seminar: Prof. Timothy Roscoe & Dr. Desislava Dimitrova D. Dimitrova, T. Roscoe 04.03.2016 1 OpenFlow Specification, protocol, architecture

More information

Network Processors. Nevin Heintze Agere Systems

Network Processors. Nevin Heintze Agere Systems Network Processors Nevin Heintze Agere Systems Network Processors What are the packaging challenges for NPs? Caveat: I know very little about packaging. Network Processors What are the packaging challenges

More information

Extending the range of P4 programmability

Extending the range of P4 programmability Extending the range of P4 programmability Gordon Brebner Xilinx Labs, San Jose, USA P4EU Keynote, Cambridge, UK 24 September 2018 What this talk is about P4 history and status Portable NIC Architecture

More information

Lab 2: P4 Runtime. Copyright 2018 P4.org

Lab 2: P4 Runtime. Copyright 2018 P4.org Lab 2: P4 Runtime 1 P4 Software Tools 2 Makefile: under the hood simple_switch_cli Program-independent CLI and Client test.p4 Program-independent Control Server Packet generator L o g Ingress TM Egress

More information

PISCES: A Programmable, Protocol-Independent Software Switch

PISCES: A Programmable, Protocol-Independent Software Switch PISCES: A Programmable, Protocol-Independent Software Switch Muhammad Shahbaz, Sean Choi, Ben Pfaff, Changhoon Kim, Nick Feamster, Nick McKeown, and Jennifer Rexford Fixed Set of Protocols Fixed-Function

More information

NetChain: Scale-Free Sub-RTT Coordination

NetChain: Scale-Free Sub-RTT Coordination NetChain: Scale-Free Sub-RTT Coordination Xin Jin Xiaozhou Li, Haoyu Zhang, Robert Soulé, Jeongkeun Lee, Nate Foster, Changhoon Kim, Ion Stoica Conventional wisdom: avoid coordination NetChain: lightning

More information

Programming Netronome Agilio SmartNICs

Programming Netronome Agilio SmartNICs WHITE PAPER Programming Netronome Agilio SmartNICs NFP-4000 AND NFP-6000 FAMILY: SUPPORTED PROGRAMMING MODELS THE AGILIO SMARTNICS DELIVER HIGH- PERFORMANCE SERVER- BASED NETWORKING APPLICATIONS SUCH AS

More information

Programmable data planes, P4, and Trellis

Programmable data planes, P4, and Trellis Programmable data planes, P4, and Trellis Carmelo Cascone MTS, P4 Brigade Leader Open Networking Foundation October 20, 2017 1 Outline Introduction to P4 and P4 Runtime P4 support in ONOS Future plans

More information

Parallelism. Execution Cycle. Dual Bus Simple CPU. Pipelining COMP375 1

Parallelism. Execution Cycle. Dual Bus Simple CPU. Pipelining COMP375 1 Pipelining COMP375 Computer Architecture and dorganization Parallelism The most common method of making computers faster is to increase parallelism. There are many levels of parallelism Macro Multiple

More information

Evaluating the Power of Flexible Packet Processing for Network Resource Allocation

Evaluating the Power of Flexible Packet Processing for Network Resource Allocation Evaluating the Power of Flexible Packet Processing for Network Resource Allocation Naveen Kr. Sharma, Antoine Kaufmann, and Thomas Anderson, University of Washington; Changhoon Kim, Barefoot Networks;

More information

High Performance Packet Processing with FlexNIC

High Performance Packet Processing with FlexNIC High Performance Packet Processing with FlexNIC Antoine Kaufmann, Naveen Kr. Sharma Thomas Anderson, Arvind Krishnamurthy University of Washington Simon Peter The University of Texas at Austin Ethernet

More information

Configuring sflow. About sflow. sflow Agent

Configuring sflow. About sflow. sflow Agent About sflow This chapter describes how to configure sflow on Cisco NX-OS devices. This chapter includes the following sections: About sflow, on page 1 Licensing Requirements for sflow, on page 2 Prerequisites

More information

Implementing Ultra Low Latency Data Center Services with Programmable Logic

Implementing Ultra Low Latency Data Center Services with Programmable Logic Implementing Ultra Low Latency Data Center Services with Programmable Logic John W. Lockwood, CEO: Algo-Logic Systems, Inc. http://algo-logic.com Solutions@Algo-Logic.com (408) 707-3740 2255-D Martin Ave.,

More information

TRANSPUTER ARCHITECTURE

TRANSPUTER ARCHITECTURE TRANSPUTER ARCHITECTURE What is Transputer? The first single chip computer designed for message-passing parallel systems, in 1980s, by the company INMOS Transistor Computer. Goal was produce low cost low

More information

ONOS Support for P4. Carmelo Cascone MTS, ONF. December 6, 2018

ONOS Support for P4. Carmelo Cascone MTS, ONF. December 6, 2018 ONOS Support for P4 Carmelo Cascone MTS, ONF December 6, 2018 Pipelines Pipeline of match-action tables Packets ASIC, FPGA, NPU, or CPU 2 P4 - The pipeline programing language Domain-specific language

More information

P4 Introduction. Jaco Joubert SIGCOMM NETRONOME SYSTEMS, INC.

P4 Introduction. Jaco Joubert SIGCOMM NETRONOME SYSTEMS, INC. P4 Introduction Jaco Joubert SIGCOMM 2018 2018 NETRONOME SYSTEMS, INC. Agenda Introduction Learning Goals Agilio SmartNIC Process to Develop Code P4/C Examples P4 INT P4/C Stateful Firewall SmartNIC P4

More information

High-Speed Network Processors. EZchip Presentation - 1

High-Speed Network Processors. EZchip Presentation - 1 High-Speed Network Processors EZchip Presentation - 1 NP-1c Interfaces Switch Fabric 10GE / N x1ge or Switch Fabric or Lookup Tables Counters SDRAM/FCRAM 64 x166/175mhz SRAM DDR NBT CSIX c XGMII HiGig

More information

Arista EOS Central Drop Counters

Arista EOS Central Drop Counters Arista EOS Central Drop Counters eos.arista.com /eos-4-15-3f/drop-counters/ With this feature, user can fetch various internal hardware info from each switch and isolate the switch or fabric card or SerDes

More information

Configuring ACL Logging

Configuring ACL Logging This chapter contains the following sections: Information About ACL Logging, page 1 Guidelines and Limitations for ACL Logging, page 2, page 2 Verifying ACL Logging Configuration, page 4 Configuration

More information

1 Copyright 2013 Oracle and/or its affiliates. All rights reserved.

1 Copyright 2013 Oracle and/or its affiliates. All rights reserved. 1 Copyright 2013 Oracle and/or its affiliates. All rights reserved. Bixby: the Scalability and Coherence Directory ASIC in Oracle's Highly Scalable Enterprise Systems Thomas Wicki and Jürgen Schulz Senior

More information

SwitchX Virtual Protocol Interconnect (VPI) Switch Architecture

SwitchX Virtual Protocol Interconnect (VPI) Switch Architecture SwitchX Virtual Protocol Interconnect (VPI) Switch Architecture 2012 MELLANOX TECHNOLOGIES 1 SwitchX - Virtual Protocol Interconnect Solutions Server / Compute Switch / Gateway Virtual Protocol Interconnect

More information

T4P4S: When P4 meets DPDK. Sandor Laki DPDK Summit Userspace - Dublin- 2017

T4P4S: When P4 meets DPDK. Sandor Laki DPDK Summit Userspace - Dublin- 2017 T4P4S: When P4 meets DPDK Sandor Laki DPDK Summit Userspace - Dublin- 2017 What is P4? Domain specific language for programming any kind of data planes Flexible, protocol and target independent Re-configurable

More information

Overview. Implementing Gigabit Routers with NetFPGA. Basic Architectural Components of an IP Router. Per-packet processing in an IP Router

Overview. Implementing Gigabit Routers with NetFPGA. Basic Architectural Components of an IP Router. Per-packet processing in an IP Router Overview Implementing Gigabit Routers with NetFPGA Prof. Sasu Tarkoma The NetFPGA is a low-cost platform for teaching networking hardware and router design, and a tool for networking researchers. The NetFPGA

More information

Packet-Level Network Analytics without Compromises NANOG 73, June 26th 2018, Denver, CO. Oliver Michel

Packet-Level Network Analytics without Compromises NANOG 73, June 26th 2018, Denver, CO. Oliver Michel Packet-Level Network Analytics without Compromises NANOG 73, June 26th 2018, Denver, CO Oliver Michel Network monitoring is important Security issues Performance issues Equipment failure Analytics Platform

More information

Monitoring Ports. Port State

Monitoring Ports. Port State The Ports feature available on the ME 1200 Web GUI allows you to monitor the various port parameters on the ME 1200 switch. Port State, page 1 Port Statistics Overview, page 2 QoS Statistics, page 2 QCL

More information

Building Efficient and Reliable Software-Defined Networks. Naga Katta

Building Efficient and Reliable Software-Defined Networks. Naga Katta FPO Talk Building Efficient and Reliable Software-Defined Networks Naga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster, Aarti Gupta 1 Traditional Networking

More information

100 GBE AND BEYOND. Diagram courtesy of the CFP MSA Brocade Communications Systems, Inc. v /11/21

100 GBE AND BEYOND. Diagram courtesy of the CFP MSA Brocade Communications Systems, Inc. v /11/21 100 GBE AND BEYOND 2011 Brocade Communications Systems, Inc. Diagram courtesy of the CFP MSA. v1.4 2011/11/21 Current State of the Industry 10 Electrical Fundamental 1 st generation technology constraints

More information

Cisco Nexus 9300-EX Platform Switches Architecture

Cisco Nexus 9300-EX Platform Switches Architecture Cisco Nexus 9300-EX Platform Switches Architecture 2017 Cisco and/or its affiliates. All rights reserved. This document is Cisco Public Information. Page 1 of 18 Content Introduction... 3 Cisco Nexus 9300-EX

More information

Introduction to Routers and LAN Switches

Introduction to Routers and LAN Switches Introduction to Routers and LAN Switches Session 3048_05_2001_c1 2001, Cisco Systems, Inc. All rights reserved. 3 Prerequisites OSI Model Networking Fundamentals 3048_05_2001_c1 2001, Cisco Systems, Inc.

More information

Programmable Dataplane

Programmable Dataplane Programmable Dataplane THE NEXT STEP IN SDN? S I M O N J O U E T S I M O N. J O U E T @ G L A S G O W. A C. U K H T T P : / / N E T L A B. D C S.G L A. A C. U K GTS TECH+FUTURES WORKSHOP - SIMON JOUET

More information

Implementing Access Lists and Prefix Lists

Implementing Access Lists and Prefix Lists An access control list (ACL) consists of one or more access control entries (ACE) that collectively define the network traffic profile. This profile can then be referenced by Cisco IOS XR softwarefeatures

More information

Access Control List Enhancements on the Cisco Series Router

Access Control List Enhancements on the Cisco Series Router Access Control List Enhancements on the Cisco 12000 Series Router Part Number, May 30, 2008 The Cisco 12000 series router filters IP packets using access control lists (ACLs) as a fundamental security

More information

Hardware Acceleration in Computer Networks. Jan Kořenek Conference IT4Innovations, Ostrava

Hardware Acceleration in Computer Networks. Jan Kořenek Conference IT4Innovations, Ostrava Hardware Acceleration in Computer Networks Outline Motivation for hardware acceleration Longest prefix matching using FPGA Hardware acceleration of time critical operations Framework and applications Contracted

More information

Configuring Local SPAN and ERSPAN

Configuring Local SPAN and ERSPAN This chapter contains the following sections: Information About ERSPAN, page 1 Licensing Requirements for ERSPAN, page 5 Prerequisites for ERSPAN, page 5 Guidelines and Limitations for ERSPAN, page 5 Guidelines

More information

ANIC Host CPU Offload Features Overview An Overview of Features and Functions Available with ANIC Adapters

ANIC Host CPU Offload Features Overview An Overview of Features and Functions Available with ANIC Adapters ANIC Host CPU Offload Features Overview An Overview of Features and Functions Available with ANIC Adapters ANIC Adapters Accolade s ANIC line of FPGA-based adapters/nics help accelerate security and networking

More information

DESIGN AND IMPLEMENTATION OF AN AVIONICS FULL DUPLEX ETHERNET (A664) DATA ACQUISITION SYSTEM

DESIGN AND IMPLEMENTATION OF AN AVIONICS FULL DUPLEX ETHERNET (A664) DATA ACQUISITION SYSTEM DESIGN AND IMPLEMENTATION OF AN AVIONICS FULL DUPLEX ETHERNET (A664) DATA ACQUISITION SYSTEM Alberto Perez, Technical Manager, Test & Integration John Hildin, Director of Network s John Roach, Vice President

More information

Jakub Cabal et al. CESNET

Jakub Cabal et al. CESNET CONFIGURABLE FPGA PACKET PARSER FOR TERABIT NETWORKS WITH GUARANTEED WIRE- SPEED THROUGHPUT Jakub Cabal et al. CESNET 2018/02/27 FPGA, Monterey, USA Packet parsing INTRODUCTION It is among basic operations

More information

Assembly Language Programming

Assembly Language Programming Assembly Language Programming Ľudmila Jánošíková Department of Mathematical Methods and Operations Research Faculty of Management Science and Informatics University of Žilina tel.: 421 41 513 4200 Ludmila.Janosikova@fri.uniza.sk

More information

Forwarding Architecture

Forwarding Architecture Forwarding Architecture Brighten Godfrey CS 538 February 14 2018 slides 2010-2018 by Brighten Godfrey unless otherwise noted Building a fast router Partridge: 50 Gb/sec router A fast IP router well, fast

More information

PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES

PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES Greg Hankins APRICOT 2012 2012 Brocade Communications Systems, Inc. 2012/02/28 Lookup Capacity and Forwarding

More information

P4 Runtime: Putting the Control Plane in Charge of the Forwarding Plane. Presented by :

P4 Runtime: Putting the Control Plane in Charge of the Forwarding Plane. Presented by : P4 Runtime: Putting the Control Plane in Charge of the Forwarding Plane Presented by : Today s Presenters Moderator Simon Stanley Analyst at Large Heavy Reading Nick McKeown Chief Scientist & Co-Founder

More information

Cisco Series Internet Router Architecture: Packet Switching

Cisco Series Internet Router Architecture: Packet Switching Cisco 12000 Series Internet Router Architecture: Packet Switching Document ID: 47320 Contents Introduction Prerequisites Requirements Components Used Conventions Background Information Packet Switching:

More information

Cisco ME 3400 Ethernet Access Switch Show Platform Commands

Cisco ME 3400 Ethernet Access Switch Show Platform Commands APPENDIXC Cisco ME 3400 Ethernet Access Switch Show Platform Commands This appendix describes the show platform privileged EXEC commands that have been created or changed for use with the Cisco ME 3400

More information

Cubro Packetmaster EX48600

Cubro Packetmaster EX48600 Cubro Packetmaster EX48600 PRODUCT REVIEW Network Packet Broker (NPB) At a glance Definition A network packet broker (NPB) is a tool that receives data from number of network links; duplicates, aggregates

More information

Engineer-to-Engineer Note

Engineer-to-Engineer Note Engineer-to-Engineer Note EE-377 Technical notes on using Analog Devices products and development tools Visit our Web resources http://www.analog.com/ee-notes and http://www.analog.com/processors or e-mail

More information

ARM processor organization

ARM processor organization ARM processor organization P. Bakowski bako@ieee.org ARM register bank The register bank,, which stores the processor state. r00 r01 r14 r15 P. Bakowski 2 ARM register bank It has two read ports and one

More information

AN 575: PCI Express-to-DDR2 SDRAM Reference Design

AN 575: PCI Express-to-DDR2 SDRAM Reference Design AN 575: PCI Express-to-DDR2 SDRAM Reference Design April 2009 AN-575-1.0 Introduction This application note introduces the dedicated PCI Express logic block implemented in Arria II GX FPGA hardware and

More information

Heavy-Hitter Detection Entirely in the Data Plane

Heavy-Hitter Detection Entirely in the Data Plane Heavy-Hitter Detection Entirely in the Data Plane VIBHAALAKSHMI SIVARAMAN SRINIVAS NARAYANA, ORI ROTTENSTREICH, MUTHU MUTHUKRSISHNAN, JENNIFER REXFORD 1 Heavy Hitter Flows Flows above a certain threshold

More information

Case study: Performance-efficient Implementation of Robust Header Compression (ROHC) using an Application-Specific Processor

Case study: Performance-efficient Implementation of Robust Header Compression (ROHC) using an Application-Specific Processor Case study: Performance-efficient Implementation of Robust Header Compression (ROHC) using an Application-Specific Processor Gert Goossens, Patrick Verbist, Erik Brockmeyer, Luc De Coster Synopsys 1 Agenda

More information

Arista 7170 Multi-function Programmable Networking

Arista 7170 Multi-function Programmable Networking Arista 7170 Multi-function Programmable Networking Much of the world s data is generated by popular applications, such as music and video streaming, social media, messaging, pattern recognition, peer-to-peer

More information

PEX8764, PCI Express Gen3 Switch, 64 Lanes, 16 Ports

PEX8764, PCI Express Gen3 Switch, 64 Lanes, 16 Ports Highlights PEX8764 General Features o 64-lane, 16-port PCIe Gen3 switch Integrated 8.0 GT/s SerDes o 35 x 35mm 2, 1156-ball FCBGA package o Typical Power: 1. Watts PEX8764 Key Features o Standards Compliant

More information

DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX

DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX x DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX Rony Efraim Introduction to DC w/ overlay network Modern data center (DC) use overly network like Virtual Extensible LAN (VXLAN) and GENEVE

More information

Programmable Packet Processing With

Programmable Packet Processing With The Promise of Programmable Packet Processing With Aaron A. Glenn internetworking curmudgeon The First Router 1. Many features to make the IMPs run reliably and with minimal on-site assistance and with

More information

KeyStone Training. Multicore Navigator Overview

KeyStone Training. Multicore Navigator Overview KeyStone Training Multicore Navigator Overview What is Navigator? Overview Agenda Definition Architecture Queue Manager Sub-System (QMSS) Packet DMA () Descriptors and Queuing What can Navigator do? Data

More information

NetCache: Balancing Key-Value Stores with Fast In-Network Caching

NetCache: Balancing Key-Value Stores with Fast In-Network Caching NetCache: Balancing Key-Value Stores with Fast In-Network Caching Xin Jin 1, Xiaozhou Li 2, Haoyu Zhang 3, Robert Soulé 2,4, Jeongkeun Lee 2, Nate Foster 2,5, Changhoon Kim 2, Ion Stoica 6 1 Johns Hopkins

More information

Configuring Cisco Performance Monitor

Configuring Cisco Performance Monitor This document contains information about and instructions for configuring Cisco Performance Monitor. Finding Feature Information, page 1 Information About Cisco Performance Monitor, page 1 Restrictions

More information

SmartNIC Programming Models

SmartNIC Programming Models SmartNIC Programming Models Johann Tönsing 206--09 206 Open-NFP Agenda SmartNIC hardware Pre-programmed vs. custom (C and/or P4) firmware Programming models / offload models Switching on NIC, with SR-IOV

More information

PEX 8636, PCI Express Gen 2 Switch, 36 Lanes, 24 Ports

PEX 8636, PCI Express Gen 2 Switch, 36 Lanes, 24 Ports Highlights PEX 8636 General Features o 36-lane, 24-port PCIe Gen2 switch - Integrated 5.0 GT/s SerDes o 35 x 35mm 2, 1156-ball FCBGA package o Typical Power: 8.8 Watts PEX 8636 Key Features o Standards

More information

COMP211 Chapter 4 Network Layer: The Data Plane

COMP211 Chapter 4 Network Layer: The Data Plane COMP211 Chapter 4 Network Layer: The Data Plane All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 7 th edition Jim Kurose, Keith Ross

More information

SmartNIC Programming Models

SmartNIC Programming Models SmartNIC Programming Models Johann Tönsing 207-06-07 207 Open-NFP Agenda SmartNIC hardware Pre-programmed vs. custom (C and/or P4) firmware Programming models / offload models Switching on NIC, with SR-IOV

More information

Design principles in parser design

Design principles in parser design Design principles in parser design Glen Gibb Dept. of Electrical Engineering Advisor: Prof. Nick McKeown Header parsing? 2 Header parsing? Identify headers & extract fields A???? B???? C?? Field Field

More information

2. Software Generation of Advanced Error Reporting Messages

2. Software Generation of Advanced Error Reporting Messages 1. Introduction The PEX 8612 provides two mechanisms for error injection: Carter Buck, Sr. Applications Engineer, PLX Technology PCI Express Advanced Error Reporting Status register bits (which normally

More information

The P4 Language Specification

The P4 Language Specification The P4 Language Specification Version 1.0.4 May 24, 2017 The P4 Language Consortium 1 Introduction P4 is a declarative language for expressing how packets are processed by the pipeline of a network forwarding

More information

Configuring Traffic Mirroring

Configuring Traffic Mirroring This module describes the configuration of the traffic mirroring feature. Traffic mirroring is sometimes called port mirroring, or switched port analyzer (SPAN). Feature History for Traffic Mirroring Release

More information

Broadcom Trident 3 Programmable, Varied And Volume

Broadcom Trident 3 Programmable, Varied And Volume Broadcom Trident 3 Programmable, Varied And Volume Greg FerroJune 14, 2017 Broadcom is announcing the Trident 3 ASIC. Takeaways: Trident 3 ASICs have increased performance. 5 versions of the Trident 3

More information

Accelerating Load Balancing programs using HW- Based Hints in XDP

Accelerating Load Balancing programs using HW- Based Hints in XDP Accelerating Load Balancing programs using HW- Based Hints in XDP PJ Waskiewicz, Network Software Engineer Neerav Parikh, Software Architect Intel Corp. Agenda Overview express Data path (XDP) Software

More information

P4 for an FPGA target

P4 for an FPGA target P4 for an FPGA target Gordon Brebner Xilinx Labs San José, USA P4 Workshop, Stanford University, 4 June 2015 What this talk is about FPGAs and packet processing languages Xilinx SDNet data plane builder

More information

Omni Flow Computer Master Driver v1.x Omni Flow Computer Master Modicon Compatible Driver 1.x

Omni Flow Computer Master Driver v1.x Omni Flow Computer Master Modicon Compatible Driver 1.x Omni Flow Computer Master Driver v1.x Omni Flow Computer Master Modicon Compatible Driver 1.x Information Sheet for Crimson v3.0+ Compatible Devices Omni Flow Computer devices equipped with Ethernet or

More information

Cisco Nexus 9500 Series Switches Architecture

Cisco Nexus 9500 Series Switches Architecture White Paper Cisco Nexus 9500 Series Switches Architecture White Paper December 2017 2017 Cisco and/or its affiliates. All rights reserved. This document is Cisco Public Information. Page 1 of 17 Contents

More information

Dataplane Programming

Dataplane Programming Dataplane Programming 1 2 Outline Example use case Introduction to data plane programming P4 language 3 Example Use Case: Paxos in the Network 4 The Promise of Software Defined Networking Increased network

More information

SCI Basics. Hugo Kohmann

SCI Basics. Hugo Kohmann Hugo Kohmann Slide 1 What is SCI ½ The SCI standard ANSI/IEEE 1596-1992 defines a point-to-point interface and a set of packet protocols. ½ The SCI protocols use small packet sizes with a 16-byte header

More information

Language-Directed Hardware Design for Network Performance Monitoring

Language-Directed Hardware Design for Network Performance Monitoring Language-Directed Hardware Design for Network Performance Monitoring Srinivas Narayana, Anirudh Sivaraman, Vikram Nathan, Prateesh Goyal, Venkat Arun, Mohammad Alizadeh, Vimal Jeyakumar, and Changhoon

More information

High-Speed Forwarding: A P4 Compiler with a Hardware Abstraction Library for Intel DPDK

High-Speed Forwarding: A P4 Compiler with a Hardware Abstraction Library for Intel DPDK High-Speed Forwarding: A P4 Compiler with a Hardware Abstraction Library for Intel DPDK Sándor Laki Eötvös Loránd University Budapest, Hungary lakis@elte.hu Motivation Programmability of network data plane

More information

SmartNIC Data Plane Acceleration & Reconfiguration. Nic Viljoen, Senior Software Engineer, Netronome

SmartNIC Data Plane Acceleration & Reconfiguration. Nic Viljoen, Senior Software Engineer, Netronome SmartNIC Data Plane Acceleration & Reconfiguration Nic Viljoen, Senior Software Engineer, Netronome Need for Accelerators Validated by Mega-Scale Operators Large R&D budgets, deep acceleration software

More information

p4v Practical Verification for Programmable Data Planes Jed Liu Bill Hallahan Cole Schlesinger Milad Sharif Jeongkeun Lee

p4v Practical Verification for Programmable Data Planes Jed Liu Bill Hallahan Cole Schlesinger Milad Sharif Jeongkeun Lee p4v Practical Verification for Programmable Data Planes Jed Liu Bill Hallahan Cole Schlesinger Milad Sharif Jeongkeun Lee Robert Soulé Han Wang Călin Caşcaval Nick McKeown Nate Foster Fixed-function routers...

More information

An FPGA-Based Optical IOH Architecture for Embedded System

An FPGA-Based Optical IOH Architecture for Embedded System An FPGA-Based Optical IOH Architecture for Embedded System Saravana.S Assistant Professor, Bharath University, Chennai 600073, India Abstract Data traffic has tremendously increased and is still increasing

More information

Barcelona: a Fibre Channel Switch SoC for Enterprise SANs Nital P. Patwa Hardware Engineering Manager/Technical Leader

Barcelona: a Fibre Channel Switch SoC for Enterprise SANs Nital P. Patwa Hardware Engineering Manager/Technical Leader Barcelona: a Fibre Channel Switch SoC for Enterprise SANs Nital P. Patwa Hardware Engineering Manager/Technical Leader 1 Agenda Introduction to Fibre Channel Switching in Enterprise SANs Barcelona Switch-On-a-Chip

More information