CN107733718B - 一种用于大规模sdn网络的安全隔离性检测方法 - Google Patents
一种用于大规模sdn网络的安全隔离性检测方法 Download PDFInfo
- Publication number
- CN107733718B CN107733718B CN201711070791.5A CN201711070791A CN107733718B CN 107733718 B CN107733718 B CN 107733718B CN 201711070791 A CN201711070791 A CN 201711070791A CN 107733718 B CN107733718 B CN 107733718B
- Authority
- CN
- China
- Prior art keywords
- network
- sdn
- overhead
- data
- isolation
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- 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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种用于大规模SDN网络的安全隔离性检测方法,包括如下步骤:步骤一、配置输入参数;步骤二、获取网络状态;步骤三、网络链路开销计算:根据获取的网络状态信息,计算网络中每一条链路在传输需要隔离的数据流时的开销,如果能够传输则将该链路的开销设置为1,如果不能传输则将该链路的开销仍然保持为0;步骤四、根据图连通性算法的计算结果判断源子网与目的子网之间针对需要隔离的数据流的隔离性是否有效。与现有技术相比,本发明的积极效果是:本发明提出了一种用于大规模SDN网络的安全隔离性检测方法,用于在大规模SDN网络中高效率地发现安全隔离性失效现象,本发明首次解决了大规模SDN网络安全隔离性检测问题。
Description
技术领域
本发明涉及一种用于大规模SDN网络的安全隔离性检测方法。
背景技术
软件定义网络(Software-Defined Networking,SDN)技术是目前新兴的一种网络技术,基于SDN技术架构所建设的网络称为SDN网络。SDN网络中,最下层为基础设施层,由SDN交换机组成,该层主要负责数据包的处理、转发,以及网络状态的收集。中间的控制层由SDN控制器软件组成,主要负责处理基础设施层中各种资源的编排,维护网络拓扑、网络状态数据等。最上层为应用层,在该层部署各种控制SDN网络的应用软件,这些应用软件通过SD N控制器的北向接口获取控制器收集到的基础设施层的信息,并向控制器下达控制指令,控制器负责将这些控制指令解析为可由网络设备理解并执行的命令,向指定的网络设备下达。
当前,SDN技术主要应用于多租户云计算数据中心内部网络的构建上。当前的多租户云计算环境规模庞大,基于SDN技术所形成的多租户云计算数据中心网络包含大量网络设备,网络结构复杂。多租户云计算环境必须保障不同租户的子网之间具有隔离性,使得不同租户之间不能够发生不被允许的数据传输行为。由于SDN技术具备“集中控制、网络可编程”等特征,使得SDN网络对在其上传输的数据流具有极强的管控能力,可以较方便地实现多租户云计算数据中心内部网络中不同子网之间的安全隔离,从而满足不同租户对网络安全防护能力的不同需求。但是,由于云计算数据中心网络规模庞大、结构复杂、流量变化频繁等原因,SDN应用软件在计算租户之间隔离控制指令时可能出现错误,多租户子网之间的隔离性有可能被破坏。需要提出一种用于大规模SD N网络的安全隔离性检测方法,用于在大规模SDN网络中高效率地发现安全隔离性失效现象。
由于SDN技术仍处于发展之中,基于SDN的多租户云计算数据中心内部网络属于新生事物,在大规模网络中进行检测的方法必须具备高效率,当前未见能够应用于大规模SDN网络的高效的安全隔离性检测方法。
由于不同租户共享云计算基础设施资源,出于安全方面的考虑,要求基于SDN的云计算数据中心内部网络必须保证不同租户之间的严格隔离性,不允许不同租户之间发生未被准许的网络流量传输行为。但是,由于云计算数据中心网络规模庞大、结构复杂、流量变化频繁,SDN控制应用在计算租户之间安全隔离控制指令时可能出现错误,导致多租户子网之间的安全隔离性不能满足要求,因此,提出一种用于大规模SDN网络的安全隔离性检测方法,用于高效地检测错误指令导致的网络安全隔离性失效。
基于SDN技术在网络中进行子网之间的安全隔离是通过在SDN控制器的路由计算模块中针对具有特定特征的数据进行计算实现的。需要进行安全隔离的两个子网(分别为源子网和目的子网)之间并非完全不允许进行数据传输操作,只是不允许具备特定特征的数据在子网之间传输。由于SDN“集中控制”的技术特点,在SDN网络中没有传统的路由协议,任何网络数据流的传输必须预先建立一条“传输路径”才能够实现,基本步骤是:SDN交换机将接收到的网络数据流的第一个数据包(此时在SDN交换机中没有与该数据包相匹配的流表项)通过“Packet-in”消息上报给SDN控制器。SDN控制器根据该数据包的包头信息以及收集得到的网络拓扑信息,计算出一条数据流传输路径,在与该路径相关的所有SDN交换机上配置相应的流表项。因此,只要指定需要在子网之间阻止传输的数据特征,在SDN控制器的路由计算模块中预先设置数据特征的判定规则,一旦控制器接收到的“Packet-in”消息中包含这些指定特征的数据包,则不予建立数据包传输路径(或者在SDN交换机配置流表项进行数据包丢弃操作),就可以达到阻断特定数据传输,使得子网之间对于此种特定特征的数据而言是隔离的。
但是,由于云计算数据中心网络规模庞大、结构复杂、流量变化频繁,可能导致控制器路由计算模块出现计算错误。要求源子网与目的子网之间不能传输具备某些特征的数据,SDN控制器通过“Packet-in”消息获知数据特征与网络拓扑等信息后,在进行路由计算时将加入数据特征的考虑,由于SDN控制器计算所得的流表出现错误,在不应该建立网络传输路径的时候建立传输路径。SDN控制器将此错误的网络配置指令下发给相关SDN交换机之后,造成相关交换机在接收到有需要阻止的数据本应执行丢弃操作时执行了转发操作,从而使源子网与目的子网之间的隔离性失效。
发明内容
为了克服现有技术的缺点,本发明提供了一种用于大规模SDN网络的安全隔离性检测方法,用于在基于新兴SDN技术构建的大规模网络中高效率地进行网络安全隔离性检测,弥补了在大规模SDN网络中进行安全隔离性检测的空白。
本发明所采用的技术方案是:一种用于大规模SDN网络的安全隔离性检测方法,包括如下步骤:
步骤一、配置输入参数:包括需要隔离的子网的范围和具体位置、需要隔离的数据流的特征;
步骤二、获取网络状态:包括SDN网络全网网络拓扑结构、SDN交换机中所配置的流表信息、全网的路由计算策略;
步骤三、网络链路开销计算:根据获取的网络状态信息,计算网络中每一条链路在传输需要隔离的数据流时的开销,如果能够传输则将该链路的开销设置为1,如果不能传输则将该链路的开销仍然保持为0;
步骤四、判断子网之间的隔离性是否有效:在删除了开销为0的链路的网络图上运行图连通性算法,根据计算结果判断源子网与目的子网之间针对需要隔离的数据流的隔离性是否有效。
与现有技术相比,本发明的积极效果是:本发明提出了一种用于大规模SDN网络的安全隔离性检测方法,用于在大规模SDN网络中高效率地发现安全隔离性失效现象,本发明首次解决了大规模SDN网络安全隔离性检测问题。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1为大规模SDN网络安全隔离性检测核心算法示例。
具体实施方式
由于在SDN网络中进行网络隔离的基本技术原理是“配置流表阻断数据流”,因此,要判断SDN网络中的子网之间是否实现了隔离,需要获取网络中各个SDN交换机内所配置的流表信息,进而分析当前网络中所配置的流表能否在需要被隔离的子网之间达到阻止指定数据流传输的目标。
由于在SDN网络中,应用层软件会不断地发出变更网络交换机内流表项的控制指令,并且交换机中的一些流表项也会随着时间的流逝自动失效,因此SDN交换机内配置的流表项通常会随着时间变化。为了准确判断子网之间是否实现了隔离,必须在网络状态不变(即网络中的流表保持固定的时间段内)的情况下进行判断。
本发明所提出的大规模SDN网络安全隔离性检测方法基于一些必要的信息输入,通过所提出的高效核心算法进行检测。SDN网络隔离性检测方法如下,包括必要的信息输入、核心算法描述以及软件实现方案描述:
1、必要的信息输入:为了判断SDN网络中的两个子网之间是否实现了安全隔离,必须获取以下5方面信息。
1.1)SDN网络全网网络拓扑:包括SDN网络中各个SDN交换机之间的互联关系,每个SDN交换机的端口编号。
1.2)全网所有SDN交换机内当前已经配置的所有流表项。
1.3)SDN控制器内部路由计算模块的路由策略数据:包括SDN控制器已计算得到的网络路由。
1.4)需要隔离的多个子网的范围和具体位置:子网的范围指的是组成子网的所有SDN交换机,其具体位置指的是这些SDN交换机的DPID(Data Path IDentification,数据通路标识)。
1.5)不允许在隔离子网间传输的数据流的特征:不允许在子网之间传输的数据流的5元组信息。
2、核心算法描述:以两个子网(源子网、目的子网)之间的隔离为例,描述本发明所提出的用于大规模SDN网络的安全隔离性检测方法的核心算法,包括以下7个步骤。
2.1)SDN图抽象:将SDN网络整体进行抽象,抽象成一个只包含顶点和边的有向图G(V,E)。在该有向图中,顶点表示网络中的SDN交换机,边表示网络中交换机之间的链路。根据子网范围,将子网抽象为单独的顶点。
2.2)边值初始化:在有向图G(V,E)中,将所有边的权重初始化为0。
2.3)单条边赋值:在有向图G(V,E)中,在一条指定的边上,判断该有向边能否使指定特征的网络数据流通过。判断方法是:获取组成该边的两个节点所对应的两个SDN交换机上的流表信息,结合获取到的SDN控制器中的路由策略数据,判断指定特征的数据流是否能够从源节点沿着该有向边传输到目的节点。如果能够传输指定特征的数据流,则改变该条有向边的权重,将其设置1。
2.4)全网边赋值:重复步骤2.3,对有向图G(V,E)中的每条边都进行一次判定。最终确定该有向图G(V,E)中所有边在传输指定特征的数据流时的权重。
2.5)删除边:在有向图G(V,E)中,将所有边权重为0的边删去,得到新的有向图G’(V,E)。
2.6)连通性计算:在G’(V,E)中,利用图连通性算法,计算源节点与目的节点是否连通(即源节点到目的节点是否存在可达网络路径)。
2.7)针对单一数据流的隔离性判断:如果计算表明源节点与目的节点连通,则说明网络中存在路径能够将指定的数据流从源子网传输到目的子网,表示指定的数据流能够在源子网与目的子网之间流通,意味着两个子网对于该特征的数据隔离无效;相反,如果计算表明源节点与目的节点不连通,则表示不能将指定的数据流从源子网传输到目的子网。
2.8)针对所有数据流的隔离性判断:针对不允许在源子网与目的子网之间传输的每一种特征的数据流,重复步骤2.3~2.7,分析每一种特征的数据流是否能够从源子网传输到目的子网。如果对于所考察的每一种特征的数据流,计算表明网络中都不存在能够传输此数据流的路径,则表明源子网与目的子网之间的隔离性能够通过检测,满足要求。
在如图1的大规模SDN网络安全隔离性检测核心算法示例中,有向图G(V,E)中源顶点(源子网)与目的顶点(目的子网)之间存在多条路径。需要在源子网与目的子网之间进行隔离的数据流特征为目的IP地址为192.168.33.0/16的数据流。通过分析网络中的每条链路,发现整个网络中有3条链路允许传输具备该特征(目的IP地址为192.168.33.0/16)的数据流,这3条链路的权重设置为1(其余链路的权重保持不变,仍然为0)。删除权重为0的链路之后,得到G’(V,E)。运行图连通性算法后,发现源节点与目的节点不连通(即不存在源节点到目的节点的可达网络路径)。因此,针对此种特征的数据流,源子网与目的子网之间的隔离性有效。
3、软件实现方案描述:“大规模SDN网络安全隔离性检测”软件以SDN架构中应用层APP的形式实现,该APP包含以下4个基本模块。
3.1)用户访问接口模块:用户访问该APP所使用的接口。用户通过访问该接口,调用APP运行,配置必要的输入参数(例如:子网的位置和范围,需要隔离的数据特征等),并获取最终的检测结果。
3.2)网络状态获取模块:与SDN控制器进行信息交互。通过SDN控制器提供的北向接口,获取整个网络的拓扑结构,SDN交换机中所配置的流表信息,全网的路由计算策略等信息。
3.3)网络链路开销计算模块:根据获取的网络状态信息,计算网络中每一条链路在传输需要隔离的具备特定特征的数据流时的开销。如果能够传输需要隔离的网络数据流,则该链路的开销设置为1,如果不能传输需要隔离的网络数据流,则开销仍然保持为0。
3.4)图连通性计算模块:根据模块3.3计算得到的网络中各条链路传输需要隔离的数据流的开销,进行链路删除操作,形成删除后的网络图,在其上运行图连通性计算算法,根据计算结果判断针对需要隔离的数据流,源子网与目的子网之间的安全隔离性是否有效。针对所有需要隔离的数据流特征进行多次计算,最终判断子网之间的隔离性是否满足要求。
Claims (3)
1.一种用于大规模SDN网络的安全隔离性检测方法,其特征在于:包括如下步骤:
步骤一、配置输入参数:包括需要隔离的子网的范围和具体位置、需要隔离的数据流的特征;
步骤二、获取网络状态:包括SDN网络全网网络拓扑结构、SDN交换机中所配置的流表信息、全网的路由计算策略;
步骤三、网络链路开销计算:根据获取的网络状态信息,计算网络中每一条链路在传输需要隔离的数据流时的开销,如果能够传输则将该链路的开销设置为1,如果不能传输则将该链路的开销仍然保持为0;
步骤四、判断子网之间的隔离性是否有效:在删除了开销为0的链路的网络图上运行图连通性算法,根据计算结果判断源子网与目的子网之间针对需要隔离的数据流的隔离性是否有效,具体步骤如下:
步骤1、单条边赋值:在有向图G(V,E)中,在一条指定的边上,判断该边能否使指定特征的网络数据流通过,如果能够传输指定特征的数据流,则改变该条边的开销,将其设置1;
步骤2、全网边赋值:对有向图G(V,E)中的每条边都进行一次判定,最终确定该有向图G(V,E)中所有边在传输指定特征的数据流时的开销;
步骤3、删除开销为0的边,得到新的有向图;
步骤4、在新的有向图中进行连通性计算;
步骤5、针对单一数据流进行隔离性判断:如果计算表明源节点与目的节点连通,则判定两个子网对于该特征的数据隔离无效;反之则判定两个子网对于该特征的数据隔离有效;
步骤6、针对所有数据流的隔离性判断:针对不允许在源子网与目的子网之间传输的每一种特征的数据流,重复步骤1至步骤5,判断每一种特征的数据流是否能够从源子网传输到目的子网,针对每一种特征的数据流,如果网络中都不存在能够传输此数据流的路径,则表明源子网与目的子网之间的隔离性能够通过检测,满足要求。
2.根据权利要求1所述的一种用于大规模SDN网络的安全隔离性检测方法,其特征在于:所述子网的范围是指组成子网的所有SDN交换机,所述子网的具体位置是指所述SDN交换机的数据通路标识。
3.根据权利要求1所述的一种用于大规模SDN网络的安全隔离性检测方法,其特征在于:所述SDN网络全网网络拓扑结构包括SDN网络中各个SDN交换机之间的互联关系、每个SDN交换机的端口编号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070791.5A CN107733718B (zh) | 2017-11-03 | 2017-11-03 | 一种用于大规模sdn网络的安全隔离性检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070791.5A CN107733718B (zh) | 2017-11-03 | 2017-11-03 | 一种用于大规模sdn网络的安全隔离性检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107733718A CN107733718A (zh) | 2018-02-23 |
CN107733718B true CN107733718B (zh) | 2020-11-03 |
Family
ID=61222524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711070791.5A Active CN107733718B (zh) | 2017-11-03 | 2017-11-03 | 一种用于大规模sdn网络的安全隔离性检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107733718B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105227363A (zh) * | 2015-10-08 | 2016-01-06 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的全网络端口隔离方法及装置 |
WO2016085516A1 (en) * | 2014-11-28 | 2016-06-02 | Hewlett Packard Enterprise Development Lp | Verifying a network configuration |
CN105703960A (zh) * | 2016-04-25 | 2016-06-22 | 刘昱 | 基于sdn的网络功能管理系统及方法 |
CN106161457A (zh) * | 2016-07-26 | 2016-11-23 | 刘昱 | 基于sdn的网络域隔离装置及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3072263B1 (en) * | 2013-11-18 | 2017-10-25 | Telefonaktiebolaget LM Ericsson (publ) | Multi-tenant isolation in a cloud environment using software defined networking |
US9608932B2 (en) * | 2013-12-10 | 2017-03-28 | International Business Machines Corporation | Software-defined networking single-source enterprise workload manager |
US10389756B2 (en) * | 2015-06-09 | 2019-08-20 | Intel Corporation | System, apparatus and method for security interoperability path analysis in an internet of things (IOT) network |
-
2017
- 2017-11-03 CN CN201711070791.5A patent/CN107733718B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016085516A1 (en) * | 2014-11-28 | 2016-06-02 | Hewlett Packard Enterprise Development Lp | Verifying a network configuration |
CN105227363A (zh) * | 2015-10-08 | 2016-01-06 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的全网络端口隔离方法及装置 |
CN105703960A (zh) * | 2016-04-25 | 2016-06-22 | 刘昱 | 基于sdn的网络功能管理系统及方法 |
CN106161457A (zh) * | 2016-07-26 | 2016-11-23 | 刘昱 | 基于sdn的网络域隔离装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107733718A (zh) | 2018-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10454806B2 (en) | SDN controller, data center system, and routing connection method | |
CN102857416B (zh) | 一种实现虚拟网络的方法、控制器和虚拟网络 | |
US9515868B2 (en) | System and method for communication | |
US9401928B2 (en) | Data stream security processing method and apparatus | |
CN108400934B (zh) | 软件定义网络控制器、服务功能链系统及路径追踪方法 | |
US10498607B2 (en) | SDN network system, controller, and controlling method | |
US20140177477A1 (en) | Utility communication method and system | |
US9887936B2 (en) | Application identification and overlay provisioning as a service | |
CN105897465A (zh) | 设备配置方法及装置 | |
US20200067851A1 (en) | Smart software-defined network (sdn) switch | |
KR20200039608A (ko) | 가상화 디바이스 | |
CN108289061B (zh) | 基于sdn的业务链拓扑系统 | |
WO2017084448A1 (zh) | 一种网络系统及网络运行方法 | |
US20170048168A1 (en) | Network Fabric Control | |
EP2797261B1 (en) | A method and a device for optimizing a configuration system of a network element of a software-defined network | |
WO2016141846A1 (zh) | 数据报文传输方法及边缘路由网桥设备 | |
CN107872385B (zh) | 一种sdn网络路由计算与控制方法 | |
Miguel et al. | A CoAP based control plane for software defined wireless sensor networks | |
CN108400922B (zh) | 虚拟局域网络配置系统与方法及其计算机可读存储介质 | |
EP2804344B1 (en) | A network element and a controller of a software-defined network | |
CN108270645B (zh) | 一种sdn网络隔离性检测方法 | |
CN107733718B (zh) | 一种用于大规模sdn网络的安全隔离性检测方法 | |
CN104885417A (zh) | 控制装置、通信系统、通信节点控制方法以及程序 | |
CN106411748B (zh) | 跨网络的动态拓扑维护方法 | |
Ma et al. | An algorithm of physical network topology discovery in multi-VLANs |
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 |