【发布时间】:2013-12-15 00:50:42
【问题描述】:
首先,我搜索了很多,这是我最后的选择。
我使用 Windows 7 的 Linphone SIP 开源,并尝试发送 ToS 不同于 0 的音频/视频流。
相关部分代码:
retval = setsockopt(session->rtp.socket, proto, value_type, (SOCKET_OPTION_VALUE)&tos, sizeof(tos));
if (retval==-1)
ortp_error("Fail to set DSCP value on rtp socket: %s",getSocketError());
if (session->rtcp.socket != (ortp_socket_t)-1){
if (setsockopt(session->rtcp.socket, proto, value_type, (SOCKET_OPTION_VALUE)&tos, sizeof(tos))==-1){
ortp_error("Fail to set DSCP value on rtcp socket: %s",getSocketError());
}
}
我成功了,a.e retval 不是 -1。但是从wireshark我仍然看到Tos = 0。
Someone tells its windows bug, someone - by SPEC (a.e. feature).
是否有人知道解决方法或者我需要通过命令行通过“gpedit.msc”手动创建组策略?
【问题讨论】:
-
WSAGetLastError 值告诉你什么?
-
查看我的编辑,我没有收到任何错误
-
不管怎样,TOS 字段基本上是不用的。很少有路由器实际上对其采取任何行动。
-
也许可以,但在我的情况下会因此丢包 70%