类:关于数据报的全部

您编写用于通过网络通信的某些应用程序将不需要 TCP 提供的可靠的点对点通道。相反,您的应用程序可能会受益于一种通信 Pattern,该通信 Pattern 可以提供独立的信息包,这些信息包的到达和到达 Sequences 无法得到保证。

UDP 协议提供了一种网络通信 Pattern,应用程序通过该 Pattern 彼此之间发送称为数据报的数据包。数据报是通过网络发送的独立的自包含消息,其到达时间,到达时间和内容无法得到保证。 java.net包中的DatagramPacketDatagramSocket类使用 UDP 实现与系统无关的数据报通信。

什么是数据报?

数据报是通过网络发送的独立的自包含消息,其到达时间,到达时间和内容无法得到保证。

编写数据报 Client 端和服务器

本节将引导您完成一个示例,其中包含两个使用数据报进行通信的 Java 程序。服务器端是报价服务器,它侦听其DatagramSocket并在 Client 端请求时将报价发送给 Client 端。Client 端是一个简单的程序,仅向服务器发出请求。

Broadcast 给多个收件人

本节修改了报价服务器,以便报价服务器不向请求的单个 Client 端发送报价,而是每分钟将报价 Broadcast 给正在监听的 Client 端。必须相应地修改 Client 端程序。

Note:

许多防火墙和 Router 都配置为不允许 UDP 数据包。如果无法连接到防火墙外部的服务,或者 Client 端无法连接到服务,请询问系统 管理 员是否允许 UDP。