用于共享网络接口控制器的方法和装置制造方法

文档序号:6532622阅读:155来源:国知局
用于共享网络接口控制器的方法和装置制造方法
【专利摘要】用于增强微服务器环境中计算资源和网络间通信的方法、装置和系统。被配置成安装在服务器基座内的微服务器模块包括被耦合经由PCIe链路与共享的网络接口控制器(NIC)保持通信的多个处理器子系统。共享的NIC包括至少一个以太网端口和包括具有第一多个通道的共享的PCIe接口的PCIe块。处理器子系统和共享的PCIe接口间的PCIe连线采用比第一多个通道要少的多个通道,并且在微服务器模块的工作期间,共享的NIC被配置成使每一处理器子系统能够使用处理器子系统和共享的NIC上共享的PCIe块间的PCIe链路来访问至少一个以太网端口。
【专利说明】用于共享网络接口控制器的方法和装置【技术领域】
[0001]本发明领域一般涉及计算机系统,且更具体但非排他地涉及用于增强微服务器环境中计算资源和网络间通信的技术。
[0002]背景信息
[0003]自从引入微处理器以来,计算机系统已变得越来越快。近似根据摩尔定律(基于Intel?公司共同创设者戈登摩尔在1965年预测集成电路上晶体管数目每两年翻一倍的出版物),增速已经以相当均匀的速率急速上升了近四十年。同时,存储器和非易失性存储器二者的大小已稳步增加,从而使得许多当今的服务器相比仅10-15年以前的超级计算机更加强大。另外,网络通信速度同样也可见巨大增加。
[0004]处理器速度、存储器、存储以及网络带宽技术的增长造成了对于具有大量处理和存储能力的网络和在线资源的扩建和部署。最近,基于云的服务的引入,诸如由Amazon(例如,亚马逊弹性计算云(Amazon Elastic Compute Cloud) (EC2)以及简单存储服务(S3))和微软(例如,Azure和Office 365)提供的那些服务,除了对大容量数据中心的部署以支持通过使用私有网络基础设施的这些服务之外,还造成了对于公共网络基础设施的附加网络扩建。
[0005]公共数据中心部署包括大量服务器支架,每一服务器支架容纳多个安装在支架上的服务器或刀片服务器基 座。安装在支架上的服务器间的通信通常是使用通过有线电缆连接的以太网(IEEE802.3)协议来促成的。除了使用有线电缆的选项之外,刀片服务器还可被配置成支持刀片服务器支架或基座中的各刀片间通过电背板或中间板互连的通信。除了这些服务器配置以外,近来的架构包括使用处理器阵列来支持大量并行计算,以及使用许多小“微服务器”集合来创建单个基座或支架中的计算群集。
[0006]已经使用了各种办法来支持高密度服务器/群集环境中计算资源间的连接性。例如,按照常用办法,每一服务器包括使用有线电缆以太网链路连接至外部中央交换机的网络端口。这一方案需要大量外部连接并且需要用于每一微服务器CPU (中央处理单元,在本文中也称为处理器)的网络接口控制器(NIC)。相比其它办法,这也增加了本地CPU内话务的等待时间。如本文中所用,NIC包括配置成支持通过计算机网络来通信的组件,并且包括物理(PHY)接口及用于促成媒体接入控制(MAC)层功能性的支持。
[0007]在图1a中示出了应用到刀片服务器的一种办法。多个服务器刀片100中的每一个经由适配板连接器104和背板连接器106耦合到背板102。类似地,以太网交换机刀片108和110中的每一个经由适配连接器112耦合到背板102。在这一示例中,每一服务器刀片包括耦合到相应存储器116a和116b的一对CPU114a和114b。每一 CPU还具有其自己的PCIe根复合体(RC)和NIC,如PCIe RCl 18a和118b以及NIC120a和120b所描绘的。同时,每一以太网交换机刀片包括以太网交换机逻辑块122,其包括用于支持耦合到多个以太网端口 124和连接器112上的连接器引脚的以太网交换机功能的逻辑和电路。
[0008]在工作期间,以太网信号经由背板102中的线路从多个服务器刀片100的NIC120a和120b传送到以太网交换机刀片108和110,交换机刀片108和110既执行刀片服务器中各CPU间通信的以太网交换(switching)功能又促成到外网和/或其它刀片服务器的以太网链路。NIC120a和120b进一步被配置成从以太网交换机刀片108和110接收经交换的以太网话务。
[0009]图1b示出对图1a中办法的扩充,按照该扩充,PCIe信号而非以太网信号通过背板102中的线路被发送。按照这一配置,多个服务器刀片130中的每一个包括耦合到存储器134的一个或多个CPU132。CPU132耦合到PCIe根复合体136,PCIe根复合体136包括耦合到连接器138中连接器引脚的一个或多个根端口(未示出)。同时,以太网交换机刀片140和142中的每一个包括耦合到多个以太网端口 146的以太网交换机逻辑块144和耦合到连接器150上连接器引脚的PCIe交换机逻辑块148。
[0010]另一种办法通过提供本地微服务器CPU间的专用连接和从每一微服务器CPU到中央交换机的上行链路并入了具有本地微服务器CPU的组织结构。这解决了等待时间问题,但是这需要微服务器CPU间的连接性以及大量上行链路。这一办法可通过在各CPU间提供专用连接以及仅为一些服务器提供上行链路而让其它服务器通过该组织结构访问网络来得以扩充。这解决了连接性问题但增加了等待时间。使用该组织结构的两种方案均要求专用协议或分组封装以控制该组织结构中的话务。
[0011]为了解决服务器刀片上的虚拟化的一些通信方面,PC1-SIG?(外围组件互连-特别兴趣组)创建了多根I/o虚拟化(MR-1OV)规范,其定义了适合于使多个非一致性根复合体(Re)跨刀片共享PCI硬件资源的对PCI快速(PCIe)规范的扩展。按照MR-1OV办法,NIC被配置成在主机处理器上运行的不同虚拟机(VM)间共享其网络接口,这需要使用能够连接至不同数据面的一个或多个附加MR-1OV交换机。
[0012]另一种办法是采用分布式交换。按照分布式交换,微服务器CPU通过互连链路(诸如经由环形、圆环形、3-D圆环形等拓扑)被相互连接,其中拓扑中的少量上行链路用于到达外网。分布式交换解决了一些对星形拓扑而言共同的连接性问题,但是显著增加了数据传送的等待时间。另外,数据传输经常需要沿着具有多个跳跃(即,通过使用环形或圆环形拓扑的邻近的微服务器CPU)的路径发送数据块,导致对功率的大量浪费。
【专利附图】

【附图说明】
[0013]通过参考与附图一起进行的下面的详细描述,本发明的前述的方面和许多伴随的优点,将变得更加轻松地被理解,其中,在各个视图中,相同参考编号表示相同部件,除非另作说明:
[0014]图1a和Ib是解说用于促成在采用因特网网络的刀片服务器环境中不同刀片上各处理器间通信的两种常规办法的框图;
[0015]图2是根据一个实施例解说允许多个微服务器共享到由共享的NIC提供的联网设施的访问的架构;
[0016]图3是根据一个实施例解说与图2的共享的NIC对应的多层架构中各层详情的框图;
[0017]图4是解说采用4个共享到共享的NIC访问的微服务器的微服务器模块的一个实施例的组合式示意框图;
[0018]图5是解说可在图4的微服务器模块的处理器子系统中实现的芯片上系统的所选组件的详情的框图;
[0019]图6a、6b和6c解说到共享的PCIe接口的示例性微服务器处理器子系统的配置,其中图6a描绘使用4个PCIe xl链路的采用4个SoC的配置,图6b描绘使用4个PCIe x2链路的采用4个SoC的配置,且图6c描绘使用8个PCIe xl链路的采用8个SoC的配置;
[0020]图7是解说按照其多个微服务器模块被配置成使用环形网络架构实现分布式交换机制的系统配置的示意图;以及
[0021]图8a和Sb解说可被用来实现本文公开的实施例的各方面的示例性微服务器基座和微服务器模块配置。
【具体实施方式】
[0022]用于增强微服务器环境中计算资源和网络间通信的方法、装置和系统的实施例。在以下描述中,阐述了许多具体细节以提供对本发明的实施例的透彻理解。然而,相关领域内技术人员将理解本发明可省去一个或多个特定细节而实现,或通过其它方法、组件、材料等实现。在其它例子中,公知的结构、材料或操作不被示出或详细说明以避免对本发明某些方面产生混淆。
[0023]说明书中对〃 一个实施例"、〃实施例〃的引用意味着结合该实施例所描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。如此,在整个说明书中的不同位置出现短语“在一个实施例中”或“在实施例中”不一定都是指同一个实施例。此外,在一个或多个实施例中,特定特征、结构或特性可以以任何合适的方式组合起来。
[0024]根据以下实施例 的各方面,公开了促成使用独立的PCIe上行链路的各微服务器间通信共享的以太网NIC机制,每一 PCIe上行链路由一个或多个PCIe通道构成。每一微服务器暴露于可访问一个或多个NIC的端口的至少一个PCIe功能。在一个实施例中,各功能间的交换是在使用虚拟以太网桥接(VEB)交换机的NIC中完成的。这一功能性是通过包括一个或多个抽象层的多层接口部分地促成的,该抽象层促成按照每一微服务器到包括以太网访问的共享的NIC功能的独立访问。
[0025]在图2中示出了根据一个实施例的示例性微服务器模块架构200。多个微服务器202a-n经由在NIC208中的PCIe块214的共享的PCIe接口 212处收到的一个或多个PCIe通道210m耦合到该共享的NIC208,每一微服务器包括耦合到存储器206m的CPU(或处理器)子系统204m。例如,微服务器202a包括CPU子系统204a和存储器206a,而微服务器202b包括CPU子系统204b和存储器206b。共享的NIC208被耦合到一个或多个以太网端口 216。在一个实施例中,共享的板管理控制器(BMC)也耦合到共享的NIC208,并且共享的NIC208包括启用每一微服务器和BMC218间转发的逻辑。
[0026]一般而言,共享的NIC208可以支持的微服务器的数目η大于等于2。在采用单个PCIe通道的一个实施例中,η的最大值可等于用于微服务器202和NIC208间PCIe连接的PCIe最大通道宽度,诸如对于单个PCIe χ8接口而言η = 8或者对于PCIe χ16而言η = 16。例如,具有χ8 (即,8通道)PCIE Gen3 (第三代)PCIe接口的NIC可被分开以至多支持8个单个PCIe接口,每一单个PCIe接口采用向每一微服务器提供至多8Gbps全双工带宽的单一信号通道。当然,当多个通道被用于微服务器202和共享的NIC208间的单个链路时,给定的共享NIC可支持的微服务器的数目将减小。作为另一选项,各处理器间通道的分配以及共享的NIC可以是不对称的(例如,2个通道用于一个处理器,I个通道用于另一处理器)。
[0027]图3解说了根据一个实施例的PCIe块214的进一步的详情。多级架构包括多个通道 PCIe PHY 层 300,单个通道 PCIe PHY 层 302a、302b、302c 和 302η,复用器(mux) 304,链路层 306a,306b,306c 和 306η,事务层 308a,308b,308c 和 308n, PCI 链路到功能映射层 310,PCIe功能312、314、316和318,以及包括虚拟以太网桥(VEB)交换机322的共享的NIC逻辑320。相应地,该架构使用单个PCIe通道经由相应的PCIe链路向微服务器暴露多个PCIePHY(物理)层、链路层以及事务层。为了允许NIC的常规使用(即,作为对单个微服务器专用的NIC),mux304可被配置成连接来自多个通道PCIe PHY层300的信号到链路层306a,从而促成微服务器和NIC间多个通道PCIe链路的使用。此外,尽管示出了连接一个单个通道PCIe PHY层块,mux电路可被配置成支持一个或多个微服务器和NIC间的多个通道PCIe链路。
[0028]PCIe链路到功能映射层310作为启用从任何微服务器到任何PCIe功能312、314、316和318的访问的抽象层而工作。尽管描绘了 4个PCIe功能,要理解这仅是一个示例,因为在PCIe功能层处可实现各种的PCIe功能,并且PCIe功能的数量一般可独立于共享NIC的微服务器的数量。一般而言,PCIe功能可包括由PCIe设备提供的任何功能。
[0029]共享的NIC逻辑320被配置成使PCIe功能能够共享到对应NIC设施的访问,诸如用于发射和接收以太网话务的到网络端口和相关联逻辑的访问(例如,包括以太网PHY层和缓冲器的网络层)。它还包括用于在PCIe功能和NIC功能间交换的逻辑。在一个实施例中,各功能间的交换是 在使用VEB交换机322的NIC逻辑320中完成的。按照这一机制,可通过用于在SR-1OV(单根-1/O虚拟化)模型下与系统图像共享NIC资源所采用的相同或相似的技术来实现NIC资源的共享(诸如以太网端口和共享的BMC216)。
[0030]当从PCIe功能312、314、316或318之一接收分组时,共享的NIC逻辑320将查找分组的报头并决定分组目的地是否是其它PCI功能、网络之一或是这二者。取决于特定实现特征和指定的功能,共享的NIC逻辑320还可被配置成复制分组到多个功能以供广播或多播收到的分组。
[0031]根据一些方面,PCIe块214所采用的逻辑近似于虚拟化系统中用以支持单个服务器中虚拟机(VM)到VM交换所采用的逻辑。按照常规办法,服务器直接在物理硬件资源(诸如,CPU、RAM、存储设备(例如,硬盘)、网络控制器、I/O端口等)上运行操作系统的单个实例。按照虚拟化办法,分配物理硬件资源以支持对应的虚拟资源,从而使多个系统图像(Si)可在服务器的物理硬件资源上运行,其中每一 SI包括其自身的CPU分配、存储器分配、存储设备、网络控制器、I/O端口等。此外,通过使用虚拟机管理器(VMM)或“系统管理程序”,可在服务器运行的同时动态地分配虚拟资源,从而使VM实例被添加、关闭或改变用途而无需关闭服务器。
[0032]鉴于上文,在本文中所述的微服务器系统可被配置成实现在微服务器CPU上运行的VM上托管SI的虚拟化环境。例如,本文各幅图中所描绘的给定微服务器可被用来托管单个操作系统实例,或者可被配置成通过对适用的虚拟化组件的使用来托管多个Si。在这样的实现环境下,可使用相同或相似的逻辑在微服务器和相同系统内微服务器上运行的VM之间交换话务。
[0033]这一技术在性能上与MR-1OV实现相似,但是不需要MR-1OV交换机或对需要服务器之一充当MR-1OV编程所有者的MR-1OV的部署(管理)。该技术提供与通过专用NIC (每一微服务器一个)可获得的等待时间相似的等待时间并采用单组上行链路端口。此外,该技术不需要用于内部组织结构的任何特殊网络配置并且可与现有操作系统联用。
[0034]在图4中示出了被配置成促成图2和3的实施例中所解说的技术和逻辑的示例性实现的微系统模块400。微系统模块400包含包括芯片上系统(SoC) 402a、402b、402c和402d的4个CPU子系统,每一子系统耦合到相应的存储器404a、404b、404c和404d。SoC402a、402b、402c和402d中的每一个也经由相应的PCIe链路可通信地耦合到共享的NIC208。SoC402a.402b.402c和402d中的每一个还有权访问指令存储设备,该指令存储设备包含用来在SoC的处理核上执行的指令。一般而言,这些指令可既包括固件又包括软件指令,并且可存储在模块的单个设备中(如固件存储设备406和固态驱动器(SSD) 408所描绘的)或者每一 SoC可具有其自己的本地固件存储设备和/或本地软件存储设备。作为另一选项,软件指令可存储在一个或多个大容量存储模块上并且可在模块初始化和/或正在进行的操作期间经由内部网络访问。
[0035]每一所解说的组件或者直接地或者经由适用的插槽或连接器安装到包括线路(例如,版图迹线)的印刷电路板(PCB)410促成组件间信号传送。该线路包括用于促成图4中所描绘的每一 PCIe链路上通信的信号路径。PCB410还包括用于连接所选择的组件到边缘连接器412上对应引脚迹线的线路。在一个实施例中,边缘连接器412包括PCIe边缘连接器,尽管这仅解说了一类边缘连接器的配置但是并不受限于此。除了边缘连接器之外,可使用阵列的引脚连接器,并且图4中PCB410的底部上连接器的方向是示例性的,因为边缘连接器或阵列的引脚连接器可被置于PCB的端部。
[0036]在图5中示出了采用SoC402的微服务器202的示例性架构。SoC402是采用芯片上系统架构的各类型处理器(诸如由Intel?公司、超微半导体(AdvancedMicro Devices?)、三星(Samsung? )、I BM?、太阳微系统(Sun Microsystems? )以及其它公司制造的处理器)的一般表示。在一个实施例中,SoC402包怙丨ntel? Atom?处理器。SoC402 —般还可采用各种处理器指令集架构,包括x86、ΙΑ-32以及基于ARM的架构。
[0037]在所解说的实施例中描绘了所选择的组件,SoC402包括耦合到存储器控制器502和包括PCI根复合体506的I/O模块504的一对处理器核500a和500b。
[0038]两个处理器的解说仅仅是示例性的,因为SoC可采用一个或多个处理器核,诸如
2、4、8、12等。SoC402还包括包含有4个lx2PCIe块510的8通道PCIe接口 508,其可被配置成8个单独通道、4个PCIe x2接口、2个PCIe x4接口或单个PCIe x8接口。另外,一些实施例可采用多个PCI接口,该PCI接口包括具有与PCIe接口 508所不同数量的多个通道PCIe 接口。
[0039]存储器控制器502被用来提供到动态随机存取存储器(DRAM)的访问,该动态随机存取存储器被配置成一个或多个存储器模块(诸如图5中所描绘的S0DIMM512)。I/O模块504解说了由SoC402提供的各种输入/输出接口,并且包括用于访问固件存储设备406和SSD408的I/O接口。还描绘了一个可选配置,按照该配置用于促成微服务器处理工作的指令经由网络516从指令存储514加载。在一些实施例中,各种I/O接口可被分开,诸如通过使用传统I/O接口(未示出)。一般而言,SSD408表示所容纳的SSD设备、SSD模块或要作为固态大容量存储设备工作的包括适用接口电路的非易失性存储器块等。除了访问DRAM之外,可提供第二存储器控制器以访问SRAM(未示出)。
[0040]一般而言,微服务器处理器子系统和PCIe链路宽度的各种组合可被用来实现到共享的NIC的访问。例如,在图6a、6b和6c中示出了 3个示例性配置。在图6a的配置中,经由由包括PCIe x4或x8接口的共享的PCIe接口 212a收到的4个PCIe xl( 即,单个通道PCIe)链路链接包括SoC402a-d的4处理器子系统与共享的NIC208a保持通信。在图6b的配置中,经由由包括PCIe x8接口的共享的PCIe接口 212a收到的4个PCIe x2( 即,两通道PCIe)链路链接包括SoC402a-d的4处理器子系统与共享的NIC208b保持通信。在图6a的配置中,经由由共享的PCIe8x接口 212c收到的8个PCIe xl链路链接包括SoC402a_g的8处理器子系统与共享的NIC208c保持通信。
[0041]除了图6a、6b和6c所解说的实施例之外,可根据以下参数实现其它配置。第一,处理器子系统(例如,SoC)和共享的PCIe接口间PCIe链路的聚集宽度小于等于共享的PCIe接口的经组合的通道宽度。例如,共享的PCIe接口可包括单个PCIex8接口或两个PCIex4接口,每一方均具有8通道的经组合的宽度。相应地,这一共享的PCIe接口配置可在至多8个采用PCIe xl链路的处理器子系统间共享。不存在处理器子系统和共享的PCIe接口间PCIe链路的所有通道宽度相同的要求,尽管可实现这一条件。同时,被启用以经由与图2中所示的机制相似的mux采用更宽的经复用的PCIe链路的处理器子系统的数目可从零到全部。此外,按照复用式配置的PCIe链路宽度可等于或小于它所连接的对应共享PCIe接口的通道宽度。例如,可在4x或更高倍的共享PCIe接口处接收4x的复用式PCIe链路。此外,除了采用一个或多个共享的PCIe接口之外,共享的NIC可采用一个或多个专用PCIe接口(本文的实施例中未示出)。
[0042]按照某些实施例,经群集的微服务器系统可被配置成采用NIC共享及分布式交换的组合。例如,刀片上的微服务器CPU可被配置成共享进一步被配置成执行交换工作的NIC,从而可经由环形或圆环形/3-D圆环形组合网络节点配置连接NIC/交换机。例如,在图7中示出了被配置成实现环线交换机制的模块700a-m上经群集的微服务器202系统。模块700a-m中的每一个包括具有交换机引擎逻辑块702a_m的相应的共享的NIC。具有交换机引擎块逻辑的共享的NIC采用与共享的NIC208相似的逻辑用以促成NIC共享工作,同时还添加了与由环线类网络架构中的以太网交换机块实现的相似的交换功能性。如所解说的,可按任一方向传送网络分组(例如,通过采用根据发送方模块和目的地模块间最短路径路由的端口)。另外,可采用封装和/或标记用于检测(和移除)自转发(self-forwarded)分组。此外,一个或多个模块上所选择的端口可被配置成促成到外部网络访问的上行链路端口,诸如模块700m的两个上行链路端口所描绘的。
[0043]上述实施例的各方面可被实现用以促成在单个安装在支架的基座内的经群集的服务器系统。例如,图8a和Sb解说了两个示例性配置。更详细地,图8a描绘了被配置成采用多个微服务器模块802和服务器模块804的4U微服务器基座800。当被安装进它们各自的插槽中时,微服务器模块802和服务器模块804被连接至位于基座800内近似中间深度处的中间板(未示出)。中间板包括用于促成模块PCB(例如,刀片)上各组件(诸如微服务器CPU和服务器SoC)间通信的线路、电路和连接器。在一个实施例中,微服务器模块802与微服务器模块400相似,但是其采用了后连接器并且其被配置成水平地安装而不是从顶部竖直地安装。相比于微服务器模块802所采用的微服务器CPU(例如,]ntel? Atom?处理器),服务器模块804被描绘成采用更大的SoC (诸如]ntel? Xeon?处理器)。在一个实施例中,服务器模块804的槽宽度是微服务器模块802所用的槽宽度的两倍。除了微服务器和服务器模块以外,其它类型的模块和设备可被安装在基座800内,诸如以太网交换机模块和热切换存储设备(后者从与图8a中所描绘的基座800的相对侧安装)。
[0044]图8b示出4U基座850,其中从顶部安装微服务器模块852和服务器模块854,借此模块PCB边缘连接器被安装在设置在基座(未示出)底部的基板内对应的插槽中。一般而目,基座850的基板执行与基座800内中间板相似的功能。另外,图8b中所不的服务器配置可进一步采用被配置成促成附加通信功能的夹层板(也未示出)。在图8b所解说的实施例中,服务器模块854的槽宽度是微服务器模块852槽宽度的两倍。基座805还被配置成容纳其它类型的模块和设备,诸如以太网交换机模块和热切换存储设备。
[0045]图8a和8b中示出的微服务器系统配置二者均促成单个安装在支架上的基座内的服务器群集的实现。此外,CPU子系统及共享的NIC和可选的微服务器模块上以太网交换功能性的结合使用使得能够以相比常规的支架和刀片服务器架构提供增强的处理能力和减低的功率的方式来实现极高密度的计算机元件的群集。此类系统非常适于各种类型的并行处理工作,诸如映射化简处理。然而,它们不受限于并行处理工作,而是还可被用于各种各样的处理目的,诸如托管各种基于云的服务。
[0046]虽然参考特定实现方式描述了一些实施例,但根据一些实施例,其他实现方式也是可能的。另外,附图中所示的和/或本文描述的元件或其它特征的配置和/或顺序不需要以所示和所描述的特定方式安排。根据某些实施例很多其它配置也是可能的。
[0047]在附图中示出的每个系统中,在一些情况下的元件可分别具有相同附图标记或不同的附图标记,以暗示所表示的元件可能不同和/或相似。然而,元件是足够灵活的以具有不同的实现并与本文所示或所描述的系统中的部分或全部一起操作。附图中所示的各元件可以相同或不同。将哪个称为第一元件以及将哪个称为第二元件是任意的。
[0048]在说明书和权利要求书中,可使用术语耦合摂和连接摂及其衍生词。应当理解,这些术语并不旨在作为彼此的同义词。相反,在具体实施例中,“连接的”用于指示两个或更多个要素彼此直接物理或电接触。“耦合的”可表示两个或更多个元件直接物理或电接触。然而,“耦合的”也可表示两个或更多个元件并未彼此直接接触,但是仍然彼此协作、彼此相互作用。
[0049]实施例是本发明的实现或示例。说明书中对“实施例”、“一个实施例”、“一些实施例”或其它实施例摂的引用表示结合这些实施例描述的特定特征、结构或特性被包括在本发明的至少一些实施例中,而不一定在所有的实施例中。各处出现的“实施例”、“一个实施例”或“一些实施例”不一定都指相同的实施例。
[0050]并非本文中描述和示出的所有组件、特征、结构、特性等等都需要被包括在特定实施例或多个实施例中。例如,如果说明书陈述“可”、“可能”或“能够”包括组件、特征、结构或特性,则不一定包括该特定组件、特征、结构或特性。如果说明书或权利要求书提到“一”或“一个”元件,则这并不意味着仅有一个该元件。如果说明书或权利要求书引用“额外的”元素,则不排除有一个以上的额外的元素。
[0051]如上所讨论的,可通过对应软件和/或固件组件及应用来促成本文中实施例的各方面,诸如服务器上运行的软件或网络元件上由嵌入式处理器执行的固件。因此,本发明的实施例可用作或支持软件程序、软件模块、固件和/或依据某种形式的处理核(诸如,计算机的CPU、多核处理器的一个或多个核)执行的分布式软件、在处理器或核上运行的虚拟机,或以其它方式在机器可读介质上或内实现或达成。机器可读介质包括用于存储或传送机器(例如,计算机)可读形式的信息的任何机制。例如,机器可读介质可包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质,以及闪存设备等。
[0052]上文对本发明的所示出的本发明的各实施例的描述,包括在摘要所描述的,不是详尽的,或将本发明限于上文所公开的准确的形式。尽管为了说明,此处描述了本发明的具体实施例以及示例,但是,如那些精通相关技术的人所理解的,各种可能的等效的修改也都在本发明的范围内。
[0053]可以根据上面的详细描述摂对本发明进行这些修改。
[0054]后面的权利要求中所使用的术语不应该被理解为将本发明限制于说明书和附图中所公开的特定实施例。相反,本文的范围完全由下列权利要求书来确定,权利要求书根据权利要求解释的建立的原则来解释。
【权利要求】
1.一种微服务器模块,其包括: 印刷电路板(PCB),具有连接器和安装在其上或操作性地耦合到其的经由所述PCB上的线路互连的多个组件,所述组件包括: 多个处理器子系统,每一处理器子系统包括耦合到存储器的处理器并且包括至少一个PCIe (外围组件互连快速)接口并且被配置成逻辑地实现为微服务器;以及 共享的网络接口控制器(NIC),其包括至少一个以太网端口以及包括具有第一多个通道的共享的PCIe接口的PCIe块,其中所述PCB包括线路以用于促成每一处理器子系统的PCIe接口和共享的NIC上共享的PCIe接口之间的PCIe链路,每一 PCIe链路具有比所述第一多个通道要少的多个通道,并且其中在所述微服务器模块的工作期间,所述共享的NIC被配置成使每一处理器子系统能够使用所述处理器子系统和所述共享的NIC上所述共享的PCIe接口之间的所述PCIe链路来访问所述至少一个以太网端口。
2.如权利要求1所述的微服务器模块,其特征在于,所述PCIe链路的所述通道的总数等于所述第一多个通道的数目。
3.如权利要求1或2所述的微服务器模块,其特征在于,所述PCIe链路中的至少一个PCIe链路采用单个通道。
4.如前述任何权利要求所述的微服务器模块,其特征在于,每一PCIe链路采用单个通道。
5.如前述任何权利要求所述的微服务器模块,其特征在于,每一处理器子系统包括芯片上系统。
6.如前述任何权利要求所述的微服务器模块,其特征在于,进一步包括耦合到所述共享的NIC的板管理控制器(BMC),其中所述共享的NIC被配置成在BMC和所述多个处理器子系统之间提供共享的访问。
7.如前述任何权利要求所述的微服务器模块,其特征在于,所述共享的PCIe块包括多层接口,所述多层接口针对每一 PCIe链路包括PCIe物理(PHY)层、链路层和事务层。
8.如权利要求7所述的微服务器模块,其特征在于,所述共享的PCIe块进一步包括多个通道PCIe PHY层以及复用器,所述复用器被配置成将来自所述多个通道PCIe PHY层和与PCIe链路相关联的PCIe PHY层的信号复用到与所述PCIe链路相关联的链路层。
9.如权利要求7所述的微服务器模块,其特征在于,所述多层接口进一步包括PCI链路到功能映射层以及包括多个PCIe功能的PCIe功能层。
10.如权利要求9所述的微服务器模块,其特征在于,所述多层接口进一步包括共享的NIC逻辑层,所述共享的NIC逻辑层被配置成在PCIe功能和由所述共享的NIC提供的以太网功能之间共享访问。
11.如前述任何权利要求所述的微服务器模块,其特征在于,所述PCB连接器包括PCIe边缘连接器。
12.如前述任何权利要求所述的微服务器模块,其特征在于,所述共享的NIC包括至少两个以太网端口并且进一步被配置成支持分布式交换功能。
13.如权利要求12所述的微服务器模块,其特征在于,所述分布式交换功能包括用于执行以 下操作的逻辑:确定在第一以太网端口处收到的分组是否是以所述多个微服务器中的一个为目的地,并且如果不是则转发所述分组离开第二以太网端口。
14.一种微服务器系统,其包括: 基座,其具有安装在其中的基板、中间板、背板或夹层板中的至少一者并且包括多个插槽;以及 多个微服务器模块,每一微服务器模块包括连接器,所述连接器被配置成与所述基板、中间板、背板或夹层板之一上的适配连接器相适配,每一微服务器模块进一步包括用于实现多个微服务器的组件和电路,每一微服务器包括经由PCIe (外围组件互连快速)链路耦合到共享的网络接口控制器(NIC)的处理器子系统,所述共享的NIC包括至少一个以太网端口以及具有第一多个通道的共享的PCIe接口,每一 PCIe链路耦合到所述PCIe接口并且具有比所述第一多个通道要少的多个通道。
15.如权利要求14所述的微服务器系统,其特征在于,每一PCIe链路采用单个通道。
16.如权利要求14或15所述的微服务器系统,其特征在于,进一步包括至少一个以太网交换机模块,所述以太网交换机模块具有连接器,所述连接器被配置成与在所述基板、中间板、背板或夹层板之一上的适配连接器相适配。
17.如权利要求14-16中任何权利要求所述的微服务器系统,其特征在于,所述多个微服务器模块中至少一个的共享的NIC包括至少两个以太网端口并且进一步被配置成支持以太网交换功能。
18.如权利要求14-17中任何权利要求所述的微服务器系统,其特征在于,所述多个微服务器模块中至少一个的共享的NIC包括至少两个以太网端口并且进一步被配置成支持分布式交换功能。
19.如权利要求18所述的微服务器系统,其特征在于,所述分布式交换功能包括用于执行以下操作的逻辑:确定在第一以太网端口处收到的分组是否是以微服务器模块上所述多个微服务器中的一个为目的地,并且如果不是则转发所述分组离开第二以太网端口。
20.如权利要求18所述的微服务器系统,其特征在于,所述系统被配置成支持环线、圆环形或3D圆环形的分布式交换机制中的至少一个。
21.共享的网络接口控制器(NIC),其包括: PCIe块,其包括具有第一多个通道的共享的PCIe接口 ; 多个以太网端口 ;以及 共享的NIC逻辑,其被配置成基于所述共享的NIC工作启用到组件的多个以太网端口的共享访问,其中所述组件被链接经由耦合到所述共享的PCIe接口的多个PCIe链路与所述共享的NIC保持通信,每一 PCIe链路具有比第一多个通道要少的多个通道。
22.如权利要求21所述的共享的NIC,其特征在于,所述PCIe链路中的至少一个PCIe链路采用单个通道。
23.如权利要求21或22所述的共享的NIC,其特征在于,每一PCIe链路采用单个通道。
24.如权利要求21-23中任何权利要求所述的共享的NIC,其特征在于,所述共享的PCIe块包括多层接口,所述多层接口针对每一 PCIe链路包括PCIe物理(PHY)层、链路层和事务层。
25.如权利要求24所述的共享的NIC,其特征在于,所述共享的PCIe块进一步包括多个通道PCIe PHY层以及复用器,所述复用器被配置成将来自所述多个通道PCIe PHY层和与PCIe链路相关联的PCIe PHY层的信号复用到与所述PCIe链路相关联的链路层。
26.如权利要求24所述的共享的NIC,其特征在于,所述多层接口进一步包括PCI链路到功能映射层和包括多个PCIe功能的PCIe功能层。
27.如权利要求26所述的共享NIC,其特征在于,所述多层接口进一步包括共享的NIC逻辑层,其被配置成在PCIe功能和由共享的NIC提供的以太网功能之间共享访问。
28.如权利要求21-27中任何权利要求所述的共享NIC,其特征在于,进一步包括被配置成实现虚拟以太网桥的逻辑。
29.如权利要求21-28中任何权利要求所述的共享NIC,其特征在于,所述共享的NIC包括至少两个以太网端口并且进一步被配置成支持分布式交换功能。
30.如权利要求29所述的共享NIC,其特征在于,所述分布式交换功能包括用于执行以下操作的逻辑:确定在第一以太网端口处收到的分组是否是以所述组件中的一个为目的地的,并且如果不是则转发所述分组离开第二以太网端口。
【文档编号】G06F13/00GK104025063SQ201380004579
【公开日】2014年9月3日 申请日期:2013年6月26日 优先权日:2012年8月24日
【发明者】S·本-迈克尔, E·露兹欧恩 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1