Stephen Hemminger
2007-Apr-18 17:22 UTC
[Bridge] Re: My configuration in Bridge, 802.1Q VLAN, and hotmail login, Thanks to all
On Thu, 2 Dec 2004 20:10:58 -0800 "kingz" <jzhang@cienettechnologies.com> wrote:> Hi All, > > For my issue, first thanks to ALL, I have some idea of it. > Also Thank Peter for his kind remind, I would become one good guy in > this list. > > Most mentioned MTU, but how I assure that the problem is just MTU, how I > debug it? > Here is my bridge configuration: > Internet > | > | > Gateway > | > | eth0 > Ethernet Bridge > | eth1 > | > H u b ( one normal hub or switch , no VLAN settings) > | \ > | \ > D-Link 802.1Q VLAN Switches (their uplink port-port 1 connected to > the upper hub are tagged, those ports connected with PCs are untagged). > > Bridge configuration: > Linux 2.4.26 ( kernel built in bridge function) > Eth0 RTL8139 driver > Eth1 Intel e100 NIC with eepro100 driver > > With VLAN tag, I met the hotmail login error, if without VLAN tag, all > are OK! > > Peter and Ben suggested me use intel NICs, I have one intel e100 NIC and > e1000 NIC, e1000 NIC is OK, but I cannt use the e100 card with the e100 > driver( from both Linux 2.4.26 and Intel site e100-3.2.3), so I only use > eepro100 driver. > How I can use the e100 with e100 driver? Can I use e100 and e1000 > together( use them as eth0,1)? > Any one can help me?There is some confusion about mtu and VLAN. Does mtu include VLAN tag or not? E100 allows the VLAN tag to be included (ie. actual_size > nic->netdev->mtu + VLAN_ETH_HLEN) but other drivers don't and the MTU reported to the bridge doesn't include the VLAN tag. You could change: int br_dev_queue_push_xmit(struct sk_buff *skb) { if (skb->len > skb->dev->mtu) kfree_skb(skb); to: int br_dev_queue_push_xmit(struct sk_buff *skb) { if (skb->len > skb->dev->mtu + 4) kfree_skb(skb);
kingz
2007-Apr-18 17:22 UTC
[Bridge] Re: My configuration in Bridge, 802.1Q VLAN, and hotmail login, Thanks to all
Hi Peter, Stephen Hemminger, and All Thanks to Peter, Stephen for the following reply! In Peter's reply, he said, when I use e1000 cards as eth0,1, I needn't change any MTU for eth0/1 and bridge br0. IS my understanding right? I use Redhat 9.0+ Linux 2.4.28 kernel as bridge box, use the native bridge code, for e1000 card, I needn't patch any, then I can let VLAN tag traffic go through my bridge box, IS my understanding right? Stephen Hemminger: in your reply, when I use the above configuration (9.0+ Linux 2.4.28 kernel as bridge box, use the native bridge code without ebtable patch) with e1000 cards, for VLAN tag traffic going through the bridge, I also need patch something as you wrote, it as if that your suggestion is not same as Peter's ( see above). If need patch it, but I can't find where it is patched? Which file? Is the patch apply to kernel 2.4.28? Peter, Stephen Hemminger :I am confused. How I do then? All, any comments, help would be highly appreciated! Thanks to All! BR Kingz Peter's reply: On Fri, Dec 03, 2004 at 10:12:39PM -0800, kingz wrote:> I changed all two NICs on my Bridge box to Intel Pro/1000 MT > card(with Intel e1000 driver). I think they can handle larger > frames with VLAN tag. ( Thanks to Ben, Peter)Correct, they can.> I also have one doubt: how to configure NICs and my bridge for > larger frames with VLAN tag?You don't need to do anything if you are using the e100 and e1000 drivers.> I guess I need do so: (please correct me) > Bridge box: Redhat 9.0 Linux 2.4.28 kernel > 1. Change NICs on bridge MTU to 1504 ( 0r other value)Is it > necessary? > ifconfig eth0(1) mtu 1504 > > 2. Change bridge MTU to larger value? ( is it necessary?) > I couldn't change the MTU of br0, I got the " SIOCSIFMTU: Invalid > argument" error. What's wrong with it?You aren't supposed to change the MTU, and especially not upwards. If you ARE going to do it, you should change the MTU downwards by at least 4 on all interfaces in that broadcast domain. If you aren't confident about the term broadcast domain, please look it up. Basically everything between two routers is one broadcast domain. Ie. including switches. It isn't always possible to change MTU of switchports, making this a suboptimal "solution."> Hemminger: For this patch in your reply, Do I need apply it to the > bridge code? As you know, the bridge code is built in the 2.4.28 > kernel, I also need apply this change to bridge code? And a stupid > question: > where I apply it to? Which file?You should not need to patch at all, if you're using the e100 and/or e1000 drivers. //Peter
kingz
2007-Apr-18 17:22 UTC
[Bridge] My configuration in Bridge, 802.1Q VLAN, and hotmail login, Thanks to all
Hi All, For my issue, first thanks to ALL, I have some idea of it. Also Thank Peter for his kind remind, I would become one good guy in this list. Most mentioned MTU, but how I assure that the problem is just MTU, how I debug it? Here is my bridge configuration: Internet | | Gateway | | eth0 Ethernet Bridge | eth1 | H u b ( one normal hub or switch , no VLAN settings) | \ | \ D-Link 802.1Q VLAN Switches (their uplink port-port 1 connected to the upper hub are tagged, those ports connected with PCs are untagged). Bridge configuration: Linux 2.4.26 ( kernel built in bridge function) Eth0 RTL8139 driver Eth1 Intel e100 NIC with eepro100 driver With VLAN tag, I met the hotmail login error, if without VLAN tag, all are OK! Peter and Ben suggested me use intel NICs, I have one intel e100 NIC and e1000 NIC, e1000 NIC is OK, but I cannt use the e100 card with the e100 driver( from both Linux 2.4.26 and Intel site e100-3.2.3), so I only use eepro100 driver. How I can use the e100 with e100 driver? Can I use e100 and e1000 together( use them as eth0,1)? Any one can help me? Thanks! Kingz
Bart De Schuymer
2007-Apr-18 17:22 UTC
[Bridge] Re: My configuration in Bridge, 802.1Q VLAN, and hotmail login, Thanks to all
On Friday 03 December 2004 05:10, kingz wrote:> Hi All, > > For my issue, first thanks to ALL, I have some idea of it. > Also Thank Peter for his kind remind, I would become one good guy in > this list. > > Most mentioned MTU, but how I assure that the problem is just MTU, how I > debug it?Try pinging hxtmxxl with a Linux host behind the bridge, use the -s option to increase the packet size. That way you can find out when the problem occurs. Then try the same to another host on the net (I like pinging google). If you can make your ping packet bigger than the Ethernet packet length, then it's not a problem with MTU. If you have acces to the gateway, you can monitor the traffic there too, to see what's going on.> Here is my bridge configuration: > Internet > > > Gateway > > | eth0 > > Ethernet Bridge > > | eth1 > > H u b ( one normal hub or switch , no VLAN settings) > > | \ > | \ > > D-Link 802.1Q VLAN Switches (their uplink port-port 1 connected to > the upper hub are tagged, those ports connected with PCs are untagged). > > Bridge configuration: > Linux 2.4.26 ( kernel built in bridge function) > Eth0 RTL8139 driver > Eth1 Intel e100 NIC with eepro100 driver > > With VLAN tag, I met the hotmail login error, if without VLAN tag, all > are OK!So, your bridge setup does not have a tagged vlan port? The bridge ports are always the physical devices eth0 and eth1? If that is so, then I guess it must be a problem with your network cards, as has been suggested by others. cheers, Bart