带内流分析器 (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 处理节点执行的不同功能:
| IFA 节点 | 函数 |
|---|---|
| IFA 发起方节点 | 对关注的流流量(L3 或 VXLAN)进行采样,并通过向每个样本添加 IFA 标头来创建 IFA 副本。 |
| IFA 中转节点 | 识别 IFA 数据包,并将其元数据追加到数据包中的元数据堆栈。
|
| IFA 终止节点 |
注意:
IFA 终止功能需要有效的瞻博网络高级遥测功能 (ATF) 许可证。 |
IFA 探测数据包标头
IFA 2.0 探测数据包包含以下内容:
- IFA 标头
- IFA 元数据标头
- IFA 元数据堆栈
图 2 显示了 IFA 发起节点上的 L3 IFA 2.0 数据包格式:
图 3 显示了 IFA 发起方节点上的 VXLAN IFA 2.0 数据包格式。
使用 VXLAN 时,将在使用 VXLAN 封装后使用三通道机制添加 IFA 报头。
IFA 标头
IFA 2.0 定义上层标头 (ULH),类似于 TCP、UDP、通用路由封装 (GRE) 和生成树协议 (STP) 定义 ULH 的方式。IFA ULH 始终是 IP 报头之后的第一个报头,即使存在其他一些 IPv4 扩展报头也是如此。字段 NextHdr (即 Protocol Type IFA 报头中的字段)带有原始 IP 报头协议字段值。 图 4 显示了 IFA 标头格式。
| IFA 标头字段 | 说明 |
|---|---|
| IFA 版本 | IFA 标头的版本。在当前实现中,IFA 版本为 2.0。 |
| GNS | IFA 元数据的全局命名空间 (GNS)。IFA 发起方节点将此字段的值设置为 0xF。 |
| 协议类型 | IP 报头协议类型。此值是从 IP 报头复制的。 |
| 标志 | 闲置。 |
| 最大长度 | 元数据堆栈允许的最大长度,以四个八位位组的倍数表示。发起方节点初始化此字段。路径中的每个节点将当前长度与最大长度进行比较。如果当前长度等于或超过最大长度,则过渡节点将停止插入元数据。您可以配置此允许的最大长度。默认值为 240 个八位位组(对于 30 个跃点)。 |
IFA 元数据标头
IFA 2.0 定义了一个紧凑的 4 字节元数据标头,如 图 5 所示。IFA 发起方节点将此报头添加到探测数据包中。
| IFA 元数据标头字段 | 说明 |
|---|---|
| 请求向量 | 指定 GNS 指定的字段的存在。闲置。 |
| 动作向量 | 指定对 IFA 数据包的节点本地或端到端作。闲置。 |
| 跳跃限制 | 指定 IFA 区域中允许的最大跃点数。发起方节点初始化此字段。跃点限制在每个跃点递减。如果传入数据包的跳数限制为 0,则当前节点不会插入元数据。您可以配置此限制。默认值为 250。 终止节点不执行跳数限制检查。 |
| 当前长度 | 指定元数据堆栈的当前长度,以 4 个八位位组的倍数表示。 |
IFA 元数据堆栈
每个 IFA 跃点都会将特定于跃点的元数据插入到 IFA 元数据堆栈中,如 图 6 所示。IFA 发起方节点在 L4 标头之后添加元数据标头。
作为中转节点的QFX5220无法将元数据插入 IFA 探测数据包标头的元数据堆栈中。相反,QFX5220会在 IFA 探测数据包的末尾添加一个尾戳,其中包含时间戳和其他元数据。有关这些尾戳的更多信息,请参阅 IFA 探测数据包的尾戳(仅限QFX5220)。
| 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 TTL 和 Egress Port Speed Congestion for the QFX5220。您必须将收集器配置为忽略QFX5220中的这些不支持的字段。
尾戳包括 14 字节的入口 (Rx) 尾戳和 14 字节的出口 (Tx) 尾戳。 图 7 和 图 8 提供了有关这些时间戳格式的详细信息。
IFA 节点上支持的功能
表 5 列出了 IFA 节点支持的功能。
| IFA 节点 | 支持的功能 |
|---|---|
| IFA 发起方 | 流量和接口类型:
|
| IFA运输 | 识别 IFA 数据包,追加其元数据并进行转发。 |
| IFA 终止 |
|
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 2.0 支持同时处理 L3 和 VXLAN 流,但您不能在同一设备上同时为 L3 和 VXLAN 流配置 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 角色。
以下是配置 IFA 节点的一些准则:
- 只能通过防火墙过滤器配置在接口上启用 IFA 配置。
- 您只能对端口上的入口方向应用 IFA 过滤器。
表 6 汇总了 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 启动器,请执行以下作:
配置 IFA 中转节点
要将设备配置为 IFA 中转节点,请执行以下作:
device-id的值auto。如果配置device-id为 auto,则device-id会在内部从路由器 ID 或管理 IP 地址生成。
user@host# set services inband-flow-telemetry device-id (id-number | auto)
例如:
user@host# set services inband-flow-telemetry device-id 10001
配置 IFA 终止节点
要将设备配置为 IFA 终止节点,请执行以下作:
查看带内流分析器统计信息
您可以查看以下IFA相关信息:
- 使用作模式命令的
show services inband-flow-telemetry statsIFA 统计信息。 - 使用作模式命令的
show services inband-flow-telemetry globalIFA 全局参数。 - 使用
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 流量在发起方受监控,在终止节点收集数据进行分析。
分析 VXLAN 流量的拓扑
要求
此示例使用以下硬件和软件组件:
- 一台 QFX5120-32C 交换机作为主干节点
- 两台 QFX5120-48Y 交换机作为叶节点
- Junos OS 21.4R1 版
先决条件
此示例假定您已有一个基于 EVPN-VXLAN 的网络,并希望在 QFX 交换机上启用流量监控。
准备工作
- 确保您了解 EVPN 和 VXLAN 的工作原理。请参阅 示例:在 EVPN-VXLAN 环境中配置 IRB 接口,为数据中心的主机提供第 3 层连接 和 桥接叠加层设计和实施 ,详细了解 EVPN-VXLAN。
- 要使 IFA 终止节点配置生效,您需要具有有效的高级遥测功能 (ATF) 许可证。
概述
在此示例中,您将其中一台 QFX5120-48Y 交换机(叶 1)配置为发起方节点,将 QFX5120-32C 交换机配置为过渡节点,将第二台 QFX5120-48Y 交换机(叶 2)配置为终止节点。VXLAN 流量从主机 1 流向主机 2。通过在入口和出口节点上配置 IFA,您可以监控网络作并识别性能问题。
QFX5120-32C 用作连接 QFX5120-48Y 叶节点的主干。在终止节点上,使用 IPv4 收集器应用程序以 IPFIX 格式收集采样流量。
配置
在此示例中,您将在交换机上配置以下功能:
- 将叶 1 配置为启动器节点,并配置与启动器相关的属性,如全局设备标识符和采样率。使用作 as
inband-flow-telemetry-init配置 IFA 配置文件和防火墙过滤器,并将 IFA 防火墙过滤器绑定到接口。 - 使用全局设备标识符将 QFX5120-32C 主干交换机配置为中转节点。配置全局设备标识符时,主干设备将添加 IFA 元数据并转发 IFA 探测数据包。
- 将叶 2 配置为终止节点。使用收集器信息配置 IFA 配置文件,配置防火墙过滤器(作为
inband-flow-telemetry-terminate),并将 IFA 防火墙过滤器绑定到接口。
CLI 快速配置
要在 QFX 系列设备上快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到层级的 CLI [edit] 中。
QFX5120-48Y 交换机(叶 1 — IFA 发起节点)上的配置
回想一下,在此示例中,您已将 IFA 添加到预配置的 EVPN-VXLAN 基准。此处显示的配置侧重于将 IFA 添加到基线所需的增量。我们展示了一些现有配置,以最好地显示 IFA 增量与基线的关系。
set services inband-flow-telemetry device-id 15000
set services inband-flow-telemetry meta-data-stack-length 100
set services inband-flow-telemetry hop-limit 4
set services inband-flow-telemetry flow-type vxlan
set services inband-flow-telemetry profile ifa_profile_host1 sample-rate 1
set interfaces et-0/0/51:0 unit 0 family ethernet-switching filter input f_init
set firewall family ethernet-switching filter f_init term t1 from ip-protocol udp
set firewall family ethernet-switching filter f_init term t1 from ip-protocol tcp
set firewall family ethernet-switching filter f_init term t1 then inband-flow-telemetry-init ifa_profile_host1
set firewall family ethernet-switching filter f_init term t1 then count ifa_stats
set firewall family ethernet-switching filter f_init term t1 then accept
set firewall family ethernet-switching filter f_init term t2 then count non_ifa_stats
set firewall family ethernet-switching filter f_init term t2 then accept
QFX5120-32C 交换机(IFA 中转节点)上的配置
set services inband-flow-telemetry device-id 15001
QFX5120-48Y 交换机(叶 2 — IFA 终止节点)上的配置
set services inband-flow-telemetry device-id 15002
set services inband-flow-telemetry meta-data-stack-length 100
set services inband-flow-telemetry hop-limit 5
set services inband-flow-telemetry flow-type vxlan
set services inband-flow-telemetry profile p_term collector source-address 172.16.3.1
set services inband-flow-telemetry profile p_term collector destination-address 172.16.3.2
set services inband-flow-telemetry profile p_term collector destination-port 3055
set interfaces xe-0/0/18 unit 0 family inet filter input f_term
set interfaces xe-0/0/45 description To_Collector
set interfaces xe-0/0/45 unit 0 family inet address 172.16.3.1/24
set firewall family inet filter f_term term ifa then inband-flow-telemetry-terminate p_term
set firewall family inet filter f_term term ifa then count ifa_term
set firewall family inet filter f_term term other then count non_ifa_term
set firewall family inet filter f_term term other then accept
分步过程
将 QFX5120-48Y 交换机(叶 1)配置为发起节点
IFA 发起方节点为流执行以下功能:
- 根据配置对关注的流流量进行采样。
- 通过向每个示例添加 IFA 标头,将流量转换为 IFA 流。
- 使用发起方节点元数据更新数据包。
-
配置 IFA 发起方节点属性。发起方节点的流量类型配置为 VXLAN。请注意,您必须为发起节点和终止节点(L3 或 VXLAN)配置相同的流类型。与此示例中一样,如果为发起方节点配置了 VXLAN 流量类型,请确保也为终止节点配置 VXLAN 流量流类型。
当将值配置为 1 时[edit] user@host# set services inband-flow-telemetry device-id 15000 user@host# set services inband-flow-telemetry meta-data-stack-length 100 user@host# set services inband-flow-telemetry hop-limit 4 user@host# set services inband-flow-telemetry flow-type vxlan user@host# set services inband-flow-telemetry profile ifa_profile_host1 sample-rate 1sample-rate,将对入口端口中接收的每个数据包进行采样。如果您喜欢不那么激进的采样,请增加该sample-rate值。 -
将筛选器绑定到发起方节点入口接口。
[edit] user@host# set interfaces et-0/0/51:0 unit 0 family ethernet-switching filter input f_init -
创建防火墙来控制 IFA 采样。首先要定义应采样的主机流量类型。在此示例中,您希望对 UDP 和 TCP 流量执行分析。在此示例中,您将使用术语名称
term1配置名为f_init的防火墙过滤器。[edit] user@host# set firewall family ethernet-switching filter f_init term t1 from ip-protocol udp user@host# set firewall family ethernet-switching filter f_init term t1 from ip-protocol tcp user@host# set firewall family ethernet-switching filter f_init term t1 then accept您可以通过向t1术语添加作修饰符
inband-flow-telemetry-init来配置筛选器以执行 IFA 采样。请注意,带内流遥测配置文件ifa_profile_host1已链接到筛选器:user@host# set firewall family ethernet-switching filter f_init term t1 then inband-flow-telemetry-init ifa_profile_host1 user@host# set firewall family ethernet-switching filter f_init term t1 then count ifa_stats user@host# set firewall family ethernet-switching filter f_init term t2 then count non_ifa_stats user@host# set firewall family ethernet-switching filter f_init term t2 then accept
将 QFX5120-32C 交换机配置为中转节点
IFA 中转节点在指定 VXLAN 流的 IFA 数据包中插入中转节点元数据。
配置中转节点 QFX5120-32C 交换机的全局设备标识符。
user@host# set services inband-flow-telemetry device-id 15001
将 QFX5120-48Y 交换机(叶 2)配置为终止节点
IFA 终止节点对流执行以下作:
- 在 IFA 数据包中插入终止节点元数据。
- 对元数据的一个或多个段执行本地分析功能,例如,停留时间的阈值违规、拥塞通知等。
- 过滤 IFA 流以防出现克隆流量。
- 向收集器发送数据包的副本或报告。
- 移除 IFA 标头并在出现实时流量时转发数据包。
-
配置终止节点相关属性,例如全局设备标识符和流类型。
user@host# set services inband-flow-telemetry device-id 15002 user@host# set services inband-flow-telemetry meta-data-stack-length 100 user@host# set services inband-flow-telemetry hop-limit 5 user@host# set services inband-flow-telemetry flow-type vxlan使用收集器相关信息配置 IFA 配置文件。
user@host# set services inband-flow-telemetry profile p_term collector source-address 172.16.3.1 user@host# set services inband-flow-telemetry profile p_term collector destination-address 172.16.3.2 user@host# set services inband-flow-telemetry profile p_term collector destination-port 3055 -
配置用于终止节点叶 2 的收集器接口。
user@host# set interfaces xe-0/0/45 unit 0 family inet address 172.16.3.1/24将防火墙过滤器应用于预配置的接口,以在叶 2 处激活带内流遥测出口处理。
在此示例中,您可将f-term防火墙过滤器映射到inet物理接口 xe-0/0/18 的逻辑接口 0 系列:user@host# set interfaces xe-0/0/18 unit 0 family inet filter input f_term -
创建防火墙过滤器并配置作
inband-flow-telemetry-terminate。在此示例中,您将配置一个名为
f-term的防火墙过滤器,其术语名称t1包含作inband-flow-telemetry-terminate,并将带内流遥测终止配置文件映射到该过滤器p_term:user@host# set firewall family inet filter f_term term t1 then count ifa_term user@host# set firewall family inet filter f_term term t1 then inband-flow-telemetry-terminate p_term user@host# set firewall family inet filter f_term term t1 then accept user@host# set firewall family inet filter f_term term other then count non_ifa_term user@host# set firewall family inet filter f_term term other then accept
结果
QFX5120-48Y 交换机(叶 1 — IFA 发起方节点)上的结果
在作模式下,输入show configuration servicesshow configuration interfaces、和show configuration firewall命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。
输出显示了预先存在的 EVPN-VXLAN 基准的部分,以提供添加 IFA 所需的配置增量的上下文。
[edit]
user@host> show configuration services
inband-flow-telemetry {
device-id {
15000;
}
meta-data-stack-length 100;
hop-limit 4;
flow-type vxlan;
profile {
ifa_profile_host1 {
sample-rate 1;
}
}
}
[edit]
user@host> show configuration interfaces
[output truncated]
xe-0/0/44 {
description Connected_to_Spine1;
unit 0 {
family inet {
address 10.100.13.1/24;
}
}
}
et-0/0/51:0 {
description Connected_to_Host1_vlan_101;
unit 0 {
family ethernet-switching {
interface-mode trunk;
vlan {
members 101;
}
filter {
input f_init;
}
}
}
}
[output truncated]
[edit]
user@host> show configuration firewall
family ethernet-switching {
filter f_init {
term t1 {
from {
ip-protocol [ udp tcp ];
}
then {
accept;
inband-flow-telemetry-init ifa_profile_host1;
count ifa_stats;
}
}
term t2 {
then {
accept;
count non_ifa_stats;
}
}
}
}
在设备上配置完该功能后,从配置模式输入 commit 。
QFX5120-32C 交换机(IFA 中转节点)的结果
在作模式下,输入 show configuration services和 show configuration interfaces 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。
[edit]
user@host> show configuration services
inband-flow-telemetry {
device-id {
15001;
}
}
在设备上配置完该功能后,从配置模式输入 commit 。
QFX5120-48Y 交换机(叶 1 — IFA 终止节点)上的结果
在作模式下,输入show configuration servicesshow configuration interfaces、和show configuration firewall命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。
[edit]
user@host> show configuration services
inband-flow-telemetry {
device-id {
15002;
}
meta-data-stack-length 100;
hop-limit 5;
flow-type vxlan;
profile {
p_term {
collector {
source-address 172.16.3.1;
destination-address 172.16.3.2;
destination-port 3055;
}
}
}
}
[edit]
show configuration interfaces user@host>
[edit]
user@host> show configuration interfaces
[output truncated]
xe-0/0/18 {
description Connected_to_Spine1;
unit 0 {
family inet {
filter {
input f_term;
}
address 10.100.12.1/24;
}
}
}
xe-0/0/44 {
description Connected_to_Host2_vlan_101;
unit 0 {
family ethernet-switching {
interface-mode trunk;
vlan {
members 101;
}
}
}
}
xe-0/0/45 {
description To_Collector;
mtu 9200;
unit 0 {
family inet {
address 172.16.3.1/24;
}
}
}
[output truncated]
[edit]
user@host> show configuration firewall
family inet {
filter f_term {
term t1 {
then {
count ifa_term_c;
inband-flow-telemetry-terminate p_term;
accept;
}
}
term other {
then {
count non_ifa_term;
accept;
}
}
}
}
在设备上配置完该功能后,从配置模式输入 commit 。
验证
验证 IFA 统计信息
Purpose
显示发起方节点上的 IFA 统计信息。
Action
在作模式下,输入 show services inband-flow-telemetry stats 命令。
IFA Init Packets : 70989449712 IFA Transit Packets : 0 IFA Terminate Rx Packets : 0 IFA Terminate Tx Packets : 0
验证 IFA 全局配置
Purpose
显示在发起方节点上配置的 IFA 全局参数。
Action
在作模式下,输入 show services inband-flow-telemetry global 命令。
Global Device ID : 15000 Meta-data Stack Length : 100 Hop Limit : 4 Flow Type : vxlan
验证 IFA 配置文件
Purpose
显示在发起方节点上配置的 IFA 配置文件。
Action
在作模式下,输入 show services inband-flow-telemetry profile 命令。
Profile Name : ifa_profile_host1 Sample rate : 1 Source Address : 0.0.0.0 Destination Address : 0.0.0.0 Destination Port : 0
验证 IFA 统计信息
Purpose
显示中转节点上的 IFA 统计信息。
Action
在作模式下,输入 show services inband-flow-telemetry stats 命令。
IFA Init Packets : 0 IFA Transit Packets : 26057387140 IFA Terminate Rx Packets : 0 IFA Terminate Tx Packets : 0
验证 IFA 全局配置
Purpose
显示在中转节点上配置的 IFA 全局参数。
Action
在作模式下,输入 show services inband-flow-telemetry global 命令。
Global Device ID : 15001 Meta-data Stack Length : 240 Hop Limit : 250 Flow Type : NA
验证 IFA 统计信息
Purpose
显示终止节点上的 IFA 统计信息。
Action
在作模式下,输入 show services inband-flow-telemetry stats 命令。
IFA Init Packets : 0 IFA Transit Packets : 373569 IFA Terminate Rx Packets : 374448690 IFA Terminate Tx Packets : 41605188
验证 IFA 全局配置
Purpose
显示在终止节点上配置的 IFA 全局参数。
Action
在作模式下,输入 show services inband-flow-telemetry global 命令。
Global Device ID : 15002 Meta-data Stack Length : 100 Hop Limit : 5 Flow Type : vxlan
验证 IFA 配置文件
Purpose
显示在终止节点上配置的 IFA 配置文件。
Action
在作模式下,输入 show services inband-flow-telemetry profile 命令。
Profile Name : p_term Sample rate : 0 Source Address : 172.16.3.1 Destination Address : 172.16.3.2 Destination Port : 3055
另见
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。

