用于高性能网络结构安全的技术的制作方法

文档序号:11637163阅读:276来源:国知局
用于高性能网络结构安全的技术的制造方法与工艺



背景技术:

高性能计算(hpc)集群、云计算数据中心以及其他大型计算网络可以通过高速输入/输出结构(诸如infinibandtm结构)进行通信。infinibandtm体系结构可以使用端节点之间的交换点到点通道传送数据。在infinibandtm体系结构中,可以使用16位本地标识符(lid)在子网内标识端节点。典型的网络结构假定结构中的所有元件(比如节点、交换机、网关、和管理代理)可信。这样,典型的网络结构易受在与所述结构相连的计算设备上执行的恶意软件的攻击。

附图说明

在附图中通过示例的方式而非限制性的方式展示了在此所描述的概念。为了说明的简单和清晰起见,在附图中所展示的要素不一定按比例绘制。在认为适当的情况下,在附图当中重复参考标号以表示相应或相似的要素。

图1是一种用于结构安全的系统的至少一个实施例的简化框图;

图2是可以由图1的系统建立的各种环境的至少一个实施例的简化框图;并且

图3是可以由图1和图2的系统的受管网络设备执行的用于结构安全的方法的至少一个实施例的简化流程图。

具体实施方式

虽然本公开的概念易于经历各种修改和替代形式,但是在附图中已经通过示例的方式示出了其特定实施例并且将在此对其进行详细描述。然而,应当理解的是,并不旨在将本公开的概念限制于所公开的特定形式,而相反,意图是覆盖与本公开和所附权利要求书一致的所有修改、等效物和替代物。

在说明书中提到的“一个实施例”、“实施例”、“说明性实施例”等指示了所描述的实施例可以包括具体特征、结构或特性,但每一个实施例可能或者可能不一定包括所述具体特征、结构或特性。而且,此类短语不一定涉及同一实施例。此外,当关于实施例而描述了特定特征、结构或特性时,应当认为的是,无论是否进行了明确描述,结合其他实施例来实现这种特征、结构或特性都在本领域的技术人员的知识内。另外,应当认识到,包括在采用“a、b和c中的至少一个”形式的列表中的项可意指(a);(b);(c);(a和b);(a和c);(b和c);或(a、b和c)。类似地,采用“a、b或c中的至少一者”形式列出的项可意指(a);(b);(c);(a和b);(a和c);(b和c);或(a、b和c)。

在一些情况下,可以在硬件、固件、软件或其任何组合中实现所公开的实施例。所公开的实施例还可以实施为一个或多个瞬态或非瞬态机器可读(例如,计算机可读)存储媒体所携带或其上所存储的指令,这些指令可以由一个或多个处理器读取和执行。机器可读存储媒体可以实施为任何存储设备、机制、或用于存储或发射采用机器可读形式的信息的其他物理结构(例如,易失性或非易失性存储器、媒体盘或其他媒体设备)。

在附图中,一些结构特征或方法特征可能以特定安排和/或顺序示出。然而,应理解的是,可以不需要这种特定安排和/或顺序。相反,在一些实施例中,可以采用与在说明性附图中所示出的方式和/或顺序不同的方式和/或顺序来安排这种特征。另外,在具体的图中包括结构特征或方法特征并不意味着暗示在所有实施例中都需要这种特征,并且在一些实施例中,可以不包括这种特征或者这种特征可以与其他特征组合。

现在参照图1,在一个实施例中,用于高性能结构安全的系统100包括通过若干结构链路106通信的多个受管网络设备102和多个计算节点104。系统100的受管网络设备102、计算节点104以及其他属性可以由一个或多个结构管理器108来管理。在使用中,如下面更详细讨论的,结构管理器108通过在所述结构的预定义管理分区上发送管理消息来配置并且另外管理所述结构的元件。通过控制是否允许通过受管网络设备102的每个端口120进行管理访问,每个受管网络设备102保护所述管理分区。结构管理器108与允许管理的端口120耦合,并且每个计算节点104耦合至不允许管理的端口120。受管网络设备102允许来自结构管理器108的管理流量传递至计算节点104和/或传递至其他结构管理器108,并允许来自计算节点104的管理流量传递至结构管理器108,但拒绝从计算节点104到另一计算节点104的管理流量。在端口120被完全启用之前,受管网络设备102安全地识别耦合至所述端口的链路伙伴是否是计算节点104(而不是另一个受管网络设备102)。受管网络设备102还可以检查和验证数据分组报头,并对来自与非管理端口120连接的计算节点104的管理消息进行速率限制。因而,系统100可以保护所述结构对抗在计算节点104中的一个或多个上执行的恶意软件和/或固件的可用性和完整性。具体地,可以防止欺骗攻击,在欺骗攻击中,计算节点104扮演不同计算节点104或受管网络设备102。另外,通过防止管理流量免于计算节点104,可以保护所述结构的配置信息免于未授权更改或访问。进一步,速率限制性管理消息可以保护结构管理器108免受拒绝服务(dos)攻击。

每个受管网络设备102可以被实施为能够转发或控制结构流量的任何网络设备,比如受管交换机。示意性受管网络设备102包括多个结构端口120、交换逻辑122、以及管理逻辑124。每个结构端口120可以与结构链路106连接,所述结构链路进而可以与远端设备比如计算节点104或另一受管网络设备102连接。示意性受管网络设备102包括三个结构端口120a至120c;然而,在其他实施例中,受管网络设备102可以包括另外的或更少的端口120以支持不同数量的结构链路106。

开关逻辑122可以实施为被配置成用于将在端口120上接收的数据分组转发到适当的目的地端口120的任何硬件、固件、软件或其组合。例如,交换逻辑122可以被实施为共享存储器交换机或纵横式交换机,并且可以包括调度器、分组处理流水线、线性转发表、端口组转发表、端口组表、和/或任何其他交换逻辑。在一些实施例中,交换逻辑122可以被实施为一个或多个专用集成电路(asic)。

管理逻辑124可以实施为可以用来配置并控制受管网络设备102的任何控制电路、微处理器或其他逻辑块。例如,管理逻辑124可以初始化受管网络设备102及其组件、控制受管网络设备102及其组件的配置、向受管网络设备102提供测试接口、或者提供其他管理功能。可以通过改变寄存器数量值、属性、和/或数据表(比如端口信息属性)来配置管理逻辑124。结构管理器108可以使用带内管理接口通过经由结构链路106传输特殊格式化的管理数据报(mad)来与管理逻辑124进行通信。另外地或可替代地,管理逻辑124可以通过管理接口(诸如一个或多个pciexpress主机接口)、测试接口或一个或多个低速接口(诸如i2c接口、jtag接口、spi接口、mdio接口、led接口或gpio接口)来与结构管理器108进行通信。

每个计算节点104可以实施为能够执行在此所描述的功能的任何类型的计算或计算机设备,包括但不限于计算机、服务器、机架式服务器、刀片服务器、网络设备、web设备、多处理器系统、分布式计算系统、基于处理器的系统、移动计算设备和/或消费者电子设备。如图1中所示,每个计算节点104示意性地包括处理器140、输入/输出子系统144、存储器146、数据存储设备148以及通信电路150。当然,在其他实施例中,计算节点104可以包括其他或另外的组件,诸如计算机中常见的那些(例如,不同输入/输出设备)。另外,在一些实施例中,说明性部件中的一个或多个说明性部件可以结合在另一部件中,或以其他方式形成其一部分。例如,在一些实施例中,存储器146或其部分可以结合在处理器140中。

处理器140可以实施为能够执行在本文中所描述的功能的任何类型的处理器。例如,处理器140可以实施为(多个)单核或多核处理器、数字信号处理器、微控制器、或者其他处理器或处理/控制电路。处理器140进一步包括主机结构接口142。主机结构接口142可以实施为能够通过结构链路106实现处理器140与其他远程计算节点104和/或其他远程设备之间的通信的任何通信接口,诸如网络接口控制器、通信电路、设备或其集合。主机结构接口142可以被配置成用于使用任何一种或多种通信技术以及相关联协议(例如,全向路径体系结构)来实现这种通信。主机结构接口142可以包括能够在结构链路106上向远端链路伙伴提供节点类型(即,与交换机或网关相反的主机接口接口)的可信硬件。尽管被展示为包括单处理器140,但应当理解,每个计算节点104可以包括多个处理器140,并且每个处理器140可以包括集成主机结构接口142。

类似地,存储器146可以实施为能够执行在此所描述的功能的任何类型的易失性或非易失性存储器或数据存储装置。在操作中,存储器146可以存储在计算节点104的操作过程中使用的不同的数据和软件,诸如操作系统、应用、程序、库以及驱动程序。存储器146经由i/o子系统144通信地耦合到处理器140上,i/o子系统可以实施为用于促进与计算节点104的处理器140、存储器146、以及其他组件的输入/输出操作的电路和/或组件。例如,i/o子系统144可以实施为或以其他方式包括用于促进输入/输出操作的存储器控制器中枢、输入/输出控制中枢、固件设备、通信链路(即,点到点链路、总线链路、线、电缆、光导、印刷电路板迹线等)和/或其他组件和子系统。在一些实施例中,i/o子系统144可以形成片上系统(soc)的一部分并且可以与计算节点104的处理器140、存储器146以及其他组件一起结合在单个集成电路芯片上。数据存储设备148可以被实施为被配置成用于对数据进行短期或长期存储的任何类型的一种或多种设备,如例如,存储器设备和电路、存储器卡、硬盘驱动器、固态驱动器或其他数据存储设备。

计算节点104的通信电路150可以实施为能够实现计算节点104与一个或多个远程计算节点104、受管网络设备102、交换机、远程主机或其他设备之间的通信的任何通信接口,诸如通信电路、设备或其集合。通信电路150可以被配置成用于使用任何一种或多种通信技术(例如,有线或无线通信)以及相关联协议(例如,全向路径体系结构、以太网、wimax等)来实现这种通信。具体地,通信电路150包括连接到结构链路106上的端口152。虽然被展示为包括单端口152,但是在一些实施例中,每个计算节点104可以包括多个端口152。

结构链路106中的每一个可以实施为能够连接系统100的两个端口120、152的任何点到点通信链路。例如,结构链路106可以将计算节点104的端口152与受管网络设备102的端口120连接起来、可以将两个受管网络设备102的两个端口120连接起来等等。每个结构链路106允许在两个方向上进行通信。每个结构链路106可以实施为串行数据通信链路,诸如铜电缆、铜背板、光纤电缆或硅光子链路,并且可以包括多个通信道(例如,四条道)以增大总带宽。每个结构链路106可以按一定导线速率(诸如12.5gb/s或25.78125gb/s)来以信号方式发送数据。

结构管理器108被配置成用于初始化并以其他方式管理系统100的受管网络设备102、计算节点104以及其他主机、网关和/或其他设备。结构管理器108可以实施为能够执行在此所描述的功能的任何类型的服务器计算设备、网络设备或设备的集合。例如,结构管理器108可以被实施为计算节点104,此计算节点已经被指定或另外配置成结构管理器108。在一些实施例中,系统100可以包括多个结构管理器108,可以从该多个结构管理器中选择主结构管理器108。这样,结构管理器108可以实施为单个服务器计算设备或服务器与相关联设备的集合。因此,虽然结构管理器108在图1中被展示为实施为单个计算设备,但是应当理解,结构管理器108可以实施为一起协同操作以促进下文所描述的功能性的多个设备。

现在参照图2,在示意性实施例中,每一个受管网络设备102在操作期间建立环境200。示意性环境200包括端口管理模块202、分区模块204、源身份模块206、流量控制模块208、以及管理模块210。环境200的各种模块可以被实施为硬件、固件、软件或其组合。例如,环境200的不同模块、逻辑以及其他组件可以形成受管网络设备102的开关逻辑122、管理逻辑124或其他硬件组件的一部分或以其他方式由该开关逻辑、该管理逻辑或这些其他硬件组件建立。这样,在一些实施例中,环境200的模块中的任何一个或多个模块可以被实施为电气设备的电路或集合(例如,端口管理电路、分区电路等)。

端口管理模块202被配置成用于启用受管网络设备102的端口120,并且在端口120被启用的同时安全地判定每个端口120是否是边缘端口120。边缘端口120是与计算节点104(或网关)连接的端口120。端口管理模块202可以通过安全地识别每个端口120是否耦合至远端计算节点104来判定所述第一端口是否是边缘端口。端口管理模块202还被配置成用于配置端口120中的每一个允许或不允许管理访问。端口管理模块202可以将每个端口120配置成与结构的管理分区的受限成员或正式成员相关联。

分区模块204被配置成用于在端口120中的每一个实施结构管理分区。结构管理分区包括结构的可以彼此通信的一个或多个末端节点(例如,计算节点104和/或结构管理器108)。结构管理分区可以包括正式成员(结构管理器108)和受限成员(计算节点104)。对于被配置成不允许管理访问的端口120,分区模块204被配置成:否定指示管理分区中的正式成员关系的进入的分组,并否定指示管理分区中的受限成员关系的出去的分组。对于被配置成允许管理访问的端口120,分区模块204被配置成允许指示管理分区中受限或正式成员关系的进入和出去的分组。因而,分区模块204被配置成允许管理分区的正式成员(与管理端口120连接)与管理分区的正式成员和受限成员都通信,并且允许管理分区的受限成员(与非管理端口120连接)仅与管理分区的正式成员和未限制成员通信。

源身份模块206被配置成用于判定在端口120处接收到的数据分组中所包括的源本地标识符(slid)是否匹配与每个对应端口120相关联的预定义slid。源身份模块206进一步被配置成丢弃不包括匹配的slid的数据分组。

流量控制模块208被配置成对非管理端口120上接收的管理消息进行速率限制。流量控制模块208可以响应于接收到管理消息而减小非管理端口120的信用回报率。流量控制模块208可以被配置成用于对结构链路106的具体分支(比如具体虚拟道路或服务信道)上的消息进行速率限制。

管理模块210被配置成用于管理受管网络设备102的配置。管理模块210可以存储或另外管理一个或多个配置寄存器、属性、数据表、或可以用来配置受管网络设备102的其他管理信息。例如,在一些实施例中,管理模块210可以管理端口信息属性,包括是否允许每个端口120的管理。管理模块210可以被配置成用于从结构管理器108接收命令、数据、和其他管理信息。

仍参照图2,在示意性实施例中,每一个计算104在操作期间建立环境220。说明性环境220包括结构应用模块222和节点类型模块224。环境220的各种模块可以被实施为硬件、固件、软件或其组合。例如,环境220的不同的模块、逻辑以及其他组件可以形成计算节点104的处理器140或其他硬件组件的一部分或以其他方式由该处理器或这些其他硬件组件建立。这样,在一些实施例中,环境220的模块中的任何一个或多个模块可以被实施为电气设备的电路或集合(例如,结构应用电路或节点类型电路)。

结构应用模块222可以被实施为由使用计算节点104的主机结构接口142传达数据的计算节点104执行的任何软件和/或固件。例如,结构应用模块222可以包括一个或多个操作系统、虚拟机监视器、管理程序、虚拟机、和/或应用软件。在一些实施例中,结构应用模块222还可以包括计算节点104的嵌入式固件,包括与主机结构接口142和/或通信电路150相关联的固件。结构应用模块222可以受计算节点104的一个或多个用户控制并且因此可能不可信。

节点类型模块224被配置成通过结构链路106向受管网络设备102标识计算节点104的节点类型。例如,节点类型模块224在结构链路106的链路协商和初始化过程中可以向受管网络设备102发射节点类型标识符。所述节点类型标识符可以标识计算节点104不是交换机并且相反是不同类型的设备(例如,端点、计算节点、网关、或其他结构元件)。节点类型模块224还可以被配置成用于在链路协商和初始化过程中向受管网络设备102发射计算节点104的全球唯一标识符。节点类型模块224被配置成正确地标识计算节点104的节点类型并且可以不被计算节点104所执行的软件和/或固件更改(例如,节点类型可以不被结构应用模块222改变)。在示意性实施例中,节点类型模块224被实施为主机结构接口142的物理硬件部件。

仍参照图2,在示意性实施例中,结构管理器108在操作期间建立环境240。示意性环境240包括子网管理器模块242。环境240的各种模块可实施为硬件、固件、软件或其组合。例如,环境240的各种模块、逻辑和其他部件可以形成结构管理器108的处理器或其他硬件部件的一部分或以其他方式由所述计算设备的所述处理器或所述其他硬件部件建立。这样,在一些实施例中,环境240的模块中的任何一个或多个模块可以实施为电子设备的电路或集合(例如,子网管理器电路)。

子网管理器模块242被配置成管理网络结构的所有元件。例如,子网管理器模块242可以发现拓扑结构并对与结构连接的受管网络设备102和/或主机结构接口142进行配置。子网管理器模块242被配置成:通过配置受管网络设备102的端口120允许管理流量,允许将管理功能授权给其他管理节点。在一些实施例中,子网管理器模块242可以被配置成支持使具有管理端口120的不可信配置的新的受管网络设备102进入结构。子网管理器模块242可以在提出结构链路106(例如,通过省略交换机间结构链路106上的正式成员关系分区)之前禁用来自新的受管网络设备102的管理访问,并保持管理访问被禁用直到将所有新的受管网络设备102端口120上的管理访问禁用(例如,通过从每个端口移除正式成员关系分区密钥)。如果结构管理器108或附装至新的受管网络设备102的流氓代理尝试同一过程时,子网管理器模块242可以拆掉结构链路106以阻止攻击。

如图2中所示,在使用中,系统100建立信任边界250。所述信任边界250包括受管网络设备102、结构管理器108、以及仅仅每个计算节点104的主机结构接口142的节点类型模块224。操作系统软件、应用软件、固件、和计算节点104的信任边界250外部的其他元件是不可信的并且因此可以受一个或多个恶意角色控制。

现在参照图3,在使用中,受管网络设备102可以执行用于结构安全的方法300。方法300开始于框302,在所述框中,对受管网络设备102进行初始化。受管网络设备102可以在最初被上电时、当被重置时、或当另外被指示以重新初始化时开始初始化。在一些实施例中,受管网络设备102可以恢复之前的配置,例如从受管网络设备102内的非易失性存储器。另外或可替代地,在一些实施例中,受管网络设备102可以被初始化成保留结构安全性的默认配置。

在一些实施例中,在框304,受管网络设备102可以允许受管网络设备102的一定预定义端口120上的管理访问。即,受管网络设备102可以允许与那些预定义端口120中的每一个连接的结构元件作为管理节点(例如,作为结构管理器108)运行。因而,被配置成允许管理访问的那些端口120可以作为管理端口或结构管理器(fm)端口已知,与其他非管理端口120相反。由于每个fm端口120可以被预定义、预先配置、或另外带外配置,数据中心管理器或其他管理者可以验证只有结构管理器108(并且不是计算节点104)已经与fm端口120物理地连接。如下面进一步描述的,可以使用网络结构的预定义管理分区将带内管理流量传达至受管网络设备102。通过将管理分区的预定义正式成员关系分区密钥与每个fm端口120相关联,受管网络设备102可以允许对fm端口120的管理访问。正式成员关系分区密钥(还称为保护密钥或p_密钥)可以被实施为数字值,所述数字值标识网络分区并指示相关联的节点是否是分区中的正式成员关系或受限成员关系。例如,正式成员关系分区密钥可以被实施为16位的值0xffff,其中,最高有效位指示正式成员关系。受管网络设备102可以为每个端口120维持允许的p_密钥值的表格。受管网络设备102可以被配置成:通过设置与fm端口120相关联的端口信息属性中的合适字段(例如,portinfo属性的mgmtallowed字段),允许管理。设置mgmtallowed字段可以保证正式成员关系分区密钥包括在相关联的fm端口120的p_密钥表格中。

在一些实施例中,在框306,受管网络设备102可以不允许所有其他端口120(即,预定义fm端口120之外的所有端口120)上的管理访问。换言之,受管网络设备102可以不允许与所有其他端口120连接的结构元件作为管理节点运行。通过将管理分区的预定义受限成员关系分区密钥与每个端口120相关联,受管网络设备102可以不允许对那些端口120的管理访问。例如,受限成员关系分区密钥可以被实施为16位的值0x7fff,其中,最高有效位指示受限成员关系。通过复原与每个端口120相关联的端口信息属性中的合适字段(例如,复原portinfo属性的mgmtallowed字段),受管网络设备102可以不允许管理访问。

在框308中,受管网络设备102可以提出与fm端口120上的结构管理器108的结构链路106。如上所述,fm端口120被配置成允许管理访问。在框310中,受管网络设备102可以通过fm端口120从结构管理器108接收一条或多条管理消息。所述管理消息可以被实施为例如一个或多个sma请求和/或sma陷阱抑制消息。受管网络设备102的子网管理代理或其他实体可以验证所述管理消息包括正式成员关系管理分区密钥(例如,0xffff)。在一些实施例中,在框312,受管网络设备102可以按照结构管理器108所指导的启用或禁用对一个或多个端口120的管理访问。例如,结构管理器108可以允许对端口120的管理访问,以便允许备用结构管理器108或其他管理节点进入结构。结构管理器108可以例如通过设置或复原相关联的端口120的portinfo属性的mgmtallowed字段来启用或禁用管理访问。在一些实施例中,在框314中,结构管理器108可以向端口120中的每一个指定具体源本地标识符(slid)。如下所述,受管网络设备102可以验证在端口120处接收到的所有流量包括与结构管理器108所配置的一样的正确slid。

在框316中,受管网络设备102协商并初始化与非管理结构元件(比如交换机、网关、和计算节点104)的结构链路106。在框318中,在一些实施例中,受管网络设备102可以在初始化所述结构链路106的同时安全地识别任何边缘端口120。边缘端口120可以被实施为与计算节点104连接并且不与另一受管网络设备102连接的端口120。受管网络设备102可以通过在所述结构链路106上接收节点类型安全地识别所述端口120为边缘端口120,所述节点类型指示所连接的结构元件是计算节点104。所述节点类型可以由远端计算节点104的主机结构接口142的可信硬件部件发射。例如,在结构链路106初始化过程中,受管网络设备102可以在被称为“反向信道”的结构链路106上建立低速低带宽通信。受管网络设备102和所连接的结构元件可以在反向信道上交换节点类型标识符(连同其它数据一起)。因而,受管网络设备102可以在完全提出结构链路106之前判定端口120是否是边缘端口120。在提出结构链路106之后,受管网络设备102准备好处理在一个或多个端口120上接收的数据分组。

在框320中,受管网络设备102检查在每个边缘端口120上接收的分组报头。每个数据分组可以被实施为包括一个或多个报头以及数据有效载荷的二进制数据集合。在一些实施例中,受管网络设备102可以在数据链路层检查报头的一致性和正确性(即,层2报头)。受管网络设备102可以例如进行基本检查,像判定所述报头是否包括与给定虚拟道路的mtu一致的有效层2报头类型或有效长度。在一些实施例中,在框322中,受管网络设备102可以验证数据分组的源本地标识符(slid)匹配与具体边缘端口120相关联的已配置slid。如上所述,结构管理器108可以为受管网络设备102的每个端口120指定合适的slid。如果数据分组的slid不匹配与边缘端口120相关联的slid,受管网络设备102丢弃、拒绝、或另外抛弃数据分组。因而,受管网络设备102可以阻止欺骗攻击,在欺骗攻击中,恶意计算节点104试图扮演结构上的另一设备。在slid被指定给边缘端口120之前,并且默认地响应于被上电或另外被重置,受管网络设备102可以丢弃来自包括不一致的slid的计算节点104的任何分组(包括sma分组)。受管网络设备102可以允许sma分组,其中,所述sma分组的slid被设定为许可的lid(例如,0xffff)。

在框324中,受管网络设备102在每个边缘端口120实施网络管理分区。具体地,受管网络设备102允许与fm端口120连接的结构管理器108或其他管理节点与所有其他结构元件(例如,其他结构管理器108和/或计算节点104)通信。受管网络设备102还允许计算节点104与结构管理器108通信,但不允许计算节点104通过管理分区与其他计算节点104通信。通过实施管理分区,受管网络设备102可以保护整个结构的配置。

在一些实施例中,在框326中,受管网络设备102可以在不包括匹配的分区密钥的每个入端口120丢弃分组。数据分组可以包括其报头,分区密钥(p_密钥)。当在入端口120接收到数据分组时,受管网络设备102判定所述数据分组的p_密钥是否匹配与所述入端口120相关联的p_密钥表中所存储的任何密钥。如果未发现匹配,受管网络设备102丢弃数据分组并且可以表示错误。例如,如上所述,非管理端口120可以在其p_密钥表中包括受限成员关系分区密钥(例如,0x7fff)但不包括正式成员关系分区密钥(例如,0xffff)。受管网络设备102可以因而丢弃在包括正式成员关系分区密钥的这个端口上所接收的任何数据分组。相应地,受管网络设备102可以阻止与非管理端口120连接的阶段节点104引起正式成员关系管理分区消息。如上所述,子网管理代理或结构元件的其他实体可以仅对包括正式成员分区密钥的管理消息响应。因而,通过实施管理分区,受管网络设备102可以保护结构配置。作为另一示例,fm端口120在其p_密钥表中可以包括正式成员分区密钥但不包括受限成员关系分区密钥。受管网络设备102可以因而允许在包括受限或正式成员关系分区密钥的这个端口上所接收的任何数据分组。

在一些实施例中,在框328中,受管网络设备102可以在包括有限管理分区密钥的每个出端口120丢弃分组,如果已经对这个出端口120禁用管理访问的话。例如,如上所述,非管理端口120可以在其p_密钥表中包括受限成员关系分区密钥(例如,0x7fff)但不包括正式成员关系分区密钥(例如,0xffff)。当包括受限成员关系分区密钥的分组准备好从这个端口120发射,受管网络设备102可以判定受限成员关系分区密钥是否同样包括在p_密钥表中。如果的确如此,受管网络设备102丢弃所述分组。相反地,包括正式成员关系分区密钥的数据分组可以从与或者受限成员关系分区密钥或者正式成员关系分区密钥相关联的端口120发射。因而,计算节点104可以在管理分区上与结构管理器108但不与另一结构节点104通信,结构管理器108可以在管理分区上与计算节点104并且与其他管理节点通信。相应地,结构管理器108可以发送管理消息给任何计算节点104并且每个计算节点104可以对结构管理器108进行响应,但计算节点104不可以彼此发射管理消息。

在一些实施例中,在框330中,受管网络设备102可以在每个中间端口120实施网络管理分区。中间端口120与结构中的另一受管网络设备102(比如另一交换机)连接。在许多实施例中,数据分组可以在受管网络设备102之间被转发,而不需要检查分区密钥或另外实施网络分区。因而,在那些实施例中,上文所述的在框324中在入端口120和出端口120处的分区实施可以由不同受管网络设备102进行。如果对中间端口120实施网络管理分区,受管网络设备102可以检查受限成员关系分区密钥和正式成员关系分区密钥,与上文联系框324所述的类似。

在框332中,受管网络设备102对在非管理端口120上接收的管理消息进行速率限制。受管网络设备102可以对结构链路106的具体分支(比如具体虚拟道路或服务信道(例如,虚拟道路15和/或服务信道15))上接收的消息进行速率限制。例如,受管网络设备102可以对每个非管理端口120(即,被指定给受限成员关系分区密钥的每个端口120)限制被返还给计算节点104的流量控制信用的数量。通过限制信用的返还,计算节点104在发送额外管理消息之前必须等待。速率限制性非管理端口120可以通过限制对计算节点104可用的带宽而不限制结构管理器108的带宽来阻止对抗结构管理器108的拒绝服务攻击。在进行速率限制之后,方法300环回框320以继续检查分组并实施管理网络分区。

虽然图3的方法300被展示为顺序执行,应该理解的是,在一些实施例中,受管网络设备102可以并行、同时、或以任何其他顺序执行方法300的操作。例如,在一些实施例中,可以由受管网络设备102的硬件资源并行执行操作。另外,虽然被展示为由受管网络设备102执行,并且在一些实施例中由受管网络设备102的硬件资源执行,应该理解的是,在一些实施例中,方法300的操作可以由主机结构接口142的硬件资源执行,所述主机结构接口被受管网络设备102的可信固件安全地管理。在那些实施例中,硬件可以是对主机结构接口142所提供的功能特定的,同时仍防止计算节点104的软件和/或固件对安全功能妥协。

示例

以下提供了在本文中所公开的技术的说明性示例。所述技术的实施例可以包括以下所描述的示例中的任何一个或多个示例及其任何组合。

示例1包括一种用于结构安全的网络设备,所述网络设备包括:端口管理模块,所述端口管理模块用于启用所述网络设备的第一端口,其中,所述第一端口耦合至链路伙伴;并且在启用所述第一端口的过程中判定所述第一端口是否是边缘端口,其中,判定所述第一端口是否是边缘端口包括安全地识别耦合至所述第一端口的所述链路伙伴是否是计算节点;以及分区模块,所述分区模块用于响应于确定所述第一端口是边缘端口而在所述第一端口处实施结构管理分区,其中,所述第一端口与所述管理分区的受限成员相关联,并且所述受限成员被阻止与管理分区的其他受限成员进行通信。

示例2包括如示例1所述的主题,并且其中,安全地识别耦合至所述第一端口的所述链路伙伴是否是计算节点包括:使用所述第一端口与所述链路伙伴的主机结构接口建立反向信道通信会话;以及通过所述反向信道通信会话从所述主机结构接口接收节点类型指示符。

示例3包括如示例1和2中任一项所述的主题,并且其中,启用所述网络设备的所述第一端口包括:将所述结构管理分区的受限成员关系分区密钥与所述第一端口相关联。

示例4包括如示例1至3中任一项所述的主题,并且其中,在所述第一端口处实施所述结构管理分区包括:判定在所述第一端口处接收的数据分组的分区密钥是否与所述受限成员关系分区密钥匹配;以及响应于确定所述数据分组的所述分区密钥与所述受限成员关系分区密钥不匹配而丢弃所述数据分组。

示例5包括如示例1至4中任一项所述的主题,并且其中,在所述第一端口处实施所述结构管理分区包括:判定有待从所述第一端口发射的数据分组的分区密钥是否与所述受限成员关系分区密钥匹配;以及响应于确定所述数据分组的所述分区密钥与所述受限成员关系分区密钥匹配而丢弃所述数据分组。

示例6包括如示例1至5中任一项所述的主题,并且其中,所述端口管理模块进一步用于启用所述网络设备的第二端口,其中,所述第二端口耦合至管理节点,并且其中,所述管理节点是所述结构管理分区的正式成员(fullmember),并且所述管理节点被允许与所述管理分区的受限成员以及所述管理分区的正式成员进行通信;并且所述分区模块进一步用于在所述第二端口处实施所述结构管理分区。

示例7包括如示例1至6中任一项所述的主题,并且其中,启用所述网络设备的所述第一端口包括:将所述结构管理分区中的受限成员关系分区密钥与所述第一端口相关联;并且启用所述网络设备的所述第二端口包括:将所述结构管理分区中的正式成员关系分区密钥与所述第二端口相关联。

示例8包括如示例1至7中任一项所述的主题,并且其中,在所述第二端口处实施所述结构管理分区包括:判定在所述第二端口处接收的数据分组的分区密钥是否与所述正式成员关系分区密钥匹配;以及响应于确定所述数据分组的所述分区密钥与所述正式成员关系分区密钥不匹配而丢弃所述数据分组。

示例9包括如示例1至8中任一项所述的主题,并且其中,在所述第二端口处实施所述结构管理分区包括:判定有待从所述第二端口发射的数据分组的分区密钥是否与所述正式成员关系分区密钥或所述受限成员关系分区密钥匹配;以及响应于有待从所述第一端口发射的所述数据分组的所述分区密钥与所述正式成员关系分区密钥或所述受限成员关系分区密钥匹配而允许所述数据分组。

示例10包括如示例1至9中任一项所述的主题,并且其中,所述端口管理模块进一步用于初始化所述第二端口;并且,启用所述第二端口包括响应于对所述第二端口的初始化而启用所述第二端口。

示例11包括如示例1至10中任一项所述的主题,并且进一步包括:管理模块,用于从管理节点接收管理消息;其中,启用所述第二端口包括:响应于接收到所述管理消息而启用所述第二端口。

示例12包括如示例1至11中任一项所述的主题,并且进一步包括源身份模块,所述源身份模块用于:判定在所述第一端口处接收的数据分组的源本地标识符是否匹配与所述第一端口相关联的预定义源本地标识符;并且响应于确定所述数据分组的所述源本地标识符不匹配所述预定义源本地标识符而丢弃所述数据分组。

示例13包括如示例1至12中任一项所述的主题,并且进一步包括:管理模块,用于从管理节点接收所述预定义源本地标识符。

示例14包括如示例1至13中任一项所述的主题,并且进一步包括流量控制模块,所述流量控制模块用于:通过所述第一端口接收管理消息;并响应于接收到所述管理消息而减小所述第一端口的信用回报率。

示例15包括一种用于结构安全的方法,所述方法包括:由网络设备启用所述网络设备的第一端口,其中,所述第一端口耦合至链路伙伴;在启用所述第一端口时由所述网络设备判定所述第一端口是否是边缘端口,其中,判定所述第一端口是否是边缘端口包括安全地识别耦合至所述第一端口的所述链路伙伴是否是计算节点;以及响应于确定所述第一端口是边缘端口而由所述网络设备在所述第一端口处实施结构管理分区,其中,所述第一端口与所述管理分区的受限成员相关联,并且所述第一端口被阻止与所述管理分区的其他受限成员通信。

示例16包括如示例15所述的主题,并且其中,安全地识别耦合至所述第一端口的所述链路伙伴是否是计算节点包括:使用所述第一端口与所述链路伙伴的主机结构接口建立反向信道通信会话;以及通过所述反向信道通信会话从所述主机结构接口中接收节点类型指示符。

示例17包括如示例15和16中任一项所述的主题,并且其中,启用所述网络设备的所述第一端口包括:将所述结构管理分区中的受限成员关系分区密钥与所述第一端口相关联。

示例18包括如示例15至17中任一项所述的主题,并且其中,在所述第一端口处实施所述结构管理分区包括:判定在所述第一端口处接收的数据分组的分区密钥是否与所述受限成员关系分区密钥匹配;以及响应于确定所述数据分组的所述分区密钥与所述受限成员关系分区密钥不匹配而丢弃所述数据分组。

示例19包括如示例15至18中任一项所述的主题,并且其中,在所述第一端口处实施所述结构管理分区包括:判定有待从所述第一端口发射的数据分组的分区密钥是否与所述受限成员关系分区密钥匹配;以及响应于确定所述数据分组的所述分区密钥与所述受限成员关系分区密钥匹配而丢弃所述数据分组。

示例20包括如示例15至19中任一项所述的主题,并且进一步包括:由所述网络设备启用所述网络设备的第二端口,其中,所述第二端口耦合至管理节点,并且其中,所述管理节点是所述结构管理分区的正式成员,并且所述管理节点被允许与所述管理分区的受限成员以及所述管理分区的正式成员通信;以及由所述网络设备在所述第二端口处实施所述结构管理分区。

示例21包括如示例15至20中任一项所述的主题,并且其中,启用所述网络设备的所述第一端口包括:将所述结构管理分区中的受限成员关系分区密钥与所述第一端口相关联;并且启用所述网络设备的所述第二端口包括:将所述结构管理分区中的正式成员关系分区密钥与所述第二端口相关联。

示例22包括如示例15至21中任一项所述的主题,并且其中,在所述第二端口处实施所述结构管理分区包括:判定在所述第二端口处接收的数据分组的分区密钥是否与所述正式成员关系分区密钥匹配;以及响应于确定所述数据分组的所述分区密钥与所述正式成员关系分区密钥不匹配而丢弃所述数据分组。

示例23包括如示例15至22中任一项所述的主题,并且其中,在所述第二端口处实施所述结构管理分区包括:判定有待从所述第二端口发射的数据分组的分区密钥是否与所述正式成员关系分区密钥或所述受限成员关系分区密钥匹配;以及响应于确定有待从所述第一端口发射的数据分组的分区密钥与所述正式成员关系分区密钥或所述受限成员关系分区密钥匹配而允许所述数据分组。

示例24包括如示例15至23中任一项所述的主题,并且进一步包括:由所述网络设备初始化所述第二端口;其中,启用所述第二端口包括响应于初始化所述第二端口而启用所述第二端口。

示例25包括如示例15至24中任一项所述的主题,并且进一步包括:由所述网络设备从管理节点接收管理消息;其中,启用所述第二端口包括响应于接收到所述管理消息而启用所述第二端口。

示例26包括如示例15至25中任一项所述的主题,并且进一步包括:由所述网络设备判定在所述第一端口处接收的数据分组的源本地标识符是否匹配与所述第一端口相关联的预定义源本地标识符;以及由所述网络设备响应于确定所述数据分组的所述源本地标识符不匹配所述预定义源本地标识符而丢弃所述数据分组。

示例27包括如示例15至26中任一项所述的主题,并且进一步包括:由所述网络设备从管理节点接收所述预定义源本地标识符。

示例28包括如示例15至27中任一项所述的主题,并且进一步包括:由所述网络设备通过所述第一端口接收管理消息;以及由所述网络设备响应于接收到所述管理消息而减小所述第一端口的信用回报率。

示例29包括一种计算设备,所述计算设备包括:处理器;以及存储器,所述存储器具有存储于其中的多条指令,所述指令当被所述处理器执行时致使所述计算设备执行如示例15-28中任一项所述的方法。

示例30包括一种或多种机器可读存储介质,所述一种或多种机器可读存储介质包括存储于其上的多条指令,所述指令响应于被执行而使计算设备执行如示例15-28中任一项所述的方法。

示例31包括一种计算设备,所述计算设备包括用于执行示例15至28中任一项所述的方法的装置。

示例32包括一种用于结构安全的网络设备,所述网络设备包括:用于启用所述网络设备的第一端口的装置,其中,所述第一端口耦合至链路伙伴;用于在启用所述第一端口时判定所述第一端口是否是边缘端口的装置,其中,判定所述第一端口是否是边缘端口包括安全地识别耦合至所述第一端口的所述链路伙伴是否是计算节点;以及用于响应于确定所述第一端口是边缘端口而在所述第一端口处实施结构管理分区的装置,其中,所述第一端口与管理分区的受限成员相关联,并且所述第一端口被阻止与管理分区的其他受限成员通信。

示例33包括如示例32所述的主题,并且其中,所述用于安全地识别耦合至所述第一端口的所述链路伙伴是否是计算节点的装置包括:用于使用所述第一端口与所述链路伙伴的主机结构接口建立反向信道通信会话的装置;以及用于通过所述反向信道通信会话从所述主机结构接口接收节点类型指示符的装置。

示例34包括如示例32和33中任一项所述的主题,并且其中,所述用于启用所述网络设备的所述第一端口的装置包括:用于将所述结构管理分区中的受限成员关系分区密钥与所述第一端口相关联的装置。

示例35包括如示例32至34中任一项所述的主题,并且其中,所述用于在所述第一端口处实施所述结构管理分区的装置包括:用于判定在所述第一端口处接收的数据分组的分区密钥是否与所述受限成员关系分区密钥匹配的装置;以及用于响应于确定所述数据分组的所述分区密钥与所述受限成员关系分区密钥不匹配而丢弃所述数据分组的装置。

示例36包括如示例32至35中任一项所述的主题,并且其中,所述用于在所述第一端口处实施所述结构管理分区的装置包括:用于判定有待从所述第一端口发射的数据分组的分区密钥是否与所述受限成员关系分区密钥匹配的装置;以及用于响应于确定所述数据分组的所述分区密钥与所述受限成员关系分区密钥匹配而丢弃所述数据分组的装置。

示例37包括如示例32至36中任一项所述的主题,并且进一步包括:用于启用所述网络设备的第二端口的装置,其中,所述第二端口耦合至管理节点,并且其中,所述管理节点是所述结构管理分区的正式成员,并且所述管理节点被允许与所述管理分区的受限成员以及所述管理分区的正式成员通信;以及用于在所述第二端口处实施所述结构管理分区的装置。

示例38包括如示例32至37中任一项所述的主题,并且其中,所述用于启用所述网络设备的所述第一端口的装置包括:用于将所述结构管理分区中的受限成员关系分区密钥与所述第一端口相关联的装置;并且所述用于启用所述网络设备的所述第二端口的装置包括:用于将所述结构管理分区中的正式成员关系分区密钥与所述第二端口相关联的装置。

示例39包括如示例32至38中任一项所述的主题,并且其中,所述用于在所述第二端口处实施所述结构管理分区的装置包括:用于判定在所述第二端口处接收的数据分组的分区密钥是否与所述正式成员关系分区密钥匹配的装置;以及用于响应于确定所述数据分组的所述分区密钥与所述正式成员关系分区密钥不匹配而丢弃所述数据分组的装置。

示例40包括如示例32至39中任一项所述的主题,并且其中,所述用于在所述第二端口处实施所述结构管理分区的装置包括:用于判定有待从所述第二端口发射的数据分组的分区密钥是否与所述正式成员关系分区密钥或所述受限成员关系分区密钥匹配的装置;以及用于响应于确定有待从所述第一端口发射的所述数据分组的所述分区密钥与所述正式成员关系分区密钥或所述受限成员关系分区密钥匹配而允许所述数据分组的装置。

示例41包括如示例32至40中任一项所述的主题,并且进一步包括:用于初始化所述第二端口的装置;其中,所述用于启用所述第二端口的装置包括:用于响应于初始化所述第二端口而启用所述第二端口的装置。

示例42包括如示例32至41中任一项所述的主题,并且进一步包括:用于从管理节点接收管理消息的装置;其中,所述用于启用所述第二端口的装置包括:用于响应于接收到所述管理消息而启用所述第二端口的装置。

示例43包括如示例32至42中任一项所述的主题,并且进一步包括:用于判定在所述第一端口处接收的数据分组的源本地标识符是否匹配与所述第一端口相关联的预定义源本地标识符的装置;以及用于响应于确定所述数据分组的所述源本地标识符不匹配所述预定义源本地标识符而丢弃所述数据分组的装置。

示例44包括如示例32至43中任一项所述的主题,并且进一步包括:用于从管理节点接收所述预定义源本地标识符的装置。

示例45包括如示例32至44中任一项所述的主题,并且进一步包括:用于通过所述第一端口接收管理消息的装置;以及用于响应于接收到所述管理消息而减小所述第一端口的信用回报率的装置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1