On Thu, Oct 16, 2014 at 08:56:32AM -0400, Thomas F Herbert wrote: > >Why is OVS_KEY_ATTR_CVLAN needed? The expectation when we designed > >the Netlink flow structures was that nested VLANs would be implemented > >as multiple nested attributes. > Ben, OK. I will redo to use nested attributes. Why does mpls have key > attributes?
There's an attribute for a VLAN, which specifies the contents of the VLAN header, and then the remainder of the flow information follows in an "encap" header. There's an attribute for MPLS, which specifies the contents of the MPLS headers. MPLS doesn't provide any hints as to what comes next, so while the remainder of the flow information would naturally follow in an "encap" header, there's no information to provide. The MPLS headers themselves could be given as nested attributes, We had a discussion of that at the time (I don't recall whether it was on the list; maybe not), but we concluded that since multiple MPLS headers were the rule, not the exception, and since there was never anything intervening between them, it made sense to just jam them all into one netlink attribute. (I conclude that multiple VLAN headers are an exceptional case based on OVS being around since 2009 or so and only now people submitting patches for it ;-) _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev