CN105187326B - 一种两跳无线网络拓扑结构中的网络编码侦听管理方法 - Google Patents

一种两跳无线网络拓扑结构中的网络编码侦听管理方法 Download PDF

Info

Publication number
CN105187326B
CN105187326B CN201510526286.1A CN201510526286A CN105187326B CN 105187326 B CN105187326 B CN 105187326B CN 201510526286 A CN201510526286 A CN 201510526286A CN 105187326 B CN105187326 B CN 105187326B
Authority
CN
China
Prior art keywords
data packet
coding
node
data packets
stream
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.)
Active
Application number
CN201510526286.1A
Other languages
English (en)
Other versions
CN105187326A (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.)
Hunan University
Original Assignee
Hunan 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 Hunan University filed Critical Hunan University
Priority to CN201510526286.1A priority Critical patent/CN105187326B/zh
Publication of CN105187326A publication Critical patent/CN105187326A/zh
Application granted granted Critical
Publication of CN105187326B publication Critical patent/CN105187326B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种两跳无线网络拓扑结构中的网络编码侦听管理方法,首先,编码节点接收来自不同源节点的数据包,并通过获取目的节点中侦听缓存内数据包信息,将编码队列内来自不同源节点的数据包进行组群异或编码;其次,目的节点根据侦听缓存内数据包,对收到的编码节点数据包进行逐级异或解码,获得对应源节点发送的数据包;最后,目的节点清空侦听缓存中用于组群解码的数据包,将新侦听的数据包置于空闲缓存内。理论分析和仿真实验表明,本发明方法比现有的其它侦听策略具有更高的吞吐量和更低的网络时延,并且,该方案具有很强的自适应性、可扩展性和安全性。

Description

一种两跳无线网络拓扑结构中的网络编码侦听管理方法
技术领域
本发明涉及无线网络中网络编码侦听管理技术,特别是在两跳无线网络拓扑结构中的网络编码侦听管理方法。
背景技术
网络编码是由香港中文大学李硕彦、杨伟豪等教授于2000年左右提出的,该方法被证明能提高网络吞吐量、减少网络拥塞、平衡网络负载和减少网络时延,受到学术界和工业界的广泛认同。随后,许多研究者在他们的基础上对网络编码进行了不同层面和不同方向的深入研究。从数据流的角度来分,网络编码分为流内网络编码和流间网络编码;从节点输入输出关系来分,主要分为线性网络编码和非线性网络编码;从网络拓扑结构是否确定来分,它由确定性网络编码和随机网络编码组成;从它的应用研究来分,主要有分布式存储系统中的研究以及安全性研究等等。
在无线网络中,由于链路质量差,容易丢包,从而影响了网络吞吐量、安全性和系统时延。无线侦听是基于无线网络链路的广播特性而产生的,目的节点只要处于数据发送节点的广播范围之内就能获得该节点发送的数据包,结合网络编码理论在网络吞吐量、安全性和时延方面的优点,有学者提出了基于无线信道侦听的网络编码策略,并在实验环境中证明了该理论能进一步提升网络编码在无线网络中的网络性能,如降低时延,提高网络吞吐量和增强安全性。因此,网络编码侦听管理策略研究成为网络编码在无线网络研究中的热点,越来越多的研究者着力于如何提高无线网络编码侦听策略的网络性能和安全性。
其中,Katti等人提出的基于流间网络编码的COPE协议最具代表性,它是采用轻量级的异或操作实现两跳范围内的网络编码操作,并通过机会侦听,提高了网络吞吐量。在COPE的基础上,Chachulski等人提出了MORE协议,利用网络编码解决机会路由中的中间节点数据发送协助问题,通过向多个协助节点发送数据包,将网络编码从简单的两跳扩展到多跳,从而提高了网络吞吐量。Le等人和Omiwade等人详细讨论了多跳网络编码,允许中间节点转发编码数据包。文献提出了基于数据包级别网络层之上的编码操作协议,但依然存在一些使得这些协议到实际应用的复杂性问题,因此,对无线网络编码的实际部署应用带来了很大的困难。Li等人提出了一种节点位置随机的无线网络编码方法,该方法揭示了随机网络环境下只有少数几个节点获得大量编码机会。而P.Mannersalo等人从编码性能的角度,提出了一种减少中间编码节点数量以提升网络性能的方法。Georgios等人从无线信道侦听角度,提出了单跳模型下的网络编码侦听方法,目的节点通过向编码节点发送已侦听数据包报告和采用NACK机制,实现网络吞吐量增益。Wang等人提出了尽力服务和基于历史信息的网络编码侦听策略,在侦听缓存容量小于流虚拟队列时,尽力服务策略采用保证已侦听数据包用于解码操作的前提下,实现数据包的无线侦听管理;而基于历史信息的策略则是根据侦听缓存中不同流对目的节点的解码贡献率大小实现无线网络数据包侦听管理。
无线网络侦听是基于无线网络广播特性而实现的,在“X”型网络拓扑结构中,如图1所示。在该网络拓扑结构下,存在两条数据流流A和流B,对应为 SA→DA和SB→DB,SA和SB表示两个源节点,DA和DB表示两个目的节点。P表示源节点SA经过中继节点R发送至目的节点DA的数据包,Q表示源节点SB经过中继节点R 发送至目的节点DB的数据包。左右两个带点的箭头表示目的节点DB、DA能分别侦听到源节点SA、SB发送至中继节点R的数据包。
现有的网络编码侦听策略要么是采用不同流数据包的两两异或编码,要么是笼统地将流间所有数据包进行组合编码;同时缺少对编码方案的安全性分析和论证,尤其当网络拓扑结构发生变化后,现有的网络编码侦听策略并不具备很好的适应性。
对于两两异或编码方式,由于编码节点每次只是对两个不同流的数据包进行编码,因此,每次编码解码的数据量很小,需要多次进行编解码操作。特别当侦听缓存出现空闲时,目的节点需要多次向对应的源节点请求数据包,造成链路利用率下降和网络时延的增加;采用流间所有数据包组合编码方式很容易造成目的节点的解码困难,目的节点往往需要等待编码节点传输足够的数据包后才能得到解码,造成目的节点解码率下降并使得网络时延增加;对于编码性能的分析,现有的方法并不具备很好的安全性,这主要是由其编码方式过于简单造成的,而且缺少系统的安全性论证和分析。更加受制约的是,现有方法都是针对特定的网络拓扑结构进行研究,当网络拓扑结构动态变化的时候,现有的方法并不能很好地适应,一定程度上局限了其研究方法的适用范围。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种两跳无线网络拓扑结构中的网络编码侦听管理方法。
为解决上述技术问题,本发明所采用的技术方案是:一种两跳无线网络拓扑结构中的网络编码侦听管理方法,包括以下步骤:
1)初始化:目的节点清理侦听缓存并启动侦听进程,源节点启动发送数据包进程,中间节点开启接收数据包进程;
2)编码节点接收不同信息流传输的数据包,根据数据包所属的数据流缓存到不同的流虚拟队列中;同时编码节点向目的节点请求侦听缓存中对应的数据包ID报告,以便于下一阶段的数据包分组和编码;
3)编码节点根据收到的侦听缓存中的数据包ID,结合虚拟队列中存在的不同流的数据包,选取数据包数量最少的流对应的数据包集合作为基础数据包集,并将基础数据包集和不同流的数据包进行组群异或编码,得到不同流的数据包和基础数据包集进行组群异或编码后的数据包,即编码数据包;
4)目的节点接收编码节点发送的编码数据包,获取编码数据包中所包含的原始数据包信息,从侦听缓存中选取存在于编码数据包内的原始数据包,对编码数据包进行组群解码,获得对应源节点发送的原始数据包;
5)侦听缓存空闲后,处于源节点广播范围内的目的节点根据侦听缓存中的丢弃数据包记录,向对应的源节点发送获取原始数据包请求,并将侦听到的原始数据包添加到侦听缓存内,当目的节点侦听缓存内的原始数据包用于组群解码后,目的节点清空用于解码的原始数据包,并将新侦听到的原始数据包添加到侦听缓存中。
对不同流的数据包进行组群异或编码的方法包括以下步骤:
1)中继节点接收来自不同流i的数据包,并统计来自不同流的数据包的数量,比较不同流之间数据包数量的大小,得出最小流数据包数量Min,再用其它流数据包数量与Min分别进行除运算和取模运算,得出其它流数据包数量对Min的倍数Cn和余数Ren,倍数Cn决定流n对流i的组群编码次数,而余数Ren决定流n对流i最后一次参与编码的数据包的数目;i=1,2;n=1,2;i≠n;
2)中继节点在流n中选取Min个数据包,将Min个数据包与流 i中的对应序列的数据包进行组对群异或操作,得到新的数据包Pn,Min,将数据包Pn,Min与流n和流i两条流中对应的队首数据包进行异或编码,得到Pn,Min-1,再将Pn,Min-1与流n和流i中队首下一位置的数据包进行异或编码,得到Pn,Min-2,依此递推,最后得到Pn,1
3)中继节点选择来自流i中前Ren个数据包和流n中剩余的数据包进行组群异或编码,采用和步骤2)中同样的方法递推,得到对应的数据包
4)中继节点将步骤2)和步骤3)中经异或编码形成的数据包多播给目的节点。
对编码数据包进行组群解码的方法包括以下步骤:
1)目的节点接收从中继节点多播的编码数据包并判断该编码数据包的是由哪些原始数据包经组群编码而成;
2)目的节点根据接收的编码数据包的ID信息,选取存在于侦听缓存内对应的原始数据包,并将收到的来自编码节点的编码数据包与选取的数据包进行异或运算,得到源节点发送过来的原始数据包的异或组合和对应的原始数据包ID;依此方法,目的节点得到不同流的源节点发送过来的以1为公差数量的原始数据包异或组合;
3)目的节点根据得到的一系列源节点原始数据包异或组合,根据对应异或组合原始数据包的数量,依次进行异或解码操作,得到对应的源节点发送的单个原始数据包;
4)目的节点清空已用于群组解码的侦听缓存内的原始数据包,并进入下一轮侦听。
对于新侦听到的原始数据包,若侦听缓存空闲,目的节点将新侦听的原始数据包加入侦听缓存;若侦听缓存满,则目的节点对新侦听的原始数据包进行丢弃处理,同时记录丢弃的原始数据包ID,便于在侦听缓存出现空闲时向对应源节点重获丢弃的原始数据包。
与现有技术相比,本发明所具有的有益效果为:本发明的方法能在保证公平性前提下最大化网络吞吐量和降低网络时延,具有较强的容错性、适应性和安全性。吞吐量方面,在单流网络结构中,本发明比通用的不采用编码的方法的吞吐量平均提升16%;在“X”型拓扑结构中,本发明方法比其他三种方法的吞吐量分别最大提高20%、18%和16.5%;而在“车轮”型拓扑结构中,本发明的方法比其它三种方法的吞吐量分别提升18%、16.3%和15.6%。网络时延方面,在“X”型网络拓扑结构下,本发明比其它三种方法的吞吐量分别提升25%、21.3%和19.2%;而在“车轮”型网络结构下,实验得出:当网络流的数量为4的时候,本发明的网络时延最少。
附图说明
图1基于组群异或编码侦听管理基础网络拓扑图;
图2(a)是编码节点组群异或编码方法流程示意图;图2(b)是目的节点组群异或编码方法流程示意图;
图3是单流网络模型示意图;
图4是单流网络结构中组群编码示意图;
图5是多流网络模型示意图;
图6是流虚拟队列中数据包示意图;
图7是编码队列中编码数据包构成示意图;
图8是不同策略下吞吐量与虚拟流大小关系示意图;
图9(a) 和图 9(b) 是“X”和“车轮”型网络拓扑结构下不同方法吞吐量对比示意图;
图10是“X”型拓扑结构下不同方法时延对比示意图;
图11是“车轮”型拓扑结构下本发明方法在不同数量流下的时延关系图。
具体实施方式
如图2(a)和图2(b)所示,本发明的方法包括如下五个阶段:
1、初始化
初始化主要包括目的节点清理侦听缓存并启动侦听进程、源节点启动发送数据包进程和中间节点开启接收数据包进程等三个部分。
2、获取数据包信息阶段
编码节点接收不同信息流传输的数据包,根据数据包所属的数据流缓存到流虚拟队列中;同时向目的节点请求侦听缓存中对应的数据包ID报告,以便于下一阶段的包分组和编码。
3、包分流和组群编码阶段
编码节点根据收到的侦听缓存内数据包ID,结合虚拟队列中存在的不同流的数据包,选取基础数据包集,并按照流程1对不同流的数据包进行组群异或编码。该阶段详细过程见流程1。
4、解码和包重装阶段
目的节点接收编码节点发送的编码数据包,获取编码包中所包含的原始数据包信息,从侦听缓存中选取存在于编码包内的原始数据包,按照流程2 对编码数据包进行组群解码,获得对应源节点发送的原始数据包。详细过程见流程2。
5、侦听缓存管理阶段
侦听缓存初始化后,处于源节点广播范围内的目的节点就会将侦听到的数据包添加到侦听缓存内,当目的节点侦听缓存内的数据包用于组群解码后,目的节点清空用于解码的数据包;并将新侦听到的数据包添加到侦听缓存中,从而提高了侦听缓存的利用率,便于更多的数据包参与编码和解码操作。详细见流程3。
流程1:数据包分流和组群编码
流程1描述:
1)中继节点接收来自不同流i(i=1,2)的数据包,并统计来自不同流的数据包的数量,比较不同流之间数据包数量的大小,得出最小流数据包数量Min,再用其它流数据包数量去除和模Min,得出各自对Min的倍数Cn和余数Ren,倍数Cn决定流n对流i的组群编码次数,而余数Ren则决定流n对流i最后一次参与编码的数据包的数目;
2)中继节点在流n中选取Min个数据包和流i中的对应序列的数据包进行组对群异或操作,得到新的数据包Pn,Min(表示该数据包是由流n和流i各Min 个数据包的异或),将数据包Pn,Min与流n和流i中对应的队首数据包进行异或操作,得到Pn,Min-1,再将Pn,Min-1与流n和流i中对应下一位置的数据包进行异或操作,得到Pn,Min-2,依此递推,最后得到Pn,1
3)中继节点进行上述操作的次数取决于流n对应的倍数Cn
4)对于流n中余下的数据包,中继节点将选择来自流i中前Ren个数据包和流n中剩余的数据包进行群异或操作,采用和步骤2中同样的方法递推,得到对应的数据包
5)中继节点将编码后的数据包多播给目的节点。
流程2:数据包组群解码
流程2描述:
1)、节点接收从中继节点多播的数据包并判断该数据包的是由哪些原始包经组群编码而成;
2)、节点根据接收数据包ID信息,选取存在于侦听缓存内对应的数据包,并将收到的数据包与选取的数据包进行异或运算,得到源节点发送过来的数据包的异或组合和对应的数据包ID;依此方法,目的节点得到所属流的源节点发送过来的以1为公差数量的数据包异或组合;
3)、节点根据得到的一系列源节点数据包异或组合,根据对应异或组合数据包的数量,依次进行异或解码操作,得到对应的源节点发送的单个数据包;
4)、节点清空已用于群组解码的侦听缓存内的数据包,并进入下一轮侦听。
流程3:侦听管理策略
流程3描述:
1)目的节点接收从编码节点发送的数据包,并根据编码数据包所包含的原始数据包信息,从侦听缓存中选取对应的数据包进行组群解码;同时删除侦听缓存中已用于解码的多个数据包,以提高侦听缓存的利用率。
2)目的节点根据侦听缓存中的丢弃数据包记录,向对应的源节点发送获取数据包请求并将获得的数据包加入侦听缓存内,解决了侦听到的数据包不会因为侦听缓存空间不足而无法进入侦听缓存的问题;
3)对于新侦听到新的数据包时,若侦听缓存存在空闲,目的节点则将新侦听的数据包加入侦听缓存;若侦听缓存满,目的节点则对新侦听的数据包进行丢弃处理,同时记录丢弃数据包ID。
本发明提出的组群异或编码自适应侦听策略是基于“X”型拓扑结构进行研究的,当拓扑结构发生变化时,该策略是否具有普适性。特别地,当“X”型网络结构中有一数据流不传输数据包时,该模型就演化为单源单目的节点且单向的“Alice-Bob”通信模型;当有其它更多的源节点和目的节点动态加入“X”型网络结构后,该网络结构进化为“车轮”模型。两种演化模型对应如下,见图3和图4所示。
单流模型。当流的数量Flow_num=1时,即该网络拓扑结构中只存在一条流时,“X”型网络结构演变成如图3所示单向“Alice-Bob”网络模型。
此时,组群编码演化为流内组群编码,即编码节点R对收到来自源节点 SA的数据包进行流内异或编码。假如源节点SA发送的数据包集合为,则中间编码节点对于收到的数据包集P,采用的编码方式如图4所示。
由于单向“Alice-Bob”模型中只存在一条流,编码节点对收到的数据包采用流内组群编码方式,编码过程如图4所示。编码节点对n个数据包逐级组群编码后,得到对应的编码后的数据包P(1),P(2),...,P(n)。对于任意一个编码后的数据包P(i),i=(1,2,3,...,n),它所对应的原始包信息(如原始数据包ID)是被隐藏包含在P(i)中的。当目的节点Bob收到数据包P(1), P(2),...,P(n)后,即可根据组群编码规则逐级解码,最后得到原始数据包P1,P2,...,Pn
经过流内组群编码后,编码节点可以实现对源节点发送的数据包进行信息隐藏,从一定程度上实现对网络中关键节点的防窃听保护,从而保护关键节点数据传输安全。与不经过编码的信息传输方式相比,流内组群编码方式是通过增加编码节点处的组群异或操作来实现编码节点的信息传输安全性。
多流模型。当更多的节点加入“X”型网络进行相互通信时,即网络中流的数量大于2时(Flow_num>2),网络结构演变成“车轮”模型,如图5所示。
在该网络模型中,所有节点处在以中继节点R为圆心的圆弧上,圆弧上的任一节点能侦听到除了圆周上与它处于直径位置的节点外的所有节点。若圆周上的节点数量为m,则任一节点能侦听到其它m-2个节点所发送的数据包,加上自身发送的数据包,圆周上的所有节点缓存中有m-1个节点对应的数据包,而中继节点R能接收到圆周上所有节点发送的数据包。假如m个节点通过中继节点发送一个数据包给圆周对称位置的目的节点,则中继节点将收到的m个数据包进行编码后广播给所有节点,任一节点只需将收到的编码数据包和缓存中的m-1个数据包集进行解码,即可得到对应的直径位置节点发送的数据。
当采用组群异或方式进行编码时,假如有n条流,则对应圆周上有n个节点。编码节点R对收到的来自所有节点的数据包进行分类,分别保存在对应的缓存区,如图6所示。再从n个缓存区内选取数据包数量最少的流作为基础流,该缓存区内的数据包作为基础数据包集并假设该集合大小为L。编码节点以基础数据包集为基准与缓存内的其它流数据包以组群异或方式进行编码,如图7所示。至于每条流对基础流求模后剩余的数据包,编码节点将其与基础数据包集中等数量的数据包进行组群编码。
约束条件
i.流守恒约束
每个节点都必须满足流守恒约束,即对于每一条流的中间节点流出的流速率等于流入的流速率。每条流的源节点流出的流速率是该流的吞吐量,目的节点流入的流速率是该流的吞吐量,方向相反。
其中,rk(u,v)表示第k条流在链路(u,v)上的流速率,λk,sk,dk分别表示第k条流的吞吐量、源节点和目的节点。
进一步,只有当链路参与流的传输,链路上的流速率才不为0;否则,链路的流速率一定为0。这一约束可用式(2)表达:
ii.编码约束
本发明中,节点的转发速率不受转发顺序的影响,只受对应链路的链路质量约束。因此链路的实际数据流速率必然小于发送节点的平均广播速率和链路包投递率之积,即满足下式中的直接网络编码模型。
其中,p(u,v)表示链路(u,v)的包投递率。虽然这一约束不是很严格,但也能近似描述一个实际无线网的行为。虽然还存在更精确的约束模型,但却是指数性的约束,会导致问题很难解。
iii.形式化描述
基于组群异或编码的侦听策略可以形式化描述如下:
表达式(4)表明数据流i的速率是所有数据流集合A中数据流i可达的速率之和。
表达式(5)给出了目的节点能否恢复得到原始数据包的条件,满足该条件,则目的节点能对编码数据包进行解码。
等式(6)保证了所有满足对应条件的目的节点能接收到对应的编码数据包。
等式(7)给出了所有收到编码数据包的目的节点具备足够侦听数据包用以恢复所需原始数据包的条件。
以下对本发明方法进行理论分析:
本发明方法的理论分析主要包括编码率分析和传输实验分析。
i.数据包编码率分析
在本发明中,编码节点对编码队列中不同流的数据包进行组群编码后,编码后的数据包数量具有如下特性。
引理:组群编码后形成的编码包的数量由编码队列中最多数据包的流决定。
证明:假如存在N条流,每条流对应的数据包集合为Pi(i=1,2,3…N), 第i条流中的数据包可表示为Pi,j,j=(1,2,3…Mi),Mi表示第i条流对应的数据包数量。根据组群编码的思想,编码基础数据包是由网络结构中最少数据包的流决定,因此,根据编码规则,首先求得其它流Pi与基础流Pmin之间的整除和余数关系,得到其它流数据包数量相对基础流的倍数Ci和余数Rei,其中基础流中的数据包数量为Mmin,则总共编码的轮数为Ci,其中每轮组群编码需形成的编码包数量为基础流对应的数据包数量大小,即Mmin,则Ci轮编码后得到的编码数据包为;而剩余数据包Rei经组群编码后形成Rei个数据包。因此,总共编码后形成的数据包数量Num为,
Num=Mmin×Ci+Rei (1)
从该表达式可知,由于Rei<Mmin,那么Ci越大,则编码形成的数据包数量越多,因此,Ci值最大的流对应的数据包数量也是最多的。故定理得证。
ii.安全性分析
在窃听方不知道编码规则的条件下,由于其收到的数据包是经过逐级组群编码操作形成的。因此,如果对收到的数据包采用简单的一次异或解码操作,窃听方是无法得到完整信息的。因此,在这种情形下,编码是十分安全的。
若窃听方清楚知道所窃听数据包是经过逐级组群编码形成的,但并不知道每个编码包所对应的原始包组装信息。这样,窃听方只能采用穷举法进行明文恢复,其运算量是巨大的。我们假定一定时间内发送n个信息,采用穷举法,窃听者即使在解码得到对应的原始包,但其组包过程却是非常复杂的,需要进行O(n!)轮尝试来获取明文,计算复杂度是O(n!)。表1是编码节点发送不同数量数据包时对应的阶乘大小。
表1阶乘值对照表
n 30 40 50 60 70
n! 2.65×1032 8.16×1047 3.04×1064 8.32×1081 1.19×10100
我们假定数据包数量n=40时的情况:如果窃听者每秒能对1020种组合的数据包进行准确组合猜测,那么完成对40个数据包的组合猜测的平均时间T 为:
我们通过实验说明本发明的性能。
实验分别重现了当前主流的无线侦听管理策略,如FIFO、尽力服务侦听管理策略以及基于历史信息的侦听管理策略,并将这三种方法分别与本发明进行比较。
1)实验场景
在教学实验大楼一楼部署9个节点,其中一个作为中继节点,剩余8个节点对称地分布在以中继节点为圆心的圆环直径位置上,实验遵照802.11a协议,数据传输率为6Mb/s。由于楼层其它无线网络的强干扰,要遵照802.11b 协议进行实验并不可行。
2)软件条件
每个节点安装Linux系统,本发明思想的模拟实现以常驻后台的方式进行,使用Libpcap从无线设备捕获原始802.11数据帧。系统向用户提供网络接口,方便用户像使用网络设备一样进行操作。应用与常驻任务的交互等同于Linux内核支持的标准网络设备与应用的交互。
3)硬件条件
PC终端作为网络节点,同时附装全向天线的802.11无线网卡,该卡基于 NETGEAR2.4&5GHz 802.11a/g芯片系列。
4)评价指标
吞吐量:测量到的端到端之间所有流产生的数据流量之和。
网络时延:网络结构中所有流对应从发送数据到收到数据包所需要的时间。
结果及分析
在单流模型中,网络吞吐量的大小与编码变化关系如图8所示。对于单流网络模型而言,比起通用无编码方式,本发明具有很好的网络吞吐量增益;特别当虚拟流队列达到20左右时,本发明的吞吐量达到了0.85左右,而通用方法只有0.65左右。
而在“X”型结构中,如图9(a)所示,本发明方法比其它三种方法在吞吐量方面优势最大,增益最大。
图9(b)所示的“车轮”型结构中,本发明所带来的网络吞吐量增益达到 0.9,超出其他方法至少15%。
网络时延的大小随侦听缓存大小的变化关系如图10和图11所示。图10 描述了在“X”型网络结构下,网络时延随着侦听缓存的变大而逐渐下降,但本发明带来的网络时延增益最大,这主要是由于侦听缓存越大,越多的数据包能参与到组群编码操作,从而导致单次传输数据量的增大,最后降低了网络时延。
图11则展示了在“车轮”型网络结构下,不同的网络数据流条件下,网络时延与侦听缓存大小关系。从图可以看出,在相同侦听缓存大小条件下,数据流数量越多,时延越大。当数据流数量为4,侦听缓存大小为20个单位数据包的时候,本发明的网络时延达到最少,接近65ms。
基于组群异或编码的侦听策略,编码节点根据侦听缓存内数据包的分布情况,在流虚拟队列内选取对应的基础流和基础数据包集,采用组群异或编码操作,将收到的数据包进行组群编码,并将它们以广播方式传输给目的节点;同时,侦听节点在收到编码数据包后,从侦听缓存内选择对应的原始数据包对编码包进行组群解码操作,从而获得所需的原始数据包;同时清空用于解码的数据包,并根据记录数据包适量内数据包记录确定是否需要向传输范围内的源节点请求丢弃过的数据包。
通过组群编码操作,极大地提升了单次传输数据包的信息量,同时也从很大程度上提高了数据包编码率和侦听缓存的利用率。从而提升网络吞吐量和降低网络时延。

Claims (3)

1.一种两跳无线网络拓扑结构中的网络编码侦听管理方法,其特征在于,包括以下步骤:
1)初始化:目的节点清理侦听缓存并启动侦听进程,源节点启动发送数据包进程,中间节点开启接收数据包进程;
2)编码节点接收不同信息流传输的数据包,根据数据包所属的数据流缓存到不同的流虚拟队列中;同时编码节点向目的节点请求侦听缓存中对应的数据包ID报告,以便于下一阶段的数据包分组和编码;
3)编码节点根据收到的侦听缓存中的数据包ID,结合虚拟队列中存在的不同流的数据包,选取数据包数量最少的流对应的数据包集合作为基础数据包集,并将基础数据包集和不同流的数据包进行组群异或编码,得到不同流的数据包和基础数据包集进行组群异或编码后的数据包,即编码数据包;对不同流的数据包进行组群异或编码的方法包括以下步骤:
a)中继节点接收来自不同流i的数据包,并统计来自不同流的数据包的数量,比较不同流之间数据包数量的大小,得出最小流数据包数量Min,再用其它流数据包数量与Min分别进行除运算和取模运算,得出其它流数据包数量对Min的倍数Cn和余数Ren,倍数Cn决定流n对流i的组群编码次数,而余数Ren决定流n对流i最后一次参与编码的数据包的数目;i=1,2;n=1,2;i≠n;
b)中继节点在流n中选取Min个数据包,将Min个数据包与流i中的对应序列的数据包进行组群异或操作,得到新的数据包Pn,Min,将数据包Pn,Min与流n和流i两条流中对应的队首数据包进行异或编码,得到Pn,Min-1,再将Pn,Min-1与流n和流i中队首下一位置的数据包进行异或编码,得到Pn,Min-2,依此递推,最后得到Pn,1
c)中继节点选择来自流i中前Ren个数据包和流n中剩余的数据包进行组群异或编码,采用和步骤b)中同样的方法递推,得到对应的数据包 j∈{1,2};
d)中继节点将步骤b)和步骤c)中经异或编码形成的数据包多播给目的节点;
4)目的节点接收编码节点发送的编码数据包,获取编码数据包中所包含的原始数据包信息,从侦听缓存中选取存在于编码数据包内的原始数据包,对编码数据包进行组群解码,获得对应源节点发送的原始数据包;
5)侦听缓存空闲后,处于源节点广播范围内的目的节点根据侦听缓存中的丢弃数据包记录,向对应的源节点发送获取原始数据包请求,并将侦听到的原始数据包添加到侦听缓存内,当目的节点侦听缓存内的原始数据包用于组群解码后,目的节点清空用于解码的原始数据包,并将新侦听到的原始数据包添加到侦听缓存中。
2.根据权利要求1所述的两跳无线网络拓扑结构中的网络编码侦听管理方法,其特征在于,对编码数据包进行组群解码的方法包括以下步骤:
1)目的节点接收从中继节点多播的编码数据包并判断该编码数据包是由哪些原始数据包经组群编码而成;
2)目的节点根据接收的编码数据包的ID信息,选取存在于侦听缓存内对应的原始数据包,并将收到的来自编码节点的编码数据包与选取的数据包进行异或运算,得到源节点发送过来的原始数据包的异或组合和对应的原始数据包ID;依此方法,目的节点得到不同流的源节点发送过来的以1为公差数量的原始数据包异或组合;
3)目的节点根据得到的一系列源节点原始数据包异或组合,根据对应异或组合原始数据包的数量,依次进行异或解码操作,得到对应的源节点发送的单个原始数据包;
4)目的节点清空已用于群组解码的侦听缓存内的原始数据包,并进入下一轮侦听。
3.根据权利要求2所述的两跳无线网络拓扑结构中的网络编码侦听管理方法,其特征在于,对于新侦听到的原始数据包,若侦听缓存空闲,目的节点将新侦听的原始数据包加入侦听缓存;若侦听缓存满,则目的节点对新侦听的原始数据包进行丢弃处理,同时记录丢弃的原始数据包ID,便于在侦听缓存出现空闲时向对应源节点重获丢弃的原始数据包。
CN201510526286.1A 2015-08-25 2015-08-25 一种两跳无线网络拓扑结构中的网络编码侦听管理方法 Active CN105187326B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510526286.1A CN105187326B (zh) 2015-08-25 2015-08-25 一种两跳无线网络拓扑结构中的网络编码侦听管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510526286.1A CN105187326B (zh) 2015-08-25 2015-08-25 一种两跳无线网络拓扑结构中的网络编码侦听管理方法

Publications (2)

Publication Number Publication Date
CN105187326A CN105187326A (zh) 2015-12-23
CN105187326B true CN105187326B (zh) 2018-01-05

Family

ID=54909177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510526286.1A Active CN105187326B (zh) 2015-08-25 2015-08-25 一种两跳无线网络拓扑结构中的网络编码侦听管理方法

Country Status (1)

Country Link
CN (1) CN105187326B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109257361A (zh) * 2018-10-11 2019-01-22 湖南警察学院 一种防污染攻击的安全网络编码方法
CN109922510A (zh) * 2019-03-29 2019-06-21 沈阳师范大学 一种基于数据融合的无线传感器网络路由优化方法及系统
CN110809304B (zh) * 2019-11-01 2021-08-17 北京星河亮点技术股份有限公司 一种网络中数据流报文转发方法及网络系统
CN111342936B (zh) * 2020-03-04 2022-04-22 北京星河亮点技术股份有限公司 无线骨干网的网络编码方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102299771A (zh) * 2011-09-08 2011-12-28 南京邮电大学 一种多跳-多数据流网络的网络编码控制方法
CN103220086A (zh) * 2013-04-22 2013-07-24 浙江工业大学 一种无线网络中高吞吐量网络编码方法
WO2014159616A2 (en) * 2013-03-14 2014-10-02 Aalborg Universitet Method and apparatus to enhance routing protocols in wireless mesh networks
CN104506272A (zh) * 2014-10-28 2015-04-08 湖南大学 X型无线网络拓扑结构中的网络编码侦听方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9231738B2 (en) * 2010-01-15 2016-01-05 Samsung Electronics Co., Ltd. Communication method for relay node and next node of the relay node for network coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102299771A (zh) * 2011-09-08 2011-12-28 南京邮电大学 一种多跳-多数据流网络的网络编码控制方法
WO2014159616A2 (en) * 2013-03-14 2014-10-02 Aalborg Universitet Method and apparatus to enhance routing protocols in wireless mesh networks
CN103220086A (zh) * 2013-04-22 2013-07-24 浙江工业大学 一种无线网络中高吞吐量网络编码方法
CN104506272A (zh) * 2014-10-28 2015-04-08 湖南大学 X型无线网络拓扑结构中的网络编码侦听方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Wireless network coding with partial overhearing information;Georgios S. Paschos,et al.;《2013 Proceedings IEEE INFOCOM》;20131231;全文 *
XORs in the Air: Practical Wireless Network Coding;Sachin Katti,et al.;《IEEE/ACM TRANSACTIONS ON NETWORKING》;20080630;第16卷(第3期);全文 *

Also Published As

Publication number Publication date
CN105187326A (zh) 2015-12-23

Similar Documents

Publication Publication Date Title
Park et al. Codecast: a network-coding-based ad hoc multicast protocol
Lin et al. CodeOR: Opportunistic routing in wireless mesh networks with segmented network coding
Zhao et al. On analyzing and improving COPE performance
Bruno et al. Survey on diversity-based routing in wireless mesh networks: Challenges and solutions
CN105187326B (zh) 一种两跳无线网络拓扑结构中的网络编码侦听管理方法
Huang et al. Just FUN: A joint fountain coding and network coding approach to loss-tolerant information spreading
Kim et al. A framework for joint network coding and transmission rate control in wireless networks
CN105163354B (zh) 一种利用成对流间网络编码机会的数据流时延保障策略
CN102970235B (zh) 无线网状网络中基于流内和流间网络编码的多播路由方法
Gómez et al. Reliable communications over wireless mesh networks with inter and intra-flow network coding
Ni et al. On the performance of expected transmission count (ETX) for wireless mesh networks
Zeng et al. Dynamic segmented network coding for reliable data dissemination in delay tolerant networks
Rohrer et al. Implementation of epidemic routing with ip convergence layer in ns-3
Wang et al. Optimal data partitioning and forwarding in opportunistic mobile networks
Ben Rhaiem et al. Information transmission based on network coding over wireless networks: a survey
Rifquddin Performance of AOMDV routing protocol under rushing and flooding attacks in MANET
Ning et al. A novel localised network coding-based overhearing strategy
Hu et al. CoAOR: An efficient network coding aware opportunistic routing mechanism for wireless mesh networks
Lauer et al. Network coding performance: An emulation experiment
Pahlavani et al. FENC: Fast and efficient opportunistic network coding in wireless networks
Zhu et al. A batched network coding scheme for wireless networks
Garrido et al. Providing reliable services over wireless networks using a low overhead random linear coding scheme
CN111447142B (zh) 基于Overlay网络和编码技术的并行多路径传输方法
Prasad et al. Local topology assisted XOR coding in wireless mesh networks
Liu et al. Improving decoding efficiency of opportunistic network coding via efficient data caching

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant