[ovs-dev] Sync on PTAP, EXT-382 and NSH

Jan Scheurich jan.scheurich at web.de
Fri Dec 30 10:33:55 UTC 2016


Hi Yi,

Thanks for the confirmation and for rebasing the existing L3 tunneling 
patches to include VXLAN-GPE.

Unfortunately, Simon's original user-space implementation in patches 
9/17 through 11/17 using base_layer and offset fields in dp_packet is 
not compatible to our ongoing implementation of versatile tunnel ports 
in PTAP and non-PTAP bridges, which is based on an explicit packet_type 
field.

To avoid extensive rework, I would rather not merge these changes into 
master now but substitute them with the final implementation. This is 
work-package "3 - L3 ports in non-PTAP pipeline" in our Google doc and 
Zoltan and I will have that ready soon.

Regarding the implementation of NSH support, we should work together to 
implement what is described in the Google doc: 
https://docs.google.com/document/d/1oWMYUH8sjZJzWa72o2q9kU0N6pNE-rwZcLH3-kbbDR8/edit#heading=h.wp4o2op1lp9z

In our opinion the earlier NSH patches cannot be upstreamed because of a 
couple of fundamental conceptual problems:

  * The NXM fields for NSH are used both as packet match fields and as
    packet metadata fields (after decap).
    This ambiguity leads to problems, latest when dealing with NSH in
    NSH packets.
  * They introduce push/pop_nsh OpenFlow actions without dealing with
    the resulting non-Ethernet packets in the pipeline. The behavior is
    not at all well defined.
  * The re-use of the Geneve tunnel metada fields for NSH MD2 TLVs is
    problematic because
    a) it again mixes packet metadata and header fields and
    b) it couldn't handle NSH MD2 in Geneve tunnels.

All these issues are addressed in the proposed new solution built on 
PTAP and EXT-382. The fundamentals are aligned with ONF (OXM classes 
already assigned), so that there is a good chance that we can feed the 
OVS implementation of NSH into the next OpenFlow standard. The first 
phase covering the fixed MD1 NSH header should also be possible to 
upstream in Q1/17, quite soon after the basic patches for PTAP and EXT-382.

Let's have a direct talk when I'm back in office after New Year.

Regards, Jan


On 2016-12-23 01:51, Yang, Yi Y wrote:
> Hi, Jan
>
> I confirm I can take VxLAN-gpe and NSH  related work, now I'm pushing Jiri's L3 patches ot ovs in order that it can be ported into ovs as early as possible, Pravin, Joe and Jarno found some vlan-related issues in Jiri's L3 patches in net-next and worked out several patches for net-next, but they are not merged yet.
>
> But I have had  a workable local ovs version with Jiri's l3 patches and Jarno's fix patches merged, I have worked out several patches to make sure VxLAN-gpe can work in layer3 and layer 2 mode, now they are ready except DPDK userspace has some issues which I'm debugging.
>
> So I think L3 patches and VxLAN-gpe will be ready very soon.
>
> I remember every guys agreed our old NSH implementation with MD type 2 support, I think that will be the fastest path we can take for NSH support, I dare to guarantee it can be ready to merge about one month after (including kernel patches and ovs patches)
>
> I'm wondering if you guys can make a form to list pros and cons for the old implementation way and this new one in order that every people can clearly know what the advantages and disadvantages for them are.
>
> From: Jan Scheurich [mailto:jan.scheurich at ericsson.com]
> Sent: Thursday, December 22, 2016 6:51 PM
> To: Zoltán Balogh <zoltan.balogh at ericsson.com>; Yang, Yi Y <yi.y.yang at intel.com>; Jiri Benc (jbenc at redhat.com) <jbenc at redhat.com>; Pravin Shelar <pshelar at ovn.org>; Simon Horman (simon.horman at netronome.com) <simon.horman at netronome.com>; 'jpettit at ovn.org' <jpettit at ovn.org>; 'jarno at ovn.org' <jarno at ovn.org>; 'Ben Pfaff' <bpfaff at vmware.com>; 'ben.mackcrane at corsa.com' <ben.mackcrane at corsa.com>; dev at openvswitch.org
> Subject: RE: Sync on PTAP, EXT-382 and NSH
>
> Thanks for the good meeting. Here are my notes:
>
> Date: 2016-12-21, 17-18:30 CET
> Participants: Jarno R, Ben P, Ben M-C, Jiri B, Simon H, Zoltan B, Jan S
>
> Summary:
> ·        Discussed making PTAP, EXT-382 and NSH available as extensions to OF 1.3.
> ·        No big deal for the match fields and the encap/decap actions
> ·        Potential problem could be the missing packet_type information in OF 1.3 Packet In, Packet Out and Table Features (Note: Closer inspection of OF 1.5.1 spec reveals that OXM packet_type is part of struct ofp_match in Packet In and Packet Out. It should be OK for an OF 1.3 controller extended with PTAP support)
> ·        Is it simpler for the controllers to upgrade to OF 1.5?
> ·        Deferred the decision
> ·        Agreed to use the (to be assigned) OXM field code points for packet_type and NSH in OVS for all OF versions
> ·        Agreed to allow all NS=1 packet types received from/sent to a tunnel port that uses the Ethertype name space in its protocol field (like GRE). Other versatile tunnel ports (like VXLAN-GPE) which have their own code points require explicit mapping and must drop packets for which no such mapping exists.
> ·        Discussed introduction of a new OXM class for the proposed GEN_TLV fields
> ·        No problem to reserve an OXM class even before those fields are standardized
> ·        For standardization we also need to specify a dynamic binding mechanism between protocol TLVs and GEN_TLV fields. We can submit the mechanism to be developed in OVS for standardization when its stable.
> ·        Walk-through of division into work packages:
> ·        Some follow up needed for the L3 packet support kernel datapath patches
> ·        Rest OK
> ·        Technical discussion around GEN_TLV and use for NSH MD2 in conjunction with encap(NSH) to be continued in the Google doc.
> ·        Time line:
> ·        The entire work should be targeting OVS 2.8 with feature freeze around July
> ·        OVS 2.7 is having feature freeze already in early January
> ·        Work packages can be upstreamed individually. NSH MD1 support doesn't have to wait for MD2
> ·        Basically agreed to the work split proposed in the document:
> ·        RedHat is taking the patches for L3 tunnel configuration (including use of RTNETLINK for config)
> ·        Ericsson take the infrastructure components (L3-tunnels, PTAP, Basic EXT-382)
> ·        Jarno (VMware) will handle the GEN_TLV infrastructure
> ·        Confirm with Yi Yang (Intel): Can they take VXLAN-GPE and the NSH-specific WPs? Or do they need help?
> ·        Way of working
> ·        Continue the meeting series for coordination of effort
> ·        Can use a feature integration branch to ease the joint development and test
> ·        Review of patches mainly through the ovs-dev mailing list
> ·        Use tools like git citool to break up larger patches into a series of smaller patches for review
>
>
>
> -----Original Appointment-----
> From: Jan Scheurich
> Sent: Sunday, 18 December, 2016 15:34
> To: Jan Scheurich; Zoltán Balogh; Yang, Yi Y (yi.y.yang at intel.com<mailto:yi.y.yang at intel.com>); Jiri Benc (jbenc at redhat.com<mailto:jbenc at redhat.com>); Pravin Shelar; Simon Horman (simon.horman at netronome.com<mailto:simon.horman at netronome.com>); jpettit at ovn.org<mailto:jpettit at ovn.org>; jarno at ovn.org<mailto:jarno at ovn.org>; Ben Pfaff; 'ben.mackcrane at corsa.com'; dev at openvswitch.org<mailto:dev at openvswitch.org>
> Subject: Sync on PTAP, EXT-382 and NSH
> When: Wednesday, 21 December, 2016 17:00-18:30 (UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna.
> Where: Skype Meeting
>
>
> Moved to Wednesday same time to accommodate Jiri.
> Hope this is still OK for the others.
>
>
> Hello all,
>
> I would like to call for a final sync meeting before the Christmas break.
>
> Now that we have gone through the main aspects of the design, I would like to focus on how to divide the entire function into manageable pieces, discuss the potential work split, an integration anatomy and a rough time plane for upstreaming. I will try to prepare input in our Google doc for this.
>
> https://docs.google.com/document/d/1oWMYUH8sjZJzWa72o2q9kU0N6pNE-rwZcLH3-kbbDR8/edit
>
> If there are questions left regarding the design, please bring them up as well. You can also comment on the document at any time.
>
> Regards, Jan
>
> .........................................................................................................................................
> --> Join Skype Meeting<https://meet.ericsson.com/jan.scheurich/HJ2NTF23>
> This is an online meeting for Skype for Business, the professional meetings and communications app formerly known as Lync.
>
> Join by phone
>
> +492115343925<tel:+492115343925,70849799%23> (Germany)          English (United States)
> 89925<tel:+89925,70849799%23> (Germany)          English (United States)
>
> Find a local number<https://dialin.ericsson.com?id=70849799>
>
> Conference ID: 70849799
> Forgot your dial-in PIN?<https://dialin.ericsson.com> |Help<http://o15.officeredir.microsoft.com/r/rlidLync15?clid=1033&p1=5&p2=2009>
>
>
> To join a Lync / Skype for Business meeting from an Ericsson standard video room, add 77 before the Conference ID (e.g. 771234567 where 1234567 is the conference ID).    To join from a video room outside of Ericsson add one of the domains after 77 and Conference ID (e.g. 771234567@ xxxx.ericsson.net, where xxxx=emea/apac/amcs).  For assistance contact the IT Service Desk.
> [!OC([1033])!]
> .........................................................................................................................................
>
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev



More information about the dev mailing list