Thanks Dave.

I did this, and as expected, the L2-forwarding by container is always reaching 
only memif1/0 and never on memif2/0. I have attached the trace for 3 packets. 
We see memif-input only on memif1/0.

That is, the packets from slave net_memif2 in container, is reaching the master 
memif1/0 in host instead of master memif2/0 in host – Which is NOT correct.

I have checked the parameters of dpdk l2fwd application in container;
--vdev=net_memif1,socket=/run/memif-13a02ae0641b-net1.sock,role=slave 
--vdev=net_memif2,socket=/run/memif-13a02ae0641b-net2.sock
And corresponding memif info on vpp in host. ( details pasted below)
memif1/0  - /run/memif-13a02ae0641b-net1.sock
memif2/0  - /run/memif-13a02ae0641b-net2.sock

I suppose this setup of 2 memif (slaves) interfaces in container using 2 memif 
(master) interfaces in host is supported.

Any suggestion on what I should try next, please?

Regards
Sridhar


--- memif output---
vpp# show memif
sockets
  id  listener    filename
  2   yes (1)     /run/memif-13a02ae0641b-net2.sock
  0   no          /run/vpp/memif.sock
  1   yes (1)     /run/memif-13a02ae0641b-net1.sock

interface memif1/0
  remote-name "DPDK 19.08.0"
  remote-interface "(null)"
  socket-id 1 id 0 mode ethernet
  flags admin-up connected
  listener-fd 43 conn-fd 42
  num-s2m-rings 1 num-m2s-rings 1 buffer-size 0 num-regions 1
  region 0 size 4227328 fd 46
    master-to-slave ring 0:
      region 0 offset 16512 ring-size 1024 int-fd 50
      head 15106 tail 14082 flags 0x0001 interrupts 0
    slave-to-master ring 0:
      region 0 offset 0 ring-size 1024 int-fd 48
      head 34023 tail 34023 flags 0x0001 interrupts 0
interface memif2/0
  remote-name "DPDK 19.08.0"
  remote-interface "(null)"
  socket-id 2 id 0 mode ethernet
  flags admin-up connected
  listener-fd 44 conn-fd 45
  num-s2m-rings 1 num-m2s-rings 1 buffer-size 0 num-regions 1
  region 0 size 4227328 fd 47
    master-to-slave ring 0:
      region 0 offset 16512 ring-size 1024 int-fd 51
      head 12201 tail 11177 flags 0x0001 interrupts 0
    slave-to-master ring 0:
      region 0 offset 0 ring-size 1024 int-fd 49
      head 0 tail 0 flags 0x0001 interrupts 0



From: Dave Barach (dbarach) <[email protected]>
Sent: 28 June 2020 18:54
To: Rao, Sridhar <[email protected]>; [email protected]
Subject: RE: [vpp-dev] Userspace CNI - VPP Memif Forwarding Issue.

[Warning] This email comes from an external source. Be careful of any embedded 
links and attachments.
“trace add [dpdk-input|memif-input] <nnn>” ... run failing case ... “show 
trace”. Should explain what’s happening.

Dave

From: [email protected]<mailto:[email protected]> 
<[email protected]<mailto:[email protected]>> On Behalf Of Sridhar K. N. Rao
Sent: Saturday, June 27, 2020 9:16 AM
To: [email protected]<mailto:[email protected]>
Subject: [vpp-dev] Userspace CNI - VPP Memif Forwarding Issue.

Hello,

We (OPNFV-VSPERF) are working container networking performance testing. As part 
of this we are testing Userspace CNI with VPP. The Pod runs a dpdk l2fwd 
application. We are stuck with a forwarding issue, and any suggestion would be 
extremely helpful. I checked with CNI team, and they see no issues.

I have provided the summary here. All the details (vpp configuration, version, 
l2fwd run in pod, patch-info, interface info, statistics, pod-interface-stats, 
failed-scenarios, etc) can be found here - 
https://github.com/opensource-tnbt/cnb/blob/master/vpp-forwarding-issue.md

We have a very simple 2-node setup. The 2 nodes are connect directly by 2 
10-gig interfaces for data traffic.
On one node we have T-Rex Running, whereas on the other node we have VPP and 
DPDK-pod running.

So, the traffic will flow like this:
Direction1:
Trex0-phy ---> TenGigabitEthernet6/0/0 ---> memif1/0 ---> net_memif1
DPDK l2fwd app in pod: net_memif1 ---> net_memif2
Trex1-phy <--- TenGigabitEthernet6/0/1 <--- memif2/0 <--- net_memif2
Direction2:
Trex0-phy ---> TenGigabitEthernet6/0/0 ---> memif2/0 ---> net_memif2
DPDK l2fwd app in pod: net_memif2 ---> net_memif1
Trex1-phy <--- TenGigabitEthernet6/0/1 <--- memif1/0 <--- net_memif1

L2pathes are configured
Direction:1
sudo vppctl test l2patch rx TenGigabitEthernet6/0/0 tx memif1/0
sudo vppctl test l2patch rx memif2/0 tx TenGigabitEthernet6/0/1
Direction:2
sudo vppctl test l2patch rx TenGigabitEthernet6/0/1 tx memif2/0
sudo vppctl test l2patch rx memif1/0 tx TenGigabitEthernet6/0/0

When The traffic runs, All the traffic somehow ends up only on memif1/0 – like 
this:

vpp# show interface
              Name               Idx    State  MTU (L3/IP4/IP6/MPLS)     
Counter          Count
TenGigabitEthernet6/0/0           1      up          9000/0/0/0     rx packets  
            70598102
                                                                    rx bytes    
         79993565352
                                                                    tx packets  
           616631302
                                                                    tx bytes    
        696194649320
                                                                    tx-error    
           458997285
TenGigabitEthernet6/0/1           2      up          9000/0/0/0     rx packets  
            70587607
                                                                    rx bytes    
         79981831588
local0                            0     down          0/0/0/0
memif1/0                          3      up          9000/0/0/0     rx packets  
           616631302
                                                                    rx bytes    
        696194649320
                                                                    tx packets  
            70598102
                                                                    tx bytes    
         79993565352
memif2/0                          4      up          9000/0/0/0     tx packets  
            70587607
                                                                    tx bytes    
         79981831588

We have tried the following (The outputs of all these are in the link above).

  1.  Testing 1-Direction at a time.
  2.  Swapping the Phy -> memif mapping in the patch
  3.  Using Xconnect instead of l2patch.
  4.  Changing the mode from Interface to bridge in CNI.

None of these helped to debug the issue.

Looking forward for an advice.

Cheers,
Sridhar


vpp# show interface
              Name               Idx    State  MTU (L3/IP4/IP6/MPLS)     
Counter          Count
TenGigabitEthernet6/0/0           1      up          9000/0/0/0
TenGigabitEthernet6/0/1           2      up          9000/0/0/0
local0                            0     down          0/0/0/0
memif1/0                          3      up          9000/0/0/0
memif2/0                          4      up          9000/0/0/0


vpp# show trace
------------------- Start of thread 0 vpp_main -------------------
No packets in trace buffer
------------------- Start of thread 1 vpp_wk_0 -------------------
Packet 1

00:07:52:959683: memif-input
  memif: hw_if_index 3 next-index 6
    slot: ring 0
00:07:52:959716: l2-patch
  L2_PATCH: rx 3 tx 1
00:07:52:959718: TenGigabitEthernet6/0/0-output
  TenGigabitEthernet6/0/0
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x01, ttl 64, length 1006, checksum 0xc048
    fragment id 0xffff
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5
00:07:52:959720: TenGigabitEthernet6/0/0-tx
  TenGigabitEthernet6/0/0 tx queue 1
  buffer 0xfb1afb: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x0
  PKT MBUF: port 65535, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x0, data_off 128, phys_addr 
0xbec6bf40
    packet_type 0x0 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0x0 fdir.hi 0x0 fdir.lo 0x0
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x01, ttl 64, length 1006, checksum 0xc048
    fragment id 0xffff
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5

Packet 2

00:07:52:960602: memif-input
  memif: hw_if_index 3 next-index 6
    slot: ring 0
00:07:52:960614: l2-patch
  L2_PATCH: rx 3 tx 1
00:07:52:960615: TenGigabitEthernet6/0/0-output
  TenGigabitEthernet6/0/0
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5
00:07:52:960616: TenGigabitEthernet6/0/0-tx
  TenGigabitEthernet6/0/0 tx queue 1
  buffer 0xfb1900: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x1
  PKT MBUF: port 65535, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x0, data_off 128, phys_addr 
0xbec64080
    packet_type 0x0 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0x0 fdir.hi 0x0 fdir.lo 0x0
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5

Packet 3

00:07:52:960602: memif-input
  memif: hw_if_index 3 next-index 6
    slot: ring 0
00:07:52:960614: l2-patch
  L2_PATCH: rx 3 tx 1
00:07:52:960615: TenGigabitEthernet6/0/0-output
  TenGigabitEthernet6/0/0
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5
00:07:52:960616: TenGigabitEthernet6/0/0-tx
  TenGigabitEthernet6/0/0 tx queue 1
  buffer 0xfb1927: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x2
  PKT MBUF: port 65535, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x0, data_off 128, phys_addr 
0xbec64a40
    packet_type 0x0 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0x0 fdir.hi 0x0 fdir.lo 0x0
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5

------------------- Start of thread 2 vpp_wk_1 -------------------
Packet 1

00:07:52:978568: dpdk-input
  TenGigabitEthernet6/0/1 rx queue 1
  buffer 0xfd3e81: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x0
                   ext-hdr-valid
                   l4-cksum-computed l4-cksum-correct
  PKT MBUF: port 1, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x8a, data_off 128, phys_addr 
0xbf4fa0c0
    packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0x2afd4f2d fdir.hi 0x0 fdir.lo 0x2afd4f2d
    Packet Offload Flags
      PKT_RX_RSS_HASH (0x0002) RX packet with RSS hash result
      PKT_RX_L4_CKSUM_BAD (0x0008) L4 cksum of RX pkt. is not OK
      PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
    Packet Types
      RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
      RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
      RTE_PTYPE_L4_UDP (0x0200) UDP packet
  IP4: 00:1e:67:fd:f8:39 -> 00:1e:67:fd:f8:38
  UDP: 90.90.90.90 -> 1.1.1.1
    tos 0x01, ttl 64, length 1006, checksum 0xc048
    fragment id 0xffff
  UDP: 3001 -> 3000
    length 986, checksum 0x0bf5
00:07:52:978573: l2-patch
  L2_PATCH: rx 2 tx 4
00:07:52:978576: memif2/0-output
  memif2/0 l4-cksum-computed l4-cksum-correct
  IP4: 00:1e:67:fd:f8:39 -> 00:1e:67:fd:f8:38
  UDP: 90.90.90.90 -> 1.1.1.1
    tos 0x01, ttl 64, length 1006, checksum 0xc048
    fragment id 0xffff
  UDP: 3001 -> 3000
    length 986, checksum 0x0bf5

Packet 2

00:07:52:979468: dpdk-input
  TenGigabitEthernet6/0/1 rx queue 1
  buffer 0xfd3e5a: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x1
                   ext-hdr-valid
                   l4-cksum-computed l4-cksum-correct
  PKT MBUF: port 1, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x182, data_off 128, phys_addr 
0xbf4f9700
    packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0x2afd4f2d fdir.hi 0x0 fdir.lo 0x2afd4f2d
    Packet Offload Flags
      PKT_RX_RSS_HASH (0x0002) RX packet with RSS hash result
      PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
      PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
    Packet Types
      RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
      RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
      RTE_PTYPE_L4_UDP (0x0200) UDP packet
  IP4: 00:1e:67:fd:f8:39 -> 00:1e:67:fd:f8:38
  UDP: 90.90.90.90 -> 1.1.1.1
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3001 -> 3000
    length 986, checksum 0x0bf5
00:07:52:979469: l2-patch
  L2_PATCH: rx 2 tx 4
00:07:52:979470: memif2/0-output
  memif2/0 l4-cksum-computed l4-cksum-correct
  IP4: 00:1e:67:fd:f8:39 -> 00:1e:67:fd:f8:38
  UDP: 90.90.90.90 -> 1.1.1.1
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3001 -> 3000
    length 986, checksum 0x0bf5

Packet 3

00:07:52:979471: dpdk-input
  TenGigabitEthernet6/0/1 rx queue 1
  buffer 0xfd3e33: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x2
                   ext-hdr-valid
                   l4-cksum-computed l4-cksum-correct
  PKT MBUF: port 1, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x182, data_off 128, phys_addr 
0xbf4f8d40
    packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0x2afd4f2d fdir.hi 0x0 fdir.lo 0x2afd4f2d
    Packet Offload Flags
      PKT_RX_RSS_HASH (0x0002) RX packet with RSS hash result
      PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
      PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
    Packet Types
      RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
      RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
      RTE_PTYPE_L4_UDP (0x0200) UDP packet
  IP4: 00:1e:67:fd:f8:39 -> 00:1e:67:fd:f8:38
  UDP: 90.90.90.90 -> 1.1.1.1
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3001 -> 3000
    length 986, checksum 0x0bf5
00:07:52:979472: l2-patch
  L2_PATCH: rx 2 tx 4
00:07:52:979472: memif2/0-output
  memif2/0 l4-cksum-computed l4-cksum-correct
  IP4: 00:1e:67:fd:f8:39 -> 00:1e:67:fd:f8:38
  UDP: 90.90.90.90 -> 1.1.1.1
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3001 -> 3000
    length 986, checksum 0x0bf5

------------------- Start of thread 3 vpp_wk_2 -------------------
Packet 1

00:07:52:959554: dpdk-input
  TenGigabitEthernet6/0/0 rx queue 2
  buffer 0xff1197: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x0
                   ext-hdr-valid
                   l4-cksum-computed l4-cksum-correct
  PKT MBUF: port 0, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x8a, data_off 128, phys_addr 
0xbfc46640
    packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0xb4b7332 fdir.hi 0x0 fdir.lo 0xb4b7332
    Packet Offload Flags
      PKT_RX_RSS_HASH (0x0002) RX packet with RSS hash result
      PKT_RX_L4_CKSUM_BAD (0x0008) L4 cksum of RX pkt. is not OK
      PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
    Packet Types
      RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
      RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
      RTE_PTYPE_L4_UDP (0x0200) UDP packet
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x01, ttl 64, length 1006, checksum 0xc048
    fragment id 0xffff
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5
00:07:52:959574: l2-patch
  L2_PATCH: rx 1 tx 3
00:07:52:959583: memif1/0-output
  memif1/0 l4-cksum-computed l4-cksum-correct
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x01, ttl 64, length 1006, checksum 0xc048
    fragment id 0xffff
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5

Packet 2

00:07:52:960545: dpdk-input
  TenGigabitEthernet6/0/0 rx queue 2
  buffer 0xff1170: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x1
                   ext-hdr-valid
                   l4-cksum-computed l4-cksum-correct
  PKT MBUF: port 0, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x182, data_off 128, phys_addr 
0xbfc45c80
    packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0xb4b7332 fdir.hi 0x0 fdir.lo 0xb4b7332
    Packet Offload Flags
      PKT_RX_RSS_HASH (0x0002) RX packet with RSS hash result
      PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
      PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
    Packet Types
      RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
      RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
      RTE_PTYPE_L4_UDP (0x0200) UDP packet
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5
00:07:52:960546: l2-patch
  L2_PATCH: rx 1 tx 3
00:07:52:960547: memif1/0-output
  memif1/0 l4-cksum-computed l4-cksum-correct
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5

Packet 3

00:07:52:960548: dpdk-input
  TenGigabitEthernet6/0/0 rx queue 2
  buffer 0xff1149: current data 0, length 1020, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace 0x2
                   ext-hdr-valid
                   l4-cksum-computed l4-cksum-correct
  PKT MBUF: port 0, nb_segs 1, pkt_len 1020
    buf_len 2176, data_len 1020, ol_flags 0x182, data_off 128, phys_addr 
0xbfc452c0
    packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0xb4b7332 fdir.hi 0x0 fdir.lo 0xb4b7332
    Packet Offload Flags
      PKT_RX_RSS_HASH (0x0002) RX packet with RSS hash result
      PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
      PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
    Packet Types
      RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
      RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
      RTE_PTYPE_L4_UDP (0x0200) UDP packet
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5
00:07:52:960549: l2-patch
  L2_PATCH: rx 1 tx 3
00:07:52:960550: memif1/0-output
  memif1/0 l4-cksum-computed l4-cksum-correct
  IP4: 00:1e:67:fd:f8:38 -> 00:1e:67:fd:f8:39
  UDP: 1.1.1.1 -> 90.90.90.90
    tos 0x00, ttl 64, length 1006, checksum 0xc048
    fragment id 0x0001
  UDP: 3000 -> 3001
    length 986, checksum 0x0bf5

------------------- Start of thread 4 vpp_wk_3 -------------------
No packets in trace buffer
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#16838): https://lists.fd.io/g/vpp-dev/message/16838
Mute This Topic: https://lists.fd.io/mt/75152055/21656
Group Owner: [email protected]
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to