一种基于喷泉码的协作多播方法转让专利

申请号 : CN201210060329.8

文献号 : CN102625250B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 任品毅卢金城杜清河陈志刚王熠晨吴广恩刘婧

申请人 : 西安交通大学

摘要 :

本发明提供一种基于喷泉码的协作多播方法,包括:1)基站把数据包经过喷泉码编码形成编码符号后对外发送,基站在收到所有用户正确译码的反馈后,结束该轮数据的发送;2)信道条件好的用户在先完成数据接收后,侦听其他用户的求助信号。当用户收到求助信号时,参与协作,当用户收到其协作的用户已正确接收的反馈时,停止协作;3)未完成数据接收的用户侦听其余用户正确接收的反馈信号,并根据该反馈信号的信号强度决定是否发送求助信号。本发明方法是用喷泉编码来提供无需重传的可靠传输,同时结合协作的方式来提高系统容量,本发明还给出了用户参与协作和退出协作的条件,降低用户协作的能量消耗,延长了网络寿命。

权利要求 :

1.一种基于喷泉码的协作多播方法,其特征在于:应用于蜂窝小区,在小区中包含一个基站和若干点播相同多播业务的用户,多播业务使用同一频段,基站使用喷泉码对多播业务数据进行编码;具体包括以下步骤:

1)基站把经过使用喷泉码编码后数据包,源源不断地调制在载波上对外发送,不同信道条件的用户在同一频段上接收信号,基站在收到所有用户完成数据接收的反馈后,结束该轮数据的发送;

2)用户在正确译码完成数据接收后,给基站反馈告知其已收到,然后开始侦听其他用户的求助信号;当该已正确译码的用户收到求助信号时,开始以译码转发的方式协作,对外发送和基站相同的喷泉码符号;当协作用户收到所有其协作的用户正确译码完成数据接收的反馈时,则结束协作;

所述步骤2)的具体步骤如下:

2-1)部分信道条件较好的用户,相同时间内累积的互信息较多,当这部分用户通过循环冗余校验码确定自己译出的数据是正确时,即可在一个反馈信道上广播一个ACK信号,告知基站和其他用户其已经正确接收数据,该ACK信号将包含用户自身的ID;

2-2)发送完反馈信号后,用户开始侦听其余用户的求助信号;若完成数据接收的用户收到一个或多个用户的求助信号,则该用户首先记录求助用户的ID,然后开始使用译码转发的方式为其他未完成数据接收的用户协作;未完成数据接收的用户同时收到协作用户和基站发送的符号,会获得一定的接收信噪比增益,加快其正确译码的速度;

2-3)当协作用户收到所有其协作的用户反馈的ACK信号后,停止转发数据,退出协作。

2.根据权利要求1所述的基于喷泉码的协作多播方法,其特征在于,所述基于喷泉码的协作多播方法还包括以下步骤:

3)用户在未完成数据接收时,侦听其余用户完成数据接收的反馈,根据反馈信号的信号强度决定是否发送求助信号。

3.根据权利要求1所述的基于喷泉码的协作多播方法,其特征在于,步骤1)的具体方法如下:

1-1)基站首先使用喷泉码编码方法对多播业务数据包进行编码,然后调制到载波上发送,直到收到所有用户完成数据接收的反馈,才结束编码和发送过程;

1-2)在接收端,用户从接收到的喷泉码符号中累积互信息,若定义i,j两点之间的瞬时信噪比为γi,j,则i,j两点间链路的信道容量为ci,j=Blog2(1+γi,j);

其中,B表示信道带宽;

每个符号累积的互信息表示为Is,每个符号周期为Ts,则

Is=TsBlog2(1+γi,j);

用户接收喷泉码符号后,开始周期性间隔尝试译码;当累积的互信息小于待传输的数据的熵时,译码失败,则用户继续接收喷泉码符号累积互信息,再一次译码尝试开始,如此循环;当累积的互信息大于待传输的数据的熵时,则可以正确译码,用户完成数据接收并反馈一个ACK信号,告知基站其已正确完成接收。

4.根据权利要求2所述的基于喷泉码的协作多播方法,其特征在于,所述步骤3)的具体步骤如下:

3-1)部分信道条件较差用户等待协作用户侦听其余用户完成接收数据的反馈,并测量出收到的反馈信号的信噪比;若反馈信号信噪比小于预先设定的信噪比门限值,表明完成数据接收的用户和该用户之间的链路条件并不够好,不适合接受其协作;若反馈信号信噪比大于预先设定的门限值,则表明已完成数据接收的用户和该用户之间的链路条件较好,适合接受其协作;该用户开始对外发送求助信号,内容包括自身的ID和协作用户的ID;上R面提到的信噪比门限值可以用公式SNRth=2-1确定,R为多播业务的速率要求;

3-2)当用户在基站和其余用户协作下完成数据的接收后,反馈一个ACK信号,告知基站和协作用户其已收到数据;接下来,该用户开始按照步骤2)决定是否为其余用户协作。

说明书 :

一种基于喷泉码的协作多播方法

技术领域

[0001] 本发明属于无线通信技术领域,特别涉及一种多播方法。

背景技术

[0002] 在多播场景中,多个用户在同一频段获取相同的业务数据,由于每个用户的信道条件不同,多播速率往往受限于信道条件最差用户。

发明内容

[0003] 本发明的目的是为了克服现有的多播系统受限于链路最差用户的问题;提出一种基于喷泉码的协作多播方法,该方法在保证所有用户可靠接收多播数据的前提下,通过协作的方式进一步提高多播系统的容量。
[0004] 本发明的目的是通过以下技术方案来实现的:
[0005] 一种基于喷泉码的协作多播方法,应用于蜂窝小区,在小区中包含一个基站和若干点播相同多播业务的用户,多播业务使用同一频段,基站使用喷泉码对多播业务数据进行编码;具体包括以下步骤:
[0006] 1)基站把经过使用喷泉码编码后数据包,源源不断地调制在载波上对外发送,不同信道条件的用户在同一频段上接收信号,基站在收到所有用户完成数据接收的反馈后,结束该轮数据的发送;
[0007] 2)用户在正确译码完成数据接收后,给基站反馈告知其已收到,然后开始侦听其他用户的求助信号;当该已正确译码的用户收到求助信号时,开始以译码转发的方式协作,对外发送和基站相同的喷泉码符号;当协作用户收到所有其协作的用户正确译码完成数据接收的反馈时,则结束协作。
[0008] 本发明进一步的改进在于:所述基于喷泉码的协作多播方法还包括以下步骤:
[0009] 3)用户在未完成数据接收时,侦听其余用户完成数据接收的反馈,根据反馈信号的信号强度决定是否发送求助信号。
[0010] 本发明进一步的改进在于:步骤1)的具体方法如下:
[0011] 1-1)基站首先使用喷泉码编码方法对多播业务数据包进行编码,然后调制到载波上发送,直到收到所有用户完成数据接收的反馈,才结束编码和发送过程;
[0012] 1-2)在接收端,用户从接收到的喷泉码符号中累积互信息,若定义i,j两点之间的瞬时信噪比为γi,j,则该链路的信道容量为
[0013] ci,j=Blog2(1+γi,j);
[0014] 每个符号累积的互信息表示为Is,每个符号周期为Ts,则
[0015] Is=TsBlog2(1+γi,j);
[0016] 用户接收喷泉码符号后,开始周期性间隔尝试译码;当累积的互信息小于待传输的数据的熵时,译码失败,则用户继续接收喷泉码符号累积互信息,再一次译码尝试开始,如此循环;当累积的互信息大于待传输的数据的熵时,则可以正确译码,用户完成数据接收并反馈一个ACK信号,告知基站其已正确完成接收。
[0017] 本发明进一步的改进在于:所述步骤2)的具体步骤如下:
[0018] 2-1)部分信道条件较好的用户,相同时间内累积的互信息较多,当这部分用户通过循环冗余校验码确定自己译出的数据是正确时,即可在一个反馈信道上广播一个ACK信号,告知基站和其他用户其已经正确接收数据,该ACK信号将包含用户自身的ID;
[0019] 2-2)发送完反馈信号后,用户开始侦听其余用户的求助信号;若完成数据接收的用户收到一个或多个用户的求助信号,则该用户首先记录求助用户的ID,然后开始使用译码转发的方式为其他未完成数据接收的用户协作;未完成数据接收的用户同时收到协作用户和基站发送的符号,会获得一定的接收信噪比增益,加快其正确译码的速度;
[0020] 2-3)当协作用户收到所有其协作的用户反馈的ACK信号后,停止转发数据,退出协作。
[0021] 本发明进一步的改进在于:所述步骤3)的具体步骤如下:
[0022] 3-1)部分信道条件较差用户等待协作用户侦听其余用户完成接收数据的反馈,并测量出收到的反馈信号的信噪比;若反馈信号信噪比小于预先设定的信噪比门限值,表明完成数据接收的用户和该用户之间的链路条件并不够好,不适合接受其协作;若反馈信号信噪比大于预先设定的门限值,则表明已完成数据接收的用户和该用户之间的链路条件较好,适合接受其协作;该用户开始对外发送求助信号,内容包括自身的ID和协作用户的ID;R
上面提到的信噪比门限值可以用公式SNRth=2-1确定,R为多播业务的速率要求;
[0023] 3-2)当用户在基站和其余用户协作下完成数据的接收后,反馈一个ACK信号,告知基站和协作用户其已收到数据;接下来,该用户开始按照步骤2)决定是否为其余用户协作。
[0024] 本发明具有以下有益效果:本发明首先在多播系统中使用喷泉码,使得基站无需知道各个用户的信道状态信息却仍然保证了所有用户都能正确接收到数据。部分信道条件好的用户先完成数据接收,然后根据和其他未完成数据接收的用户的信道条件,决定是否为其协作转发数据。部分和基站信道条件差的用户,在与其信道条件较好的完成数据接收用户的协作下,能加快完成数据接收的速率,提高了系统的容量。

附图说明

[0025] 图1为本发明的系统模型图;
[0026] 图2为本发明的步骤的示意图;
[0027] 图3为本发明中用户的流程图;
[0028] 图4为本发明中基站的流程图。

具体实施方式

[0029] 下面结合附图和具体实施实例对本发明做进一步的详细说明。
[0030] 喷泉码使用的是一种线性编译码方式,可以让信源源源不断产生编码符号,直到收到用户正确接收的反馈才停止编码发送,是一种增加传输可靠性的信道编码。基站无需知道用户的信道状态信息,却依然能保证数据的可靠传输的特性,尤其适合在多播系统中使用。基站使用喷泉码编码后,不同的用户在不同的时间完成数据的接收,此时可以让先完成数据接收的用户为未完成数据接收的用户协作转发数据,进一步能提高系统的容量。
[0031] 本发明的核心思想是在多播系统中在发送端使用喷泉码编码方法对多播数据包进行编码,在接收端不同信道条件的用户需要不同的时间来完成数据的接收。先完成数据接收的用户可以成为其余未完成数据接收用户的协作用户,未完成数据接收的用户根据已完成数据接收用户的信道条件决定是否向其发送求助信号。完成数据接收用户若收到其余用户的求助信号则开始以译码转发的方式参与协作,直到收到其协作的用户完成数据接收的反馈。
[0032] 请参阅图1至图4所示,本发明是一种基于喷泉码的协作多播方法,其包括以下步骤:
[0033] 1)基站使用喷泉码编码方案对多播数据包进行编码,具体步骤如下:
[0034] 1-1)、本发明应用在蜂窝小区场景下,该小区有一个基站和M个多播用户;当基站开始多播数据时,用户将在同一信道获取该业务数据。由于路径损耗、遮挡和多径等因素的存在,不同位置的用户和基站间的信道衰落不一样。各个用户在同一信道上获取多播业务数据,基站需要保证公平性,即所有用户都能收到该数据。若使用固定码率的信道编码方案如RS码,需要根据信道条件最差的用户来确定码率,这导致编码冗余过高,造成信道资源的浪费。在多播中使用固定码率的信道编码方案时,当某个用户出现通信中断即接收到错误的数据包时,基站需要为其重传该特定的数据包,而不同的用户接收到的错误数据包往往不一样,这就给基站带来了很大的重传负担。使用喷泉编码如LT码,则可以改善上述低频谱使用效率的状况。喷泉编码可以在物理层,也可以在传输层使用,其基本原理是发送端源源不断从待传输的数据符号中随机选择d个符号进行异或成编码符号并发送出去,直到所有用户都正确译出数据包,因此其码率是根据用户的信道条件自适应改变的。参数d服从一个随机分布,称为度分布。使用喷泉编码方案后,基站发送的编码符号都携带着一定的互信息,接收端通过接收这些编码符号来累积互信息,当累积互信息等于数据比特大小时,则可以正确译码。信道条件好的用户累积互信息速度较快,信道条件差的用户累积互信息速度较慢,因此他们正确译码需要的时间是不一样的。
[0035] 1-2)、基站在发送编码符号前需要发送一个RTS(Ready to Send)信号,通知用户准备接收数据,然后用户反馈一个CTS(Clear to Send)信号来完成握手建立通信。
[0036] 1-3)、当用户完成数据接收后会向基站发送一个ACK信号,告知其已经正确接收数据,当基站收到所有用户的ACK后,则停止进行此轮多播数据的编码和发送。
[0037] 2)先完成数据接收的用户决定是否为其余用户协作及如何协作的步骤如下:
[0038] 由于各个用户的信道条件不一样,使用喷泉码编码传输方案后,各个用户完成数据的译码所需的时间是不一样的。让先完成数据接收的用户为未完成数据接收的用户协作转发数据,可以加快未完成用户累积互信息的速度,提高频谱效率。定义已正确接收数据的用户集合为D,未正确接收数据的用户集合为U,为其余用户协作的用户集合为C。
[0039] 2-1)、用户接收来自基站的编码数据符号,这相当于一个累积互信息的过程,当用户接收到的编码数据符号数大于一个门限值时,开始尝试译码。LT码的译码方式包括高斯消元法和置信传播法,实际中一般使用复杂度较低的置信传播法来译码。在接收端,用户可以用CRC校验码来确定译出的数据是否为正确的数据,通常CRC校验码带来的开销很小,对传输速率的影响是忽略不计的。如果译码失败则用户继续接收编码数据符号,直到一定符号数间隔后进行下一次译码。如果译码成功,则用户以一个固定功率在反馈信道上发送一个ACK数据包,告知基站其已正确接收数据,该数据包还包含用户的ID。这里,反馈信道是可以被其余用户侦听的。
[0040] 用户接收到编码数据符号并尝试译码的门限值与喷泉码的编解码方案有关,比如可以把待发送数据分成1000个数据包进行喷泉码编码,则信道条件好的用户需要接收1050个包才能正确译码,信道差的可能要接收1100个包才能正确译码。例如,基站把L个数据包经过使用喷泉码编码后,源源不断地调制在载波上对外发送;当用户接收L(1+ε)个喷泉码符号后,开始周期性间隔尝试译码;当累积的互信息小于待传输的数据的熵时,译码失败,则用户继续接收K个喷泉码符号累积互信息,再一次译码尝试开始,如此循环;当累积的互信息大于待传输的数据的熵时,则可以正确译码,用户完成数据接收并反馈一个ACK信号,告知基站其已正确完成接收,其中L,ε,K的取值具体使用的喷泉码编码方案有关。
[0041] 2-2)、用户正确接收数据并反馈ACK后,在专用的信道上开始侦听是否有其余用户向其求助的信号,以决定是否参与到协作中去。
[0042] 求助信号仅包含等待协作和求助对象这两个用户的ID,因此该专门信道仅需占用很小的带宽。当用户收到其余用户向其求助的信号后,开始为那些用户协作。因为用户已经接收到正确的数据,并且可以假设其可获知基站使用的编码规则,则在和基站同步后,以功率Pr在同一信道上对外发送和基站上相同的编码符号,该协作方式的技术原理相当于在单频网(SFN)中的多个相邻小区基站在同一信道上发送相同的数据符号。有了用户协作后,求助用户相当于收到两个相同信号的叠加,且为求助用户和协作用户间具有较好的信道条件,因此可以提高求助用户累积互信息的速度,让求助用户更快地完成数据的正确接收。
[0043] 2-3)、协作用户在收到求助用户正确接收数据后反馈的ACK后,停止协作转发数据,及时退出协作是出于提高能量效率和延长网络寿命的考虑。这样就确定了已完成数据正确接收的用户进入和退出协作的条件。
[0044] 3)较慢完成数据正确接收的用户根据下述步骤来获得其余用户的协作:
[0045] 当未完成数据接收的用户在侦听到其余用户完成数据接收的反馈信号后,可以根据接收到的反馈信号的信号强度来决定是否向其发送求助信号。
[0046] 3-1)、用户除了在多播信道上接收数据符号,同时还侦听着反馈信道上是否有其余用户完成数据接收的ACK信号。当用户侦听到其余用户完成数据接收的ACK信号后,可以测量该信号的信噪比,这样就估计出了该用户和已完成数据接收的用户间的信道衰落情况。若接收到的反馈信号的信噪比大于一个预设的信噪比门限值SNRth,则表明两者之间具有较好的信道条件,可以在专门的信道上向该接收完数据的用户发送求助信号。
[0047] 信噪比门限SNRth的取值决定了用户参与协作的门槛,即每次传输参与协作的用户多或少。信噪比门限SNRth的确定和多播业务的速率要求有关。多播业务具有较高的传输速率要求,可以降低SNRth值,让更多的用户参与到协作中,但这样会消耗更多能量。若多播业务要求的传输速率较低,则可以提高SNRth值,让信道条件最好的那部分用户参与到协作中,既可以保证速率要求,又可以降低能量消耗。上面提到的信噪比门限值可以用公式RSNRth=2-1确定,R为多播业务的速率要求,在用户比较密集时,甚至可以取更大的信噪比门限以筛选高效的协作用户。
[0048] 3-2)、用户在发送完求助信号后,则可获得其余用户的协作。在用户正确接收完数据后,需要反馈一个ACK信号,告知基站和为其协作的用户其已经正确接收数据。然后该用户按步骤2)决定是否为其余为完成数据接收的用户协作。