VXLAN BGP EVPN网络的核心技术解析
1. DHCP相关技术
1.1 DHCP消息传输
DHCP客户端与服务器之间的消息确保通过同一网络交换机或中继代理来回传输。通常,GiAddr字段在IP子网范围选择中发挥作用,用于分配空闲IP地址并返回给DHCP客户端。但由于GiAddr字段会根据源接口规范改变,它不再能代表DHCP范围选择和相应的IP地址分配,因此需要新的范围选择方式。
1.2 DHCP选项82
DHCP选项82(特定供应商选项)用于添加特定电路信息,有两个子选项可用于推导IP地址分配所需的IP子网,为DHCP子网范围选择提供了不同方法:
-
Circuit - ID子选项
:将客户端所在网络的VLAN或VNI信息添加到DHCP消息中,提供给DHCP服务器。支持该子选项的DHCP服务器有Microsoft的Windows 2012 DHCP服务器、ISC DHCP服务器(dhcpd)和Cisco Prime Network Registrar(CPNR)。
-
Link Selection子选项
:是首选选项,携带原始客户端子网信息,实现正确的DHCP范围选择。支持该子选项的DHCP服务器有dhcpd、Infoblox的DDI和CPNR。
1.3 分布式任播网关与集中式DHCP服务
在VXLAN BGP EVPN架构中使用分布式任播网关及其多租户功能,集中式DHCP服务可简化为端点提供IP地址分配的能力。通过唯一的源IP地址中继DHCP消息,并结合DHCP选项82,即使跨越VRF或租户边界,也能集中提供IP地址分配基础设施。
2. VXLAN BGP EVPN架构核心转发能力
2.1 BUM流量处理
对于广播、未知单播和多播(BUM)流量,采用多播和入站复制方式,并结合BGP EVPN对包含多播路由类型的支持。
2.2 增强转发特性
具备增强的转发特性,可减少架构内的ARP和未知单播流量。
2.3 分布式任播网关
BGP EVPN架构的关键优势是在ToR或叶层实现分布式任播网关,利用IRB语义在架构内实现二层和三层流量的最优转发。
2.4 端点移动性处理
能够高效处理端点移动性,并描述了基于vPC的部署中如何处理双连接端点。
2.5 DHCP中继功能实现
介绍了在分布式IP任播网关环境中如何实现DHCP中继功能。
3. 底层网络相关考虑
3.1 底层网络概述
网络虚拟化覆盖层(如VXLAN)需要底层网络来传输封装后的流量。底层网络要考虑覆盖层头部带来的额外字节,例如VXLAN通常需要在最大传输单元(MTU)中额外预留50字节。同时,底层网络要满足覆盖层的弹性、收敛要求,其性能对覆盖层至关重要。
3.2 流量模式
- 南北向流量 :是传统的数据中心内外数据传输模式,如网页浏览和邮件活动相关流量。
- 东西向流量 :描述数据中心内服务器和应用之间的数据通信,如网站动态渲染和业务应用中不同层级之间的通信。
3.3 Clos架构应用
Clos架构最初用于电话交换机,如今也应用于网络交换机和数据中心架构设计。在数据中心架构中,用ToR交换机(叶节点)替代前端以太网端口,叶节点负责服务器连接和转发决策,连接到由一组 spine 交换机组成的第二层。spine 交换机连接到每个叶节点,提供多条路径,还可连接到超级 spine 层构建多级 spine - leaf 架构。
3.4 MTU考虑
VXLAN作为网络虚拟化覆盖技术会增加额外开销,通常为50或54字节。为避免分片,服务器端MTU常增加以支持巨型帧。大多数网络交换机最大MTU可达9216字节,能容纳服务器端9000字节的巨型帧MTU,但MTU配置需在网络各点保持一致。
3.5 IP地址分配
3.5.1 路由器ID(RID)
每个参与VXLAN底层网络的交换机通过路由协议的RID唯一标识。建议创建与配置的RID匹配的环回接口,确保RID始终可用。
3.5.2 物理接口地址分配
- 点到点(P2P)接口 :是分配物理接口IP地址的最佳方式,有/30和/31两种前缀长度可选。/30前缀常见,但有50%的地址(网络ID和广播ID)不可用;/31前缀仅包含两个可用IP地址,无网络ID和广播ID,地址利用率更高。
- IP无编号 :允许在P2P接口上进行IP处理而无需为每个接口分配单独的IP地址,通过复用为RID创建的环回接口地址,节省IP地址空间并简化地址分配过程。
3.5.3 VTEP或NVE接口地址
VTEP(NVE)接口的IP地址应从逻辑环回接口获取。虽然可使用与RID相同的环回接口,但为分离底层和覆盖层功能,通常创建单独的环回接口供NVE使用。两个环回接口的地址都需由底层内部网关协议(IGP)进行通告以实现网络可达性。
以下是不同IP地址分配方式的对比表格:
| 分配方式 | 可用地址情况 | 示例网络(4个spine和40个leaf)所需IP地址 | 对应前缀 |
| ---- | ---- | ---- | ---- |
| /30前缀 | 两个可用IP地址,网络ID和广播ID不可用 | 684 | /22 |
| /31前缀 | 两个可用IP地址,无网络ID和广播ID | 364 | /23 |
| IP无编号 | 复用环回接口地址 | 44 | /26 |
下面是IP地址分配相关的代码示例:
Example 4-1 Output from OSPF Showing RID
Click here to view code image
LEAF11# show ip ospf
Routing Process UNDERLAY with ID 10.10.10.1 VRF default
Routing Process Instance Number 1
Stateful High Availability enabled
Graceful-restart is configured
Grace period: 60 state: Inactive
Last graceful restart exit status: None
Supports only single TOS(TOS0) routes
Supports opaque LSA
Administrative distance 110
Reference Bandwidth is 40000 Mbps
SPF throttling delay time of 200.000 msecs,
SPF throttling hold time of 1000.000 msecs,
SPF throttling maximum wait time of 5000.000 msecs
LSA throttling start time of 0.000 msecs,
LSA throttling hold interval of 5000.000 msecs,
LSA throttling maximum wait time of 5000.000 msecs
Minimum LSA arrival 1000.000 msec
LSA group pacing timer 10 secs
Maximum paths to destination 8
Number of external LSAs 0, checksum sum 0
Number of opaque AS LSAs 0, checksum sum 0
Number of areas is 1, 1 normal, 0 stub, 0 nssa
Number of active areas is 1, 1 normal, 0 stub, 0 nssa
Install discard route for summarized external routes.
Install discard route for summarized internal routes.
Area BACKBONE(0.0.0.0)
Area has existed for 5w1d
Interfaces in this area: 4 Active interfaces: 3
Passive interfaces: 0 Loopback interfaces: 2
No authentication available
SPF calculation has run 86 times
Last SPF ran for 0.000505s
Area ranges are
Number of LSAs: 7, checksum sum 0x25cd5
Example 4-2 Example Configuration of a Loopback and OSPF
Click here to view code image
LEAF11# show running-config ospf
feature ospf
router ospf UNDERLAY
router-id 10.10.10.1
interface loopback0
ip address 10.200.200.1/32
ip router ospf UNDERLAY area 0.0.0.0
interface loopback1
ip address 10.10.10.1/32
ip router ospf UNDERLAY area 0.0.0.0
Example 4-3 IP Unnumbered Configuration Example
Click here to view code image
interface loopback1
ip address 10.10.10.1/32
ip router ospf UNDERLAY area 0.0.0.0
ip pim sparse-mode
interface Ethernet2/1
no switchport
mtu 9216
ip unnnumbered loopback 1
ip ospf network point-to-point
ip router ospf UNDERLAY area 0.0.0.0
ip pim sparse-mode
no shutdown
Example 4-4 Configuration of a Separate Loopback for Routing and NVE
Click here to view code image
! Loopback0 Interface Configuration (VXLAN VTEP)
interface loopback0
ip address 10.200.200.1/32
ip router ospf UNDERLAY area 0.0.0.0
ip pim sparse-mode
! Loopback1 Interface Configuration (Routing Loopback for Underlay and BGP EVPN)
interface loopback1
ip address 10.10.10.1/32
ip router ospf UNDERLAY area 0.0.0.0
ip pim sparse-mode
4. 总结
本文深入探讨了VXLAN BGP EVPN架构的核心技术,包括DHCP相关技术、架构的核心转发能力以及底层网络的设计考虑。在构建和部署此类网络时,需要综合考虑各个方面,如DHCP范围选择、IP地址分配、MTU配置等,以确保网络的高效运行和可扩展性。未来,随着网络技术的不断发展,VXLAN BGP EVPN架构有望在更多场景中得到应用和优化。
5. 底层网络路由选项
5.1 单播路由
底层网络需要为VXLAN隧道端点(VTEP)之间的单播流量提供高效的传输路径。常见的单播路由协议有OSPF(开放最短路径优先)和IS - IS(中间系统到中间系统)等内部网关协议(IGP)。这些协议可以帮助网络设备发现彼此,并计算出到达目标网络的最佳路径。
例如,在一个使用OSPF协议的网络中,各个网络设备会通过交换链路状态信息来构建网络拓扑图,然后使用Dijkstra算法计算最短路径。以下是一个简单的OSPF配置示例:
router ospf 1
router-id 10.0.0.1
network 10.0.0.0 0.0.0.255 area 0
这个配置中,路由器启用了OSPF进程1,设置了路由器ID为10.0.0.1,并将10.0.0.0/24网段加入到区域0中。
5.2 多播路由
为了处理覆盖层中的广播、未知单播和多播(BUM)流量,底层网络可能需要提供多播路由功能。常见的多播路由协议有PIM - SM(协议无关多播 - 稀疏模式)和BIDIR - PIM(双向协议无关多播)等。
5.2.1 PIM - SM
PIM - SM是一种广泛使用的多播路由协议,它采用了基于拉取的模型。在PIM - SM中,存在一个汇聚点(RP),多播源和接收者通过RP来建立多播分发树。以下是一个简单的PIM - SM配置示例:
ip pim sparse - mode
interface GigabitEthernet0/0
ip pim sparse - mode
这个配置中,全局启用了PIM - SM模式,并在GigabitEthernet0/0接口上也启用了该模式。
5.2.2 BIDIR - PIM
BIDIR - PIM是一种双向多播路由协议,它允许多播流量在两个方向上同时传输。与PIM - SM不同,BIDIR - PIM不需要建立源树,而是直接使用共享树。以下是一个简单的BIDIR - PIM配置示例:
ip pim bidir - mode
interface GigabitEthernet0/1
ip pim bidir - mode
这个配置中,全局启用了BIDIR - PIM模式,并在GigabitEthernet0/1接口上也启用了该模式。
不同多播路由协议的对比如下表格所示:
| 协议 | 工作模式 | 特点 |
| ---- | ---- | ---- |
| PIM - SM | 基于拉取,通过RP建立分发树 | 适用于多播源和接收者分布较分散的场景 |
| BIDIR - PIM | 双向传输,直接使用共享树 | 无需建立源树,收敛速度快 |
6. 网络设计与部署建议
6.1 拓扑设计
在设计数据中心网络拓扑时,应充分考虑南北向和东西向流量的特点。采用Clos架构可以提供多条等价路径,提高网络的可靠性和带宽利用率。同时,合理规划spine和leaf交换机的数量,以满足网络的规模和带宽需求。
6.2 MTU配置
为了避免数据包分片,应在网络的各个节点上统一配置MTU。服务器端可以配置为支持巨型帧,网络交换机应提供足够大的MTU值。例如,将服务器端MTU配置为9000字节,网络交换机MTU配置为9216字节。以下是一个交换机接口MTU配置示例:
interface Ethernet1/1
mtu 9216
6.3 IP地址分配
根据网络的规模和需求,选择合适的IP地址分配方式。对于大规模网络,建议使用/31前缀或IP无编号方式,以节省IP地址空间。同时,确保环回接口的IP地址在网络中唯一且可达。
6.4 路由协议选择
根据网络的拓扑结构和流量特点,选择合适的单播和多播路由协议。对于单播路由,OSPF和IS - IS都是不错的选择;对于多播路由,PIM - SM和BIDIR - PIM可以根据具体场景进行选择。
以下是一个网络设计与部署的流程图:
graph LR
A[拓扑设计] --> B[确定流量模式]
B --> C{选择Clos架构}
C -- 是 --> D[规划spine和leaf数量]
C -- 否 --> E[重新设计拓扑]
D --> F[MTU配置]
F --> G[统一配置MTU值]
G --> H[IP地址分配]
H --> I{选择分配方式}
I -- /31或IP无编号 --> J[配置环回接口]
I -- 其他 --> K[调整分配方式]
J --> L[路由协议选择]
L --> M{选择单播协议}
M -- OSPF或IS - IS --> N{选择多播协议}
M -- 其他 --> P[重新选择单播协议]
N -- PIM - SM或BIDIR - PIM --> Q[完成部署]
N -- 其他 --> R[重新选择多播协议]
E --> A
K --> H
P --> L
R --> L
7. 故障排查与优化
7.1 故障排查
在网络运行过程中,可能会出现各种故障,如路由不通、MTU不匹配等。可以使用以下方法进行故障排查:
-
查看日志信息
:通过查看网络设备的日志,了解设备的运行状态和发生的事件。
-
使用命令行工具
:如ping、traceroute等工具,检查网络的连通性和路径。
-
检查配置信息
:确保网络设备的配置正确,如IP地址、路由协议等。
7.2 网络优化
为了提高网络的性能和可靠性,可以进行以下优化:
-
负载均衡
:通过配置等价多路径(ECMP),将流量均匀地分配到多条路径上,提高带宽利用率。
-
路由优化
:定期检查路由表,删除不必要的路由,优化路由选择。
-
MTU调整
:根据实际网络情况,动态调整MTU值,避免数据包分片。
以下是一个故障排查和优化的步骤列表:
1. 当网络出现故障时,首先查看设备日志,确定故障发生的时间和可能的原因。
2. 使用ping和traceroute工具,检查网络的连通性和路径,确定故障的具体位置。
3. 检查网络设备的配置信息,确保IP地址、路由协议等配置正确。
4. 如果是MTU不匹配问题,调整相关设备的MTU值。
5. 定期进行网络优化,如负载均衡、路由优化等,提高网络性能。
8. 结论
VXLAN BGP EVPN架构在数据中心网络中具有重要的应用价值,它可以提供高效的转发能力、灵活的多租户支持和良好的扩展性。在构建和部署VXLAN BGP EVPN网络时,需要综合考虑DHCP相关技术、底层网络的设计和配置、路由协议的选择等多个方面。通过合理的网络设计、正确的配置和有效的故障排查与优化,可以确保网络的稳定运行和高性能。随着网络技术的不断发展,VXLAN BGP EVPN架构有望在未来的网络中发挥更加重要的作用。
13

被折叠的 条评论
为什么被折叠?



