首页 > 编程知识 正文

网络虚拟化技术,网络虚拟化的技术有哪些

时间:2023-05-06 00:02:02 阅读:219825 作者:1103

• 网络虚拟化(一):简介
目前,软件定义的数据中心是一大热门技术,VMware作为全球最大的虚拟化厂商实现了通过软件可以定义应用及其所需的所有资源,包括服务器、存储、网络和安全功能都会实现虚拟化,然后组合所有元素以创建一个软件定义的数据中心。通过虚拟化可以减少服务器部署的时间和成本,可以实现灵活性和资源利用率的最大化,可以在调配虚拟机时对环境进行自定义,在软件定义的数据中心里虚拟机可以跨越物理子网边界。
  传统的网络在第2层利用VLAN来实现广播隔离,在以太网数据帧中使用12位的VLAN ID将第二层网络划分成多个广播域,VLAN数量需少于4094个。但随着虚拟化的普及,4094个的数值上限面临着巨大压力。此外,由于生成树协议(STP)的限制,极大的限制了可以使用的VLAN 数量。基于VXLAN的网络虚拟化解决了传统物理网络面临的诸多难题。
  网络虚拟化可将网络抽象化为一个广义的网络容量池。因此便可以将统一网络容量池以最佳的方式分割成多个逻辑网络。您可以创建跨越物理边界的逻辑网络,从而实现跨集群和单位的计算资源优化。不同于传统体系架构,逻辑网络无需重新配置底层物理硬件即可实现扩展。VMware网络虚拟化是通过虚拟可扩展局域网(VXLAN)技术,创建叠加在物理网络基础架构之上的逻辑网络。
  VMware网络虚拟化解决方案满足了数据中心的以下几大需求:
• 提高计算利用率
• 实现集群的扩展
• 跨数据中心内多个机架利用容量
• 解决IP寻址难题
• 避免大型环境中VLAN数量剧增问题
• 实现大规模多租户


通过采用网络虚拟化,可以有效的解决这些问题并实现业务优势:
• 加快网络和服务的调配速度,实现业务敏捷性。
• 将逻辑网络与物理网络分离,提供充分的灵活性。
• 大规模隔离网络流量并将其分段。
• 自动执行可重复的网络和服务调配工作流。

虚拟交换机
虚拟交换机在许多方面都与物理以太网交换机相似。每个虚拟交换机都是互相隔离的,拥有自己的转发表,因此交换机查找的每个目的地只能与发出帧的同一虚拟交换机上的端口匹配。它可以在数据链路层转发数据帧,然后通过以太网适配器出口连接到外部网络。虚拟交换机能够将多个以太网适配器绑定在一起,类似于传统服务器上的网卡绑定,从而为使用虚拟交换机提供更高的可用性和带宽。它还支持端口级别的VLAN分段,因此可以将每个端口配置为访问端口或中继端口,从而提供对单个或多个VLAN的访问。
  但是与物理交换机不同,虚拟交换机不需要生成树协议,因为它强制使用单层网络连接拓扑。多个虚拟交换机无法进行互连,在同一台主机内,网络通信流量无法在虚拟交换机之间直连流动。虚拟交换机通过一个交换机提供用户需要的所有端口。虚拟交换机无需进行串联,因为它们不共享物理以太网适配器。
虚拟交换机可提供二种与主机和虚拟机相连接的类型:
  • 将虚拟机连接到物理网络。
  • 将VMkernel服务连接到物理网络。VMkernel服务包括访问IP存储(如:NFS或iSCSI)、执行vMotion迁移以及访问管理网络。
设计网络连接环境时,您可以通过VMware vSphere将所有网络都置于一个虚拟交换机中。或者,您也可以选择多个虚拟交换机,每个虚拟交换机具有一个单独的网络。具体作何选择在某种程度上取决于物理网络的布局。例如:您可能没有足够的网络适配器,无法为每个网络创建一个单独的虚拟交换机。因此,您可能会将这些网络适配器绑定在一个虚拟交换机上,然后使用VLAN来隔离这些网络。
虚拟网络支持二种类型的虚拟交换机:
• 虚拟网络标准交换机:主机级别的虚拟交换机配置。
标准交换机可以将多个虚拟机连接起来,并使它们彼此可以进行通信。每个标准交换机最多有4088个虚拟交换机端口,而每台主机最多有4096个虚拟交换机端口。下图显示了几个标准交换机的不同用途。这些交换机从左到右依次为:

配置绑定网卡的标准交换机。绑定的网卡可自动分发数据包以及执行故障切换。 仅限内部使用的标准交换机,允许单个ESXi主机内的虚拟机直接与其他连接到同一标准交换机的虚拟机进行通信。VM1和VM2可使用此交换机互相通信。 配置一个出站适配器的标准交换机。该交换机提供VM3使用。 VMkernel用来实现远程管理功能的标准交换机。 虚拟网络分布式交换机:虚拟网络分布式交换机是一款数据中心级交换机。标准交换机基于主机工作,交换机配置保存在ESXi主机上面。而数据中心交换机能够独立于物理结构实现统一虚拟化管理。虚拟网络分布式交换机配置通过vCenterServer管理,并且所有虚拟网络配置的详细信息都存储在vCenter Server数据库中。VXLAN网络可在一个或多个vSphereDistributed Switch上进行配置。
  另外,vNetwork分布式交换机具有以下特征:独立于物理结构的统一网络虚拟化管理。针对整个数据中心管理一台交换机与针对每台主机管理若干标准虚拟交换机。支持VMware vSpherevMotion,因此统计数据和策略可随虚拟机一同转移。独立的管理界面。高级流量管理功能。监控和故障排除功能,如NetFlow和端口镜像。主机级别的数据包捕获工具(tcpdump)VXLAN虚拟可扩展局域网(上)2011年的VMworld大会上,VMware提出了VXLAN(virtual Extensible LAN虚拟可扩展局域网)技术。VXLAN技术是VMware、CISCO、Arista、Broadcom、Citrix和Redhat等厂商共同开发用于虚拟网络的技术,与之抗衡的有Microsoft联合Intel、HP和Dell开发的NVGRE标准(Network Virtualization using Generic Routing Encapsulation)。本文将重点介绍VXLAN的优势、VMware的VXLAN组件和应用案例分析。
VXLAN逻辑网络有以下几项优于传统物理网络的明显优势:
1、突破了传统VLAN的数量限制。
物理网络使用VLAN来限制和隔离第2层广播域,VLAN的数量上限为4094个。随着主机虚拟化技术的兴起,4094个VLAN数已经远不能满足云数据中心的需求。不同于VLAN的4094限制,VXLAN网络可以支持多达1600万个VLAN标识符。
2、突破了传统的物理界限,满足多租户环境和规模扩展的需求。
VXLAN网络是一个创建叠加在物理网络基础架构之上的逻辑网络,实现了在底层硬件上的独立配置。VXLAN网络大大减少了数据中心网络管理和配置所花费的时间,它提供的多层次网络拓扑结构和企业级安全服务,可将部署、调配时间从几周减少到数小时。同时,在VXLAN网络部署的虚拟机可以实现跨物理机迁移,例如:北京数据中心的虚拟机可以和上海的数据中心的虚拟机在二层网络上进行通信,打破了传统的二层网络的界限。
3、解决STP(生成树协议)高负荷
VXLAN 中使用了新技术替代STP(生成树协议), 因此解决了汇聚层交换机由于STP高负荷导致的压力过大问题。

在vSphere 5.5版本中,VXLAN实现组件包括:
• vShield Manager
  vShield Manager是vShield的集中式网络管理组件,可作为虚拟设备安装在vCenter Server 环境中的任意ESX主机上。vShieldManager可在与安装vShield代理不同的ESX主机上运行。使用 vShield Manager用户界面或vSphere Client插件,管理员可以安装、配置和维护vShield组件。vShield Manager可以定义并管理VXLAN网络,包括:定义VXLAN网络的延展范围、配置vSphere承载VXLAN网络的VDS和配置VTEP等。
• vSphere分布式交换机
  在VXLAN网络中vSphere分布式交换机用于连接主机和互连。
• vSphere主机
  在VXLAN网络中每台vSphere主机上需要配置虚拟安全加密链路端点(VETP)模块,每个主机VEP会分配到一个唯一的IP地址,在vmknic虚拟适配器上进行配置,用于建立主机之间的通信安全加密链路并承载VXLAN流量。VTEP由以下三个模块组成:
  1). vmkernel模块
  此模块负责VXLAN数据路径处理,其中包括转发表的维护以及数据包的封装和拆封。
  2)、vmknic虚拟适配器
  此模块用于承载VXLAN控制流量,其中包括对多播接入、DHCP和ARP请求的响应。
  3)、VXLAN端口组
  此端口组包括物理网卡、VLAN信息、绑定策略等。端口组参数规定了VXLAN流量如何通过物理网卡进出主机VTEP。
创建VXLAN虚拟网络案例演示
此方案的情形如下:在数据中心的两个群集上有多个 ESX 主机。工程部门和财务部门都在Cluster1 上。市场部门在Cluster2 上。两个群集都由单个vCenter Server 5.5进行 管理。

Cluster1 上的计算空间不足,而 Cluster2 未充分利用。老板要求IT管理员将工程部门的虚拟机扩展到 Cluster2上,实现工程部门的虚拟机位于两个群集中,并且能够彼此通信。如果 IT管理员使用传统方法解决此问题,他需要以特殊方式连接单独的 VLAN 以便使两个群集处于同一二层域中。这可能需要购买新的物理设备以分离流量,并可能导致诸如 VLAN 散乱、网络循环以及系统和管理开销等问题。
通过 VXLAN技术,IT管理员可以通过跨dvSwitch1 和 dvSwitch2 构建VXLAN 虚拟网络,在不添加物理设备的情况下达到要求。

VXLAN虚拟可扩展局域网(下)
VXLAN传输数据包
VXLAN虚拟可扩展局域网是一种overlay的网络技术,使用MAC in UDP的方法进行封装,在封装包中间添加了一层共50字节的VXLAN Header,然后以IP数据包的形式通过3层网络进行传输。位于VXLAN安全加密链路任何一端的虚拟机不知道这个封装包。同时,物理网络中的设备也不知道虚拟机的源或目的MAC或IP地址。VXLAN的封装结构如下图所示:
VXLAN Header:
  共计8个字节,目前被使用的是Flags中的一个标识位和24bit的VXLAN Network Identifier,其余的部分没有定义,但是在使用的时候必须设置为0×0000。外层的UDP报头:
  目的端口使用4789,但是可以根据需要进行修改。同时UDP的校验和必须设置成全0。IP报文头:
  目的IP地址可以是单播地址,也可以是多播地址。
  单播情况下,目的IP地址是VXLAN Tunnel End Point(VTEP)的IP地址。
  在多播情况下引入VXLAN管理层,利用VNI和IP多播组的映射来确定VTEPs。
从封装的结构上来看,VXLAN提供了将二层网络overlay在三层网络上的能力,VXLAN Header中的VNI有24个bit,数量远远大于4096,并且UDP的封装可以穿越三层网络,因此比的VLAN更好的可扩展性。
VXLAN协议网络工作原理
(1)、网络初始化
在VXLAN协议工作前需要进行网络初始化配置。网络初始化就是让虚拟网络中的主机加入到该VXLAN网络所关联的多播组。例如:VM1和VM2连接到VXLAN网络,那么二台VXLAN主机(ESXi1和ESXi2)就需要先加入IP多播组239.119.1.1。VXLAN的网络标识符(VNI)就是网络ID。

2)、ARP查询
下图描述了VXLAN协议中二个连接到逻辑2层网络的虚拟机(VM1和VM2)ARP查询流程。 VM1以广播形式发送ARP请求; VTEP1封装报文。本例中,VXLAN 100关联在IP多播组239.119.1.1中,VNI为100; VTEP1通过多播组将数据包发送给VTEP2; VTEP2接收到多播包。VTEP2将验证VXLAN网段ID,拆封数据包,然后将通过2层广播包的形式其转发到虚拟机VM2; VM2收到广播包后发送ARP响应。 注意:VTEP1只会在VTEP转发表中没有虚拟机MAC与该MAC地址的VTEP IP之间的映射时,才会生成多播包。在广播数据包时,如果MAC转发表中没有与帧目的MAC地址相匹配的条目,2层交换机会执行ARP查询操作。在发现虚拟机MAC地址与VTEP IP地址的映射条目并将其更新到转发表中后,任何与该特定虚拟机通信的请求都将通过点到点安全加密链路传输。
(3)、ARP应答
ARP应答处理流程类似于ARP请求,不同之处在于VM2将通过单播包进行ARP响应。因为VTEP2已经获得了VM1的MAC地址、IP地址以及VTEP1的信息。VTEP2将建立一个转发条目,以后交换数据包操作会使用该转发条目。

(4)、VXLAN网关
如果需要VXLAN网络和非VXLAN网络连接,必须使用VXLAN网关才能把VXLAN网络和外部网络进行连接。下图描述了VXLAN网关的工作原理: VM2通过网关MAC地址向网关发送数据包; VTEP2封装数据包,通过多播(第一次)发送给VTEP1; VTEP1拆封数据包,并发送到网关; 网关将IP数据包路由到Internet。

31.
案例(一)
当二台虚拟机在同一逻辑2层网络中时,如果二个虚拟机都在同一台vSphere主机上,那么数据包无需封装。如果二个虚拟机在不同vSphere主机上,一台vSphere主机上的源VTEP将虚拟机数据包封装到一个新UDP标头中,并通过外部IP网络将其发送到另一台vSphere主机上的目标VTEP。

案例(二)
图中显示了二个虚拟网络VXLAN-A和VXLAN-B。二个网络分别属于192.168.1.0/24网段和192.168.2.0/24网段,二个网络通过VXLAN网关进行连接。以下是可能情况:
(1)、当所有虚拟机和VXLAN网关位于同一vSphere主机上时。虚拟机将流量导向各自逻辑网络子网的网关IP地址,VXLAN会根据防火墙规则在二个不同接口之间进行路由。
(2)、当所有虚拟机不在同一台vSphere主机上,而VXLAN网关部署在其中一台vSphere主机时。虚拟机的流量将被封装到数据包,然后进过物理网络传送到VXLAN网关,之后将由网关将数据包路由到正确的目标。
(3)、当所有虚拟机和VXLAN网关不在同一台vSphere时。数据包传输将类似于情况2。

2.4.5 通过划Zone来提高虚拟网络的安全性
  虚拟环境面临的最常见威胁是不安全的接口和网络、过高的权限、错误配置或不当管理,以及未打补丁的组件。由于虚拟机是直接安装在服务器硬件上的,因此许多常规安全漏洞并不存在太大的安全威胁。在vSphere环境中,必须保护好以下基本组件:
• 物理网络和虚拟网络
• 基于IP的存储和光纤通道
• 物理和虚拟应用服务器以及应用客户端
• 托管虚拟机的所有ESXi系统
• 数据中心内的所有虚拟机
• 虚拟机上运行的应用程序
划Zone是保护物理网络和虚拟网络的一种有效方法。Zone定义了一个网段,在网段中的数据流入和流出都将受到严格的控制。在虚拟网络中,常见的划Zone方式有以下三种:
1)、通过物理设备实现分离
在这种配置中,每个区域都采用单独的ESXi物理主机或集群,区域隔离是通过服务器的物理隔离和物理网络安全设定来实现的。这种配置方法较为简单,复杂度较低,不需要对物理环境进行调整,是一种将虚拟技术引入网络的好办法。但是,这种配置方法会制约虚拟化提供的优势,资源整合率和利用率较低,使用成本较高。

2)、通过虚拟技术实现分离
在这种配置中,通过使用虚拟交换机可以将虚拟服务器连接到相应的区域,在同一台ESXi主机上设置不同信任级别的虚拟服务器,这种区域是在虚拟化层中实施的。虽然这种方法可以实现在物理机和虚拟领域实施不同的安全设定,但是仍然需要通过物理硬件来确保区域之间的网络安全。虽然在每个区域中都显示了不同的虚拟交换机,但是用户仍然可以使用VLAN以及单个虚拟交换机上不同的端口组实现相同的目的。
这种方法较好的整合了物理资源,能较好地利用虚拟化优势,成本较低。然而,与采用物理设备实现分离相比,这种配置较为复杂,必须明确配置人员,需要定期审核配置。


3)、完全合并再分离
这是一种建立在完全虚拟前提下的隔离。用户可以将不同安全级别的虚拟机置于不同物理服务器上,并将网络安全设备引入虚拟基础架构。通过虚拟网络设备实现管理和保护虚拟信任域之间的通行。例如:通过VMware的vShield组件,可以为不同区域建立通信,同时监控通信。
这种配置中,所有的服务器和安全设备都进行了虚拟化,用户可以隔离虚拟服务器和网络,使用虚拟安全设备管理不同区域之间的通信。这是配置能够充分利用资源,减低成本,通过单个管理工作站管理整个网络,但是配置和管理最为复杂,出错几率较高。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。