[ovs-dev] [PATCH 0/6 v2.6] Basic MPLS actions and matches

Simon Horman horms at verge.net.au
Mon Nov 5 02:22:34 UTC 2012


Hi,

This series implements basic MPLS actions and matches based on work by
Ravi K, Leo Alterman and Yamahata-san.

The main limitation of this implementation is that it only
supports manipulating the outer-most MPLS label.

Key difference between the previous post, v2.5:

* Dropped "flow: Set ttl in flow_compose()", this is
  now present in the master branch

* Dropped "nx-match: Do not check pre-requisites for load actions",
  instead, dl_type changes are tracked to allow correct pre-requisite
  checking in the presence of push_mpls and pop_mpls actions.

Changes are details in the changelog of each patch.

The testsuite passes when this series is applied on top
of the current master branch.

Diffstat and git information is provided to aid review.

----------------------------------------------------------------
The following changes since commit d02a5f8ea4e1da19ccc4f903026b77649472b236:

  ofproto: Report 0 Mbps when speed not available instead of 100 Mbps. (2012-11-03 18:00:39 -0700)

are available in the git repository at:

  git://github.com/horms/openvswitch.git devel/mpls

for you to fetch changes up to 26e5b771abc73df97df86ccfd4c7e19508cd4854:

  Add support for copy_ttl_in action (2012-11-05 09:27:00 +0800)

----------------------------------------------------------------
Simon Horman (6):
      datapath: Add basic MPLS support to kernel
      User-Space MPLS actions and matches
      Add support for dec_mpls_ttl action
      Add support for set_mpls_ttl action
      Add support for copy_ttl_out action
      Add support for copy_ttl_in action

 datapath/actions.c              |   81 ++++++++++++
 datapath/datapath.c             |   53 ++++++++
 datapath/datapath.h             |    7 +
 datapath/flow.c                 |   30 +++++
 datapath/flow.h                 |    7 +
 datapath/vport.c                |    2 +
 include/linux/openvswitch.h     |   34 ++++-
 include/openflow/nicira-ext.h   |   39 ++++++
 include/openflow/openflow-1.2.h |    2 +
 lib/dpif-netdev.c               |   13 ++
 lib/flow.c                      |  127 ++++++++++++++++---
 lib/flow.h                      |   16 ++-
 lib/match.c                     |   88 ++++++++++++-
 lib/match.h                     |    6 +
 lib/meta-flow.c                 |  124 ++++++++++++++++++
 lib/meta-flow.h                 |    9 ++
 lib/nx-match.c                  |   20 ++-
 lib/odp-util.c                  |  171 ++++++++++++++++++++++++-
 lib/ofp-actions.c               |  183 +++++++++++++++++++++++++-
 lib/ofp-actions.h               |   31 +++++
 lib/ofp-parse.c                 |   48 ++++++-
 lib/ofp-print.c                 |    9 +-
 lib/ofp-util.c                  |   28 +++-
 lib/ofp-util.def                |   12 ++
 lib/ofpbuf.c                    |    8 +-
 lib/ofpbuf.h                    |    1 +
 lib/packets.c                   |  268 ++++++++++++++++++++++++++++++++++++++-
 lib/packets.h                   |   91 +++++++++++++
 ofproto/ofproto-dpif.c          |  166 +++++++++++++++++++++++-
 tests/odp.at                    |   13 ++
 tests/ofproto-dpif.at           |  232 +++++++++++++++++++++++++++++++++
 tests/test-bundle.c             |    2 +
 tests/test-multipath.c          |    2 +
 utilities/ovs-dpctl.c           |   18 ++-
 utilities/ovs-ofctl.8.in        |   45 +++++++
 35 files changed, 1940 insertions(+), 46 deletions(-)



More information about the dev mailing list