《多径二层网的FabricPath简介.ppt》由会员分享,可在线阅读,更多相关《多径二层网的FabricPath简介.ppt(32页珍藏版)》请在三一办公上搜索。
1、多路径二层网的FabricPath简介,陈 刚,议程,二层网络现状和面临的挑战高扩展高可用的二层解决方案FabricPath的技术细节FabricPath的部署案例FabricPath的监控与排错,Spanning Tree的不足,11 条物理链路,5 条逻辑链路,路径选择的非最优两个网桥之间只能有单一的可达路径最短路径只是从根桥的角度去判断的带宽闲置不用为了二层逻辑拓扑不存在环路,冗余链路被Blocking链路速度越快,浪费的带宽越多控制平面缺乏安全根桥是按照switch-ID选举出来的,可能因为操作不当造成故障链路故障的收敛缓慢并且不可靠即使使用RSTP,也会出现数秒的服务中断,网络设计中
2、的困扰使用L2还是L3?,Access,Core,Layer 3Network,L3,L2,简单(不需要进行地址规划和配置,不需要控制平面)用于unicast,broadcast,and multicast的控制简单 应用开发简单,网段分开提供了故障隔离 控制平面支持多路径和多拓扑,扩展性好 支持快速收敛的HA 数据平面支持额外的环路避免机制l(e.g.TTL,RPF check,etc.),Cisco 具有足够的L2和L3技术来满足客户的需求,L3互联的数据中心在提供以下服务方面存在不足:VMWare应用(Fault Tolerant VM、HA VM、Cluster VM)HA与Clust
3、er应用(MS MSCS、Oracle RAC、HP TruCluster、IBM HACMP)物理服务器平滑搬迁数据中心容量不足时的扩展,二层与三层网络的不同世界,如何改进二层网络?,地址的编码机制:扁平 层次化 需要额外的Header信息 来允许L2的“路由”而不是“桥接”提供类似TTL的环路避免技术地址的学习:数据平面 控制平面不再需要每一台交换机学习所有的MAC地址来避免flooding控制平面:Distance-Vector Link-State提高扩展性,减少收敛时间,允许多路径,最终的解决方案应该同时考虑控制平面与数据平面!,前人的努力之一-VL2,来自MS,SIGCOMM 20
4、09,使用高冗余的多路径三层网络构建Virtual Layer 2网络使用TCP(Layer 4!)来管理拥塞,前人的努力之二-PMAC,Hierarchical Pseudo MAC,使用Fabric Manager 来改写目的MAC 地址成PMAC不需要额外的Header,内置支持Multicast,前人的努力之三-Server-centric Source Routing,使用传统的交换机平滑的性能下降,适合集装箱式的模块化数据中心,Cisco的解决之道-FabricPath,“FabricPath 为灵活的二层桥接网络带来的三层路由的好处”,配置简单即插即用(Plug&Play)管理灵
5、活,多路径(ECMP)快速收敛 高扩展性,交换,路由,STP Domain,FabricPath,STP Domain 1,STP Domain 2,FabricPath在数据平面的操作-通过封装来建立层次化的地址机制,FabricPath的包头部由入口交换机产生入口和出口交换机地址用于决定“Routing”L2 Fabric中不需要学习Client MAC,A,C,S11,S42,S11,S42,S11 S42,FabricPath Routing,L2 Bridging,A C,A C,A C,Egress Switch,Ingress Switch,FabricPath在控制平面的操作-
6、使用Plug-N-Play L2 IS-IS来管理转发拓扑,自动为所有的FabricPath enabled switches 分配地址(不需要用户配置)计算最短路径支持任意一对FabricPath交换机之间的等价路径,L1,L2,S1,S2,S3,S4,S11,S12,S42,L2 Fabric,L3,L4,FabricPathRouting Table,FabricPath的环路避免-使用TTL和RPF Check来减少loop的影响,STP Domain,Block冗余路径来防止环路一旦STP失败,以太帧会一直LoopFlooding可能引起全网异常,Root,TTL=3,TTL=2,T
7、TL=1,TTL=0,TTL 是FabricPath头部的一部分每一跳减去1当 TTL=0时,数据帧被丢弃基于“树”信息为组播进行RPF 检查,Root,M S2,FabricPath的技术细节-FabricPath的数据帧封装,Cisco FabricPath Frame,(Classical)Ethernet Frame,OuterDA(48)*,OuterSA(48)*,FPTAG(32*),CRC(New),使用16字节的头部来建立层次化的地址空间,从而实现增强的特性,Switch ID:用于识别L2 Fabric每一台设备的唯一号码Port ID:用于提供L2 Fabric边界的 M
8、AC-to-Interface关联信息Tree ID:帮助识别每个分布层“Tree”的唯一号码TTL:每一跳递减,以防故障造成的数据帧无限Loop,*Lengths for all fields are shown in“bits”,FabricPath的“路由”计算-Layer 2 IS-IS,只需要很少的了解,缺省不需要用户的配置 maintain PnP nature of Layer 2基于 ISO/IEC 10589可扩展的协议设计,允许 Layer 2信息通过IS-IS交换Single-level IS-IS with support for P2P links为转发流量计算转发信
9、息支持ECMP的Link-state 协议,提高故障检测,网络恢复,高可用,L2 Fabric,FabricPath的技术细节-FabricPath的“路由表”,包括L2 Fabric中用于转发L2 单播流量的信息,已知的单播地址One Ingress Switch One Egress Switch根据destination Switch-ID 选择转发路径L2 Fabric中的每一台交换机根据从L2 IS-IS接收到的信息计算本地交换表交换表包括 Switch-ID,Output Interfaces等基本信息对于指定的Switch-ID,最多可达16个 Next-hop Interfac
10、es(i.e.L2 ECMP),S100,S200,FabricPath的技术细节-边界交换机的MAC学习,500 MACs,500 MACs,500 MACs,500 MACs,250 MACs,250 MACs,250 MACs,250 MACs,每一台交换机学习所有的 MACs大型的 L2 domain 网络 和大量的虚拟化给MAC 表的扩展性带来挑战,STP Domain,Local MAC:只有从CE端口接受到数据才学习Source-MACRemote MAC:只有当Destination-MAC已经作为Local时,从FabricPath Ports接收数据时才学习 Source-
11、MAC,S11,优化资源利用 只学习需要的 MAC 地址,Host A与C通讯的过程(一)-FabricPath对广播的转发,L1,L2,L3,L4,A,B,C,L8,L5,L6,L7,L9,L10,L11,L12,S1,S2,S3,S4,S11,S12,S42,L2 Fabric,A FF,Host A 与Host C 第一次通讯.向C发送ARP请求,S11 把 A 加入 MAC 表,因为是来自CE端口的源地址学习由于目的MAC是All F,S11 向所有的CE端口Flood该数据包,同时,S11 选择Tree 1,在FabricPath header中记录并 floods this fra
12、me 到所有属于”tree 1”的 FabricPath ports(L1 L4),S1 继续基于本地的”tree 1”信息flood this frame(L5,L9),S12 与S42 移除FabricPath header 并且向所有CE端口flood the frame,A FF,A FF,1/1,3/1,No Learning on Remote MAC since DMAC is unknown,Decap,Decap,Encap,Host A与C通讯的过程(二)-FabricPath对未知单播的转发,L1,L2,L3,L4,A,B,C,L8,L5,L6,L7,L9,L10,L11
13、,L12,S1,S2,S3,S4,S11,S12,S42,L2 Fabric,A C,Host C 向Host A送回ARP Reply,S42 从CE端口根据源地址学习原理将C 加入MAC Table由于 A is unknown,S42向所有CE端口 floods this frame,同时,S42 根据选择的Tree 1,在FabricPath header中记录并且向所有的FabricPath ports(L9)floods this frame,S1继续顺着”tree 1”floods this frame(L1,L5),S11继续顺着”tree 1”floods this fram
14、e(L2L4).同理,移除FabricPath Header,S11 发现目标地址A 已经是本地学习的,于是将C 作为Remote MAC加入表格并且与S42相关联.,MISS,Encap,Decap,A C,C A,1/1,3/1,Decap,HIT!,Host A与C通讯的过程(三)-FabricPath对已知单播的转发,L1,L2,L3,L4,A,B,C,L8,L5,L6,L7,L9,L10,L11,L12,S1,S2,S3,S4,S11,S12,S42,A C,Host A 在解决ARP之后向Host C发送数据流,S11 发现C已经作为remote学习了,并且和S42关联.对到C所有
15、后续进行封装,在 FabricPath header中将S42作为目的地址,S4的“路由表”显示 L12 as next hop for S42,S42 发现自己是FabricPath header的目的地,并且 C 是本地已知的.于是,将A 作为remote加入表格,并且与S11关联.,Decap,Encap,A C,HIT!,S11的“路由表”显示到S42有多条路径.执行 ECMP hash算法,选择 L4 作为next-hop,1/1,3/1,L2 Fabric,HIT!,FabricPath的配置,不需要 L2 IS-IS 配置新的feature-set 关键词会自动将FabricPa
16、th需要的多个Service同时打开(e.g.L2 IS-IS,LLDP,etc.)非常简单的操作 只需要3条命令让FabricPath跑起来,L2 Fabric,N7K(config)#feature-set fabricpathN7K(config)#vlan 10-19N7K(config-vlan)#mode fabricpathN7K(config)#interface port-channel 1N7K(config-if)#switchport mode fabricpath,FabricPath与TRILL的关系-FP=PreStandard TRILL?FP=Enhanced
17、 TRILL?,TRILL 帧格式,FabricPath 帧格式,16 ECMP,TTL,RPF,Conversation based MAC learning,CE Inter-OP,Multi-Topo,E-TRILL与802.1AHTRILL进入SP市场还有哪些障碍?,E-TRILL 帧格式,802.1ah 帧格式,Eth=.1ah,I-SID,C MAC DA,PCP/R,I-SID,Outer MAC DA,Outer MAC DA,Outer MAC SA,Outer MAC SA,Eth=0 x88a8,B VLAN,C MAC DA,C MAC SA,C MAC SA,Eth=
18、802.1Q,C VLAN,Payload.,Payload,Eth=PR-TAG,SID,C MAC DA,PCP/TTL,SID,Outer MAC DA,Outer MAC DA,Outer MAC SA,Outer MAC SA,Eth=0 x88a8,Outer VLAN,C MAC DA,C MAC SA,C MAC SA,Eth=802.1Q,C VLAN,Payload.,Payload,另外的L2扩展技术-OTV的MAC路由,OTV,OTV,OTV,OTV,MAC 1 MAC 3,MAC 1 MAC 3,MAC 1 MAC 3,West Site,MAC 1,MAC 3,Ea
19、stSite,二层查找目的MAC.MAC 3 通过IP B可达.边界设备封装以太网帧.骨干传输网将数据包分发到site East.,site East 的边界设备接收并解开数据包.查看原始帧的Layer 2信息.MAC 3 是本地 MAC.该以太网帧被发送到目的地.,3,6,IP A,IP B,当vPC遇上FabricPath-FabricPath下的增强版vPC,对于位于L2 Fabric Edge的所有交换机为了给dual-homed的CE设备提供active/active L2 paths,仍然需要vPC然而,MAC Table 只允许MAC和Switch ID的1-to-1 mappi
20、ng,对L2 Frabric的其余部分而言,每个vPC domain代表了一个unique Virtual Switch Virtual Switch的 Switch ID 在FabricPath 封装中作为源地址,L2 Fabric,S1,S2,A,B,S3,vPC,FabricPath使用案例-高性能计算,32 Chassis,16 Chassis,16-way ECMP,8,192 10GE ports512 10GE FabricPath ports per system,256 10GE FabricPath Ports,160 Tbps System Bandwidth,Open
21、I/O Slots for connectivity,Spine Switch,Edge Switch,16-port Etherchannel,FabricPath,HPC的需求HPC Clusters 需要高密度的计算节点尽可能小的over-subscriptionserver to server 延时很低,FabricPath 给HPC带来的好处FabricPath 适合建设高密度的fat-tree network通过FabricPath ECMP&port-channels 达成Fully non-blocking通过减少交换机的HOP跳数来降低server to server的延迟,
22、FabricPath使用案例-为2048台万兆服务器扩展带宽,带宽性能提升16X需要管理的设备从 74 减少到12台设备网络可用性增加2X+简化IT 操作,传统基于Spanning Tree的网络,基于FabricPath 的网络,Fully Non-Blocking,2,048 Servers,8 Access Switches,Network Fabric,64 Access Switches2,048 Servers,Blocked Links,Oversubscription 16:1,8:1,2:1,4 Pods,FabricPath的排错-提高Layer 2的可视化,利用为三层技术
23、设计的相同工具 Routing table Link-state database Distribution trees ECMP path selectionPong L2 Ping+Traceroute Provide info on all devices on a given path in L2 Fabric Check on link healthFabricPath的性能衡量Through IEEE 1588 timestamp and pong to help estimate average end-to-end latency,FabricPath的排错-使用DCNM图形化
24、管理,抽象的Fabric视图Identify fabric hot-spotsFabricPath state awareness流量监控Frames distribution visibilityThreshold crossing alerts for bandwidth management排错Visualize unicast,multicast and broadcast paths Check reachability between source and destination nodes配置专家 Manage FabricPath topologies with Wizard
25、toolsSimplify fine-tuning FabricPath,FabricPath Roadmap(November 2010,please check the Nexus 7000 and Nexus 5000 wikis for latest roadmap information),总结:,FabricPath是如何综合二层网和三层网优点的。FabricPath包括了独立的控制平面来管理二层拓扑,用于取代传统的生成树协议。FabricPath保留了二层技术的“Plug-n-Play”简单性最多16条ECMP路径来实行二层网络的扩展性和灵活性,以满足数据中心的要求高可用的快速收敛。,