CN114567582B - 一种基于路径跟踪反馈的sdn网络可信路由调度方法 - Google Patents
一种基于路径跟踪反馈的sdn网络可信路由调度方法 Download PDFInfo
- Publication number
- CN114567582B CN114567582B CN202210175181.6A CN202210175181A CN114567582B CN 114567582 B CN114567582 B CN 114567582B CN 202210175181 A CN202210175181 A CN 202210175181A CN 114567582 B CN114567582 B CN 114567582B
- Authority
- CN
- China
- Prior art keywords
- path
- sdn
- information
- paths
- sdn switch
- 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
Links
Images
Classifications
-
- 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/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于路径跟踪反馈的SDN网络可信路由调度方法,方法包括:收集网络拓扑信息和SDN交换机的信任信息;计算源—目的节点对之间的所有可行路径,得到可行路径集;执行基于路径跟踪反馈的不相交多路径可信路由算法,从可行路径集中获取满足可信要求的两条不相交路径;依据路径可信评估结果确定采用的多路径传输方式;将路由信息下发给SDN交换机,以进行可信数据转发。本发明根据SDN交换机行为进行可信评估,基于路径跟踪反馈机制的不相交多路径可信路由算法为存在安全风险的SDN数据平面规划可信传输路径,不仅可以提高网络的吞吐量和资源利用率,并且能够引导新的路径规避不可信的SDN交换机节点,从而提升网络传输的可靠性和安全性。
Description
技术领域
本发明属于可信网络技术领域,特别是一种基于路径跟踪反馈的SDN网络可信路由调度方法。
背景技术
互联网作为一个庞大的系统工程,聚集了难以计数的软件与硬件系统,任何网络设备存在的软硬件缺陷都有可能为攻击者提供可乘之机,从而给整个网络带来安全风险。同时,传统网络受制于分布式网络体系架构,网络设备的正常运行依赖于网络管理人员逐个的检查调试,网络组件之间的协作性较差。当网络遭受攻击或发生故障时,由于其缺少全局统一调度的管控机制,往往难以迅速准确地做出反应。
SDN(Software Defined Network,软件定义网络)凭借可编程和集中管理的优点,近年来在网络各个领域的应用中得到广泛认可,被认为是下一代互联网的核心技术之一。通过明确分离控制平面和数据平面,取代传统网络设备数据与控制的耦合机制,实现了对网络的集中控制,并以软件可编程的形式向上层应用提供接口。网络管理员可以自定义网络路由和传输规则策略,借助逻辑集中的控制器为数据平面的转发设备下发转发规则,加快了新网络服务的部署和开发,能够有效解决传统网络架构在可靠性、扩展性和灵活性方面存在的许多问题。
目前,基于SDN的研究与应用主要集中在借助控制平面的全局视野和可编程性实现对数据平面的灵活调度,而忽略了SDN中潜在的安全威胁,默认数据平面中的网络设备是可信任的,它们能够正确执行指定的网络转发策略。虽然SDN网络架构在发展过程中考虑了安全问题,但大多数SDN规范侧重于在控制器与交换机之间建立可信控制通道,而忽视了SDN数据平面中转发节点自身的安全性,缺乏相应的问责机制来验证转发规则的正确执行和传输数据的完整性。随着SDN网络应用规模的逐渐扩大,数据平面中存在的不可避免的漏洞和后门也暴露在攻击者的视线中。现阶段SDN部署的软件交换机或硬件交换机,在运行过程中难免会出现软件或硬件故障或是遭受攻击。
SDN交换机作为数据平面的主要网络设备,由于其直接连接到终端主机,攻击者能够发送带有欺骗性的控制器命令来恶意修改SDN交换机中的流规则,甚至可以直接利用SDN交换机中的漏洞获取未经授权的控制,对网络中的数据流量进行监听或者篡改,干扰网络通信功能的正常运行,造成流量传输不可靠、不安全。此外,攻击者也能够利用SDN控制器和SDN交换机之间的控制通道(例如OpenFlow南向接口)对交换机发起攻击。由于在OpenFlow1.0之后,SSL/TLS的使用变成了可选的而非强制性的,这使得攻击者可以通过控制通道插入或修改SDN交换机流表中的转发规则,这种方式在某种程度上类似于中间人攻击。借助上述方式,攻击者甚至可以通过删除或操纵针对防火墙的规则,使一些未知的数据包绕过防火墙,因此,现有的针对传统网络的安全解决方案并不适用于SDN。
因此,如何在SDN网络环境下保障数据的可信传输成为了一个亟待解决的问题,现有的研究工作主要集中在检测异常数据或识别交换机恶意行为,通过SDN控制器的主动探测来验证转发规则的正确性以及SDN交换机的可信性,并为受影响的流量规划新的传输路径。这种方式虽然一定程度上能够满足路径可达性的目标,却没有考虑如何在存在安全风险的数据平面中实现容错数据传输,同时,使用SDN控制器频繁地发送与收集信息进行校验无疑增加了网络资源的消耗和SDN控制器的负载。由于SDN采用中心化的控制平面能方便地实现对路由的精准控制,多路径路由成为提升SDN数据传输安全性的另一个重要手段。
不相交多路径具有增强网络传输服务生存性的特点,可为网络容错提供有效的实现方法。当网络中某个组件发生故障致使某条路径失效时,与其不相交的备用路径能够继续工作,满足传输任务连续性的基本要求;在安全传输情况下,也能使用并行数据传输策略来提高传输效率。路径不相交可以通过节点不相交和链路不相交两种方式实现。相较于链路不相交路由,节点不相交路由算法计算的多条路径之间,除了共享源节点以及目的节点外,不存在共享的节点和链路,能够保证在传输时不存在节点或链路的单点故障,因此又被称为完全不相交路由。其容错能力更强,形成的多条路径也更为安全可靠,但其对网络结构存在一定的要求,并且由于缺乏主动检测和恢复的机制,容易造成较大的资源浪费。
发明内容
本发明的目的在于提供一种基于路径跟踪反馈的SDN网络可信路由调度方法,能够准确识别恶意SDN交换机行为,使用路径可信评估的方法能有效地引导新的路径规避不可信的SDN交换机节点,并结合不相交多路径路由方法保障网络可信传输。
实现本发明目的的技术解决方案为:一种基于路径跟踪反馈的SDN网络可信路由调度方法,所述方法包括以下步骤:
步骤1,SDN控制器通过LLDP链路层发现协议发现并收集网络拓扑信息,基于路径跟踪反馈机制收集并更新SDN交换机的信任信息,包括各SDN交换机正确校验反馈的次数与转发校验信息的总次数信息;
步骤2,根据步骤1得到的网络拓扑信息,SDN控制器计算源—目的节点对之间的所有可行路径并进行路径长度升序排序,得到可行路径集;
步骤3,根据步骤1得到的SDN交换机信任信息,SDN控制器执行基于路径跟踪反馈的不相交多路径可信路由算法,从可信路径集中计算满足可信度要求的路径并基于路径跟踪反馈的方式校验其是否可信,若不可信,则根据更新后的SDN交换机信任信息重新进行路径计算与校验,直到得到两条通过可信校验的不相交路径;
步骤4,根据源—目的节点对之间用于传输的两条不相交路径,SDN控制器对其进行可信评估,若两条路径均能满足可信度值大于可信度阈值,则采用并行转发的方式传输;否则,采用复制转发的传输方式;
步骤5,SDN控制器将传输路径及传输方式这些路由信息,下发给SDN交换机,以进行数据可信转发。
进一步地,步骤1中基于路径跟踪反馈机制更新SDN交换机信任信息,具体过程包括:
步骤1-1,SDN控制器获取某次PACKET_IN消息传递的路由请求头部信息,并为其计算得到一条由若干个SDN交换机组成的待校验路径path;
步骤1-2,SDN控制器为所述待校验路径path中的每个SDN交换机计算对应的转发规则,同时在转发规则对应的匹配动作中添加向SDN控制器复制发送探测数据包的反馈动作,以流表的形式将转发规则下发到对应SDN交换机中;
步骤1-3,SDN控制器根据PACKET_IN消息传递的路由请求头部信息中的五元组信息实时计算相应的探测信息MSGverify,计算公式为:
MSGverify=HASH(Header||Timestamp)
式中,符号||表示连接;HASH是密码哈希函数;Header是路由请求头部包含的五元组信息;Timestamp是计算探测信息的时间戳,用于防止重放攻击;所述五元组信息包括源/目标IP、源/目标端口号和传输协议;
步骤1-4,SDN控制器向所述待校验路径path发送匹配对应流表规则且带有探测信息MSGverify的探测数据包用于实现路径跟踪反馈机制;
步骤1-5,SDN控制器收集所述待校验路径path反馈的探测数据包进行校验,若SDN交换机均能按序反馈探测数据包且携带的探测信息MSGverify与下发内容一致,则该待校验路径path被认为是可信的,各SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,否则定位首个未反馈探测数据包或反馈的探测信息MSGverify与下发内容不一致的SDN交换机si,将待校验路径path中位于si之前的SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,并且将si的转发校验信息的总次数增加1。
进一步地,步骤3中所述基于路径跟踪反馈的不相交多路径可信路由算法,具体过程如下:
步骤3-1,读取步骤1使用SDN控制器收集的网络拓扑信息、SDN交换机节点的正确校验反馈次数和转发校验信息的总次数信息;
步骤3-2,计算网络中当前所有SDN交换机节点的可信度值并计算平均值ravg,计算公式为:
式中,N是网络中SDN交换机节点总数,ri表示SDN交换机si的可信度值;
步骤3-4,挑选可行路径集Paths中路径可信度值Cpath最高的路径path作为待校验传输路径,跳转到步骤3-5;
步骤3-5,对选中的路径path进行路径跟踪反馈并更新途经SDN交换机节点的校验信息,若路径校验后被认为是可信的,则保留该路径作为传输路径之一,并从可行路径集Paths中删除除了源节点和目的节点之外的与path有相交SDN交换机节点的所有路径;否则,跳转到步骤3-2;
步骤3-6,判断得到的不相交传输路径总数是否为1,若是则跳转到步骤3-2;否则输出得到的两条通过可信校验的不相交路径。
式中,path'表示受评估路径途经的SDN交换机节点集合,path'={s1,...,si,...,sn},si表示路径path依次途经的第i个SDN交换机,ri表示SDN交换机si的可信度值,ravg为网络中所有SDN交换机节点的可信度平均值,|path'|表示传输路径途经的SDN交换机节点集合path中元素的数量。
进一步地,所述SDN交换机si的可信度值ri,计算公式为:
式中,cproper,i表示SDN交换机si正确校验反馈的次数,ctotal,i表示SDN交换机si转发校验信息的总次数。
进一步地,步骤4中根据路径可信评估结果决定多路径传输方式,具体实现步骤为:
步骤4-1,计算网络中当前所有SDN交换机节点的可信度值;
一种基于路径跟踪反馈的SDN网络可信路由调度系统,所述系统包括:
信息采集和更新模块,用于实现SDN控制器通过LLDP链路层发现协议发现并收集网络拓扑信息,基于路径跟踪反馈机制收集并更新SDN交换机的信任信息,包括各SDN交换机正确校验反馈的次数与转发校验信息的总次数信息;
可行路径集构建模块,用于根据信息采集和更新模块得到的网络拓扑信息,SDN控制器计算源—目的节点对之间的所有可行路径并进行路径长度升序排序,得到可行路径集;
不相交路径提取模块,用于根据信息采集和更新模块得到的SDN交换机信任信息,SDN控制器执行基于路径跟踪反馈的不相交多路径可信路由算法,从可信路径集中计算满足可信度要求的路径并基于路径跟踪反馈的方式校验其是否可信,若不可信,则根据更新后的SDN交换机信任信息重新进行路径计算与校验,直到得到两条通过可信校验的不相交路径;
可信评估模块,用于根据源—目的节点对之间用于传输的两条不相交路径,SDN控制器对其进行可信评估,若两条路径均能满足可信度值大于可信度阈值,则采用并行转发的方式传输;否则,采用复制转发的传输方式;
信息下发模块,用于实现SDN控制器将传输路径及传输方式这些路由信息,下发给SDN交换机,以进行数据可信转发。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
步骤1,SDN控制器通过LLDP链路层发现协议发现并收集网络拓扑信息,基于路径跟踪反馈机制收集并更新SDN交换机的信任信息,包括各SDN交换机正确校验反馈的次数与转发校验信息的总次数信息;
步骤2,根据步骤1得到的网络拓扑信息,SDN控制器计算源—目的节点对之间的所有可行路径并进行路径长度升序排序,得到可行路径集;
步骤3,根据步骤1得到的SDN交换机信任信息,SDN控制器执行基于路径跟踪反馈的不相交多路径可信路由算法,从可信路径集中计算满足可信度要求的路径并基于路径跟踪反馈的方式校验其是否可信,若不可信,则根据更新后的SDN交换机信任信息重新进行路径计算与校验,直到得到两条通过可信校验的不相交路径;
步骤4,根据源—目的节点对之间用于传输的两条不相交路径,SDN控制器对其进行可信评估,若两条路径均能满足可信度值大于可信度阈值,则采用并行转发的方式传输;否则,采用复制转发的传输方式;
步骤5,SDN控制器将传输路径及传输方式这些路由信息,下发给SDN交换机,以进行数据可信转发。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
步骤1,SDN控制器通过LLDP链路层发现协议发现并收集网络拓扑信息,基于路径跟踪反馈机制收集并更新SDN交换机的信任信息,包括各SDN交换机正确校验反馈的次数与转发校验信息的总次数信息;
步骤2,根据步骤1得到的网络拓扑信息,SDN控制器计算源—目的节点对之间的所有可行路径并进行路径长度升序排序,得到可行路径集;
步骤3,根据步骤1得到的SDN交换机信任信息,SDN控制器执行基于路径跟踪反馈的不相交多路径可信路由算法,从可信路径集中计算满足可信度要求的路径并基于路径跟踪反馈的方式校验其是否可信,若不可信,则根据更新后的SDN交换机信任信息重新进行路径计算与校验,直到得到两条通过可信校验的不相交路径;
步骤4,根据源—目的节点对之间用于传输的两条不相交路径,SDN控制器对其进行可信评估,若两条路径均能满足可信度值大于可信度阈值,则采用并行转发的方式传输;否则,采用复制转发的传输方式;
步骤5,SDN控制器将传输路径及传输方式这些路由信息,下发给SDN交换机,以进行数据可信转发。
本发明与现有技术相比,其显著优点为:1)设计了传输路径的跟踪反馈机制,由SDN控制器计算并下发加密的探测数据包,能够根据路径中SDN交换机的反馈信息,验证传输路径的可达性和传输数据的安全性,并且具有良好的通用性;2)提出了使用SDN交换机行为信任信息对传输路径进行可信评估的方法,能够有效地引导新的路径规避不可信的SDN交换机节点;3)通过定义路径可信度阈值的计算方法,能够自适应选择合适的多路径传输策略,在满足安全性的前提下能提高资源利用率,而在安全风险较大时也能最大程度保证传输数据的安全性。
下面结合附图对本发明作进一步详细描述。
附图说明
图1为一个实施例中基于路径跟踪反馈的SDN网络可信路由调度方法的流程图。
图2为一个实施例中SDN控制器基于路径跟踪反馈机制收集并更新SDN交换机的信任信息的示意图,其中图2中的(a)为部署验证路径示意图,图2中的(b)为发送探测数据跟踪校验示意图,图2中的(c)为而已交换机检测定位示意图。
图3为一个实施例中当终端主机h1向h2发起路由请求且SDN交换机S7为恶意交换机节点时,执行基于路径跟踪反馈的不相交多路径可信路由算法从可行路径集中获取满足可信要求的两条不相交路径的示意图;其中图3中的(a)为首次搜索得到的路径示意图,图3中的(b)为首次通过可信校验的路径示意图,图3中的(c)为第二条通过可信校验的路径示意图,图3中的(d)为完成可信路由算法后的路径示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,现对照附图详细说明本发明的具体实施方式。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,结合图1,提供了一种基于路径跟踪反馈的SDN网络可信路由调度方法,包括如下步骤:
步骤1、SDN控制器通过LLDP链路层发现协议来发现并收集网络拓扑信息,本实施例中使用的SDN控制器可以是通用控制器(包括Ryu、ONOS、Floodlight、POX/NOX等等),借助SDN控制器提供的API接口获取网络拓扑信息。SDN控制器基于路径跟踪反馈机制收集并更新SDN交换机的信任信息,包含SDN交换机正确校验反馈的次数与转发校验信息的总次数等信息,实现步骤如下:
步骤1-1,SDN控制器获取某次PACKET_IN消息传递的路由请求头部信息,并为其计算得到一条由若干个SDN交换机组成的待校验路径path;
步骤1-2,SDN控制器为待验证路径path中的每个SDN交换机计算对应的转发规则,同时在转发规则对应的匹配动作中添加向SDN控制器复制发送探测数据包的反馈动作,以流表的形式将转发规则下发到对应SDN交换机中;
步骤1-3,SDN控制器根据PACKET_IN消息传递的路由请求头部信息中的五元组信息(源/目标IP、源/目标端口号和传输协议)实时计算相应的探测信息MSGverify,计算公式为:
MSGverify=HASH(Header||Timestamp)
式中,符号||表示连接;HASH是密码哈希函数,对探测信息加密处理以保证其安全性;Header是路由请求头部包含的五元组信息;Timestamp是计算探测信息的时间戳,用于防止重放攻击;
步骤1-4,SDN控制器向待验证路径path发送匹配对应流表规则且带有探测信息MSGverify的探测数据包用于实现路径跟踪反馈机制;
步骤1-5,SDN控制器收集路径path反馈的探测数据包进行校验,若SDN交换机均能按序反馈探测数据包且携带的探测信息MSGverify与下发内容一致,则该路径被认为是可信的,各SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,否则定位首个未反馈探测数据包或反馈的探测信息MSGverify与下发内容不一致的SDN交换机si,将路径path中位于si之前的SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,并且将si的转发校验信息的总次数增加1。
步骤2、根据步骤1得到的网络拓扑信息,SDN控制器使用深度优先算法计算源—目的节点对之间的所有可行路径并进行路径长度升序排序,得到可行路径集Paths;
步骤3、根据步骤1得到的SDN交换机信任信息,SDN控制器执行基于路径跟踪反馈的不相交多路径可信路由算法,从步骤2得到的可行路径集中计算满足可信度要求的路径并使用路径跟踪反馈的方式校验其是否可信,若不可信,则根据更新后的SDN交换机信任信息重新进行路径计算与校验,直到得到两条通过可信校验的不相交路径。具体实现步骤如下:
步骤3-1,读取步骤1使用SDN控制器收集的网络拓扑信息、每个SDN交换机节点si的正确校验反馈次数cproper,i和转发校验信息的总次数ctotal,i等信息;
步骤3-2,计算网络中当前所有SDN交换机节点的可信度值并计算平均值ravg,计算公式为:
式中,N是网络中SDN交换机节点总数,ri表示SDN交换机si的可信度值;
步骤3-3,按序遍历步骤2得到的可行路径集Paths中的每条路径,搜索首次路径可信度值Cpath大于等于路径可信度阈值的路径path,若找到,则跳转到步骤3-5;路径可信度值Cpath与路径可信度阈值计算公式分别为:
式中,path表示受评估路径途经的SDN交换机节点集合,path={s1,...,si,...,sn},si表示路径path依次途经的第i个SDN交换机,ri表示SDN交换机si的可信度值,ravg为网络中所有SDN交换机节点的可信度平均值,|path|表示传输路径途经的SDN交换机节点集合path中元素的数量;SDN交换机si的可信度值ri,计算公式为:
式中,cproper,i表示SDN交换机si正确校验反馈的次数,ctotal,i表示SDN交换机si转发校验信息的总次数。
步骤3-4,挑选可行路径集Paths中路径可信度值Cpath最高的路径path作为待校验传输路径,跳转到步骤3-5;
步骤3-5,对选中的路径path进行路径跟踪反馈并更新途经SDN交换机节点的校验信息,若路径校验后被认为是可信的,则保留该路径作为传输路径之一,并从可行路径集Paths中删除与path有相交SDN交换机节点(除了源节点和目的节点之外)的所有路径;否则,跳转到步骤3-2;
步骤3-6,若得到的不相交传输路径总数为1,则跳转到步骤3-2;否则输出得到的两条通过可信校验的不相交路径;
步骤4、根据步骤3得到的源—目的节点对之间用于传输的两条不相交路径,SDN控制器对其进行可信评估,若两条路径均能满足可信度值大于可信度阈值,则采用并行转发的方式传输,否则,采用复制转发的传输方式;具体实现步骤如下:
步骤4-1,根据步骤3-3中的公式计算网络中当前所有SDN交换机节点的可信度值;
步骤4-3,若其中每条路径path都满足路径可信度值Cpath大于路径可信度阈值则采用并行转发的方式传输,即将需要传输的数据流量平均分配到两条不相交路径中,提升网络的资源利用率和传输速度;否则,采用复制转发的传输方式,即两条不相交路径传输相同的数据信息,以保证数据的安全传输;
步骤5、SDN控制器使用步骤4得到的路由信息,包括传输路径及传输方式以封装流/组表的形式下发给SDN交换机,以进行数据转发。
作为一种具体示例,在其中一个实施例中,结合图2详细说明SDN控制器基于路径跟踪反馈机制收集并更新SDN交换机的信任信息的具体实现过程。如图2所示,①首先由源节点向SDN交换机S1发送数据信息;②SDN交换机S1收到源节点发送的第一个数据包后,对其进行流表的匹配,如果没有找到相应的流表项,就会发送相应的PACKET_IN消息给SDN控制器;③SDN控制器解析PACKET_IN消息传递的路由请求头部信息,为其计算一条由若干个SDN交换机组成的待校验路径path={s1,...,si,...,sn},并为待验证路径path中的每个SDN交换机计算对应的转发规则,同时在转发规则对应的匹配动作中添加向SDN控制器复制发送探测数据包的反馈动作,最后以流表的形式将转发规则下发到对应SDN交换机中;④SDN控制器根据PACKET_IN消息传递的路由请求头部信息中的五元组信息(源/目标IP、源/目标端口号和传输协议)实时计算相应的探测信息,然后向待验证路径path中与源节点相连的SDN交换机S1发送匹配对应流表规则且带有探测信息的探测数据包;⑤当探测数据包通过待验证路径path时,其中的SDN交换机在执行转发操作的同时将探测数据包复制并反馈到SDN控制器,SDN控制器负责收集SDN交换机反馈的探测数据包进行校验;若如图2中的(b)中所示,SDN交换机均能按序反馈探测数据包且携带的探测信息与下发内容一致,则该路径被认为是可信的,各SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1;否则,如图2中的(c)中所示,定位首个未反馈探测数据包或反馈的探测信息与下发内容不一致的SDN交换机si,将路径path中位于si之前的SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,并且将si的转发校验信息的总次数增加1。
作为一种具体示例,在其中一个实施例中,下面结合图3详细说明基于路径跟踪反馈的不相交多路径可信路由算法的一个实施例的实现过程,如图3所示,本实施例中基于SDN的网络包括一个与所有SDN交换机直接连接的SDN控制器(图中未示出)、多个SDN交换机S1、S2、…、S7以及两个终端主机h1、h2,其中SDN交换机与终端主机构成一个网络拓扑结构。所有SDN交换机的正确校验反馈的次数与转发校验信息的总次数均初始化为10次,同时,仅将SDN交换机S7设置为恶意交换机,即无法正确转发数据并能被跟踪反馈机制定位,用以制造一个可信网络环境中突然出现被攻击者控制的恶意交换机的情形。需要说明的是,图3中的网络拓扑结构及SDN交换机的信任信息只是示意性的展示,而实际中的网络拓扑结构还可能包括更多的网络设备以及更复杂的SDN交换机的信任信息。基于图3中的(a)中的网络初始环境,当终端主机h1向h2发起路由请求时,从路径长度升序排序后的可行路径集中搜索的首条路径可信度值大于等于路径可信度阈值的路径为:h1->S1->S7->S4->h2;然后,对该路径进行路径跟踪反馈,由于SDN交换机S7是恶意交换机,未能通过路径可信校验,更新SDN交换机节点的信任信息后在重新在可行路径集中搜索满足可信度要求的路径。如图3中的(b)所示,再次从可行路径集中搜索的首条路径可信度值大于等于路径可信度阈值的路径为:h1->S1->S2->S3->S4->h2;然后,对该路径进行路径跟踪反馈并更新SDN交换机节点的信任信息,通过路径可信校验后,将该路径保留作为传输路径之一;由于当前用于终端主机h1与h2的可信传输路径只有一条,从可行路径集中删除与该路径有相交SDN交换机节点(除了源节点和目的节点之外)的所有路径,之后重新在可行路径集中搜索满足可信度要求的路径。如图3中的(c)所示,从剩余可行路径集中搜索的首次路径可信度值大于等于路径可信度阈值的路径为:h1->S1->S6->S5->S4->h2;然后,对该路径进行路径跟踪反馈并更新SDN交换机节点的信任信息,通过路径可信校验后,将该路径保留作为传输路径。最后,输出得到的这两条通过可信校验的节点不相交路径,结束本次路由算法。该实施例完成后SDN交换机节点的信任信息如图3中的(d)所示。
以上结合图2,仅描述了单次网络可信路由算法的执行过程,每次可信路由算法执行后的网络中SDN交换机的信任信息均可用于后续路由调度过程,以引导新的路径规避不可信的SDN交换机节点。
综上,本发明根据SDN交换机行为进行可信评估,基于路径跟踪反馈机制的不相交多路径可信路由算法为存在安全风险的SDN数据平面规划可信传输路径,不仅可以提高网络的吞吐量和资源利用率,并且能够引导新的路径规避不可信的SDN交换机节点,从而提升网络传输的可靠性和安全性。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。
Claims (8)
1.一种基于路径跟踪反馈的SDN网络可信路由调度方法,其特征在于,所述方法包括以下步骤:
步骤1,SDN控制器通过LLDP链路层发现协议发现并收集网络拓扑信息,基于路径跟踪反馈机制收集并更新SDN交换机的信任信息,包括各SDN交换机正确校验反馈的次数与转发校验信息的总次数信息;其中基于路径跟踪反馈机制更新SDN交换机信任信息,具体过程包括:
步骤1-1,SDN控制器获取某次PACKET_IN消息传递的路由请求头部信息,并为其计算得到一条由若干个SDN交换机组成的待校验路径path;
步骤1-2,SDN控制器为所述待校验路径path中的每个SDN交换机计算对应的转发规则,同时在转发规则对应的匹配动作中添加向SDN控制器复制发送探测数据包的反馈动作,以流表的形式将转发规则下发到对应SDN交换机中;
步骤1-3,SDN控制器根据PACKET_IN消息传递的路由请求头部信息中的五元组信息实时计算相应的探测信息MSGverify,计算公式为:
MSGverify=HASH(Header||Timestamp)
式中,符号||表示连接;HASH是密码哈希函数;Header是路由请求头部包含的五元组信息;Timestamp是计算探测信息的时间戳,用于防止重放攻击;所述五元组信息包括源/目标IP、源/目标端口号和传输协议;
步骤1-4,SDN控制器向所述待校验路径path发送匹配对应流表规则且带有探测信息MSGverify的探测数据包用于实现路径跟踪反馈机制;
步骤1-5,SDN控制器收集所述待校验路径path反馈的探测数据包进行校验,若SDN交换机均能按序反馈探测数据包且携带的探测信息MSGverify与下发内容一致,则该待校验路径path被认为是可信的,各SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,否则定位首个未反馈探测数据包或反馈的探测信息MSGverify与下发内容不一致的SDN交换机si,将待校验路径path中位于si之前的SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,并且将si的转发校验信息的总次数增加1。
步骤2,根据步骤1得到的网络拓扑信息,SDN控制器计算源—目的节点对之间的所有可行路径并进行路径长度升序排序,得到可行路径集;
步骤3,根据步骤1得到的SDN交换机信任信息,SDN控制器执行基于路径跟踪反馈的不相交多路径可信路由算法,从可信路径集中计算满足可信度要求的路径并基于路径跟踪反馈的方式校验其是否可信,若不可信,则根据更新后的SDN交换机信任信息重新进行路径计算与校验,直到得到两条通过可信校验的不相交路径;其中所述基于路径跟踪反馈的不相交多路径可信路由算法,具体过程如下:
步骤3-1,读取步骤1使用SDN控制器收集的网络拓扑信息、SDN交换机节点的正确校验反馈次数和转发校验信息的总次数信息;
步骤3-2,计算网络中当前所有SDN交换机节点的可信度值并计算平均值ravg,计算公式为:
式中,N是网络中SDN交换机节点总数,ri表示SDN交换机si的可信度值;
步骤3-4,挑选可行路径集Paths中路径可信度值Cpath最高的路径path作为待校验传输路径,跳转到步骤3-5;
步骤3-5,对选中的路径path进行路径跟踪反馈并更新途经SDN交换机节点的校验信息,若路径校验后被认为是可信的,则保留该路径作为传输路径之一,并从可行路径集Paths中删除除了源节点和目的节点之外的与path有相交SDN交换机节点的所有路径;否则,跳转到步骤3-2;
步骤3-6,判断得到的不相交传输路径总数是否为1,若是则跳转到步骤3-2;否则输出得到的两条通过可信校验的不相交路径;
步骤4,根据源—目的节点对之间用于传输的两条不相交路径,SDN控制器对其进行可信评估,若两条路径均能满足可信度值大于可信度阈值,则采用并行转发的方式传输;否则,采用复制转发的传输方式;
步骤5,SDN控制器将传输路径及传输方式这些路由信息,下发给SDN交换机,以进行数据可信转发。
5.根据权利要求1所述的基于路径跟踪反馈的SDN网络可信路由调度方法,其特征在于,步骤5中以SDN控制器以封装流/组表的形式将传输路径及传输方式这些路由信息下发给SDN交换机。
6.一种基于路径跟踪反馈的SDN网络可信路由调度系统,其特征在于,所述系统包括:
信息采集和更新模块,用于实现SDN控制器通过LLDP链路层发现协议发现并收集网络拓扑信息,基于路径跟踪反馈机制收集并更新SDN交换机的信任信息,包括各SDN交换机正确校验反馈的次数与转发校验信息的总次数信息;其中基于路径跟踪反馈机制更新SDN交换机信任信息,具体过程包括:
步骤1-1,SDN控制器获取某次PACKET_IN消息传递的路由请求头部信息,并为其计算得到一条由若干个SDN交换机组成的待校验路径path;
步骤1-2,SDN控制器为所述待校验路径path中的每个SDN交换机计算对应的转发规则,同时在转发规则对应的匹配动作中添加向SDN控制器复制发送探测数据包的反馈动作,以流表的形式将转发规则下发到对应SDN交换机中;
步骤1-3,SDN控制器根据PACKET_IN消息传递的路由请求头部信息中的五元组信息实时计算相应的探测信息MSGverify,计算公式为:
MSGverify=HASH(Header||Timestamp)
式中,符号||表示连接;HASH是密码哈希函数;Header是路由请求头部包含的五元组信息;Timestamp是计算探测信息的时间戳,用于防止重放攻击;所述五元组信息包括源/目标IP、源/目标端口号和传输协议;
步骤1-4,SDN控制器向所述待校验路径path发送匹配对应流表规则且带有探测信息MSGverify的探测数据包用于实现路径跟踪反馈机制;
步骤1-5,SDN控制器收集所述待校验路径path反馈的探测数据包进行校验,若SDN交换机均能按序反馈探测数据包且携带的探测信息MSGverify与下发内容一致,则该待校验路径path被认为是可信的,各SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,否则定位首个未反馈探测数据包或反馈的探测信息MSGverify与下发内容不一致的SDN交换机si,将待校验路径path中位于si之前的SDN交换机正确校验反馈的次数与转发校验信息的总次数均自增1,并且将si的转发校验信息的总次数增加1;
可行路径集构建模块,用于根据信息采集和更新模块得到的网络拓扑信息,SDN控制器计算源—目的节点对之间的所有可行路径并进行路径长度升序排序,得到可行路径集;
不相交路径提取模块,用于根据信息采集和更新模块得到的SDN交换机信任信息,SDN控制器执行基于路径跟踪反馈的不相交多路径可信路由算法,从可信路径集中计算满足可信度要求的路径并基于路径跟踪反馈的方式校验其是否可信,若不可信,则根据更新后的SDN交换机信任信息重新进行路径计算与校验,直到得到两条通过可信校验的不相交路径;其中所述基于路径跟踪反馈的不相交多路径可信路由算法,具体过程如下:
步骤3-1,读取使用SDN控制器收集的网络拓扑信息、SDN交换机节点的正确校验反馈次数和转发校验信息的总次数信息;
步骤3-2,计算网络中当前所有SDN交换机节点的可信度值并计算平均值ravg,计算公式为:
式中,N是网络中SDN交换机节点总数,ri表示SDN交换机si的可信度值;
步骤3-4,挑选可行路径集Paths中路径可信度值Cpath最高的路径path作为待校验传输路径,跳转到步骤3-5;
步骤3-5,对选中的路径path进行路径跟踪反馈并更新途经SDN交换机节点的校验信息,若路径校验后被认为是可信的,则保留该路径作为传输路径之一,并从可行路径集Paths中删除除了源节点和目的节点之外的与path有相交SDN交换机节点的所有路径;否则,跳转到步骤3-2;
步骤3-6,判断得到的不相交传输路径总数是否为1,若是则跳转到步骤3-2;否则输出得到的两条通过可信校验的不相交路径;
可信评估模块,用于根据源—目的节点对之间用于传输的两条不相交路径,SDN控制器对其进行可信评估,若两条路径均能满足可信度值大于可信度阈值,则采用并行转发的方式传输;否则,采用复制转发的传输方式;
信息下发模块,用于实现SDN控制器将传输路径及传输方式这些路由信息,下发给SDN交换机,以进行数据可信转发。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210175181.6A CN114567582B (zh) | 2022-02-24 | 2022-02-24 | 一种基于路径跟踪反馈的sdn网络可信路由调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210175181.6A CN114567582B (zh) | 2022-02-24 | 2022-02-24 | 一种基于路径跟踪反馈的sdn网络可信路由调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114567582A CN114567582A (zh) | 2022-05-31 |
CN114567582B true CN114567582B (zh) | 2022-11-22 |
Family
ID=81716105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210175181.6A Active CN114567582B (zh) | 2022-02-24 | 2022-02-24 | 一种基于路径跟踪反馈的sdn网络可信路由调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114567582B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116170370B (zh) * | 2023-02-20 | 2024-03-12 | 重庆邮电大学 | 一种基于注意力机制和深度强化学习的sdn多路径路由方法 |
CN117650953B (zh) * | 2024-01-30 | 2024-05-10 | 东北大学 | 一种应用于软件定义网络的轻量级路径验证方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107135159A (zh) * | 2017-03-31 | 2017-09-05 | 武汉绿色网络信息服务有限责任公司 | 一种sdn网络中最优路径确定的方法和系统 |
WO2017157457A1 (en) * | 2016-03-18 | 2017-09-21 | Nec Europe Ltd. | Sdn support for disjoint multipath configuration |
CN107347021A (zh) * | 2017-07-07 | 2017-11-14 | 西安交通大学 | 一种基于sdn网络可靠传输方法 |
CN109067758A (zh) * | 2018-08-23 | 2018-12-21 | 江苏大学 | 一种基于多路径的sdn网络数据传输隐私保护系统及其方法 |
US10200279B1 (en) * | 2017-10-03 | 2019-02-05 | Amer Omar Aljaedi | Tracer of traffic trajectories in data center networks |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2993842A1 (en) * | 2014-09-05 | 2016-03-09 | Nederlandse Organisatie voor toegepast- natuurwetenschappelijk onderzoek TNO | Search for disjoint paths through a network |
US10091097B2 (en) * | 2016-10-27 | 2018-10-02 | Nanning Fugui Precision Industrial Co., Ltd. | Transmission path optimization method and software-defined networking controller using the method |
-
2022
- 2022-02-24 CN CN202210175181.6A patent/CN114567582B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017157457A1 (en) * | 2016-03-18 | 2017-09-21 | Nec Europe Ltd. | Sdn support for disjoint multipath configuration |
CN107135159A (zh) * | 2017-03-31 | 2017-09-05 | 武汉绿色网络信息服务有限责任公司 | 一种sdn网络中最优路径确定的方法和系统 |
CN107347021A (zh) * | 2017-07-07 | 2017-11-14 | 西安交通大学 | 一种基于sdn网络可靠传输方法 |
US10200279B1 (en) * | 2017-10-03 | 2019-02-05 | Amer Omar Aljaedi | Tracer of traffic trajectories in data center networks |
CN109067758A (zh) * | 2018-08-23 | 2018-12-21 | 江苏大学 | 一种基于多路径的sdn网络数据传输隐私保护系统及其方法 |
Non-Patent Citations (4)
Title |
---|
Everyone in SDN Contributes: Fault Localization;Zhijun Hu,Libing Wu,Jianxin Li,Chao Ma,Xiaochuan Shi;《IEEE》;20211004;370-379 * |
QoS Improvement in SDN Using Centralized;Mohammadreza Saadatpour,Touraj Shabanian,Mohammad Behdadfar;《IEEE》;20210202;132-136 * |
SDN-based Trusted Path Control;Stéphane Betgé-Brezetz, Guy-Bertrand Kamga,Ali El Amrani Joutei;《IEEE》;20150611;1-5 * |
SDN网络的故障检测和恢复技术研究与实现;洪硕果;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160515;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114567582A (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tan et al. | A new framework for DDoS attack detection and defense in SDN environment | |
Beckett et al. | A general approach to network configuration verification | |
CN114567582B (zh) | 一种基于路径跟踪反馈的sdn网络可信路由调度方法 | |
Dhawan et al. | Sphinx: detecting security attacks in software-defined networks. | |
Ding et al. | An incrementally-deployable P4-enabled architecture for network-wide heavy-hitter detection | |
Zhang et al. | Mind the gap: Monitoring the control-data plane consistency in software defined networks | |
US10560354B2 (en) | End-to-end, in situ packet enrichment for network analytics | |
Liu et al. | Ensuring connectivity via data plane mechanisms | |
Shaghaghi et al. | Wedgetail: An intrusion prevention system for the data plane of software defined networks | |
Qiu et al. | Global Flow Table: A convincing mechanism for security operations in SDN | |
Ghannam et al. | Handling malicious switches in software defined networks | |
Duan et al. | Fast path recovery for single link failure in SDN-enabled wide area measurement system | |
Zhou et al. | P4Tester: Efficient runtime rule fault detection for programmable data planes | |
Zhang et al. | SAMPO: Online subflow association for multipath TCP with partial flow records | |
Aryan et al. | A general formalism for defining and detecting openflow rule anomalies | |
Zhao et al. | Troubleshooting data plane with rule verification in software-defined networks | |
Galadima et al. | Cyber deception against DDoS attack using moving target defence framework in SDN IOT-EDGE networks | |
Li et al. | ESMD-Flow: An intelligent flow forwarding scheme with endogenous security based on Mimic defense in space-air-ground integrated network | |
Zhao et al. | Sdn-enabled rule verification on data plane | |
Polverini et al. | Investigating on black holes in segment routing networks: Identification and detection | |
Gao et al. | UniROPE: Universal and robust packet trajectory tracing for software-defined networks | |
Yuan et al. | Detecting malicious switches for a secure software-defined tactile internet | |
Zhang et al. | Toward comprehensive network verification: Practices, challenges and beyond | |
Mohammadi et al. | Detecting malicious packet drops and misroutings using header space analysis | |
Li et al. | Themis: A passive-active hybrid framework with in-network intelligence for lightweight failure localization |
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 |