Telemetry 流量统计分析(telemetry采集流量精度)

网友投稿 1385 2022-09-11


Telemetry 流量统计分析(telemetry采集流量精度)

Telemetry简介

定义

Telemetry是一项远程的从物理设备或虚拟设备上高速采集数据的技术。设备通过推模式(Push Mode)周期性的主动向采集器上送设备的接口流量统计、CPU或内存数据等信息,相对传统拉模式(Pull Mode)的一问一答式交互,提供了更实时更高速的数据采集功能。

Telemetry与传统网络监控方式的对比

Telemetry原理

Telemetry静态订阅

是指设备作为客户端,采集器作为服务端,由设备主动发起到采集器的连接,进行数据采集上送。

狭义的Telemetry是一个设备特性,广义的Telemetry是一个闭环的自动化运维系统,由网络设备、采集器、分析器和控制器等部件组成,分为网管侧和设备侧,如图1所示。

Telemetry网管侧和设备侧协同运作,完成整体的Telemetry静态订阅需要五个操作步骤顺序执行:

静态配置:控制器通过命令行配置支持Telemetry的设备,订阅数据源,完成数据采集。 推送采样数据:网络设备依据控制器的配置要求,将采集完成的数据,上报给采集器进行接收和存储。 读取数据:分析器读取采集器存储的采样数据。 分析数据:分析器分析读取到的采样数据,并将分析结果发给控制器,便于控制器对网络进行配置管理,及时调优网络。

调整网络参数:控制器将网络需要调整的配置下发给网络设备;配置下发生效后,新的采样数据又会上报到采集器,此时Telemetry网管侧可以分析调优后的网络效果是否符合预期,直到调优完成后,整个业务流程形成闭环。

Telemetry动态订阅的业务流程

Telemetry动态订阅是指设备作为服务端,采集器作为客户端发起到设备的连接,由设备进行数据采集上送。

狭义的Telemetry是一个设备特性,广义的Telemetry是一个闭环的自动化运维系统,由网络设备、采集器、分析器和控制器等部件组成,分为网管侧和设备侧,如图1所示。

Telemetry网管侧和设备侧协同运作,完成整体的Telemetry动态订阅需要五个操作步骤顺序执行:

Telemetry关键技术

对于Telemetry设备侧:Telemetry=原始数据+数据模型+编码格式+传输协议;对于Telemetry网管侧:Telemetry=收集系统+存储系统+应用分析系统。

原始数据

Telemetry采样的原始数据可来自网络设备的转发面、控制面和管理面,目前支持采集设备的接口流量统计、CPU或内存数据等信息。

数据模型

Telemetry基于YANG模型组织采集数据。

YANG是一种数据建模语言,用于设计可以为各种传输协议操作的配置数据模型、状态数据模型、远程调用模型和通知机制等。

编码格式

支持GPB(Google Protocol Buffer)编码格式

GPB编码格式,是一种与语言无关、平台无关、扩展性好的用于通信协议、数据存储的序列化结构数据格式。

Telemetry利用GPB编码格式(GPB编码格式的文件名后缀为.proto),提供一种灵活、高效、自动序列化结构数据的机制,属于二进制编码,性能好,效率高。

支持JSON(JavaScript Object Notation)编码格式

传输协议

支持GRPC协议(Google Remote Procedure Call Protocol)

GRPC协议是谷歌发布的一个基于HTTP2协议承载的高性能、通用的RPC开源软件框架。通信双方都基于该框架进行二次开发,从而使得通信双方聚焦在业务,无需关注由GRPC软件框架实现的底层通信。

几类“.proto”文件的介绍:

huawei-grpc-dialout.proto文件是RPC头文件。设备作为客户端对外推送数据时,该文件定义了RPC接口,其内容及含义如下表所示。// huawei-grpc-dialout.proto syntax = "proto3"; //proto版本定义为v3版本。 package huawei_dialout; //本包名称为huawei_dialout。 service gRPCDataservice { //服务名称为gRPCDataservice。 rpc dataPublish(stream serviceArgs) returns(stream serviceArgs) {}; //方法为dataPublish,双向流,提供数据推送方法。入参是serviceArgs数据流。 } message serviceArgs { //消息格式描述。 int64 ReqId = 1; //请求ID,GPB编码时编号为1。 bytes data = 2; //承载的数据,GPB编码时编号为2,由huawei-telemetry.proto解释。 string errors = 3; //产生错误时的描述信息,GPB编码时编号为3。 } huawei-grpc-dialin.proto文件是RPC头文件。设备作为服务端对外推送数据时,该文件定义了RPC接口,其内容及含义如下表所示。//huawei-grpc-dialin.proto syntax = "proto3"; //proto版本定义为v3版本。 package huawei_dialin; //本包名称为huawei_dialin。 service gRPCConfigOper { //服务名称为gRPCConfigOper。 rpc Subscribe(SubsArgs) returns(stream SubsReply) {}; //方法为Subscribe,服务端流模式,提供动态订阅方法。入参SubsArgs包含订阅的参数。 rpc Cancel(CancelArgs) returns(CancelReply) {}; //方法为Cancel,一问一答模式,提供取消动态订阅方法。入参CancelArgs包含取消订阅的参数。 } message Path { //Path消息结构。 string path = 1; //订阅的sensor-path。 } message SubsArgs { //订阅请求参数。 uint64 request_id = 1; //请求ID,由调用者传入。 uint32 encoding = 2; //编码类型。0:GPB编码;1:JSON编码。 repeated Path path = 5; //订阅的path结构。 uint64 sample_interval = 6; //采样周期。 uint64 heartbeat_interval = 7; //冗余抑制的抑制周期,当suppress_redundant为1时才生效。 bool suppress_redundant = 8; //冗余抑制,当数据内容不变时,抑制采样数据上报。0:不启用;1:启用。 } message SubsReply { //订阅响应参数。 uint32 subscription_id = 1; //成功返回订阅ID,失败返回0。 uint64 request_id = 2; //带回对应订阅请求的request_id。 string response_code = 3; //返回码,成功为200。 bytes message = 4; //错误描述。成功时后续的rpc中此字段将流式返回上送的数据。 } message CancelArgs { //取消订阅请求参数。 uint64 request_id = 1; //请求ID,由调用者传入。 uint32 subscription_id = 2; //需要取消的订阅ID。 } message CancelReply { //取消订阅响应参数。 uint64 request_id = 1; //请求ID,由调用者传入。 string response_code = 2; //返回码,成功为200。 string message = 3; //错误描述。 } huawei-telemetry.proto文件是Telemetry头文件,定义了Telemetry采样数据上送时的数据头,包括采样路径,采样时间戳等重要信息。该文件的内容及含义如下表所示。//huawei-telemetry.proto syntax = "proto3"; //proto版本定义为v3版本。 package telemetry; //本包名称为telemetry。 message Telemetry { //Telemetry消息结构定义。 string node_id_str = 1; //设备名称。 string subscription_id_str = 2; //订阅名称,静态配置订阅时的订阅名称,GPB编码时编码为2。 string sensor_path = 3; //订阅路径,GPB编码时编码为3。 string proto_path = 13; //采样路径path对应在proto文件中的message路径。 uint64 collection_id = 4; //标识采样轮次,GPB编码时编码为4。 uint64 collection_start_time = 5;//标识采样轮次开始时间,GPB编码时编码为5。 uint64 msg_timestamp = 6; //生成本消息的时间戳,GPB编码时编码为6。 TelemetryGPBTable data_gpb = 7; //承载的数据由TelemetryGPBTable定义,GPB编码时编码为7。 uint64 collection_end_time = 8; //标识采样轮次结束时间,GPB编码时编码为8。 uint32 current_period = 9; //采样精度,单位是毫秒,GPB编码时编码为9。 string except_desc = 10; //异常描述信息,采样异常时用于上报异常信息,GPB编码时编码为10。 string product_name = 11; //产品名称。 enum Encoding { Encoding_GPB = 0; //表示GPB数据编码格式。 Encoding_JSON = 1; //表示JSON数据编码格式。 }; Encoding encoding =12; //数据编码格式。为GPB时,data_gpb字段有效,否则data_str字段有效。 string data_str = 14; //数据编码非GPB时有效,否则为空。 } message TelemetryGPBTable { //TelemetryGPBTable消息结构定义。 repeated TelemetryRowGPB row = 1; //数组定义,标识数据是TelemetryRowGPB结构的重复,GPB编码时编码为1。 } message TelemetryRowGPB { uint64 timestamp = 1; //采样当前实例的时间戳,GPB编码时编码为1。 bytes content = 11; //承载的采样实例数据,GPB编码时编码为11,需要结合sensor_path字段,才可以判断此处会以哪个proto文件编码。 } 业务数据的文件:描述具体的业务数据格式。具体请参见Telemetry支持的采样路径。

推模式

Telemetry通过推模式,让网络设备周期性自动推送数据给网管侧,避免重复查询,提升监控性能,推送过程如图2所示。

Telemetry支持的采样路径

Telemetry技术目前支持特定的采样传感器路径采集指定的数据信息。

Telemetry支持的采样路径如表1所示。·当前设备只支持最多带5个采集条件。查询子节点时,父节点的条件必须带全,子节点的条件可以根据实际情况选取一个或多个或不选。

表1 Telemetry支持的采样路径
采样路径类型 采样路径 采样数据信息 采集模式 采集条件及示例 最小采样精度(ms) YANG文件 GPB编码文件名称 是否支持JSON编码格式
告警 huawei-sem:hwCPUUtilizationRisingAlarm CPU使用率过高告警。 - - - huawei-sem.yang huawei-sem.proto
huawei-sem:hwCPUUtilizationResume CPU恢复告警。 - - -
huawei-sem:hwStorageUtilizationRisingAlarm 内存使用率过高告警。 - - -
huawei-sem:hwStorageUtilizationResume 内存恢复告警。 - - -
采样 huawei-fibstatus:fibstatus/ipRouteEntryCounts/ipRouteEntryCount IPv4路由使用情况。 全量采集 - 10000 huawei-fibstatus.yang huawei-fibstatus.proto
huawei-fibstatus:fibstatus/ipRouteResources/ipRouteResource IPv4路由规格。 全量采集 - 10000
huawei-fibstatus:fibstatus/ipv6RouteEntryCounts/ipv6RouteEntryCount IPv6路由使用情况。 全量采集 - 10000
huawei-fibstatus:fibstatus/ipv6RouteResources/ipv6RouteResource IPv6路由规格。 全量采集 - 10000
huawei-devm:devm/cpuInfos/cpuInfo CPU信息。 全量采集 - 10000 huawei-devm.yang huawei-devm.proto
huawei-devm:devm/memoryInfos/memoryInfo 内存信息。 全量采集 - 10000
huawei-devm:devm/ports/port/opticalInfo 接口上的光模块信息。 全量采集或条件采集 采集条件:position
示例:huawei-devm:devm/ports/port[position="10GE1/0/1"]/opticalInfo 30000
huawei-mac:mac/bdMacTotalNumbers/bdMacTotalNumber
说明: CE6810EI、CE6810LI、CE6850EI不支持该采样路径。 BD MAC地址总数量信息。 全量采集或条件采集 采集条件:bdId
示例:huawei-mac:mac/bdMacTotalNumbers/bdMacTotalNumber[bdId="2018"] 10000 huawei-mac.yang huawei-mac.proto
huawei-mac:mac/macAddrSummarys/macAddrSummary MAC地址统计信息。 全量采集或条件采集 采集条件:slotId
示例:huawei-mac:mac/macAddrSummarys/macAddrSummary[slotId="1"] 10000
huawei-ifm:ifm/interfaces/interface/ifStatistics 接口统计信息。 全量采集或条件采集 采集条件:ifName
示例:huawei-ifm:ifm/interfaces/interface[ifName="10GE1/0/1"]/ifStatistics 1000 huawei-ifm.yang huawei-ifm.proto
huawei-qos:qos/qosPortBufUsageStats/qosPortBufUsageStat 接口缓存使用信息。 全量采集或条件采集 采集条件:slotId;ifName
示例:huawei-qos:qos/qosPortBufUsageStats/qosPortBufUsageStat[slotId="1",ifName="10GE1/0/1"] CE5880EI、CE6880EI:2其他形态:100 huawei-qos.yang huawei-qos.proto
huawei-qos:qos/qosQueueBufUsageStats/qosQueueBufUsageStat 队列缓存使用信息。 全量采集或条件采集 采集条件:slotId;ifName;queueId
示例:huawei-qos:qos/qosQueueBufUsageStats/qosQueueBufUsageStat[slotId="1",ifName="10GE1/0/1",queueId="0"] CE5880EI、CE8860EI、CE8850EI、CE6880EI:2其他形态:100 huawei-qos.yang
huawei-qos:qos/qosCoreQueBufStats/qosCoreQueBufStat
说明: CE5880EI、CE6870EI、CE6875EI、CE6880EI不支持该采样路径。 芯片缓存使用信息。 全量采集 - 100 huawei-qos.yang
huawei-qos:qos/qosQueueDropStats/qosQueueDropStat 队列缓存丢包计数。 全量采集或条件采集 采集条件:slotId;ifName
示例:huawei-qos:qos/qosQueueDropStats/qosQueueDropStat[slotId="1",ifName="10GE1/0/1"] CE5880EI、CE6880EI:2其他形态:100 huawei-qos.yang
huawei-qos:qos/qosIngPortDropStats/qosIngPortDropStat
说明: 仅CE6857EI、CE6860EI、CE6865EI、CE8850EI、CE8860EI、CE8861EI、CE8868EI支持该采样路径。 接口入方向丢弃计数。 全量采集或条件采集 采集条件:ifName
示例:huawei-qos:qos/qosIngPortDropStats/qosIngPortDropStat[ifName="10GE1/0/1"] 100 huawei-qos.yang
huawei-qos:qos/qosIngPortQueBufStats/qosIngPortQueBufStat
说明: 仅CE6857EI、CE6860EI、CE6865EI、CE8850EI、CE8860EI、CE8861EI、CE8868EI支持该采样路径。 接口入方向队列的缓存使用情况。 全量采集或条件采集 采集条件:slotId;ifName;queueId
示例:huawei-qos:qos/qosIngPortQueBufStats/qosIngPortQueBufStat[slotId="1",ifName="10GE1/0/1",queueId="0"] 100 huawei-qos.yang
huawei-qos:qos/qosPortPfcStats/qosPortPfcStat
说明: CE5880EI、CE6880EI不支持该采样路径。 接口PFC反压帧统计信息。 全量采集或条件采集 采集条件:ifName
示例:huawei-qos:qos/qosPortPfcStats/qosPortPfcStat[ifName="10GE1/0/1"] 100 huawei-qos.yang
huawei-qos:qos/qosGlobalCfgs/qosCaptureDropstats/qosCaptureDropstat
说明: 仅CE6857EI、CE6865EI、CE8850-64CQ-EI、CE8861EI、CE8868EI支持该采样路径。 丢弃报文捕获信息。 全量采集 - 10000 huawei-qos.yang
huawei-qos:qos/qosQueueHdrmStats/qosQueueHdrmStat
说明: CE5880EI、CE6870EI、CE6875EI、CE6880EI不支持该采样路径。 队列headroom缓存使用信息。 全量采集或条件采集 采集条件:ifName;queueId
示例:huawei-qos:qos/qosQueueHdrmStats/qosQueueHdrmStat[ifName="10GE1/0/1",queueId="0"] 100 huawei-qos.yang
huawei-qos:qos/qosPortEcnStats/qosPortEcnStat
说明: 仅CE6857EI、CE6865EI、CE6860EI、CE8850EI、CE8860EI、CE8861EI、CE8868EI支持该采样路径。 基于端口的ECN统计。 全量采集或条件采集 采集条件:slotId;ifName
示例:huawei-qos:qos/qosPortEcnStats/qosPortEcnStat[slotId="1",ifName="10GE1/0/1"] 100 huawei-qos.yang
huawei-qos:qos/qosAclResourceUsageStats/qosAclResourceUsageStat ACL资源使用信息。 全量采集 - 10000 huawei-qos.yang
huawei-qos:qos/qosBankResourceUsageStats/qosBankResourceUsageStat Bank资源使用信息。 全量采集 - 10000 huawei-qos.yang
openconfig-interfaces:interfaces/interface/subinterfaces/subinterface/state/counters
说明: CE6880EI和CE5880EI不支持该采样路径。 二层子接口统计信息。 全量采集 - 1000 openconfig-interfaces.yang openconfig-interfaces.proto
openconfig-interfaces:interfaces/interface/state/counters 物理接口统计信息。 全量采集或条件采集 采集条件:name
示例:openconfig-interfaces:interfaces/interface[name="10GEGE1/0/1"]/state/counters 1000 openconfig-interfaces.yang
采样路径对应的详细采样指标如表2所示。
采样路径 采样路径下的节点 采集数据指标 是否支持自定义阈值
huawei-fibstatus:fibstatus/ipRouteEntryCounts/ipRouteEntryCount slot 单板号。
***Name ***实例。
entryCount IPv4路由使用数量。
huawei-fibstatus:fibstatus/ipRouteResources/ipRouteResource slot 单板号。
total IPv4路由规格。
used IPv4路由使用总数量。
huawei-fibstatus:fibstatus/ipv6RouteEntryCounts/ipv6RouteEntryCount slot 单板号。
***Name ***实例。
entryCount IPv6路由使用数量。
huawei-fibstatus:fibstatus/ipv6RouteResources/ipv6RouteResource slot 单板号。
total IPv6路由规格。
totalMask64 掩码长度64位及以下IPv6路由规格。
totalMask65To127 长掩码IPv6路由规格。
totalMask128 掩码长度128位IPv6路由规格。
used IPv6路由使用总数量。
huawei-devm:devm/cpuInfos/cpuInfo position 单板的位置信息。
entIndex 单板的索引号信息。
systemCpuUsage CPU占用率信息,单位是%。
ovloadThreshold 过载阈值信息,单位是%。
unovloadThreshold 去过载阈值信息,单位是%。
interval CPU过载检测周期信息,单位是分钟。
huawei-devm:devm/memoryInfos/memoryInfo position 单板的位置信息。
entIndex 单板的索引号信息。
osMemoryTotal 系统内存总量信息,单位是KB。
osMemoryUse 系统已用内存数量,单位是KB。
osMemoryFree 系统内存剩余量,单位是KB。
osMemoryUsage 系统内存占用率信息,单位是%。
doMemoryTotal 通用路由平台内存总量信息,单位是KB。
doMemoryUse 通用路由平台内存已用数量信息,单位是KB。
doMemoryFree 通用路由平台内存剩余量,单位是KB。
doMemoryUsage 通用路由平台内存占用率,单位是%。
simpleMemoryTotal Simple内存总量,单位是KB。
simpleMemoryUse Simple内存已用数量信息,单位是KB。
simpleMemoryFree Simple内存剩余量,单位是KB。
simpleMemoryUsage Simple内存占用率,单位是%。
ovloadThreshold 过载阈值,单位是%。
unovloadThreshold 去过载阈值,单位是%。
huawei-devm:devm/ports/port/opticalInfo biasCurrent 光模块当前电流。
manuDate 光模块生产日期。
position 光模块所在端口名称。
rxPower 当前光模块接收功率。
temperature 当前光模块温度。
txPower 当前光模块发送功率。
voltage 当前光模块电压。
huawei-mac:mac/bdMacTotalNumbers/bdMacTotalNumber
说明: CE6810EI、CE6810LI、CE6850EI不支持该采样路径。 bdId BD标识。
number MAC地址总数量。
huawei-mac:mac/macAddrSummarys/macAddrSummary slotId 单板号。
totalNum MAC地址总数量。
blackholeNum 黑洞MAC地址数量。
staticNum 静态MAC地址数量。
dynLocalNum 本槽位学习到的MAC地址表项总数。
dynRemote 其他槽位学习到的MAC地址表项同步到本槽位的总数。
dynTrunk 所有Trunk接口学到的动态MAC地址表项总数。
oamNum OAM类型MAC地址表项的总数。
stickyNum Sticky类型MAC地址表项的总数。
securityNum 安全动态MAC地址表项的总数。
authenNum 认证类型MAC地址表项的总数。
guestNum 加入Guest VLAN的接口学习到的MAC地址表项的总数。
muxNum 加入MUX VLAN的接口学习到的MAC地址表项的总数。
tunnelNum 隧道类型MAC地址表项的总数。
snoopingNum Snooping类型MAC地址表项的总数。
evnNum EVN类型MAC地址表项的总数。
ovsdbNum OVSDB类型MAC地址表项的总数。
capacity MAC地址表容量。
huawei-ifm:ifm/interfaces/interface/ifStatistics sendByte 发送的正确字节数,单位是Byte。
sendPacket 发送的正确报文数,包括单播、组播、广播。
sendMutiPacket 发送的正确组播报文。
sendBroadPacket 发送的正确广播报文。
sendUniPacket 发送的正确单播报文。
receiveByte 接收的正确字节数,单位是Byte。
receivePacket 接收的正确报文数,包括单播、组播、广播。
rcvMutiPacket 接收的正确组播报文。
rcvBroadPacket 接收的正确广播报文。
rcvUniPacket 接收的正确单播报文。
rcvDropPacket 接收的丢弃报文数。
rcvErrorPacket 接收的错误报文数。
sendDropPacket 发送的丢弃报文数。
sendErrorPacket 发送的错误报文数。
huawei-qos:qos/qosPortBufUsageStats/qosPortBufUsageStat currentUsed 已使用的缓存,单位是字节。
ifName 接口名称。
peakUsed 已使用缓存的峰值,单位是字节。
slotId 设备ID。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosQueueBufUsageStats/qosQueueBufUsageStat currentUsed 已使用的缓存,单位是字节。
ifName 接口名称。
peakUsed 已使用缓存的峰值,单位是字节。
queueId 队列编号。
slotId 设备ID。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosCoreQueBufStats/qosCoreQueBufStat
说明: CE5880EI、CE6870EI、CE6875EI、CE6880EI不支持该采样路径。 coreId 转发核编号。
currentPercent 已使用的共享缓存占总共享缓存的百分比。
currentUsedByte 已使用的共享缓存,单位是字节。
currentUsedCell 已使用的共享缓存,单位是cell。
slotId 设备ID。
totalBufByte 总共享缓存,单位是字节。
totalBufCell 总共享缓存,单位是cell。
unitId 芯片编号。
huawei-qos:qos/qosQueueDropStats/qosQueueDropStat ifName 接口名称。
queue0DropBytes 0号队列丢弃的字节数。
queue0DropPackets 0号队列丢弃的报文数。
queue1DropBytes 1号队列丢弃的字节数。
queue1DropPackets 1号队列丢弃的报文数。
queue2DropBytes 2号队列丢弃的字节数。
queue2DropPackets 2号队列丢弃的报文数。
queue3DropBytes 3号队列丢弃的字节数。
queue3DropPackets 3号队列丢弃的报文数。
queue4DropBytes 4号队列丢弃的字节数。
queue4DropPackets 4号队列丢弃的报文数。
queue5DropBytes 5号队列丢弃的字节数。
queue5DropPackets 5号队列丢弃的报文数。
queue6DropBytes 6号队列丢弃的字节数。
queue6DropPackets 6号队列丢弃的报文数。
queue7DropBytes 7号队列丢弃的字节数。
queue7DropPackets 7号队列丢弃的报文数。
slotId 设备ID。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosIngPortDropStats/qosIngPortDropStat
说明: 仅CE6857EI、CE6860EI、CE6865EI、CE8850EI、CE8860EI、CE8861EI、CE8868EI支持该采样路径。 dropBytes 丢弃的字节数。
dropPackets 丢弃的报文数。
ifName 接口名称。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosIngPortQueBufStats/qosIngPortQueBufStat
说明: 仅CE6857EI、CE6860EI、CE6865EI、CE8850EI、CE8860EI、CE8861EI、CE8868EI支持该采样路径。 currentGuarantee 当前已使用的Guaranteed缓存。
ifName 接口名称。
queueId 队列编号。
slotId 设备ID。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosPortPfcStats/qosPortPfcStat
说明: CE5880EI、CE6880EI不支持该采样路径。 ifName 接口名称。
queue0DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 0号队列PFC死锁监控次数。
queue0DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 0号队列PFC死锁恢复次数。
queue0ReceiveFrames 0号队列接收的PFC反压帧数。
queue0TransmitFrames 0号队列发送的PFC反压帧数。
queue1DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 1号队列PFC死锁监控次数。
queue1DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 1号队列PFC死锁恢复次数。
queue1ReceiveFrames 1号队列接收的PFC反压帧数。
queue1TransmitFrames 1号队列发送的PFC反压帧数。
queue2DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 2号队列PFC死锁监控次数。
queue2DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 2号队列PFC死锁恢复次数。
queue2ReceiveFrames 2号队列接收的PFC反压帧数。
queue2TransmitFrames 2号队列发送的PFC反压帧数。
queue3DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 3号队列PFC死锁监控次数。
queue3DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 3号队列PFC死锁恢复次数。
queue3ReceiveFrames 3号队列接收的PFC反压帧数。
queue3TransmitFrames 3号队列发送的PFC反压帧数。
queue4DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 4号队列PFC死锁监控次数。
queue4DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 4号队列PFC死锁恢复次数。
queue4ReceiveFrames 4号队列接收的PFC反压帧数。
queue4TransmitFrames 4号队列发送的PFC反压帧数。
queue5DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 5号队列PFC死锁监控次数。
queue5DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 5号队列PFC死锁恢复次数。
queue5ReceiveFrames 5号队列接收的PFC反压帧数。
queue5TransmitFrames 5号队列发送的PFC反压帧数。
queue6DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 6号队列PFC死锁监控次数。
queue6DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 6号队列PFC死锁恢复次数。
queue6ReceiveFrames 6号队列接收的PFC反压帧数。
queue6TransmitFrames 6号队列发送的PFC反压帧数。
queue7DeadlockDetectNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 7号队列PFC死锁监控次数。
queue7DeadlockRecoveryNum
说明: 仅CE8868EI、CE8861EI、CE8860EI、CE8850EI、CE6865EI、CE6860EI、CE6857EI支持该节点。 7号队列PFC死锁恢复次数。
queue7ReceiveFrames 7号队列接收的PFC反压帧数。
queue7TransmitFrames 7号队列发送的PFC反压帧数。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosGlobalCfgs/qosCaptureDropstats/qosCaptureDropstat
说明: 仅CE6857EI、CE6865EI、CE8850-64CQ-EI、CE8861EI、CE8868EI支持该采样路径。 number 报文的索引号。当报文的索引号为0xffffffff时,表示该条采样信息无效。
dropType 报文丢弃类型。1:拥塞丢弃报文。2:转发丢弃报文。
srcMac 报文的源MAC地址。
dstMac 报文的目的MAC地址。
dstPort 报文的目的端口号。
ethType 报文的以太类型。
protocol 报文的协议类型。
srcIpv4 报文的源IPv4地址。
dstIpv4 报文的目的IPv4地址。
srcPort 报文的源端口号。
vlanId 报文的VLAN ID。
ifName 报文的源端口名称。
queueID 报文队列ID。
reason 报文丢弃原因。
timestamp 报文丢弃的时间。
huawei-qos:qos/qosQueueHdrmStats/qosQueueHdrmStat
说明: CE5880EI、CE6870EI、CE6875EI、CE6880EI不支持该采样路径。 currentUsed 已使用的缓存,单位是cell。
ifName 接口名称。
peakUsed 已使用缓存的峰值,单位是cell。
queueId 队列编号。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosPortEcnStats/qosPortEcnStat
说明: 仅CE6857EI、CE6865EI、CE6860EI、CE8850EI、CE8860EI、CE8861EI、CE8868EI支持该采样路径。 ifName 接口名称。
packets ECN报文数。
slotId 设备ID。
timestamp 时间戳,单位是毫秒。
huawei-qos:qos/qosAclResourceUsageStats/qosAclResourceUsageStat aclTotal ACL资源的总数。
aclUsed 已使用的ACL资源。
chipId 芯片ID。
resourceName ACL资源类型。
slotId 槽位号。
huawei-qos:qos/qosBankResourceUsageStats/qosBankResourceUsageStat bankIdList Bank资源ID。
chipId 芯片号。
entryFree Bank中表项的剩余数。
entryUsedList Bank中已经使用的表项。
slotId 槽位号。
openconfig-interfaces:interfaces/interface/subinterfaces/subinterface/state/counters
说明: CE6880EI和CE5880EI不支持该采样路径。 in_octets 接收的字节数,单位字节。
in_unicast_pkts 接收的报文数。
in_broadcast_pkts 该字段不支持,固定为0。
in_multicast_pkts 该字段不支持,固定为0。
in_discards 该字段不支持,固定为0。
in_errors 该字段不支持,固定为0。
in_unknown_protos 该字段不支持,固定为0。
in_fcs_errors 该字段不支持,固定为0。
out_octets 发送的字节数,单位字节。
out_unicast_pkts 发送的报文数。
out_broadcast_pkts 该字段不支持,固定为0。
out_multicast_pkts 该字段不支持,固定为0。
out_discards 该字段不支持,固定为0。
out_errors 该字段不支持,固定为0。
carrier_transitions 该字段不支持,固定为0。
last_clear 上一次清除时间,单位纳秒。
openconfig-interfaces:interfaces/interface/state/counters carrier_transitions 该字段不支持,固定为0。
in_broadcast_pkts 接收的广播报文数。
in_discards 接收的丢弃报文数。
in_errors 接收的错误报文数。
in_fcs_errors 接收的FCS错报数。
in_multicast_pkts 接收的组播报文数。
in_octets 接收的字节数,单位字节。
in_unicast_pkts 接收的单播报文数。
in_unknown_protos 接收的未知报文数。
last_clear 该字段不支持,固定为0。
out_broadcast_pkts 发送的广播报文数。
out_discards 发送的丢弃报文数。
out_errors 发送的错误报文数。
out_multicast_pkts 发送的组播报文数。
out_octets 发送的字节数。
out_unicast_pkts 发送的单播报文数。

Telemetry应用场景

Telemetry在流量调优场景的应用

Telemetry在微突发检测场景的应用

CE系列交换机作为Telemetry设备侧时,支持微突发监控功能。其实现如下:

基于微突发监控的Telemetry采样订阅创建成功后,设备按照采样周期读取端口队列的缓存使用率。 当满足如下任一条件时,设备认为出现微突发流量,记录相应的微突发流量信息,包括微突发流量发生的时间以及发生时对应队列的缓存使用率。 读取到的队列缓存使用率高于或等于配置的缓存低门限、且本次读取到的队列缓存使用率与上一次记录的队列缓存使用率的变化率大于2%。 读取到的队列缓存使用率高于或等于配置的缓存低门限、且本次的微突发流量发生时间与上一次记录的微突发流量发生时间相比超过1s。 当Telemetry数据上送周期到达后,设备会将此上送周期内记录的微突发流量信息按照Telemetry数据格式上送给采集器进行分析。 采集器收到设备上送的数据后,对数据进行分析,并依据分析结果对网络进行动态调整。

对于除CE5880EI、CE8860EI、CE8850EI、CE6880EI以外的设备,频繁读取端口队列缓存信息对设备的CPU使用率会产生影响。此时设备会根据CPU的使用率来调整微突发监控的采样周期:

当CPU的使用率低于或等于60%时,设备按照配置的采样周期读取端口队列的缓存使用率。 当CPU的使用率高于或等于80%时,设备停止读取端口队列的缓存使用率。 当CPU的使用率高于60%且低于80%时,设备按照10:1的采样比例读取端口队列的缓存使用率,即每10个采样周期读取1次端口队列的缓存使用率。

(可选)配置微突发监控的采样参数

基于微突发监控的Telemetry采样订阅创建成功后,可以配置微突发监控相关的采样参数。

背景信息

微突发监控的采样参数包括缓存低门限和采样周期。

缓存低门限: 当满足如下任一条件时,设备认为出现微突发流量,记录相应的微突发流量信息,包括微突发流量发生的时间以及发生时对应队列的缓存使用率。 读取到的队列缓存使用率高于或等于配置的缓存低门限、且本次读取到的队列缓存使用率与上一次记录的队列缓存使用率的变化率大于2%。 读取到的队列缓存使用率高于或等于配置的缓存低门限、且本次的微突发流量发生时间与上一次记录的微突发流量发生时间相比超过1s。 采样周期: 对于除CE5880EI、CE8860EI、CE8850EI、CE6880EI以外的设备,微突发监控的采样周期通过sensor-group命令的sample-interval参数进行配置。 对于CE5880EI、CE6880EI设备,微突发监控的采样周期固定为2ms。 对于CE8860EI、CE8850EI设备: 若没有通过qos buffer-monitoring enable使能队列的拥塞监控功能,则微突发监控的采样周期通过sensor-group命令的sample-interval参数进行配置。*若已通过qos buffer-monitoring enable使能队列的拥塞监控功能,则微突发监控的采样周期固定为2ms。 操作步骤 配置缓存低门限 执行命令system-view,进入系统视图。执行命令interface interface-type interface-number,进入接口视图。 执行命令qos [ queue queue-index ] buffer-monitoring percent low low-percent high high-percent,配置队列的缓存低门限和缓存高门限。缺省情况下,缓存低门限为队列缓存空间的10%,缓存高门限为队列缓存空间的90%。 执行命令commit,提交配置。 配置采样周期 对于CE8860EI、CE8850EI: 执行命令system-view,进入系统视图。 执行命令interface interface-type interface-number,进入接口视图。 执行命令qos buffer-monitoring parse enable,使能端口的拥塞分析功能。 缺省情况下,未使能端口的拥塞分析功能。 执行命令quit,退回到系统视图。 执行命令commit,提交配置。 除CE5880EI、CE6880EI外: 执行命令system-view,进入系统视图。 执行命令telemetry,进入Telemetry视图。 执行命令subscription subscription-name,创建订阅用于关联上送目标组和采样路径并进入subscription视图。 缺省情况下,没有创建订阅关联上送目标组和采样路径。 执行命令sensor-group sensor-name sample-interval sample-interval,配置关联传感器组的采样周期。 缺省情况下,没有对关联采样传感器组进行采样周期的配置。 执行命令commit,提交配置。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot 自定义+动态切换数据源教程
下一篇:Netstream 流量分析技术
相关文章

 发表评论

暂时没有评论,来抢沙发吧~