Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

带内流分析器 (IFA) 2.0 探针,用于实时流量监控

带内流分析器 (IFA) 2.0 在网络中以单跃点的方式收集数据。您可以将此数据导出到外部收集器,以执行本地化或端到端分析。

带内流分析器 2.0

带内流分析器 2.0 概述

带内流分析器 2.0 (IFA 2.0) 是一项功能,可用于在数据包进出网络时对其进行监控和分析。作为网络管理员,您可以使用此功能收集与数据包通过网络的路径以及数据包在每个跃点上花费的时间相关的数据。此数据表示过度延迟和可能存在的拥塞。此功能通过在数据平面上收集每跃点流数据,帮助您深入了解复杂网络。

IFA 使用探测数据包收集网络范围的流数据。IFA 对关注流进行采样并生成探测数据包。这些数据包代表原始流,具有与原始流相同的特性。这意味着 IFA 数据包在网络中遍历的路径与原始数据包在网络元素中的队列相同。因此,IFA 探测数据包会遍历与原始流相同的网络路径,从而经历类似的延迟和拥塞。

您可以使用带内流分析器 2.0 (IFA 2.0) 收集流数据信息,例如:

  • 停留时间(延迟)
  • 单跃点延迟
  • 单跃点入口端口号
  • 单跃点出口端口号
  • 收到的数据包时间戳值
  • 队列 ID
  • 拥塞通知
  • 出口端口速度

IFA 2.0 在名为“带内流分析器”的 IETF 草案 draft-kumar-ippm-ifa-02 中进行了定义。

好处

  • IFA 探测数据包遍历与原始流量相同的网络路径,帮助您监控网络是否存在故障和性能问题。
  • 监控实时流量,从而有助于执行数据包级延迟分析和队列拥塞监控,以优化网络性能。

带内流分析器进程

IFA 使用以下处理节点(如 图 1 所示)来监视和分析流量:

  • IFA 发起节点(也称为入口节点)
  • IFA 中转节点
  • IFA 终止节点(也称为出口节点)

IFA 2.0 支持处理第 3 层 (L3) 和 VXLAN 流,但您无法在同一设备上同时为 L3 和 VXLAN 流配置 IFA。流类型选项是互斥的。您可以使用 flow-type 配置语句设置关注的流类型 — L3 或 VXLAN。只能为 IFA 发起方和 IFA 终止节点(通常为叶节点)配置 flow-type 语句。对于 IFA 中转节点(通常为主干节点),无需配置 flow-type 语句。

图 1:IFA 处理 Flow diagram illustrating IFA data collection: Initiator Node, Transit Node, Terminating Node, and Collector with blue arrow for original flow and black arrow for IFA copy.

表 1 总结了 IFA 处理节点执行的不同功能:

表 1:IFA 节点函数
IFA 节点 函数
IFA 发起方节点 对关注的流流量(L3 或 VXLAN)进行采样,并通过向每个样本添加 IFA 标头来创建 IFA 副本。
IFA 中转节点 识别 IFA 数据包,并将其元数据追加到数据包中的元数据堆栈。
  • 如果任何数据包带有 IFA 标头,则该节点会将元数据插入元数据堆栈并进行转发。如果跃点限制为 0,则节点不会插入元数据。
  • 当非 IFA 设备收到 IFA 数据包时,设备会转发该数据包,而无需进行 IFA 处理。
  • 作为 IFA 中转节点的QFX5220无法将元数据插入到 IFA 探测数据包标头的元数据堆栈中。相反,QFX5220会在 IFA 探测数据包的末尾添加一个尾戳,其中包含时间戳和其他元数据。

IFA 终止节点
  • 将终止节点元数据插入到 IFA 数据包中。
  • 将 IFA 数据包格式化为 IP 流信息导出 (IPFIX) 格式,并将数据包发送到配置的收集器。可以使用任何支持 IPFIX 格式的收集器(或应用程序)。
注意:

IFA 终止功能需要有效的瞻博网络高级遥测功能 (ATF) 许可证。

IFA 探测数据包标头

IFA 2.0 探测数据包包含以下内容:

  • IFA 标头
  • IFA 元数据标头
  • IFA 元数据堆栈

图 2 显示了 IFA 发起节点上的 L3 IFA 2.0 数据包格式:

图 2:IFA 发起方节点上的第 3 层 IFA 2.0 数据包格式 Diagram of network packet structure showing layers: L2 Header, L3 Header, IFA Header, L4 Header, IFA Metadata Header, IFA Metadata Stack, and Payload. IFA components are highlighted.

图 3 显示了 IFA 发起方节点上的 VXLAN IFA 2.0 数据包格式。

图 3:IFA 发起节点上的 VXLAN IFA 2.0 数据包格式 Packet structure showing encapsulation layers and headers for telemetry: outer L2, L3, L4, IFA headers, VxLAN, inner L2, L3, L4, and payload.
注意:

使用 VXLAN 时,将在使用 VXLAN 封装后使用三通道机制添加 IFA 报头。

IFA 标头

IFA 2.0 定义上层标头 (ULH),类似于 TCP、UDP、通用路由封装 (GRE) 和生成树协议 (STP) 定义 ULH 的方式。IFA ULH 始终是 IP 报头之后的第一个报头,即使存在其他一些 IPv4 扩展报头也是如此。字段 NextHdr (即 Protocol Type IFA 报头中的字段)带有原始 IP 报头协议字段值。 图 4 显示了 IFA 标头格式。

图 4:IFA 报头 IFA header format with fields: IFA Version 4 bits, GNS 4 bits, Protocol Type 8 bits, FLAGS 8 bits, MAX Length 8 bits.
表2 提供有关 IFA 标头字段的详细信息。
表 2:IFA 标题字段
IFA 标头字段 说明
IFA 版本 IFA 标头的版本。在当前实现中,IFA 版本为 2.0。
GNS IFA 元数据的全局命名空间 (GNS)。IFA 发起方节点将此字段的值设置为 0xF。
协议类型 IP 报头协议类型。此值是从 IP 报头复制的。
标志 闲置。
最大长度

元数据堆栈允许的最大长度,以四个八位位组的倍数表示。发起方节点初始化此字段。路径中的每个节点将当前长度与最大长度进行比较。如果当前长度等于或超过最大长度,则过渡节点将停止插入元数据。您可以配置此允许的最大长度。默认值为 240 个八位位组(对于 30 个跃点)。

IFA 元数据标头

IFA 2.0 定义了一个紧凑的 4 字节元数据标头,如 图 5 所示。IFA 发起方节点将此报头添加到探测数据包中。

图 5:IFA 元数据标头格式 Data structure with four 8-bit fields: Request Vector, Action Vector, Hop Limit, and Current Length; identifier jn-000099.
表3 提供有关 IFA 元数据标头字段的详细信息。
表 3:IFA 元数据标头字段
IFA 元数据标头字段 说明
请求向量 指定 GNS 指定的字段的存在。闲置。
动作向量 指定对 IFA 数据包的节点本地或端到端作。闲置。
跳跃限制 指定 IFA 区域中允许的最大跃点数。发起方节点初始化此字段。跃点限制在每个跃点递减。如果传入数据包的跳数限制为 0,则当前节点不会插入元数据。您可以配置此限制。默认值为 250。

终止节点不执行跳数限制检查。

当前长度 指定元数据堆栈的当前长度,以 4 个八位位组的倍数表示。

IFA 元数据堆栈

每个 IFA 跃点都会将特定于跃点的元数据插入到 IFA 元数据堆栈中,如 图 6 所示。IFA 发起方节点在 L4 标头之后添加元数据标头。

作为中转节点的QFX5220无法将元数据插入 IFA 探测数据包标头的元数据堆栈中。相反,QFX5220会在 IFA 探测数据包的末尾添加一个尾戳,其中包含时间戳和其他元数据。有关这些尾戳的更多信息,请参阅 IFA 探测数据包的尾戳(仅限QFX5220)。

图 6:IFA 元数据堆栈标头 Diagram of data packet structure with fields: LNS 4 bits, Device ID 20 bits, IP TTL 8 bits, Egress Port Speed 4 bits, Congestion 2 bits, Queue ID 6 bits, Rx Timestamp Seconds 20 bits, Egress Port Number 16 bits, Ingress Port Number 16 bits, RX Timestamp Nano Seconds 32 bits, Residence Time Nano Seconds 32 bits, Opaque Data 1 Reserved 32 bits, Opaque Data 2 Hi Reserved 16 bits, Opaque Data 2 Low Reserved 16 bits, Opaque Data 3 Reserved 32 bits.
表4 提供有关 IFA 元数据堆栈标头字段的详细信息。
表 4:IFA 元数据堆栈标头字段
IFA 元数据堆栈标头字段 说明
LNS 本地命名空间。您必须将 LNS 值设置为 1。
设备 ID 用户可配置的设备 ID。您可以显式配置设备 ID,也可以配置 auto 语句。如果配置 auto,则设备 ID 将从路由器 ID 或管理 IP 地址在内部生成。
IP TTL 每个跃点的 IP 生存时间 (TTL) 值。
出口端口速度 编码为 0-10Gbps、1-25Gbps、2-40Gbps、3-50Gbps、4-100Gbps、5-200Gbps、6-400Gbps。

出口端口速度由 IFA 元数据映射。例如,当出口端口速度为 10Gbps 时,IFA 数据包的速度字段将设置为 0。

拥塞 指示数据包是否出现拥塞。您必须在出口端口上启用显式拥塞通知 (ECN)。
队列 ID 出口端口队列 ID。
Rx 时间戳秒数 收到的数据包时间戳值(以秒为单位)。收集器负责从这些 20 位值中检索时间 (ToD)。20 位秒将每 12 天进行一次。收集器必须在环绕时间内定期同步 ToD,并将其与元数据中的 20 位一起使用,以派生 32 位 Rx Timestamp Seconds 值。
出口端口号 出口硬件 (ASIC) 端口号。
入口端口号 入口硬件端口号。
Rx 时间戳纳米秒数 接收的时间戳值(以纳秒为单位)。
停留时间 Nano Seconds 每跃点延迟(以纳秒为单位)。对于QFX5120,停留时间计算为 0x3B9ACA00(1 秒,以纳秒为单位)+ TX_NSEC - RX_NSEC。(每个数据包都会增加一秒钟,以避免环绕处理。相反,对于 QFX5130、QFX5220 和 QFX5700,停留时间将更新为实际值。

IFA 探针数据包的尾戳(仅限QFX5220)

作为中转节点的QFX5220无法将元数据插入 IFA 探测数据包标头的元数据堆栈中。相反,QFX5220会在 IFA 探测数据包的末尾添加一个尾戳,其中包含时间戳和其他元数据。该QFX5220总共添加 28 个字节的元数据作为尾戳。收到 IFA 探测数据包后,IFA 终端节点使用元数据中的 TTL 值来标识尾戳数(即,两个QFX5120或QFX5130设备之间路径上的QFX5220跳数)。然后,将尾戳转换为正确的元数据格式,并插入到元数据堆栈中的正确位置,以便元数据按照过渡节点添加它们的顺序显示。完成后,IFA 终端节点会将 IPFIX 格式的数据导出到配置的外部收集器。

由于无法将元数据插入到堆栈中,因此在收集器处接收值为 0 的 IFA 元数据堆栈字段 IP TTLEgress Port Speed Congestion for the QFX5220。您必须将收集器配置为忽略QFX5220中的这些不支持的字段。

尾戳包括 14 字节的入口 (Rx) 尾戳和 14 字节的出口 (Tx) 尾戳。 图 7图 8 提供了有关这些时间戳格式的详细信息。

图 7:入口 (Rx) 尾戳格式 Diagram of a network protocol data packet structure with fields: Timestamp Seconds, Timestamp Nano Seconds, Reserved, Origin_ID with Device ID and Port Number, R/T, and FCS for error-checking.
图 8:出口 (Tx) 尾戳格式 Diagram of a data packet structure with fields: Timestamp Seconds, Timestamp Nano Seconds, T, R, Q, C flags, Origin_ID, R/T flag, and FCS for error detection.

IFA 节点上支持的功能

表 5 列出了 IFA 节点支持的功能。

表 5:IFA 节点上支持的功能
IFA 节点 支持的功能
IFA 发起方

流量和接口类型:

  • IPv4 和 IPv6 流量。
  • VXLAN 流量。
  • UDP 和 TCP。
  • 已标记和未标记的数据包。
  • 聚合链路 (LAG) 和多机箱 LAG (MC-LAG)。如果是 LAG 出口,原始数据包和 IFA 探测副本使用同一端口退出。
  • IRB 接口。 inband-flow-telemetry-init inband-flow-telemetry-terminate (和 过滤器必须应用于 IRB 流量的底层第 2 层接口。)
  • ECMP 流量。如果出现 ECMP 流量,原始数据包和 IFA 探查副本使用同一端口退出。
  • 接口速度,例如 10 Gbps、25 Gbps、40 Gbps、50 Gbps 和 100 Gbps。
IFA运输 识别 IFA 数据包,追加其元数据并进行转发。
IFA 终止
  • 支持以 IPFIX 格式将 IFA 数据导出到任何配置的 IPv4 收集器。
  • 支持将多个 IFA 数据包合并为单个 IPFIX 导出。

支持的 IFA 2.0 IPFIX 格式(终止节点)

终止节点将 IFA 2.0 数据包格式化为 IPFIX 格式,更新出口端口信息,然后将数据包发送到配置的收集器。IFA 2.0 IPFIX 模板对于 L3 流量和 VXLAN 流量是相同的。 图 9 显示了 IPFIX 模板,其中终止节点对 IFA 2.0 数据进行格式化并将其发送到收集器。

图 9:IFA 2.0 IPFIX 模板 Decoded IPFIX packet showing protocol version 10, message length 48 bytes, timestamp Jan 11 1970, flow sequence 1128891, observation domain ID 305419896, and a data template with ID 257 and three fields with types 100, 101, and 102.

图 10 显示了配置的收集器以 IPFIX 格式接收的 VXLAN IFA 2.0 数据包示例。

图 10:VXLAN IFA 2.0 IPFIX 示例数据包
Network flow data packet screenshot from a monitoring tool showing IPFIX protocol version 10, flow details with version, length, timestamp, flow sequence, observation domain id, set id 257, and enterprise-specific entries in hexadecimal.

IFA 2.0 配置的限制

在运行 Junos OS 的设备上配置 IFA 2.0 之前,必须注意以下限制:

  • 协议编号 — IFA 2.0 使用实验协议编号 253。如果交换机收到协议编号为 253 的任何流量,则这些数据包将进入 IFA 传输过滤器。在这种情况下,QFX5220会向这些数据包添加一个 28 字节的尾戳。对于 QFX5130 和 QFX5700 交换机,即使数据包通过过滤器,也不会将 IFA 元数据添加到数据包中。但是,IFA 传输统计数据确实会递增。

  • 过滤器资源分配 — 如果系统中的过滤器硬件资源已耗尽,则 IFA 功能不起作用,因为它需要过滤器资源。您可以监控系统日志 (syslog) 中的过滤器空间耗尽错误。

  • 第 2 层和 BUM 流量 — 第 2 层交换流量和广播、未知单播和组播 (BUM) 流量不支持 IFA 2.0。

  • IFA 第 3 层和 VXLAN 流

    • IFA 2.0 支持同时处理 L3 和 VXLAN 流,但您不能在同一设备上同时为 L3 和 VXLAN 流配置 IFA。这些 flow-type 选项是互斥的。您可以使用 flow-type 配置语句设置关注的流类型 — L3 或 VXLAN。此限制仅适用于 IFA 发起方和终止节点(通常为叶节点)。对于 IFA 中转节点(通常为主干节点),不需要配置流类型。
    • 对于 VXLAN IFA 流,终止节点的出口端口相关元数据(包括出口端口号、速度、队列 ID 和拥塞)不正确。建议忽略 VXLAN 流的终止节点出口端口相关元数据。
    • IFA 流类型(L3 或 VXLAN)更改需要移除并重新配置 IFA 过滤器。如果出现流类型不匹配(例如, flow-type 配置为 VXLAN,而传入流量为 L3,反之亦然),我们无法保证 IFA 行为(IFA 探测数据包可能会使用无效字段启动)。
  • IFA 发起方节点

    • L4 报头 (UDP/TCP) 对于 IFA 启动是必需的。
    • 如果出口端口配置为充当链路聚合组 (LAG)(连接叶到主干的链路),则 VXLAN 流的 IFA 启动不起作用。
    • 您不能为 IFA 启动器的端口上的不同流量配置不同的采样率。端口内的所有流都应具有相同的采样率。
  • IFA 中转节点 — 运行 Junos OS 和 Junos OS 演化版的设备不支持元数据堆栈的最大长度检查。配置hop-limit选项以限制在传输节点上插入元数据。QFX5220无法执行跳限检查来插入尾戳。QFX5220也无法将元数据插入 IFA 探测数据包标头的元数据堆栈中;相反,QFX 5220 会在 IFA 探测数据包的末尾附加尾戳。

    QFX5220 仅支持 18 位的 Rx Seconds Timestamp 值。QFX5130 和 QFX5700 支持 20 位 Rx Seconds Timestamp 值。

    Residence Time Nano Seconds该字段将更新为 QFX5220、QFX5130 和 QFX5700 中转节点上的实际值,但在 QFX5120 中转节点上,会将 1 秒 (1000000000 ns) 与实际停留时间一起添加。

  • IFA 终止节点

    • 您只能在终止节点上配置一个 IPv4 收集器。
    • 终止节点元数据的队列 ID 为 47。此队列 ID 是为 IFA 数据包导出保留的。
    • 终止节点不执行跳限检查。即使传入 IFA 数据包已 hop-limit 设置为 0,终止节点也会插入元数据并将跃点限制减少 1,从而将 hop-limit 值重置为 255。

使用注意事项

以下是与 IFA 2.0 相关的使用注意事项:

  • 抽样 IFA 数据包在发起方节点出口时,还有一个额外的 40 字节(4 字节 IFA 报头 + 4 字节 IFA 元数据头 + 32 字节元数据)。在随后的 IFA 节点上,每个跃点都会插入 32 字节 IFA 元数据。由于在 IFA 数据包中插入了每跃点元数据,因此数据包大小在每跳后都会增长。您必须沿着网络路径相应地配置接口的最大传输单元 (MTU)。如果 IFA 区域具有大量中转节点,则必须处理 MTU。或者,您可以在发起方节点上配置 hop-limit 选项,以确保 IFA 数据包的大小永远不会超过指定的 MTU 值。
  • 要选择关注的流,可以使用源 IP 地址、目标 IP 地址、源端口、目标端口和协议匹配限定符的任意组合。IFA 2.0 不支持任何其他比赛限定符。
  • 您必须为 IFA 区域中的每个跃点配置唯一的设备 ID。如果已配置 auto 设备 ID 选项,则设备 ID 将从路由器 ID 或管理 IP 地址的最后 20 位生成。
  • 如果已将采样速率配置为 aggressive,则出口端口可能会由于 IFA 副本较多而出现拥塞。当 IFA 副本被发送到芯片处理器进行 IPFIX 导出时,这种端口拥塞可能会在终止节点上造成拥塞。我们建议您相应地选择采样率。
  • 配置 IFA 2.0 启动器时,将为环路端口创建内部镜像会话。因此,用户可配置的镜像会话数从 4 个减少到 3 个。
  • 终止节点接受最大 9000 字节的 IFA 数据包(包括 IFA 报头)。在终止节点上,多个 IFA 接收的数据包将合并为一个 IPFIX 导出数据包。在单个 IPFIX 导出数据包中最多可以合并 10 条 IFA 记录。默认情况下,最多 256 字节的原始流数据包将作为 IPFIX 导出的一部分,以及 IFA 标头。单个 IPFIX 数据包的最大大小为 9000 字节。您必须在收集器端口上正确配置 MTU。由于单个 IPFIX 数据包的最大大小为 9000 字节,因此 IPFIX 数据包的最大剪辑长度等于或小于:9000 字节 -(IFA 报头长度 + IFA 元数据标头长度 + IFA 元数据堆栈长度)。
  • 我们建议仅在 IFA 区域中使用 IFA 感知(受支持)设备。我们无法保证使用非 IFA 感知设备的正确 IFA 行为。

配置带内流分析器 2.0

IFA 是一种带内网络遥测 (INT),允许您通过数据平面收集有关网络状态的信息。

要配置 IFA 2.0 以监控网络的故障、性能问题并收集数据进行分析,需要先配置 IFA 角色。您可以在支持 IFA 功能的 Junos OS 设备上配置 IFA 角色。以下 QFX 交换机支持 IFA 2.0 功能:

  • QFX5120-32C、QFX5120-48Y、QFX5120-48T 和 QFX5120-48YM,运行Junos OS

  • QFX5130-32CD,运行 Junos OS 演化版(仅限中转节点角色)

  • QFX5220-32CD 和 QFX5220-128C,运行 Junos OS 演化版(仅限中转节点角色)

  • QFX5700,运行 Junos OS 演化版(仅限中转节点角色)

有关 Junos OS 首次支持设备的信息,请参阅本主题末尾的发布历史表。

以下是为 IFA 角色配置 Junos OS 设备的一些准则:

  • 您可以使用相同型号的交换机或不同的交换机来扮演特定 IFA 流的 IFA 角色(发起方、中转方、终止方)。
  • 您可以使用同一设备为不同的流执行所有三个不同的 IFA 角色。
  • 在 IFA 流中,传输 IFA 角色是可选的。

图 11 显示了在 Junos OS 设备上配置 IFA 节点的示例方案。在此方案中,支持 IFA 功能的不同 Junos OS 设备在单个 IFA 流中扮演不同的 IFA 角色。

图 11.带内流分析器方案示例
Network flow diagram of Inband Flow Analyzer process showing data path between Host A and Host B via Juniper QFX5120 switches with IFA headers.

以下是配置 IFA 节点的一些准则:

  • 只能通过防火墙过滤器配置在接口上启用 IFA 配置。
  • 您只能对端口上的入口方向应用 IFA 过滤器。

表 6 汇总了 IFA 发起节点、中转节点和终止节点的配置。

表 6:IFA 角色的 IFA 配置
IFA 配置参数 配置语句 IFA 角色
(必填)配置设备 ID
user@host# set services inband-flow-telemetry device-id (<1 - 1048575> | auto)
                        
IFA 发起节点、中转节点和终止节点的强制配置。
(可选,仅限 QFX5120-48YM 或QFX5220)配置更精确的时钟源
user@host# set services inband-flow-telemetry clock-source (ntp|ptp)
                        
IFA 发起节点、中继节点和终止节点。
(选答)IFA 最大元数据堆栈长度
user@host# set services inband-flow-telemetry meta-data-stack-length <8 - 255>
                        

默认值:240(对于 30 个跃点)

IFA 发起方节点
(选答)IFA 最大跳数限制
user@host# set services inband-flow-telemetry hop-limit <1 - 250>
                        

默认值 : 250

IFA 发起方节点
(选答)无 IPv6 地址匹配
user@host# set services inband-flow-telemetry no-ipv6-address-match
                        
IFA 发起方/终止节点
(必填)IFA 流类型
user@host# set services inband-flow-telemetry flow-type (l3 | vxlan)
                        
IFA 发起方和终止节点的强制配置。IFA 中转节点不需要此配置。
IFA 采样
user@host# set services inband-flow-telemetry profile ifa-profile-name sample-rate <1-16777215>
                        
IFA 发起方节点
收集器信息
user@host# set services inband-flow-telemetry profile ifa-profile-name collector source-address IP-address
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector destination-address IP-address
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector destination-port port-number
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector maximum-clip-length length
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector mtu size
                           
                        
IFA 终止节点
用于 L3 流的 IFA 过滤器

例如:

user@host# set firewall family inet filter f1 term t1 from match-condition
                           
user@host# set firewall family inet filter f1 term t1 then inband-flow-telemetry-init p1
user@host# set firewall family inet filter f1 term t2 from match-condition
                           
user@host# set firewall family inet filter f1 term t2 then inband-flow-telemetry-terminate p2
user@host# set interfaces (interface-name | wildcard) unit 0 family inet filter input f1
                        
IFA 发起方/终止节点
VXLAN 流的 IFA 过滤器

例如:

user@host# set firewall family ethernet-switching filter f1 term term1 from match-condition
                           
user@host# set firewall family ethernet-switching filter f1 term t1 then inband-flow-telemetry-init p1
user@host# set firewall family ethernet-switching filter f1 term t2 from match-condition
                           
user@host# set firewall family ethernet-switching filter f1 term t2 then inband-flow-telemetry-terminate p2
user@host# set interfaces (interface-name | wildcard) unit 0 family ethernet-switching filter input f1
                        
IFA 发起方/终止节点

配置 IFA 发起方节点

要将设备配置为 IFA 2.0 启动器,请执行以下作:

  1. 配置设备 ID。您还可以配置 device-id的值auto。如果配置device-idauto,则device-id会在内部从路由器 ID 或管理 IP 地址生成。

    在此示例中,IFA 发起方节点的设备 ID 配置为 10000。

  2. 配置流类型。您可以配置两种流类型之一,l3vxlan。您不能在同一设备中同时配置 L3 和 VXLAN 流。

    在此示例中,流类型配置为 l3。如果在发起方节点中配置 l3 流类型,则还必须为终止节点选择 l3 流类型。

  3. (可选)配置最大元数据堆栈长度。每个 IFA 跃点都会将特定于跃点的元数据插入到 IFA 元数据堆栈中。

    在此示例中,元数据堆栈长度配置为 80。

  4. 配置跃点限制。

    在此示例中, hop-limit 配置为 10。跃点限制在每个跃点递减。如果传入跃点限制为 0,则当前节点不会插入元数据。

  5. 配置 IFA 采样。采样率是一秒钟内获得的平均样本数。在端口上启用的 IFA 发起方节点上,不能对不同的流量使用不同的采样率。端口内的所有流量都应具有相同的采样率。

    在此示例中,采样率配置为 1000;这意味着在 1000 个数据包中,每秒将采样 1 个数据包。

  6. 配置 IFA 防火墙过滤器。您可以使用以下任一匹配条件配置防火墙过滤器:
    • 源 IP 地址
    • 目标 IP 地址
    • 源端口
    • 目标端口
    • 协议

    创建防火墙并配置作 inband-flow-telemetry-init

    在此示例中,您将配置一个名为 f1的防火墙过滤器,其中的术语名称 t1 包含作 inband-flow-telemetry-init,并将带内流遥测启动器配置文件映射到该过滤器 p1

  7. 将防火墙过滤器映射到已配置接口的逻辑单元下的家族,以在入口方向上应用作inband-flow-telemetry-init

    要映射防火墙过滤器,请执行以下作:

    在此示例中,您可将 f1 防火墙过滤器映射到 inet 物理接口 et-0/0/0 的逻辑接口 0 家族:

配置 IFA 中转节点

要将设备配置为 IFA 中转节点,请执行以下作:

配置设备 ID。您还可以配置 device-id的值auto。如果配置device-idauto,则device-id会在内部从路由器 ID 或管理 IP 地址生成。

例如:

配置 IFA 终止节点

要将设备配置为 IFA 终止节点,请执行以下作:

  1. 配置设备 ID。您还可以配置 device-id的值auto。如果配置device-idauto,则device-id会在内部从路由器 ID 或管理 IP 地址生成。

    例如:

  2. 配置流类型。您可以配置两种流类型之一,l3vxlan。您不能在同一设备中同时配置 L3 和 VXLAN 流。

    如果在发起方节点中配置 l3 流类型,则还必须为终止节点选择 l3 流类型。

  3. 使用终止节点的收集器信息配置 IFA 配置文件。

    例如:

  4. 您可以使用以下任一匹配条件配置防火墙过滤器:
    • 源 IP 地址
    • 目标 IP 地址
    • 源端口
    • 目标端口
    • 协议

    创建防火墙并配置作 inband-flow-telemetry-terminate

    在此示例中,您将配置一个名为 f2的防火墙过滤器,其术语名称 t1 包含作 inband-flow-telemetry-terminate,并将 inband-flow-telemetry-terminate 配置文件映射到该配置文件 p2

  5. 将防火墙过滤器映射到已配置接口的逻辑单元下的家族,以在出口方向应用inband-flow-telemetry-terminate作。

    要映射防火墙过滤器,请执行以下作:

    在此示例中,您可将 f2 防火墙过滤器映射到 inet 物理接口 et-0/0/0 的逻辑接口 0 的族:

查看带内流分析器统计信息

您可以查看以下IFA相关信息:

  • 使用作模式命令的 show services inband-flow-telemetry stats IFA 统计信息。
  • 使用作模式命令的 show services inband-flow-telemetry global IFA 全局参数。
  • 使用 show services inband-flow-telemetry profile 作模式命令配置 IFA 的配置文件。

您可以使用 clear inband-flow-telemetry stats 作模式命令清除 IFA 统计信息。

IFA 统计信息直接从 PFE 中检索,不会维护在路由引擎中。因此,PFE 进程重新启动会清除 IFA 统计信息,而路由引擎进程重新启动不会影响 IFA 统计信息。

示例 - 配置带内流分析器 2.0 以进行流量监控

使用此示例在 QFX 系列交换机上配置 IFA 2.0 节点,以便启用第 3 层或 VXLAN 流量分析。 图 12 显示了在支持 IFA 2.0 功能的 QFX 系列交换机上配置 IFA 2.0 的拓扑。在此拓扑中,VXLAN 流量在发起方受监控,在终止节点收集数据进行分析。

图 12:使用 IFA 2.0 Network topology diagram showing Juniper QFX5120 switches in spine-leaf architecture with labeled connections. 分析 VXLAN 流量的拓扑

要求

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

  • 一台 QFX5120-32C 交换机作为主干节点
  • 两台 QFX5120-48Y 交换机作为叶节点
  • Junos OS 21.4R1 版

先决条件

此示例假定您已有一个基于 EVPN-VXLAN 的网络,并希望在 QFX 交换机上启用流量监控。

准备工作

概述

在此示例中,您将其中一台 QFX5120-48Y 交换机(叶 1)配置为发起方节点,将 QFX5120-32C 交换机配置为过渡节点,将第二台 QFX5120-48Y 交换机(叶 2)配置为终止节点。VXLAN 流量从主机 1 流向主机 2。通过在入口和出口节点上配置 IFA,您可以监控网络作并识别性能问题。

QFX5120-32C 用作连接 QFX5120-48Y 叶节点的主干。在终止节点上,使用 IPv4 收集器应用程序以 IPFIX 格式收集采样流量。

配置

在此示例中,您将在交换机上配置以下功能:

  1. 将叶 1 配置为启动器节点,并配置与启动器相关的属性,如全局设备标识符和采样率。使用作 as inband-flow-telemetry-init 配置 IFA 配置文件和防火墙过滤器,并将 IFA 防火墙过滤器绑定到接口。
  2. 使用全局设备标识符将 QFX5120-32C 主干交换机配置为中转节点。配置全局设备标识符时,主干设备将添加 IFA 元数据并转发 IFA 探测数据包。
  3. 将叶 2 配置为终止节点。使用收集器信息配置 IFA 配置文件,配置防火墙过滤器(作为 inband-flow-telemetry-terminate),并将 IFA 防火墙过滤器绑定到接口。

CLI 快速配置

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

QFX5120-48Y 交换机(叶 1 — IFA 发起节点)上的配置

注意:

回想一下,在此示例中,您已将 IFA 添加到预配置的 EVPN-VXLAN 基准。此处显示的配置侧重于将 IFA 添加到基线所需的增量。我们展示了一些现有配置,以最好地显示 IFA 增量与基线的关系。

QFX5120-32C 交换机(IFA 中转节点)上的配置

QFX5120-48Y 交换机(叶 2 — IFA 终止节点)上的配置

分步过程

将 QFX5120-48Y 交换机(叶 1)配置为发起节点

IFA 发起方节点为流执行以下功能:

  • 根据配置对关注的流流量进行采样。
  • 通过向每个示例添加 IFA 标头,将流量转换为 IFA 流。
  • 使用发起方节点元数据更新数据包。
  1. 配置 IFA 发起方节点属性。发起方节点的流量类型配置为 VXLAN。请注意,您必须为发起节点和终止节点(L3 或 VXLAN)配置相同的流类型。与此示例中一样,如果为发起方节点配置了 VXLAN 流量类型,请确保也为终止节点配置 VXLAN 流量流类型。

    当将值配置为 1 时sample-rate,将对入口端口中接收的每个数据包进行采样。如果您喜欢不那么激进的采样,请增加该sample-rate 值。
  2. 将筛选器绑定到发起方节点入口接口。

  3. 创建防火墙来控制 IFA 采样。首先要定义应采样的主机流量类型。在此示例中,您希望对 UDP 和 TCP 流量执行分析。在此示例中,您将使用术语名称 term1配置名为 f_init的防火墙过滤器。

    您可以通过向t1术语添加作修饰符inband-flow-telemetry-init来配置筛选器以执行 IFA 采样。请注意,带内流遥测配置文件ifa_profile_host1已链接到筛选器:

将 QFX5120-32C 交换机配置为中转节点

IFA 中转节点在指定 VXLAN 流的 IFA 数据包中插入中转节点元数据。

配置中转节点 QFX5120-32C 交换机的全局设备标识符。

将 QFX5120-48Y 交换机(叶 2)配置为终止节点

IFA 终止节点对流执行以下作:

  • 在 IFA 数据包中插入终止节点元数据。
  • 对元数据的一个或多个段执行本地分析功能,例如,停留时间的阈值违规、拥塞通知等。
  • 过滤 IFA 流以防出现克隆流量。
  • 向收集器发送数据包的副本或报告。
  • 移除 IFA 标头并在出现实时流量时转发数据包。
  1. 配置终止节点相关属性,例如全局设备标识符和流类型。

    使用收集器相关信息配置 IFA 配置文件。

  2. 配置用于终止节点叶 2 的收集器接口。

    将防火墙过滤器应用于预配置的接口,以在叶 2 处激活带内流遥测出口处理。

    在此示例中,您可将 f-term 防火墙过滤器映射到 inet 物理接口 xe-0/0/18 的逻辑接口 0 系列:
  3. 创建防火墙过滤器并配置作 inband-flow-telemetry-terminate

    在此示例中,您将配置一个名为 f-term的防火墙过滤器,其术语名称 t1 包含作 inband-flow-telemetry-terminate,并将带内流遥测终止配置文件映射到该过滤器 p_term

结果

QFX5120-48Y 交换机(叶 1 — IFA 发起方节点)上的结果

在作模式下,输入show configuration servicesshow configuration interfaces、和show configuration firewall命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。

注意:

输出显示了预先存在的 EVPN-VXLAN 基准的部分,以提供添加 IFA 所需的配置增量的上下文。

在设备上配置完该功能后,从配置模式输入 commit

QFX5120-32C 交换机(IFA 中转节点)的结果

在作模式下,输入 show configuration servicesshow configuration interfaces 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。

在设备上配置完该功能后,从配置模式输入 commit

QFX5120-48Y 交换机(叶 1 — IFA 终止节点)上的结果

在作模式下,输入show configuration servicesshow configuration interfaces、和show configuration firewall命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。

[edit]

show configuration interfaces user@host>

在设备上配置完该功能后,从配置模式输入 commit

验证

QFX5120-48Y 交换机(叶 1 — IFA 发起方节点)上的验证

验证 IFA 统计信息

Purpose

显示发起方节点上的 IFA 统计信息。

Action

在作模式下,输入 show services inband-flow-telemetry stats 命令。

验证 IFA 全局配置

Purpose

显示在发起方节点上配置的 IFA 全局参数。

Action

在作模式下,输入 show services inband-flow-telemetry global 命令。

验证 IFA 配置文件

Purpose

显示在发起方节点上配置的 IFA 配置文件。

Action

在作模式下,输入 show services inband-flow-telemetry profile 命令。

QFX5120-32C 交换机(IFA 中转节点)上的验证

验证 IFA 统计信息

Purpose

显示中转节点上的 IFA 统计信息。

Action

在作模式下,输入 show services inband-flow-telemetry stats 命令。

验证 IFA 全局配置

Purpose

显示在中转节点上配置的 IFA 全局参数。

Action

在作模式下,输入 show services inband-flow-telemetry global 命令。

QFX5120-48Y 交换机(叶 2 — IFA 终止节点)上的验证

验证 IFA 统计信息

Purpose

显示终止节点上的 IFA 统计信息。

Action

在作模式下,输入 show services inband-flow-telemetry stats 命令。

验证 IFA 全局配置

Purpose

显示在终止节点上配置的 IFA 全局参数。

Action

在作模式下,输入 show services inband-flow-telemetry global 命令。

验证 IFA 配置文件

Purpose

显示在终止节点上配置的 IFA 配置文件。

Action

在作模式下,输入 show services inband-flow-telemetry profile 命令。

变更历史表

是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。

释放
描述
22.4R1-EVO
带内流分析器 (IFA) 2.0 中转节点支持(QFX 系列 交换机)— 在 Junos OS 演进版 22.4R1 中,我们已将对 IFA 2.0 中转节点角色的支持扩展到 QFX5130-32CD、QFX5220-32CD、QFX5220-128C 和 QFX5700 交换机。
22.2R1
带内流分析器 (IFA) 2.0(QFX 系列交换机)— 在 Junos OS 22.2R1 版中,我们已将对 IFA 2.0 的支持扩展到 QFX5120-48YM 和 QFX5120-48T 交换机。我们还添加了对配置 IFA 数据包的 MTU 和最大剪辑长度的支持,以及对 QFX5120-48YM 交换机设置 IFA 时钟源的支持。
21.4R1
带内流分析器 (IFA) 2.0(QFX5120-48Y 和 QFX5120-32C)— 在 Junos OS 21.4R1 版中,我们在 QFX 系列 交换机上引入了对 IFA 2.0 的支持。IFA 2.0 在数据包进出网络时对其进行监控和分析。您可以使用 IFA 2.0 监控网络的故障和性能瓶颈。IFA 2.0 同时支持第 3 层和 VXLAN 流。