找到
13
篇与
高级网络工程师
相关的结果
-
EVPN讲解1 mmwzf0ya.png图片 H3C EVPN VXLAN 从 0 到 1 完整实验教程 更适合小白食用一、实验目标 本文基于一套已经打通的 H3C EVPN VXLAN 实验拓扑,从 0 到 1 重新梳理整套方案的实现逻辑,重点讲清楚: 4 台设备分别承担什么角色 Underlay 和 Overlay 如何配合 EVPN、VXLAN、VSI、VNI、L3VNI、分布式网关分别是什么 为什么要先配什么、后配什么 每条关键命令的作用和联动关系 如何把整套配置真正敲出来,而不是只会看结果 二、实验拓扑角色划分 RTD Underlay 核心 + EVPN RR 三层互联核心 EVPN 路由反射器 不接终端 不做业务网关 RTA VTEP + 二层接入 + 分布式网关 接入 VM1 / VM2 承载二层 VNI 承载三层网关 参与 L3VNI RTB VTEP + 二层接入 + 分布式网关 接入 VM3 / VM4 承载二层 VNI 承载三层网关 参与 L3VNI RTC L3VNI 节点 + 外部前缀注入点 不做二层接入 参与 vpn1 的三层转发 注入 20.1.1.1/32 三、整套网络的三层逻辑 1)Underlay Underlay 只做一件事:保证设备之间 IP 可达。 RTA — RTD:11.1.1.0/30 RTB — RTD:12.1.1.0/30 RTC — RTD:13.1.1.0/30 Loopback0: RTA:1.1.1.1/32 RTB:2.2.2.2/32 RTC:3.3.3.3/32 RTD:4.4.4.4/32 2)Overlay Overlay 负责传输 EVPN 控制平面 信息。 RTD 是 RR RTA / RTB / RTC 是 RR Client 3)业务层 vpna → VNI 10 → 10.1.1.0/24 vpnb → VNI 20 → 10.1.2.0/24 vpn1 → L3VNI 1000 RTA / RTB 同时提供 10.1.1.1、10.1.2.1 分布式网关 RTC 提供 20.1.1.1/32 外部前缀 四、先讲透:VSI 和 Vsi-interface 到底是什么 这一段是整篇最关键、最容易混淆的地方。1)什么是 vsi vsi vpna vsi vpnb它表示:创建一个二层业务实例。 2)什么是 interface Vsi-interface 1 interface Vsi-interface 1 interface Vsi-interface 2 interface Vsi-interface 3它表示:创建一个三层 VSI 接口。 重点:在 H3C 上,进入 interface Vsi-interface 1 视图时,本身就是在创建这个接口。 3)VSI 和 Vsi-interface 的关系 先有三层接口侧概念: interface Vsi-interface 1 ip binding vpn-instance vpn1 ip address 10.1.1.1 255.255.255.0 distributed-gateway local然后再在二层 VSI 下进行关联: vsi vpna gateway vsi-interface 1一句话总结: 先有 Vsi-interface 这个三层接口对象,再在 vsi 里通过 gateway vsi-interface 进行绑定,学习顺序会更顺。 五、配置顺序为什么必须这样安排 基础接口和 IP 地址 Underlay OSPF 验证 Loopback 可达 建立 BGP EVPN 邻居 创建 VRF / VPN 实例 开启 VXLAN / L2VPN 基础能力 先创建 Vsi-interface 接口 再创建二层 VSI,并通过 gateway vsi-interface 绑定 分布式网关 接入口 xconnect RTC 注入外部前缀 完整配置汇总 验证与排错 六、地址规划 设备地址规划RTDLoopback0:4.4.4.4/32;GE0/0:11.1.1.1/30;GE0/1:12.1.1.1/30;GE0/2:13.1.1.1/30RTALoopback0:1.1.1.1/32;GE0/0:11.1.1.2/30;GE0/1:接入 10.1.1.0/24;GE0/2:接入 10.1.2.0/24RTBLoopback0:2.2.2.2/32;GE0/0:12.1.1.2/30;GE0/1:接入 10.1.1.0/24;GE0/2:接入 10.1.2.0/24RTCLoopback0:3.3.3.3/32;Loopback1:20.1.1.1/32;GE0/0:13.1.1.2/30七、第一阶段:配置 Underlay 目标:4 台设备三层互通,4 个 Loopback 地址互通,为后续 EVPN 邻居建立提供基础。 7.1 RTD 配置 system-view sysname RTD interface LoopBack0 ip address 4.4.4.4 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 11.1.1.1 255.255.255.252 interface GigabitEthernet0/1 port link-mode route ip address 12.1.1.1 255.255.255.252 interface GigabitEthernet0/2 port link-mode route ip address 13.1.1.1 255.255.255.252 ospf 1 router-id 4.4.4.4 area 0.0.0.0 network 4.4.4.4 0.0.0.0 network 11.1.1.0 0.0.0.3 network 12.1.1.0 0.0.0.3 network 13.1.1.0 0.0.0.37.2 RTA 配置 system-view sysname RTA interface LoopBack0 ip address 1.1.1.1 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 11.1.1.2 255.255.255.252 ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 11.1.1.0 0.0.0.37.3 RTB 配置 system-view sysname RTB interface LoopBack0 ip address 2.2.2.2 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 12.1.1.2 255.255.255.252 ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 2.2.2.2 0.0.0.0 network 12.1.1.0 0.0.0.37.4 RTC 配置 system-view sysname RTC interface LoopBack0 ip address 3.3.3.3 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 13.1.1.2 255.255.255.252 ospf 1 router-id 3.3.3.3 default-route-advertise always area 0.0.0.0 network 3.3.3.3 0.0.0.0 network 13.1.1.0 0.0.0.37.5 验证命令 display ospf peer display ip routing-table ping 1.1.1.1 ping 2.2.2.2 ping 3.3.3.3 ping 4.4.4.4八、第二阶段:建立 BGP EVPN 控制平面 目标:让 RTA / RTB / RTC 都通过 RTD 建立 EVPN 邻居,由 RTD 作为 RR 反射 EVPN 路由。 8.1 RTD 配置 RR bgp 200 group evpn internal peer evpn connect-interface LoopBack0 peer 1.1.1.1 group evpn peer 2.2.2.2 group evpn peer 3.3.3.3 group evpn address-family l2vpn evpn undo policy vpn-target peer evpn enable peer evpn reflect-client8.2 RTA 配置 bgp 200 peer 4.4.4.4 as-number 200 peer 4.4.4.4 connect-interface LoopBack0 address-family l2vpn evpn peer 4.4.4.4 enable8.3 RTB 配置 bgp 200 peer 4.4.4.4 as-number 200 peer 4.4.4.4 connect-interface LoopBack0 address-family l2vpn evpn peer 4.4.4.4 enable8.4 RTC 配置 bgp 200 peer 4.4.4.4 as-number 200 peer 4.4.4.4 connect-interface LoopBack0 address-family l2vpn evpn peer 4.4.4.4 enable8.5 验证命令 display bgp l2vpn evpn peer display bgp l2vpn evpn summary九、第三阶段:创建 VRF / VPN 实例 目标:创建租户 vpn1,为三层路由和 EVPN 地址族准备基础。 9.1 RTA 配置 ip vpn-instance vpn1 route-distinguisher 1:1 address-family ipv4 vpn-target 2:2 import-extcommunity vpn-target 2:2 export-extcommunity address-family evpn vpn-target 1:1 import-extcommunity vpn-target 1:1 export-extcommunity9.2 RTB 配置 ip vpn-instance vpn1 route-distinguisher 1:2 address-family ipv4 vpn-target 2:2 import-extcommunity vpn-target 2:2 export-extcommunity address-family evpn vpn-target 1:1 import-extcommunity vpn-target 1:1 export-extcommunity9.3 RTC 配置 ip vpn-instance vpn1 route-distinguisher 1:3 address-family ipv4 vpn-target 2:2 import-extcommunity vpn-target 2:2 export-extcommunity address-family evpn vpn-target 1:1 import-extcommunity vpn-target 1:1 export-extcommunity十、第四阶段:开启 VXLAN 基础能力 10.1 RTA 配置 l2vpn enable vxlan tunnel arp-learning disable vxlan tunnel mac-learning disable10.2 RTB 配置 l2vpn enable vxlan tunnel arp-learning disable vxlan tunnel mac-learning disable10.3 RTC 配置 l2vpn enable vxlan tunnel arp-learning disable vxlan tunnel mac-learning disable十一、第五阶段:先创建 Vsi-interface 接口 11.1 RTA 创建 Vsi-interface interface Vsi-interface 1 ip binding vpn-instance vpn1 ip address 10.1.1.1 255.255.255.0 mac-address 0001-0001-0001 local-proxy-arp enable distributed-gateway local interface Vsi-interface 2 ip binding vpn-instance vpn1 ip address 10.1.2.1 255.255.255.0 mac-address 0002-0002-0002 local-proxy-arp enable distributed-gateway local interface Vsi-interface 3 ip binding vpn-instance vpn1 l3-vni 100011.2 RTB 创建 Vsi-interface interface Vsi-interface 1 ip binding vpn-instance vpn1 ip address 10.1.1.1 255.255.255.0 mac-address 0001-0001-0001 local-proxy-arp enable distributed-gateway local interface Vsi-interface 2 ip binding vpn-instance vpn1 ip address 10.1.2.1 255.255.255.0 mac-address 0002-0002-0002 local-proxy-arp enable distributed-gateway local interface Vsi-interface 3 ip binding vpn-instance vpn1 l3-vni 100011.3 RTC 创建 Vsi-interface interface Vsi-interface 3 ip binding vpn-instance vpn1 l3-vni 1000十二、第六阶段:再创建二层 VSI,并绑定二层 VNI 12.1 RTA 配置 vsi vpna gateway vsi-interface 1 arp suppression enable vxlan 10 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity vsi vpnb gateway vsi-interface 2 arp suppression enable vxlan 20 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity12.2 RTB 配置 vsi vpna gateway vsi-interface 1 arp suppression enable vxlan 10 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity vsi vpnb gateway vsi-interface 2 arp suppression enable vxlan 20 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity十三、第七阶段:配置分布式网关 相关关键命令: ip binding vpn-instance vpn1 ip address mac-address local-proxy-arp enable distributed-gateway local十四、第八阶段:接入口加入对应的 VSI 14.1 RTA 配置 interface GigabitEthernet0/1 port link-mode route xconnect vsi vpna interface GigabitEthernet0/2 port link-mode route xconnect vsi vpnb14.2 RTB 配置 interface GigabitEthernet0/1 port link-mode route xconnect vsi vpna interface GigabitEthernet0/2 port link-mode route xconnect vsi vpnb十五、第九阶段:RTC 注入外部前缀 15.1 RTC 配置 LoopBack1 interface LoopBack1 ip binding vpn-instance vpn1 ip address 20.1.1.1 255.255.255.25515.2 RTC 将直连路由引入 BGP VRF bgp 200 ip vpn-instance vpn1 address-family ipv4 unicast import-route direct十六、四台设备完整配置汇总 这一部分信息量最大。Markdown 版保留完整配置,但用普通代码块替代原先“每一行一个 div”的写法,移动端会轻很多。 16.1 RTD 完整配置 system-view sysname RTD interface LoopBack0 ip address 4.4.4.4 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 11.1.1.1 255.255.255.252 interface GigabitEthernet0/1 port link-mode route ip address 12.1.1.1 255.255.255.252 interface GigabitEthernet0/2 port link-mode route ip address 13.1.1.1 255.255.255.252 ospf 1 router-id 4.4.4.4 area 0.0.0.0 network 4.4.4.4 0.0.0.0 network 11.1.1.0 0.0.0.3 network 12.1.1.0 0.0.0.3 network 13.1.1.0 0.0.0.3 bgp 200 group evpn internal peer evpn connect-interface LoopBack0 peer 1.1.1.1 group evpn peer 2.2.2.2 group evpn peer 3.3.3.3 group evpn address-family l2vpn evpn undo policy vpn-target peer evpn enable peer evpn reflect-client16.2 RTA 完整配置 system-view sysname RTA ip vpn-instance vpn1 route-distinguisher 1:1 address-family ipv4 vpn-target 2:2 import-extcommunity vpn-target 2:2 export-extcommunity address-family evpn vpn-target 1:1 import-extcommunity vpn-target 1:1 export-extcommunity l2vpn enable vxlan tunnel arp-learning disable vxlan tunnel mac-learning disable interface LoopBack0 ip address 1.1.1.1 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 11.1.1.2 255.255.255.252 interface GigabitEthernet0/1 port link-mode route xconnect vsi vpna interface GigabitEthernet0/2 port link-mode route xconnect vsi vpnb ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 11.1.1.0 0.0.0.3 interface Vsi-interface 1 ip binding vpn-instance vpn1 ip address 10.1.1.1 255.255.255.0 mac-address 0001-0001-0001 local-proxy-arp enable distributed-gateway local interface Vsi-interface 2 ip binding vpn-instance vpn1 ip address 10.1.2.1 255.255.255.0 mac-address 0002-0002-0002 local-proxy-arp enable distributed-gateway local interface Vsi-interface 3 ip binding vpn-instance vpn1 l3-vni 1000 vsi vpna gateway vsi-interface 1 arp suppression enable vxlan 10 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity vsi vpnb gateway vsi-interface 2 arp suppression enable vxlan 20 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity bgp 200 peer 4.4.4.4 as-number 200 peer 4.4.4.4 connect-interface LoopBack0 address-family l2vpn evpn peer 4.4.4.4 enable16.3 RTB 完整配置 system-view sysname RTB ip vpn-instance vpn1 route-distinguisher 1:2 address-family ipv4 vpn-target 2:2 import-extcommunity vpn-target 2:2 export-extcommunity address-family evpn vpn-target 1:1 import-extcommunity vpn-target 1:1 export-extcommunity l2vpn enable vxlan tunnel arp-learning disable vxlan tunnel mac-learning disable interface LoopBack0 ip address 2.2.2.2 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 12.1.1.2 255.255.255.252 interface GigabitEthernet0/1 port link-mode route xconnect vsi vpna interface GigabitEthernet0/2 port link-mode route xconnect vsi vpnb ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 2.2.2.2 0.0.0.0 network 12.1.1.0 0.0.0.3 interface Vsi-interface 1 ip binding vpn-instance vpn1 ip address 10.1.1.1 255.255.255.0 mac-address 0001-0001-0001 local-proxy-arp enable distributed-gateway local interface Vsi-interface 2 ip binding vpn-instance vpn1 ip address 10.1.2.1 255.255.255.0 mac-address 0002-0002-0002 local-proxy-arp enable distributed-gateway local interface Vsi-interface 3 ip binding vpn-instance vpn1 l3-vni 1000 vsi vpna gateway vsi-interface 1 arp suppression enable vxlan 10 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity vsi vpnb gateway vsi-interface 2 arp suppression enable vxlan 20 evpn encapsulation vxlan route-distinguisher auto vpn-target auto export-extcommunity vpn-target auto import-extcommunity bgp 200 peer 4.4.4.4 as-number 200 peer 4.4.4.4 connect-interface LoopBack0 address-family l2vpn evpn peer 4.4.4.4 enable16.4 RTC 完整配置 system-view sysname RTC ip vpn-instance vpn1 route-distinguisher 1:3 address-family ipv4 vpn-target 2:2 import-extcommunity vpn-target 2:2 export-extcommunity address-family evpn vpn-target 1:1 import-extcommunity vpn-target 1:1 export-extcommunity l2vpn enable vxlan tunnel arp-learning disable vxlan tunnel mac-learning disable interface LoopBack0 ip address 3.3.3.3 255.255.255.255 interface GigabitEthernet0/0 port link-mode route ip address 13.1.1.2 255.255.255.252 interface LoopBack1 ip binding vpn-instance vpn1 ip address 20.1.1.1 255.255.255.255 ospf 1 router-id 3.3.3.3 default-route-advertise always area 0.0.0.0 network 3.3.3.3 0.0.0.0 network 13.1.1.0 0.0.0.3 interface Vsi-interface 3 ip binding vpn-instance vpn1 l3-vni 1000 bgp 200 peer 4.4.4.4 as-number 200 peer 4.4.4.4 connect-interface LoopBack0 address-family l2vpn evpn peer 4.4.4.4 enable ip vpn-instance vpn1 address-family ipv4 unicast import-route direct十七、最终验证思路 17.1 二层互通验证 display mac-address display vxlan tunnel display bgp l2vpn evpn routing-table17.2 三层互通验证 ping 10.1.1.x ping 10.1.2.x17.3 ARP / 主机路由验证 display arp vpn-instance vpn1 display ip routing-table vpn-instance vpn1 protocol direct display ip routing-table vpn-instance vpn1 protocol bgp display ip routing-table vpn-instance vpn1 protocol evpn17.4 VRF 路由验证 display ip routing-table vpn-instance vpn1十八、常见排错思路 1)Loopback 不通 先查 Underlay: display ospf peer display ip routing-table ping 4.4.4.42)EVPN 邻居不起 先查: Loopback 是否可达 BGP 邻居地址是否正确 connect-interface LoopBack0 是否已配置 RR 上是否启用了 peer evpn reflect-client 查看命令: display bgp l2vpn evpn peer display bgp l2vpn evpn summary3)二层主机不通 先查: vsi 是否创建 vxlan 10 / 20 是否正确 接口是否执行 xconnect vsi EVPN Type-2 路由是否学习到 MAC 表是否正常生成 查看命令: display mac-address display bgp l2vpn evpn routing-table display vxlan tunnel4)三层互访不通 先查: Vsi-interface 是否绑定到 vpn1 网关 IP 是否正确 distributed-gateway local 是否已配置 l3-vni 1000 是否在各节点存在 RTC 是否把 20.1.1.1/32 引入到 BGP VRF 查看命令: display ip routing-table vpn-instance vpn1 display arp vpn-instance vpn1 display bgp vpnv4 all routing-table十九、全文总结 Underlay 负责打通设备 IP 可达 Overlay 负责 EVPN 控制平面发布与学习 Vsi-interface 是三层接口对象 vsi 是二层业务实例 先建 Vsi-interface,再在 vsi 里做 gateway vsi-interface 绑定,逻辑最清晰 RTA / RTB 同时承载二层 VNI、三层网关、L3VNI RTC 负责引入外部前缀到 vpn1 RTD 作为 RR,负责 EVPN 路由反射 到这里,这套 H3C EVPN VXLAN 分布式网关实验,就算真正从“看懂”走到了“能独立敲出来”。 二十、针对博客性能的优化说明 这版 Markdown 相比你原来那篇重 HTML 文章,主要做了这些性能优化: 去掉了文章内部的大段 <style> 去掉了每一行代码单独一个 div 的写法 改成标准 Markdown 标题、列表、表格、代码块 保留阅读层次,但尽量减少不必要的嵌套 更适合手机端和 Typecho 内容页渲染 如果你博客首页现在还是“显示全文”,建议再额外改成“只显示摘要”,否则长文依然会拖慢首页列表页。 -
分布式evpn网关配置举例 一、实验说明 更适合小白食用 这篇主要是记录一下我做的一个 H3C EVPN VXLAN 分布式网关实验,涉及 4 台设备:RTA、RTB、RTC、RTD。 整体看下来,RTA 和 RTB 更像是接入侧 VTEP,主要负责二层业务接入、VSI 和 VXLAN 的绑定、分布式网关这些内容; RTC 这台更偏三层侧,主要看业务路由引入和三层互通;RTD 则是整个实验里的 EVPN 路由反射器(RR),负责把控制面路由组织起来。 这套实验我感觉挺适合拿来入门 EVPN VXLAN,尤其是把 RR、VTEP、二层 VNI、三层 VNI 这些概念串起来看,会比单独背命令顺很多。 二、设备角色说明 RTA: 接入侧 VTEP,主要看二层业务、VXLAN 映射和分布式网关。 RTB: 也是接入侧 VTEP,可以理解成和 RTA 对称的一侧,用来做跨 VXLAN 的二层互通。 RTC: 这台更偏三层网关侧,重点看路由引入、L3 VNI 和三层互通。 RTD: EVPN RR,也就是路由反射器,负责把几台设备的 EVPN 路由反射出去。 三、设备配置查看 下面把几台设备的原始配置也放上来,点击文件名可以直接在当前页面弹窗查看,不用跳转: 查看 RTA.txt 查看 RTB.txt 查看 RTC.txt 查看 RTD.txt 四、阅读建议 如果是第一次看这套配置,我建议不要一上来就直接从头到尾硬读,不然很容易被一堆命令绕进去。 先看 RTD,先把 RR 的邻居关系看清楚,知道谁和谁建了 EVPN 邻居,谁负责反射。 再看 RTA 和 RTB,重点看 VSI、VNI、VTEP、分布式网关这些内容。 最后看 RTC,把三层网关、L3 VNI、VPN 实例和业务互通串起来理解。 我自己看这类配置的时候,一般也是按这个顺序,不然很容易只见命令,不见整体逻辑。 五、补充说明 下面这些点,是我觉得这套实验里最值得单独拎出来说的几个地方。很多时候不是命令难,而是概念容易混在一起。 所以这里我尽量按“人话”来整理一下,也方便后面自己回头看。 1、group evpn internal 是什么意思 这个命令放在 BGP 下面看,其实就比较好理解了。 group evpn,可以理解成先建了一个名字叫 evpn 的邻居组; internal 表示这个组里的邻居都是 IBGP 邻居,也就是和本设备在同一个 AS 里。 我的理解是,这个东西本质上就是为了省配置、也为了后面扩展方便。 比如有几台设备都要做 EVPN 邻居,很多公共属性其实是一样的,那就没必要一台一台单独敲,直接先建个组, 再把邻居拉进来就行。 所以这里的重点不是“这条命令很神秘”,而是要明白:它本质上就是一个 IBGP 邻居模板组。 2、peer evpn reflect-client 是干什么的 这个命令就很好理解了,关键点就两个字:反射。 RTD 在这里扮演的是 RR,也就是 EVPN 路由反射器。 peer evpn reflect-client 的意思,就是把这个邻居组里的设备都当成 RR Client。 这样一来,RTA、RTB、RTC 不需要彼此全互联,它们只要都和 RTD 建邻就行。 某台设备把 EVPN 路由发给 RTD,RTD 再把这些路由反射给其他客户端。 这个设计的好处很明显: 设备少的时候可能感受不明显; 设备一多,如果全互联,邻居关系会非常乱; 有了 RR 之后,控制面拓扑就清晰很多,扩容也方便。 所以我自己看这条命令的时候,通常不会死记“reflect-client”这个词,而是直接理解成: RTD 负责帮大家转发 EVPN 路由信息。 3、vxlan tunnel mac-learning disable 的意义 这条命令如果只看字面,很容易觉得有点抽象。其实它想表达的意思很简单: 不要再依赖 VXLAN 隧道里的数据面报文去学习远端 MAC 了。 传统 Flood-and-Learn 的思路,很多时候是靠报文来了再学; 但 EVPN 的思路更偏控制面,也就是通过 BGP EVPN 直接去分发 MAC/IP 可达信息。 所以把这个功能关掉,可以理解成网络在明确告诉你: 远端 MAC 的学习,尽量别靠“听流量猜”; 更希望通过 EVPN 控制面来学; 这样泛洪会少一些,收敛和可控性也会更好一些。 这个点我觉得是 EVPN VXLAN 和传统 VXLAN 一个挺重要的区别。 你会发现,越往 EVPN 方向走,越强调“控制面提前知道”,而不是“数据面来了再学”。 4、VSI / BD / VNI 到底是什么关系 这三个概念,是很多人一开始最容易混的地方。 我现在更习惯这么理解: VNI:就是 VXLAN 里的那个业务编号,可以理解成“隧道里带着走的标签”; VSI:设备本地的一个二层业务实例,理解成“这台设备上的一个虚拟交换域”就行; BD:桥接域,很多厂商会更常说这个词,本质上也是一个二层广播域的概念。 如果说得再直白一点: VSI / BD 更像是设备本地怎么看这个二层业务,VNI 更像是这个业务放到 VXLAN 隧道里之后对应的编号。 所以很多时候,你会看到某个 VSI 下面去绑一个 VXLAN VNI。 这其实就是在说:把这个本地二层业务域,映射到某个 VXLAN 网络编号上。 至于 VSI 和 BD,到底是不是完全一样,不同厂商实现会有些表达差异。 但在学习和看实验配置的时候,你完全可以先把它们都理解成“二层广播域”。 5、二层 VNI 和三层 VNI 的区别 这个点真的很重要,很多时候一旦这里理顺了,后面的分布式网关、租户三层互通就顺了。 (1)二层 VNI 二层 VNI 主要负责承载 二层业务。 你可以把它理解成:把同一个二层网段,通过 VXLAN 的方式延伸到不同设备上。 它对应的是二层广播域; 更关注 MAC、ARP、主机二层可达; 适合“同一网段跨设备延伸”的场景。 (2)三层 VNI 三层 VNI 就不一样了,它对应的已经不是简单的二层广播域,而是 一个租户的三层转发域。 它更偏向 VPN 实例、租户路由表这些概念; 承载的是三层转发逻辑; 适合不同子网之间的互通。 (3)我自己的记法 二层 VNI 管“同网段怎么延伸”,三层 VNI 管“不同网段怎么互通”。 这么记我觉得最省脑子,也最不容易混。 (4)再说得再通俗一点 二层 VNI:更像是把一个 VLAN 的二层范围,通过 VXLAN 扩展到了别的设备; 三层 VNI:更像是给一个租户准备了一套路由空间,让不同网段之间可以在 VXLAN 网络里转起来。 6、分布式网关和这些概念之间是什么关系 分布式网关这个东西,如果单独背定义,其实挺容易越背越绕。 我自己的理解就是一句话: 让终端无论接到哪台 VTEP,上面都像有“同一个网关”在本地等着它。 这样做的好处是,终端流量不用先绕去远端设备找网关,而是可以本地就完成网关转发。 它通常会和这些东西一起配合: 二层 VNI:负责租户二层网段的延伸; 三层 VNI:负责跨网段的三层转发; EVPN:负责把 MAC/IP 和路由信息发出去; VTEP:负责封装和解封装 VXLAN 报文。 所以整体逻辑可以简单理解成: 终端先接入本地 VTEP → 同网段流量靠二层 VNI 互通 → 跨网段流量在本地分布式网关做三层转发 → 再通过三层 VNI 和 EVPN 控制面把流量和路由带到对端。7、最后说一下我自己看这套配置时会重点盯哪些地方 如果后面我自己再回头看这套实验,我觉得最值得重点盯的还是下面这些点: BGP EVPN 邻居关系:先看谁和谁建邻,谁是 RR,谁是 Client; VSI 配置:看每个业务二层域是怎么建的; VNI 绑定关系:看哪些是二层 VNI,哪些是三层 VNI; 网关接口:看分布式网关地址是怎么落的; VPN 实例:看租户路由表是怎么组织的; EVPN 控制面:看 MAC/IP 和路由信息到底是怎么发布和学习的。 对我自己来说,这样去看会比只盯着单条命令更有效,因为命令本身其实只是表象,真正要弄明白的还是整套网络是怎么联动起来的。 配置文件 下载文件 复制内容 × 正在加载配置文件... #configModalScrollBox::-webkit-scrollbar { width: 18px; height: 18px;}#configModalScrollBox::-webkit-scrollbar-track { background: #e5e7eb; border-radius: 10px;}#configModalScrollBox::-webkit-scrollbar-thumb { background: #9ca3af; border-radius: 10px; border: 3px solid #e5e7eb;}#configModalScrollBox::-webkit-scrollbar-thumb:hover { background: #6b7280;}#configModalScrollBox { scrollbar-width: auto; scrollbar-color: #9ca3af #e5e7eb;}var currentConfigUrl = '';var currentConfigTitle = '';function openConfigModal(url, title) { currentConfigUrl = url; currentConfigTitle = title; document.getElementById('configModalTitle').innerText = title; document.getElementById('configModalContent').innerText = '正在加载配置文件...'; document.getElementById('configDownloadBtn').href = url; document.getElementById('configDownloadBtn').setAttribute('download', title); document.getElementById('configModalMask').style.display = 'block'; document.getElementById('configModal').style.display = 'block'; document.body.style.overflow = 'hidden'; fetch(url) .then(function(response) { if (!response.ok) { throw new Error('HTTP状态码:' + response.status); } return response.text(); }) .then(function(text) { document.getElementById('configModalContent').innerText = text; }) .catch(function(error) { document.getElementById('configModalContent').innerText = '配置文件加载失败\\n\\n可能原因:\\n1. 文件路径不对\\n2. 文件权限不足\\n3. Web 服务未开放 txt 访问\\n4. 文章内容中的 JS 被过滤\\n\\n错误信息:' + error; });}function closeConfigModal() { document.getElementById('configModalMask').style.display = 'none'; document.getElementById('configModal').style.display = 'none'; document.body.style.overflow = '';}function copyConfigContent() { var text = document.getElementById('configModalContent').innerText; if (!text || text === '正在加载配置文件...') { alert('当前没有可复制的配置内容'); return; } if (navigator.clipboard && window.isSecureContext) { navigator.clipboard.writeText(text).then(function() { alert('配置内容已复制'); }).catch(function() { fallbackCopyText(text); }); } else { fallbackCopyText(text); }}function fallbackCopyText(text) { var textarea = document.createElement('textarea'); textarea.value = text; textarea.style.position = 'fixed'; textarea.style.left = '-9999px'; textarea.style.top = '0'; document.body.appendChild(textarea); textarea.focus(); textarea.select(); try { document.execCommand('copy'); alert('配置内容已复制'); } catch (err) { alert('复制失败,请手动复制'); } document.body.removeChild(textarea);}document.getElementById('configModalMask').onclick = closeConfigModal;document.addEventListener('keydown', function(e) { if (e.key === 'Escape') { closeConfigModal(); }}); -
PFC和ECN PFC是属于 数据链路层(L2) 的以太网控制机制。 L2:PFC(硬暂停) L3:ECN(拥塞标记) L4:DCQCN(降速算法) PFC 控制链路 ECN 控制拥塞 DCQCN 控制速率 PFC(Priority Flow Control)是 IEEE 802.1Qbb 定义的 以太网二层流控机制,通过发送 L2 Pause Frame 控制对端暂停指定优先级流量,用于构建无损以太网。 PFC是谁暂停发送,是交换机和GPU网卡? 谁收到 PFC Pause Frame 谁就暂停发送 也就是说: 交换机收到 → 交换机暂停发送 GPU服务器网卡(NIC)收到 → NIC暂停发送 PFC本质是 接收端告诉对端:你先别发了,我要满了。 一、最常见的场景(AI / RoCE 网络) 交换机检测到队列拥塞 GPU NIC ─────→ ToR Switch 发送数据 交换机 buffer 快满: ToR Switch ↓ 发送 PFC PauseGPU NIC ↓ 暂停发送 RoCE 流量 所以这里: 设备 行为 交换机 发送 PFC GPU NIC 暂停发送 二、另一种情况(反向) 如果 GPU NIC 接收缓存满: Switch ─────→ GPU NIC GPU NIC 会发送: GPU NIC ↓ PFC Pause FrameSwitch ↓ 暂停发送 所以: 设备 行为 GPU NIC 发送 PFC 交换机 暂停发送 -
GPU2 # 什么是AI超算网络?传统网工必须了解的新赛道来了! 同学们,新年伊始, 网工要正式进入一个全新的领域了—— # AIDC 韩老师会围绕 **AI 超算网络、智算中心** 这个方向,持续输出内容。 这不是追热点,而是因为: > **网络工程师的下一个增长极,就在这里。** --- ## 🗓 直播信息 - **时间:3月4日晚上 19:20** - **主题:AI超算网络系列直播第一讲** - **标题:《什么是 AI 超算网络?》** - **地点:YESLAB新网工 直播间** - **备注:系列第一讲,后续持续更新** --- # 什么是 AI 超算网络? 你可能听说过: - 智算中心 - GPU 集群 - 万卡训练 但这些和网络有什么关系? 简单说: > 训练一个大模型,需要成千上万张 GPU 同时工作。 > 这些 GPU 之间怎么连接、怎么通信,就是 **AI 超算网络** 要解决的问题。 --- # 🎯核心结论先说 ```text AI超算网络 = 为大规模GPU协同训练而设计的高性能网络 它解决的核心问题不是“能不能通”, 而是“如何以极低延迟、超高带宽、尽量不丢包的方式高效通信” ``` --- # 一、为什么 AI 训练需要特殊的网络? 传统数据中心的网络,主要服务于“东西向流量”——服务器之间传数据。 一般来说: - 延迟高一点,问题不一定大 - 偶尔丢个包,也还能靠 TCP 重传兜底 但 **AI 训练完全不同**。 ## 📌AI 训练的四个核心特征 ```text 规模大:一次训练动辄几千张 GPU,全部要协同计算 通信量巨大:每一轮梯度同步(All-Reduce),所有 GPU 都要互相交换数据 延迟敏感:网络慢一点点,整个训练集群都要等,GPU 白白空转 带宽要求极高:单卡带宽需求轻松达到 400Gbps 甚至 800Gbps ``` ## 🧠一句话理解 > 传统网络更关注“能传”; > AI 超算网络更关注“传得快、传得稳、传得足够同步”。 --- # 二、AI 超算网络长什么样? 一个典型的 AI 超算网络,通常可以分成三部分: - **计算网络(GPU 互联网络)** - **存储网络** - **管理网络** --- ## 🧩1)计算网络(GPU 互联网络) 这是 GPU 之间直接通信的网络,核心目标非常明确: > **极低延迟 + 超高带宽** 常见技术包括: ### **InfiniBand(IB)** - 目前 AI 训练最主流的选择 - NVIDIA 主导 - 延迟极低 - 常见于高性能训练集群 ### **RoCE(RDMA over Converged Ethernet)** - 基于以太网实现 RDMA - 更容易结合现有以太网体系 - 国内很多超大规模集群广泛采用 ### **NVLink / NVSwitch** - NVIDIA GPU 之间的高速互联技术 - 更偏 GPU 内部/节点内部互联 - 带宽可达数 TB/s 📌一句话: ```text IB / RoCE 更偏“节点之间怎么高速通信” NVLink / NVSwitch 更偏“节点内部 GPU 之间怎么高速互联” ``` --- ## 🗄 2)存储网络 存储网络主要负责: - 训练数据读取 - 模型 checkpoint 写入 - 数据集分发 - 中间结果落盘 这部分虽然不像 GPU 互联那么“极致敏感”, 但一旦跟不上,同样会拖慢整体训练效率。 --- ## 🛠 3)管理网络 管理网络主要负责: - 带外管理 - 健康监控 - 故障检测 - 设备运维接入 这部分和传统数据中心网络更接近, 但随着集群规模变大,要求也在不断提高。 --- # 三、和传统网络有什么不同? ## 📌AI 超算网络 vs 传统数据中心网络 | 对比维度 | 传统数据中心网络 | AI 超算网络 | |------|------|------| | 流量模型 | Client-Server,南北向为主 | All-to-All,东西向为主 | | 带宽要求 | 10G / 25G / 100G | 400G / 800G 起步 | | 延迟要求 | 毫秒级可接受 | 微秒级,极度敏感 | | 丢包容忍 | 有 TCP 重传兜底 | RDMA 场景几乎零容忍 | | 核心协议 | TCP/IP | RoCEv2 / InfiniBand | | 典型设备 | 传统交换机 | 支持 RoCE / IB 的专用交换机 | ## 🧠一句话总结 ```text 传统数据中心网络重点是“通用性” AI 超算网络重点是“极致性能” ``` --- # 四、网络工程师为什么要关注这个方向? 过去十年,网络工程师的核心战场主要是: - 企业园区网 - 运营商承载网 - 传统 IDC 但现在,随着国内智算中心建设爆发,一批新的岗位需求正在快速出现。 ## 🚀正在涌现的新方向 - AI 网络架构设计 - RoCE / InfiniBand 网络部署调优 - 大规模 GPU 集群网络运维 - AIDC 网络方案售前 / 售后 ## 📌这些岗位的共同特点 ```text 既需要扎实的网络基础, 又需要理解 AI 训练的通信模型 ``` 也就是说: > 这并不是完全脱离传统网工的新领域, > 而是在传统网络基础上,向更高性能、更高密度、更高要求的方向升级。 --- # 五、为什么这是传统网工的新机会? 很多人会觉得: > AI、GPU、大模型,好像离网络工程师很远。 其实恰恰相反。 因为 AI 训练不是只靠 GPU 堆起来的, 它背后必须有一张真正能支撑大规模并行训练的网络。 ## 🎯对传统网工来说,这意味着什么? - 以前懂 VLAN / OSPF / BGP / VXLAN / 数据中心架构,只是基础 - 现在还需要继续理解 **RDMA、RoCE、IB、无损网络、拥塞控制** - 未来网络岗位的“高价值区”,会越来越靠近 **AIDC / 智算中心 / GPU 集群** ## 🧠一句话 > **懂传统网络的人,不一定懂 AI 超算网络; > 但懂 AI 超算网络的人,一定离不开传统网络基础。** --- # 六、这次直播会讲什么? 这是 **AI超算网络系列直播的第一讲**, 专门为传统网络工程师和运维同学量身设计。 ## ✅本讲重点 - 为什么 AI 训练对网络有这么极端的要求? - 熟悉了解 AI 超算网络的整体全貌 ## 📌后续系列还会继续深挖 - IB vs RoCE 怎么选 - AIDC 拓扑怎么设计 - 传统网工怎么切入这个赛道 --- # 🎯总结(背诵/面试可直接说) ```text AI超算网络,本质上是为大规模GPU协同训练而设计的高性能网络。 它和传统数据中心网络最大的区别在于: 通信模型更偏All-to-All, 带宽要求更高, 延迟要求更低, 对丢包更敏感。 典型技术包括 InfiniBand、RoCE、NVLink / NVSwitch, 并通常由计算网络、存储网络和管理网络共同组成。 随着智算中心和AIDC建设加速, AI超算网络正在成为传统网络工程师值得重点关注的新方向。 ``` --- # 🧱快速图示 ```text AI 超算网络 │ ┌──────────────┼──────────────┐ │ │ │ 计算网络 存储网络 管理网络 (GPU高速互联) (数据/Checkpoint) (带外/监控/运维) │ ├─ InfiniBand(IB) ├─ RoCE └─ NVLink / NVSwitch ``` --- # 🧊最后一句话 > **如果说传统数据中心网络解决的是“业务怎么连得起来”, > 那 AI 超算网络解决的就是“训练怎么跑得起来、跑得更快、跑得更稳”。** -
GPU网络 什么是AI超算网络?传统网工必须了解的新赛道来了! 网工要正式进入一个全新的领域了—— AIDC 围绕 AI 超算网络、智算中心 这个方向,持续输出内容。这不是追热点,而是因为—— 网络工程师的下一个增长极,就在这里。 AI超算网络系列直播第一讲: 《什么是 AI 超算网络?》 📍 📌 什么是 AI 超算网络? 你可能听说过“智算中心”、“GPU 集群”、“万卡训练”……但这些和网络有什么关系? 简单说:训练一个大模型,需要成千上万张 GPU 同时工作。这些 GPU 之间怎么连接、怎么通信,就是 AI 超算网络 要解决的问题。 我们来拆解一下。 一、为什么 AI 训练需要特殊的网络? 传统数据中心的网络,主要服务于“东西向流量”——服务器之间传数据,延迟高一点、偶尔丢个包,问题不大。 但 AI 训练完全不同: 规模大: 一次训练动辄用几千张 GPU,全部要协同计算 通信量巨大: 每一轮梯度同步(All-Reduce),所有 GPU 都要互相交换数据 延迟敏感: 网络慢一点点,整个训练集群都要等,GPU 白白空转 带宽要求极高: 单卡带宽需求轻松达到 400Gbps 甚至 800Gbps 专门为 AI 设计的网络架构就自然而然出来了 二、AI 超算网络长什么样? 一个典型的 AI 超算网络,通常分为: 1. 计算网络(GPU 互联网络) 这是 GPU 之间直接通信的网络,追求 极低延迟 + 超高带宽。 常见技术: InfiniBand(IB):目前 AI 训练最主流的选择,NVIDIA 主导,延迟极低 RoCE(RDMA over Converged Ethernet):基于以太网实现 RDMA,国内超大规模集群广泛采用 NVLink / NVSwitch:NVIDIA 自家 GPU 之间的高速互联,带宽可达数 TB/s 深度解析|以太网 vs InfiniBand 的区别 2. 存储 & 管理网络 训练数据、模型 checkpoint 的读写走存储网络;带外管理、健康监控走管理网络。这部分和传统数据中心网络更接近,但带宽要求也在快速拉升。 三、和传统网络有什么不同? 对比维度 传统数据中心网络 AI 超算网络 流量模型 Client-Server,南北向为主 All-to-All,东西向为主 带宽要求 10G / 25G / 100G 400G / 800G 起步 延迟要求 毫秒级可接受 微秒级,极度敏感 丢包容忍 有 TCP 重传兜底 RDMA 场景几乎零容忍 核心协议 TCP/IP RoCEv2 / InfiniBand 典型设备 传统交换机 支持 RoCE/IB 的专用交换机 四、网络工程师为什么要关注这个方向? 过去十年,网络工程师的核心战场是:企业园区网、运营商承载网、传统 IDC。 而现在,随着国内智算中心建设的爆发,一批新的岗位需求正在快速涌现: AI 网络架构设计 RoCE / InfiniBand 网络部署调优 大规模 GPU 集群网络运维 AIDC 网络方案售前 / 售后 这些岗位, 既需要扎实的网络基础, 又需要理解 AI 训练的通信模型 ——正好是新网工同学的机会窗口。 直播,韩老师会讲什么? 这是 AI超算网络系列直播的第一讲 专门为传统网络工程师和运维同学量身设计。 把“什么是AI超算网络”讲清楚: ✅ 为什么 AI 训练对网络有这么极端的要求? ✅ 熟悉了解 AI 超算网络的整体全貌 后续系列再逐期深挖:IB vs RoCE 怎么选、AIDC 拓扑怎么设计、传统网工怎么切入这个赛道…… 零基础也能听懂,希望对你的职业未来发展有更新的认识 预约方式