GRE(通用路由封装)
产生原因:
在网络世界中骨干网络一般采用一种封装协议,但是非骨干网络可能采用另一种封装协议。为了在两个网络之间通信就产生了通用路由封装技术。
通用路由封装技术是一种隧道技术。它规定了如何将一种协议的数据封装在另一种协议中,使这些数据可以在另一种协议下传输。
工作原理:
系统收到需要进行封装和路由的某网络层协议(如IPX)数据时,将首先对其加上GRE报文头,使之成为GRE报文,再将其封装在另一协议(如IP)中。这样,此报文的转发就可以完全由IP协议负责。
部分定义:
- 净荷(Payload Packet):系统收到的需要封装和传输的数据报文称为净荷。
- 乘客协议(Passenger Protocol):封装前的报文所属的协议称为乘客协议。
- 封装协议(Encapsulation Protocol):上图的GRE协议称为封装协议,也称为运载协议(Carrier Protocol)。
- 传输协议(Transport Protocol或者Delivery Protocol):负责对封装后的报文进行转发的协议称为传输协议。
用途:
- 扩大跳数受限的网络范围。
- 将不连续的子网连接起来。
(摘自华为)
虚拟机队列(VMQ)
支持 VMQ 的网络适配器可以使用 DMA 将所有应路由到接收队列的传入帧传输到为该队列分配的接收缓冲区。 微型端口驱动程序可以在一次接收指示调用中指示接收队列中的所有帧。
VMQ 提供以下功能:
-
通过将多个虚拟机的网络流量处理分发到多个处理器) 多个虚拟机 (VM,从而提高网络吞吐量。
注意 在 Hyper-V 中,子分区也称为 VM。
-
通过将接收数据包筛选卸载到网络适配器硬件来降低 CPU 使用率。
-
通过使用 DMA 将数据直接传输到 VM 内存来防止网络数据复制。
-
拆分网络数据以提供安全的环境。
-
支持实时迁移。
(摘自windows官网)
NIC Teaming
NIC组合就是把同一台服务器上的多个物理网卡通过软件绑定成一个虚拟的网卡,也就是说,对于外部网络而言,这台服务器只有一个可见的网卡,即组建一个网卡组。对于任何应用程序,以及本服务器所在的网络,这台服务器只有一个网络链接或者说只有一个可以访问的IP地址。 之所以要利用NIC组合技术,除了利用多网卡同时工作来提高网络速度以外,还有可以通过NIC组合实现不同网卡之间的负载均衡(Load balancing)和网卡冗余(Fault tolerance)。
微软NIC组合,也称为负载平衡/故障转移 (LBFO),允许多个网络适配器组合成一个,这样做的目的可以带来带宽聚合、解决网络连接失败过程中的故障转移。
网卡组技术的实质是对多个物理网络接口进行统一管理,将多个物理接口虚拟成一个逻辑网络接口。具体到服务器网卡上,可以看作将多块网卡虚拟为一块逻辑网卡。从属性上看,虚拟逻辑网卡和物理网卡无任何不同,也有自己的物理地址和网络地址。
服务器使用逻辑网卡与外部的主机通信。外部主机只能看到服务器的逻辑网卡,至于服务器具体的物理网卡个数、物理地址等细节,外部主机是不清楚的。(摘自知乎)
成组属性
静态成组
也叫做交换机依赖组,由于这种NIC组合需要交换机参与到组合中,所以NIC组中的所有适配器都必须连接到相同的交换机上面,不能分散在多个不同的交换机上。需要交换机支持IEEE802.3ad标准。
交换机独立
该NIC组合无需交换机参与到组合中,所以每个适配器可以连接到不同的交换机,也在交换机级别提供了基本的容错。
适配器是一种中介设备或软件,用于连接两个或多个不同的系统、设备或接口,使它们能够协同工作。适配器的主要作用是解决不同系统之间的兼容性问题,使它们能够有效地通信和交换信息。适配器充当了一个桥梁的角色,将不同的系统集成在一起,使它们能够协同工作,而无需进行重大修改或替换。
LACP
链路汇聚控制协议(Link Aggregation Control Protocol,LACP),该组合可以自动将多个NIC组合成一股逻辑(虚拟)的网络适配器。需要交换机支持LACP,并设置为活动。
(摘自优快云)
负载平衡模式
Load balancing mode 有两种:
· Address Hashing
这种算法会基于数据包的地址组成部(源,目标的MAC, IP, 以及端口号)分创建一个哈希值,然后把具有这个哈希值的数据包分配到可用的NIC上。通常这种分配方式就足够在可用的NIC上建立有效负载。
· Hyper-V switch port
因为每个VM都有独立的MAC地址,所以VM的MAC地址或者VM所连接的Hyper-V switch 端口可以做为划分流量的基础,交换机在分发入站流量的时候,可以基于目标Mac 地址(VM Mac地址)来在多条链路上分发。然后如果HOST上的VM数量较少时,这种分发方式不能充分做到负载均衡,因为同一时间内,只有一个NIC在发送一个VM上的流量,并且单一VM的带宽也被限制在单一NIC的可用带宽之内。但这种方式在使用VMQs的时候非常有用。(来自博客园)
在虚拟计算中,VMQs指的是"Virtual Machine Queues",是一种网络技术,用于提高虚拟机(Virtual Machine)在物理网络适配器上的网络性能。VMQs允许物理网络适配器将接收和发送的网络流量直接传送到适当的虚拟机,而无需通过主机处理器。
通过使用VMQs,网络流量可以更有效地分发到各个虚拟机,提高网络性能和降低网络延迟。这种技术可以提高虚拟化环境中虚拟机的网络吞吐量和响应速度,从而改善整体系统性能。
优点
- 通过将网络负载分散到终极逻辑处理器上,提供接收方扩展优势。
- 使VM表现更好。
- 降低故障率
- 故障转移
- 负载均衡
SIOV
SR-IOV(Single Root I/O Virtualization)是由PCI-SIG组织定义的PCIe规范的扩展规范,目的是通过提供一种标准规范,为VM(虚拟机)提供独立的内存空间、中断、DMA数据流。
SR-IOV 接口允许将 PCI Express (PCIe) 网络适配器上的硬件资源分区成一个或多个虚拟接口,称为 虚拟功能 (VF) 。 这允许在虚拟环境中共享适配器资源。 SR-IOV 通过将 VF 直接分配给 Hyper-V 子分区,使网络流量绕过虚拟软件交换机层。 通过执行此操作,软件仿真层中的 I/O 开销会减少,网络吞吐量实现与非虚拟化环境中几乎相同的性能。
VMM
VMM是Virtual Machine Monitor的缩写,意为虚拟机监视器。虚拟机监视器是一种软件或硬件系统,用于在物理计算机上创建和管理虚拟机(Virtual Machines)。VMM允许在一台物理计算机上同时运行多个虚拟机,每个虚拟机都被视为一个独立的计算机系统,具有自己的操作系统和应用程序。
虚拟机监视器负责管理和分配物理计算机的资源给虚拟机,包括处理器、内存、存储和网络等资源。它还负责协调虚拟机之间的通信和数据传输,以及提供对虚拟机的监控和管理功能。
通过使用VMM,用户可以在单台物理计算机上运行多个虚拟化的操作系统实例,从而提高硬件资源的利用率、降低成本,并简化系统管理和维护。
VMM管理器
VMM管理器是指虚拟机监视器(Virtual Machine Monitor)的管理软件,也称为虚拟化管理软件。VMM管理器用于管理和监控虚拟化环境中的虚拟机、物理主机和相关资源。其主要功能包括:
- 虚拟机管理:VMM管理器可以创建、配置、部署和监控虚拟机的运行。它允许管理员对虚拟机进行操作,如启动、停止、迁移、快照和备份等。
- 资源分配:VMM管理器负责分配物理主机的资源给不同的虚拟机,包括处理器、内存、存储和网络等资源。它需要根据需求动态调整资源分配,以确保各个虚拟机的性能和稳定性。
- 性能监控:通过VMM管理器,管理员可以监控整个虚拟化环境的性能指标,如CPU利用率、内存使用率、网络流量等,以便及时发现和解决性能问题。
- 安全管理:VMM管理器负责管理虚拟化环境的安全性,包括访问控制、身份验证、数据加密和安全审计等功能,以保护虚拟机和数据的安全。
- 故障处理:在出现故障或问题时,VMM管理器可以提供故障检测、诊断和恢复功能,以最大程度地减少对业务的影响。
总之,VMM管理器是虚拟化环境中至关重要的组件,它通过集中管理和监控虚拟化资源,提高了系统的灵活性、可靠性和效率。
集群
简单地说,集群就是指一组(若干个)相互独立的计算机,利用高速通信网络组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运行各自服务的独立服务器。这些服务器之间可以彼此通信,协同向用户提供应用程序,系统资源和数据,并以单一系统的模式加以管理。当用户请求集群系统时,集群给用户的感觉就是一个单一独立的服务器,而实际上用户请求的是一组集群服务器。
优点:
- 智能布局
- 资源最大化
- 动态优化
- 电源优化
- 关闭不需要的主机来节省资源