Patents by Inventor Terry L. Nelms, II
Terry L. Nelms, II 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: 8532129Abstract: Assigning work, such as data packets, from a plurality of sources, such as data queues in a network processing device, to a plurality of sinks, such as processor threads in the network processing device is provided. In a given processing period, sinks that are available to receive work are identified and sources qualified to send work to the available sinks are determined taking into account any assignment constraints. A single source is selected from an overlap of the qualified sources and sources having work available. This selection may be made using a hierarchical source scheduler for processing subsets of supported sources simultaneously in parallel. A sink to which work from the selected source may be assigned is selected from available sinks qualified to receive work from the selected source.Type: GrantFiled: December 30, 2009Date of Patent: September 10, 2013Assignee: International Business Machines CorporationInventors: Claude Basso, Jean L. Calvignac, Chih-Jen Chang, Hubertus Franke, Terry L. Nelms, II, Fabrice Jean Verplanken
-
Publication number: 20120224486Abstract: 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: ApplicationFiled: May 10, 2012Publication date: September 6, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: TZVETELINA B. BATTESTILLI, STEVEN W. HUNTER, TERRY L. NELMS, II, GARY R. SHIPPY
-
Publication number: 20120224581Abstract: 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: ApplicationFiled: May 11, 2012Publication date: September 6, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Tzvetelina B. BATTESTILLI, Steven W. HUNTER, Terry L. NELMS, II, Gary R. SHIPPY
-
Patent number: 8243618Abstract: 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: GrantFiled: April 26, 2010Date of Patent: August 14, 2012Assignee: International Business Machines CorporationInventors: Tzvetelina B. Battestilli, Steven W. Hunter, Terry L. Nelms, II, Gary R. Shippy
-
Patent number: 8243598Abstract: 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: GrantFiled: April 26, 2010Date of Patent: August 14, 2012Assignee: International Business Machines CorporationInventors: Tzvetelina B. Battestilli, Steven W. Hunter, Terry L. Nelms, II, Gary R. Shippy
-
Publication number: 20110261811Abstract: 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: ApplicationFiled: April 26, 2010Publication date: October 27, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: TZVETELINA B. BATTESTILLI, STEVEN W. HUNTER, TERRY L. NELMS, II, GARY R. SHIPPY
-
Publication number: 20110261822Abstract: 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: ApplicationFiled: April 26, 2010Publication date: October 27, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: TZVETELINA B. BATTESTILLI, STEVEN W. HUNTER, TERRY L. NELMS, II, GARY R. SHIPPY
-
Publication number: 20110158250Abstract: A method and apparatus for assigning work, such as data packets, from a plurality of sources, such as data queues in a network processing device, to a plurality of sinks, such as processor threads in the network processing device. In a given processing period, sinks that are available to receive work are identified and sources qualified to send work to the available sinks are determined taking into account any assignment constraints. A single source is selected from an overlap of the qualified sources and sources having work available. This selection may be made using a hierarchical source scheduler for processing subsets of supported sources simultaneously in parallel. A sink to which work from the selected source may be assigned is selected from available sinks qualified to receive work from the selected source.Type: ApplicationFiled: December 30, 2009Publication date: June 30, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Claude Basso, Jean L. Calvignac, Chih-Jen Chang, Hubertus Franke, Terry L. Nelms, II, Fabrice Jean Verplanken
-
Publication number: 20110072247Abstract: Methods, systems, and computer program products for implementing fast application programmable timers are provided. A computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving a request to set a user accessible timer, the request received from an application thread. The user accessible timer is set in response to receiving the request, the setting including initializing a counter. The counter is decremented until an interrupt threshold has been reached. An interrupt signal is transmitted to the application thread in response to detecting that the interrupt threshold has been reached.Type: ApplicationFiled: September 21, 2009Publication date: March 24, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Hubertus Franke, James Xenidis, Terry L. Nelms, II, Hollis R. Blanchard