【问题标题】:Possible causes for lack of data loss over my localhost UDP protocol?我的 localhost UDP 协议缺少数据丢失的可能原因是什么?
【发布时间】:2015-10-14 19:08:56
【问题描述】:

我刚刚实现了我的第一个 UDP 服务器/客户端。服务器位于本地主机上。 我正在从客户端向服务器发送 64kb 的数据,服务器应该发回这些数据。然后,客户端检查有多少 64kb 仍然完好无损,它们都完好无损。总是。 这种行为的可能原因是什么?我期待至少-一些-数据丢失。

客户端代码:http://pastebin.com/5HLkfcqS 服务器代码:http://pastebin.com/YrhfJAGb

PS:这里是网络编程的新手,所以请不要太苛刻。我找不到我的问题的答案。

【问题讨论】:

    标签: c network-programming udp data-loss


    【解决方案1】:

    您没有看到任何丢失的数据报的原因是您的网络堆栈根本没有遇到任何问题。 您的 localhost 连接可以轻松应对您提供的内容,一个 localhost 连接能够在一个不错的 CPU 上每秒处理数 100 兆字节的数据。

    要查看丢弃的数据报,您应该增加干扰的概率。你有几个机会:

    • 增加网络负载
    • 让你的 CPU 忙于其他任务
    • 使用“真实”网络并在真实机器之间传输数据
    • 通过 dsl 线路运行您的代码
    • 设置虚拟机并模拟网络中断(Vmware Workstation 可以这样做)

    这可能是一个有趣的阅读:What would cause UDP packets to be dropped when being sent to localhost?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多