iOS TCP 一个毫秒级网络问题: 间断性出现相同时间的丢包

发布于 2022-09-11 20:54:41 字数 811 浏览 22 评论 0

图片描述

图片描述

问题的表现是:

  • 同一个服务端(一个独立的 wifi 设备, mac 和 iphone 通过 wifi 和这个设备连接)
  • 有三个请求方, mac 上的 python 程序, mac 上的 ping, iphone X 上的 APP
  • python 和 APP 都在以 50hz(20ms)的频率请求服务器
  • 从服务器接收指令的角度看: 服务器前后两条指令的间隔(后收到的时间戳减前一条的时间戳),

    • python 的间隔不超过 0.25s
    • APP 间断性出现 0.47s(固定值)的时间间隔(此时,APP 的发送间隔没有大于 28ms)

综合起来描述就是: iPhoneX(机型很重要) 中用 tcp 以固定频率访问服务器。服务器会间断性的出现 0.47s 的指令空白。(需求要求不能出现 0.5 以上的间隔)。并且每次空白出现时都伴随重传(xcode 调试工具查找的,重传次数等同于图表中锋值出现的次数)。同时,只要换手机,或者用模拟器,都不会出现 0.2s 以上的间隔。

在此请教:

  • 哪位有什么思路大概原因在哪,我有什么办法找到原因所在?
  • 因为需求要求不能超过 0.5s 的指令空白,如何解这个问题?

补充: grpc nonamsg 都尝试过

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文