用于支持联网设备中的高效虚拟输出队列(VOQ)资源利用的系统和方法技术方案

技术编号:15920823 阅读:36 留言:0更新日期:2017-08-02 05:49
一种系统和方法可以支持网络环境中的分组交换。诸如包括交叉开关结构的网络交换机之类的联网设备可以与多个输入端口和多个输出端口相关联。另外,该联网设备可以检测在与该联网设备相关联的输出端口处的链路状态改变。然后,该联网设备可以经由该输出端口向一个或多个输入端口通知该输出端口处的链路状态改变。

【技术实现步骤摘要】
【国外来华专利技术】用于支持联网设备中的高效虚拟输出队列(VOQ)资源利用的系统和方法版权声明:本专利文档公开的一部分包含受版权保护的素材。版权拥有者不反对任何人对专利文档或专利公开按照在专利商标局的专利文件或记录中出现那样进行的传真复制,但是除此之外在任何情况下都保留所有版权。
本专利技术一般而言涉及计算机系统,并且具体而言涉及云环境中的高性能系统。
技术介绍
随着更大的云计算体系架构被引入,与传统网络和存储相关联的性能和管理瓶颈已成为重要的问题。高性能系统可以提供出色的处理速度、明显更快的部署、用于深入分析的即时视觉效果以及可管理的大数据能力。这是本专利技术的实施例旨在解决的一般领域。
技术实现思路
本文描述了可以支持网络环境中的分组交换的系统和方法。诸如包括交叉开关结构(crossbarfabric)的网络交换机之类的联网设备可以与多个输入端口和多个输出端口相关联。另外,联网设备可以检测与该联网设备相关联的输出端口处的链路状态改变。然后,该联网设备可以经由该输出端口向一个或多个输入端口通知该输出端口处的链路状态改变。此外,输出端口可以向输出调度器提供一个或多个信用(credit),并且输出调度器基于这一个或多个信用允许针对该输出端口的一个或多个分组从一个或多个虚拟输出队列中出队。附图说明图1示出了根据本专利技术的实施例的支持网络环境中的高性能系统的图示。图2示出了根据本专利技术的实施例的支持高性能系统中的网络交换机的图示。图3示出了根据本专利技术的实施例的处置网络环境中的链路状态改变的图示。图4示出了根据本专利技术的实施例的管理高性能系统中的数据流动的图示。图5示出了根据本专利技术的实施例的用于处置网络交换机中的链路状态改变的示例性流程图。图6示出了根据本专利技术的实施例的管理信用以用于处置网络环境中的链路状态改变的图示。图7示出了根据本专利技术的实施例的支持网络交换机中的信用管理的图示。图8示出了根据本专利技术的实施例的用于支持网络交换机中的信用管理的示例性流程图。具体实施方式本专利技术是通过示例而非限制的方式在附图的各图中示出的,附图中相似的标号指示相似的元素。应当注意的是,在本公开中对“一”或“一个”或“一些”实施例的引用不一定是指同一实施例,并且这样的引用意味着至少一个。以下对本专利技术的描述使用InfiniBand(IB)网络交换机作为高性能联网设备的示例。对于本领域技术人员将明显的是,可以使用其它类型的高性能联网设备而没有限制。本文描述了可以支持诸如云环境之类的网络环境中的分组交换的系统和方法。高性能系统图1示出了根据本专利技术的实施例的支持网络环境中的高性能系统的图示。如图1中所示,高性能系统100可以包括经由网络交换机结构110互连的多个主机机器101-103(或服务器)。高性能系统100中的网络交换机结构110可以负责引导在各个主机机器101-103上运行的各个虚拟机(VM)111-113(和/或虚拟化应用)之间的流量移动。根据本专利技术的实施例,网络交换机结构110可以基于InfiniBand(IB)协议,其可以管理对等(peer-to-peer)信用交换并提供无损的端到端连接性。因此,网络交换机结构110中的各种联网设备可以在不同条件下维持信用一致性以用于支持高性能系统100中的数据传送。此外,每个物理IB链路可以被划分成多个虚拟链路(VL),以便提供用于各个VM111-113(和/或应用)之间的流量的服务质量(QoS)。例如,主机机器101-103之间的网络分组流120可以表示不同VM111-113和应用可能期望的不同服务的聚合。另外,在不同的源和目的地对之间的聚合网络管道内传输的各个分组流120可以满足不同的服务要求(或甚至冲突的服务要求)。InfiniBand(IB)网络交换机图2示出了根据本专利技术的实施例的支持高性能系统中的网络交换机的图示。如图2中所示,诸如高性能系统200中的IB网络交换机220的网络设备可以负责将来自各个流量源201和211的数据流量引导到各个流量目的地208和218。例如,支持大量端口(诸如输入端口202和212以及输出端口207和217)的IB网络交换机220可以基于交叉开关(XBAR)结构210。如图2中所示,输入端口202可以使用源VL221从流量源201接收各种传入数据分组,并且输入端口212可以使用源VL231从流量源211接收各种数据分组。此外,输出端口207可以使用目的地VL227将传出数据分组发送到流量目的地208,并且输出端口217可以使用目的地VL237将传出数据分组发送到流量目的地218。另外,IB交换机220可以满足不同的QoS需求,这支持对可用网络结构资源的最佳使用。例如,IB交换机220可以基于与应用相关联的流量的服务级别(SL)将用于分组的传入VL(即,源VL)重新映射到用于该分组的不同的传出VL(即,目的地VL)。根据本专利技术的实施例,输入端口202或212中的每一个可以利用输入端口分组分类器203或213,这些分组分类器可以确定用于每个传入分组的输出端口。例如,输入端口分组分类器203可以确定用于在输入端口202处接收到的每个分组的输出端口(并且可以使用端口过滤器204去除一个或多个分组),并且输入端口分组分类器213可以确定用于在输入端口212处接收到的每个分组的输出端口(并且可以使用端口过滤器214去除一个或多个分组)。此外,输入端口分类器203或213可以确定用于到达输入端口202或212的每个多目的地分组(诸如用于多播和广播)的多个输出目的地端口。端口过滤器204可以从用于给定分组的端口列表中去除一个或多个目的地端口。另外,如果所有的目的地端口都从列表中被去除,那么多目的地分组可以被丢弃。否则,分组可以被排队以等待可用的目的地端口,这些目的地端口可以是(由输入端口分组分类器)原始分类的端口列表的子集。在每输入端口的基础上,在将接收到的分组传输到流量目的地208或218(例如经由输出端口207或217)之前,输入端口202或212可以将接收到的分组存储在入口缓冲器(例如,虚拟输出队列(VOQ)205或215)中。如图2中所示,在输入端口202处接收到的分组可以被存储在VOQ205中,并且在输入端口212处接收到的分组可以被存储在VOQ215中。此外,入口缓冲器(例如,VOQ205或215)中的每一个可以包括若干队列,这些队列中的每一个队列可以负责处置针对与输出端口相关联的目的地VL(例如,输出端口207上的VL227和输出端口217上的VL237)的分组。因此,在每输入端口的基础上的队列总数可以是输出端口的数量和每个输出端口上支持的目的地VL的数量的乘积。因此,如果端口的数量和每个端口上支持的VL的数量很大,那么系统可能需要大量的队列以用于每个输入端口202或212。根据本专利技术的实施例,可以使用共享存储器结构来实现VOQ205和215,并且对VOQ205和215中的每个队列的利用可以取决于流量。例如,VOQ资源可以表示当传入分组被排队(即,接收网络分组)时被消耗并且当该分组被出队(即,将分组递送到输出端口)时被最终释放的存储器块的数量。因此,VOQ资源的利用可以是流量模式的函数。根据本专利技术的实施例,系统可以对输入端口202和212进行调度,并且引导存储在VOQ205和21本文档来自技高网...
用于支持联网设备中的高效虚拟输出队列(VOQ)资源利用的系统和方法

【技术保护点】
一种用于支持网络环境中的分组交换的方法,包括:提供与多个输入端口和多个输出端口相关联的联网设备;检测与所述联网设备相关联的输出端口处的链路状态改变;以及经由所述输出端口向所述输入端口中的一个或多个输入端口通知所述输出端口处的所述链路状态改变。

【技术特征摘要】
【国外来华专利技术】2014.12.29 US 14/584,816;2014.12.29 US 14/584,8241.一种用于支持网络环境中的分组交换的方法,包括:提供与多个输入端口和多个输出端口相关联的联网设备;检测与所述联网设备相关联的输出端口处的链路状态改变;以及经由所述输出端口向所述输入端口中的一个或多个输入端口通知所述输出端口处的所述链路状态改变。2.如权利要求1所述的方法,其中所述联网设备是包括交叉开关结构的网络交换机。3.如权利要求1或2所述的方法,还包括:使用多个虚拟输出队列来存储在所述多个输入端口处接收到的一个或多个分组,其中每个所述输入端口与所述虚拟输出队列中的一个或多个虚拟输出队列相关联。4.如权利要求3所述的方法,还包括:使用输出调度器来调度输入端口以将存储在虚拟输出队列中的一个或多个分组转发到输出端口。5.如权利要求4所述的方法,还包括:排出存储在所述虚拟输出队列中的所述一个或多个分组,以及将一个或多个信用返回给与所述输入端口相关联的一个或多个源虚拟通道。6.如权利要求4或5所述的方法,还包括:经由所述输出端口向输出调度器发送状态改变通知,以及经由所述输出调度器将所述状态改变通知广播到多个输入端口。7.如权利要求6所述的方法,还包括:使用所述状态改变通知来配置输出端口过滤器掩码。8.如权利要求7所述的方法,还包括:在将一个或多个分组入队到所述虚拟输出队列中之前,经由输入端口分组分类器使用所述输出端口过滤器掩码检查所述一个或多个分组。9.如前述权利要求中任一项所述的方法,还包括:经由所述输入端口中的一个输入端口防止针对所述输出端口的一个或多个分组入队到虚拟输出队列中。10.如权利要求9所述的方法,还包括:丢弃针对所述输出端口的所述一个或多个分组;以及将一个或多个信用返回给与所述输入端口相关联的一个或多个源虚拟通道。11.一种用于支持网络环境中的分组交换的系统,包括:联网设备,所述联网设备与多个输入端口和多个输出端口相关联,其中所述联网设备能够操作以:检测与所述联网设备相关联的输出端口处的链路状态改变;以及经由所述输出端口向所述输入端口中的一个或多个输入端口通知所述输出端口处的所述链路状态改变。12.如权利要求11所述的系统,其中:所述联网设备是包括交叉开关结构的网络交换机。13.如权利要求11或12所述的系统,其中:所述联网设备能够操作以使用多个虚拟输出队列来存储在所述多个输入端口处接收到的一个或多个分组,其中每个所述输入端口与所述虚拟输出队列中的一个或多个虚拟输出队列相关联。14.如权利要求13所述的系统,其中:所述联网设备能够操作以使用输出调度器来调度输入端口以将存储在虚拟输出队列中的一个或多个分组转发到所述输出端口。15.如权利要求14所述的系统,其中所述联网设备能够操作以:排出存储在所述虚拟输出队列中的所述一个或多个分组,以及将一个或多个信用返回给与所述输入端口相关联的一个或多个源虚拟通道。16.如权利要求14或15所述的系统,其中所述联网设备能够操作以:经由所述输出端口向输出调度器发送状态改变通知,以及经由所述输出调度器将所述状态改变通知广播到多个输入端口。17.如权利要求16所述的系统,其中:所述输入端口能够操作以使用所述状态改变通知来配置输出端口过滤器掩码。18.如权利要求17所述的系统,其中:输入端口分组分类器能够操作以在将一个或多个分组入队到所述虚拟输出队列中之前,使用所述输出端口过滤器掩码检查所述一个或多个分组。19.如权利要求11至18中任一项所述的系统,其中所述联网设备能够操作以:防止针对所述输出端口的一个或多个分组入队到虚拟输出队列中,和/或丢弃针对所述输出端口的所述一个或多个分组,并且将一个或多个信用返回给与所述输入端口相关联的一个或多个源虚拟通道。20.一种具有存储在其上的指令的非暂态机器可读存储介质,所述指令在被执行时,使得系统执行包括以下操作的步骤:提供与多个输入端口和多个输出端口相关联的联网设备;检测与所述联网设备相关联的输出端口处的链路状态改变;以及经由所述输出端口向一个或多个输入端口通知所述输出端口处的所述链路状态改变。21.如权利要求1至10中任一项所述的用于支持网络环境中的分组交换的方法,还包括:经由所述输出端口向输出调度器提供一...

【专利技术属性】
技术研发人员:A·斯瑞尼瓦桑C·卡斯蒂尔
申请(专利权)人:甲骨文国际公司
类型:发明
国别省市:美国,US

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

1