gpt4 book ai didi

java - 使用java向同一路由器下的多个主机发送数据包

转载 作者:行者123 更新时间:2023-12-02 04:35:11 24 4
gpt4 key购买 nike

我们是一群中学生,试图用 Java 实现一个程序,该程序就像网络下的聊天服务器一样,我们有一台网络外的服务器,每个客户端都在学校的网络内我们想知道如何从服务器向网络中的每个客户端发送 1 个数据包,因为在该路由器后面有许多计算机(客户端)。

最佳答案

这里有两个选项:

  1. 广播
  2. 多播

我更喜欢多播,因为它更有效并且不会干扰网络中的每台计算机。

<小时/>

它是如何工作的?

多播是指在一次传输中向一组听众广播消息的能力。

多播的一个很好的类比是广播,成千上万的人可以收听单个广播事件并收听同样的消息,计算机在向监听者发送消息时可以做类似的事情。

一组客户机器可以调到相同的地址和端口号来接收服务器广播的消息到该地址和端口。

Java 语言通过数据报消息传递提供多播功能。数据报是独立的、无保证的消息,可以通过网络传递给客户端。(无保证意味着到达、到达时间和内容是不可预测的。)通过 TCP 发送的消息,发送数据报是非阻塞事件,并且发送者不会收到通知收到消息。

数据报是使用用户数据报协议(protocol)(UDP)而不是 TCP 发送的。这通过 UDP 发送多播消息的能力是相对于 TCP 的优势之一,只要排序、可靠性和消息的数据完整性不是关键任务。

检查1 2 3有关该主题的更多信息

关于java - 使用java向同一路由器下的多个主机发送数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56554802/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com