Windows Phone延迟或批量HTTP请求吗?看到600ms请求延迟到同一LAN上的服务器

时间:2011-07-24 21:15:19

标签: silverlight windows-phone windows-phone-7

我正在开发一个Windows Phone应用程序,通过wifi与家庭局域网上的服务器通信,我遇到了一个显示停止:局域网内一个微小的HTTP请求的平均往返时间是600-800ms。

这只适用于独立手机。如果手机连接到运行Zune的PC,则手机开始通过Zune通话,响应时间从600ms降至20ms(!)。

我写了一个小的repro程序,每100ms发送一次HTTP请求并运行Wireshark跟踪。 跟踪显示服务器立即响应。电话延迟了请求,一次发送三到五个请求,大约每秒一次。

更多信息:

我的程序使用的是HttpWebRequest而不是WebClient。 我试图为每个请求生成线程,没有运气。 这发生在WP7版本和芒果上。 同样的事情是我跑掉我的工作或家庭Wifi。 在Mango中使用套接字API的低级实现表现出相同的行为。

我在App Hub上看到过同样问题的其他帖子。请帮助澄清为什么会这样。

2 个答案:

答案 0 :(得分:1)

也许另一项实验会有所帮助。手机充电并使用WiFi发送信息。我怀疑这种批量是节电功能的结果。

答案 1 :(得分:0)

如果我理解正确,蜂窝网络链路层协议是突发性的,因此它们可以虚拟化并运行比转发器更多的连接。我怀疑这是你症状的根源。