软件定义网络中基于头空间的网络验证方法研究
发布时间:2021-11-07 12:00
近年来,随着网络变得越来越复杂化,成千上万网络设备以不同的方式来修改和转发数据包,执行复杂的网络功能,并导致了网络的易错。网络验证与测试领域已经越来越受到学术界的关注。当前的网络急速发展,互联网应用,互联网服务急速增长,变的越来越复杂,对网络的要求也同时越来越高,网络也需要发展来适应当前环境的需要。软件定义网络(SDN)革新了传统网络,将传统网络中的控制层和数据层解耦,使得整个网络可以集中式控制并编程,这简化了网络管理,也进一步推动了整个网络验证领域的发展。在数据层验证与测试上,SDN使得实时网络数据层验证与测试更为方便与可行的同时,也要求数据层验证与测试更高的实时更新处理效率。当前的研究在实时验证与测试的实时更新效率上都有着瓶颈,并且难以扩展到多域或者多层级SDN网络中去。本文首先提出了基于多终端二进制决策图(MTBDD)的预处理工具Pre Checker,在高效动态划分等价类的同时,检测消除规则间的冲突,结合基于等价类的网络验证方法,使其更新效率进一步提高。其次,将MTBDD结构的头空间等价类动态划分方法引入到数据层测试中,提高了动态测试数据包生成效率。另外,本文设计了一个基于头空...
【文章来源】:华南理工大学广东省 211工程院校 985工程院校 教育部直属院校
【文章页数】:135 页
【学位级别】:博士
【部分图文】:
SDN(软件定义网络)的三层模型。
图1-1 SDN(软件定义网络)的三层模型。1)匹配域,匹配域包含着确定一条流的具体信息(数据包头域加上入端口),用来匹配进入到交换机的数据包,我们向匹配域填充数据来确定我们想要去控制的流,匹配域中存在着通配符选项来进一步对较粗粒度的流进行控制,但同时又产生了交叉控制的问题;
软件定义网络中,结构如图1-4所示,分为数据层、控制层和应用层。数据层相关于转发设备主要负责数据转发,提供可编程的流表,其中包含着下发的流实体规则。控制器位于控制层配置交换机,作为集中式控制的存在,主要承担大量的计算和存储任务,并且维护着全网视图。应用层的应用则是顶层一个个的程序,允许用户通过编程的方式定义整个网络的行为。对比控制层,数据层的语义模型相对好理解,数据层反应了所有配置对整个网络的结合影响。数据层不需要结合不同厂商的不同配置语言,或者通过多种多样的动态协议来建模动态行为。在数据层上主要的就是转发表及其形成的拓扑逻辑。当给定一个拓扑逻辑和数据层快照的时候,能通过逻辑公式来建模整个网络并进行推导。接下来对要求检测的不变量的定义逻辑公式进行推导验证,就能得知所要求的不变量是否满足正确性条件。不变量指定了网络中转发行为的正确性条件。可以检测包括存在环路,数据包可达性问题和是否绕过某个交换机等问题。对于SDN网络中的数据层验证来说,和传统网络中的不同的地方在于数据的收集和验证的阶段。在传统网络中进行验证,能通过SNMP来收集FIB的数据等。但在SDN网络中就简单多了,能直接从控制器本身获得所有插入的规则,在规则下发之前就能获得插入规则的数据,并在插入、修改或者删除命令生效之前,提前进行验证,问题规则就不会对真实基础设施网络造成不好的影响。
本文编号:3481819
【文章来源】:华南理工大学广东省 211工程院校 985工程院校 教育部直属院校
【文章页数】:135 页
【学位级别】:博士
【部分图文】:
SDN(软件定义网络)的三层模型。
图1-1 SDN(软件定义网络)的三层模型。1)匹配域,匹配域包含着确定一条流的具体信息(数据包头域加上入端口),用来匹配进入到交换机的数据包,我们向匹配域填充数据来确定我们想要去控制的流,匹配域中存在着通配符选项来进一步对较粗粒度的流进行控制,但同时又产生了交叉控制的问题;
软件定义网络中,结构如图1-4所示,分为数据层、控制层和应用层。数据层相关于转发设备主要负责数据转发,提供可编程的流表,其中包含着下发的流实体规则。控制器位于控制层配置交换机,作为集中式控制的存在,主要承担大量的计算和存储任务,并且维护着全网视图。应用层的应用则是顶层一个个的程序,允许用户通过编程的方式定义整个网络的行为。对比控制层,数据层的语义模型相对好理解,数据层反应了所有配置对整个网络的结合影响。数据层不需要结合不同厂商的不同配置语言,或者通过多种多样的动态协议来建模动态行为。在数据层上主要的就是转发表及其形成的拓扑逻辑。当给定一个拓扑逻辑和数据层快照的时候,能通过逻辑公式来建模整个网络并进行推导。接下来对要求检测的不变量的定义逻辑公式进行推导验证,就能得知所要求的不变量是否满足正确性条件。不变量指定了网络中转发行为的正确性条件。可以检测包括存在环路,数据包可达性问题和是否绕过某个交换机等问题。对于SDN网络中的数据层验证来说,和传统网络中的不同的地方在于数据的收集和验证的阶段。在传统网络中进行验证,能通过SNMP来收集FIB的数据等。但在SDN网络中就简单多了,能直接从控制器本身获得所有插入的规则,在规则下发之前就能获得插入规则的数据,并在插入、修改或者删除命令生效之前,提前进行验证,问题规则就不会对真实基础设施网络造成不好的影响。
本文编号:3481819
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/3481819.html
最近更新
教材专著