All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Greear <greearb@candelatech.com>
To: Andy Gospodarek <andy@greyhouse.net>
Cc: bridge@lists.osdl.org
Subject: Re: [Bridge] RFC: [PATCH] bridge vlan integration
Date: Mon, 11 Sep 2006 12:11:41 -0700	[thread overview]
Message-ID: <4505B4ED.9080901@candelatech.com> (raw)
In-Reply-To: <bdfc5d6e0609111155s58677c8bx2533330a18238aca@mail.gmail.com>

Andy Gospodarek wrote:
> On 9/11/06, David Kimdon <david.kimdon@devicescape.com> wrote:
>> Hi,
>>
>> The attached patches enables the bridge to filter and forward packets
>> according to their IEEE 802.1q headers.  The goals behind this change
>> include :
>>
>> - Enable running STP on 802.1q tagged networks.  STP packets
>>   must be untagged.  It isn't obvious how else to enable STP
>>   with the current bridge and vlan code.
>> - Add native support for an untagged vlan.  Currently an untagged
>>   vlan can be implimented using ebtables or similar.
>> - On devices bridging a large number of interfaces across various
>>   vlans this significantly simplifies configuration and, depending on
>>   configuration, can improve performance.
>>
>> Comments appreciated,
>>
>> David
> 
> 
> David,
> 
> It looks like this code specifically ignores (which is OK for now) and
> clears (which is not OK) the frame's 802.1p priority.  Have you tested
> priority-tagged frames to see if they are passed correctly?  It seems
> like you should consider adding another field to the sk_buff structure
> so priority of the incoming frame can be tracked as well as add logic
> to br_vlan_output_frame and br_vlan_input_frame so the tag is saved.
> Something like this would probably be fine:
> 
> Signed-off-by: Andy Gospodarek <andy@greyhouse.net>
> 
> --- ./include/linux/skbuff.h.gospo      2006-09-11 14:41:54.000000000 -0400
> +++ ./include/linux/skbuff.h    2006-09-11 14:43:27.000000000 -0400
> @@ -297,6 +297,7 @@ struct sk_buff {
>         __u32                   nfmark;
>  #endif /* CONFIG_NETFILTER */
>  #ifdef CONFIG_BRIDGE_VLAN
> +       unsigned int            vlan_priority;
>         unsigned int            vlan;
>  #endif

SKB bloat is not good for performance.  You can store the priority and the VID in
a single 32-bit number with room to spare...

The skb->priority is also a possible place to store the VLAN priority.

The actual VLAN code has a mapping from vlan-priority -> skb priority on ingress,
and another mapping of skb->priority -> vlan-priority on egress.  You probably
don't need to worry about this mapping for a bridge, however.

Ben

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


  reply	other threads:[~2006-09-11 19:11 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-09-11 17:49 [Bridge] RFC: [PATCH] bridge vlan integration David Kimdon
2006-09-11 17:57 ` David Kimdon
2006-09-11 18:55 ` Andy Gospodarek
2006-09-11 19:11   ` Ben Greear [this message]
2006-09-11 19:26     ` Andy Gospodarek
2006-09-11 19:59     ` David Kimdon
2006-09-11 19:53   ` David Kimdon
2006-09-11 19:03 ` Ethan Sommer
2006-09-11 19:14   ` Ben Greear
2006-09-11 22:04 ` Benny Amorsen
  -- strict thread matches above, loose matches on Subject: below --
2006-09-12 20:46 Simon Barber

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4505B4ED.9080901@candelatech.com \
    --to=greearb@candelatech.com \
    --cc=andy@greyhouse.net \
    --cc=bridge@lists.osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.