[发明专利]一种应用于层次化片上网络的两级拆分路由器及其路由算法有效
申请号: | 201710359177.4 | 申请日: | 2017-05-19 |
公开(公告)号: | CN107046500B | 公开(公告)日: | 2019-08-30 |
发明(设计)人: | 杜高明;张永亮;胡巧;张多利;宋宇鲲;王晓蕾 | 申请(专利权)人: | 合肥工业大学;合肥工大先行微电子技术有限公司 |
主分类号: | H04L12/715 | 分类号: | H04L12/715;H04L12/761;H04L12/801 |
代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 陆丽莉;何梅生 |
地址: | 230009 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种应用于层次化片上网络的两级拆分路由器及其路由算法,其特征是,两级拆分路由器是将路由器的译码模块设置为多播路由计算模块;多播路由计算模块包括分类译码单元YM、单播数据包路由计算单元SR、多播上行数据包路由计算单元UR、多播下行数据包路由计算单元DR和输出端口寄存单元。本发明能对混合多播路由算法作一定的优化改善,对多播数据包中的数据通过两级拆分的方法进行有选择的拆分传输,以期降低多播数据包的延迟,同时优化上层网络的拥塞状况。 | ||
搜索关键词: | 一种 应用于 层次 化片上 网络 两级 拆分 路由器 及其 路由 算法 | ||
【主权项】:
1.一种应用于层次化片上网络的两级拆分路由器,所述层次化片上网络是由N×M的底层二维网络和L×S的上层网络构成;1≤L<N,1≤S<M;所述底层二维网络分为L×S个区;每个区内包含一个中间路由器和若干个普通路由器;所述普通路由器包含五个传输方向;所述中间路由器包含五个传输方向和一个向上传输方向;所述上层网络均为传输路由器;所述传输路由器包含五个传输方向和一个向下传输方向;所述中间路由器与所述传输路由器互相连接;其特征是,将所述中间路由器和若干个普通路由器中的译码模块设置为多播路由计算模块;所述多播路由计算模块包括分类译码单元YM、单播数据包路由计算单元SR、多播上行数据包路由计算单元UR、多播下行数据包路由计算单元DR和输出端口寄存单元;多播上行数据包路由计算单元UR包括:两级拆分单元TS和普通上行路由计算单元RC;所述输出端口寄存单元包括:m位的传输方向寄存器port_1[m‑1:0]和m位全方向寄存器port_2[m‑1:0];m为传输方向的个数;所述传输方向寄存器port_1[m‑1:0]用于存储当前头微片的传输方向;所述全方向寄存器port_2[m‑1:0]用于存储所有头微片的传输方向;任意一个区内的中间路由器或普通路由器作为当前路由节点并通过自身的输入模块接收到数据包时,当前路由节点的输入模块向自身的多播路由计算模块发送所述数据包中的微片;当前路由节点的分类译码单元YM对所接收到的当前微片进行判断,若所接收到的当前微片为头微片,则分类译码单元YM对所述头微片再进行判断;若所述头微片为多播数据包的头微片;则对所述多播数据包的头微片的传输方向进行判断,若为向上传输方向,则将所述多播数据包的头微片发送至多播上行数据包路由计算单元UR用于计算传输方向;若为向下传输方向,则将所述多播数据包的头微片发送至多播下行数据包路由计算单元DR用于计算传输方向;若所述头微片为单播数据包的头微片;则将单播数据包的头微片发送至单播数据包路由计算单元SR用于计算传输方向;若所接收到的当前微片为体微片,则所述输出端口寄存单元将所有头微片的传输方向从全方向寄存器port_2[m‑1:0]复制到传输方向寄存器port_1[m‑1:0]中,当前路由节点的输入模块根据输出端口寄存单元中传输方向寄存器port_1[m‑1:0]的传输方向将体微片传输至下游路由节点;若所接收到的当前微片为尾微片,则所述输出端口寄存单元将所有头微片的传输方向从全方向寄存器port_2[m‑1:0]复制到传输方向寄存器port_1[m‑1:0]中,当前路由节点的输入模块根据输出端口寄存单元中传输方向寄存器port_1[m‑1:0]的传输方向将尾微片传输至下游路由节点;然后,当前路由节点的分类译码单元YM向所述输出端口寄存单元发送数据包传输结束信号;所述输出端口寄存单元根据所接收到的数据包传输结束信号,将当前路由节点的输出端口寄存单元清零;所述多播上行数据包路由计算单元UR的两级拆分单元TS根据所接收到的多播数据包的头微片,将所述当前路由节点的自身坐标与目的节点的坐标进行比较,若两个坐标相同,则表示当前路由节点即为目的节点,得到传输方向为本地方向并保存至所述输出端口寄存单元中;若两个坐标相邻,则表示当前路由节点与目的节点为相邻节点,得到传输方向为相邻方向,所述两级拆分单元TS再判断当前路由节点的输出端口是否空闲,若空闲,则将相邻方向保存至所述输出端口寄存单元中;若不空闲,则不保存相邻方向,并将所述多播数据包的头微片传输至普通上行路由计算单元RC;若两个坐标不相邻也不相同,则直接将所述多播数据包的头微片传输至普通上行路由计算单元RC;所述普通上行路由计算单元RC根据当前路由节点所在区的中间路由器坐标,计算出多播数据包头微片下游的传输方向,并保存至当前路由节点的输出端口寄存单元;所述多播下行数据包路由计算单元DR根据所接收到的多播数据包的头微片,利用XY路由算法计算出多播数据包头微片下游的传输方向,并保存至当前路由节点的输出端口寄存单元;单播数据包路由计算单元SR根据所接收到的单播数据包的头微片,利用XY路由算法计算出单播数据包头微片下游的传输方向,并保存至当前路由节点的输出端口寄存单元;所述全方向寄存器port_2[m‑1:0]接收到当前微片的输入方向时,判断当前微片的传输方向是否已经存在,若已经存在,则当前路由节点的多播路由计算模块将重仲裁请求信号发送至自身的仲裁模块,用于打开交叉开关模块相应的输出端口,否则,直接存储当前微片的输入方向。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学;合肥工大先行微电子技术有限公司,未经合肥工业大学;合肥工大先行微电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710359177.4/,转载请声明来源钻瓜专利网。