我正在构建一个C#应用程序,使用服务器-客户端模型,其中服务器通过套接字每50毫秒向客户端发送一个图像(100kb)...
我曾经使用TCP,但除了这个协议的开销之外,有时客户端最终会在套接字上拥有多个图像。而且我还没有想到一个聪明的机制来拆分每个图像的字节(实际上,我只需要最新的那个)。
我尝试使用UDP,但得出结论我不能发送100kb数据报,只能发送64kb数据报。即便如此,我也不应该使用超过1500字节;否则数据包将在网络上分裂,丢失数据包的可能性更大。
所以现在我有点困惑。我应该继续使用TCP,并在每个图像的末尾放置一些转义字节,以便客户端可以将它们分开吗?还是应该使用UDP,发送1500字节的数据报,并想出一个排序和恢复机制?
关键目标是非常快速地传输图像。只要客户端继续接收新的图像,我不介意在途中丢失一些图像。
或者我应该使用另一种协议?提前感谢!
我曾经使用TCP,但除了这个协议的开销之外,有时客户端最终会在套接字上拥有多个图像。而且我还没有想到一个聪明的机制来拆分每个图像的字节(实际上,我只需要最新的那个)。
我尝试使用UDP,但得出结论我不能发送100kb数据报,只能发送64kb数据报。即便如此,我也不应该使用超过1500字节;否则数据包将在网络上分裂,丢失数据包的可能性更大。
所以现在我有点困惑。我应该继续使用TCP,并在每个图像的末尾放置一些转义字节,以便客户端可以将它们分开吗?还是应该使用UDP,发送1500字节的数据报,并想出一个排序和恢复机制?
关键目标是非常快速地传输图像。只要客户端继续接收新的图像,我不介意在途中丢失一些图像。
或者我应该使用另一种协议?提前感谢!