虚拟网络架构及虚拟网络架构实现数据包转发处理方法技术

技术编号:34182063 阅读:20 留言:0更新日期:2022-07-17 13:20
本发明专利技术公开了一种虚拟网络架构及虚拟网络架构实现数据包转发处理方法,所述虚拟网络架构包括多个虚拟分布式交换机,各所述虚拟分布式交换机具有基于OVS Bridgechain的模块化openflow流水线结构,其由分布于若干物理节点上的OVS实例组成逻辑转发单元。本发明专利技术将涉及虚拟网络设备管理的部分功能放置到特定bridge中,设计网络功能不需要考虑设备管理功能及其变更。能及其变更。能及其变更。

Virtual network architecture and data packet forwarding processing method based on virtual network architecture

【技术实现步骤摘要】
虚拟网络架构及虚拟网络架构实现数据包转发处理方法


[0001]本专利技术涉及一种虚拟网络架构及虚拟网络架构实现数据包转发处理方法,属于虚拟机网络


技术介绍

[0002]软件定义网络(SDN,SoftwareDefinedNetwork)是一种使用控制与转发分离,完全由软件定义与实现网络转发的网络架构模型,在当前数据中心虚拟网络的构建中被广泛使用。构建SDN时需要在物理服务器节点上部署由软件实现的虚拟交换机(VS,Virtual Switch)作为核心组件,其中OVS(OpenVS)是最具代表性同时最被广泛使用的一种虚拟交换机。OVS使用OpenFlow协议作为控制平面与数据平面之间交互的标准协议,由控制平面通过编程OpenFlowPipeline来实现数据平面的各种功能,例如转发、分布式防火墙等。
[0003]如图1所示,OpenFlowPipeline由一系列流表(FlowTable,GroupTable,MeterTable)组成,各个流表之间通过一定的控制逻辑相连接,任意流表由一系列包含匹配域以及相应可执行动作的流条目组成。现有的架构一般使用单个OpenFlowPipeline来实现业务逻辑。
[0004]现有的虚拟网络实现架构主要分为以下两类:
[0005]1)基于linuxkernel的网络命名空间,iproute,以及netfilter等框架实现诸如分布式防火墙,分布式路由,dhcp等高级网络功能,通过若干特定的网桥设备(OVSBridge以及linux Bridge)将各个实现于kernel的网络功能进行粘合,构成完整的虚拟网络功能,这一类最具代表性的实现为Openstack。
[0006]2)基于虚拟交换机的软件定义可编程能力,使用特定的南北向协议实现完整的各类网络功能,这一类最具代表性的实现是OVN,其使用OVS作为软件交换机,OpenFlow作为南向控制协议,ovsdb作为北向控制协议,构建完整的网络功能栈。
[0007]Openstack架构中,安全组、dhcp、路由、浮动IP等功能都是使用网络命名空间(network namespace)、iptables以及iproute等linux内核组件结合实现,其使用多bridge连接各个基于linux内核实现的网络功能。bridge本身不是网络功能实现的主要载体,仅实现转发相关功能,其主要作为网络功能之间的粘合连接之用。这种架构使得Openstack中的各类网络功能实现一定程度的模块化,但大量功能依赖iptables实现,随着网络规模的增长,性能下降明显;不同模块间使用普通桥接方式,也带来额外的性能损失。与此同时,为了维护多种网络功能,需要为各自分别维护特定功能的代理节点,使得运维较为复杂。
[0008]OVN架构中,通过在单个OVS Bridge中构建单一的OpenFlowPipeline:所有功能均已实现在该流水线中,不同的网络功能都是通过特定的逻辑表项实现,为用户提供了统一的虚拟网络视图,其充分利用高效的OVS数据平面实现,但由于对于特定网络功能没有模块化的定义方式,对OpenFlowPipeline中的网络功能进行变更/增删,都需要对整个OpenFlow Pipeline进行改动,因此需要对整个OpenFlowPipeline有深入的理解,同时变更操作也可能需要对整个OpenFlowPipeline逻辑表项进行调整,无法以模块化的方式做功能的变更。
与此同时,其虚拟设备管理与网络功能实现存在耦合(都以bridge为单位进行管理),网络功能的设计与实现同时需要考虑设备管理功能及其变更。

技术实现思路

[0009]本专利技术的目的是解决上述
技术介绍
中提及的缺陷。
[0010]为实现上述专利技术目的,第一方面,本专利技术提供一种虚拟网络架构,包括多个虚拟分布式交换机,每个虚拟分布式交换机是由分布于若干物理节点上的OVS实例组成的逻辑转发单元构成;
[0011]每个物理节点上的OVS实例包括多个不同功能的OVS Bridge,各所述OVS Bridge之间以OVS Patch Port连接;
[0012]每个所述OVS Bridge均包括Local

bridge本地网桥、NF

bridge网桥、Cls

bridge分类网桥、Uplink

bridge上行网桥;
[0013]所述Local

bridge本地网桥,用于将从本地发出的流量直接重定向到上游与其直接相连的NF

bridge网桥;还用于将从上游直接相连的NF bridge网桥收到的数据包经L2转发至相应本地端口;
[0014]所述NF网桥,连接下游localbridge本地网桥以及上游Cls

bridge分类网桥;所述NF网桥用于构建预设特定网络,所述NF网桥还用于支持以热插拔虚拟OVSBridge的方式实现预设特定网络的增删或变更;
[0015]所述Cls

bridge分类网桥连接下游的NFbridge网桥以及上游uplinkbridge上行网桥;所述Cls

bridge分类网桥用于分类本地发往本地或分类本地发往其他非本地节点上的数据包,并进行分流;
[0016]所述Uplink

bridge上行网桥,用于直接连接其对应虚拟分布式交换机的物理接口。
[0017]进一步地,将虚拟网络设备分别连接至所述Local

bridge和Uplink

bridge,以实现虚拟网络设备管理与网络功能的隔离。
[0018]进一步地,所述预设特定网络至少包括分布式防火墙网络及服务链网络。
[0019]本专利技术提供了一种虚拟网络架构实现数据包转发处理方法,包括对源虚拟机VM11与目标虚拟机VM12这两个虚拟机是否链接在同一个虚拟分布式交换机上,如果确定链接在同一个虚拟分布式交换机上,则执行同一个虚拟分布式交换机上的两个虚拟机VM11与VM12之间的数据包发送过程:
[0020]步骤S100,Local

bridge本地网桥将从本地端口发出的数据包发送至上游NF

bridge网桥;
[0021]步骤S101,上游NF

bridge网桥对数据包进行NF处理,并将NF处理后的数据包最终送到Cls

bridge分类网桥;
[0022]步骤S103,所述Cls

Bridge分类网桥获取目标虚拟机VM12的目的地址,确定目标虚拟机VM12的目的地址;将数据包发回与所述Cls

bridge分类网桥直连下游NF

bridge网桥,经NF处理,并最终将数据包送达Local

Bridge本地网桥;
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟网络架构,其特征在于,包括多个虚拟分布式交换机,每个虚拟分布式交换机是由分布于若干物理节点上的OVS实例组成的逻辑转发单元构成;每个物理节点上的OVS实例包括多个不同功能的OVS Bridge,各所述OVS Bridge之间以OVS Patch Port连接;每个所述OVS Bridge均包括Local

bridge本地网桥(100)、NF

bridge网桥(200)、Cls

bridge分类网桥(300)、Uplink

bridge上行网桥(400);所述Local

bridge本地网桥(100),用于将从本地发出的流量直接重定向到上游与其直接相连的NF

bridge网桥(200);还用于将从上游直接相连的NF bridge网桥(200)收到的数据包经L2转发至相应本地端口;所述NF网桥(200),连接下游localbridge本地网桥(100)以及上游Cls

bridge分类网桥(300);所述NF网桥(200)用于构建预设特定网络,所述NF网桥(200)还用于支持以热插拔虚拟OVSBridge的方式实现预设特定网络的增删或变更;所述Cls

bridge分类网桥(300)连接下游的NFbridge网桥(200)以及上游uplinkbridge上行网桥(400);所述Cls

bridge分类网桥(300)用于分类本地发往本地或分类本地发往其他非本地节点上的数据包,并进行分流;所述Uplink

bridge上行网桥(400),用于直接连接其对应虚拟分布式交换机的物理接口。2.根据权利要求1所述的虚拟网络架构,其特征在于,将虚拟网络设备分别连接至所述Local

bridge和Uplink

bridge,以实现虚拟网络设备管理与网络功能的隔离。3.根据权利要求2所述的虚拟网络架构,其特征在于,所述预设特定网络至少包括分布式防火墙网络及服务链网络。4.一种虚拟网络架构实现数据包转发处理方法,其特征在于,其利用了如权利要求3所述的虚拟网络架构实现数据包转发处理,包括对源虚拟机VM11与目标虚拟机VM12这两个虚拟机是否链接在同一个虚拟分布式交换机上,如果确定链接在同一个虚拟分布式交换机上,则执行同一个虚拟分布式交换机上的两个虚拟机VM11与VM12之间的数据包发送过程:步骤S100,Local

bridge本地网桥(100)将从本地端口发出的数据包发送至上游NF

bridge网桥(200);步骤S101,上游NF

bridge网桥(200)对数据包进行NF处理,并将NF处理后的数据包最终送到Cls

bridge分类网桥(300);步骤S103,所述Cls

Bridge分类网桥(300)获取目标虚拟机VM12的目的地址,确定目标虚拟机VM12的目的地址;将数据包发回与所述Cls

bridge分类网桥(300)直连下游NF

bridge网桥(200),经NF处理,并最终将数据包送达Local

Bridge本地网桥(100);步骤S104,所述Local

bridge本地网桥(100)解析所述目的地址所对应的目标虚拟机VM12的本地端口,将数据包转发至相应的目标虚拟机VM12的本地端口。5.根据权利要求4所述的虚拟网络架构实现数据包转发处理方法,其特征在于,还包括对源虚拟机VM11与目标虚拟机VM21这两个虚拟机是否链接在同一个虚拟分布式交换机上,如果确定链接在同一个虚拟分布式交换机上在不同的虚拟分布式交换机上,则对源虚拟机VM11上的虚拟分布式交换机和目标虚拟机VM21上的虚拟分布式交换机执行不同的两个虚拟机VM11与VM21之间的数据包发送过程:
步骤S201,源虚拟机VM11对应的源虚拟分布式交换机的Local

bridge本地...

【专利技术属性】
技术研发人员:罗成程徐文豪王弘毅张凯
申请(专利权)人:北京志凌海纳科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1