我正在一个项目中工作,我应该将数据从C#服务器传输到Java客户端(在android设备上运行)。
我需要使用UDP协议获取实时数据并保持性能。
搜索网络。没有找到任何类似的例子,我真的不知道从哪里开始。

你能建议这是否可以做到吗?

提前致谢。

最佳答案

是的,可以做到。这是Internet协议的优点之一:对标准套接字的支持如此广泛和普遍,以至于运行完全不同的CPU架构和软件环境的不同设备几乎可以互操作。

请确保UDP确实是完成这项工作的最佳工具。您需要可靠的交货吗?您是否需要按订单交货?您可以忍受多少丢包?您可以忍受多少数据包重新排序?您的应用程序会像处理1500字节数据包一样优雅地处理540字节数据包吗?您的应用程序是否需要防御man in the middle attacks?怎么样?

TCP是令人难以置信的协议。许多尝试使用UDP“提高速度”的尝试都已经重新实现了TCP已经为您提供的许多功能-但是大多数重新实现的效果都没有真正实现的好。请不要这么快就关闭TCP。

首先,几乎所有针对Java和C#的网络教程都应包含聊天或回显服务器之类的东西,该网络编程相当于“ Hello World”。对于简单的环境,这已经足够了。如果您打算让服务器同时处理数十个客户端,那么这将需要更多的工作,并且如果您打算将服务器扩展到成百上千个,则将成为different style of programming

08-18 08:47
查看更多