[ovs-dev] [PATCH v2.55] datapath: Add basic MPLS support to kernel

Simon Horman horms at verge.net.au
Thu Mar 20 04:25:45 UTC 2014


On Fri, Mar 14, 2014 at 04:12:39PM +0900, Simon Horman wrote:
> Hi Pravin, Hi Jesse, Hi All,
> 
> I have updated this patch so that:
> 
> * The datapath rejects push MPLS actions in the presence of VLAN tags.
> 
>   I have done this by white-listing the following:
>   - ETH_P_IP (0x0800)
>   - ETH_P_ARP (0x0806)
>   - ETH_P_RARP (0x0835)
>   - ETH_P_IPV6 (0x86DD)

I realised this morning that at the very least the
MPLS ethertypes should be added to this list.

I plan to repost the patch accordingly.
But this change shouldn't affect any review of the rest
of the patch.

> 
>   Previously it was done by blacklisting the following:
>   - ETH_P_8021Q (0x8100)
>   - ETH_P_8021AD (0x88A8)
>   - ETH_P_QINQ1 (0x0x9100)
>   - ETH_P_QINQ2 (0x0x9200)
>   - ETH_P_QINQ3 (0x0x9300)
> 
>   Although the whitelist probably wants to be expanded
>   it seems to me to be a more conservative and safer
>   way to guard against unknown tag ordering.
> 
> to aid review this patch is available in git at:
> https://github.com/horms/openvswitch devel/mpls-v2.55
> 
> Simon Horman (1):
>   datapath: Add basic MPLS support to kernel
> 
>  OPENFLOW-1.1+                                   |   4 -
>  datapath/Modules.mk                             |   1 +
>  datapath/actions.c                              | 119 +++++++++-
>  datapath/datapath.c                             |   4 +-
>  datapath/flow.c                                 |  29 +++
>  datapath/flow.h                                 |  17 +-
>  datapath/flow_netlink.c                         | 297 ++++++++++++++++++++++--
>  datapath/flow_netlink.h                         |   2 +-
>  datapath/linux/compat/gso.c                     |  70 +++++-
>  datapath/linux/compat/gso.h                     |  41 +++-
>  datapath/linux/compat/include/linux/netdevice.h |   6 +-
>  datapath/linux/compat/netdevice.c               |  10 +-
>  datapath/mpls.h                                 |  15 ++
>  include/linux/openvswitch.h                     |   7 +-
>  14 files changed, 567 insertions(+), 55 deletions(-)
>  create mode 100644 datapath/mpls.h
> 
> -- 
> 1.8.5.2
> 
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
> 



More information about the dev mailing list