• 工作总结
  • 工作计划
  • 心得体会
  • 领导讲话
  • 发言稿
  • 演讲稿
  • 述职报告
  • 入党申请
  • 党建材料
  • 党课下载
  • 脱贫攻坚
  • 对照材料
  • 主题教育
  • 事迹材料
  • 谈话记录
  • 扫黑除恶
  • 实施方案
  • 自查整改
  • 调查报告
  • 公文范文
  • 思想汇报
  • 当前位置: 雅意学习网 > 文档大全 > 公文范文 > 正文

    一种基于路径跟踪反馈的SDN网络可信传输方案

    时间:2023-06-05 22:20:06 来源:雅意学习网 本文已影响 雅意学习网手机站

    高 枫,庄 毅,刘 骁

    (1.南京航空航天大学计算机科学与技术学院,江苏 南京 211106; 2.上海航天电子技术研究所,上海 201109)

    软件定义网络(Software Defined Network, SDN)[1]凭借可编程和集中管理的特点,在互联网各个领域的应用中得到广泛认可,被认为是下一代互联网的核心技术之一。SDN通过明确分离控制平面和数据平面,取代传统网络设备数据与控制的耦合机制,实现了对网络的集中控制,并以软件可编程的形式向上层应用提供接口。网络管理员可以自定义网络路由和传输规则策略,借助逻辑集中的控制器为数据平面的转发设备(例如OpenFlow交换机)下发转发规则,加快了新网络服务的部署和开发,能够有效解决传统网络架构在可靠性、扩展性和灵活性方面存在的许多问题。然而,SDN技术的应用也带来了新的安全威胁[2]。区别于分布式的传统网络,SDN体系结构包含数据平面、控制平面、应用平面以及南北向2个接口,均面临一定程度的安全风险。

    数据平面作为SDN的底层架构,负责接收控制器的命令并承载流量传输的功能,与网络的实际行为密切相关,是整个网络正常运行的基础。SDN数据平面主要由SDN交换机组成,与传统的网络交换机不同,SDN交换机只负责数据转发,不做决策。当SDN交换机接收到无法匹配的报文时,通过南向通道将报文信息发送到控制平面查询处理方法,应用程序根据自定义策略制定转发规则发送到SDN交换机流表,当再次遇到相匹配的数据包时,会根据现有规则对该数据包进行转发处理。流表是SDN交换机的重要组成部分之一,负责流规则存储、数据包匹配和转发。每个流表都包含一组流规则条目,每个条目由匹配字段、计数器和一组应用于匹配数据包的指令组成。

    目前,基于SDN的研究与应用主要集中在借助控制平面的全局视野和可编程性实现对数据平面的灵活调度。虽然SDN在发展过程中考虑了安全问题,但大多数SDN规范侧重于在控制器和交换机之间建立可信控制通道,而忽视了数据平面中转发设备自身的安全性。通常,数据平面中的网络设备被认为是可信的,它们能够正确执行指定的网络转发策略。然而,随着SDN网络应用规模的逐渐扩大,数据平面中的网络设备极易受到恶意攻击者的威胁。同时,SDN也缺乏相应的问责机制来验证转发规则的正确执行和传输数据的完整性。一旦设备失效或被劫持,所有依赖的网络服务将立即受到影响,造成灾难性的问题。

    SDN交换机作为数据平面最重要的设备之一,成为恶意攻击者的主要目标[3]。攻击者不仅可以利用交换机操作系统中的漏洞和后门来破坏交换机,从而执行窃听数据、篡改转发规则等恶意操作[4];
    也能够利用控制器和交换机之间的控制信道(例如OpenFlow南向接口)对交换机发起攻击,由于在OpenFlow1.0之后,SSL/TLS的使用变成了可选的而非强制性的[5],这使得攻击者可以通过控制通道插入或修改交换机流表中的转发规则,这种方式在某种程度上类似于中间人攻击。借助上述方式,攻击者甚至可以通过删除或操纵针对防火墙的规则,使一些未知的数据包绕过防火墙,因此,现有的针对传统网络的安全解决方案并不适用于SDN。

    目前基于SDN架构实现可信传输的研究大多数集中在识别或检测恶意交换机,通过控制器周期性的主动探测来验证转发规则的正确性以确定SDN交换机的可信性,并为受影响的流量规划新的传输路径。很显然,这种检测方式会耗费控制器大量的计算资源,并且规划传输路径时仅以可达性为目标,而没有考虑如何安全可靠地实现容错数据传输。为此,本文提出一种基于路径跟踪反馈的SDN可信传输方案,通过传输路径的可信验证和多路传输的转发策略,扩展了SDN的安全性与可靠性。具体贡献如下:1)设计基于跟踪反馈的传输路径可信验证机制,由控制器计算并下发加密的探测数据包,根据路径中SDN交换机的反馈信息,验证传输路径的可达性和传输数据的安全性。2)考虑到SDN中数据传输依赖于SDN交换机流规则驱动的特性,本文提出一种基于路径跟踪反馈的不相交多路径可信路由算法DMTRA-PTF(Disjoint Multipath Trusted Routing Algorithm based on Path Tracking Feedback),能够通过路径跟踪反馈得到的信任信息实现传输路径的可信评估,以此为路由请求选择合适的多路径传输方式,可保障SDN中数据的可信传输。3)使用Ryu控制器和Mininet构建了SDN网络仿真环境,并通过相关实验验证所提出的可信传输方案的有效性。

    由于网络设备不可避免的故障以及网络攻击的频繁发生,网络通信安全一直是研究热点。针对SDN网络可信传输的研究工作主要分为2个方向,确保传输路径的可达性和传输数据的安全性。

    确保传输路径的可达性是SDN数据传输的基本要求,借助控制器主动对受损的SDN交换机进行故障检测,并从网络的全局视野为数据传输规划可靠的路径。在软件定义网络中,通常采用主动式和被动式恢复方案实现对发生物理故障的组件提供容错机制[6]。它们的区别在于,被动式方案在故障发生后计算替代路径;
    而在主动式方案中,资源和备份路径在故障发生之前被预先编程,当故障发生时,不需要控制器的额外处理就可以直接将受影响的业务流迁移到备份路径上。然而,存在安全风险的SDN交换机可能被攻击者修改转发规则而导致转发功能故障。Shukla等[7]提出了一种SDN数据平面一致性检测方法,通过主动发送探测包来验证流规则执行的正确性并确定单个交换机的安全性。Sasaki等[8]提出了SDN安全扩展网络SDNsec,使用消息认证码(Message Authentication Code, MAC)来检查转发路径是否与网络策略相一致。但是,随着需要检查的转发路径数量的增加,使用消息验证码会导致控制通道产生大量的带宽开销。为此,Zhang等[9]使用压缩MAC的规则执行验证方法,从而显着降低带宽成本,并且提出了一种启发式流选择算法,能够最小化控制器验证规则所需的检测数据包的数量,提高了检测效率。

    在满足可达性的条件下,确保SDN传输数据的安全性成为研究的另一个重要目标。Mohammadi等[10]提出了一种利用数据包头部信息的SDN网络入侵检测方案,将整个网络视为一个入侵检测系统,通过关联网络的转发状态(即安装的转发规则)与数据包的转发状态(即真实的数据包路由),能够快速检测产生错误消息、复制窃取流量或恶意丢弃某些类型数据包的交换机。Li等[11]提出了一种检测和绕过执行数据包修改攻击的恶意交换机的方法,首先在终端主机和SDN控制器之间建立通信通道,通过加密认证方案来验证接收到的数据包的正确性,并将验证结果报告给控制器,对检测到的交换机恶意行为做出应对,为数据流重新选择可信任的路径从而实现安全可靠的传输。然而,在终端主机和控制器之间建立新的连接或使用控制器频繁地收集信息进行校验无疑增加了链路成本和控制器的负载。由于SDN采用中心化的控制平面能方便地实现对路由的精准控制,多路径路由成为提升SDN传输安全性的另一个重要手段。Guillen等[12]提出了一种基于k最大不相交路径的SDN多路径路由算法,不仅提高了整体吞吐量和资源利用率,而且保证了多路径下网络数据传输的安全性。Ren等[13]提出了一种基于多路径弹性路由的内生安全SDN网络框架,包含多路径比较转发、多路径加权转发和多路径随机转发的路由方案,设计了一种基于加密认证的中间信息反馈机制,通过动态比较一定时间内多异构路径数据的一致性来保证流规则和数据内容的正确性,并且可以准确识别恶意交换机。虽然在SDN中使用多路径路由能够提升网络攻击的复杂度和花费,降低攻击成功率,提升传输数据的安全性,但其由于缺乏主动检测和恢复的机制,容易造成较大的资源浪费。

    综上所述,虽然在SDN网络可信传输领域已有较多的研究成果,但是仍然存在以下不足:1)利用SDN交换机/终端主机检测数据异常的方法往往需要额外的设备成本,检测机制复杂且不具有通用性;
    2)通过控制器下发探测信息对路径转发功能进行检测的方法通常建立在端到端可达性的基础之上,不能涵盖SDN交换机被攻击后的多种情形;
    3)基于多路径路由的SDN网络传输机制,往往将可达性和安全性分开考虑,难以应对真实网络环境下的安全威胁,仍有改进空间。

    SDN中的数据平面由SDN交换机和主机等设备组成,是网络通信的基础。如果控制器无法衡量SDN交换机的可信性,就不能保证分配的路由路径是安全的,难以有效部署网络资源。为此,本文设计一种基于跟踪反馈的传输路径可信验证机制,兼顾传输路径的可达性和传输数据的安全性,能够快速定位路径中的恶意交换机并将验证信息反馈给控制器进行动态路由调度。

    2.1 问题描述

    区别于传统分布式网络中逐跳计算的路由决策方式[14],SDN具备逻辑上集中的控制平面,能够收集网络状态和拓扑信息,为上层网络控制应用程序提供高级视图。由控制器负责决定如何根据策略处理数据包,然后将这些决定以下发流表规则的形式推送到构成网络的SDN交换机。在SDN中,传输的信息被抽象为流的概念,即在一定时间内经过同一网络的一系列具有相同属性的报文集合[15]。因此,SDN交换机对于数据平面中的任何数据报文,只需使用相应的流表进行匹配并执行对应操作。但是,当SDN交换机出现故障或遭受恶意攻击时,会造成流量传输异常,严重威胁端到端通信的可靠性和安全性。如何保证实时、可信的信息传输是本文研究的主要问题。

    当SDN交换机被攻破时,攻击者可能会发起2种攻击,被动攻击和主动攻击[16]。被动攻击很难检测到,因为被攻破的SDN交换机依然可以正确执行转发功能,攻击者可以悄无声息地获取其中的所有信息。对于主动攻击,攻击者将命令被攻破的SDN交换机执行异常操作或对正常工作的SDN交换机发起拒绝服务攻击等方式[17],从而使其不能正确接受和执行SDN控制器的指令。在这种情况下,尽管SDN控制器能够向SDN交换机发送命令请求SDN交换机将流表信息上传给控制器,但攻击者可以轻易操作SDN交换机向控制器回传携带正确流表信息的报文,实际运行过程中则无需遵循这些转发规则[18]。所以控制器主动查询SDN交换机中的流表规则不能成为有效的检测方法。本文致力于解决主动攻击导致的路径可信问题,攻击者可能会操纵SDN交换机执行如下恶意行为:

    1)拒绝服务导致的路径传输中断。

    2)流规则篡改导致的不正确的转发。

    攻击者可以篡改被攻破SDN交换机中的流表,导致其不遵循控制器下发的流规则。例如,图1中正确的转发路径为S1-S2-S3-S4-S5,若该路径中的SDN交换机S2被攻击者劫持并修改流表规则,则可能出现下列的不正确转发情形:①路径错误偏移,经过SDN交换机S2的转发操作,数据包偏离正确路径并且不会返回到正确路径的下游SDN交换机;
    ②路径收缩偏移,SDN交换机S2将数据包从错误的端口转发,跳过路径上的部分交换机最终到达正确的目的SDN交换机S5,即数据包仅由正确路径中SDN交换机的子集转发;
    路径绕道偏移,经过SDN交换机S2转发后,数据包偏离正确路径但稍后又返回到正确的下一跳下游SDN交换机,最终到达正确的目的SDN交换机S5。

    图1 流规则篡改导致的SDN交换机恶意行为

    3)数据包篡改。

    攻击者可能会通过被攻破的SDN交换机修改数据包内容,导致接收方接收到错误的传输信息。尽管数据包可能受到加密技术的保护,但这种攻击可能会导致解密错误而阻止后续的所有通信。

    2.2 基于跟踪反馈的传输路径可信验证机制

    由于缺乏路径验证机制,SDN控制器不知道数据包传输的实际路径,在本文提出的SDN传输路径可信验证机制中,由SDN控制器负责计算网络传输路径,同时为途经的SDN交换机下发添加向控制器反馈动作的转发规则。从而实现对路径探测信息的逐跳跟踪,验证传输路径的可达性;
    并通过校验反馈数据包与探测数据包中携带探测信息的一致性,验证数据传输的正确性。并且,该方法的验证流程中无需为SDN交换机添加额外的硬件功能,具有良好的通用性。

    本文通过五元组(源/目标IP、源/目标端口号和传输协议)信息识别流,并为其部署待验证路径。同时,为了增加控制器发现恶意行为的能力,需要根据流信息实时计算探测信息并作加密处理以保证其安全性,探测信息MSGverify计算方法如式(1):

    MSGverify=HASH(Header‖Timestamp)

    (1)

    其中,符号‖表示连接,HASH是密码哈希函数,用于防止探测信息被攻击者识别或篡改;
    Header是从路由请求头部提取的的五元组信息,例如TCP头部结构中的五元组信息;
    Timestamp是计算探测信息的时间戳,用于防止重放攻击。

    设计的传输路径可信验证流程如图2所示,主要步骤如下:

    图2 传输路径可信验证流程图

    1)源节点主机发送流flow;
    2)源节点主机连接的源SDN交换机S1收到flow的第一个数据包后,通过PACKET_IN消息将结果发送给控制器;
    3)控制器计算待验证路径,并以流表的形式向路径中的SDN交换机下发对应路径转发规则,各SDN交换机在转发探测信息的同时复制反馈给控制器;
    4)控制器根据流信息计算并发送匹配对应流表规则且带有探测信息MSGverify的探测数据包;
    5)当探测数据包通过路径中的SDN交换机时,控制器会依次收到传输路径中SDN交换机的反馈信息,以此来校验数据包是否被正确转发以及是否被篡改,能够细粒度地验证路径的可信性。考虑到出现恶意SDN交换机节点导致路径不可达的情形,经过多次实验,本文设置相邻SDN交换机校验数据包等待时延为10 ms,超出该时间限制未收到反馈信息,则认为可信验证失败。

    当且仅当路径中的SDN交换机能按序反馈探测数据包且携带的探测信息与下发内容一致,则该路径被认为是可信的,各SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1;
    否则,定位首个未反馈探测数据包或反馈的探测信息MSGverify与下发内容不一致的SDN交换机,将其视为恶意交换机,如图2(c)所示,将路径中位于恶意交换机之前的SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,并且将恶意交换机的转发校验信息的总次数增加1。

    路径可信验证成功的情况如图2(b)所示,当路径可信验证成功后,只需要修改途经SDN交换机流表项中多余的匹配动作,即去掉复制数据包转发到SDN控制器的动作。这样带来的好处是,在修改过程中不需要考虑该更新操作的一致性问题,可保证传输的效率。

    目前,网络对安全性的需求越来越大。现有的单路径传输方案由于缺乏鲁棒性考虑,当发生交换机故障或遭受攻击时,不可避免地会导致流量中断或错误。不相交路径提供的多样性可以提高通信网络的生存能力,本文在构造基于跟踪反馈的传输路径可信验证机制的条件下,提出传输路径信任度动态评估方法,能够为数据传输选择多条不相交可信路径,以保证传输方案的安全性和可靠性。

    3.1 网络模型及假设

    传输路径是典型的串联可靠性系统,一旦其中的某个转发节点由于遭受攻击或出现故障而失去作用时,会给整条路径所承担的传输任务造成严重危害。本文借助路径跟踪反馈机制动态采集计算SDN交换机可信度,并以此设计了路径评估方法。为了简化对存在SDN交换机安全风险的网络环境进行有效的路径评估,本节作出如下假设:

    1)网络由逻辑上集中的SDN控制器、若干SDN交换机以及终端主机组成;
    2)网络具有恰当的结构设计与硬件资源配置,端到端存在不相交的多条传输路径;
    3)SDN控制器是安全的,且控制器与SDN交换机之间的控制通道使用TLS协议进行保护。

    基于以上假设,可以把SDN网络看成一个无向图G=(S,L,C)。集合S是一组网络转发节点,其中每个节点表示网络中的一个SDN交换机。集合L={lij=|si,sj∈S}是连接S中转发节点的一组边,每条边代表一条相邻SDN交换机间的逻辑链路,并且都是双向的。集合C是网络转发节点的校验反馈计数的集合,对于每个转发节点,都存在(Countproper,i,Counttotal,i)∈C与之关联,Countproper,i表示SDN交换机si正确校验反馈的次数,Counttotal,i表示SDN交换机si转发校验信息的总次数。

    在路径跟踪反馈过程中,控制器收集每台SDN交换机的验证反馈信息并记录其正确验证次数和总验证次数,由此计算SDN交换机的可信度值,计算方法如式(2):

    (2)

    其中,Countproper,i表示交换机si正确校验反馈的次数,Counttotal,i表示交换机si转发校验信息的总次数。

    3.2 威胁模型

    本文提出的SDN网络可信传输方案面向以下威胁模型:

    1)本文重点关注网络中核心交换机的安全性,而恶意边缘交换机不在本文的研究范围内。

    2)攻击者有能力向SDN交换机发起拒绝服务攻击,导致传输路径的中断。

    3)攻击者可以利用SDN交换机的漏洞和后门来操纵数据包或流规则,使数据流不按指定路径传输或遭到篡改。

    4)网络构建之初是安全的,SDN控制器能够获取初始网络拓扑结构,攻击发生在网络建立后。

    3.3 基于路径跟踪反馈的SDN网络可信传输框架

    基于路径跟踪反馈的SDN网络可信传输框架包含逻辑集中的控制器和由若干SDN交换机及终端主机组成数据平面,如图3所示。控制器中包括多路径计算模块、转发路径下发模块和验证反馈模块,借助网络运行信息库中的网络状态信息,实现可信传输的目标。

    图3 基于路径跟踪反馈的SDN网络可信传输框架

    在控制器中,多路径计算模块从网络运行信息库中获取网络拓扑和SDN交换机信任信息,使用可信路由算法计算转发路径,交由转发路径管理模块和验证反馈模块对该转发路径进行可信验证,并收集跟踪反馈信息,筛选合适的传输路径并确定多路径传输方式;
    转发路径下发模块负责处理多路径计算模块输出的路径信息,以流/组表的形式下发给SDN交换机执行;
    验证反馈模块负责对转发路径管理模块下发的待验证路径下发探测信息进行可信验证,收集路径中每个SDN交换机是否正确完成转发功能的验证结果反馈给网络信息库,记录各SDN交换机正确校验反馈的次数和转发校验信息的总次数,同时将检测到的恶意交换机信息反馈给多路径计算模块,以调度转发路径管理模块及时清除验证失败路径对应的转发规则。

    3.3.1 不相交多路径设计

    SDN借助流表实现灵活的路由调度和特定的数据包处理,SDN交换机使用三态内容寻址存储器TCAM(Ternary Content Addressable Memory)[19]来存储流表信息,由于TCAM中每个bit位除了拥有0和1这2个状态之外,还有一个“don’t care”状态,使得其既能进行精确匹配查找,又能进行模糊匹配查找,适用于数据包的快速匹配和转发。然而,SDN交换机中的TCAM空间非常有限,流表通常只能够安装数千条流规则[20]。为了限制多路径路由随着网络规模的扩大和路由任务的增加而导致的SDN交换机中转发规则数量的爆发式增长,本文对多路径传输的路径数目和路由策略进行改进。

    不相交多路径能够有效保证路径各自独立,互不影响。当某条路径中断导致路由失败时,与其不相交的备用路径能够继续执行传输任务,从而有效提高传输的连续性;
    在安全情况下,也能使用并行传输的策略来提高传输效率。路径不相交可以通过节点不相交[21]和链路不相交[22]这2种方式实现。相较于链路不相交,节点不相交的多条路径之间,除了共享源节点以及目的节点外,不存在共享的节点和链路,能够保证在传输时不存在节点或链路的单点故障,因此又被称为完全不相交路由。其容错能力更强,形成的多条路径也更为安全可靠,但其对网络结构存在一定的要求。同时,对于网络整体而言,端到端传输路径数量并不是越多越好,过多的冗余路径会增大路由计算的开销和转发规则的部署时延。在本文研究的网络模型中,重点关注SDN交换机节点的安全性,因此采用节点不相交双路径路由方案,以降低对网络结构及SDN交换机转发规则存储空间的要求,扩大传输方案的适用范围。

    本文使用的多路径传输方式包括并行转发和复制转发,如表1所示。源交换机的报文匹配流表规则后,将报文转发到指定组表中执行相应动作,使用其中的SELECT操作,每次选择一个端口转发一份数据包,本文为每条路径设置相同的权重用于分配数据包以实现提升资源利用率和负载均衡;
    使用ALL操作为每个指定的端口复制转发一份数据包实现复制转发的传输方式,能够在存在路径安全风险的情况下最大程度保证传输的安全性。

    表1 2种多路径转发方式

    3.3.2 路径可信度计算

    面向可信传输的多约束最优路径问题和不相交路径选择是NP-hard问题,需要满足如最小跳数、选用较高可信度节点、多路径节点不相交等条件,难以在多项式时间内求解[23]。为了简化路径计算复杂度,本节给出了路径可信度及其阈值的计算方法,满足可信度阈值要求,即可信度大于等于可信度阈值的路径可用于可信传输。SDN交换机平均节点可信度ravg计算方法如式(3):

    (3)

    其中,|S|表示网络G=(S,L,C)中SDN交换机节点集合S中元素的数量,即SDN交换机节点的总数,r(si)表示第i台SDN交换机si的可信度。

    假设某条传输路径为path=(V,E),V⊆S为该路径经过的SDN交换机节点集合,E⊆L为该路径经过的链路集合。那么该路径的可信度C(path)计算方法如式(4):

    C(path)=∑v∈Vr(v)

    (4)

    其中,v表示路径经过的SDN交换机节点,则该路径可信度阈值Cthreshold(path)计算方法如式(5):

    Cthreshold(path)=(ravg)|V|

    (5)

    其中,|V|表示传输路径path途经的SDN交换机节点集合中元素的数量,ravg为当前网络中SDN交换机平均节点可信度,路径可信度阈值的计算方式为ravg的|V|次方。

    3.3.3 基于路径跟踪反馈的不相交多路径可信路由算法

    在本文提出的可信传输方案中,SDN控制器为路由请求计算每条传输路径时,均使用当前时刻的节点可信度信息和网络拓扑。采用深度优先算法获取源节点和目的节点之间所有路径,然后将所有路径依据路径长度进行排序并按序遍历,搜索满足可信度阈值要求的路径,若未找到则选取可信度最高的路径,进行路径可信验证并根据反馈结果更新节点可信度信息。重复上述步骤直至得到2条通过可信验证的不相交路径,若2条路径可信度均大于等于可信度阈值,则采用并行转发的方式传输,提升链路资源利用率以提高传输速度;
    否则,采用复制转发的传输方式,以满足应用层通过对比路径传输数据的一致性,从而在存在路径安全风险的情况下最大程度保证传输的可信性。算法具体步骤如下:

    Step1 读取当前时刻的网络信息G=(S,L,C)作为算法的输入,包括拓扑结构、SDN交换机的正确校验反馈的次数和转发校验信息的总次数,同时解析路由请求中对应的源交换机节点ssrc和目的交换机节点sdst;
    Step2 根据式(3)计算网络中所有交换机节点的可信度平均值;
    Step3 使用深度优先算法计算源节点ssrc和目的节点sdst之间的所有可行路径集合Paths;
    Step4 按照路径长度从小到大排序后,按序遍历Paths集合中的每条路径pathi,根据式(4)和式(5)计算并搜索首次可信度值大于等于可信度阈值的路径作为待验证路径patht,若找到,则跳转到Step6;
    Step5 挑选Paths中可信度最高的路径pathm作为待验证路径patht,跳转到Step6;
    Step6 对路径patht进行可信验证反馈,更新交换机节点的对应验证次数,验证正确则保留该路径加入不相交可信传输路径集合Pathstrust,并从读取的拓扑信息中删除该路径经过的除源节点和目的节点之外的节点信息;
    否则,跳转到Step2;
    Step7 若不相交可信传输路径总数为1,则跳转到Step2;
    Step8 若源节点ssrc和目的节点sdst间用于传输的2条路径均能满足可信度值大于等于可信度阈值,则采用并行转发的传输方式;
    否则,采用复制转发的传输方式。

    本文提出的基于路径跟踪反馈的不相交多路径可信路由算法的伪代码如算法1所示。

    算法1 基于路径跟踪反馈的不相交多路径可信路由算法

    输入:网络信息G=(S,L,C),源交换机节点ssrc,目的交换机节点sdst

    输出:不相交可信传输路径集Pathstrust,传输方式Ts(Ts为1表示并行转发,0则表示复制转发)

    1.setPathstrust=[],Paths=[],Ts=0

    2.whilePathstrust.size()<2

    3.calculater(si)from Countproper,i,Counttotal,iof switch nodesiaccording to (2)

    4.setpathm=NULL,patht=NULL

    5.generate the set Paths of all feasible paths betweenssrcandsdstand sort them by length

    6.forpathinPaths

    7.calculateC(path) andCthreshold(path) according to (4~5),then update pathm

    8.ifC(path)≥Cthreshold(path)

    9.patht=path

    10.break

    11.endif

    12.endfor

    13.ifpatht=NULL

    14.Ts=0

    15.patht=pathm

    16.endif

    17.iftransmission path pathttrust verification succeeded by tracking feedback

    18.delete all nodes in pathtexceptssrcandsdstfrom the networkG

    19.Pathstrust.add(patht)

    20.endif

    21.endwhile

    本文使用仿真和建模分析方法,分别对提出的基于路径跟踪反馈的SDN网络可信传输方案的性能和安全性进行分析。

    4.1 实验设计与实验环境

    本实验环境的操作系统为Ubuntu16 64位系统,在Ryu控制器中开发部署可信传输方案,并对其性能和安全性进行验证。同时,使用Mininet对SDN中数据平面的网络环境进行仿真,包括支持OpenFlow协议的SDN交换机、数据链路和终端主机,构建网络拓扑;
    Ryu控制器与虚拟交换机之间通过OpenFlow协议连接,对路由策略的计算和下发进行集中式控制,本文在此基础之上实现了基于路径跟踪反馈的SDN可信路径验证机制。路径验证机制的部署在提高路由安全性的同时,不可避免会带来路由开销,且随着路径长度的增长而增加。

    为了准确衡量路径验证机制带来的开销时延,本文采用线性拓扑结构Topo1,如图4所示,对单条路径进行验证并与文献[13]中采用路径末端校验的验证方式进行对比,研究随着路径中转发节点数量的增加,对应验证时间开销的变化。采用文献[24]中的拓扑结构Topo2,在网络链路不同带宽条件下,对本文提出的可信传输方案的带宽进行测试。

    图4 实验拓扑Topo1

    同时,为了验证本文提出的基于路径跟踪反馈的不相交多路径可信路由算法的有效性,本文采用建模分析的方法建立网络模型,并模拟所有终端主机之间建立路由的过程。整个实验基于Python2.7实现,利用Python中Networkx库建立如图5所示的网络模型,并使用内置的all_simple_path()函数直接用于计算源节点到目标节点间的所有可行路径集合,既节省了开发时间,又降低了代码故障率。本文对网络模型中的所有SDN交换机节点的校验总次数初始化为10次,正确校验反馈的次数分别初始化为10次、9次和8次,共3种网络环境分别进行实验。将拓扑中心位置的交换机s7设置为恶意交换机,即无法正确转发数据并能被本文的跟踪反馈机制定位。实验过程使用本文提出的不相交多路径可信路由算法为所有终端主机(h1~h6)之间建立传输路径,与文献[25]中未采用可信评估的不相交多路径路由方法进行对比,分析交换机可信度在路由过程的变化与对路径选择的影响。

    图5 实验拓扑Topo2

    4.2 实验结果分析

    1)性能分析。

    如图6所示,在路径末端可达性的前提下,本文比较分析了路径末端校验和本文提出的路径跟踪反馈校验方式的时间开销,随着路径中交换机节点数量的增加,从控制器收到路由请求到下发校验数据包完成路径可信验证的时延也在不断增加。而由于控制器与SDN交换机之间存在传输时延,无法保证每个校验数据包按序到达控制器,因此路径跟踪反馈所需的时间开销稍高于路径末端校验,在路径中的交换机数量10台以内的额外时延开销约为15%。然而路径末端校验建立在可达性的基础之上,无法应对SDN交换机转发功能异常的全部情形。本文提出的路径跟踪反馈机制则能细粒度地对路径中的每个节点转发进行校验,及时地检测SDN交换机节点的恶意行为,为实现可信路由建立基础,有效提升网络传输服务的可信性。

    图6 路径可信验证方式的时延对比

    图7为传统的最短路径(单路径)路由和本文提出的不相交多路径(2条路径)传输方式下,不同链路带宽的端到端传输总带宽对比。可以看出,随着网络中链路带宽的增加,端到端传输的总带宽也在增加,不相交多路径(2条路径)传输的总带宽几乎是最短路径(单路径)路由的2倍。

    图7 不同路由方式的带宽比较

    2)安全性分析。

    表2给出了不相交多路径路由算法和本文提出的可信路由算法DMTRA-PTF在实验拓扑Topo2中为所有终端主机对,共计15次路由调度中能够找到2条可信路径的概率。由于没有路径跟踪反馈和可信评估模型的帮助,基于最短路径的不相交多路径路由算法借助图5所示网络拓扑的中心节点s7以降低转发路径跳数,因此仅在终端主机h2和h5之间找到2条安全路径;
    而本文提出的不相交多路径可信路由算法能够借助基于路径跟踪反馈的可信路径验证方法有效识别恶意节点,并借助路径评估引导后续路径进行规避,为所有终端主机之间找到2条可信路径用于传输数据。

    表2 找到2条可信路径的概率

    通过图8可以直观地体现基于SDN的网络中交换机节点s7的可信度在3种具有不同SDN交换机节点可信初始条件的网络环境中,随着路由过程的变化趋势。在网络环境初始化之初,由于SDN控制器并未收集任何新的SDN交换机节点信任信息,仅借助各节点默认初始可信度信息进行路径计算,且潜在的恶意SDN交换机节点s7位于网络拓扑结构中的中心位置,满足路径可信度阈值要求的待校验路径往往经过恶意节点。然而,随着路由次数的增加,SDN交换机节点s7的恶意行为被多次检测识别,其可信度不断下降,直至不再有新的路径经过。由此可见,本文提出的基于路径跟踪反馈的不相交多路径可信路由算法能够有效地识别并通过可信评估引导新的路径规避恶意交换机节点,减少后续路由校验的次数。并且SDN交换机节点可信度初始条件越好,路由算法对交换机恶意行为导致的可信度变化越敏感,完成路由过程所需的总路径校验次数越少,本文提出的可信路由算法的优越性更明显。如校验总次数和正确校验反馈次数均初始化为10次时,仅首次建立路由途经恶意SDN交换机节点s7,完成路径跟踪校验后更新交换机节点的可信度信息,便能使后续路由过程均能借助路径评估机制实现对恶意节点的规避。

    图8 节点信任信息初始化值对路由过程的影响

    表3显示了SDN交换机节点的校验总次数初始化为10次,正确校验反馈的次数初始化为8次条件下,为所有终端主机之间建立不相交多路径可信路由完成后网络中所有SDN交换机节点可信度的整体情况,可以看到,本文提出的路径跟踪反馈机制能够准确识别恶意交换机节点。

    表3 路由完成后SDN交换机节点可信度

    由于SDN网络自身的特点,需要由SDN控制器调度转发设备进行相互协作才能完成数据传输,因而对转发设备行为的监测分析对保障网络服务的安全可靠具有重要的意义。本文详细论述了基于路径跟踪反馈的SDN网络可信传输方案,借助基于跟踪反馈的传输路径可信验证机制,收集信任信息分析节点的可信性,以此评估路径的可信度用于引导可信路由。同时,为了增加资源利用率和端到端传输的可信性,采用构建2条不相交路径的路由方式,为存在安全风险的网络环境提供可信的传输方案。应用于常见网络拓扑的初步结果表明,该方案优于SDN控制器中默认实施的单路径方法,提高了整体吞吐量和资源利用率;
    同时兼顾恶意SDN交换机的检测与评估功能,能够以较小的性能代价准确识别恶意交换机,提出的不相交多路径可信路由算法DMTRA-PTF能以此为后续路由动态规划可信路径,提升网络系统的可信性。

    猜你喜欢 多路径校验交换机 面向未来网络的白盒交换机体系综述网络安全与数据管理(2022年3期)2022-05-23使用Excel朗读功能校验工作表中的数据中学生学习报(2022年15期)2022-04-17多路径效应对GPS多普勒测速的影响北京航空航天大学学报(2021年9期)2021-11-02多路径助推肉牛产业稳定发展今日农业(2021年15期)2021-10-14局域网交换机管理IP的规划与配置方案的探讨数码世界(2020年11期)2020-11-23更换汇聚交换机遇到的问题网络安全和信息化(2019年7期)2019-07-10基于5.8G射频的多路径识别技术应用探讨中国交通信息化(2019年2期)2019-03-25基于地铁交换机电源设计思考电子制作(2019年24期)2019-02-23智能电能表的现场快速校验方法探讨电子制作(2017年13期)2017-12-15电子式互感器校验方式研究电子制作(2017年1期)2017-05-17

    推荐访问:可信 路径 跟踪

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章