VXLAN深入探究沈建军资深工程师VMware,Inc.2免责声明这个讲座内容有可能包括产品功能目前还正在开发中。这里涉及到的新技术并不意味着威睿公司会放在未来产品中。这里涉及到的功能有可能更改,因此它们目前不可以用在任何合约、订单或者其它协议中。技术的可行性以及市场需求会影响最终这里可能涉及到的未来产品或者功能。这里涉及到新技术以产品功能体现的价格或者销售形式并未考虑。3议程为什么需要VXLAN?什么是VXLAN?VMware的VXLAN实现VXLAN网络配置要求VXLAN生态系统后备资料•VXLAN配置流程4议程为什么需要VXLAN?什么是VXLAN?VMware的VXLAN实现VXLAN网络配置要求VXLAN生态系统后备资料•VXLAN配置流程5挑战:物理网络的不灵活性允许应用在仸意(拥有空闲计算资源的)服务器上灵活部署而不受物理网络的限制,提升业务的敏捷性。支持包括:站点灾难恢复,业务迁移在内的场景。机遇受限的移动性•局限于一个小广播域难以满足多租户环境和规模扩展的需求•最多4094个VLANVLAN的限制将业务负载与物理网络脱离VXLAN:多厂商共同倡议的弹性计算支撑技术概述VXLAN允许跨越物理子网边界的移动性。软件定义网络、软件定义计算中心的基础。优点跨集群、甚至跨越多个计算中心的移动性。按需进行虚拟网络部署,而无需物理网络的重新配置。支持多租户环境下的大规模网络部署。6VDCCluster1Cluster2CloudInfrastructureVMwarevCloud®WebAppDB计算集群B计算集群AWebVXLAN把业务负载与物理网络脱离,负载向云环境的迁移成为可能7云环境下的业务拓展用例VXLANFabricWeb层需要扩展?容量?IP地址?网络设计?8VXLAN解决的具体技术问题(从VXLANIETF提案的角度)VLAN的数量限制•4094个VLAN远不能满足大规模云计算中心的需求。物理网络基础设施的限制•基于IP子网的区域划分限制了需要二层网络连通性的应用负载的部署。ToR交换机MAC表耗尽•虚拟化以及东西向流量导致更多的MAC表项。汇聚层STP(生成树协议)高负荷•由于大量VLAN配置在大量接口,汇聚层交换机的压力大增。9议程为什么需要VXLAN?什么是VXLAN?VMware的VXLAN实现VXLAN网络配置要求VXLAN生态系统后备资料•VXLAN配置流程建立在物理IP(overlay)网络之上的虚拟以太网•使用UDP封装完整的内层以太报文•共50字节的封装报文头24位VXLAN网络标识符•最大支持16,000,000个逻辑网络可跨越物理三层网络10利用IP多播封装广播和多播报文•限制虚拟网络的广播域利用ECMP(等价多路径负载均衡)•对不同数据流使用不同UDP源端口已提交到ITEF,启动标准化进程•与Cisco,Citrix,RedHat,Broadcom,Arista等厂商协作。VXLAN:虚拟可扩展局域网(VirtualEXtensibleLAN)VM2MAC2ESX2VTEP2IGMPreport:加入组239.119.1.1VM1MAC1ESX1VTEP1IGMPreport:加入组239.119.1.1VXLAN协议–网络初始化L2/L3networkinfraVM1及VM2连接到VXLAN网络100,两个VXLAN主机加入IP多播组239.119.1.1VTEP–VXLAN隧道终端(VXLANTunnelingEndPoint)11NetIDMACIPNetIDMACIP100MAC1IP1_vtep1ESX2VTEP2VM2MAC2ESX1VTEP1VM1MAC1BCASTMAC1ARPReq1MACHdrIPHdrDA:239.119.1.1SA:IP_vtep1UDPHdrVXLANHdrVXLANID:100BCASTMAC1ARPReq2用IP多播封装原广播报文3封装后的报文经多播转发到达BCASTMAC1ARPReq5MACHdrIPHdrDA:239.119.1.1SA:IP_vtep1UDPHdrVXLANHdrVXLANID:100BCASTMAC1ARPReq4学习内层MAC到外层源IP地址的映射L2/L3网络VM1发送ARP请求(广播)以获得VM2的MAC地址,VXLANID为100VTEP–VXLAN隧道终端(VXLANTunnelingEndPoint)12VXLAN协议–ARP请求NetIDMACIP100MAC2IP_vtep2NetIDMACIP100MAC1IP_vtep1ESX2VTEP2VM2MAC2ESX1VTEP1VM1MAC1MAC1MAC2ARPResp42已知MAC1的外层IP地址,使用IP单播封装MAC1MAC2ARPResp1MACHdrIPHdrDA:IP_vtep1SA:IP_vtep2UDPHdrVXLANHdrVXLANID:100MAC1MAC2ARPResp3学习内层MAC到外层源IP地址的映射MACHdrIPHdrDA:IP_vtep1SA:IP_vtep2UDPHdrVXLANHdrVXLANID:100MAC1MAC2ARPRespL2/L3网络VM2发送ARP应答(单播)到VM1VTEP–VXLAN隧道终端(VXLANTunnelingEndPoint)13VXLAN协议–ARP应答ESX2VTEP2VM2MAC2L2/L3网络14ESX1VTEP1网关MAC1MAC1MAC2DataMAC1MAC2DataMACHdrIPHdrDA:IP_vtep1SA:IP_vtep2UDPHdrVXLANHdrVXLANID:100MAC1MAC2DataMACHdrIPHdrDA:IP_vtep1SA:IP_vtep2UDPHdrVXLANHdrVXLANID:100MAC1MAC2DataIPHdrDA:YahooSA:GWIPSWMACMAC1DataVXLAN协议–VXLAN网关15议程为什么需要VXLAN?什么是VXLAN?VMware的VXLAN实现VXLAN网络配置要求VXLAN生态系统后备资料•VXLAN配置流程16VXLAN实现组件vShieldManager•VXLAN管理控制台vSphere5.1主机•实现VXLAN隧道终端(VTEP)功能•参与VXLAN的主机应安装VXLANvSphere安装包VXLAN网关(如需要)•功能:1.VXLAN网络之间以及VXLAN网络与VLAN之间的路由2.桥接VXLAN网络与VLAN•实现:1.vShiledEdge–路由及4-7层网络服务:NAT,防火墙,负载均衡,DHCP,DNS等2.硬件实现–典型用于连接VXLAN虚拟网络与物理VLAN17VXLAN管理层概念由vShieldManager定义并管理VDN(虚拟分布式网络)Scope•定义VXLAN网络的延展范围•包括一组vSphere集群;对每个集群指定承载VXLAN网络的VDS及VLANVTEPvmknic•在每个参与VXLAN网络的vSphere主机上创建的IP接口,与用于VXLANIP封装的IP地址关联VTEPportgroup•在VDNScope范围的每个VDS上创建的portgroup,在其上创建VTEPvmknicVXWireportgroup•在VDNScope范围的每个VDS上创建的portgroup,在其上部署使用VXLAN网络的虚拟机VDNScopeESXi-1VIBVTEPPG10.10.10.10VLAN10239.0.0.110.10.10.1010.10.20.10VTEPPG10.10.20.10VIBESXi-2VLAN20239.0.0.110.10.20.1010.10.10.10IP路由网络18VXWire–192.168.10.x/24VDS2VDS1VMWare的VXLAN实现逻辑广播域VLAN10VXWirePortGroupVLAN20VXWirePortGroup19ESXi-1ESXi-2IP网络单数据中心部署场景VXWireVDSVLAN10VLAN2020IP网络跨两个数据中心的部署场景VXWireVDS1ESXi-1VLAN10VDS2ESXi-2VLAN2021ESXi-1ESXi-2vSphereDistributedSwitchVXWireVLAN10VLAN20IP网络1IP网络2172.10.10.x/2410.10.10.x/24192.168.10.x/24VXLAN与vShieldEdgeDC-1DC-2VXLAN逻辑视图–两个虚拟机位于同一VXLAN网络VXLAN192.168.1.0/24VMVM192.168.1.10192.168.1.11192.168.1.1网关172.26.10.10外部网络172.26.10.0/24Internet虚拟机–虚拟机通讯虚拟机–外网通讯22交换机VLAN10ESXHostVLAN20VMVMVTEPVDSESXHostVTEPVDSVXLAN网络物理视图–两个虚拟机位于同一VXLAN网络192.168.1.10网关172.26.10.10192.168.1.1192.168.1.11路由器Internet虚拟机–虚拟机通讯虚拟机–外网通讯23VXLAN逻辑视图–两个虚拟机位于不同VXLAN网络网关VMVXLANBlue192.168.1.0/24192.168.1.1192.168.1.10172.26.10.10外部网络172.26.10.0/24Internet两个VXLAN网络间的虚拟机–虚拟机通讯24VM192.168.2.10VXLANPurple192.168.2.0/24192.168.2.125议程为什么需要VXLAN?什么是VXLAN?VMware的VXLAN实现VXLAN网络配置要求VXLAN生态系统后备资料•VXLAN配置流程26VXLAN网络配置要求物理网络•VXLAN主机间的IP连通性•配置交换机和路由器MTU不小于1550字节–配置JumboFrame•配置IP多播•打开交换机的IGMPSnooping功能•配置PIM(建议使用PIM-SMbidir以支持更大的多播组规模)IP多播组•VXLAN网络需要分配一个(224.0.0.0–239.255.255.255范围内)IP多播地址vShpere主机上用于VXLANIP封装的IP接口(vmknic)•通过DHCP分配vmknicIP地址27VMVMVMVMVDSHost场景一:物理二层网络之上划分逻辑二层网络HostL2PodVLAN20VLAN20交换机28物理网络配置及VXLAN部署AccessAggregationvPC/MLAGSTPVDS创建单一物理子网配置IGMP部署VDS部署VXLAN网络VDSVXLANVXLANEdgeEdgeVXLANVXLANEdgeEdgeAggregationAccess29VMVMVMVDSPhysicalSwitchVDSPhysicalSwitchVML2Pod路由器场景二:跨越物理三层网络的逻辑二层网络L2PodDC30部署VDS部署VXLAN网络vSphereDistributedSwitchEdgeVXLANEdgeVXLAN物理网络配置及VXLAN部署AggregationECMP与下层物理网络拓扑无关Access31议程为什么需要VXLAN?什么是VXLAN?VMware的VXLAN实现VXLAN网络配置要求VXLAN生态系统后备资料•VXLAN配置流程32二层网关服务物理IP网络VXLANOverlay网络主机网卡offloadVXLAN生态系统:性能,互操作性,可见性VMwareEdge可见性用户数据中心广域网或InternetBroadcomBCM56850VXLAN交换机基于VLAN的网络Li