Hello,

2 Servers
kernel : 2.6.38.8
openvswitch 1.1.1
networks drivers : igb 3.0.22  |  igb module from 2.6.38.8 ( two tests, same
result )

Server A
openvswitch BRE ( eth1 , vmTAP )
vmTAP is tag with 200   , is attached to windows guest

Server B
openvswitch BRE ( eth1 , vmTAP2 )
vmTAP2 is tag with 200, attached to windows guest


SA : eth1 <- intel switch , port trunk -> SB eth1


Test  1  ( igb  3.0.22) / 1a ( igb from kernel )
Ping from windows guest ( vmTAP) to windows guest ( vmTAP2)  : ping does not
work .

Tcpdump on arp packet ( tcpdump -e -n -l -i eth1 arp ) on Server A : see arp
request with vlan 200
Tcpdump on arp packet ( tcpdump -e -n -l -i eth1 arp ) on Server B : see arp
request without vlan 200

vlan tag has disapeared

Test 2 : Same test with two different server ( dell, driver BNX2 )
tcpdump with vlan 200 on two server, ping is ok.


I've read some documentation :
Support vlan_group workaround implemented in XenServer kernels.

Some Linux network drivers support a feature called "VLAN acceleration",
associated with a data structure called a "vlan_group".  A vlan_group is,
abstractly, a dictionary that maps from a VLAN ID (in the range 0...4095)
to a VLAN device, that is, a Linux network device associated with a
particular VLAN, e.g. "eth0.9" for VLAN 9 on eth0.

Some drivers that support VLAN acceleration have bugs that fall roughly
into the following categories:

    * Some NICs strip VLAN tags on receive if no vlan_group is registered,
      so that the tag is completely lost.

    * Some drivers size their receive buffers based on whether a vlan_group
      is enabled, meaning that a maximum size packet with a VLAN tag will
      not fit if a vlan_group is not configured.

    * On transmit some drivers expect that VLAN acceleration will be used
      if it is available (which can only be done if a vlan_group is
      configured).  In these cases, the driver may fail to parse the packet
      and correctly setup checksum offloading and/or TSO.

The correct long term solution is to fix these driver bugs.  To cope until
then, we have prepared a patch to the Linux kernel network stack that works
around these problems.  This commit adds support for the workaround
implemented by that patch.




But it seems to be correct since sometime in kernel and igb driver ?


Can you explain me ?
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to