如何在OS X上用Java设置DSCP字节

时间:2015-03-30 18:56:20

标签: java macos wireshark qos

我正在尝试在Java中设置UDP数据包标头中的DSCP字段,如下所示:

bcSock = new DatagramSocket(port, address);
bcSock.setTrafficClass(0xE0);

但是,当使用Wireshark查看数据包时,它会将DSCP字节显示为0x00。

我尝试将其添加到“VM选项”(但它没有帮助):

-Djava.net.preferIPv4Stack=true

我在OS X 10.10.2上运行应用程序

如何设置DSCP字节?或者使用Java设置数据包优先级(或QoS)的任何其他方式?

感谢您的想法&帮助

1 个答案:

答案 0 :(得分:1)

好的,绝对没有解释。我让我的电脑睡觉(过夜),决定尝试不同的路由器/接入点,并看到DSCP字节现在正在改变!回到我原来的接入点,它继续工作。在我的MBP上试用了以太网网络适配器和Wi-Fi网络适配器,两者都运行良好。

不幸的是,我目前不知道是什么导致这突然开始工作。我没有重新启动计算机或其他任何东西。对不起,对于那个看到这个问题的人来说,我还能提供更多的帮助。

仅仅是为了记录,事实证明我仍然需要它才能工作:

-Djava.net.preferIPv4Stack=true