假设我有一个多播组239.0.0.1。
如果A和B是这个组的成员,并且监听端口6000,我可以将数据发送到(239.0.0.1,6000),并且A和B都会收到。现在,如果A在端口6000上侦听,B在端口7000上,如何在一次传输中将数据发送给两个成员?
如果上面的场景是不可能的,那么这是否意味着一个多播组不只是通过其多播组地址来标识,而是由二元组多播组地址和端口号来标识?我在任何地方都找不到多播组的定义。
发布于 2014-12-08 16:23:38
订阅多播组和侦听多播地址和端口是两件不同的事情。如果您订阅了一个多播组,则应将具有该目标地址的所有通信量发送到您的主机。这是侦听特定端口并处理该通信量的另一步。
在您的示例中,目的地为239.0.0.1:6000的通信将发送给两个主机,但由于只有主机A有一个正在侦听的应用程序,所以只有主机A才会对该通信量进行任何操作。
不可能发送到所有端口号或发送到*端口。在TCP/UDP中没有这样的概念。如果你使用的是不同的协议,也许会有类似的情况。
https://networkengineering.stackexchange.com/questions/13486
复制相似问题