CN101692740A - 无线网络多路路由网络传输方法 - Google Patents

无线网络多路路由网络传输方法 Download PDF

Info

Publication number
CN101692740A
CN101692740A CN200910024174A CN200910024174A CN101692740A CN 101692740 A CN101692740 A CN 101692740A CN 200910024174 A CN200910024174 A CN 200910024174A CN 200910024174 A CN200910024174 A CN 200910024174A CN 101692740 A CN101692740 A CN 101692740A
Authority
CN
China
Prior art keywords
information
node
bag
packets
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200910024174A
Other languages
English (en)
Other versions
CN101692740B (zh
Inventor
周宁
吴华
刘景伟
李颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN200910024174A priority Critical patent/CN101692740B/zh
Publication of CN101692740A publication Critical patent/CN101692740A/zh
Application granted granted Critical
Publication of CN101692740B publication Critical patent/CN101692740B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本文公开了一种无线网络多路路由网络编码传输方法,主要解决现有网络编码传输方法需要时隙较多、数据传输次数过多和对节点要求过高的问题。其主要步骤分为网络初始化和数据传输两个部分;网络初始化部分主要是确定每个节点的级数和它的邻居节点信息,并完成组网;数据传输部分主要是节点通过对消息包标志位的判断,对不同类型的消息包做出不同的处理;通过对消息包级数标志位的判断,选择性地接收本节点所需要的信息;通过对本地信息池和邻居信息列表进行判断,选择最优网络编码,并通过一次数据发送完成消息传输和本节点信息传输两项任务;本发明具有网络传输时隙和数据传输次数少,降低网络对节点要求的优点,可用于多用户无线数据传输。

Description

无线网络多路路由网络传输方法
技术领域
本发明属于无线通信网络领域,涉及网络编码技术和多路路由技术,具体地说是针对一个有N个移动用户、M个中继节点和L个目的节点的无线通信网络,设计一种能提高网络吞吐量和移动用户传输性能的多路路由网络传输方法。
背景技术
利用中继帮助移动用户转发数据,可获得额外的分集增益,改善接收端的误比特BER性能。传统中继方案一般采取单一路由设定,节点间的路由相对固定,使得信息融合的可能性大大减少。而如果采用多路路由设置,可以大大提高网络编码概率,解决传统中继方案的容量瓶颈。
网络编码通过对多条输入链路上收到的数据信息进行一定的线性或非线性编码,能够提高网络吞吐量、减少数据包的传输次数、增强网络的容错性和鲁棒性,从而在无线通信网络中有非常好的应用前景。
图1所示是1个源节点,4个中继节点和2个目的节点的经典无线中继网络编码网络,图1(a)没有使用网络编码,X节点在收到消息b1和b2后,需要将消息b1和b2分两次向目的节点发送,而图1(b)能明显地看出应用网络编码能够在W节点和X节点进行信息融合,减少了节点传输次数,带来了吞吐量增益。
当前,当无线通信网络中存在M个中继节点时,往往采用单一路由方式,这使得网络编码的机会减少。随着机会主义路由(S.Biswas and R.Morris.“ExOR:Opportunistic Multi-hop Routing for Wireless Networks”.in Proc.of ACMSIGCOMM,2005.)理论的提出,COPE(S.Katti,H.Rahul and WJ.Hu.“XORs in the air:practical wireless network coding”.IEEE/ACM Transactions on Networking(TON).June 2008.)等网络编码方案相应被提出,在COPE协议中,每个节点对传输媒体进行侦听,获得它邻居节点的状态信息,决定进行编码的机会,并在本地的缓存结构内进行编码,然后进行基于机会的路由。COPE协议要求每个节点利用本地信息各自决定哪些数据包需要进行编码以及如何进行编码。然而该协议需要节点在收到消息后再次发送本地的消息给邻居节点,增大了网络传输次数和时延,如果网络出现拥塞,可能就会耗费较多的节点存储空间。最近的OMNC(X.Zhang,B.Li.“Optimized MultipathNetwork Coding in Lossy Wireless Networks”.IEEE JOURNAL ON SELECTED AREASIN COMMUNICATIONS,VOL.27,NO.5,JUNE 2009.)方案又对现有方案提出了改进,在传输过程中增加了速率控制,但是该方案依然存在时延过长,对节点要求过高,在拥塞状况下网络性能衰落过快的问题。
发明内容
本发明的目的在于克服上述COPE,OMNC等现有技术的缺陷,针对无线通信网络中存在多个中继节点的情况,提出无线网络多路路由网络传输方法,以减少网络节点消息传输次数,降低时延,提高网络吞吐量和中继节点的转发效率,改善目的节点的性能。
实现本发明的技术思路是:由源节点发送相应的初始包,网络中的每个节点根据初始包判定自己在网络中所要承担的任务,确定相应的多路路由,以及每个节点的存储设置。网络建立后,每个节点根据邻居节点的消息进行最优编码和本地存储控制。使用新的MAC协议,硬件协议,路由协议等将网络进行优化。其传输步骤包括如下:
A.网络初始化步骤:源节点发送初始数据包,各个中继节点根据初始数据包的内容,判定自己的级数并且确定高一级的邻居节点;目的节点发送初始数据包的应答包,各个中继节点根据初始数据包的应答包确定低一级的邻居节点,组成网络;
B.数据传输步骤:
B1.中继节点收到一个数据包后,首先判断该数据包的包标志位,如果该包为消息包,则转B2;如果该包为请求重发包,则转B8;如果该包为切断连接包,则转B9;
B2.根据消息包的信息判断发送节点级数,如果发送节点的级数比当前节点的级数低,转B3,如果发送节点的级数大于或等于当前节点的级数,则转B7;
B3.读取消息包的负载信息部分,忽略邻居节点信息部分;判断该包的负载信息是否已经编码,如果该包为已经编码的包,则转至B5;如果是没有经过编码的包,转至B4;
B4.读取负载信息的包号并与本节点信息包池中信息包的包号进行比对:如果本节点信息包池中没有当前收到的信息包,则将此信息包保存到本节点的信息包池中,转B6;如果当前收到的信息包已经在信息包池中存在,则将此包丢弃;转B10;
B5.如果该消息包为已经编码的包,则根据收到消息包中已经编码包的包号和本地信息包池中的信息包号进行对比,解出有用的信息包,保存到信息包池中,并更新本节点信息包池中所包含的信息包包号信息,转B6;如果该信息包无法解码,则读取消息包中不可解码标志位,判断不可解码次数是否达到预设的门限值,如果达到门限则将此包删除;如果没有到达门限,则将不可解码标志位加1,消息包内的已经编码包数、已经编码的包号和已经编码包的目的地址以及负载不变,其余信息由当前节点重新组包后转发;
B6.根据本节点存储的邻居信息列表和信息包池中的信息包,选择邻居节点能够解码的最佳编码,将编码后的信息作为负载进行组包,并广播发送;如果通过任何编码方案编码后邻居节点都无法解码,则直接将该信息作为负载进行组包,并广播发送;转B10;
B7.如果发送节点的级数大于或等于当前节点的级数,则只接收消息包中的邻居节点信息,并且更新本节点的邻居信息列表;
B8.如果消息包为请求重发包,则读取需要重发的信息,与本节点消息包池进行对比,如果本节点中有需要重发的包,则将需要重发的消息组包后向高一级节点发送;如果本节点没有需要的包,则将请求重发包直接向低一级节点转发;
B9.如果该数据包为切断连接包,中继节点则直接向低一级节点转发,并且清空本中继节点的缓存和初始化所有设置;
B10.如果中继节点在收到一个消息包后一定时间内未收到新的消息包,则按照消息池中消息包的时戳顺序,转B6;如果一定时间内没有监听到邻居节点的消息,则将本节点消息直接进行组包,并广播发送。
所述的组包,包括对帧控制域的设置和负载的填充,其中:
帧控制域的设置,包括对中继节点信息部分的设置和对负载信息部分设置两部分内容:该中继节点信息部分的设置是在中继节点信息部分填入本中继节点在之前T到2T时间内所正确接收的信息包个数以及每个信息包的时戳和包号,其中T为根据具体网络情况而设定的确定时长;该负载信息部分设置,分为对已经编码的信息进行填充和对未编码的信息填充两种情况:对已经编码的信息进行填充,是将帧控制域中的编码后未解次数标志位置0,将已经编码的包数填入本次编码所涉及的包的个数,在负载信息部分填入每个信息包的包号和目的地址;对未编码的信息进行填充,是将帧控制域中的编码后未解次数标志位置0,将已经编码的包数置0,省略负载信息部分;
负载的填充,分为对已经编码的信息进行组包和对未编码的信息填充两种情况:对已经编码的信息进行填充,是将进行过编码的信息包直接填充到负载;对未编码的信息进行填充,是将未进行编码的信息包和此信息包的包号一同填充到负载。
本发明与现有技术相比具有如下优点:
1)本发明通过特定的组包方式,将需要传输的消息和本地信息一起发出,使两次传输过程变为一次传输过程,大大地减少了传输时隙和数据传输次数,降低了网络时延,增大了网络吞吐量;由于本发明极大地减少了传输时隙和数据传输次数,在拥塞网络中,可以较强的维持网络性能;
2)本发明的中继节点通过保存在节点中的邻居信息列表和信息包池,能够智能地选择最优的编码方案,相对于传统的网络编码方案,一次编码能够将多个信息包进行融合,获得比普通网络编码更大的编码增益,增大网络吞吐量;
3)本发明的中继节点通过对消息包级数的判断,能够只将对自己有用的消息进行运算和保存,减轻了中继节点的运算和存储压力,提高了网络的稳定性;
4)在网络状况不佳的情况下,通过本发明的中继节点信息存储功能,能够极大地减少重传跳数。
附图说明
图1是经典的蝴蝶网络网络编码模型;
图2是本发明的无线网络多路路由网络传输示例拓扑图;
图3是本发明根据MAC协议构建的帧格式图;
图4是本发明的节点信息包池和邻居节点信息列表数据结构图;
图5是本发明的无线网络多路路由网络传输流程图;
图6是本发明与单一路由中继网络方法和COPE方法传输相同数据量所需要的时隙对比图;
图7是本发明与单一路由中继网络方法和COPE方法传输相同数据量的任务,所有中继节点共发生的传输次数总和的对比图。
具体实施方式
为了实现本发明的多路路由网络传输方法的应用,本发明相应更新了硬件协议,MAC协议,路由协议,并提出了节点存储控制方案。
更新的协议和方案说明如下:
1).硬件协议:每一个节点都有两个独立的数据缓存池。其中一个池保存该节点接收到的数据。另外一个池则保存所监听到的邻居节点所包含的数据信息。硬件根据初始包所确定的级数和性质来对存储器进行管理。
2).MAC协议:MAC协议主要包括帧格式的确定和组包方案两部分内容;
(1).帧格式如图3所示:其中源节点地址为本发送节点地址;目的地址设置成0XFFFF为广播;初始化包的目的地址设置为需要连接的目的节点的地址;包标志位置代表本包是什么类型的数据包;级数标志位初始为0,逐跳累加;编码未解次数W代表本包内的负载为已经经过编码的信息包,该信息包经过W次转发依然不可解;已编码包数为0代表本包负载中是没有经过编码的信息包,N代表本包负载是由N个信息包编码后生成的;时间戳为本消息包产生的时间,用于节点存储、转发或丢弃依据;本节点池中包数标志位填入本中继节点信息包池中所包含信息包的个数;本节点池中包号标志位填入本中继节点信息包池中所包含信息包的包号;本包中已经编码的包号标志位填入负载是由哪些包号的信息包编码产生的;本包中已经编码的包的目的地址标志位填入负载中已经编码的信息包原来的目的地址。
(2).组包过程:
按照包的类型,组包分为初始化包,链接确认包,消息包,请求重发包和链接切断包五种;包的类型主要在帧控制域和负载中予以区分,各类型的组包如下:
初始化包的组包,是将帧控制域中的包标志位置1,其他位置置0;负载中输入文件总长和总信息包数。
链接确认包的组包,是将帧控制域中的包标志位置2,其他位置置0;负载中输入文件总长和总信息包数。
请求重发包的组包,是将帧控制域中的包标志位置3,其他位置置0;负载中输入需要重发的信息包包号。
链接切断包的组包,是将帧控制域中的包标志位置4,其他位置置0;负载置0。
消息包的组包,分为对未编码信息包的组包和已经编码信息包的组包两种情况:如果是对未编码的信息包进行组包,则将帧控制域中的包标志位、编码后未解次数和本包中已经编码的包数三个标志位置0;将帧控制域中的节点信息部分填入本中继节点在之前T到2T时间内所正确接收解的信息包个数以及每个信息包的时戳和包号,其中T为根据具体网络情况而设定的确定时长;省略帧控制域中的负载信息部分;将信息包和包号填入负载;如果是对已经编码的信息包进行组包,则将帧控制域中的包标志位置0;将帧控制域中的节点信息部分填入本中继节点在之前T到2T时间内所正确接收解的信息包个数以及每个信息包的时戳和包号,其中T为根据具体网络情况而设定的确定时长;将帧控制域中的编码后未解次数标志位置0,将已经编码的包数填入本次编码所涉及的包的个数,在负载信息部分填入参与编码的所有信息包的包号和对应的目的地址;将已经编码的信息包填入负载。
(3).路由协议:采用多路路由设定,既每一组消息都同时由不同的路径发出。
(4).节点存储控制:节点的存储结构如图4所示;该控制包括目的节点分别对邻居信息列表和信息包池的存储控制,普通中继节点分别对邻居信息列表和信息包池的存储控制,以及枢纽节点分别对邻居信息列表和信息包池的存储控制;
目的节点邻居信息列表的存储控制,是通过目的节点只对邻居节点进行确认,不保存邻居节点中相应的信息包信息。
目的节点信息包池的存储控制,是在设定时间T的条件下,根据时戳只保存时间2T内正确接收的包,如果新收到的消息包包号已经存在,则直接删除消息包。
普通中继节点邻居信息列表的存储控制,是每当中继节点监听到高一级或同级的消息时,通过消息包的源地址判断是哪一个邻居节点;如果来源不是目的节点,则通过消息包的源地址判断是哪一个邻居节点,之后对比时戳,如果时戳比当前节点的老,则该节点上所对应的邻居列表不变,如果时戳比当前节点的新,则对该邻居节点信息列表进行相应的更新。
普通中继节点信息包池的存储控制,是对收到的消息包是否需要存储做出判断;如果中继节点监听到的消息包是目的节点发来的,则读取消息包中的邻居节点信息,将本地信息包池中相应包号的信息包删除;如果接收到的消息是高一级节点或同级中继节点发出的,并且发出消息的节点不是目的节点,则读取消息包中的邻居信息部分,将该消息包中的邻居信息与当前节点所保存的邻居列表进行对比,如果时戳比当前的早,则信息包池不做处理;如果时戳比当前节点的新,则判断新的邻居列表中每个对应的邻居哪些包号有了变化,之后对新列表中消失的信息包号进行判断,如果该信息包的已经发送标志位为1,则将该信息包删除,否则继续保留;如果信息包保存了Q时间依然没有发送,则将该信息包不经过编码直接发送,并将信息包池中该信息删除;对于信息包池中已经发送标志为1的信息包,如果M(M<Q)时间内没有被使用,则删除该信息包。
枢纽节点的邻居信息列表存储控制和信息包池存储控制,与普通中继节点存储控制基本相同,只是在确定时间参数Q’和M’时,可以取普通中继节点中时间参数Q,M值的2倍或更多。
参照图5,本发明的无线网络多路路由网络传输方法,主要包括网络初始化,数据传输两部分内容;
一、网络初始化
步骤A,源节点将要传输的文件进行分包,并将分得的包称为信息包,对信息包进行排号,将信息包总数和文件总长度写入初始包;
步骤B,原节点将初始包级标志置0,包标志位置1,进行广播;
步骤C,第一跳中继节点收到初始包,将自己的级数设置为1,将初始包级标志位加1继续进行广播;
步骤D,第二跳中继节点收到初始包,将自己的级数设置为2,并将初始包级标志位加1,继续进行广播;
步骤E,级数为一的节点监听到级数为2节点的消息,确认级数为2的节点为自己的邻居节点;第三跳中继节点收到初始包,将自己的级数设置为3,并将初始包级标志位加1继续广播;级数为2的节点监听到级数为3的消息,确认级数为3的节点为自己的邻居节点;此过程一直重复进行直到初始包到达目的节点;如果某一节点同时收到不同级数的初始包,则该节点成为枢纽节点,该节点级数取较小的级数为自己的级数;
步骤F,目的节点收到初始包后,发送链接确认包,确认网络级数,按级数从大到小方向发送;
步骤G,低一级的中继节点收到高一级的节点发来的链接确认包后直接向更低一级节点转发;高一级节点监听到低一级节点的转发消息后确认低一级节点为自己的邻居节点;此过程一直重复到源节点;整个网络初始化完毕,每个节点都明确了自己的邻居节点。
二、消息传输
步骤1,中继节点收到一个数据包后,首先判断该包的包标志位,如果该包为消息包,则转步骤2;如果该包为请求重发包,则转步骤10;如果该包为连接切断包,则转步骤11,所有发送的包都是按照本发明所规定的MAC帧头格式进行组包;
步骤2,根据消息包的级数标志位判断发送节点级数,如果发送节点的级数比当前节点的级数低,转步骤3;如果发送节点的级数大于或等于当前节点的级数,则转步骤8;
步骤3,忽略这个消息包中的邻居节点信息部分,只读取消息包的各个标志位、负载信息部分和负载;读取“已经编码包的个数”标志位,标志位为0,则代表该消息包的负载没有经过编码,标志位大于0,则代表该消息包的负载已经经过编码;如果是没有经过编码的消息包,转步骤4;如果是已经编码的消息包,则转步骤5;
步骤4,读取负载中信息包包号并与本节点消息池中信息包的包号进行比对;如果本节点消息池中没有当前收到的信息包,则将此信息包进行保存,再与本节点保存的邻居节点信息列表进行对比,如果根据邻居节点信息列表判断该信息包可以进行编码发送,则按照最优编码方案进行编码,再将编码后的信息包重新组包并广播发送;如果该信息包经过任何编码后邻居都无法解码,则直接将该信息包进行组包发送;如果当前收到的信息包已经在消息池中存在,则将此信息包丢弃;转步骤9;
步骤5,如果该消息包为已经编码的包,则读取该消息包中负载信息部分,将已经编码信息包的包号和本地消息池中的信息包的包号进行对比,如果本节点可以解码,则转步骤6;如果本节点无法解码,则转步骤7;
步骤6,解出有用的信息包,保存到消息池中,并更新本节点消息池中所包含的信息包的包号信息,再与本节点保存的邻居节点信息列表进行对比,如果根据邻居节点信息列表判断该信息包可以进行编码发送,则按照最优编码方案进行编码,再将编码后的信息包重新组包并广播发送;如果该信息包经过任何编码后邻居都无法解码,则直接将该信息包进行组包发送;转步骤9;
步骤7,如果该消息包无法解码,则读取消息包中不可解码标志位,判断次数是否达到预设的门限值,如果达到门限则将此消息包删除;如果没有到达门限,则将消息包的不可解码标志位加1,已经编码包数标志、已经编码的包号和目的地址以及负载信息不变,由当前节点重新进行组包,广播发送;转步骤9;
步骤8,如果发送节点的级数大于或等于当前节点的级数,则只接收该包中的邻居节点信息,并且更新本节点的邻居信息列表;转步骤9;
步骤9,如果该节点在收到一个消息包后,一定时间内未收到新的消息包,则按照消息池中消息包的时戳顺序,按照由早到晚的顺序,与本节点保存的邻居节点信息列表进行对比,如果根据邻居节点信息列表判断该信息包可以进行编码发送,则按照最优编码方案进行编码,再将编码后的信息包重新组包并广播发送;如果该信息包经过任何编码后邻居都无法解码,则直接将该信息包进行组包发送;
步骤10,如果该数据包为请求重发包,则读取消息包负载中需要重发的信息包号,与本中继节点信息包池进行对比,如果本节点中有需要重发的信息包,则将需要重发的信息包进行组包,向高一级节点发送;如果本节点没有需要的信息包,则将请求重发包直接向低一级节点转发;
步骤11,如果该数据包为切断连接包,中继节点则直接向低一级节点转发,并且清空本中继节点的缓存和初始化所有设置;
步骤12,当目的节点收到一个消息包后,将能够解码的信息包保存,之后广播一个消息包,该消息包含目的节点在之前T到2T时间内所正确接收解码包的包号,也就是在帧控制域中的邻居节点信息里面填入T到2T时间已经得到的包号,帧控制域中的其他位置和帧的负载均设置为0;当目的节点收到所有的信息包,按照信息包的包号顺序还原为文件后,发送连接切断包。
实施例1:网络初始化实例
在图2所示的网状网络中,假定有两个源节点、四个中继节点和两个目的节点,其多路路由网络传输编码的网络初始化步骤如下:
第1步,源节点1和源节点2广播发送初始化包,此时初始化包的级数标志位为1;
第2步,中继节点3和中继节点4收到源节点1的广播,中继节点3和中继节点4确认源节点1为自己的邻居节点,并将初始化包的级数标志位加1,将初始化包继续转发;这时,初始化包的级数标志位为2;
第3步,中继节点3和中继节点5收到源节点2的广播,中继节点3和中继节点5确认源节点2为自己的邻居节点,并将初始化包的级数标志位加1,将初始化包继续转发;这时,初始化包的级数标志位为2;
第4步,中继节点3广播初始化包,源节点1和源节点2监听到中继节点3的广播后,源节点1和源节点2确认中继节点3为自己的邻居节点;中继节点4、中继节点5和中继节点6也同时收到中继节点3广播的初始化包,中继节点4、中继节点5和中继节点6确认中继节点3为自己的邻居节点;此时初始化包的级数标志位为2,但中继节点4和中继节点5之前已经设置为1,所以中继节点4和中继节点5级数不变,依然为1;中继节点6的级数为2;
第5步,中继节点4广播初始化包,源节点1和中继节点3监听到中继节点4的广播,源节点1和中继节点3确认中继节点4为自己的邻居节点;中继节点6和目的节点7也同时收到中继节点4广播的初始化包,中继节点6和目的节点7确认中继节点4为自己的邻居节点;此时初始化包的级数标志位为2,所以中继节点6和目的节点7的级数为2;
第6步,中继节点5广播初始化包,源节点2和中继节点3监听到中继节点5的广播,源节点2和中继节点3确认中继节点5为自己的邻居节点;中继节点6和目的节点8也同时收到中继节点5广播的初始化包,中继节点6和目的节点8确认中继节点5为自己的邻居节点;此时初始化包的级数标志位为2,所以中继节点6和目的节点8的级数为2;
第7步:中继节点6将初始化包的级数标志位加1后继续广播,中继节点3、中继节点4和中继节点5监听到中继节点6的广播,中继节点3、中继节点4和中继节点5确认中继节点6为自己的邻居节点;目的节点7和目的节点8收到中继节点6发送的初始化包,确认中继节点6为自己的邻居节点,此时初始化包的级数标志位为3,但目的节点7和目的节点8之前确认的级数为2,所以中继节点6、目的节点7和目的节点8的级数都为2;
第8步,目的节点7收到初始化包后,广播链接确认包;中继节点4和中继节点6监听到,中继节点4和中继节点6确认目的节点7为自己的邻居节点,并将链接确认包向低级节点转发;
第9步,目的节点8收到初始化包后,广播链接确认包;中继节点5和中继节点6监听到,中继节点5和中继节点6确认目的节点8为自己的邻居节点,并将链接确认包向低级节点转发;
第10步,中继节点4和中继节点5将确认消息发回源节点1、源节点2和中继节点3;中继节点3确认中继节点4和中继节点5为自己的邻居节点,并将链接确认包向低级节点转发;源节点1、源节点2收到链接确认包后,整个网络初始化完毕,每个节点都找到了自己的邻居节点。
实施例2:数据传输实例
在图2所示的网状网络中,假定有两个源节点、四个中继节点和两个目的节点,假设网络已经初始化完毕,源节点1需要将消息A和消息B到发送的目的节点7和目的节点8;源节点2需要将消息P1和消息P2到发送的目的节点7和目的节点8;由于是无线网络,每个节点不能同时进行收发工作,所以其多路路由网络传输编码的数据传输,按以下步骤进行:
第一步,源节点1广播消息A,中继节点3和中继节点4收到消息A;
第二步,源节点2广播消息P1,中继节点3和中继节点5收到消息P1;同时中继节点4通过邻居节点信息列表判断后,直接广播消息A,中继节点6和目的节点7收到;这时,中继节点3中有消息A和消息P1,中继节点4中有消息A,中继节点5中有消息P1,中继节点6中有消息A,目的节点7中有消息A;目的节点8中没有消息;
第三步,源节点1监听到中继节点4中有消息A,于是广播消息(A+B)mod2,中继节点3和中继节点4收到,进行解码得到消息B;同时中继节点5通过邻居节点信息列表判断后,直接广播消息P1,中继节点6和目的节点8收到;这时,中继节点3中有消息A、B和P1,中继节点4中有消息A和B,中继节点5中有消息P1,中继节点6中有消息A和P1,目的节点7中有消息A;目的节点8中有消息P1
第四步,源节点2监听到中继节点5中有消息P1,于是广播消息(P1+P2)mod2,中继节点3和中继节点5收到,中继节点3和中继节点5进行解码得到消息P2;同时中继节点6通过监听发现目的节点7中有消息A,目的节点8中有消息P1,于是进行编码(P1+A)mod2并广播;目的节点7收到此消息后,解码得到消息P1,目的节点8收到此消息后,解码得到消息A;这时,中继节点3中有消息A、B、P1和P2,中继节点4中有消息A和B,中继节点5中有消息P1和P2,中继节点6中有消息A和P1,目的节点7中有消息A和P1;目的节点8中有消息A和P1
第五步,中继节点5监听到目的节点8中有消息P1,于是广播消息(P1+P2)mod2,中继节点6和目的节点8收到,进行解码得到消息P2;这时,中继节点3中有消息A、B、P1和P2,中继节点4中有消息A和B,中继节点5中有消息P1和P2,中继节点6中有消息A、P1和P2,目的节点7中有消息A和P1;目的节点8中有消息A、P1和P2
第六步,中继节点4监听到目的节点7中有消息A,于是广播消息(A+B)mod2,中继节点6和目的节点7收到,进行解码得到消息B;这时,中继节点3中有消息A、B、P1和P2,中继节点4中有消息A和B,中继节点5中有消息P1和P2,中继节点6中有消息A、B、P1和P2,目的节点7中有消息A、B和P1;目的节点8中有消息A、P1和P2
第七步:中继节点6分别监听到目的节点7中有消息A、B和P1,目的节点8中有消息A、P1和P2,于是广播消息(A+B+P1+P2)mod2,目的节点7收到,进行解码得到消息P1;目的节点8收到,进行解码得到消息B;这时,目的节点7中有消息A、B、P1和P2;目的节点8中有消息A、B、P1和P2;消息发送完毕;
如果传输中出现错误,某一个信息包需要重传,则应用多路路由网络传输方案,完成重传最少只需要2个时隙,而单一路由网络则需要至少4或者6时隙;
在此特定的简单拓扑结构中,设每个源节点发送的消息包为K个,使用多路路由网络传输方案,完成所有传送任务需要的时隙S=3K+1个;如果单一路由中继模式,则完成所有传送任务需要的时隙S=4K+1个;如果使用COPE方案,中继节点需要将收到的消息进行处理,将处理后的消息发送,之后再次发送本节点的信息给邻居节点,这样极大地增加了网络传输所需要的时隙和传输次数,整个传输过程需要的时隙大约为单一路由网络传输时隙的2倍以上;可见,多路路由网络传输方案最少节约了大约1/4时隙,因而提高了网络吞吐量;
在该例中,网络规模较小,并不能完全体现出多路路由编码增益,在大型的网状网络中,随着消息包的增多,编码机会和最优编码方案也大大增加,并且随着网络扩大,多路路由增多,更进一步增加了编码机会,扩大编码增益;同时,大大减少了重传所需时间;
从节点传输次数来看,应用本发明的方法完成整个文件的传输,所有网络节点只需要进行10次传输工作;如果使用传统的中继方案,完成整个文件的传输则需要至少12次传输;如果使用COPE方案,完成整个文件的传输则需要至少26次传输;可见本发明方法不仅节约了时隙,还减少了消息传输次数,减轻了网络负担,提高了网络吞吐量;在拥塞网络中,可以较强地维持网络性能;
本发明的效果可通过以下仿真结果进一步说明,所有的仿真都是在如图2所示的网络拓扑下进行的,该网络有两个源节点,四个中继节点,两个目的节点,每个源节点发送的消息包为K个;本仿真通过对网络时隙和消息传递次数两个方面来说明本发明的优点;
图6给出了实施例2拓扑状态下,采用本发明与现有单一路由中继和COPE三种网络传输方法在传输相同数据量所需要的时隙对比。由图6可见,在这种最简单的网络拓扑结构下,本发明的无线网络多路路由网络传输方法能够大大减少传输时隙,降低网络时延;
图7给出了实施例2拓扑状态下,采用本发明与现有单一路由中继和COPE三种网络传输方法在传输相同数据量的任务,所有中继节点共发生的传输次数总和的对比。由图7可见,本发明的无线网络多路路由网络传输方法能够减少消息传输次数,增大网络吞吐量;
如上所述,本发明的无线网络多路路由网络编码传输方法可以极大地减少网络传输时隙,降低网络时延和消息传输次数,而且在提高了编码增益的同时还降低了网络对节点的运算和存储要求,提高了整个网络吞吐量的同时还能够较好的维持网络性能。

Claims (7)

1.一种无线网络多路路由网络传输方法,包括:
A.网络初始化步骤:源节点发送初始数据包,各个中继节点根据初始数据包的内容,判定自己的级数并且确定高一级的邻居节点;目的节点发送初始数据包的应答包,各个中继节点根据初始数据包的应答包确定低一级的邻居节点,组成网络;
B.数据传输步骤:
B1.中继节点收到一个数据包后,首先判断该数据包的包标志位,如果该包为消息包,则转B2;如果该包为请求重发包,则转B8;如果该包为切断连接包,则转B9;
B2.根据消息包的信息判断发送节点级数,如果发送节点的级数比当前节点的级数低,转B3,如果发送节点的级数大于或等于当前节点的级数,则转B7;
B3.读取消息包的负载信息部分,忽略邻居节点信息部分;判断该包的负载信息是否已经编码,如果该包为已经编码的包,则转至B5;如果是没有经过编码的包,转至B4;
B4.读取负载信息的包号并与本节点信息包池中信息包的包号进行比对:如果本节点信息包池中没有当前收到的信息包,则将此信息包保存到本节点的信息包池中,转B6;如果当前收到的信息包已经在信息包池中存在,则将此包丢弃;转B10;
B5.如果该消息包为已经编码的包,则根据收到消息包中已经编码包的包号和本地信息包池中的信息包号进行对比,解出有用的信息包,保存到信息包池中,并更新本节点信息包池中所包含的信息包包号信息,转B6;如果该信息包无法解码,则读取消息包中不可解码标志位,判断不可解码次数是否达到预设的门限值,如果达到门限则将此包删除;如果没有到达门限,则将不可解码标志位加1,消息包内的已经编码包数、已经编码的包号和已经编码包的目的地址以及负载不变,其余信息由当前节点重新组包后转发;
B6.根据本节点存储的邻居信息列表和信息包池中的信息包,选择邻居节点能够解码的最佳编码,将编码后的信息作为负载进行组包,并广播发送;如果通过任何编码方案编码后邻居节点都无法解码,则直接将该信息作为负载进行组包,并广播发送;转B10;
B7.如果发送节点的级数大于或等于当前节点的级数,则只接收消息包中的邻居节点信息,并且更新本节点的邻居信息列表;
B8.如果消息包为请求重发包,则读取需要重发的信息,与本节点消息包池进行对比,如果本节点中有需要重发的包,则将需要重发的消息组包后向高一级节点发送;如果本节点没有需要的包,则将请求重发包直接向低一级节点转发;
B9.如果该数据包为切断连接包,中继节点则直接向低一级节点转发,并且清空本中继节点的缓存和初始化所有设置;
B10.如果中继节点在收到一个消息包后一定时间内未收到新的消息包,则按照消息池中消息包的时戳顺序,转B6;如果一定时间内没有监听到邻居节点的消息,则将本节点消息直接进行组包,并广播发送。
2.根据权利要求1中所述的无线网络多路路由网络传输方法,其中B6和B9所述的组包,包括对帧控制域的设置和负载的填充,该帧控制域的设置,是分别对中继节点信息部分进行设置和对负载信息部分进行设置;该负载的填充,是对已经编码的信息进行填充和对未编码的信息进行填充。
3.根据权利要求2中所述的无线网络多路路由网络传输方法,其中对中继节点信息部分进行设置,是在中继节点信息部分填入本中继节点在之前T到2T时间内所正确接收的信息包个数以及每个信息包的时戳和包号,其中T为根据具体网络情况而设定的确定时长。
4.根据权利要求2中所述的无线网络多路路由网络传输方法,其中对负载信息部分设置,是对已经编码的信息进行填充和对未编码的信息进行填充。
5.根据权利要求4中所述的无线网络多路路由网络传输方法,其中对已经编码的信息进行填充,是将帧控制域中的编码后未解次数标志位置0,将已经编码的包数填入本次编码所涉及的包的个数,在负载信息部分填入每个信息包的包号和目的地址。
6.根据权利要求4中所述的无线网络多路路由网络传输方法,其中对未编码的信息进行填充,是将帧控制域中的编码后未解次数标志位置0,将已经编码的包数置0,省略负载信息部分。
7.根据权利要求2中所述的无线网络多路路由网络传输方法,其中对负载的填充,是将已编码的信息包直接填充到负载;将未编码的信息包和该信息包的包号一同填充到负载。
CN200910024174A 2009-09-30 2009-09-30 无线网络多路路由网络传输方法 Expired - Fee Related CN101692740B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910024174A CN101692740B (zh) 2009-09-30 2009-09-30 无线网络多路路由网络传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910024174A CN101692740B (zh) 2009-09-30 2009-09-30 无线网络多路路由网络传输方法

Publications (2)

Publication Number Publication Date
CN101692740A true CN101692740A (zh) 2010-04-07
CN101692740B CN101692740B (zh) 2012-09-05

Family

ID=42081390

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910024174A Expired - Fee Related CN101692740B (zh) 2009-09-30 2009-09-30 无线网络多路路由网络传输方法

Country Status (1)

Country Link
CN (1) CN101692740B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103138878A (zh) * 2011-11-30 2013-06-05 华为技术有限公司 通过网络进行数据传输的方法和装置
CN103200611A (zh) * 2013-04-02 2013-07-10 南京芯传汇电子科技有限公司 一种数据融合方法及装置
CN103634083A (zh) * 2013-12-20 2014-03-12 哈尔滨工业大学 一种适用于传感器网络的动态网络编码丢包重传方法
CN103840917A (zh) * 2014-03-28 2014-06-04 北京邮电大学 一种基于网络编码的多路并行传输方案
CN104205986A (zh) * 2012-03-29 2014-12-10 奥林奇公司 传感器阵列中的数据路由
CN105493559A (zh) * 2013-09-06 2016-04-13 哈曼国际工业有限公司 无线通信中的时隙选择
CN106105097A (zh) * 2014-03-07 2016-11-09 高通股份有限公司 无线网络中基于公平性的消息传输
CN107078825A (zh) * 2014-11-10 2017-08-18 Lg 电子株式会社 在支持中继节点的无线通信系统中使用缓存存储器发送/接收数据的方法和装置
CN107294666A (zh) * 2017-06-02 2017-10-24 沈阳航空航天大学 应用于无线自组网络的广播包传输流程及功率控制方法
CN107666676A (zh) * 2017-09-14 2018-02-06 浙江工业大学 一种集能型无线中继网络最大化系统吞吐量的在线控制方法
CN108156087A (zh) * 2018-01-22 2018-06-12 南京邮电大学 一种分簇、流量分配、编码协商和数据转发方法及装置
CN108702773A (zh) * 2015-12-22 2018-10-23 诺基亚通信公司 传输尝试的分配
US10743305B2 (en) 2013-09-06 2020-08-11 Harman International Industries, Incorporated Time slot selection in wireless communication
CN112532527A (zh) * 2020-12-07 2021-03-19 清华大学 路由控制方法及人工智能处理器

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720016B2 (en) * 2005-10-28 2010-05-18 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Multi-hop routing method with bandwidth reservation in wireless network
KR100912820B1 (ko) * 2007-11-01 2009-08-18 한국전자통신연구원 무선 센서 네트워크에서의 다중 경로 라우팅 방법
CN101447925A (zh) * 2008-12-17 2009-06-03 中兴通讯股份有限公司 一种发送多路数据包的方法及系统

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103138878A (zh) * 2011-11-30 2013-06-05 华为技术有限公司 通过网络进行数据传输的方法和装置
CN104205986B (zh) * 2012-03-29 2019-04-05 奥林奇公司 数据路由方法、构成网络节点的设备及包含该设备的系统
CN104205986A (zh) * 2012-03-29 2014-12-10 奥林奇公司 传感器阵列中的数据路由
CN103200611B (zh) * 2013-04-02 2017-07-28 南京芯传汇电子科技有限公司 一种数据融合方法及装置
CN103200611A (zh) * 2013-04-02 2013-07-10 南京芯传汇电子科技有限公司 一种数据融合方法及装置
CN105493559B (zh) * 2013-09-06 2019-07-09 哈曼国际工业有限公司 无线通信中的时隙选择方法及系统
US10743305B2 (en) 2013-09-06 2020-08-11 Harman International Industries, Incorporated Time slot selection in wireless communication
CN105493559A (zh) * 2013-09-06 2016-04-13 哈曼国际工业有限公司 无线通信中的时隙选择
CN103634083A (zh) * 2013-12-20 2014-03-12 哈尔滨工业大学 一种适用于传感器网络的动态网络编码丢包重传方法
CN106105097A (zh) * 2014-03-07 2016-11-09 高通股份有限公司 无线网络中基于公平性的消息传输
CN103840917A (zh) * 2014-03-28 2014-06-04 北京邮电大学 一种基于网络编码的多路并行传输方案
CN103840917B (zh) * 2014-03-28 2017-04-26 北京邮电大学 一种基于网络编码的多路并行传输方案
CN107078825A (zh) * 2014-11-10 2017-08-18 Lg 电子株式会社 在支持中继节点的无线通信系统中使用缓存存储器发送/接收数据的方法和装置
US10652149B2 (en) 2014-11-10 2020-05-12 Lg Electronics Inc. Method and device for transmitting/receiving data using cache memory in wireless communication system supporting relay node
CN108702773A (zh) * 2015-12-22 2018-10-23 诺基亚通信公司 传输尝试的分配
CN108702773B (zh) * 2015-12-22 2021-09-17 诺基亚通信公司 传输尝试的分配
CN107294666A (zh) * 2017-06-02 2017-10-24 沈阳航空航天大学 应用于无线自组网络的广播包传输流程及功率控制方法
CN107294666B (zh) * 2017-06-02 2020-01-31 沈阳航空航天大学 应用于无线自组网络的广播包传输流程及功率控制方法
CN107666676A (zh) * 2017-09-14 2018-02-06 浙江工业大学 一种集能型无线中继网络最大化系统吞吐量的在线控制方法
CN107666676B (zh) * 2017-09-14 2021-01-01 浙江工业大学 一种集能型无线中继网络最大化系统吞吐量的在线控制方法
CN108156087A (zh) * 2018-01-22 2018-06-12 南京邮电大学 一种分簇、流量分配、编码协商和数据转发方法及装置
CN108156087B (zh) * 2018-01-22 2021-04-27 南京邮电大学 一种分簇、流量分配、编码协商和数据转发方法及装置
CN112532527A (zh) * 2020-12-07 2021-03-19 清华大学 路由控制方法及人工智能处理器

Also Published As

Publication number Publication date
CN101692740B (zh) 2012-09-05

Similar Documents

Publication Publication Date Title
CN101692740B (zh) 无线网络多路路由网络传输方法
CN101878612B (zh) 用于数据网络中的数据传输的方法和系统
TWI248735B (en) Mobile ad-hoc network (MANET) including forward error correction (FEC), interleaving, and multi-route communication features and related methods
CN106254202A (zh) 一种基于喷泉码的多路并行传输方法以及装置
CN103051424B (zh) 一种不等错误保护喷泉码的无线传输方法
CN102170332A (zh) 基于喷泉码和网络编码的机会路由协议数据分发方法
CN102111820B (zh) 无线网络实现传输控制协议感知网络编码调度控制的方法
CN101483934A (zh) 具有拓扑感知能力的分段自适应多路径路由机制
CN102684818A (zh) 数据重传方法、中继站、基站和通信系统
CN102208962B (zh) 无线数据传输方法
CN108449161A (zh) 一种中继协作无线网络中基于网络编码的重传方法
Scalia et al. PiggyCode: a MAC layer network coding scheme to improve TCP performance over wireless networks
CN113055285A (zh) 基于mptcp与网络编码的自适应数据传输方法
Su et al. ORIT: A transport layer protocol design for underwater DTN sensor networks
CN107249203A (zh) 一种基于喷泉码的车联网远距离数据通信中继代理方法
CN103037436A (zh) 一种基于HWMP的网络编码感知无线Mesh路由协议
CN105721119B (zh) 基于机会式网络编码搜寻最优关联包的重传方法
US8571130B2 (en) Transmitting apparatus and transmission method
CN114630369B (zh) 一种接入网数据传输方法、系统、介质、设备及终端
CN102844997A (zh) 用于双向中继系统的通信方法和装置及系统
Lu et al. Increasing the throughput of wireless LANs via cooperative retransmission
CN102394733B (zh) 双基站单中继多用户的基于网络编码的数据包重传方法
JPH08251146A (ja) データ伝送制御システム
US11546100B2 (en) Operation of automatic repeat request
CN110381561B (zh) 一种缓存辅助的多中继传输系统中基于能效的安全传输方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120905

Termination date: 20180930

CF01 Termination of patent right due to non-payment of annual fee