Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 连接到web服务的紧凑框架-如何使用源端口随机化_Sockets_Compact Framework_Firewall - Fatal编程技术网

Sockets 连接到web服务的紧凑框架-如何使用源端口随机化

Sockets 连接到web服务的紧凑框架-如何使用源端口随机化,sockets,compact-framework,firewall,Sockets,Compact Framework,Firewall,紧凑型框架3.5 Windows CE 6.0 R3 基于Atmel的BSP 情况:来自单个网关的多个设备连接到防火墙后面的web服务。所有设备都使用相同的IP和源端口启动连接 问题:基本上,新设备正在尝试连接到web服务,防火墙认为这是现有连接,发送RST数据包。设备按顺序递增源端口,然后重试。如果有100台设备,这是一排100个RST,这需要很长时间。(见附件) 根据这篇文章,解决方案是随机化源端口。如何确定源端口以及如何设置它?我甚至不确定它在哪里完成(CE、CF、BSP) 编辑: 找到

紧凑型框架3.5
Windows CE 6.0 R3
基于Atmel的BSP

情况:来自单个网关的多个设备连接到防火墙后面的web服务。所有设备都使用相同的IP和源端口启动连接

问题:基本上,新设备正在尝试连接到web服务,防火墙认为这是现有连接,发送RST数据包。设备按顺序递增源端口,然后重试。如果有100台设备,这是一排100个RST,这需要很长时间。(见附件)

根据这篇文章,解决方案是随机化源端口。如何确定源端口以及如何设置它?我甚至不确定它在哪里完成(CE、CF、BSP)


编辑:
找到这个。HttpWebRequest类上的ServicePoint看起来很有希望,但规范中说:

适用于Pocket PC的Windows Mobile,Windows 适用于智能手机的移动设备,Windows CE 平台注意:此属性为空 直到由于以下原因发送请求: 附加网络传输 必需的


好的,看来问题出在winsock.dll中。我们最后做的是实例化Socket类并将其随机绑定到环回端点