Patents by Inventor MICHAEL D. BROOKS
MICHAEL D. BROOKS 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).
-
Publication number: 20180316765Abstract: 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: July 2, 2018Publication date: November 1, 2018Inventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Publication number: 20180316766Abstract: 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: July 2, 2018Publication date: November 1, 2018Inventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 10084678Abstract: 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: April 19, 2016Date of Patent: September 25, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 10084675Abstract: 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: April 7, 2016Date of Patent: September 25, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 10049130Abstract: A method for resolving a potential in-doubt condition of a distributed transaction, is provided. A processor receives a request to commit a transaction for a distributed transaction protocol that includes an applied process, the transaction includes a transfer of a commit decision from a coordinating node to a participating node. The processor checks the service status of the connection to the participating node, and finding the service status of the connection out of service or unavailable, the processor instructs the coordinating node to back-out (rollback) the transaction. Additionally, locality meta-data is used as an indication of reliability of the connection to the participating node, and in response to determining the participating node locality to be a remote network connection, the processor instructs the coordinating node to abort the applied process and send a standard distributed transaction protocol message over unreliable connections.Type: GrantFiled: August 12, 2015Date of Patent: August 14, 2018Assignee: International Business Machines CorporationInventors: Michael D. Brooks, Ian J. Mitchell, Philip I. Wakelin
-
Patent number: 10051062Abstract: 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: November 2, 2015Date of Patent: August 14, 2018Assignee: International Business Machines CorporationInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Publication number: 20180205799Abstract: 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: ApplicationFiled: January 16, 2017Publication date: July 19, 2018Inventors: Michael D. BROOKS, Alan HOLLINGSHEAD, Julian C. HORN, Philip I. WAKELIN, Russell I. WILSON
-
Patent number: 10025640Abstract: Aspects include balancing work of tasks at a sending node of a transaction server in a network. A method can include processing a task from the top of a work queue at the sending node, where the task is an instance of a transaction which requires a transaction message to be sent from the sending node using a network connection. The transaction message is divided into chunks of partial transaction sub-messages. For each chunk, it can be dynamically determined whether a pacing response indicator is required based on metrics that monitor the activity in the work queue and a number of chunks of the transaction message already sent.Type: GrantFiled: June 1, 2016Date of Patent: July 17, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 10009420Abstract: Aspects include balancing work of tasks at a sending node of a transaction server in a network. A method can include processing a task from the top of a work queue at the sending node, where the task is an instance of a transaction which requires a transaction message to be sent from the sending node using a network connection. The transaction message is divided into chunks of partial transaction sub-messages. For each chunk, it can be dynamically determined whether a pacing response indicator is required based on metrics that monitor the activity in the work queue and a number of chunks of the transaction message already sent.Type: GrantFiled: February 22, 2016Date of Patent: June 26, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 9953053Abstract: A method, computer program product, and system for resolving a potential in-doubt condition of a distributed transaction, is provided. A processor receives a request to commit a transaction for a distributed transaction protocol that includes an applied process, the transaction includes a transfer of a commit decision from a coordinating node to a participating node. The processor checks the service status of the connection to the participating node, and finding the service status of the connection out of service or unavailable, the processor instructs the coordinating node to back-out (rollback) the transaction. Additionally, locality meta-data is used as an indication of reliability of the connection to the participating node, and in response to determining the participating node locality to be a remote network connection, the processor instructs the coordinating node to abort the applied process and send a standard distributed transaction protocol message over unreliable connections.Type: GrantFiled: December 18, 2014Date of Patent: April 24, 2018Assignee: International Business Machines CorporationInventors: Michael D. Brooks, Ian J. Mitchell, Philip I. Wakelin
-
Patent number: 9954768Abstract: Reconnection of a client to a server in a transaction processing server cluster having a single address. A connection is established with a first server in the server cluster and units of work are requested at the first server. A failure of the connection to the first server is detected. A connection is established with a second server in the server cluster and units of work at the second server are requested. A reconnection request is received from the first server, in which the first server has unresolved units of work. The connection with the second server is terminated, including completing current units of work. The client is reconnected with the first server and the unresolved units of work with the first server are resynchronized.Type: GrantFiled: October 15, 2015Date of Patent: April 24, 2018Assignee: International Business Machines CorporationInventors: Gerald M. Allen, Michael D. Brooks, Jenny J. He, Brad Roeger, Philip I. Wakelin
-
Patent number: 9948707Abstract: Reconnection of a client to a server in a transaction processing server cluster having a single address. A connection is established with a first server in the server cluster and units of work are requested at the first server. A failure of the connection to the first server is detected. A connection is established with a second server in the server cluster and units of work at the second server are requested. A reconnection request is received from the first server, in which the first server has unresolved units of work. The connection with the second server is terminated, including completing current units of work. The client is reconnected with the first server and the unresolved units of work with the first server are resynchronized.Type: GrantFiled: February 3, 2017Date of Patent: April 17, 2018Assignee: International Business Machines CorporationInventors: Gerald M. Allen, Michael D. Brooks, Jenny J. He, Brad Roeger, Philip I. Wakelin
-
Patent number: 9948724Abstract: 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: September 10, 2015Date of Patent: April 17, 2018Assignee: International Business Machines CorporationInventors: Michael D. Brooks, Alan Hollingshead, Julian C. Horn, Philip I. Wakelin
-
Patent number: 9936048Abstract: In an approach for connecting an access point in a client region to an access point within a cluster of server regions for a transaction process, a processor receives a connect request to a cluster of server regions sharing a network end point from a client region. A processor reroutes the connect request by a connection balancing mechanism to a network end point corresponding to a server region within the cluster of server regions. A processor transmits connection information to the client region, wherein the connection information allows the client region to connect to the server region within the cluster of server regions. A processor connects the server region within the cluster of server regions to the client region.Type: GrantFiled: September 10, 2014Date of Patent: April 3, 2018Assignee: International Business Machines CorporationInventors: Gerald M. W. Allen, Michael D. Brooks, Jenny J. He, Philip I. Wakelin
-
Patent number: 9930143Abstract: In an approach for connecting an access point in a client region to an access point within a cluster of server regions for a transaction process, a processor receives a connect request to a cluster of server regions sharing a network end point from a client region. A processor reroutes the connect request by a connection balancing mechanism to a network end point corresponding to a server region within the cluster of server regions. A processor transmits connection information to the client region, wherein the connection information allows the client region to connect to the server region within the cluster of server regions. A processor connects the server region within the cluster of server regions to the client region.Type: GrantFiled: May 18, 2015Date of Patent: March 27, 2018Assignee: International Business Machines CorporationInventors: Gerald M. W. Allen, Michael D. Brooks, Jenny J. He, Philip I. Wakelin
-
Publication number: 20180034917Abstract: A system, computer-implemented method and computer program manages connections for data communication. In one example method, a first system sends an enhanced capability exchange (CAPEX) request message to a second system. The CAPEX request message includes a request to change the number of connection pipes on an established socket-based connection between the first system and the second system. The first system receives an enhanced CAPEX response message from the second system. The CAPEX response message accepts the request to change the number of connection pipes on the established connection. The first system changes the number of connection pipes on the established connection in accordance with the accepted request.Type: ApplicationFiled: July 27, 2016Publication date: February 1, 2018Inventors: MICHAEL D. BROOKS, ALAN HOLLINGSHEAD, JULIAN C. HORN, PHILIP I. WAKELIN
-
Publication number: 20180034692Abstract: A system, computer-implemented method and computer program manages connections for data communication. In one example method, a first system sends an enhanced capability exchange (CAPEX) request message to a second system. The CAPEX request message includes a request to change the number of connection pipes on an established socket-based connection between the first system and the second system. The first system receives an enhanced CAPEX response message from the second system. The CAPEX response message accepts the request to change the number of connection pipes on the established connection. The first system changes the number of connection pipes on the established connection in accordance with the accepted request.Type: ApplicationFiled: March 1, 2017Publication date: February 1, 2018Inventors: MICHAEL D. BROOKS, ALAN HOLLINGSHEAD, JULIAN C. HORN, PHILIP I. WAKELIN
-
Publication number: 20170315897Abstract: Generating a performance policy for a server. A plurality of system metrics of a first server is monitored, and a benchmark for the plurality of system metrics based on the monitored plurality of system metrics is stored. The benchmark indicates desirable system metrics of the first server. An operating policy for a second server is generated from the stored benchmark. The operating policy includes desirable system metrics of the second server based on the desirable system metrics of the first server.Type: ApplicationFiled: April 29, 2016Publication date: November 2, 2017Inventors: Michael D. Brooks, James A. Harrison, Robert C. Jones, Philip R. Lee, Catherine M. Moxey, Mayur Raja
-
Publication number: 20170302556Abstract: 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: October 17, 2016Publication date: October 19, 2017Inventors: MICHAEL D. BROOKS, ALAN HOLLINGSHEAD, JULIAN C. HORN, PHILIP I. WAKELIN
-
Publication number: 20170302557Abstract: 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: April 19, 2016Publication date: October 19, 2017Inventors: MICHAEL D. BROOKS, ALAN HOLLINGSHEAD, JULIAN C. HORN, PHILIP I. WAKELIN