没有合适的资源?快使用搜索试试~ 我知道了~
阵列14(2022)100136知识定义网络:应用、挑战和未来工作SepehrAshtaria,Jiang,IanZhoua,MeidanAbolhasana,NeginShariatia,JustinLipmana,WeiNiba澳大利亚悉尼科技大学b澳大利亚悉尼联邦科学和工业研究组织A R T I C L E I N F O保留字:6G知识定义网络(KDN)软件定义网络(SDN)开放无线接入网络(O-RAN)本地化机器学习移动性协调网络管理资源管理A B S T R A C T未来的6G无线通信系统有望实现智能化和自动化。知识定义网络(KDN)是向自主和自动驾驶网络迈进的一步。实现自动驾驶网络的KDN范例的构建 KDN范式旨在集成智能来自动管理和控制网络。 在这项研究中,我们首先介绍了目前的网络技术的缺点。然后,KDN和相关技术进行了探讨与三个可能的异构无线网络的KDN架构。此外,还对最近关于不同无线网络应用的调查研究进行了深入调查。其目的是确定和审查合适的ML为基础的研究基于KDN的无线蜂窝网络。这些应用被分类为资源管理、网络管理、移动性管理和本地化。资源管理应用可以进一步分类为频谱分配、功率管理、服务质量(QoS)、基站(BS)交换、缓存和回程管理。在网络管理配置,路由策略,集群,用户/BS关联,流量分类,和数据聚合进行了研究。移动性管理中的应用包括用户移动性预测和切换管理。为了提高室内环境下的定位精度,对定位技术进行了探讨。我们将现有的研究分类到各自的KDN架构,并确定如何获得的知识将增强未来的网络,因此,研究人员可以扩展他们的工作,使智能和自组织的网络使用KDN范式。最后,需求,动机,应用,挑战和开放的问题。1. 介绍第五代(5G)无线通信系统提供更高的数据速率、大规模连接和低延迟通信。然而,当前的5G蜂窝架构缺乏智能和足够的灵活性来处理大规模机器类型通信(mMTC)、低延迟和增强型移动宽带(eMBB)[1]。第六代(6G)蜂窝网络是解决5G缺点的有前途的技术。为了实现这一目标,6G将在网络中实现更高的智能,以克服许多挑战并提高性能[2]。因此,5G到6G蜂窝网络需要知识平面(KP)的概念是由Clark提出的等[3]。如图1所示,KP是具有内置机器学习(ML)能力的网络上的附加平面。 KP在软件定义网络(SDN)架构中的结合被称为知识定义网络(KDN)[4],其中知识是使用ML算法处理的网络信息知识是用用于有线和无线网络中不同应用的推荐和自动化。因此,知识可以参考作为网络上的智能,在具有不同环境特征的网络上具有智能可以是网络性能的突破。例如,在资源管理问题中,可以在不同的网络情况下使用ML算法来获得和处理诸如带宽、服务质量(QoS)和功率之类的参数。然后,ML的输出被存储为网络自动化的知识。此外,在网络应用中,路由决策可以受益于知识,以便在网络人口过多时更好地发现路由。此外,包括移动模式和速度的用户信息可以用作初始阶段以生成知识,从而提高定位和切换的准确性KDN也可以被称为自主联网的应用。自主网络的概念来自ML和人工智能(AI)的发展;例如,在自动驾驶汽车中,ML代理将在没有人类操作员的情况下运行汽车同样地,∗ 通讯作者。电子邮件地址:sepehr. student.uts.edu.au(S. Ashtari)。https://doi.org/10.1016/j.array.2022.100136接收日期:2021年9月29日;接受日期:2022年2月22日2022年4月4日在线发布2590-0056/© 2022作者。爱思唯尔公司出版这是一篇基于CC BY-NC-ND许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)的开放获取文章。可在ScienceDirect上获得目录列表阵列期刊主页:www.elsevier.com/locate/arrayS. Ashtari等人阵列14(2022)1001362图1.一、无线网络中的知识定义编排。自主网络可以在没有人为干预的情况下管理和优化网络应用。在自治网络中,ML技术收集并使用网络信息或遥测来自动排除故障,指示或管理网络。因此,实时监控和检索网络遥测数据将为基于ML的优化算法提供机会,以实现6G网络的智能化。KDN中的基本构建块是网络遥测、SDN和ML。网络遥测是网络信息,例如Net-Flow数据、sFlow数据、队列占用率、策略规则和处理时间。然而,为了使网络完全自动配对,还需要诸如跳延迟、链路利用率、数据包丢弃和队列拥塞状态等信息这种临时数据可通过带内网络遥测(INT)或数据包级网络状态获得。数据包级别的网络状态信息可以使用称为P4的新南向域特定语言来收集[5],该语言允许直接从数据平面收集信息。如图南向和北向接口是SDN通信协议的一部分,其中南向接口允许控制器和交换机以及其他低级网络组件之间的通信。北向接口支持与高级组件的通信[6]。KDN的下一个构建块是SDN,它支持全局网络视图、网络可编程功能和管理网络的灵活性。网络分析和SDN的结合为KDN范式提供了基础。然而,ML算法将成为KDN的核心,这意味着ML技术可以提供一种有效和优化的策略来自主运行网络。ML是KDN范式的关键组成部分,它提供了一种解决方案,给出了遥测数据。KDN概念的指示之一是开放无线电接入网络(O-RAN)。O-RAN是一种新兴技术,能够实现服务异构性、按需服务部署和异构设备的同时协调[7]。过去几图二. SDN北向和南向接口。多年来,研究行业已经做出了各种努力来增强无线电接入网络(RAN)[7,8]。 其中,云RAN或集中式RAN(C-RAN)是一种有前途的RAN架构,有助于降低基带费用。此外,虚拟化无线电接入网络(V-RAN)带来了云和虚拟化的好处以提高网络的敏捷性、可扩展性和灵活性。此架构帮助RAN获得了虚拟化和降低成本的新机会。V-RAN简化了RAN设备和部署的管理。虽然C-RAN和V-RAN都具有成本效益,并且随时可以对服务需求的任何更改进行更改,但它们缺乏开放性,无法最大限度地发挥虚拟化的优势。为了克服与C-RAN和RAN相关的限制,O-RAN兼容来自不同供应商的基带单元(BBU)和远程无线电单元(RRU)软件和硬件[9]。O-RAN是一种开放式硬件,具有运营商定义的RAN架构,可为未来的蜂窝网络提供智能无线电控制。将有助于适应网络中的智能的其他创新技术是将RAN的传统控制和数据平面分解为引入RAN智能控制器(RIC)[10]。O-RAN使用SDN和网络功能虚拟化(NFV)原理,并应用ML算法来创建蜂窝网络中的自动化。O-RAN使用开放式基础设施来简化控制平面,并提供可编程性。这些都清楚地表明了对KDN架构的需求,即通过添加KP并结合ML算法来简化流程,从而为支持ML的应用程序提供网络智能。由于ML在无线网络中的应用的发展和SDN的存在,很少有人对与KDN架构兼容的相关研究进行调查。[4]的作者介绍了KDN中ML算法的基础和应用,以控制和操作网络。他们使用SL来获得流量负载的中间知识,以执行网络配置。在[12]中,在KDN的上下文中,使用具有卷积神经网络(CNN)的深度RL来基于复杂网络中的QoS做出路由决策。在[13]中,提出了深度学习(DL)算法来产生三个人工智能(AI)模块,以管理数据中心网络(DCN)系统中的可扩展性和能耗。在这项研究中,一个混合的光/电直流网络的知识定义的网络编排(KD-NO)软件模块的管理设计。软件模块采用KDN架构,在KD-NO的知识平面中部署三个基于DL的AI模块,对流量、数据延迟和硬件需求进行智能在[14]中,作者提出了一种新的网络架构和网络解决方案,用于5G中的高用户密度。他们的研究利用了SDN、KDN和NFV,在KDN的背景下利用了ML。此外,由于大规模的连接 在设备的基础上,提出了通过应用KDN和网络遥测的自驱动网络的概念[15]。尽管有研究表明S. Ashtari等人阵列14(2022)1001363图三. 纸的结构。在KDN中,还没有全面研究ML在无线网络不同层中的应用及其在KDN架构中的关系和使用的调查。此外,还存在一些局限性在最近的工作和应用KDN的整体挑战,这也需要注意KDN是完全功能。此外,在网络中拥有KDN的好处在拟议的研究中明确说明。例如,[4,15]的作者研究了KP的一般优点和用例,并介绍了KDN交换机操作符及其架构。更具体地说,[12]中的工作研究了用于QoS感知路由的深度强化学习(DRL)。文献[13]提出了一种通过在网络中部署KDN来缓解数据中心拥塞问题的解决方案。这些工作证明了在无线网络中做出决策之前调整知识的好处。这项研究的动机来自智能和自动化网络的缺乏。在不久的将来,网络拥塞和智能应用将迫使网络具有自我管理系统。考虑到5G的缺点和持续的研究活动为了在无线网络中实现智能化和自动化,特别是在6G中,需要进行更结构化和全面的调查,以了解基于KDN的ML网络的潜在优势。具体来说,我们首先介绍了三种可能的KDN架构适用于无线网络,包括集中式,分布式,和混合。然后,我们集中介绍最新的成就在从MAC层到应用层的ML应用中,包括资源管理、联网、移动性管理,和本地化。ML是KDN的核心,任何需要自动化和自组织的未来网络都必须适应基于KDN的ML算法。这就是为什么我们正在对适合网络自动化的ML类别中进行的所有研究进行全面研究。研究的重点是实现ML的新成果,并利用每一个适应最兼容的ML算法在网络问题。然后,我们将ML方法映射到最合适的KDN架构。映射目标帮助研究人员识别目标区域和相关ML,支持合适的KDN架构。 本调查旨在使用基于ML的研究对KDN应用进行全面分析以实现当前和未来无线网络的智能化和自动化。我们的贡献总结如下:(1) 简要说明无线网络的缺点和网络自动化的潜在解决方案(2) 介绍了KDN和KDN中的主要构建块,如SDN,网络遥测和ML算法的表示,交付。(3) 对SDN和KDN进行了全面的比较讨论。(4) 我们介绍并分析了三种可能的架构KDN在无线蜂窝网络。(5) 讨论了SDN的分组级编程和南向接口的全面研究,包括开放流(OF)和被称为P4的域特定语言(DSL)S. Ashtari等人阵列14(2022)1001364其中,包级编程用于对收集的数据执行ML算法,并在学习过程之后应用基于ML的指令。(6) 概述了监督学习(SL),无监督学习(UL),强化学习(RL),迁移学习(TL)和神经网络(NN)的基本原理和无线网络中的常见应用。(7) 在KDN范式的ML的应用进行了彻底的审查,包括资源管理,网络,ING,移动性管理和本地化。本调查重点关注MAC层、网络层和应用层(PHY层不在本研究范围内为了覆盖无线网络的每个方面网络应用进一步分为路由选择、聚类、用户关联、流量分类和数据聚合。移动性预测和切换管理位于移动性部分,最后是室内定位。(8) 最后,确定了与用于生成知识的ML算法相关的术语和条件以及应用KDN的动机。然后,总结了KDN面临的挑战和当前的问题进行了讨论,最后得出结论。本文的其余部分组织如下:在第2节KDN中,解释了KDN的使能技术,如SDN,网络遥测和ML。然后,在第3节中,比较了SDN和KDN,并说明了KDN的潜在架构。在第4节中,除了当前南向接口的一些缺点和P4的应用之外,还深入研究了用于分组级编程的南向接口OF和P4。第5节描述了KDN中使用的一些流行的ML技术, 简要介绍了它们在无线通信网络中的应用。在第6节中,对资源管理、网络、移动性管理和本地化进行了完整的研究。稍后,在第7节中,与ML算法相关的术语和条件 讨论了机器学习算法的选择、实现复杂度、时间消耗、训练数据的可用性以及机器学习算法的选择建议。此外,在第8节中,提出了应用KDN的动机,包括缺乏网络知识,自组织网络,实现可靠和高性能,学习模式和预测未来,处理复杂问题的能力,以及避免错误的决策,然后在第9节中提出了KDN的挑战和开放问题。最后,第10节总结了本研究。图图3以图形方式描述了调查的结构,以便更好地理解调查是如何根据每个部分进行成形和分析的。此外,为方便读者2. 通往知识定义网络据估计,到2030年,蜂窝网络中的连接设备数量将达到1000亿[16]。此外,大部分网络占用是由于对高清视频数据的需求,这导致了大量的数据流量[17因此,许多现有的算法不能处理业务流,导致信息的丢失。此外,当网络环境是动态的和随机的时,算法不能提供最佳的系统性能。因此,这些算法无法满足6G蜂窝网络的要求。为了克服这些问题并获得更好的性能,研究人员开发了优化方法来获得有效的解决方案,以接近最佳和次优性能。然而,许多研究假设一个静态的网络环境,而不是考虑网络的随机性[20,21]。此外,传统的网络管理和全局数据同步收集的集中式算法也会受到影响,见图4。 传统网络架构与SDN架构。连接的设备数量增加[2]。因此,一个可行的解决方案是使用KDN来自动优化,诊断和故障排除网络[4]。为了启用KDN,具有ML功能的集中式控制器必须从网络收集信息,以通过适当的ML算法创建知识。用于收集遥测数据的集中式控制器必须具有SDN功能。软件定义网络(SDN)是一种新的网络范式,用于解耦数据和控制平面[22]。将这两个平面解耦使SDN能够作为集中式控制器来管理网络。SDN控制器的全局视图提供了诸如网络灵活性、可编程性和传统网络的高效管理等优势在传统的网络架构中,网络管理员需要手动配置和故障排除他们组织内的交换机和路由器[23]。 从图4、传统网络架构与SDN的区别可见一斑。SDN在控制平面内提供网络可编程性,而传统网络不提供任何灵活性。传统网络仅依赖于物理基础设施来创建连接和运行网络。另一方面,SDN使用户能够使用软件程序而不是物理基础设施来配置新设备[24]。除了网络软件化之外,KDN还需要充分的数据收集,以做出适当和准确的决策。 随着数据平面元素的新进步,路由器和交换机能够进行计算和存储,这使得网络监控和网络遥测变得可访问[25]。网络遥测提供流量信息、实时数据包信息和其他关键数据包级数据,以及网络状态监控和组织集中式网络分析。因此,网络遥测和网络分析呈现了网络性能度量的更丰富的视图,提供了优于传统网络管理技术的额外优势。SDN和网络分析的结合提供了KP所需的基本要素。然而,让KDN完全发挥作用的最后一块拼图是集成ML。ML 使用网络遥测和历史数据来处理和查找有关网络的有价值信息,并将这些信息存储为知识,以提高网络性能。ML算法通常分为监督学习、无监督学习和强化学习[26]。在SL中,学习代理使用将数据集作为输入向量,并基于先前的输入及其提供的输出将输入映射到输出。数据集是标记样本的集合,其中每个元素称为特征向量。在UL中,数据集是未标记样本的集合,学习代理试图对输入进行分类。 最后,在强化学习中,机器不断观察环境以改进决策过程。该技术根据环境反馈不断提供更新的策略。每一种ML算法都可以辅助无线网络的不同应用。例如,在SL中,KP学习网络变量的行为,例如网络配置和流量负载,这将使系统能够增加S. Ashtari等人阵列14(2022)1001365表1缩略语.5G第五代MBS宏基站6G第六代MDP马尔可夫决策过程AI人工智能ML机器学习ANN人工神经网络mMTC大规模机器类型通信到达角毫米波毫米波API应用编程接口MPLS多协议标签交换ASIC专用集成电路MRE改进型MS移动台基带单元BM行为模型BS基站NFV网络功能虚拟化CHO条件切换NLOS非视距CNN卷积神经网络无阻流CP控制平面C-RAN云无线接入网ONF开放网络基础CRE小区范围扩展O-RAN开放式无线接入网络认知无线电网络OSPF开放最短路径优先CSI信道状态信息OVS open vSwitchD2D设备到设备PBS微微基站DCN数据中心网络PCA主成分分析DL深度学习PISA协议独立交换机架构DNM深度神经模型POF协议不经意转发DNN深度神经网络PU主用户DPDK数据平面开发套件PVS POF开关DPPO分布式邻近策略优化QoE体验质量DQN深度Q网络QoS服务质量DRL深度强化学习RAN无线接入网DSL域特定语言RB资源块DT决策树RIC RAN智能控制器ECR能耗比RL强化学习ELM极限学习机RNN递归神经网络eMBB增强型移动宽带RRH远程射频头eNB演进节点B RRU远程无线电单元ESN回波状态网络RSRP参考信号接收功率ETL提取-变换-加载RSRQ参考信号接收质量FBS毫微微基站RSS接收信号强度FC毫微微小区RSSI接收信号强度指示符FFNN前馈神经网络RSU路侧单元GF梯度跟随SBS小基站gNB千兆节点B SCN小小区网络GPU图形处理单元SDN软件定义网络HAL硬件抽象库SINR信干噪比HetNet异构网络SL监督学习ICIC小区间干扰协调SMU频谱选择实用程序IDE集成开发环境SNR信噪比INT带内网络遥测SOM自组织映射IoT物联网SON自组织网络IP互联网协议SSU频谱选择实用程序ISP互联网服务提供商SVD奇异值分解IVN智能车联网SVM支持向量机JSON JavaScript Object Notation SU secondary userKDN知识定义网络TL迁移学习KD-NO知识定义网络编排器TLV类型长度值KNN k最近邻TTP表类型模式KP知识飞机无人机LFU最不常用UDN超密集网络LOS视距UE用户设备LRU最近最少使用UL无监督学习LTE长期演进V2I车辆到基础设施LTE-U LTE免许可V2 V车对车M2M机器对机器VANET车载自组织网络MAB多臂强盗V-RAN虚拟无线电接入网络MAC介质访问控制加权最小均方误差MBM改进的Bushand Mostelle无线传感器网络一旦特征被馈送到算法,网络性能。UL通过遵循数据中的相关性来帮助网络运营商。 例如,ML可以预测对用户网络的移动性影响链接.此外,在RL中,学习算法将发现导致网络中最佳配置的最佳动作。当RL适应环境时,它最终确定目标策略。该方法基于目标策略返回最优操作,然后将其应用于KDN控制器以实现最佳配置。RL为资源管理提供了广泛的好处[27]。因此随着网络软件化、网络遥测和机器学习在知识管理中的集成,KDN的基础已经出现,它将提供克服传统资源管理、移动性管理、联网和本地化的缺点的优点[4]。3. 知识定义网络传统的蜂窝网络具有复杂性、缺乏灵活性、专有和昂贵的设备以及复合控制平面协议等缺点.然而,将运行网络应用程序的想法应用于逻辑集中的控制器改变了一切。SdnS. Ashtari等人阵列14(2022)1001366图五. KDN架构。体系结构允许可编程性、更直接的配置和网络管理。为了在软件定义的蜂窝网络中向前迈进一步,KDN除了SDN的可编程性和集中控制之外还3.1. 软件定义的网络与知识定义的网络在SDN中集成知识定义网络是一个新的概念,称为知识定义网络(KDN). KP的概念是在传统SDN的两个平面上增加一个平面。这种新的范式包括SDN、数据分析和ML。KDN范式有几个优点:首先,它具有网络的全局视图,其次,它使遥测数据能够由管理平面收集,以通过ML将数据转换为知识。这些知识稍后将转化为节点的决策,以实现有效的网络操作[18,19]。与传统网络相比,KDN的好处是它可以根据从网络获得的知识自动运行。图5示出了KDN架构,包括数据平面、控制平面、管理平面和KP。KDN中的数据平面负责转发、丢弃、处理和数据包修改。该层的工作方式与SDN中的数据平面非常相似,它由物理和虚拟设备元素组成。这一层的操作不知道网络的其余部分,并依赖于来自其他平面的指令和控制规则控制平面交换信息并更新数据平面处理和匹配策略规则。逻辑上集中的控制器使用南向应用编程接口(API)交换数据并更新策略。控制器从数据平面收集数据和网络状态,并更新流表以执行动作。 在KDN中,数据还被用来让KP知道需要采取哪些适当的行动。然后,控制器从KP接收动作并相应地更新流表。这些操作通常用于在填充数据平面管理平面促进网络拓扑、支持服务和网络设备的配置。这一层必须确保网络以最高性能充分运行。KDN中的网络功能也由集中式控制器处理,负责监控数据平面和观察网络分析。然后,网络分析将被收集并存储为网络状态和遥测数据。该信息也由KP监控以用于网络拓扑的可能更新。KP是架构的大脑,负责对网络行为和决策进行建模。这些决策是针对网络中的不同应用做出的,例如资源管理,网络配置、移动性管理和本地化。在这一层中,通过ML算法创建知识,并获得新的策略。3.2. KDN架构许多研究已经引入了KDN架构。例如,[28]的作者在SDN架构的上下文中重申了KP的概念,以及SDN范式的两个平面。 从其网络架构中可以看出,KP位于控制和管理平面之上。 KP的集成生成了用于决策的行为模型和推理过程。这种架构使KP能够通过控制和管理平面全面查看和控制网络。其他研究[12,14,29]与KDN具有类似的架构。在[14]中,在所有层的顶部使用相同的KP,但它使用跨层管理和监控平面,并使用ML算法来管理其余平面。[14]中提出的方法在单独的编排层和嵌入在管理平面中都利用基于ML的算法。因此,研究无线网络中KDN的体系结构以确定在灵活性和性能方面最合适的体系结构是很重要的据预测,在无线网络中的KDN的结构可以是集中式,分布式或混合。在集中式架构中,如图6(a),SDN控制器位于中心并使用OpenFlow(OF)、P4、网络管理等从节点收集信息。然后,通过集中式知识平面处理收集的信息,然后将指令和规则传输回每个节点。新规则使用直接和间接方法进行更新。 直接方法使用先前处理的信息并立即将新策略发送回用户设备(UE)。 间接方法使用ML算法来在被发送到UE之前确定新规则。在在6(b)中所示的分布式体系结构中,各个设备维护本地知识。在这种架构中,每个节点从环境及其周围环境收集数据,然后独立地应用基于贪婪的ML策略来获取知识。贪婪策略可以根据先验知识(诸如TL)或使用新的基于ML的优化算法来确定。例如,在路由方案中,节点可以从其他节点收集信息,并使用基于ML的方法来找到最佳路由,然后与其他节点共享所获取的知识。在混合架构中,如图6(c)所示,知识被保持在极端边缘和核心处。在那里,它只是一个保持知识更新或同步的问题。控制器和设备根据它们收集的信息智能地共同行动。这些信息由ML算法处理以获取知识并将新规则注入系统。该混合方法结合了贪婪策略和集中式知识,以提高网络的性能。此外,还可以存在根据应用在集中式和分布式4. 南向协议在本节中,将简要介绍SDN及其支持标准的历史。然后,完全澄清P4对OF和P4在网络上的好处。数据收集是KDN实现功能的关键,而数据收集的两个有力工具是OF和P4。这一部分阐述了这两个S. Ashtari等人阵列14(2022)1001367见图6。 建议的KDN架构。4.1. 软件定义网络传统IP网络存在两个主要问题,主要是网络管理的复杂性和难度[30]。这种复杂性是由于各个网络设备(如路由器和交换机)的配置造成的。管理网络的困难是由于数据平面和控制平面的紧密连接所以传统架构的分布式特性和手动配置网络设备的困难导致了SDN范例的创建[31]。SDN的实现方式有很多— 覆盖网络和使用OF协议API来控制虚拟交换机。覆盖网络是SDN概念的第一个部署,并且在SDN范式流行之前已用于数据中心。在覆盖网络架构中,在基本传输层(物理层)之上添加网络层。覆盖网络使用虚拟链路在底层物理平台之上创建虚拟网络。在网络末端的两个节点之间的虚拟连接是使用标签/标记来创建的,以创建从一端到另一端的虚拟隧道(覆盖链路)。 网络被编程为管理网络交换机和管理程序(SDN控制器和相关联的虚拟SDN网络之间的中间层)之间的隧道。覆盖网络中的节点基于覆盖拓扑结构而行动,覆盖拓扑结构由某些行为组成:合作或自私。在协作模式下,每个节点创建覆盖链路,以允许其他节点通过不同的节点路由其流量。在自私模式中,节点创建覆盖链路以在网络中建立连接以最大化他们的利益。覆盖网络的目标是通过优化路由决策来提高服务质量。覆盖网络可以通过覆盖协议软件部署,而无需互联网服务提供商(ISP)的参与。然而,这种技术也有一些缺点,例如增加延迟、缓慢扩展数据和重复数据包。此外,覆盖层无法控制路由数据包;它只知道消息到达目的地之前的轨迹[32SDN范式在2008年的发展以及来自各个网络设备的控制和数据平面的分离解决了传统网络中的许多先前问题。此外,SDN在网络中的可编程功能简化了网络管理并实现了创新[34]。SDN控制器通过OF协议API在交换机之间进行交互,其中OF交换机包含流表,包括用于处理具有特定动作的分组的规则[35]。随着OF的到来,SDN这个术语诞生了,早在2009年就被研究界使用[36]。然而,在这方面,直到2011年,它才对网络供应商产生了很大的影响,OF消除了配置复杂性和自动化网络管理。OF的开发始于2011年,最新版本于2016年发布。每个版本的摘要如下[37• 第一个OF版本于2008年3月发布。然而,直到2009年12月,OF1.0版本才重塑了大型企业和服务提供商网络。• 版本1.1通过添加多个流表和多协议标签交换(MPLS)实现了创新,包括修改数据包、复杂的转发操作和更新操作。该版本于2011年2月推出• 2011年12月,版本1.2通过授权交换机和多个控制器之间的通信并支持匹配过程的IPv6来• 2012年6月,OF版本1.3发布,解决了骨干桥接、按流流量计和隧道。• 版本1.4出现在2013年8月,提供了更容易访问的方式来向协议添加新功能,包括类型长度值(TLV)格式以匹配字段,角色状态事件,流监控等。• OF版本1.5于2014年12月发布,通过添加出口表,实现了多台交换机之间的快速同步,并处理和匹配入口数据包。最后,最新版本的 OF Version 1.6 获 得 批 准 , 但 它 只 提 供 给 开 放 网 络 基 金 会(ONF)组。以上所有版本都有子版本,包括错误修复和小的改进。但是,版本升级的主要转换发生在不同版本卷(1.x)之间。OF可以填充S. Ashtari等人阵列14(2022)1001368交换机的转发表,还可以添加和删除近50种不同报头类型的转发表项。因此,供应商规定他们支持使用报头的控制平面为了管理大规模网络,SDN使用OF标准来提供更简单的配置选项。虽然SDN分离了控制平面和数据平面,但OF仅应用一组固定的协议来填充规则,通过使用控制平面来控制数据平面。 然而,这些协议是可用的硬件路由器和交换机的一部分可以理解的[40]。因此,OF不控制交换机所支持协议的行为。它只提供了一种在交换机中填充表的方法。此外,当前的OF具有特定的协议报头用于转发分组。转发打包器需要转发表,在OF标准中称为流表。 这些表定义了帧如何从交换机转发出去,其中这些表通过匹配特定的报头字段进行操作。这些表格在短短几年内从12个字段增加到41个字段,这是一个巨大的挑战。这增加了规范的复杂性,而没有通过添加新的头文件提供任何灵活性。P4是一个降低OF复杂性的工具。P4与OF并行(或在没有OF的情况下单独运行)以改善网络功能的必要性这是有希望的[5,41]。图7描绘了OF和P4的混合网络利用[40]。4.2. P4编程协议无关的包处理器语言缩写为P4。2013年,通过BarefootNetworks、英特尔、斯坦福大学、普林斯顿大学、谷歌和微软的合作,开发了用于可编程协议无关分组处理器的P4高级语言[5]。 P4支持数据层的可编程性,并允许交换机处理 包。因此,供应商和企业将能够为可编程交换芯片开发自己的面向应用的软件,从而为网络带来几个好处,例如减少分组处理时间,可修改分组报头和交换协议独立性。这些可编程交换芯片基于协议无关交换架构(PISA)。P4于2014年首次推出,旨在通过提供数据平面编程的灵活性来解决数据平面的局限性在支持OF标准的网络交换机中[42,43]。 最初的P4语言被称为P414,它只假设不同/特定的设备功能,并且能够对可编程开关的子集进行编程[40]。���随着语言的发展,2014年12月16日带来了新的功能,如稳定的语言定义,支持许多开关,并删除了设备能力的假设。���通常,P4通过包括交换机、路由器等的网络元件的流水线来处理分组。它基于基本转发模型,该基本转发模型使用分组的解析并将匹配+动作表资源应用于入口[41],其中抽象分组转发模型示于图八、解析器是从每个传入的数据包中识别报头的过程。在识别标头后,将执行查找功能,根据标头字段查找适当的匹配项,然后在桌子P4编程语言侧重于规范这两个程序的控制流程都是通过流水线实现的。这些规范由编写和执行P4文件的程序员控制。执行文件时需要使用翻译工具,P4计划翻译有两种选择:一种是在每个执行周期由解释器执行,另一种是由编译器执行一旦程序被执行。这两种方法各有优点;前者能够最大限度地减少优化操作中的误差,而后者则可以减少程序开发和运行之间每个周期的翻译时间。P4编译器由不同的部分组成,如图所示。第九章一些 可用于执行P4文件的最常用编译器总结如下:见图7。 采用OpenFlow架构的P4。见图8。 P4转发模型。(1) 行为模型(BM):这是一个用C和C++编写的P4软件交换编译器。 编译器将P4程序作为输入,然后基于输入创建C/C++程序。BM的第一个版本被称为p4 c-behavioral,它依赖于一个程序来生成P4的高级中间表示(昵称为P4-HLIR)。P4-HLIR在Python编程语言中生成一个与目标无关的P4解析器,它帮助编译器为预期目标开发正确的C代码。然而,这个行为版本有一些问题,比如每次修改P4程序时都会生成额外的代码并重新编译代码。 后来,推出了BM的新版本,即IBM 2,是用C++编写的,支持静态行为。要在交换机上运行P4程序,首先将P4源代码转换为JavaScript Object Notation(JSON)文件,然后将其与P4文件组合并作为解释器的输入。 在JavaScript 2中有一个名为p4 c-bm的模块,它生成JSON配置和C++代码。C++文件可实现交换机上控制平面和数据平面之间的通信。最后,���XNUMX编译器支持XNUMX414和XNUMX416,并且具有实际功能,例如支持不同的工具(例如,������控制平面、集成开发环境(IDE)软件等),多个后端和可扩展架构[44]。(2) 独立的硬件目标:作者在[45]中提出了一个目标独立的编译器,以便它可以降低实现的复杂性。在他们的技术中,独立的目标程序被链接到一个称为硬件抽象库(HAL)的库,该库为每个目标实现。它们将硬件规格和独立于硬件的功能分开,以提高可移植性. 然而,他们的方法只针对英特尔平台实现, Intel Data PlaneDevelopment Kit(DPDK)此外,该编译器的性能也低于依赖硬件的编译器.(3) 协议无关软件交换机:这是一个可编程的协议无关软件交换机,也称为PISCES。S. Ashtari等人阵列14(2022)1001369见图9。 P4编译器内部。PISCES是一种软件交换机,其中转发行为由高级DSL或P4获得。PISCES源自Open vSwitch(OVS),由P4配置。在这个协议中,程序员必须指定如何处理数据包。比如说, 如果在P4中我们分配PISCES来处理IPv6数据包,程序合并器需要引入IPv6数据包,包括IPv6报头的格式和字段。PISCES带来了几个好处,例如个人协议报头,添加/删除标准报头,以及易于添加新功能[46]。大多数可用的P4编程翻译器都是编译器。然而,存在开发口译员的研究[47],这仍然需要进一步关注。目前,大多数的焦点是可编程的硬件 交 换 机 与 PISCES 被 编 译 成 一 个 定 制 的 基 于 软 件 的 POF 交 换 机(PVS),其中POF代表协议无关转发。因此,P4通过填充表来启用用于控制交换机的转发行为的新功能。此外,P4编译器允许我们为交换芯片使用不同的API。 对于目前市场上的大多数开关,该芯片具有板上不变的编程模块。这些API由P4编译器自动生成,用于填充开关表。利用可编程交换机的新功能将改变交换机的操作方式,但对于旧的固定功能交换机来说,OF在联网中仍然是有用的。因此,一个名为openflow.p4的程序能够在OF的支持下对交换芯片进行编程。因此,P4和OF可以为网络协同工作,这样P4就是语言,这就是程序。 此外,虽然OF本质上是为控制平面和数据平面分离的SDN网络设计的,P4旨在对交换机或路由器的行为进行对于是否由开关操作本地控制没有限制系统或由SDN控制器自动地进行。网络信息可以使用OF和P4获得,并且可以在KDN中处理为新政策的数据计划提供信息。 研究人员可以选择他们自己的计划,以了解如何以及哪种协议适合他们的工作,并在此基础上,他们可以确定适当的翻译工具,用于包级编程。5. 机器学习技术人工智能(AI)是计算机科学的一个进步分支,涉及各个领域的自动化,ML是AI的一个应用。ML被应用于开发系统,从模式和数据中学习,而无需显式编程[48]。KDN架构需要采用ML技术来优化和创建网络智能。ML应用程序已成功用于网络分析,在线客户支持,搜索引擎,计算机视觉和信号处理应用[49]。因此,基于ML在各个方面的研究使KDN范式能够访问和适应合适的ML算法用于适当的任务。在本节中,我们将介绍一些与KDN相关的ML方法,包括SL、UL、RL、NN和TL。在第6节中使用它们之前,我们将简要解释每种算法并探索不同的技术。因此,任何对该领域感兴趣的人都将获得基于ML的技术的抽象知识,并理解ML算法为什么以及如何用于无线通信应用。5.1. 监督学习监督学习(SL)是一种基本的ML算法,它采用输入特征网络,并试图从输出信息中产生模型。SL进一步分为两类:回归和分类。在回归问题中,我们试图预测连续值输出,而在分类问题中,预测是离散值输出。分类问题用于区分不同的事物,例如图像处理中的预测,以区分猫和狗[50]。相反,回归问题不能被认为是分类问题[51]。以下是SL技术的热门调查作品(1) 线性回归:提供线性模型进行预测,特征输入的加权和。线性回归使用梯度下降法来最小化损失函数并优化系统性能。线性回归只能表示线性关系,这降低了预测性能,但对于许多应用程序来说,它可以提供快速且可接受的结果。关于线性回归的更多规范和信息可参见[52]。(2) 逻辑回归:分类问题用于逻辑回归,将观测值分配给离散的输入类集合。例如,该算法的常见用途是预测垃圾邮件、学生及格或不及格成绩、欺诈网站等。该学习算法使用梯度下降法来优化解决方案。与线性回归相比,在逻辑回归模型中,将0到1之间的数字分配给每个数据点,而不是拟合直线或超平面。预测值是由sigmoid函数生成的概率。换句话说,从函数输出,学习算法决定输出数据属于哪个类别。这种算法有一些缺点, 适用于线性回归。例如,如果数据完全分离,算法就不能再训练,或者解释更困难,因为解释使用乘法而不是加法。然而,一些优点使算法有趣,包括多类分类和数据的概率分布。关于逻辑回归的更多细节见[52]。(3) 支持向量机(SVM):这种方法是一种线性分类器,它通过使用一个N-1超平面来分离训练数据,这些数据是N-维向量。必须选择最佳超平面以增加两个给定类之间的边际空间。此外,该算法适用于使用核函数(包括高斯核和多项式核)的非线性可分离(非线性分类器)数据集。虽然SVM需要很长时间来区分报警数据集,并随着数据集中噪声的增加而退化,但该方法对高维空间有效。这种方法使用一小部分内存,并严格限制分离[53,54]。(4) K-最近邻(KNN):KNN算法是一种简单而有价值的算法,没有明确的训练要求。该方法用于分类和回归问题,其中输入数据由最接近的训练组成S. Ashtari等人阵列14(2022)10013610见图10。 KNN算法的抽象模型。特征空间中的数据集。K值是超参数,应该仔细选择,但是可以在使用不同的K值运行KNN多次之后选择最佳的K值。由此产生的KNN输出可用于分类
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- BottleJS快速入门:演示JavaScript依赖注入优势
- vConsole插件使用教程:输出与复制日志文件
- Node.js v12.7.0版本发布 - 适合高性能Web服务器与网络应用
- Android中实现图片的双指和双击缩放功能
- Anum Pinki英语至乌尔都语开源词典:23000词汇会话
- 三菱电机SLIMDIP智能功率模块在变频洗衣机的应用分析
- 用JavaScript实现的剪刀石头布游戏指南
- Node.js v12.22.1版发布 - 跨平台JavaScript环境新选择
- Infix修复发布:探索新的中缀处理方式
- 罕见疾病酶替代疗法药物非临床研究指导原则报告
- Node.js v10.20.0 版本发布,性能卓越的服务器端JavaScript
- hap-java-client:Java实现的HAP客户端库解析
- Shreyas Satish的GitHub博客自动化静态站点技术解析
- vtomole个人博客网站建设与维护经验分享
- MEAN.JS全栈解决方案:打造MongoDB、Express、AngularJS和Node.js应用
- 东南大学网络空间安全学院复试代码解析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功