Re: [PATCH net-next v4] openvswitch: enable NSH support
flat view
From: Jiri Benc <hidden>
Date: 2017-08-23 07:26:29
On Tue, 22 Aug 2017 17:38:26 +0800, Yang, Yi wrote:
I checked GSO support code, we have two cases to handle, one case is to output NSH packet to VxLAN-gpe port, the other case is to output NSH packet to Ethernet port (tap, veth, vhost, physical eth, etc.), I don't think it is a good way to do GSO support in OVS module, because we can't know the final output port at this point, if the final output port is VxLAN-gpe port, it will still face GSO issue, but I didn't see vxlan module handles this, maybe udp tunnel did this. I think a NSH packet can be split into two packets, one has NSH header, another one doesn't, so I'm not sure how vxlan module can avoid this situation.
As I said before, by either implementing GSO support for NSH or by segmenting in software before pushing the NSH header. In the first case, the packet will be software segmented before being pushed to the hardware, in the second case, it will be software segmented before pushing the NSH header.
For the second case, we can add a nsh GSO module in net/nsh/nsh_gso.c (as MPLS did in net/mpls/mpls_gso.c), that is the best way to handle this, what do you think about it?
Yes, that's one of the two options that we've been talking about. It's the better and the more efficient one. Jiri