CN107396422B - 一种移动自组织网络的ccn通信方法及设备 - Google Patents
一种移动自组织网络的ccn通信方法及设备 Download PDFInfo
- Publication number
- CN107396422B CN107396422B CN201710587007.1A CN201710587007A CN107396422B CN 107396422 B CN107396422 B CN 107396422B CN 201710587007 A CN201710587007 A CN 201710587007A CN 107396422 B CN107396422 B CN 107396422B
- Authority
- CN
- China
- Prior art keywords
- node
- energy
- data packet
- hop
- packet
- 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.)
- Expired - Fee Related
Links
- 238000004891 communication Methods 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 claims abstract description 83
- 230000007246 mechanism Effects 0.000 claims abstract description 44
- 230000005540 biological transmission Effects 0.000 claims abstract description 32
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 6
- 238000005265 energy consumption Methods 0.000 abstract description 17
- 238000010586 diagram Methods 0.000 description 9
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/04—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
- H04W40/10—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on available power or energy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/20—Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/248—Connectivity information update
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种移动自组织网络的CCN通信方法及设备。所述方法包括:基于Interest包和Data包的内容中的距离和能量信息,在内容发现机制中采用基于距离和能量的PIT表更新方法,在内容传送机制中采用基于距离和能量的FIB表更新方法,选择路径权值最大的路径传输所述Interest包和Data包。本发明综合考虑能量和距离两个参数,采用基于距离和能量的PIT表更新方法和基于距离和能量的FIB表更新方法,其中引入路径权值,在内容发现机制择路径权值最大的路径传输Interest包,在内容传送机制中择路径权值最大的路径传输Data包,可以有效的降低能量消耗,平衡网络能耗分布。
Description
技术领域
本发明涉及通信技术领域,更具体地,涉及一种移动自组织网络的CCN通信方法及设备。
背景技术
目前,移动自组织网络(Mobile Ad hoc Network,MANET)的接入与信息传输都是基于IP协议,采用主机到主机的信息传输模式。由于 MANET中节点的移动性,导致基于IP协议的端到端传输在路由查询、路由信息维护等方面的开销很大,严重影响网络的网络容量和时延性能。近来提出的内容中心网络(Content Centric Network,CCN)用内容名称(content name)代替IP地址,是一种颠覆性的网络架构,已经被证明更能适应MANET网络的开放传输、移动拓扑、链路状态不稳定等特点。
CCN采用请求-发送的通信模型,当用户需要某种数据时,需要向外广播请求包(称为Interest),包中包含了请求数据的名称。接收到 Interest的网络节点,若存储了请求内容,则向请求者返回数据包(称为Data),否则,继续向外广播请求,直到发现请求内容,或者请求包到期。在CCN中,请求数据包的节点称为consumer,提供数据包的节点称为provider。CCN架构最初针对有线网络提出,网络节点能量充足、传输链路稳定,但是MANET通常由可移动的手机、笔记本、传感节点等能量受限的终端设备组成,且无线链路冲突严重,因此CCN在MANET中应用因为广播冲突重发以及大量节点重复广播面临严重的能耗问题,节能是CCN实现在MANET应用需解决的一个关键问题。
当前,针对CCN节能设计有两个方向。一个方向是通过减少不必要的通信实现,主要是通过退避方式降低无线介质冲突,基本原理就是节点在发送包之前,先等待一个随机时间,并在等待过程中对传输信道进行侦听,如果侦听到相同内容的包,则取消发送。在一些现有技术中实现了这样的退避方式,能够有效减少Interest和Data在网络中的传播,从而降低重发能耗和广播能耗,但是这种方式并未直接考虑节点的剩余能量,数据传输很容易集中在最短路径和度数高的节点,造成这些节点能量快速消耗,成为影响网络寿命的短板。
另一个方向是基于概率选择发送数据包。例如采用广播Interest包,单播Data包的方式,以降低无线信道冲突,并在节点能量低于预置门限后,对Interest采取转发概率策略,降低节点能耗;转发概率基于剩余能量和节点度进行计算。该方向的策略往往需要一定的通信开销进行网络状态信息的收集来支撑概率计算,例如转发概率就需要节点之间频繁通信以获得节点度的信息,因此此类策略会在控制层面引入复杂设计,增大处理开销。
因此,亟需一种有效的方法降低能量消耗,同时根据网络中节点的剩余能量来平衡网络能耗分布。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的移动自组织网络的CCN通信方法及设备。
根据本发明的一个方面,提供一种移动自组织网络的CCN通信方法,包括:
基于Interest包和Data包中的距离和能量信息,在内容发现机制中采用基于距离和能量的PIT表更新方法,在内容传送机制中采用基于距离和能量的FIB表更新方法,选择路径权值最大的路径传输所述 Interest包和Data包。
根据本发明的一个方面,还提供一种移动自组织网络的CCN通信设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行本发明实施例所述移动自组织网络的CCN 通信方法及其所有可选实施例的方法。
根据本发明的一个方面,还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行本发明实施例所述移动自组织网络的CCN通信方法及其所有可选实施例的方法。
本发明提出一种移动自组织网络的CCN通信方法及设备,在进行单播或者多播路径选择时,综合考虑能量和距离两个参数,采用基于距离和能量的PIT表更新方法和基于距离和能量的FIB表更新方法,其中引入路径权值,在内容发现机制择路径权值最大的路径传输 Interest包,在内容传送机制中择路径权值最大的路径传输Data包,可以有效的降低能量消耗,平衡网络能耗分布,适用于网络拓扑结构稳定的MANET网络。
附图说明
图1为本发明实施例CCN协议栈示意图;
图2为本发明实施例Interest包数据结构(a)和Data包数据结构 (b)示意图;
图3为本发明实施例PIT表数据结构示意图;
图4为本发明实施例FIB表数据结构示意图;
图5为本发明实施例所述内容发现机制Interest包处理流程示意图;
图6为本发明实施例所述内容发现机制退避侦听多播机制示意图;
图7为本发明实施例所述内容传送机制Data包处理流程示意图;
图8为本发明实施例一种移动自组织网络的CCN通信设备的结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
标准的CCN通信架构最早由VAN Jacobson针对有线网络提出,其协议栈的媒体访问控制层服从以太网协议,通用标准为802.3,采用 CSMA/CD机制进行冲突避免,而在无线网络中,CCN的媒体访问控制层使用无线局域网媒体访问控制协议,通用标准为802.11,采用 CSMA/CA来协调媒体访问,减少冲突,如图1所示。
在CSMA/CA机制中,在发送端在向外发送数据包之前,首先要计算一随机时间进行退避,在退避时间内同时对传输信道进行载波侦听,如果侦听到其他数据包,则根据侦听情况延长退避时间,只有当退避时间结束,且侦听到信道空闲时才会发出数据包。节能CCN架构在进行内容发现和内容传送时即利用CSMA/CA的退避侦听机制,来减少Interest/Data包的发送。
在CCN层,包含Interest和Data两种类型的数据包,其中Interest 由内容请求者发送,用于内容发现,其包结构如图2(a)所示;Data 包由内容的提供者发送,用于内容传输,其结构如图2(b)所示。
本发明实施例面向拓扑结构相对稳定的MANET,设计CCN通信机制,减少CCN在MANET应用时造成的节点能耗过大的问题和能耗分布不平衡问题,为此,本发明实施例提供一种移动自组织网络的CCN 通信方法,包括:
基于Interest包和Data包中的距离和能量信息,在内容发现机制中采用基于距离和能量的PIT表更新方法,在内容传送机制中采用基于距离和能量的FIB表更新方法,选择路径权值最大的路径传输所述 Interest包和Data包。
本发明实施例在进行单播或者多播路径选择时,综合考虑能量和距离两个参数,采用基于距离和能量的PIT表更新方法和基于距离和能量的FIB表更新方法,其中引入路径权值,在内容发现机制择路径权值最大的路径传输Interest包,在内容传送机制中择路径权值最大的路径传输Data包,可以有效的降低能量消耗,平衡网络能耗分布,适用于网络拓扑结构稳定的MANET网络。
本发明实施例是一种节能的CCN通信架构,其设计的基本原理是尽量利用PIT表和FIB表的信息,实现对Interest和Data包的单播或者多播,避免包的大范围广播,以适应MANET的无线信道广播特性,减少传输冲突。在进行单播或者多播路径选择时,综合考虑能量和距离两个参数,引入路径权重W,其计算方法如公式(1)所示,选择W 值大的路径进行Interest或Data的传输。由于使用单播或者多播策略对网络拓扑的稳定性要求较高,所以该策略适用于网络拓扑结构稳定的MANET网络。
式中,a∈(0,1),是加权常数,根据网络的能量受限程度和业务的实时性要求进行设置,a的值越大,表示网络能量首先越严重,a的值越小,表示网络的实时性要求越高。Energy代表节点的相对剩余能量,最大值为1,MinEnergy为路径中所有组成节点中的最低剩余能量,根据木桶理论,该能量体现了路径的剩余寿命。Hop表示跳数或距离。
本发明实施例围绕上述方案,对标准CCN通信架构进行了调整,下面分别从协议结构、内容发现机制、内容传送机制三个方面进行介绍。
在一个可选的实施例中,所述移动自组织网络的CCN通信方法之前还包括:
在Interest包的内容中添加节点标识NodeID,下一跳节点标识
NextNodeID、跳数Hop和最小剩余能量MinEnergy信息;在Data包的内容中添加节点标识NodeID,下一跳节点标识NextNodeID、跳数Hop、最小剩余能量MinEnergy和距离Distance信息,如图2所示,其中加粗的属性为本发明实施例新增的;其中,
所述节点标识NodeID,用于记录Interest包或Data包的发送节点的地址;
所述下一跳节点标识NextNodeID,用于标识下一跳的节点ID,所述下一跳包括一个节点或多个节点;
所述跳数Hop,用于标识Interest包或Data包被转发的跳数,初始值为1;
所述最小剩余能量MinEnergy,用于记录Interest包或Data包在转发过程中经过的剩余能量最少的节点的剩余能量;
所述距离Distance,用于标识Data包的源节点到目的节点的距离。
本发明实施例在Van Jacobson最初提出的CCN架构基础上进行了修改,旨在减少CCN框架下的数据包广播冲突和广播开销,使其能够更好地应用于能量受限MANET环境。
本发明实施例首先进行了数据结构的修改,即修改了Interest包和 Data包的数据结构,使其携带距离、能量、下一跳节点等路径相关信息,如图2中加粗的属性;在此基础上修改PIT表和FIB表,提出基于距离和能量的更新方法,限制引导Interest和Data的发送,使网络能耗分布达到平衡。
图2中的加粗字体显示的属性为本发明实施例节能CCN架构中的添加项,其中,NodeID用来记录包发送者的地址,通常用节点的MAC 地址来表示;NextNode用来标识下一跳的节点ID,可以只有一个节点,也可以包含多个节点,当NextNode=0时,代表当前包为广播包;Hop 表示包被转发的跳数,初始值为1;MinEnergy记录包在转发过程中经过的剩余能量最少的节点的剩余能量,该参量能够体现包的传播途径的剩余使用寿命;Distance表示Data的提供者(provider)到达请求者 (consumer)的距离。
本发明实施例也用源节点表示所述提供者(provider),用目的节点表示所述请求者(consumer)。当本发明实施例提到源节点、提供者或provider,它们的含义相同;当本发明实施例提到目的节点、请求者或consumer,它们的含义也相同。
请参考图2,本发明实施例的Interest包所携带的信息包括:Content Name、Sequence Number、Life Time、NodeID、NestNode、Hop、MinEnergy 和Options;本发明实施例的Data包所携带的信息包括:Content Name、 Life Time、NodeID、NestNode、Distance、Hop、MinEnergy、DATA和 Options;Interest包和Data包的各属性所代表的含义,除本发明实施例所定义外,均与现有的CCN网络的含义相同,此后不再赘述。
在一个可选的实施例中,所述基于距离和能量的PIT表更新方法,进一步包括:
若新到达的Interest包与PIT表中已保存的第一表项具有相同的序列号和发送节点,则根据所述Interest包的信息更新所述第一表项的相应信息;
若新到达的Interest包与PIT表中已保存的第二表项具有相同的序列号,则根据Interest包的跳数和最小剩余能量获得所述Interest包对应的路径权值WINT;若所述路径权值WINT大于所述第二表项中最小的路径权值WPIT,则根据Interest包的信息更新所述第二表项中最小的路径权值WPIT对应的表项的相应信息。
在一个可选的实施例中,所述基于距离和能量的PIT表更新方法之前还包括:
在PIT表中每个表项中添加发送节点IncomingNode、跳数Hop、最小剩余能量MinEnergy和路径权值WPIT,如图3中加粗字体所示;
其中,发送节点IncomingNode,用于记录所接收的Interest包的发送节点,与Interest包的节点标识NodeID对应;所述跳数Hop,用于记录当前节点与目的节点的距离,与Interest包的跳数Hop对应;所述最小剩余能量MinEnergy,用于记录Interest包在转发过程中经过的剩余能量最少的节点的剩余能量,与Interest包的最小剩余能量 MinEnergy对应;所述路径权值WPIT,通过PIT表表项中的跳数Hop和最小剩余能量MinEnergy计算获得,用于表示Interest包传输过程中的路径权重;
相应的,所述根据所述Interest包的信息更新所述第一表项的相应信息,包括:将所述第一表项中的跳数Hop、最小剩余能量MinEnergy 和路径权值WPIT分别更新为所述Interest包的跳数Hop、最小剩余能量 MinEnergy和路径权值WINT;
相应的,所述根据Interest包的信息更新所述第二表项中的最小 WPIT对应的表项的相应信息,包括:将所述第二表项中的最小WPIT对应的表项中的发送节点IncomingNode、跳数Hop、最小剩余能量 MinEnergy和路径权值WPIT分别更新为所述Interest包的节点标识NodeID、跳数Hop、最小剩余能量MinEnergy和路径权值WINT。
本发明实施例的CCN的通信架构中,每个节点都包本地缓存 (Caching Space,CS)、PIT表(Pending Interest Table)和FIB表 (Forwarding Interest Table)三个数据结构。CS用来缓存数据,当节点收到Data包时,可以自主决定是否缓存其中的DATA内容;PIT表用来统计记录接收到的Interest包的信息,主要记录Interest包的请求来源,为Data包的回发提供依据;FIB表用来记录当前节点可达内容的路径信息,类似于IP网络的路由表。节能CCN机制的PIT表的据结构如图3所示,加粗字体的属性为本发明实施例的添加内容。
PIT表根据接收到的Interest包的内容进行维护更新,其中, IncomingNode记录所接收Interest包的发送节点,等于Interest包中的 NodeID;Hop记录当前节点与consumer的距离,等于Interest中的Hop; MinEnergy等同于Interest中的MinEnergy;WPIT为PIT表中的Hop和 MinEnergy代入公式(1)得到的路径权重。为减少Data的广播,对应一个SequenceNumber限制存储M个表项。M值根据网络拓扑稳定状态设置,如当网络拓扑稳定时,M值设可为1;当网络拓扑变化较快时,M值可设为较大值。M个表项按照WPIT值的大小进行存储。当M 个表项已经存满,又有相同SequenceNumber的Interest到达时,超按照以下方法,即本发明实施例所述基于距离和能量的PIT表更新方法进行更新:
本发明实施例所述基于距离和能量的PIT表更新方法包括:若新到达的Interest包和PIT表包含相同的SequenceNumber和 IncomingNode,则根据Interest包中的信息更新相应表项中的Hop、 Energy、WPIT等内容;若新到达的Interest和PIT仅包含相同的SequenceNumber,则将interest中的Hop和MinEnergy代入式(1),计算结果记为WINT,然后将WINT与PIT匹配表项中的最小WPIT进行对比,若满足公式(2),则按照Interest信息进行表项更新;否则不更新。
WINT>WPIT (2)
在一个可选的实施例中,所述基于距离和能量的FIB表更新方法,进一步包括:
所新到达的Data包在FIB表中存在相匹配的第三表项,则根据所述Data包的距离和最小剩余能量获取路径权值WData;若所述路径权值 WData大于所述第三表项中最小的路径权值WFIB,则根据所述Data包的信息更新所述第三表项中最小的路径权值WFIB对应的表项的相应信息。
在一个可选的实施例中,所述基于距离和能量的FIB表更新方法之前还包括:
在FIB表的每个表项中添加下一跳节点NextNode、距离Distance、最小剩余能量MinEnergy和路径权值WFIB,如图4加粗字体所示;
其中,下一跳节点NextNode,用于记录Data包将转发的下一条节点,根据Data包的节点标识NodeID进行赋值;所述距离Distance,用于标识当前节点到达内容存储节点的跳数,与Data包的距离Distance 对应;所述最小剩余能量MinEnergy,用于标识对应的转发路径的电能寿命,与Data包的最小剩余能量MinEnergy对应;所述路径权值WFIB,通过FIB表表项中的距离Distance和最小剩余能量MinEnergy计算获得,用于表示Data包传输过程中的路径权重;
相应的,所述根据所述Data包的信息更新所述第三表项中最小的路径权值WFIB对应的表项的相应信息,包括:将所述最小的路径权值 WFIB对应的表项的下一跳节点NextNode、距离Distance、最小剩余能量MinEnergy和路径权值WFIB分别更新为所述Data包的节点标识 NodeID、跳数Hop、最小剩余能量MinEnergy和路径权值WData。
本发明实施例FIB表根据接收到的Data包的内容进行建立和维护,其中,NextNode记录想要获取当前内容可以将Interest包转发的下一跳节点的ID,根据Data包中的NodeID进行赋值;Distance表示当前节点到达内容存储节点的跳数,等于Data包中的Hop;MinEnergy体现对应转发路径的电能寿命,等于Data包中的MinEnergy;WPIT为根据公式(1)计算获得的各表项对应路径权重。在节能CCN中,FIB采用反应式建立方法,类似与AODV,即在网络首次通信时,节点的FIB 表是空的,需要在网络通信需求驱动下逐步建立。为了节约Interest的广播开销,和PIT一样,限制FIB中相同内容的转发表项数量不超过 N。各表项按照WPIT大小进行排列。当网络拓扑稳定时,N可以设为1,并按照以下方法,即本发明实施例所述基于距离和能量的FIB表更新方法对FIB表进行更新。
本发明实施例所述基于距离和能量的FIB表更新方法,包括:若收到的Data包的Name Prefix在FIB中存在匹配表项,将Data包中的 Distance(对应公式中的Hop)和MinEnergy代入公式(1),计算结果记为WData;与PIT表的更新方法类似,将WData与FIB表中匹配表项中的最小WFIB进行比较,若满足公式(3),则根据DATA信息进行更新;否则,不更新。
WData>WFIB (3)
如前所述,以上实施例中,路径权值W,包括WINT、WPIT、WFIB与WData均通过式(1)获取,即
其中,MinEnergy为最小剩余能量,Hop为跳数或距离,a为加权常数,a∈(0,1)。
在本发明实施例的节能CCN机制中,内容的发现仍然通过 Consumer发送Interest包发起,但是为了降低Interest包的广播冲突和广播开销,将根据FIB表对Interest进行单播或者多播,并充分利用退避侦听机制,减少不必要地发送。
在一个可选的实施例中,所述内容发现机制进一步包括:
若节点收到Interest包,检测所述PIT表中是否存在与所述Interest 包的请求内容名称相匹配的第一匹配表项;
若存在,则利用所述基于距离和能量的PIT表更新方法对所述第一匹配表项进行更新,丢弃所述Interest包;
否则,基于本地缓存或FIB表的相匹配内容进行退避侦听。
在一个可选的实施例中,所述基于本地缓存或FIB表的相匹配内容进行退避侦听,进一步包括:
若本地缓存中包含所述Interest包的请求内容,则生成第一Data 包,执行第一退避侦听;
否则,若FIB表中包含所述Interest包的请求内容,则更新所述 Interest包,执行第二退避侦听和/或第三退避侦听,并根据所述Interest 包在PIT表中添加相应的表项;
否则,若本地最小剩余能量大于所述节点的预设能量门限,则更新所述Interest包,并进行广播;
否则,丢弃所述Interest包。
在一个可选的实施例中,所述生成第一Data包,包括:将所述第一Data包的当前节点ID、距离Distance和最小剩余能量MinEnergy分别设置为所述Interest包的节点标识NodeID、跳数Hop、最小剩余能量MinEnergy,所述第一Data包的跳数Hop设置为1;
所述执行第一退避侦听,包括:若在第一退避侦听期间侦听到包含相同的内容名称的第二Data包,且所述第二Data包中的距离 Distance与跳数Hop相减的结果小于所述第一Data包的距离Distance 与跳数Hop相减的结果,则放弃发送所述第一Data;否则,若所述第一退避侦听期满则发送所述第一Data包;
所述更新所述Interest包,包括:将所述Interest包的节点表示 NodeID更新为所述FIB表中相应表项的节点ID,将所述Interest包的跳数Hop值加1;若所述FIB表中相应表项的最小剩余能量MinEnergy 小于所述Interest包的最小剩余能量MinEnergy,则将所述Interest包的最小剩余能量MinEnergy更新为所述FIB表中相应表项的最小剩余能量MinEnergy;
所述第二退避侦听,包括:若侦听到的第二Interest包中的节点 NodeID等于所述FIB表中匹配表项的下一跳节点NextNode,则取消向所述下一跳节点NextNode发送所述Interest包;
所述第三退避侦听,包括:若所述Interest包中节点标识NodeID 到达源节点的距离为L,则取消向所述FIB表中距离源节点大于L的节点发送所述Interest包。
本发明实施例所述内容发现机制的具体步骤请参考图5。具体包括:
(1)查找PIT表中是否有和Interest包请求内容名相匹配的项,若有,执行(2);若没有,执行(3)。
(2)根据本发明实施例所述基于距离和能量的PIT表更新方法,对PIT中的匹配表项进行更新,然后丢弃Interest,结束。
(3)检查本地缓存(CS)中是否包含请求内容,若包含,执行(4);若不包含,执行(5)。
(4)生成Data包,其中NodeID为当前节点ID,Distance等于 Interest包中的Hop值,Hop设为1;MinEnergy设为自身剩余能量。然后,退避侦听,如果在退避时间内侦听到包含相同content name的 Data包,且对方包中的Distance减去Hop小于本地的Distance减Hop,说明对方离consumer更近,此时放弃发送Data;否则,退避时间到时后发送Data,结束。
(5)检查FIB表中是否包含请求内容表项,若包含,执行(6);否则执行(8)。
(6)对Interest包进行更新:将NodeID更新为本地ID,Hop值加1,若本地最小剩余能量小于原MinEnergy,将MinEnergy更新为本地最小剩余能量。
(7)根据FIB表项进行多播,在多播之前退避侦听,按照如下原则判决发送,然后执行(9)
●如果侦听到的Interest包中的NodeID等于FIB中的NextNode,则取消向该NextNode发送Interest,即将该节点从Interest的NextNode 字段中取消。
●若已知Interest中NodeID到达Provider的距离为L,则取消向 FIB中距离Provider大于L的节点发送Interest。
如图6所示的一个具体实施例中,节点2在退避时间内侦听到了节点1和节点3的Interest中包含与代发消息具有相同的sequence,说明节点1和节点3已经发送了该请求。此时节点2检查FIB表,发现 FIB中包含节点1和节点3,所以根据第一个原则,取消向两个节点多播Interest;同时发现FIB中节点5也可以到达Provider,跳数为2,根据FIB表可推算出,节点1到达Provider的距离为3,节点3到达Provider 的距离为2,节点2通过节点5到达Provider的距离并不大于节点1、 3的Interest,所以根据第二个原则,向节点5单播Interest。执行(9)。
(8)根据节点特性预设能量门限E0,若本地最小剩余能量 MinEnergy大于能量门限E0,则进行Interest包更新,更新方式与(6) 相同,然后进行广播;否则,直接丢弃Interest包。
(9)在PIT表中添加相应表项。
在本发明实施例的节能CCN机制中,Data包将沿着PIT的记录反向返回Consumer,不采用广播方式,以减少Data包的传输冲突和传输能耗。在一个可选的实施例中,所述内容传送机制进一步包括:
若中间节点收到Data包,检测本地缓存是否存储所述Data包的内容,若已存储,则丢弃所述Data包;
否则,根据本地缓存策略进行所述Data包数据更新或所述FIB表数据更新;若所述Data包的下一跳节点标识NextNodeID与所述Data 包的节点标识NodeID相等且所述PIT表中存储与所述Data包相匹配的第二匹配表项,则进行第四退避侦听,若在所述第四退避侦听期间侦听到包含同样内容的第三Data包且满足预设条件,则取消发送所述第二匹配表项,将所述第二匹配表项从所述PIT表中删除。
在一个可选的实施例中,所述根据本地缓存策略进行所述Data包数据更新或所述FIB表数据更新,进一步包括:
若缓存,则将所述Data包的节点标识NodeID设置为所述中间节点ID,将所述Data包的距离Distance更新为所述Data包的原距离 Distance减所述Data包的跳数Hop的值,将所述Data包的跳数Hop 设置为1,将所述Data包的最小剩余能量MinEnergy设置为所述中间节点的最小剩余能量MinEnergy;
若不缓存,若所述FIB表中存在与所述Data包相匹配的第三匹配表项,则利用所述基于距离和能量的FIB表更新方法对所述第三匹配表项进行更新;否则在所述PIT中添加所述Data包的表项。
所述预设条件,包括:若所述第三Data包的下一跳节点标识 NextNodeID或节点标识NodeID与所述PIT表中的第二匹配表项的发送节点IncomingNode相同,则将所述Data包的下一跳节点标识 NextNodeID删除。
本发明实施例所述内容发现机制的具体步骤请参考图7。具体包括:
(1)当中间节点收到Data包后,查看本地缓存中是否已经存储了该内容,如果已经存储,执行(9);如果没有,执行(2)。
(2)根据本地缓存判决策略进行缓存判决,若缓存,执行(3);否则,执行(4)。
(3)缓存后,中间节点变成新的Provider,此时需要对Data进行内容更新:将Data中的NodeID改成中间节点的NodeID,将Distance 等于原Distance减去原Hop,将Hop重新设为1,MinEnergy改为中间节点的最小剩余能量,然后执行(5)。
(4)若不缓存,更新节点的FIB表,若FIB表中已有与该内容匹配的表项,则根据本发明实施例所述基于距离和能量的FIB表更新方法对FIB表进行更新;若没有,在FIB表中添加该内容表项。
(5)检查Data包中的NextNode是否等于自身NodeID,若是,执行(6);若不是,执行(9)。
(6)将Data中的Content Name与PIT表中的Name Prefix进行比对,查看PIT中是否有匹配表项,若有,执行(7);否则,执行(9)。
(7)根据PIT表中匹配表项准备发送Data包,启动退避机制,在退避期间,如果侦听到包含同样内容的Data包,且满足以下条件,则取消该表项的发送。
●若接收到的Data包中的NextNode和PIT表项中的IncomingNode 相同,则将这个incomingNodeID从本地Data的NextNode中删除。
●若接收到的Data包中的NodeID和PIT表项中的IncomingNode 相同,则将这个incomingNodeID从本地Data的NextNode中删除。
(8)将Data包中Content name对应表项从PIT中删除,执行(9)。
(9)丢弃Data包。
本发明实施例针对CCN在MANET应用时面临的能耗问题提出了一种节能CCN通信机制,具有以下优点:
1)创新性:当前同领域研究有两个方向,一个是退避机制节能,一个是能量感知概率发送节能,本发明创新地将两个方向融合,提出了一种能量感知的退避节能CCN通信机制。
2)实用性:本发明所提出的方法操作简单,专业人员可以很容易地将该方法用于实现网络中,具有较高的实用性。
3)有效性:本发明所提供的方法,一方面通过多播和退避侦听可有效减少Interest和Data的发送能耗;另一方面通过在PIT更新和 FIB更新中加入最小剩余能量感知,可有效避免能量短板效应。
图8示出了本发明实施例移动自组织网络的CCN通信设备的结构示意图。
参照图8,所述设备,包括:处理器(processor)601、存储器 (memory)602和总线603;
其中,所述处理器601和存储器602通过所述总线603完成相互间的通信;
所述处理器601用于调用所述存储器602中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:基于Interest包和Data 包中的距离和能量信息,在内容发现机制中采用基于距离和能量的PIT 表更新方法,在内容传送机制中采用基于距离和能量的FIB表更新方法,选择路径权值最大的路径传输所述Interest包和Data包。
本发明另一实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:基于Interest包和 Data包中的距离和能量信息,在内容发现机制中采用基于距离和能量的PIT表更新方法,在内容传送机制中采用基于距离和能量的FIB表更新方法,选择路径权值最大的路径传输所述Interest包和Data包。
本发明另一实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:基于Interest包和Data包中的距离和能量信息,在内容发现机制中采用基于距离和能量的PIT表更新方法,在内容传送机制中采用基于距离和能量的FIB 表更新方法,选择路径权值最大的路径传输所述Interest包和Data包。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的移动自组织网络的CCN通信设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种移动自组织网络的CCN通信方法,其特征在于,包括:
基于Interest包和Data包中的距离和能量信息,在内容发现机制中采用基于距离和能量的PIT表更新方法,在内容传送机制中采用基于距离和能量的FIB表更新方法,选择路径权值最大的路径传输所述Interest包和Data包;
所述基于距离和能量的PIT表更新方法,进一步包括:
若新到达的Interest包与PIT表中已保存的第一表项具有相同的序列号和发送节点,则根据所述Interest包的信息更新所述第一表项的相应信息;
若新到达的Interest包与PIT表中已保存的第二表项具有相同的序列号,则根据Interest包的跳数和最小剩余能量获得所述Interest包对应的路径权值WINT;若所述路径权值WINT大于所述第二表项中最小的路径权值WPIT,则根据Interest包的信息更新所述第二表项中最小的路径权值WPIT对应的表项的相应信息;
所述基于距离和能量的FIB表更新方法,进一步包括:
若新到达的Data包在FIB表中存在相匹配的第三表项,则根据所述Data包的距离和最小剩余能量获取路径权值WData;若所述路径权值WData大于所述第三表项中最小的路径权值WFIB,则根据所述Data包的信息更新所述第三表项中最小的路径权值WFIB对应的表项的相应信息;
路径权值W通过下式获取:
其中,MinEnergy为最小剩余能量,Hop为跳数或距离,a为加权常数,a∈(0,1)。
2.如权利要求1所述的方法,其特征在于,所述方法之前还包括:
在Interest包的内容中添加节点标识NodeID,下一跳节点标识NextNodeID、跳数Hop和最小剩余能量MinEnergy信息;在Data包的内容中添加节点标识NodeID,下一跳节点标识NextNodeID、跳数Hop、最小剩余能量MinEnergy和距离Distance信息;其中,
所述节点标识NodeID,用于记录Interest包或Data包的发送节点的地址;
所述下一跳节点标识NextNodeID,用于标识下一跳的节点标识,所述下一跳包括一个节点或多个节点;
所述跳数Hop,用于标识Interest包或Data包被转发的跳数,初始值为1;
所述最小剩余能量MinEnergy,用于记录Interest包或Data包在转发过程中经过的剩余能量最少的节点的剩余能量;
所述距离Distance,用于标识Data包的源节点到目的节点的距离。
3.如权利要求1所述的方法,其特征在于,所述基于距离和能量的PIT表更新方法之前还包括:
在PIT表中每个表项中添加发送节点IncomingNode、跳数Hop、最小剩余能量MinEnergy和路径权值WPIT;
其中,发送节点IncomingNode,用于记录所接收的Interest包的发送节点,与Interest包的节点标识NodeID对应;所述跳数Hop,用于记录当前节点与目的节点的距离,与Interest包的跳数Hop对应;所述最小剩余能量MinEnergy,用于记录Interest包在转发过程中经过的剩余能量最少的节点的剩余能量,与Interest包的最小剩余能量MinEnergy对应;所述路径权值WPIT,通过PIT表表项中的跳数Hop和最小剩余能量MinEnergy计算获得,用于表示Interest包传输过程中的路径权重;
相应的,所述根据所述Interest包的信息更新所述第一表项的相应信息,包括:将所述第一表项中的跳数Hop、最小剩余能量MinEnergy和路径权值WPIT分别更新为所述Interest包的跳数Hop、最小剩余能量MinEnergy和路径权值WINT;
相应的,所述根据Interest包的信息更新所述第二表项中的最小WPIT对应的表项的相应信息,包括:将所述第二表项中的最小WPIT对应的表项中的发送节点IncomingNode、跳数Hop、最小剩余能量MinEnergy和路径权值WPIT分别更新为所述Interest包的节点标识NodeID、跳数Hop、最小剩余能量MinEnergy和路径权值WINT。
4.如权利要求1所述的方法,其特征在于,所述基于距离和能量的FIB表更新方法之前还包括:
在FIB表的每个表项中添加下一跳节点NextNode、距离Distance、最小剩余能量MinEnergy和路径权值WFIB;
其中,下一跳节点NextNode,用于记录Data包将转发的下一条节点,根据Data包的节点标识NodeID进行赋值;所述距离Distance,用于标识当前节点到达内容存储节点的跳数,与Data包的距离Distance对应;所述最小剩余能量MinEnergy,用于标识对应的转发路径的电能寿命,与Data包的最小剩余能量MinEnergy对应;所述路径权值WFIB,通过FIB表表项中的距离Distance和最小剩余能量MinEnergy计算获得,用于表示Data包传输过程中的路径权重;
相应的,所述根据所述Data包的信息更新所述第三表项中最小的路径权值WFIB对应的表项的相应信息,包括:将所述最小的路径权值WFIB对应的表项的下一跳节点NextNode、距离Distance、最小剩余能量MinEnergy和路径权值WFIB分别更新为所述Data包的节点标识NodeID、跳数Hop、最小剩余能量MinEnergy和路径权值WData。
5.如权利要求4所述的方法,其特征在于,所述内容发现机制进一步包括:
若节点收到Interest包,检测所述PIT表中是否存在与所述Interest包的请求内容名称相匹配的第一匹配表项;若存在,则利用所述基于距离和能量的PIT表更新方法对所述第一匹配表项进行更新,丢弃所述Interest包;否则,基于本地缓存或FIB表的相匹配内容进行退避侦听;
其中,所述基于本地缓存或FIB表的相匹配内容进行退避侦听,进一步包括:
若本地缓存中包含所述Interest包的请求内容,则生成第一Data包,执行第一退避侦听;否则,若FIB表中包含所述Interest包的请求内容,则更新所述Interest包,执行第二退避侦听和/或第三退避侦听,并根据所述Interest包在PIT表中添加相应的表项;否则,若本地最小剩余能量大于所述节点的预设能量门限,则更新所述Interest包,并进行广播;否则,丢弃所述Interest包。
6.如权利要求5所述的方法,其特征在于,所述生成第一Data包,包括:将所述第一Data包的当前节点标识、距离Distance和最小剩余能量MinEnergy分别设置为所述Interest包的节点标识NodeID、跳数Hop、最小剩余能量MinEnergy,所述第一Data包的跳数Hop设置为1;
所述执行第一退避侦听,包括:若在第一退避侦听期间侦听到包含相同的内容名称的第二Data包,且所述第二Data包中的距离Distance与跳数Hop相减的结果小于所述第一Data包的距离Distance与跳数Hop相减的结果,则放弃发送所述第一Data;否则,若所述第一退避侦听期满则发送所述第一Data包;
所述更新所述Interest包,包括:将所述Interest包的节点标识NodeID更新为所述FIB表中相应表项的节点标识,将所述Interest包的跳数Hop值加1;若所述FIB表中相应表项的最小剩余能量MinEnergy小于所述Interest包的最小剩余能量MinEnergy,则将所述Interest包的最小剩余能量MinEnergy更新为所述FIB表中相应表项的最小剩余能量MinEnergy;
所述第二退避侦听,包括:若侦听到的第二Interest包中的节点NodeID等于所述FIB表中匹配表项的下一跳节点NextNode,则取消向所述下一跳节点NextNode发送所述Interest包;
所述第三退避侦听,包括:若所述Interest包中节点标识NodeID到达源节点的距离为L,则取消向所述FIB表中距离源节点大于L的节点发送所述Interest包。
7.如权利要求4所述的方法,其特征在于,所述内容传送机制进一步包括:
若中间节点收到Data包,检测本地缓存是否存储所述Data包的内容,若已存储,则丢弃所述Data包;
否则,根据本地缓存策略进行所述Data包数据更新或所述FIB表数据更新;若所述Data包的下一跳节点标识NextNodeID与所述Data包的节点标识NodeID相等且所述PIT表中存储与所述Data包相匹配的第二匹配表项,则进行第四退避侦听,若在所述第四退避侦听期间侦听到包含同样内容的第三Data包且满足预设条件,则取消发送所述第二匹配表项,将所述第二匹配表项从所述PIT表中删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710587007.1A CN107396422B (zh) | 2017-07-18 | 2017-07-18 | 一种移动自组织网络的ccn通信方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710587007.1A CN107396422B (zh) | 2017-07-18 | 2017-07-18 | 一种移动自组织网络的ccn通信方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107396422A CN107396422A (zh) | 2017-11-24 |
CN107396422B true CN107396422B (zh) | 2019-11-05 |
Family
ID=60340412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710587007.1A Expired - Fee Related CN107396422B (zh) | 2017-07-18 | 2017-07-18 | 一种移动自组织网络的ccn通信方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107396422B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501530A (zh) * | 2013-10-24 | 2014-01-08 | 福州大学 | 一种基于命名数据的无线自组织网络的节能方法 |
CN105704030A (zh) * | 2014-12-16 | 2016-06-22 | 帕洛阿尔托研究中心公司 | 用于基于距离的兴趣转发的系统和方法 |
-
2017
- 2017-07-18 CN CN201710587007.1A patent/CN107396422B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501530A (zh) * | 2013-10-24 | 2014-01-08 | 福州大学 | 一种基于命名数据的无线自组织网络的节能方法 |
CN105704030A (zh) * | 2014-12-16 | 2016-06-22 | 帕洛阿尔托研究中心公司 | 用于基于距离的兴趣转发的系统和方法 |
Non-Patent Citations (1)
Title |
---|
命名数据移动自组织网络节能转发策略;张栋 等;《福州大学学报(自然科学版)》;20170228;第45卷(第1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107396422A (zh) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4569328B2 (ja) | 無線通信装置および経路探索方法 | |
EP2751963B1 (en) | Topology discovery in a hybrid network | |
Kumaran et al. | Early congestion detection and adaptive routing in MANET | |
CN104468866B (zh) | 一种无线局域网中多网关终端快速漫游方法 | |
KR102134454B1 (ko) | 컨텐츠 중심 네트워크에서 컨텐츠를 엿듣는 노드의 통신 방법 및 그 노드 | |
EP2760168A1 (en) | Method, device and system for forwarding message | |
KR20070081733A (ko) | 다중 경로 설정 장치 및 방법 | |
CN108092899B (zh) | Manet环境下基于命名数据网络的路由策略更新方法 | |
JP2006311495A (ja) | 無線通信装置、通信経路制御装置、通信経路制御方法及び通信システム | |
CN109218111B (zh) | 一种处理报文的方法和转发器 | |
CN104754687B (zh) | 信息发送方法及设备 | |
EP2810422B1 (en) | Dad-ns triggered address resolution for dos attack protection | |
CN101102283A (zh) | 一种在无线接入点上优化未知单播转发的方法及设备 | |
CN110233709B (zh) | 一种rpl路由方法及相关装置 | |
WO2020156340A1 (zh) | 一种传输数据的方法及装置 | |
EP3200404A1 (en) | Content-centric network on-demand distance vector route method | |
Tran et al. | Routing with congestion awareness and adaptivity in mobile ad hoc networks | |
WO2019119346A1 (zh) | 一种通信路径确定方法及网络设备 | |
TW202139655A (zh) | 網狀網路系統 | |
US20210194999A1 (en) | Packet sending method, network device, and computer storage medium | |
JP2014155072A (ja) | 通信装置及びその制御方法、プログラム | |
CN103974339B (zh) | 一种数据缓存的方法和装置 | |
WO2013042209A1 (ja) | データ転送方法およびそれを用いるノード装置 | |
JP4572173B2 (ja) | 無線通信装置、無線通信方法および経路情報テーブルの作成方法 | |
Jin et al. | MANET for Disaster Relief based on NDN |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20191105 Termination date: 20210718 |
|
CF01 | Termination of patent right due to non-payment of annual fee |