Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[testgap] Add a test case to verify that control packets are using TX queue 7 #7695

Closed
prabhataravind opened this issue Mar 9, 2023 · 0 comments · Fixed by #8097
Closed

Comments

@prabhataravind
Copy link
Contributor

prabhataravind commented Mar 9, 2023

Description
On 8102 and 7050-qx-32 platforms, it was observed that control packets (BGP, LACP) share the same TX queue 0 with data packets as opposed to queue 7 potentially causing loss of control packets when link utilization goes 100%. This issue is being addressed to prevent critical events like BGP flaps in production. A sonic-mgmt test also should be added to test this scenario on different platforms.

admin@str2-8102-02:~$ show queue counters Ethernet28
Port TxQ Counter/pkts Counter/bytes Drop/pkts Drop/bytes


Ethernet28 UC0 4728 1231118 0 0
Ethernet28 UC1 0 0 0 0
Ethernet28 UC2 0 0 0 0
Ethernet28 UC3 0 0 0 0
Ethernet28 UC4 0 0 0 0
Ethernet28 UC5 0 0 0 0
Ethernet28 UC6 0 0 0 0
Ethernet28 UC7 0 0 0 0
Ethernet28 MC8 0 0 0 0
Ethernet28 MC9 0 0 0 0
Ethernet28 MC10 0 0 0 0
Ethernet28 MC11 0 0 0 0
Ethernet28 MC12 0 0 0 0
Ethernet28 MC13 0 0 0 0
Ethernet28 MC14 0 0 0 0
Ethernet28 MC15 0 0 0 0

admin@str2-8102-02:~$ ping 20.20.28.20 -c 10
PING 20.20.28.20 (20.20.28.20) 56(84) bytes of data.
64 bytes from 20.20.28.20: icmp_seq=1 ttl=64 time=0.944 ms
64 bytes from 20.20.28.20: icmp_seq=2 ttl=64 time=0.839 ms
64 bytes from 20.20.28.20: icmp_seq=3 ttl=64 time=0.219 ms
64 bytes from 20.20.28.20: icmp_seq=4 ttl=64 time=0.389 ms
64 bytes from 20.20.28.20: icmp_seq=5 ttl=64 time=1.07 ms
64 bytes from 20.20.28.20: icmp_seq=6 ttl=64 time=1.01 ms
64 bytes from 20.20.28.20: icmp_seq=7 ttl=64 time=0.444 ms
64 bytes from 20.20.28.20: icmp_seq=8 ttl=64 time=0.353 ms
64 bytes from 20.20.28.20: icmp_seq=9 ttl=64 time=0.662 ms
64 bytes from 20.20.28.20: icmp_seq=10 ttl=64 time=0.855 ms

admin@str2-8102-02:~$ show queue counters Ethernet28
Port TxQ Counter/pkts Counter/bytes Drop/pkts Drop/bytes


Ethernet28 UC0 4740 1232848 0 0
Ethernet28 UC1 0 0 0 0
Ethernet28 UC2 0 0 0 0
Ethernet28 UC3 0 0 0 0
Ethernet28 UC4 0 0 0 0
Ethernet28 UC5 0 0 0 0
Ethernet28 UC6 0 0 0 0
Ethernet28 UC7 0 0 0 0
Ethernet28 MC8 0 0 0 0
Ethernet28 MC9 0 0 0 0
Ethernet28 MC10 0 0 0 0
Ethernet28 MC11 0 0 0 0
Ethernet28 MC12 0 0 0 0
Ethernet28 MC13 0 0 0 0
Ethernet28 MC14 0 0 0 0
Ethernet28 MC15 0 0 0 0

admin@str2-8102-02:~$ show arp
Address MacAddress Iface Vlan

Steps to reproduce the issue:

  1. Load a sonic image from any one of master/201911/202012 branch
  2. Ping a neighbor on any of the UP interfaces
  3. Run "show queue counters " to see which TX queue count keeps increasing

Describe the results you received:
UC Q0 count keeps increasing with each icmp packet.

Describe the results you expected:
UC Q7 count should keep increasing for control packets like icmp.

Additional information you deem important:

**Output of `show version`:**
 ```

SONiC Software Version: SONiC.20201231.91

```

**Attach debug file `sudo generate_dump`:**

```
(paste your output here)
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
3 participants