Patents by Inventor Ivan M. Heninger
Ivan M. Heninger 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: 9075645Abstract: A method, system and computer program product for selecting an optimal transport protocol in a cloud computing environment. An application creates a socket to communicate with a destination Virtual Machine (VM). The application requests a daemon agent to query a virtual machine manager to determine if the destination VM is on the same hypervisor as the application. The daemon agent receives a VMCI address (“context ID”) and an indication of the hypervisor associated with the destination VM from the virtual machine manager. The daemon agent enables the transport layer to route traffic over the VMCI protocol to the destination VM using its context ID in response to the destination VM being on the same hypervisor as the application. In this manner, the application is able to route traffic using an optimal transport protocol, including VMCI, depending on peer hypervisor association without requiring any code modifications to the application.Type: GrantFiled: April 22, 2013Date of Patent: July 7, 2015Assignee: International Business Machines CorporationInventors: Ivan M. Heninger, Curtis Hrischuk, Zachary H. Jones, Aaron J. Quirk
-
Patent number: 9071587Abstract: A method, system and computer program product for optimizing virtual machine deployment. A cloud controller pre-generates and stores a virtual machine's first-boot metadata (e.g., a RSA key) prior to the deployment of the virtual machine so that the virtual machine does not need to generate such metadata at deployment time thereby reducing the deployment time of the virtual machine. Instead, after the deployment and activation of the virtual machine, an activation agent running on the virtual machine requests the pre-generated first-boot metadata from the cloud controller. The cloud controller retrieves the requested pre-generated first-boot metadata to be transmitted to the requesting virtual machine and implements public-key cryptography so that the requesting virtual machine can verify the authenticity of the transmitted first-boot metadata. By reducing the deployment time for the virtual machine, cloud resources can be used for other activities.Type: GrantFiled: August 27, 2012Date of Patent: June 30, 2015Assignee: International Business Machines CorporationInventors: Ivan M. Heninger, Douglas A. Larson, Aaron J. Quirk
-
Patent number: 8949848Abstract: A method, system and computer program product for managing resource utilization of virtual machines in a cloud computing environment. A cloud controller computes an index of the utilization of a resource by a virtual machine to determine its adverse impact on its neighboring virtual machine(s) that share the same resource. If the interference index is greater than a threshold, then the utilization of the resource by that virtual machine will be throttled or reduced provided that the servicing of its workload is not weighted at too high of a priority and that one or more of its neighboring virtual machines are not able to meet their service-level agreement requirements. In this manner, the adversely affected neighboring virtual machines may have its performance restored in meeting their service-level agreement requirements without having to add additional resources and/or be migrated to other areas of the cloud computing environment.Type: GrantFiled: August 20, 2012Date of Patent: February 3, 2015Assignee: International Business Machines CorporationInventors: Ivan M. Heninger, Zachary H. Jones, James K. Kochuba, Aaron J. Quirk
-
Publication number: 20140258487Abstract: A method, system and computer program product for minimizing workload migrations during cloud maintenance operations. Upon receiving an indication that a scheduled maintenance operation is to be performed, a cloud controller uploads the maintenance binaries associated with the scheduled maintenance operation and analyzes the maintenance binaries so as to evaluate the requirements of the maintenance packages and dependencies associated with the scheduled maintenance operation. A matrix is then generated by the cloud controller to identify the classes of hardware that will be disrupted by the scheduled maintenance operation based on the analysis. The workloads running on the classes of hardware identified in the matrix will then be consolidated prior to the scheduled maintenance operation. By consolidating the workloads onto a fewer number of hardware components, a fewer number of workload migrations will need to be performed during the cloud maintenance operation.Type: ApplicationFiled: March 11, 2013Publication date: September 11, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ivan M. Heninger, Douglas A. Larson, Aaron J. Quirk, Matthew J. Sheard
-
Publication number: 20140258539Abstract: A method, system and computer program product for minimizing workload migrations during cloud maintenance operations. Upon receiving an indication that a scheduled maintenance operation is to be performed, a cloud controller uploads the maintenance binaries associated with the scheduled maintenance operation and analyzes the maintenance binaries so as to evaluate the requirements of the maintenance packages and dependencies associated with the scheduled maintenance operation. A matrix is then generated by the cloud controller to identify the classes of hardware that will be disrupted by the scheduled maintenance operation based on the analysis. The workloads running on the classes of hardware identified in the matrix will then be consolidated prior to the scheduled maintenance operation. By consolidating the workloads onto a fewer number of hardware components, a fewer number of workload migrations will need to be performed during the cloud maintenance operation.Type: ApplicationFiled: October 31, 2013Publication date: September 11, 2014Applicant: International Business Machines CorporationInventors: Ivan M. Heninger, Douglas A. Larson, Aaron J. Quirk, Matthew J. Sheard
-
Publication number: 20140059541Abstract: A method, system and computer program product for optimizing virtual machine deployment. A cloud controller pre-generates and stores a virtual machine's first-boot metadata (e.g., a RSA key) prior to the deployment of the virtual machine so that the virtual machine does not need to generate such metadata at deployment time thereby reducing the deployment time of the virtual machine. Instead, after the deployment and activation of the virtual machine, an activation agent running on the virtual machine requests the pre-generated first-boot metadata from the cloud controller. The cloud controller retrieves the requested pre-generated first-boot metadata to be transmitted to the requesting virtual machine and implements public-key cryptography so that the requesting virtual machine can verify the authenticity of the transmitted first-boot metadata. By reducing the deployment time for the virtual machine, cloud resources can be used for other activities.Type: ApplicationFiled: August 27, 2012Publication date: February 27, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ivan M. Heninger, Douglas A. Larson, Aaron J. Quirk
-
Publication number: 20140053151Abstract: A method, system and computer program product for managing resource utilization of virtual machines in a cloud computing environment. A cloud controller computes an index of the utilization of a resource by a virtual machine to determine its adverse impact on its neighboring virtual machine(s) that share the same resource. If the interference index is greater than a threshold, then the utilization of the resource by that virtual machine will be throttled or reduced provided that the servicing of its workload is not weighted at too high of a priority and that one or more of its neighboring virtual machines are not able to meet their service-level agreement requirements. In this manner, the adversely affected neighboring virtual machines may have its performance restored in meeting their service-level agreement requirements without having to add additional resources and/or be migrated to other areas of the cloud computing environment.Type: ApplicationFiled: August 20, 2012Publication date: February 20, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ivan M. Heninger, Zachary H. Jones, James K. Kochuba, Aaron J. Quirk
-
Publication number: 20140052945Abstract: A method, system and computer program product for optimizing storage system behavior in a cloud computing environment. An Input/Output (I/O) operation data is appended with a tag, where the tag indicates a class of data for the I/O operation data. Upon the storage controller reviewing the tag appended to the I/O operation data, the storage controller performs a table look-up for the storage policy associated with the determined class of data. The storage controller applies a map to determine a storage location for the I/O operation data in a drive device, where the map represents a logical volume which indicates a range of block data that is to be excluded for being stored on the drive device and a range of block data that is to be considered for being stored on the drive device. In this manner, granularity of storage policies is provided in a cloud computing environment.Type: ApplicationFiled: August 14, 2012Publication date: February 20, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Rohith K. Ashok, Darryl E. Gardner, Ivan M. Heninger, Douglas A. Larson, Gerald F. McBrearty, Aaron J. Quirk, Matthew J. Sheard
-
Publication number: 20130247041Abstract: A method, system and computer program product for selecting an optimal transport protocol in a cloud computing environment. An application creates a socket to communicate with a destination Virtual Machine (VM). The application requests a daemon agent to query a virtual machine manager to determine if the destination VM is on the same hypervisor as the application. The daemon agent receives a VMCI address (“context ID”) and an indication of the hypervisor associated with the destination VM from the virtual machine manager. The daemon agent enables the transport layer to route traffic over the VMCI protocol to the destination VM using its context ID in response to the destination VM being on the same hypervisor as the application. In this manner, the application is able to route traffic using an optimal transport protocol, including VMCI, depending on peer hypervisor association without requiring any code modifications to the application.Type: ApplicationFiled: April 22, 2013Publication date: September 19, 2013Applicant: International Business Machines CorporationInventors: Ivan M. Heninger, Curtis Hrischuk, Zachary H. Jones, Aaron J. Quirk
-
Publication number: 20130191528Abstract: A method, system and computer program product for selecting an appropriate platform to run an application deployed in a cloud computing environment. The appropriate platform is selected by employing a two phase process, where the first phase occurs prior to the deployment of the application and the second phase occurs after the application has been deployed. In the first phase, the cloud computing node selects a platform using various factors, such as application binaries, application metadata and artifacts, and qualities of service and application requirements. In the second phase, the cloud computing node determines whether an alternative platform needs to be implemented for subsequent deployments of the application using various factors, such as application runtime metrics and garbage collection metrics. In this manner, an appropriate platform is automatically selected thereby removing the requirement for the user to indicate the type of platform for the target environment.Type: ApplicationFiled: January 24, 2012Publication date: July 25, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ivan M. Heninger, Curtis Hrischuk, Steven D. Ims, Zachary H. Jones, Aaron J. Quirk
-
Publication number: 20130191826Abstract: A method, system and computer program product for selecting an optimal transport protocol in a cloud computing environment. An application creates a socket to communicate with a destination Virtual Machine (VM). The application requests a daemon agent to query a virtual machine manager to determine if the destination VM is on the same hypervisor as the application. The daemon agent receives a VMCI address (“context ID”) and an indication of the hypervisor associated with the destination VM from the virtual machine manager. The daemon agent enables the transport layer to route traffic over the VMCI protocol to the destination VM using its context ID in response to the destination VM being on the same hypervisor as the application. In this manner, the application is able to route traffic using an optimal transport protocol, including VMCI, depending on peer hypervisor association without requiring any code modifications to the application.Type: ApplicationFiled: January 23, 2012Publication date: July 25, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ivan M. Heninger, Curtis Hrischuk, Zachary H. Jones, Aaron J. Quirk
-
Patent number: 8261339Abstract: Dynamically selecting an endpoint for a tunnel into an enterprise computing infrastructure. A client dynamically selects a gateway (which may alternatively be referred to as a boundary device or server) as a tunnel endpoint for connecting over a public network (or, more generally, an untrusted network) into an enterprise computing infrastructure. The selection is made, in preferred embodiments, according to least-cost routing metrics pertaining to paths through the enterprise network from the selected gateway to a destination host. The least-cost routing metrics may be computed using factors such as the proximity of selectable tunnel endpoints to the destination host; stability or redundancy of network resources for this gateway; monetary costs of transmitting data over a path between the selectable tunnel endpoints and destination host; congestion on that path; hop count for that path; and/or latency or transmit time for data on that path.Type: GrantFiled: December 14, 2010Date of Patent: September 4, 2012Assignee: International Business Machines CorporationInventors: M. Lynn Aldridge, Peter C. Dill, Ivan M. Heninger, John D. Kari, Clifford D. Marano, David M. Urgo
-
Patent number: 7992201Abstract: Dynamically selecting an endpoint for a tunnel into an enterprise computing infrastructure. A client dynamically selects a gateway (which may alternatively be referred to as a boundary device or server) as a tunnel endpoint for connecting over a public network (or, more generally, an untrusted network) into an enterprise computing infrastructure. The selection is made, in preferred embodiments, according to least-cost routing metrics pertaining to paths through the enterprise network from the selected gateway to a destination host. The least-cost routing metrics may be computed using factors such as the proximity of selectable tunnel endpoints to the destination host; stability or redundancy of network resources for this gateway; monetary costs of transmitting data over a path between the selectable tunnel endpoints and destination host; congestion on that path; hop count for that path; and/or latency or transmit time for data on that path.Type: GrantFiled: July 26, 2007Date of Patent: August 2, 2011Assignee: International Business Machines CorporationInventors: M. Lynn Aldridge, Peter C. Dill, Ivan M. Heninger, John D. Kari, Clifford D. Marano, David M. Urgo
-
Patent number: 7975294Abstract: A client attempts to transmit a presence state to a presence server that is behind a firewall of a secure network. If the client is inside the firewall, the presence server instructs resources within the secure network to directly communicate with the client. However, if the client is outside the firewall, then the client must tunnel into the secure network via a Virtual Private Network (VPN) before accessing the resources in the secure network.Type: GrantFiled: November 19, 2007Date of Patent: July 5, 2011Assignee: International Business Machines CorporationInventors: Ivan M. Heninger, John D. Kari, William J. Rippon, Galina Rubinshtein
-
Publication number: 20110083174Abstract: Dynamically selecting an endpoint for a tunnel into an enterprise computing infrastructure. A client dynamically selects a gateway (which may alternatively be referred to as a boundary device or server) as a tunnel endpoint for connecting over a public network (or, more generally, an untrusted network) into an enterprise computing infrastructure. The selection is made, in preferred embodiments, according to least-cost routing metrics pertaining to paths through the enterprise network from the selected gateway to a destination host. The least-cost routing metrics may be computed using factors such as the proximity of selectable tunnel endpoints to the destination host; stability or redundancy of network resources for this gateway; monetary costs of transmitting data over a path between the selectable tunnel endpoints and destination host; congestion on that path; hop count for that path; and/or latency or transmit time for data on that path.Type: ApplicationFiled: December 14, 2010Publication date: April 7, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: M. Lynn Aldridge, Peter C. Dill, Ivan M. Heninger, John D. Kari, Clifford D. Marano, David M. Urgo
-
Publication number: 20090133115Abstract: A client attempts to transmit a presence state to a presence server that is behind a firewall of a secure network. If the client is inside the firewall, the presence server instructs resources within the secure network to directly communicate with the client. However, if the client is outside the firewall, then the client must tunnel into the secure network via a Virtual Private Network (VPN) before accessing the resources in the secure network.Type: ApplicationFiled: November 19, 2007Publication date: May 21, 2009Inventors: Ivan M. Heninger, John D. Kari, William J. Rippon, Galina Rubinshtein
-
Publication number: 20090031415Abstract: Dynamically selecting an endpoint for a tunnel into an enterprise computing infrastructure. A client dynamically selects a gateway (which may alternatively be referred to as a boundary device or server) as a tunnel endpoint for connecting over a public network (or, more generally, an untrusted network) into an enterprise computing infrastructure. The selection is made, in preferred embodiments, according to least-cost routing metrics pertaining to paths through the enterprise network from the selected gateway to a destination host. The least-cost routing metrics may be computed using factors such as the proximity of selectable tunnel endpoints to the destination host; stability or redundancy of network resources for this gateway; monetary costs of transmitting data over a path between the selectable tunnel endpoints and destination host; congestion on that path; hop count for that path; and/or latency or transmit time for data on that path.Type: ApplicationFiled: July 26, 2007Publication date: January 29, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: M. Lynn Aldridge, Peter C. Dill, Ivan M. Heninger, John D. Kari, Clifford D. Marano, David M. Urgo
-
Patent number: 6684257Abstract: Systems, methods and computer program products are provided for testing whether Web content has been properly tailored by a transcoding proxy for display within various requesting pervasive computing devices. Simulated HyperText Transfer Protocol (HTTP) requests are built using information from one or more data files. Each simulated request includes a Uniform Resource Locator (URL) that identifies a location of Web content. Each simulated request also includes an HTTP header containing information about a respective pervasive computing device. Simulated HTTP requests are asynchronously issued to respective Web servers identified in the respective HTTP requests. An HTTP response to each respective simulated HTTP request is received and includes Web content tailored for display within a respective pervasive computing device associated with the respective simulated HTTP request. Each HTTP response is then compared with an expected HTTP response.Type: GrantFiled: October 15, 1999Date of Patent: January 27, 2004Assignee: International Business Machines CorporationInventors: Samuel A. Camut, Ivan M. Heninger, Eric M. Vought