嗨,我正在创建流媒体应用程序.因为我正在使用IP多播.
告诉我如何在将其添加到组中之前验证客户端.
那与IGMP有什么关系吗?
您不应该使用您的应用程序.
IGMP
是一个互联网层协议,它甚至可能无法到达您的应用程序.
每当一个单元想要接收到某个地址的多播时,它就会发送一个IGMP
加入组的请求.路由器接收请求并记住该用户想要属于该组.
只要路由器收到以该地址为目的地的多播包,就会将其路由到所有组成员,可能会考虑一些访问控制限制.
所有组操作都由路由器执行.您只需将UDP
数据包发送到多播地址(即224/4
),然后路由器决定是否将其路由到订户.
如果要限制多播数据包所在的目标,请在路由器上执行此操作.
您应该理解,上面的"路由"一词意味着路由器将数据包发送到appripriate接口,其Ethernet
头部中的多播目标地址和头部中的多播目标地址IP
.连接到接口的以太网交换机(如果有)将通过所有活动端口分发数据包.由于它对互联网路由一无所知,因此只会看到Ethernet
标头中设置的广播/多播位并采取相应的行动.
但是,有些link layer
设备(以太网交换机)会查看network layer
标头并限制多播到订阅单元.这叫做IGMP snooping
.其中一些还可以控制访问.