【发布时间】:2014-10-08 15:30:56
【问题描述】:
我正在尝试使用 setTrafficClass 标记 DSCP 值。我在两台不同的机器上设置了服务器和客户端,我可以打印 DSCP 的值,但我在 WireShark 中看不到它。 我在网上浏览了一些帖子,但没有任何帮助。我正在使用 Windows 7 专业版。 任何帮助,将不胜感激。谢谢!
我正在做更多测试,看看如何做到这一点。 这是客户端代码:
试试{
Socket socket = new Socket(addr, 2345);
socket.setTrafficClass(10);
PrintWriter out = new PrintWriter( socket.getOutputStream(), true);
out.println("Current DSCP value: " + socket.getTrafficClass());
out.close();
socket.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
服务器:
try {
ServerSocket serverSocket = new ServerSocket(1234);
Socket clientSocket = serverSocket.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(
clientSocket.getInputStream()));
String fromClient = in.readLine();
System.out.println(fromClient);
in.close();
clientSocket.close();
serverSocket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
在服务器端的控制台中: 当前DSCP值:10
我的服务器代码和客户端位于不同的机器上。
在wireshark中我看到了:
区分服务字段:0x00(DSCP 0x00:默认;ECN:0x00:非 ECT(不支持 ECN 传输))
我希望看到 wireshark 的变化,我只看到默认值为零。
【问题讨论】:
-
嗨 ron_g_1 ~~~有结果吗??????我同样的问题~~~~~
标签: java network-programming wireshark