无线局域网内组播场景中最小丢包重传方法技术

技术编号:10789291 阅读:223 留言:0更新日期:2014-12-17 17:40
本发明专利技术公开了一种无线局域网内组播场景中最小丢包重传方法,主要用于解决具有反馈链路的组播场景中的丢包恢复问题。该方法特征为:在多个用户同时向一个AP请求相同数据传输服务的组播场景中,AP在接收到所有用户反馈的丢包信息后,先根据本发明专利技术中的编码方法生成一个编码矩阵,然后再将编码矩阵与原始数据包进行比特按位异或形成组合重传包,用户在收到组合重传包后根据本发明专利技术中的解码方法进行相应地异或解码恢复出丢包。该方法可以将多播场景中AP每次发送的重传包的数量降到理论下限。

【技术实现步骤摘要】
无线局域网内组播场景中最小丢包重传方法
本专利技术属于无线通信
,特别涉及一种具有反馈链路的组播场景丢包恢复中生成最少数量重传包的方法。
技术介绍
信息高效可靠传输问题是任意通信系统都需要研究的重要问题。很多应用要求完全可靠的传输数据,即不能有数据包的丢失,例如文件传输,财务应用,电子邮件,远程主机访问等应用。丢失文件数据或财务交易数据的后果严重。与有线网络相比,在无线通信网络中,有很多因素例如衰落、干扰、多径效应和碰撞会导致无线传输丢包率增高,这就增加了传输的开销,而这种开销在无线组播场景中是比较严重的。目前,无线传输系统中都是采用直接重传的方式,即每个用户丢什么包就向该用户重传该包。例如在一个AP同时为三个用户服务的组播系统中,AP广播了三个数据包P1、P2和P3,用户一丢失P1,用户二丢失P2,用户三丢失P3,根据现有802.11机制需要向用户一重传P1,向用户二重传P2,向用户三重传P3,所以AP需要广播三个重传包。当组播网络内用户增加,链路状况的差异会造成各个用户丢包不同且极度分散,尤其是在高密度情况下,传统的丢包恢复机制会导致重传包的数量极大,严重的增加了系统的开销,传输效率大大降低。当信道条件很差或者网络很拥堵的情况下,这样极低的传输效率会导致重传次数增加,时延加大,甚至传输失败。因此,对无线传输系统组播场景下的丢包恢复进行最优化研究无疑具有重要意义。近些年提出了一种基于网络编码的组播重传方法,AP只需要重传一个数据包,即将P1、P2和P3进行异或组合操作形成异或组合包Q。用户一将Q与已正确接收到的P2、P3进行异或解码则可以恢复出丢包P1,同理用户二和用户三也能以相应的方式恢复出各自丢包。许多无线传输系统中基于网络编码的组播重传策略的研究已经开展。Nguyen等人和Tran等人在《WirelessBroadcastUsingNetworkCoding》提出了一种无线组播中基于网络编码的丢包重传策略,发送节点根据接收节点反馈的丢包信息,机会的选择不同接收节点丢失的数据包进行编码,进而使得不同的接收节点在正确接收到编码重传数据包后,能恢复出其丢失的数据包。然而这种方法灵活性不好,不能在无线多播场景下根据各个接收节点的实际情况发送其需要的重传数据包,仅仅将一个无线多播数据帧内的所有数据包先按照一定方式进行编码再广播给所有接收节点,对于丢包较少的接收节点,会接收到大量多余的重传数据包。中南大学肖潇等人在《一种低丢包率无线网络中基于网络编码的广播重传方法》和《基于网络编码的无线网络广播重传方法》中提出了基于网络编码的无线网络广播重传方法(BRANC),对将每个用户的i号丢包异或组合形成重传包依次发送,如果无法恢复出丢包则更换组合方式再次发送。使用该方法不能保证系统内重传包数量最低,而且重传次数较多。在某些特殊丢包情况下这种机制不能保证所有接收节点都能恢复出丢失的数据包,因为采用这种机制的编码方案,不能保证重传包之间是线性独立的,因此导致重传包数量增多和重传次数增加。北京邮电大学曹震的硕士论文中基于包比特移位设计了一种改进范德蒙矩阵的编码方案,运用此方案能够保证发送最少编码重传数据包后,所有接收节点都能恢复出丢失的数据包。但是这种方案在接收端恢复丢包时的复杂度极大,并且数据包中一旦有一个比特位发生误码,此误码会严重蔓延。本申请人之前也提出过相关申请CN201410097774.0,提出了组播场景下丢包重传机制的框架和流程,以及重传包帧格式的设计。该申请中使用的生成异或组合包的方法是将每个用户的第i个丢包异或组合生成第i个重传包,此方法在某些特殊丢包情况下无法保证重传包之间线性无关,因而用户无法正确恢复出丢包。例如一个AP向四个用户广播了四个数据包P1、P2、P3和P4,用户一丢失P1、P2,用户二丢失P1、P4,用户三丢失P2、P3,用户四丢失P1、P4。根据该申请中的方法生成的重传包为P1⊕P2⊕P3和P2⊕P3⊕P4,对于用户三来说,根据重传包和自身已接收到的数据包无法正确恢复出任何丢包。利用上述BRANC的方法可以正确恢复出丢包,但是需要发送三个重传包P1⊕P2⊕P3、P2⊕P3⊕P4和P1⊕P2,因此重传包数量并不是最低。为此,本专利技术设计了一种多播场景下最小丢包重传方法,这种方法适用于所有丢包情况。对于上文所述的丢包情况,根据本专利技术的编码方法得到的重传包为P1⊕P3和P2⊕P4,AP将重传包数量压缩到二个。本专利技术可以保证在所有用户成功恢复出丢包的情况下,AP每次生成的重传包数量低至理论最低值。并且,由于本专利技术编码和解码都是简单地进行比特按位异或操作,因此编译码复杂度均很低,额外硬件开销几乎为零。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种具有反馈链路的组播场景中最小丢包重传方法,运用原始数据包的按位异或获得重传包,在使得所有的接收端都能正确的恢复出丢包的情况下,发送的重传数据包达到理论最小值。本专利技术提供的一种具有反馈链路的组播场景中最小丢包重传方法,其中,组播网络中AP同时为P个用户服务,广播N个原始数据包;每个用户分别生成接收状态向量,并向AP反馈丢包情况,其中单个用户丢失的数据包数量至多为K;AP根据P个用户反馈的丢包情况生成一个P×N的丢包信息统计矩阵;AP生成一个N×K的编码矩阵,其中编码矩阵中的每一列代表一个重传数据包的组合情况,所有用户的丢包序号与编码矩阵相对应的行向量形成的子矩阵满秩,且不影响其他子矩阵的秩;AP将生成的编码矩阵与原始数据包进行比特按位异或,得出组合重传包并向P个用户进行广播;每个用户分别接收所述组合重传包,并将所述组合数据包与该用户已正确接收到的数据包进行异或解码,恢复出所丢失的数据包。本专利技术除了给出该技术方案的具体实施例以外,还给出了给无线广播网络最小丢包重传方法的一个应用实例。附图说明下面将通过参照附图详细描述本专利技术的示例性实施例,使本领域的普通技术人员更清楚本专利技术的上述及其它特征和优点,附图中:图1为本专利技术中AP产生异或组合重传包的编码流程图。图2为本专利技术判断修改编码矩阵是否影响其它用户的秩的流程图。图3为本专利技术中用户进行异或解码恢复出丢包的解码流程图。图4为本专利技术中使用最小丢包重传方法的组播场景重传机制的示意图。图5为本专利技术中AP生成编码矩阵以及异或组合包的具体实例说明图。图6为本专利技术中用户根据异或组合包进行异或解码恢复出丢包的具体实例说明图。具体实施方式下面结合附图对本专利技术作进一步详细描述。图1为本专利技术中AP产生异或组合重传包的编码流程图,具体流程如下:步骤101:从编码矩阵M中提取第i号用户的子矩阵SM。具体地,从丢包矩阵表中查得第i号用户丢包序号,从编码矩阵M中提取出丢包序号对应的行向量组合成该用户的编码子矩阵SM。步骤102:计算SM的行数r、列数c和秩rank。如果rank等于0则进行步骤103;如果0<rank<r则进行步骤104;否则进行步骤113。步骤103:将SM赋值为单位阵,更新M。此时子矩阵SM秩为r且对其他用户的秩不造成影响,用SM更新M对应的行向量。步骤104:判断子矩阵SM是否有全零行zr和全零列zc。有则进行步骤105,否则进行步骤106。步骤105:将SM内第一个全零行本文档来自技高网
...
无线局域网内组播场景中最小丢包重传方法

【技术保护点】
无线局域网内组播场景中最小丢包重传方法,其特征在于:组播网络中AP同时为P个用户服务,广播N个原始数据包;每个用户分别生成接收状态向量,并向AP反馈丢包情况,其中单个用户丢失的数据包数量至多为K;AP根据P个用户反馈的丢包情况生成一个P×N的丢包信息统计矩阵;AP生成一个N×K的编码矩阵,其中编码矩阵中的每一列代表一个重传数据包的组合情况,所有用户的丢包序号与编码矩阵相对应的行向量形成的子矩阵满秩,且不影响其他子矩阵的秩;AP将生成的编码矩阵与原始数据包进行比特按位异或,得出组合重传包并向P个用户进行广播;每个用户分别接收所述组合重传包,并将所述组合数据包与该用户已正确接收到的数据包进行异或解码,恢复出所丢失的数据包。

【技术特征摘要】
1.无线局域网内组播场景中最小丢包重传方法,其特征在于:组播网络中AP同时为P个用户服务,广播N个原始数据包;每个用户分别生成接收状态向量,并向AP反馈丢包情况,其中单个用户丢失的数据包数量至多为K;AP根据P个用户反馈的丢包情况生成一个P×N的丢包信息统计矩阵;AP生成一个N×K的编码矩阵,其中编码矩阵中的每一列代表一个重传数据包的组合情况,所有用户的丢包序号与编码矩阵相对应的行向量形成的子矩阵满秩,且不影响其他子矩阵的秩;AP将生成的编码矩阵与原始数据包进行比特按位异或,得出组合重传包并向P个用户进行广播;每个用户分别接收所述组合重传包,并将所述组合重传包与该用户已正确接收到的数据包进行异或解码,恢复出所丢失的数据包;所述编码矩阵的生成具体包括以下步骤:步骤101:从编码矩阵M中提取第i号用户的子矩阵SM;具体地,从丢包矩阵表中查得第i号用户丢包序号,从编码矩阵M中提取出丢包序号对应的行向量组合成该用户的编码子矩阵SM;步骤102:计算SM的行数r、列数c和秩rank;如果rank等于0则进行步骤103;如果0<rank<r则进行步骤104;否则进行步骤113;步骤103:将SM赋值为单位阵,根据SM更新M相应的行向量;步骤104:判断子矩阵SM是否有全零行zr和全零列zc;是则进行步骤105,否则进行步骤106;步骤105:将SM内第一个全零行和第一个全零列交叉处的元素值置1,进行步骤111;步骤106:令j=1,其中j是子矩阵SM的列号;步骤107:将SM第j列中的零值逐行置1,并重新计算秩rank;步骤108:判断rank是否增加,是则进行步骤110,否则将第j列前一次置1的向量恢复成0,进行步骤107,如果第j列所有向量均置过1,且rank均未增加,则进行步骤109;步骤109:将第j列前一次置1的向量恢复成0,令j=j+1,返回步骤107;步骤110:判断是否影响其他子矩阵的秩,是则进行步骤109,否则进行步骤111;步骤111:更新M和SM;具体地,根据SM更新M相应的行向量;步骤112:判断更新后的子矩阵SM的秩rank的大小是否等于r;如果等于则进行步骤113,否则进行步骤104;步骤113:判断i是否大于用户总数;是则结束,否则进行步骤114;步骤114:令i=i+1,对下一个用户进行以上步骤操作。...

【专利技术属性】
技术研发人员:谢刚杨亚霖高锦春刘元安胡碧波刘凯明刘芳袁东明
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1