在高性能计算环境中允许多个全局标识符子网前缀值同时用于传入分组处理的系统和方法技术方案

技术编号:35863485 阅读:17 留言:0更新日期:2022-12-07 10:54
本申请涉及在高性能计算环境中允许多个全局标识符子网前缀值同时用于传入分组处理的系统和方法。由第一主机通道适配器(HCA)从网络架构接收分组。分组具有报头部分,该报头部分包括识别网络架构的目的地子网的目的地子网前缀。网络HCA被允许通过选择性地确定标志的逻辑状态并且根据标志的预定逻辑状态选择性地忽略识别网络架构的目的地子网的目的地子网前缀来从网络HCA的端口接收第一分组。地子网前缀来从网络HCA的端口接收第一分组。地子网前缀来从网络HCA的端口接收第一分组。

【技术实现步骤摘要】
在高性能计算环境中允许多个全局标识符子网前缀值同时用于传入分组处理的系统和方法
[0001]版权声明
[0002]本专利文档公开内容的一部分包含受版权保护的素材。版权拥有者不反对任何人对专利文档或专利公开内容按照在专利商标局的专利文件或记录中出现得那样进行的传真复制,但是除此之外在任何情况下都保留所有版权。
[0003]本申请是申请日为2017年1月27日、专利技术名称为“用于在高性能计算环境中允许多个全局标识符(GID)子网前缀值同时用于传入分组处理的系统和方法”的中国专利申请201780002937.4的分案申请。


[0004]本文的实施例一般而言涉及计算机系统,并且特别地涉及提供网络环境中的网络交换功能。

技术介绍

[0005]随着更大的云计算体系架构的推出,与传统网络和存储相关联的性能和管理瓶颈已成为重要的问题。人们对使用诸如InfiniBand(IB)技术等高性能无损互连作为云计算架构的基础越来越感兴趣。
[0006]单个IB子网中的48K单播本地标识(LID)值空间表示在端节点的数量方面对子网尺寸的限制。当虚拟化主机通道适配器(HCA)提供多个虚拟HCA实例,其中每个这种虚拟HCA实例可以被配置为具有用于每个虚拟端口的独立的LID时,这个限制是特别重要的。
[0007]IB标准规范定义了路由器节点,以便允许多个子网在相同的IB架构内连接,并且基于架构宽度128位目的地全局标识符(DGID)地址值到用于每个中间子网以及用于最终目标子网的16位目的地LID(DLID)地址的映射来支持分组转发。
[0008]但是,在IB线速度下将128位DGID值映射到16位DLID值需要复杂的基于内容可寻址存储器(CAM)的查找硬件,该查找硬件在可以被唯一查找的各个DGID的数量方面(即在硬件实现的合理成本/复杂性约束内)具有有限的可扩展性。这意味着为了扩展到大量的各个目的地,128位DGID值到16位DLID值的映射必须是灵活的,并且必须能够使用分层方案,使得大量的各个DGID地址可以经由单个查找条目进行映射。
[0009]但是,虽然分层映射结构表示在可以被表示的子网和端节点的总数方面的可伸缩性,但是它也表示对独立地路由各个目的地以便为整个多子网架构中的不同流和工作负载维持负载均衡和QOS约束的能力的严重限制。
[0010]此外,InfiniBand(IB)规范要求HCA能够接收具有全局路由报头(GRH)的分组,其中传入GRH的目的地GID(DGID)的子网前缀是或者默认前缀或者已经由本地子网管理器(SM)分配给相关HCA端口的单个前缀。虽然这允许在允许子网从使用默认前缀迁移到使用分配的前缀方面的灵活性,但是它并没有解决在运行时动态改变分配的前缀值的问题。这种情况也不允许全局架构实现为了控制每个都具有一个或多个固定全局唯一标识符
(GUID)值的一个或多个端节点的路由而使用多个子网前缀值。
[0011]这是所要求保护的专利技术的实施例旨在解决的一般领域。

技术实现思路

[0012]本文描述的是可以支持子网前缀的动态更新以及使用多个前缀值来表示通过架构的多条路径以及在对现有数据连接和现有数据流影响最小的情况下动态更新这些路径的系统和方法。示例性的系统和方法提供HCA选择性地忽略目的地GID(DGID)中的子网前缀值的能力。HCA选择性地忽略DGID中的子网前缀值的能力支持动态更新子网前缀。HCA选择性地忽略DGID中的子网前缀值的能力还支持使用多个前缀值来表示通过架构的多条路径以及在对现有数据连接和现有数据流的影响最小的情况下动态更新这些路径。示例性系统和方法可以应用于使用子网内和子网间地址解析的高性能计算环境中,诸如用于中间件和应用执行的工程化系统或中间件机器环境,从而在高性能计算环境中使用用于线性转发表(LFT)查找的全局路径报头(GRH)中的子网前缀值。示例性系统和方法也可以应用于其它高性能计算环境。
附图说明
[0013]图1示出了根据实施例的InfiniBand环境的图示。
[0014]图2示出了根据实施例的分区集群环境的图示。
[0015]图3示出了根据实施例的网络环境中的树形拓扑的图示。
[0016]图4示出了根据实施例的示例性共享端口体系架构。
[0017]图5示出了根据实施例的示例性vSwitch体系架构。
[0018]图6示出了根据实施例的示例性vPort体系架构。
[0019]图7示出了根据实施例的具有预填充的LID的示例性vSwitch体系架构。
[0020]图8示出了根据实施例的具有动态LID分配的示例性vSwitch体系架构。
[0021]图9示出了根据实施例的具有动态LID分配和预填充的LID的具有vSwitch的示例性vSwitch体系架构。
[0022]图10示出了根据实施例的示例性多子网InfiniBand架构。
[0023]图11示出了根据实施例的使用InfiniBand(IB)寻址来访问网络环境中的数据服务的数据分组格式的图示。
[0024]图12示出了根据实施例的用于子网内和子网间转发的线性转发表(LFT)的示例性部分。
[0025]图13示出了根据实施例的转发域的图示。
[0026]图14示出了根据实施例的将分组报头从GRH/ISRN寻址模式格式修改为基于LRH/DLID的转发格式的图示。
[0027]图15是根据实施例的提供定义用于将分组转发从LRH/DLID寻址模式改变为GRH/ISRN寻址模式的特殊交换机端口边界的机制的交换机的图示。
[0028]图16是根据实施例的用于使用用于子网内和子网间转发两者的线性转发表查找的分组报头的方法的流程图。
[0029]图17是根据实施例的提供允许多个GID子网前缀值同时用于传入的IB分组的机制
的交换机的图示。
[0030]图18示出了根据实施例的转发域和转发路径的图示。
[0031]图19是根据实施例的用于允许多个GID子网前缀值同时用于传入的IB分组的方法的流程图。
具体实施方式
[0032]在附图的各图中通过示例而非限制的方式图示了示例实施例,附图中相同的标号指示类似的元件。应当注意的是,在本公开中对“一个”或“一些”实施例的引用不一定是相同的实施例,并且这种引用意味着至少一个。虽然讨论了特定的实现,但是应当理解的是,特定实现仅仅是为了说明性目的而提供。相关领域的技术人员将认识到,在不脱离所要求保护的专利技术的范围和精神的情况下,可以使用其它部件和配置。
[0033]贯穿附图和具体实施方式可以使用共同的标号来指示相同的元素;因此,如果元素在其它地方进行了描述,那么在图中使用的标号可以或可以不在特定于该图的具体描述中引用。
[0034]本文描述的是同时支持多个全局标识符(GID)子网前缀值的系统和方法。应该认识到的是,同时允许多个GID子网前缀值除其它之外还有利地使得能够进行子网内和子网本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在高性能计算环境中在网络环境中使用全局标识子网前缀值的方法,所述方法包括:在所述高性能计算环境中提供网络架构中的第一本地子网,所述第一本地子网包含第一网络主机通道适配器(HCA),所述第一网络主机通道适配器(HCA)包括与特殊交换机端口耦合的交换机,所述特殊交换机端口表示相对于相关联的中间交换机架构所述第一本地子网在所述网络架构中的边界;由第一网络HCA从所述网络架构接收第一数据分组,所述第一数据分组包括本地路由报头(LRH)部分,所述本地路由报头(LRH)部分包括识别所述交换机的特殊交换机端口的目的地本地标识符(DLID)部分;通过利用所述第一数据分组的全局路由报头(GRH)部分的子网间路由号(ISRN)部分来增强所述第一数据分组的DLID部分来生成用于转发到所述相关联的中间交换机架构的增强的数据分组;和经由所述交换机的特殊交换机端口将所述增强的数据分组转发到所述相关联的中间交换机架构中的目的地地址。2.根据权利要求1所述的方法,其中生成所述增强的数据分组包括:解码所述第一数据分组的ISRN部分,以确定在所述相关联的中间交换机架构中的本地标识符(LID);和利用所确定的在所述相关联的中间交换机架构中的LID代替所述第一数据分组的DLID部分。3.根据权利要求1所述的方法,所述方法还包括利用在所述相关联的中间交换机架构中的本地标识符(LID)来编码所述第一数据分组的ISRN部分。4.根据权利要求1所述的方法,其中:确定第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口包括过滤第一数据分组以确定所述第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口。5.根据权利要求4所述的方法,其中:过滤所述第一数据分组的DLID部分包括将所述第一数据分组的DLID部分与一个或多个预定的值进行比较,以确定所述第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口。6.根据权利要求1所述的方法,还包括:由所述第一网络HCA从所述网络架构接收包括LRH部分的第二数据分组,所述LRH部分包括标识所述第二数据分组的目的地地址的包括DLID部分;确定所述第二数据分组的DLID部分是否标识所述交换机的特殊交换机端口;和基于所述第二数据分组的DLID部分未标识所述交换机的特殊交换机端口:通过以下确定所述交换机的多个第一端口的出口端口:使用所述第二数据分组的DLID部分作为数据分组转发输入;利用所述数据分组转发输入对LFT进行索引,以确定利用所述数据分组转发输入映射的输出端口;和使用所确定的出口端口作为所述出口端口;和通过所述交换机的所确定的输出端口将所述第二数据分组转发到所述网络架构中的
目的地地址。7.一个用于在高性能计算环境中在网络环境中使用全局标识子网前缀值的系统,所述系统包括:在包括第一网络架构在内的关联的计算机环境中的第一本地子网,所述第一本地子网包括第一网络主机通道适配器(HCA),所述第一网络主机通道适配器(HCA)包括:表示相对于相关联的中间交换机架构所述第一本地子网在所述网络架构中的边界的特殊交换机端口;非瞬态存储器设备;存储在所述非瞬态存储器设备中的逻辑;和能操作以执行所述逻辑的处理器,其中由第一网络HCA从所述网络架构接收第一数据分组,所述第一数据分组包括本地路由报头(LRH)部分,所述本地路由报头(LRH)部分包括识别所述交换机的特殊交换机端口的目的地本地标识符(DLID)部分;其中所述逻辑被所述处理器执行以:通过利用所述第一数据分组的全局路由报头(GRH)部分的子网间路由号(ISRN)部分来增强所述第一数据分组的DLID部分来生成用于转发到所述相关联的中间交换机架构的增强的数据分组,以及经由所述交换机的特殊交换机端口将所述增强的数据分组转发到所述相关联的中间交换机架构中的目的地地址。8.根据权利要求7所述的系统,其中所述逻辑被所述处理器执行以通过以下生成所述增强的数据分组:解码所述第一数据分组的ISRN部分,以确定在所述相关联的中间交换机架构中的本地标识符(LID);和利用所确定的在所述相关联的中间交换机架构中的LID代替所述第一数据分组的DLID部分。9.根据权利要求7所述的系统,其中所述逻辑被所述处理器执行以利用在所述相关联的中间交换机架构中的本地标识符(LID)来编码所述第一数据分组的ISRN部分。10.根据权利要求7所述的系统,其中:所述逻辑被所述处理器执行以确定第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口,包括过滤第一数据分组以确定所述第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口。11.根据权利要求10所述的系统,其中:所述逻辑被所述处理器执行以过滤所述第一数据分组的DLID部分,包括将所述第一数据分组的DLID部分与一个或多个预定的值进行比较,以确定所述第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口。12.根据权利要求7所述的系统,:其中由所述第一网络HCA从所述网络架构接收第二数据分组,所述第二数据分组包括LRH部分,所述LRH部分包括标识所述第二数据分组的目的地地址的包括DLID部分;其中所述逻辑被所述处理器执行以确定所述第二数据分组的DLID部分是否标识所述交换机的特殊交换机端口;和其中所述逻辑被所述处理器执行以基于所述第二数据分组的DLID部分未标识所述交
换机的特殊交换机端口:通过以下确定所述交换机的多个第一端口的出口端口:使用所述第二数据分组的DLID部分作为数据分组转发输入;利用所述数据分组转发输入对LFT进行索引,以确定利用所述数据分组转发输入映射的输出端口;和使用所确定的出口端口作为所述出口端口;和通过所述交换机的所确定的输出端口将所述第二数据分组转发到所述网络架构中的目的地地址。13.一种其上存储有指令的非瞬态机器可读介质,所述指令在由包含网络架构和第一子网的相关联的计算机执行时,导致所述相关联的计算机执行包括以下各项的步骤:在所述高性能计算环境中提供网络架构中的第一本地子网,所述第一本地子网包含第一网络主机通道适配器(HCA),所述第一网络主机通道适配器(HCA)包括与特殊交换机端口耦合的交换机,所述特殊交换机端口表示相对于相关联的中间交换机架构所述第一本地子网在所述网络架构中的边界;由第一网络HCA从所述网络架构接收第一数据分组,所述第一数据分组包括本地路由报头(LRH)部分,所述本地路由报头(LRH)部分包括识别所述交换机的特殊交换机端口的目的地本地标识符(DLID)部分;通过利用所述第一数据分组的全局路由报头(GRH)部分的子网间路由号(ISRN)部分来增强所述第一数据分组的DLID部分来生成用于转发到所述相关联的中间交换机架构的增强的数据分组;和经由所述交换机的特殊交换机端口将所述增强的数据分组转发到所述相关联的中间交换机架构中的目的地地址。14.根据权利要求13所述的非瞬态机器可读介质,其中生成所述增强的数据分组包括:解码所述第一数据分组的ISRN部分,以确定在所述相关联的中间交换机架构中的本地标识符(LID);和利用所确定的在所述相关联的中间交换机架构中的LID代替所述第一数据分组的DLID部分。15.根据权利要求13所述的非瞬态机器可读介质,还包括利用在所述相关联的中间交换机架构中的本地标识符(LID)来编码所述第一数据分组的ISRN部分。16.根据权利要求13所述的非瞬态机器可读介质,其中:确定第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口包括过滤第一数据分组以确定所述第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口。17.根据权利要求16所述的非瞬态机器可读介质,其中:过滤所述第一数据分组的DLID部分包括将所述第一数据分组的DLID部分与一个或多个预定的值进行比较,以确定所述第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口。18.根据权利要求13所述的方法,还包括:由所述第一网络HCA从所述网络架构接收包括LRH部分的第二数据分组,所述LRH部分包括标识所述第二数据分组的目的地地址的包括DLID部分;
确定所述第二数据分组的DLID部分是否标识所述交换机的特殊交换机端口;和基于所述第二数据分组的DLID部分未标识所述交换机的特殊交换机端口:通过以下确定所述交换机的多个第一端口的出口端口:使用所述第二数据分组的DLID部分作为数据分组转发输入;利用所述数据分组转发输入对LFT进行索引,以确定利用所述数据分组转发输入映射的输出端口;和使用所确定的出口端口作为所述出口端口;和通过所述交换机的所确定的输出端口将所述第二数据分组转发到所述网络架构中的目的地地址。19.一种在高性能计算环境中在网络环境中使用全局标识子网前缀值的方法,所述方法包括:在包括网络架构在内的计算机环境中提供所述网络架构中的第一本地子网,所述第一本地子网包括第一网络主机通道适配器(HCA),第一网络HCA包括:与以下操作上耦合的交换机:用于将数据分组转发到所述网络架构中的第二HCA的多个第一端口;和表示相对于相关联的中间交换机架构所述第一本地子网在所述网络架构中的边界的特殊交换机端口;和存储线性转发表(LFT)的非瞬态存储器设备,所述线性转发表(LFT)将所述多个第一端口中的每个映射到LFT的对应的多个输入;由所述第一网络HCA从所述网络架构接收第一数据分组,所述第一数据分组包括本地路由报头(LRH)部分,其中所述本地路由报头(LRH)部分包括表示所述第一数据分组的目的地地址的目的地本地标识符(DLID)部分;确定所述第一数据分组的DLID部分是否标识所述交换机的特殊交换机端口;和基于所述第一数据分组的DLID部分标识所述交换机的特殊交换机端口:检查所述第一数据分组以确定所述第一数据分组的全局路由报头(GRH)部分;通过利用所述第一数据分组的全GRH部分的子网间路由号(ISRN)部分来增强所述第一数据分组的DLID部...

【专利技术属性】
技术研发人员:B
申请(专利权)人:甲骨文国际公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1