On Tue, 21 Feb 2006, Jay Vosburgh wrote:


        Originally submitted by Kenzo Iwami; his original description is:

The current bonding driver receives duplicate packets when broadcast/
multicast packets are sent by other devices or packets are flooded by the
switch. In this patch, new flags are added in priv_flags of net_device
structure to let the bonding driver discard duplicate packets in
dev.c:skb_bond().

        Modified by Jay Vosburgh to change a define name, update some
comments, rearrange the new skb_bond() for clarity, clear all bonding
priv_flags on slave release, and update the driver version.

Signed-off-by: Kenzo Iwami <[EMAIL PROTECTED]>
Signed-off-by: Jay Vosburgh <[EMAIL PROTECTED]>

<CUT>

I took this patch from linux-2.6 using git tree and applied to 2.6.16.1 together with recent "link status" fix. Unfortunately broadcast packet duplication still occurs.

I have two e1000 NICs:

02:04.0 Ethernet controller: Intel Corporation 82541GI/PI Gigabit Ethernet 
Controller (rev 05)
04:03.0 Ethernet controller: Intel Corporation 82541GI/PI Gigabit Ethernet 
Controller (rev 05)

My configuration follows:

# echo -n 1 > /sys/class/net/bond0/bonding/mode
# echo -n 100 > /sys/class/net/bond0/bonding/miimon
# /sbin/ifconfig bond0 up
# ifenslave bond0 eth0 eth1
# echo -n eth0 > /sys/class/net/bond0/bonding/primary

# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: eth0
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Link Failure Count: 7
Permanent HW addr: 00:14:22:b0:c9:f9

Slave Interface: eth1
MII Status: up
Link Failure Count: 7
Permanent HW addr: 00:14:22:b0:c9:fa


[EMAIL PROTECTED]:~# /sbin/ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:14:22:B0:C9:F9
          inet6 addr: fe80::214:22ff:feb0:c9f9/64 Scope:Link
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:612084 errors:0 dropped:0 overruns:0 frame:0
          TX packets:720804 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:65497223 (62.4 Mb)  TX bytes:193356963 (184.3 Mb)
          Base address:0xecc0 Memory:fe9e0000-fea00000

[EMAIL PROTECTED]:~# /sbin/ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:14:22:B0:C9:F9
          inet6 addr: fe80::214:22ff:feb0:c9f9/64 Scope:Link
          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
          RX packets:85134 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1161 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:10730231 (10.2 Mb)  TX bytes:93436 (91.2 Kb)
          Base address:0xdcc0 Memory:fe5e0000-fe600000

I'm using .1Q vlans over bondig interface:

# cat /proc/net/vlan/config
VLAN Dev name    | VLAN ID
Name-Type: VLAN_NAME_TYPE_PLUS_VID_NO_PAD
vlan1          | 1  | bond0
vlan2          | 2  | bond0
vlan3          | 3  | bond0
vlan4          | 4  | bond0
vlan5          | 5  | bond0
vlan6          | 6  | bond0
vlan7          | 7  | bond0
vlan18         | 18  | bond0
vlan19         | 19  | bond0
vlan33         | 33  | bond0
vlan34         | 34  | bond0
vlan37         | 37  | bond0
vlan66         | 66  | bond0


Any ideas?

Best regards,

                                Krzysztof Olędzki

Reply via email to