【Interconnection Networks 互连网络】Dragonfly Topology 蜻蜓网络拓扑

DragonFly组网方案:拓扑与业务解耦的落地复盘 网络拓扑的结构化设计决定了系统的性能、可靠性与运维成本。传统组网中,拓扑一旦固定,业务扩展和链路切换都面临高风险的割接。通过将物理连接与业务转发路径解耦,引入编排层、控制层与数据层三层抽象,可以让拓扑随业务需求动态调整。SD-WAN场景中,集中转发与本地转发的选择需结合合规要求、应用类型与中心设备能力,混合策略往往能兼顾安全性与访问体验。拓扑切换则依赖SLA阈值设计、BFD毫秒级检测和灰度回滚预案,实现业务无感迁移。拓扑图自动发现与状态可视化,进一步缩短排障路径。DragonFly方案正是以技术驱动的方式, 阅读详情
AI摘要

文章详细介绍了Dragonfly拓扑的三层结构,包括路由器、组和网络系统,以及其关键参数如拓扑参数、基数、通道数量等。讨论了如何通过调整参数实现负载均衡和高度可扩展性,并提及了拓扑变体和封装局部性对性能的影响。,

蜻蜓拓扑 Dragonfly Topology

1. 拓扑参数

Dragonfly拓扑参数:

  • N N N: 网络中终端(terminal)的总数量
  • p p p: 连接到每个路由器的终端数量
  • a a a: 每组(group)中的路由器数量
  • k k k: 路由器的基数(端口数量)
  • k ′ k' k′: 组(或虚拟路由器(组内所有路由器组成))的有效基数
  • h h h: 每个路由器用于连接到其他组的通道数
  • g g g: 网络系统中的组数
  • q q q: 输出端口的队列深度
  • q v c q_{vc} qvc​: 单个输出 VC 的队列深度
  • H H H: 跳数
  • O u t i Out_{i} Outi​: 路由器输出端口 i i i

2. Topology Description 拓扑描述

Dragonfly 蜻蜓拓扑具有三层的分层网络,从小到大分别是路由器(router),组(group)和网络系统。

在这里插入图片描述

如图3所示。从底层的每个路由器出发,每个路由器连接到 p 个终端(terminal),连接到a − 1 个本地通道(local channel)(和组中每一个路由器相连),也拥有h个全局通道(global channel)去连接到其他组中的路由器。因此,每个路由器的基数radix(或度数degree)为 k = p + a + h − 1。

而对于中间层次组(group),每个组都通过组内路由器通过本地通道形成的组内互连网络组成(图 3(a))。每个组的路由器数量为 a ,都有到终端的 ap 个连接和到全局通道的 ah 个连接,并且组中的所有路由器共同充当基数为 k′ = a(p + h) 的虚拟路由器(virtual router)。

虚拟路由器的高基数 k′ >> k 使系统级网络(图 3(b))以非常低的全局直径实现。整个网络最多可以连接 g = ah + 1 个组(则整体网络的终端总数量为 N = ap(ah +1)),全局直径为 1。相比之下,直接使用基数 k 路由器构建的系统级网络将需要更大的全局直径。在最大尺寸 (N = ap(ah +1)) 蜻蜓中,每对组之间只有一个连接,在较小的蜻蜓中,每个群体的全局联系比其他群体更多。这些额外的全局连接分布在每对组上,每对组通过至少(\left\lfloor \frac{ah+1}{g}\right\rfloor )个通道连接。

蜻蜓参数 a、p 和 h 可以具有任意值。然而,为了平衡负载平衡流量上的信道负载,网络应该具有a=2p=2h。因为每个数据包沿其路由经过两个本地通道(全局通道的每一端各一个),一个全局通道和一个终端通道,因此这一比率保持平衡。由于全局通道价格昂贵,因此应配置更多的本地和终端通道的方式,以便使昂贵的全局通道保持充分利用。也就是说,网络平衡应使a≥2h,2p≥2h。

在确定了 p,a,h,g 四个参数之后我们就可以确定一个dragonfly的拓扑,因此一个Dragonfly的拓扑可以用 dfly(p,a,h,g) 来表示。g为网络中组的个数。

在这里插入图片描述

平衡蜻蜓的可扩展性如图 4 所示。通过增加有效基数(virtual router radix),蜻蜓拓扑具有高度可扩展性 - 使用 radix-64 路由器,拓扑可扩展到超过 256k 个节点,网络直径仅为三跳。任意网络可用于图 3 中的组内和组间网络。这两个网络一般都使用一维扁平蝶形或完全连接的拓扑。图 5 显示了一个简单的蜻蜓示例,其中 p = h = 2,a = 4,可扩展至 N = 72(最多网络中有9组,即N = 9x8 = 72),其中 k = 7 个路由器。通过使用虚拟路由器,有效基数从k=7增加到k′=16。

在这里插入图片描述

3. Topology Variations 拓扑变体

全局基数k’可以通过使用更高维的拓扑结构来进一步增加。还可以利用组内封装局部性(packaging locality)。

封装局部性(packaging locality)指的是在网络拓扑结构中,相邻节点之间具有更高的通信带宽或更低的延迟。这种局部性在通信模式中是很常见的,因为许多应用程序倾向于在节点之间进行频繁的通信,并且通常是在相邻的节点之间进行。通过利用封装局部性,网络设计可以优化通信性能,从而提高整体的网络效率和吞吐量。在高性能计算系统和数据中心网络中,封装局部性的利用对于减少通信延迟和提高通信效率至关重要。

例如,图6(a)中显示了一个二维扁平蝴蝶结构,它与图5中显示的组具有相同的 k’,但通过利用封装局部性为本地路由器提供更多带宽。图6(b)中使用了一个三维扁平蝴蝶结构,增加了组内的路由器数量 a,将有效基数从 k’=16 增加到 k’=32——允许使用与图3中相同的 k=7 路由器扩展到 N=272(17x16)。

为了增加高基数网络(如Dragonfly结构)的终端带宽,可以采用通道切片(channel slicing)。与其使通道变宽(这会减少路由器基数),不如将多个网络并联连接以增加容量。类似地,Dragonfly结构也可以利用并联网络来增加网络容量。此外,到目前为止描述的Dragonfly网络假设网络中所有节点具有统一带宽。然而,如果不需要这种统一带宽,可以通过移除某些组之间的组间通道来实现带宽递减。

在这里插入图片描述

References:
[1] W. J. Dally, “Performance analysis of k-ary n-cube interconnection networks,” IEEE Trans. Comput., vol. 39, no. 6, pp. 775–785, Jun. 1990, doi: 10.1109/12.53599.
[2] http://blog.sysu.tech/%E7%BD%91%E7%BB%9C/Dragonfly%E6%8B%93%E6%89%91%E7%AE%80%E4%BB%8B/

告别传统胖树:用Dragonfly拓扑构建下一代超算网络,实战参数配置指南 本文深入探讨了Dragonfly拓扑在超算网络中的应用优势,通过虚拟路由器技术和全局直径优化机制,显著降低建设成本并提升性能。文章提供了详细的参数配置指南和实战案例,帮助读者快速掌握这一革命性网络架构,适用于大规模AI训练和科学计算场景。 阅读详情

相关推荐

实战避坑:在Dragonfly拓扑中实现UGAL自适应路由时,为什么我的本地队列信息不准?

本文深入分析了Dragonfly拓扑中UGAL-L自适应路由的本地队列信息失真问题,揭示了共享本地通道、缓冲区深度与反压刚度矛盾、信用往返延迟误差三大根源,并提出了UGAL-LVC虚拟通道隔离、动态缓冲区管理等优化方案,帮助提升网络性能与稳定性。

weixin_30781775的博客 363

超算网络常见组网拓扑

高性能计算场景的流量关注静态时延的同时需要支持超大规模组网。然而传统的CLOS架构作为主流网络架构,主要关注通用性,牺牲了时延和性价比。业界针对该问题开展了多样的架构研究和新拓扑的设计,Fat-Tree、Dragonfly、Torus是几种常见的网络拓扑,Fat-Tree架构实现无阻塞转发,Dragonfly架构网络直径小,Torus具有较高的扩展性和性价比。Fat-Tree胖树架构传统的树...

关注微信公众号【开源Linux】,后台回复『10T』,领取10T学习资源大放送,涵盖Linux、虚拟化、容器、云计算、网络、Python、Go等书籍和视频 3042

从零理解Dragonfly拓扑:为什么你的高性能计算网络需要它?

本文深入解析Dragonfly拓扑在高性能计算网络中的革命性优势。相比传统Fat-Tree结构,Dragonfly通过三级层次化架构和自适应路由算法,实现常数级跳数和90%+链路利用率,显著降低网络成本与延迟。结合全球超算中心案例,揭示其如何解决大规模集群的网络扩展瓶颈,为AI训练和科学计算提供高效解决方案。

weixin_30416871的博客 502

Dragonfly 拓扑的路由算法

John Kim, William J. Dally 等人在 2008 年的 ISCA 中提出技术驱动、高度可扩展的 Dragonfly 拓扑。而文章中也提到了 针对 Dragonfly 拓扑的路由算法。本文对其中提到的路由算法进行汇总归纳。主要是讨论蜻蜓拓扑的最小和非最小路由算法。

Messiah___的博客 2437

蜻蜓算法DA原理与MATLAB实现详解

说到群体智能,你可能更熟悉鸟群或蚁群。但蜻蜓的独特之处在于——它的行为更加动态、灵活,且具备明确的趋利避害机制。试想一下:一只蜻蜓在空中巡逻时,必须同时处理五种信息流:避开邻居(别撞上!)→ 分离跟上队伍速度(保持队形)→ 对齐不掉队(靠近群体中心)→ 聚集发现猎物就冲过去→ 食物吸引看到天敌赶紧跑→ 天敌回避这五个动作看似简单,组合起来却能产生极其复杂的集体行为。就像你在早高峰地铁站里,既能前进又不会踩到别人脚——没人指挥,却秩序井然。

weixin_42524864的博客 1166

GD32F303串口DMA发送数据避坑指南:为什么你的发送函数会卡住?

本文深入解析GD32F303单片机串口DMA发送数据时常见的卡死问题,提供详细的避坑指南。从DMA传输完成中断时序、发送状态管理到双通道DMA的特别注意事项,全面剖析问题根源并给出解决方案,帮助开发者构建健壮的DMA发送机制。

weixin_27038245的博客 295

Dragonfly算法及其在应用科学调查中的应用

在这项工作中,对算法及其变体进行了概述。此外,还讨论了该算法的杂交版本。此外,在以下领域提供了利用蜻蜓算法在应用科学中的应用结果:机器学习、图像处理、无线和网络。然后将其与其他一些元启发式算法进行比较。此外,该算法还在CEC-C06 2019基准函数上进行了测试。结果证明,该算法具有很强的探索能力,收敛速度优于文献中的其他算法,如粒子群算法和遗传算法。总之,在本综述中,讨论了该算法的优缺点。此外,还推荐了一些有助于改进算法弱点的未来工作。本研究旨在为想要研究蜻蜓算法的研究人员提供有关蜻蜓算法的有益信息。

weixin_51392371的博客 442

实战分享:如何用YOLOv5s+BIFPN高效检测隧道裂缝(附数据集获取)

本文详细介绍了如何利用YOLOv5s结合BIFPN(双向特征金字塔网络)构建高效的隧道裂缝智能检测系统。文章从高质量数据集构建、针对性数据增强、模型架构选型与调优,到工程化部署全链路进行了实战分享,旨在为基础设施自动化巡检提供兼顾精度与速度的解决方案。

weixin_29062823的博客 380

003、AI集群典型网络拓扑:Fat-Tree、Dragonfly+与混合架构

摘要:AI训练集群的网络拓扑选型直接影响性能表现。胖树(CLOS)结构通过多级ECMP实现无阻塞通信,适合小规模集群但成本较高;蜻蜓(Dragonfly)拓扑利用低跳数优势,但对流量均衡性要求严格。实际部署常采用混合架构(Pod内胖树+Pod间蜻蜓),需特别注意链路带宽配比和路由策略。选型需综合考虑规模、流量模式、容错及预算等因素,并预留足够监控手段。实践经验表明,拓扑设计需匹配芯片级配置,任何环节失误都可能导致性能大幅下降,建议提前仿真并保留20%余量。

2601_95651806的博客 883

【笔记】使用OrCAD对电路进行蒙特卡洛分析和最坏分析

使用OrCAD对电路进行蒙特卡洛分析和最坏分析

fang_dz999的博客 3147

NLP-Beginner 任务一:基于机器学习的文本分类(超详细!!)

NLP-Beginner 任务一:基于机器学习的文本分类传送门一. 介绍1.1 任务简介1.2 数据集1.3 流程介绍二. 特征提取2.1 词袋特征(Bag-of-word)2.2 N元特征 (N-gram)三. 最优化求解3.1 Softmax回归介绍3.2 损失函数3.3 梯度下降3.4 学习率四. 代码及实现4.1 实验设置4.2 结果展示4.3 代码新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、

0oTedo0 9934

适用场景全新升级!扩展 Dragonfly2 作为分布式缓存系统架构 | 龙蜥技术

在有些场景中,分发的数据是某个节点上生成的,不存在一个远端的源地址,所以我们希望 Dragonfly 能够增加对这种场景的支持。本文也介绍了其测试方法和效果,欢迎点击观看~

weixin_60347558的博客 747

[kriging](一)网上下载的kriging克里金的C++程序的初步调试

笔者在网上下载了一份克里金的C++程序,水平有限,正在逐步地调试中。 初步 克里金法现在在许多软件都已经有集成了,据笔者所知: arcgis : 看过有的arcgis培训视频里面简略介绍了里面的插值方法,有克里金。 surfer :笔者用过这个,效果很好。 gocad :听说有 landmark &jason :研究生时候用的专业的石油物探软件,里面有克里金法,万恶的开始。 pykrig...

FOREST优快云 5612

Dragonfly:高性能、易用的微服务框架

是一个专为构建高效、可扩展的微服务架构设计的开源框架。它以其独特的特性和强大的功能,让开发者能够轻松地创建和管理复杂的分布式系统。本文将深入探讨Dragonfly的核心技术、应用场景及其优势,以期吸引更多用户加入到这个社区中。 ## 项目简介 Dragonfly的设计目标是简化微服务开发过程,提供一套完整的工具链,包括服务注册、发现、路由、监控以及治理。通过优雅的API和灵活的配置选项,使得它

gitblog_00088的博客 875

SCADA|用KingSCADA实现设备台账的查询功能

以上为用KingSCADA实现设备台账的查询功能,另外还有一些细节功能,比如当点击增加按钮时弹出的信息窗口内的信息希望是在选中的某行信息,只要找到差不多的设备,修改个别参数即可,避免增加时弹出空白页,所有信息都需要填写。以上为实现设备台账查询的最简单实现,实际项目中可能会更复杂,你做过哪些设备台账或相关的功能,有比较好的创意或高难度功能方法,欢迎在留言区评论,或在交流群探讨,互通有无,共同进步。首先完成界面的组态工作,主要是通过查询按钮,查询SQLServer数据库的设备台账数据,然后填充到报表内。

做有价值的事,积累有价值的笔记! 480

吊打BEVFormer!GaussianBeV实战:用3D高斯开启BEV分割新范式

GaussianBeV是一种基于3D高斯建模的BEV分割新方法,在自动驾驶感知任务中实现了SOTA性能。其核心创新在于将场景元素表示为3D高斯分布,通过均值、协方差和权重精确描述物体位置、形状和置信度,相比传统BEV方法具有更强的空间建模能力。文章详细介绍了GaussianBeV的原理、环境配置、训练推理流程及其在自动驾驶和城市3D重建中的应用,并讨论了优化方向和未来发展趋势。该方法在nuScenes等数据集上表现出色,为BEV分割任务提供了新的解决方案。

m0_71589036的博客 106

万卡集群:揭秘千亿大模型背后的“超级大脑”架构

训练集群架构是支撑大模型训练的基础设施,涉及 GPU 服务器、高速网络、存储系统和管理平台。本文从训练集群的设计动机出发,分析集群拓扑设计、网络架构、存储系统和管理平台,以及在千亿级模型训练中的工程实践。

深耕人工智能底层逻辑,专注大模型架构、分布式训练与推理优化。在这里,不贩卖焦虑,只拆解硬核技术。从Transformer的数学之美到Agent的工程落地,用代码和论文说话,记录在AI浪潮中探索技术边界的每一步的专栏 447

【K8S系列】Kubernetes 中 Service 的流量不均匀问题【已解决】

在 Kubernetes 中,Service 是一种抽象,用于定义一组 Pod 的访问策略。当某些 Pod 接收的流量过多,而其他 Pod 的流量较少时,可能会导致负载不均衡。这种情况不仅影响性能,还可能导致某些 Pod 过载,影响应用的可用性。本文将详细分析此问题的原因及其解决方案。

颜淡慕潇 8739

ADOP带你了解:超越传统:智算中心网络如何推动AI的极限

人工智能主流应用场景及算力需求 人工智能领域包括8大重要应用场景,包括:识别检测、语音交互、AI芯片、自动驾驶、机器人、视频解析、人机协同、机器翻译、精准推荐等。每类场景对算力的要求不同。以人工智能最常应用的三大类场景为例,在应用于安防、医疗诊断和自动驾驶等领域的图像检测和视频检索场景中,以卷积网络为主要算力需求;在博弈决策类应用场景中,以强化学习为主要算力需求;在新基建大型计算机场景中,以自然语音处理为主要算力需求。人工智能领域涉及较多的矩阵、向量的乘法和加法,专用性高,对算力消耗大,不适合用通用CPU

ADOP_的博客 2027

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Dragonfly 最新版本 v2.0.9 发布

文|戚文博(花名:百蓦)DragonflyMaintainer蚂蚁集团软件工程师主要负责「基于 P2P 的文件以及镜像加速系统」。本文5005字 阅读13分钟Dragonfly 最新正式版本 v2.0.9 已经发布!感谢 Dragonfly 的贡献者们,同时也感谢默默支持 Dragonfly 项目的各个公有云团队。欢迎访问 d7y.io[1]网站来了解详情,下面具体介绍 v2.0.9 ...

金融级分布式架构 910

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Dragonfly网络协议解析:HTTP和自定义协议实现终极指南

Dragonfly作为一款高性能的P2P文件分发系统,其网络协议设计是系统性能优化的关键所在。本文将深入解析Dragonfly项目中HTTP协议和自定义协议的实现原理,帮助开发者全面理解这一分布式系统的通信机制。🚀 ## 网络协议架构概览 Dragonfly的网络协议架构采用分层设计,主要分为**HTTP协议层**和**自定义协议层**。通过[pkg/protocol/distributio

gitblog_00853的博客 1008

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

DragonflyDB网络协议:TCP优化技术详解

DragonflyDB作为新一代高性能内存数据库,在网络协议层面进行了深度优化,特别是在TCP协议栈的处理上实现了多项技术创新。本文将深入解析DragonflyDB在网络协议层面的优化技术,帮助开发者理解其高性能背后的技术原理。 ## TCP连接优化策略 ### TCP_NODELAY选项 DragonflyDB默认启用TCP_NODELAY选项,这是提升网络性能的关键配置: ```cpp...

gitblog_00977的博客 441

从零到一:Dragonfly拓扑路由算法实战解析

本文深入解析Dragonfly拓扑路由算法在高性能计算和数据中心网络中的应用。从基础原理到高级自适应策略(如UGAL系列算法),详细探讨了如何优化路由选择以平衡延迟与吞吐量。通过实际案例展示不同场景下的部署经验,为网络工程师提供从理论到实践的全面指导。

weixin_28683391的博客 404

超算中心典型网络组网拓扑分析

超算网络常见组网拓扑分析

2618

Dragonfly多机部署实战指南:构建高效P2P镜像分发网络

Dragonfly多机部署实战指南:构建高效P2P镜像分发网络 前言 在现代容器化环境中,镜像分发效率直接影响着应用的部署速度。传统中心化的镜像分发方式在面对大规模集群时常常成为性能瓶颈。Dragonfly作为一款开源的P2P文件分发系统,通过智能的P2P网络技术显著提升了镜像分发效率。本文将详细介绍如何在多机环境中部署Dragonfly系统,构建高效的镜像分发网络。 核心概念解析 在开始部署前,...

gitblog_00302的博客 572

Dragonfly架构设计原理揭秘:为什么它能提升下载速度300%

Dragonfly是一个基于P2P和CDN混合架构的智能文件分发系统,通过创新的分布式设计实现了惊人的下载速度提升。作为阿里巴巴开源的高性能文件分发解决方案,Dragonfly已在众多知名企业中广泛应用,包括阿里巴巴集团、菜鸟网络、华为等大型互联网公司。 ## 核心架构设计:P2P+CDN混合模式 Dragonfly的核心架构包含两个主要角色:**Supernode**和**Dfclient*

gitblog_00724的博客 580
上一篇: 【Booksim】Booksim2.0模拟器集成新拓扑
下一篇: 【Interconnection Networks 互连网络】Flattened Butterfly 扁平蝶形拓扑
正在輸入......
博客等级 码龄7年 637粉丝 54原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

正在輸入......

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值