Patents by Inventor Steven W. Hunter

Steven W. Hunter has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8488456
    Abstract: A method, switch, and/or computer program product routes IP packet flows. An Ethernet switch receives an IP packet flow. Each of the packets in the IP packet flow has a header that contains a same 5-tuple. A load balancing control engine determines whether servers in a group of servers are balanced in their utilization according to 5-tuple redirection rules contained in the load balancing control engine. In response to the load balancing control engine determining, according to the 5-tuple redirection rules, that the servers are balanced, the Ethernet switch routes the IP packet flow to the servers. In response to the load balancing control engine determining that the servers are unbalanced, the load balancing control engine instructs the Ethernet switch to redirect the IP packet flow to a server that is relatively less busy than other servers.
    Type: Grant
    Filed: May 10, 2012
    Date of Patent: July 16, 2013
    Assignee: International Business Machines Corporation
    Inventors: Tzvetelina B. Battestilli, Steven W. Hunter, Terry L. Nelms, Gary R. Shippy
  • Patent number: 8472341
    Abstract: A method, system, and/or computer program product steers Internet Protocol (IP) packet fragments. A switch receives a first IP packet fragment that contains a 3-tuple in its header. In response to determining that the first IP packet fragment is not a lead packet fragment in the series of IP packet fragments, the first IP packet fragment is pushed onto a data stack. The switch subsequently receives a second IP packet fragment that contains a 5-tuple, which includes the 3-tuple from the first IP packet fragment plus a source port and destination port used by the second IP packet fragment. The 3-tuple is mapped to the 5-tuple in a fragmentation table, thus enabling both the first IP packet fragment and the second IP packet fragment to be steered to the destination port to which the second IP packet fragment is being sent.
    Type: Grant
    Filed: May 11, 2012
    Date of Patent: June 25, 2013
    Assignee: International Business Machines Corporation
    Inventors: Tzvetelina B. Battestilli, Steven W. Hunter, Terry L. Nelms, Gary R. Shippy
  • Publication number: 20120224486
    Abstract: A method, switch, and/or computer program product routes IP packet flows. An Ethernet switch receives an IP packet flow. Each of the packets in the IP packet flow has a header that contains a same 5-tuple. A load balancing control engine determines whether servers in a group of servers are balanced in their utilization according to 5-tuple redirection rules contained in the load balancing control engine. In response to the load balancing control engine determining, according to the 5-tuple redirection rules, that the servers are balanced, the Ethernet switch routes the IP packet flow to the servers. In response to the load balancing control engine determining that the servers are unbalanced, the load balancing control engine instructs the Ethernet switch to redirect the IP packet flow to a server that is relatively less busy than other servers.
    Type: Application
    Filed: May 10, 2012
    Publication date: September 6, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: TZVETELINA B. BATTESTILLI, STEVEN W. HUNTER, TERRY L. NELMS, II, GARY R. SHIPPY
  • Publication number: 20120224581
    Abstract: A method, system, and/or computer program product steers Internet Protocol (IP) packet fragments. A switch receives a first IP packet fragment that contains a 3-tuple in its header. In response to determining that the first IP packet fragment is not a lead packet fragment in the series of IP packet fragments, the first IP packet fragment is pushed onto a data stack. The switch subsequently receives a second IP packet fragment that contains a 5-tuple, which includes the 3-tuple from the first IP packet fragment plus a source port and destination port used by the second IP packet fragment. The 3-tuple is mapped to the 5-tuple in a fragmentation table, thus enabling both the first IP packet fragment and the second IP packet fragment to be steered to the destination port to which the second IP packet fragment is being sent.
    Type: Application
    Filed: May 11, 2012
    Publication date: September 6, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Tzvetelina B. BATTESTILLI, Steven W. HUNTER, Terry L. NELMS, II, Gary R. SHIPPY
  • Patent number: 8243618
    Abstract: A method, system and/or computer program steer internet protocol (IP) packet fragments that are components of a series of IP packet fragments. A switch receives an IP packet fragment. In response to determining that the fragment is not a lead packet fragment in a series of IP packet fragments that make up an original IP packet, the IP packet fragment is pushed onto a data stack. The switch then receives an IP packet fragment which is determined to be the lead packet fragment in a series of IP packet fragments. The IP 5-tuple from the lead packet fragment is parsed to steer all fragments in the series to a destination port.
    Type: Grant
    Filed: April 26, 2010
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventors: Tzvetelina B. Battestilli, Steven W. Hunter, Terry L. Nelms, II, Gary R. Shippy
  • Patent number: 8243598
    Abstract: A method, system and/or computer program product route IP packet flows. An Ethernet switch is coupled to a load balancing control engine, which contains load balancing logic that is logically isolated from the Ethernet switch. The Ethernet switch, which routes IP packet flows to servers, receives an IP packet flow. The load balancing control engine determines if the servers are balanced in their workloads. In response to the load balancing control engine determining that the servers are balanced, the Ethernet switch routes the IP packet flow to the servers without the Ethernet switch directly receiving any feedback from the servers regarding their workloads. In response to the load balancing control engine determining that the servers are unbalanced, the load balancing control engine instructs the Ethernet switch to redirect the IP packet flow to a server that is relatively less busy than other servers.
    Type: Grant
    Filed: April 26, 2010
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventors: Tzvetelina B. Battestilli, Steven W. Hunter, Terry L. Nelms, II, Gary R. Shippy
  • Publication number: 20110261811
    Abstract: A method, system and/or computer program product route IP packet flows. An Ethernet switch is coupled to a load balancing control engine, which contains load balancing logic that is logically isolated from the Ethernet switch. The Ethernet switch, which routes IP packet flows to servers, receives an IP packet flow. The load balancing control engine determines if the servers are balanced in their workloads. In response to the load balancing control engine determining that the servers are balanced, the Ethernet switch routes the IP packet flow to the servers without the Ethernet switch directly receiving any feedback from the servers regarding their workloads. In response to the load balancing control engine determining that the servers are unbalanced, the load balancing control engine instructs the Ethernet switch to redirect the IP packet flow to a server that is relatively less busy than other servers.
    Type: Application
    Filed: April 26, 2010
    Publication date: October 27, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: TZVETELINA B. BATTESTILLI, STEVEN W. HUNTER, TERRY L. NELMS, II, GARY R. SHIPPY
  • Publication number: 20110261822
    Abstract: A method, system and/or computer program steer internet protocol (IP) packet fragments that are components of a series of IP packet fragments. A switch receives an IP packet fragment. In response to determining that the fragment is not a lead packet fragment in a series of IP packet fragments that make up an original IP packet, the IP packet fragment is pushed onto a data stack. The switch then receives an IP packet fragment which is determined to be the lead packet fragment in a series of IP packet fragments. The IP 5-tuple from the lead packet fragment is parsed to steer all fragments in the series to a destination port.
    Type: Application
    Filed: April 26, 2010
    Publication date: October 27, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: TZVETELINA B. BATTESTILLI, STEVEN W. HUNTER, TERRY L. NELMS, II, GARY R. SHIPPY
  • Patent number: 7937518
    Abstract: A computer-implemented method, apparatus, and computer usable program code are disclosed for migrating a virtual adapter from a source physical adapter to a destination physical adapter in a data processing system where multiple host computer systems share multiple adapters and communicate with those adapters through a PCI switched-fabric bus. The virtual adapter is first caused to stop processing transactions. All in-flight transactions that are associated with the virtual adapter are then captured. The configuration information that defines the virtual adapter is moved from the source physical adapter to the destination physical adapter. The in-flight transactions are then restored to their original locations on the destination virtual adapter. The virtual adapter is then restarted on the destination physical adapter such that the virtual adapter begins processing transactions.
    Type: Grant
    Filed: December 22, 2008
    Date of Patent: May 3, 2011
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7930598
    Abstract: A method, mechanism and computer usable medium is provided for distributing I/O fabric errors to the appropriate root nodes in a multi-root environment. The case where the I/O fabric is attached to more than one root node and where each root can potentially share with the other roots the I/O adapter (IOA) resources which are attached to the I/O is addressed. Additionally, a method, mechanism and computer usable medium is provided by which errors detected in an I/O fabric may be routed to all root nodes which may be affected by the error, while not being reported to the root nodes that will not be affected by those errors. In particular, distributed computing system which uses the PCI Express protocol to communicate over the I/O fabric is addressed.
    Type: Grant
    Filed: January 19, 2009
    Date of Patent: April 19, 2011
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7907604
    Abstract: Routing between multiple hosts and adapters in a PCI environment is provided by a method and system. A Destination Identification (DID) field is inserted in a field of the PCI bus address (PBA) of transaction packets dispatched through PCI switches. A particular DID is associated with a particular host or system image, and thus identifies the physical or virtual end point of the packets. The method and system may track connections such that when particular host of a root node becomes connected to a specified switch, a PCI Configuration Master (PCM), residing in one of the root nodes, is operated to enter a destination identifier or DID into a table. The DID is then inserted in the PBA of packets directed through the specified switch from the particular host to one of the adapters.
    Type: Grant
    Filed: June 6, 2008
    Date of Patent: March 15, 2011
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Fremiuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7889667
    Abstract: A method and apparatus is provided for routing error messages in a distributed computer system comprising multiple root nodes, and further comprising one or more PCI switches and one or more I/O adapters, wherein each root node includes one or more system images. In one useful embodiment, a method is provided for routing I/O error messages to root nodes respectively associated with the errors contained in the messages. The method includes detecting occurrence of an error at a specified one of the adapters, wherein the error affects one of the system images, and generating an error message at the specified adapter. The method further comprises routing the error message from the specified adapter to the particular root node that includes the affected system image. The error message is then selectively processed at the particular root node, in order to identify the affected system image.
    Type: Grant
    Filed: June 6, 2008
    Date of Patent: February 15, 2011
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7831759
    Abstract: A computer-implemented method, apparatus, and computer program product are disclosed in a data processing environment that includes host computer systems that are coupled to adapters utilizing a switched fabric for routing packets between the host computer systems and the adapters. A unique destination identifier is assigned to one of the host computer systems. A portion of a standard format packet destination address is selected. Within a particular packet, the portion is set equal to the unique identifier that is assigned to the host computer system. The particular packet is then routed through the fabric to the host computer system using the unique destination identifier.
    Type: Grant
    Filed: May 1, 2008
    Date of Patent: November 9, 2010
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7707465
    Abstract: A computer-implemented method, apparatus, and computer program product are disclosed for routing error messages in a multiple host computer system environment to only those host computer systems that are affected by the error. The environment includes multiple host computer systems that share multiple devices utilizing a switched fabric. An error is detected in one of the devices. Routing tables that are stored in fabric devices in the fabric are used to identify ones of the host computer systems that are affected by the error. An error message that identifies the error is routed to only the identified ones of the host computer systems.
    Type: Grant
    Filed: January 26, 2006
    Date of Patent: April 27, 2010
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7631050
    Abstract: In a distributed computer system having multiple root nodes, a challenge protocol is provided, for use in determining or confirming the root node in which a PCI Configuration Manager (PCM) actually resides. This node is referred to as the master node. The challenge procedure is activated whenever the identity of the PCM, which is determined by the root node in which it resides, appears to be uncertain. The challenge procedure resolves this uncertainty, and enables the PCM to continue to configure routings throughout the system. In a useful embodiment, a method is directed to a distributed computer system of the above type which is further provided with PCI switches and with adapters that are available for sharing by different nodes. The method includes the steps of selecting a first one of the root nodes to be master root node, and operating the first root node to query the configuration space of a particular one of the PCI switches.
    Type: Grant
    Filed: October 27, 2005
    Date of Patent: December 8, 2009
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven W. Thurber, Madeline Vega
  • Patent number: 7571273
    Abstract: A computer-implemented method, apparatus, and computer program product are disclosed for bus/device/function (BDF) translation and routing of communications packets through a fabric that utilizes PCI switches. Identifiers are included in communications packets that are routed between a host and an I/O adapter using a PCI fabric to which the host and the I/O adapter are coupled. Destination identifiers that are included in first communications packets that are received by edge switches, which are connected directly to said host or directly connected to said I/O adapter, are translated before routing the communications packets out of the edge switches. Second communications packets that are received by internal switches, which are not directly connected to the host or directly connected to the I/O adapter, are routed without translating destination identifiers that are included in the second communications packets.
    Type: Grant
    Filed: December 6, 2006
    Date of Patent: August 4, 2009
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7549003
    Abstract: System and method for managing routing of data in a distributed computing system, such as a distributed computing system that uses PCI Express protocol to communicate over an I/O fabric. A physical tree that is indicative of a physical configuration of the distributed computing system is determined, and a virtual tree is created from the physical tree. The virtual tree is then modified to change an association between at least one source device and at least one target device in the virtual tree. A validation mechanism validates the changed association between the at least one source device and the at least one target device to enable routing of data from the at least one source device to the at least one target device.
    Type: Grant
    Filed: February 18, 2008
    Date of Patent: June 16, 2009
    Assignee: International Business Machines Corporation
    Inventors: William T Boyd, Douglas M Freimuth, William G Holland, Steven W Hunter, Renato J Recio, Steven M Thurber, Madeline Vega
  • Publication number: 20090119551
    Abstract: A method, mechanism and computer usable medium is provided for distributing I/O fabric errors to the appropriate root nodes in a multi-root environment. The case where the I/O fabric is attached to more than one root node and where each root can potentially share with the other roots the I/O adapter (IOA) resources which are attached to the I/O is addressed. Additionally, a method, mechanism and computer usable medium is provided by which errors detected in an I/O fabric may be routed to all root nodes which may be affected by the error, while not being reported to the root nodes that will not be affected by those errors. In particular, distributed computing system which uses the PCI Express protocol to communicate over the I/O fabric is addressed.
    Type: Application
    Filed: January 19, 2009
    Publication date: May 7, 2009
    Applicant: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Publication number: 20090100204
    Abstract: A computer-implemented method, apparatus, and computer usable program code are disclosed for migrating a virtual adapter from a source physical adapter to a destination physical adapter in a data processing system where multiple host computer systems share multiple adapters and communicate with those adapters through a PCI switched-fabric bus. The virtual adapter is first caused to stop processing transactions. All in-flight transactions that are associated with the virtual adapter are then captured. The configuration information that defines the virtual adapter is moved from the source physical adapter to the destination physical adapter. The in-flight transactions are then restored to their original locations on the destination virtual adapter. The virtual adapter is then restarted on the destination physical adapter such that the virtual adapter begins processing transactions.
    Type: Application
    Filed: December 22, 2008
    Publication date: April 16, 2009
    Applicant: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega
  • Patent number: 7506094
    Abstract: A method is directed to use of a master root node, in a distributed computer system provided with multiple root nodes, to control the configuration of routings through an I/O switched-fabric. One of the root nodes is designated as the master root node or PCI Configuration Manager (PCM), and is operable to carry out the configuration while each of the other root nodes remains in a quiescent or inactive state. In one useful embodiment pertaining to a system of the above type, that includes multiple root nodes, PCI switches, and PCI adapters available for sharing by different root nodes, a method is provided wherein the master root node is operated to configure routings through the PCI switches. Respective routings are configured between respective root nodes and the PCI adapters, wherein each of the configured routings corresponds to only one of the root nodes.
    Type: Grant
    Filed: June 9, 2008
    Date of Patent: March 17, 2009
    Assignee: International Business Machines Corporation
    Inventors: William T. Boyd, Douglas M. Freimuth, William G. Holland, Steven W. Hunter, Renato J. Recio, Steven M. Thurber, Madeline Vega