一种可靠组播的实现方法和装置制造方法

文档序号:7982222阅读:202来源:国知局
一种可靠组播的实现方法和装置制造方法
【专利摘要】本发明提供了一种可靠组播的实现方法、装置和系统,所述方法包括接收组播源数据,所述组播源数据中包括源组播组的组播地址;将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数;按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。本发明实施例提供的可靠组播的实现方法、装置和系统,可以解决现有技术中可靠组播数据包的传输延迟大,占用带宽较大,有效吞吐量较小的问题。
【专利说明】—种可靠组播的实现方法和装置
【技术领域】
[0001]本发明涉及无线通信【技术领域】,尤其涉及一种可靠组播的实现方法和装置。
【背景技术】
[0002]随着无线通信技术的推广及音/视频数据等多媒体应用的需求增长,且由于无线音/视频数据传输主要采用组播传输技术,使得采用组播技术传输音/视频数据的服务在无线局域网上快速增加。然而,美国电气和电子工程师协会(Institute of Electrical andElectronics Engineers,简称IEEE) 802.11系列标准协议中规定的组播传输业务存在可靠性差、传输效率低的问题。
[0003]现有技术中,802.1laa工作组提出了多种可靠组播技术来提高组播传输业务的性能和效率,包括:具有重传的组播(Groupcast with Retries,简称GCR)主动重传,直接多播服务,GCR块确认等,这些方案虽然提高了数据传输的可靠性,降低了数据的丢包率,但也增大了数据包的传输延迟和占用的带宽,即减少了网络的有效数据吞吐量。
[0004]同时,现有技术中也采用了多种方法进行组播业务的优化,如对视频组播速率进行优化,因特网组管理协议(Internet Group Management Protocol,简称IGMP)嗅探,IGMP代理等。这些方法仍然增大了数据包的传输延迟和占用的带宽,即减少了网络的有效数据吞吐量。

【发明内容】

[0005]本发明实施例提供一种可靠组播的实现方法和装置,以解决现有技术中可靠组播网络数据包的传输延迟和占用带宽较大,有效吞吐量较小的问题。
[0006]第一方面,本发明实施例提供了一种可靠组播的实现方法,包括:
[0007]接收组播源数据,所述组播源数据中包括源组播组的组播地址;
[0008]将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数;
[0009]按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。
[0010]在第一种可能的实现方式中,所述方法还包括:
[0011]接收第一用户设备发送的用户接入请求和组播加入请求,其中,所述用户接入请求中包括用户设备能力描述信息;
[0012]向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述第一用户设备进行分组,得到所述第一用户设备的子组播组标识;
[0013]其中,所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址。
[0014]结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述方法还包括:
[0015]分别设置每个子组播组的分发策略,具体包括:根据组播系统成本、或者组播信号质量、或者组播系统成本和组播信号质量,并根据每个子组播组中用户设备的能力,分别为每个子组播组设置分发策略。
[0016]结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述方法还包括:
[0017]检测源组播组中是否有用户设备加入或退出;
[0018]若是,则为加入或退出的用户设备所属的子组播组重新设置分发策略。
[0019]结合第一方面的第二种或第三种可能的实现方式,在第四种可能的实现方式中,所述方法还包括:
[0020]检测源组播组中是否有用户设备由第一子组播组转移到第二子组播组;
[0021]若是,则为所述第一子组播组和所述第二子组播组重新设置分发策略。
[0022]结合第一方面或第一方面的第一种或第二种或第三种或第四种可能的实现方式,在第五种可能的实现方式中,所述配置的分组规则包括以下方式中的任意一种或多种:
[0023]根据所述源组播组中用户设备的连接速率进行分组、
[0024]根据所述源组播组中用户设备的身份进行分组、
[0025]根据所述源组播组中用户设备的连接信号质量进行分组、
[0026]根据所述源组播组中用户设备的智能天线方向进行分组。
[0027]第二方面,本发明实施例还提供了一种可靠组播的实现装置,包括:
[0028]接收模块,用于接收组播源数据,所述组播源数据中包括源组播组的组播地址;
[0029]复制模块,用于将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数;
[0030]分发模块,用于按照每个子组播组的分发策略,将每个子组播组对应的组播数据,分发给每个子组播组中的用户设备。
[0031]在第一种可能的实现方式中,所述装置还包括:
[0032]接入模块,用于接收第一用户设备发送的用户接入请求和组播加入请求,其中,所述用户接入请求中包括用户设备能力描述信息;
[0033]分组模块,用于向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述接入模块接入的第一用户设备进行分组,得到所述第一用户设备的子组播组标识;
[0034]其中,所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址。
[0035]结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述装置还包括:
[0036]设置模块,用于分别设置每个子组播组的分发策略,所述设置模块具体用于根据组播系统成本、或者组播信号质量、或者组播系统成本和组播信号质量,并根据每个子组播组中用户设备的能力,分别为每个子组播组设置分发策略。
[0037]结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述装置还包括:
[0038]检测模块,用于检测所述源组播组中是否有用户设备加入或退出;还用于检测源组播组中是否有用户设备由第一子组播组转移到第二子组播组;[0039]所述设置模块,还用于当所述检测模块检测到有用户设备加入或退出所述源组播组时,为加入或退出的用户设备所属的子组播组重新设置分发策略;还用于当所述检测模块检测到有用户设备由第一子组播组转移到第二子组播组时,为所述第一子组播组和所述第二子组播组重新设置分发策略。
[0040]第三方面,本发明实施例还提供了一种可靠组播的实现系统,包括如上所述的可靠组播的实现装置和至少两个与所述可靠组播的实现装置通信的用户设备。
[0041]实施本发明实施例,具有如下有益效果:
[0042]本发明实施例通过配置的分组规则,对源组播组分组得到子组播组,为每个子组播组设置不同的分发策略,能够动态的对不同子组播组中的用户设备采用优选的可靠组播传输方式,解决现有技术中可靠组播网络数据包的传输延迟大、占用带宽较大,有效吞吐量较小的问题。
【专利附图】

【附图说明】
[0043]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0044]图1是本发明实施例提供的一种可靠组播的实现装置的结构示意图;
[0045]图2是本发明实施例提供的另一种可靠组播的实现装置的结构示意图;
[0046]图3是本发明实施例提供的另一种可靠组播的实现装置的结构示意图;
[0047]图4是本发明实施例提供的一种可靠组播的实现方法的流程示意图;
[0048]图5是本发明实施例提供的一种可靠组播实现方法的应用场景示意图;
[0049]图6是本发明实施例提供的另一种可靠组播的实现方法的流程示意图;
[0050]图7是本发明实施例提供的一种可靠组播的实现系统的结构示意图。
【具体实施方式】
[0051]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0052]请参见图1,为本发明实施例提供的一种可靠组播的实现装置的结构示意图,所述装置包括:接收模块01、复制模块02和分发模块03,其中:
[0053]所述接收模块01,用于接收组播源数据,所述组播源数据中包括源组播组的组播地址。
[0054]所述复制模块02,用于将所述接收模块01接收到的所述组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数。
[0055]具体来说,组播源数据中包括源组播组的组播地址,也可能还包括源组播组的组播密钥。若将源组播组分为M个子组播组,则所述复制模块02具体用于对组播源数据进行复制,得到与所述M个子组播组对应的M份组播数据,每份组播数据中包括子组播组的组播地址、或者子组播组的组播地址和组播密钥。例如,对所述源组播组进行分组得到3个子组播组,则M为3,将所述组播源数据复制为3份组播数据。具体的,例如第一份组播数据中包括第一子组播组的组播地址和组播密钥,第二份组播数据中包括第二子组播组的组播地址和组播密钥,第三份组播数据中包括第三子组播组的组播地址和组播密钥。
[0056]所述分发模块03,用于按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。
[0057]用户设备根据组播数据中包括的子组播组的组播地址,或子组播组的组播地址和组播密钥,能够识别和接收自己所属子组播组的组播数据。
[0058]相应的,所述分发模块03具体用于按照每个子组播组的分发策略,将每个子组播组对应的组播数据分发给每个子组播组中的用户设备。例如,第一份组播数据包括第一子组播组的组播地址和组播密钥,所述分发模块03具体用于按照第一子组播组的分发策略,将第一份组播数据发送给第一子组播组中的用户设备;相应的,所述第一子组播组中的用户设备,能够根据所述第一份组播数据中包括的第一子组播组的组播地址和组播密钥,识别并接收所述第一份组播数据;第二份组播数据包括第二子组播组的组播地址,所述分发模块03具体用于按照第二子组播组的分发策略,将第二份组播数据发送给第二子组播组中的用户设备;相应的,所述第二子组播组中的用户设备,能够根据所述第二份组播数据中包括的第二子组播组的组播地址,识别并接收所述第二份组播数据;若还有其他子组播组,以此类推。
[0059]具体的,本发明实施例提供的可靠组播的实现装置设置在接入点(Access Point,简称AP)中,当然,在其他的实施例中,所述可靠组播的实现装置也可以设置在其它具有与AP相同功能的网络位置,本发明对此不做限定。下面以所述可靠组播的实现装置设置在AP作为一种示例,说明本发明实施例的技术方案。
[0060]所述配置的分组规则包括:
[0061]分组规则一:根据所述源组播组中用户设备的连接速率进行分组,例如将速率小于5Mbps (Megabits per second兆字节/秒)的用户设备分为第一子组播组,速率大于等于5Mbps的用户设备分为第二子组播组。
[0062]分组规则二:根据所述源组播组中用户设备的身份进行分组,例如身份包括贵宾(Very Important Person, VIP)用户和普通用户,将VIP用户分为第一子组播组,将普通用户分为第二子组播组。
[0063]分组规则三:根据所述源组播组中用户设备的连接信号质量进行分组,所述连接信号质量可用接收信号强度指示符(Receive Signal Strength Indicator, RSSI)或分组误码率(Packet Error Rate,PER)来衡量,例如将PER大于等于15%的用户设备分为第一子组播组,PER小于15%的用户设备分为第二子组播组。
[0064]分组规则四:根据所述源组播组中用户设备的智能天线方向进行分组,例如将智能天线方向在0°和120°之间的用户设备分为第一子组播组,其他方向的用户设备分为第二子组播组,具体的,在支持智能天线的AP中预先保存了智能天线组合的索引表,不同的索引表示不同的智能天线方向,而每个用户设备在加入AP时分别关联一个唯一的智能天线组合索引,在该用户设备移动的过程中,其关联的智能天线组合索引会发生变化。[0065]当然,以上分组规则只是举例,还可以采用其他的分组规则对源组播组进行分组,也可以采用两个或两个以上的分组规则的组合对源组播组进行分组。
[0066]此外,子组播组的数量也可以根据不同情况为两个或者两个以上。
[0067]所述分发策略为所述可靠组播的实现装置将复制后的组播数据分发给每个子组播组中的用户设备时所采用的方式,包括:转发类型、重传次数、传输速率和组播确认中的一种或至少两种的组合,其中所述转发类型具体包括单播或组播。
[0068]本发明实施例中,分发策略主要是根据组播系统成本(cost)、或组播信号质量、或者组播系统成本和组播信号质量,并结合每个子组播组中用户设备的能力进行设置,以便于形成综合性能最高的组播优化方案,既增强组播传输的可靠性,又提高组播网络的有效数据吞吐量。组播系统成本是指组播系统的吞吐量、延时等开销。可以只以组播系统的吞吐量为准,来评估组播系统成本,也即评估分发策略是否使得组播系统吞吐量提高或降低。当然,本领域技术人员在设置分发策略时也可以根据其他标准或条件进行,本发明对此不做限定。
[0069]不同子组播组中的用户设备根据自己在加入源组播组时被分组并得到的子组播组标识,来识别收到的组播数据是否是发给自己的组播数据;所述子组播组标识包括子组播组的组播地址,还可以包括子组播组的组播密钥。当组播数据中包括的子组播组的组播地址,或子组播组的组播地址和组播密钥与用户设备的子组播组标识一致时,则该用户设备接收该组播数据。
[0070]下面将举一个具体的例子详细说明本发明实施例提供的技术方案。
[0071]假设在本发明实施例中,源组播组中的用户设备为已加入AP中的7个用户设备,各个用户设备能够支持的连接速率分别为2、5、5、5、5、11、11Mbps。
[0072]根据上述分组规则一和各个用户设备的连接速率,可以将上述源组播组中的7个用户设备分为2组,即M为2,其中,速率小于5Mbps的用户设备分为第一子组播组,速率大于等于5Mbps的用户设备分为第二子组播组;第一子组播组的用户设备的连接速率为2Mbps,第二子组播组的用户设备的连接速率分别为5、5、5、5、11、IIMbps。
[0073]然后,再根据组播系统成本,并结合每个子组播组中用户设备的能力,分别为第一子组播组和第二子组播组设置分发策略。
[0074]假设,在设置分发策略时,有如下两套候选方案:
[0075]候选方案1:第一子组播组采用组播2Mbps的分发策略,第二子组播组采用组播5Mbps的分发策略;
[0076]候选方案2:第一子组播组采用组播转单播的分发策略,第二子组播组采用组播5Mbps的分发策略;
[0077]此时就需要通过评估两套方案各自的组播系统成本,来比较并选择使用哪套方案来为每个子组播组设置分发策略。假设本发明实施例中的组播系统成本主要以组播系统的吞吐量来衡量,且阈值条件设置为吞吐量不低于1Mbps,并以较高可靠性为优先选择条件。
[0078]组播系统的吞吐量主要指组播系统的传输速率,其计算公式为:传输速率=传输的字节数/传输总延时。候选方案I的总延时包括第一子组播组的传输延时、第二子组播组的传输延时和两次传输过程中的数据竞争时间;候选方案2的总延时除了包括第一子组播组的传输延时、第二子组播组的传输延时、两次传输过程中的数据竞争时间,还包括第一子组播组组播转单播时,其组内各个用户设备接收到组播数据后向可靠组播的实现装置回复确认(Acknowledgement, ACK)巾贞的时间。
[0079]以传输1500字节报文为例,加上协议头36字节开销,即1536字节,那么以2Mbps传输速率发送,延时是1536B/2Mbps ;以5Mbps传输速率发送,延时是1536/5Mbps ;假设两次传输过程中的数据竞争时间约为360us ;假设用户设备接收到组播数据后向发送站点回复ACK的时间约为213us。则
[0080]候选方案I 的实际吞吐量为:1500B/(1536B/2Mbps+1536B/5Mbps+360us)=1.336Mbps ;
[0081]候选方案2 的实际吞吐量为:1500B/(1536B/2Mbps+1536B/5Mbps+360us+213us)=1.304Mbps。
[0082]可以看出,上述两个候选方案都满足组播吞吐量不低于IMbps的阈值条件,但由于候选方案2中第一子组播组采用的组播转单播分发策略要求该子组播组中的用户设备在接收到组播数据后回复ACK,若未回复ACK,则所述可靠组播的实现装置需要重传该组播数据,以保证组播数据传输给第一子组播组中的各个用户设备,因此候选方案2的可靠性高于候选方案1,故按照候选方案2分别为两个子组播组设置分发策略,即,第一子组播组采用组播转单播的分发策略,第二子组播组采用组播5Mbps的分发策略;并进行分发。
[0083]则所述分发模块03具体用于按照第一子组播组的分发策略,将包括第一子组播组的组播地址和组播密钥的组播数据按照组播转单播的分发策略,分发给第一子组播组中的用户设备;并按照第二子组播组的分发策略,将包括第二子组播组的组播地址和组播密钥的组播数据按照组播5Mbps的分发策略,分发给第二子组播组中的用户设备。
[0084]综上所述,根据组播系统成本,或组播信号质量,或者组播系统成本和组播信号质量,并根据子组播组中用户设备的能力,可为每个子组播组设置分发策略,也可在多种候选方案中选择最佳方案,以便于形成综合性能最高的组播优化方案,既增强组播传输的可靠性,又提高组播网络的有效数据吞吐量。
[0085]本发明实施例通过配置的分组规则,对源组播组分组得到子组播组,为每个子组播组设置不同的分发策略,能够动态的对不同子组播组中的用户设备采用优选的可靠组播传输方式,解决现有技术中可靠组播网络数据包的传输延迟大,占用带宽较大,有效吞吐量较小的问题。
[0086]请参见图2,为本发明实施例提供的另一种可靠组播的实现装置的结构示意图,所述装置包括本发明图1所示的可靠组播的实现装置中的接收模块01、复制模块02和分发模块03,本实施例中,所述可靠组播的实现装置进一步包括:接入模块04、分组模块05、设置模块06和检测模块07,其中:
[0087]所述接入模块04,用于接收第一用户设备发送的用户接入请求和组播加入请求,其中,所述用户接入请求中包括所述第一用户设备的能力描述信息;所述组播加入请求中包括所述第一用户设备请求加入的源组播组的组播地址。
[0088]所述分组模块05,用于向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述接入模块03接入的第一用户设备进行分组,得到所述第一用户设备的子组播组标识。所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址,还可以包括所述第一用户设备所属的子组播组的组播密钥。[0089]所述设置模块06,用于分别设置每个子组播组的分发策略。
[0090]进一步的,所述设置模块06具体用于根据组播系统成本,或组播信号质量、或者组播系统成本和组播信号质量,并根据每个子组播组中用户设备的能力,分别为每个子组播组设置分发策略。
[0091]所述分发策略可以参见本发明图1所示的实施例中的描述,在此不赘述。
[0092]具体的,所述第一用户设备在接入AP时会向AP发送用户接入请求和组播加入请求,其中,所述用户接入请求中包括所述第一用户设备的能力描述信息,描述了所述第一用户设备的能力,例如包括:所述第一用户设备的连接速率、身份、连接信号质量等。所述组播加入请求中包括所述第一用户设备请求加入的源组播组的组播地址,表示所述第一用户设备请求加入所述源组播组,则AP上组播代理或组播窥探功能将截取所述第一用户设备的组播加入请求。
[0093]所述配置的分组规则可以参见本发明图1所示的实施例中的描述,在此不赘述。
[0094]所述分组模块05,具体用于向下游组播设备,例如交换机、路由器或加入控制器转发所述组播加入请求,并根据所述配置的分组规则,对所述接入模块03接入的第一用户设备进行分组,得到所述第一用户设备的子组播组标识。所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址,还可以包括所述第一用户设备所属的子组播组的组播密钥。
[0095]所述检测模块07,用于检测源组播组中是否有用户设备加入或退出。
[0096]所述设置模块06,还用于当所述检测模块07检测到有用户设备加入或退出所述源组播组时,为加入或退出的用户设备所属的子组播组重新设置分发策略。
[0097]具体的,所述检测模块07用于实时检测源组播组中是否有用户设备加入或退出,以便于当源组播组中有用户设备加入或退出时,所述可靠组播的实现装置能及时调整设置有用户设备加入或退出的子组播组的分发策略。
[0098]具体的,若所述源组播组中加入新的用户设备,则根据该新用户设备在加入源组播组时,分组模块05对该新用户进行分组,得到的该新用户设备的子组播组标识,能够确定出该新加入的用户设备对应的子组播组。
[0099]若有用户设备退出源组播组,则根据该退出用户设备的子组播组标识,能够确定出该退出用户设备对应的子组播组。
[0100]也可以采用如下方式确定用户设备发生变化的子组播组:
[0101]所述分组模块05在对所述源组播组分组时,记录得到的每个子组播组中用户设备的数量,所述检测模块07通过判断每个子组播组中用户数量的变化,来确定用户设备发生变化的子组播组。比如检测模块07检测到第一子组播组中用户设备的数量由4变为5,则可确定有新的用户设备加入了第一子组播组。当然,还可以根据其它方式判断是否有用户设备加入或退出,本发明对此不做限定。
[0102]所述设置模块06,具体用于根据组播系统成本、或组播信号质量、或者组播系统成本和组播信号质量,并根据加入或退出的用户设备所属的子组播组中各个用户设备的能力,为该加入或退出的用户设备所属的子组播组重新设置分发策略。
[0103]需要说明的是,源组播组中用户设备的变化包括但不限于用户设备的加入和退出。[0104]进一步的,所述检测模块07,还用于检测源组播组中是否有用户设备由第一子组播组转移到第二子组播组。
[0105]所述设置模块06,还用于当所述检测模块07检测到有用户设备由第一子组播组转移到第二子组播组时,为所述第一子组播组和所述第二子组播组重新设置分发策略。
[0106]具体的,源组播组中也可能发生用户设备由一个子组播组转移到另一个子组播组的情况。用户设备是否转移可以根据用户设备所关联的智能天线组合索引来判断,由于用户设备在移动过程中,其所关联的智能天线组合索引值会发生变化。所述检测模块07,具体用于实时监测并记录各个用户设备所关联的智能天线组合索引值,并根据用户设备所关联的智能天线组合索引值的变化检测用户设备是否从一个子组播组转移到另一个子组播组。也可根据其它方式判断是否有某个用户设备从其中一个子组播组转移到另一个子组播组,本发明对此不做限定。
[0107]相应的,所述设置模块06,具体用于根据组播系统成本、或组播信号质量、或者组播系统成本和组播信号质量,并根据用户设备发生转移的子组播组中各个用户设备的能力,为用户设备发生转移的子组播组重新设置分发策略。
[0108]本发明实施例通过配置的分组规则,对源组播组中用户设备进行分组得到子组播组,再根据子组播组的组播系统成本和/或组播信号质量及用户设备的能力,为每个子组播组设置分发策略,并且在检测到源组播组中用户设备发生变化时,及时调整分发策略,能够动态的对不同子组播组中的用户设备采用优选的可靠组播传输方式,解决现有技术中可靠组播网络数据包的传输延迟大、占用带宽较大,有效吞吐量较小的问题。
[0109]请参见图3,为本发明实施例提供的一种可靠组播的实现装置的结构示意图。所述装置包括:
[0110]存储器001和与所述存储器001进行通信的处理器002,其中,所述存储器001内存储有程序代码,所述程序代码包括计算机操作指令。所述处理器002执行所述程序代码,用于:
[0111]接收组播源数据,所述组播源数据中包括源组播组的组播地址;
[0112]将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数;
[0113]按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。
[0114]所述组播源数据中还可以包括源组播组的组播密钥。
[0115]所述组播数据中还可以包括子组播组的组播密钥。
[0116]所述处理器002执行所述程序代码,还用于:
[0117]接收第一用户设备发送的用户接入请求和组播加入请求,其中,所述用户接入请求中包括用户设备能力描述信息;
[0118]向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述第一用户设备进行分组,得到所述第一用户设备的子组播组标识;
[0119]其中,所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址,还可以包括所述第一用户设备所属的子组播组的组播密钥。
[0120]所述处理器002执行所述程序代码,还用于:[0121]分别设置每个子组播组的分发策略,具体包括:根据组播系统成本、或者组播信号质量、或者组播系统成本和组播信号质量,并根据每个子组播组中用户设备的能力,分别为每个子组播组设置分发策略。
[0122]所述处理器002执行所述程序代码,还用于:
[0123]检测源组播组中是否有用户设备加入或退出;
[0124]若是,则为加入或退出的用户设备所属的子组播组重新设置分发策略。
[0125]所述处理器002执行所述程序代码,还用于:
[0126]检测源组播组中是否有用户设备由第一子组播组转移到第二子组播组;
[0127]若是,则为所述第一子组播组和所述第二子组播组重新设置分发策略。
[0128]所述配置的分组规则包括以下方式中的任意一种或多种:
[0129]根据所述源组播组中用户设备的连接速率进行分组、
[0130]根据所述源组播组中用户设备的身份进行分组、
[0131]根据所述源组播组中用户设备的连接信号质量进行分组、
[0132]根据所述源组播组中用户设备的智能天线方向进行分组。
[0133]所述分发策略包括:转发类型、重传次数、传输速率和组播确认中的一种或至少两种的组合,其中所述转发类型具体包括单播或组播。
[0134]即所述处理器002可根据所述存储器001内存储的程序代码执行程序代码所指示的对应流程,实现对源组播组中用户设备分组并根据设置的分发策略分发组播数据的功倉泛。
[0135]本实施例中,所述可靠组播的实现装置通过处理器执行存储器中的操作指令,对源组播组中用户设备进行分组得到子组播组,为每个子组播组设置分发策略,并且在检测到源组播组中用户设备发生变化时,及时调整分发策略,能够动态的对不同子组播组中的用户设备采用优选的可靠组播传输方式,解决现有技术中可靠组播网络数据包的传输延迟大,占用带宽较大,有效吞吐量较小的问题。
[0136]请参见图4,为本发明实施例提供的一种可靠组播的实现方法的流程示意图。所述方法包括:
[0137]101,接收组播源数据,所述组播源数据中包括源组播组的组播地址。
[0138]所述组播源数据中包括了源组播组的组播地址,还可以包括源组播组的组播密钥,以便提供所述源组播组服务的设备能够识别和接收。
[0139]102,将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数。
[0140]具体来说,若将源组播组分为M个子组播组,则对组播源数据进行复制,得到与所述M个子组播组对应的M份组播数据,每份组播数据中包括子组播组的组播地址,还可以包括子组播组的组播密钥。例如,对所述源组播组进行分组得到3个子组播组,则M为3,将所述组播源数据复制为3份组播数据。具体的,例如第一份组播数据中包括第一子组播组的组播地址和组播密钥,第二份组播数据中包括第二子组播组的组播地址和组播密钥,第三份组播数据中包括第三子组播组的组播地址和组播密钥。
[0141]103,按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。[0142]相应的,用户设备根据组播数据中包括的子组播组的组播地址,能够识别和接收自己所属子组播组的组播数据。具体的,按照每个子组播组的分发策略,将每个子组播组对应的组播数据,分发给每个子组播组中的用户设备。例如,第一份组播数据包括第一子组播组的组播地址,则按照第一子组播组的分发策略,将第一份组播数据发送给第一子组播组中的用户设备;相应的,所述第一子组播组中的各个用户设备,能够根据所述第一份组播数据包括的第一子组播组的组播地址,识别并接收所述第一份组播数据;第二份组播数据包括第二子组播组的组播地址,则按照第二子组播组的分发策略,将第二份组播数据发送给第二子组播组中的用户设备;相应的,所述第二子组播组中的用户设备,能够根据所述第二份组播数据中包括的第二子组播组的组播地址,识别并接收所述第二份组播数据;若还有其他子组播组,以此类推。
[0143]具体的,用户设备根据自己在加入源组播组时被分组并得到的子组播组标识,来识别并接收发给自己的组播数据。所述子组播组标识包括子组播组的组播地址,还可以包括子组播组的组播密钥。比如,用户设备根据组播数据中包括的组播地址是否与自己的子组播组标识一致,来判断该组播数据是否是发给自己的组播数据;如果一致时,则接收该组播数据。
[0144]具体的,本发明实施例提供的可靠组播的实现方法的执行主体可以是AP,当然,在其他的实施例中,还可以是具有与AP相同功能的网络设备,本发明对此不做限定。下面以以AP是执行主体为示例,说明本发明实施例的技术方案。
[0145]所述配置的分组规则可以参见本发明图1所示的实施例中的描述,在此不赘述。
[0146]所述分发策略可以参见本发明图1所示的实施例中的描述,在此不赘述。
[0147]本发明实施例中,分发策略主要是根据组播系统成本、或组播信号质量、或者组播系统成本和组播信号质量,并结合每个子组播组中用户设备的能力进行设置,以便于形成综合性能最高的组播优化方案,既增强组播传输的可靠性,又提高组播网络的有效数据吞吐量。组播系统成本是指组播系统的吞吐量、延时等开销。可以只以组播系统的吞吐量为准,来评估组播系统成本,也即评估分发策略是否使得组播系统吞吐量提高或降低,以达到采用最佳的分发策略进行可靠组播的效果。当然,本领域技术人员在设置分发策略时也可以根据其他标准或条件进行,本发明对此不做限定。
[0148]下面将举一个具体的例子详细说明本发明实施例提供的技术方案:
[0149]请参见图5,为本发明实施例提供的一种可靠组播的实现方法的应用场景示意图。由AP执行所述可靠组播的实现方法。如图5所示,有6个用户设备,分别为STA1、STA2、STA3、STA4、STA5、STA6加入AP,6个用户设备的连接速率分别为54Mbps、11Mbps、11Mbps、5Mbps、2Mbps、2Mbps, 6个用户设备加入同一个源组播组。
[0150]所述AP接收来自这6个用户设备的用户加入请求和组播加入请求;
[0151]所述AP根据上述分组规则四和预先保存的所述源组播组中六个用户设备各自的智能天线组合的索引表,可以将它们分为2个子组播组,即M为2,其中,第一子组播组中包括四个用户设备STA1、STA2、STA3和STA4,这四个用户设备的子组播组标识均指示第一子组播组;第二子组播组中包括两个用户设备STA5和STA6,这两个用户设备的子组播组标识均指示第二子组播组。
[0152]所述AP计算组播系统成本,并根据各子组播组中用户设备的能力,确定第一子组播组采用GCR传输的分发策略,传输速率为5Mbps ;第二子组播组采用组播转单播的分发策略进行传输。
[0153]在组播数据传输过程中,所述AP检测到传输速率为5Mbps的用户设备STA4退出AP。
[0154]所述AP通过用户设备STA4的子组播组标识确定其所对应的子组播组为第一子组播组,重新计算第一子组播组的组播系统成本,由于现在第一子组播组中的所有用户设备与AP的距离都很近,所以信号质量好,可以直接采用分发策略为基本组播,且传输速率可以提高为IlMbps ;而第二子组播组由于并无用户设备发生变化,仍然采用组播转单播的方式。这样动态调整发生变化的用户设备对应的子组播组的分发策略可提高综合传输性能(如吞吐量等)。
[0155]所述AP从上游节点中接收到组播源数据,所述组播源数据中包括了所述源组播组的组播地址,以便为所述源组播组服务的所述AP识别和接收所述组播源数据。
[0156]所述AP对所述组播源数据进行复制,得到与子组播组数量相同的两份组播数据,其中一份组播数据包括第一个子组播组的组播地址,另一份组播数据包括第二个子组播组的组播地址。
[0157]所述AP按照第一子组播组的分发策略,将包括第一子组播组的组播地址的组播数据按照传输速率为5Mbps的GCR分发给第一子组播组中的用户设备;并按照第二子组播组的分发策略,将包括第二子组播组的组播地址的组播数据组播转单播后分发给第二子组播组中的用户设备。
[0158]本发明实施例通过配置的分组规则,对源组播组分组得到子组播组,为每个子组播组设置不同的分发策略,能够动态的对不同子组播组中的用户设备采用优选的可靠组播传输方式,解决现有技术中可靠组播网络数据包的传输延迟大,占用带宽较大,有效吞吐量较小的问题。
[0159]请参见图6,为本发明实施例提供的另一种可靠组播的实现方法的流程示意图。本实施例在图4所示的可靠组播的实现方法基础上,对本发明技术方案做进一步详细的介绍。所述方法包括:
[0160]201,接收用户设备发送的用户接入请求和组播加入请求。
[0161]其中,所述用户接入请求中包括所述用户设备的能力描述信息;描述了所述用户设备的能力,例如包括:所述用户设备的连接速率、身份、连接信号质量等。
[0162]所述组播加入请求中包括所述用户设备请求加入的源组播组的组播地址。接收到组播加入请求后,可以通过组播代理或组播窥探功能截取所述用户设备的组播加入请求。
[0163]202,向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述用户设备进行分组,得到所述用户设备的子组播组标识。
[0164]所述子组播组标识中包括所述用户设备所属的子组播组的组播地址,还可以包括所述用户设备所属的子组播组的组播密钥。
[0165]所述配置的分组规则可以参见本发明图1所示的实施例中的描述,在此不赘述。
[0166]203,分别设置每个子组播组的分发策略。
[0167]具体的,根据组播系统成本、或组播信号质量、或组播系统成本和组播信号质量,并根据每个子组播组中用户设备的能力,分别为每个子组播组设置分发策略。[0168]204,检测源组播组中是否有用户设备加入或退出。若是,则执行205,否则,执行206。
[0169]205,为加入或退出的用户设备所属的子组播组重新设置分发策略。
[0170]由于组播系统随时都可能有新的用户设备加入源组播组,或者有用户设备退出该源组播组,因此每个子组播组的成员可能不是一成不变的,为其设置的分发策略也要随着源组播组中用户设备的变化而及时调整;相应的,需要实时检测源组播组中是否有用户设备加入或退出,以便于当源组播组中有用户设备加入或退出时,能及时调整用户设备加入或退出的子组播组的分发策略,以达到提高综合传输性能的目的。
[0171]具体的,在源组播组建立以后,还可能会有新的用户设备比如第一用户设备,加入到源组播组,此时接收第一用户设备的组播加入请求,并向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述第一用户设备进行分组,得到所述第一用户设备的子组播组标识。所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址,还可以包括所述第一用户设备所属的子组播组的组播密钥。
[0172]相应的,根据所述第一用户设备在加入源组播组时,对所述第一用户设备进行的分组得到的所述第一用户设备的子组播组标识,能够确定出所述第一用户设备对应的子组播组。同理,若有用户设备退出源组播组,则根据该退出用户设备的子组播组标识,能够确定出该退出用户设备对应的子组播组。也可以根据其它方式判断是否有用户设备加入或退出,在此不赘述。
[0173]206,检测源组播组中是否有用户设备由第一子组播组转移到第二子组播组。若是,则执行207,否则执行208。
[0174]207,为所述第一子组播组和所述第二子组播组重新设置分发策略。
[0175]需要说明的是,源组播组中用户设备的变化包括但不限于加入新的用户设备,用户设备退出。
[0176]进一步的,源组播组中还可能发生用户设备由一个子组播组转移到另一个子组播组的情况。用户设备是否转移可以根据用户设备所关联的智能天线组合索引来判断,由于用户设备在移动过程中,其所关联的智能天线组合索引值会发生变化,AP可实时监测并记录各个用户设备所关联的智能天线组合索引值,并根据用户设备所关联的智能天线组合索引值的变化检测用户设备是否从一个子组播组转移到另一个子组播组。还可以根据其它方式判断是否有用户设备转移了子组播组,在此不赘述。
[0177]具体的,可靠组播的实现装置根据组播系统成本、或组播信号质量、或者组播系统成本和组播信号质量,并根据用户设备发生转移的子组播组中各个用户设备的能力,为用户设备发生转移的子组播组重新设置分发策略。
[0178]需要说明的是,步骤204-205与206-207也可以同时执行,或者也可以先执行206-207,再执行 204-205。
[0179]208,接收组播源数据,所述组播源数据中包括源组播组的组播地址。
[0180]209,将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数。
[0181]210,按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。[0182]具体的,208?210可以参见本发明图4所示实施例中的101?103,在此不再赘述。
[0183]本发明实施例提供的可靠组播的实现方法的执行主体可以是AP,当然,在其他的实施例中,还可以是具有与AP相同功能的网络设备,本发明对此不做限定。本发明实施例以AP是执行主体为示例,说明本发明的技术方案。
[0184]本发明实施例通过配置的分组规则,对源组播组中用户设备进行分组得到子组播组,再根据子组播组的组播系统成本和/或组播信号质量及用户设备的能力,为每个子组播组设置分发策略,并且在检测到源组播组中用户设备发生变化时,及时调整分发策略,能够动态的对不同子组播组中的用户设备采用优选的可靠组播传输方式,解决现有技术中可靠组播网络数据包的传输延迟大,占用带宽较大,有效吞吐量较小的问题。
[0185]请参见图7,为本发明实施例提供的一种可靠组播的实现系统的结构示意图。所述系统包括:
[0186]可靠组播的实现装置10和至少两个与所述可靠组播的实现装置进行通信的用户设备。
[0187]其中,所述可靠组播的实现装置10为如本发明图1,图2或图3所示的可靠组播的实现装置,所述至少两个与所述可靠组播的实现装置10进行通信的用户设备包括:第一用户设备20和第二用户设备30。
[0188]其中,所述可靠组播的实现装置10用于接收组播源数据,所述组播源数据中包括源组播组的组播地址,并将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数,并按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。
[0189]具体的,本发明实施例提供的可靠组播的实现装置可以设置在AP中,也可以设置在其它具有与AP相同功能的网络位置,本发明对此不做限定。
[0190]所述第一用户设备20和所述第二用户设备30组成源组播组,所述可靠组播的实现装置10根据配置的分组规则对所述源组播组进行分组,得到两个子组播组,第一用户设备20为第一子组播组的成员,第二用户设备30为第二子组播组的成员,所述可靠组播的实现装置10按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。
[0191]本发明实施例通过配置的分组规则,对源组播组中用户设备进行分组得到子组播组,再根据子组播组的组播系统成本和/或组播信号质量及用户设备的能力,为每个子组播组设置分发策略,能够动态的对不同子组播组中的用户设备采用优选的可靠组播传输方式,解决现有技术中可靠组播网络数据包的传输延迟大、占用带宽较大,有效吞吐量较小的问题。
[0192]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM, Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0193]以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
【权利要求】
1.一种可靠组播的实现方法,其特征在于,包括:接收组播源数据,所述组播源数据中包括源组播组的组播地址;将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数;按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。
2.如权利要求1所述的方法,其特征在于,还包括:接收第一用户设备发送的用户接入请求和组播加入请求,其中,所述用户接入请求中包括用户设备能力描述信息;向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述第一用户设备进行分组,得到所述第一用户设备的子组播组标识;其中,所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址。
3.如权利要求1或2所述的方法,其特征在于,还包括:分别设置每个子组播组的分发策略,具体包括:根据组播系统成本、或者组播信号质量、或者组播系统成本和组播信号质量,并根据每个子组播组中用户设备的能力,分别为每个子组播组设置分发策略。
4.如权利要求3所述的方法,其特征在于,在所述分别设置每个子组播组的分发策略之后,所述方法还包括:检测源组播组中是否有用户设备加入或退出;若是,则为加入或退出的用户设备所属的子组播组重新设置分发策略。
5.如权利要求3或4所述的方法,其特征在于,在所述分别设置每个子组播组的分发策略之后,所述方法还包括:检测源组播组中是否有用户设备由第一子组播组转移到第二子组播组;若是,则为所述第一子组播组和所述第二子组播组重新设置分发策略。
6.一种可靠组播的实现装置,其特征在于,包括:接收模块,用于接收组播源数据,所述组播源数据中包括源组播组的组播地址;复制模块,用于将接收到的组播源数据复制为M份组播数据,所述组播数据中包括子组播组的组播地址,其中,所述M为根据配置的分组规则对所述源组播组进行分组得到的子组播组的数量,所述M为大于等于2的正整数;分发模块,用于按照每个子组播组的分发策略,分发每个子组播组对应的组播数据。
7.如权利要求6所述的装置,其特征在于,还包括:接入模块,用于接收第一用户设备发送的用户接入请求和组播加入请求,其中,所述用户接入请求中包括用户设备能力描述信息;分组模块,用于向下游组播设备转发所述组播加入请求,并根据所述配置的分组规则,对所述接入模块接入的第一用户设备进行分组,得到所述第一用户设备的子组播组标识;其中,所述子组播组标识中包括所述第一用户设备所属的子组播组的组播地址。
8.如权利要求6或7所述的装置,其特征在于,还包括:设置模块,用于分别设置每个子组播组的分发策略,所述设置模块具体用于根据组播系统成本、或者组播信号质量、或者组播系统成本和组播信号质量,并根据每个子组播组中用户设备的能力,分别为每个子组播组设置分发策略。
9. 如权利要求8所述的装置,其特征在于,还包括:检测模块,用于检测所述源组播组中是否有用户设备加入或退出;还用于检测所述源组播组中是否有用户设备由第一子组播组转移到第二子组播组;所述设置模块,还用于当所述检测模块检测到有用户设备加入或退出所述源组播组时,为加入或退出的用户设备所属的子组播组重新设置分发策略;还用于当所述检测模块检测到有用户设备由第一子组播组转移到第二子组播组时,为所述第一子组播组和所述第二子组播组重新设置分发策略。
10.一种可靠组播的实现系统,其特征在于,包括如权利要求6至9任一项所述的可靠组播的实现装置,和至少两个与所述可靠组播的实现装置进行通信的用户设备。
【文档编号】H04L29/06GK103595546SQ201210294432
【公开日】2014年2月19日 申请日期:2012年8月17日 优先权日:2012年8月17日
【发明者】张嫣, 王云贵 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1