SDNLAB技术分享(十一):VXLAN基础知识

分享嘉宾

-----------------------------------

嘉宾:大猫猫,Arista服务工程师,之前在JUNIPER工作九年,TAC和SE都做过,纯网工。

-----------------------------------

分享正文
SDNLAB技术分享(十一):VXLAN基础知识

之前Arista在欧洲阶段性的有ATF的类似技术论坛的会议, ARISTA TECHNICAL FORUM, 后来到了美国和APAC, 名字改了, 改为CLOUD BUILDER, 今年AMERICAS TEAM才正式开始搞, 从NYC开始, 到亚特兰大, 再到WASHINGTON DC,这些TOPIC和PPT都是总部批准过, 可以公开的.


本次分享主要就讲讲VXLAN基础知识, 包括VXLAN BRIDGING和VXLAN ROUTING, 另外再推点儿私货(无耻脸….)

SDNLAB技术分享(十一):VXLAN基础知识
网络架构方面, 其实相对简单, 业界认可了L3 LEAF SPINE用IP CLOS FABRIC的设计, 基本上把二层流量限制在同一RACK内部,spine leaf之间的协议是跑EBGP,然后拿VXLAN BRIDGING打二层的洞, 主要是VXLAN/VLAN SCALABILITY, 兼顾VM的move。
SDNLAB技术分享(十一):VXLAN基础知识
CVX应该属于厂家私有解决方案, 拿ARISTA EOS其中CVX软件做CONTROLLER(拿个VM装vEOS也行), 可以做VXLAN的MAC地址搬运, 集中管理, 状态维护, 与NSX和NUAGE可以联动, 还有OPENSTACK, 用ML2插件就行.目的是统一的, 就是维护MAC, VNI, HW VTEP这些的状态信息。
SDNLAB技术分享(十一):VXLAN基础知识

无控制器的解决方案呢, 基础架构就用VXLAN OVER IP CLOS FABRIC, 多宿主, 私有云和管理服务, 然后控制平面MAC学习是CVX(私有控制器解决方案), 或HER或普通IP组播, E***方案在做, 但是说实话, 比起JUNIPER的E***解决方案, 时间上比较靠后.


以前, 早先是IP MCAST实现MAC地址和FRAME FLOODING功能, 说白了VTEP和一个IP组播组关联/VNI, 然后BUM都通过IP MCAST方式转发, 这个是支持第三方VTEP的. 后来, 简单的做法, HER, HEADEND REPLICATION, BUM直接复制到REMOTE VTEP, 复制在INGRESS VTEP进行, 这个看起来很DUMB其实是最有效的, 就是得手工指定REMOTE VTEP FLOOD LIST. AGAIN, 这个是最有效率的, 也是现行的方法(你能有几个REMOTE VTEP需要FLOOD? 再大的DC, REMOTE VTP也最多不超过三四个)

SDNLAB技术分享(十一):VXLAN基础知识
SDNLAB技术分享(十一):VXLAN基础知识
VXLAN BRIDGING,二层跨三层路由网络, 允许端到端的LAYER 2 CONNECTIVITY
SDNLAB技术分享(十一):VXLAN基础知识
这是ARISTA的MLAG解决方案, 思科叫VPC, JUNIPER叫MCLAG, 是第一跳接入的 ACTIVE ACTIVE和冗余解决方案
SDNLAB技术分享(十一):VXLAN基础知识
简单说一下映射, 这个目前根据需求, 最普通的是一对一映射, 一个VLAN对应一个VNI, 这个映射只本地配置有效, VLAN ID是带不过去VXLAN tunnel的, 这里有个灵活性就是VLAN翻译, 本地VLAN 200可以翻译到对端VLAN ID 300, 但VNI必须一致, 这个是REQUIRED,对QINQ, 也就是VLAN STACKING, ARISTA目前操作的是外部S-TAG到VNI的映射,内部C-TAG直接是多个C-TAG放一个VNI里.


实际应用就是单一的VXLAN P2P LINK可以把你指定的多个CUSTOMER VLAN都发过去.再一个, 就是再加上INGRESS PORT, 这个容易, 不说了, 好处就是单一VTEP里冲突的VLAN可以映射到多个不同的VNI里
SDNLAB技术分享(十一):VXLAN基础知识
L2相关控制平面的协议也就是STP, BPDU是不带过去的. 所以, 每个VTEP的本地端口其实创建了多个STP DOMAIN, 这个没办法. 话说您都跨越L3 DOMAIN了耶 , 还非要放一个L2 STP DOMAIN干嘛.
SDNLAB技术分享(十一):VXLAN基础知识
QoS, 目前是对OUTER FRAME的DSCP VALUE/802.1P进行操作, rewrite只作用于INNER FRAME

TC-MAP是从OUTER FRAME的COS SETTING里得来的.


QoS本身就是比较乱, 再有就是各家实现方法各有千秋, 没必要细讲. 比如思科自己家设备自己家SE都搞不清楚, 某款设备多种板卡QOS啊队列啊, 都不一致. 所以, 多说无益.
SDNLAB技术分享(十一):VXLAN基础知识
跨地理位置DC互联, VM MOBILITY, 大嘟嘟老说没需求, 其实我看到的, 至少在美国东部投行, 还是真的很多的. Morgan Stanley, Goldman Sachs, Citi, Wells Fargo, Capital One甚至Fannie Mae, Freddi Mac都很多这种应用, 已经成为Data Center OPS engineer的日常.
SDNLAB技术分享(十一):VXLAN基础知识
第二类应用, 就是LEAF SPINE里的一种二层服务, 就好比E***或者VPLS似的,说白了不管你物理位置在哪儿, 都能提供一个逻辑上的多级网络,这个和早年JUNIPER提出的LSYS,LR组建分离式网络的概念, 从某种角度来讲有异曲同工之妙.说白了, 拿VNI当虚拟链路标识符来搞,反正一千六百万呢, 多的是VNI
SDNLAB技术分享(十一):VXLAN基础知识
下面说说VXLAN ROUTING, 这东西吧其实跟VLAN ROUTING没区别, 就看你是直接模式, 还是间接模式
SDNLAB技术分享(十一):VXLAN基础知识
概念性的东西, 大概来一把,你先在跑VXLAN的设备上起个SVI, 其实是多个SVI, 然后你VXLAN不就终结在这个VTEP上吗, 就是多个VLAN 路由/VXLAN 路由......另外即使本地主机是直接物理连接, 也得支持VXLAN ROUTING (感觉这句是废话, 你网段都不一样, 肯定要路由的啊)


你本地指向一个L3 GW, 做了SVI, 然后远程一台主机只想一个L3 GW, 指向的是本地的L3 GW(对远程主机来说, 本地的L3 GW=远程的L3 GW), 然后你还是得在一台VTEP设备上跑俩SVI, 保证网关都指对了, 就好做路由了.

SDNLAB技术分享(十一):VXLAN基础知识
原理自己看图, 我倒是觉得搞清楚什么时候启用路由更重要(destination mac = local L3 GW interface mac)
SDNLAB技术分享(十一):VXLAN基础知识
设备弱相关, 这里涉及到RECIRCULATION, 我澄清一下, ARISTA所有设备包括T2平台, 都支持VXLAN ROUTING


原理我大概说一下: 1, 路由查找, 需要过一次ASIC; 2, VXLAN封装, 需要过一次ASIC; 3, VXLAN解封装, 需要过一次ASIC


大伙儿再看一下我上面3个图, 每个图分别对应一种情况:


✔ 第一种,要做路由, 然后路由完了做VXLAN 封装,(这里, 默认是过一次ASIC, 要么VXLAN封装或解封装, 要么路由), 如果说到RECIRCULATION那么最少是过两次ASIC.

✔ 第二种, 远程主机先路由到本地主机, VTEP是远程主机的L3 GW, 这里, 先得解封装VXLAN , 然后做路由

✔ 第三种, 比较复杂, 两头都是VNI的情况, 都得先VXLAN解封装(完后还得再次封装, 卧槽有毛病啊, 本地做路由能死啊???!!!) , 然后路由, 然后再做VXLAN封装...

SDNLAB技术分享(十一):VXLAN基础知识
设备强相关, 个别平台如果需要做ALL PORTS Linerate VXLAN ROUTING的话, 需要DISABLE某些端口.
SDNLAB技术分享(十一):VXLAN基础知识
设备强相关.
SDNLAB技术分享(十一):VXLAN基础知识
这个图比较乱, 我慢慢说,LEAF NODE通过MLAG执行本地的冗余接入功能, 用VARP(类似思科GLBP的双ACTIVE, 比HSRP, VRRP要好)提供L3 REDUNDANCY. DC核心的交换机呢, SPINE LAYER, 也起个VLAN , 也起个SVI, 然后VTEP(就是LEAF) 直接VXLAN BRIDGING(VXLAN SWITCHING) 到DC CORE, 说白了就是打一个二层通道到DC CORE让DC CORE做VXLAN ROUTING , 这是DIRECT ROUTING MODEL, 直接路由模式.对某一个VNI, 一台LEAF和一台DC CORE(spine)特意给这个或多个主机开一个透明二层通道.把Ethernet frame放过去, 然后在SPINE上做路由

SDNLAB技术分享(十一):VXLAN基础知识
好坏分析, UNDERLAY OVERLAY分的层次清晰,VXLAN ROUTING在第一跳(for inter-rack routed traffic),缺点就是SPINE和LEAF都得配SVI(我个人挺烦这个的) , 完后LEAF上整出一堆ARP。

SDNLAB技术分享(十一):VXLAN基础知识
间接路由模式,LEAF NODE配一部分SVI, 共享VNI, 然后跑IGP,这个VNI就是专门打通本地多个VLAN和外部connectivity的,然后, SPINE也就是DC CORE, 只配与SHARE VNI对应的VLAN的SVI接口.
SDNLAB技术分享(十一):VXLAN基础知识
好坏分析, 最烦suboptimal routing,好处就是通过这个VNI保证了南北向的对称路由. 对了我说的次优路径指的是tenant之间的.
SDNLAB技术分享(十一):VXLAN基础知识
最后一张图, 本来是DEMO的一部分, 就当个小CASE, 不太熟悉的童鞋, 自己过一下PACKET FLOW流程吧.
--------------------------------------------
SDN撕X群由Arista服务工程师大猫猫建立,群内汇集了一大批网工和SDN从业者,不定期有技术分享,感兴趣加微信号wx928579866 ,或者tangahr邀请入群, 暗号是:SDN撕逼群。围观SDNers V.S. Networkers请一定加此群。 



SDNLAB技术分享(十一):VXLAN基础知识


上一篇:sparkstream整合kafka


下一篇:实验7:基于REST API的SDN北向应用实践