一种基于SDN分布式控制的无人机网络流量配置方法及系统转让专利

申请号 : CN201810816090.X

文献号 : CN109089294A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵海涛魏急波张霄熊俊周力黄圣春

申请人 : 中国人民解放军国防科技大学

摘要 :

本发明提供一种SDN分布式控制的无人机网络流量配置方法及系统,该方法包括:在无人机的电量即将达到设定门限时,基于本地数据库查询以无人机为中继的数据流信息;根据数据流信息获取以该无人机为中继的数据流计算新路径的原节点和目标节点,将本地的网络拓扑表转化为带权值的有向图,根据有向图中链路权值、原节点和目标节点为数据流计算新路径;按数据流信息优先级发送MOD消息给新路径上的无人机节点控制器;收到MOD消息的无人机节点控制器回复相应ACK消息,完成路由切换,实现流量配置。解决网络中无人机因电量耗尽而脱离网络所导致的相关用户通信中断问题,通过区分数据流的优先级,级别高的用户能够优先完成流量规划实现通信。

权利要求 :

1.一种基于SDN分布式控制的无人机网络流量配置方法,在SDN分布式控制的无人机网络中,每个无人机节点控制器监控本地无人机及无人机网络的动态;无人机节点控制器在本地维护根据LSP消息生成的网络拓扑表,其特征在于,包括以下步骤:步骤1,在无人机的电量即将达到设定的门限时,基于本地数据库及无人机网络之间的通信获得以所述无人机为中继的数据流信息;

步骤2,根据所述数据流信息获取以该无人机为中继的数据流计算新的路由路径的原节点和目标节点,将本地的网络拓扑表转化为带权值的有向图,根据所述有向图中链路权值weight、原节点和目标节点为以该无人机为中继的数据流规划新的路由路径;

步骤3,按数据流信息的优先级发送MOD消息给新的路由路径上的无人机节点控制器;

步骤4,收到MOD消息的无人机节点控制器回复相应的ACK消息,完成路由的切换,实现流量的配置。

2.根据权利要求1所述的基于SDN分布式控制的无人机网络流量配置方法,其特征在于,所述步骤1中基于本地网络拓扑表查询以所述无人机为中继的数据流信息包括:步骤11,在发现本地数据库中数据流所属的用户信息缺失时,在控制信道内广播发送FAP消息;

步骤12,无人机网络中包含该用户信息的无人机控制器在收到FAP消息后,回复相应的FIP消息;

步骤13,无人机控制器根据收到的FIP消息完善其数据库内的用户信息,并提取相应的数据流所属的用户信息用于实现该流量的预规划;

所述用户信息包括了数据流流所属的源无人机序号和目的无人机序号,以及用户的优先级。

3.根据权利要求2所述的基于SDN分布式控制的无人机网络流量配置方法,其特征在于,所述步骤2中的链路权值weight为:其中:PC表示无人机节点已消耗电量占总电量的百分比,link_load表示无人机网络中链路的负载值,link_loadmax表示网络各链路负载中的最大值,作为基准的参考值,α1和α2为无人机节点电量和链路负载情况的权重系数,且α1+α2=1。

4.根据权利要求3所述的基于SDN分布式控制的无人机网络流量配置方法,其特征在于:α1的设定为0.5,α2的设定为0.5。

5.根据权利要求3或4所述的基于SDN分布式控制的无人机网络流量配置方法,其特征在于,所述步骤2包括:步骤21,根据所述数据流所属的用户信息获取以该无人机为中继的数据流的新的路由路径的原节点和目标节点;

步骤22,从本地的网络拓扑表中实时调取链路权值weight所需的无人机网络中各无人机的电量信息PC、网络链路负载信息link_load、链路负载中的最大值link_loadmax;

步骤23,通过Dijkstra算法在原节点与目标节点之间根据链路权值weight依次选择最优节点,形成新的路由路径。

6.根据权利要求2所述的基于SDN分布式控制的无人机网络流量配置方法,其特征在于,步骤3包括:步骤31,按数据流信息所属的用户信息区分每条待规划数据流的优先级;

步骤32,定义MOD消息用于传递无人机节点控制器之间修改流表项的具体代码信息;

步骤33,根据优先级顺序将修改的流表项信息发送给新路径上的无人机节点控制器进行路由路径切换。

7.根据权利要求2所述的基于SDN分布式控制的无人机网络流量配置方法,其特征在于,所述步骤4,步骤41,节点控制器直接向转发设备下达修改流表项的命令,

步骤42,回复相应的ACK消息,完成路由的切换,实现流量的配置。

8.根据权利要求2所述的基于SDN分布式控制的无人机网络流量配置方法,其特征在于:所述LSP消息包括了发送该消息的无人机节点序号、无人机节点的电量、无人机所处的地理位置以及相邻链路上的链路负载数;

所述FAP消息包括发送该消息的无人机序号,数据流信息以及用于标记所需信息的Tag值;

所述FIP消息包括了与数据流源或目的IP地址一致的用户所接入的无人机序号,用户的序号,用户的IP地址,优先级以及Tag值;

所述MOD消息包括接收方的无人机序列号,发送方的无人机序列号,具体的代码信息以及用于区分不同数据流的序列号码;

所述ACK消息用于回复MOD消息,表明本地控制器已完成流表项的修改,其包括了接收方的无人机序列号,发送方的无人机序列号以及用以区分回复不同MOD消息的序列号码。

9.一种基于SDN分布式控制的无人机网络流量预规划系统,其特征在于,包括处理器,以及与所述处理器连接的存储器,所述存储器存储有基于SDN分布式控制的无人机网络流量配置程序,所述基于SDN分布式控制的无人机网络流量配置程序被所述处理器执行时实现上述权利要求1~8任一项所述方法的步骤。

说明书 :

一种基于SDN分布式控制的无人机网络流量配置方法及系统

技术领域

[0001] 本发明属于无人机网络技术领域,涉及一种在SDN分布式控制的无人机网络中实现流量配置方法及系统。

背景技术

[0002] 无人机网络需要支持无人机的动态移动和网络拓扑的频繁变化,并且由于上层协议之间的差异,无人机在不同网络环境中可能难以正常工作,其次无人机飞行时间有限导致网络正常通信时间受限,因此要求整个无人机网络实现综合有效的管理和资源的利用。软件定义网络(SDN)将控制层与数据层分离,通过软件定义的方式控制网络,其在无人机网络的应用很好地解决了无人机网络中遇到的上述问题。SDN的软件定义将各种路由协议在同一标准下软件化,让无人机灵活地工作在各种环境中。SDN的可编程性,实现了以编程的方式控制网络,使得无人机网络更加开放和灵活,方便了新应用和服务的部署,简化了网络的管理。SDN控制器通过收集和处理全网信息,实现了资源的综合管理和决策的最优化。
[0003] SDN在无人机网络中的应用得到了深入的研究,主要分为集中式控制模式和分布式控制模式。在SDN集中式控制的无人机网络中,中心控制器掌握全网信息和拓扑,因此可以作出优化的决策并控制无人机节点的具体行为。但是在无人机网络中,集中式控制模式存在以下问题:(1)无人机的通信控制都依赖于中心控制器,一旦该控制器失效或者遭受攻击,会导致整个无人机网络陷入瘫痪,因此其可靠性以及安全性难以得到保证。(2)无人机群远距离作战时,无人机与控制器之间需要通过其他无人机作为中继实现通信,因此会导致频谱之间的干扰和控制信息传输延时的问题。(3)无人机网络通信规模较大时,整个网络的计算都依赖于中心控制器,使得中心控制器要同时计算处理并传输海量的数据,因此会导致网络的拥塞和数据传输延时。
[0004] 在这种情况下,SDN分布式控制模式更适合于无人机网络。SDN分布式控制模式中,每个无人机都配置了控制器用于控制自身的状态,无人机网络中的计算分担到每个无人机控制器中,无人机群不受中心控制器的影响可以更加灵活地飞行组网。但是,考虑到无人机网络作为能量受限型网络,当无人机因电量原因脱离网络时,将无法与用户之间进行正常的通信。

发明内容

[0005] 本发明目的在于提供一种基于SDN分布式控制的流量配置方法及系统,用以克服现有技术中无人机由于电量耗尽,脱离无人机网络所导致相关用户通信中断的问题,SDN分布式控制的无人机网络中提前将流经无人机的流量规划到其它路径上,实现无人机流量的预规划,在无人机由于电量耗尽等原因造成脱离无人机网络的状态下依然能保持与用户的正常通信。
[0006] 为实现本发明的目的,本发明提供一种基于SDN分布式控制的无人机网络流量配置方法,在SDN分布式控制的无人机网络中,每个无人机节点控制器监控本地无人机及无人机网络的动态;无人机节点控制器在本地维护根据LSP消息生成的网络拓扑表,包括以下步骤:
[0007] 步骤1,在无人机的电量即将达到设定的门限时,基于本地数据库查询以所述无人机为中继的数据流信息;
[0008] 步骤2,根据所述数据流信息获取以该无人机为中继的数据流计算新的路由路径的原节点和目标节点,将本地的网络拓扑表转化为带权值的有向图,根据所述有向图中链路权值weight、原节点和目标节点为以该无人机为中继的数据流计算新的路由路径;
[0009] 步骤3,按数据流信息的优先级发送MOD消息给新的路由路径上的无人机节点控制器;
[0010] 步骤4,收到MOD消息的无人机节点控制器回复相应的ACK消息,完成路由的切换,实现流量的配置。
[0011] 为实现本发明的目的,本发明还提供一种基于SDN分布式控制的无人机网络流量预规划系统,包括处理器,以及与所述处理器连接的存储器,所述存储器存储有基于SDN分布式控制的无人机网络流量预规划程序,所述基于SDN分布式控制的无人机网络流量预规划程序被所述处理器执行时实现上述方法的步骤。
[0012] 本发明提供的基于SDN分布式控制的无人机网络流量配置方法及系统,不需要中心控制器,通过设计分布式控制器的监控平台和定义控制消息,在SDN分布式无人机网络中,通过监控平台发现无人机电量预警,并在到达设定门限前,快速获得以所述无人机为中继的数据流信息;根据数据流信息以及由本地的网络拓扑表建立的链路权值weight为以即将失效无人机为中继的数据流规划新的路由路径,保证了用户的持续通信,通过区分数据流的优先级,级别高的用户能够优先完成流量规划实现通信,实验表明本发明易于实现,完成流量配置的耗时少,复杂度低。

附图说明

[0013] 图1是本发明实施例提供的基于SDN分布式控制的无人机网络流量配置方法中无人机网络的示意图;
[0014] 图2是本发明实施例中无人机监控平台的监控显示实例;
[0015] 图3是本发明实施例中链路负载对流量预规划中路径选择的影响的示意图;
[0016] 图4为本发明实施例中无人机电量和链路负载对流量预规划中路径选择的影响的示意图;
[0017] 图5为本发明实施例中流量的优先级对路由切换的影响的示意图;
[0018] 图6为本发明实施例提供的基于SDN分布式控制的无人机网络示意图。

具体实施方式

[0019] 下面将结合本发明实施例图中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,作进一步详细说明。
[0020] 本发明实施例提供一种基于SDN分布式控制的无人机网络流量配置方法及系统。
[0021] 参照图1~3,本发明实施例提供一种基于SDN分布式控制的无人机网络流量配置方法,首先,为了每个分布式控制器能够掌握无人机网络的全局拓扑和实现流量预规划算法,在本发明中定义以下几种控制消息类型:
[0022] LSP消息用于为每个无人机控制器建立全局网络拓扑,其包括了发送该消息的无人机节点序号,无人机节点的电量,无人机所处的地理位置以及相邻链路上的链路负载数。每个无人机控制器在控制信道周期性地广播LSP消息,无人机控制器根据收到的LSP消息可以重构出整个网络拓扑,并在本地维护一个网络拓扑表。
[0023] FAP消息用于向其它无人机控制器询问本地数据库中数据流所缺失的用户信息,其包括发送该消息的无人机序号,数据流信息以及用于标记所需信息的Tag值。
[0024] FIP消息用于回复FAP消息,其包括了与数据流源或目的IP地址一致的用户所接入的无人机序号,用户的序号,用户的IP地址,优先级以及Tag值。
[0025] MOD消息用于传递控制器之间修改流表项的具体代码信息,其包括了接收方的无人机序列号,发送方的无人机序列号,具体的代码信息以及用于区分不同数据流的序列号码。
[0026] ACK消息用于回复MOD消息,表明本地控制器已完成流表项的修改,其包括了接收方的无人机序列号,发送方的无人机序列号以及用以区分回复不同MOD消息的序列号码。
[0027] 各无人机控制器内部都维护一个统一的网络拓扑表,其包括了网络中各无人机的电量、地理位置以及网络中各链路的负载情况。
[0028] 本发明中,在控制器内为每个无人机设计监控平台用于实时监控无人机和网络的动态,控制器在本地维护根据LSP消息生成的网络拓扑表,当监控平台监测到本无人机的电量超过所设门限,会查询自己数据库中的以该无人机为中继的数据流信息;
[0029] 本发明中,如果发现其数据库中数据流所属的用户信息缺失时,便会在控制信道内广播发送FAP消息,网络中包含该用户信息的无人机控制器在收到其FAP消息后,会回复相应的FIP消息;
[0030] 本发明中,无人机控制器根据收到的FIP消息完善自己数据库内的用户信息,并提取相应的数据流所属的用户信息用于实现该流量的预规划,其包括了数据流的信息,流所属的源无人机序号和目的无人机序号,以及用户的优先级。
[0031] 在SDN分布式控制的无人机网络中,每个无人机节点控制器监控本地无人机及无人机网络的动态;无人机节点控制器在本地维护根据LSP消息生成的网络拓扑表,包括以下步骤:
[0032] 步骤1,在无人机的电量即将达到设定的门限时,基于本地数据库及无人机网络之间的通信获得以所述无人机为中继的数据流信息;每个无人机上的SDN分布式控制器内部都有一个数据库,用于存储控制器之间的交互信息、接入用户的信息以及数据流的信息;
[0033] 步骤2,根据所述数据流信息获取以该无人机为中继的数据流计算新的路由路径的原节点和目标节点,将本地的网络拓扑表转化为带权值的有向图,根据所述有向图中链路权值weight、原节点和目标节点为以该无人机为中继的数据流规划新的路由路径;预规划流量的路径选择是对链路权值weight的设计。链路权值weight的设计不仅影响了网络的链路质量,而且与数据流的持续通信时间紧密相关。
[0034] 步骤3,按数据流信息的优先级发送MOD消息给新的路由路径上的无人机节点控制器;
[0035] 步骤4,收到MOD消息的无人机节点控制器回复相应的ACK消息,完成路由的切换,实现流量的配置(预规划)。
[0036] 当无人机脱离网络后,由于网络拓扑发生变化,其余无人机控制器会根据LSP消息更新自己本地的网络拓扑表。本发明通过每个控制器中的无人机监控平台监控无人机及其网络的动态,能够及时发现无人机电量即将达到门限的信息,并迅速基于本地拓扑信息表和完善后的数据库信息根据链路权值weight为数据流量计算出新的路由路径,并将修改的流表项信息发送给新路径上的无人机节点控制器,节点控制器直接向转发设备下达修改流表项的命令,完成新路由规则的的部署。数据流会根据新的流表规则在新路径上完成路由转发,当无人机脱离网络时,相应的用户依然能够保持通信。
[0037] 优选地,所述步骤1中基于本地网络拓扑表查询以所述无人机为中继的数据流信息包括:
[0038] 步骤11,在发现本地数据库中数据流所属的用户信息缺失时,在控制信道内广播发送FAP消息;
[0039] 步骤12,无人机网络中包含该用户信息的无人机控制器在收到FAP消息后,回复相应的FIP消息;
[0040] 步骤13,无人机控制器根据收到的FIP消息完善其数据库内的用户信息,并提取相应的数据流所属的用户信息用于实现该流量的预规划;
[0041] 所述用户信息包括了数据流流所属的源无人机序号和目的无人机序号,以及用户的优先级。
[0042] 优选地,所述步骤2中的链路权值weight为:
[0043]
[0044] 其中:PC表示无人机节点已消耗电量占总电量的百分比,link_load表示无人机网络中链路的负载值,link_loadmax表示网络各链路负载中的最大值,作为基准的参考值,α1和α2为无人机节点电量和链路负载情况的权重系数,用于实际中考虑无人机节点电量和链路负载的不同地位作出相应的调整,且α1+α2=1。综合考虑了无人机电量和链路负载的影响,确保了新用户的增加不会对原通信链路造成过大的负担,流量在新路径上可以长时间传输,网络能够高效节能的通信。
[0045] 链路权值weight受到无人机节点电量PC和链路负载link_load的影响,无人机电量消耗越多,链路负载越大,相应的链路权值就越大,而链路权值越大则说明链路的性能越差。无人机节点电量PC和链路负载link_load根据LSP消息在控制器内部的网络拓扑表中实时更新,链路负载link_load保证了链路负载较小的链路有更大的概率被选择为新的路径,而无人机节点电量PC则确保了选择剩余电量多的无人机节点作为新的路径节点。
[0046] 优选地,α1的设定为0.5,α2的设定为0.5。
[0047] 优选地,所述步骤2包括:
[0048] 步骤21,根据所述数据流所属的用户信息获取以该无人机为中继的数据流的新的路由路径的原节点和目标节点;
[0049] 步骤22,从本地的网络拓扑表中实时调取链路权值weight所需的无人机网络中各无人机的电量信息PC、网络链路负载信息link_load、链路负载中的最大值link_loadmax;
[0050] 步骤23,通过Dijkstra算法在原节点与目标节点之间根据链路权值weight依次选择最优节点,形成新的路由路径。
[0051] 优选地,步骤3包括:
[0052] 步骤31,按数据流信息所属的用户信息区分每条待规划数据流的优先级;
[0053] 步骤32,定义MOD消息用于传递无人机节点控制器之间修改流表项的具体代码信息;
[0054] 步骤33,根据优先级顺序将修改的流表项信息发送给新路径上的无人机节点控制器进行路由路径切换。
[0055] 优选地,所述步骤4,
[0056] 步骤41,节点控制器直接向转发设备下达修改流表项的命令,
[0057] 步骤42,回复相应的ACK消息,完成路由的切换,实现流量的配置(预规划)。
[0058] 下面通过具体的实施例对本发明的技术方案进行详细说明:
[0059] 图1为本发明中基于SDN分布式控制的无人机网络的示意图。AP表示搭载了网络设备的无人机节点,其在空中形成无线Mesh网络为地面用户提供通信服务。Sta表示地面的通信用户,通过接入无人机网络实现相互之间的通信。虚线表示了无人机网络的数据链路,实线表示了无人机网络的控制链路。
[0060] Sta1-Sta7设为客户端,Sta11-Sta17设为服务器端。Sta1到Sta11和Sta2到Sta12的通信路径为AP1-AP5-AP4,Sta6到Sta16的通信路径为AP4-AP3-AP2,其余通信路径为直连,用户StaX的IP地址为192.168.0.X,例如Sta1的IP地址为192.168.0.1。
[0061] 图2是无人机AP3中监控平台的监控显示实例。Connected Device表示接入该无人机并处于通信状态的设备为sta17和sta13,Access load表示有2台设备接入无人机。Location和Battery为无人机信息分别表示无人机的地理位置和电量消耗状况。sta17-priority表示该接入设备的优先级为4,IP Address表示其IP地址为192.168.0.17,Byte_count和Packet_count则分别表示源地址为192.168.0.7,目的地址为192.168.0.17的数据流在1个周期内的字节计数为134568,数据包计数为89。通过该监控平台可以实时监控无人机状态,管理地面接入用户以及无人机网络。
[0062] 图3为本发明中链路负载对流量预规划中路径选择的影响。无人机AP1-AP5的初始已耗电量分别为30%,30%,30%,30%,80%,图中实线,虚线和点划线分别表示了无人机AP2,AP3,AP5中流量的数据包数量变化。由于前期无人机AP5的电量未超过门限,因此流经各无人机的流量无明显变化。一旦监控平台在周期为30时监测到AP5的所耗电量超出了门限值90%,流经AP5的中继流量经过5个周期便会迅速被切换到新路径上。AP2中流量的数据包数量迅速增加,说明原先从AP1经AP5到AP4的数据流被重新路由到了AP2上。AP5的本地拓扑表中链路AP1-AP3-AP4和链路AP1-AP2-AP4的链路负载分别为2和1,无人机AP5的控制器为其中继流量重新计算最优路径,在其余无人机电量大致相同的情况下,算法会优先将数据流路由到负载较小的链路,不增加负载较大链路的负担,所以选择了链路AP1-AP2-AP4作为原数据流的新路径。
[0063] 图4为无人机电量和链路负载对流量预规划中路径选择的影响。无人机AP1-AP5的初始已耗电量分别为30%,70%,30%,30%,80%。在无人机AP5所耗电量达到门限后,这次其中继流量被重新路由到了无人机AP3上。考虑到无人机电量和链路负载,在AP5的本地拓扑表中两条通信链路的负载只相差1,但是AP2的已耗电量却比AP3消耗的电量多出40%,考虑到流量在路由到AP3后可以保证较长时间的不中断传输,并且链路AP1-AP3-AP4的负载只比链路AP1-AP2-AP4多1,两条链路承受增加新负载的能力并没有较大的差别,因此优先选择了链路AP1-AP3-AP4作为新路径。
[0064] 图5为流量的优先级对路由切换的影响。图中实线和虚线分别表示了无人机AP2监控平台中Sta1到Sta11和Sta2到Sta12流量的数据包数量变化。AP5所耗电量在周期30时达到门限,原AP5的中继流量被重新路由到了AP2,因此可以观察到图中Sta1到Sta11和Sta2到Sta12流量的数据包数量突然增加。在周期为37时,Sta1-Sta11流量的数据包数量是先于Sta2-Sta12流量增加的,表明Sta1-Sta11的流量优先被切换,这是因为了Sta1的优先级要高于Sta2,所以在切换路由时,优先级高的数据流优先切换。
[0065] 为了解决SDN分布式网络中无人机失效后的流量分配问题,分布式控制器实时监控本无人机状态,为即将失效的无人机的流量重新计算路由,并提前通知新路径上的节点控制器,通过直接修改其流表项完成新路由规则的部署。本发明能够保证短时间内完成流量的预规划,提高了通信的有效性。同时,在选择新路径时考虑了其余链路的负载和无人机电量,保证了新流量的加入不影响原链路的通信质量,并且新路径能够维持长时间的通信。不仅如此,通过区分流量的优先级,保证级别高的用户优先完成流量规划实现通信。
[0066] 本发明实施例还一种基于SDN分布式控制的无人机网络流量预规划系统,其特征在于,包括处理器,以及与所述处理器连接的存储器,所述存储器存储有基于SDN分布式控制的无人机网络流量预规划程序,所述基于SDN分布式控制的无人机网络流量预规划程序被所述处理器执行时实现上述任意实施例所述方法的步骤。
[0067] 以上包含了本发明优选实施例的说明,这是为了详细说明本发明的技术特征,并不是想要将发明内容限制在实施例所描述的具体形式中,依据本发明内容主旨进行的其他修改和变型也受本专利保护。本发明内容的主旨是由权利要求书所界定,而非由实施例的具体描述所界定。