CN102835081B - 基于三级互联交换网络的调度方法、装置及系统 - Google Patents

基于三级互联交换网络的调度方法、装置及系统 Download PDF

Info

Publication number
CN102835081B
CN102835081B CN201280000846.4A CN201280000846A CN102835081B CN 102835081 B CN102835081 B CN 102835081B CN 201280000846 A CN201280000846 A CN 201280000846A CN 102835081 B CN102835081 B CN 102835081B
Authority
CN
China
Prior art keywords
bandwidth
switching unit
stage switching
map information
port
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
Application number
CN201280000846.4A
Other languages
English (en)
Other versions
CN102835081A (zh
Inventor
陈志云
胡幸
周建林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN102835081A publication Critical patent/CN102835081A/zh
Application granted granted Critical
Publication of CN102835081B publication Critical patent/CN102835081B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例公开一种基于三级互联交换网络的调度方法、装置及系统,涉及数据通信领域,用于解决现有技术中采用CRRD算法进行适配调度,在保证交换吞吐量的同时限制了交换网络的规模的问题。本发明提供的技术方案包括:第一级交换单元获取出端口地图信息;根据所述出端口地图信息生成通道带宽地图信息;根据所述通道地图信息生成路径带宽地图信息;在接收到数据流时,根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元。

Description

基于三级互联交换网络的调度方法、装置及系统
技术领域
本发明涉及数据通信领域,尤其涉及一种基于三级互联交换网络的调度方法、装置及系统。
背景技术
交换网络是连接路由器输入端口和输出端口的“桥梁”,是实现分组报文转发的核心网络。随着交换网络处理业务流量的增长,交换网络的容量需要不时升级,故,多采用多个交换单元构成的多级互联交换网络,其中三级互联交换网络是最常用的一种多级互联交互网络,三级互联交换网络由三级交换单元构成,即由第一级交换单元、中间级交换单元以及第三级交换单元构成。
交换网络的指标有:吞吐率(接近100%最佳),平均信元(包)时延,信元(包)时延抖动,信元(包)丢失率,阻塞概率等。为了尽量优化性能,在交换网络中使用了很多适配调度算法,其中比较普遍适配调度算法为同时轮询调度(Concurrent Round-Robin Dispatching Scheme,以下简称为CRRD)算法。
在三级克洛斯CLOS网络中,通过CRRD算法进行适配调度。在适配调度的过程中发生两次匹配:入出端口匹配和路径匹配。其中,
入出端口匹配发生在第一级交换单元(以下简称为S1)中,具体为:S1中有排队的虚拟输出队列(Virtual Output Queue,以下简称为VOQ)向S1的所有出端发出请求,每个出端取本出端的窗口位置寄存器值,按照轮询方式,选择一个请求,并向该请求对应的VOQ发回承认;VOQ的仲裁器取出本VOQ的窗口位置寄存器值,按照轮询方式,从可能的出端发回的承认中选取一个接收。反复执行上述步骤,直到S1中排队的VOQ均接收到出端发回的承认。
路径匹配发生在中间级交换单元(以下简称为S2)中,具体为:S2的某个入端如果从对应S1的出端得到信息:有信元在该出端得到转发允许,S2的入端向该信元的目的地址所决定的S2的出端发出请求,S2的出端取出本端的窗口位置寄存器值,按照轮询方式,从可能的多个入端请求中选取一个来承认。
路径匹配得到承认后,对应的S1的VOQ发送排队的信元
由于每发送一个信元,都需要通过上述的请求-仲裁处理以实现适配调度,为了保证交换吞吐率最大,必须保证请求-仲裁周期小于发送一个信元的周期,而请求-仲裁处理的复杂度与端口数的平方*路径数成正比,在保证交换吞吐量的同时限制了交换网络的规模。
发明内容
本发明提供的一种基于三级互联交换网络的调度方法、装置及系统,解决了现有技术中采用CRRD算法进行适配调度,在保证交换吞吐量的同时限制了交换网络的规模的问题。
一方面,本发明实施例提供了一种基于三级互联交换网络的调度方法,包括:
第一级交换单元获取出端口带宽地图信息,所述出端口带宽地图信息为根据输出模块的出端口的额定带宽以及输入模块的带宽需求为该输入模块分配的带宽;
所述第一级交换单元根据所述出端口带宽地图信息生成通道带宽地图信息,所述通道地图信息为同一个第一级交换单元与同一个第三级交换单元之间允许承载的带宽;
所述第一级交换单元根据所述通道地图信息生成路径带宽地图信息,所述路径带宽地图信息为同一个第一级交换单元与同一个第三级交换单元之间的每条路径允许承载的带宽;
在接收到数据流时,所述第一级交换单元根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元。
另一方面,本发明实施例提供了一种第一级交换单元,包括:
第一获取单元,用于获取出端口带宽地图信息,所述出端口带宽地图信息为根据输出模块的出端口的额定带宽以及输入模块的带宽需求为该输入模块分配的带宽;
第一生成单元,用于根据所述第一获取单元获取的出端口带宽地图信息生成通道带宽地图信息,所述通道地图信息为同一个第一级交换单元与同一个第三级交换单元之间允许承载的带宽;
第二生成单元,用于根据所述第一生成单元生成的通道地图信息生成路径带宽地图信息,所述路径带宽地图信息为同一个第一级交换单元与同一个第三级交换单元之间的每条路径允许承载的带宽;
第一调度单元,在接收到数据流时,用于根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元。
再一方面,本发明实施例提供了一种三级互联交换网络,包括上述的第一级交换单元。。
本发明实施例的提供的基于三级互联交换网络的调度方法、装置及系统,第一级交换单元根据出端口带宽地图信息设置第一级交换单元与第三级交换单元之间的每条路径允许承载的带宽,对应于每条路径生成路径带宽地图信息,使得第一级交换单元在接收到数据流时,根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述路径带宽地图信息将所述数据流发送给所述第三级交换单元,实现对数据流的调度,不需要每发送一个信元就要进行一次请求-仲裁请求,解决了现有技术中由于每发送一个信元都需要进行一次请求-仲裁,限制了交换网络的规模的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1(a)为本发明实施例一提供的基于三级互联交换网络的调度方法流程图一;
图1(b)为本发明实施例一提供的基于三级互联交换网络的调度方法流程图二;
图2(a1)为本发明实施例二提供的一种三级CLOS交换网络系统架构一;
图2(a2)为本发明实施例二提供的一种三级CLOS交换网络系统架构二;
图2(b)为本发明实施例二提供的基于三级互联交换网络的调度方法流程图;
图2(c)为本发明实施例二中交换信元周期的均匀间插方式;
图3(a)为本发明实施例三提供的第一级交换单元的结构示意图一;
图3(b)为图3(a)所示的第一级交换单元中第一调度单元的结构示意图;
图3(c)为本发明实施例三提供的第一级交换单元的结构示意图二;
图4(a)为本发明实施例三提供的三级互联交换网络中输入模块的结构示意图一;
图4(b)为本发明实施例三提供的三级互联交换网络中输入模块的结构示意图二;
图5为本发明实施例三提供的三级互联交换网络中输出模块的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定装置结构、技术之类的具体细节,以便透切理解本发明。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
实施例一
本发明实施例提供了一种基于三级互联交换网络的调度方法,应用于所述三级互联交换网络中的第一级交换单元,如图1(a)所示,该方法,可以包括:
101、所述第一级交换单元获取出端口带宽地图(Out Port Bandwidth Map,以下简称为OP-BWM)信息。
其中,所述OP-BWM信息为根据出端口的额定带宽以及输入模块的带宽需求为该输入模块分配的带宽。
在本实施例中,所述OP-BWM信息可以由输出模块生成并发送,也可以是预先设置的经验值,此处不做限定。
在所述OP-BWM信息由输出模块生成并发送时,所述输出模块需要获取多个输入模块对该输出模块的出端口的带宽需求(Out Port Requirement,以下简称为OP-REQ),以使得输出模块出端口根据所述OP-REQ为发送OP-REQ的输入模块分配带宽,并生成对应的OP-BWM信息。
值得说明的是,所述OP-REQ可以以控制信元的形式经由三级互联交换网络发送到相应的出端口,即由第一级交换单元接收携带有OP-REQ的控制信元,并根据控制信元中的目的地址将所述控制信元发送到相应的第三级交换单元,进而通过该第三级交换单元发送到相应的输出模块的出端口;可选的,所述OP-REQ还可以以控制信元的形式通过专用的控制信道传送给控制信元中的目的地址对应的输出模块的出端口,当然,所述OP-REQ如何由输入模块传送给对应的输出模块,并不限于上述的两种具体方式,此处不一一赘述。
102、所述第一级交换单元根据所述出端口地图信息生成通道带宽地图(S1S3 Bandwidth Map,以下简称为S13-BWM)信息。
其中,所述S13-BWM信息为同一个第一级交换单元与同一个第三级交换单元之间允许承载的带宽。
103、所述第一级交换单元根据所述S13-BWM信息生成路径带宽地图S123-BWM(S1S2S3 Bandwidth Map,以下简称为S123-BWM)信息。
其中,所述S123-BWM信息为同一个第一级交换单元与同一个第三级交换单元之间的每条路径允许承载的带宽。
104、在接收到数据流时,所述第一级交换单元根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述第一级交换单元与第三级交换单元之间的每条路径的S123-BWM信息,将所述数据流通过各条路径发送给所述第三级交换单元。
其中,为了保证时分复用(Time Division Multiplex and Multiplexer,以下简称为TDM)类型业务流的TDM性能,优选的,所述第一级交换单元根据所述第一级交换单元与所述第三级交换单元之间的每条路径的S123-BWM信息,将所述数据流通过各条路径发送给所述第三级交换单元,具体包括:若数据流为分组类型的业务流,所述第一级交换单元根据所述第一级交换单元与第三级交换单元之间的每条路径的所述S123-BWM信息,将所述分组类型的业务流均匀分发发到所述第一级交换单元与第三级交换单元之间的每条路径上;若数据流为时分复用TDM类型的业务流,所述第一级交换单元根据所述第一级交换单元与第三级交换单元之间的每条路径的所述S123-BWM信息,选取一条路径,将所述TDM类型的业务流分发到选取的路径上。通过上述的具体实现,避免了TDM类型的业务流的重组,从而保证了TDM类型的业务流的TDM数据。
进一步的,为了保证了数据流的均匀发送,所述第一级交换单元根据所述第一级交换单元与第三级交换单元之间的每条路径的所述S123-BWM信息,将所述数据流通过各条路径发送给所述第三级交换单元,还可以包括:所述第一级交换单元将每条路径的S123-BWM信息进行信元均匀间插排序,输出第一信元输出排序表;所述第一级交换单元将通过S123-BWM对应的路径进行发送的数据流根据所述第一信元输出排序表发送给所述第三级交换单元。
进一步的,为了避免输出模块出端口的流量堵塞,所述方法,如图1(b)所示,还包括:
105、所述第一级交换单元将所述OP-BWM信息发送给对应的输入模块,以使得所述输入模块根据所述OP-BWM信息以及所述输入模块中入端口数据流对与所述出端口带宽地图信息相对应的出端口的带宽需求进行带宽分配。
进一步的,为了保证信元的延时抖动,所述输入模块根据所述OP-BWM信息以及所述输入模块中入端口数据流对发送该OP-BWM信息的出端口的带宽需求进行带宽分配,具体包括:所述输入模块根据所述OP-BWM信息以及所述输入模块中数据流对发送该OP-BWM信息的出端口的带宽需求,对应于每个入端口生成数据流带宽地图(Flow Requirement,以下简称为F-REQ)信息;将所述F-BWM信息进行信元均匀间插排序输出第二信元输出排序表,以使得该入端口的数据流根据所述第二信元输出排序表发送给第一级交换单元。
本发明实施例的提供的基于三级互联交换网络的调度方法,第一级交换单元根据OP-BWM信息设置第一级交换单元与第三级交换单元之间的每条路径允许承载的带宽,对应于每条路径生成S123-BWM信息,使得第一级交换单元在接收到数据流时,根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述S123-BWM信息将所述数据流发送给所述第三级交换单元,实现对数据流的调度,不需要每发送一个信元就要进行一次请求-仲裁请求,解决了现有技术中由于每发送一个信元都需要进行一次请求-仲裁,限制了交换网络的规模的问题。
实施例二
为了使本领域的技术人员更好的理解本发明实施例提供的技术方案,现对本发明实施例二提供的基于三级互联交换网络的调度方法进行详细的说明。
在本实施例中,以N*N的三级CLOS交换网络系统架构为例进行详细的说明,如图2(a1)和图2(a2)所示,三级CLOS交换网络系统架构包括N个入端口和N个出端口,由多个输入Ingress模块和多个输出Egress模块提供,N*N的三级CLOS交换网络采用交换单元来搭建,N为入端口数量和出端口数量,三级CLOS交换网络包括第一级交换单元、中间交换单元和第三级交换单元,第一级交换单元为n*m的Crossbar(纵横式交换矩阵),一共有k个,k=N/n,第三级交换单元为m*n的Crossb ar,也有k个,中间级交换网络为k*k的Crossbar,共m个。该三级CLOS交换网络可以记为(n,m,k)。显然,三级CLOS交换网络是多路径网络,一对指定的入端与出端之间有m条通路,每条通路通过不同的中间级交换单元。
其中,Ingress模块引入数据流带宽需求收集(Requirement Convergence,以下简称为R-Con)处理单元,收集本模块物理端口的数据流带宽需求,保证数据流带宽需求和小于物理端口带宽,将相同出端口的数据流带宽需求合并成出端口的带宽需求(Out Port Requirement,以下简称为OP-REQ);
Egress模块引入分布式实时带宽仲裁(Realtime BandwidthArbitrate,以下简称为RBA)单元,收集各个Ingress模块发送的OP-REQ,公平分配出端口带宽给各个入端口的聚合数据流,输出出端口带宽地图(Out Port BandwidthMap,以下简称为OP-BWM)信息。
S1收集OP-BWM信息,在负载分担排序(load Balance SORT,以下简称为LB SORT)单元查表提取经过同一个S1并映射到同一S3的聚合数据流,进行二次聚合得到聚合带宽进而生成一S1到一S3的通道带宽地图(S1S3 BandwidthMap,以下简称为S13-BWM)信息,将聚合带宽基于S2路径进行流量均分输出路径带宽地图(S1S2S3 Bandwidth Map,以下简称为S123-BWM)信息,再经过信元均匀分布排序处理,输出第一信元输出表(此表指示S1的流量路径匹配和信元调度发送处理)。
Ingress模块收集OP-BWM信息在入口侧带宽分配排序(Ingress BandwidthAllocate SORT,以下简称为IBA SORT)单元根据数据流带宽需求将本模块(即Ingress模块)的出端口聚合数据流带宽按比例分配输出F-BWM(Flow BandwidthMap,流带宽地图),再通过信元均匀分布排序处理,输出第二信元输出排序表(此表指示Ingress模块的输入输出端口流量匹配和信元调度发送处理)。
如图2(b)所示,本发明实施例提供的基于三级互联交换网络的调度方法,可以包括:
201、Ingress模块中的流量管理(Traffic Manager,以下简称为TM)模块检测数据流带宽需求(Flow Requirement,以下简称为F-REQ),在R-Con单元按数据流目的地址对应的出端口聚合为OP-REQ,封装成控制信元发送给Egress模块。
具体的,TM模块中的流量测量模块获取流速率V,TM模块中的队列缓存控制模块获取数据流缓存深度Depth,根据所述流速率和所述缓存信息生成F-REQ:
F-REQ=流速率+数据流缓存深度/单位时间
其中,所述单位时间为设置的将缓存中所述数据流缓存深度的数据发送出去的时间。
将对应于同一输出模块的出端口的F-REQ聚合,生成OP-REQ;为所述OP-REQ分配相应的标识ID,封装为控制信元,其中标识ID包括用于表示该信元为控制信元的属性标识、出端口的地址以及该Ingress模块的标识,将控制信元上报给三级互联交换网络,通过三级互联交换网络发送给Egress模块。如,Ingress 1中的入端口1、入端口3、入端口4、入端口6均有流向Egress1的出端口1的数据流,端口1的F-REQ为0.3Mbits/s,端口3的F-REQ为0.2Mbits/s,端口4的F-REQ为0.5Mbits/s,端口6的F-REQ为1Mbits/s,那么,Ingress 1对于Egress1的出端口1的带宽需求为上述F-REQ的总和:2Mbits/s。
202、Egress模块通过所述三级互联交互网络接收所述控制信元,提取控制信元中的OP-REQ,送入分布式RBA模块,分布式RBA模块根据控制信元携带的目的地址对应的出端口额定带宽以及OP-REQ计算出OP-BWM信息,通过三级互联交换网络发送给相应的Ingress模块。
在本实施例中,对应于Egress模块的一个出端口可以收到多个Ingress模块发送的控制信元,多个Ingress模块向该出端口请求带宽,出端口根据其额定带宽以及每个Ingress模块请求的带宽,给每个Ingress公平分配带宽。如,Ingress1、Ingress 2、Ingress 3分别向Egress1中出端口1请求:1Mbits/s、2Mbits/s、3Mbits/s的带宽,Egress1的出端口额定带宽为3Mbits/s,根据Ingress 1、Ingress2、Ingress 3要求的带宽比例,为Ingress 1、Ingress 2、Ingress 3分别分配0.5Mbits/s、1Mbits/s、1.5Mbits/s并相应的生成对应的OP-BWM信息,通过三级互联交互网络发送给相应的Ingress 1、Ingress2、Ingress 3。
203、三级互联交互网络中的S1提取出经由其发送给与其连接的Ingress模块的OP-BWM信息,通过LB SORT单元将OP-BWM信息进行S3归属聚合,输出S13-BWM信息,再基于S2中间路径进行流量负载负担处理均匀输出S123-BWM信息,再通过信元均匀分布排序处理,输出第一信元输出排序表,控制S1的路径匹配和信元均匀调度发送。
具体的,将OP-BWM信息按S1-S3归宿聚合为S13-BWM信息将S13-BWM信息根据S1与S3之间的路径数,即S2的个数m,进行流量均衡分配,举例,最小粒度为4Mbits/s,S13-BWM=1200M,路径数m=8,(S13-BWM/粒度)/N取整为37,取余为4,每个S2分配37或38个粒度即148Mbits/s或152Mbits/s,输出S123-BWM信息。将S123-BWM信息进行信元均匀间插排序输出第一信元输出排序表。
204、Ingress模块提取OP-BWM信息根据入端口数据流对发送给OP-BWM信息的出端口的F-REQ,对应于每个入端口按比例分配输出F-BWM信息,再将F-BWM信息进行信元均匀间插排序处理,计算输出第二信元输出排序表。
通过步骤204实现了全局入、出端口带宽分配,保证Egress模块的各个出端口没有流量阻塞,进而可以简化Egress模块的服务质量(Quality of Service,以下简称为QoS)设计,显著减少输出模块缓存需要同时,为不同的数据流提供严格的QoS保证。
205、Ingress模块的交换管理(Switch Manager,以下简称为SM)模块按本模块的第二信元输出排序表控制数据流信元发送,保证了入出端口的信元匹配发送,保证了信元的延时抖动。
206、三级互联交换网络中S1收到Ingress模块的信元,根据信元ID进行S3队列缓冲,再根据本级第一信元输出排序表控制信元均匀分配S2路径发送到S2,保证了信元发送的路径匹配问题。
207、S2收到S1来的信元,根据信元ID发送给不同的S3,S3根据信元ID发送给对应Egress模块。
208、Egress模块收到信元,根据信元系列号,进行排序重组数据帧。
其中,S1和Ingress模块信元均匀间插排序生成信元输出排序表的处理流程,具体可以通过以下方式实现:
将预先设置的交换信元周期切分为n个数组(n=2L),每个数组包括多个时隙,每个时隙承载一个信元;利用二进制逆向进位方法为每个数组设置对应的时序位置,以使得数组根据书序位置输出对应的信元输出排序表。具体的,所述二进制逆向进位方法为:对于n=2L个数组,采用二进数M(bL-1、bL-2、......b1、b0)表述数组位置,每次从最高位bL-1位置加1,bL-1向低位bL-2进位,bL-2向低位bL-3进位,......,最后b1向低位b0进位,这样就设置了n个数组的时序位置。
例如,如图2(c)所示,预先设置的交换信元周期为16信元单元,将交换信元周期的16信元单元分为8个数组每个数组2个时隙,通过二进制逆向进位对于8个数组,采用二进制数M(b2、b1、b0)表述数组的时序位置,如表1所示,得到均匀间隔的信元输出排序表。
表1:信元输出表
例如,Ingress模块的一入端口待发送数据流1和数据流2、数据流1需要带宽为8个信元,数据流2需要带宽为4个信元,每个信元包括2个数组
第1个信元(Cell)、第2个Cell是数据流2第1个Cell、第4个Cell无数据流发送、......第14个Cell是数据流2第4个Cell、第15个Cell是数据流1的第8个Cell、第16个Cell无数据流发送。
本发明实施例的提供的基于三级互联交换网络的调度方法,第一级交换单元根据OP-BWM信息设置第一级交换单元与第三级交换单元之间的每条路径允许承载的带宽,对应于每条路径生成S123-BWM信息,使得第一级交换单元在接收到数据流时,根据数据流的目的地址将需要通过同一个第三级交换单元到达出端口的数据流缓存到一个队列中,并根据所述S123-BWM信息将所述数据流发送给所述第三级交换单元,实现对数据流的调度,不需要每发送一个信元就要进行一次请求-仲裁请求,解决了现有技术中由于每发送一个信元都需要进行一次请求-仲裁,限制了交换网络的规模的问题。
实施例三
如图3(a)所示,本发明实施例提供对应于上述实施例一的方法的第一级交换单元,包括:
第一获取单元31,用于获取出端口带宽地图信息,所述出端口带宽地图信息为根据输出模块的出端口的额定带宽以及输入模块的带宽需求为该输入模块分配的带宽;
第一生成单元32,用于根据所述第一获取单元获取的出端口带宽地图信息生成通道带宽地图信息,所述通道地图信息为同一个第一级交换单元与同一个第三级交换单元之间允许承载的带宽;
第二生成单元33,用于根据所述第一生成单元生成的通道地图信息生成路径带宽地图信息,所述路径带宽地图信息为同一个第一级交换单元与同一个第三级交换单元之间的每条路径允许承载的带宽;
第一调度单元34,在接收到数据流时,用于根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元。
在本实施例中,所述第一调度单元,包括:
第一调度子单元341,用于若数据流为分组类型的业务流,根据所述第一级交换单元与第三级交换单元之间的每条路径的所述路径带宽地图信息,将所述分组类型的业务流均匀分发到所述第一级交换单元与第三级交换单元之间的每条路径上;
第二调度子单元342,用于若数据流为时分复用类型的业务流,根据所述第一级交换单元与第三级交换单元之间的每条路径的所述路径带宽地图信息,选取一条路径,将所述时分复用类型的业务流分发到选取的路径上。
进一步的,如图3(b)所示,所述第一调度单元,还包括:
第一排序输出子单元343,用于将每条路径的路径带宽地图信息进行信元均匀间插排序,输出第一信元输出排序表;
第一发送子单元344,用于将通过路径带宽地图对应的路径进行发送的数据流根据所述第一信元输出排序表发送给所述第三级交换单元。
进一步的,如图3(c)所示,所述第一级交换单元,还包括:
第一接收单元35,用于接收所述输入模块发送的控制信元,所述控制信元包括目的地址以及所述输入模块对该目的地址对应的输出模块的出端口的带宽需求;
第一发送单元36,用于根据所述目的地址将所述第一接收单元接收的控制信元发送给所述输出模块的出端口,以使得所述输出模块的出端口根据该出端口自身的额定带宽以及所述控制信元中携带的所述带宽需求为所述输入模块分配带宽,生成出端口带宽地图信息;
所述第一获取单元31,具体用于接收所述输出模块发送的出端口带宽地图信息。
进一步的,如图3(c)所示,所述第一级交换单元,还包括:
第二发送单元37,用于将所述出端口带宽地图信息发送给对应的输入模块,以使得所述输入模块根据所述出端口带宽地图信息以及所述输入模块中入端口数据流对与所述出端口带宽地图信息相对应的出端口的带宽需求进行带宽分配。
值得说明的是,上述的第一获取单元31、第一生成单元32、第二生成单元33、第一调度单元34、第一接收单元35、第一发送单元36以及第二发送单元37所执行的动作,可由具有一定结构的电子电路、芯片或者处理器来执行。
本发明实施例还提供了一种三级互联交换网络,包括图3(a)-图3(c)所示的第一级交换单元,进一步的,还包括输入模块和输出模块;
所述输入模块,用于发送控制信元给所述输出模块,所述控制信元包括目的地址以及所述输入模块对该目的地址对应的输出模块的出端口的带宽需求:
所述输出模块,用于接收所述输入模块发送的控制信元,根据所述控制信元携带的带宽需求为所述输入模块分配带宽,生成出端口带宽地图信息,发送给所述输入模块和所述第一级交换单元;
所述输入模块,还用于根据所述出端口带宽地图信息以及所述输入模块中入端口数据流对与所述出端口带宽地图信息相对应的出端口的带宽需求进行带宽分配。
在本实施例中,如图4(a)所示,所述输入模块,具体包括:
第二获取单元41,用于获取输入模块的入端口数据流的流速率以及缓存信息;
第三生成单元42,用于根据所述第二获取单元获取的流速率和所述缓存信息生成该入端口数据流对出端口的带宽需求;
聚合单元43,用于将所述第三生成单元生成的同一出端口的带宽需求进行聚合,生成该输入模块对所述出端口的带宽需求;
第三发送单元44,用于为所述聚合单元聚合得到的出端口的带宽需求分配相应的标识,封装为控制信元,所述标识包括输入模块的标识和所述出端口的地址。
进一步的,如图4(b)所示,所述输入模块,还包括:
第四生成单元45,用于根据所述出端口带宽地图信息以及所述输入模块中数据流对发送该出端口带宽地图信息的出端口的数据流带宽需求,对应于每个入端口生成数据流带宽地图信息;
排序单元46,用于将所述数据流带宽地图信息进行信元均匀间插排序输出第二信元输出排序表,以使得该入端口的数据流根据所述第二信元输出排序表发送给第一级交换单元。
值得说明的是,上述的第二获取单元41、第三生成单元42、聚合单元43、第三发送单元44、第四生成单元45以及排序单元46所执行的动作,可由具有一定结构的电子电路、芯片或者处理器来执行。
在本实施例中,如图5所示,所述输出模块,具体包括:
第二接收单元51,用于接收所述输入模块发送的控制信元;
第五生成单元52,用于根据所述第二接收单元接收的控制信元携带的带宽需求为所述输入模块分配带宽,生成出端口带宽地图信息;
第四发送单元53,用于将所述第五生成单元生成的端口带宽地图信息发送给所述输入模块和所述第一级交换单元。
值得说明的是,上述的第二接收单元51、第五生成单元52以及第四发送单元53所执行的动作,可由具有一定结构的电子电路、芯片或者处理器来执行。
本发明实施例的提供的第一级交换单元以及三级互联交换网络,第一级交换单元根据OP-BWM信息设置第一级交换单元与第三级交换单元之间的每条路径允许承载的带宽,对应于每条路径生成S123-BWM信息,使得第一级交换单元在接收到数据流时,根据数据流的目的地址将需要通过同一个第三级交换单元到达出端口的数据流缓存到一个队列中,并根据所述S123-BWM信息将所述数据流发送给所述第三级交换单元,实现对数据流的调度,不需要每发送一个信元就要进行一次请求-仲裁请求,解决了现有技术中由于每发送一个信元都需要进行一次请求-仲裁,限制了交换网络的规模的问题。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,设备和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
综上,本发明实施例的技术方案与现有技术方案相比较,。
本领域技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的原理和范围。

Claims (18)

1.一种基于三级互联交换网络的调度方法,其特征在于,包括:
第一级交换单元获取出端口带宽地图信息,所述出端口带宽地图信息为根据输出模块的出端口的额定带宽以及输入模块的带宽需求为该输入模块分配的带宽;
所述第一级交换单元根据所述出端口带宽地图信息生成通道带宽地图信息,所述通道地图信息为同一个第一级交换单元与同一个第三级交换单元之间允许承载的带宽;
所述第一级交换单元根据所述通道地图信息生成路径带宽地图信息,所述路径带宽地图信息为同一个第一级交换单元与同一个第三级交换单元之间的每条路径允许承载的带宽;
在接收到数据流时,所述第一级交换单元根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元。
2.根据权利要求1所述的方法,其特征在于,在所述第一级交换单元获取出端口带宽地图信息之前,还包括:
所述第一级交换单元接收所述输入模块发送的控制信元,所述控制信元包括目的地址以及所述输入模块对该目的地址对应的输出模块的出端口的带宽需求;
所述第一级交换单元根据所述目的地址将所述控制信元发送给所述输出模块的出端口,以使得所述输出模块的出端口根据该出端口自身的额定带宽以及所述控制信元中携带的所述带宽需求为所述输入模块分配带宽,生成出端口带宽地图信息;
所述第一级交换单元获取出端口带宽地图信息,具体包括:
所述第一级交换单元接收所述输出模块发送的出端口带宽地图信息。
3.根据权利要求1或2所述的方法,其特征在于,所述所述第一级交换单元根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元,具体包括:
若数据流为分组类型的业务流,所述第一级交换单元根据所述第一级交换单元与第三级交换单元之间的每条路径的所述路径带宽地图信息,将所述分组类型的业务流均匀分发到所述第一级交换单元与第三级交换单元之间的每条路径上;
若数据流为时分复用类型的业务流,所述第一级交换单元根据所述第一级交换单元与第三级交换单元之间的每条路径的所述路径带宽地图信息,选取一条路径,将所述时分复用类型的业务流分发到选取的路径上。
4.根据权利要求3所述的方法,其特征在于,所述所述第一级交换单元根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元,还包括:
所述第一级交换单元将每条路径的路径带宽地图信息进行信元均匀间插排序,输出第一信元输出排序表;
所述第一级交换单元将通过路径带宽地图对应的路径进行发送的数据流根据所述第一信元输出排序表发送给所述第三级交换单元。
5.根据权利要求1或4所述的方法,其特征在于,还包括:
所述第一级交换单元将所述出端口带宽地图信息发送给对应的输入模块,以使得所述输入模块根据所述出端口带宽地图信息以及所述输入模块中入端口数据流对与所述出端口带宽地图信息相对应的出端口的带宽需求进行带宽分配。
6.根据权利要求5所述的方法,其特征在于,所述输入模块根据所述出端口带宽地图信息以及所述输入模块中入端口数据流对所述出端口带宽地图信息相对应的出端口的带宽需求进行带宽分配,包括:
所述输入模块根据所述出端口带宽地图信息以及所述输入模块中数据流对发送该出端口带宽地图信息的出端口的数据流带宽需求,对应于每个入端口生成数据流带宽地图信息;
将所述数据流带宽地图信息进行信元均匀间插排序输出第二信元输出排序表,以使得该入端口的数据流根据所述第二信元输出排序表发送给第一级交换单元。
7.根据权利要求4或6所述的方法,所述均匀间插排序输出的方法具体包括:
将待分配的带宽信息切分为多个数组,每个数组包括多个时隙,每个时隙承载一个信元;
利用二进制逆向进位方法为每个数组设置对应的时序位置,以使得数组根据时序位置输出对应的信元输出排序表。
8.根据权利要求2所述的方法,其特征在于,所述控制信元由所述输入模块生成并发送给所述第一级交换单元,所述控制信元的生成方法具体包括:
获取输入模块的入端口数据流的流速率以及缓存信息;
根据所述流速率和所述缓存信息生成该入端口数据流对出端口的带宽需求;
将同一出端口的带宽需求进行聚合,生成该输入模块对所述出端口的带宽需求;
为所述出端口的带宽需求分配相应的标识,封装为控制信元,所述标识包括输入模块的标识和所述出端口的地址。
9.一种第一级交换单元,其特征在于,包括:
第一获取单元,用于获取出端口带宽地图信息,所述出端口带宽地图信息为根据输出模块的出端口的额定带宽以及输入模块的带宽需求为该输入模块分配的带宽;
第一生成单元,用于根据所述第一获取单元获取的出端口带宽地图信息生成通道带宽地图信息,所述通道地图信息为同一个第一级交换单元与同一个第三级交换单元之间允许承载的带宽;
第二生成单元,用于根据所述第一生成单元生成的通道地图信息生成路径带宽地图信息,所述路径带宽地图信息为同一个第一级交换单元与同一个第三级交换单元之间的每条路径允许承载的带宽;
第一调度单元,在接收到数据流时,用于根据数据流的目的地址将需要通过同一个第一级交换单元与同一个第三级交换单元到达输出模块的出端口的数据流缓存到一个队列中,并根据所述第一级交换单元与所述第三级交换单元之间的每条路径的路径带宽地图信息,将所述数据流通过各条路径发送给所述第三级交换单元。
10.根据权利要求9所述的第一级交换单元,其特征在于,还包括:
第一接收单元,用于接收所述输入模块发送的控制信元,所述控制信元包括目的地址以及所述输入模块对该目的地址对应的输出模块的出端口的带宽需求;
第一发送单元,用于根据所述目的地址将所述第一接收单元接收的控制信元发送给所述输出模块的出端口,以使得所述输出模块的出端口根据该出端口自身的额定带宽以及所述控制信元中携带的所述带宽需求为所述输入模块分配带宽,生成出端口带宽地图信息;
所述第一获取单元,具体用于接收所述输出模块发送的出端口带宽地图信息。
11.根据权利要求9或10所述的第一级交换单元,其特征在于,所述第一调度单元,包括:
第一调度子单元,用于若数据流为分组类型的业务流,根据所述第一级交换单元与第三级交换单元之间的每条路径的所述路径带宽地图信息,将所述分组类型的业务流均匀分发到所述第一级交换单元与第三级交换单元之间的每条路径上;
第二调度子单元,用于若数据流为时分复用类型的业务流,根据所述第一级交换单元与第三级交换单元之间的每条路径的所述路径带宽地图信息,选取一条路径,将所述时分复用类型的业务流分发到选取的路径上。
12.根据权利要求11所述的第一级交换单元,其特征在于,所述第一调度单元,还包括:
第一排序输出子单元,用于将每条路径的路径带宽地图信息进行信元均匀间插排序,输出第一信元输出排序表;
第一发送子单元,用于将通过路径带宽地图对应的路径进行发送的数据流根据所述第一信元输出排序表发送给所述第三级交换单元。
13.根据权利要求9或12所述的第一级交换单元,其特征在于,还包括:
第二发送单元,用于将所述出端口带宽地图信息发送给对应的输入模块,以使得所述输入模块根据所述出端口带宽地图信息以及所述输入模块中入端口数据流对与所述出端口带宽地图信息相对应的出端口的带宽需求进行带宽分配。
14.一种三级互联交换网络,其特征在于,包括权利要求9-13任一项所述的第一级交换单元。
15.根据权利要求14所述的三级互联交换网络,其特征在于,还包括输入模块和输出模块;其中,
所述输入模块,用于发送控制信元给所述输出模块,所述控制信元包括目的地址以及所述输入模块对该目的地址对应的输出模块的出端口的带宽需求:
所述输出模块,用于接收所述输入模块发送的控制信元,根据所述控制信元携带的带宽需求为所述输入模块分配带宽,生成出端口带宽地图信息,发送给所述输入模块和所述第一级交换单元;
所述输入模块,还用于根据所述出端口带宽地图信息以及所述输入模块中入端口数据流对与所述出端口带宽地图信息相对应的出端口的带宽需求进行带宽分配。
16.根据权利要求15所述的三级互联交换网络,其特征在于,所述输入模块,具体包括:
第二获取单元,用于获取输入模块的入端口数据流的流速率以及缓存信息;
第三生成单元,用于根据所述第二获取单元获取的流速率和所述缓存信息生成该入端口数据流对出端口的带宽需求;
聚合单元,用于将所述第三生成单元生成的同一出端口的带宽需求进行聚合,生成该输入模块对所述出端口的带宽需求;
第三发送单元,用于为所述聚合单元聚合得到的出端口的带宽需求分配相应的标识,封装为控制信元,所述标识包括输入模块的标识和所述出端口的地址。
17.根据权利要求15或16所述的三级互联交换网络,其特征在于,所述输入模块,还包括:
第四生成单元,用于根据所述出端口带宽地图信息以及所述输入模块中数据流对发送该出端口带宽地图信息的出端口的数据流带宽需求,对应于每个入端口生成数据流带宽地图信息;
排序单元,用于将所述数据流带宽地图信息进行信元均匀间插排序输出第二信元输出排序表,以使得该入端口的数据流根据所述第二信元输出排序表发送给第一级交换单元。
18.根据权利要求15所述的三级互联交换网络,其特征在于,所述输出模块,具体包括:
第二接收单元,用于接收所述输入模块发送的控制信元;
第五生成单元,用于根据所述第二接收单元接收的控制信元携带的带宽需求为所述输入模块分配带宽,生成出端口带宽地图信息;
第四发送单元,用于将所述第五生成单元生成的端口带宽地图信息发送给所述输入模块和所述第一级交换单元。
CN201280000846.4A 2012-05-21 2012-05-21 基于三级互联交换网络的调度方法、装置及系统 Active CN102835081B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/075832 WO2013173966A1 (zh) 2012-05-21 2012-05-21 基于三级互联交换网络的调度方法、装置及系统

Publications (2)

Publication Number Publication Date
CN102835081A CN102835081A (zh) 2012-12-19
CN102835081B true CN102835081B (zh) 2015-07-08

Family

ID=47336885

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280000846.4A Active CN102835081B (zh) 2012-05-21 2012-05-21 基于三级互联交换网络的调度方法、装置及系统

Country Status (2)

Country Link
CN (1) CN102835081B (zh)
WO (1) WO2013173966A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013173966A1 (zh) * 2012-05-21 2013-11-28 华为技术有限公司 基于三级互联交换网络的调度方法、装置及系统
CN106375218B (zh) * 2015-07-23 2019-06-21 华为技术有限公司 一种报文转发方法及相关装置
CN107196862B (zh) * 2016-03-14 2021-05-14 深圳市中兴微电子技术有限公司 一种流量拥塞控制方法及系统
CN106453072A (zh) * 2016-06-22 2017-02-22 中国科学院计算技术研究所 片上网络路由器通道资源的贪婪分配方法、装置及路由器
CN107959642B (zh) * 2016-10-17 2020-08-07 华为技术有限公司 用于测量网络路径的方法、装置和系统
CN107979544A (zh) * 2016-10-25 2018-05-01 华为技术有限公司 一种ip报文的转发方法、设备和系统
CN108574642B (zh) * 2017-03-14 2020-03-31 深圳市中兴微电子技术有限公司 一种交换网络的拥塞管理方法及装置
WO2019000340A1 (zh) * 2017-06-29 2019-01-03 华为技术有限公司 网络拓扑结构映射方法及装置、终端、存储介质
CN107480229B (zh) * 2017-08-03 2020-10-30 太原学院 用于对象检索的分布式计算机数据库系统及其检索方法
CN108040302B (zh) * 2017-12-14 2020-06-12 天津光电通信技术有限公司 基于Clos和T-S-T的自适应交换网络路由方法
CN112019620B (zh) * 2020-08-28 2021-12-28 中南大学 基于Nginx动态加权的Web集群负载均衡方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007125527A2 (en) * 2006-04-27 2007-11-08 Dune Networks Inc. Method, device and system of scheduling data transport over a fabric
WO2011014304A1 (en) * 2009-07-29 2011-02-03 New Jersey Institute Of Technology Forwarding data through a three-stage clos-network packet switch with memory at each stage
CN102835081A (zh) * 2012-05-21 2012-12-19 华为技术有限公司 基于三级互联交换网络的调度方法、装置及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100417136C (zh) * 2005-07-27 2008-09-03 华为技术有限公司 一种基于三级交换网的下行队列快速反压传送装置及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007125527A2 (en) * 2006-04-27 2007-11-08 Dune Networks Inc. Method, device and system of scheduling data transport over a fabric
WO2011014304A1 (en) * 2009-07-29 2011-02-03 New Jersey Institute Of Technology Forwarding data through a three-stage clos-network packet switch with memory at each stage
CN102835081A (zh) * 2012-05-21 2012-12-19 华为技术有限公司 基于三级互联交换网络的调度方法、装置及系统

Also Published As

Publication number Publication date
WO2013173966A1 (zh) 2013-11-28
CN102835081A (zh) 2012-12-19

Similar Documents

Publication Publication Date Title
CN102835081B (zh) 基于三级互联交换网络的调度方法、装置及系统
US7324541B2 (en) Switching device utilizing internal priority assignments
US7623524B2 (en) Scheduling system utilizing pointer perturbation mechanism to improve efficiency
US10182021B2 (en) Crossbar switch and recursive scheduling
US7027457B1 (en) Method and apparatus for providing differentiated Quality-of-Service guarantees in scalable packet switches
US7221652B1 (en) System and method for tolerating data link faults in communications with a switch fabric
US7352694B1 (en) System and method for tolerating data link faults in a packet communications switch fabric
US7519054B2 (en) Replication of multicast data packets in a multi-stage switching system
US7161906B2 (en) Three-stage switch fabric with input device features
KR100933917B1 (ko) 네트워크 스위치에서의 대역폭 보장 및 과부하 보호 방법및 장치
US20080159145A1 (en) Weighted bandwidth switching device
US20070237074A1 (en) Configuration of congestion thresholds for a network traffic management system
US20020085578A1 (en) Three-stage switch fabric with buffered crossbar devices
CN102726009B (zh) 一种数据流交换控制方法及相关设备
JP2004534462A (ja) リンク帯域幅割り当て方法および装置
US9197570B2 (en) Congestion control in packet switches
US11159455B1 (en) Reducing power consumption in an electronic device
EP2134037B1 (en) Method and apparatus for scheduling data packet flows
US7990873B2 (en) Traffic shaping via internal loopback
Dong et al. Throughput analysis of shared-memory crosspoint buffered packet switches
EP1489795B1 (en) Network swtich configured to weight traffic
US7623456B1 (en) Apparatus and method for implementing comprehensive QoS independent of the fabric system
EP3836496B1 (en) Method for an improved traffic shaping and/or management of ip traffic in a packet processing system, telecommunications network, system, program and computer program product
KR101681613B1 (ko) 분산 병렬 데이터 전송 시스템에서 자원들을 스케줄링하기 위한 장치 및 그 방법
JP2004140538A (ja) 大容量化と低遅延化に対応したアービタおよびそれを用いたルータ

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant