如何在一个程序中实现客户端-服务器 udp 多播

How to implement client-server udp multicast in one program?

本文关键字:客户端 实现 服务器 多播 udp 程序 一个      更新时间:2023-10-16

我已经将服务器和客户端编写为单独的应用程序。他们通过UDP多播进行通信(因为我需要每个加入组的人都可以读取和写入消息)。现在我有两个窗口,但我的目标是创建一个简单的聊天程序,但我不知道如何同时收听和发送。我需要创建 2 个套接字吗?或者我可以只使用一个吗?我什至尝试将两个应用程序合并为一个,但我没有成功(我知道,我知道......但我有点绝望)。

我在谷歌上搜索了一个嘟嘟,但没有成功。

我正在使用c ++。

您可以使用一个或两个套接字,这完全取决于您是否希望绑定到特定的网络适配器以及是否希望使用单播和广播数据包。 管理一个用于发送和一个用于接收通常更容易。

要侦听同一主机上发送的组播数据包,请选中IP_MULTICAST_LOOP套接字选项,注意它在Windows上与Unix上的应用不同。