CN114500386A - 一种基于强化学习和sdn的负载均衡系统 - Google Patents
一种基于强化学习和sdn的负载均衡系统 Download PDFInfo
- Publication number
- CN114500386A CN114500386A CN202210054091.1A CN202210054091A CN114500386A CN 114500386 A CN114500386 A CN 114500386A CN 202210054091 A CN202210054091 A CN 202210054091A CN 114500386 A CN114500386 A CN 114500386A
- Authority
- CN
- China
- Prior art keywords
- network
- current
- network information
- module
- historical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于强化学习和SDN的负载均衡系统,应用于各种SDN网络的负载均衡,包含一个网络信息获取模块、一个强化学习模块、一个网络管理模块。所述网络信息获取模块用于提取当前网络信息特征和生成当前奖励值并发送到强化学习模块;所述强化学习模块用于将当前的网络信息特征、奖励值、网络负载分配方式,以及历史的网络信息特征、奖励值、网络负载分配方式利用强化学习进行计算,以提高奖励值为目标,形成当前最优网络负载分配方式;所述网络管理模块用于将当前最优网络负载分配方式写入流表并下发到网络当中。本发明结合了SDN的灵活性特点和强化学习的智能性,得到当前网络负载的最优分配方式,提升整体网络的资源利用率,减小网络拥塞。
Description
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种基于强化学习和SDN的负载均衡系统。
背景技术
负载均衡技术能够将工作任务分配到多个操作单元上,让多个操作单元共同完成任务,从而能够增加网络吞吐量、加强网络数据的处理能力、提高网络的灵活性和可用性。现有的负载均衡技术主要分为静态负载均衡技术和动态负载均衡技术,静态负载均衡技术以固定方式分配任务,不考虑网络状态信息,动态负载均衡技术能够根据实时网络状态来分配任务,但其分配方式不够灵活。当前接入网络的设备越来越多,网络中数据流量持续增长,急需一种方法能够更为智能的分配网络任务,减少网络拥塞,合理利用网络资源。
发明内容
发明目的:针对以上问题,本发明提出一种基于强化学习和SDN的负载均衡系统。利用SDN的数据平面和控制平面分离的特点,灵活的对交换机进行控制,并利用强化学习算法的智能性自主学习能力,不断优化负载分配方式,从而更加灵活、更加智能地进行网络负载均衡。
技术方案:为实现本发明的目的,本发明所采用的技术方案是:
一种基于强化学习和SDN的负载均衡系统,包含一个网络信息获取模块、一个强化学习模块、一个网络管理模块;
所述网络信息获取模块用于利用SDN获取全局网络信息,从中提取当前网络信息特征,并按照一定规则生成当前奖励值,将提取出的当前网络信息特征和生成的当前奖励值发送到强化学习模块;
所述强化学习模块用于将从网络信息获取模块接收到的当前网络信息特征和当前奖励值进行记录,并将当前网络信息特征、当前奖励值、当前网络负载分配方式、历史网络信息特征和历史奖励值、历史网络负载分配方式利用强化学习进行计算,强化学习模块位于SDN网络的控制平面即服务器当中,以提高奖励值为目标,改变历史网络负载分配方式,形成当前最优网络负载分配方式;
所述网络管理模块用于将强化学习模块生成的当前最优网络负载分配方式写入流表并下发到网络当中。
进一步的,所述网络信息获取模块包括一个网络信息获取子模块,一个网络信息特征提取子模块、一个奖励值生成模块、一个信息发送模块;
所述网络信息获取子模块用于从SDN的数据平面网络中获取当前的网络状态信息;该模块位于SDN的控制平面,通过OpenFlow协议获取底层网络信息;
所述网络信息特征提取子模块用于从网络信息获取子模块获取的当前网络状态信息中提取当前网络信息特征,所述当前网络信息特征包含网络节点之间的流量矩阵、负载情况以及数据丢包率;
所述奖励值生成模块用于将当前网络信息特征按照一定规则生成当前奖励值;所述规则由网络管理员进行制定;
所述信息发送模块用于将所述当前网络信息特征和所述当前奖励值发送到强化学习模块。
进一步的,所述强化学习模块包含一个信息接收子模块、一个智能学习子模块和一个历史数据存储子模块;
所述信息接收子模块用于接收来自网络信息获取模块的当前网络信息特征和当前奖励值;
所述智能学习子模块用于将当前网络信息特征和当前奖励值、历史网络信息特征和历史奖励值进行学习,并结合历史网络负载分配方式,以提高未来奖励值为目的,模拟出当前最优网络负载分配方式;
所述历史数据存储子模块用于存放历史网络信息特征和历史奖励值以及两者对应的历史网络负载分配方式。
进一步的,所述网络管理模块包含一个网络负载分配方式写入子模块和一个流表下发子模块;
所述网络负载分配方式写入子模块用于将强化学习模块模拟出的当前最优网络负载分配方式写入表中;
所述流表下发子模块用于将新的流表下发到网络中。
进一步的,当前网络信息特征提取和当前奖励值生成步骤如下:
步骤201:网络信息获取子模块获取当前网络状态信息;
步骤202:网络信息特征提取子模块提取当前网络信息特征si,si是i时刻链路上各种业务流的流量矩阵、负载情况以及丢包率的集合;即
si=[T1,T2,...,Tn,L|P]
其中Tn是第n种业务在网络中的流量矩阵;L是SDN网络中的负载矩阵;P是SDN网络中的丢包率;即
其中,f1m是交换机1到交换机m传输的流量大小;l1k是交换机1到交换机k连接链路的实时负载;Pr是第r种业务的丢包率;
步骤203:奖励值生成子模块基于当前网络信息特征生成当前奖励值;奖励表示前一网络状态下即集合si-1所在的状态下,系统执行动作后获得的回报值;所述动作为系统根据网络负载分配方式进行重新计算和下发的过程。
进一步的,强化学习模块生成最优负载分配方式步骤如下:
步骤301:信息接收子模块接收来自网络信息获取模块的当前网络信息特征st和当前奖励值rt;
步骤302:获取历史数据存储子模块中的历史网络信息特征si和历史奖励值ri以及两者对应的历史网络负载分配方式即动作ai;
步骤303:根据当前网络信息特征、奖励值以及当前的负载分配方式,历史的网络信息特征、历史奖励值以及历史负载分配方式,以提高奖励值为目标,使用强化学习算法更新下一时刻的负载分配方式;
步骤304:将当前网络信息特征、奖励值以及当前负载分配方式存入历史数据存储子模块中。
有益效果:与现有技术相比,本发明的技术方案具有以下有益的技术效果:
本发明利用SDN的数据平面和控制平面分离的特点,灵活的对交换机进行控制,并利用强化学习算法的智能性自主学习能力,不断优化负载分配方式,能够基于控制域的强化学习模型,得到当前网络负载的最优分配方式,从而更加灵活、更加智能地进行网络负载均衡,提升整体网络的资源利用率,大大减小网络拥塞。
附图说明
图1是本发明的总体流程图;
图2是当前网络信息特征提取和当前奖励值生成步骤图;
图3是强化学习模块生成最优负载分配方式步骤图;
图4是本发明实施例的一种应用场景图。
具体实施方式
下面结合附图和实施例对本发明的技术方案作进一步的说明。
本发明所述的一种基于强化学习和SDN(Software Defined Network,软件定义网络)的负载均衡系统,包含一个网络信息获取模块、一个强化学习模块、一个网络管理模块。
如图1所示,所述网络信息获取模块用于利用SDN的集中控制特点,获取全局网络信息,并从中提取当前网络信息特征,并按照一定规则生成当前奖励值,将提取出的当前网络信息特征和生成的当前奖励值发送到强化学习模块。
所述强化学习模块用于将从网络信息获取模块接收到的当前网络信息特征和当前奖励值进行记录,并将当前网络信息特征和当前奖励值、历史网络信息特征和历史奖励值、历史网络负载分配方式进行计算,强化学习模块位于SDN网络的控制平面即服务器当中,以提高奖励值为出发点,改变历史网络负载分配方式,形成当前最优网络负载分配方式。
所述网络管理模块用于将强化学习模块生成的当前最优网络负载分配方式写入流表并下发到网络当中。
所述网络信息获取模块包括一个网络信息获取子模块,一个网络信息特征提取子模块、一个奖励值生成模块、一个信息发送模块。所述网络信息获取子模块用于从SDN(软件定义网络)的数据平面网络中获取当前的网络状态信息,该模块位于SDN的控制平面,通过OpenFlow协议获取底层网络信息,如图4所示。所述网络信息特征提取子模块用于从网络信息获取子模块获取的当前网络状态信息中提取当前网络信息特征,所述当前网络信息特征包含但不限于网络节点之间的流量矩阵、负载情况以及数据丢包率。所述奖励值生成模块用于所述将当前网络信息特征按照一定规则生成当前奖励值。所述规则由网络管理员进行制定。所述信息发送模块用于将所述当前网络信息特征和所述当前奖励值发送到强化学习模块。
所述强化学习模块包含一个信息接收子模块、一个智能学习子模块和一个历史数据存储子模块。所述信息接收子模块用于接收来自网络信息获取模块的当前网络信息特征和当前奖励值。所述智能学习子模块用于将当前网络信息特征和当前奖励值、历史网络信息特征和历史奖励值进行学习,并结合历史网络负载分配方式,以提高未来奖励值为目的,模拟出当前最优网络负载分配方式。所述智能学习子模块是强化学习模块的核心,它可以根据SDN网络环境信息以及对应的奖励值来更新自己的策略知识,从而选择有利于增加奖励值的动作,即新的负载分配方式。所述历史数据存储子模块用于存放历史网络信息特征和历史奖励值以及两者对应的历史网络负载分配方式。
所述网络管理模块包含一个网络负载分配方式写入子模块和一个流表下发子模块。所述网络负载分配方式写入子模块用于将智能学习子模块模拟出的当前最优网络负载分配方式写入表中。所述流表下发子模块用于将新的流表下发到网络中。
作为本发明的一种实施例,当前网络信息特征提取和当前奖励值生成步骤如图2所示,包括:
步骤201:网络信息获取子模块获取当前网络状态信息。网络信息获取子模块是网络信息获取模块的一部分,网络信息模块位于SDN的控制平面,能够通过OpenFlow协议获取底层网络信息,从而获得整个网络的全局信息。
步骤202:网络信息特征提取子模块提取当前网络信息特征si,si是i时刻链路上各种业务流的流量矩阵、负载情况以及丢包率的集合。即
si=[T1,T2,...,Tn,L|P]
其中Tn是第n种业务在网络中的流量矩阵,表征了网络中该业务流的传输需求情况,L代表SDN网络中的负载矩阵,表征了网络中交换机之间的连接关系和链路负载情况;P是SDN网络中的丢包率;
其中,f1m是交换机1到交换机m传输的流量大小。
其中,l1k是交换机1到交换机k连接链路的实时负载,如果交换机之间不存在连接关系,则该值设定为-1。
P=[P1,P2,...,Pr]T
其中,Pr代表了第r种业务的丢包率。
步骤203:奖励值生成子模块基于当前网络信息特征生成当前奖励值。奖励表示前一网络状态下即集合si-1所在的状态下,系统执行动作后获得的回报值。在本发明实例中,不同业务的奖励值计算方式不同,由网络管理员进行制定。
作为本发明的一种实施例,强化学习模块生成最优负载分配方式步骤如图3所示:
步骤301:信息接收子模块接收来自网络信息获取模块的当前网络信息特征st和当前奖励值rt。
步骤302:获取历史数据存储子模块中的历史网络信息特征si和历史奖励值ri以及两者对应的历史网络负载分配方式(即动作)ai。
步骤303:根据当前网络信息特征、奖励值以及负载分配方式,历史的网络信息特征、历史奖励值以及历史负载分配方式,以提高奖励值为目标,使用强化学习算法更新下一时刻(t+1时刻)负载分配方式即执行动作ai。具体如下:
从历史数据存储子模块随机选择N个样本(si,ai,ri,si+1),计算网络Q值;以最小化损失为目标分配在线网络权重;使用最速下降法更新在线网络权重:更新下一时(t+1时刻)刻负载分配方式。
步骤304:将当前网络信息特征、奖励值以及负载分配方式存入历史数据存储子模块中。
Claims (6)
1.一种基于强化学习和SDN的负载均衡系统,其特征在于:该系统包含一个网络信息获取模块、一个强化学习模块、一个网络管理模块;
所述网络信息获取模块用于利用SDN获取全局网络信息,从中提取当前网络信息特征,并按照一定规则生成当前奖励值,将提取出的当前网络信息特征和生成的当前奖励值发送到强化学习模块;
所述强化学习模块用于将从网络信息获取模块接收到的当前网络信息特征和当前奖励值进行记录,并将当前网络信息特征、当前奖励值、当前网络负载分配方式、历史网络信息特征和历史奖励值、历史网络负载分配方式利用强化学习进行计算,强化学习模块位于SDN网络的控制平面即服务器当中,以提高奖励值为目标,改变历史网络负载分配方式,形成当前最优网络负载分配方式;
所述网络管理模块用于将强化学习模块生成的当前最优网络负载分配方式写入流表并下发到网络当中。
2.根据权利要求1所述的基于强化学习和SDN的负载均衡系统,其特征在于:所述网络信息获取模块包括一个网络信息获取子模块,一个网络信息特征提取子模块、一个奖励值生成模块、一个信息发送模块;
所述网络信息获取子模块用于从SDN的数据平面网络中获取当前的网络状态信息;该模块位于SDN的控制平面,通过OpenFlow协议获取底层网络信息;
所述网络信息特征提取子模块用于从网络信息获取子模块获取的当前网络状态信息中提取当前网络信息特征,所述当前网络信息特征包含网络节点之间的流量矩阵、负载情况以及数据丢包率;
所述奖励值生成模块用于将当前网络信息特征按照一定规则生成当前奖励值;所述规则由网络管理员进行制定;
所述信息发送模块用于将所述当前网络信息特征和所述当前奖励值发送到强化学习模块。
3.根据权利要求1所述的基于强化学习和SDN的负载均衡系统,其特征在于:所述强化学习模块包含一个信息接收子模块、一个智能学习子模块和一个历史数据存储子模块;
所述信息接收子模块用于接收来自网络信息获取模块的当前网络信息特征和当前奖励值;
所述智能学习子模块用于将当前网络信息特征和当前奖励值、历史网络信息特征和历史奖励值进行学习,并结合历史网络负载分配方式,以提高未来奖励值为目的,模拟出当前最优网络负载分配方式;
所述历史数据存储子模块用于存放历史网络信息特征和历史奖励值以及两者对应的历史网络负载分配方式。
4.根据权利要求1所述的基于强化学习和SDN的负载均衡系统,其特征在于:所述网络管理模块包含一个网络负载分配方式写入子模块和一个流表下发子模块;
所述网络负载分配方式写入子模块用于将强化学习模块模拟出的当前最优网络负载分配方式写入表中;
所述流表下发子模块用于将新的流表下发到网络中。
5.根据权利要求2所述的基于强化学习和SDN的负载均衡系统,其特征在于:当前网络信息特征提取和当前奖励值生成步骤如下:
步骤201:网络信息获取子模块获取当前网络状态信息;
步骤202:网络信息特征提取子模块提取当前网络信息特征si,si是i时刻链路上各种业务流的流量矩阵、负载情况以及丢包率的集合;即
si=[T1,T2,…,Tn,L|P]
其中Tn是第n种业务在网络中的流量矩阵;L是SDN网络中的负载矩阵;P是SDN网络中的丢包率;即
其中,f1m是交换机1到交换机m传输的流量大小;l1k是交换机1到交换机k连接链路的实时负载;Pr是第r种业务的丢包率;
步骤203:奖励值生成子模块基于当前网络信息特征生成当前奖励值;奖励表示前一网络状态下即集合si-1所在的状态下,系统执行动作后获得的回报值;所述动作为系统根据网络负载分配方式进行重新计算和下发的过程。
6.根据权利要求3所述的基于强化学习和SDN的负载均衡系统,其特征在于:强化学习模块生成最优负载分配方式步骤如下:
步骤301:信息接收子模块接收来自网络信息获取模块的当前网络信息特征st和当前奖励值rt;
步骤302:获取历史数据存储子模块中的历史网络信息特征si和历史奖励值ri以及两者对应的历史网络负载分配方式即动作ai;
步骤303:根据当前网络信息特征、奖励值以及当前的负载分配方式,历史的网络信息特征、历史奖励值以及历史负载分配方式,以提高奖励值为目标,使用强化学习算法更新下一时刻的负载分配方式;
步骤304:将当前网络信息特征、奖励值以及当前负载分配方式存入历史数据存储子模块中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210054091.1A CN114500386B (zh) | 2022-01-18 | 2022-01-18 | 一种基于强化学习和sdn的负载均衡系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210054091.1A CN114500386B (zh) | 2022-01-18 | 2022-01-18 | 一种基于强化学习和sdn的负载均衡系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114500386A true CN114500386A (zh) | 2022-05-13 |
CN114500386B CN114500386B (zh) | 2023-05-30 |
Family
ID=81512220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210054091.1A Active CN114500386B (zh) | 2022-01-18 | 2022-01-18 | 一种基于强化学习和sdn的负载均衡系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114500386B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107979540A (zh) * | 2017-10-13 | 2018-05-01 | 北京邮电大学 | 一种sdn网络多控制器的负载均衡方法及系统 |
CN109039942A (zh) * | 2018-08-29 | 2018-12-18 | 南京优速网络科技有限公司 | 一种基于深度强化学习的网络负载均衡系统及均衡方法 |
CN113347108A (zh) * | 2021-05-20 | 2021-09-03 | 中国电子科技集团公司第七研究所 | 一种基于q-学习的sdn负载均衡方法及系统 |
CN113507503A (zh) * | 2021-06-16 | 2021-10-15 | 华南理工大学 | 一种具有负载均衡的车联网资源分配方法 |
WO2021219214A1 (en) * | 2020-04-29 | 2021-11-04 | Huawei Technologies Co., Ltd. | Device and method for load balancing |
-
2022
- 2022-01-18 CN CN202210054091.1A patent/CN114500386B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107979540A (zh) * | 2017-10-13 | 2018-05-01 | 北京邮电大学 | 一种sdn网络多控制器的负载均衡方法及系统 |
CN109039942A (zh) * | 2018-08-29 | 2018-12-18 | 南京优速网络科技有限公司 | 一种基于深度强化学习的网络负载均衡系统及均衡方法 |
WO2021219214A1 (en) * | 2020-04-29 | 2021-11-04 | Huawei Technologies Co., Ltd. | Device and method for load balancing |
CN113347108A (zh) * | 2021-05-20 | 2021-09-03 | 中国电子科技集团公司第七研究所 | 一种基于q-学习的sdn负载均衡方法及系统 |
CN113507503A (zh) * | 2021-06-16 | 2021-10-15 | 华南理工大学 | 一种具有负载均衡的车联网资源分配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114500386B (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112491714B (zh) | SDN环境下基于深度强化学习的智能QoS路由优化方法、系统 | |
CN110986979B (zh) | 一种基于强化学习的sdn多路径路由规划方法 | |
CN109039942B (zh) | 一种基于深度强化学习的网络负载均衡系统及均衡方法 | |
CN111629380A (zh) | 面向高并发多业务工业5g网络的动态资源分配方法 | |
CN114567598B (zh) | 一种基于深度学习和跨域协作的负载均衡方法及装置 | |
CN104115165A (zh) | 使用机器学习来用于映射媒体组件的方法 | |
CN101013955B (zh) | 用于业务量矩阵估计的快速模拟退火 | |
CN115277574B (zh) | 一种sdn架构下数据中心网络负载均衡方法 | |
CN114710439B (zh) | 基于深度强化学习的网络能耗与吞吐量联合优化路由方法 | |
CN116599904A (zh) | 并行传输负载均衡装置及方法 | |
CN114757352A (zh) | 智能体训练方法、跨域异构环境任务调度方法及相关装置 | |
Mai et al. | Packet routing with graph attention multi-agent reinforcement learning | |
CN113114335B (zh) | 一种基于人工智能的软件定义天基网络组网架构 | |
CN108055701A (zh) | 一种资源调度方法及基站 | |
CN114938374A (zh) | 跨协议负载均衡方法及系统 | |
WO2023082431A1 (zh) | 一种多口字环形结构下的流量调度方法和系统 | |
CN112491574A (zh) | 一种数据处理方法及装置 | |
WO2024146193A1 (zh) | 一种基于sdn的路由路径选择方法、装置及存储介质 | |
CN115174404A (zh) | 一种基于sdn组网的多设备联邦学习系统 | |
CN112799843B (zh) | 一种基于边缘计算的在线自适应服务配置优化方法及装置 | |
CN114500386B (zh) | 一种基于强化学习和sdn的负载均衡系统 | |
CN110502342A (zh) | 一种间歇网络环境下机动边缘信息服务网络 | |
CN115225512B (zh) | 基于节点负载预测的多域服务链主动重构机制 | |
CN115543582A (zh) | 超算算力网络统一调度方法、系统及设备 | |
Cai et al. | A strategy of dynamic routing based on SDN |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |