paullouisageneau / libjuice

JUICE is a UDP Interactive Connectivity Establishment library
Mozilla Public License 2.0
429 stars 81 forks source link

IP Differentiated Services on Windows #61

Open paullouisageneau opened 3 years ago

paullouisageneau commented 3 years ago

IP Differentiated Services by setting the IPv4 ToS field or the IPv6 Traffic Class field are not supported on Microsoft Windows. Microsoft has a proprietary API called qWave for QoS, it should be investigated to establish whether the DSCP can be set without administrator flow configuration.

https://github.com/paullouisageneau/libjuice/blob/11c89614cfb44f0a89422ac780931da235e883be/src/udp.c#L149

edbek commented 2 years ago

Explain, please. Does it happen that the libjuice does not work on Windows and I only need to use Linux?

paullouisageneau commented 2 years ago

As advertised in the Readme, libjuice works fine on Windows.

Differentiated Services allow to set the proper priority on packets, allowing to optimize latency for real-time traffic. The feature is not available on Windows for now, so performance can be slightly lower for some use cases. Nothing serious, though.