CN115037669B - 一种基于联邦学习的跨域数据传输方法 - Google Patents
一种基于联邦学习的跨域数据传输方法 Download PDFInfo
- Publication number
- CN115037669B CN115037669B CN202210449032.4A CN202210449032A CN115037669B CN 115037669 B CN115037669 B CN 115037669B CN 202210449032 A CN202210449032 A CN 202210449032A CN 115037669 B CN115037669 B CN 115037669B
- Authority
- CN
- China
- Prior art keywords
- domain
- switch
- controller
- server
- cross
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/044—Network management architectures or arrangements comprising hierarchical management structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于联邦学习的跨域数据传输方法,首先设计了基于深度强化学习的智能路由方法,该方法根据网络当前状态做出最优的路由选择,其次引入联邦学习将各个域的深度强化学习智能体上传的参数进行融合,得到决策能力更强的深度强化智能体,并将该智能体应用于跨域路由的决策过程中,各域根据域间路由和本域内的路由策略对跨域数据进行数据转发,在保证域内隐私的前提下,本发明提升了大量数据跨域传输的性能,具有很强的现实意义和广阔的应用前景。
Description
技术领域
本发明涉及网络路由技术领域,具体涉及一种基于联邦学习的跨域数据传输方法。
背景技术
随着网络规模的不断扩大,网络流量也呈现出爆发式增长的趋势。传统网络体系结构下,数据的传输遵循着各种路由协议。域内所有的路由器互联并通过运行相同的内部网关协议交换路由信息。互联网路由体系结构中另一部分重要的路由协议是域间路由协议,其主要用于域间数据传输时的路径选择。传统网络体系结构下的路由协议在面对大规模跨域数据传输时,会存在两种问题,一种是因为域内数据隐私的存在,在计算跨域路由时无法得到最优的策略。另一种是大量的数据交换必然会导致交换域内信息时的收敛时延和流失率增加。
针对上述存在的问题,近几年现有技术针对路由算法进行了相应的改进,首先是直接改进路由算法,中国专利《一种跨域路由控制方法》(专利号CN101156395),使用了一种跨域路由控制方法,在至少包含电路交换网络和IMS域的系统中设置用于保存路由策略信息的路由策略决策点RPDP实体,当呼入请求路由时,路由决策查询实体向所述RPDP实体查询当前路由决策,所述RPDP实体根据当前路由策略、路由决策相关信息以及用户当前在所述电路交换网络和IMS域的呼叫状态,确定路由决策,所述RPDP实体向所述路由决策查询实体返回根据所确定的路由决策确定的路由相关信息,由所述路由决策查询实体完成跨域路由控制。但其在网络管理和软件升级方面缺乏灵活性。针对这一问题,美国斯坦福大学Clean Slate课题研究组提出的一种新型网络创新架构SDN,是网络虚拟化的一种实现方式。利用分层的思想,SDN将数据与控制相分离。在控制层,包括具有逻辑中心化和可编程的控制器,可掌握全局网络信息,方便运营商和科研人员管理配置网络和部署新协议等。在数据层,交换机仅提供简单的数据转发功能,可以快速处理匹配的数据包,适应流量日益增长的需求。两层之间采用开放的统一接口OpenFlow进行交互。控制器通过标准接口向交换机下发统一标准规则,交换机仅需按照这些规则执行相应的动作即可,实现了在网络管理和软件升级方面的灵活性。专利《一种数据中心SDN虚拟路由的配置方法、平台及控制器》(专利号 CN112187517A)在虚拟转发组件上创建路由专用网桥;虚拟设施管理平台创建用户时,在路由专用网桥上创建对应的路由流表;虚拟设施管理平台下发路由请求至SDN控制器,SDN 控制器收到路由请求后,查询相关资源,生成对应的流表配置表项,并通过协议下发到虚拟转发组件;业务报文根据下发的配置进行具体的流表项匹配,进行报文的二层和三层转发。但并没有很好的去改进路由之间的优化方法。
随着机器学习的发展,使用机器学习优化路由的方法开始逐渐发展,例如,基于SDN的分布式控制器的多路径路由算法[D].重庆大学,2018,在SDN的架构下使用强化学习来优化路由,但其核心是Q-table,该表存储了状态-动作对应的奖励值,会随着网络规模的增大而不断增大,当网络规模足够大时,会给内存带来巨大的负担。除此之外,该算法的泛化能力并不好,当有类似状态出现时,其往往不能根据以往的经验做出最优选择;专利《SDN环境下基于深度强化学习的智能QoS路由优化方法》(申请号CN112491714A)首先将网络中所有流媒体服务表示为一个服务请求集合,然后对其中每一个请求,从流媒体服务器到异构客户端寻找满足网络服务质量的路径,依次确定出每一个流请求的路由,最后采用一种QoS路由优化算法构建出组播树。对于网络拥塞链路或者是恶意节点,通过深度强化学习的方法可以寻找出当前最合适的下一节点进行路由。通过采用深度学习和强化学习结合的方法,有效地减少视频流的传输时延并提高路由决策的准确性。但是并没有考虑域内隐私和安全的问题。因此,在SDN架构下使用强化学习算法满足跨域路由优化的同时保护域内隐私的研究及应用是进一步发展的技术难题。
发明内容
针对现有技术的不足,本发明提出一种基于联邦学习的跨域数据传输方法,包括:
步骤1:根据软件定义网络的分层架构模拟真实网络环境,其中每个域由一个ryu控制器控制;
步骤2:根据网络拓扑关系生成源交换机与目的交换机之间的最短k条链路;
步骤3:利用深度确定性策略梯度算法选取域内路径;
步骤4:建立分层网络架构中服务器与各控制器之间的通信;
步骤5:建立虚拟域选取跨域路由路径。
所述步骤2包括:
步骤2.1:获取每个控制器连接的交换机信息、主机信息、交换机链路信息以及边界交换机和跨域链路信息;
步骤2.2:获取交换机的邻接矩阵;
步骤2.3:在源交换机和目的交换机之间进行探测,得到属于二者之间的所有链路;
步骤2.4:从找到的所有链路中选择出k条最短路径。
所述步骤2.2包括:
获取交换机的端口流量信息;
获取交换机的链路层发现协议时延信息;
获取交换机的echo时延信息;
计算链路的平均时延T:
T=(T1+T2-Ta-Tb)/2
其中,T1、T2分别表示链路层发现协议的正向、反向时延信息;Ta表示控制器到两个交换机的往、返时延;
根据交换机链路的出节点端口号和链路时延信息构建交换机的邻接矩阵。
所述步骤3包括:
初始化深度确定性策略梯度算法得到智能体;
将交换机的端口流量信息转换为短时流量状态矩阵;
将短时流量状态矩阵作为智能体的输入状态;
从k条路径中选择最短的一条作为智能体的输出动作;
将链路平均时延T作为智能体的奖励值;
设置最大迭代次数,不断更新网络参数,直到网络状态收敛时输出域内路径。
所述步骤4包括:
通过多线程建立服务器与客户端的连接;
客户端的控制器在完成初始化操作后创建子线程连接到服务器,利用信号量机制建立多线程中的同步互斥操作,避免共享变量之间的访问冲突。
所述步骤5包括:
步骤5.1:根据各域控制器上检测到的边界交换机和跨域链路信息传给服务器,组建成虚拟域;
步骤5.2:利用异步联邦学习融合虚拟域中各域的强化学习智能体;
确定服务器中模型t时刻合并的权重值αt:
αt=α×s(t-τ)
其中,α表示服务器中模型合并的权重值;t-τ为模型版本之差;
当新模型xnew上传至服务器时,参与方收到服务器下发的模型表示xt为:
xt=(1-αt)xt-1+αtxnew
其中,xt-1表示t-1时刻服务器存储的模型;
步骤5.3:在虚拟域中选取跨域路由路径。
所述步骤5.3具体表述为:
当本域主机向其他域发送数据时:如果发现目的主机不在本域,根据服务器下发的全网汇总路由,找到目的主机所属的交换机,以及与本域内交换机之间的链路,根据本域智能体的动作,选择对应路径,并下发流表,当数据传输至本域的边界交换机时,从对应端口发出;
当数据在本域内传输时:如果无法匹配对应流表,将数据包上传控制器,由控制器查询汇总路由,选择跨域路由路径,并下发对应流表,经本域交换机将数据报发送给目的主机属于的交换机;
当其他域向本域发送数据时:如果数据包来自于其他域主机,由于无法匹配对应流表,数据包需要上传控制器,由控制器查询汇总路由,找到本域主机所属的交换机,以及与本域内交换机之间的链路,根据本域智能体的动作,选择对应路径,下发匹配流表,数据包经由链路传输至本域主机。
本发明的有益效果是:
本发明提供了一种基于联邦学习的跨域数据传输机制的方法,首先设计了基于深度强化学习的智能路由方法,该方法根据网络当前状态做出最优的路由选择。其次引入联邦学习将各个域的深度强化学习智能体上传的参数进行融合,得到决策能力更强的深度强化智能体,并将该智能体应用于跨域路由的决策过程中,各域根据域间路由和本域内的路由策略对跨域数据进行数据转发。在保证域内隐私的前提下,本发明提升了大量数据跨域传输的性能,具有很强的现实意义和广阔的应用前景。
附图说明
图1为本发明具体实施方式中建立的网络拓扑图;
图2为本发明具体实施方式中网络拓扑的链路平均时延图;
图3为本发明具体实施方式中服务器与控制器的通信图;
图4为本发明具体实施方式中测试性能的网络拓扑图;
图5为本发明具体实施方式的不同带宽等待队列为100的时延图;
图6为本发明具体实施方式的不同带宽等待队列为300的时延图;
图7为本发明具体实施方式的不同队列UDP发送带宽为1.5Mbps的时延图;
图8为本发明具体实施方式的不同队列UDP发送带宽为2.5Mbps的时延图;
图9为本发明具体实施方式的实验结果汇总图。
具体实施方式
下面结合附图和具体实施实例对发明做进一步说明。本发明面向多域网络数据传输服务,设计并实现了一种基于联邦学习的跨域数据传输方法,在SDN的分层网络架构下,使用强化学习为跨域数据传输提供高效的路由决策,并结合联邦学习框架保护域内的隐私和安全。
本发明提出的一种基于联邦学习的跨域数据传输方法,包括:
步骤1:根据软件定义网络的分层架构模拟真实网络环境,其中每个域由一个ryu控制器控制;
建立网络拓扑:
使用mininet和ryu构建软件定义网络(Software Defined Network,SDN)的分层架构,模拟真实网络环境,如图1所示,构建三个域,每个域由一个ryu控制器控制,图中,h0、h1、h2表示三个主机,s0~s8表示9个交换机,c0~c2表示3个控制器,与每个控制器相连的主机和交换机组成一个域。
步骤2:根据网络拓扑关系生成源交换机与目的交换机之间的最短k条链路;包括:
步骤2.1:获取每个控制器连接的交换机信息、主机信息、交换机链路信息以及边界交换机和跨域链路信息;
使用OpenFlow协议的监听器@set_ev_cls的OFPPortStatsReply事件来处理交换机的端口流量的信息并存储;
步骤2.2:获取交换机的邻接矩阵;
步骤2.3:在源交换机和目的交换机之间进行探测,得到属于二者之间的所有链路;
步骤2.4:从找到的所有链路中选择出k条最短路径;
获取网络拓扑:本发明使用OpenFlow协议(一种网络通信协议,属于数据链路层,能够控制网上交换器或路由器的转发平面,借此改变网络数据包所走的网络路径。)来分别获取每个控制器连接的交换机信息、主机信息、交换机链路信息以及边界交换机和跨域链路信息。
获取邻接矩阵:
使用OpenFlow协议的监听器@set_ev_cls的OFPPacketIn事件来处理交换机的链路层发现协议(Link Layer Discovery Protocol,LLDP)时延信息并存储。获取到了LLDP数据发送时的时间戳,然后和收到的时间戳进行相减,得到了LLDP数据包从控制器Controller下发到交换机A,然后从交换机A到交换机B,再上报给控制器Controller的时延T1,如图2所示。同理得到反向的LLDP时延T2;
使用OpenFlow协议的监听器@set_ev_cls的OFPEchoReply事件来处理交换机的echo时延(控制器到交换机的往返时延)信息并存储。控制器到交换机的往返时延就是由echo报文测试的,分别为Ta、Tb。最后链路的平均时延T=(T1+T2-Ta-Tb)/2,其中Ta、Tb分别表示控制器到交换机A和B的往、返时延;
根据交换机链路的出节点端口号和链路时延信息构建交换机的邻接矩阵:
最后,整合交换机的信息得到交换机的邻接矩阵,矩阵的左侧和上侧分别表示交换机的编号(id号),矩阵的内部信息为出节点的端口号、时延;
建立交换机之间的k条最短路径:
根据拓扑发现得到的交换机之间的链路,在源交换机和目的交换机之间进行探测,得到属于两者之间的所有链路;
把源交换机和目的交换机之间的链路中的最短的k条选出来,不足k条的在链路集合中重复随机选择,最终得到源交换机和目的交换机的k条路径;
步骤3:利用深度确定性策略梯度算法选取域内路径;包括:
初始化深度确定性策略梯度算法得到智能体;
将交换机的端口流量信息转换为短时流量状态矩阵;
将短时流量状态矩阵作为智能体的输入状态;
从k条路径中选择最短的一条作为智能体的输出动作;
将链路平均时延T作为智能体的奖励值;
设置最大迭代次数,不断更新网络参数,直到网络状态收敛时输出域内路径;
本发明在域内路径的选取使用的是深度确定性策略梯度算法(deepdeterministic policy gradient,DDPG)。首先初始化DDPG得到智能体,开始训练过程,智能体将状态S作为输入,并输出动作A,控制器根据输出的动作A,结合路径表,对于改变的路径,更改其路径上交换机的流表。然后探测网络链路平均时延和新的流量信息,得到奖励R和新的状态S’,将(S、 S’、A、R)放入经验回放池中,智能体进行参数更新时,会从经验回放池中优先选取奖励R 表现不佳的元组进行更新,更新网络参数后,再重新开始新一轮训练。各个模块的详细设计如下:
(1)输入状态
在强化学习中,状态作为对环境的真实反映,应该提供给智能体最重要最有效地信息,而对于计算机网络来说,实时性也是一个不可或缺的要素。本发明采用交换机短时流量作为输入状态,在提供网络流量信息的同时,兼顾了算法输入状态的维度大小,且交换机流量相对于流量矩阵也更容易获取。假设网络中有不超过N个网络节点。第i个节点为di,则t时刻的输入状态St为N维向量,Ni代表t-1时刻至t时刻内流经di的流量大小。
(2)输出动作
智能体根据得到的当前环境状态,依据自己的策略,做出相应的动作,动作应该在环境中被执行。本发明使用k路径选择作为输出动作,从节点之间的k条路径中选择一条。相比于其他方法,该方法的空间大小固定,且可以直接应用于环境之中。假设网络中有不超过N 个网络节点,且网络是连通的,每对节点之间选择k条路径,路径编号为[1,k],路径长度随编号非递减排列,动作为N*N的矩阵A,矩阵中的元素为[1,K]之间的整数,A[i][j]代表节点 i至节点j之间所选择的路径序号。
(3)奖励值
环境在当前状态下根据智能体做出的动作反馈给智能体一个奖励值,并转换为下一状态。智能体根据得到的奖励值评判动作选取的好坏,并相应的调整策略。奖励函数的设计将会直接影响算法的效果。本发明目标为最小化网络平均时延,因此设置的奖励为链路平均时延。
步骤4:建立分层网络架构中服务器与各控制器之间的通信;包括:
通过多线程建立服务器与客户端的连接;
客户端的控制器在完成初始化操作后创建子线程连接到服务器,利用信号量机制建立多线程中的同步互斥操作,避免共享变量之间的访问冲突;
控制器与服务器的通信:根据分层网络架构,服务器应该与各控制器进行通信。本发明使用Ryu中gevent的StreamServe模块进行实现。gevent是一个基于协同程序的Python网络库,它以greenlet为核心,提供了非常高的并发性能,简单的说就是可以让多线程更加高效, StreamServer是一个通用的TCP服务器,当客户端连接到它的时候可以运行用户提供的处理函数。
服务器的通信:服务器主要是与客户端通信、监听客户端的请求、存储客户端上传的数据、向客户端下发数据,其结构如图3所示。服务器采用多线程来保持和客户端的连接,每当有控制器请求连接时,就会创建一个线程建立连接。当控制器上传数据时,相应线程会处理数据并保存在服务器中,服务器向控制器下发数据时也需要调用相应子线程发送数据。为了方便数据传输,统一使用json格式进行传输。
客户端的通信:作为客户端的控制器在完成初始化操作后创建子线程连接到服务器,连接成功后,便可与服务器进行数据的传输。由于多线程的存在,可能与发生共享变量的访问冲突,因此还需要相应的同步互斥操作,本发明使用了信号量机制实现。
异步联邦学习:引入了联邦学习,目的是将各域的强化学习智能体进行融合,得出一个决策能力更为强大的强化学习智能体,同时保护各个域的隐私和安全。为之后结合分层网络架构,将联邦强化学习智能体应用于虚拟域做基础。
在联邦学习中,当一个新的模型xnew被上传至服务器时,一种朴素的方法是:
xt=(1-αt)xt-1+αtxnew
那么当参与方收到服务器下发的模型xt,并在本地做了T轮训练之后,上传至服务器后,此时服务器的模型已经更新为xt+n,服务器如何设置合并t时刻的权重值αt便成为了一个难题。简单的思想就是越陈旧的模型在服务器上合并时,其系数应该越低。异步合并模型使用了一种αt衰减策略,αt的计算公式如下:
αt=α×s(t-τ)
其中,α表示服务器中模型合并的权重值,s(t-τ)是一个线性计算函数,t-τ为模型版本差值,公式如下:
步骤5:建立虚拟域选取跨域路由路径;包括:
步骤5.1:根据各域控制器上检测到的边界交换机和跨域链路信息传给服务器,组建成虚拟域;
虚拟域是指将各跨域链路和边界交换机组合在一起形成的一个抽象域,他并不是SDN架构中的一个网络域,而是为了便于选择跨域路径而抽象出来的一个域,该域没有控制器,只用于服务器进行跨域路径的选择。虚拟域由各域控制器上传给服务器的信息共同构成。具体构建规则如下:对于域控制器,在收集完本域的信息后,识别出边界交换机和与本域相连的跨域链路,同时计算汇总路由,为了保证虚拟域的连通性,让同一域的交换机始终保持连通,即同一域的各交换机将存在链路使之成为连通图。将以上信息上传给服务器。对于服务器,接受各域控制器提交的信息后,首先将边界交换机和跨域链路组成虚拟域得到其拓扑,然后将各域的汇总路由进行结合,得到整个大网络的主机及其汇总路由信息,将该汇总路由信息下发给各域控制器。服务器得到虚拟域拓扑后,便可以进行下一步的跨域路由决策。
步骤5.2:利用异步联邦学习融合虚拟域中各域的强化学习智能体;
确定服务器中模型t时刻合并的权重值αt:
αt=α×s(t-τ)
其中,α表示服务器中模型合并的权重值;t-τ为模型版本之差;
当新模型xnew上传至服务器时,参与方收到服务器下发的模型表示xt为:
xt=(1-αt)xt-1+αtxnew
其中,xt-1表示t-1时刻服务器存储的模型;
步骤5.3:在虚拟域中选取跨域路由路径。
主机h0向h1发送ip数据包时,跨域数据传输可能发生的状态有三种,以图4为例:
(1)本域主机向其他域发送数据
当h0向h1发送数据时,h0首先将数据包发送给交换机s1,s1收到数据包后,无法匹配对应流表,便将数据包转发给控制器c0,c0根据数据包的信息,发现目的主机不在本域,便根据服务器下发的全网汇总路由发现h1所属交换机为s7,同时本域的s4交换机与s7之间存在链路,于是准备将数据包发送给s4,这也转换为寻找s1到s4的路径,根据本域智能体的动作,选择对应路径,并下发流表。当数据包传输至s4后,根据跨域路由,从对应端口发出。在本拓扑中,s4可能发送至s5或s6,再发送至s7,当数据包从本域发出后,本域对该数据的传输工作便结束了,交由接受该数据包的域进行传输。
(2)数据流经过本域
当(1)中数据传输完成后,假设s4选择了向s5发送数据,s5收到数据后,由于无法匹配对应流表,便将数据包上传控制器,控制器查询汇总路由,发现源主机对应交换机为s4,目的主机所属交换机为s7,判断该数据包只是经过本域。根据跨域路由,得出s4至s7的路径后,查询s5在该路径中的下一跳为s7,于是下发对应流表给s5,数据包便可经由s5到达s7,本域的工作完成。
(3)其他域主机向本域发送数据
当数据传输至s7后,s7由于无法匹配流表将数据包上传给控制器,控制器查询汇总路由后,发现源主机所属交换机s4,目的主机为本域主机,所属交换机为s10。于是查询本域s7 至s10的路由,得到相应路径后,下发匹配流表,数据便能由s7传输至s10,s10再将数据发送给h1。至此,h0向h1的跨域数据传输全部完成。
以上3个过程是对于跨域数据传输的处理。在h0在完成第一次向h1发送数据后,便可根据保存在交换机中的流表进行数据传输,无需控制器再进行处理。这大大减轻了控制器的处理压力。当路由改变时,控制器只需要根据流表的下发记录,改变对应的流表即可。
具体实验验证过程如下:
1、仿真环境
本发明的仿真实现整个过程是基于mininet模拟器,结合ryu控制器,采用python语言编写实现。使用的仿真场景三个域,每个域一个控制器,具体构建如图1所示,测试工具使用的perf网络测试工具。iperf是一个网络性能测试工具,可以测试TCP/IP和UDP/IP的性能,能够通过产生指定的数据流量测试网络的各种性能指标。在mininet下使用iperf来产生迷你流量。表1为iperf的一些参数。
表1 iperf命令
2、正确性验证
在多域场景下进行正确性验证,启动配有本文算法的控制器后,各主机之间能否ping通。网络拓扑图如图1所示。各主机之间随着网络信息的收敛,由最初的部分交换机之间连接的链路可以正常传输数据,且丢包率为0%,最终达到全部交换机之间连接的链路可以正常传输数据,且丢包率为0%,证明本发明的正确性。
3、性能测试
性能测试的拓扑如图4所示。在性能测试中,网络中的不变参数包括链路传播时延和链路带宽,其中链路传播时延为5ms,链路带宽为5Mbps。可变参数包括等待队列和UDP发送带宽。以下所有性能测试图片中结果的线条顺序和条件对应右上角的顺序和条件。
在等待队列长度为100和300的条件下,使用iperf命令让h0不断地向h1发送UDP数据包,UDP发送带宽分别为1.5Mbps和2.5Mbps,进行了500轮训练。
等待队列长度为100,UDP发送带宽分别为1.5Mbps和2.5Mbps条件下的实验结果如图5所示。等待队列长度为300,UDP发送带宽分别为1.5Mpbs和2.5Mbps条件下的实验结果如图6所示。UDP发送带宽为1.5Mbps,等待队列长度分别为100和300的条件下,实验结果如图7所示。UDP发送带宽为2.5Mbps,等待队列长度分别为100和300的条件下,实验结果如图8所示。
图9为以上各条件下的实验结果图。由图9可知,实验均在200后才达到收敛。因此,表2中,最大值和最小值是在200轮后的值,均值是200轮至500轮的均值,收敛时间是在 200轮后,首次小于等于均值的轮数。由数据分析可知,在队列长度100时,收敛速度慢于队列长度300,但是发送带宽在1.5Mbps时比2.5Mbps时收敛的略慢,收敛均值差为2.04。在队列长度300时,发送带宽为1.5Mbps时比2.5Mbps时收敛速度略快,均值差为1.96。在发送带宽为1.5Mbps时,等待队列长度为100时比300时要慢许多,均值差为1.00。在发送带宽为2.5Mbps是,等待队列长度100时比300时略慢,均值差为1.08。
在训练开始时,网络时延具有较大的波动,随着训练次数的增加,逐渐收敛到了稳定值,小范围的延迟波动,一方面是因为智能体总是尝试寻求更优解,但这是DDPG中的探索策略不可避免的。另一方面是仿真网络的不稳定性,由于是虚拟仿真,所以需要轮流处理各交换机主机等,会造成一定的延迟波动。但总体上来说,在各条件下,实验均达到了预期的效果,可见,本发明具有较快的收敛速度和较好的性能,且能够适应不同网络环境。
表2实验结果统计
本发明提出的一种基于联邦学习的跨域数据传输机制的方法,先是使用SDN设计了多域的网络拓扑模型,然后提出了分层的网络架构,将边界交换机抽象为一个虚拟域,在该虚拟域中使用强化学习智能体进行路由选择,得到跨域路由后下发给各域控制器,最后引入了联邦学习,并进行了仿真测试,仿真结果表明本发明技术方案可行且效果较好。
Claims (5)
1.一种基于联邦学习的跨域数据传输方法,其特征在于,包括:
步骤1:根据软件定义网络的分层架构模拟真实网络环境,其中每个域由一个ryu控制器控制;
步骤2:根据网络拓扑关系生成源交换机与目的交换机之间的最短k条链路;
步骤3:利用深度确定性策略梯度算法选取域内路径;
步骤4:建立分层网络架构中服务器与各控制器之间的通信;
步骤5:建立虚拟域选取跨域路由路径;
所述步骤5包括:
步骤5.1:根据各域控制器上检测到的边界交换机和跨域链路信息传给服务器,组建成虚拟域;
步骤5.2:利用异步联邦学习融合虚拟域中各域的强化学习智能体;
确定服务器中模型t时刻合并的权重值αt:
αt=α×s(t-τ)
其中,α表示服务器中模型合并的权重值;t-τ为模型版本之差,s(t-τ)是一个线性计算函数;
当新模型xnew上传至服务器时,参与方收到服务器下发的模型表示xt为:
xt=(1-αt)xt-1+αtxnew
其中,xt-1表示t-1时刻服务器存储的模型;
步骤5.3:在虚拟域中选取跨域路由路径;
所述步骤5.3具体表述为:
当本域主机向其他域发送数据时:如果发现目的主机不在本域,根据服务器下发的全网汇总路由,找到目的主机所属的交换机,以及与本域内交换机之间的链路,根据本域智能体的动作,选择对应路径,并下发流表,当数据传输至本域的边界交换机时,从对应端口发出;
当数据在本域内传输时:如果无法匹配对应流表,将数据包上传控制器,由控制器查询汇总路由,选择跨域路由路径,并下发对应流表,经本域交换机将数据报发送给目的主机属于的交换机;
当其他域向本域发送数据时:如果数据包来自于其他域主机,由于无法匹配对应流表,数据包需要上传控制器,由控制器查询汇总路由,找到本域主机所属的交换机,以及与本域内交换机之间的链路,根据本域智能体的动作,选择对应路径,下发匹配流表,数据包经由链路传输至本域主机。
2.根据权利要求1所述的一种基于联邦学习的跨域数据传输方法,其特征在于,所述步骤2包括:
步骤2.1:获取每个控制器连接的交换机信息、主机信息、交换机链路信息以及边界交换机和跨域链路信息;
步骤2.2:获取交换机的邻接矩阵;
步骤2.3:在源交换机和目的交换机之间进行探测,得到属于二者之间的所有链路;
步骤2.4:从找到的所有链路中选择出k条最短路径。
3.根据权利要求2所述的一种基于联邦学习的跨域数据传输方法,其特征在于,所述步骤2.2包括:
获取交换机的端口流量信息;
获取交换机的链路层发现协议时延信息;
获取交换机的echo时延信息;
计算链路的平均时延T:
T=(T1+T2-Ta-Tb)/2
其中,T1、T2分别表示链路层发现协议的正向、反向时延信息;Ta表示控制器到两个交换机的往、返时延;
根据交换机链路的出节点端口号和链路时延信息构建交换机的邻接矩阵。
4.根据权利要求1所述的一种基于联邦学习的跨域数据传输方法,其特征在于,所述步骤3包括:
初始化深度确定性策略梯度算法得到智能体;
将交换机的端口流量信息转换为短时流量状态矩阵;
将短时流量状态矩阵作为智能体的输入状态;
从k条路径中选择最短的一条作为智能体的输出动作;
将链路平均时延T作为智能体的奖励值;
设置最大迭代次数,不断更新网络参数,直到网络状态收敛时输出域内路径。
5.根据权利要求1所述的一种基于联邦学习的跨域数据传输方法,其特征在于,所述步骤4包括:
通过多线程建立服务器与客户端的连接;
客户端的控制器在完成初始化操作后创建子线程连接到服务器,利用信号量机制建立多线程中的同步互斥操作,避免共享变量之间的访问冲突。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210449032.4A CN115037669B (zh) | 2022-04-27 | 2022-04-27 | 一种基于联邦学习的跨域数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210449032.4A CN115037669B (zh) | 2022-04-27 | 2022-04-27 | 一种基于联邦学习的跨域数据传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115037669A CN115037669A (zh) | 2022-09-09 |
CN115037669B true CN115037669B (zh) | 2023-05-02 |
Family
ID=83119508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210449032.4A Active CN115037669B (zh) | 2022-04-27 | 2022-04-27 | 一种基于联邦学习的跨域数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115037669B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117240774B (zh) * | 2023-11-15 | 2024-01-23 | 云南省地矿测绘院有限公司 | 一种跨域智能sdn路由方法 |
CN118233671B (zh) * | 2024-03-06 | 2024-08-16 | 中国人民解放军国防科技大学 | 一种基于多智能体深度强化学习的多路径视频传输方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112532451A (zh) * | 2020-11-30 | 2021-03-19 | 安徽工业大学 | 基于异步通信的分层联邦学习方法、装置、终端设备及存储介质 |
WO2021169577A1 (zh) * | 2020-02-27 | 2021-09-02 | 山东大学 | 一种基于加权联邦学习的无线业务流量预测方法 |
WO2021219054A1 (zh) * | 2020-04-29 | 2021-11-04 | 深圳前海微众银行股份有限公司 | 横向联邦学习系统优化方法、装置、设备及可读存储介质 |
CN114037089A (zh) * | 2021-10-26 | 2022-02-11 | 中山大学 | 一种面向异质场景的异步联邦学习方法、装置及存储介质 |
CN114254761A (zh) * | 2021-12-22 | 2022-03-29 | 安徽兰科智能科技有限公司 | 一种适用于异构网络的通用联邦学习实现方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10716022B2 (en) * | 2018-07-26 | 2020-07-14 | Hewlett Packard Enterprise Development Lp | Systems and methods for calculating uplink pathloss in a WLAN |
CN109711529B (zh) * | 2018-11-13 | 2022-11-08 | 中山大学 | 一种基于值迭代网络的跨领域联邦学习模型及方法 |
US11290368B2 (en) * | 2019-05-21 | 2022-03-29 | Red Hat, Inc. | Federated messaging for quantum systems through teleportation |
CN113038616B (zh) * | 2021-03-16 | 2022-06-03 | 电子科技大学 | 一种基于联邦学习的频谱资源管理分配方法 |
-
2022
- 2022-04-27 CN CN202210449032.4A patent/CN115037669B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021169577A1 (zh) * | 2020-02-27 | 2021-09-02 | 山东大学 | 一种基于加权联邦学习的无线业务流量预测方法 |
WO2021219054A1 (zh) * | 2020-04-29 | 2021-11-04 | 深圳前海微众银行股份有限公司 | 横向联邦学习系统优化方法、装置、设备及可读存储介质 |
CN112532451A (zh) * | 2020-11-30 | 2021-03-19 | 安徽工业大学 | 基于异步通信的分层联邦学习方法、装置、终端设备及存储介质 |
CN114037089A (zh) * | 2021-10-26 | 2022-02-11 | 中山大学 | 一种面向异质场景的异步联邦学习方法、装置及存储介质 |
CN114254761A (zh) * | 2021-12-22 | 2022-03-29 | 安徽兰科智能科技有限公司 | 一种适用于异构网络的通用联邦学习实现方法 |
Non-Patent Citations (1)
Title |
---|
刘耕 ; 赵立君 ; 陈庆勇 ; 唐小勇 ; 游正鹏 ; .联邦学习在5G云边协同场景中的原理和应用综述.通讯世界.2020,(第07期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115037669A (zh) | 2022-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115037669B (zh) | 一种基于联邦学习的跨域数据传输方法 | |
CN112491714B (zh) | SDN环境下基于深度强化学习的智能QoS路由优化方法、系统 | |
CN108881048B (zh) | 一种基于强化学习的命名数据网络拥塞控制方法 | |
Yao et al. | AI routers & network mind: A hybrid machine learning paradigm for packet routing | |
KR101809779B1 (ko) | 타이-브레이킹 메커니즘에의 피드백으로서의 링크 사용률의 이용에 기초한 802.1aq에 대한 자동화된 트래픽 엔지니어링 | |
CN110986979A (zh) | 一种基于强化学习的sdn多路径路由规划方法 | |
CN108040012B (zh) | 基于天牛须搜索的sdn网络中多目标组播路由路径构建方法 | |
CN114567598B (zh) | 一种基于深度学习和跨域协作的负载均衡方法及装置 | |
CN112600759B (zh) | 基于深度强化学习在Overlay网络下多路径流量调度方法及系统 | |
JP2003008629A (ja) | データパケットを伝送するための経路を発見するためのネットワーク装置 | |
Zhu et al. | GCLR: GNN-based cross layer optimization for multipath TCP by routing | |
CN114500354B (zh) | 一种交换机控制方法、装置、控制设备及存储介质 | |
CN115714741A (zh) | 一种基于协同多智能体强化学习的路由决策方法及系统 | |
Zhao et al. | DRL-M4MR: An intelligent multicast routing approach based on DQN deep reinforcement learning in SDN | |
CN114938374A (zh) | 跨协议负载均衡方法及系统 | |
Ren et al. | End-to-end network SLA quality assurance for C-RAN: a closed-loop management method based on digital twin network | |
CN108965000B (zh) | 一种私有云sdn引流实现方法 | |
CN117294643B (zh) | 一种基于SDN架构的网络QoS保障路由方法 | |
Meng et al. | Intelligent routing orchestration for ultra-low latency transport networks | |
Feamster et al. | Network-wide BGP route prediction for traffic engineering | |
CN104885417A (zh) | 控制装置、通信系统、通信节点控制方法以及程序 | |
Wei et al. | G-Routing: Graph Neural Networks-Based Flexible Online Routing | |
CN113965470B (zh) | 一种航空信息网络实验仿真系统 | |
Elbey et al. | Review on Reinforcement Learning-based approaches for Service Function Chain deployment in 5G networks | |
Wang et al. | A Q-Learning based Routing Optimization Model in a Software Defined Network |
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 |