SDN在战术MANET路由中的应用①

2022-05-10 08:41张耕强杨章林
计算机系统应用 2022年4期
关键词:链路路由控制器

张耕强,谢 钧,杨章林

(陆军工程大学 指挥控制工程学院,南京 210007)

1 引言

随着现代军事的发展,战术任务的复杂程度日益增加,对于数据传输的要求日渐严格.目前战场机动通信主要应用移动自组织网络(mobile ad-hoc networks,MANET)进行网络的组织,MANET 需要在动态变化的战场环境里实现带宽分配、流量的路径选择以及维持末端节点到指挥中心的多跳连接[1].然而目前MANET路由协议虽然种类繁多,但受限于对等式结构特点,网络流量调控能力较弱,节点间通信难以合理分配链路资源,在实际中对于复杂任务的支撑能力较弱.

软件定义网络(software-defined networking,SDN)近来成为优化战术MANET 通信能力的一种解决方案.SDN 强大的网络可视化能力以及灵活的流量调控能力,能根据上层应用需求,从全局网络角度高效分配资源和选择路径,并在捕捉网络变化后迅速进行资源再配置,动态调整数据传输路径.利用SDN 协助MANET 进行路由决策,能提高战术任务的完成质量,但要将SDN 应用至MANET,需要解决网络可靠性、健壮性、安全性等一系列适应性问题,以面对战场环境的各种变化.

本文针对SDN 技术在战术MANET 路由的应用展开研究.首先介绍战术MANET 路由现状,而后介绍SDN 以及相关路由优化研究说明其对MANET 路由带来的提升,最后从路由过程分析相关挑战以及解决方案.

2 战术MANET 路由现状以及软件定义网络

2.1 战术MANET 路由

MANET 是一种临时的多跳、去中心化的自组织分布式系统,不依赖于固定基础设施,同时对网络的变化具有一定的适应性,在战场机动任务中多被应用以实现各节点的通信需求.网络组成主要包含由部署在现场的无线传感器节点,特种部队携带的无线电和小型无人飞行器等,用于实现图像采集以及其他战术任务[2].该场景下网络主要有以下特点:

网络具有高动态性.受战术任务需求,战术MANET网络里的节点都需要具备移动能力,在进行战术任务的同时应对各种突发情况,如无人机、机动通信车等都是具有较强移动能力的常用设备.这决定了链路状态会频繁改变,网络具有极高的动态变化特点,源节点和目标节点之间的端到端连接可能突然断开,导致传输超时和路由故障.

带宽资源匮乏.受环境决定,无线信道的状况不佳,存在共享信道碰撞、信号衰减、噪音干扰等因素限制带宽大小[3].

大量设备有能量限制.受战术任务决定,如无人机等许多设备需要具有较小的体积以换取高度的灵活性或可携带性.其电量极为有限,在进行移动、通信等动作时都会消耗电量,对网络运转有一定影响.

针对MANET 的特点,许多路由协议被陆续提出.目前传统MANET 路由协议大致分为6 类[4]:

(1)静止式路由.每个节点维持一个提前配置的固定路由表,按照表项进行数据包的路由.

(2)主动式路由.这类路由协议以目的节点序列距离矢量协议(destination sequenced distance vector routing,DSDV)[5]为代表,网络每个节点维持一个路由表,通过定期更新以及事件驱动更新(如链路状态变化等)保持其有效性.其优势为节点能根据最新的路由表快速选择下一跳,优化一定的传输时延.然而当网络规模较大时,其维护路由表的控制开销较大,同时收敛时间较长,对于网络变化的反应较慢.

(3)反应式路由.这类路由协议以无线自组网按需平面距离向量路由协议(ad hoc on-demand distance vector routing,AODV)[6]为代表,只有当节点需要通信时才进行寻路.源节点以广播的方式将路由请求包传输到目标节点,通过目标节点和中转节点的回复建立数据传输路径.

(4)混合式路由.此类协议综合了主动式路由和反应式路由.以区域路由协议(zone routing protocol,ZRP)协议为例,其将网络分为多个区域,域内进行主动式路由,域间进行按需式路由.

(5)基于地理位置路由.这类路由协议假设节点位置已知,下一跳节点为目标节点方向的一跳邻居节点.其特点为不需要路径的建立和维持,同时不需要存储各类路由信息,在快速变化的环境里具有很好的适应性.

(6)层次式路由.这种路由方式通常按簇或者区域的方式将整个网络划分为多个子网络,不同子网络内部或者子网络之间视层次结构可按不同的方式进行路由.

表1 针对各类MANET 路由协议做出了特点总结以及优势缺陷的对比.静止式协议由于缺乏对变化的处理能力,所以并不适合拓扑变化快的网络;主动式协议在进行路由选择时能根据定期维护的路由表进行快速地匹配转发,然而当网络规模较大时,其维护路由表的控制开销大.更重要的是,主动式协议在大规模网络里收敛时间较长,对于网络变化的反应较慢,在拓扑快速变化的情况下,网络节点可能无法及时获取最新的拓扑信息[7];被动式协议虽然不需要节点维护路由表,然而源节点在转发数据前需要首先发起路由请求,等待其余节点回复,建立完整的传输路径后再开始传输,会产生较长的传输时延,不适用于实时数据的传输.

表1 MANET 路由协议对比

混合式路由对主动式的开销问题和反应式的时延问题进行了一定的平衡.相较于主动式路由,混合式路由可以大大减少控制消息的数量,因为网络仅需要在每个域内部节点之间维护更新的拓扑信息.相较于被动式路由,混合式路由能有效提升域内路由的速度.然而当数据传输建立在属于不同域的节点间时,该类协议依旧会由于网络以反应性方式搜索路径而引入明显的延迟.

基于地理位置的路由协议既不需要节点主动维护路由表,同时在节点需要传输时能根据地理位置快速决定下一跳,因此在MANET 里具有优良的表现.然而由于每个节点是根据地理位置进行下一跳的选择,易出现局部最优、路由环路等问题.所以其应用需要对下一跳的选择算法进行精细的设计.其次,在实际无线信道中位置信息的精确度会受信号的衰减、噪声干扰等而出现一定的偏差,也会对数据转发产生影响.

层次式路由在实际中较适合在大规模网络中部署.然而由于节点的移动性,需要详细考虑簇的动态组成以提高适应网络变化的能力[8].

传统MANET 路由协议虽然针对网络特点进行了相应设计,但各自存在着应用的缺陷.其根源在于无论是哪一种协议,网络整体基于对等式结构建立,端到端的路径需要通过每个节点根据本地信息独立选择下一跳拼接组合.为了获取路由所需信息,各节点需要自身感知整个网络状态,通过其他节点的反馈建立传输路径.由于各节点难以实现轻便快速的通信,无线网络里的信道资源难以高效合理地分配,易造成链路负载不均、网络堵塞等问题[9],无法为应用流量提供高质量的服务质量(quality of service,QoS)保障;此外,MANET路由协议对于不同应用的流量难以提供差异性的服务,对于多应用的服务能力较差.这些原因导致MANET路由协议在实际中能提供的服务质量有限,难以达到预期效果.

2.2 软件定义网络

当今社会对网络的业务需求日益增多,然而传统网络开发需要通过定制硬件来实现不同的网络功能,同时设计大量的特定网络协议进行控制.这既增加了开发成本,也加大了人工管理的难度[10].SDN 提倡网络实行集中式控制并部署运行标准化协议的硬件设备,被认为是突破传统分布式网络瓶颈的有效方案.如图1所示,SDN 架构从上至下依次分为应用层、控制层、数据层3 层,其解耦传统转发设备的控制逻辑和数据逻辑,构建了一个逻辑上集中的控制平面以进行基于网络全局信息的转发行为决策,实现网络可编程化以动态制定差异化的服务策略,最终适配不同上层应用需求.

图1 SDN 架构

应用层主要由网络应用组成,负责根据业务需求制定流量策略,并通过北向接口在一个抽象网络上进行操作,实现相关网络应用;控制层主要负责通过南向接口与数据层设备进行交互,收集链路端口等信息构建全局网络视图,从而可视化网络资源并将其提供给应用层,使得网络能从全局角度针对性地规划各应用流量传输路径;转发层由底层转发设备组成,负责根据控制层下发的流表交换处理数据.

SDN 分离了控制层与数据层,不仅能从全局角度规划流量路径,同时数据仅在单层转发,减小了网络时延和资源浪费;SDN 还使用了流表指导转发设备工作,加快了对流量的执行速度[11];此外SDN 使用标准化协议管理网络,不仅简化了管理难度,同时加强了网络对异构网络和多应用服务的管理能力.网络可对全网设备进行全局统一管理和动态配置,从而实现灵活高效的资源分配和协同[12].这些对于MANET 为各种战术任务提供高质量的QoS 路由保障都是很好的补充.

3 基于SDN 的MANET 路由研究

由于MANET 的高度分布式性质,每个节点只能根据本地信息实现局部路径最优,而难以达到全局最优.即使是针对不同流量的QoS 路由方案,也会出现如QoS 需求冲突、流量管理策略难以更改等问题[13].而由于全局视图的存在,SDN 在进行路由决策时能考虑到网络的流量分布,合理调控不同应用流量的传输路径,在提供优质的路由决策的同时减小网络堵塞发生的可能[14];其次,SDN 通过控制器下发流表,可以减小各节点维护路由表的控制开销或者源节点寻路的较长时延;最后,有电池电量限制的便携式节点的工作被大大简化,减小了电池电量的消耗.

近来已有研究致力于利用SDN 进行MANET 的路由优化,并在可靠性、时延、吞吐量等方面带来了不错的提升.作为这方面的一个先驱,文献[15]实现了一个SDN 和MANET 结合的简单原型,模拟了无线网络中可能出现的链路断开/恢复的过程,通过与最优链路状态路由协议(optimized link state routing,OLSR)进行对该变化的反应时间比对,证明了SDN 加快了网络对链路变化的反应速度,并提升了网络的总吞吐量;文献[16]利用SDN 构建全局视图,在此基础上进行相应传输路径的计算并下发给请求节点,而后通过和OLSR、AODV 等多种MANET 路由协议比对,证明了SDN 路由在无线网络里的优越性.除此之外,还有许多研究在如传输成功率、时延等QoS 要求或者视频传输、灾区通信等具体应用方面取得了不错的实验成果.文献[17]面向灾区通信场景,对于有时延、传输成功率、设备电量等限制要求的网络流量,将SDN 与MANET 结合,并应用了优先级算法,很好地降低了节点移动性对用户体验产生的不良影响,保障了视频流量的QoS 质量;文献[18]结合SDN 与MANET 进行水电站移动监控.其将树莓派与各种传感器集成到低成本硬件中,组成负责数据采集的MANET 节点,并通过Ad hoc 协议进行组网.此外,每个MANET 节点都配备了OpenFlow 交换机软件,以实现SDN 的集中控制.最后,其对OpenFlow 协议进行了扩展,提供移动性和敏感性操纵等物理动作,实现了水电站的移动监控.文献[19]针对流媒体传输,利用网络演算理论求解了流QoS 参数的确定性上界,并进行了归一化,建立多约束QoS 资源分配模型;此外其设计并实现了包括流表调度模型、路由功能、测量转发模块的基于SDN 的流媒体网络QoS 路由系统,提出了基于网络演算的多约束QoS 路由算法.实验结果表明其提出的多约束QoS 资源分配模型和基于SDN 的多约束集中QoS 路由算法具有良好的性能.

下面就相关路由研究进行分类介绍:

3.1 最短路由

最短路由一般针对带宽、跳数、时延等不同优化目标选取链路权重式,按Dijkstra 算法选出最佳路径进行数据传输.文献[20]从拓扑发现、路径请求、数据传输、网络更新等方面进行了详细设计,以剩余电量作为下一跳节点的选择标准选择路径,最终相较于OLSR、AODV,提升了网络生存时间.

3.2 流量分类路由/优先级路由

SDN 能根据从数据平面收集的网络信息合理规划链路资源,为不同应用流量进行优先级路由服务.文献[21]应用SDN 进行MANET 的流量调度,提出了路由算法RaDRT:SDN 控制器会通过定期收集以及事件驱动两种方式定期更新网络状态.在最初选路时,控制器会根据链路的可用带宽,并验证其长期连通性来选择稳定高速率的路径;在传输过程中,控制器会再次计算最佳路径以应对如链路已饱和或不可用等会影响QoS 的突发事件.如果路径已经饱和,控制器会按10% 的步幅限制其他低优先级发送节点的传输吞吐量,以保障高优先级流量的QoS 需求.仿真结果显示RaDRT 有效提高了吞吐量,同时能为高优先级流量提供良好的服务质量.

对于有时延要求的实时音频流量,文献[22]通过分析控制器从数据平面节点收集到的流信息,对控制数据、音频数据等不同种类的流量赋予不同的优先级,解决了网络由于需要支持不同应用而难以有效管理和分配资源的问题,同时满足了对时延敏感的实时数据要求.

3.3 层次式路由

为了解决控制器和数据平面频繁交互的开销问题,文献[23]结合SDN 提出了一种层次式的中心化路由协议CATMAN.数据层分为两种网络元素,一种为只具有短距离通信接口的普通节点(NN),另一种为同时具有短距离和长距离通信接口的fog 节点(FN).NN 以主动广播的方式维持其2 跳以内邻居节点的信息,每个NN 需要在2 跳内找到一个FN,当在2 跳内无FN时则广播自己的邻居节点消息,离其最近的FN 收到后则会根据此消息构造网络局部视图.在整个网络里,SDN 控制器只和FN 交互,构造网络拓扑结构并下发相应流表到FN.当节点间通信时,若源节点自身有目的节点的信息则直接根据路由表通信,否则发送路由请求信息到自己的所属的FN,由FN 负责查询目的节点的信息,若FN 发现两节点都是自己负责的NN,则返回路由回复信息,否则查询控制器得到路径,而后发送路由回复到源节点.这种在数据平面分层的方法,有效减少了控制器和数据平面节点的交互开销.实验表明CATMAN 的控制开销要明显低于BATMAN 协议,同时只造成了可忽略的时延增长.

文献[24]在思考SDN 与传统MANET 结合的方法时,提出了SDN 结合簇的方法:簇间路由由SDN控制器负责,而簇内则按MANET 方法进行组织.当有数据需要跨簇时,控制器首先计算流量需要经过的簇的顺序,而后反馈给发送方.发送方以此作为根据进行簇间的路由,在簇内则根据不同簇的特点,以特定的路由协议方法进行数据包的转发.文献[25]也结合了簇与SDN,簇头负责收集簇内信息和簇内路由,控制器则通过簇头构建全网抽象视图提供跨簇路由服务.而后依次提出了RMCMS、PMCMS 以及MPMCMS 三种多播路由方法,前两种分别通过反应式和主动式降低开销、减少时延,而M-PMCMS 在网络变化后使用增量方法仅发送更改的信息到控制器以减少更新的控制开销,同时保留主动式路由的低时延优势.仿真结果显示相较于MAODV,M-PMCMS 减少了时延以及丢包率.

3.4 多路径路由

多路径路由相较于单路径路由对于链路状态变化具有更好的平滑能力.其根据网络资源信息,将通信流量分散至多条满足业务要求的路径上传输,在提升网络链路资源利用率的同时,能减轻MANET 易出现的链路状态变化所造成的传输波动,提高可靠性和吞吐量.文献[26]结合SDN 与MPTCP,使得移动节点间的数据通过部署了SDN 设备的无人机和卫星两种路径进行传输,避免了当移动节点因自身移动而脱离无人机发信范围时发生的服务中断问题;SDN 控制器负责根据网络流量分布情况,应用FDM(flow deviation method)算法[27]进行带宽资源的合理分配,最终提升了传输的吞吐量.

文献[28]针对距离相近的多架无人机可能被同一恶意节点干扰,从而导致相近链路都被恶意消耗,同一路由的多条路径都被干扰的问题,设计了一种改进的多路径路由算法:控制器首先根据全局视图算出最优路径,而后算出多条与最优路径不相交、同时具有较远距离的路径,最终有效提高了数据包的传输成功率,但增加了一定的时延.

3.5 混合网络路由

战场网络组成元素复杂,各种标准的通信设备已经大量部署,若是要加入SDN 元素,则需考虑到成本、部署复杂度等问题.比较实际的方案是在现有网络部分关键节点部署SDN 设备,其余仍然使用传统设备协同实现战术任务.文献[29]将SDN 设备部署在具有较强通信能力的地面节点,负责将网络末端侦查无人机节点拍摄的视频传输给指挥中心,取得了良好的基于用户反馈的主观指标MOS(mean opinion score).

文献[30]将SDN 引入了网络路由,设计了一种基于SDN 转发和开放最短路径优先协议(open shortest path first,OSPF)的混合路由转发算法HRFA.这种混合路由将网络节点分为常规节点和SDN 转发节点,针对不同的网络节点选择有效的转发策略,以求在利用SDN 提高网络的路由性能时与传统组网节点相兼容.结果表明,与传统的路由转发方法相比,HRFA 可以很好地提高吞吐量,减少时延和丢包率.

表2 给出了以上相关路由研究的总结.

表2 SDN 在MANET 路由的相关路由研究

4 存在问题

SDN 交换设备依赖流表进行数据转发.当本地无匹配结果时,数据层设备需要通过南向接口请求控制器下发新的流表.如图2所示,整个路由转发过程需要依次经过请求流表、流表下发、转发数据3 个步骤.

图2 流表请求过程

将SDN 应用至战术MANET 路由的问题主要如下面5 个.

4.1 控制层可靠性

MANET 对等式结构的高健壮性是其能在机动通信场景里得到广泛的应用的一个主要原因.在MANET内,不存在中心节点,每个节点通过自身发送探测包对网络进行感知,基于节点间的反馈信息进行路由决策,不存在单点失效(single point of failure,SPoF)问题,对于单个节点的离开或加入具有一定的自主调整能力.而SDN 所主张的由逻辑集中的控制层进行全网流量的路径规划,虽然能从网络全局角度出发合理分配资源,但同时极大突出了控制层的角色.控制层需要对网络所有设备统一管理,收集端口信息、链路状态信息并通过下发流表的方式控制数据层流量的转发,随着平面的解耦,转发和控制平面之间的连接是否处于活动状态极为重要[31].而在机动通信场景里,节点的移动性和信道的不可靠性难以保证控制器可以和数据层进行稳定的交互,状态信息收集、流表下发在网络状态较差时可能难以保证.因外界干扰,造成控制器故障中断服务时会数据层会无法及时收到有效的流表,极可能造成网络大面积瘫痪.此时,数据平面的路由转发无法进行,战术任务难以开展.

4.2 流表下发时间

平面的分离意味着平面之间的额外通信需求,这可能增加转发的网络流量的延迟[32].SDN 设备完全按照控制器下发的流表匹配数据包,对流量进行转发、丢弃等相应动作.控制器为流设置路径时,需要和该路径上所有转发节点交互,配置每个节点的相关流表项.在这种情况下,SDN 面临的主要挑战是控制器需要在多个交换设备间实现快速更新,以减少网络收敛时间[33].然而相较于有线网络,MANET 一是没有稳定充足的带宽资源支持,二是控制器所部署节点和不同位置的节点之间的交互时长会存在一定的差异,部分节点需要通过多跳连接和控制器进行数据的交换.这些特点都可能会影响控制器更新流表的有效性.

4.3 控制开销

MANET 节点都具有一定的移动性,当其快速运动时链路状态会频繁地变化,造成整个网络具有极强的不稳定性.控制器为了维持有效全面的全局网络视图,需要频繁与所有节点进行交互,收集最新的网络信息如端口数据、链路状态等.该过程会产生大量的控制开销,在带宽较窄,网络资源有限的战场通信环境会对网络造成极大的开销负担.然而目前两个平面之间的数据路由和负载均衡的组合问题缺乏实际研究,平面间的通信开销也没有得到很好的评估[34].

4.4 混合网络元素

在实际应用中,考虑到现有设备已大量部署,SDN设备的普及需要经历较长的过渡期,部署数量,部署位置等问题都需要细致考虑.此外,如何在加入部分SDN设备优化网络的同时,使得现有网络设备与之协同工作也是需要思考的问题.如今虽然已有方案提议控制器和节点间维持集中控制组网,节点间维持自组织网络,但仍然缺乏与之相适应的路由机制[1].

4.5 扩展性

扩展性问题是大规模网络的一个常见问题.在SDN网络里,当节点数量增加,网络规模增大时,控制层的负担也会随之加重,每次网络更新时都需要处理大量的控制信息,而战场环境匮乏的带宽资源无法为控制器提供强有力的支撑.除此之外,当网络规模扩张时,网络的收敛速度会更加缓慢,影响到对上层应用的服务质量.

5 解决方法

SDN 技术最初是针对资源充足、网络稳定的传统互联网进行设计,而无固定设施、多跳传输、带宽资源匮乏、节点具有移动性等是战术MANET 特点.要利用SDN 技术改善战术MANET 路由,需要针对MANET的网络特点,对SDN 结构做出相应的修改或者添加额外的功能.

5.1 分布式控制:分散控制负担

分布式控制通过增加控制器的数量,利用冗余性将控制负担分散从而适配大规模网络.在SDN 里,分布式控制平面可以是控制器的集中式群集,也可以是物理上分布式的元素集合.一般第一种选择可以为设备密集的数据中心提供高吞吐量,但后者对各种故障具有更大的弹性,更适合不确定度高的战场环境.

多控制器可以有效解决SD-MANET 的可靠性、扩展性问题.相较于单控制器,多控制器通过管理一定区域内的小数量设备来分担控制平面的工作,同时可以通过将多个控制器分配给一个节点来提高两层连接的稳定性.这种方式OpenFlow 1.3[35]已提供支持,控制器共有3 种角色:Master、Slave、Equal.一个交换机只能与一个Master 控制器连接,当控制器角色为Equal 时,各个控制器作用相同,都可以对设备进行操作.当节点难以和Master 控制器取得联系时,可以选择从其他预先分配的控制器中选择一个作为替代,以保证流表的及时下发.

文献[36]提出两种战场分布式控制SDN 网络结构.如图3所示,分布式控制可以按照左侧联合式和右侧层次式两种结构进行组织.在联合式结构里,多个地位对等的控制器组成控制平面,互相同步网络信息.一般各控制器各自负责一定区域内的转发设备的信息收集,路径规划和流表下发;层次式机构则由局部控制器和全局控制器组成.以3 层结构为例,所有数据转发设备组成数据平面,多个局部控制器组成局部控制层,而在局部控制器一层上一个总的控制器组成第3 层总控制层.在此结构中,全局控制器负责根据局部控制器上报的局部网络信息构造全局网络视图,而局部控制器则负责与负责区域内的节点进行交互,以此构造局部拓扑,下发区域内部所有节点的流表;此外,总控制器负责给局部控制器下发域间的流表项,以引导域间的流量.

图3 联合式控制与层次式控制

当有足够的资源时,控制器可以维持网络全局详细拓扑信息,为所有数据流提供细粒度的服务.但在带宽资源不足,控制器处理能力有限时,维持全局网络的详细拓扑结构并不是必须的.文献[37]针对链路资源有限的网络环境在层次式结构里,应用了网络抽象方法,如图4所示,每个域被抽象为一台多端口的交换机,总控制器只需要通过局部控制器上报的域边界端口链路情况提供域间路由服务,而域内路由则由局部控制器负责,降低了网络开销.此外,当应用网络抽象时,这种层次式结构可以提高战场网络的机密性,各局部控制器只知道所负责局部拓扑,而不需要请求其他域的内部信息;全局控制器也只知道抽象的全局拓扑信息,并不保留各域的内部构成.这种结构能有效满足联合作战的安全性和机密性需求,使得不同来源的部队之间遵守NTK(need-to-know)原则[38].

图4 网络抽象

分布式控制虽然可以改善战术MANET 的扩展性和可靠性,但依旧存在着问题.文献[39]详细研究了分布式控制的交换机迁移过程,提出当新旧控制器间的控制权交接、节点和新控制器建立连接两个过程都会产生大量的控制开销,消耗一定的带宽资源并伴随着一定的时延;此外,各控制器之间需要交互同步网络状态信息以满足跨域请求,产生的控制开销对于资源缺乏的战术MANET 是较为沉重的负担,需要考虑多长时间各控制器进行网络视图的同步,协调控制器做出的管理决策[40].最后,多控制器的数量、部署位置会影响网络多个方面,例如性能指标、可用性、容错、收敛时间等[41].因此,在MANET 里确定SDN 控制器的数量和放置是需要细致考虑的问题之一.文献[42-44]对该问题进行了详细的分析研究,然而并不存在适用于任何网络的固定规则.

5.2 混合式控制:下发控制功能

控制层与数据层完全分离难以有效处理MANET的高变化性产生的问题,完全集中式的控制决定了每次相关链路发生变化,转发设备必须要控制器下发新流表才能继续工作.为了保留传统MANET 的健壮性,同时利用SDN 的流量调控能力,混合式控制改变了SDN 的控制/数据平面完全分离理念,保留了每个转发设备一定的控制逻辑,将控制分布在网络每一处以提升对变化的反应能力.

现在混合式控制主要有两种方式,一种为将传统MANET 路由作为SDN 路由的备用手段,当SDN 控制器失效时数据层节点本地启用分布式路由.文献[45]将AODV 路由协议与OpenFlow 结合,数据层节点定期向控制器发送链路状态信息,控制器以全局视图计算出最佳路径并下发转发规则至传输节点.在控制器失效时,数据层节点自身启动AODV 路由机制,进行分布式路由以维持网络工作.

另一种为数据平面配合控制器的全局视图进行路由.文献[46]指出由控制器负责网络全部控制功能并不适合频繁变化的网络,并提出了一种混合式控制的结构HSAW:控制平面收集网络全局信息,通过计算节点间发信范围互相干扰的比例,设置权重对链路进行评估,并将处理后的网络抽象视图通过控制信道下发给数据平面,数据层转发设备据此进行路由决策,通过数据信道进行数据传输.仿真结果显示,该混合控制结构相较于完全分离的网络结构,提升了移动网络的传输成功率并降低了控制开销.

文献[47]为了改善无人机群网络的可靠性,设计了Master、Slave 两种基于SDN 的无人机结构.在整个无人机网络中,每个簇由一个Master 节点和多个Slave 节点组成,其中Master 节点作为局部控制器,负责根据上层业务需求,对Slave 节点的运动路线、资源分配等进行统一规划;簇成员根据Master 节点下发的各种策略规则进行飞行轨迹的控制、传输路径的计算等.每个无人机节点结构相同,通过开启或关闭相应功能模块从而在两种角色中灵活切换,以解决Master 节点因电量限制、外来干扰攻击等内外因素导致的失效.网络采用基于订阅/发布通信模式的MQTT 协议[48],提高网络对变化的反应速度,灵活应对无人机群拓扑的频繁变化,最终提高网络可靠性以及生存周期.

Poularakis 等使用混合式控制提高SD-MANET 的可靠性,其首先在文献[38]讨论了SDN 在战术MANET中的应用前景,提出了一种层次式SD-MANET 结构,强调了SDN 混合控制和协同作战的重要性.而后在文献[49]中,在战术MANET 的背景下具体实现了一种利用状态机思想改进的OpenFlow 扩展协议Openstate[50]的灵活混合控制,为节点设计了本地备用路由规则以应对链路失效,并对总的通信开销进行了数学优化.在真实战术自组织网络数据集的仿真结果表明该方法最多可以将50%的数据包路由到其目的地,而控制开销比集中式控制的SDN 网络低一个数量级.此外,文献[51]通过在手机和电脑上部署SDN 网络,验证了部署多控制器并不能很好解决SD-MANET 的可靠性问题,为此设计了一种结合分段路由的混合式控制架构:数据平面根据控制器下发的段列表确定下一跳,通过传统路由协议进行路由.文献[52]面向现代作战的联合作战需求,首先部署了多个物理上分布,逻辑上集中的控制器组成控制平面,分别放置在网络的不同级别,如从指挥中心的云服务器、无线基础设施节点、移动设备(车辆)等,用于对网络进行灵活控制.而为了在战术MANET 场景里实现更高效可靠路由,其增加了在移动节点本地运行的分布式路由机制来作为备用控制方法,通过应用图神经网络的变体图注意力网络(graph attention networks,GAT)来预测网络动态和碎片事件,从而预先运行分布式路由协议来重新计算路由路径从而防止网络故障发生.其仿真基于用于模拟真实战术MANET 场景的战术MANET 数据集,结果显示该方法能以较小的输入特征得到较高的预测准确率,并有效应对网络变化.

混合式控制针对MANET 的特点进行了相应的整体结构设计,理论上能结合MANET 的鲁棒性和SDN的高效.但这种方法设计复杂且开销高.数据层设备需要同时支持SDN 和传统MANET 两种控制逻辑,信息收集和路径配置会造成更多的控制开销.除此之外,这种方式对硬件也有额外的要求,在实际中生产支持两种控制逻辑的设备会产生更多的制造成本.

5.3 分段路由:改进转发规则下发方式

传统MANET 路由包括表驱动路由和源路由,其中在表驱动路由中,每个节点自身会维护一个路由表,并根据它进行相应数据包的转发.对于到来的数据包,节点可以快速匹配路由表实现对数据包的快速转发,然而这种方式需要定期更新路由表,造成的协议控制开销较大.源路由则通过在源节点就定义好整条路径,将中间所需要经过的设备顺序加在数据包上,避免了每个节点都需要维护、查询路由表所产生的开销.而传统MANET 的源路由协议如DSR 需要在收到需求后广播请求包进行路径寻找,并等待接收方回复.这一过程对于请求方需要一定的等待时间,当流量对时延敏感时更是难以满足需求.

分段路由(segment routing,SR)利用源路由的思想,在源节点数据包上就配置完毕发送路径,从而减少为中间节点配置流表项所带来的开销和时延;同时充分结合SDN 的中心化控制,避免传统源路由寻路过程所造成的较长时延,实现了更简单、更灵活的路由[53].如图5,当发送方A 请求服务时,控制器根据全局视图计算合适路径,并以段列表的方式告知A 所需经过的链路.A 在数据包头部附上标签,而后交付给对应的下一跳节点B.B 收到该数据包后不需要查询路由表,仅需要识别数据包标签对应的链路,交付给相应端口,直到传输给接收方C.在这一过程中,控制器不需要为路径上所有节点配置流表项,有效减少了控制器配置路径产生的时延;同时,当网络拓扑发生变化时,对于正在服务的流,控制器只需要更改下发的段列表,从而避免修改所有相关设备的流表项,减少了额外的时间开销,实现对网络变化的快速反应和轻便快速的路由更新[54].

图5 分段路由

文献[55] 针对机载骨干网(airborne backbone network,ABN),在使用层次式控制加强SD-ABN 可靠性的基础上应用了分段路由进行转发规则的下发.SDABN 将控制层分为ABN 控制器和平台控制器两部分,分别承担网络总控制器和管理各飞行器的局部控制器的角色.网络整体由控制节点、流量转发节点以及连接末端子网的网关节点组成,为战术网络单元如飞行网络、海上网络、陆地网络等提供彼此通信.该文献对流表下发过程进行了详细的设计实现,当收到节点转发请求后,平台控制器会生成支持SR 的路径计算单元通信协议(path computation element communication protocol,PCEP)消息将路由策略下发至请求节点对应的SDN 节点,由无线电模块访问无线信道发送至ABN 控制器.ABN 控制器计算出所需的多条可靠路径后,最终将路由策略反向下发给请求节点.实验结果表明SR 在网络规模扩大时能有效提升控制器更新效率并减少网络收敛时间和控制开销.

5.4 结合其他架构:提升数据层适应能力

时延容忍网络(delay tolerant network,DTN)最早是星际互联网(interplanetary internet,PN)的体系结构,而后被扩展到地面无线网络等其它类型网络,旨在以存储转发的方式解决链路中断以及间歇性连接之类的问题[56].取决于具体应用类型,链接中断的时间范围从几秒钟到几小时不等.在遇到这类情况时,DTN 节点会临时存储转发数据,直到可以将其转发到下一个具有DTN 功能的节点或目标节点为止.文献[57] 利用DTN 处理链接中断的能力弥补SDN 面对链路状态变化的能力,定义了一种体系结构解决方案.在该结构中,数据层节点同时支持DTN 和SDN,并通过选举算法产生Master 节点充当控制器角色.Master 节点内部的SDN 模块主要负责收集全局链路状态信息,而DTN 协调器模块则通过SDN 控制器收集的数据来调度DTN节点之间的数据传输.数据层DTN 节点会在目标节点不可访问时临时存储延迟容忍数据,并按照Master 节点下发的转发规则将数据发送到目的地或邻居节点.仿真结果显示针对战术边缘网络视频传输任务,该结构仅产生了少量的视频停顿,比其他结构具有更好的适应性.

信息中心网络(information centeric network,ICN)是一种以命名数据对象为中心的网络结构.和IP 网络以端口和主机名进行寻址和路由的方式不同,ICN 通过数据复制,将有效数据缓存至节点内部,以实现以INTEREST/DATA 消息为匹配规则的通信:消费者通过发送INTEREST 消息(要检索的命名数据)来请求数据,而生产者(或执行网络内缓存和存储的中间节点)返回匹配的DATA 消息.ICN 通过缓存复制增强信息分布,能有效应对通信服务中的断开连接、中断等问题[58].文献[59]将SDN 与ICN 结合以解决战术机动网络的可靠性和安全性,其中ICN 主要体现在数据层,以提高故障发生时的传输可靠性并减少转发时延(因为数据被缓存在请求者附近);SDN 主要在控制平面中起着两个关键作用:一是充当网关,实现ICN 数据包和IP 包的互相转换;二是通过在数据层交换的INTEREST/DATA 消息来建立和控制所有网络节点的交互模式.通过接收具有节点状态的DATA 消息,SDN 控制器能够感知网络状态并在发生拥塞/中断之前过滤大型DATA 消息,从而实现路径的优化和开销的降低.表3 给出了以上相关研究的总结.

表3 问题以及方法相关研究

6 结束语

传统MANET 路由协议虽然能实现战场机动任务的通信要求,但其分布式性质一定程度上限制了其在实际场景的表现.SDN 作为集中式网络体系结构,能从全局角度提升MANET 资源管理能力,为不同业务流量提供高质量的QoS 路由服务.但由于其集中式控制特点,在改善网络的同时也会带来如可靠性、流表有效性等新的问题.目前虽然已有许多研究针对不同场景、不同应用做出了相应改进,但由于SDN 发展的时间较短,特别是在无线网络研究不多,实际应用还是有许多适应性问题亟待解决,系统性的部署方案尚也欠缺.未来SDN在战术MANET路由应用中还有以下方面可以进行研究:

(1)引入机器学习预测网络未来状态进行故障避免.

目前结合SDN 和机器学习的路由研究大多应用在路径选择上,往往通过输入如链路状态、流量矩阵等信息输出传输路径,且应用场景几乎在数据中心等较为稳定的网络中.而在战术MANET 中,受具体任务牵引,MANET 节点的移动性具有一定的规律可循.所以除了进行路径选择外,机器学习方法可以被用以针对SDN 缺乏处理MANET 节点频繁移动特点的问题,预测如节点移动轨迹、未来链路状态等信息,使得控制器能提前进行路径切换,避免传输失效从而保障路由QoS 质量.

(2)控制器如何在MANET 里与各数据节点建立动态高效连接.

SDN 转发设施依靠集中式网络控制器对行为和操作进行定义.这不可避免地需要在边缘节点和集中式网络控制器间维持高速传输,而这在无线网络中通常不可用[60].目前大多研究都是假设控制器和数据平面各节点之间具有直接相连的链路,而在战术MANET中控制器也会被部署在一些特定节点上,其余不相邻末端转发节点与控制器节点间需要建立多跳连接.如何在高度变化的战术环境里动态维持各控制器和移动节点间的高效连接需要被考虑.

(3)减少控制开销.

SDN 控制器需要与数据层节点进行交互以更新网络视图.目前大多路由技术通过分层以减小控制信息的数量,但在资源缺乏的战术环境下,控制开销会随着网络变化速度加快而增多.路由协议仍然需要进一步轻量化,减小控制开销带来的负担.此外,在应用混合式控制时,数据层节点需要同时运行MANET 和SDN两种控制逻辑,易造成更大的控制开销.未来需要合理设计交互机制,在确保增强节点对网络变化的适应能力的同时,减少控制开销对带宽资源的消耗.

猜你喜欢
链路路由控制器
一种移动感知的混合FSO/RF 下行链路方案*
三转子式比例控制器设计与内泄漏分析
南京溧水电子3款控制器产品
数据通信中路由策略的匹配模式
一种用于6LoWPAN的多路径路由协议
OSPF外部路由引起的环路问题
基于NFV的分布式SDN控制器节能机制
一种IS?IS网络中的链路异常检测方法、系统、装置、芯片
基于热备份提升微波站点传输稳定性
智能液位控制器在排水系统中的应用