二维片上网络拓扑结构的自适应路由方法_3

文档序号:8925158阅读:来源:国知局
端口接收到数据分组,则流量控制器的左端为输入端口右端为输出端口,如果右端的某一个端口接收到数据分组,则流量控制器的右端为输入端口左端为输出端口。
[0063]参照附图2对本发明自适应路由方法作进一步的描述。具体步骤为:
[0064]步骤1.源节点本地端口接收数据分组。
[0065]源节点的本地端口接收来自本地IP发送的数据分组。
[0066]步骤2.本地端口注入数据分组到相应方向。
[0067]源节点的根据注入方向选择的结果将本地端口的数据分组发送到相应的路由节点输出端口。
[0068]步骤3.流量控制器接收数据分组。
[0069]与路由节点输出端口方向相连的流量控制器端口接收数据分组。
[0070]步骤4.为数据分组分配流量控制器的输出端口。
[0071]流量控制器为数据分组分配流量控制器的输出端口,将数据分组传输到该输出端
□ O
[0072]步骤5.路由节点接收数据分组。
[0073]与流量控制器输出端口相连的路由节点的相应路由端口方向接收数据分组。
[0074]步骤6.判断路由节点是否为目的节点。
[0075]若当前路由节点是目的节点,则执行步骤8,否则执行步骤7。
[0076]步骤7.路由节点计算输出端口方向。
[0077]若数据分组在本路由节点的输入方向为东方向,则输出端口为西端口,将数据分组传输到该输出端口方向,执行步骤3;若数据分组在本路由节点的输入方向为西方向,则输出端口为东端口,将数据分组传输到该输出端口方向,执行步骤3 ;若数据分组在本路由节点的输入方向为南方向,则输出端口为北端口,将数据分组传输到该输出端口方向,执行步骤3;若数据分组在本路由节点的输入方向为北方向,则输出端口为南端口,将数据分组传输到该输出端口方向,执行步骤3 ;
[0078]该步骤中,数据分组在路由节点内的传输方向不允许拐弯,即数据分组输入端口方向为西方向则输出端口方向为东输出端口,数据分组输入端口方向为东方向则输出端口方向为西输出端口,数据分组输入端口方向为南方向则输出端口方向为北输出端口,数据分组输入端口方向为北方向则输出端口方向为南输出端口。这样避免了死锁的产生,并且路由计算简单所需要的硬件开销小。
[0079]步骤8.将数据分组传输到本地输出端口,路由结束。
[0080]参照附图3对本路由方法中的本地注入方向选择方法作进一步的描述,具体步骤为:
[0081]步骤2a.计算数据分组的输出端口集合。
[0082]路由节点计算数据分组的输出端口集合:
[0083]若目的节点的横坐标大于源节点的横坐标并且目的节点的纵坐标等于源节点的纵坐标,则输出端口集合只有东方向,执行步骤2d ;
[0084]若目的节点的横坐标小于源节点的横坐标并且目的节点的纵坐标等于源节点的纵坐标,则输出端口集合只有西方向,执行步骤2d ;
[0085]若目的节点的横坐标等于源节点的横坐标并且目的节点的纵坐标大于源节点的纵坐标,则输出端口集合只有南方向,执行步骤2d ;
[0086]若目的节点的横坐标等于源节点的横坐标并且目的节点的纵坐标小于源节点的纵坐标,则输出端口集合只有北方向,执行步骤2d;
[0087]若目的节点的横坐标大于源节点的横坐标并且目的节点的纵坐标大于源节点的纵坐标,则输出端口集合有东方向和南方向,执行步骤2b ;
[0088]若目的节点的横坐标大于源节点的横坐标并且目的节点的纵坐标小于源节点的纵坐标,则输出端口集合有东方向和北方向,执行步骤2b ;
[0089]若目的节点的横坐标小于源节点的横坐标并且目的节点的纵坐标大于源节点的纵坐标,则输出端口集合有西方向和南方向,执行步骤2b ;
[0090]若目的节点的横坐标小于源节点的横坐标并且目的节点的纵坐标小于源节点的纵坐标,则输出端口集合有西方向和北方向,执行步骤2b ;
[0091]步骤2b.计算四个输出方向的拥塞信息。
[0092]本地端口最后一次注入到东方向、西方向、南方向和北方向的数据分组所等待的时钟周期数作为当前注入选择的拥塞信息,分别存储在四个方向的排队等待时间寄存器里。
[0093]该步骤中,采用本地端接口最后一次到四个输出端口方向的等待时间作为每个输出端口方向的注入拥塞选择信息,这样只需要计数器就可以实现而不需要其它额外的硬件开销,使得硬件开销小。
[0094]步骤2c.选择输出端口集合里拥塞较小的作为注入方向。
[0095]根据步骤2a中路由节点计算产生的输出端口集合以及步骤2b中计算产生的拥塞信息,选择输出端口集合里具有较小时钟周期等待数的方向作为数据分组的注入方向,将数据分组从本地端口注入到该输出端口方向,注入结束。
[0096]步骤2d.将数据分组注入到该方向。
[0097]将输出端口集合里的方向作为数据分组的注入方向,将数据分组注入到该路由输出端口方向,注入结束。
[0098]参照附图4对本发明自适应路由方法中流量控制器输出端口分配方法作进一步的描述,具体步骤为:
[0099]步骤4a.判断数据分组的优先级:
[0100]若该数据分组的目的节点和该流量控制器相连,则该数据分组具有高优先级,执行步骤4b ;
[0101]若该数据分组的目的节点和该流量控制器没有相连,则该数据分组具有低优先级,执行步骤4c。
[0102]该步骤中所述的目的节点是否与该流量控制器相连,是指目的节点与流量控制器的非接收数据分组端相连,例如若路由节点将本地端口的数据分组传输给与路由节点的南端口相连的垂直流量控制器,即垂直流量控制器的上端为数据分组接收端,非数据分组接收端则为垂直流量控制器的下端,若路由节点将本地端口的数据分组传输给与路由节点的北端口相连的垂直流量控制器,即垂直流量控制器的下端为数据分组接收端,非数据分组接收端则为垂直流量控制器的上端,水平流量控制器类似。
[0103]步骤4b.直接分配输出端口并发分配信息给拥塞信息收集器,分配结束。
[0104]流量控制器将与目的节点相连的流量控制器输出端口分配给数据分组,同时把该输出端口分配信息作为高优先级拥塞信息发给拥塞信息收集器,流量控制器输出端口分配结束。
[0105]步骤4c.计算其余输入端口高优先级拥塞信息并发给拥塞信息收集器。
[0106]流量控制器计算其余所有输入端口数据分组的优先级,把所有高优先级数据分组的输出端口请求信号作为高优先级拥塞信息发给拥塞信息收集器。
[0107]步骤4d.计算本地拥塞信息并发给拥塞信息收集器。
[0108]流量控制器计算当前流量控制器被使用的输出端口作为本地拥塞信息发给拥塞信息收集器。
[0109]该步骤中当前流量控制器被使用的输出端口,表示的是输出端口中有数据分组传输,即该输出端口不能分配给当前数据分组。
[0110]步骤4e.计算区域拥塞信息并发给拥塞信息收集器。
[0111]计算该数据分组下一个流量控制器的输入链路状态,如果可用则为不拥塞,反之为拥塞,将其作为局部拥塞信息发给拥塞信息收集器。
[0112]该步骤中数据分组下一个流量控制器是指,数据分组没有到达目的节点需要通过路由节点和流量控制器继续传输,下一个传输数据分组的流量控制器为所述的下一个流量控制器。该自适应路由方法中,数据分组只能在一种流量控制器中传输,即数据分组在到达目的节点之前要么一直在水平流量控制器中传输,要么一直在垂直流量控制器中传输,而不能在传输过程中通过两种流量控制器传输。
[0113]步骤4f.拥塞信息收集器计算可分配输
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1