云计算中的网络基础

一、虚拟化中的网络构架

  • 虚拟化中的网络流量: 在云计算和虚拟化中,将数据中心的流量分为南北向流量和东西向流量。判断流量的走向,一般需要有一定的参照物。一般南北向流量和东西向流量是以路由器为分界点,无论是虚拟路由器还是物理路由器都适用,其中经过路由器的流量为南北流量,不经过路由器的流量为东西流量

例如下图

该路由器被部署在数据中心机房的边界处,向上连接外网,向下连接数据中心的机房业务办公、邮件网络,当外网访问数据中心机房业务时,该流量为南北向流量,如果数据中心内运行了个人虚拟机,该虚拟机访问业务时,不需要经过路由器,该流量为东西向流量

二、网络基本概念

  • 广播和单播:广播和单播都是网络中的通讯方式

    广播:在网络中,当两台设备第一次进行通信的时候, 通信的发起方会使用广播的方式来找通信的接收方,该广播会在整个广播域中扩散,同域内的所有的网络设备都会收到该广播,同时会检查这个广播数据包中的内容,如果发现找的接收方式自己,则会给发起方回一个单播的消息,如果发现找到不是自己,则会将这个广播包丢弃。客户机通过DHCP自己主动获得IP地址的过程就是通过广播来实现的 单播:网络节点之间的通信就好像是人们之间的对话一样。一个人和另一个人进行对话。那么用网络技术的术语来描写叙述就是“单播”。此时信息的接收和传递仅仅在两个节点之间进行

  • 路由和默认网关:

    路由:广播域和广播域之间进行通信时通过路由表找到其他广播域的方式就叫做路由。 默认网关:如果广播域较多,那么路由表中的路由条目也有很多,这样通信是会有极大的设备负担。这时就会用到默认网关,,默认网关收 到通信请求时,如果自己的路由表中存在着目的地址的网段,则会替通讯的发起者进行路由的转 发,如果自己的路由表中没有目的地址,它会给发起者返回一个目的地址不可达的信息 默认网关是路由的一种特殊形式,它是路由转发时的最后选择,代表了如果没有其它的路由 条目可以进行转发,则使用默认网关进行转发

  • VLAN VLAN是将一个物理的局域网在逻辑上划分为多个广播域的技术 ,同一VLAN内 的主机可以直接通信,而不同VLAN间的主机不能直接通讯

好处: 1、限制广播域,广播域被限制在一个VLAN内 2、增强局域网安全性,即不同VLAN的用户是不能直接通信的 3、提高了网络的健壮性:如果一个VLAN的发生故障,其不影响其它VLAN的正常工作

  • VLAN 的工作原理: VLAN 是传统的以太网数据帧中加入了 4 字节的 802.1Q Tag协议,不同的 VLAN 之间就使用这个标签进行区分

  • 在一个 VLAN 交换网络中,以太网帧有以下两种形式:  有标记帧(tagged frame):加入了 4 字节 802.1Q Tag 的帧  无标记帧(untagged frame):原始的、未加入 4 字节 802.1Q Tag 的帧

  • VLAN的链路类型

接入链路(Access Link):用于连接用户主机和交换机的链路。通常情况下,主机 并不需要知道自己属于哪个 VLAN,主机硬件通常也不能识别带有 VLAN 标记的 帧。因此,主机发送和接收的帧都是 untagged 帧 干道链路(Trunk Link):用于交换机间的互连或交换机与路由器之间的连接。干道 链路可以承载多个不同 VLAN 数据,数据帧在干道链路传输时,干道链路的两端设 备需要能够识别数据帧属于哪个 VLAN,所以在干道链路上传输的帧都是 Tagged 帧。

  • VLAN相关接口类型: Access接口:Access 接口是交换机上用来连接用户主机的接口,它只能连接接入 链路。仅仅允许唯一的 VLAN ID 通过本接口,这个 VLAN ID 与接口的缺省 VLAN ID 相同,Access 接口发往对端设备的以太网帧永远是不带标签的帧。Trunk接口::Trunk 接口是交换机上用来和其它交换机连接的接口,它只能连接干 道链路,允许多个 VLAN 的帧(带 Tag 标记)通过。 Hybrid接口:这个接口也能够允许多个VLAN帧通过并且还可以指定哪些VLAN数据帧被剥离标签 每种类型的接口都可以配置一个缺省 VLAN,对应的 VLAN ID 为 PVID(Port Default VLAN ID)。接口类型不同,缺省 VLAN 的含义也有所不同。几乎所有交换机出厂时的默认 VLAN 都为 1 缺省VLAN为该接口上的默认VLAN值 三、虚拟化中的物理网络

现在的网络中,TCP/IP 是最通用的协议栈,它把整个 网络的通信过程分为四层,分别是应用层内、传输层、网络层和链路层 路由工作在传输层(三层),VLAN 工作在网络层(二层)工作在传输层的设备有路由器和三层交换机,工作在二层的设备一般是二层交换机,物理服务器的网卡、 链接网卡的网线或者光纤/ Hub属于一层的设备。

虚拟化中路由器的作用:路由器一般部署在一个企业或单位出口的地方,连接着互联网和内网。如果内部的虚拟机需要访问互联网,一般都会需要路由器完成路由转发和 NAT(网络地址转换),同时,如果通过互联网访问内部网络,也需要经过路由器 虚拟化中三层交换机的作用:

管理流量:VRM和CNA通信的平面 业务流量:虚拟机和虚拟机之间通信的平面 存储流量:虚拟机的配置和数据的存储平面 这三个平面必是分开的这种管理叫做带外管理 如果把管理流量和业务流量合并在一个平面就叫带内管理

虚拟化中二层交换机的作用 按照接入流量的类型,接入交换机也可以分为管理交换机、存储交换机和 业务交换机,如果是超大流量的数据中心,在设计网络结构时,会建议使用不同的物理交换机来 承载不同的流量,也就是说,每种流量的交换机都是单独一个机体。如果是一般流量的数据中 心,不同类型的交换机可以是一个物理交换机,然后使用 VLAN 将流量进行逻辑隔离。下图所 示为所有流量使用物理和逻辑全部隔离的情况

虚拟化中物理网卡的作用 不绑定:物理服务器上网卡直接连接交换机 绑定:物理服务器上配置两张网卡 两张网卡个配置一个端口去连接两个交换机(交换机堆叠) 同时提高传输速率

四、虚拟化中的虚拟网络介绍

虚拟网络的构架 随着云计算和虚拟化的普及,真正的网络接入层已经不再是以前二层接入交换机了,它需要 下沉到服务器内部,和虚拟机进行对接,虚拟交换机就出现,成为真正的网络接入层

虚拟网络构架图

在个人或者小型的虚拟化中,虚拟机会 以桥接或者 NAT 的方式与物理网卡绑定,而在企业级大规模的场景下,虚拟机都是通过虚拟机 交换机连接到物理网络

Vm net0 桥接模式:虚拟机直接连接物理机网卡上拥有和host machine 一样的IP地址配置 Vm net 8 NAT模式:让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。并且生成一个虚拟网段Lunix 中,默认生成网段是 192.168.122.0/24 地址转换是使用的是 NAT 技术。使用了 NAT 以后,当虚拟机和外部网络进行通信时,经过 NAT 网关,也就是 virbr0 它会将 IP 包中的源 IP 地址转换成物理网桥的地址,并且 会形成一个记录,当外部网络访问虚拟机时,NAT 网关会根据这个记录将数据包转发给对应的 虚拟机。 Vm net 1仅主机模式:虚拟机内之间可以互相访问但是无法访问外网,外网页无法访问虚拟机

虚拟交换机 - Open vSwitch (OVS)二层交换机

Open vSwitch是一款开源的、高质量的、支持多层协议的虚拟交换机,支持多种 Linux 虚拟机化技术,比如 Xen 和 KVM OVS特征: 1、安全性通过VLAN对数据流量进行隔离 2、监控性把通过虚拟机发出去的流量可以制作一份镜像 把其传递到任何地方 3、流量的优先级性对数据流量进行定义当带宽不足时优先转发优先级高的数据流量 4、自动控制 SDN技术 (软件定义网络)把交换机中的操作系统抽象化并且对接入的流量控制

虚拟交换机分两种类型,一种是普通虚拟交换机,一种是分布式虚拟交换机。普通虚拟交换 机只运行在单独的一台物理主机上,所有的网络相关的配置只适用于此物理服务器上的虚拟机; 分布式虚拟交换机分布在不同的物理主机上,通过对虚拟化管理工具,可以对分布式虚拟交换机 进行统一的配置。

分布式虚拟交换机DVS  vNIC:虚拟机网络接口卡 VSP:虚拟交换端口

分布式交换机模型基本特征:

  1. 虚拟化管理员可以配置多个分布式交换机,每个分布式交换机可以覆盖集群中的多个 CNA 节点(管理计算节点上的虚拟机); 2)每个分布式交换机具有多个分布式的虚拟端口VSP(Virtual Switch Port),每个VSP具有各自的属性(速率、统计和ACL等),为了管理方便采用端口组管理相同属性的一组端口,相同端口组的VLAN(Virtual Local Area Network)相同。 3)每个 VM 可以具有多个 vNIC 接口,vNIC 可以和交换机的 VSP 一一对接;

华为分布式虚拟交换机解决方案 华为的分布式虚拟交换支持基于开源 Open vSwitch 的纯软件的虚拟交换的功能 1)集中的管理:统一 Portal 和集中的管理,简化用户的管理和配置; 2)2) 开源 Open vSwitch:集成开源 Open vSwitch,充分利用和继承了开源社区虚拟交换的 能力; 3)提供丰富的虚拟交换的二层特性,包括交换、QoS、安全隔离等。

分布式交换机流量

  • 虚拟机运行在相同主机,但是端口组不同

在华为虚拟化 产品 FusionCompute 架构中,三层功能只能有物理的三层设备提供,因此,这个这两台虚拟机 的访问流量需要从主机内部出到物理的接入交换机,转发到三层设备经过路由后再进入到主机内 部,才能完成通信。

  • 虚拟机运行在相同主机且端口组相同 属于同一端口组,由于虚拟机属于同一广播域,而虚拟交换机支持广播,所以,如果是同主 机相同端口组的虚拟机互相通信,可以直接使用虚拟交换机就可完成,通信的流量不需要出到物 理网络中。

  • 虚拟机运行在不同主机,但端口相同 虚拟机使用相同端口组,但是运行在不同物理服务器时,流量需要通过物理服务器的网 口出到物理交换机上,然后才能完成通信。和不同端口组不同物理服务器不一样,此时两台虚拟 机之间可以不经过三层设备即可正常通信。

  • 安全组:用户根据虚拟机安全需求创建安全组,每个安全组可以设定一组访问规则。当虚拟机加入安 全组后,即受到该访问规则组的保护。用户通过在创建虚拟机时选定要加入的安全组来对自身的 虚拟机进行安全隔离和访问控制。安全组是一个逻辑上的分组,这个分组是由同一个地域内具有 相同安全保护需求并相互信任的虚拟机实例组成。位于同一个安全组的所有虚拟机网卡都将使用 该安全组规则进行网络通信。虚拟机一块网卡只能加入一个安全组中。