Telemetry原理

2023-05-16

Telemetry是一种网络设备监控技术,提供周期采样网络设备内的统计数据和状态数据的能力。

一、Telemetry概述

1.1、技术背景:

网络设备的统一监控和性能管理是运维平台的重要功能,设备的监控数据包括数据、控制和管理平面数据。

获取设备监控数据的方式有:SNMP、CLI、Syslog、Netstream和sFlow等。常用的是SNMP方式,但是SNMP采集周期是5分钟,通常会导致细节信息的丢失。

传统网络采集技术的问题:

传统网络通过平均5-15分钟的Pulling拉取采样数据,更密集的Pulling拉取会造成网络设备瘫痪。

SNMP为主的运维系统效率低。

无法检测网络大量微突发造成的网络问题。

1.2、telnmetry简介:

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

业界也有将SNMP认为是传统的Telemetry技术把当前Telemetry叫做Streaming Telemetry或Model-Driven Telemetry的说法。

Telemetry技术特点:

telemetry采用推模式工作YANG模型定义结构精度可达到亚秒级

Telemetry技术优势:

telemetry采用推模式及时获取丰富的监控数据,可以实现网络故障的快速定位,提供统一的数据流格式,简化采集器分析检测数据的难度,从而解决传统网络运维问题。

  • 精细监控:采集数据的精度高,且类型十分丰富,可以充分反应网络状况。
  • 快速定位:在复杂的网络中,能够快速定位故障,达到秒,亚秒级的故障定位速度。
  • 主动上报:telemetry仅需配置一次订阅,设备就可以持续上报数据,减轻设备处理查询请求的压力。

Telemetry网络模型分为广义和狭义两种:

广义telemetry:包括采集器,分析器,控制器和设备功能构成的一个自闭环系统。

狭义telemetry:设备采样数据上送给采集器的功能

利用telemetry技术,采集器可以收集到大量的设备数据,然后将数据交给分析器进行综合分析,分析器将决策结果发送给控制器,由控制器调整设备的配置,便可以几乎实时的反馈调整后的设备状态是否符合预期。

 

二、Telemetry技术原理

狭义的telemtry框架可以分为四个模块数据源、数据生成数据订阅数据推送

 

Telemetry协议栈:

telemetry协议栈具有分层结构:传输层、通信层、数据编码层和数据模型层。

举个订外卖的例子便于理解:YANG是个快餐店的菜谱,顾客想吃汉堡和炸鸡便照着YANG菜单写了一份A4纸采购清单(如一份汉堡,两份炸鸡),将清单折成邮票大小的小纸条装到了GPB信封里,找到门口的信使gRPC,信使gRPC骑上HTTP2电动车到了快餐店。信使gRPC将GPB信封给老板,老板解开GPB信封核对顾客采购清单是否在销售范围内。

Telemetry数据源:

telemetry数据源定义了可被获取的数据,telemetry采用了YANG模型定义设备可获取数据源,支持各类YANG模型,包括Huawei-YANG、IETF-YANG和OpenConfig-Yang

 

Telemetry数据订阅:

telemetry数据订阅定义了数据发送端和数据获取端交互关系。

 

1.静态订阅

静态订阅是指设备作为客户端,采集器作为服务端。由设备主动发起到采集器的连接,进行数据采集上送。多用于长期巡检。

 

2.动态订阅

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

 

Telemetry数据推送:

Telemetry的数据推送有两种方式基于gRPC方式基于UDP方式

 

1.基于gRPC方式 (gRPC官网:gRPC)

gRPC面向连接,只在采集器和主控板CPU之间建立gRPC隧道。(蓝色箭头表示gRPC隧道)【gRPC封装层由gRPC开源软件提供】

 

 

2.基于UDP方式

UDP推送相较于gRPC推送做出了一定优化,采集器也可以和线路卡CPU之间建立UDP隧道,由一对一变为多对一建立隧道,缓解了主控板CPU的压力同时也提高了效率。

 

 

三、Telemetry配置与实践

 

案例描述:某公司现有一台CE12800设备,管理IP地址为192.168.56.100。为了更好的采集设备性能数据,现在要求通过Telemetry静态订阅方式,设备推送CPU信息到服务端。

配置思路:

华为配置步骤:

1、进入telemetry视图

[CE1] telemetry

2、配置设备推送目标

本例中创建目标组Dest1。推送目标IP地址为192.168.56.1,端口为20000。

[CE1-telemetry] destination-groupDest1

[CE1-telemetry-destination-group-Dest1]ipv4-address 192.168.56.1 port 20000protocol gRPC no-tls

3、配置设备采集数据

配置Telemetry静态订阅采样数据时,需要创建采样传感器组,并指定好采样路径。本例中创建采样组Sensor1。采样路径为CPU信息。

[CE1-telemetry] sensor-groupSensor1

[CE1-telemetry-sensor-group-Sensor1]sensor-path huawei-devm:devm/cpuInfos/cpuInfo

4、创建静态订阅

创建订阅,将配置好的上送目标组和采样传感器组进行关联,完成数据上送。本例中关联目标组Dest1与传感器组Sensor1,并设置采样间隔为1000ms。配置完后,设备将持续向目标推送数据。 [CE1-telemetry]subscriptionSub1

[CE1-telemetry-subscription-Sub1]destination-groupDest1

[CE1-telemetry-subscription-Sub1]sensor-groupSensor1 sample-interval 1000

5、采集器编译proto文件

6、编写Python代码,获取设备信息

7、结果验证(运行python脚本进行Telemetry订阅实现设备的数据采样)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Telemetry原理 的相关文章

  • C#中?、?.、? ?、? ?=的用法和说明

    一 可空类型修饰符 xff1f 引用类型能用空引用来表示一个不存在的值 xff0c 但是值类型不能 例如 xff1a string str 61 null int i 61 null 编译报错 为了使值类型也能使用可空类型 xff0c 就可
  • TortorliseGit(小乌龟)创建删除(远程和本地)分支

    以下两篇文章分别为删除和创建 1 使用TortorliseGit 小乌龟 删除本地分支 xff0c 远程分支 2 使用TortoiseGit操作分支的创建与合并
  • UML类图的几种关系浅析

    类图中的主要关系有如下几种 关联关系 聚合关系 组合关系依赖关系泛化关系细化关系 注 xff1a 以下图片均来自网络 xff0c 侵删 1 关联关系 关联关系是类与类之间的连接 xff0c 表示一类对象与另一类对象之间有联系 xff0c 通
  • 关于c#创建界面的几种方式

    c 创建界面有很多种方式 xff0c 下面列举5中创建界面的方式 1 windows窗体 xff0c 这种窗体设计界面是最简单的一种 这种可以直接从工具箱拿出组件进行使用 xff0c 能够很好的设计界面 2 用户控件类 3 组件类 4 窗口
  • .ova文件转换成.ovf和.vmdk格式

    一 准备工具 xff1a 下载软件 xff1a OVFTool x64 下载地址 xff1a https pan baidu com s 1YDtHh0 OnK0Lm5C4KoF4 w 二 安装后 xff0c 去安装路径下 xff0c 按住
  • 【Word】如何在数学公式同一行末尾填写编号

    使用word插入公式框后 xff0c 在公式框中打完公式的末尾处 xff08 依旧在框内 xff09 加上 xff08 编号 xff09 xff0c 然后回车即可 xff01 xff01 超神器 xff01 再也不用手动空格啦 输入公式序号
  • 使用Xmanager软件远程调用图形化(可视化)安装Oracle数据库

    安装Oracle xff0c 使用调用图形化界面进行安装 xff0c 此次不能使用VNC远程到服务器本地进行图形化安装 xff0c 只能远程调用图形化进行本地安装 xff0c 方法如下 xff1a 一 Linux系统安装所需要的依赖组 xf
  • js中怎么删除对象的某个key值?js 遍历数组,有用!!

    参考 xff1a https blog csdn net denghaolinzy article details 87913561 formThead cate false id true out trade no true produc
  • UDP数据包的延迟及丢包检测(C++)

    摘要 本文记录通过数据报套接字来检测UDP数据包的延迟和丢包的思路和简单的代码实现 思路 UDP协议及用户数据报协议在传输层提供了无连接 不可靠的传输服务 xff0c 端到端的延迟以及丢包率是反应当前网络环境好坏的重要评价标准 Ping检测
  • 二叉树前中后序遍历非递归实现C++

    前几天面试过程中面试官让手写一下二叉树后序遍历的非递归写法 xff0c 当时没有写出来 xff0c 本想着可能是因为面试太紧张的原因 xff0c 才这么简单的题都没写出来 xff0c 后来特地去研究了一下 xff0c 发现二叉树的后序遍历非
  • Arcgis(AE)二次开发问题解决 创建组件”ToolbarControl”失败等

    本文提供 xff08 Arcgis二次开发 xff08 AE xff09 xff09 遇到的以下问题参考解决办法 xff1a 1 必须有许可证才能使用此ActiveX 控件 xff1b 2 命名空间 ESRI ArcGIS 中不存在类型或命

随机推荐

  • C++11右值引用和移动语义

    C 43 43 11中加入了很多新特性 xff0c 其中非常有用的一个就是右值引用和移动语义 xff0c 移动语义主要体现在移动构造函数和移动赋值函数
  • MacOS安装Minikube踩坑记录

    安装minikube macos可以通过两种方式安装minikube xff0c 第一种通过下载二进制文件的方式 xff0c 第二种通过brew直接安装 这里推荐直接通过brew安装 xff0c 更加简单方便 brew install mi
  • 线性回归原理及实现(一):最小二乘法

    线性回归到底要干什么 xff0c 顾名思义很简单 xff0c 即在已有数据集上通过构建一个线性的模型来拟合该数据集特征向量的各个分量之间的关系 xff0c 对于需要预测结果的新数据 xff0c 我们利用已经拟合好的线性模型来预测其结果 关于
  • 史上最简单Opencv相机畸变矫正教学

    最近因为项目需要研究了一下摄像头的畸变矫正 xff0c 我打算通过写这篇博客记录一下相关流程 其实关于摄像头畸变矫正的原理 xff0c 网络上已经有非常多的博客可以参考了 xff0c 我在博客里也就不再赘述了 利用Opencv库中的接口 x
  • 利用逆透视变换获取车载图象的鸟瞰图

    近年来在人工智能潮流下 xff0c 各行各业对无人驾驶技术的发展投来了越来越多的关注 在智能驾驶系统的研究中 xff0c 车道线检测的研究是非常重要的一环 xff1b 鉴于绝大多数城市道路交通环境特性和车道线本身特性 xff0c 当前车道线
  • 相机参数标定(camera calibration)及标定结果如何使用

    文章转自https blog csdn net aoulun article details 78768570一直都想写一写这个主题 xff0c 但是 xff0c 一直都感觉有点虚 xff0c 也没有去整理 在网上搜了一下 xff0c 发现
  • elasticsearch7.6.0启动报错问题

    elasticsearch7 6 0启动报错 xff1a 2020 04 08T03 00 20 624 WARN o e t TcpTransport node 1 exception caught on transport layer
  • VScode使用之SSH免密登录配置

    终端电脑生成秘钥对 打开cmd xff0c 输入ssh keygen t rsa一路回车 xff0c 秘钥对文件目录需要记录一下后面需要使用 将公钥放到目标机上 将之前生成的id rsa pub这个文件 xff0c 放到目标机上 注意 xf
  • 51单片机-LCD1602显示(无字库)

    51单片机 LCD1602显示 xff08 无字库 xff09 LCD1602液晶显示屏显示字符显示汉字的显示 LCD1602液晶显示屏引脚说明LCD1602液晶显示屏11条控制指令LCD1602读写时序图LCD1602的RAM地址映射LC
  • “curl: (7) Failed to connect to xxx port 443: Connection refused”解决办法

    curl 7 Failed to connect to xxx port 443 Connection refused 解决办法 mac系统下解决方案 第一步 xff1a 打开网站https www ipaddress com 搜索xxx
  • 关于for循环声明int i的位置

    猿问 C 测试 数据结构 qq 阿篮 0 2017 10 22 13 06 28 for int i 61 0 i lt 10 i 43 43 int i 61 0 for i lt 10 i 43 43 请问这两个运行速度是第一个快吗 x
  • 阿里云-轻量应用服务器-Ubuntu-mysql安装-mysql外连配置-远程连接mysql

    按照本文的步骤 xff0c 能让你在外面 xff0c 用连接上的阿里云轻应用服务器 傻瓜式步骤演示 1 服务器防火墙设置 1 xff09 点击打开 轻量级应用服务器控制台 安全 防火墙 2 xff09 观察红框内有没有MYSQL设置 如果没
  • 阿里云-轻量应用服务器-防火墙-ufw-gufw

    序言 在服务器上装了VNC和xfce 启动VNC服务后发现每过一段时间VNC就不能连接了 上网查询报错原因 发现是因为密码输入错误次数过多 龟龟 xff0c 网上这么多坏人的吗 为了使VNC一直启动的同时不会被别人乱输入密码导致停止服务 x
  • 以太网二层技术——VPLS详解

    目录 前言 xff1a xff08 由于时间关系 xff0c 本篇仅先写了关于VPLS相关 xff09 一 VPLS简介 xff1a 二 VPLS基本工作原理及步骤 xff1a 三 VPLS的报文转发过程 xff1a 四 VPLS的缺点 x
  • SR技术概述与基本概念(SR-BE&SR-TE)

    目录 一 SR背景 二 SR概述 xff1a SR具有如下特点 xff1a SR优势 xff1a 三 一些名词的基本概念 基本概念 xff1a Segment 基本概念 xff1a Segment ID 简称SID xff0c 用于标识se
  • 网络同步技术

    一 同步技术 时钟同步包括 xff1a 频率同步 和时间同步 频率同步要求 相同的时间间隔 xff0c 时间同步要求 时间的起始点相同 和 相同的时间间隔 二 同步以太网技术 xff08 频率同步 xff09 xff1a SyncE xff
  • 以太网虚拟专用网络的工作流程(重点3张表与4种路由)

    目录 一 前言 二 EVPN四种类型路由的作用 三 EVPN表项简介 xff1a xff08 重点 四 EVPN的工作流程分为两个阶段 xff1a 4 1 EVPN启动阶段 xff1a 4 2 EVPN流量转发 xff1a Type2 控制
  • 网络工程师Python入门学习笔记-01

    目录 一 Python编码规范 xff1a 1 1 符号 xff1a 1 2 注释 xff1a 1 3 代码缩进 xff1a 很重要 二 Python的函数与模块 三 Python的类与方法 3 1 类 3 2 telnetlib介绍 xf
  • NETCONF、RESTCONF和YANG

    目录 一 NETCONF RESTCONF和YANG是之间什么关系 xff1f 二 Netconf简介 2 1 一般使用工具 xff1a MG Soft 简介 三 Netconf YANG 原理与实践 3 1 NETCONF协议 3 2 Y
  • Telemetry原理

    Telemetry 是一种网络设备监控技术 xff0c 提供 周期采样网络设备内的统计数据和状态数据的能力 一 Telemetry概述 1 1 技术背景 xff1a 网络设备的统一监控和性能管理是运维平台的重要功能 xff0c 设备的监控数