[发明专利]一种基于层次化Q-routing规划的路由方法有效
申请号: | 202110389260.2 | 申请日: | 2021-04-12 |
公开(公告)号: | CN113079093B | 公开(公告)日: | 2022-03-15 |
发明(设计)人: | 李桢旻;翁晓峰;王镜涵;李天瑜;马宇晴;杜高明;宋宇鲲 | 申请(专利权)人: | 合肥工业大学 |
主分类号: | H04L45/12 | 分类号: | H04L45/12;H04L41/12;H04L45/00;H04L45/24 |
代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 陆丽莉;何梅生 |
地址: | 230009 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 层次 routing 规划 路由 方法 | ||
1.一种基于层次化Q-routing规划的路由方法,是应用于由w个路由器节点、w个资源节点和若干条互连通道所组成的片上网络中,所述路由器节点包含输入端口、输出端口、拥塞感知器、多路选通器、访问路由表;其特征是,在所述路由器节点中设置学习模块;所述学习模块包括:学习方式仲裁器、层次化控制模块、路由表选择模块、3个子学习模块、3个路由表;所述路由方法是按如下步骤进行:
步骤1:将所有路由器节点按照如下规则划分三层网络结构,从而形成金字塔结构;所述规则为:
在第1层网络结构中将w个路由器节点以每x2个节点划分为一组,从而构成由个虚拟路由器组所构成的第1层网络结构;
在第2层网络结构中将个虚拟路由器组以每y2个节点划分为一组,从而构成由个虚拟路由器组所构成的第2层网络结构;
在第3层网络结构中将个虚拟路由器组以z2个节点划分为一组,从而构成由1个虚拟路由器组所构成的第3层;
3个子学习模块和3个路由表对应各个层的网络结构;每个子学习模块均包括:R矩阵、Q矩阵、Q值比较器;
令L1i,h表示第1层网络结构中第i个路由器节点所对应的第h个子学习模块,ix2,h=1,2,3;
令Lji表示第j层网络结构中第i个虚拟路由器组,j≠1;
令L3i:L2i表示第3层网络结构的第i个虚拟路由器组中处于第2层网络结构的第i个虚拟路由器组;
令L3i:L2i:L1i,h表示第3层网络结构的第i个虚拟路由器组中处于第2层网络结构中第i个虚拟路由器组内的第1层网络结构中的第i个路由器节点所对应的第h个子学习模块;
步骤2:各个路由器节点在各层网络结构中进行拥塞程度感知与并行学习;
步骤2.1:以L3i:L2i:L1i,1作为当前路由器节点第1个子学习模块;对于处于第1层网络结构中当前路由器节点,通过自身的拥塞感知器对自身的输入端口进行占用率计数,对自身的输出端口进行流量计数,从而得出各条路径上的第1层拥塞等级,并存入第1层网格结构中L3i:L2i:L1i,1所表示的第1个子学习模块的R矩阵中;
对处于第2层网络结构中L3i:L2i:L1i,2所表示的第2个子学习模块,通过对第2层网络结构中第i个虚拟路由器组内各节点的拥塞等级进行平均池化,得到池化后的拥塞等级并存入第2层网络结构中L3i:L2i:L1i,2所表示的第2个子学习模块的R矩阵中;
对处于第3层网络结构中L3i:L2i:L1i,3所表示的第3个子学习模块,通过对第3层网络结构中第i个虚拟路由器组内各节点的拥塞等级进行平均池化,得到池化后的拥塞等级并存入最顶层网络结构中L3i:L2i:L1i,3所表示的第3个子学习模块的R矩阵中;
步骤2.2:初始化i=0;
步骤2.3:将L3i:L2i:L1i,h,h=1,2,3所表示的子学习模块里的奖励值均初始化为目的奖励值;将其他的路由器节点中子学习模块里的奖励值均初始化为0;
步骤2.4:对处于第1层网络结构中L3i:L2i:L1i,1所表示的第1个子学习模块,读取与其邻接路由器节点上的子学习模块的最大奖励值,并根据L3i:L2i:L1i,1所表示的第1个子学习模块中R矩阵,对所读取的最大奖励值进行加权处理,得到加权后的奖励值,并选择加权后的最大奖励值传给所有的邻接路由器节点;
对处于第2层网络结构中L3i:L2i:L10,2所表示的第2个子学习模块,读取与L3i:L2i:L10,2所表示的第2个子学习模块相邻的虚拟路由器组中处于同一位置上的第2个子学习模块的最大奖励值,并作为L3i:L2i所表示的第i个虚拟路由器组中所有节点的最大奖励值;根据第L3i:L2i:L10,2所表示的第2个子学习模块中R矩阵,对所读取的最大奖励值进行加权处理,得到加权后的奖励值,并选择加权后的最大奖励值传给与L3i:L2i:L10,2所表示的第2个子学习模块相邻的虚拟路由器组中处于同一位置上的第2个子学习模块;
对处于第3层网络结构中L3i:L2i:L10,3所表示的第3个子学习模块,读取与L3i:L2i:L10,3所表示的第3个子学习模块相邻的虚拟路由器组中处于同一位置上的第3个子学习模块的最大奖励值,并作为第3层网络结构中第i个虚拟路由器组L3i中所有节点的最大奖励值;根据第3层网络结构中L3i:L2i:L10,3所表示的第3个子学习模块中R矩阵,对所读取的最大奖励值进行加权处理,得到加权后的奖励值,并选择加权后的最大奖励值传给与L3i:L2i:L10,3所表示的第3个子学习模块相邻的虚拟路由器组中处于同一位置上的第3个子学习模块;
步骤2.5:当得到各个路由器节点的各个子学习模块的下一跳的路径信息后,每个路由器节点的各个子学习模块的下一跳的路径信息并行传输至所述层次化控制模块中;
步骤3:在所述层次化控制模块中对路径信息进行修正,即:自高层网络结构向低层网络结构进行路径信息纠正,再将纠正后的路径信息从自低层网络结构向高层网络结构进行方向反传输,从而使得路由器节点的各个子学习模块均得到纠正后的路径信息,并将纠正后的路径信息存入至对应层网络结构的路由表中;
步骤4:将i+1赋值给i后返回步骤2.3,直到i=max-1为止,从而完成每个路由器节点作为目的节点的路径规划,其中max表示每层网络结构中最大的虚拟路由器组内路由器节点数量;
步骤5:片上网络数据包的传输:
片上网络中的数据包通过访问各个层网络结构中的路由表,依次经过输入端口和多路选通器,在多路选通器对学习模块中的路由表选择模块进行访问操作;
所述路由表选择模块读取数据包中的目的路由器节点的位置信息,并按访问规则访问路由表并取出路由表中存储的路径信息:
根据路由表中所取出的路径信息,如果所取出的路径信息为返回信息,则目的路由器节点将数据包传送到自身的收包器中,否则根据取出的路径信息送入对应的输出端口,从而完成数据包的传输。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110389260.2/1.html,转载请声明来源钻瓜专利网。