c#服务器向Java客户端发送UDP数据包

本文关键字:UDP 数据包 客户端 服务器 Java | 更新日期: 2023-09-27 18:11:26

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

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

c#服务器向Java客户端发送UDP数据包

是的,可以做到。这是互联网协议的美妙之处之一:对标准套接字的支持是如此广泛和普遍,以至于运行截然不同的CPU架构和软件环境的不同设备几乎可以毫无困难地进行互操作。

请确保UDP确实是这项工作的最佳工具。你需要可靠的送货吗?你需要按订单送货吗?你能容忍多少丢包?你能容忍多少次数据包重新排序?您的应用程序处理540字节的数据包会像处理1500字节的数据包一样优雅吗?您的应用程序需要防止中间人攻击吗?如何?

TCP是一个不可思议的协议。许多使用UDP"为了速度"的尝试最终会重新实现TCP已经为您提供的许多东西——但是大多数重新实现都没有真正的东西做得那么好。请不要这么快就放弃TCP协议。

要开始,几乎任何Java和c#的网络教程都应该包括聊天或echo服务器之类的东西,相当于"Hello World"的网络编程。这对于简单的环境来说已经足够好了。如果你想让你的服务器同时处理几十个客户端,这将是更多的工作,如果你想让你的服务器扩展到数百或数千,这将是一个完全不同的编程风格。

你试过看这个吗:

http://nickstips.wordpress.com/2010/09/03/c-creating-and-sending-udp-packets/

客户端是无关的,它可以是Java, c++,或任何其他语言/平台。没关系。协议还是一样的。

尝试Oracle文档作为udp的起点,在那里你可以找到一个示例,它是在java中,但正如提到的协议的想法是支持语言独立的通信。