组播组成员优先级

时间:2012-10-23 05:00:55

标签: udp multicast winsock2

我遇到了一个问题,具体如下:

我有一个组播组,其中我观察到,组播组中的成员发送的udp数据包是由其他成员根据他们加入该组的顺序接收的。

例如:如果server1,2,3,4按相应的顺序加入组,那么如果在组中收到一个数据包,则首先接收1然后接收2,依此类推。

我已经通过一些测试应用程序检查了这种行为。

我正在使用Winsock2,请告诉我他们是否在内核级别进行排序,并在可能的情况下对组成员进行优化。

1 个答案:

答案 0 :(得分:1)

成员按多播到达成员主机的顺序接收多播。多播数据报发送一次,而不是多次,因此每个成员的到达时间不会有很大差异。到达时间与加入时间无关:它更多地与相应路径的延迟,路由器的数量等有关。如果所有成员都在相同的线路末端,那么它们都将在同一时间。

说了这么多,如果你担心收到多播的顺序,并且你认为你需要重新确定它们的优先级,那么你就是在做一些严重的错误。多播本质上是UDP数据报,可能无序,多次或根本不接收。