没有合适的资源?快使用搜索试试~ 我知道了~
⃝可在www.sciencedirect.com上在线获取ScienceDirectICTExpress 6(2020)62www.elsevier.com/locate/icte可编程数据平面中基于灵活采样的带内网络遥测Dongeun Suha,Seokwon Jangb,Sol Hanb,Sangheon Packb,Chang,Xiaofei Wangca韩国三星电子三星研究所b韩国高丽大学电气工程学院c中国天津大学天津先进网络重点实验室接收日期:2019年7月13日;接受日期:2019年在线预订2019年摘要带内网络遥测(INT)是一种新兴的网络监测框架,基于协议无关的数据包处理器(P4)。网络设备可以用特定于域的语言编程,以便在数据包遍历网络时将交换机内部状态嵌入到数据包中。然而,目前基于P4的INT不支持采样;因此,INT报头应该为所有传入的数据包增加,这将在大规模网络中产生高开销。在本文中,我们提出了一个灵活的采样为基础的INT(FS-INT)计划解决上述问题。仿真结果表明,FS-INT可以减少协议开销的控制方式,同时提供足够高的准确性。c2020年韩国通信与信息科学研究所(KICS)。出版社:Elsevier B.V.这是一个开放的访问CC BY-NC-ND许可证下的文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。关键词:可编程数据平面;带内网络遥测;灵活采样INT1. 介绍软件定义网络(SDN)[1]是解决供应商特定接口问题的众所周知的解决方案。在SDN中,网络设备的控制平面与数据平面解耦。报告数据平面中的网络统计信息通过开放和标准化的交换机到控制器接口(例如OpenFlow)监控在集中式SDN控制平面中运行的应用程序[2]。然而,由SDN和开放流提供的可编程性是有限的,因为该方法仅允许对规范中定义的报头进行编程。例如,OpenFlow 1.0和1.4不能分别处理MPLS报头和TCP标志位。此外,现有OpenFlow设备无法解释用户定义的标头。容纳用户定义的报头的唯一方法是在网络交换芯片上实现它们的处理逻辑(例如,ASIC芯片),这可能需要几年时间。因此,这不是一个可行的解决方案。总之,很难容纳新的∗ 通讯作者。电子邮件地址: shpack@korea.ac.kr(美国)包装)。同行评审由韩国通信和信息科学研究所(KICS)负责https://doi.org/10.1016/j.icte.2019.08.005协议或更新网络可见性所需的现有协议。为了克服这一限制,一种与协议无关的分组处理器(P4)[3]被提出作为数据平面编程语言。P4允许任意和定制的特征(例如,交换、路由和负载平衡)被实现到可编程交换机中。作为P4的杀手级应用,带内网络遥测(INT)[4]是一种高效的网络监控框架。P4编程允许INT通过任何网络层或协议收集和报告任何类型的交换机内部状态,例如队列长度、链路利用率和排队延迟,而无需控制平面的任何干预。文献中已经报道了几个有趣的INT应用程序,用于负载平衡[5],拥塞控制[6]和数据分析[7尽管基于P4的INT是一种很有前途的技术,并且在上述工作中被广泛采用,但它不支持灵活的采样。也就是说,INT报头必须为所有传入的数据包增加,这在大规模网络中会产生很高的开销。为了解决这个问题,我们提出了一个灵活的采样为基础的INT(FS-INT)计划。仿真结果表明,FS-INT在协议开销和监测准确性之间取得了平衡。2405-9595/2020韩国通信和信息科学研究所(KICS)。出版社:Elsevier B.V.这是一个开放的访问CC BY-NC-ND许可证下的文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。=D. Suh,S.张,S.Han等人 /ICT Express 6(2020)62-6563本文的其余部分组织如下。第2节给出了INT的概述,第3节描述了FS-INT。第4节和第5节分别给出了仿真结果和结论2. INT概述INT的体系结构由INT控制平面和INT数据平面组成。INT控制平面负责编程和配置网络设备以运行INT的数据平面功能,它包括P4编译器和P4运行时代理。同时,重新设计了INT数据平面,负责监视指定由INT控制平面监视的网络信息。INT数据平面由INT监控引擎和INT节点组成,INT节点又分为INT源节点、INT传输节点和INT汇聚节点。为了使网络设备运行INT数据平面功能,P4编译器解释用户定义的P4程序(例如,INT.p4),然后将其加载到网络设备上的P4可编程ASIC中。一旦用INT P4程序编译,用于配置INT节点(即,P4运行时API [8])自动生成并加载到控制平面中的P4运行时代理和数据平面中的网络设备中。控制平面中的P4运行时代理(其类似于OpenFlow控制器)配置网络设备以便确定INT节点的类型(即,INT源节点、中转节点或汇聚节点)。此外,P4运行时代理配置INT源节点以确定流以及要监视的网络信息。图图1还示出了监控从主机H1到主机H2的流的示例。在该示例中,流的INT源节点、中转节点和宿节点分别是交换机SW 1、SW 2和SW 3。作为INT源节点的SW 1插入具有INT元数据列表的INT报头(即,交换机内部状态)在每一跳被监控到从H1传入的数据包中(图1中的步骤1)。①的人。在此示例中,假设要监视交换机标识符(ID)和跳延迟。因此,SW 1插入其指定的INT元数据(即,SW 1的交换机ID和SW 1处的跳延迟)。INT传输节点(SW 2和SW 3)随后检查INT报头,并将其ID和跳延迟插入元数据堆栈(图1中的步骤3和4)。此外,INT汇聚节点(SW 3)克隆分组并将克隆转发到监视引擎(图1中的步骤5),同时恢复原始分组并将其转发到目的地(步骤6图①的人。最后,监控引擎处理INT报头/元数据,产生实时网络信息以供进一步处理。3. 基于灵活采样的INT在INT中,所有数据包都应包括INT报头/元数据,并且它们应报告给监控引擎并由监控引擎处理。假定监控引擎是在具有有限处理能力的商品服务器上运行的软件,则监控引擎可能过载,特别是对于具有高分组到达Fig. 1. INT操作示例。rates.此外,随着分组到达速率和/或分组穿越距离的增加,该开销变得更糟。此外,在INT中,网络信息以带内方式收集;因此,监控流量与数据流量共享可用网络带宽。具体地,给定可用网络带宽是有限的,INT可以消耗大量网络带宽,特别是对于小尺寸分组。根据监测的指标和监测应用,将给出不同的采样要求。例如,如果在INT应用中仅需要遍历路径信息,则仅在发生路径改变事件时收集这样的事件就足够了。同时,如果INT用于测量路径中的平均等待时间,部分观察到的分组(即,不是所有分组)足以计算平均等待时间。基于这一动机,我们引入FS-INT来克服INT中的上述缺点,并满足灵活的要求,其中可以灵活地选择不同的采样策略具体来说,FS-INT支持两种采样策略:基于速率和基于事件。在基于速率()策略中,INT源节点将INT报头插入到每第R个分组中,其中R是可配置参数。如果数据包包含INT报头,则在每一跳插入所有指定的INT元数据。否则,在每一跳都不会插入任何元数据类型,这有助于减轻INT报头和元数据所带来的开销。图2(a)示出了基于速率的采样策略的情况,该基于速率的采样策略监视所有分组的一半(即,R2)。同时,在基于事件()策略中,对于具有INT报头的每个输入分组,每个INT中转设备基于特定标准(例如,队列长度超过预先指定的阈值)。因此,在每一跳处插入的元数据栈的数量可以变化。因此,插入位图被添加到元数据堆栈的顶部,以指定在每个跳中增加哪些元数据堆栈。(see图2(b))。具体地,插入位图被定义为对应于第14位(即,指令位14)在INT规范[4]中定义的指令位图字段中。注意,在INT规范中,指令位图字段中的第0=-64D. Suh,S.张,S.Han等人 /ICT Express 6(2020)62-65图三. 以FS-INT为例。图二、F S - I N T 中 的 两种抽样策略:(a)基于速率的抽样策略;(b)基于事件的抽样策略。分配给标准INT元数据类型(例如,交换机ID、入口/出口端口ID和跳延迟),并且指令位图字段中的第15位被分配给元数据类型校验和补码值的位,而指令位图中的其他位则保留供将来使用。图图3显示了一个FS-INT运行的示例,其中数据平面由P4/INT支持的网络设备和INT监控引擎组成。SDN/P4控制器控制平面具有P4编译器和配备有P4运行时API的SDN控制器的能力,一种与协议无关的API,可与P4支持的网络设备进行交互。在编译期间,FS- INT的P4程序通过控制器中的P4编译器注入到网络设备中,其中FS-INT的P4程序中的出口管道被扩展以支持多种采样策略。随后在运行时选择要激活的采样策略,并通过控制器中的P4运行时API配置其参数。在该示例中,三个采样策略,即,原始INT中的原始INT()、FS-INT中的基于速率的()和基于事件的被加载到网络设备中,而原始INT()最初在网络设备中被激活。监控引擎诊断INT中的网络开销是否网络开销高)到控制器。然后,控制器切换到具有较低采样率的Rate based()(即,高R),以减少INT中的网络开销。4. 仿真结果我们用基于速率(Rate based)和基于事件(Eventbased ) 策 略 ( 分 别 表 示 为 FS- INT ( R ) 和 FS-INT(E))以及原始INT(O-INT)来评估FS-INT的协议开销。在FS-INT(R)中,为每个R包插入元数据。同时,对于FS-INT(E),仅当最后一跳延迟测量与当前跳延迟测量之间的差超过预定义的偏差阈值θ时才插入元数据。在这些模拟中考虑了具有300个数据包遍历H跳的场景,其中INT指令位图被设置为收集三种类型的标准INT元数据:交换机ID、入口/出口端口ID和跳延迟。考虑UDP上的INT,其中sMSS被设置为以太网上的UDP的最大请注意,UDP over Ethernet中的MSS可以通过从以太网上的最大传输单元(MTU)大小(1500字节)中减去UDP报头(8字节)和IP报头(20字节)的字节长度来计算。为了模拟交换机ID和入口/出口端口ID的变化,假设流路径每50个分组改变一次。此外,为了模拟跳延迟的变化,从对数正态分布生成每个分组在每个跳处的跳延迟值,其中平均值和标准偏差分别为10 ms和50 ms图4示出了FS-INT和O-INT中的协议开销。对于所有路径长度,O-INT中的协议开销比FS-INT(R)和FS-INT(E)此外,O-INT中的协议开销随着路径长度的增加而线性增加,而FS-INT(R)和FS-INT(E)中的协议开销仅略有增加。这是因为FS-INT(R)和FS-INT(E)选择性地插入INT元数据,而O-INT将INT元数据插入到所有分组中。从图从图4可以看出,FS-INT(R)中的协议开销随着R的增加而线性减小,而FS-INT(E)中的协议开销随着R的增加而减小。在O-INT、使用R4的FS-INT(R)和使用R4的FS-INT(E)中测量的平均跳跃延迟30 ms显示在表1.O-INT的测量值可以被认为是参考,因为INT将所有跳延迟值插入到分组中。因此,可以基于O-INT和FS-INT之间的差异具体地,可以示出,与FS- INT(R)相比,在FS-INT(E)中测量的平均跳延迟这是因为省略的跳延迟值与省略之前最后插入的跳延迟值之间的误差由FS- INT(E)中的偏差阈值限制,而FS-INT(R)不考虑跳延迟的变化。因此,FS-INT(E)可以提供更接近于O-INT中的跳延迟,即,FS-INT(E)提供更精确的跳延迟测量。D. Suh,S.张,S.Han等人 /ICT Express 6(2020)62-6565通过提供采样策略及其参数进行用户定制。竞合利益作者声明,本文中不存在利益冲突。确认这项工作得到了韩国政府(MSIT)资助的信息通信技术规划评估研究所(IITP)的支持。2017年-表1图四、 路径长度对每包开销的影响。0-00195)。引用平均跃点延迟测量。路径长度10 20 30O-INT 11.87 ms 10.7 ms 10.16 msFS-INT(R)(R=4)10.28 ms 9.22 ms 9.15 msFS-INT(E)(S=30 ms)11.85 ms 10.25 ms 10.03 ms5. 结论INT是一个有吸引力的网络监控框架,通过使用P4语言将报头和数据包处理行为实现到交换ASIC中,可以方便地监控任何封装类型上的任何类型的交换机内部状态。然而,原始INT方案可能产生高开销,特别是对于穿越长路径的小分组。FS-INT被提出来解决这个问题,并通过仿真对其性能进行了评估。我们相信FS-INT可以广泛部署在各种网络中,作为一种有前途的网络监控工具,因为FS-INT有助于[1] F.胡角Hao,K.包,软件定义网络和开放流的综述:从概念到实现,IEEE Commun。监视器家教16(4)(2014)2181-2206.[2] OpenFlow交换机规范。检索日期:2018年1月10日。[联机]。可用:http://OpenFlowSwitch. 奥尔湾[3] P4财团。访问时间:11.01.18。[联机]。可用:https://p4. 或g/。[4] 带内网络遥测(INT)规范。访问日期:2018年30日。[联机]。可用 : https : //github. com/p4lang/p4-aplications/blob/master/docs/INT.pdf.[5] N. 卡 塔 , M. 希 拉 角 Kim , A. Sivaraman , J. Rexford , Hacker :Scalable Load Balancing Using Programmable Data Planes , inProc.ACM SOSR 2016,2016.[6] N. Katta , A. Ghag , M. 希 拉 岛 Keslassy , A. 伯 格 曼 角 Kim , J.Rexford,Clove :虚拟边缘的拥塞感知负载平衡,Proc.ACMCoNEXT 2017,2017.[7] A.古普塔河,巴西-地Harrison,M. Canini,N.作者:J. Willinger,Sonata:查询驱动的流媒体网络遥测,在Proc. ACM SIGCOMM2018,2018。[8] P4C规格。访问时间:2018年11月30日。[联机]。可用:https://s3-us-west-2. 一个mazonaws。com/p4runtime/docs/v1. 0的情况。0-rc3/P4Runtime-Spec. pdf.
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 达梦数据库DM8手册大全:安装、管理与优化指南
- Python Matplotlib库文件发布:适用于macOS的最新版本
- QPixmap小demo教程:图片处理功能实现
- YOLOv8与深度学习在玉米叶病识别中的应用笔记
- 扫码购物商城小程序源码设计与应用
- 划词小窗搜索插件:个性化搜索引擎与快速启动
- C#语言结合OpenVINO实现YOLO模型部署及同步推理
- AutoTorch最新包文件下载指南
- 小程序源码‘有调’功能实现与设计课程作品解析
- Redis 7.2.3离线安装包快速指南
- AutoTorch-0.0.2b版本安装教程与文件概述
- 蚁群算法在MATLAB上的实现与应用
- Quicker Connector: 浏览器自动化插件升级指南
- 京东白条小程序源码解析与实践
- JAVA公交搜索系统:前端到后端的完整解决方案
- C语言实现50行代码爱心电子相册教程
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功