[ovs-dev] [PATCH v2 0/6] userspace: Packet type-aware pipeline

Zoltán Balogh zoltan.balogh at ericsson.com
Fri May 19 09:23:40 UTC 2017


This patch set is the 2nd part of an initiative presented by Jan Scheurich: 
https://mail.openvswitch.org/pipermail/ovs-dev/2017-May/332367.html

It takes the patch set referred by the link above as a bases.

The goal is to deal with non-Ethernet packets in OVS for advanced use cases 
like L3 tunneling or NSH. The initiative is centering on the new OpenFlow 
concepts of "Packet type-aware pipeline" (PTAP) and "Generic encap/decap 
actions" (EXT-382). The overall design is documented in:
https://docs.google.com/document/d/1oWMYUH8sjZJzWa72o2q9kU0N6pNE-rwZcLH3-kbbDR8

These patches introduce the OXM field MFF_PACKET_TYPE, the 'packet-type-aware' 
bridge property, add support for versatile tunnel ports, provide new unit 
tests, implement packet-in for non-Ethernet packets and introduce OF 1.5 
packet-out handling.

The present series v2 supersedes v1 (https://mail.openvswitch.org/pipermail/ovs-dev/2017-April/331023.html), 
V2 was rebased to v6 of "userspace: Support for L3 tunneling" patch series 
mentioned before. It fixes warnings and some of its patches were merged 
together.

 userspace: Add OXM field MFF_PACKET_TYPE
 userspace: Add bridge property 'packet-type-aware'
 userspace: Handling of versatile tunnel ports
 tests: Added unit tests in packet-type-aware.at
 userspace: Complete Packet In handling
 userspace: Introduce OF 1.5 packet-out

Changes v1 -> v2:
* Rebased to v6 of "userspace: Support for L3 tunneling" patch series
* Fixed warnings

 build-aux/extract-ofp-fields                |   3 +-
 include/openflow/openflow-1.5.h             |  17 +
 include/openvswitch/meta-flow.h             |  20 ++
 include/openvswitch/ofp-msgs.h              |   7 +-
 include/openvswitch/ofp-util.h              |   1 +
 lib/flow.c                                  |  59 ++-
 lib/flow.h                                  |  28 +-
 lib/match.c                                 |  52 ++-
 lib/meta-flow.c                             |  85 ++++-
 lib/meta-flow.xml                           | 106 ++++--
 lib/netdev-native-tnl.c                     |  20 +-
 lib/nx-match.c                              |  26 +-
 lib/nx-match.h                              |   4 +-
 lib/odp-util.c                              |  48 ++-
 lib/ofp-parse.c                             |  17 +
 lib/ofp-print.c                             |   6 +-
 lib/ofp-util.c                              |  99 ++++-
 ofproto/ofproto-dpif-xlate.c                |  49 +--
 ofproto/ofproto-dpif-xlate.h                |   1 +
 ofproto/ofproto-dpif.c                      |   1 +
 ofproto/ofproto-provider.h                  |   1 +
 ofproto/ofproto.c                           |  29 +-
 ofproto/ofproto.h                           |   1 +
 ofproto/tunnel.c                            |  24 +-
 ofproto/tunnel.h                            |   2 +-
 tests/automake.mk                           |   6 +-
 tests/dpif-netdev.at                        |  14 +-
 tests/odp.at                                |   1 +
 tests/ofproto-dpif.at                       |  20 +-
 tests/ofproto.at                            | 108 ++++++
 tests/packet-type-aware.at                  | 540 ++++++++++++++++++++++++++++
 tests/pmd.at                                |   2 +-
 tests/system-userspace-packet-type-aware.at | 422 ++++++++++++++++++++++
 tests/system-userspace-testsuite.at         |   1 +
 tests/testsuite.at                          |   1 +
 tests/tunnel-push-pop-ipv6.at               |   2 +-
 tests/tunnel-push-pop.at                    |   2 +-
 utilities/ovs-ofctl.c                       |   1 +
 vswitchd/bridge.c                           |   9 +
 vswitchd/vswitch.xml                        |   9 +
 40 files changed, 1673 insertions(+), 171 deletions(-)


More information about the dev mailing list