一种基于SDN的网络安全监测一体化可编程控制器的制作方法

文档序号:25032777发布日期:2021-05-11 17:03阅读:189来源:国知局
一种基于SDN的网络安全监测一体化可编程控制器的制作方法

本发明涉及到网络安全技术领域,特别涉及一种基于sdn的网络安全监测一体化可编程控制器。



背景技术:

当前sdn网络控制层为sdn控制器,它掌握着全局网络信息,负责各种转发规则的控制,常用的有onos、opendaylight等开源控制器。最初sdn控制器主要提供网络基础服务,即数据面网络状态的获取与更新,包括流表管理、交换机管理、主机管理等功能。随着sdn网络的发展,对控制器的需求由最简单的网络管理扩展到在控制器内嵌应用程序的需求。李喆等提出了一种基于ryu控制器开发的的iot控制器设计,控制面继承了包括语义解析、任务管理、存储管理、事件管理等服务,完成控制器的基础功能支撑和业务的相关管理。

随着网络规模的逐渐扩大,网络运营过程中的网络安全保障至关重要,而传统sdn网络中安全应用全部部署于应用层,安全应用只能通过调用控制层的北向接口来实现安全保障,此过程无疑增加了网络资源的消耗,传统的sdn控制器(如opendaylight)也开始集成简单的安全服务,如ddos攻击检测等,但当前sdn控制器集成安全服务的种类过于单一,无法满足网络安全防护系统对异常流量检测的多样化需求,需要研制集服务功能与多种安全服务一体的sdn控制器。



技术实现要素:

有鉴于此,本发明提供了提出一种基于sdn的网络安全监测一体化可编程控制器,其不仅满足网络安全防护系统对异常流量检测的多样化需求,而且能够提升控制面抵御多样化异常攻击的能力。

为了实现上述目的,本发明所采取的技术方案为:

一种基于sdn的网络安全检测一体化可编程控制器,包括北向接口模块、基础网络服务模块、内建服务模块、转发路径可视化模块和南向接口模块;

所述北向接口模块用于向上层多级安全策略全局控制系统开放接口,使上层多级安全策略全局控制系统能够便利地调用底层的网络资源,并对全网资源进行统一把控和调度;

所述基础网络服务模块用于对数据层的设备管理控制,管理控制包括流表下发、删除和获取、链路发现、路由策略以及拓扑生成、更新;基础网络服务模块还用于感知网络实时态势信息,态势信息的来源包括设备、链路、主机和拓扑;

所述内建服务模块用于内建服务的管理;其将网络与安全监测功能统一,通过可编程的方式动态地增减网络与安全监测的功能模块,用于实现网络与安全监测功能的按需加载,动态部署;

所述转发路径可视化模块用于对数据转发路径实现可视化;

所述南向接口模块用于对标准openflow开放流协议进行扩展,使openflow开放流协议支持发送流量测量请求/响应消息以及传输路径测量请求/响应消息;

北向接口模块接收来自上层应用的信息,包括内建服务策略、网络策略和路径可视化策略;其中,内建服务策略下发给内建服务模块进行处理,生成对应的流表下发至基础网络服务模块,同时内建服务模块将内建服务请求通过南向接口模块下发至数据面进行操作,内建服务模块接收南向接口模块从数据面获取的相应消息;路径可视化策略下发给转发路径可视化模块,然后转发路径可视化模块将生成的相应的流表信息下发给基础网络服务模块,同时转发路径可视化模块还将传输路径测量请求通过南向接口模块下发给数据层进行实现,南向接口模块还将来自数据层的响应信息返回给转发路径可视化模块;基础网络模块将来自北向接口模块的网络策略转化成流表信息并连同分别来自内建服务模块和转发路径可视化模块的流表信息歧义通过南向接口模块下发至数据层进行实现。

进一步的,所述北向接口模块采用restapi的形式,提供标准的网络接口,网络接口用于获取和更新网络状态;北向接口模块包括pynppl解析功能模块,pynppl解析功能模块用于翻译来自上层应用形成的策略程序,形成可以执行的网络或者安全的策略;北向接口模块还包括10类安全接口,其中有:

(1)pynppl解析功能模块下发网络与安全策略;

(2)pynppl解析功能模块下发删除网络与安全策略指令;

(3)pynppl解析功能模块获取网络与安全策略;

(4)多级安全策略全局控制系统获取可编程控制器应用状态;

(5)网络管理界面获取安全应用的监测结果/日志;

(6)网络管理界面获取可视化路径信息;

(7)网络管理界面获取流量采集结果;

(8)用户通过网络管理界面配置可视化策略;

(9)网络管理界面获取传输路径信息;

(10)网络管理界面获取流量采集结果。

进一步的,所述内建服务模块中内建服务包括heavyhitter、heavychange、丢包、ddos攻击、路由错误、短暂回路与丢包的异常流量检测服务以及基于流的入侵检测、蠕虫行为检测、状态防火墙。

进一步的,所述转发路径可视化模块包括可视化配置子模块、消息监听子模块、数据分析子模块和可视化呈现子模块;

可视化配置子模块用于接收北向模块的可视化策略配置消息,并将可视化策略编译生成对应的网络配置文件,经由消息监听子模块下发给数据层的交换机设备;

消息监听子模块用于接收从数据层上传的消息,并对其进行解析和存储,然后交付于相应的子模块进行处理。控制层的策略经编译后,生成对应的网络配置文件,也通过消息监听子模块向数据平面的转发设备下发;

数据分析子模块用于实现交换机配置、流表下发、拓扑发现和更新,该子模块接收来自数据层经消息监听子模块返回的信息进行分析和实时监控;网络初始化时,根据数据层交换机是否与控制器连接确认网络设备,然后下发流表项并生成lldp报文注入网络进行链路发现和拓扑信息采集,从而获取全局网络拓扑视图;网络运行过程中,以p4实现int的交换机及其连接构成的数据平面自动对用户流量进行int探测过程,对报文转发路径的包括转发设备id、端口状态的信息进行记录,最后sink交换机将封装好的遥测信息报告发送到控制层进行处理和可视化;

可视化呈现子模块用于呈现实时的网络监测结果,通过细粒度的int探测技术,掌握p4数据平面的实时状态,然后针对用户需求将全局网络拓扑呈现给上层应用或网络管理员,提供可视化的网络拓扑状态显示;

可视化配置子模块将转发路径可视化的策略下发至消息监听子模块,并对策略进行处理后发至数据面进行相应的技术实现,然后将相应的包括数据包和流量的信息上传给数据分析子模块,数据分析子模块将采集的数据进行处理后生成路径信息上报给可视化呈现子模块。

从上面的叙述可以看出,本发明技术方案的有益效果在于:

1、本发明能够在传统的sdn控制器中集成基于流的丢包、黑洞等异常流量检测服务、基于流的入侵检测等安全服务以及转发路径可视化服务,满足网络安全防护系统对异常流量检测的多样化需求。

2、本发明能够实现网络与安全功能的一体化控制,能够提升控制面抵御多样化异常攻击的能力。

附图说明

图1是本发明实施例整体结构示意图;

图2是图1中转发路径可视化模块的结构示意图;

图3是本发明实施例基于流的heavyhitter异常检测的流程图;

图4是本发明实施例基于流的heavychange异常检测的流程图;

图5是本发明实施例基于流的ddos攻击异常检测流程图;

图6是本发明实施例中基于流的丢包异常检测流程的流程图;

图7是本发明实施例中基于流的路由错误异常检测的流程图;

图8是本发明实施例基于流的短暂回路和黑洞异常检测的流程图;

图9是本发明实施例中基于流的ip扫描检测的流程图;

图10是本发明实施例中基于流的端口扫描检测的流程图;

图11是本发明实施例中基于流的蠕虫行为检测的流程图。

具体实施方式

下面,结合附图和具体实施方式对本发明做进一步的说明。

为了便于本领域技术人员对本专利技术方案的理解,同时,为了使本专利的技术目的、技术方案和有益效果更加清楚,并使权利要求书的保护范围得到充分支持,下面以具体案例的形式对本专利的技术方案做出进一步的、更详细的说明。

一种基于sdn技术的网络安全监测一体化可编程控制器,其特征在于,包括以下模块,各模块之间的关系如图1所示:

北向接口模块是向上层多级安全策略全局控制系统开放的接口,目的是使得上层多级安全策略全局控制系统以及其它应用能够便利地调用底层的网络资源和能力,上层多级安全策略全局控制系统以及其它应用可通过软件编程的形式调用网络资源,对全网资源进行统一把控和调度。

基础网络服务模块实现网络安全监测一体化可编程控制器对数据层设备的管理控制,包括流表下发、删除和获取、链路发现、路由策略以及拓扑生成、更新等相关功能。感知网络实时态势信息,包括设备、链路、主机、拓扑等,

所述内建服务模块用于内建服务的管理;其将网络与安全监测功能统一,通过可编程的方式动态地增减网络与安全监测的功能模块,用于实现网络与安全监测功能的按需加载,动态部署;

转发路径可视化模块实现对数据转发路径的可视化呈现。转发路径可视化模块包括可视化配置子模块、消息监听子模块、数据分析子模块和可视化呈现子模块。其中可视化策略配置子模块用于配置转发路径探测策略经由消息监听子模块下发给数据层,另外3个子模块基于数据层上报的传输路径数据,相互协作,实现对全局网络状态的实时监测和拓扑呈现等功能,具体数据交互流图如图2所示。

南向接口模块实现对标准openflow开放流协议的扩展,使openflow开放流协议支持发送流量测量请求/响应消息以及传输路径测量请求/响应消息。

北向接口模块接收来自上层应用的信息,包括内建服务策略、网络策略和路径可视化策略;其中,内建服务策略下发给内建服务模块进行处理,生成对应的流表下发至基础网络服务模块,同时内建服务模块将内建服务请求通过南向接口模块下发至数据面进行操作,内建服务模块接收南向接口模块从数据面获取的相应消息;路径可视化策略下发给转发路径可视化模块,然后转发路径可视化模块将生成的相应的流表信息下发给基础网络服务模块,同时转发路径可视化模块还将传输路径测量请求通过南向接口模块下发给数据层进行实现,南向接口模块还将来自数据层的响应信息返回给转发路径可视化模块;基础网络模块将来自北向接口模块的网络策略转化成流表信息并连同分别来自内建服务模块和转发路径可视化模块的流表信息歧义通过南向接口模块下发至数据层进行实现。

所述北向接口模块中北向接口采用restapi的形式,提供标准的网络接口,包括获取、更新网络状态等,北向接口模块包括pynppl解析功能模块,pynppl解析功能模块用于翻译来自上层多级安全策略全局控制系统形成的策略程序,形成可以执行的网络或者安全的策略;北向接口模块还包括10类安全接口,其中有:

a)pynppl解析功能模块向可编程控制器下发网络与安全策略;

b)pynppl解析功能模块向可编程控制器下发删除网络与安全策略指令;

c)pynppl解析功能模块向可编程控制器获取网络与安全策略;

d)上层多级安全策略全局控制系统向可编程控制器获取控制器应用状态;

e)网络管理页面向可编程控制器获取安全应用的监测结果/日志;

f)网络管理页面向可编程控制器获取可视化路径信息;

g)网络管理页面向可编程控制器获取流量采集结果;

h)用户通过可编程控制器的网络管理界面配置可视化策略;

i)可编程控制器网络管理页面获取传输路径信息;

j)可编程控制器网络管理页面获取流量采集结果。

内建服务模块中内建服务包括heavyhitter、heavychange、丢包、ddos攻击、路由错误、短暂回路与丢包等异常流量检测服务以及基于流的入侵检测、蠕虫行为检测、状态防火墙等。

转发路径可视化模块包括可视化配置子模块、消息监听子模块、数据分析子模块和可视化呈现子模块。其中可视化策略配置子模块用于配置转发路径探测策略经由消息监听子模块下发给数据层,另外3个子模块基于数据层上报的传输路径数据,相互协作,实现对全局网络状态的实时监测和拓扑呈现等功能。

可视化配置子模块主要负责接收北向模块的可视化策略配置消息,并将可视化策略编译生成对应的网络配置文件,经由消息监听子模块下发给数据层的交换机设备。

消息监听子模块主要负责接收从数据层上传的消息,并对其进行解析和存储,然后交付于相应的子模块进行处理。控制层的策略经编译后,生成对应的网络配置文件,也通过消息监听子模块向数据平面的转发设备下发,如数据流转发路径的流表集合,查询转发设备的状态信息等。

数据分析子模块,负责实现交换机配置、流表下发、拓扑发现和更新等控制功能,该模块接收来自数据层经消息监听子模块返回的信息进行分析和实时监控。网络初始化时,根据数据层交换机是否与控制器连接确认网络设备,然后下发流表项并生成lldp报文注入网络进行链路发现和拓扑信息采集,从而获取全局网络拓扑视图;网络运行过程中,以p4实现int的交换机及其连接构成的数据平面自动对用户流量进行int探测过程,对报文转发路径的转发设备id、端口状态等进行记录,最后sink交换机将封装好的遥测信息报告发送到控制层进行处理和可视化等。

可视化呈现子模块是用于呈现实时的网络监测结果,通过细粒度的int探测技术,控制器可掌握p4数据平面的实时状态,然后针对用户需求将全局网络拓扑呈现给上层应用或网络管理员,提供可视化的网络拓扑状态显示。

如图2所示,可视化配置子模块将转发路径可视化的策略下发至消息监听子模块,并对策略进行处理后发至数据面进行相应的技术实现,然后将相应的包括数据包和流量的信息上传给数据分析子模块,数据分析子模块将采集的数据进行处理后生成路径信息上报给可视化呈现子模块。

其中,如图3所示,基于流的heavyhitter异常检测计算在每个边缘交换机上进入网络的流量,并应用本地、每键阈值来触发向中央协调器的报告。协调器根据当前流量调整这些阈值,以减少报告总数。假设边缘交换机统计具有相同键k(如源ip地址、源-目的地对或五元组)的数据包之间的传入通信量。每个边缘交换机i为每个键k维护一个计数(ci,k)和一个阈值(ti,k);交换机计算计数,中央协调器设置阈值。当键的本地计数达到或超过其本地阈值时,交换机向协调器发送一个带有键和计数的报告,该报告将触发控制器到handlereport(i,ci,k);交换机计算计数,中央协调器设置阈值。当键的本地计数达到或超过其本地阈值时,交换机向协调器发送一个带有键和计数的报告,该报告将触发控制器到handlereport(i,ci,k);协调器将来自多个交换机的报告中同一个键的计数合并在一起。由于交换机只在键计数等于或超过其本地阈值后发送报告,因此协调器具有有关真正全局计数的不完整信息。如果交换机i没有发送键k的报告,则最多只能在ti,k下有一个计数,这允许协调器对全局计数进行保守估计。控制器通过聚合发送报告的交换机的计数(ci,k)以及对非报告交换机假设的计数(其计数为本地阈值小1的数,即ci,k=ti,k-1),来计算估计值(estimate(k))。如果估计的总数等于或超过键的全局阈值,协调器将轮询本地阈值大于零的所有交换机,以了解其当前计数并生成更准确的估计。如果在轮询后计算的总数等于或超过全局阈值,则协调器将键k报告为计数为∑ici,k的heavyhitter;协调器根据以前的报告动态调整每个键的本地阈值。每个本地阈值从全局阈值和站点数的比值开始,也就是说ti,k=tg(k)/n,然后由协调器根据后续报告重新计算。

其中,如图4所示,基于流的heavychange异常检测初步方案中的流量改变量从两次流量的差值改进为本次流量值和移动平均值之差值。用此差值替代heavyhitter检测方案中的和阈值(改为针对变化量的阈值)比较的值。假设在边缘交换机统计具有相同键k(如源ip地址、源-目的地对或五元组)的数据包之间的传入通信量。每个边缘交换机i为每个键k维护一个计数(ci,k)和一个阈值(ti,k),以及一个移动平均中间值(ewmai,k)。交换机计算计数,中央协调器设置阈值。当键的本地计数与移动平均中间值的差值达到或超过其本地阈值时,交换机向协调器发送一个带有键和计数的报告,该报告将触发控制器到handlereport(i,ci,k,ewmai,k);协调器将来自多个交换机的报告中同一个键的计数合并在一起。由于交换机只在键计数等于或超过其本地阈值后发送报告,因此协调器具有有关真正全局计数的不完整信息。如果交换机i没有发送键k的报告,则最多只能在ti,k下有一个计数,这允许协调器对全局计数进行保守估计。控制器通过聚合发送报告的交换机的计数与移动平均中间值的差值(丨ci,k-ewmai,k丨)以及对非报告交换机假设的计数(其计数为比本地阈值小1的数,即丨ci,k-ewmai,k丨=ti,k-1),来计算估计值(estimate(k))。如果估计的总数等于或超过键的全局阈值,协调器将轮询本地阈值大于零的所有交换机,以了解其当前计数并生成更准确的估计。如果在轮询后计算的总数等于或超过全局阈值,则协调器将键k报告为计数为∑ici,k的heavychange。

其中,如图5所示,基于流的ddos攻击异常检测采用基于熵的检测方法,窗口大小基于时间段或数据包的数量。在此窗口内计算熵以测量即将到来的包中的不确定性。要检测攻击,需要一个阈值。如果计算出的熵超过或低于阈值,则根据方案,检测到攻击。设n为窗口中的包数,pi为窗口中每个元素的概率,则熵(h)的计算方法如下:

监视传入数据包的目标ip地址,在控制器中添加一个函数来创建传入数据包的哈希表。如果表中的ip地址是新的,则会添加计数1。如果表中有它的实例,它的计数将递增。在50个包之后,计算窗口的熵。等式(2)显示哈希表,其中x是目标ip地址,y是它出现的次数。为了计算如等式(1)所示的熵,我们使用等式(2)和(3),其中w是窗口,pi是每个ip地址的概率。

w={(x1,y1),(x1,y1),(x1,y1),...}(2)

当每个ip地址只出现一次时,熵将达到最大值。如果攻击是针对主机的,则会有大量数据包被指向主机。这些包将填满窗口的大部分,并减少窗口中唯一ip的数量,从而减少熵。我们利用这一事实,设定了一个实验阈值。如果熵低于此阈值,并且连续五个窗口的熵低于阈值熵,则攻击正在进行。

如图6所示,其为内建服务模块中基于流的丢包异常检测流程的流程图。

如图7所示,其为内建服务模块中基于流的路由错误异常检测流程的流程图。

如图8所示,其为内建服务模块中基于流的短暂回路和黑洞异常检测流程的流程图。

如图9所示,其为内建服务模块中基于流的ip扫描检测的流程图。

如图10所示,其为内建服务模块中基于流的端口扫描检测的流程图。

如图11所示,其为内建服务模块中基于流的蠕虫行为检测的流程图。

以上图6~图11,都为本领域的公知技术,此处不再赘述。

总之,本发明针对当前sdn控制器集成安全服务的种类过于单一,无法满足网络安全防护系统对异常流量检测的多样化需求的问题,研制集服务功能与多种安全服务一体的sdn控制器,实现网络与安全功能的一体化控制,能够提升控制面抵御多样化异常攻击的能力。

需要理解的是,上述对于本专利具体实施方式的叙述仅仅是为了便于本领域普通技术人员理解本专利方案而列举的示例性描述,并非暗示本专利的保护范围仅仅被限制在这些个例中,本领域普通技术人员完全可以在对本专利技术方案做出充分理解的前提下,以不付出任何创造性劳动的形式,通过对本专利所列举的各个例采取组合技术特征、替换部分技术特征、加入更多技术特征等等方式,得到更多的具体实施方式,所有这些具体实施方式均在本专利权利要求书的涵盖范围之内,因此,这些新的具体实施方式也应在本专利的保护范围之内。

此外,出于简化叙述的目的,本专利也可能没有列举一些寻常的具体实施方案,这些方案是本领域普通技术人员在理解了本专利技术方案后能够自然而然想到的,显然,这些方案也应包含在本专利的保护范围之内。

出于简化叙述的目的,上述各具体实施方式对于技术细节的公开程度可能仅仅达到本领域技术人员可以自行决断的程度,即,对于上述具体实施方式没有公开的技术细节,本领域普通技术人员完全可以在不付出任何创造性劳动的情况下,在本专利技术方案的充分提示下,借助于教科书、工具书、论文、专利、音像制品等等已公开文献予以完成,或者,这些细节是在本领域普通技术人员的通常理解下,可以根据实际情况自行作出决定的内容。可见,即使不公开这些技术细节,也不会对本专利技术方案的公开充分性造成影响。

总之,在结合了本专利说明书对权利要求书保护范围的解释作用的基础上,任何落入本专利权利要求书涵盖范围的具体实施方案,均在本专利的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1