本帖最后由 Janbos 于 2019-11-27 16:15 编辑
注:此文章为我个人接触某公司超融合,了解到vxlan技术后,结合网上的一些资料,整理出的一些管理vxlan技术的笔记,不是特别全面,且真正了解后发现vxlan技术确实挺深奥,不当之处还请大家多多指正,本人也是抱着学习的态度发布此文章。
一、vxlan的产生 vxlan:Virtual Extensible LAN,中文名称:虚拟可扩展局域网 在了解vxlan之前,我们的先了解几个知识点:虚拟机热迁移;什么是大二层网络;传统的大二层技术及其弊端,以及新一代云数据中心对网络的诉求。 虚拟机热迁移:在不中断业务的情况下,将运行中的虚拟机从一个物理计算节点迁移到另一个物理计算节点,在资源扩容、物理机升级、复核调整等场景下,通过虚拟机热迁移可以保证业务的不中断运行。 大二层网络:简答讲就是很大规模的二层网络,支持任意虚拟机的交流,支持网络横向流量无阻塞的能力。 传统的大二层技术及其弊端:传统的网络分为核心、接入、汇聚,核心到汇聚之间通过ip互联,vlan无法跨越三层传输,同时要想把虚拟机从一个POD迁移至另一个POD,由于两个POD的ip属于不同网段,迁移时虚拟机IP地址会发生改变,导致业务中断,既然POD之间迁移会导致虚拟机业务中断,那能不能把单个POD做大呢,这就又牵扯到POD的组网方式了,POD是通过STP协议组网的,STP可以防止网络环路,并实现虚拟机在整个网络里面的热迁移,但是STP协议本身存在一些缺陷,收敛时间长、构建无环网络时需要阻断一半链路,这些缺陷严重限制了单个POD规模无法做大。 新一代云数据中心对网络的诉求:网络规模大、能实现虚拟机的热迁移、业务平均分配 在大家眼里,云计算的资源是无限制的,就像自家的水龙头一样,在需要的时候打开就行,而且业务也不会中断,目前大多数云计算中心都是通过部署大规模服务器的方式实现的,使用虚拟机处理业务,实现业务的扩缩容以及灵活调度,这些虚拟机可以在一个POD(point of delivery)里自由迁移,但是随着数据量的增多以及业务备份要求的出现,这就要求虚拟机能在不同的POD之间自由迁移,甚至要求在不同的数据中心间自由迁移。 并且云计算要求提升服务器的利用率,传统架构很容易出现业务分配不均的情况,“累的累死,闲的闲死”,而通过云计算就能解决这种情况,实现业务的平均分配。 由于传统网络无法满足云计算对网络的需求,对传统网络的改革势在必行,就得构建全新的大二层网络,这时就不能用STP去构建大二层网络了,面对这么多问题以及信息化发展的需要,业界就产生了CSS/SVF、TRILL、VXLAN、EVPN技术,去构建全新的大二层网络,其中CSS/SVF是通过设备多虚一技术实现网络无环的方案,适合于单个POD组网;TRILL是采用IS-IS路由控制平面破坏的方案,适用于单个POD内或整个数据中心,VXLAN是通过二层网络叠加在三层网络上的破坏方案,适用于整个数据中心大二层组网甚至于数据中心之间;EVPN可以支持数据中心间的VXLAN隧道,一般用于数据中心之间互联;目前XVLAN是业界普遍使用的技术。 二、vxlan技术简介 VXLAN技术是一种大二层的虚拟网络技术,主要的技术原理就是引入一个UDP格式的外层隧道,作为数据的链路层,而原有数据报文内容作为隧道净荷来传输,使得净荷数据可以轻而易举的在二三层网络中传送。 VXLAN引入了三层IP组播来代替以太网的广播,让BUM(Broadcast广播,unknown unicast, multicast)报文通过广播方式在虚拟网络中传送。 vxlan报文格式 VTEP(VXLAN Tunnel End Point)用来完成VXLAN 报文的封装和解封装。VTEP 与物理网络相连,分配有物理网络的IP 地址。 虚拟机中的数据报经过VTEP封装后就可以在Internet上传播,VTEP接收到数据包后,对其进行解封,然后按照一定的规则交付给后端的虚拟机。 VxLAN网关可以实现VXLAN 虚拟网络之间以及虚拟网络与物理网络之间的通信。 VXLAN的组播学习过程----多播 : 组网准备:虚拟机加入到同一个VXLAN,VXLAN主机加入到多播组。 ARP请求: 1、VM1发出ARP请求。包含自身MAC地址。目标MAC地址全部置1. 2、VTEP1封装报文,填写目标IP为多播IP,源IP为VTEP1的IP。 3、报文在VxLAN中被多播。到达VTEP2所在本地虚拟网络。 4、VTEP2对报文解封装学习VM1 MAC-VTEP的映射关系,并在本地局域网中广播报文。 5、报文到达目标虚拟机VM2。 VXLAN的APR应答过程----单播 1) 目标VM3准备ARP响应报文后向源VM1发送响应报文; 2) VTEP2接收到VM2的响应报文后把它封装在IP单播报文中,并根据学习到的映射表,封装成VTEP1的外层地址,单播发送给VTEP1; 3)VTEP1接收到单播报文后,学习VM3-VTEP2之间的地址映射,并去掉隧道转发报文给VM1; 4)VM1接收到ARP应答报文,ARP交互结束. 关于vxlan的知识,这只是很少的一部分,还有很多知识点需要慢慢去学习,后续会陆续进行分享,谢谢大家。
|