Patents by Inventor Alan Hollingshead
Alan Hollingshead 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: 10616346Abstract: Dynamic management of concurrent client connections to a server is achieved by a server, in that the server monitors its load state and when the server's maximum permitted number of concurrent requests has been exceeded it reduces the clients' maximum numbers of permitted concurrent requests until such time as the overloading situation no longer persists. In this way, the capacity of each of multiple connections can be controlled by the server individually or as a group, wherein the control is dynamic, so that the client-server connections do not have to be accurately configured in advance.Type: GrantFiled: July 28, 2017Date of Patent: April 7, 2020Assignee: International Business Machines CorporationInventors: Mike Brooks, Alan Hollingshead, Julian Horn, Philip Wakelin
-
Publication number: 20200092395Abstract: Method and system are provided for overload management of a transaction processing server. The method includes detecting a high load state of a server based on a count of current transactions being processed in the server and activating prioritization of incoming client requests to the server based on prioritization of types of transaction request that reduce the load on the server. The prioritization may include: inspecting incoming client requests to determine their type and allocate a priority level; and forwarding a higher level prioritized request for processing ahead of a lower level priority request.Type: ApplicationFiled: September 19, 2018Publication date: March 19, 2020Inventors: JULIAN HORN, ALAN HOLLINGSHEAD, MICHAEL D. BROOKS, PHILIP I. WAKELIN
-
Publication number: 20200076904Abstract: Methods, systems, and computer program products for handling multi-pipe connections is provided. A primary pipe request for a connection between a client and a server is received. The connection includes a plurality of pipes between the client and the server. The primary pipe request includes a number corresponding to the amount of pipes required for the connection. A first response acknowledging the receipt of the primary pipe request is transmitted. The first response includes a token. A plurality of subsequent pipe requests are received for the connection between the client and the server. Each subsequent pipe request includes the token. A subsequent response to each subsequent pipe request is transmitted. A count of the number of pipe requests received is maintained. The established pipes are released after a period of time has elapsed when the number of pipe requests received doesn't reach the number of pipes required for the connection.Type: ApplicationFiled: November 11, 2019Publication date: March 5, 2020Inventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Publication number: 20200076903Abstract: Methods, systems, and computer program products for handling multi-pipe connections is provided. A primary pipe request for a connection between a client and a server is received. The connection includes a plurality of pipes between the client and the server. The primary pipe request includes a number corresponding to the amount of pipes required for the connection. A first response acknowledging the receipt of the primary pipe request is transmitted. The first response includes a token. A plurality of subsequent pipe requests are received for the connection between the client and the server. Each subsequent pipe request includes the token. A subsequent response to each subsequent pipe request is transmitted. A count of the number of pipe requests received is maintained. The established pipes are released after a period of time has elapsed when the number of pipe requests received doesn't reach the number of pipes required for the connection.Type: ApplicationFiled: November 11, 2019Publication date: March 5, 2020Inventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 10574761Abstract: An apparatus, computer-implemented method and computer program product manages connections for data communication. A first system initiates a process for establishing a new connection pipe of a socket-based connection between the first system and a second system. The new connection pipe is a replacement for an existing connection pipe. The existing connection pipe is accessed by a respective existing socket at each of the first and second systems. The first system receives acknowledgement from the second system confirming that the replacement connection pipe is established. The replacement connection pipe is accessed by a respective replacement socket at each of the first and second systems. The first system re-associates sessions of the existing socket at the first system to the replacement socket at the first system.Type: GrantFiled: November 3, 2017Date of Patent: February 25, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian Horn, Philip Wakelin
-
Patent number: 10574758Abstract: Dynamic management of concurrent client connections to a server is achieved by a server, in that the server monitors its load state and when the server's maximum permitted number of concurrent requests has been exceeded it reduces the clients' maximum numbers of permitted concurrent requests until such time as the overloading situation no longer persists. In this way, the capacity of each of multiple connections can be controlled by the server individually or as a group, wherein the control is dynamic, so that the client-server connections do not have to be accurately configured in advance.Type: GrantFiled: December 15, 2017Date of Patent: February 25, 2020Assignee: International Business Machines CorporationInventors: Mike Brooks, Alan Hollingshead, Julian Horn, Philip Wakelin
-
Patent number: 10511672Abstract: Methods, systems, and computer program products for handling multi-pipe connections is provided. A primary pipe request for a connection between a client and a server is received. The connection includes a plurality of pipes between the client and the server. The primary pipe request includes a number corresponding to the amount of pipes required for the connection. A first response acknowledging the receipt of the primary pipe request is transmitted. The first response includes a token. A plurality of subsequent pipe requests are received for the connection between the client and the server. Each subsequent pipe request includes the token. A subsequent response to each subsequent pipe request is transmitted. A count of the number of pipe requests received is maintained. The established pipes are released after a period of time has elapsed when the number of pipe requests received doesn't reach the number of pipes required for the connection.Type: GrantFiled: July 2, 2018Date of Patent: December 17, 2019Assignee: International Business Machines CorporationInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 10511673Abstract: Methods, systems, and computer program products for handling multi-pipe connections is provided. A primary pipe request for a connection between a client and a server is received. The connection includes a plurality of pipes between the client and the server. The primary pipe request includes a number corresponding to the amount of pipes required for the connection. A first response acknowledging the receipt of the primary pipe request is transmitted. The first response includes a token. A plurality of subsequent pipe requests are received for the connection between the client and the server. Each subsequent pipe request includes the token. A subsequent response to each subsequent pipe request is transmitted. A count of the number of pipe requests received is maintained. The established pipes are released after a period of time has elapsed when the number of pipe requests received doesn't reach the number of pipes required for the connection.Type: GrantFiled: July 2, 2018Date of Patent: December 17, 2019Assignee: International Business Machines CorporationInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 10379928Abstract: Method and system are provided for preventing local processing problems interfering with a time-sensitive validation process. The method monitors an elapsed time of an instance of a time-sensitive validation process of a software component including dispatching of the process instance and determines if the elapsed time is significantly greater than a preset processing time. If so, the method may dynamically alter error processing of the time-sensitive validation process of the software component.Type: GrantFiled: June 28, 2017Date of Patent: August 13, 2019Assignee: International Business Machines CorporationInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Mark Pocock, Philip I. Wakelin
-
Patent number: 10348840Abstract: In a network capable of handling a number of concurrent network connections between network nodes, referred to as client and server, the client and server connection managers are customized by adding respective status handler components which add server status information requests, from client to server, and responsive status information, from server to client into message headers of messages being sent between the server and client. The supported server status information types for any given connection are defined when a connection is established through dialogue between the client and server, and then persist for the lifetime of the connection. The customizations of the server and client connection managers are modest and the increase in network traffic over the connection is proportionally very small. Moreover, status information requests can be processed and responded to quickly by attaching to messages that are being sent between the nodes.Type: GrantFiled: January 16, 2017Date of Patent: July 9, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin, Russell I. Wilson
-
Patent number: 10243828Abstract: A system, computer-implemented method and computer program performs heartbeat messaging for managing connections for data communications. In one example method, an indication of a problem associated with a connection for data communication in a computing system or network is received. In response to receiving the indication, a heartbeat message is sent over the connection. The method monitors for a heartbeat response to the heartbeat message within a predefined heartbeat time interval. If a heartbeat response is received within the predefined heartbeat time interval, the method determines that the indication of a problem associated with the connection is invalid. If a heartbeat response is not received within the predefined heartbeat time interval, the method determines that the indication of a problem associated with the connection is valid.Type: GrantFiled: October 17, 2016Date of Patent: March 26, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Publication number: 20190068751Abstract: A transaction processing server and associated clients which send requests to the server via client-server connections. The server has a transaction processing region operable to process requests and issue responses to the requesting client. The server maintains a record of historical processing times taken to process recent client requests. The server has a connection manager that is operable to monitor incoming client requests and extract from them a goal response time, which is a maximum time within which the client expects the request to be processed which is included in each request. The server accepts or rejects each incoming client request based on deciding whether it is likely to be processed within the goal response time. If a request is rejected, the server transmits a rejection message to the originating client.Type: ApplicationFiled: August 25, 2017Publication date: February 28, 2019Inventors: Michael D. Brooks, Alan Hollingshead, Julian Horn, Philip I. Wakelin
-
Publication number: 20190068752Abstract: A transaction processing server and associated clients which send requests to the server via client-server connections. The server has a transaction processing region operable to process requests and issue responses to the requesting client. The server maintains a record of historical processing times taken to process recent client requests. The server has a connection manager that is operable to monitor incoming client requests and extract from them a goal response time, which is a maximum time within which the client expects the request to be processed which is included in each request. The server accepts or rejects each incoming client request based on deciding whether it is likely to be processed within the goal response time. If a request is rejected, the server transmits a rejection message to the originating client.Type: ApplicationFiled: November 15, 2017Publication date: February 28, 2019Inventors: Michael D. Brooks, Alan Hollingshead, Julian Horn, Philip I. Wakelin
-
Patent number: 10218563Abstract: A method for monitoring connections for communicating data is provided. The method includes monitoring communication of data from a device over a connection. A current connection performance parameter for the connection is determined based on the monitoring. The current connection performance parameter is compared with a predetermined threshold. If the current connection performance parameter is less than or equal to the predetermined threshold, the connection is determined to be degraded. An alert may be provided to a user if the connection is determined to be degraded and an alert condition is met.Type: GrantFiled: October 17, 2016Date of Patent: February 26, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Publication number: 20190037027Abstract: Dynamic management of concurrent client connections to a server is achieved by a server, in that the server monitors its load state and when the server's maximum permitted number of concurrent requests has been exceeded it reduces the clients' maximum numbers of permitted concurrent requests until such time as the overloading situation no longer persists. In this way, the capacity of each of multiple connections can be controlled by the server individually or as a group, wherein the control is dynamic, so that the client-server connections do not have to be accurately configured in advance.Type: ApplicationFiled: December 15, 2017Publication date: January 31, 2019Inventors: Mike Brooks, Alan Hollingshead, Julian Horn, Philip Wakelin
-
Publication number: 20190037026Abstract: Dynamic management of concurrent client connections to a server is achieved by a server, in that the server monitors its load state and when the server's maximum permitted number of concurrent requests has been exceeded it reduces the clients' maximum numbers of permitted concurrent requests until such time as the overloading situation no longer persists. In this way, the capacity of each of multiple connections can be controlled by the server individually or as a group, wherein the control is dynamic, so that the client-server connections do not have to be accurately configured in advance.Type: ApplicationFiled: July 28, 2017Publication date: January 31, 2019Inventors: Mike Brooks, Alan Hollingshead, Julian Horn, Philip Wakelin
-
Publication number: 20190014183Abstract: An apparatus, computer-implemented method and computer program product manages connections for data communication. A first system initiates a process for establishing a new connection pipe of a socket-based connection between the first system and a second system. The new connection pipe is a replacement for an existing connection pipe. The existing connection pipe is accessed by a respective existing socket at each of the first and second systems. The first system receives acknowledgement from the second system confirming that the replacement connection pipe is established. The replacement connection pipe is accessed by a respective replacement socket at each of the first and second systems. The first system re-associates sessions of the existing socket at the first system to the replacement socket at the first system.Type: ApplicationFiled: November 3, 2017Publication date: January 10, 2019Inventors: Michael D. BROOKS, Alan HOLLINGSHEAD, Julian HORN, Philip WAKELIN
-
Publication number: 20190014182Abstract: An apparatus, computer-implemented method and computer program product manages connections for data communication. A first system initiates a process for establishing a new connection pipe of a socket-based connection between the first system and a second system. The new connection pipe is a replacement for an existing connection pipe. The existing connection pipe is accessed by a respective existing socket at each of the first and second systems. The first system receives acknowledgement from the second system confirming that the replacement connection pipe is established. The replacement connection pipe is accessed by a respective replacement socket at each of the first and second systems. The first system re-associates sessions of the existing socket at the first system to the replacement socket at the first system.Type: ApplicationFiled: July 6, 2017Publication date: January 10, 2019Inventors: Michael D. Brooks, Alan Hollingshead, Julian Horn, Philip Wakelin
-
Publication number: 20190004889Abstract: Method and system are provided for preventing local processing problems interfering with a time-sensitive validation process. The method monitors an elapsed time of an instance of a time-sensitive validation process of a software component including dispatching of the process instance and determines if the elapsed time is significantly greater than a preset processing time. If so, the method may dynamically alter error processing of the time-sensitive validation process of the software component.Type: ApplicationFiled: June 28, 2017Publication date: January 3, 2019Inventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Mark Pocock, Philip I. Wakelin
-
Publication number: 20180316590Abstract: A system, computer-implemented method and computer program performs heartbeat messaging for managing connections for data communications. In one example method, an indication of a problem associated with a connection for data communication in a computing system or network is received. In response to receiving the indication, a heartbeat message is sent over the connection. The method monitors for a heartbeat response to the heartbeat message within a predefined heartbeat time interval. If a heartbeat response is received within the predefined heartbeat time interval, the method determines that the indication of a problem associated with the connection is invalid. If a heartbeat response is not received within the predefined heartbeat time interval, the method determines that the indication of a problem associated with the connection is valid.Type: ApplicationFiled: July 6, 2018Publication date: November 1, 2018Inventors: MICHAEL D. BROOKS, ALAN HOLLINGSHEAD, JULIAN C. HORN, PHILIP I. WAKELIN