Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

如何在 IS-IS 中启用链路延迟测量和广告

了解 IS-IS 中的链路延迟测量和广告

IS-IS 中的链路延迟测量和广告的优势

IS-IS 中的链路延迟测量和广告具有以下优势:

  • 对于某些网络(如股票市场数据提供商)非常有益,因此必须实时访问市场数据,使交易比竞争对手更快。这就是网络性能标准或延迟对于数据路径选择至关重要的地方。
  • 有助于以经济高效且可扩展的方式根据性能数据(如延迟)做出路径选择决策。
  • 使用跃点计数或成本等指标作为路由指标的出色替代方案。

IS-IS 中的链路延迟测量和广告概述

网络性能是通过使用 TWAMP -Light 来衡量的。从 Junos OS 21.1R1 版开始,您可以使用探测消息来测量 IP 网络中的各种性能指标。IS-IS 流量工程扩展有助于以可扩展方式分发网络性能信息。然后,此信息可用于根据网络性能做出路径选择决策。

边界网关协议链路状态 (BGP-LS) 允许 BGP 携带从 IGP 获取的链路状态信息,然后,互联网服务提供商 (ISP) 可以通过正常的 BGP 对等互连选择性地与其他 ISP、服务提供商、CDN 等公开信息。新的 BGP 链路状态 (BGP-LS) TLV 被定义为承载 IGP 流量工程指标扩展。

下图描述了由核心、城域和接入网络组成的网络中的最低 IGP 指标和最小延迟指标。

在这种情况下,核心网络更便宜,但延迟更长。延迟最低的访问捷径成本很高。由于核心网络成本更低,因此大部分流量通常通过使用最小 IGP 指标从 1>2>3>4>5> 到 6。如场景 a 所示,您可以通过运行 IS-IS(配置适当的成本并将默认 IS-IS 算法设置为零)来实现最低 IGP 要求。在超低延迟至关重要的企业中,数据包需要从 1 到 6。如场景 b 中所示,您可以通过定义具有最小延迟的 IS-IS flex 算法来达到最小延迟指标,从而将端点的延迟降至最低。此 flex 算法仅包含节点 1 和节点 6。

示例:通过第 3 层虚拟专用网络 (VPN) 中的网络中的源数据包路由 (SPRING) 启用 IS-IS 链路延迟

此示例说明如何在 L3 VPN 场景中使用 SPRING 配置 IS-IS 链路延迟。在此示例中,您可以在 PE1 和 PE2 之间创建两个 VPN。VPN1 优化了链路延迟,VPN2 优化了 IGP 指标。虽然您可以配置此功能以在测试拓扑中启用双向流量,但本例中我们将重点介绍一个单向流量场景。具体而言,您的任务是控制 PE1 发送到 PE2 播发目标的第 3 层 VPN 流量的转发路径。

要求

此示例使用以下硬件和软件组件:

  • 四台 MX 系列路由器

  • 在所有设备上运行的 Junos OS 21.1R1 或更高版本

拓扑

图 1:IS-IS 链路延迟拓扑 IS-IS Link Delay Topology

在拓扑中,大多数链路的 IGP 指标(默认)为 10、动态延迟测量和蓝色。PE1 和 P1 之间的红色路径以及 P2 到 PE2 链路上的静态延迟配置例外。

我们已将测试拓扑配置为同时支持 IPv4 和 IPv6 的 IS-IS 链路延迟。我们已将 P2 路由器配置为路由反射器,将 PE 设备作为其客户端。为了保持拓扑简单,我们在 PE2 路由器的 VRF 中使用了静态路由。这样就不需要 CE 设备和 PE-CE 路由协议(如 EBGP)。

您的目标是配置网络,以便 PE2 为 VPN1 播发的路由采用可优化延迟的路径,同时仅限于使用蓝色链路。相比之下,发送至 VPN2 关联的路由的流量可以采用蓝色或红色链路,并根据其 IGP 指标进行路径优化。

  • VPN1 的 Flex 算法定义 (FAD) 使用算法 128。我们将其配置为在经过优化以减少延迟的路径上仅使用蓝色链路 (PE1>P2>P1>PE2)。为了展示正确的路径选择,在 P2 和 PE2 之间配置 20000 微秒的静态延迟。此延迟明显高于在剩余链路上测得的动态延迟。因此,您期望 flex 算法 128 流量可以避免 P2 到 PE2 链路,而是沿着蓝色路径 (PE1>P2>P1>PE2) 优先选择其他跃点。
  • VPN2 的 Flex 算法定义 (FAD) 使用算法 129。我们已将其配置为采用蓝色或红色链路 (PE1>P1>PE2 或 PE1>P2>PE2),路径针对 IGP 指标进行了优化。因此,使用 flex 算法 129 的流量在 PE1 和 PE2 之间有两个等价路径,这两条路径均产生两个跃点,由此产生的指标为 20。

概述

在 IP 网络中,大部分流量通常通过核心网络,这降低了成本,但可能会导致延迟增加。然而,业务流量通常受益于基于其他性能指标(如路径延迟)做出路径选择决策的能力,而不是简单地根据 IGP 指标中继传统路径优化。优化路径以降低延迟可以极大地改善实时语音和视频等应用。它还可以实现对金融市场数据的高性能访问,其中毫秒可以转化为重大的收益或损失。

从 Junos OS 21.1R1 版开始,您可以在 IP 网络中启用 IS-IS 链路延迟。您可以使用默认的 IS-IS 算法 (0) 以适当的链路成本配置 IS-IS,从而实现最小 IGP 指标路径。这样做可以严格基于链路指标之和来优化到端点的路径。通过使用 IS-IS 延迟 flex 算法,您可以根据路径的端到端延迟来优化路径。

可以使用双向主动测量探针 (TWAMP) 动态测量链路延迟。然后,路由器为其链路延迟参数泛洪。区域内的路由器将这些参数存储在共享链路状态数据库 (LSDB) 中。入口节点针对 LSDB 运行 SPF 算法,以计算针对各种属性(如链路颜色、IGP 指标、流量工程 (TE) 指标或此示例所示的链路延迟)优化的路径。

出口路由器通过将关联的颜色社区连接到通过 BGP 播发的路由,发出需要哪个 flex 算法的信号。在发送端(接收远程 PE 播发的标记路由的本地 PE),这些颜色社区用于将颜色表索引到一个颜色表中,用于将远程协议下一跃点(PE 的环路地址)解析为 flex 算法标识符。在第 3 层 VPN 的上下文中,入口节点使用颜色映射策略,以选择应通过颜色表解析哪些前缀的下一跃点。

然后,本地 PE 使用其本地 Flex 算法定义 (FAD) 将 flex 算法标识符映射到一组路径选择标准中,例如“使用蓝色链路并针对延迟进行优化”。入口 PE 根据 LSDB 中的值计算最优路径,将相关的 MPLS 标签堆栈推送到数据包上,并将其发送至关联的下一跃点。这就产生了使用 IS-IS 作为信令协议的流量设计的 MPLS 路径。

配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中。

注意:

根据 MX 系列路由器中的 MPC 类型,您可能需要显式启用增强型 IP 服务以支持 IS-IS 延迟功能。提交 set chassis network-services enhanced-ip 配置语句时,系统会提示您重新启动系统。

PE1

P1

P2

PE2

分步过程

  1. 配置基本设备设置,如主机名、IPv4、IPv6 地址、环路接口地址、 enhanced-ip 模式,并在所有 4 个路由器的所有接口上启用 ISO 和 MPLS 协议家族。

  2. 配置路由器 ID、自治系统 (AS) 编号,并将负载平衡导出策略应用于所有路由器上的转发表,以启用流量负载平衡。

  3. 在 PE1 和 PE2 上,配置等价多路径 (ECMP) 以支持快速重新路由保护。此外,还可配置链式复合下一跃点,使路由器能够将共享相同目标的路由指向公共转发下一跃点。此选项可改进转发信息库 (FIB) 扩展。

  4. 在所有路由器的所有接口上启用 MPLS 协议处理。同时支持流量工程。

  5. 在所有路由器上启用 TWAMP 探测。这些探测器支持动态测量每对路由器之间的链路延迟。

  6. 为点对点操作配置 IS-IS 协议(多点链路不支持基于 TWAMP 的延迟测量),并为所有接口上的无拓扑替代 (TILFA) 操作启用节点保护模式。您还在环路接口上启用被动模式 IS-IS,并禁用 IS-IS 级别 1 以仅使用 IS-IS 级别 2。使用第 3 层单播拓扑启用流量工程,将 IGP 拓扑下载到 TED 中。配置 IS-IS 以支持 SPRING 路由路径。导出 prefix-sid 策略在后续步骤中定义。此策略用于让本地节点播发其环路地址,并映射到一个或多个 flex 算法。

  7. 在所有路由器的所有 IS-IS 接口上使用 TWAMP 探测器(P2 和 PE2 之间的链路除外,在此示例中使用静态延迟值),配置动态 IS-IS 链路延迟测量。

  8. 在 P2 和 PE2 之间的链路上配置静态延迟指标。

  9. 配置 PE1 和 PE2 以支持两个第 3 层 VPN(VPN1 和 VPN2)。

    注意:

    请注意,PE2 上的路由实例配置了 IPv4 和 IPv6 静态路由。这些路由配置了选项 receive ,以允许您使用 ping 测试连接。如果第 3 层 VPN 在 PE 和所连接的 CE 设备之间使用动态路由协议,则 IS-IS 延迟功能的操作方式相同。在此示例中,我们使用静态路由来保持拓扑简单,以便将重点放在 IS-IS 延迟优化功能上。

  10. 在 PE1 上配置映射策略,以启用 VPN 路由解析,以便将前缀与 BGP 颜色表进行匹配。这允许您基于每个前缀来唤起 flex 路径转发算法。解析 map1 策略设置为 ip-color 解析模式。

    注意:

    在第 3 层 VPN 环境中,需要有映射策略来选择允许哪些前缀在颜色表中解析其下一跃点。除非使用映射策略,否则只需添加具有扩展的下一跃点和颜色社区的路由不会导致使用颜色表。

  11. 在 PE2 上配置 VPN 路由导出策略,将所需的颜色社区连接到它播发至 PE1 的 VPN 路由(通过路由反射器)。此处的显著意义在于,来自 VPN1 的路由如何连接 flex 路径 128(优化延迟)的颜色社区,而从 VPN2 播发的路由连接了 129 色社区(优化 IGP 指标)。

  12. 配置 PE 设备和路由反射器之间的 BGP 对等互连。配置单播网络层可达性信息 (NLRI),以支持 PE 设备上的扩展颜色下一跃点。启用此选项后,带有颜色社区的路由可以通过颜色表解析下一跃点。如果没有扩展的下一跃点设置路由,色群将经历正常的下一跃点解析,并且不会使用 flex 算法路径。

  13. 您还可以启用对 IPv4 和 IPv6 3 层 VPN 单播路由的支持。在 PE1 上,您将色映射策略应用为导入,以便它可以处理从远程 PE 设备接收的路由。

    在 PE 2 上,应用导出策略,将所需的颜色社区连接到发送至 PE1 的 VPN 路由播发。 vpn-apply-export PE2 需要选项,以允许导出策略对播发至远程 PE 的 VPN 路由起作用。

  14. 在所有路由器上定义按数据包的负载平衡策略。

  15. 在所有路由器上使用两个 flex 算法(128 和 129)配置对分段路由的支持。

  16. 将所有路由器配置为播发其环路地址,同时支持 128 和 129 flex 算法。选项 prefix-segment index 将设置每个路由器的环路地址的基本标签。在此示例中,将 IPv4 基本索引和 IPv6 基本索引设置为反映路由器编号。因此,R0 (PE1) 对 IPv4 使用 1000,而 R1 (P1) 则使用 1001。

  17. 在所有路由器上定义 REDBLUE MPLS 管理组,并为每个接口分配所需的颜色。您还可以启用 ICMP 隧道,以在基于 MPLS 的第 3 层 VPN 环境中支持追踪路由。

  18. 在层次结构下的 routing-options 入口 PE 设备 (PE1) 上配置 FAD。在这种情况下,您分配 flex 算法 128 以基于 delay-metric 和 129 优化 igp-metric路径。在此示例中,flex 算法 128 只能采用蓝色路径,而 flex 算法 129 可以采用蓝色或红色路径。在此示例中,仅在 PE1 上定义 FAD,因为我们仅关注从 PE1 到 PE2 的转发路径。

    要支持双向 flex 路径转发,您需要在 PE2 设备上定义所需的 FAD。P 路由器不需要 FAD 定义,因为只有入口节点在计算出口节点的路径时才会使用 FAD。

  19. 从配置模式进入 commit 到。

结果

检查配置结果:

user@PE1# show interfaces

user@PE1# show policy-options

user@PE1# show protocols

user@PE1# show routing-options

user@PE1# show routing-instances

user@PE1# show services rpm

验证

验证 IS-IS 邻接

目的

验证路由设备上预期的 IS-IS 邻接。

行动

在操作模式下,输入 show isis adjacency 命令。

意义

这些输出表示 PE1 已成功在其和ge-0/0/1.0接口上ge-0/0/0.0形成 IS-IS 邻接,分别连接到其 P1 和 P2 路由器。

验证 IS-IS 数据库

目的

验证 IS-IS 数据库中是否存在链路延迟参数。

行动

show isis database extensive | match delay使用操作命令。

意义

输出显示与拓扑中各种接口关联的动态延迟。输出的突出显示部分指定 P2 到 PE2 链路上配置的 20000 微秒的静态延迟。静态配置的延迟值明显高于任何动态延迟测量值。配置了这种大延迟,便于预测网络中经过延迟优化的蓝色路径。

验证 BGP 对等互连

目的

验证两个 PES 是否已成功地与路由反射器建立 IPv4 和 IPv6 对等会话。

行动

show bgp summary使用操作命令。在这种情况下,我们在路由反射器 P2 上运行命令,因为它提供了一个方便的位置,可以使用单个命令确认来自两个 SE 的两个对等会话。

意义

输出将确认所有 BGP 对等会话均已正确建立。显示屏还确认正在通过这些对等会话播发/学习第 3 层 VPN 路由。

验证 VPN 路由上的颜色社区

目的

验证 PE2 播发的 VPN 路由是否已正确使用颜色社区进行标记。

行动

show route detail <prefix> table <table-name> PE1 上使用操作命令显示有关从 PE2 学习的第 3 层 VPN 路由的详细信息。

意义

输出将确认 VPN1 路由实例中的 VPN 前缀已连接了颜色社区 color:0:128 。此外,您还可以确认此路由的协议下一跃点是 PE2 路由器的环路地址,带有扩展的下一跃点(为颜色表中的匹配条目建立索引)。

虽然未显示,但可以为 VPN2 表中的前缀重复此命令。您希望这些路由已 color:0:129 附加。

验证 inetcolor.0 路由表

目的

验证 inetcolor.0 路由表是否正确填充了所有路由器 ID(环路地址),显示对 128 和 129 flex 算法的支持。

注意:

inet6color.0 表支持 IPv6 路由。您可以使用与本部分 IPv4 颜色表所示的相同方法验证此表。

行动

show route table inetcolor.0使用操作命令。

意义

输出显示路由表中的 inetcolor.0 路由。突出显示的部分表示两个路由源自 PE2。路由 192.168.255.3-128<c> 只有一个可能的路径,并将 ge-0/0/1.0 接口作为下一跃点将接口带至 P2。回想一下,128 flex 算法必须使用蓝色链路,从 PE1 的角度来看,它只留下蓝色 ge-0/0/1 接口作为一个可行的路径。

相比之下,路由 192.168.255.3-129<c> 能够同时通过 ge-0/0/0.0 接口到 P1 和 P2 实现 ge-0/0/1.0 负载均衡。回想一下,flex 算法的路径可以采用蓝色或红色的任何路径,因此在转发到相关目标时,可以使用任一接口。

验证 TWAMP 操作

目的

验证 TWAMP 探测是否在配置了动态链路延迟的路由器之间运行。

行动

使用 show services rpm twamp client 操作模式命令。

意义

输出突出显示的部分表示 PE1 有两个 TWAMP 邻接方:P2 (10.0.1.2) 和 P1 (10.0.1.1)。

如果需要, show services rpm twamp client probe-results 请使用操作模式命令查看当前和历史延迟测量值。

验证路由解析

目的

验证 VPN1 和 VPN2 通过预期的 flex 算法路径解析的路由。

行动

使用 show route 操作模式命令。

意义

突出显示的输出表示,在 PE1 设备上,VPN1 的 172.16.1.0 路由使用 FAD 128,仅采用蓝色路径,这使得 P1 (10.0.2.2) 成为下一跃点,而 VPN2 的路由则为 172.16.2.0 使用 FAD 129,这意味着它可以将红色路径通过 ge-0/0/0.0 接口进入 P1>PE2,或通过 ge-0/0/1.0 接口进入 P2> PE2。IPv6 路由也是如此,如 VPN1 所示:

来自 VPN1 的 IPv6 路由解析为与其 IPv4 对应路径相同的转发路径,这两个路径均使用 flex 算法 128 强制使用蓝色链路进行延迟优化。请记住,您曾将 PE2(这些路由的源)配置为对 IPv4 路由使用 1287,对 IPv6 路由使用 4287 的标签库,并将 source-packet-routing srgb start-label 标签基数配置为 8000。因此,来自 VPN1 的 IPv4 路由的标签为 81287,而来自 VPN1 的 IPv6 路由则使用 84287。

验证转发路径

目的

验证 VPN1 和 VPN2 的路由是否通过预期的 flex 算法路径转发。

行动

使用 pingtrace route 操作模式命令验证可访问性,并确认 PE1 在将流量以 PE2 发送到 VPN 目标时使用的 IPv4 转发路径。

注意:

在 PE2 使用带有接收下一跃点的静态路由允许您对远程路由执行 ping 操作。但是,您可以预期追踪路由的最后一跃点会超时,因为当以 IPv4 静态接收路由为目标时,不支持跟踪路由处理。

意义

输出指示使用了预期的转发路径。例如,VPN1 中 172.16.1.0/24 路由的追踪路由表明,使用了蓝色路径,并且避免了 P2 和 PE2 之间的高延迟链路。这可以确认,如果 flex 算法减少了端到端路径延迟,则首选具有额外跃点的路径。在这种情况下,使用 P2 和 P1 之间的 10.0.12.0 链路,同时避免 P2 和 PE2 之间的直接链路。

相比之下,为 172.16.2.0/24 路由采用的路径(与 VPN2 和 flex 算法 129 相关联)能够采用 PE1 和 PE2 之间的任一直接路径。在这种情况下,转发路径是从 PE1 到 P1,然后是目标 (PE2),如上一个跃点超时。对于指向 CE 设备的路由(与此示例中使用的静态接收路由相反),不会在最后一跃点上发生此超时。

虽然此处没有为简洁起见,但您希望为 IPv6 VPN 路由提供相同的转发路径,具体取决于这些路由是映射到 flex 算法 128 还是 129,这在本例中分别表示与 VPN1 和 VPN2 相关联。