CN108199977A - 一种双活数据中心的多跳路由和调度方法 - Google Patents
一种双活数据中心的多跳路由和调度方法 Download PDFInfo
- Publication number
- CN108199977A CN108199977A CN201711485235.4A CN201711485235A CN108199977A CN 108199977 A CN108199977 A CN 108199977A CN 201711485235 A CN201711485235 A CN 201711485235A CN 108199977 A CN108199977 A CN 108199977A
- Authority
- CN
- China
- Prior art keywords
- active
- module
- matrix
- output
- output queue
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种双活数据中心的多跳路由和调度方法及系统,所述方法包括:在双活数据中心网络的输入级模块中累积需要传输的数据包,构建流量矩阵,利用立体匹配算法,获得所述流量矩阵分解形成的商矩阵和余矩阵,同时获得对应的配置矩阵;其中,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块;对所述余矩阵中的数据包进行遍历,找出其中在当前配置矩阵中具有可传输路径的数据包,将此类数据包标记为主动包;将所述主动包通过当前配置矩阵中的配置路径发送到输出级模块。本发明提供的方法,可以在不增加加速比的同时充分利用空闲的带宽,有效地减少了数据包传输延迟,并实现了负载均衡。
Description
技术领域
本发明涉及通信技术领域,更具体地,涉及一种双活数据中心的多跳路由和调度方法。
背景技术
随着云计算和大数据的快速发展,数据中心东西向流量远远超过南北向流量,这对网络基础架构带来了前所未有的挑战。为应对大带宽和低延迟的需求,光交换比电交换在容量和功耗方面有更好的性能。目前,光储存技术仍不成熟,因此电缓存光交换技术被广泛应用于工业领域中。尽管光交换能提高传输速率,但网络扩展性仍然受限。多级双活架构被应用于数据中心网络(Data Center Networks,DCNs)中支持大规模的服务,此架构最初被用于电话交换网络,通过设计较少的交叉点减小硬件开销来实现非阻塞交换。由于其较好的扩展性,基于电缓存和光交换的多级双活数据中心网络已被作为DCNs中典型的网络拓扑。
在DCNs中,为了提高吞吐量和减少数据包传输延迟,有效的调度算法可用来实现负载均衡,并使网络资源被更高效地利用。单个光交换机中调度算法已经被大量的研究,但目前的研究只是单纯将这些算法应用到多级中,而并没考虑多级架构的自身特征,故没有利用双活数据中心网络的多路径特性。例如现存的立体匹配算法(ADAPT)在单级中能通过给定的任意流量矩阵来调节配置数量以实现加速比最小化,但此算法在生成配置过程中仍有一些空闲时间槽未被利用。
如图1和图2所示,图1展示了一个三级双活数据中心网络,其由许多小规模的交换模块组成。这些模块被组成为三个层级(即输入级、中间级和输出级)。输入级有k个n×m的输入级模块(Input Modules,IMs),中间级有m个k×k的中间级模块(Center Modules,CMs),输出级有k个m×n的输出级模块(Output Modules,OMs)。每个层级上的每个交换模块通过唯一的一条链路被连接到相邻层级上的所有交换模块。通常情况下,在IMs和OMs上的ToR交换机采用电交换架构,在CMs上的核心交换机采用光交换架构,此交换网络的输入和输出端口数为N=n×k。
图2展示了数据包从IP(0,0)到OP(k-1,n-1)的转发过程。第一步是流量累积,数据包被储存在虚拟输出队列(Virtual Output Queuing,VOQ),VOQ(0,k-1,n-1),并经过T时间槽,然后数据包通过用虚线标注的路径被路由到目的交换级。最后数据包被储存到输出队列(Output Queue,OQ),OQ(k-1,n-1)等待被分发到OP(k-1,n-1)。若没有匹配的配置但存在空闲时间槽,这些数据包就不能被转发,而会造成带宽的浪费。
发明内容
为解决现有技术中,双活数据中心网络在进行数据交换时,立体匹配算法(ADAPT)在单级中能通过给定的任意流量矩阵来调节配置数量以实现加速比最小化,但此算法在生成配置过程中仍有一些空闲时间槽未被利用的问题,提供一种双活数据中心的多跳路由和调度方法及系统。
根据本发明的一个方面,提供一种双活数据中心的多跳路由和调度方法,包括:
S1,在双活数据中心网络的输入级模块中累积需要传输的数据包,构建流量矩阵,利用立体匹配算法,获得所述流量矩阵分解形成的商矩阵和余矩阵,同时获得对应的配置矩阵;其中,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块;
S2,对所述余矩阵中的数据包进行遍历,找出其中在当前配置矩阵中具有可传输路径的数据包,将此类数据包标记为主动包;
S3,将所述主动包通过当前配置矩阵中的配置路径发送到输出级模块。
其中,所述步骤S3之前还包括:在所述输入级模块,设置一个专用虚拟输出队列,用于在传输所述主动包的时候将主动包存入到所述专用虚拟输出队列;
其中,所述专用虚拟输出队列的优先级高于虚拟输出队列。
其中,所述步骤S3之前还包括:在输出级模块,设置一个优先输出队列,用于接收并储存从中间级模块发送到输出级模块的所述主动包;
其中,所述优先输出队列的优先级高于输出队列。
其中,所述步骤S3具体包括:
S31,将所述主动包存入到输入级模块中的所述专用虚拟输出队列中,并进行传输;
S32,将所述专用虚拟输出队列中的所述主动包通过中间级模块传输到输出级模块,存入到输出级模块中的优先输出队列中;
S33,将所述主动包从所述优先输出队列中分发到所述输出级模块对应的输出端口。
其中,所述步骤S34后还包括:
判断获知所述输出级模块对应的输出端口不是所述主动包的目标端口,则将所述主动包返回至输入级模块,寻找其他输入级模块中的虚拟输出队列,重新执行S31。
其中,所述步骤S1之后还包括:判断在当前所述配置矩阵中,存在空闲的时间槽。
根据本发明的第二方面,提供一种双活数据中心的多跳路由和调度系统,其特征在于,包括:
立体匹配计算单元,用于在双活数据中心网络的输入级模块中累积需要传输的数据包,构建流量矩阵,利用立体匹配算法,获得所述流量矩阵分解形成的商矩阵和余矩阵,同时获得对应的配置矩阵;其中,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块;
主动包生成单元,用于对所述余矩阵中的数据包进行遍历,找出其中在当前配置矩阵中具有可传输路径的数据包,将此类数据包标记为主动包;
主动包传输单元,用于所述主动包通过当前配置矩阵中的配置路径发送到输出模块。
其中,所述系统还包括专用虚拟队列构建单元,用于在所述输入级模块,设置一个专用虚拟输出队列,用于在传输所述主动包的时候将主动包存入到所述专用虚拟输出队列;
其中,所述专用虚拟输出队列的优先级高于虚拟输出队列。
其中,所述系统还包括优先输出队列构建单元,用于在输出级模块,设置一个优先输出队列,用于接收并储存从中间级模块发送到输出级模块的所述主动包;
其中,所述优先输出队列的优先级高于输出队列。
其中,所述主动包传输单元具体包括:
虚拟输出队列传输子单元,用于将所述主动包存入到输入级模块中的所述专用虚拟输出队列中,并进行传输;
优先输出队列传输子单元,用于将所述专用虚拟输出队列中的所述主动包通过中间级模块传输到输出级模块,存入到输出级模块中的优先输出队列中
输出子单元,用于将所述主动包从所述优先输出队列中分发到所述输出级模块对应的输出端口。
本申请提出的双活数据中心的多跳路由和调度方法,提出了一个多跳路由和调度算法,将流量矩阵分解为商矩阵和余矩阵,将余矩阵中的一些数据包调度到商矩阵所形成的配置矩阵的空闲时间槽中进行数据传输,可以在不增加加速比的同时充分利用空闲的带宽,有效地减少了数据包传输延迟,并实现了负载均衡。
附图说明
图1为现有技术中双活数据中心网络的机构图;
图2为现有技术中双活数据中心网络的数据包传输示意图;
图3为本发明一实施例提供的一种双活数据中心的多跳路由和调度方法的流程图;
图4为本发明又一实施例提供的一种双活数据中心的多跳路由和调度系统的结构图;
图5为本发明再一实施例提供的一种双活数据中心的多跳路由和调度方法中数据包多跳转发示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
参考图3,图3为本发明一实施例提供的一种双活数据中心的多跳路由和调度方法的流程图,所述方法包括:
S1,在双活数据中心网络的输入级模块中累积需要传输的数据包,构建流量矩阵,利用立体匹配算法,获得所述流量矩阵分解形成的商矩阵和余矩阵,同时获得对应的配置矩阵;其中,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块。
具体的,流量矩阵C被定义为在T时间槽内在输入级累计的数据包,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块,将输入交换模块和输出交换模块之间的连接看作一个配置矩阵,矩阵中用1表示两个交换模块的状态是连接的,0代表是断开的。
在本实施例中提供的在双活数据中心的多跳路由和调度算法(Multi-HopRouting and Scheduling,MHRS)中,首先在输入级交换模块对收到的数据包进行累积,形成一个r×r的流量矩阵C,然后利用立体匹配算法对当前的流量矩阵C进行分解以生成商矩阵Q和余矩阵R以及对应的配置矩阵PQ,PR和配置权重φ。其中,商矩阵中的数据包即为在配置矩阵PQ下具备匹配状态,可以进行传输的数据包,而余矩阵R中的数据包即为在当前配置矩阵PQ下没有匹配状态,需要等待下一次匹配后才能确定是否能够传输的数据包。
S2,对所述余矩阵中的数据包进行遍历,找出其中在当前配置矩阵中具有可传输路径的数据包,将此类数据包标记为主动包;
具体的,由于采用立体匹配算法所产生的配置矩阵PQ会有空时隙,即在同一个配置状态下,有些链路会一直传输数据,但是有些链路传输完数据之后会留下空时隙。因此,利用这些时空隙的方法是,遍历余矩阵R中所有元素,如果能存在矩阵Ph∈PQ,且矩阵Ph中存在一些1,其位置满足前一个1的列序号是后一个1的行序号,并且在这些1中有两个位置不相同的1,即一个1的行序号为i,而另一个1的列序号为j。这样就能找到一条由i到j的链路L:i→l1→l2→…ln→j,其中,(i,l1),(l1,l2),…,(ln,j)是矩阵Ph中满足上述条件所存在的位置,在不影响原本传输数据的同时,可以通过这条链路,传输更多数据,这里将矩阵Ph中的数据包标记为主动包,即没有匹配状态,但能找到一条合适传输路径的数据包,而商矩阵Q中的数据包标记为被动包,用以和主动包进行区分。
通过此方法,可以找到在一次传输配置下,在不影响原本传输数据的同时,能够找到其中有空的时隙和可以利用这些时隙进行数据传送的数据包,从而传输更多数据。
S3,将所述主动包通过当前配置矩阵中的配置路径发送到输出级模块。
具体的,通过找到所述余矩阵R中的主动包,这些数据包能够在当前配置的链路下,有一条合适的传输路径传输到目标端口,同时在这条路径上,按照当前的配置状态,具备空闲的时隙,在数据传输中,将这些主动包通过当前配置状态下,利用空余的时隙进行传送,由输入级模块传输到输出级模块。
通过此方法,提出了一个多跳路由和调度算法,将流量矩阵分解为商矩阵和余矩阵,将余矩阵中的一些数据包调度到商矩阵所形成的配置矩阵的空闲时间槽中进行数据传输,可以在不增加加速比的同时充分利用空闲的带宽,有效地减少了数据包传输延迟,并实现了负载均衡。
在上述实施例的基础上,所述步骤S3之前还包括:在所述输入级模块,设置一个专用虚拟输出队列,用于在传输所述主动包的时候将主动包存入到所述专用虚拟输出队列;其中,所述专用虚拟输出队列的优先级高于虚拟输出队列。
所述步骤S3之前还包括:在输出级模块,设置一个优先输出队列,用于接收并储存从中间级模块发送到输出级模块的所述主动包;其中,所述优先输出队列的优先级高于输出队列。
具体的,当一些被动包储存在输入级的VOQ中但没有被调度时,若有一些主动包选择此VOQ,主动包将会被阻塞。为了避免此现象,通过在输入级模块,为主动包设置一个专用的虚拟输出队列(DedicatedVirtual Output Queuing,DVOQ)。一些被动包也可能存在于输出队列中,以至于主动包不得不在其队列后等待。为避免此现象,每个输出端口将被配置两个具有不同优先级的输出队列。高优先级队列用于主动包传输,而低优先级队列用于被动包传输。当它们需要同时离开输出端口时,高优先级队列中的主动包可以提前离开。
同样,在输出级模块汇总,也添加一个优先输出队列(PriorityOutput Queue,POQ),当主动包通过中间级模块传输到输出级模块中的时候,储存在所述POQ中,等待分发到对应的输出端口。
在上述各实施例的基础上,所述步骤S3具体包括:
S31,将所述主动包存入到输入级模块中的所述专用虚拟输出队列中,并进行传输;
S32,将所述专用虚拟输出队列中的所述主动包通过中间级模块传输到输出级模块,存入到输出级模块中的优先输出队列中;
S33,将所述主动包从所述优先输出队列中分发到所述输出级模块对应的输出端口。
具体的,主动包的调度方式具体为,主动包寻找一个可行的DVOQ,尽管当前的DVOQ不能确保通过单跳调度后数据包被传输到目的端口在主动包进入了输入级模块中的DVOQ中后,会同中间级模块被传输到输出级模块,并被储存在输出级模块中的POQ中,等待输出到对应的端口。且假如这些数据包到达目的端口,则此调度结束。
在上述实施例的基础上,所述步骤S34后还包括:
判断获知所述输出级模块对应的输出端口不是所述主动包的目标端口,则将所述主动包返回至输入级模块,寻找其他输入级模块中的虚拟输出队列,重新执行S31。
具体的,当主动包通过中间级模块发送到输出级模块后,如果此输出级模块对应的输出端口不是主动包的目的端口,主动包应尽快离开输出端口并继续进入输入级模块以寻找一个合适的DVOQ。在具体实施中,主动包从POQ输出到输出级模块对应的端口的时候,会判断是否该主动包到达了目的端口,如果主动包没有达到目的端口,会立刻离开输出端口,并返回到输入级模块,在其他的输入级模块中找寻一个新的DVOQ,从新进行传输,直至所述主动包传输到目的端口。
在上述各实施例的基础上,所述步骤S1之后还包括:判断在当前所述配置矩阵中,存在空闲的时间槽。
具体的,由立体匹配算法产生的配置矩阵PQ中,存在一些配置矩阵PQE,其秩不r,即这些矩阵依然有传输更多数据的能力,并且与当前所传输的数据不发生冲突。如找到一个矩阵PQP,使得:
PQP+PQE=PQF
其中,PQF是一个满秩的转换矩阵,且若将PQF替代PQE之后,在能传输PQE以前数据的同时,还能传输余矩阵R中的数据,则将PQF替代PQE。
通过此方法,对立体匹配算法产生的配置矩阵进行判断,判定在当前配置下会存在空闲的时间槽,从而利用这些空余的时间槽进行主动包的传输,有效地减少了数据包传输延迟,并实现了负载均衡。
在本发明的又一实施例中,参考图4,图4为本发明又一实施例提供的一种双活数据中心的多跳路由和调度系统的结构图,所述系统包括:立体匹配计算单元41、主动包生成单元42和主动包传输单元43。
其中,立体匹配计算单元41用于在双活数据中心网络的输入级模块中累积需要传输的数据包,构建流量矩阵,利用立体匹配算法,获得所述流量矩阵分解形成的商矩阵和余矩阵,同时获得对应的配置矩阵;其中,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块。
具体的,流量矩阵C被定义为在T时间槽内在输入级累计的数据包,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块,将输入交换模块和输出交换模块之间的连接看作一个配置矩阵,矩阵中用1表示两个交换模块的状态是连接的,0代表是断开的。
在本实施例中提供的在双活数据中心的MHRS中,首先在输入级交换模块对收到的数据包进行累积,形成一个r×r的流量矩阵C,然后利用立体匹配算法对当前的流量矩阵C进行分解以生成商矩阵Q和余矩阵R以及对应的配置矩阵PQ,PR和配置权重φ。其中,商矩阵中的数据包即为在配置矩阵PQ下具备匹配状态,可以进行传输的数据包,而余矩阵R中的数据包即为在当前配置矩阵PQ下没有匹配状态,需要等待下一次匹配后才能确定是否能够传输的数据包。
其中,主动包生成单元42用于对所述余矩阵中的数据包进行遍历,找出其中在当前配置矩阵中具有可传输路径的数据包,将此类数据包标记为主动包。
具体的,由于采用立体匹配算法所产生的配置矩阵PQ会有空时隙,即在同一个配置状态下,有些链路会一直传输数据,但是有些链路传输完数据之后会留下空时隙。因此,利用这些时空隙的方法是,遍历余矩阵R中所有元素,如果能存在矩阵Ph∈PQ,且矩阵Ph中存在一些1,其位置满足前一个1的列序号是后一个1的行序号,并且在这些1中有两个位置不相同的1,即一个1的行序号为i,而另一个1的列序号为j。这样就能找到一条由i到j的链路L:i→l1→l2→…ln→j,其中,(i,l1),(l1,l2),…,(ln,j)是矩阵Ph中满足上述条件所存在的位置,在不影响原本传输数据的同时,可以通过这条链路,传输更多数据,这里将矩阵Ph中的数据包标记为主动包,即没有匹配状态,但能找到一条合适传输路径的数据包,而商矩阵Q中的数据包标记为被动包,用以和主动包进行区分。
通过此系统,可以找到在一次传输配置下,在不影响原本传输数据的同时,能够找到其中有空的时隙和可以利用这些时隙进行数据传送的数据包,从而传输更多数据。
其中,主动包传输单元43用于所述主动包通过当前配置矩阵中的配置路径发送到输出模块。
具体的,通过找到所述余矩阵R中的主动包,这些数据包能够在当前配置的链路下,有一条合适的传输路径传输到目标端口,同时在这条路径上,按照当前的配置状态,具备空闲的时隙,在数据传输中,将这些主动包通过当前配置状态下,利用空余的时隙进行传送,由输入级模块传输到输出级模块。
通过此系统,提出了一个多跳路由和调度算法,将流量矩阵分解为商矩阵和余矩阵,将余矩阵中的一些数据包调度到商矩阵所形成的配置矩阵的空闲时间槽中进行数据传输,可以在不增加加速比的同时充分利用空闲的带宽,有效地减少了数据包传输延迟,并实现了负载均衡。
在上述实施例的基础上所述系统还包括专用虚拟队列构建单元,用于在所述输入级模块,设置一个专用虚拟输出队列,用于在传输所述主动包的时候将主动包存入到所述专用虚拟输出队列;其中,所述专用虚拟输出队列的优先级高于虚拟输出队列。
所述系统还包括优先输出队列构建单元,用于在输出级模块,设置一个优先输出队列,用于接收并储存从中间级模块发送到输出级模块的所述主动包;其中,所述优先输出队列的优先级高于输出队列。
所述主动包传输单元具体包括:
虚拟输出队列传输子单元,用于将所述主动包存入到输入级模块中的所述专用虚拟输出队列中,并进行传输;
优先输出队列传输子单元,用于将所述专用虚拟输出队列中的所述主动包通过中间级模块传输到输出级模块,存入到输出级模块中的优先输出队列中
输出子单元,用于将所述主动包从所述优先输出队列中分发到所述输出级模块对应的输出端口。
具体的,当一些被动包储存在输入级的VOQ中但没有被调度时,若有一些主动包选择此VOQ,主动包将会被阻塞。为了避免此现象,通过在输入级模块,为主动包设置一个专用的虚拟输出队列(DedicatedVirtual Output Queuing,DVOQ)。一些被动包也可能存在于输出队列中,以至于主动包不得不在其队列后等待。为避免此现象,每个输出端口将被配置两个具有不同优先级的输出队列。高优先级队列用于主动包传输,而低优先级队列用于被动包传输。当它们需要同时离开输出端口时,高优先级队列中的主动包可以提前离开。
同样,在输出级模块汇总,也添加一个优先输出队列(PriorityOutput Queue,POQ),当主动包通过中间级模块传输到输出级模块中的时候,储存在所述POQ中,等待分发到对应的输出端口。
其中,主动包的调度方式具体为,主动包寻找一个可行的DVOQ,尽管当前的DVOQ不能确保通过单跳调度后数据包被传输到目的端口在主动包进入了输入级模块中的DVOQ中后,会同中间级模块被传输到输出级模块,并被储存在输出级模块中的POQ中,等待输出到对应的端口。且假如这些数据包到达目的端口,则此调度结束。
当主动包通过中间级模块发送到输出级模块后,如果此输出级模块对应的输出端口不是主动包的目的端口,主动包应尽快离开输出端口并继续进入输入级模块以寻找一个合适的DVOQ。在具体实施中,主动包从POQ输出到输出级模块对应的端口的时候,会判断是否该主动包到达了目的端口,如果主动包没有达到目的端口,会立刻离开输出端口,并返回到输入级模块,在其他的输入级模块中找寻一个新的DVOQ,从新进行传输,直至所述主动包传输到目的端口。
在主动包的的一个多跳转发过程中,参考图5,图5为本发明再一实施例提供的一种双活数据中心的多跳路由和调度方法中数据包多跳转发示意图。
第一步主动包从VOQ(0,k-1,n-1)到可行的DVOQ(0,j,n-1)。第二步主动包通过虚线路径被路由到输出级。第三步主动包在被分发到OP(j,n-1)前被储存在POQ(j,n-1)中。第三步主动包在被分发到OP(j,n-1)前被储存在POQ(j,n-1)中。第四步主动包再次进入(i,n-1)中,其中OP(j,n-1)和IP(i,n-1)是同一个端口。其会重复第一步去寻找可行的DVOQ(i,k-1,n-1),然后主动包通过实线路径被路由到输出级。最终主动包被储存在POQ(k-1,n-1)等待被分发到OP(k-1,n-1)。其中主动包通过两个中间级进行交换,此过程为两跳调度。
本发明实施例给出了一种多跳路由和调度算法(MHRS)来实现DCNs中的负载均衡。通过对双活数据中心网络多跳能力进行探索,MHRS可以通过多跳路由策略进一步利用调度中的空闲时间槽,使DCNs实现高带宽利用率和低传输延迟。MHRS包括两个步骤,首先检查一些空闲时间槽是否可以在单跳方式中直接使用。若不行则调用第二个步骤,通过寻找一个可行的多跳路由来利用空闲时间槽中的带宽,空闲时间槽可以在调度中跨多个交换配置架构。通过对双活数据中心网络的多跳路由功能进行探索,有效地减少了数据包传输延迟,并实现了负载均衡。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种双活数据中心的多跳路由和调度方法,其特征在于,包括:
S1,在双活数据中心网络的输入级模块中累积需要传输的数据包,构建流量矩阵,利用立体匹配算法,获得所述流量矩阵分解形成的商矩阵和余矩阵,同时获得对应的配置矩阵;其中,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块;
S2,对所述余矩阵中的数据包进行遍历,找出其中在当前配置矩阵中具有可传输路径的数据包,将此类数据包标记为主动包;
S3,将所述主动包通过当前配置矩阵中的配置路径发送到输出级模块。
2.根据权利要求1所述的方法,其特征在于,所述步骤S3之前还包括:
在所述输入级模块,设置一个专用虚拟输出队列,用于在传输所述主动包的时候将主动包存入到所述专用虚拟输出队列;
其中,所述专用虚拟输出队列的优先级高于虚拟输出队列。
3.根据权利要求2所述的方法,其特征在于,所述步骤S3之前还包括:
在输出级模块,设置一个优先输出队列,用于接收并储存从中间级模块发送到输出级模块的所述主动包;
其中,所述优先输出队列的优先级高于输出队列。
4.根据权利要求3所述的方法,其特征在于,所述步骤S3具体包括:
S31,将所述主动包存入到输入级模块中的所述专用虚拟输出队列中,并进行传输;
S32,将所述专用虚拟输出队列中的所述主动包通过中间级模块传输到输出级模块,存入到输出级模块中的优先输出队列中;
S33,将所述主动包从所述优先输出队列中分发到所述输出级模块对应的输出端口。
5.根据权利要求4所述的方法,其特征在于,所述步骤S34后还包括:
判断获知所述输出级模块对应的输出端口不是所述主动包的目标端口,则将所述主动包返回至输入级模块,寻找其他输入级模块中的虚拟输出队列,重新执行S31。
6.根据权利要求1所述的方法,其特征在于,所述步骤S1之后还包括:判断在当前所述配置矩阵中,存在空闲的时间槽。
7.一种双活数据中心的多跳路由和调度系统,其特征在于,包括:
立体匹配计算单元,用于在双活数据中心网络的输入级模块中累积需要传输的数据包,构建流量矩阵,利用立体匹配算法,获得所述流量矩阵分解形成的商矩阵和余矩阵,同时获得对应的配置矩阵;其中,流量矩阵的每行匹配输入级的交换模块,每列匹配输出级的交换模块;
主动包生成单元,用于对所述余矩阵中的数据包进行遍历,找出其中在当前配置矩阵中具有可传输路径的数据包,将此类数据包标记为主动包;
主动包传输单元,用于所述主动包通过当前配置矩阵中的配置路径发送到输出模块。
8.根据权利要求7所述的系统,其特征在于,所述系统还包括专用虚拟队列构建单元,用于在所述输入级模块,设置一个专用虚拟输出队列,用于在传输所述主动包的时候将主动包存入到所述专用虚拟输出队列;
其中,所述专用虚拟输出队列的优先级高于虚拟输出队列。
9.根据权利要求8所述的系统,其特征在于,所述系统还包括优先输出队列构建单元,用于在输出级模块,设置一个优先输出队列,用于接收并储存从中间级模块发送到输出级模块的所述主动包;
其中,所述优先输出队列的优先级高于输出队列。
10.根据权利要求9所述的系统,其特征在于,所述主动包传输单元具体包括:
虚拟输出队列传输子单元,用于将所述主动包存入到输入级模块中的所述专用虚拟输出队列中,并进行传输;
优先输出队列传输子单元,用于将所述专用虚拟输出队列中的所述主动包通过中间级模块传输到输出级模块,存入到输出级模块中的优先输出队列中
输出子单元,用于将所述主动包从所述优先输出队列中分发到所述输出级模块对应的输出端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711485235.4A CN108199977A (zh) | 2017-12-29 | 2017-12-29 | 一种双活数据中心的多跳路由和调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711485235.4A CN108199977A (zh) | 2017-12-29 | 2017-12-29 | 一种双活数据中心的多跳路由和调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108199977A true CN108199977A (zh) | 2018-06-22 |
Family
ID=62586885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711485235.4A Pending CN108199977A (zh) | 2017-12-29 | 2017-12-29 | 一种双活数据中心的多跳路由和调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108199977A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112954719A (zh) * | 2021-03-25 | 2021-06-11 | 盐城工学院 | 面向无线多跳网络中网络编码感知路由的流量匹配方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102185772A (zh) * | 2011-05-05 | 2011-09-14 | 北京交通大学 | 数据中心网络系统的路由方法 |
US20120008945A1 (en) * | 2010-07-08 | 2012-01-12 | Nec Laboratories America, Inc. | Optical switching network |
CN102769569A (zh) * | 2012-07-25 | 2012-11-07 | 中兴通讯股份有限公司 | 交换式矩阵数据中心网络系统及数据包转发方法 |
CN103856402A (zh) * | 2012-11-30 | 2014-06-11 | 华为技术有限公司 | 一种数据中心网络结构及其路由方法 |
CN105337883A (zh) * | 2015-08-20 | 2016-02-17 | 电子科技大学 | 一种支持多业务的网络交换装置及其实现方法 |
US20160366498A1 (en) * | 2015-06-09 | 2016-12-15 | Oracle International Corporation | Macro-switch with a buffered switching matrix |
CN106254969A (zh) * | 2016-08-08 | 2016-12-21 | 西安电子科技大学 | 快速光交换条件下的时隙分配方法 |
-
2017
- 2017-12-29 CN CN201711485235.4A patent/CN108199977A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120008945A1 (en) * | 2010-07-08 | 2012-01-12 | Nec Laboratories America, Inc. | Optical switching network |
CN102185772A (zh) * | 2011-05-05 | 2011-09-14 | 北京交通大学 | 数据中心网络系统的路由方法 |
CN102769569A (zh) * | 2012-07-25 | 2012-11-07 | 中兴通讯股份有限公司 | 交换式矩阵数据中心网络系统及数据包转发方法 |
CN103856402A (zh) * | 2012-11-30 | 2014-06-11 | 华为技术有限公司 | 一种数据中心网络结构及其路由方法 |
US20160366498A1 (en) * | 2015-06-09 | 2016-12-15 | Oracle International Corporation | Macro-switch with a buffered switching matrix |
CN105337883A (zh) * | 2015-08-20 | 2016-02-17 | 电子科技大学 | 一种支持多业务的网络交换装置及其实现方法 |
CN106254969A (zh) * | 2016-08-08 | 2016-12-21 | 西安电子科技大学 | 快速光交换条件下的时隙分配方法 |
Non-Patent Citations (5)
Title |
---|
RANDEEP BHATIA,MURALI KODIALAM: "On Power Efficient Communication over Multi-hop Wireless Networks: Joint Routing, Scheduling and Power Control", 《IEEE》 * |
SHU FU, BIN WU, XIAOHONG JIANG ET AL.: "Cost and Delay Tradeoff in Three-Stage Switch Architecture for Data Center Networks", 《IEEE》 * |
杨姝: "大型数据中心光电混合交换中的包调度算法研究", 《中国优秀硕士学位论文全文数据库》 * |
胡振宇,张水波,赵志鹏: "基于Clos 架构数据中心网络中多跳路由和调度算法研究", 《中国科技论文在线》 * |
郑宇,毛子荐,马士杰,孙小菡: "面向数据中心的光/ 电混合分组交换节点研究", 《中国会议》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112954719A (zh) * | 2021-03-25 | 2021-06-11 | 盐城工学院 | 面向无线多跳网络中网络编码感知路由的流量匹配方法 |
CN112954719B (zh) * | 2021-03-25 | 2023-10-13 | 盐城工学院 | 面向无线多跳网络中网络编码感知路由的流量匹配方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101304374B (zh) | 一种基于Clos网络交换结构的贯序匹配调度算法 | |
CN105337883B (zh) | 一种支持多业务的网络交换装置及其实现方法 | |
CN100438498C (zh) | 以太网设备堆叠方法及其系统 | |
CN108337196B (zh) | 一种通过交换芯片构建的交换系统及其路由算法 | |
CN111193971B (zh) | 一种面向机器学习的分布式计算互连网络系统及通信方法 | |
CN100421420C (zh) | 一种调度纵横式交换矩阵中变长数据包队列的方法 | |
Obaidat et al. | Learning automata-based bus arbitration for shared-medium ATM switches | |
WO2017084228A1 (zh) | 软件定义网络中流量项目的管理方法 | |
CN100428660C (zh) | 一种具有内部加速的光突发交换节点 | |
CN108199977A (zh) | 一种双活数据中心的多跳路由和调度方法 | |
CN103685078A (zh) | 基于光纤延时线的全光共享缓存路由器及其工作方法 | |
CN105072046A (zh) | 一种基于令牌控制节点并发数据转发的延迟容忍网络拥塞避免方法 | |
CN108683961A (zh) | 一种基于波长选择开关的数据中心机架内光互连网络 | |
Farahmand et al. | A multi-layered approach to optical burst-switched based grids | |
Jiang et al. | Effective coflow scheduling in hybrid circuit and packet switching networks | |
Cheng et al. | Design and performance evaluation of very large-scale optical frame switching networks based on WSS for future data centers | |
CN103731359A (zh) | 基于光纤延时线的fifo共享缓存路由器及其工作方法 | |
Zhao et al. | Minimizing delay by multi-hop routing and scheduling in clos networks for DCNs | |
CA2347592C (en) | Improvements in or relating to packet switches | |
Song et al. | Integrated Queuing and Scheduling for Unicast and Multicast Traffic in Input-Queued Packet Switches | |
Xia et al. | On practical stable packet scheduling for bufferless three-stage Clos-network switches | |
Yan et al. | Approaching Work-Conserving Scheduling Algorithm for Mixed Unicast and Multicast in Combined Input and Crosspoint Queued Switch | |
Ma et al. | Opportunistic Load Balancing in Optical Datacenter Networks using Spare Capacity | |
Shengjin et al. | Power-Grid Services Oriented Coordinated and Unified Control Technology of IP and Optical Networks | |
Sun et al. | Design of a hybrid packet and circuit switching network node |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180622 |