基于OpenFlow技术的网络流量溯源系统及方法

文档序号:8530346阅读:997来源:国知局
基于OpenFlow技术的网络流量溯源系统及方法
【技术领域】
[0001]本发明涉及网络流量溯源领域,特别是涉及一种基于OpenFlow技术的网络流量溯源系统及方法。
【背景技术】
[0002]虽然目前已有一些较为成熟的技术可用于阻止部分网络攻击,比如入侵检测系统可以检测网络攻击,防火墙可以阻挡部分攻击,但它们都无法标识出攻击源。另一方面,在DoS攻击技术快速发展的同时,应对它的机制却还只局限于过滤掉可疑流量和通过减轻对受害者的影响来“容忍”攻击。因此人们开始研究另一种解决方法,通过计算机网络定位攻击源头,在源头阻止攻击的发生,这就是计算机网络流量溯源技术。
[0003]由于当前的TCP / IP协议对IP包的源地址没有验证机制以及Internet基础设施的无状态性,使得想要追踪数据包的真实起点已不容易,而要查找那些通过多个跳板或反射器等实施攻击的真实源地址就更加困难。目前,网络流量溯源的基本工作方法可以分为两类:前摄追踪(Proactive Tracing)和反应追踪(Reactive Tracing)。前摄追踪是在分组传输过程中记录追踪所需的信息。当需要进行追踪时,参考先前记录的信息即可标识出攻击源。分组标记和通知是两种典型的前摄追踪法。反应追踪是在检测到攻击之后开始进行追踪。这类方法往往从攻击路径的终点开始,沿实际攻击路径的相反方向回溯到攻击源。开发有效的追踪算法和分组匹配技术是目前这类方法面临的最大挑战。然而,现在还没有一种网络流量溯源系统能够真正的部署,因为大部分现有技术要求改变网络,比如增加路由器功能,甚至需要改变分组结构。
[0004]作为软件定义网络(SDN)的一项核心技术:0penFlow,实现了数据层和控制层的分离,其中OpenFlow交换机进行数据层的转发,而控制器(Controller)实现了控制层的功能。Controller通过OpenFlow协议这个标准接口对OpenFlow交换机中的流表进行控制,从而实现对整个网络进行集中控制。因此,OpenFlow技术为开发高效的、可实际部署的网络流量溯源技术提供了一个全新的工具。

【发明内容】

[0005]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于OpenFlow技术的网络流量溯源系统及方法。
[0006]为实现上述目的及其他相关目的,本发明提供一种基于OpenFlow技术的网络流量溯源系统,其至少包括:
[0007]搜索模块,用于在网络拓扑上进行广度优先搜索以确定流量探针的下发位置;
[0008]探针下发模块,用于基于所述搜索模块所确定的下发位置在相应交换机上下发流量探针;
[0009]探针检验模块,用于进行数据包处理以判断流量探针是否探测到目标流量;以及
[0010]调度模块,用于统筹调度搜索模块、探针下发模块及探针检验模块以实现流量溯源任务。
[0011]优选地,所述探针下发模块与所述探针检验模块均为能够支持多个版本的OpenFlow协议的模块。
[0012]本发明还提供一种基于OpenFlow技术的网络流量溯源方法,其至少包括:
[0013]I)当当前交换机节点发现攻击流量时,则调度模块调度搜索模块进行搜索以确定所述当前交换机节点的所有邻居节点,并将未被访问过的邻居节点作为流量探针的下发位置;
[0014]2)所述调度模块调度探针下发模块向所确定的下发位置下发流量探针;
[0015]3)所述调度模块调度探针检验模块进行数据包处理以判断流量探针是否探测到目标流量;
[0016]4)若所述探针检验模块判断所述流量探针已探测到目标流量,则以所述流量探针所在位置作为当前交换机节点,重复步骤I)至3)。
[0017]优选地,所述探针下发模块下发的流量探针为流表项;更为优选地,所述流表项包含匹配域、优先级和动作集合三部分。
[0018]如上所述,本发明的基于OpenFlow技术的网络流量溯源系统及方法,具有以下有益效果:不需要改变分组结构,可在OpenFlow交换网络中快速部署,具有灵活、高效、精确等优点。
【附图说明】
[0019]图1显示为本发明的基于OpenFlow技术的网络流量溯源系统示意图。
[0020]图2显示为本发明的基于OpenFlow技术的网络流量溯源系统的探针下发模块所下发的流量探针的优选示意图。
[0021]图3显示为本发明的基于OpenFlow技术的网络流量溯源方法的流程图。
[0022]图4显示为本发明的基于OpenFlow技术的网络流量溯源方法的广度优先搜索策略示意图。
[0023]元件标号说明
[0024]I网络流量溯源系统
[0025]11搜索模块
[0026]12 探针下发模块
[0027]13探针检验模块
[0028]14 调度模块
[0029]SI ?S6 步骤
【具体实施方式】
[0030]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0031]请参阅图1至图4。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0032]如图1所示,本发明提供一种基于OpenFlow技术的网络流量溯源系统。所述网络流量溯源系统I至少包括:搜索模块11、探针下发模块12、探针检验模块13、以及调度模块14。
[0033]所述搜索模块11用于在网络拓扑上进行广度优先搜索以确定流量探针的下发位置。
[0034]所述探针下发模块12用于基于所述搜索模块11所确定的下发位置在相应交换机上下发流量探针。
[0035]所述流量探针为针对被溯源流量的流表项。每一个OpenFlow交换机都会维护一个或多个由一组流表项构成的流表(Flow Table)。流表项包含匹配域(例如数据包的五元组特性)、优先级和动作集合三部分。当满足某个流表项匹配域的数据包流经交换机时,交换机会执行相应的动作集合。
[0036]如图2所示,其为一个优选流量探针示意图;该流量探针的匹配域包括:源地址、目标地址、源端口、目标端口、以太网类型、WLAN ID等项,该流量探针的优先级为O、动作为通知控制器并添加标记。
[0037]所述探针下发模块12与交换网络之间以OpenFlow协议进行通信,优选地,所述探针下发模块12为能够支持多个版本的OpenFlow协议的模块。
[0038]所述探针检验模块13用于进行数据包处理以判断流量探针是否探测到目标流量。
[0039]其中,所述探针检验模块13与交换网络之间也是以OpenFlow协议进行通信,优选地,所述探针下发模块12也为能够支持多个版本的OpenFlow协议的模块。
[0040]所述调度模块14用于统筹调度搜索模块11、探针下发模块12及探针检验模块13以实现流量溯源任务。
[0041]上述网络流量溯源系统I的工作过程如图3所示:
[0042]在步骤SI中,当当前交换机节点发现攻击流量时,则溯源开始,也就是调度模块14调度搜索模块11。
[0043]在步骤S2中,搜索模块11进行搜索以确定所述当前交换机节点的所有邻居节
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1