RE: SNAP headers, RFC1042

2006-02-03 Thread Simon Barber
The problem is that when bridging the bridge code gets run before the
protocol handlers, hence psnap never sees the frame before it is output
again. In addition any ingress qdisc has already been run before the
protocol handlers, so the protocol is wrong there - hence my suggestion
of using the _type_trans as a place to do it.

Simon

-Original Message-
From: Stephen Hemminger [mailto:[EMAIL PROTECTED] 
Sent: Friday, February 03, 2006 1:25 PM
To: Simon Barber
Cc: netdev@vger.kernel.org; Jouni Malinen
Subject: Re: SNAP headers, RFC1042

On Fri, 3 Feb 2006 13:22:48 -0800
"Simon Barber" <[EMAIL PROTECTED]> wrote:

> The main reason is bridging - the header format needs to be different 
> for different ports. Ideally I'd like to see a single snap processor 
> used in both cases (local receive & bridging). One problem with the 
> current processor is the in the bridge the skb->protocol is set to 
> 802_2_LLC, not to the real protocol type. This prevents ebtables rules

> and tc from working correctly.
> 
> Simon

Then psnap should reset skb->protocol. 
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: SNAP headers, RFC1042

2006-02-03 Thread Stephen Hemminger
On Fri, 3 Feb 2006 13:22:48 -0800
"Simon Barber" <[EMAIL PROTECTED]> wrote:

> The main reason is bridging - the header format needs to be different
> for different ports. Ideally I'd like to see a single snap processor
> used in both cases (local receive & bridging). One problem with the
> current processor is the in the bridge the skb->protocol is set to
> 802_2_LLC, not to the real protocol type. This prevents ebtables rules
> and tc from working correctly.
> 
> Simon 

Then psnap should reset skb->protocol. 
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: SNAP headers, RFC1042

2006-02-03 Thread Simon Barber
The main reason is bridging - the header format needs to be different
for different ports. Ideally I'd like to see a single snap processor
used in both cases (local receive & bridging). One problem with the
current processor is the in the bridge the skb->protocol is set to
802_2_LLC, not to the real protocol type. This prevents ebtables rules
and tc from working correctly.

Simon 

-Original Message-
From: Stephen Hemminger [mailto:[EMAIL PROTECTED] 
Sent: Friday, February 03, 2006 1:19 PM
To: Simon Barber
Cc: netdev@vger.kernel.org; Jouni Malinen
Subject: Re: SNAP headers, RFC1042

On Fri, 3 Feb 2006 13:08:17 -0800
"Simon Barber" <[EMAIL PROTECTED]> wrote:

> Currently many wireless drivers handle SNAP->Ethernet header 
> processing
> - this is an obvious candidate for factoring out - and might possibly 
> be something that should be moved out of the wireless code completely.
> Would it make sense to add the code to eth_trans_type or create a 
> ieee80211_trans_type?
> 
> Advantages:
> 1) Better code reuse
> 2) Frame data is no longer moved or touched unless bridging.
> 
> Disadvantage:
> 1) things like dhcpd need to understand SNAP header format (unless 
> frames going to a raw socket have the header re-written)
> 2) bridge code needs to rewrite frames according to the output port's 
> needed header type
>  
> Comments? Suggestions?
>  
> Simon

We already have a snap processor, so why not just do a netif_receive_skb
on the frame.

You need to select LLC in the kernel config with that driver.

--
Stephen Hemminger <[EMAIL PROTECTED]>
OSDL http://developer.osdl.org/~shemminger
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: SNAP headers, RFC1042

2006-02-03 Thread Stephen Hemminger
On Fri, 3 Feb 2006 13:08:17 -0800
"Simon Barber" <[EMAIL PROTECTED]> wrote:

> Currently many wireless drivers handle SNAP->Ethernet header processing
> - this is an obvious candidate for factoring out - and might possibly be
> something that should be moved out of the wireless code completely.
> Would it make sense to add the code to eth_trans_type or create a
> ieee80211_trans_type? 
> 
> Advantages:
> 1) Better code reuse
> 2) Frame data is no longer moved or touched unless bridging.
> 
> Disadvantage:
> 1) things like dhcpd need to understand SNAP header format (unless
> frames going to a raw socket have the header re-written)
> 2) bridge code needs to rewrite frames according to the output port's
> needed header type
>  
> Comments? Suggestions?
>  
> Simon

We already have a snap processor, so why not just do a netif_receive_skb
on the frame.

You need to select LLC in the kernel config with that driver.

-- 
Stephen Hemminger <[EMAIL PROTECTED]>
OSDL http://developer.osdl.org/~shemminger
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


SNAP headers, RFC1042

2006-02-03 Thread Simon Barber
Currently many wireless drivers handle SNAP->Ethernet header processing
- this is an obvious candidate for factoring out - and might possibly be
something that should be moved out of the wireless code completely.
Would it make sense to add the code to eth_trans_type or create a
ieee80211_trans_type? 

Advantages:
1) Better code reuse
2) Frame data is no longer moved or touched unless bridging.

Disadvantage:
1) things like dhcpd need to understand SNAP header format (unless
frames going to a raw socket have the header re-written)
2) bridge code needs to rewrite frames according to the output port's
needed header type
 
Comments? Suggestions?
 
Simon
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html