On Wed, Jul 13, 2016 at 09:59:34AM -0700, Jesse Gross wrote: > On Wed, Jul 13, 2016 at 7:55 AM, Jiri Benc <jb...@redhat.com> wrote: > > On Wed, 13 Jul 2016 07:35:59 -0700, Jesse Gross wrote: > >> I think history tells us how this will end - similar to IPv4 options, > >> implementations that don't implement TLVs will become deployed and > >> then when there is a use for them it's no longer possible. Since I > >> don't want OVS to have a half implementation or contribute to this > >> issue, I'd like to see the whole protocol implemented before I apply > >> anything. > > > > I see a big difference between this and IPv4. While in IPv4, the > > options are extension to existing headers, here we're talking about a > > completely different payload. It's more comparable to http vs. ftp (of > > course, it's a poor comparison, but I hope it illustrates at least a > > bit what I mean). > > > > If NSH takes off (and it's a big "if" in my opinion), it's also well > > possible we'll see more metadata types. The spec is pretty much open to > > this. Obviously, the authors are aware of that and type 2 is optional. > > As I guess will be type 3 and type 4 and whatever. > > > > It's pretty much inevitable that applications and deployments built > > around MD type 1 won't support MD type 2. And vice versa. This is > > regardless whether ovs supports MD type 2 or not. They're just a > > different protocol. > > > > In my opinion, starting with MD type 1 is a good way to reduce the > > initial scope. I see no problem with adding MD type 2 later. > > I understand what you are saying but I'm not sure that I agree that > the two metadata types should be viewed as essentially independent > protocols. I guess it's probably also pretty unlikely that additional > metadata types will be created in the future. > > If you look at discussions in the IETF and other places, it seems like > a frequent response to questions about MD type 1's design is that any > limitations can be handled with type 2. So to me this looks like the > two pieces are interrelated and the situation is quite similar to > IPv4. > > In any case, I don't think this is a fundamental issue, just a matter > of timing. Since the premise of the original question was that MD type > 2 shouldn't be too much additional work and the series is currently > dependent on Simon's patches, it seems like now might be a good time > for the authors to look into implementing this.
Jesse, MD type 2 support needs a lot of changes, you know tunnel_metadata GENEVE is part of tunnel, but it should be part of NSH in NSH, you suggested we are to leverage GENEVE tunnel_metadata, but how to leverage it better is a big question mark for us. they should be called as nsh_metadata in NSH, so we can't directly use GENEVE's match fields and struct flow_tnl in struct flow, we find a better way to reuse Geneve tunnel_metadata code, that needs to generalize Geneve tunnel_metadata code in order that NSH and Geneve can share them but we can have different match fields name but can use a struct metadata in struct flow, what do you think about it? If you agree this, then I can confirm we will have a lot of changes, especially for GENEVE. So my personal opinion is to merge MD type 1 support at first, MD type 2 needs a lot of changes, most of them are in Geneve side but not in NSH side. > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev