Message Board

Dear readers, authors and reviewers,you can add a message on this page. We will reply to you as soon as possible!

2021 Volume 43 Issue 9
Article Contents

YI Wenwen, ZHANG Shukui, WANG Xi, et al. A Fault-Tolerant Unicast Routing Algorithm for a Class of Recursive Data Center Networks[J]. Journal of Southwest University Natural Science Edition, 2021, 43(9): 181-192. doi: 10.13718/j.cnki.xdzk.2021.09.020
Citation: YI Wenwen, ZHANG Shukui, WANG Xi, et al. A Fault-Tolerant Unicast Routing Algorithm for a Class of Recursive Data Center Networks[J]. Journal of Southwest University Natural Science Edition, 2021, 43(9): 181-192. doi: 10.13718/j.cnki.xdzk.2021.09.020

A Fault-Tolerant Unicast Routing Algorithm for a Class of Recursive Data Center Networks

More Information
  • Corresponding author: WANG Xi ; 
  • Received Date: 08/10/2019
    Available Online: 20/09/2021
  • MSC: TP393

  • The data center network is the main infrastructure supporting applications such as cloud services, supercomputing and social networks. The traditional tree-based data center network has some shortcomings, such as insufficient scalability and low fault tolerance. Based on completed graphs, this paper presents a kind of recursive data center network(RDCN). Compared with the traditional tree data center network, RDCN has better network bandwidth and fault-tolerant performance. It is proved that when k≥1, n≥3 and σ∈{1, n-1}, the restricted connectivity of RDCN is 2+n-2, which is almost twice the RDCN's traditional connectivity. We present an improved fault-tolerant unicastrouting algorithm(XFRouting) and prove thatthe time complexity of XFRouting is O(⌈log|F|⌉k3), and furthermoreprove the maximal length of the path constructedby the algorithm in the worst case. Finally, a simulation experiment based on our algorithm is carried out, and the results show that the algorithm is better than the breadth first search algorithm and the depth first search algorithm.
  • 加载中
  • [1] 李文信, 齐恒, 徐仁海, 等. 数据中心网络流量调度的研究进展与趋势[J]. 计算机学报, 2020, 43(4): 600-617.

    Google Scholar

    [2] 陆菲菲, 谢向辉, 郭得科, 等. 一种构建超大规模数据中心的模块化网络结构[J]. 软件学报, 2017, 28(8): 2196-2213.

    Google Scholar

    [3] GU M M, HAO R X, ZHOU S M. Fault Diagnosability of Data Center Networks[J]. Theoretical Computer Science, 2019, 776: 138-147. doi: 10.1016/j.tcs.2019.01.020

    CrossRef Google Scholar

    [4] HARARY F. Conditional Connectivity[J]. Networks, 1983, 13(3): 347-357. doi: 10.1002/net.3230130303

    CrossRef Google Scholar

    [5] ESFAHANIAN A H. Generalized Measures of Fault Tolerance with Application to N-Cube Networks[J]. IEEE Transactions on Computers, 1989, 38(11): 1586-1591. doi: 10.1109/12.42131

    CrossRef Google Scholar

    [6] OH A D, CHOI H A. Generalized Measures of Fault Tolerance in N-Cube Networks[J]. IEEE Transactions on Parallel and Distributed Systems, 1993, 4(6): 702-703. doi: 10.1109/71.242153

    CrossRef Google Scholar

    [7] WANG X, FAN J X, ZHOU J Y, et al. The Restricted H-Connectivity of the Data Center Network DCell[J]. Discrete Applied Mathematics, 2016, 203: 144-157. doi: 10.1016/j.dam.2015.09.002

    CrossRef Google Scholar

    [8] 王喜, 何福男, 张书奎. 交错立方体上限制容错单播算法的研究[J]. 西南师范大学学报(自然科学版), 2018, 43(9): 51-59.

    Google Scholar

    [9] WEI C C, HSIEH S Y. H-Restricted Connectivity of Locally Twisted Cubes[J]. Discrete Applied Mathematics, 2017, 217: 330-339. doi: 10.1016/j.dam.2016.08.012

    CrossRef Google Scholar

    [10] NING W T. The H-Connectivity of Exchanged Crossed Cube[J]. Theoretical Computer Science, 2017, 696: 65-68. doi: 10.1016/j.tcs.2017.07.023

    CrossRef Google Scholar

    [11] LI Z H, YANG Y Y. RRect: a Novel Server-Centric Data Center Network with High Power Efficiency and Availability[J]. IEEE Transactions on Cloud Computing, 2020, 8(3): 914-927.

    Google Scholar

    [12] ZHANG Z, DENG Y H, MIN G Y, et al. HSDC: a Highly Scalable Data Center Network Architecture for Greater Incremental Scalability[J]. IEEE Transactions on Parallel and Distributed Systems, 2019, 30(5): 1105-1119. doi: 10.1109/TPDS.2018.2874659

    CrossRef Google Scholar

    [13] GUO C X, WU H T, TAN K, et al. Dcell: a Scalable and Fault-Tolerant Network Structure for Data Centers[C] //Proceedings of the ACM SIGCOMM 2008 conference on Data communication-SIGCOMM '08. New York: ACM Press, 2008: 75-86.

    Google Scholar

    [14] GUO C, LU G, LI D, et al. BCube: a High Performance, Server-Centric Network Architecture for Modular Data Centers[C] //Proceedings of Special Interest Group on Data Communication (SIGCOMM). New York: IEEE Press, 2009.

    Google Scholar

    [15] 王喜. DCell网络上的路径覆盖和限制连通性研究[D]. 苏州: 苏州大学, 2015.

    Google Scholar

  • 加载中
通讯作者: 陈斌, bchen63@163.com
  • 1. 

    沈阳化工大学材料科学与工程学院 沈阳 110142

  1. 本站搜索
  2. 百度学术搜索
  3. 万方数据库搜索
  4. CNKI搜索

Figures(2)  /  Tables(1)

Article Metrics

Article views(1944) PDF downloads(171) Cited by(0)

Access History

Other Articles By Authors

A Fault-Tolerant Unicast Routing Algorithm for a Class of Recursive Data Center Networks

    Corresponding author: WANG Xi ; 

Abstract: The data center network is the main infrastructure supporting applications such as cloud services, supercomputing and social networks. The traditional tree-based data center network has some shortcomings, such as insufficient scalability and low fault tolerance. Based on completed graphs, this paper presents a kind of recursive data center network(RDCN). Compared with the traditional tree data center network, RDCN has better network bandwidth and fault-tolerant performance. It is proved that when k≥1, n≥3 and σ∈{1, n-1}, the restricted connectivity of RDCN is 2+n-2, which is almost twice the RDCN's traditional connectivity. We present an improved fault-tolerant unicastrouting algorithm(XFRouting) and prove thatthe time complexity of XFRouting is O(⌈log|F|⌉k3), and furthermoreprove the maximal length of the path constructedby the algorithm in the worst case. Finally, a simulation experiment based on our algorithm is carried out, and the results show that the algorithm is better than the breadth first search algorithm and the depth first search algorithm.

  • 近年来,随着云计算和大数据应用的飞速发展,数据中心网络(Data Center Network)作为其基础设施和下一代网络技术的创新平台,得到了学术界和工业界的广泛关注[1-3].

    数据中心网络的容错性是评估网络性能的重要因素. 连通度是度量数据中心网络容错性的一个重要参数,连通度越大,则数据中心网络的容错性能就相对越高. 数据中心网络连通度定义中,发生故障的服务器是任意的、没有限制条件的,然而实际情况往往并非如此. 仅使用连通度来评估数据中心网络的容错性,会严重低估数据中心网络的容错性能. 因此,涌现了大量在特定网络拓扑上的限制连通度问题的研究成果[3-12].

    传统的树型数据中心网络存在可扩展性不足和容错性较差等缺点,因此研究者们提出了DCell,BCube等多种递归型数据中心网络,与树型数据中心网络不同,这些结构采用递归方式构建网络拓扑,理论上可以支持百万台服务器的规模[13-14],且它们避免了核心层交换机带来的性能瓶颈,并使服务器之间拥有多条可用的不相交路径,其在可扩展性、容错性等多方面都有较好表现. 本文提出了一类递归型数据中心网络——RDCN,与传统树形数据中心网络相比,该网络具有更好的网络带宽和网络容错性能;研究了递归型数据中心网络的限制连通度,该结果能够更加精确地度量该网络的容错性. 本文将讨论RDCN在限制故障顶点集情形下的限制连通度,并设计和分析了相应的容错单播算法.

1.   预备知识
  • 数据中心网络可以表示为一个简单图G=(V(G),E(G)),其中V(G)表示顶点集,E(G)表示边集. 顶点和边分别表示数据中心网络中的服务器和连接服务器的链路,而交换机被认为是透明的网络设备[13]. 给定图G中任意两个顶点uv,若(uv)∈E(G),则uv是邻居. 顶点u在图G的邻居集合可表示为N(Gu)={v|(uv)∈E(G)}. 图G的连通度可表示为κ(G).

    G中两个顶点uv之间的路径P可表示为一个顶点的序列P=(u0=uu1,…,uk=v),P中除了uv以外的任意两个点都是不同的. 从uiuj的子路径可用Path(Puiuj)表示,其中0≤ijk. P[-1]=ukP-1可表示为路径P的反转. P中所有顶点(边)的集合可表示为V(P)(E(P)). 如果V'⊆V(G),那么G[V']表示由图G的顶点所导出的子图. 使用G-V来表示G[V(G)-V]. 对于任意的顶点vV(G),如果(uv)∈E(G),则表示uv的一个邻居. 定义N(GV')={xV(G)|存在顶点yV'满足(xy)∈E(G)}. 顶点v的邻居集合Γ(Gv)={uV(G)|(vu)∈E(G)}表示v的所有相邻顶点.

    进一步,对于顶点集合V'⊆V(G),定义V'的邻居集合为Γ(GV')=∪xV'Γ(Gx)/V'. 明显地,Γ(GV')=N(GV')/V'.

    定义1  给定图G,令FV(G)表示G中一个故障顶点集合,如果uF,那么uG中一个故障顶点;否则,uG中一个无故障顶点. 若G中每个顶点至少有一个无故障邻居,则基于该条件下G的限制连通度可表示为κ'(G). 另外,基于故障顶点无限制的G的连通度可表示为κ(G).

    对于任意整数n≥3和k≥1,部署于n-口交换机上的k-维递归完全图网络可以表示为一个图Xkn. Xkn的基图是一个有n个顶点的完全图,tkn表示Xkn的顶点个数,e(uv)表示顶点u到顶点v的边,σ表示图中任意顶点与同维度其他子图相连接的边数,其中σ∈{1,n-1},s表示Xkn中子图的个数. Xkn的顶点u表示为[ukuk-1,…,ui,…,u0],其中0≤u0n-1,0≤uisii≥1,可用(u)i表示u中的第i个元素ui.

    定义2  当k≥0,n≥3且σ∈{1,n-1}时,Xkn的递归定义如下:

    (1) 当k=0时,Xkn是一个具有n个顶点的完全图.

    (2) 当k≥1时,Xkn是由s个互不相交的子图Xk-1,n1Xk-1,n2,…,Xk-1,ns相互连接而成的(n+-1)-正则图,其中当σ=1时,s=tk-1,n+1;当σ=n-1时,s=n.

    (2.1)当σ=1时,Xk-1,nuk中顶点u=[ukuk-1,…,u0]与Xk-1,nvkv=[vkvk-1,…,v0]是相邻的当且仅当${u_k} = {v_0} + \sum\limits_{j = 1}^{k - 1} {({v_j}{t_{j - 1, n}})} $${v_k} = {u_0} + \sum\limits_{j = 1}^{k - 1} {({u_j}{t_{j - 1, n}}) + 1} $.

    (2.2)当σ=n-1时,Xk-1,nuk中顶点u=[ukuk-1,…,u0]与Xk-1,nvkv=[vkvk-1,…,v0]是相邻的当且仅当ukvkui=vi(i=0,…,k-1).

    根据文献[13]和文献[14],可得出Xkn网络的基本性质如下.

    定理1  Xkn是一个(n+-1)-正则图.

    定理2  κ(Xkn)=λ(Xkn)=n+-1.

    定理3  $ {t_{k, n}} = \left\{ {\begin{array}{*{20}{l}} {{t_{k - 1, n}}({t_{k - 1, n}} + 1) \ge {{\left( {n + \frac{1}{2}} \right)}^{{2^k}}} - \frac{1}{2}}&{若 \sigma = 1, }\\ {n{t_{k - 1, n}} = {n^{k + 1}}}&{若 \sigma = n - 1} \end{array}} \right.. $

    本文将RDCN与几种典型的数据中心网络进行对比(如表 1所示),其中N表示服务器数量,n表示交换机端口数量,比较的指标包括:顶点的度、连通度和网络直径. 其中数据中心网络中顶点的度越小则表示其顶点间网络连接越少,从而构建网络的成本越低;数据中心网络的连通度越高,则表示其具有更好的容错性;数据中心网络的直径越小则表示它的实时响应路由所花费的时间越少.

    与RDCN相比,Tree和Fat-Tree的扩展规模在理论上受限于核心交换机的端口数目,不利于数据中心网络规模的快速扩张,且它们的容错性受到核心交换设备影响较大,对核心交换设备的故障非常敏感. 同时,Tree和Fat-Tree的拓扑结构的特点决定了其不能很好支持一对多、广播和全交换等网络通信模式. 另外,与RDCN相比,FiConn网络的容错性较差,网络直径较大. 因此与上述数据中心网络相比,RDCN具有较高的网络带宽、较好的容错性. 特别的,σ=n-1时的RDCN比σ=1时的RDCN具有更高的网络带宽和容错性能.

2.   递归型数据中心网络的限制连通度
  • 本文用F表示故障顶点集合,令I0,n={0,1,…,n-1}且Ijn={0,1,…,s}(1≤jk). 若σ=1时,s=tk-1,n+1;若σ=n-1时,s=n. 对于任意整数iIkn,令Fi=FV(Xk-1,ni)且fi=|Fi|. 令I={iIkn|fin+-2},I=Ikn\IFI=∪iIFiFI=∪iIFiXk-1,nI=Xkn[∪iIV(Xk-1,ni)].

    对于任意的整数1≤lk,令Vknl={[ukuk-1,…,ul]|uiIinlik}. 对于任意的αVknl,我们用Xl-1,nα表示Xl-1,n中每个顶点标号前添加α作为前缀后生成的图. 显然Xl-1,n$ \cong $Xl-1,nα.

    根据定义2,可以证明下述引理成立.

    引理1  对于任意两个整数ijIknijXkn中的子图Xk-1,niXk-1,nj存在h条不相交的连接路径,表示为集合P(Xk-1,niXk-1,nj),其中当σ=1时h=tk-1,n,当σ=n-1时h=(n-1)tk-1,n.

      对于任意的rIkn{ij},令e(Xk-1,niXk-1,nj)表示子图Xk-1,ni到子图Xk-1,nj的一条边,令(urxr)=e(Xk-1,niXk-1,nr)且(yrvr)=e(Xk-1,nrXk-1,nj). 因为Xk-1,nr是连通的,所以xryr存在一条路径Qr. 令Pi=e(Xk-1,niXk-1,nj),当rIknrj时,可以验证P0P1,…,Pr,…,Ps是连接Xk-1,niXk-1,njh条不交路径,当σ=1时,h=tk-1,n,当σ=n-1时,h=(n-1)tk-1,n.

    引理2  令F表示Xkn上所有故障顶点的集合. 存在任意整数k≥1,n≥3且σ∈{1,n-1},若|F|≤2(-1)+n,则Xk-1,nI-F是连通的.

      首先证明|I|≤2. 假设|I|≥3,根据前面给出的I的定义,则有|F|≥3(n+-2)≥2(-1)+n+1>2(-1)+n,矛盾. 此外,对于任意整数iI,由于κ(Xk-1,ni)=n+k-2且fin+k-3,故Xk-1,ni-Fi是连通的.

    接下来证明Xk-1,nI-FI是连通的. 对于任意两个不同整数ijI,任意的整数k≥1,n≥3且σ∈{1,n-1},根据引理1和定理3可以得出

    因此,对于任意两个不相等的整数ijIXk-1,nI-FI上至少存在一条路径Q连接Xk-1,niXk-1,nj,其中QP(Xk-1,niXk-1,nj),故Xk-1,nI-FI是连通的.

    引理3[15]  对于任意的整数k≥1,n≥3且σ∈{1,n-1},Xkn上存在长度为3的圈.

    引理4[15]  对于任意的整数k≥1,n≥3,σ∈{1,n-1},Xkn中存在相邻的两个顶点u=ukuk-1u0v=vkvk-1v0,边(uv)∈E(Xkn),令leftIdx(uv)表示为uv从左侧开始最先不同的下标,则有

    引理5  对于任意的整数k≥1,n≥3且σ∈{1,n-1},网络中的故障顶点集合FV(Xkn)且|F|≤2+n-3,若Xkn中每个无故障顶点都至少存在一个无故障邻居,则Xkn-F是连通的.

      要证明上述情况成立需要证明下述断言成立.

    断言. 对于任意两个不同的顶点uvV(Xkn-F),在Xkn-F中存在一条连接uv的路径.

    k=1时,该断言显然成立.

    α=(u)kβ=(v)k,当k>1时,可以分两种情形讨论.

    情形1  α=β. 令G0=Xk-1,nα-FαG1=Xkn-V(Xk-1,nα)-(F/Fα),则:

    1) 若fαn+-3,则G0是连通的,因此G0中存在uv的路径连接;

    2) 若fαn+-2,且uv在同一个连通分支,则G0中存在uv的连接路径;

    3) 若fαn+-2,且uv不在同一个连通分支,假定xu的一个无故障邻居顶点,yv的一个无故障邻居顶点. 令γ=(x)kδ=(y)k,接下来可以分为以下3种子情形.

    情形1.1  αδαγ. 对于任意整数iIkn{α},有fi≤|F|-fα≤(2+n-3)-(n+-2)=-1≤n+-3. 根据引理2,G1是连通的,G1中存在路径Q连接xy. 因此Xkn-F中存在路径(uxQyv)连接uv.

    情形1.2  αδα=γ. 令u1u2,…,un+-4un+-3分别表示uXk-1,nα中的除x外的n+-3个邻居,令x1x2,…,xn+-4xn+-3分别表示xXk-1,nα中的除u外的n+-3个邻居,令u'1u'2,…,u'n+-3u'n+-2分别表示u1u2,…,un+-4un+-3xXkn-V(Xk-1,nα)中的n+-2个邻居,令x'1x'2,…,x'n+-3x'n+-2分别表示x1x2,…,xn+-4xn+-3uXkn-V(Xk-1,nα)中的n+-2个邻居,其中σ∈{1,n-1}. 根据引理3和引理4有

    c'求导则有

    显然有min(c')=n+2-2. 不失一般性,假设x1=u1x2=u2,…,xc=uc,则有{uc+1uc+2,…,un+-3}∩{xc+1xc+2,…,xn+-3}=Ø.

    根据定义2有{u'c+1u'c+2,…,u'n+-3}∩{x'c+1x'c+2,…,x'n+-3}=Ø.

    因此,从Xk-1,nαXkn-V(Xk-1,nα)可得c'条不交路:Q1=(uu1u'1),Q2=(uu2u'2),…=…,Qn+-3=(uun+-3u'n+-3),Qn+-2=(uxu'n+-2),Qn+-1=(uxxc+1x'c+1),Qn+=(uxxc+2x'c+2),…,Qc'-1=(uxxn+-3x'n+-3),Qc'=(ux'n+-2).

    因为|F|≤2+n-3<c',所以c'条不相交的路径Q1Q2,…,Qc'中至少存在一条路径Qr满足条件,其中1≤rc'. 令c″=n+-2-(c'-r)=n+-2-c'+r,则有

    根据情形1.1中讨论,G1中存在一条路径P连接zy. 因此,Xkn-F中存在一条路径(QPv)连接uv.

    情形1.3  α=δ. 证明与情形1.2类似,不再赘述.

    情形2  αβ. 不失一般性,假设fαfβ,则有$ {f_\alpha } \le \frac{{\left| F \right|}}{2} \le \frac{{2k\sigma + n - 3}}{2} \le n + k\sigma - 2 $.

    fα=n+-2则fβ≤|F|-fα≤(2+n-3)-(+n-2)=-1≤n+-3,与fαfβ矛盾. 因此fαn+-3. 接下来,分以下两种情形讨论.

    情形2.1  fβn+-3,fαfβI. 根据引理2,Xk-1,nI-F是连通的. 从而Xk-1,nI-F中存在一条路径连接uv.

    情形2.2  fβn+-2. 令G0=Xk-1,nβ-FβG1=Xkn-V(Xk-1,nβ)-(F\Fβ). 类似于情形1.2中的证明,Xkn-F中存在一条路径P连接vx,其中xV(G1). 我们有fi≤|F|-fβ≤(2+n-3)-(+n-2)≤n+-3. 其中iIkn\{β}.

    根据引理2,可得G1是连通的,故G1中存在一条路径Q连接ux. 从而路径(QP-1)是Xkn-F中连接uv的一条路径.

    综上所述,对于任意的uvV(Xkn-F)且uvXkn-F中存在一条连接uv的路径,因此Xkn-F是连通的,证毕.

    定理4  对于任意整数k≥1,n≥3且σ∈{1,n-1},κ'(Xkn)=2κ(Xkn)-n=2+n-2κ'(Xkn)=2κ(Xkn)-n=2+n-2.

      通过引理5可得κ'(Xkn)≥2+n-2κ'(Xkn)≥2+n-2. 下面将证明κ'(Xkn)≤2+n-2成立.

    对于任意的整数k≥1,n≥3且σ∈{1,n-1},如果Xkn中每个顶点都至少有一个无故障邻居,则存在一条边(uv)∈E(Xkn),使得|Γ(Xkn,{uv})|=2+n-2且Xkn-Γ(Xkn,{uv})有且仅有两个连通分支:其中一个连通分支为Xkn[{uv}],另外一个连通分支为Xkn-N(Xkn[{uv}]).

    首先证明当n=3,k=1时该结论成立. 当n=3,k=1时,分为两种情况:σ=1或σ=n-1.

    n=3,k=1,σ=1时,选择一条边(00,01),令故障集合为Γ(X1,3,{00,01})={02,10,20}. 明显的|Γ(X1,3,{00,01})|=3=2×1×1+3-2. 容易验证X1,3-Γ(X1,3,{00,01})有且仅有两个连通分支:其中一个连通分支为X1,3[{00,01}],另外一个连通分支为X1,3-N(X1,3,{00,01}).

    n=3,k=1,σ=n-1时,选择一条边(00,01),令故障集合为Γ(X1,3,{00,01})={02,10,11,20,21}. 明显的|Γ(X1,3,{00,01})|=5=2×1×(3-1)+3-2. 容易验证X1,3-Γ(X1,3,{00,01})有且仅有两个连通分支:其中一个连通分支为X1,3[{00,01}],另外一个连通分支为X1,3-N(X1,3,{00,01}).

    接下来,我们将n视作一个常量,假设该结论在k=τ-1(τ≥2)时成立. 当k=τ时,通过归纳假设,证明存在一条边(uv)∈E(Xk-1,nα),使得在Xk-1,nα中,|Γ(Xk-1,nα,{uv})|=2(τ-1)σ+n-2,并且Xτ-1,nα-N(Xτ-1,nα,{uv})有且仅有两个连通分支:其中一个连通分支为Xτ-1,nα[{uv}],另外一个连通分支为Xτ-1,nα-N(Xτ-1,nα,{uv}). 其中0≤αs,根据定义2,当σ=1时s=tk-1,n+1,当σ=n-1时,s=n.

    G0=Xτ-1,nα-N(Xτ-1,nα,{uv})-{uv},G1=Xτn-Xτ-1,nα-N((Xτn-Xτ-1,nα),{uv}).

    F1=N((Xτn-Xτ-1,n0),{uv})表示{uv}在Xτ-1,nα外的邻居,根据定义2有|F1|=2σ. 令fβ=max{fi|0≤imiα},则有fβ<|F1|=2σ≤2(τ-1)σ+n-2,因此G1是连通的. 根据定义2可知G0中至少存在一个点连接到G1. 则Xτn-Γ(Xτn,{uv})有且仅有两个连通分支:其中一个连通分支为Xτn[{uv}],另一个连通分支为Xτn-N(Xτn,{uv}).

    通过上述过程知κ'(Xτn)≤2τσ+n-2成立.

    综上所述,当n≥3,k≥1,σ∈{1,n-1}时,κ'(Xkn)=2+n-2,证毕.

3.   递归型数据中心网络基于限制故障集的单播算法
  • 定理4  证明了递归型通用网络上限制连通度的精确值,本节将提出网络上基于限制故障顶点集合的单播算法XFRouting.

    Algorithm:XFRouting

    Input:A network Xkn,a global variable σ∈{1,n-1},a faulty node set FV(Xkn) with |F|≤2+n-3,and two nodesu,vV(Xkn).

    Output:A path fromutov in Xkn-F.

    Let σ to be a global variable;

    print (XFR(XknFuv));

    function XFR(XknFuvk)

    1. if (uv)∈E(Xkn) or k=0 then

    2. return (uv);

    3. else if |F|≥2+n-2 then

    4. return (BFS(Xkn-Fuv));

    5. else if F=Ø then

    6. if σ=1 then

    7. return DCellRouting (Xknuv);

    8. else if σ=n-1

    9. then return BCubeRouting (Xknuv);

    10. end if

    11. end if

    12. Let m Fas the first index of the subsets with the minimal number of fault nodes

    13. Let α←(u)kβ←(v)k

    14. if α=β then

    15. if αmF then return (XFR(Xk-1,nαFαuvk-1));

    16. else if αmF then

    17. for i in mF then

    18. P←XMapping(uXknXk-1,niFmF);

    19. Q←XMapping(vXknXk-1,niFmF);

    20. break;

    21. end for

    22. if V(P)∩V(Q)=Ø then

    23. S←XFR(Xk-1,niFP[-1],Q[-1],k-1);

    24. end if

    25. return (PSQ-1);

    26. Find the 1st common node x from P and Q

    27. return (Path(Pux),Path(Q-1xv));

    28. end if

    29. else if αβ then

    30. if αmF then

    31. Q←XMapping(vXknXk-1,nαFmF);

    32. if uV(Q) then return (Path(Quv));

    33. end if

    34. return (XFR(Xk-1,nαFuQ[-1],k-1),Q);

    35. else if βmF then

    36. P←XMapping(uXknXk-1,nβFmF);

    37. if vV(P) then return (Path(Puv));

    38. end if

    39. return(P,XFR(Xk-1,nβFP[-1],vk-1));

    40. else then

    41. for i in mF then

    42. P←XMapping(uXknXk-1,niFmF);

    43. Q←XMapping(vXknXk-1,niFmF);

    44. break;

    45. end for

    46. if V(P)∩V(Q)=Ø then

    47. S←XFR(Xk-1,niFP[-1],Q[-1],k-1);

    48. end if

    49. return (PSQ-1);

    50. Find the 1st node x from P and Q

    51. return (Path(Pux),Path(Q-1xv));

    52. end if

    53. end function

    function XMapping(uG0G1FmF)

    1. for v in N(G0-Fu) and v in mF then return (uv);

    2. end for

    3. for v in N(G0-Fu) then

    4. for x in N(G1-Fv) and v in mF then

    5. return (uvx);

    6. end for

    7. end for

    8. for v in N(G0-Fu) then

    9. for x in N(G0-Fv) then

    10. for y in N(G1-Fx) and y in mF then

    11. return (uvxy);

    12. end for

    13. end for

    14. end for

    18. end function

    接下来,定理5将给出XFRouting算法的设计思路和执行过程,并分析其时间复杂度.

    定理5  当k≥1,n≥3且σ∈{1,n-1}时,对于任意的顶点集合FV(Xkn)且|F|≤2+n-3,算法XFRouting可以构造出Xkn-F中任意两个不同顶点间的一条无故障路径,时间复杂度为O(k)≤O(⌈logs|F|⌉k3).

      当k≥1,n≥3且σ∈{1,n-1}时,故障集合FV(Xkn)且满足|F|≤2+n-3,XFRouting算法可以构造出Xkn-F中任意两个不同顶点uv的一条无故障路径. XFRouting算法中包括4个函数:XFR,XMapping,DCellRouting[12]和BcubeRouting[13]. 其中实现函数XMapping构造出从G0中的顶点uG1-F的一条无故障路径,函数DCellRouting构造出当σ=1时Xknuv的一条路径,函数BcubeRouting构造出当σ=n-1时Xknuv的一条路径. 函数XFR将构造的路径以一个向量的形式保存,向量中的顶点采用长度为k+1的字符串表示.

    函数XFR第1-2行,如果uv存在边,则直接返回边(uv). 函数XFR第3-4行,如果条件满足|F|≥2+n-2,则采用广度优先算法(BFS)构造一条无故障路径,在最坏情形下时间复杂度为O((tkn)2). 函数XFR第5-11行,当无故障顶点且σ=1时函数DCellRouting构造一条无故障路径,时间复杂度为O(k),当无故障顶点且σ=n-1时调用函数BcubeRouting构造一条无故障路径,时间复杂度为O(k). 函数XFR第12行,计算最小故障子集,时间复杂度为O(k).

    接下来分5种情况讨论函数XFR的时间复杂度,令R=n+-1,mF表示故障数最小的子图前缀,s表示子集的个数,其中当σ=1时,s=tk-1,n+1,当σ=n-1时,s=n. 函数XFR第14-15行,当α=βαmF时,T(k)≤T(k-1)+O(R);函数XFR第16-28行,当α=βαmF时,则有T(k)≤T(k-1)+O(R3);函数XFR第29-34行,当αβαmF时,则有T(k)≤T(k-1)+O(R3);函数XFR第35-39行,当αββmF时,则有T(k)≤T(k-1)+O(R3);函数XFR第40-52行,当αβαmFβmF时则有T(k)≤T(k-1)+O(R3).

    因此可得:

    O(k)≤O(logs|F|k3),证毕.

    接下来,定理6分析XFRouting算法构造的路径长度的最大值.

    定理6  当k≥1,n≥3且σ∈{1,n-1}时,对于任意的顶点集合FV(Xkn)且|F|≤2+n-3,XFRouting算法可以构造出Xkn-F中任意两个不同顶点间的一条无故障路径,其路径长度的上界为

      令L(k)表示XFRouting算法构造得到的路径的长度. 当|F|=0时,令D(Xkn)表示图Xkn的直径,根据文献[12]和文献[13],则有

    当0<|F|≤2+n-3时,分为以下情形讨论:

    函数XFR第14-15行,L(k)=L(k-1);函数XFR第16-28行,L(k)≤L(k-1)+6;函数XFR第29-34行,L(k)≤L(k-1)+3;函数XFR第35-39行,L(k)≤L(k-1)+3;函数XFR第40-52行,L(k)≤L(k-1)+6.

    则有

    σ=1时s=tk-1,n+1$ \gg $|F|,则d=logs|F|<1. 因此有

    证毕.

    综上所述,本文提出的时间复杂度为O(logs|F|k3)的算法XFR与采用时间复杂度为O((tkn)2)的广度优先搜索算法相比,具有明显的优越性.

4.   模拟实验及结果分析
  • 本文提出的XFRouting算法采用Python语言编程实现,实验通过设备配置为Intel(R) Core(TM) i5-4200U CPU 1.61GHz,8 GB内存的计算机来评估算法的性能并分析实验结果. 实验中顶点故障和测试点都是随机生成的. 给定随机生成的限制故障集合FV(Xkn)且|F|≤2+n-3,给定σ=1,1≤k≤3,n=3,网络最大规模为24 492个顶点,将使用XFRouting算法构造出Xkn-F上一条单播路径花费的CPU时间分别与广度优先BFS算法和深度优先DFS算法所得的结果进行比较. 将XFRouting算法和BFS算法、DFS算法重复运行1 000次,随机生成故障顶点集合,构建任意两个顶点之间的无故障路径,最坏情况如图 1(a)所示,平均情况如图 1(b)所示.

    给定随机生成的限制故障集合FV(Xkn)且|F|≤2+n-3,给定σ=n-1时,1≤k≤7,n=3,网络最大规模为6 561个顶点. 将XFRouting算法构造出Xkn-F上一条单播路径花费的CPU时间分别与BFS算法、DFS算法进行比较. 将XFRouting算法、BFS算法和DFS算法重复运行1 000次,随机生成故障顶点集合,构建任意两个顶点之间的无故障路径,最坏情况如图 2(a)所示,平均情况如图 2(b)所示.

    根据实验结果,构造Xkn-F上两个顶点间的一条单播路径所花费的CPU时间随着维度k的增加逐步增多. 根据实验结果,当σ=1,n=3且k=3时,XFRouting算法、BFS算法和DFS算法所花费的最坏CPU时间分别为760 ms,960 ms和948 ms,平均CPU时间分别为151 ms,415 ms和483 ms;当σ=n-1,n=3且k=7时,XFRouting算法、BFS算法和DFS算法所花费的最坏CPU时间分别为234 ms,972 ms和990 ms,平均CPU时间分别为189.2 ms,362.6 ms和564.7 ms. 由实验数据可以得到,本文所提出的XFRouting算法在执行效率上优于广度优先搜索算法BFS和深度优先搜索算法DFS.

5.   结论
  • 数据中心网络的容错性是评估其网络性能的重要因素,如果用连通度来评估其容错性能,会低估数据中心网络的容错性能. 基于每个顶点都至少有一个无故障邻居这一条件下的限制连通度,能够更加精确地度量数据中心网络的容错性. 本文提出了一类递归型数据中心网络(RDCN),与传统树形数据中心网络相比,该网络具有更好的网络带宽和网络容错性能. 证明了当k≥1,n≥3且σ∈{1,n-1}时,其限制连通度为2+n-2,这一结果近于其连通度的2倍;接着提出了该情形下时间复杂度为O(logs|F|⌉k3)的容错单播路由算法,证明了在最坏情况下构造出容错单播路由最长路径长度的上界. 仿真实验结果表明XFRouting算法在执行效率上优于广度优先搜索算法和深度优先搜索算法.

Figure (2)  Table (1) Reference (15)

Catalog

    /

    DownLoad:  Full-Size Img  PowerPoint
    Return
    Return