C中的多播udp套接字实现

时间:2014-05-23 07:05:04

标签: c udp multicastsocket

我想在服务器端和客户端使用多播套接字。服务器将发送数据和客户端 将收到数据。同时,如果数据丢失,客户端将向服务器发送nack数据包 和服务器将收到nack数据包。我应该如何实现这一点,一个组播组和一个套接字端口,两个组播组和两个套接字端口?我希望服务器可以同时发送数据并同时接收nack,这可能吗?

谢谢

1 个答案:

答案 0 :(得分:1)

您必须首先决定1)服务器是否使用初始组播组发送丢失的数据包; 2)第二组播组;或3)与客户的单播连接。在第一种情况下,服务器或客户端不需要额外的套接字。在第二种情况下,服务器和客户端都需要一个额外的套接字。在第三种情况下,客户端将需要一个额外的套接字,服务器将需要为每个客户端添加一个套接字。

以上介绍了从服务器向客户端发送数据包的套接字要求。为了从客户端向服务器发送NACKS,您需要确定客户端是否使用1)相同的初始组播组2)上述第二种情况的辅助组播组来发送NACKS; 3)专用于NACKS的不同组播组;或4)与服务器的单播连接。只有在最后两种情况下,客户端才需要另一个套接字。服务器将需要第三个案例的附加套接字和第四个案例的每个客户端的附加套接字。

服务器可以使用多个线程同时组播数据包并响应丢失的数据包。

这是一个非常活跃的研究领域(我是其中的一部分)。祝你好运。