Programmable Data Planes, P4, And Trellis

2y ago
32 Views
4 Downloads
1.06 MB
19 Pages
Last View : 11d ago
Last Download : 3m ago
Upload by : River Barajas
Transcription

Programmable data planes, P4, and TrellisCarmelo CasconeMTS, P4 Brigade LeaderOpen Networking FoundationOctober 20, 20171

Outline Introduction to P4 and P4 Runtime P4 support in ONOS Future plans for Trellis2

P4 and P4 Runtime OverviewProgrammable (or fixed) data plane pipelineFixed-function data plane pipelineP4 programP4 enables custompipelines to meetapplication needsApplicationVariations indata planepipelines arehard toabstractTable {matchactions}ApplicationP4 Runtime allowscustom pipelines to beloaded and controlledP4 RuntimecompilegRPCOpenFlowTable managementP4 RuntimeTable GPacketsJUSTWHATI.different vendors in their own way3NEED

Programmable Switch ArchitectureProgrammer declaresthe headers that shouldbe recognized and theirorder in the packetProgrammer defines thetables (match type, actions)and the processing algorithmProgrammable ALUswith computationalcapabilities and statefulmemoriesSlide courtesy: p4.org4

P4 Packet Processing Language Domain-specific language to specify packet forwarding behaviours Open source consortium: P4.org Hardware agnostic, can be compiled to programmable ASICs, FPGAs,NPUs, etc. Value as a description language for fixed-function devicesheader ethernet t {action set next hop(bit 48 dst addr) {Example P4 codebit 48 dst addr;ethernet.dst addr dst addr;bit 48 src addr;ipv4.ttl ipv4.ttl - 1;.}header ipv4 t {.bit 4 version;table ip table {bit 4 ihl;key { ipv4.dst addr : LPM; }bit 8 diffserv;actions { set next hop(); drop(); send to ctrl(); }parser parser impl(packet in pkt, out headers t hdr)size 4096;{ /* Parser state machine */ }}5

P4 WorkflowUser suppliedP4 ProgramRUNTIMEControl PlaneP4 CompilerConfigurationbinaryLoadAdd/removetable entriesExterncontrolPacket-in/outCPU portTablesExternobjectsData PlaneP4-enabled switchVendor supplied6

P4 Runtime Framework for runtime control of P4 targets Open-source API server implementation https://github.com/p4lang/PIInitial contribution by Google and Barefoot Networks Work-in-progress by the p4.org API WG Protobuf-based API gRPC client/server impl. Program-independentserver (gRPC)API doesn’t change with the P4 programEnables field-reconfigurability P4 pipelineTable managementTarget driverP4 program-independent Many RPC features for free (e.g. authentication)Control planeP4 ASICAbility to push new P4 program once switches have beendeployed7

P4 on ONOS8

P4 on ONOS Today Applications can bring their own P4 pipelines Northbound API to control any P4 program Ways to map existing protocol-dependent ONOS APIs to P4 pipelines New pipeline-agnostic ONOS API to control custom pipelines New P4 device drivers Barefoot Tofino-based switches BMv2 software switch (great for prototyping) P4 Runtime southbound interface Protocol support for P4 Runtime and gRPC9

P4 on ONOS DemoL123 SDN NFV World Congress 2017Video!https://youtu.be/BE y-Sz0WnQtor.p4P4 RuntimeEdgecore Wedge100BF-32XEdgecore Wedge100BF-32XEdgecore Wedge100BF-65XEdgecore Wedge100BF-65Xh1h210

Takeaways so far P4 offers a formal contract between controller and switch Controller’s view of the pipeline (P4 program) is implemented by the switchP4 Runtime API allows to control any pipeline silicon independence! No need to extend the API API is pipeline-agnostic by definition P4 Runtime offers value for fixed-function devices Provided that their behavior can be expressed in P4 Or, provided a compiler to map the P4 logical pipeline to the physicalone11

What’s next for CORD:fabric.p412

fabric.p4: P4-based CORD Fabric Goal: bring more heterogeneity in the CORD fabric with P4 silicon e.g. Barefoot Tofino, or any other vendor that offers

OpenFlow Table management Table {match actions} P4 program Packets P4 Runtime Table management Packets Variations in data plane pipelines are hard to abstract P4 enables custom pipelines to meet application needs P4 Runtime allows custom pipelines to be loaded and contro

Related Documents:

15 Heat Pump 0.13 White Rogers Non-programmable N/A Nest 10/10/14 16 Resistance 0.07 Carrier Programmable Running Nest 7/29/15a 17 Heat Pump 0.12 Trane (XT500C) Programmable 'Hold' Nest 9/10/14 18 Heat Pump 0.05 Honeywell Programmable 'Hold' Nest 9/11/14 21 Heat Pump 0.12 White Rogers Programmable Program Running

Hardware for engine mount (Great Planes #GPMQ3509) Screw-Lock connectors (Great Planes #GPMQ3870) SUGGESTED SUPPLIES AND TOOLS We recommend Great Planes Pro CA and Tower Epoxy 2 oz. CA (Thin) (Great Planes #GPMR6003) 2 oz. CA (Medium) (Great Planes #GPMR6009) 1

Figure 5 Default datum planes Figure 6 Datum planes as solid plates Select the Datum Plane button now. Since we currently have no features in the model, Wildfire rightly assumes that we want to create the three standard datum planes. The datum planes represent three orthogonal planes to be used as references for features that will be created later.

Introducir el concepto de la Competencia Universitaria de Planes de Negocios . Introducción a la mentalidad empresarial y generación de Planes de Negocios. Período de Preguntas y Respuestas. Presentación de la Competencia Nacional de Planes de Negocios 2011 y su vinculación con esta Competencia Universitaria.

001 96819 Owner: JFMD Introduction to PSoC 4 Customer Training Workshop with PSoC 4 M- Series 5 Rev ** Tech lead: PMAD PSoC Terms PSoC PSoC is the world's only programmable embedded system-on-chip integrating an MCU core, Programmable Analog Blocks, Programmable Digital Blocks, Programmable Interconnect and Routing1 and CapSense Programmable Analog Block

RAM Random access memory Write/read operations ROM Read only memory Programmable logic device (PLD), programmable logic array (PLA), programmable array logic (PAL), field- programmable gate array (FPGA) FIG

web: www.aeroflex-weinschel.com email: sales@aeroflex-weinschel.com Revision Date: 3-1-07 Programmable Attenuators Programmable Attenuator Units for Rack or Bench Use: (Pages 125-128) Aeroflex / Weinschel's 8310 & 8311 Series Programmable Attenuator Units represent Aeroflex / Weinschel's newest concept in programmable attenuation for bench test and

2 x 1A Programmable 2 x 1A Programmable 4 x 1A Programmable 4 x 1A Programmable 8 x 1A Programmable Relay Outputs 2 x1A 30VAC/DC (max) . 1.6.1 Fire System Installations 10 1.6.2 Wiring Regulations 10 2 INSTALLATION 11 . 3.3.2.10 Devic