句容市建设工程管理处网站,百度推广关键词质量度,电脑网站建设规划,兰州市住房和城乡建设局网站二、流量模型分析相关知识
1.vNIC
虚拟网络接口卡(vNIC)是基于主机物理 NIC 的虚拟网络接口。每个主机可以有多个 NIC#xff0c;每个 NIC 可以是多个 vNIC 的基础。
将 vNIC 附加到虚拟机时#xff0c;Red Hat Virtualization Manager 会在虚拟机之间创建多个关联的…二、流量模型分析相关知识
1.vNIC
虚拟网络接口卡(vNIC)是基于主机物理 NIC 的虚拟网络接口。每个主机可以有多个 NIC每个 NIC 可以是多个 vNIC 的基础。
将 vNIC 附加到虚拟机时Red Hat Virtualization Manager 会在虚拟机之间创建多个关联的 vNIC vNIC 本身以及 vNIC 所基于的物理主机 NIC。特别是当 vNIC 附加到虚拟机时会在 vNIC 所基于的物理主机 NIC 上创建新的 vNIC 和 MAC 地址。然后在虚拟机附加了 vNIC 后第一次启动虚拟机时libvirt 为 vNIC 分配 PCI 地址。然后MAC 地址和 PCI 地址用于获取虚拟机中的 vNIC 的名称如 eth0。
2.OVS
OVS(OpenvSwitch)是一个高质量、多层的虚拟交换软件。它的目的是通过编程扩展支持大规模网络自动化同时还支持标准的管理接口和协议。
OVS官方的定位是要做一个产品级质量的多层虚拟交换机通过支持可编程扩展来实现大规模的网络自动化。设计目标是方便管理和配[虚拟机网络检测多物理主机在动态虚拟环境中的流量情况。针对这一目标OVS具备很强的灵活性。可以在管理程序中作为软件switch运行也可以直接部署到硬件设备上作为控制层。
3.OpenStack与Neutron
OpenStack是一个云平台管理的项目它不是一个软件它是由几个主要的组件组合起来为公有云、私有云和混合云的建设与管理提供软件的开源项目。OpenStack的主要目标是管理数据中心的资源简化资源分配。它管理计算、存储、网络三部分资源。华为FusionSphere OpenStack就是基于OpenStack的架构开源代码进行开发的。
Neutron是OpenStack的SDN组件用于实现网络虚拟化和自动化。Neutron的应用分为两大类基于OpenStack的应用、基于SDN的应用。前者是在云的场景下与OpenStack其他部件一起配合为用户提供云服务。后者是在SDN场景下与SDN Controller一起配合为用户提供网络服务。
3.qbr与br-int
qbr是Quantum Bridge的缩写Quantum是OpenStack网络组件的前一个商标名由于版权原因现改名为Neutron。
br-int是Integration Bridge综合网桥的缩写。
qbr与br-int都是Bridge。qbr的实现载体是Linux Bridgebr-int的实现载体是OVS。需要注意的是Linux Bridge不是qbr的唯一实现载体OVS也不是br-int的唯一实现载体也可以用其他的实现方式来替换它们。只不过这样的实现方式是当前OpenStack解决方案的比较经典的方式而已。qbr与br-int之间通过veth pair连接VM与qbr之间通过tap连接。VM与qbr之间只有1个tap及1个tap分别挂接在VM和qbr之上。
vm通常需要挂载两层Bridge及VM先接qbrLinux Bridge再接br-intOVS。如果只有一个qbr由于qbr仅仅是一个Linux Bridge它的功能不能满足实际场景的需求如果只有一个br-int由于br-int实际是一个OVS而OVS现在还不支持基于iptables规则的安全组功能且OpenStackHCS是要基于iptables规则来实现安全组功能。所以OpenStackHCS引入qbr其目的主要就是利用iptables来实现security group功能qbr有时候也被称为安全网桥而引入br-int才是真正为了实现一个综合网桥的功能。
4.br-ethx
br-ethx是一个Bridge也是一个OVS它的全称是Bridge-Ethernet-External。br-ethx负责与“外”部通信这里的“外”部指的是Host外部但是却又要属于一个Network这个Network指的是Neutron的概念的内部指的是VLAN内部。
br-ethx与br-int之间的接口是veth pair。值得注意的是br-ethx上的接口是一个真正的Host的网卡接口NIC InterfaceInterface in Network Interface Card。网卡接口是网卡物理口上的一个Interface。
5.br-tun
br-tun是一个Bridge也是一个OVS它的全称是Bridge-Tunnel。这里的Tunnel指的是VXLANTunnel。
br-tun用于连接br-int网桥和linux网桥实现物理环境的互联。
6.vlan与vxlan
VLANVirtual Local Area Network虚拟局域网和 VxLANVirtual eXtential LAN虚拟可拓展局域网。二者的作用都是为了实现网络隔离具体的作用原理与区别本文不做阐述。
VLAN中对应的是br-ethx而VXLAN中对应的是br-tun二者都是OVS两者的差别不是实现组件的差别而是组件所执行的功能的差别。br-ethx所执行的功能是一个普通二层交换机的功能br-tun所执行的是VXLAN中VTEPVXLAN Tunneling End PointVXLAN隧道终结点的功能。
7.QinQ
QinQ802.1Q-in-802.1Q也称为VLAN Stacking堆叠VLAN或Double VLAN双VLAN由IEEE 802.1ad标准定义是一项扩展VLAN空间的技术通过在802.1Q标签报文的基础上再增加一层802.1Q的Tag来达到扩展VLAN空间的目的。它将VLAN标记封装为两层—私有网络的内部标记和公共网络的外部标记。
QinQ特性使网络最多可以提供4094*4094个VLAN满足城域网对VLAN数量的需求它主要解决了如下几个问题
缓解日益紧缺的公网VLAN ID资源问题。用户在规划自己的私网VLAN ID时不会与公网VLAN ID发生冲突。为小型城域网或企业网提供一种较为简单的二层VPN解决方案。
如下图所示我们规划了两个VLANVLAN100、VLAN200现在让位于Host1的VM1访问位于Host2的VM3在用户看来可能就是VLAN100内的一个访问但在Host看来其实是VLAN10与VLAN30的一次访问。 首先我们要清楚4台虚拟机的VLAN ID分别变成了10、20、30、40与我们用户自己划分的VLAN ID 100、200完全不是一个概念这就涉及内外视角所看到的VLAN ID的不同。
VM ID用户视角VLAN ID外部VLANHost视角VLAN ID内部VLANVM110010VM220020VM310030VM420040
一台虚拟机之所以会有两个VLAN ID是为了防止在公网中VLAN ID之间产生冲突不同用户在私网内规划VLAN可能不会进行统一的规划当不同VLAN划分方式的私网用户通过公网相互访问时就会对Host造成困扰到底要听谁的规划规则所以Host干脆谁的也不听了它自身再宏观地规划一个巨大的VLAN。当不同Host之间进行通信时先将外VLAN ID转化成内VLAN ID内外VID转换查询到目标后在将内VLAN ID转化成外VLAN ID内外VID转换。
8.VID
VID是一种抽象的称呼用于划分端口它的含义随着网络类型的不同而不同在VLAN网络中VID指的就是VLAN ID在VXLANVID指的就是VNI在GRE网络中VID指的就是GRE Key。
8.1 VLAN类型网络出报文内外VID的转换 如上图以VM1为例报文从VM1发出从br-ethx离开Host1
报文从VM1的A1端口发出为Untag报文报文从B1端口进入qbr1再从C1端口离开qbr1也是Untag报文报文从D1端口进入br-int在D1端口报文被打上标签VLAN ID 10报文从E端口离开br-int此时报文VID 10报文从F端口进入br-ethx在F端口报文的标签被转变为VLAN ID 100报文从G端口离开HostVLAN ID 100。
8.2 VLAN类型网络入报文内外VID的转换 如上图以VM3为例报文从Host2进入从qbr1进入VM3
报文从Host进入到br-ethx是Tag报文VID 100报文从br-ethx离开在离开的端口F报文VID转变为30报文从E端口进入br-int此时报文VID 30报文进入br-int后从D1端口被转发出去在离开D1时被剥除Tag变成Untag报文报文从C1端口进入qbr1然后从B1端口离开再从A1端口进入VM3始终为Untag报文。
8.3 VXLAN类型网络出报文内外VID的转换 如上图以VM1为例报文从VM1发出从br-tun离开Host
报文从VM1的A1端口发出为Untag报文报文从B1端口进入qbr1再从C1端口离开qbr1也是Untag报文报文从D端口进入br-int在D端口报文被打上标签VLAN ID 10报文从E端口离开br-int此时报文VID 10报文从F端口进入br-tun此时报文VID 10报文从G端口离开Host在G端口报文被从VLAN封装为VXLAN并且VNI 100。
8.4 VXLAN类型网络入报文内外VID的转换 如上图以VM3为例报文从Host2进入从qbr1进入VM3
报文来到Host进到br-tun为VXLAN报文VNI 100报文在br-tun的G端口被转换为VLAN报文VLAN ID 30报文从br-tun离开一直到进入br-int都是VLAN报文VLAN ID 30报文从br-int D1端口离开br-int报文被剥去Tag变成Untag报文报文从C1端口进入qb1然后再从B1端口离开再从A1端口进入VM1始终为Untag报文。