Hi all,
In CSIT we are running VPP on a VM with virtio network device.
vppctl show hardware
Name Idx Link Hardware
GigabitEthernet0/4/0 1 up GigabitEthernet0/4/0
Ethernet address fa:16:3e:0a:3e:3d
Red Hat Virtio
carrier up full duplex speed 10000 mtu 9216
rx queues 1, rx desc 256, tx queues 1, tx desc 256
The interface is configured with 2 Dot1Q subinterfaces, with ip address on each
subinterface.
sw_interface_set_flags sw_if_index 1 admin-up
create_vlan_subif sw_if_index 1 vlan 10
sw_interface_set_flags sw_if_index 5 admin-up
create_vlan_subif sw_if_index 1 vlan 20
sw_interface_set_flags sw_if_index 6 admin-up
sw_interface_add_del_address sw_if_index 6 192.168.100.1/24
sw_interface_add_del_address sw_if_index 6 192.168.200.1/24
ip_neighbor_add_del sw_if_index 5 dst 192.168.100.2 mac fa:16:3e:b1:67:b7
ip_neighbor_add_del sw_if_index 6 dst 192.168.200.2 mac fa:16:3e:b1:67:b7
In a testcase I'm sending tagged frame with tag 20 and I'm expecting received
packed with tag 10
###[ Ethernet ]###
dst = fa:16:3e:0a:3e:3d
src = fa:16:3e:b1:67:b7
type = n_802_1Q
###[ 802.1Q ]###
prio = 0L
id = 0L
vlan = 10L
type = IPv4
###[ IP ]###
version = 4L
ihl = 5L
tos = 0x0
len = 28
id = 1
flags =
frag = 0L
ttl = 64
proto = icmp
chksum = 0xcd8a
src = 192.168.100.2
dst = 192.168.200.2
\options \
###[ ICMP ]###
type = echo-request
code = 0
chksum = 0xf7ff
id = 0x0
seq = 0x0
But there is no packet received in vpp show trace
vat# ------------------- Start of thread 0 vpp_main -------------------
No packets in trace buffer
The same testcase with e1000 driver instead virtio has in trace
Packet 1
00:00:18:038106: dpdk-input
GigabitEthernet0/4/0 rx queue 0
buffer 0x4e51: current data 0, length 60, free-list 0, totlen-nifb 0, trace
0x0
PKT MBUF: port 0, nb_segs 1, pkt_len 60
buf_len 2176, data_len 60, ol_flags 0x0, data_off 128, phys_addr 0x53935340
packet_type 0x0
IP4: fa:16:3e:b1:67:b7 -> fa:16:3e:bc:bb:cd 802.1q vlan 10
ICMP: 192.168.100.2 -> 192.168.200.2
tos 0x00, ttl 64, length 28, checksum 0xcd8a
fragment id 0x0001
ICMP echo_request checksum 0xf7ff
00:00:18:038164: ethernet-input
IP4: fa:16:3e:b1:67:b7 -> fa:16:3e:bc:bb:cd 802.1q vlan 10
00:00:18:038174: ip4-input
ICMP: 192.168.100.2 -> 192.168.200.2
tos 0x00, ttl 64, length 28, checksum 0xcd8a
fragment id 0x0001
ICMP echo_request checksum 0xf7ff
00:00:18:038179: ip4-lookup
fib 0 dpo-idx 5 flow hash: 0x00000000
ICMP: 192.168.100.2 -> 192.168.200.2
tos 0x00, ttl 64, length 28, checksum 0xcd8a
fragment id 0x0001
ICMP echo_request checksum 0xf7ff
00:00:18:038185: ip4-rewrite
tx_sw_if_index 6 dpo-idx 5 : ipv4 via 192.168.200.2 GigabitEthernet0/4/0.20:
IP4: fa:16:3e:bc:bb:cd -> fa:16:3e:b1:67:b7 802.1q vlan 20 flow hash: 0x00000000
IP4: fa:16:3e:bc:bb:cd -> fa:16:3e:b1:67:b7 802.1q vlan 20
ICMP: 192.168.100.2 -> 192.168.200.2
tos 0x00, ttl 63, length 28, checksum 0xce8a
fragment id 0x0001
ICMP echo_request checksum 0xf7ff
00:00:18:038188: GigabitEthernet0/4/0-output
GigabitEthernet0/4/0.20
IP4: fa:16:3e:bc:bb:cd -> fa:16:3e:b1:67:b7 802.1q vlan 20
ICMP: 192.168.100.2 -> 192.168.200.2
tos 0x00, ttl 63, length 28, checksum 0xce8a
fragment id 0x0001
ICMP echo_request checksum 0xf7ff
00:00:18:038194: GigabitEthernet0/4/0-tx
GigabitEthernet0/4/0 tx queue 0
buffer 0x4e51: current data 0, length 60, free-list 0, totlen-nifb 0, trace
0x0
IP4: fa:16:3e:bc:bb:cd -> fa:16:3e:b1:67:b7 802.1q vlan 20
ICMP: 192.168.100.2 -> 192.168.200.2
tos 0x00, ttl 63, length 28, checksum 0xce8a
fragment id 0x0001
ICMP echo_request checksum 0xf7ff
Does anybody know if there is a problem in virtio driver with vlans?
Thanks,
Matej
_______________________________________________
vpp-dev mailing list
[email protected]
https://lists.fd.io/mailman/listinfo/vpp-dev