• 文章名称:In-band Network Function Telemetry
  • 发表时间:2018
  • 期刊来源:SIGCOMM

I Introduction (介绍)

NFV运行在商品服务器上,在网络功能生命周期管理过程中提供了巨大的灵活性,将逐步代替硬件中间盒设备。现在有很多建立、运行VNF的优秀平台,比如BESS和NetVM,实现VNFs生命周期管理并且提供一个良好的性能保证。

尽管NFV在工业上使用广泛,但是对于NFV在SLA验证、故障检测以及其他第三方应用的重要性却很了解很少。比如当源码是不可知的情况下,实现监测是非常困难的。尽管单独的测量可以进行,但是为VNF遥测设计和实现有限过载的通用架构并非易事。据了解,之前并没有在高效测量VNFs运行时的性能上做相关工作。

为了高效地监控NFs的运行性能,我们引入了带内网络功能遥测(In-band Network Function Telemetry INFT)。INT(in-band network telemetry)是一个在数据平面收集网络状态的架构,引起的开销可以忽略不计,并且不需要与控制器进行交互,同时能够捕获网络上的短暂变化。INFT同样依赖数据平面进行测量,但是旨在中间盒透明。

我们提出NFT,一个轻量级、基于黑盒的高级可配置遥测架构。NFT建立主要在NFV平台之上,并且不需要测量的NFs。遥测仍然主要是INT,通过利用现代CPU的指令级并行性,产生很少的开销并能够监视快速变化的性能。** 我们在网络架构中,添加对于postcard-like report的支持。
贡献如下:

  • 一、设计了通用的架构,可以用于测量中间盒的性能而且不导致任何负载。
  • 二、为带内遥测报告和postcard-like 报告提出了头部格式。
  • 三、进行初步的评估,证明设计引起的微小负载。

II Design (设计)

如图1所示,在NFT中的遥测节点被分为三类:classifier,forwarder,以及sink。classifier是可信任的实体,创建并且插入遥测首部到数据包中,数据包根据顾客/网络配置策略选择出来。Forwards 通过将元数据放进数据包,收集度量信息,另外根据遥测首部(headers)发送post-cards,report metric information(度量信息)。sink 节点提取元数据信息并且将数据包改变为常规数据包。

当一个主机的NIC接收到一个数据包,NIC首先通过底层的路由机制(比如BESS或者Open Vswitch)将数据包发送给NFT classifier(arrow 1)。我们将这样的机制定义为Routing Layer(路由层)。INFT首部被插入到分类为遥测数据包的数据包中。这些数据包接着被发送到NFT forwarder(arrow 2)。转发器(forwarder)依据INFT首部将临时信息(比如时间戳)写入到INFT元数据区域中,然后将这些数据包发送到目的中间盒(arrow 3)。数据包在退出时传输回forwarder(转发器)(arrow 4)。接着,forwarder根据之前写的数据(我们假设为INFT首部和元数据,因此它们不会被中间盒直接移除,在多播的情况下被复制)将遥测结果计算并且写入到数据包中。最后,携带INFT元数据的数据包被发送到sink node(arrow 5)。postcard-like reports是通过forwarders 依据INFT首部生成,同样的,postcard-like reports同样可以直接地发送到sink node 。节点接着提取元数据并且格式化数据包为常规数据包。最后,这些常规数据包通过NIC发送到主机。为了提高架构的性能,某个节点,比如forwarders,可以直接地通过数据平面实现。

INFT协议包括INFT首部和INFT元数据,类似于INT(如图2)。Metric字段决定了放入到每个INFT数据包的元数据的类型。Length 字段指明了下一块元数据插入的位置。设置Postcard 位 表明postcard生成。INFT元数据是紧随在INFT header 之后的4bytes 表项。每个条目包含写入数据的forwarder(转发器)的标识符,数据包进入和离开转发器的端口ID以及收集的度量数据。现在,我们测量延迟,I/O 数据包比特速率,因为它们是最基本最直接的实现。

为classifiers 插入INFT协议并且读取数据 的确切位置可以由操作员配置,消除在不同中间设备添加INFT协议的影响。 默认的,我们建议在IP 选项字段中插入头信息,因为大多的NFs自动跳过IP 项。forwarders (转发器)同样的可以将INFT协议移数据包别的位置上,在数据平面支持更加灵活的测量。然而,正如在评估一节提到,这样的重写操作可能是昂贵的,导致性能下降并,因此应该小心使用。Postcard reports 在源数据包头之前包含一个Postcard header。首部有一个Next Protocol 字段指示数据包首部内的第一层。Sequence 字段和 Left Time 字段用于侦测数据包以及丢弃数据包。


III EVALUATION (评估)

我们在BESS上实现了这个架构,比如,在数据平面,与其他模块处理每个数据包速率的性能进行对比(Time Stamp Counter 的区别取决于进入和退出)。所有模块运行在单个的Inter Xeon E5-2620(2.40GHz).

结果如图3所示,Classifiers可以基于简单规则(比如5元组)相当快的速度(相当ACL模块)执行分类。forwarders写INFT数据的重要性能同样值得关注。我们根据INFT头和入口id选择遥测数据,通过使用条件移动而不是条件跳转来避免CPU气泡,从而开发现代CPU的指令级并行性。

然而,fowarders 花费更长的时间来移动INFT协议到数据包别的位置,因为forwards需要更长的时间来复制动作(actions)。这样的复制可以通过利用BESS预留的buffer来避免。Postcard的产生很缓慢,因为新的数据包需要分配。尽管如此,当postcard 速率低的时候,这样的开销是可接受的。


** 个人 **

  • In-band:频内,指那些数据控制已经被固定的网络协议,In-band 控制的控制数据通常和主要的传输数据公用同样的连接链路(以太网通道),属于应用层管理。被管理设备只有处于开机状态并进入作业系统的情况下,才能进行管理。像SNMP(Simple Network Management Protocol)都是属于In-band协议。SNMP使用方便,但是存在一个固有的缺陷:SNMP 管理信息总是和网络数据使用同样的网络路径。它使用相同的WAN和LAN路由、中继器和连接链路。当网络中断或是严重受损的时候,SNMP流量就不能在向量的管理设备或是工作站中流通。当网络组件中断时,In-band失去网络连接,不能使用。

  • Out-band:频外,又被称为熄灯(Lights Mangement,LOM)管理,弥补了In-band的缺点,是指那些数据传输信道独立于正常的网络传输,被管理设备即使在关机状态甚至故障的状态下,都可以进行修复重开机或是日志监控等管理作业。这对于分离两种不同类型的数据是十分有用的。Out of band 管理指那些通过拨号电话线允许技术人员连接到网络组件(防火墙、路由器、网桥、交换机、服务器等)。在电话系统中,当用于建立语音通信的设备分离时,就使用Out of band通信建立语音通信。

  • In-band管理相对于Out-band管理更廉价,但是在计算机网络中它不能够接触固件(BIOS和URFI),也不能够远程重新安装操作系统,不能修复系统booting的问题。在网络中,不允许独立于当前网络组件的网络组件进行远程管理。看数据传输是否通过独立的数据链路传输判断是否为Out-band network。


In-band Network Function Telemetry的更多相关文章

  1. NFV-Bench A Dependability Benchmark for Network Function Virtualization Systems

    文章名称:NFV-Bench A Dependability Benchmark for Network Function Virtualization Systems 发表时间:2017 期刊来源: ...

  2. Improving the Safety, Scalability, and Efficiency of Network Function State Transfers

    Improving the Safety, Scalability, and Efficiency of Network Function State Transfers 来源:ACM SIGCOMM ...

  3. Network Function Virtualization for a Network Device

    An apparatus for performing network function virtualization (NFV), comprising: a memory, a processor ...

  4. Network Function Virtualization: Challenges and Opportunities for Innovations

    年份:2015 ABSTRACT 最近提出了网络功能虚拟化,以提高网络服务供应的灵活性并减少新服务的上市时间. 通过利用虚拟化技术和通用的商用可编程硬件(例如通用服务器,存储和交换机),NFV可以将网 ...

  5. Predictive Analysis in Network Function Virtualization

    摘要 网络功能虚拟化(NFV)体系结构的最新部署获得了极大的关注.虚拟化虽然带来了诸如降低成本和简化网络功能部署之类的好处,但它增加了附加层,从而降低了较低层故障的透明度.为了改善虚拟网络功能(VNF ...

  6. How to implement a neural network

    神经网络的实践笔记 link: http://peterroelants.github.io/posts/neural_network_implementation_part01/ 1. 生成训练数据 ...

  7. 服务链(Service Chaining,or Service Function Chaining,SFC,功能服务链)

    Software-configured  service  chaining  provides  the  capability  to  dynamically include best-of-b ...

  8. 论文阅读:Elastic Scaling of Stateful Network Functions

    摘要: 弹性伸缩是NFV的核心承诺,但在实际应用中却很难实现.出现这种困难的原因是大多数网络函数(NFS)是有状态的,并且这种状态需要在NF实例之间共享.在满足NFS上的吞吐量和延迟要求的同时实现状态 ...

  9. 从个人的角度谈谈本次GNTC大会的收获

    GNTC资料:from sdnlab 从个人的角度谈谈本次大会的收获 从本次大会的主题演讲来看,目前SDN.NFV的最前沿已经不再像五年前持观望态度以及探讨,各大运营商.各大厂商已经将SDN.NFV具 ...

随机推荐

  1. java crm 进销存 springmvc SSM 项目 源码 系统

    系统介绍: 1.系统采用主流的 SSM 框架 jsp JSTL bootstrap html5 (PC浏览器使用) 2.springmvc +spring4.3.7+ mybaits3.3  SSM ...

  2. 笔记:iOS随机数与随机数据集

    //0 到 N - 1 之间的随机整数 NSUInteger r = arc4random_uniform(N); //1 到 N 之间的随机整数 NSUInteger r = arc4random_ ...

  3. vue请求本地自己编写的json文件。

    1.第一步,这是目录结构 2.接下来是build/webpack.dev.conf.js文件需要配置的内容 代码: //vue配置请求本地json数据const express = require(' ...

  4. rtthread移植到jz2440之BootLoader

    从2016年第一次接触rtthread,感觉很容易上手,记得一个项目是小飞行器上的IPC,趁着空闲,手里有一块jz2440的板子,准备在这块板子上跑起来rtthread,查了很多资料,最后决定自己写一 ...

  5. Web安全0001 - MySQL SQL注入 - 如何寻找注入点

    注:本文是学习网易Web安全进阶课的笔记,特此声明. 其他数据库也可以参考寻找注入点. A: 一.信息搜集(百度) 1.无特定目标 inurl:.php?id= 2.有特定目标 inurl:.php? ...

  6. JavaScript总结(八)

    表单验证 表单验证是JavaScript最常用.最有用的功能之一.在表单内容提交之前进行验证,可以降低服务器处理器的压力,缩短用户等待的时间.表单校验中第一个要考虑的问题是:什么时候捕获表单的录入错误 ...

  7. 7-[CSS]-css介绍,引入方式

    1.CSS介绍:层叠样式表(Cascading Style Sheets) 我们为什么需要CSS? 使用css的目的就是让网页具有美观一致的页面,另外一个最重要的原因是内容与格式分离 在没有CSS之前 ...

  8. ecCodes 学习 利用ecCodes Python API对GRIB文件进行读写

    参考 https://www.ecmwf.int/assets/elearning/eccodes/eccodes2/story_html5.htmlhttps://confluence.ecmwf. ...

  9. 【Shader】这是一篇记录随笔,我要开始学Shader了!

    背景: 前天学校有场招聘会,转了一圈只看到一家和unity有关的公司,还是做VR游戏的,然后HR也很好说话.和我说话的HR正好是做UnityVR方面的,聊了会受益匪浅,自己就像是找到了方向似的,突然很 ...

  10. Unity Shader 学习之旅之SurfaceShader

    Unity Shader 学习之旅之SurfaceShader unity shader 图形图像  如果大地的每个角落都充满了光明 谁还需要星星,谁还会 在夜里凝望 寻找遥远的安慰——江河 官方文档 ...