0% found this document useful (0 votes)
95 views10 pages

P4 OVS Split Architecture

This document discusses moving from an integrated P4 control plane architecture within OVS to a new split architecture. The split architecture separates components like Stratum, SAI, and the P4 programmability function into different standalone pieces. A new OVS P4Runtime library called ovs-p4rt is implemented to allow OVS to communicate with the P4Runtime server in InfraP4D via gRPC. Ovs-p4rt and another new library called ovsdb-p4rt are used to program P4 tables for MAC learning, tunneling, and port updates through interactions with InfraP4D.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
95 views10 pages

P4 OVS Split Architecture

This document discusses moving from an integrated P4 control plane architecture within OVS to a new split architecture. The split architecture separates components like Stratum, SAI, and the P4 programmability function into different standalone pieces. A new OVS P4Runtime library called ovs-p4rt is implemented to allow OVS to communicate with the P4Runtime server in InfraP4D via gRPC. Ovs-p4rt and another new library called ovsdb-p4rt are used to program P4 tables for MAC learning, tunneling, and port updates through interactions with InfraP4D.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 10

P4 Control Plane with OVS

Namrata Limaye, Derek Foster, Nupur Uttarwar - Intel


Intel P4 Control Plane Team: Deb Chatterjee, Dan Daly, Namrata
Limaye, Derek Foster, Nupur Uttarwar, P. Venkata Suresh Kumar
Notices & Disclaimers
• Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.

• Performance results are based on testing as of dates shown in configurations and may not reflect all publicly
available updates. See backup for configuration details. No product or component can be absolutely secure.

• Your costs and results may vary.

• Intel technologies may require enabled hardware, software or service activation.

• © Intel Corporation. Intel, the Intel logo, and other Intel marks are trademarks of Intel Corporation or its
subsidiaries. Other names and brands may be claimed as the property of others.
Agenda
1.History
2.P4 Control Plane (Split Arch) Components
3.OVS P4Runtime library
4.Implementation and patches
5.Conclusion
6.Resources
7.Q&A
Moving from Integrated to Split Architecture
❏ In 2020, we created monolithic P4-OVS implementation and
open-sourced on ipdk-io
❏ Integrated architecture components
❏ Stratum was integrated within OVS to support P4Runtime
and Openconfig
❏ Linux kernel offload function using SAI was integrated
❏ Program pipeline like OVS slowpath via P4
❏ The new P4 Control Plane or Split Architecture separates all
functions into different components
❏ OVS Patches will contain minimal changes to OVS and
expected by end of the year
P4 Control Plane (Split Architecture)
OVS P4Runtime library
❏ ovs-p4rt is a library (C++ with a C interface) that allows
ovs-vswitchd to communicate with the P4Runtime
Server in infrap4d via gRPC.
❏ ovsdb-p4rt library communicates with infrap4d and is
used to subscribe to tables in ovsdb-server for port
notifications to program P4 tables.

❏ Uses for ovs-p4rt and ovsdb-p4rt::


❏ Forwarding tables based on MAC learning in OVS
(ovs-p4rt)
❏ Tunnel encapsulation/decapsulation tables based
on tunnel configuration using ovs-vsctl (ovsdb-
p4rt/ovs-p4rt)
❏ Any port add/updates
ovs-p4rt Implementation
❏OVS “sidecars” called ovs-p4rt and ovsdb-p4rt created for minimal change to OVS
❏ovs-p4rt library will be managed by the networking recipe within ipdk-io.
❏OVS on enabling P4 links this library to perform P4Runtime operations.
❏ovs-p4rt transfers Mac learning and L2 information to infrap4d via P4Runtime.
❏For multiple P4Runtime controllers, master arbitration is handled by ovs-p4rt
In Conclusion
New architecture:
• Is modular
• Easier to update and upstream
• Only makes necessary changes in OVS
• Introduces OVS P4Runtime library for P4 to integrate with infrap4d
Resources
• Infrap4d -
https://github.com/ipdk-io/networking-recipe
• OVS -
https://github.com/ipdk-io/ovs/tree/split-arch
• P4-OVS - “Why OVS Needs P4”
https://www.youtube.com/watch?v=Hpb-OipXLqQ
Thank You

You might also like