【发布时间】:2015-07-21 06:56:06
【问题描述】:
我正在编写一个网络应用程序。速度在我的应用程序中非常重要,我通过以太网端口发送字节,在这种情况下速度约为 350 us,见下图:
http://i59.tinypic.com/2zgu8id.jpg
我想通过以太网端口发送比特以降低速度,我有以下问题:
1- 会影响速度吗?怎么做? msdn网站上没有这种东西。
https://msdn.microsoft.com/en-us/library/system.net.sockets.socket%28v=vs.110%29.aspx
2- 多发送字节使用多窗口应用程序更好吗?
【问题讨论】:
-
按比特发送而不是按字节发送并不一定会提高速度。此外,在同一网络中工作的多个应用程序也不一定会提高速度。我建议先压缩你要发送的文件,这样你要发送的数据更少,因此发送速度会更快,然后接收端必须再次解压缩数据。这意味着您的应用程序需要更多的处理能力,但发送和接收数据所需的时间更少。
-
最小的分配单位是字节,不能只发送一点
-
假设你可以。那会快多少?它有什么用处?
-
为什么
Stopwatch不在SendTo之前开始? -
以太网处理数据包,而不是比特。它也不发送单个字节,它创建并发送数据包。发送更少的数据会降低吞吐量,因为它会导致更多的数据包。最后,以太网设置由 驱动程序 控制。套接字和 C#(或任何其他语言)没有它们的概念,也不需要