p4: programming protocol -independent packet processorssdn seminar: p4 | | reconfigurability...

18
| | SDN seminar: P4 Seminar: Prof. Timothy Roscoe & Dr. Desislava Dimitrova (Desi) 27.05.2016 1 Software Defined Networking P4: Programming Protocol-Independent Packet Processors D. Dimitrova

Upload: others

Post on 22-May-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Seminar: Prof. Timothy Roscoe & Dr. Desislava Dimitrova (Desi)

27.05.2016 1

Software Defined Networking P4: Programming Protocol-Independent Packet Processors

D. Dimitrova

Page 2: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

What does that mean in an OpenFlow world?

Fixed set of protocols (and their headers) Many protocols – rich functionality Many protocols – header space explosion

(slow) Roll-out time Add protocol to the OF spec Switches that support the spec

Can we do better?

27.05.2016 D. Dimitrova 2

Programmable networks

Page 3: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

We share common understanding of English grammar, vocabulary and the Latin alphabet.

27.05.2016 D. Dimitrova 3

Page 4: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Липсва обща база за взаимна комуникация.

27.05.2016 D. Dimitrova 4

Page 5: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Липсва обща база за взаимна комуникация.

27.05.2016 D. Dimitrova 5

Page 6: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Липсва обща база за взаимна комуникация.

27.05.2016 D. Dimitrova 6

Page 7: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Reconfigurability Flexible, dynamic change of the switch behaviour

Protocol independent Any protocol, any packet processing

Target independence Any switch, any hardware platform

27.05.2016 D. Dimitrova 7

P4 design principles

Page 8: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Define header formats

Define packet processing sequences

Populate tables

27.05.2016 D. Dimitrova 8

P4 design principles

Page 9: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Define header formats Format specification State machine

Define packet processing sequences

Populate tables

27.05.2016 D. Dimitrova 9

P4 design principles

Page 10: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Define header formats Format specification State machine

Define packet processing sequences

Populate tables

27.05.2016 D. Dimitrova 10

P4 design principles

Page 11: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Define header formats Format specification State machine

Define packet processing sequences

Populate tables

27.05.2016 D. Dimitrova 11

P4 design principles

Page 12: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Define header formats

Define packet processing sequences Table specification & matching criteria Action specification Table chaining

Populate tables

27.05.2016 D. Dimitrova 12

P4 design principles

Page 13: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

27.05.2016 D. Dimitrova 13

P4 in action

Page 14: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Huawei’s POF 2013

Intel’s FlexPipe 2012

TI’s & Stanford’s RMT (reconfigurable match tables) 2013

Cavium’s XPL September 2014

27.05.2016 D. Dimitrova 14

Other proposals

Page 15: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Generalize the packet processing model.

27.05.2016 D. Dimitrova 15

Page 16: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4 27.05.2016 D. Dimitrova 16

OpenFlow 2.0

Page 17: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

Sounds familiar…

27.05.2016 D. Dimitrova 17

OpenFlow 2.0

Page 18: P4: Programming Protocol -Independent Packet ProcessorsSDN seminar: P4 | | Reconfigurability Flexible, dynamic change of the switch behaviour Protocol independent Any protocol, any

| | SDN seminar: P4

ETH Zurich Systems Group Universitättrasse 6 8092 Zürich www.ethz.ch/en.html © ETH Zurich, February 2016

27.05.2016 D. Dimitrova 18

Contact information and credits