System and method for providing source ID spoof protection in an infiniband (IB) network

Information

  • Patent Grant
  • 9930018
  • Patent Number
    9,930,018
  • Date Filed
    Monday, June 4, 2012
    12 years ago
  • Date Issued
    Tuesday, March 27, 2018
    6 years ago
Abstract
A system and method can provide source ID spoof protection in an InfiniBand (IB) fabric. The IB fabric can support a plurality of tenants in a subnet that connects a plurality of physical servers, wherein the plurality of tenants are associated with different partitions in the subnet. Then, the plurality of tenants can use at least one shared service, and the IB fabric can be configured to determine what ID values are legal for different physical servers and different partitions.
Description
COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.


FIELD OF INVENTION

The present invention is generally related to computer systems, and is particularly related to supporting an InfiniBand (IB) network.


BACKGROUND

The interconnection network plays a beneficial role in the next generation of super computers, clusters, and data centers. High performance network technology, such as the InfiniBand (IB) technology, is replacing proprietary or low-performance solutions in the high performance computing domain, where high bandwidth and low latency are the key requirements. For example, IB installations are used in supercomputers such as Los Alamos National Laboratory's Roadrunner, Texas Advanced Computing Center's Ranger, and Forschungszcntrum Juelich's JuRoPa.


IB was first standardized in October 2000 as a merge of two older technologies called Future I/O and Next Generation I/O. Due to its low latency, high bandwidth, and efficient utilization of host-side processing resources, it has been gaining acceptance within the High Performance Computing (HPC) community as a solution to build large and scalable computer clusters. The de facto system software for IB is OpenFabrics Enterprise Distribution (OFED), which is developed by dedicated professionals and maintained by the OpenFabrics Alliance. OFED is open source and is available for both GNU/Linux and Microsoft Windows.


SUMMARY

Described herein is a system and method that can provide source ID spoof protection in an InfiniBand (IB) fabric. The IB fabric can support a plurality of tenants in a subnet that connects a plurality of physical servers, wherein the plurality of tenants are associated with different partitions in the subnet. Then, the plurality of tenants can use at least one shared service, the IB fabric can be configured to determine what ID values are legal for different physical servers and different partitions.





BRIEF DESCRIPTION OF THE FIGURES


FIG. 1 shows an illustration of a fabric model in a middleware environment in accordance with an embodiment of the invention.



FIG. 2 shows an illustration of providing source ID spoof protection in an IB fabric in accordance with an embodiment of the invention.



FIG. 3 illustrates an exemplary flow chart for providing source ID spoof protection in an IB fabric in accordance with an embodiment of the invention.



FIG. 4 shows a flow chart for correlating information in a received payload with source information in a packet header.





DETAILED DESCRIPTION

Described herein is a system and method that can provide source ID spoof protection in an interconnected network, such as an InfiniBand (IB) network, or fabric.



FIG. 1 shows an illustration of a fabric model in a middleware environment in accordance with an embodiment of the invention. As shown in FIG. 1, an interconnected network, or a fabric 100, can include switches 101-103, bridges and routers 104, host channel adapters (HCAs) 105-106 and designated management hosts 107. Additionally, the fabric can include, or be connected to, one or more hosts 108 that are not designated management hosts.


The designated management hosts 107 can be installed with HCAs 105, 106, a network software stack and relevant management software in order to perform network management tasks. Furthermore, firmware and management software can be deployed on the switches 101-103, and the bridges and routers 104 to direct traffic flow in the fabric. Here, the host HCA drivers, OS and Hypervisors on hosts 108 that are not designated management hosts may be considered outside the scope of the fabric from a management perspective.


The fabric 100 can be in a single media type, e.g. an IB only fabric, and be fully connected. The physical connectivity in the fabric ensures in-band connectivity between any fabric components in the non-degraded scenarios. Alternatively, the fabric can be configured to include Ethernet (Enet) connectivity outside gateway (GW) external ports on a gateway 109. Additionally, it is also possible to have independent fabrics operating in parallel as part of a larger system. For example, the different fabrics can only be indirectly connected via different HCAs or HCA ports.


InfiniBand (IB) Architecture


IB architecture is a serial point-to-point technology. Each of the IB networks, or subnets, can include a set of hosts interconnected using switches and point-to-point links. A single subnet can be scalable to more than ten-thousand nodes and two or more subnets can be interconnected using an IB router. The hosts and switches within a subnet are addressed using local identifiers (LIDs), e.g. a single subnet may be limited to 49151 unicast addresses.


An IB subnet can employ at least one subnet manager (SM) which is responsible for initializing and starting up the sub-net including the configuration of all the IB ports residing on switches, routers and host channel adapters (HCAs) in the subset. The SM's responsibility also includes routing table calculation and deployment. Routing of the network aims at obtaining full connectivity, deadlock freedom, and load balancing between all source and destination pairs. Routing tables can be calculated at network initialization time and this process can be repeated whenever the topology changes in order to update the routing tables and ensure optimal performance.


At the time of initialization, the SM starts in the discovering phase where the SM does a sweep of the network in order to discover all switches and hosts. During the discovering phase, the SM may also discover any other SMs present and negotiate who should be the master SM. When the discovering phase is completed, the SM can enter a master phase. In the master phase, the SM proceeds with LID assignment, switch configuration, routing table calculations and deployment, and port configuration. At this point, the subnet is up and ready to use.


After the subnet is configured, the SM can monitor the network for changes (e.g. a link goes down, a device is added, or a link is removed). If a change is detected during the monitoring process, a message (e.g. a trap) can be forwarded to the SM and the SM can reconfigure the network. Part of the reconfiguration process, or a heavy sweep process, is the rerouting of the network which can be performed in order to guarantee full connectivity, deadlock freedom, and proper load balancing between all source and destination pairs.


The HCAs in an IB network can communicate with each other using queue pairs (QPs). A QP is created during the communication setup, and a set of initial attributes such as QP number, HCA port, destination LID, queue sizes, and transport service are supplied. On the other hand, the QP associated with the HCAs in a communication is destroyed when the communication is over. An HCA can handle many QPs, each QP consists of a pair of queues, a Send Queue (SQ) and a Receive Queue (RQ). There is one such pair present at each end-node that is participating in the communication. The send queue holds work requests to be transferred to the remote node, while the receive queue holds information on what to do with the data received from the remote node. In addition to the QPs, each HCA can have one or more Completion Queues (CQs) that are associated with a set of send and receive queues. The CQ holds completion notifications for the work requests posted to the send and receive queue.


The IB architecture is a flexible architecture. Configuring and maintaining an IB subnet can be carried out via special in-band subnet management packets (SMPs). The functionalities of a SM can, in principle, be implemented from any node in the IB subnet. Each end-port in the IB subnet can have an associated subnet management agent (SMA) that is responsible for handling SMP based request packets that are directed to it. In the IB architecture, a same port can represent a SM instance or other software component that uses SMP based communication. Thus, only a well defined sub-set of SMP operations can be handled by the SMA.


SMPs use dedicated packet buffer resources in the fabric, e.g. a special virtual lane (VL15) that is not flow-controlled (i.e. SMP packets may be dropped in the case of buffer overflow. Also, SMPs can use either the routing that the SM sets up based on end-port Local Identifiers (LIDs), or SMPs can use direct routes where the route is fully defined by the sender and embedded in the packet. Using direct routes, the packet's path goes through the fabric in terms of an ordered sequence of port numbers on HCAs and switches.


The SM can monitor the network for changes using SMAs that are presented in every switch and/or every HCA. The SMAs communicate changes, such as new connections, disconnections, and port state change, to the SM using traps and notices. A trap is a message sent to alert end-nodes about a certain event. A trap can contain a notice attribute with the details describing the event. Different traps can be defined for different events. In order to reduce the unnecessary distribution of traps, IB applies an event forwarding mechanism where end-nodes are required to explicitly subscribe to the traps they want to be informed about.


The subnet administrator (SA) is a subnet database associated with the master SM to store different information about a subnet. The communication with the SA can help the end-node to establish a QP by sending a general service management datagram (MAD) through a designated QP, e.g. QP1. Both sender and receiver require information such as source/destination LIDs, service level (SL), maximum transmission unit (MTU), etc. to establish communication via a QP. This information can be retrieved from a data structure known as a path record that is provided by the SA. In order to obtain a path record, the end-node can perform a path record query to the SA, e.g. using the SubnAdmGet/SubnAdmGetable operation. Then, the SA can return the requested path records to the end-node.


The IB architecture provides partitions as a way to define which IB end-ports should be allowed to communicate with other IB end-ports. Partitioning is defined for all non-SMP packets on the IB fabric. The use of partitions other than the default partition is optional. The partition of a packet can be defined by a 16 bit P_Key that consists of a 15 bit partition number and a single bit member type (full or limited).


The partition membership of a host port, or an HCA port, can be based on the premise that the SM sets up the P_Key table of the port with P_Key values that corresponds to the current partition membership policy for that host. In order to compensate for the possibility that the host may not be fully trusted, the IB architecture also defines that switch ports can optionally be set up to do partition enforcement. Hence, the P_Key tables of switch ports that connect to host ports can then be set up to reflect the same partitions as the host port is supposed to be a member of (i.e. in essence equivalent to switch enforced VLAN control in Ethernet LANs).


Since the IB architecture allows full in-band configuration and maintenance of an IB subnet via SMPs, the SMPs themselves are not subject to any partition membership restrictions. Thus, in order to avoid the possibility that any rough or compromised node on the IB fabric is able to define an arbitrary fabric configuration (including partition membership), other protection mechanisms are needed.


M_Keys can be used as the basic protection/security mechanism in the IB architecture for SMP access. An M_Key is a 64 bit value that can be associated individually with each individual node in the IB subnet, and where incoming SMP operations may be accepted or rejected by the target node depending on whether the SMP includes the correct M_Key value (i.e. unlike P_Keys, the ability to specify the correct M_Key value—like a password—represents the access control).


By using an out-of-band method for defining M_Keys associated with switches, it is possible to ensure that no host node is able to set up any switch configuration, including partition membership for the local switch port. Thus, an M_Key value is defined when the switch IB links becomes operational. Hence, as long as the M_Key value is not compromised or “guessed” and the switch out-of-band access is secure and restricted to authorized fabric administrators, the fabric is secure.


Furthermore, the M_Key enforcement policy can be set up to allow read-only SMP access for all local state information except the current M_Key value. Thus, it is possible to protect the switch based fabric from un-authorized (re-)configuration, and still allow host based tools to perform discovery and diagnostic operations.


The flexibility provided by the IB architecture allows the administrators of IB fabrics/subnets, e.g. HPC clusters, to decide whether to use embedded SM instances on one or more switches in the fabric and/or set up one or more hosts on the IB fabric to perform the SM function. Also, since the wire protocol defined by the SMPs used by the SMs is available through APIs, different tools and commands can be implemented based on use of such SMPs for discovery, diagnostics and are controlled independently of any current Subnet Manager operation.


From a security perspective, the flexibility of IB architecture indicates that there is no fundamental difference between root access to the various hosts connected to the IB fabric and the root access allowing access to the IB fabric configuration. This is fine for systems that are physically secure and stable. However, this can be problematic for system configurations where different hosts on the IB fabric are controlled by different system administrators, and where such hosts should be logically isolated from each other on the IB fabric.


Providing Source ID Spoof Protection in an InfiniBand (IB) Fabric



FIG. 2 shows an illustration of providing source ID spoof protection in an IB fabric in accordance with an embodiment of the invention. As shown in FIG. 2, a subnet 240 in an IB fabric 200 can support a plurality of tenants, e.g. tenants A-C 201-203. The different tenants can reside on a plurality of physical servers, e.g. the physical servers A-B 204-205, which can be connected to the IB subnet 240 via different HCAs 221-222.


The IB subnet 240 can include a plurality of partitions, e.g. partitions A-C 211-213, each of which can be associated with the one or more tenants. For example, tenant A 201 is associated with partition A 211, tenant B 202 is associated with partition B 212, and tenant C 203 is associated with partition C 213.


Additionally, the IB subnet 240 can support one or more shared partitions, within which shared services are full members and clients from one or more tenants are limited members. For example, the IB subnet 240 can include a default partition 210 that allows for sharing limited membership among different tenants 201-203 in order to access a SA 220 in the subnet 240 (i.e. the default partition 210 can be used exclusively for SA 220 access). The default partition 210, which is a shared partition, can provide clients in different partitions with access to the SA instance 220.


In accordance with an embodiment of the invention, the SM 206 can rely on the basic hardware GUID of the relevant IB ports that are based on secure HCA instances 221-222 with trusted and/or authenticated SMA implementations. The secure HCA implementations also ensures that source LIDs and source GUIDs, which are included in the IB packet headers sent from the HCA, can include a value that is in correspondence with what the SM 206 has retrieved from or set up for the corresponding SMA 241-242 and HCA port. Thus, the source IDs used in packet headers from the HCA 221-222 is guaranteed to be consistent with what the SM 206 expects.


Additionally, the hardware controlled IB packet headers may be available to a receiving entity (e.g. in the case of an unreliable datagram packet, which includes communication management datagrams that are used for establishing reliable connection type communication). The receiving entity can correlate the information in the received payload with the source information in the packet headers. Furthermore, the receiving entity can check with the SA branch of the SM to determine whether any payload based source ID is legal for the relevant source port.



FIG. 4 shows a flow chart for correlating information in a received payload with source information in a packet header. At step 410, it is ensured that source LIDs and source GUIDs, which are included in the IB packet headers sent from the HCA, can include a value that is in correspondence with what the SM has retrieved from or set up for the corresponding SMA. At step 420, the hardware controlled IB packet headers is made available to a receiving entity. At step 430, The information in the received payload is correlated with the source information in the packet headers. At step 440, the SA branch of the SM is checked to determine whether any payload based source ID is legal for the relevant source port.


Furthermore, the SM 206/SA 220 can keep track of a list of multicast group IDs (MCGIDs) that are associated with specific partitions. Also, the SM/SA may require that any client defined multicast group to include a bit field that represents the relevant partition number, e.g. in a manner similar to what is defined for the default broadcast group in Internet Protocol over Infiniband (IPoIB). Thus, the SM/SA can ensure that relevant multicast group IDs may only be created for the relevant partitions and also by clients that are legal members of the relevant partitions.


The SM 206/SA 220 may also have policy that restricts client creation of certain multicast groups in different partitions. This can include well known multicast groups with special semantics, e.g. in a manner similar to how the default broadcast group defines to what extent an IPoIB link exists in a partition. Thus, the SM 206/SA 220 can ensure that unintended communication types are not enabled in a partition.


Furthermore, by allowing the scope of different GUIDs to be only defined for specific sets of partitions and/or specific sets of physical nodes in the IB fabric, e.g. in accordance with policy input via a designated management interface to the SM/SA), the SM/SA can ensure that such IDs may only be used to represent the correct physical and logical communication end-points without any interference from unrelated communication using the same GUIDs.


Additionally, the communication for each tenant can be contained within a corresponding sub-set of the complete fabric topology, which can include the corresponding storage and external network resources. Furthermore, if shared services are used between the tenants, then separate fabric buffer resources (VLs) can be used for this communication in order to avoid impact on the tenant/system internal traffic.


For more complex topologies as well as more complex communication patterns between different components and sub-systems/sub-topologies, other advanced methods for handling allocation and adjustment of bandwidth can be implemented. These advanced methods can include both static and dynamic routing, static and dynamic SL/VL usage, as well as dynamic monitoring and handling of congestion conditions.


As shown in FIG. 2, a single active SM/SA instance 220 can provide the SA access service via a single port. The SA access service can represent a single shared service in the subnet 240 for all hosts independently of which system/tenant the hosts belong to. The SA can be implemented to handle the “brute force” shutdown of host HCA ports that may greatly limit the SA request processing capacity. Also, the SA can be implemented to be based on enhanced flow-control that involves cooperation between well behaved clients and the SA.


From a security perspective, the fabric 200 does not rely on well-behaved clients. The fabric 200 can be implemented to address both the fine grained Denial of Service (DoS) prevention and reasonable QOS/SLAs for a large number of concurrent clients. Additionally, the SM/SA infrastructure can be designed for dealing with multiple IB subnets in the same physical fabric.


The switch based IB security scheme, e.g. for M_Key protection and switch based partition enforcement, may depend on whether the IB fabric 200 and the associated cabling are physically secure and are stable. Like conventional Ethernet VLAN enforcement schemes, a node that is plugged into a switch port can exercise the partition membership that is defined for that switch port, independently of whether this membership was intended for another node instance. Thus, any policy information that depends on the identity of a node, rather than the physical connectivity, may not be correctly enforced in the presence of cabling mistakes or ID spoofing by the host node.


In order to address this issue, a management entity, e.g. SM 206, can use a robust scheme that uses public key/private key protocols to perform an explicit authentication of a remote SMA instance, e.g. SMA 241. This authentication step can avoid exposing any private credentials, e.g. M_Key, to the remote entity, which may turn out to be non-trustworthy.



FIG. 3 illustrates an exemplary flow chart for providing source ID spoof protection in an IB fabric in accordance with an embodiment of the invention. As shown in FIG. 3, at step 301, a plurality of tenants can be supported in a subnet that connects a plurality of physical servers, wherein the plurality of tenants are associated with different partitions in the subnet. Then, at step 302, the plurality of tenants can use at least one shared service. Finally, at step 303, the IB fabric can be configured to determine what ID values are legal for different physical servers and different partitions.


The present invention may be conveniently implemented using one or more conventional general purpose or specialized digital computer, computing device, machine, or microprocessor, including one or more processors, memory and/or computer readable storage media programmed according to the teachings of the present disclosure. Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art.


In some embodiments, the present invention includes a computer program product which is a storage medium or computer readable medium (media) having instructions stored thereon/in which can be used to program a computer to perform any of the processes of the present invention. The storage medium can include, but is not limited to, any type of disk including floppy disks, optical discs, DVD, CD-ROMs, microdrive, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic or optical cards, nanosystems (including molecular memory ICs), or any type of media or device suitable for storing instructions and/or data.


The foregoing description of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations will be apparent to the practitioner skilled in the art. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to understand the invention for various embodiments and with various modifications that are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalence.

Claims
  • 1. A method for providing source ID spoof protection in an InfiniBand (IB) fabric of a computer system comprising a subnet including a plurality of physical host servers each associated with a host channel adapter (HCA), and a plurality of tenants executing on the physical servers, wherein each HCA provides a port to the subnet, each port having a hardware globally unique identifier (GUID), and wherein each tenant is provided access to the subnet via the provided port of the HCA associated with the server that each tenant executes on, the method comprising: providing a subnet manager (SM) that is responsible for initializing the subnet and configuring each port of each HCA included in the subnet;assigning, by the subnet manager, a local identifier (LID) to each port of each HCA in the subnet;including, by each HCA, the GUID and the LID of each HCA in the packet header of each packet sent by each HCA;including a payload based source ID in the payload of each packet sent by each HCA;providing a trusted secure subnet management agent (SMA) operating on each HCA;providing a subnet administrator (SA) in the IB fabric, wherein the subnet administrator comprises a subnet database that stores information about the subnet, and wherein the SA is a shared service in the subnet;providing a default partition that is a shared partition, wherein each tenant of the subnet is a member of the default partition and wherein each tenant, and clients thereof, have access to shared services of the subnet that are full members of the default partition;making the SA shared service a full member of the default partition, thereby giving each tenant access to the SA shared service;performing, by an entity receiving each of said communication packets over the IB fabric, a correlation of the payload based source ID in each received packet sent by each HCA with the GUID and LID source information in the packet header of each received packet sent by each HCA;checking, with the SA shared service, and by the entity receiving each of said communication packets over the IB fabric, that the payload based source ID is legal for the port of the HCA that sent each received packet.
  • 2. The method according to claim 1, further comprising: providing a management interface, wherein the management interface is used to specify which identifiers are legal for which physical host channel adaptor ports and/or partitions.
  • 3. The method according to claim 1, further comprising: receiving an IB request packet verifying that the payload based source ID included in a corresponding packet payload is permitted for a sender based on hardware enforced source information in the IB packet header.
  • 4. The method according to claim 1, further comprising: using a public key/private key protocol to provide explicit authentication of a trusted subnet management agent (SMA) instance.
  • 5. The method of claim 1, further comprising: keeping track, by the subnet manager, of a list of multicast group IDs that are associated with specific partitions.
  • 6. The method of claim 5, further comprising: requiring, by the subnet manager, that any client defined multicast group ID include a bit field that represents the relative partition number of the partition with which a given multicast group ID is associated with.
  • 7. The method of claim 5, further comprising: assigning a unique ID to each tenant in the subnet.
  • 8. A non-transitory machine readable storage medium comprising instructions stored thereon for providing source ID spoof protection in an InfiniBand (IB) fabric of a computer system comprising a subnet including a plurality of physical host servers each associated with a host channel adapter (HCA), and a plurality of tenants executing on the physical servers, wherein each HCA provides a port to the subnet, each port having a hardware globally unique identifier (GUID), and wherein each tenant is provided access to the subnet via the provided port of the HCA associated with the server that each tenant executes on, which instructions, when executed, cause the computer system to perform steps comprising: providing a subnet manager (SM) that is responsible for initializing the subnet and configuring each port of each HCA included in the subnet;assigning, by the subnet manager, a local identifier (LID) to each port of each HCA in the subnet;including, by each HCA, the GUID and the LID of each HCA in the packet header of each packet sent by each HCA;including a payload based source ID in the payload of each packet sent by each HCA;assigning an unique ID to each tenant included in the subnet;providing a trusted secure subnet management agent (SMA) operating on each HCA;providing a subnet administrator (SA) in the IB fabric, wherein the subnet administrator comprises a subnet database that stores information about the subnet, and wherein the SA is a shared service in the subnet;providing a default partition that is a shared partition, wherein each tenant of the subnet is a member of the default partition and wherein each tenant, and clients thereof, have access to shared services of the subnet that are full members of the default partition;making the SA shared service a full member of the default partition, thereby giving each tenant access to the SA shared service;performing, by an entity receiving each of said communication packets over the IB fabric, a correlation of the payload based source ID in each received packet sent by each HCA with the GUID and LID source information in the packet header of each received packet sent by each HCA;checking, with the SA shared service, and by the entity receiving each of said communication packets over the IB fabric, that the payload based source ID is legal for the port of the HCA that sent each received packet.
  • 9. A system for providing source ID spoof protection in an InfiniBand (IB) fabric, comprising: a subnet, including a plurality of physical host servers each having one or more microprocessors, wherein each physical host server is associated with a host channel adapter (HCA) that operates as part of the IB fabric, wherein each host channel adaptor provides a port in the subnet, each port having a hardware globally unique identifier (GUID), and wherein each host channel adaptor is associated with a trusted secure subnet management agent (SMA);a plurality of tenants executing on the physical servers, wherein each tenant is provided access to the subnet via the provided port of the HCA associated with the server that each tenant executes on;a subnet manager (SM) that is responsible for initializing the subnet and configuring each port of each HCA included in the subnet, wherein the subnet manager assigns a local identifier (LID) to each port of each HCA in the subnet;wherein each HCA is configured to include the GUID and the LID of each HCA in the packet header of each packet sent by each HCA and a payload based source ID in the payload of each packet sent by each HCA;a subnet administrator (SA) in the IB fabric, wherein the subnet administrator comprises a subnet database that stores information about the subnet, and wherein the SA is a shared service in the subnet;a default partition that is a shared partition, wherein each tenant of the subnet is a member of the default partition and wherein each tenant, and clients thereof, have access to shared services of the subnet that are full members of the default partition, and wherein the SA shared service is a full member of the default partition, thereby giving each tenant access to the SA shared service;wherein an entity receiving each of said communication packets over the IB fabric is configured to perform a correlation of the payload based source ID in each received packet sent by each HCA with the GUID and LID source information in the packet header of each received packet sent by each HCA; andwherein the entity receiving each of said communication packets over the IB fabric is further configured to check with the SA shared service that the payload based source ID is legal for the port of the HCA that sent each received packet.
  • 10. The system according to claim 9, further comprising a management interface, wherein the management interface is used to specify which identifiers are permitted for which physical host channel adaptor ports and/or partitions.
  • 11. The system according to claim 9, wherein: the subnet manager (SM) receives an IB request packet verifying that the payload based source ID included in a corresponding packet payload is legal for a sender based on hardware enforced source information in the IB packet header.
  • 12. The system according to claim 9, wherein a public key/private key protocol is used to provide explicit authentication of a trusted subnet management agent (SMA) instance.
  • 13. The system of claim 9, wherein the subnet manager keeps track of a list of multicast group IDs that are associated with specific partitions.
  • 14. The system of claim 9, wherein the subnet manager requires that any client defined multicast group ID include a bit field that represents the relative partition number of the partition with which a given multicast group ID is associated with.
  • 15. The system of claim 9, wherein a unique ID is assigned to each tenant in the subnet.
CLAIM OF PRIORITY

This application claims the benefit of priority on U.S. Provisional Patent Application No. 61/493,330, entitled “STATEFUL SUBNET MANAGER FAILOVER IN A MIDDLEWARE MACHINE ENVIRONMENT” filed Jun. 3, 2011, which application is herein incorporated by reference. The current application hereby incorporates by reference the material in the following patent applications: U.S. patent application Ser. No. 13/487,973, entitled “SYSTEM AND METHOD FOR PROVIDING SECURE SUBNET MANAGER AGENT (SMA) IN AN INFINIBAND (IB) NETWORK”, by inventors Bjorn Dag Johnsen, Ola Torudbakken and David Brean, filed Jun. 4, 2012. U.S. patent application Ser. No. 13/488,040, entitled “SYSTEM AND METHOD FOR AUTHENTICATING IDENTITY OF DISCOVERED COMPONENT IN AN INFINIBAND (IB) NETWORK”, by inventors Bjorn Dag Johnsen, Predrag Hodoba and Ola Torudbakken, filed Jun. 4, 2012. U.S. patent application Ser. No. 13/488,088, entitled “SYSTEM AND METHOD FOR SUPPORTING CONSISTENT HANDLING OF INTERNAL ID SPACES FOR DIFFERENT PARTITIONS IN AN INFINIBAND (IB) NETWORK,” by inventors Bjorn Dag Johnsen, Line Holen and David Brean filed Jun. 4, 2012.

US Referenced Citations (204)
Number Name Date Kind
5805805 Civanlar et al. Sep 1998 A
5964837 Chao et al. Oct 1999 A
6014669 Slaughter Jan 2000 A
6091706 Shaffer Jul 2000 A
6202067 Blood Mar 2001 B1
6463470 Mohaban et al. Oct 2002 B1
6594759 Wang Jul 2003 B1
6647419 Mogul Nov 2003 B1
6678835 Shah et al. Jan 2004 B1
6748429 Talluri et al. Jun 2004 B1
6829685 Neal et al. Dec 2004 B2
6904545 Erimli et al. Jun 2005 B1
6941350 Frazier et al. Sep 2005 B1
6963932 Bhat Nov 2005 B2
6978300 Beukema et al. Dec 2005 B1
6981025 Frazier et al. Dec 2005 B1
6985956 Luke et al. Jan 2006 B2
7023811 Pinto Apr 2006 B2
7069468 Olson Jun 2006 B1
7113995 Beukema et al. Sep 2006 B1
7185025 Rosenstock et al. Feb 2007 B2
7194540 Aggarwal et al. Mar 2007 B2
7200704 Njoku et al. Apr 2007 B2
7216163 Sinn May 2007 B2
7221676 Green May 2007 B2
7231518 Bakke Jun 2007 B1
7290277 Chou et al. Oct 2007 B1
7302484 Stapp et al. Nov 2007 B1
7356841 Wilson et al. Apr 2008 B2
7398394 Johnsen et al. Jul 2008 B1
7409432 Recio et al. Aug 2008 B1
7437447 Brey et al. Oct 2008 B2
7493409 Craddock et al. Feb 2009 B2
7500236 Janzen Mar 2009 B2
7633955 Saraiya et al. Dec 2009 B1
7634608 Droux Dec 2009 B2
7636772 Kirby Dec 2009 B1
7653668 Shelat Jan 2010 B1
7685385 Choudhary et al. Mar 2010 B1
7724748 Davis May 2010 B2
7783788 Quinn et al. Aug 2010 B1
7843822 Paul et al. Nov 2010 B1
7853565 Liskov Dec 2010 B1
7860961 Finkelstein et al. Dec 2010 B1
7873711 Adams et al. Jan 2011 B2
7953890 Katkar May 2011 B1
8184555 Mouton et al. May 2012 B1
8214558 Sokolov Jul 2012 B1
8214653 Marr Jul 2012 B1
8234407 Sugumar Jul 2012 B2
8327437 McAlister Dec 2012 B2
8331381 Brown et al. Dec 2012 B2
8335915 Plotkin et al. Dec 2012 B2
8423780 Plotkin et al. Apr 2013 B2
8549281 Samovskiy et al. Oct 2013 B2
8583921 Shu Nov 2013 B1
8635318 Shankar Jan 2014 B1
8739273 Johnsen May 2014 B2
8769152 Gentieu Jul 2014 B2
8924952 Hou Dec 2014 B1
8935206 Aguilera Jan 2015 B2
8935333 Beukema Jan 2015 B2
8972966 Kelso Mar 2015 B2
20020059597 Kikinis et al. May 2002 A1
20020120720 Moir Aug 2002 A1
20020143914 Cihula Oct 2002 A1
20020188711 Meyer et al. Dec 2002 A1
20020198755 Birkner Dec 2002 A1
20030009487 Prabakaran et al. Jan 2003 A1
20030009551 Benfield et al. Jan 2003 A1
20030033427 Brahmaroutu Feb 2003 A1
20030079040 Jain et al. Apr 2003 A1
20030093509 Li et al. May 2003 A1
20030105903 Garnett et al. Jun 2003 A1
20030115276 Flaherty Jun 2003 A1
20030120852 McConnell et al. Jun 2003 A1
20030208572 Shah et al. Nov 2003 A1
20040022245 Forbes et al. Feb 2004 A1
20040031052 Wannamaker Feb 2004 A1
20040068501 McGoveran Apr 2004 A1
20040090925 Schoeberl May 2004 A1
20040139083 Hahn Jul 2004 A1
20040153849 Tucker et al. Aug 2004 A1
20040162973 Rothman Aug 2004 A1
20040193768 Carnevale Sep 2004 A1
20040199764 Koechling et al. Oct 2004 A1
20040220947 Aman et al. Nov 2004 A1
20040249928 Jacobs et al. Dec 2004 A1
20040255286 Rothman Dec 2004 A1
20050025520 Murakami Feb 2005 A1
20050044363 Zimmer et al. Feb 2005 A1
20050071382 Rosenstock Mar 2005 A1
20050071709 Rosenstock et al. Mar 2005 A1
20050086342 Burt et al. Apr 2005 A1
20050091396 Nilakantan et al. Apr 2005 A1
20050105554 Kagan et al. May 2005 A1
20050125520 Hanson et al. Jun 2005 A1
20050182701 Cheston Aug 2005 A1
20050182831 Uchida et al. Aug 2005 A1
20050182853 Lewites et al. Aug 2005 A1
20050198164 Moore et al. Sep 2005 A1
20050198250 Wang Sep 2005 A1
20050213608 Modi Sep 2005 A1
20050273641 Sandven et al. Dec 2005 A1
20060079278 Ferguson et al. Apr 2006 A1
20060112297 Davidson May 2006 A1
20060114863 Sanzgiri Jun 2006 A1
20060117103 Brey et al. Jun 2006 A1
20060168192 Sharma Jul 2006 A1
20060177103 Hildreth Aug 2006 A1
20060195560 Newport Aug 2006 A1
20060221975 Lo et al. Oct 2006 A1
20060233168 Lewites et al. Oct 2006 A1
20070016694 Achler Jan 2007 A1
20070050763 Kagan Mar 2007 A1
20070110245 Sood et al. May 2007 A1
20070129917 Blevins Jun 2007 A1
20070195774 Sherman Aug 2007 A1
20070195794 Fujita et al. Aug 2007 A1
20070206735 Silver et al. Sep 2007 A1
20070253328 Harper et al. Nov 2007 A1
20080031266 Tallet et al. Feb 2008 A1
20080144614 Fisher et al. Jun 2008 A1
20080159277 Vobbilisetty et al. Jul 2008 A1
20080183853 Manion et al. Jul 2008 A1
20080184332 Gerkis Jul 2008 A1
20080192750 Ko et al. Aug 2008 A1
20080201486 Hsu et al. Aug 2008 A1
20080209018 Hernandez et al. Aug 2008 A1
20080229096 Alroy et al. Sep 2008 A1
20080250125 Brey et al. Oct 2008 A1
20080288646 Hasha Nov 2008 A1
20080310421 Teisberg Dec 2008 A1
20080310422 Booth et al. Dec 2008 A1
20090049164 Mizuno Feb 2009 A1
20090116404 Mahop et al. May 2009 A1
20090178033 Challener Jul 2009 A1
20090216853 Burrow et al. Aug 2009 A1
20090249472 Litvin et al. Oct 2009 A1
20090271472 Scheifler Oct 2009 A1
20090307499 Senda Dec 2009 A1
20090327462 Adams et al. Dec 2009 A1
20100014526 Chavan Jan 2010 A1
20100020806 Vahdat Jan 2010 A1
20100080117 Coronado et al. Apr 2010 A1
20100082853 Block et al. Apr 2010 A1
20100114826 Voutilainen May 2010 A1
20100138532 Glaeser et al. Jun 2010 A1
20100142544 Chapel et al. Jun 2010 A1
20100166167 Karimi-Cherkandi et al. Jul 2010 A1
20100235488 Sharma et al. Sep 2010 A1
20100268857 Bauman et al. Oct 2010 A1
20100306772 Arnold et al. Dec 2010 A1
20110022574 Hansen Jan 2011 A1
20110072206 Ross et al. Mar 2011 A1
20110110366 Moore et al. May 2011 A1
20110138082 Khatri Jun 2011 A1
20110138185 Ju et al. Jun 2011 A1
20110173302 Rider Jul 2011 A1
20110179195 O'Mullan Jul 2011 A1
20110209202 Otranen Aug 2011 A1
20110222492 Borsella et al. Sep 2011 A1
20110264577 Winbom et al. Oct 2011 A1
20110283017 Alkhatib Nov 2011 A1
20110307886 Thanga Dec 2011 A1
20120005480 Batke et al. Jan 2012 A1
20120039331 Astigarraga et al. Feb 2012 A1
20120195417 Hua et al. Aug 2012 A1
20120239928 Judell Sep 2012 A1
20120290698 Alroy et al. Nov 2012 A1
20120311333 Johnsen Dec 2012 A1
20130041969 Falco et al. Feb 2013 A1
20130046904 Hilland Feb 2013 A1
20130159865 Smith et al. Jun 2013 A1
20130179870 Kelso Jul 2013 A1
20130191622 Sasaki Jul 2013 A1
20130227561 Walsh Aug 2013 A1
20130298183 McGrath Nov 2013 A1
20130318341 Bagepalli Nov 2013 A1
20130332982 Rao Dec 2013 A1
20140068258 Chao Mar 2014 A1
20140095853 Sarangshar Apr 2014 A1
20140095876 Smith et al. Apr 2014 A1
20140289792 Fry Sep 2014 A1
20140317716 Chao Oct 2014 A1
20140344436 Madani Nov 2014 A1
20140351423 Madani Nov 2014 A1
20140351920 Madani Nov 2014 A1
20140351921 Madani Nov 2014 A1
20140351922 Madani Nov 2014 A1
20140351923 Madani Nov 2014 A1
20150012962 Walsh Jan 2015 A1
20150026332 Madani Jan 2015 A1
20150066759 Madani Mar 2015 A1
20150067020 Makhervaks Mar 2015 A1
20150067789 Madani Mar 2015 A1
20150067809 Madani Mar 2015 A1
20150244817 Johnsen Aug 2015 A1
20150358349 Holden Dec 2015 A1
20150363219 Kasturi Dec 2015 A1
20150381576 Bosko Dec 2015 A1
20160036920 Sama Feb 2016 A1
20160285917 Fry Sep 2016 A1
20170170988 Mazarick Jun 2017 A1
Foreign Referenced Citations (15)
Number Date Country
1567827 Jan 2005 CN
1728664 Feb 2006 CN
2 051 436 Apr 2009 EP
2160068 Mar 2010 EP
2002247089 Aug 2002 JP
2004166263 Jun 2004 JP
2005522774 Jul 2005 JP
2006157285 Jun 2006 JP
2007501563 Jan 2007 JP
200854214 Mar 2008 JP
2009510953 Mar 2009 JP
0190838 Nov 2001 WO
2006016698 Feb 2006 WO
2008099479 Aug 2008 WO
2012037518 Mar 2012 WO
Non-Patent Literature Citations (32)
Entry
V. Kashyap, RFC 4392: IP over Infiniband Architecture , Apr. 2006 p. 1-22.
Tom Shanley et al., Infiniband Network Architecture, Pearson Education, published Oct. 2002 p. 206-208,403-406.
Tom Shanley et al. Infiniband Network Architecture, Pearson Education, published Oct. 2002 p. 117-123, 629-633.
International Search Report dated Sep. 23, 2013 for Application No. PCT/US2013/040639, 10 pages.
Aurelio Bermudez, On the InfiniBand Subnet Discovery Process, IEEE the Computer Society 2003, pp. 1-6.
Tom Shanley, Infiniband Network Architecture, Pearson Education 2002, p. 559, 561.
Shanley, Tom, “Infiniband Network Architecture” (excerpt), Pearson Education, Copyright © 2002 by MindShare, Inc., published Oct. 2002, p. 204-209, 560-564.
European Patent Office, International Searching Authority, International Search Report and Written Opinion dated Sep. 12, 2012 for International Application No. PCT/US2012/040775, 13 pages.
Tom Shanley, Infiniband Network Architecture (excerpt), chapter—Detailed Description of the Link Layer, Pearson Education, published 2002, p. 390-392, 485, 491-493, 537-539.
Shanley, Tom, Infiniband Network Architecture (excerpt), Pearson Education, published 2002, p. 209-211, 393-394, 551, 554.
International Search Report dated Sep. 26, 2013 for Application No. PCT/US2013/040656, 10 pages.
InfiniBand℠ Trade Association, InfiniBand™ Architecture Specification, vol. 1, Release 1.2.1, Nov. 2007, pp. 1-1727.
Shanley, Tom, “Infiniband Network Architecture”, Pearson Education, Copyright © 2002 by MindShare, Inc., published Oct. 2002 p. 387-394.
Lee, M., Security Enhancement in Infiniband Architecture, IEEE, vol. 19, Apr. 2005, pp. 1-18.
Tom Shanley, “Infiniband Network Architecture”, Copyright © 2002 by MindShare, Inc., ISBN: 0-321-11765-4, pp. 83-87, 95-102, 205-208, 403-406.
State Intellectual Property Office of the People's Republic of China, Search Report for Chinese Patent Application No. 201180039807.0, dated Jun. 3, 2015, 2 pages.
State Intellectual Property Office of the People's Republic of China, Search Report for Chinese Patent Application No. 201180040064.9, May 29, 2015, 1 page.
State Intellectual Property Office of the People's Republic of China dated May 5, 2015 for Chinese Patent Application No. 201180039850.7, 2 pages.
State Intellectual Property Office of the People's Republic of China, Search Report dated Sep. 9, 2015 for Chinese Patent Application No. 201280027279.1, 2 pages.
Tom Shanley, Infiniband Network Architecture (excerpt), Copyright © 2002 by MindShare, Inc., p. 213.
United States Patent and Trademark Office, Office Action dated Apr. 8, 2016 for U.S. Appl. No. 13/235,130, 32 pages.
United States Patent and Trademark Office, Office Action dated Apr. 8, 2016 for U.S. Appl. No. 13/235,161, 24 pages.
United States Patent and Trademark Office, Office Action dated May 6, 2016 for U.S. Appl. No. 13/488,192, 14 Pages.
United States Patent and Trademark Office, Office Action dated May 6, 2016 for U.S. Appl. No. 13/488,221, 16 Pages.
Shanley, Tom, “Infiniband Network Architecture” (Excerpt), Copyright 2002 by Mindshare, Inc., p. 86-87.
United States Patent and Trademark Office, Office Action dated Jun. 3, 2016 for U.S. Appl. No. 13/235,187, 22 pages.
United States Patent and Trademark Office, Office Action dated Apr. 18, 2017 for U.S. Appl. No. 13/235,113, 30 Pages.
Shanley, Tom, “Infiniband Network Architecture” (Excerpt), Copyright 2002 by Mindshare, Inc., pp. 8-9, 391-396, 549-551.
European Patent Office, Communication Pursuant to Article 94(3) EPC, dated Mar. 8, 2017 for European Patent Application No. 11767106.5, 10 Pages.
Ching-Min Lin et al., “A New Quorum-Based Scheme for Managing Replicated Data in Distributed Systems” IEEE Transactions on Computers, vol. 51, No. 12, Dec. 2002, 6 pages.
United States Patent and Trademark Office, Office Action Dated Nov. 16, 2017 for U.S. Appl. No. 13/235,113, 28 pages.
United States Patent and Trademark Office, Office Communication Dated Nov. 30, 2017 for U.S. Appl. No. 13/235,130, 3 pages.
Related Publications (1)
Number Date Country
20120311670 A1 Dec 2012 US
Provisional Applications (1)
Number Date Country
61493330 Jun 2011 US