02-iFIT配置
本章节下载: 02-iFIT配置 (488.47 KB)
iFIT(in-situ Flow Information Telemetry)是一种应用于SRv6、G-SRv6(Generalized SRv6,通用SRv6)传输网络的,测量网络性能指标的测量技术,它直接测量业务报文的真实丢包率和时延等参数,具有部署方便、统计精度高等优点。
iFIT功能实现遵循中国电信技术标准和中国联通技术标准,这些标准有些许差异,例如对iFIT报文头在IPv6报文中的封装位置要求有差异,请根据实际组网环境,选择配置一种即可。
请注意,同一条SRv6链路上参与iFIT测量的设备必须配置相同的技术标准,否则,可能导致iFIT报文解析失败,iFIT测量结果不准确。
iFIT支持以下两种测量类型:端到端测量和逐点测量,这两种测量类型适用于不同应用场景。
· 端到端测量
当用户希望测量整个网络的丢包和时延性能时,可以选择端到端测量类型。端到端测量会测量流量在进入网络的设备(流量入口)和离开网络的设备(流量出口)之间是否存在丢包以及时延参数。如图1-1所示,iFIT可用于直接测量流量从Ingress(入节点)到达Egress(出节点)时,是否有丢包、时延,以及丢包率和时延值。
· 逐点测量
当用户希望准确定位每个网络节点的丢包和时延性能时,可以选择逐点测量类型。当根据测量结果发现端到端统计场景有丢包或者时延不满足业务要求时,可以将端到端之间的网络划分为多个更小的测量区段,测量每两个网元之间是否存在丢包、时延值,进一步定位影响网络性能的网元位置。如图1-2所示,iFIT可同时测量流量从Ingress到达Egress时,Ingress和Transmit(中间节点)之间、Transmit和Egress之间任意两个接口间是否有丢包、时延,以及丢包率和时延值。
当网络出口设备不支持iFIT功能,不能进行端到端测量时,可以在入口设备和支持iFIT的设备上部署iFIT逐点测量功能,测量这一段链路的性能参数。
如图1-1、图1-2所示,iFIT网络框架中主要涉及四个对象:传输网络(Transit network)、目标流、测量点和统计系统。
传输网络是传输目标流的网络,业务流既不在该网络内产生,也不在该网络内终结。目前iFIT仅支持对三层传输网络中的业务流进行测量。
为测量目标流在传输网络中的传输质量,iFIT需要为目标流添加iFIT报文头,Tunnel组网类型对应传输网类型为SRv6、G-SRv6。在Tunnel组网环境下,入节点本身需要对业务报文进行SRv6封装,为了实现随流检测,入节点会在对业务报文进行SRv6封装时增加扩展字段来携带iFIT检测数据,供后续转发节点识别处理。
目标流是iFIT统计的目标对象。根据生成方式不同目标流分为静态目标流和动态目标流两种。
· 静态目标流:静态目标流用于映射、管理动态目标流。它相当于一个配置模板,在入节点上使用flow命令配置iFIT流匹配规则,且开启iFIT测量功能后,入节点会生成一个iFIT静态目标流。入节点使用DeviceID+FlowID来唯一标识该静态目标流。其中,DeviceID由device-id命令配置,FlowID为取值范围在1~1048575的随机数,由入节点生成。
在入节点上执行display ifit flow static命令可查看静态目标流的DeviceID、FlowID、传输网络类型和其它配置。
· 动态目标流:动态目标流是设备动态学习到的业务流。
¡ 对于入节点,如果设备收到的业务流匹配某条静态目标流的匹配规则,则入节点会在本地生成一个和该静态流DeviceID+Flow ID相同的动态目标流,并将DeviceID+FlowID封装在iFIT报文头中传递给中间节点和出节点。
¡ 对于中间节点和出节点,则通过解析收到的业务报文,根据业务报文中携带的iFIT报文头动态学习生成动态目标流。
设备以iFIT报文头中的“DeviceID+FlowID”作为划分动态目标流的依据。如果在指定时间内没有收到相同“DeviceID+FlowID”的报文,则认为该动态目标流已经老化,设备会将该动态目标流删除。
测量点(Detection point):实施iFIT测量的接口。用户可根据测量需求指定测量点。
统计系统指的是完成iFIT性能统计的所有设备的集合。它包含了以下角色:
· 入节点(Ingress):目标流进入目标流传输网络的设备,它负责对目标流进行筛选,为目标流添加iFIT报文头,收集目标流的统计数据并上报给Analyzer。
· 中间节点(Transmit):入节点和出节点之间的节点。中间节点根据报文是否包含iFIT报文头来判断是否为iFIT目标流,对于iFIT目标流,再根据iFIT头中携带的测量类型,决定是否需要收集目标流的统计数据并上报给Analyzer。
对于SRv6组网,SRv6隧道的头节点即为iFIT的入节点,SRv6隧道的尾节点即为iFIT的出节点,在头节点和尾节点之间的节点称为中间节点。中间节点又分为两种:在SID列表中的中间节点和不在SID列表中的中间节点。缺省情况下,只有在SID列表中的中间节点开启iFIT测量功能后,能进行iFIT测量。那些不在SID列表中的中间节点,不参与SRv6处理,只执行普通的IPv6报文转发(SRv6中将其称为中转节点),即便开启iFIT测量功能,也不解析iFIT报文头,不参与iFIT测量。在中转节点上执行ifit enable和trace-measure per-hop命令后,中转节点才会解析iFIT报文头,进行iFIT测量。
· 出节点(Egress):根据报文是否包含iFIT报文头来判断是否为iFIT目标流,对于iFIT目标流,收集目标流的统计数据并上报给Analyzer,去掉报文中的iFIT报文头。
· 分析器(Analyzer):负责收集入节点、中间节点、出节点上送的统计数据并完成数据的汇总和计算。
iFIT报文头是封装在业务报文中包含DeviceID、FlowID、测量周期、测量类型、是否需要测量时延、是否需要测量丢包等重要参数。其中:
· DeviceID:DeviceID用来唯一标识一台参与iFIT测量的设备,DeviceID+FlowID唯一标识一条iFIT目标流。
· FlowID:FlowID由入节点自动生成,会封装到iFIT报文头中传递给中间节点和出节点,用于在iFIT测量网络中与DeviceID一起唯一地标识一条目标流。
· 测量周期:设备按周期进行iFIT测量,从开始一次测量,到收集并上报该次测量数据的时间间隔称为一个测量周期。
· 测量类型:表示本次测量是端到端测量还是逐点测量。
iFIT以时间同步为基础。在测量开始前,要求所有参与iFIT测量的设备时间已经同步,从而确保各个设备能够基于相同的周期进行报文统计和上报。如果时间不同步,会导致iFIT计算结果不准确。分析器和iFIT设备的时间同步与否不影响计算结果,但为了便于管理和维护,建议分析器和所有iFIT设备的时间均保持同步。
PTP(Precision Time Protocol,精确时间协议)和NTP(Network Time Protocol,网络时间协议)均可用于实现设备间的时间同步。其中,PTP的时间精度可达亚微秒级,而NTP的时间精度为毫秒级。
(1) 在iFIT测量网络中,建议优先部署PTP进行时间同步,以确保更高的精度。
(2) 如果设备不支持PTP,但本端和对端设备均支持高精度NTP,请在这些设备上启用高精度NTP。
(3) 如果设备不支持PTP和高精度时间同步,请使用普通NTP。在部署普通NTP的情况下,可以支持iFIT丢包率测量,但无法进行准确的时延测量。由于时延与物理链路距离及网络状态相关,某些链路的传输时延可能小于1毫秒,使用NTP进行时间同步会影响iFIT的时延测量准确性。
关于PTP功能的具体描述和配置请参见“网络管理和监控配置指导”中的“PTP”;关于NTP功能的具体描述和配置请参见“网络管理和监控配置指导”中的“NTP”。
iFIT丢包计算依据报文守恒原理,即每个周期内、从入节点进入的报文总数应该等于出节点发送的报文总数。如果不相等,则说明目标流传输网络内存在丢包现象。
iFIT时延测量机制原理为:每个测量点会记录目标流中每个报文经过自己的时间戳t0;在下游测量点匹配该报文,并记录该报文经过自己的时间戳t1。最终两个测量点分别将两个时间戳上报给分析器,由分析器计算时延。
iFIT采用gRPC(Google Remote Procedure Call,Google远程过程调用)协议将测量数据从iFIT设备推送给iFIT分析器。
iFIT目前支持gRPC Dial-out模式,iFIT设备作为gRPC客户端,iFIT分析器作为gRPC服务器(在gRPC协议中也称为采集器)。
设备支持按照以下两个周期将测量数据从iFIT设备推送给iFIT分析器,请根据需要选择使用一种即可:
· gRPC订阅周期:如果管理员配置gRPC订阅时配置了采样周期,则不管采样路径是周期采样路径还是事件触发采样路径,设备主动和分析器建立gRPC连接后,均会按照gRPC订阅周期将设备上订阅的iFIT统计数据推送给分析器。
· iFIT测量周期:如果管理员配置gRPC订阅时未配置采样周期,且采样路径是周期采样路径,因为缺少采样周期配置,设备无法将iFIT统计数据推送给分析器;如果管理员配置gRPC订阅时未配置采样周期,且采样路径是事件触发采样路径,设备主动和分析器建立gRPC连接后,设备按照iFIT测量周期定时将设备上订阅的iFIT统计数据推送给分析器。
· iFIT的周期采样路径为ifit/flowstatistics/flowstatistic。
· iFIT的事件触发采样路径为insuitoam/measurereport(该路径包含了iFIT的测量结果)和insuitoam/flowinfo(该路径包含了iFIT流的信息)。
关于gRPC的详细介绍请参见“Telemetry配置参考”中的“gRPC”。关于iFIT采样路径的详细介绍请参见iFIT的NETCONF API文档。
下面以逐点测量场景为例,说明iFIT的工作机制。(端到端测量的流程与此类似,只是不需要部署中间节点。)
以图1-3所示组网为例,目标流传输网络中有四台设备,其中三台支持iFIT,在这三台设备上部署iFIT功能,iFIT的工作流程如下:
(1) Analyzer和所有iFIT设备之间通过PTP协议完成时间的同步。
(2) iFIT设备对目标流报文进行iFIT处理。
a. 在目标流传输网络的入接口(入节点上用户手工绑定目标流的接口),iFIT会解析流经该接口的报文,按照规则完成目标流的匹配,给目标流报文添加iFIT报文头,统计目标流报文个数,同时按周期将报文计数和时间戳等信息通过gRPC连接上报给分析器。
b. 在目标流传输网络的传输接口(在目标流传输网络中支持iFIT的设备上,目标流的流入接口和流出接口),对于包含iFIT报文头的报文,iFIT会统计这些报文的个数,同时按周期将报文计数和时间戳等信息通过gRPC连接上报给分析器。
c. 在目标流传输网络的出接口(目标流离开目标流传输网络的接口,可能为出节点上目标流的流入接口,也可能是目标流的流出接口,具体是流入接口还是流出接口不同设备支持情况不同,请以设备实际情况为准),iFIT会解析流经该接口的报文,按照规则完成目标流的匹配,对于包含iFIT报文头的报文,iFIT统计目标流报文个数,同时按周期将报文计数和时间戳等信息通过gRPC连接上报给分析器,去掉目标流报文中的iFIT报文头,继续转发。
(3) 分析器对相同周期、相同实例、相同流量进行丢包分析,计算时延。
图1-3 iFIT工作机制示意图
iFIT应用级质量测量用于测量业务流量流经传输网络时的丢包率和时延等参数,测量结果可用于诊断业务流量流经传输网络时网络的传输质量。
一个iFIT实例下只能配置一条目标流,多次配置,最后一次配置生效。
不同iFIT实例中配置的目标流的流特征不能相同,目标流的配置不能冲突(例如一条流中定义的参数完全包含另一条流中定义的参数),否则,可能会使iFIT测量结果不准确。
在配置iFIT功能时,建议先配置中间节点和出节点,最后配置入节点。以免入节点已经开始测量,中间节点和出节点上的iFIT功能还未完成配置,影响前面几个周期的测量结果。
修改iFIT实例的配置或重启入节点,入节点会给目标流重新分配FlowID,可能会导致几个周期内iFIT测量数据不准确或没有统计数据。
SRv6/G-SRv6分为SRv6/G-SRv6 TE和SRv6/G-SRv6 BE两种组网:
· 在SRv6/G-SRv6 TE组网中,SID列表中的节点上开启iFIT测量功能后,设备能进行iFIT测量。对于不在SID列表中的中间节点(中转节点),缺省情况下,即便开启iFIT测量功能,也不解析iFIT报文头,不参与iFIT测量。必须在中转节点上执行ifit enable和trace-measure per-hop命令,中转节点才会解析报文,进行iFIT测量。
· 在SRv6/G-SRv6 BE组网中,通过measure mode trace命令配置iFIT的测量类型为逐点测量时,iFIT支持在SRv6/G-SRv6转发的头节点和尾节点上生成测量数据,缺省情况下,中间节点不参与SRv6/G-SRv6处理,只执行普通的IPv6报文转发,故在中转节点上不会生成测量数据。要使中转节点也参与iFIT测量,请在中转节点上配置ifit enable和trace-measure per-hop命令。
在配置iFIT前,请完成PTP或NTP的配置,使分析器和所有iFIT设备时间同步。PTP和NTP可用于设备间时间同步,NTP精度为毫秒级,PTP可达亚微秒级。
在iFIT测量网络中:
(1) 建议优先使用PTP。
(2) 如设备不支持PTP但支持高精度NTP,请在本端和对端设备均启用高精度NTP。
(3) 如设备不支持PTP和高精度NTP,请使用普通NTP。普通NTP下,可测丢包率但时延测量不准确。
关于PTP功能的具体描述和配置请参见“网络管理和监控配置指导”中的“PTP”;关于NTP功能的具体描述和配置请参见“网络管理和监控配置指导”中的“NTP”。
完成gRPC的配置,以便iFIT设备可以将测量结果上报给分析器。gRPC的相关配置请参见“Telemetry配置指导”中的“gRPC”。
入节点配置任务如下:
· 开启iFIT功能
· 创建iFIT实例
· 配置目标流
· 配置测量点
· 配置测量类型
· 配置测量周期
· 开启iFIT测量
(1) 进入系统视图。
system-view
(2) 全局开启iFIT功能,并进入iFIT视图。如果iFIT功能已经开启,执行该命令直接进入iFIT视图。
ifit enable
缺省情况下,iFIT功能处于关闭状态。
(3) 配置iFIT功能采用的技术标准。
technical-standard { telecom | unicom }
缺省情况下,iFIT功能采用的技术标准为中国电信技术标准。
当采用端到端测量类型时,无需配置本命令,测量类型不会影响测量结果。当采用逐点测量时需要配置本命令,且参与iFIT测量的节点采用的技术标准必须相同,否则,会导致测量结果不准确。
当业务流的传输网类型为MPLS、SR-MPLS、SRv6、G-SRv6,且需要对业务流进行iFIT测量时,必须配置设备的DeviceID,且要求DeviceID在iFIT测量网络内唯一。因为,在这些类型的传输网络中,iFIT使用DeviceID来唯一标识一台设备,使用DeviceID+FlowID来唯一标识一条静态目标流及其对应的动态目标流。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 配置iFIT设备的标识。
device-id device-id
缺省情况下,未配置设备的标识。
iFIT设备的标识用于在iFIT测量网络中唯一标识一台设备,为iFIT功能的必配参数。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 创建iFIT实例并进入iFIT实例视图。如果指定的iFIT实例已存在,则直接进入该iFIT实例的视图。
instance instance-name
目标流是iFIT测量的对象,是实施测量的关键要素,每次测量前都必须在入节点配置目标流。中间节点和出节点上无需配置目标流,设备通过报文中包含的iFIT报文头自动学习到目标流。
使用本功能,可以为iFIT测量实例配置目标流的特征。根据不同的业务场景,设备支持按照以下粒度来进行iFIT测量,请根据组网需要,进行相应的配置。
· 基于五元组的测量粒度:该粒度用于测量指定业务流的通信质量,用户可以通过五元组来匹配业务流,也可以对网络中的任意业务流量进行iFIT测量。iFIT支持的所有组网均支持该测量粒度。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 进入iFIT实例视图。
instance instance-name
(4) L3VPN/EVPN L3VPN over SRv6/G-SRv6组网情况下,配置iFIT静态目标流。
¡ 基于五元组粒度的测量
(IPv4业务流)
flow unidirection source-ip { src-ip-address [ src-mask-length ] | any } destination-ip { dest-ip-address [ dest-mask-length ] | any } [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vpn-instance vpn-instance-name
(IPv6业务流)
flow unidirection source-ipv6 { src-ipv6-address [ src-prefix-length ] | any } destination-ipv6 { dest-ipv6-address [ dest-prefix-length ] | any } [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vpn-instance vpn-instance-name
缺省情况下,未配置iFIT静态目标流。
(5) EVPN VPLS over SRv6/G-SRv6组网情况下,配置iFIT静态目标流。
¡ 基于五元组粒度的测量
(IPv4业务流)
flow unidirection source-ip { src-ip-address [ src-mask-length ] | any } destination-ip { dest-ip-address [ dest-mask-length ] | any } [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vsi vsi-name
(IPv6业务流)
flow unidirection source-ipv6 { src-ipv6-address [ src-prefix-length ] | any } destination-ipv6 { dest-ipv6-address [ dest-prefix-length ] | any } [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vsi vsi-name
缺省情况下,未配置iFIT静态目标流。
(6) EVPN VPWS over SRv6/G-SRv6组网情况下,配置iFIT静态目标流。
¡ 基于五元组粒度的测量
(IPv4业务流)
flow unidirection source-ip { src-ip-address [ src-mask-length ] | any } destination-ip { dest-ip-address [ dest-mask-length ] | any } [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] xconnect-group group-name connection connection-name
(IPv6业务流)
flow unidirection source-ipv6 { src-ipv6-address [ src-prefix-length ] | any } destination-ipv6 { dest-ipv6-address [ dest-prefix-length ] | any } [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] xconnect-group group-name connection connection-name
缺省情况下,未配置iFIT静态目标流。
在入节点开启iFIT测量前,必须将iFIT目标流和接口绑定。绑定接口后,iFIT会解析流经该接口的报文,按照规则完成目标流的匹配,给目标流报文添加iFIT报文头,统计目标流报文个数,同时按周期将报文计数和时间戳等信息通过gRPC连接上报给分析器。
一个iFIT实例可以配置一个目标流匹配规则,一个实例可以和多个接口绑定,每个绑定接口会按照同一规则匹配目标流,并给目标流分配不同的FlowID,iFIT会按接口独立测量目标流的时延和丢包性能。
目前iFIT支持绑定的接口类型包括三层物理接口和三层聚合接口。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 进入iFIT实例视图。
instance instance-name
(4) 配置实例和接口的绑定关系。
bind interface interface-type interface-number
缺省情况下,iFIT目标流未绑定接口。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 进入iFIT实例视图。
instance instance-name
(4) 配置iFIT的测量类型。
measure mode { e2e | trace }
缺省情况下,iFIT的测量类型为端到端测量。
iFIT按周期统计性能参数:
· 发送端记录每个发送周期内首个iFIT报文的发送时间,并统计每个发送周期内接口发送的iFIT报文个数。发送周期=测量周期。
· 接收端记录每个接收周期内首个iFIT报文的接收时间,并统计每个接收周期内接口接收的iFIT报文个数。由于网络存在延时,为了最大程度地避免网络延时与乱序对统计结果的不良影响,接收周期=(1+1/3)个测量周期。
如果入节点到出节点的网络传输时延较大,大于1/3个测量周期,例如将测量周期配置为1秒,而网络传输时延大于1/3秒(333毫秒),则可能会影响iFIT丢包统计结果的准确性,因为iFIT会将超过接收周期到达的报文认定为丢包。此时,可以将测量周期修改为一个更大的值。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 进入iFIT实例视图。
instance instance-name
(4) 配置iFIT实例的测量周期。
period period
缺省情况下,iFIT实例的测量周期为30秒。
目前,iFIT可以测量丢包和时延参数。用户可以同时测量这两个性能参数,也可以根据需要选择其中一项进行测量。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 进入iFIT实例视图。
instance instance-name
(4) 使能iFIT统计实例的测量功能。
measure enable
缺省情况下,iFIT实例的测量功能处于关闭状态。
当采用端到端测试类型时,无需部署中间节点;当采用逐点测试类型时,需要部署中间节点。
中间节点和出节点上支持的配置完全相同,包括:
· 开启iFIT功能
· (可选)管理动态目标流
(1) 进入系统视图。
system-view
(2) 使能iFIT功能并进入iFIT视图。
ifit enable
缺省情况下,iFIT功能处于关闭状态。
(3) 配置iFIT功能采用的技术标准。
technical-standard { telecom | unicom }
缺省情况下,iFIT功能采用的技术标准为中国电信技术标准。
当采用端到端测量类型时,无需配置本命令,测量类型不会影响测量结果。当采用逐点测量时需要配置本命令,且参与iFIT测量的节点采用的技术标准必须相同,否则,会导致测量结果不准确。
(4) (可选)在SRv6隧道的中转节点上开启iFIT测量。
trace-measure per-hop [ be | te ]
缺省情况下,SRv6隧道的中转节点上的iFIT测量处于关闭状态。
在SRv6 TE policy组网中,如果因为某些特殊配置(例如psp倒数第二跳弹出等场景)导致后续节点没有SRH头,此时若要使后续中转节点强制解析iFIT头进行iFIT测量,则需要在后续中转节点上配置trace-measure per-hop be而不是trace-measure per-hop te命令。
(1) 进入系统视图。
system-view
(2) 进入iFIT视图。
ifit enable
(3) 配置动态目标流的老化参数。
dynamic-flow aging-time multi-value [ threshold-percent threshold-percent ]
缺省情况下,iFIT动态目标流的老化时间是周期的10倍。但是不能小于5分钟。
(4) 删除动态目标流。
delete dynamic-flow { all | device-id device-id flow-id flow-id }
在完成上述配置后,在任意视图下执行display命令可以显示配置后iFIT的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令清除iFIT的测量信息。
表2-1 iFIT显示和维护
操作 |
命令 |
显示iFIT动态目标流的相关信息 |
display ifit flow dynamic [ device-id device-id flow-id flow-id ] |
显示iFIT静态目标流的相关信息 |
display ifit flow static [ device-id device-id flow-id flow-id ] |
显示iFIT目标流的全局信息 |
display ifit global-information |
显示iFIT实例相关信息 |
display ifit instance [ instance-name ] |
显示iFIT动态目标流最近10个周期生成的iFIT测量信息 |
display ifit statistic device-id device-id flow-id flow-id [ verbose ] |
清除iFIT动态目标流最近10个周期生成的iFIT测量信息 |
reset ifit statistic [ device-id device-id flow-id flow-id | instance instance-name] |
如图2-1所示,核心网为IPv6网络,私网为IPv4网络,在IPv6网络中PE设备之间部署MPLS L3VPN over SRv6 BE,通过SRv6隧道传递VPNv4数据。
· CE 1和CE 2均属于VPN 1。
· CE与PE之间配置EBGP交换VPN路由信息。
· 同一自治系统内的PE设备之间运行IS-IS实现IPv6网络互通,配置MP-IBGP交换VPNv4路由信息。
· 现需要:测量流量在经过PE 1和PE 2之间VPN 1的隧道时是否有丢包,以及时延大小。
图2-1 IPv4 L3VPN over SRv6组网情况下进行iFIT统计组网图
(1) 完成IPv4 L3VPN over SRv6网络的搭建,具体配置过程请参见“Segment Routing配置指导”中的“IP L3VPN over SRv6”,配置过程略。
(2) 配置PTP或NTP基本功能,实现PE 1和PE 2之间的时钟同步,具体配置过程略。PTP和NTP均可用于设备间时间同步,NTP精度为毫秒级,PTP可达亚微秒级。
在iFIT测量网络中:
a. 建议优先使用PTP。
b. 如设备不支持PTP但支持高精度NTP,请在本端和对端设备均启用高精度NTP。
c. 如设备不支持PTP和高精度NTP,请使用普通NTP。在普通NTP下,可测丢包率但时延测量不准确。
详细的PTP功能及配置请参见“网络管理和监控配置指导”中的“PTP”;详细的NTP功能及配置请参见“网络管理和监控配置指导”中的“NTP”。
(1) 配置gRPC
# 开启gRPC功能。
<PE1> system-view
[PE1] grpc enable
# 创建传感器组test,并添加采样路径ifit/flowstatistics/flowstatistic。
[PE1] telemetry
[PE1-telemetry] sensor-group test
[PE1-telemetry-sensor-group-test] sensor path ifit/flowstatistics/flowstatistic depth 2
[PE1-telemetry-sensor-group-test] quit
# 创建目标组collector1,并配置IP地址为10::10、端口号为50050的采集器。
[PE1-telemetry] destination-group collector1
[PE1-telemetry-destination-group-collector1] ipv6-address 10::10 port 50050
[PE1-telemetry-destination-group-collector1] quit
# 创建订阅A,配置关联传感器组为test,关联目标组为collector1。
[PE1-telemetry] subscription A
[PE1-telemetry-subscription-A] sensor-group test sample-interval 5
[PE1-telemetry-subscription-A] destination-group collector1
[PE1-telemetry-subscription-A] quit
[PE1-telemetry] quit
(2) 配置iFIT
# 开启iFIT功能。
[PE1] ifit enable
[PE1-ifit] device-id 1
# 配置iFIT目标流参数:测量源端1.1.1.1/24到目的端1.1.2.1/24的业务流在VPN实例vpn1内传输的性能参数。
[PE1-ifit] encapsulation nexthop-ipv6 3::3
[PE1-ifit] instance a
[PE1-ifit-instance-a] flow unidirection source-ip 1.1.1.1 24 destination-ip 1.1.2.1 24 vpn-instance vpn1
# 将目标流和接口Ten-GigabitEthernet2/0/0绑定。
[PE1-ifit-instance-a] bind interface ten-gigabitethernet 2/0/0
# 配置测量周期为10秒。
[PE1-ifit-instance-a] period 10
# 开启iFIT测量。
[PE1-ifit-instance-a] measure enable
[PE1-ifit-instance-a] quit
[PE1-ifit] quit
(1) 配置gRPC
配置步骤同PE 1的gPRC配置。
(2) 开启iFIT测量
<PE2> system-view
[PE2] ifit enable
(1) 在PE1上查看iFIT统计结果。
[PE1-ifit-instance-a] display ifit statistic device-id 1 flow-id 2
Period ID Direction PktCount Timestamp(sec, nsec) Interface
163059918 Ingress 4124 1630599180, 1889782 XGE2/0/0
163059919 Ingress 4124 1630599190, 1901494 XGE2/0/0
163059920 Ingress 4124 1630599200, 1912118 XGE2/0/0
(2) 在PE2上查看iFIT统计结果。
[PE2] display ifit statistic device-id 1 flow-id 2
Period ID Direction PktCount Timestamp(sec, nsec) Interface
163059918 Egress 4124 1630599180, 1948185 XGE2/0/0
163059919 Egress 4124 1630599190, 1959405 XGE2/0/0
163059920 Egress 4120 1630599200, 1968503 XGE2/0/0
(3) 分析器上查看iFIT统计结果,在163059920号周期有丢包。
如图2-2所示,核心网为IPv6网络,在IPv6网络中PE设备之间部署EVPN L3VPN over SRv6,通过SRv6隧道传递EVPN数据。
· CE 1和CE 2均属于VPN 1。
· CE与PE之间配置EBGP交换VPN路由信息。
· 同一自治系统内的PE设备之间运行IS-IS实现IPv6网络互通,配置MP-IBGP交换EVPN路由信息。
· 现需要:测量流量在经过SRv6隧道时是否有丢包,以及时延大小。
图2-2 IPv6 EVPN L3VPN over SRv6组网情况下进行iFIT统计组网图
(1) 完成IPv6 EVPN L3VPN over SRv6网络的搭建,具体配置过程请参见“Segment Routing配置指导”中的“EVPN L3VPN over SRv6”,配置过程略。
(2) 配置PTP或NTP基本功能,实现PE 1和PE 2之间的时钟同步,具体配置过程略。PTP和NTP均可用于设备间时间同步,NTP精度为毫秒级,PTP可达亚微秒级。
在iFIT测量网络中:
a. 建议优先使用PTP。
b. 如设备不支持PTP但支持高精度NTP,请在本端和对端设备均启用高精度NTP。
c. 如设备不支持PTP和高精度NTP,请使用普通NTP。在普通NTP下,可测丢包率但时延测量不准确。
详细的PTP功能及配置请参见“网络管理和监控配置指导”中的“PTP”;详细的NTP功能及配置请参见“网络管理和监控配置指导”中的“NTP”。
(1) 配置gRPC
# 开启gRPC功能。
<PE1> system-view
[PE1] grpc enable
# 创建传感器组test,并添加采样路径ifit/flowstatistics/flowstatistic。
[PE1] telemetry
[PE1-telemetry] sensor-group test
[PE1-telemetry-sensor-group-test] sensor path ifit/flowstatistics/flowstatistic depth 2
[PE1-telemetry-sensor-group-test] quit
# 创建目标组collector1,并配置IP地址为10::10、端口号为50050的采集器。
[PE1-telemetry] destination-group collector1
[PE1-telemetry-destination-group-collector1] ipv6-address 10::10 port 50050
[PE1-telemetry-destination-group-collector1] quit
# 创建订阅A,配置关联传感器组为test,关联目标组为collector1。
[PE1-telemetry] subscription A
[PE1-telemetry-subscription-A] sensor-group test sample-interval 5
[PE1-telemetry-subscription-A] destination-group collector1
[PE1-telemetry-subscription-A] quit
[PE1-telemetry] quit
(2) 配置iFIT
# 开启iFIT功能。
[PE1] ifit enable
[PE1-ifit] device-id 1
# 配置iFIT目标流参数:测量源端2001::1到目的端2002::1的业务流在VPN实例vpn1内传输的性能参数。
[PE1-ifit] encapsulation nexthop-ipv6 3::3
[PE1-ifit] instance a
[PE1-ifit-instance-a] flow unidirection source-ipv6 2001::1 destination-ipv6 2002::1 vpn-instance vpn1
# 将目标流和接口Ten-GigabitEthernet2/0/0绑定。
[PE1-ifit-instance-a] bind interface ten-gigabitethernet 2/0/0
# 配置测量周期为10秒。
[PE1-ifit-instance-a] period 10
# 开启iFIT测量。
[PE1-ifit-instance-a] measure enable
[PE1-ifit-instance-a] quit
[PE1-ifit] quit
(1) 配置gRPC
配置步骤同PE 1上的gPRC配置。
(2) 开启iFIT测量
<PE2> system-view
[PE2] ifit enable
(1) 在PE1上查看iFIT统计结果。
[PE1-ifit-instance-a] display ifit statistic device-id 1 flow-id 2
Period ID Direction PktCount Timestamp(sec, nsec) Interface
163059918 Ingress 4124 1630599180, 1889782 XGE2/0/0
163059919 Ingress 4124 1630599190, 1901494 XGE2/0/0
163059920 Ingress 4124 1630599200, 1912118 XGE2/0/0
(2) 在PE2上查看iFIT统计结果。
[PE2] display ifit statistic device-id 1 flow-id 2
Period ID Direction PktCount Timestamp(sec, nsec) Interface
163059918 Egress 4124 1630599180, 1948185 XGE2/0/0
163059919 Egress 4124 1630599190, 1959405 XGE2/0/0
163059920 Egress 4120 1630599200, 1968503 XGE2/0/0
(3) 在分析器上查看iFIT统计结果,在163059920号周期有丢包。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!