了解双向主动测量协议
总结 了解如何使用双向主动测量协议 (TWAMP) 测量网络中任意两台设备之间的网络性能。
TWAMP的好处
-
TWAMP 配置可帮助您端到端激活、测试、监控网络并对其进行故障排除,而无需使用专用测试设备。
-
TWAMP 时间戳提供双向或往返指标,比其他方法更准确(也可以考虑处理延迟)。
-
TWAMP 通常用于检查服务级别协议 (SLA) 合规性,TWAMP 功能通常用于该上下文。
-
双向测量优于单向测量,因为往返延迟不需要主机时钟同步。这是可能的,因为反射器在数据包中放置了自己的序列号。
我们建议您不要在同一设备上配置 RPM 客户端和 TWAMP 服务器。这可能会导致 RPM 探测结果出现一些问题。
了解双向主动测量协议 (TWAMP)
RFC 5357 中描述的双向主动管理协议 (TWAMP) 是单向主动管理协议 (OWAMP) 的扩展,提供双向或往返测量,而不是单向功能。双向测量很有帮助,因为往返延迟不需要主机时钟同步,远程支持可能是一个简单的回声功能。但是,用于此目的的互联网控制消息协议 (ICMP) 回显请求/回复(由 ping 使用)有几个缺点。TWAMP 定义了一个开放协议,通过使用时间戳(也可以考虑处理延迟),以比其他方法更准确地测量双向或往返指标。
通常,TWAMP 在扮演特定角色的两个设备上的接口之间运行。TWAMP 通常用于检查服务级别协议 (SLA) 合规性,TWAMP 功能通常在该上下文中呈现。TWAMP 使用两个相关的协议,在几个定义的元素之间运行:
-
TWAMP 控制 — 启动、启动和结束测试会话。TWAMP-Control 协议在 Control-Client 元素和服务器元素之间运行。
-
TWAMP 测试 — 在两个 TWAMP 元素之间交换测试数据包。TWAMP-Test 协议在会话发送方元素和会话反射器元素之间运行。
这四个元素如图 1 所示:
尽管四个不同的 TWAMP 设备可以执行 TWAMP 控制客户端、服务器、会话发送方和会话反射器的四个逻辑角色,但不同的设备可以扮演不同的角色。常见的实现将控制客户端和会话发送方的角色组合在一个设备(称为TWAMP控制器或TWAMP客户端)中,以及服务器和会话反射器在另一个设备(称为TWAMP响应程序或TWAMP服务器)中的角色。在这种情况下,每个设备都运行TWAMP-Control(在Control-Client和服务器之间)和TWAMP-Test(在Session-Sender和Session-Reflector之间)协议。
实现的 TWAMP 客户端-服务器架构如下所示:
-
TWAMP 客户端
-
Control-Client 设置、启动和停止 TWAMP 测试会话。
-
会话发送方创建发送到 TWAMP 服务器中的会话反射器的 TWAMP 测试数据包。
-
-
TWAMP 服务器
-
会话反射器在收到测试数据包时发回测量数据包,但不保留此类信息的记录。
-
服务器管理与 TWAMP 客户端的一个或多个会话,并侦听 TCP 端口上的控制消息。
-
将这些元素打包到 TWAMP 客户端和 TWAMP 服务器进程中的过程如图 2 所示。
表 1 提供了有关 MPC、MS-MIC/MPC 和内联上的 TWAMP 和相关时间戳支持的信息:
特征 |
作用 |
IP 版本 |
支持(是/否) |
时间戳内联 |
MPC 上的时间戳(硬件时间戳) |
MPC 上的时间戳(si 接口) |
MS-MIC/MPC 上的时间戳(委托探测) |
---|---|---|---|---|---|---|---|
叮叮咚 |
客户 |
IPv4 |
Y |
N |
Y(微秒) 最多 500 个探头 |
Y(微秒) 最多 500 个探头 |
N |
IPv6 |
N |
N |
N |
N |
N |
||
服务器
|
IPv4 |
Y |
N |
Y(微秒) 最多 500 个探头 |
Y(微秒) 最多 500 个探头 |
N |
|
IPv6 |
N |
N |
N |
N |
N |
TWAMP 光支持
表 2 提供了有关 RFC 5357 附录 I 中定义的 TWAMP Light 支持的信息,该附录 I 定义了 TWAMP 协议的精简版本,这是 TWAMP 的无状态版本,其中测试参数是预定义的,而不是协商的。服务器在测试端口上收到的所有测试数据包都会被反射回来并立即被遗忘。
Junos OS 21.3R1 版中引入了对 TWAMP Light 测试会话的 IPv6 目标地址的支持,如下表所述。
Junos OS 21.4R1 版、MX 系列和 PTX1000、PTX3000 和 PTX5000 路由器以及 Junos OS 演化版 22.3R1 中引入了对 IPv6 链路本地目标地址的支持,适用于 ACX7100、ACX7509、PTX10001-36MR、PTX10003、PTX10004、PTX10008 和 PTX10016 路由器。
设备 | 支持在 |
---|---|
ACX710 | Junos OS 版本 22.3R1 |
ACX5448系列 | Junos OS 版本 22.3R1 |
ACX7100系列 | Junos OS 演化版 21.2R1 |
ACX7509 | Junos OS 演化版 22.3R1 |
MX 系列,配备 LC480、LC2101、LC2103 和 MPC(包括 MPC9E) | Junos OS 版本 21.1R1 (IPv4)、Junos OS 版本 21.3R1 (IPv6) |
具有以下线卡的 MX 系列:LMIC16-BASE、LC9600、MPC10E 和 MPC11E |
|
运行 Junos OS 的 PTX 系列,MPC 最高包括 MPC9E | Junos OS 版本 21.1R1 (IPv4)、Junos OS 版本 21.3R1 (IPv6) |
运行 Junos OS 的 PTX 系列,带有 MPC10E 和 MPC11E 线卡 |
|
PTX10001-36MR |
|
PTX10003 |
|
PTX10004 |
|
PTX10008和PTX10016(使用 JNP10008-SF3 和 JNP10K-LC1201 或 JNP10K-LC1202-36MR 线卡) |
|
QFX5130-32CD、QFX5220 和 QFX5700 | Junos OS 演化版 22.4R1(IPv4 和 IPv6) |
QFX10002、QFX10008和QFX10016 | Junos OS 版本 21.3R1 (IPv4) |
EX9200 | Junos OS 21.4R1 版 |
简单的双向主动测量协议 (STAMP) 支持
表 3 提供了有关 RFC 8762 简单双向主动测量协议 (STAMP) 中定义的 TWAMP Light 支持的信息。RFC 8762 对 TWAMP Light 操作模式进行了标准化和扩展,该模式在 RFC 5357 的附录 I 中定义,双向主动测量协议 (TWAMP) 中定义。符合 PIN 标准的反射器可确保对称的有效负载大小(根据 RFC 6038),并在无状态或有状态模式下运行,具体取决于反射有效负载中的序列号是从客户端帧复制还是独立生成。有状态反射器可以检测在哪个方向上发生了下降。在以前的版本中,我们支持对称有效负载和无状态反射。我们现在支持有状态反射、完全符合 STAMP 标准以及客户端的单向丢弃值。我们不仅支持 STAMP 客户端的单向丢弃值,还支持 TWAMP 托管模式客户端的单向丢弃值。对于 Junos OS 演化版,STAMP 在 [编辑服务监控 twamp 服务器指示灯] 层次结构级别进行配置。有状态反射由语句stateful-sequence
配置。对于服务器,新的offload-type
默认值现在是pfe-timestamp
inline-timestamp
而不是 。
装置 |
支持在 |
---|---|
ACX7024、ACX7024X、ACX7100-32C、ACX7100-48L、ACX7509 |
Junos OS 演化版 23.4R1 |
PTX10001-36MR、PTX10003、PTX10004、PTX10008和PTX10016(使用 JNP10008-SF3 和 JNP10K-LC1201 或 JNP10K-LC1202-36MR 线卡) |
Junos OS 演化版 23.4R1 |
MX 系列路由器、EX9200 系列和 QFX10000 系列交换机上的 TWAMP
控制客户端和会话发送方(TWAMP 客户端)驻留在同一个瞻博网络路由器上。但是,TWAMP 客户端不要求服务器和会话反射器位于同一系统上。因此,瞻博网络 TWAMP 客户端能够与第三方服务器实现配合使用。
在 MX 系列路由器上启用下一代服务时,不支持 TWAMP。
PTX 系列路由器上的 TWAMP
TWAMP-Control 协议用于在 TWAMP 客户端和 TWAMP 服务器之间设置性能测量会话,TWAMP-Test 协议用于发送和接收性能测量探针。用于启用内联服务的目标接口 si-x/y/z
属性在 TWAMP 客户端配置的 PTX 系列路由器上不受支持。
对于 Junos OS,TWAMP 在层次结构级别进行 [edit services rpm twamp]
配置。对于 Junos OS 演化版,TWAMP 在层次结构级别进行 [edit services monitoring twamp]
配置。 表 4 提供了有关 TWAMP 支持的信息。
设备 | 支持在 |
---|---|
运行 Junos OS 的 PTX 系列 | Junos OS 19.2R1 版 |
PTX10001-36MR |
|
PTX10003 |
|
PTX10004 |
|
PTX10008(使用 JNP10008-SF3 和 JNP10K-LC1201 或 JNP10K-LC1202-36MR 线卡) |
|
PTX10016(使用 JNP10008-SF3 和 JNP10K-LC1201 或 JNP10K-LC1202-36MR 线卡) | Junos OS 演化版 22.4R1(IPv4 和 IPv6) |
Junos OS 演化版对 TWAMP 的支持仅限于以下部分:
-
IPv4 和 IPv6 流量仅用于控制会话和测试会话。从 Junos OS 演化版 21.4R1 开始,客户端列表、控制连接和测试会话支持 IPv6 源地址和目标地址(链路本地地址除外)。
-
探测统计信息和历史记录
-
控制和测试会话状态
-
测试会话探头的生成和接收,以及反射
-
路由引擎或数据包转发引擎为 IPv4 流量设置的时间戳。对于 IPv6 流量,仅由路由引擎设置时间戳。对于 IPv6 流量,从 Junos OS 演化版 22.3R1 开始,我们支持数据包转发引擎时间戳。在 Junos OS 演化版 22.3R1 之前,对于 IPv6 流量,
offload-type
层次结构级别的语句[edit services monitoring twamp client control-connection name test-session name]
应配置为none
。从适用于服务器的 Junos OS 演化版 23.4R1 开始,语句offload-type
的默认值现在pfe-timestamp
inline-timestamp
改为 。 -
从 Junos OS 演化版 23.4R1 开始,我们支持 RFC 8762 简单双向主动测量协议 (STAMP)。RFC 8762 对 TWAMP Light 操作模式进行了标准化和扩展,该模式在 RFC 5357 的附录 I 中定义,双向 主动测量协议 (TWAMP) 中定义。有关详细信息,请参阅 简单双向主动测量协议 (STAMP) 支持。
-
仅通过系统日志消息和 SNMP 陷阱报告错误
-
仅限未经身份验证的模式
QFX5000 系列交换机上的 TWAMP
TWAMP-Control 协议用于在 TWAMP 客户端和 TWAMP 服务器之间设置性能测量会话,TWAMP-Test 协议用于发送和接收性能测量探针。对于 Junos OS 演化版,TWAMP 在层次结构级别进行 [edit services monitoring twamp]
配置。
设备 | 支持在 |
---|---|
QFX5130-32光盘 | Junos OS 演化版 22.4R1 |
QFX5220 | Junos OS 演化版 22.4R1 |
QFX5700 | Junos OS 演化版 22.4R1 |
Junos OS 演化版对 TWAMP 的支持仅限于以下部分:
-
客户端列表、控制连接和测试会话支持 IPv4 和 IPv6 源地址和目标地址(包括链路本地地址)。
-
探测统计信息和历史记录
-
控制和测试会话状态
-
测试会话探头的生成和接收,以及反射
-
路由引擎或数据包转发引擎为 IPv4 和 IPv6 流量设置的时间戳。
-
仅通过系统日志消息和 SNMP 陷阱报告错误
-
仅限未经身份验证的模式
SRX 系列防火墙上的 TWAMP
SRX300、SRX320、SRX340、SRX345、SRX550M、SRX1500、SRX4100和 SRX4200 设备以及 vSRX 虚拟防火墙实例对 TWAMP 支持具有以下限制:
-
不支持 IPv6 的 TWAMP。
-
不支持 TWAMP 服务器和 TWAMP 客户端身份验证。
-
不支持 TWAMP Light。
ACX 系列路由器上的 TWAMP
在 Junos OS 中,ACX 路由器支持 TWAMP。ACX710 和 ACX5448 系列路由器支持反射和生成。运行 Junos OS 的其他 ACX 系列路由器仅支持反射,不支持生成。对于 Junos OS,TWAMP 在层次结构级别进行 [edit services rpm twamp]
配置。
在 Junos OS 演化版中,ACX 路由器支持 TWAMP,用于反射和生成。从 Junos OS 演化版 21.2R1 开始,ACX7100 系列路由器支持 TWAMP(包括 TWAMP Light)。对于 Junos OS 演化版,TWAMP 在层次结构级别进行 [edit services monitoring twamp]
配置。Junos OS 演化版对 TWAMP 的支持仅限于以下部分:
-
IPv4 流量仅用于控制会话和测试会话;从 Junos OS 演化版 21.4R1 开始的 IPv6 流量支持(链路本地地址除外)。仅在 Junos OS 演化版 22.3R1 中开始支持 TWAMP Light 测试会话的 IPv6 链路本地地址。
-
探测统计信息和历史记录
-
控制和测试会话状态
-
测试会话探头的生成和接收,以及反射
路由引擎或数据包转发引擎为 IPv4 流量设置的时间戳。对于 IPv6 流量,仅由路由引擎设置时间戳。对于 IPv6 流量,从 Junos OS 演化版 22.3R1 开始,我们支持数据包转发引擎时间戳。在 Junos OS 演化版 22.3R1 之前,对于 IPv6 流量,
从 Junos OS 演化版 23.4R1 开始,语句offload-type
层次结构级别的语句[edit services monitoring twamp client control-connection name test-session name]
应配置为none
。从适用于 ACX 路由器的 Junos OS 演化版 22.4R1 开始,您可以配置inline-timestamping
语句选项offload-type
以启用由硬件内联设置的时间戳。offload-type
的默认值现在pfe-timestamp
由 .inline-timestamp
-
从 Junos OS 演化版 23.4R1 开始,我们支持 RFC 8762 简单双向主动测量协议 (STAMP)。RFC 8762 对 TWAMP Light 操作模式进行了标准化和扩展,该模式在 RFC 5357 的附录 I 中定义,双向 主动测量协议 (TWAMP) 中定义。有关详细信息,请参阅 简单双向主动测量协议 (STAMP) 支持。
-
仅通过系统日志消息报告错误
-
仅限未经身份验证的模式