Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.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

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
如何为UDPClient设置ReceiveBufferSize?还是说设置有意义?C#_C#_Sockets_Buffer_Udpclient - Fatal编程技术网

如何为UDPClient设置ReceiveBufferSize?还是说设置有意义?C#

如何为UDPClient设置ReceiveBufferSize?还是说设置有意义?C#,c#,sockets,buffer,udpclient,C#,Sockets,Buffer,Udpclient,我正在实现UDP数据传输。我有几个关于UDP缓冲区的问题 我正在使用UDPClient进行UDP发送/接收。我的宽带带宽是150KB/s(字节/秒,不是bps) 我向27台主机发送一个500B的数据报 27台主机接收到10KB的数据报后会发回 所以,我应该收到27条回复,对吗?然而,我的平均得分只有8-12 然后我尝试将响应的大小减小到500B,是的,我收到了所有响应 我的一个想法是,如果所有27台主机几乎同时发送回10KB响应,传入流量将达到270KB/s(很可能),这超过了传入带宽,因此会发

我正在实现UDP数据传输。我有几个关于UDP缓冲区的问题

我正在使用UDPClient进行UDP发送/接收。我的宽带带宽是150KB/s(字节/秒,不是bps)

  • 我向27台主机发送一个500B的数据报

  • 27台主机接收到10KB的数据报后会发回

  • 所以,我应该收到27条回复,对吗?然而,我的平均得分只有8-12

  • 然后我尝试将响应的大小减小到500B,是的,我收到了所有响应

  • 我的一个想法是,如果所有27台主机几乎同时发送回10KB响应,传入流量将达到270KB/s(很可能),这超过了传入带宽,因此会发生丢失。我说得对吗

    但我认为,即使传入的流量超过了带宽,Windows是否应该将数据报放入缓冲区并等待接收

    然后我怀疑我的UdpClient的ReceiveBufferSize是否太小?默认情况下,它是8092B


    我不知道我在这些方面是否还好。请给我一些帮助。

    UDP协议不保证数据包传递,如果需要保证数据包传递,应切换到TCP

    UDP更适合应用程序,在应用程序中,丢失数据包比等待数据包找到自己的路径要好。i、 流媒体或类似的东西


    有关更多信息,请参阅。

    500GB数据报?你可能会发送什么,你的硬盘?