问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

VXLAN及相关组件

创作时间:
作者:
@小白创作中心

VXLAN及相关组件

引用
CSDN
1.
https://m.blog.csdn.net/zylyyyyyy/article/details/142812876

VXLAN协议

VXLAN(Virtual eXtensible Local Area Network)是一种在三层网络之上打通二层网络的虚拟网络隧道技术。VXLAN的技术原理是使用四层UDP数据包封装二层以太网帧,VXLAN协议适用VNI(VXLAN Network Identifier)来唯一标识一个虚拟网络,VNI最大支持1600万个虚拟网络。

VXLAN协议使用两个节点之间可达的IP地址作为VTEP(VXLAN Tunnel EndPoint),建立隧道,并在两端节点上创建VXLAN的逻辑接口(二层接口)。所有需要通过VXLAN隧道传输的二层流量,都通过本节点的VXLAN的逻辑接口进入VXLAN隧道,并根据VNI分配到对应的VXLAN隧道,发送到VXLAN隧道对端设备;对端设备收到VXLAN隧道发送过来的数据会拆开VXLAN包头,查看内部的以太网帧并按照规则进行转发。

云计算中的VXLAN

通过VXLAN协议,计算节点OVS成为了一台VXLAN交换机,在不同计算节点之间根据VPC打出多条VXLAN隧道,用于同子网云主机之间二层打通。实现原理即为以计算节点业务网卡之间IP可达为前提,将同子网云主机之间的交互的以太网数据帧,发送到OVS虚拟交换机的VXLAN虚拟接口,OVS查询目标MAC地址,并根据目标MAC地址,将这个以太网帧封装在一个VXLAN(UDP)数据包内部,这个VXLAN的数据包头包含了VNI(VPC唯一标识),隧道源IP和隧道目的IP,发送给计算节点业务口;本计算节点业务口将该数据包根据目的IP地址发送给目标计算节点。

组件介绍

  • 云主机(VM):客户购买的云主机实例(instance)。
  • 计算节点(HOST):承载云主机实例的物理服务器。
  • OVS(Open Virtual Switch):为云主机提供网络连接功能的虚拟交换机,运行在计算节点内部。
  • 安全组:针对单个云主机做访问控制的安全组件,运行在OVS内部。
  • TGW:作为云主机网关承载云主机出入VPC的流量。

组件理解

可以将计算节点理解为一个微型数据中心,云主机是这个数据中心内的一台服务器;OVS是数据中心内的一台二层交换机:

  • 下行口连接了云主机;
  • 上行口通过网线连接到了TGW设备;TGW设备是一台路由器,作为云主机的网关使用。

TGW组件

TGW是一台独占的安装了VPP软件的Linux系统服务器,可以模拟一台三层交换机的全部功能,与传统网络中的三层交换机一样,它是使用配置命令来指导转发的。

OVS组件

OVS是安装在计算节点内的一个虚拟交换机组件,但和传统交换机不同,它不再使用配置命令指导转发,而是使用流表指导转发。

流表的原理

流表的原理,类似于传统网络中的PBR(Policy Based Routing),它回归了数据包转发的本质,即匹配(match)和操作(action):

  • 匹配:即流表可以选择匹配数据包中的任意字段,不再需要区分网络分层;
  • 操作:对匹配到的数据包执行特定操作,可以是转发到特定端口,丢弃,或者交由其他流表处理。

流表的匹配原则是,数据包由table0进入匹配序列,由table0开始处理,直到数据包转发完成或者被丢弃;每一个table中都可能同时存在多条规则,优先匹配优先级高的,同优先级顺序匹配。

TGW的配置

TGWV是一台安装了VPP软件,用来模拟三层交换机(路由器)的服务器,它通过配置命令的方式来控制流量的转发。

创建VPC

后台会自动在TGW上创建一个loop接口,作为VPC的在网关上的体现。

创建subnet

后台会自动在TGW根据客户在前端提交的数据,在对应的loop口上配置一个IP地址,作为该子网的网关。

创建云主机

后台会自动在TGW上创建一条静态VXLAN隧道,隧道源IP为本机的网卡IP,目的IP为计算节点的网卡IP;云主机发起的ARP-Request数据包通过VXLAN隧道发送到TGW后,TGW会主动学习MAC地址,并在TGW的二层转发表(L2FIB)内添加一个条目,将云主机的MAC地址指向收到ARP信息的VXLAN隧道;后台会自动在TGW上的ARP表里添加一个静态ARP条目,条目内容为云主机的IP和MAC地址。

创建弹性IP

后台会自动在TGW上创建该弹性IP的QoS配置;图里面是比特/秒,所以要×8。

OVS的流表

创建云主机

后台会自动在OVS上下发流表,指导OVS将云主机流量发送到对应VXLAN隧道,并根据流表,对从VXLAN隧道内收到的流量进行拆包和转发。

VPC内部交互流量模型

传统网络模型

在传统网络中:

  • 同网段虚机互访,只要在ARP表内可以查到记录,均可直接访问
  • 跨网段虚机互访,必须通过网关转发才能相互访问
  • 这种流量模型内网容易成为瓶颈,所以云网络对该模型进行了优化。

云网络模型

1.3 网元类型与流量模型

1.网元分类

1.1、VPP 网元

VPP 是 CISCO 公司开发的一款开源软件产品,一台服务器安装 VPP 后便可以充当一台三层交焕机来实现流量转发功能;
注意,VPP是软件,下面的TGW等都是组件
注意,VPP是独占的,一旦安装要么充当TGW,要么充当IGW,要么充当VGW。只能当一个!

1.1.1、TGW(Tenant GateWay)

TGW 全称 Tenant GateWay,既租户网关,TGW 成对部要,每队之间用 VRRP 协议实现主备关系,只有主转发流量;每个租户都要分配且仅分配一对租户网关用于overlay流量转发。TGW 承载了 CNP 架构资源池内大部分的overlay流量,包括弹性IP、VPCPeer、云间高速、云专线等等;
根据 TGW 部罢的服务器形态(物理服务器/虚机)不同,可分为物理 TGW 和虚拟 TGW;根据 TGW 的租户分配机制,TGW 又可分为共享TGW(share cluster)与独享TGW(small cluster),共享即为多个租户共享一对 TGW,独享即为一个租户独享一对 TGW。在最新版本的 TGW 软件中,每一对物理共享 TGW 可承载 1500 个租户,每一对虚拟共享TGW,可承载 100个租户,该数量可能根据TGW的部署架构(ARMX86)和软件版本,在SDN 控制器上进行调整。

1.1.2、lGW(intranet GateWay)

IGW/ 主要承破了存储相关的流量,云主机/课金属服务器访司云存储(文件存储对象存)的流呈是通过 IGW 特发的

1.1.3、VxlanGW(Vxlan GateWay)

VxhnGW 承我了传统裸金属到虚拟TGW 的流量

1.2、OVS(openVswitch)网元

OVS(OpenVirtualSwitch)是运行在计算节点上的开源软件主要用于承载云主机的流量
根据计算节点上的 OVS 是否启用了 DPDK特性,OVS 网元又分为两种,既:Kernel-0Vs 创建的云主机虚拟网卡以tap开头,vxlan 入口名称为 vxlan_sys_4789DPDK-OVS 创建的云主机虚拟网卡以vhu开头,vxlan 入口名称为 vxlan1;
DPDK是一种对服务器内存调度进行优化的技术,主要优势是将数据包的处理从LinuxKemel(内核)占用的内存改为在用户(应用)占用的内存处理,省去了从内核内存复制到用户志(应用)内存的步骤,提高了数据包处理速度和转发速度,大幅提高计算节点带宽和PPS;

1.3、VPN 网元

VPN 网元是在 vne 虚机上用 ipsec 软件技术实现的 VPN 产品,客户在云管平台每购买一个VPN 实例,会在后台 NFV计算节点上为客户创建一个VPN虚机,承载户VPN 业务流量

1.4、ELB 网元

ELB 网走是在 vne 虚机,上用 haproxy 技术实现的负载均街产品,客户在云管平台每购买一个ELB 实例,会在后台 NFV计算节点上为客户创建两台ELB 虚机,两台ELB 虚机之间为主备关系,以保证 ELB 的高可用,承载客户 ELB 业多流量:

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号