作为分组交换结构的torus网络研究

作为分组交换结构的torus网络研究

论文摘要

下一代核心路由器除了应具有极大的交换容量以外,还应具有灵活经济的可扩展性与极高的可靠性。作为路由器的核心部件,分组交换结构(Packet SwitchingFabrics,PSF)对路由器在上述各方面的表现具有决定性的作用。传统的分组交换结构技术由于受到crossbar规模、总线带宽、缓存读写速率以及集中仲裁调度方式等方面的限制,在实现极大交换容量与端口数量时面临着较大的技术难度,而且其可扩展性不理想。同时,集中仲裁调度方式所带来的单点失效(single pointfailure)问题降低了系统的可靠性。另一方面,在过去的二十年里,以torus网络为代表的直接网络技术被广泛应用于高性能计算系统中,主要作为处理器/存储器之间的连接。torus网络具有大容量、易扩展、高可靠性等优点,正好满足下一代核心路由器对分组交换结构技术的要求。然而作为分组交换结构的torus网络(Torus networks used as PSF,T-PSF)与高性能计算系统中的torus网络在网络规模、业务的特性、交换性能要求等方面都有着较大差异。如何有效地采用torus网络构建大容量可扩展分组交换结构仍然是一项充满挑战的、有待深入研究的课题。本论文致力于研究这一课题中的关键技术,主要研究内容包括:torus网络中的自适应路由算法,T-PSF的负载模式及其对网络性能的影响,针对恶性负载模式的解决方法,T-PSF的扩展方案。描述torus网络的特征与研究其性能需要用到一些基本概念。本论文的第二章集中介绍了这些概念,并给出了必要的数学定义与形式化表示方式。根据作者自己的理解,对一些概念之间的联系进行了说明。对已有文献(尤其是一些较早期的研究工作)中使用比较混乱、容易造成误解的术语进行了解释和澄清。本论文的第三章研究torus网络中的无死锁自适应路由算法。首先概述并比较了已有的两种解决死锁问题的策略:死锁避免与死锁恢复。然后提出了一种采用死锁避免策略的完全自适应路由算法的设计方案DALD(Deadlock-Avoidance withLocal Detection)。采用DALD方案所设计的路由算法只需要每个物理通道上具有两个虚通道(Virtual Channel,VC)即可实现无死锁(deadlock-free),并且具有不错的性能。这是所有torus网络的路由算法中对缓存资源需求最少的,并且已经达到了缓存需求的事实上的最小极限。本章还提出了一种自适应路由算法的设计方案PDR(Path-Division Routing),并且给出了采用该方案的路由算法的两种设计方法:分解法与合成法。然后详细描述了一种采用分解法所设计的路由算法ELadder。ELadder以增加虚通道为代价,在保持算法非常简单、易于实现的同时,能够达到不错的性能。torus网络的性能在很大程度上受其负载模式的影响。然而已有的负载模式模型是针对应用于高性能计算系统中的torus网络或传统分组交换结构所设计的,并不适用于T-PSF。本论文的第四章首先简述了已有最好的分组交换结构的负载模式模型——ZD(Zipf Distribution)模型。通过理论分析与仿真结果,阐明了ZD模型不适用于T-PSF的原因是因为它不包含关于分组的源、目的节点之间距离的信息。然后提出了两种适用于T-PSF的负载模式模型,分别采用不同的方法,把关于源、目的节点之间距离的信息与ZD模型结合起来。通过设置参数的值,可以控制模型中负载分布的均匀程度与源、目的节点之间的平均距离。这是业界首次提出的适用于T-PSF的负载模式模型。这两个模型都对网络的拓扑与节点总数不敏感,因而可以适用于不同拓扑与规模的网络。不少实际应用要求torus网络对于各种负载模式都能达到较高的吞吐量,包括所谓恶性负载模式(即可能造成负载不均衡的模式)。目前针对这一问题的最佳解决方法是采用全局自适应负载均衡路由算法。本论文的第五章提出了一种全局自适应负载均衡路由算法GALME(Globally Adaptive Load-balanced routing withMutual Exclusion)。GALME根据节点转发分组的历史信息来达到全局负载均衡,根据虚通道的当前状态来达到局部负载均衡。GALME还使用了基于“互斥性”的死锁避免方案,具有很强的路由自适应性,从而对于各种负载模式所能达到的吞吐量都超过了已有的最佳算法。T-PSF的负载模式与节点的具体位置无关,本章还针对这一特点,提出了一种适用于T-PSF的负载配置算法。通过把彼此之间有较大通信流量的节点配置到邻近位置,能够有效地减小分组源、目的节点之间的平均距离,从而提高网络性能。这是业界首次提出的针对T-PSF特点的恶性负载模式的解决方法。本论文的第六章研究T-PSF的扩展方案。首先总结了构建T-PSF时所应遵循的原则,然后提出了一种模块化的子网结构——可配置单板(Configurable Board,CB)。每个CB上集成有16个节点。通过逐渐增加CB的数量,并合理配置其板内、板间连接方式,可以方便地实现从4×4 torus到16×16×16 torus的扩展(即从16个节点到4096个节点的扩展)。通过合理选择各维节点数与板内、板间连接的带宽,可以保证在扩展过程中,T-PSF的交换容量始终大于其端口容量,从而保证T-PSF的性能不会随着扩展而下降。本论文的第七章介绍了使用OPNET Modeler系统与C++语言自行开发的torus网络软件仿真平台。该仿真平台可以支持从1维到4维的任意规模的torus/mesh拓扑、多种分组到达模型、多种负载模式模型、多种长度分布的变长分组、多种路由算法与调度算法,并且支持多优先级业务,支持组播/广播。在设计该仿真平台时重点考虑了其扩展能力,在该平台上可以较为方便地实现新的路由、调度算法与负载模式模型等。最后一章对全文进行了总结。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 作为分组交换结构的torus网络概述
  • 1.1.1 路由器组成结构的发展
  • 1.1.2 torus网络简介
  • 1.1.2.1 互连网络的分类
  • 1.1.2.2 作为分组交换结构的直接/间接网络
  • 1.1.2.3 torus网络中节点的组成结构
  • 1.1.2.4 torus网络作为分组交换结构的优缺点
  • 1.2 本论文的选题与相关技术研究现状
  • 1.2.1 torus网络技术的研究现状
  • 1.2.2 T-PSF与高性能计算系统中的torus网络的比较
  • 1.2.3 本论文的选题
  • 1.3 本论文的主要贡献与内容安排
  • 第二章 有关torus网络的基本概念
  • 2.1 引言
  • 2.2 torus网络与相关网络的拓扑
  • 2.2.1 常见拓扑的定义
  • 2.2.1.1 mesh拓扑
  • 2.2.1.2 torus拓扑
  • 2.2.1.3 超立方体拓扑
  • 2.2.1.4 k元n方体拓扑
  • 2.2.2 与拓扑有关的概念
  • 2.3 虫孔交换技术
  • 2.4 虚通道
  • 2.5 torus网络中的路由算法
  • 2.5.1 路由算法的分类
  • 2.5.2 自适应路由算法的定义
  • 2.6 评价torus网络性能的有关参数与指标
  • 2.6.1 负载模式
  • 2.6.2 对分带宽
  • 2.6.3 吞吐量
  • 2.7 本章总结
  • 第三章 torus网络中的无死锁自适应路由算法
  • 3.1 研究背景
  • 3.2 路由死锁问题
  • 3.2.1 死锁的定义
  • 3.2.2 解决死锁问题的策略
  • 3.2.2.1 死锁避免
  • 3.2.2.2 死锁恢复
  • 3.2.2.3 两种策略的比较
  • 3.3 最小缓存需求的完全自适应路由方案DALD
  • 3.3.1 本节需要用到的定义
  • 3.3.2 DALD方案
  • 3.3.2.1 DALD方案描述
  • 3.3.2.2 无死锁性证明
  • 3.3.2.3 缓存需求
  • 3.3.3 一种局域检测机制的实现方案
  • 3.3.3.1 局域检测方案描述
  • 3.3.3.2 仿真结果与分析
  • 3.4 无死锁自适应路由方案PDR
  • 3.4.1 本节需要用到的定义
  • 3.4.2 PDR方案
  • 3.4.3 路由算法设计方法
  • 3.4.3.1 分解法
  • 3.4.3.2 合成法
  • 3.4.4 按照PDR方案所设计的路由算法举例:ELadder算法
  • 3.4.4.1 ELadder算法描述
  • 3.4.4.2 无死锁性证明
  • 3.4.4.3 仿真结果与分析
  • 3.4.4.4 ELadder算法的实现
  • 3.5 DALD与PDR的比较
  • 3.6 本章总结
  • 第四章 作为分组交换结构的torus网络的负载模式模型
  • 4.1 研究背景
  • 4.2 对ZD模型的分析
  • 4.2.1 本节需要用到的定义
  • 4.2.2 ZD模型
  • 4.2.3 目的节点序列对T-PSF性能的影响
  • 4.2.4 对不同目的节点序列的仿真结果
  • 4.3 模型1
  • 4.3.1 生成目的节点序列
  • 4.3.2 构造负载模式模型
  • 4.3.3 讨论
  • 4.3.4 仿真结果与分析
  • 4.4 模型2
  • 4.4.1 生成目的节点序列
  • 4.4.2 构造负载模式模型
  • 4.4.3 讨论
  • 4.4.4 仿真结果与分析
  • 4.5 本章总结
  • 第五章 针对torus网络中恶性负载模式的解决方法
  • 5.1 研究背景
  • 5.2 解决方法1:全局自适应负载均衡路由算法GALME
  • 5.2.1 负载均衡方案
  • 5.2.1.1 全局负载均衡
  • 5.2.1.2 局部负载均衡
  • 5.2.2 死锁避免方案
  • 5.2.2.1 基于互斥性的死锁避免方案描述
  • 5.2.2.2 无死锁性证明
  • 5.2.2.3 讨论
  • 5.2.3 仿真结果与分析
  • 5.3 解决方法2:T-PSF的负载配置算法
  • 5.3.1 负载配置算法描述
  • 5.3.2 讨论
  • 5.3.3 仿真结果与分析
  • 5.4 两种解决方法的比较
  • 5.5 本章总结
  • 第六章 采用torus网络技术的PSF的扩展方案
  • 6.1 研究背景
  • 6.2 基于模块化可配置单板的扩展方案
  • 6.2.1 采用torus网络构建可扩展PSF需注意的原则
  • 6.2.1.1 合理选择torus网络的维度数
  • 6.2.1.2 合理选择torus网络各维的节点数
  • 6.2.1.3 合理选择torus网络的链路带宽
  • 6.2.2 可配置单板(Configurable Board,CB)
  • 6.2.3 用CB构建可扩展PSF的方案
  • 6.2.4 仿真结果与分析
  • 6.3 本章总结
  • 第七章 torus网络软件仿真平台的设计与实现
  • 7.1 引言
  • 7.2 torus网络软件仿真平台的需求
  • 7.3 torus网络软件仿真平台的架构
  • 7.3.1 节点功能
  • 7.3.2 链路
  • 7.3.3 拓扑的生成
  • 7.3.4 微片格式
  • 7.3.5 控制信息的传送
  • 7.3.6 仿真结果收集与统计
  • 7.4 torus网络软件仿真平台的节点模型
  • 7.4.1 路由与仲裁模块
  • 7.4.2 crossbar模块
  • 7.4.3 分组切分模块
  • 7.4.4 分组接收模块
  • 7.5 本章总结
  • 全文总结
  • 致谢
  • 参考文献
  • 个人简历
  • 作者在攻读博士学位期间发表、录用和投出的文章
  • 作者在攻读博士学位期间参加的科研项目
  • 相关论文文献

    标签:;  ;  ;  ;  ;  ;  

    作为分组交换结构的torus网络研究
    下载Doc文档

    猜你喜欢