1.一种基于网络编码的数据包重传方法,其特征在于包括以下步骤:
101、当无线网络中发送方发送数据包给接收方,且接收方未能成功收到该数据包时,发送方发送重传数据包给接收方,当该重传数据包的标志位FB=1时,则重传数据包以重传概率pnc发送网络编码包,跳转至步骤102,以直传概率P'=1-pnc发送该未发送成功的数据包,发送直传请求命令RTS,跳转至步骤104,;当该重传数据包的标志位FB=0时,也发送直传请求命令RTS,也跳转至步骤104;其中pnc∈[01],当pnc=0时表示重传数据包采用丢失的数据包i,当pnc=1时该重传数据包采用网络编码包,当0
102、当无线网络的信道空闲时,发送方广播发送一个网络编码发送请求NC-RTS给接收方,并等待接收方返回答应请求CTS;当发送方接收到接收方返回的答应请求CTS时,则发送编码数据包NC-Packet;当发送方未接收到答应请求CTS时,则返回步骤101;
103、接收方对步骤102中接收到编码数据包NC-Packet进行解码,解码后的数据包若为其丢失的数据包i时,则回复确认命令ACK给发送方;发送方收到是丢失的数据包i的确认命令ACK时,则将该丢失的数据包i从发送方的网络编码表中删除,从而完成数据包重传;当没有收到丢失的数据包i的确认命令ACK时,则再进行网络编码包重传,数据包重传的次数为m加1,当m大于或等于最大允许重传次数M时,则从发送方的网络编码表NC-Table中删除关于数据包i的记录,结束数据包重传;
104、当发送方发送直传请求命令RTS给接收方时,等待接收方的反应,发送方收到CTS时,直接发送丢失的数据包i给该接收方,当接收方回复确认命令ACK时,结束发送;当接收方没有回复确认命令ACK时,则判断该丢失的数据包i标志位是否为0,若是则将其标志位设置为1,返回步骤101;若判断该丢失的数据包i标志位为1则数据包丢失,结束数据包重传。
2.根据权利要求1所述的基于网络编码的数据包重传方法,其特征在于:步骤102或步骤103中的编码数据包NC-Packet是N个丢包节点的N个丢失的数据包的编码融合。
3.根据权利要求1所述的基于网络编码的数据包重传方法,其特征在于:步骤102中所述网络编码发送请求NC-RTS是根据IEEE802.11标准中定义的RTS格式修改得到的,NC-RTS包括接收方的地址IDs,该地址IDs用来通知接收方在即将重传的编码包中含有接收方丢失的数据包i。