首页 > 其他分享 >In‐band Network Telemetry

In‐band Network Telemetry

时间:2025-01-10 19:33:14浏览次数:1  
标签:Network 收集 INT 报文 Telemetry band 指令 转发 设备

#卫星 #遥测技术 #INT

一、INT是什么?

INT,In‐band Network Telemetry ,带内网络遥监测。telemetry,英文原意是遥测技术。从其英文名称可以了解如下:

a.In-band,说明监测指令及数据均在带内传输

b.telemetry ,说明是长距离,远程获取网络数据的方法。

想象一下卫星在天上飞,地面遥测监控的场景,卫星的各项数据根据地面指令从外太空发回地面。

INT是用于收集和报告网络状态的技术框架,它是由数据转发平面收集,无需控制平面主动介入。在INT定义的框架里,报文可以携带INT指令,这些指令可以被中间转发设备所解释并且填写期望的数据,然后继续往下转发,直到目的。

举个例子,一个INT源(比如应用、主机、容器、网卡、设备等)可以在一个正常业务报文或者探测报文中,嵌入INT指令,比如需要收集转发设备的ingress port id,中间转发设备会解读这些指令并且根据这些指令填写相关ingress port id,如此这样转发下去,一直到某个INT汇集点(INT Sink,sink英文本意是水槽的意思,流动的水经过水槽,脏东西留下,水继续流走,很形象啊),它从报文中移除相关INT指令和相关数据并且进行后续上报或者处理。

在IP网络中,因为TCP/IP架构的历史演进原因,网络对应用的反馈很差,主要体现应用将报文扔给网络后,就一无所知,只能等着超时或者对端反馈收到了,很被动。是不是有种无法跟踪快递的感觉类似。

二、INT的用处

故障处理

精准路径跟踪,即hop by hop跟踪实际转发路径、接口。在网络中因为多路径、负载均衡的存在,跟踪实际转发路径和端口是非常困难的。传统traceroute使用限制很多,而且只能跟踪三层路由,对于二层转发无能为力,而且traceroute过于依赖icmp机制,局限很多。

突发监测

突发对网络业务质量影响巨大,大多数做网络的人,一般不太注意突发,只关注应用速率和接口带宽,但是在面对一些业务感知不好的故障时候,因为对突发原理和设备转发机制的理解不够,很难联想到突发造成的业务质量下滑(这个以后有机会,我会结合我这么多年实际现网 经验,share一些case来说明)。有了INT机制,可以实时监测业务转发环节中接口的队列情况,对一些突发可以做到一定程度的发现。

当然现在业内也有一些厂商有智能光模块或者DPI设备来监测突发,DPI的精度比较差,智能光模块的效果更好,据我所知,在移动某些省的基站已经有了部署应用。

拥塞控制

比如RCP(Rate-based Congestion Control), XCP(explict congestion control ), TIMELY(RTT-Based Congestion Control)

用户面转发校验

基于时延、利用率的灵活路由

三、INT的使用

Int既然是in band,那么其header可以attach到任何协议封装上。比如udp\tcp\vxlan\Geneve 等。

下图是INT一个收集转发路径节点及每个节点转发延时的例子。

具体过程如下:

主机H1发出报文packet 给H2

SW1在packet 插入INT header,header source是自己,sink 是SW3

SW1插入的指令为收集SW ID和转发时延

SW1插入自己的ID和从ingress到exgress的转发时延

中间交换机SW2、SW3类似追加

SW3是INT sink,负责将INT收集信息汇总发给report server。

四、INT可收集信息

● 设备id

● 设备状态及版本

● 入、出端口 id

● 入、出时间戳

● 入、出端口收包统计

● 入、出端口收字节统计

● 入、出端口丢包统计 Ingress port RX drop count

● 入、出端口利用率Ingress port RX utilization

● 队列ID

● 队列实时长度

● 队列平均 长度

● 队列利用率

● 队列丢包

……..

五、与TWAWP区别

TWAWP(RFC5357)也是一个网络性能测试协议(以后有机会单独拉出来讲),目前主流路由器基本都支持,Juniper、Nokia 、华为(但是华为不跟第三方设备互通)支持,特别是在移动通信设备中支持广泛,比如E///、Nokia 4G全线支持。

INT跟TWAMP对比,优势还是很明显的:

  • INT属于染色方案(华为叫法,很贴切),其将指定和收集信息挂载在真实业务报文之上,收集的信息路径就是真实报文转发路径,获取的信息也是真实的业务转发路径信息,而这一点恰恰是twamp无法做法,因为其属于带外主动式测试。同样,ping工具也属于带外主动式,测试的路径和报文构造跟真实业务完全不同。

  • INT受更多设备厂商支持,可以收集更多转发路径消息,特别是转发中间设备支持。而TWAMP只能在源和目的设备之间运行,中间设备是不会增加信息的。Ping工具也类似。

ps:说点题外,某字母+数字的厂商有个Telemetry Streaming (TS)技术,好像跟INT 有点类似,具体能做如下:

设备监控:有了TS可以替代SNMP监控方式。TS可以监控磁盘使用率、磁盘IO、接口状态和流量、内存、cpu、连接数等信息 。

资产梳理:获取设备的基本信息。例如版本、许可、接口信息等。可以进行资产的管理和统计,包含许可到期提醒等。

集群信息维护:可以清楚知道目前哪个设备是处于Active,配置是否有同步。防止主设备出现问题的时候备用设备配置不一致。

生命周期管理:设备license、https证书管理,可以在过期前进行预警。

应用梳理:通过流量和连接数可以筛选无效配置。通过irules规则命中统计,可以筛选高频使用的irule结合基础监控优化irules规则

首先可以确定,这个TS技术并不是所谓的In-band telemetry,更接近升级版的SNMP,当然相对于SNMP还是提升很多,最主要的变化是从pull 改为post。

TS技术还是定位网元监测,加强版SNMP,基本属于厂商自定义,无RFC和ITU 标准,而INT定位dataplane的性能跟踪,属于RFC级别的规范。

原创 kavi zhang 曾经工程师的笔记

标签:Network,收集,INT,报文,Telemetry,band,指令,转发,设备
From: https://www.cnblogs.com/o-O-oO/p/18664583

相关文章

  • VMWare-虚拟机Linux(CentOS),ping ip地址出现 Network is unreachable和name or service
    检查虚拟网络编辑器VMNet1(仅主机)勾选:将主机虑拟适配器连接到此网络;使用本地DHCP服务将IP地址分配给虚拟机这会在电脑上创建一个网络确认:在虚拟网络编辑器里,子网IP和子网掩码设置好;DHCP中网关不要选xxx.xxx.xxx.1确认(宿主局cmd——ipconfig):宿主机VMNet1的网关地址......
  • 模拟ic入门——设计一个带隙基准Bandgap(三)高阶温度补偿与启动电路设计
    上一节我们介绍了Bandgap相关的参数,以及做了其中一个经典电路的电压模仿真,但如果对于温度系数有较高的要求,可以进行高阶温度补偿,本节我们来介绍高阶温度补偿,以及一些启动电路的设计,会附上一些经典的论文供大家学习一、电流模Bandgap首先我们进行电流模bandgap的仿真,运放我采......
  • OSPF - 2、3类LSA(Network-LSA、NetWork-Sunmmary-LSA)
    前篇博客有对常用LSA的总结2类LSA(Network-LSA)DR产生泛洪范围为本区域作用: 描述MA网络拓扑信息和网络信息,拓扑信息主要描述当前MA网络中伪节点连接着哪几台路由。网络信息描述当前网络的掩码和DR接口IP地址。影响邻居建立中说到MA网络掩码需要一致,就是因为这里2类LS......
  • vue3项目yarn install遇到的info There appears to be trouble with your network con
    新接手的vue3项目在安装依赖的时候经常下载失败,报错Couldn'tfindpackage...onthe"npm"registry或者errorError:readECONNRESET1.可以改变当前的源查看当前使用的源yarnconfiggetregistry改变源yarnconfigsetregistryhttps://registry.npmmirror.com(推荐......
  • nifi下载Win版本安装成功运行_network
    一、Apachenifi相关网址https://nifi.apache.org/ 官网https://nifi.apache.org/docs.html 文档https://nifi.apache.org/download.html 下载页##二、Apachenifi本地安装进入https://nifi.apache.org/download.html解压到本地bin目录下有启动和......
  • python 代码实现了一个条件生成对抗网络(Conditional Generative Adversarial Network,C
    importtensorflowastfimportnumpyasnpimportpandasaspdimportosimportmatplotlib.pyplotaspltfromsklearn.model_selectionimporttrain_test_splitfromtensorflow.keras.layersimportAdd,BatchNormalizationos.environ["KMP_DUPLICATE_LIB_O......
  • Ultra-Low Precision 4-bit Training of Deep Neural Networks
    目录概主要内容Radix-4FP4formatGradScaleTwo-PhaseRounding(TPR)SunX.,WangN.,ChenC.,NiJ.,AgrawalA.,CuiX.,VenkataramaniS.andMaghraouiK.E.andSrinivasanV.Ultra-lowprecision4-bittrainingofdeepneuralnetworks.NeurIPS,2020.概本文......
  • Scalable Methods for 8-bit Training of Neural Networks
    目录概RangeBatchNormalization代码BannerR.,HubaraI.,HofferE.andSoudryD.Scalablemethodsfor8-bittrainingofneuralnetworks.NeurIPS,2018.概本文针对BatchNorm模块在低精度(8-bit)的情况下进行一个合适的改进.RangeBatchNormalization对于......
  • Training Deep Neural Networks with 8-bit Floating Point Numbers
    目录概主要内容WangN.,ChoiJ.,BrandD.,ChenC.andGopalakrishnanK.Trainingdeepneuralnetworkswith8-bitfloatingpointnumbers.NeurIPS,2018.概本文提出了一种8-bit的训练方式.主要内容本文想要实现8-bit的训练,作者认为主要挑战是两个向量的......
  • 【AI学习笔记5】用C语言实现一个最简单的MLP网络 A simple MLP Neural network in C
    用C语言实现一个最简单的MLP网络AsimpleMLPNeural NetworkinClanguage 从图像中识别英文字母【1】从图像中识别多个不同的数字,属于多分类问题;每个图像是5*5的像素矩阵,分别包含1-5五个字母数字; 网络结构:一个隐藏层的MLP网络;       每个图像是5x5个......