QoS argument not applying specified value to differentiated services field in packets when IPv6 enabled - linux clients #3621
Replies: 2 comments
-
|
This was provided for reference: https://elixir.bootlin.com/linux/v6.18.6/source/net/core/filter.c#L5558 |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Moved to issue: #3623 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I thought I'd do some testing using the QoS argument. In reading the help output I see:
The default is applied when IPv6 is not enabled.
When specifying a value using
./jamulus -j -6 -Q 128 -i /home/jamulus/.config/Jamulus/sa.inithe programs outputs:but tcpdump captures still show differentiated services field as CS0 instead of the expected CS4 that the value of 128 would set.
This only happens when enabling IPv6.
I ran the above command with
strace -o ~/strace-qos.log -e trace=network ./jamulus -j -6 -Q 128 -i /home/jamulus/.config/Jamulus/sa.iniThis line from strace log seems to indicate a failure with
setsockopt()trying to apply the QoS value:After speaking with some IPv6 networking associates it seems the issue may lie in IPV6_TCLASS should take an 'int', not 'char'.
I've attached a pcap and strace log to help illustrate the issue.
strace-qos.log
qos.pcap.gz
tcpdump capture args:
tcpdump -i lo -w qos.pcap -c 1000 -v 'port 22124'jamulus server connect attempt to
[::1]:22124Beta Was this translation helpful? Give feedback.
All reactions