掌桥专利:专业的专利平台
掌桥专利
首页

一种软件定义网络机器学习路由优化方法

文献发布时间:2023-06-19 09:44:49


一种软件定义网络机器学习路由优化方法

技术领域

本发明属于互联网通信控制技术领域,涉及一种软件定义网络(SDN)机器学习路由优化 方法。

背景技术

随着软件定义技术同互联网的结合产生了软件定义网络(Software DefinedNetworks, SDN)成为一种新型的,具有吸引力的解决方案。SDN采用了网络设备控制面与数据转发面 相分离的架构,其中设备控制平面的逻辑设备(Controller)能够实时监测和获取当前网络的 状态,使得网络管理者能够根据自己定义的路由规则来管控网络流量转发。

为了面对网络业务流量持续增长,以及业务需求分裂带来的数据流量压力,网络运营商 为了维护网络的正常运行,保证正常的用户体验,要求其必须采取实际有效的网络资源调度 策略。另外一方面,虽然通过提高网络链路带宽,提升交换设备处理速度,可以暂时缓解流 量增长对网络带来的压力,但是这种方法不能有效的调解资源与需求的关系,而且会造成很 大程度的网络吞吐能力的浪费。所以,如何在尽可能少的改动网络硬件设备的前提上,优化 网络的路由转发处理能力,满足网络用户不同的业务需求,具有了现实的研究意义。

在网络流量工程中,动态路径的规划是不容忽视的重要研究内容,其目的是为了优化网 络性能而为数据转发寻找最优或较优路径。在SDN架构出现之前,针对传统IP网络中的数 据封包转发路径的计算多采用最短路径算法。

网络的流量的动态控制和调整是传统网络的普遍难题。因为任何的路由调整都必须重新 计算所有的链路权重,从而对全网的业务流量都带来了不可控的影响。所以在传统网络中, 网络管理者无法实现对指定链路或者业务的灵活控制。

另外,在解决此类约束满足问题的方法中,群体智慧型算法也扮演着重要的角色。在众 多该类算法中,蚁群算法被广泛地应用于网络流量工程这一实际问题。多种基于蚁群优化算 法(Ant Colony Optimization,ACO)衍生出来的具体解决方案都是将动态路由问题建模成单 一目标或者多目标的最优化数学问题,从而在多个约束条件下寻找路径最优解。

发明内容

为解决传统网络路由选择算法的时间损耗问题,本发明利用现有优秀的启发式算法以及 它的输出结果,训练并构建一个基于机器学习甚至是深度学习的一个动态路由决策的模型及 路由决策组件。在完成机器学习相关模型的训练之后,该组件便可以完全替代复杂的启发式 算法。之后在全新的网络状态下,当控制器收到新的动态路由请求时,其便可以调用元层中 相应的机器学习模型,由模型在实时的状态下直接给出一个近似启发式算法的结果,由于机 器学习模型优异的时间性能,这一过程只需要非常短的运行时间,而且满足实际网络的需要。

为达到上述的网络功能,本发明的技术方案如下:

步骤1、对使用OpenFlow协议框架下的软件定义网络数据包特征进性数据预处理;

步骤2、使用收集的特征数据对机器学习模型进行学习训练;

步骤3、使用训练好的模型对软件定义网络拓扑发现和路由选择功能进行改进;

步骤4、利用机器学习方法对网络中的数据做出路由选择;

步骤5、在网络结构变化时,使用传统路由启发式算法进行路由选择;

步骤6、将该变化后发送的网络数据包进行特征采集,该网络特征用于更新机器学习模 型;

步骤7、用新训练的机器学习路由模型,替换网络变化前的模型;

步骤8、由更新的路由选择模型,后续完成后续网络数据的路由选择。

进一步,方法使用OpenFlow环境协议框架,在SDN网络中使用,对网络中转发的数据 包特征提取内容包括但不限于(源IP地址,目的IP地址,源MAC地址,目的MAC地址, 网络时延,负载,包转发路径等)。

进一步,路由决策元层中,我们使用了机器学习模型。针对其的训练样本需要包含两部 分,样本特征以及样本标签。机器学习模型将启发式算法中使用的网络状态参数,以及所有 的约束条件作为其样本的特征。至于样本的标签,将这些数据转发路径的数字标号作为机器 学习模型的样本标签。模型收敛后,该模型即可完成传统网络启发式路由算法的功能,为SDN 网络中数据提供路由功能。

进一步,将训练完成的路由选择模型,应用于使用OpenFlow协议的SDN网络控制器(包 括但不限于现有的软件控制器:FloodLight,RYU,OX,POX及其他未开源的企业级控制器) 中,替代控制器中网络拓扑组件中原有的拓扑发现模块,根据网络中传输的数据包特征,产 生对应的交换机流表信息,使流入的数据根据对应的流表信息转发。

进一步,利用机器学习的方法解决网络资源快速分配。由于启发式算法收敛速度慢,无 法达到高速网络实时相应的要求。而为了能够得到优化的路由,算法又必须进行多次迭代更 新。本方法利用机器学习甚至深度学习的模型去学习启发式算法的路由计算能力。模型收敛 之后,面对全新的连接请求,机器学习模型便可以通过与内部已知权重参数的简单计算得出 最终的优化路径。而这一过程的时间花销非常小,完全满足实际网络部署的要求。

进一步,在网络结构发生变化时。保留传统启发式路由算法,并在网络结构发生变动时, 使用传统算法进行路由转发工作。

进一步,在网络发生结构性变化后。由于机器学习模型需要重新学习才能接收新的特征 值。因此引入机器学习模型的更新机制。该机制保证了在机器学习方法待更新或出现故障时, 网络数据的正常转发。

进一步,在进行步骤5新流入数据转发的同时,提取变化后的数据包特征,包括但不限 于(源IP地址,目的IP地址,源MAC地址,目的MAC地址,网络时延,负载,包转发路 径等)。并将该特征用于新的机器学习模型训练。

进一步,待新的路由转发模型训练完毕,更新控制器中的路由转发模型,继续用于变化 后的网络数据转发。

附图说明

图1为本发明流程图。

具体实施方式

下面将结合附图,对本发明的实施例进行流程描述,应当正确理解,该实施例仅作为本发明的说明样 例,并不限制本发明所申请的保护范围。

步骤一:

在应用的网络中,我们选择为每一个接入节点对(s,d),s≠d构建一个专属的节点对模型。如果一个 的网络中包含n个接入节点,那么将需要构建

步骤二

本发明可使用但不限于监督式机器学习的方法,对得到的训练集进行训练,在基于机器学习的路由决 策元层中,可采用Gaussian-binary conditional Class RBM模型。将采集到的当前网络状态参数作为模型的可 见层节点输入,QoS请求参数,路由约束参数和优化目标参数作为条件层节点的输入。至于模型标签层节 点的输入,则为R’中保存的标号。于是,基于当前网络状态、约束条件以及最优路径,模型便可以完成抽 取有用网络特征的任务。一旦模型的参数完全收敛,便可以根据实时的网络状态信息和约束条件,得到可能的最优路径,使控制器进行动态路由决策。

步骤三

本发明原则上可使用所有基于OpenFlow协议的SDN控制器,为清晰叙述,下面以Python语言编写的 RYU控制器为例,在RYU控制器中,拓扑发现模块通过链路发现协议来获取整个网络拓扑中的节点,可生 成邻接矩阵A,该邻接矩阵可用于检测网络拓扑是否发生变化。将训练好的路由决策模型,置于RYU的拓 扑发现组件下,在A未发生改变的情况下。机器学习模型将替代原有的启发式路由算法,进行路由选择。

步骤四

网络数据包流入时,控制器检测A没有发生变化,说明网络物理结构未改动,数据包特征符合机器学 习路由模型的要求,模型将快速根据特征给出流表,下发到交换机,使数据正常转发。

步骤五

网络数据包流入时。控制器检测A发生变化,说明网络拓扑发生了结构性变化,此时的机器学习模型 不适用于该数据包的路由选择,此时调用保留的传统启发式算法,获取变动后的最优网络路径。

步骤六

在网络变动,利用启发式算法获得网络路径后,下发流表数据转发的同时,对网络数据进行相应的特 征提取。即重新生成供Gaussian-binary conditional Class RBM模型更新学习的数据集和对应更新过的最优路 径标签R’。

步骤七

利用新获取的网络特征数据集和标签。对Gaussian-binary conditional ClassRBM模型进行训练,得到收 敛之后的新路由选择模型。

步骤八

将收敛后的模型替换网络变化之前的模型,以适应变化后的网络拓扑。为后续网络数据提供路由选择 及流表下发服务。

上述实施例为本发明可行的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未 背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含 在本发明的保护范围之内。

相关技术
  • 一种软件定义网络机器学习路由优化方法
  • 一种基于分段路由策略的软件定义网络路由算法及应用
技术分类

06120112288384