DPDK usage discussions
 help / color / Atom feed
* [dpdk-users] VRRP broadcast message is discarded X710 NIC
@ 2020-07-06  7:55 Dmitry B
  0 siblings, 0 replies; only message in thread
From: Dmitry B @ 2020-07-06  7:55 UTC (permalink / raw)
  To: users

Hi all,

I'm having a problem with the following 40G NIC adaptor when using DPDK 18:

*04:00.3 Ethernet controller: Intel Corporation Ethernet Controller X710
for 10GbE SFP+ (rev 02)*
The DPDK uses driver *net_i40e*.

Apparently NIC drops broadcast packet with source MAC it owns.

Here is a more detailed description of what is going on.
I have High-Availability environment with two routers.
Both routers registered  by means of *rte_eth_dev_mac_addr_add*() Virtual
MAC (00:00:5e:00:01:64) in addition to a physical burned-in MAC.
When the primary router sending broadcast VRRP-advertise message with
source MAC set to Virtual MAC, the secondary route's adapter seems to drop
the packet.

This is how the message looks like:


> Ethernet II, Src: 00:00:5e:00:01:64, Dst: ff:ff:ff:ff:ff:ff
>     Destination: ff:ff:ff:ff:ff:ff
>         Address: ff:ff:ff:ff:ff:ff
>         .... ..1. .... .... .... .... = LG bit: Locally administered
> address (this is NOT the factory default)
>         .... ...1 .... .... .... .... = IG bit: Group address
> (multicast/broadcast)
>     Source: 00:00:5e:00:01:64
>         Address: 00:00:5e:00:01:64
>         .... ..0. .... .... .... .... = LG bit: Globally unique address
> (factory default)
>         .... ...0 .... .... .... .... = IG bit: Individual address
> (unicast)
>     Type: IPv4 (0x0800)
> Internet Protocol Version 4, Src: 10.93.0.1, Dst: 255.255.255.255
>     0100 .... = Version: 4
>     .... 0101 = Header Length: 20 bytes (5)
>     Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
>         0000 00.. = Differentiated Services Codepoint: Default (0)
>         .... ..00 = Explicit Congestion Notification: Not ECN-Capable
> Transport (0)
>     Total Length: 32
>     Identification: 0x0000 (0)
>     Flags: 0x0000
>         0... .... .... .... = Reserved bit: Not set
>         .0.. .... .... .... = Don't fragment: Not set
>         ..0. .... .... .... = More fragments: Not set
>     ...0 0000 0000 0000 = Fragment offset: 0
>     Time to live: 255
>     Protocol: VRRP (112)
>     Header checksum: 0x0000 incorrect, should be 0xb110(may be caused by
> "IP checksum offload"?)
>     Source: 10.93.0.1
>     Destination: 255.255.255.255
> Virtual Router Redundancy Protocol
>     Version 3, Packet type 1 (Advertisement)
>         0011 .... = VRRP protocol version: 3
>         .... 0001 = VRRP packet type: Advertisement (1)
>     Virtual Rtr ID: 100
>     Priority: 254 (Non-default backup priority)
>     Addr Count: 1
>     0000 .... = Reserved: 0
>     .... 0000 0000 0001 = Adver Int: 1
>     Checksum: 0xf896 [correct]
>     [Checksum Status: Good]
>     IP Address: 0.31.205.8
>

Same code, same DPDK version but with 1G NICs work perfectly.

What I'm missing?

Thanks
Dmitry

-- 
-----

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-06  7:55 [dpdk-users] VRRP broadcast message is discarded X710 NIC Dmitry B

DPDK usage discussions

Archives are clonable:
	git clone --mirror http://inbox.dpdk.org/users/0 users/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 users users/ http://inbox.dpdk.org/users \
		users@dpdk.org
	public-inbox-index users


Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.users


AGPL code for this site: git clone https://public-inbox.org/ public-inbox