1
我正在从事网络可靠性模拟工作,我需要根据服务质量百分比模拟丢包。目前我有一个DLL挂钩到send
,sendto
,recv
和recvfrom
。然后,我的钩子根据服务质量“丢弃”数据包。在winsock中检索套接字协议
我只需要将挂钩应用于UDP数据包,并且不打扰TCP(TCP用于远程调试)。
有没有一种方法可以查询WinSock中套接字绑定的协议?
int WSAAPI HookedSend(SOCKET s, const char FAR * buf, int len, int flags)
{
//if(s is UDP)
//Drop according to QOS
else
//Send TCP packets undisturbed
return send(s, buf, len, flags);
}
该选项SO_BSP_STATE返回ADDRES,端口和协议的getsockopt文档中找到。谢谢 – 2011-02-04 04:29:25