1.一种能量捕获无线传感网高数据包传递率多播方法,其特征在于:所述多播方法包括以下步骤:
1)基站节点操作过程如下:
(1.1)在需要以多播方式发送出去且尚未发送的源数据包中挑出任意k个源数据包,将这k个源数据包利用系统纠删码进行编码来得到 个数据包,称这n个数据包为一个数据块,其中p是传感器节点无线链路的平均丢包率,运算符号 是对符号内部的数值向上取整数,参数k的取值取决于传感器节点的内存大小,其取值所对应的n个数据包总大小要小于等于传感器节点上的缓存大小;
(1.2)对编码得到的n个数据包,以M个时隙为一个周期,每周期只发送一个数据包,其中 Epkt是传感器节点接收一个数据包所消耗的能量, 是传感器节点的平均能量捕获速率,Ts是一个时隙的时间长度;
2)捕获环境能量的传感器节点操作过程如下:
(2.1)在新到来的数据块初始时刻,根据本传感器节点在数据块初始时刻的储能E(1)和本传感器节点能量捕获速率sh的值,计算出一旦接收该数据块则能正确接收的数据包个数期望值N;
(2.2)如果N≥k或者E(1)-nMEidle+nMTssh>C,则继续执行步骤(2.3),否则不接收该新到来的数据块,其中Eidle为传感器节点在一个空闲时隙上所消耗的能量,C为传感器节点的储能容量;
(2.3)对于当前数据块中每个到来的数据包,如果在该数据包到达时刻传感器节点的能量小于接收一个数据包所需消耗的能量Epkt,则不接收该数据包,否则接收该数据包,每当接收完一个数据包时进行以下操作:如果已经正确接收的数据包为k个,则停止接收当前数据块的后续数据包并继续执行步骤(2.4),如果接收出错的数据包个数为n-k+1个,则跳过步骤(2.4)并停止接收当前数据块的后续包,否则继续进行当前数据块的后续数据包的接收;
(2.4)进行系统纠删码解码以恢复出k个源数据包。
2.如权利要求1所述的一种能量捕获无线传感网高数据包传递率多播方法,其特征在于:所述步骤(2.1)中参数N的计算包括以下步骤:(2.1.1)初始化j=1,N=0;
(2.1.2)如果j≤n,则执行下一步骤;否则执行步骤(2.1.5);
(2.1.3)如果E(j)≥Epkt,E(j)表示本传感器节点第j个数据包接收时刻的储能,则更新接收的数据包个数期望值N=N+1,并且计算第j+1个数据包接收时刻的储能E(j+1)=min{E(j)-Epkt-(M-1)Eidle+MTs·sh,C};否则计算j+1个数据包接收时刻的储能为E(j+1)=min{E(j)-MEidle+MTs·sh,C};
(2.1.4)令j=j+1,然后再跳到步骤(2.1.2);
(2.1.5)N=N·(1-pe),其中pe为本传感器节点的丢包率。