[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAEP_g=-_Dh=9U8rVrd9XvWdT-MZoKFfY3=i0_h9EWOzPo4u20w@mail.gmail.com>
Date: Tue, 2 Jul 2013 14:59:51 -0700
From: Jesse Gross <jesse@...ira.com>
To: Simon Horman <horms@...ge.net.au>
Cc: "dev@...nvswitch.org" <dev@...nvswitch.org>,
netdev <netdev@...r.kernel.org>, Ravi K <rkerur@...il.com>,
Isaku Yamahata <yamahata@...inux.co.jp>,
Pravin B Shelar <pshelar@...ira.com>,
Jarno Rajahalme <jarno.rajahalme@....com>,
Joe Stringer <joe@...d.net.nz>
Subject: Re: [PATCH v2.34] datapath: Add basic MPLS support to kernel
On Mon, Jul 1, 2013 at 9:16 PM, Simon Horman <horms@...ge.net.au> wrote:
> On Mon, Jul 01, 2013 at 04:42:46PM -0700, Jesse Gross wrote:
>> On Wed, Jun 26, 2013 at 1:18 AM, Simon Horman <horms@...ge.net.au> wrote:
>> > Allow datapath to recognize and extract MPLS labels into flow keys
>> > and execute actions which push, pop, and set labels on packets.
>> >
>> > Based heavily on work by Leo Alterman, Ravi K, Isaku Yamahata and Joe Stringer.
>> >
>> > Cc: Ravi K <rkerur@...il.com>
>> > Cc: Leo Alterman <lalterman@...ira.com>
>> > Cc: Isaku Yamahata <yamahata@...inux.co.jp>
>> > Cc: Joe Stringer <joe@...d.net.nz>
>> > Signed-off-by: Simon Horman <horms@...ge.net.au>
>>
>> Simon, have you thought any more about the header ordering issues? I
>> don't think we've reached a conclusion at this point.
>
> I believe that you then raised the issue of QinQ, which somehow
> I failed to respond to, I apologise for that.
>
> In particular, my understanding is that you are concerned the code will
> miss-calculate the end of L2 headers in the presence of multiple VLAN tags.
> Thus resulting in an MPLS push action inserting an MPLS LSE after the first
> rather than the last VLAN tag. And that would likely change if QinQ support
> was added to Open vSwtich.
>
> I wonder if a good way forwards is to enhance the calculation
> of the end of L2 headers (mac_len) and the beginning of L3 headers
> (network_header) in ovs_flow_extract() such that it takes into
> account the presence of more than one VLAN tag.
The problem is that this requires being able to calculate the length
of all possible headers that we might want to support in the future.
In the case of QinQ, this would mean the various EtherTypes. You could
also imagine other things like MAC-in-MAC that are farther afield from
what we currently support.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists