分布式网络系统

文档序号:1819820 发布日期:2021-11-09 浏览:15次 >En<

阅读说明:本技术 分布式网络系统 (Distributed network system ) 是由 邱帅兵 李兆耕 刘小军 高峰 于 2021-09-14 设计创作,主要内容包括:本公开提供了一种分布式网络系统,涉及云计算技术领域,尤其涉及分布式计算技术领域和机器学习技术领域。具体实现方案为:N个脊交换机集合,每个脊交换机集合包括多个脊交换机组,每个脊交换机组包括多个脊交换机;与N个脊交换机集合一一对应设置的N个叶交换机集合,每个叶交换机集合包括多个叶交换机组,每个叶交换机组包括多个叶交换机,第i叶交换机集合中的叶交换机与第i脊交换机集合中的脊交换机全连接;以及与N个叶交换机集合一一对应设置的N个单元,第i单元包括多个架顶交换机和多个服务器,第i单元的多个服务器与第i单元的多个架顶交换机全连接,第i单元的多个架顶交换机与第i叶交换机集合中的叶交换机全连接。(The disclosure provides a distributed network system, relates to the technical field of cloud computing, and particularly relates to the technical field of distributed computing and the technical field of machine learning. The specific implementation scheme is as follows: n spine switch sets, each spine switch set comprising a plurality of spine switch groups, each spine switch group comprising a plurality of spine switches; the leaf switch sets are arranged in one-to-one correspondence with the N spine switch sets, each leaf switch set comprises a plurality of leaf switch groups, each leaf switch group comprises a plurality of leaf switches, and leaf switches in the ith leaf switch set are fully connected with spine switches in the ith spine switch set; and N units which are arranged in one-to-one correspondence with the N leaf switch sets, wherein the ith unit comprises a plurality of top rack switches and a plurality of servers, the plurality of servers of the ith unit are fully connected with the plurality of top rack switches of the ith unit, and the plurality of top rack switches of the ith unit are fully connected with the leaf switches in the ith leaf switch set.)

分布式网络系统

技术领域

本公开涉及云计算技术领域,尤其涉及分布式计算

技术领域

和机器学习技术领域。

背景技术

随着人工智能(Artificial Intelligence,AI)时代的到来,深度机器学习取得重大技术突破,模型参数规模朝向千亿、万亿量级发展。单台服务器的计算能力是固定的,万亿参数规模的模型需要使用万卡规模的分布式AI集群进行训练。

发明内容

本公开提供了一种分布式网络系统。

根据本公开的一方面,提供了一种分布式网络系统,包括:N个脊交换机集合,其中,N为大于1的整数,每个脊交换机集合包括多个脊交换机组,每个脊交换机组包括多个脊交换机;与所述N个脊交换机集合一一对应设置的N个叶交换机集合,每个叶交换机集合包括多个叶交换机组,每个叶交换机组包括多个叶交换机,第i叶交换机集合中的叶交换机与第i脊交换机集合中的脊交换机全连接,i=1,......,N;以及与所述N个叶交换机集合一一对应设置的N个单元,第i单元包括多个架顶交换机和多个服务器,所述第i单元的多个服务器与所述第i单元的多个架顶交换机全连接,所述第i单元的多个架顶交换机与第i叶交换机集合中的叶交换机全连接。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本公开的限定。其中:

图1示意性示出了根据本公开的实施例的分布式网络系统的示意图;

图2示意性示出了根据本公开的实施例的单元的示意图;

图3示意性示出了根据本公开的实施例的单元与对应的叶交换机之间的连接方式示意图;

图4示意性示出了根据本公开的实施例的叶交换机与对应的脊交换机之间的连接方式示意图;

图5示意性示出了根据本公开的实施例的架顶交换机的示意图;以及

图6示意性示出了根据本公开的实施例的叶交换机的示意图。

具体实施方式

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

本公开的技术方案中,所涉及的数据的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。

本公开提供了一种分布式网络系统,该分布式网络系统可以包括N个脊交换机集合、与N个脊交换机集合一一对应设置的N个叶交换机集合以及与N个叶交换机集合一一对应设置的N个单元。其中,N为大于1的整数。

根据本公开的实施例,每个脊交换机集合可以包括多个脊交换机组,每个脊交换机组包括多个脊交换机。每个叶交换机集合可以包括多个叶交换机组,每个叶交换机组可以包括多个叶交换机。第i叶交换机集合中的叶交换机与第i脊交换机集合中的脊交换机全连接,i=1,......,N。第i单元可以包括多个架顶交换机和多个服务器。第i单元的多个服务器与第i单元的多个架顶交换机全连接。第i单元的多个架顶交换机与第i叶交换机集合中的叶交换机全连接。

根据本公开的实施例的分布式网络系统,能够实现网络无阻塞通信,可以适用于规模达到万卡级别的分布式集群。另外,该分布式网络系统可以应用于分布式AI训练集群,可以灵活适配不同的模型训练算法。

下面结合图1和具体实施例对上述交换机分布式网络系统作进一步说明。

图1示意性示出了根据本公开的实施例的分布式网络系统的示意图。

如图1所示,该分布式网络系统100包括多个脊交换机集合110。每个脊交换机集合110可以包括多个脊交换机(SP)。本实施例中,脊交换机例如可以包括SP001、SP002、......SP256。每个脊交换机集合110可以对应于一个叶交换机集合120。多个叶交换机组中的每个叶交换机组包括多个叶交换机(LE)。本实施例中,叶交换机例如可以包括LE1、LE2、......LE64。每个脊交换机集合110中的脊交换机与对应的叶交换机集合中的叶交换机之间可以采用全连接(full mesh)的方式连接,即每个脊交换机集合110中的每个脊交换机可以分别与对应的叶交换机集合120中的每个叶交换机相连。

每个叶交换机集合120可以对应于多个单元(Unit)130。以上述多个叶交换机集合120中的一个叶交换机集合120为例,该叶交换机集合120可以对应于Unit1、Unit2、......Unit8。每个单元130可以包括多个架顶交换机(ToR)和多个服务器。示例性地,本实施例中,每个单元130例如可以包括架顶交换机ToR1、ToR2、......ToR8以及服务器1、2......8。每个单元130中的每个服务器可以分别与同单元内的每个架顶交换机相连。每个叶交换机集合120中的叶交换机可以与对应的多个架顶交换机之间采用全连接的方式连接,即每个叶交换机集合120中的每个叶交换机可以分别与对应的每个架顶交换机相连。

根据本公开的实施例,每个服务器可以包括多个处理器和多个网络接口(简称网口),其中,处理器例如可以包括图像处理器(GPU)、中央处理器(CPU)等。该多个处理器与多个网口一一对应。多个处理器可以经由多个网口与多个架顶交换机相连。处理器可以经由对应的网口向该处理器所在服务器的外部发送数据或接收来自外部的数据。

根据本公开的实施例,服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(Virtual PrivateServer,或简称VPS)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

根据本公开的实施例,可以将多个叶交换机集合和与该多个叶交换机集合对应的Unit划分为POD,即每个POD包括多个叶交换机集合和多个Unit,从而将分布式网络系统划分为Unit和POD两个层级。在Uint层级,考虑到服务器端的转发特性,同一服务器内的通信可以经过服务器中的总线进行,其中总线例如可以包括NVlink。在POD层级,考虑到架构的高稳定性和容错性,可以将POD内部每k个交换机作为一组,其中,k为大于1的整数,每组内的交换机互为备份,从而可以提高网络冗余性和可靠性。

基于此,根据本公开的实施例,可以将每个脊交换机集合中的脊交换机分成多个脊交换机组。多个脊交换机组中的每个脊交换机组包括多个脊交换机。每个脊交换机组中的脊交换机可以互为彼此的冗余交换机。示例性地,本实施例中,可以将脊交换机集合中的每两个脊交换机组成一个脊交换机组,例如,SP001和SP002可以组成一个脊交换机组,SP003和SP004可以组成一个脊交换机组,......SP255和SP256可以组成一个脊交换机组。

根据本公开的实施例,可以将每个叶交换机集合中的叶交换机分成多个叶交换机组。每个叶交换机组中的叶交换机可以互为彼此的冗余交换机。示例性地,本实施例中,可以将叶交换机集合中的每两个叶交换机组成一个叶交换机组,例如,LE1和LE2可以组成一个叶交换机组,LE3和LE4可以组成一个叶交换机组,......LE 63和LE 64可以组成一个叶交换机组。

万亿参数规模的机器学习模型具有更高的精确性,但是也使得模型训练时间较长,给分布式AI训练集群带来了更严峻的挑战。相关技术中,以太网络中数据流的传递依靠五元组(包括源IP、目的IP、源端口号、目的端口号和协议)进行哈希计算。然而五元组进行哈希计算的结果会有很大的概率出现哈希冲突,导致网络中不同的数据流发送到同一路径。对于万卡规模的分布式AI集群,网络中的哈希冲突更严重,从而造成模型训练性能的不稳定。此外,万亿参数规模的模型训练时间较长,有时长达几周甚至几个月。在模型训练期间一旦出现端到端中断的状况,模型训练的进程就会受到影响,导致丢失部分参数,更有甚者会导致模型训练失败。

根据本公开的实施例的分布式网络系统,可以采用PBR(Policy Based Routing,策略路由)以及BGP(Border Gateway Protocol,边界网关协议)的路由策略。通过这种路由策略,可以既可以保证分布式网络系统中数据转发路径的唯一性,避免哈希冲突,又可以提高数据包转发的灵活和实时可变性。另外,还可以减少网络中的拥塞。

基于此,根据本公开的实施例,处理器可以被配置为向与处理器相连的网络接口发送原始数据。网络接口可以被配置为接收来自处理器的原始数据,根据原始数据生成目标数据,并向与网络接口相连的架顶交换机发送目标数据,其中,目标数据包括源地址信息和目的地址信息。源地址信息可以用于表示目标数据来源的地址信息,例如可以包括源IP和源端口号,目的地址信息可以用于表示目标数据目的地的地址信息,例如可以包括目的IP和目标端口号。

根据本公开的实施例,架顶交换机可以被配置为接收来自网络接口的目标数据,其中,目标数据包括源地址信息和目的地址信息。然后,在目的地址信息不属于架顶交换机所属的第一子网的情况下,确定与源地址信息对应的第一端口,并将目标数据通过第一端口发送至与第一端口连接的目标叶交换机。在目的地址信息属于第一子网的情况下,确定与目标地址信息对应的目标服务器,并将目标数据发送至目标服务器。

根据本公开的实施例,叶交换机可以被配置为通过叶交换机的第一端口接收目标数据,其中,目标数据包括源地址信息和目的地址信息。然后,在目的地址信息不属于叶交换机所属的第二子网的情况下,确定与接收目标数据的第一端口对应的第二端口,将目标数据通过第二端口发送至与第二端口相连的目标脊交换机。

根据本公开的实施例,脊交换机可以被配置为接收目标数据,其中,目标数据包括源地址信息和目的地址信息。然后确定与目的地址信息对应的目标叶交换机,将目标数据通过发送至目标叶交换机。

下面结合图2和具体实施例对上述单元作进一步说明。

图2示意性示出了根据本公开的实施例的单元的示意图。本领域技术人员可以理解,以下示例实施例仅用于理解本公开,本公开并不局限于此。

如图2所示,该单元200例如可以包括8个架顶交换机ToR 211、212、......218,以及32个服务器2201、2202、......2232。

根据本公开的实施例,每个服务器可以包括网口1、网口2、......网口8,以及处理器1、处理器2、......处理器8。其中,处理器1、处理器2、......处理器8可以分别与网口1、网口2、......网口8一一相连,例如处理器1与网口1相连,处理器2与网口2相连,......处理器8与网口8相连。

根据本公开的实施例,每个服务器中的网口1、2、......8可以与架顶交换机211、212、......218一一相连。例如,每个服务器中的网口1可以分别与架顶交换机211相连,每个服务器中的网口2可以分别与架顶交换机212相连,......每个服务器中的网口8可以分别与架顶交换机218相连。

下面结合图3和具体实施例对上述单元与对应的叶交换机之间的连接方式作进一步说明。本领域技术人员可以理解,以下示例实施例仅用于理解本公开,本公开并不局限于此。

图3示意性示出了根据本公开的实施例的单元与对应的叶交换机之间的连接方式示意图。

如图3所示,单元可以包括架顶交换机ToR1、ToR2、......ToR8。叶交换机集可以包括叶交换机LE1、LE2、......LE64。根据本公开的实施例,ToR1、ToR2、......ToR8与LE1、LE2、......LE64之间可以采用全连接的形式连接。即,ToR1、ToR2、......ToR8中的每一个可以分别与LE1、LE2、......LE64相连。

下面结合图4和具体实施例对上述叶交换机与对应的脊交换机之间的连接方式作进一步说明。本领域技术人员可以理解,以下示例实施例仅用于理解本公开,本公开并不局限于此。

图4示意性示出了根据本公开的实施例的叶交换机与对应的脊交换机之间的连接方式示意图。

如图4所示,叶交换机集可以包括叶交换机LE1、LE2、LE3、LE4......。脊交换机集可以包括脊交换机SP1、SP2、SP3、SP4......。根据本公开的实施例,LE1、LE2、LE3、LE4......与SP1、SP2、SP3、SP4......之间可以采用全连接的形式连接。即,SP1、SP2、SP3、SP4......中的每一个可以分别与SP1、SP2、SP3、SP4......相连。

下面结合图5和具体实施例对上述架顶交换机作进一步说明。本领域技术人员可以理解,以下示例实施例仅用于理解本公开,本公开并不局限于此。

根据本公开的实施例,架顶交换机可以包括a个下层端口和b个上层端口,其中,a、b均为大于1的整数。下层端口可以连接各服务器网络接口,用于接收来自服务器网络接口的数据,或向服务器网络接口发送数据。上层端口可以连接各叶交换机,可以用于接收来自叶交换机的数据,或向叶交换机发送数据。

根据本公开的实施例,在叶交换机集合中设置有冗余交换机的情况下,叶交换机集合被分为多个叶交换机组的所有叶交换机,基于此,架顶交换机的每个下层端口可以对应一个叶交换机组。当下层端口接收到来自服务器的数据时,可以经由对应的上层端口,向对应叶交换机组中的所有叶交换机转发该数据。

图5示意性示出了根据本公开的实施例的架顶交换机的示意图。

示例性地,如图5所示,架顶交换机ToR1可以包括8个下层端口,即下层端口1、2、......8,和16个上层端口,即上层端口1、2、......16。其中,每个下层端口可以对应于两个上传端口。例如,下层端口1对应于上层端口1、2,下层端口2对应于上层端口3、4。下层端口1、2、......8分别连接服务器1、2、......8的网络端口。

示例性地,本实施例中,叶交换机集可以包括叶交换机LE1、LE2、......LE8。其中,LE1、LE2、......LE8中每两个叶交换机可以组成一个叶交换机组。ToR1的上层端口1、2、......8可以分别连接叶交换机LE1、LE2、......LE8。示例性地,当下层端口1接收到来自服务器1的数据时,可以经由上层端口1、2向LE1、LE2转发该数据。当上层端口1接收到来自LE1的数据或上层端口2接收到来自LE2的数据时,可以经由下层端口1,向服务器1转发该数据。类似地,ToR1的其他下层端口和上层端口也可以在服务器和叶交换机之间传输数据。

下面结合图6和具体实施例对上述叶交换机作进一步说明。本领域技术人员可以理解,以下示例实施例仅用于理解本公开,本公开并不局限于此。

根据本公开的实施例,叶交换机可以包括c个下层端口和d个上层端口,其中,c、d均为大于1的整数。下层端口可以连接各架顶交换机,用于接收来自架顶交换机的数据,或向架顶交换机发送数据。上层端口可以连接各脊交换机,可以用于接收来自脊交换机的数据,或向脊交换机发送数据。

根据本公开的实施例,在脊交换机集合中设置有冗余交换机的情况下,脊交换机集合被分为多个脊交换机组。基于此,叶交换机的每个下层端口可以对应一个脊交换机组中的所有脊交换机。当下层端口接收到来自架顶交换机的数据时,可以经由对应的上层端口,向对应脊交换机组中的所有脊交换机转发该数据。

图6示意性示出了根据本公开的实施例的叶交换机的示意图。

示例性地,如图6所示,叶交换机LE1可以包括8个下层端口,即下层端口1、2、......8,和16个上层端口,即上层端口1、2、......16。其中,每个下层端口可以对应于两个上传端口。例如,下层端口1对应于上层端口1、2,下层端口2对应于上层端口3、4。下层端口1、2、......8分别连接架顶交换机ToR1、ToR2、......ToR8。

示例性地,本实施例中,脊交换机集可以包括脊交换机SP1、SP2、......SP8。其中,SP1、SP2、......SP8中每两个脊交换机可以组成一个脊交换机组。LE1的上层端口1、2、......8可以分别连接脊交换机SP1、SP2、......SP8。示例性地,当下层端口1接收到来自ToR1的数据时,可以经由上层端口1、2向SP1、SP2转发该数据。当上层端口1接收到来自SP1的数据或上层端口2接收到来自SP2的数据时,可以经由下层端口1,向ToR1转发该数据。类似地,叶交换机LE1的其他下层端口和上层端口也可以在脊交换机和架顶交换机之间传输数据。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种数据传输方法、系统、存储介质及设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!