专利名称:Clos交换网络中基于信元的正交多子调度方法
技术领域:
本发明属于通信技术领域,更进一步涉及Clos (—种三级无阻塞网络,由克劳斯提出)交换网络中基于信元的正交多子调度方法。本发明可用于大容量和高速率的Clos 交换网络中,提高了调度的有效性和交换网络级间链路的利用率,由此消除交换网络规模增大对系统性能带来的影响。
背景技术:
随着移动通信、多媒体广播业务的发展,人们对大容量数据通信的要求更加迫切, 这也给信元交换提出了越来越高的要求。如何在提高交换网络的传输速度,扩大交换网络规模的前提下,还能保证交换网络的调度效率不受影响,成为亟待解决的问题。中兴通讯股份有限公司在提出的专利申请“一种动态选择路由的方法及CLOS交换网络系统”(申请日:2010-05-06,申请号201010167313. 8,公布号CN 102238072A)中公开了一种CLOS交换网络中动态维护路由表的路由调度方法。此方法包括源交换接入单元和目的交换接入单元之间的各交换单元中均设置并动态维护路由表,交换单元接收到来自源交换接入单元的信元后,根据所述路由表确定下一路由点并将信元转发至此下一路由点,所述下一路由点为下一级交换单元或目的交换接入单元。该发明采用分布式控制方式实现路由选择,使网络中的交换单元具有选择和改变路由权利,提高系统效率及灵活性。该方法的不足之处在于,每一级交换单元都需要一定数量的缓存来对信元进行排队,并查找路由表对信元进行分布式选路,这就使得信元在交换网络中的时延不可控,导致到达输出级单元的信元之间出现乱序,使输出级单元必须包含复杂的排序模块对信元进行排序。武汉烽火网络有限责任公司在提出的专利申请“一种基于Clos交换结构的贯序匹配调度算法”(申请日:2008. 3. 28,申请号200810084265,授权公告号CN 101304374B)中公开了一种基于Clos网络交换结构的贯序匹配调度算法,用来解决传统调度算法调度效率低的问题。该方法的实施步骤是第一,输入模块的m个输出端口向每个中间模块的相应的输出端口发出请求消息;第二,每个中间模块的输出端口选定一个发出请求消息的虚拟输出组并向其发出允许消息;第三,每个中间模块的输入端口选定一个该中间模块的输出端口并放行该输出端口发出的允许消息;第四,完成从虚拟输出队列到输出端口的通道建立过程;第五,发送信元并更新指针,重复执行步骤4、步骤5直至所有信元都被发送或者所有的允许消息都已被接受。该方法所述的调度算法采用直通式匹配,整个匹配过程一次完成,同时采用多对多的“请求-允许-接受”方式,最大程度利用了调度机会。该方法的不足之处在于,首先,由于它是各个端口相互独立的通过指针优先级轮转来仲裁,所以有可能第一步输入级多个输出端口都选择为某个信元服务,但一个信元只能选择一个端口,所以最终导致网络中存在空闲链路但却不能为其他信元提供服务;其次, 随着交换网络规模的扩大,交换网络内部的链路数量成倍增加,完成一次调度的时间相应增加,时隙(级间传输一个信元所需的时间)长度也会随之增大,交换网络不得不使用较长的信元。这将导致交换网络内部链路利用率的降低,从而对交换网络的时延等性能造成影响。
发明内容
本发明的目的在于克服上述已有技术的不足,提出一种Clos交换网络中基于信元的正交多子调度方法,利用链路正交的集中式选路方法,提高调度有效性,利用多个子调度器循环工作,提高交换网络级间链路利用率,由此消除因网络规模增大对系统时延性能带来的影响。本发明的思路是在三级无阻塞网络Clos网络中,根据网络规模和调度算法执行时间,计算所需子调度器的个数,各子调度器根据时隙信号到来依次开始工作,每个子调度器顺序接收虚拟输出组发送的链路匹配请求,采用中间级无须排队的集中式调度方法,避免了信元在输出级单元产生乱序,采用链路正交的方法进行选路,完成对链路的充分匹配, 在每个时隙结束时,都有子调度器返回调度结果,从而在每个时隙都可以进行队头信元的传输,提高了级间链路的利用率。本发明包括如下步骤(1)确定三级Clos交换网络中的系统参数(2)划分匹配子过程2a)将子调度器的调度过程在时间上平均划分为多个匹配子过程,匹配子过程的数目应与输出级单元的数目相等;2b)将输入级单元的虚拟输出队列按照发往的目的输出级单元划分为多个虚拟输出组,虚拟输出组的数目应与输出级单元的数目相等;(3)发送链路匹配请求3a)检测匹配子过程启动信号是否到来,若是,则执行步骤3b),否则,继续检测匹配子过程启动信号;3b)按照链路请求发送规则,由子调度器检测匹配子过程中待发送链路请求的虚拟输出组各虚拟输出队列中是否存在未发送匹配请求的信元,如果虚拟输出队列中信元数目大于零,则执行步骤3c),如果虚拟输出队列中信元数目等于零,则不对该虚拟输出队列作任何操作;3c)判断信元数目大于零的虚拟输出队列是否在该子调度器上一次调度过程中获得匹配,如果该队列在该子调度器上一次调度过程中匹配失败,则在本次调度过程中不发送链路匹配请求;反之,该队列在本次调度过程中链路匹配请求发送成功;3d)若虚拟输出队列发送链路匹配请求成功,则将该队列未发送匹配请求的信元数目减1;(4)子调度器正交选路4a)检测时隙信号是否到来,若是,则执行下一步骤,否则,执行步骤4d);4b)判断子调度器是否完成所有虚拟输出组的链路匹配,若是,则执行下一步骤, 否则,执行步骤4e);4c)将子调度器中输入级单元输出链路忙闲表和输出级单元输入链路忙闲表中所有表项置1,执行步骤4e);
4d)检测匹配子过程启动信号是否到来,若是,则执行下一步骤,否则,继续检测匹配子过程启动信号;4e)将子调度器中输入级单元输出链路忙闲表和输出级单元输入链路忙闲表对应表项相与,生成可用链路集;(5)链路匹配5a)将发送匹配请求成功的虚拟输出队列与可用链路集中的可用链路进行顺序匹配,并将匹配结果写入子调度器中的匹配结果寄存器;5b)将输入级单元输出链路忙闲表和输出级单元输入链路忙闲表中已获得匹配的链路对应表项置0 ;(6)子调度器向输入级单元返回匹配结果寄存器中存储的匹配结果;(7)重复步骤C3)、步骤(4)、步骤( 、步骤(6),直至子调度器对所有虚拟输出组完成链路匹配;(8)若虚拟输出队列链路匹配成功,则在本次调度结束后的下一时隙进行队头信元的传输;若虚拟输出队列链路匹配失败,则在该子调度器的下一调度过程中继续进行链路匹配,直至匹配成功。本发明与现有技术相比具有以下优点第一,由于本发明采用了中间级单元无须排队的集中式调度方法,克服了现有技术中因每一级单元分布式路由而导致信元在输出级单元产生乱序的情况,使得本发明避免了在输出级单元对信元重排序的复杂工作,使输出级单元工作简化,降低了信元在输出级单元的处理时延。第二,由于本发明采用了链路正交的选路方法,克服了现有技术中因各虚拟输出队列独立选路而使得网络中有空闲链路而得不到充分利用的问题,使得各虚拟输出队列与空闲链路充分匹配,由此使本发明提高了调度的有效性。第三,由于本发明采用了多个子调度器循环工作,在每个时隙都有子调度器返回调度结果,因此在每个时隙都可以进行信元的传输,补偿了现有技术中因调度时间过长造成的链路占用率低的问题,由此使本发明能够消除因网络规模增大带来的对系统时延性能的影响。
图1为本发明的流程图。
具体实施例方式下面结合附图1对本发明做进一步的描述。步骤1 确定三级无阻塞交换网络Clos网络中的系统参数;第一步,将交换网络外部端口数除以输入级单元的个数,得到输入级单元端口数, 按照三级无阻塞交换网络Clos网络严格无阻的条件,将满足公式m > 2n-l的值确定为中间级单元的个数,其中,m表示中间级单元的个数,η表示输入级单元端口数,输出级单元的个数应当与输入级单元的个数相等。本发明实施例采用有六个输入级单元的24* 端口交换网络,则每一个输入级单元应有四个输入端口,按照三级无阻塞交换网络Clos网络严格无阻的条件,选择中间级单元的个数为八,输出级单元的个数为四,其中,输入级单元为4*8的交换结构,中间级单元为8*8的交换结构,输出级单元为8*4的交换结构。第二步,由下面公式计算时隙长度
权利要求
1. Clos交换网络中基于信元的正交多子调度方法,包括如下步骤(1)确定三级无阻塞交换网络Clos网络中的系统参数;(2)划分匹配子过程2a)将子调度器的调度过程在时间上平均划分为多个匹配子过程,匹配子过程的数目应与输出级单元的数目相等;2b)将输入级单元的虚拟输出队列按照发往的目的输出级单元划分为多个虚拟输出组,虚拟输出组的数目应与输出级单元的数目相等;(3)发送链路匹配请求3a)检测匹配子过程启动信号是否到来,若是,则执行步骤北),否则,继续检测匹配子过程启动信号;3b)按照链路请求发送规则,由子调度器检测匹配子过程中待发送链路请求的虚拟输出组各虚拟输出队列中是否存在未发送匹配请求的信元,如果虚拟输出队列中信元数目大于零,则执行步骤3c),如果虚拟输出队列中信元数目等于零,则不对该虚拟输出队列作任何操作;3c)判断信元数目大于零的虚拟输出队列是否在该子调度器上一次调度过程中获得匹配,如果该队列在该子调度器上一次调度过程中匹配失败,则在本次调度过程中不发送链路匹配请求;反之,该队列在本次调度过程中链路匹配请求发送成功;3d)若虚拟输出队列发送链路匹配请求成功,则将该队列未发送匹配请求的信元数目减1 ;(4)子调度器正交选路4a)检测时隙信号是否到来,若是,则执行下一步骤,否则,执行步骤4d);4b)判断子调度器是否完成所有虚拟输出组的链路匹配,若是,则执行下一步骤,否则, 执行步骤4e);4c)将子调度器中输入级单元输出链路忙闲表和输出级单元输入链路忙闲表中所有表项置1,执行步骤4e);4d)检测匹配子过程启动信号是否到来,若是,则执行下一步骤,否则,继续检测匹配子过程启动信号;4e)将子调度器中输入级单元输出链路忙闲表和输出级单元输入链路忙闲表对应表项相与,生成可用链路集;(5)链路匹配5a)将发送匹配请求成功的虚拟输出队列与可用链路集中的可用链路进行顺序匹配, 并将匹配结果写入子调度器中的匹配结果寄存器;5b)将输入级单元输出链路忙闲表和输出级单元输入链路忙闲表中已获得匹配的链路对应表项置O ;(6)子调度器向输入级单元返回匹配结果寄存器中存储的匹配结果;(7)重复步骤(3)、步骤、步骤(5)、步骤(6),直至子调度器对所有虚拟输出组完成链路匹配;(8)若虚拟输出队列链路匹配成功,则在本次调度结束后的下一时隙进行队头信元的传输;若虚拟输出队列链路匹配失败,则在该子调度器的下一调度过程中继续进行链路匹配,直至匹配成功。
2.根据权利要求1所述的Clos交换网络中基于信元的正交多子调度方法,其特征在于,步骤1所述系统参数的确定步骤如下第一步,将交换网络外部端口数除以输入级单元的个数,得到输入级单元端口数,按照三级无阻塞交换网络Clos网络严格无阻的条件,将满足公式m > 2n-l的值确定为中间级单元的个数,其中,m表示中间级单元的个数,η表示输入级单元端口数,输出级单元的个数应当与输入级单元的个数相等;第二步,由下面公式计算时隙长度^ SxLxF其中,Ts表示级间传输一个信元所需时钟周期数的时隙长度,L为信元长度,F为交换单元内部时钟频率,C表示级间链路传输信元的速率;第三步,测试交换网络中完成一次调度所需匹配的时钟周期个数;第四步,将调度所需匹配的时钟周期个数除以时隙的时钟周期个数,向上取整得到交换网络所需要的子调度器的个数。
3.根据权利要求1所述的Clos交换网络中基于信元的正交多子调度方法,其特征在于,步骤2b)所述的虚拟输出队列是指按照发往的目的输出端口排队的信元信息队列,虚拟输出队列的组织方式为,在输入级单元中,各虚拟输出队列按照发往的输出级单元输出端口号由小到大依次排列,每个虚拟输出队列中的各信元按照到达输入级单元的先后顺序依次排列。
4.根据权利要求1所述的Clos交换网络中基于信元的正交多子调度方法,其特征在于,步骤北)中所述的链路请求发送规则是指,发送规则采用基于调度周期轮转的方式,在第一个调度周期的第一个匹配子过程中,第一个输入级单元发送第一个虚拟输出组的链路请求,第二个输入级单元发送第二个虚拟输出组的链路请求,依次类推,最后一个输入级单元发送最后一个虚拟输出组的链路请求;在第二个匹配子过程中,第一个输入级单元发送第二个虚拟输出组的链路请求,第二个输入级单元发送第三个虚拟输出组的链路请求,依次类推,最后一个输入级单元发送第一个虚拟输出组的链路请求;依次类推,在最后一个匹配子过程中,第一个输入级单元发送最后一个虚拟输出组的链路请求,第二个输入级单元发送第一个虚拟输出组的链路请求,依次类推,最后一个虚拟输出组发送倒数第二个虚拟输出组的链路请求;在第二个调度周期的第一个匹配子过程中,第一个输入级单元发送第二个虚拟输出组的链路请求,第二个输入级单元发送第三个虚拟输出组的链路请求,依次类推,最后一个输入级单元发送第一个虚拟输出组的链路请求;在第二个匹配子过程中,第一个输入级单元发送第三个虚拟输出组的链路请求,第二个输入级单元发送第四个虚拟输出组的链路请求,依次类推,最后一个输入级单元发送第二个虚拟输出组的链路请求;依次类推,在最后一个匹配子过程中,第一个输入级单元发送倒数第二个虚拟输出组的链路请求,第二个输入级单元发送倒数第一个虚拟输出组的链路请求,依次类推,最后一个虚拟输出组发送倒数第三个虚拟输出组的链路请求;在后序调度周期中,执行以上的轮转方式发送输入级单元虚拟输出组的链路匹配请求。
5.根据权利要求1所述的Clos交换网络中基于信元的正交多子调度方法,其特征在于,步骤4a)中所述的时隙信号是指,在每个时隙t,启动第ρ = tmodP个子调度器调度过程的脉冲信号,其中,1 ^Ρ^Ρ,Ρ为子调度器的个数。
全文摘要
本发明公开了一种clos交换网络中基于信元的正交多子调度方法,主要解决现有技术中因交换网络规模增大对系统时延性能造成的影响。本发明的具体步骤包括(1)确定系统参数;(2)划分匹配子过程;(3)发送链路匹配请求;(4)子调度器正交选路;(5)链路匹配;(6)返回匹配结果;(7)完成所有匹配子过程;(8)传输信元。本发明通过多个子调度器循环正交调度,提高了调度的有效性和级间链路的利用率,由此消除因交换网络规模增大对系统时延性能带来的影响。
文档编号H04L12/56GK102497316SQ20111041069
公开日2012年6月13日 申请日期2011年12月9日 优先权日2011年12月9日
发明者上官林芳, 卢卫娜, 姚明旿, 张冰, 张奭, 张茂森, 潘伟涛, 邱智亮, 韩冬, 鲍民权 申请人:西安电子科技大学