首页 / 专利库 / 电脑零配件 / 计算机系统 / 软件 / 系统软件 / 操作系统 / 内核 / 一种基于Openflow的虚拟防火墙传输控制方法及系统

一种基于Openflow的虚拟防火墙传输控制方法及系统

阅读:71发布:2024-02-22

专利汇可以提供一种基于Openflow的虚拟防火墙传输控制方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于Openflow的虚拟 防火墙 传输控制方法及系统,包括数据包从主机发送后,通过虚拟防火墙上配置的虚拟网卡,防火墙 内核 模 块 提取数据包的关键信息,虚拟防火墙通过防火墙定义的规则,与数据包关键信息进行 基础 映射;防火墙过滤规则文件,数据包到达端口后,截取数据包并对包头进行语法分析,提取出封装协议、IP源地址、IP目的地址、Mac地址、包输入端口和包输出端口信息;转发匹配。本发明提高了网络的灵活性与可控性,解决了当前防火墙实现成本高、海量 数据处理 效率底 瓶颈 问题,保证内网与终端的安全,实现了对多个网络的传输数据的扫描监控,对特定服务端口的监听管理,对特殊 站点 的 访问 控制,可保护整个网络。,下面是一种基于Openflow的虚拟防火墙传输控制方法及系统专利的具体信息内容。

1.一种基于Openflow的虚拟防火墙传输控制方法,其特征在于,所述基于Openflow的虚拟防火墙传输控制方法包括以下步骤:
数据包从主机发送后,通过虚拟防火墙上配置的虚拟网卡,防火墙内核提取数据包的关键信息,虚拟防火墙通过防火墙定义的规则,与数据包关键信息进行基础映射;若防火墙规则与关键信息匹配成功,则按照防火墙规则决定数据包的转发端口及其路径;若无匹配,数据包将被传送至用户控件的处理队列,等待相关防火墙规则的指定和下发;
防火墙过滤规则文件,rules.Config为防火墙规则文件,数据包到达端口后,截取数据包并对包头进行语法分析,提取出:封装协议、IP源地址、IP目的地址、Mac地址、包输入端口和包输出端口信息;
若提取信息与防火墙规则不匹配,则此包不被允许通过防火墙,丢弃;若提取信息与防火墙规则匹配,则此包允许传输接收;若提取信息不满足任何防火墙规则,则此包被丢弃。
2.如权利要求1所述的基于Openflow的虚拟防火墙传输控制方法,其特征在于,关键信息包括:数据来源以太网端口,到达的交换机端口,来源IP地址,目标IP地址。
3.如权利要求1所述的基于Openflow的虚拟防火墙传输控制方法,其特征在于,防火墙中数据包处理包括:
截获进入防火墙的数据包;
按照协议字段分解数据包;
获取数据包传输控制信息;
将传输控制信息与rules.Config中的传输规则进行匹配以判断对相应数据包的操作,包括:源IP地址匹配、目的IP地址匹配、传输协议匹配、数据来源以太网端口匹配、到达的交换机端口匹配、优先级匹配;
执行判定的结果,包括数据包丢弃和数据包通过。
4.如权利要求1所述的基于Openflow的虚拟防火墙传输控制方法,其特征在于,数据包头解析与匹配包括:
解析过程包括截获进入防火墙的数据包、按照协议字段分解数据包、获取数据包传输控制信息;
匹配过程包括源IP地址匹配,目的IP地址匹配、传输协议匹配、数据来源以太网端口匹配、到达的交换机端口匹配、优先级匹配。
5.如权利要求1所述的基于Openflow的虚拟防火墙传输控制方法,其特征在于,所述虚拟防火墙限制数据流经包括:同一网络和不同网络中数据包的传输。
6.如权利要求5所述的基于Openflow的虚拟防火墙传输控制方法,其特征在于,同一网络中,数据包的传输处于网络A中的终端host2向网络A的终端host3发送数据包,防火墙限制数据流经过程如下:
终端host2将host3地址作为目标地址,发送数据包Packet;
交换机switch1检测到链路中存在数据包,向控制器发送处理数据包请求
控制器策略应用相应请求,向交换机switch1下发流指令,将数据包目标地址定义为虚拟防火墙地址;
交换机switch1根据控制器指定的路径,将数据包Packet送达虚拟防火墙处,并等待防火墙处理;
防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器将数据包重新定义到网络A的内网链路;
控制器向交换机switch1下达传输命令,switch1将数据包转发至终端host3处。
不同网络中,数据包的传输,处于网络A中的终端host2向网络B的终端host8发送数据包,防火墙限制数据流经过程如下:
网络A的终端host2将网络B的终端host8地址作为目标地址,发送数据包Packet;
交换机switch1检测到链路中存在数据包,向控制器发送处理数据包请求;
控制器策略应用相应请求,向交换机switch1下发流指令,将数据包目标地址定义为虚拟防火墙地址;
交换机switch1根据控制器指定的路径,将数据包Packet送达虚拟防火墙处,并等待防火墙处理;
防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器将数据包重新定义到网络B的外网链路;
Packet通过外网链路传输,数据包达到网络B的防火墙处,并等待防火墙B处理;
防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙B将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器向防火墙下达命令,将Packet重新定义到网络B的内网链路;
控制器向交换机switch2下达传输命令,swicth2将数据包转发至终端host8。
7.一种如权利要求1所述基于Openflow的虚拟防火墙传输控制方法的虚拟防火墙传输控制系统,其特征在于,所述虚拟防火墙传输控制系统包括:
数据包匹配模块,数据包从主机发送后,通过虚拟防火墙上配置的虚拟网卡,防火墙内核模块提取数据包的关键信息,虚拟防火墙通过防火墙定义的规则,与数据包关键信息进行基础映射;若防火墙规则与关键信息匹配成功,则按照防火墙规则决定数据包的转发端口及其路径;若无匹配,数据包将被传送至用户控件的处理队列,等待相关防火墙规则的指定和下发;
包头信息提取模块,防火墙过滤规则文件,rules.Config为防火墙规则文件,数据包到达端口后,截取数据包并对包头进行语法分析,提取出:封装协议、IP源地址、IP目的地址、Mac地址、包输入端口和包输出端口信息;
转发匹配模块,若提取信息与防火墙规则不匹配,则此包不被允许通过防火墙,丢弃;
若提取信息与防火墙规则匹配,则此包允许传输接收;若提取信息不满足任何防火墙规则,则此包被丢弃。
8.如权利要求7所述的基于Openflow的虚拟防火墙传输控制系统,其特征在于,所述基于Openflow的虚拟防火墙传输控制系统进一步包括:内网模块、终端、虚拟交换机、控制器、防火墙;
内网模块,用于控制内网数据传输;
终端,与虚拟交换机连接,是数据的发出端或接受端发出数据或者接受数据;
虚拟交换机,用于实现数据包转发将接受的数据包通过指定的端口发出;
控制器,与内网模块连接,用于根据数据包解析的结果和转发规则匹配以判定对对应数据包的操作;
防火墙,与内网模块和控制器连接,用于包头解析,分离出IP地址,MAC地址,将解析数据与防火墙定义的规则进行匹配。

说明书全文

一种基于Openflow的虚拟防火墙传输控制方法及系统

技术领域

[0001] 本发明属于网络资源虚拟化技术领域,尤其涉及一种基于Openflow的虚拟防火墙传输控制方法及系统。

背景技术

[0002] 当今,由于网络资源需求日益增多,网络硬件由于高强度运算需求,高能源消耗等多个因素,单一物理硬件的负载过重,已难以满足当前网络对于资源的需求。同时,由于不同距离,速度与拓扑架构的网络相互建立连接,导致拓扑复杂多变,缺少统一抽象性。分布式的网络架构导致数据流量模式需要对横向数据流的动态增减变化进行实时调整。作为网络核心的路由器,需承载的功能不断扩展导致其性能和功能的不堪重负。随着计算与大数据的引入,网络中云计算与大数据依赖于集中化管理与预先设定的计算模式,而数据的聚合与划分操作需要构建多台服务器的网络流量模式。网络复杂多变,对于硬件需求不断提升,硬件防火墙在面对海量数据与请求时,受制于硬件限制;同时,控制与转发处于同一平面,导致防火墙拥塞或者溢出。将网络资源虚拟化技术的运用于防火墙技术中,可隐藏复杂的防火墙物理结构,统一管理网络逻辑层,动态配置最优资源。SDN所倡导的控制与转发分离、逻辑上集中化的控制、丰富灵活的开放编程接口,可处理当前防火墙实现成本高、海量数据处理效率底等瓶颈问题,提高网络的灵活性与可控性,保证内网与终端的安全。SDN的设计目的在于增强网络的灵活性,将软硬件分离,将数据与逻辑分离,而SDN防火墙可通过SDN实现其硬件虚拟化。
[0003] SDN防火墙由于将控制集中到SDN控制器中,可虚拟多个逻辑防火墙统一管理网络,但模糊了防护的分层硬件的界限,增加防火墙安全复杂性,在短期内不能完全替代传统防火墙的作用,但是SDN的作用也在不断被完善。

发明内容

[0004] 本发明的目的在于提供一种基于Openflow的虚拟防火墙传输控制方法及系统,旨在解决当前防火墙实现成本高、海量数据处理效率底瓶颈的问题。
[0005] 本发明是这样实现的,一种基于Openflow的虚拟防火墙传输控制方法,所述基于Openflow的虚拟防火墙传输控制方法包括以下步骤:
[0006] 数据包从主机发送后,通过虚拟防火墙上配置的虚拟网卡,防火墙内核提取数据包的关键信息,虚拟防火墙通过防火墙定义的规则,与数据包关键信息进行基础映射;若防火墙规则与关键信息匹配成功,则按照防火墙规则决定数据包的转发端口及其路径;
若无匹配,数据包将被传送至用户控件的处理队列,等待相关防火墙规则的指定和下发;
[0007] 防火墙过滤规则文件,rules.Config为防火墙规则文件,数据包到达端口后,截取数据包并对包头进行语法分析,提取出:封装协议、IP源地址、IP目的地址、Mac地址、包输入端口和包输出端口信息;
[0008] 若提取信息与防火墙规则不匹配,则此包不被允许通过防火墙,丢弃;若提取信息与防火墙规则匹配,则此包允许传输接收;若提取信息不满足任何防火墙规则,则此包被丢弃。
[0009] 进一步,关键信息包括:数据来源以太网端口,到达的交换机端口,来源IP地址,目标IP地址。
[0010] 进一步,防火墙中数据包处理包括:数据包解析,数据包匹配,数据包丢弃,数据包通过。
[0011] 进一步,数据包头解析与匹配包括:源IP地址匹配、目的IP地址匹配、传输协议匹配、数据来源以太网端口匹配、到达的交换机端口匹配、优先级匹配。
[0012] 进一步,所述虚拟防火墙限制数据流经包括:同一网络和不同网络中数据包的传输。
[0013] 进一步,同一网络中,数据包的传输处于网络A中的终端host2向网络A的终端host3发送数据包,防火墙限制数据流经过程如下:
[0014] 终端host2将host3地址作为目标地址,发送数据包Packet;
[0015] 交换机switch1检测到链路中存在数据包,向控制器发送处理数据包请求;
[0016] 控制器策略应用相应请求,向交换机switch1下发流指令,将数据包目标地址定义为虚拟防火墙地址;
[0017] 交换机switch1根据控制器指定的路径,将数据包Packet送达虚拟防火墙处,并等待防火墙处理;
[0018] 防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器将数据包重新定义到网络A的内网链路;
[0019] 控制器向交换机switch1下达传输命令,switch1将数据包转发至终端host3处。
[0020] 不同网络中,数据包的传输,处于网络A中的终端host2向网络B的终端host8发送数据包,防火墙限制数据流经过程如下:
[0021] 网络A的终端host2将网络B的终端host8地址作为目标地址,发送数据包Packet;
[0022] 交换机switch1检测到链路中存在数据包,向控制器发送处理数据包请求;
[0023] 控制器策略应用相应请求,向交换机switch1下发流指令,将数据包目标地址定义为虚拟防火墙地址;
[0024] 交换机switch1根据控制器指定的路径,将数据包Packet送达虚拟防火墙处,并等待防火墙处理;
[0025] 防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器将数据包重新定义到网络B的外网链路;
[0026] Packet通过外网链路传输,数据包达到网络B的防火墙处,并等待防火墙B处理;
[0027] 防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙B将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器向防火墙下达命令,将Packet重新定义到网络B的内网链路;
[0028] 控制器向交换机switch2下达传输命令,swicth2将数据包转发至终端host8。
[0029] 本发明的另一目的在于提供一种所述基于Openflow的虚拟防火墙传输控制方法的虚拟防火墙传输控制系统,所述虚拟防火墙传输控制系统包括:
[0030] 数据包匹配模块,数据包从主机发送后,通过虚拟防火墙上配置的虚拟网卡,防火墙内核模块提取数据包的关键信息,虚拟防火墙通过防火墙定义的规则,与数据包关键信息进行基础映射;若防火墙规则与关键信息匹配成功,则按照防火墙规则决定数据包的转发端口及其路径;若无匹配,数据包将被传送至用户控件的处理队列,等待相关防火墙规则的指定和下发;
[0031] 包头信息提取模块,防火墙过滤规则文件,rules.Config为防火墙规则文件,数据包到达端口后,截取数据包并对包头进行语法分析,提取出:封装协议、IP源地址、IP目的地址、Mac地址、包输入端口和包输出端口信息;
[0032] 转发匹配模块,若提取信息与防火墙规则不匹配,则此包不被允许通过防火墙,丢弃;若提取信息与防火墙规则匹配,则此包允许传输接收;若提取信息不满足任何防火墙规则,则此包被丢弃。
[0033] 进一步,所述基于Openflow的虚拟防火墙传输控制系统进一步包括:内网模块、终端、虚拟交换机、控制器、防火墙;
[0034] 内网模块,用于控制内网数据传输;
[0035] 终端,与虚拟交换机连接,是数据的发出端或接受端发出数据或者接受数据;
[0036] 虚拟交换机,用于实现数据包转发将接受的数据包通过指定的端口发出;
[0037] 控制器,与内网模块连接,用于根据数据包解析的结果和转发规则匹配以判定对对应数据包的操作;
[0038] 防火墙,与内网模块和控制器连接,用于包头解析,分离出IP地址,MAC地址,将解析数据与防火墙定义的规则进行匹配。
[0039] 本发明提供的基于Openflow的虚拟防火墙传输控制方法及系统,通过对经过防火墙的数据包进行解析获取数据包中传输控制信息(包括:源IP地址、目的IP地址、传输协议、数据来源以太网端口、到达的交换机端口),再将获取的数据包传输控制信息与rules.Config中的控制信息进行匹配(包括:源IP地址匹配、目的IP地址匹配、传输协议匹配、数据来源以太网端口匹配、到达的交换机端口匹配、优先级匹配),根据匹配结果决定对数据包的操作。将信息安全知识与计算机网络知识结合,研究网络安全技术方向;学习新型网络技术:软件定义网技术(简称SDN),了解新型网络架构;通过运用软件定义网技术,学习虚拟化技术,并实现虚拟化防火墙技术;结合软件定义网技术的优点,通过软件编程,提高网络的灵活性与可控性,对网络进行分层自主配置,进而解决当前防火墙实现成本高、海量数据处理效率底等瓶颈问题,保证内网与终端的安全;将防火墙搭建于SDN的控制器中,在软件平面实现了硬件防火墙的功能:实现了对多个网络的传输数据的扫描监控,对特定服务端口的监听管理,对特殊站点访问控制,可保护整个网络。附图说明
[0040] 图1是本发明实施例提供的基于Openflow的虚拟防火墙传输控制方法流程图
[0041] 图2是本发明实施例提供的基于Openflow的虚拟防火墙传输控制系统结构示意图;
[0042] 图中:1、内网模块;1-1、终端;1-2、虚拟交换机;2、控制器;3、防火墙。
[0043] 图3是本发明实施例提供的交换机中数据包处理流程示意图。
[0044] 图4是本发明实施例提供的数据包头解析与匹配过程示意图。
[0045] 图5是本发明实施例提供的防火墙底层示意图。
[0046] 图6是本发明实施例提供的防火墙数据包的转发过程示意图。
[0047] 图7是本发明实施例提供的网络拓扑示意图。

具体实施方式

[0048] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0049] 下面结合附图对本发明的应用原理作详细的描述。
[0050] 如图1所示,本发明实施例的基于Openflow的虚拟防火墙传输控制方法包括以下步骤:
[0051] S101:数据包从主机发送后,通过虚拟防火墙上配置的虚拟网卡,防火墙内核模块提取数据包的关键信息,虚拟防火墙通过防火墙定义的规则,与数据包关键信息进行基础映射;若防火墙规则与关键信息匹配成功,则按照防火墙规则决定数据包的转发端口及其路径;若无匹配,数据包将被传送至用户控件的处理队列,等待相关防火墙规则的指定和下发;
[0052] S102:防火墙过滤规则文件,rules.Config为防火墙规则文件,数据包到达端口后,截取数据包并对包头进行语法分析,提取出:封装协议(TCP、UDP)、IP源地址、IP目的地址、Mac地址、包输入端口和包输出端口信息;
[0053] S103:若提取信息与防火墙规则不匹配,则此包不被允许通过防火墙,丢弃;若提取信息与防火墙规则匹配,则此包允许传输接收;若提取信息不满足任何防火墙规则,则此包被丢弃。
[0054] 本发明实施例的基于Openflow的虚拟防火墙传输控制方法具体包括以下步骤:
[0055] 一.防火墙数据包的匹配
[0056] 当数据包从主机发送后,首先通过虚拟防火墙上配置的虚拟网卡。防火墙内核模块提取数据包的关键信息,关键信息可包括:数据来源以太网端口,到达的交换机端口,来源IP地址,目标IP地址等。虚拟防火墙通过防火墙定义的规则,与数据包关键信息进行基础映射。若防火墙规则与关键信息匹配成功,则按照防火墙规则决定数据包的转发端口及其路径;若无匹配,数据包将被传送至用户控件的处理队列,等待相关防火墙规则的指定和下发。
[0057] 防火墙中数据包处理流程如图3,数据包头解析与匹配过程如图4,防火墙底层组成如图5。
[0058] 防火墙中数据包处理包括:数据包解析,数据包匹配,数据包丢弃,数据包通过。
[0059] 数据包头解析与匹配包括:源IP地址匹配、目的IP地址匹配、传输协议匹配、数据来源以太网端口匹配、到达的交换机端口匹配、优先级匹配。
[0060] 二.防火墙数据包的转发
[0061] 防火墙数据包的转发过程,如图6:
[0062] (一)防火墙过滤规则文件
[0063] rules.Config为防火墙规则文件。
[0064] rules.Config文件必须存储在防火墙配置文件中。
[0065] (二)包头信息提取
[0066] 数据包到达端口后,截取数据包并对包头进行语法分析,提取出:封装协议(TCP、UDP)、IP源地址、IP目的地址、Mac地址、包输入端口和包输出端口信息。
[0067] (三)转发匹配
[0068] 若提取信息与防火墙规则不匹配,则此包不被允许通过防火墙,丢弃;
[0069] 若提取信息与防火墙规则匹配,则此包允许传输接收;
[0070] 若提取信息不满足任何防火墙规则,则此包被丢弃。
[0071] 本发明实施例虚拟防火墙限制数据流经过程:
[0072] (一)同一网络中,数据包的传输
[0073] 处于网络A中的终端host2向网络A的终端host3发送数据包,防火墙限制数据流经过程如下:
[0074] 1.终端host2将host3地址作为目标地址,发送数据包Packet。
[0075] 2.交换机switch1检测到链路中存在数据包,向控制器发送处理数据包请求。
[0076] 3.控制器策略应用相应请求,向交换机switch1下发流指令,将数据包目标地址定义为虚拟防火墙地址;
[0077] 4.交换机switch1根据控制器指定的路径,将数据包Packet送达虚拟防火墙处,并等待防火墙处理;
[0078] 5.防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器将数据包重新定义到网络A的内网链路;
[0079] 6.控制器向交换机switch1下达传输命令,switch1将数据包转发至终端host3处。
[0080] (二)不同网络中,数据包的传输
[0081] 处于网络A中的终端host2向网络B的终端host8发送数据包,防火墙限制数据流经过程如下:
[0082] 1.网络A的终端host2将网络B的终端host8地址作为目标地址,发送数据包Packet。
[0083] 2.交换机switch1检测到链路中存在数据包,向控制器发送处理数据包请求。
[0084] 3.控制器策略应用相应请求,向交换机switch1下发流指令,将数据包目标地址定义为虚拟防火墙地址;
[0085] 4.交换机switch1根据控制器指定的路径,将数据包Packet送达虚拟防火墙处,并等待防火墙处理;
[0086] 5.防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器将数据包重新定义到网络B的外网链路;
[0087] 6.Packet通过外网链路传输,数据包达到网络B的防火墙处,并等待防火墙B处理;
[0088] 7.防火墙根据控制器定义的防火墙规则进行匹配,若Packet不合法,防火墙B将可疑数据包丢弃;若Packet合法,防火墙通知控制器:Packet合法,控制器向防火墙下达命令,将Packet重新定义到网络B的内网链路;
[0089] 8.控制器向交换机switch2下达传输命令,swicth2将数据包转发至终端host8。
[0090] 如图2所示,本发明实施例的基于Openflow的虚拟防火墙传输控制系统主要包括:内网模块1、终端1-1、虚拟交换机1-2、控制器2、防火墙3。
[0091] 内网模块1,用于控制内网数据传输;
[0092] 终端1-1,与虚拟交换机1-2连接,是数据的发出端或接受端发出数据或者接受数据;
[0093] 虚拟交换机1-2,用于实现数据包转发将接受的数据包通过指定的端口发出;
[0094] 控制器2,与内网模块1连接,用于根据数据包解析的结果和转发规则匹配以判定对对应数据包的操作;
[0095] 防火墙3,与内网模块1和控制器2连接,用于包头解析,分离出IP地址,MAC地址,将解析数据与防火墙定义的规则进行匹配。
[0096] 内网模块1中的终端1-1通过虚拟交换机1-2OpenvSwitch互联,控制器2作为整个SDN网络的控制器,防火墙3应用则通过接口API调用,与控制器2进行交互;数据包通过包头解析,分离出IP地址,MAC地址,连接类型为TCP或者UDP,端口号,将解析数据与防火墙3定义的规则进行匹配,进而从网络层,传输层,物数据链路层实现虚拟防火墙。
[0097] 本发明的工作原理:
[0098] 本发明的虚拟防火墙中,数据流中包头信息与防火墙规则进行匹配,防火墙调用Floodlight模块,触发packet-in行为。通过检测packet-in行为,强制执行ACL。ACL是一系列的条件,这些条件允许或者拒绝将数据流通过防火墙。
[0099] 虚拟防火墙规则通过其自身的REST API,按照创建时的优先级进行排序。数据包会从最高的优先级与列表匹配,直到找出匹配规则或者耗尽列表。
[0100] 若找到匹配,该规则存储在IRoutingDecision对象中的操作就会传递到packet-in处,这一操作会到达Forwarding模块,若操作为ALLOW,则Forwarding执行普通的转发行为,若操作为DENY,则Forwarding执行丢弃数据包行为。
[0101] 防火墙规则允许存在部分重叠,规则将会按照优先级进行裁决。防火墙规则按照优先级排序与Openflow1.0标准中规定的packet-in中的头字段进行匹配。优先级按照降序排列,最高的匹配将决定处理流的动作,动作分为允许与拒绝两种。
[0102] 防火墙编写
[0103] AddRuleUtility.java:对防火墙规则的读取与添加。
[0104] IpacketFilteringService.java:对防火墙接口的定义。
[0105] PacketFiltering.java:接口的实现。
[0106] PacketFilteringRule.Java:控制数据包功能的实现。
[0107] RuleWildcardsPair.java:数据包状态通配符
[0108] WildcardsPair:防火墙动作通配符。
[0109] 下面结合测试对本发明的应用原理作进一步的说明。
[0110] 一.防火墙放置位置
[0111] 防火墙放置于多个子网之间,即多个SDN交换机之间(如图网络拓扑如图7,网络A与网络B之间,即SDN交换机s1与SDN交换机s7之间)。
[0112] 通过防火墙将s1控制的主机与s7控制的主机分离开来,实现控制s1管理的主机(host2、host3、host4、host5、host6)间与s7管理的主机(host8、host9、host10、host11、host12)间的通信。
[0113] 将s1与其管理主机视为网络A,将s7及其管理主机视为网络B。
[0114] 二.防火墙关闭与开启
[0115] (一)防火墙关闭
[0116] 网络A可与网络B可进行无障碍通信。
[0117] (二)防火墙开启
[0118] 网络A语网络B间通信受制于防火墙规则限制。
[0119] 三.防火墙具体规则限定如下
[0120] (一)防火墙规则
[0121] 表格1:防火墙状态控制
[0122]防火墙状态 通信状态
关闭 所有终端相互通信无碍
开启 终端通信遵守防火墙规则文件
[0123] 表格2:传输协议控制
[0124]防火墙状态 通信状态
数据包协议为ARP协议 除ICMP类型数据包可以通过,其他类型数据包不可通过数据包协议为ICMP协议 除ARP类型数据包可以通过,其他类型数据包不可通过数据包传输协议为TCP协议 除TCP类型数据包可以通过,其他类型数据包不可通过数据包传输协议为UDP协议 除UDP类型数据包可以通过,其他类型数据包不可通过[0125] 表格3:终端地址控制
[0126]防火墙状态 通信状态
规定源终端IP地址,目的终端IP地址 源终端可与目的终端通信
规定源终端IP地址,目的地址为某网段IP地址 源终端可和该网段内所有终端通信规定源终端MAC地址,目的终端MAC地址 源终端可与目的终端通信
[0127] 表格4:单、双向传输控制
[0128]防火墙状态 通信状态
传输终端被设置为源地址与目的地址 终端可发送信息,接收信息
传输终端被设置为源终端 终端只能发送信息,接收的信息被拦截
传输终端被设置为目的终端 终端只能接收信息,发送的信息被拦截
[0129] 表格5:端口号控制
[0130]
[0131] 表格6:内外网隔离
[0132]
[0133]
[0134] (二)防火墙规则实现:
[0135] 1.防火墙关闭:则所有数据包均可通过,网络A与网络B间所有数据包间通信无阻碍。
[0136] 2.通过对IP层进行限制,实现对IPV4数据包进行传输控制:
[0137] 1)相同网络:除允许网络A中,host2与host3间通信外,未设定其他防火墙规则。
[0138] i.定义ICMP规则,则网络A中host2与host3主机之间可进行ICMP数据包传输,防火墙规则如下:
[0139] ii.src-ip:10.0.0.2/32,dst-ip:10.0.0.3/32,nw-proto:ICMP
[0140] iii.src-ip:10.0.0.3/32,dst-ip:10.0.0.2/32,nw-proto:ICMP
[0141] iv.只定义ARP规则,则网络A中host2与host3主机之间可进行ARP数据包传输,防火墙规则如下:
[0142] src-ip:10.0.0.2/32,dst-ip:10.0.0.3/32,dl-type:ARP
[0143] src-ip:10.0.0.3/32,dst-ip:10.0.0.2/32,dl-type:ARP
[0144] 2)不同网络:网络A中的host2与与网络B中的host3间通信。
[0145] i.只定义ICMP规则,则网络A中host2与网络B中host8主机之间可进行ICMP数据包传输,防火墙规则如下:
[0146] src-ip:10.0.0.2/32,dst-ip:10.0.0.8/32,nw-proto:ICMP
[0147] src-ip:10.0.0.8/32,dst-ip:10.0.0.2/32,nw-proto:ICMP
[0148] ii.只定义ARP规则,则网络A中host2与网络B中host8主机之间可进行ARP数据包传输,防火墙规则如下:
[0149] src-ip:10.0.0.2/32,dst-ip:10.0.0.8/32,dl-type:ARP
[0150] src-ip:10.0.0.8/32,dst-ip:10.0.0.2/32,dl-type:ARP
[0151] 3.指定IP的主机间数据包传输控制:
[0152] 1)相同网络:网络A:除允许host2与host3间通信外,未设定其他防火墙规则。终端见可进行ICMP与ARP数据包传输,防火墙规则如下:
[0153] src-ip:10.0.0.2/32,dst-ip:10.0.0.3/32,nw-proto:ICMP
[0154] src-ip:10.0.0.3/32,dst-ip:10.0.0.2/32,nw-proto:ICMP
[0155] src-ip:10.0.0.2/32,dst-ip:10.0.0.3/32,dl-type:ARP
[0156] src-ip:10.0.0.3/32,dst-ip:10.0.0.2/32,dl-type:ARP
[0157] 2)不同网络:网络A与网络B:除允许网络A中host2与网络B中host8间通信外,未设定其他防火墙规则。防火墙规则如下:
[0158] src-ip:10.0.0.2/32,dst-ip:10.0.0.8/32,nw-proto:ICMP
[0159] src-ip:10.0.0.8/32,dst-ip:10.0.0.2/32,nw-proto:ICMP
[0160] src-ip:10.0.0.2/32,dst-ip:10.0.0.8/32,dl-type:ARP
[0161] src-ip:10.0.0.8/32,dst-ip:10.0.0.2/32,dl-type:ARP
[0162] 4.同一网段中数据包传输控制:
[0163] 网络中所有主机处于同一网段中,定义规则为网络A中的host2可以与网络A、网络B中所有主机进行数据包通信。防火墙规则如下。
[0164] src-ip:10.0.0.2/32,dst-ip:10.0.0.0/24,nw-proto:ICMP
[0165] src-ip:10.0.0.0/24,dst-ip:10.0.0.2/32,nw-proto:ICMP
[0166] src-ip:10.0.0.2/32,dst-ip:10.0.0.0/24,dl-type:ARP
[0167] src-ip:10.0.0.0/24,dst-ip:10.0.0.2/32,dl-type:ARP
[0168] 5.对协议与端口绑定的数据包传输控制:
[0169] 1)TCP端口访问控制
[0170] 防火墙规则允许网络A中host2与网络A,网络B中所有host通信。网络A中host2做为服务器端,开放host2除1111的TCP端口访问。测试端口:1111(1111端口为关闭端口),80(80端口为开放端口)。防火墙规则如下。
[0171] dst-ip:10.0.0.2/32,nw-proto:TCP,tp-dst:1111,action:deny
[0172] src-ip:10.0.0.2/32,nw-proto:TCP,tp-src:1111,action:deny
[0173] 2)UDP端口访问控制
[0174] 防火墙规则允许网络A中host2与网络A,网络B中所有host通信。网络A中host2做为服务器端,开放host2除1111的UDP端口访问。测试端口:1111(1111端口为关闭端口),80(80端口为开放端口)。防火墙规则如下。
[0175] dst-ip:10.0.0.2/32,nw-proto:UDP,tp-dst:1111,action:deny
[0176] src-ip:10.0.0.2/32,nw-proto:UDP,tp-src:1111,action:deny
[0177] i.访问关闭端口:
[0178] 从网络A中host3与网络B中host9均无法访问host2中1111端口。host3访问host21111端口,访问失败,host9访问host21111端口,访问失败,。
[0179] ii.访问开放端口
[0180] 从网络A中host3与网络B中host9均可访问host2中80端口,访问成功,提供http服务器服务。host3访问host2的80端口
[0181] 6.数据包优先级
[0182] 优先级设定初始值默认为0,依次递减。0代表优先级最低。
[0183] 1)相同网络:网络A中host2与host4的数据包传输控制。
[0184] 使用防火墙规则,允许host2与所有网络A中其他host通信后,加载优先级,不允许网络A中host2与host4通信。规则禁止A网络中host2主机与host4主机的相互访问,防火墙规则如下
[0185] src-ip:10.0.0.2/32,dst-ip:10.0.0.0/24,nw-proto:ICMP
[0186] src-ip:10.0.0.0/24,dst-ip:10.0.0.2/32,nw-proto:ICMP
[0187] src-ip:10.0.0.2/32,dst-ip:10.0.0.0/24,dl-type:ARP
[0188] src-ip:10.0.0.0/24,dst-ip:10.0.0.2/32,dl-type:ARP
[0189] src-ip:10.0.0.2/32,dst-ip:10.0.0.4/32,priority:-10,action:deny[0190] src-ip:10.0.0.4/32,dst-ip:10.0.0.2/32,priority:-9,action:deny[0191] 2)不同网络:网络A中host2与网络中host8的数据包传输控制。
[0192] 使用防火墙规则,允许host2与所有网络B中其他host通信后,加载优先级,不允许网络A中host2与网络B中host8通信。规则禁止网络A中host2主机与网络B中host8的相互访问。
[0193] 防火墙规则如下:
[0194] src-ip:10.0.0.2/32,dst-ip:10.0.0.0/24
[0195] src-ip:10.0.0.0/24,dst-ip:10.0.0.2/32
[0196] src-ip:10.0.0.2/32,dst-ip:10.0.0.0/24,dl-type:ARP
[0197] src-ip:10.0.0.0/24,dst-ip:10.0.0.2/32,dl-type:ARP
[0198] src-ip:10.0.0.2/32,dst-ip:10.0.0.8/32,priority:-10,action:deny[0199] src-ip:10.0.0.8/32,dst-ip:10.0.0.2/32,priority:-9,action:deny[0200] 7.隔离网络A与外网(外网由网络B模拟)
[0201] 网络A中所有主机不可接收网络B中所有主机数据包,但网络B中所有主机可接收到网络A中所有主机数据包。网络A中所有主机由host2模拟,网络B中所有主机由host8模拟。
[0202] 防火墙规则如下
[0203] src-ip:10.0.0.2/32,dst-ip:10.0.0.8/32,nw-proto:ICMP
[0204] src-ip:10.0.0.2/32,dst-ip:10.0.0.8/32,dl-type:ARP
[0205] 1)host2向host8发送请求时,由于防火墙规定host2只能作为源地址,不能作为目的地址,故host2无法接收host8中所有数据,host8法可接收来自host2发送给它的数据包,所以host2与host8互ping,数据包全部丢失。但由于host2无法接收host8的数据包,host8会向host2重复发送host8地址,host2无应答。host2向host8发送请求时,由于防火墙规定host2只能作为源地址,不能作为目的地址,故host2无法接收host8中所有数据,host8法可接收来自host2发送给它的数据包,所以host2与host8互ping,数据包全部丢失。但由于host2无法接收host8的数据包,host8会向host2重复发送host8地址,host2无应答。
[0206] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈