Patents by Inventor Joseph S. Beda, III
Joseph S. Beda, III 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: 11915033Abstract: Systems and techniques are described for virtual machine communication and migration. A described technique includes operating server systems that are configured to run virtual machines and providing a virtual network for Internet Protocol (IP) based communications to the virtual machines. The virtual machines can be assigned network addresses, such as IP addresses, on the virtual network. Providing the virtual network can include using separate IP tunnels to effect delivery of IP packets on the virtual network to the virtual machines, respectively. The technique includes migrating a virtual machine running on a first server system to a second server system. The migrated virtual machine can maintain its assigned IP address. The technique includes updating a tunnel endpoint destination associated with the assigned IP address of the migrated virtual machine. The updated tunnel endpoint destination can be based on a network address associated with the second server system.Type: GrantFiled: April 13, 2022Date of Patent: February 27, 2024Assignee: Google LLCInventors: Evan K. Anderson, Cristian Petrescu-Prahova, Joseph S. Beda, III
-
Publication number: 20220244980Abstract: Systems and techniques are described for virtual machine communication and migration A described technique includes operating server systems that are configured to run virtual machines and providing a virtual network for Internet Protocol (IP) based communications to the virtual machines. The virtual machines can be assigned network addresses, such as IP addresses, on the virtual network. Providing the virtual network can include using separate IP tunnels to effect delivery of IP packets on the virtual network to the virtual machines, respectively. The technique includes migrating a virtual machine running on a first server system to a second server system. The migrated virtual machine can maintain its assigned IP address. The technique includes updating a tunnel endpoint destination associated with the assigned IP address of the migrated virtual machine. The updated tunnel endpoint destination can be based on a network address associated with the second server system.Type: ApplicationFiled: April 13, 2022Publication date: August 4, 2022Applicant: Google LLC.Inventors: Evan K Anderson, Cristian Petrescu-Prahova, Joseph S. Beda, III
-
Patent number: 11321110Abstract: Systems and techniques are described for virtual machine communication and migration. A described technique includes operating server systems that are configured to run virtual machines and providing a virtual network for Internet Protocol (IP) based communications to the virtual machines. The virtual machines can be assigned network addresses, such as IP addresses, on the virtual network. Providing the virtual network can include using separate IP tunnels to effect delivery of IP packets on the virtual network to the virtual machines, respectively. The technique includes migrating a virtual machine running on a first server system to a second server system. The migrated virtual machine can maintain its assigned IP address. The technique includes updating a tunnel endpoint destination associated with the assigned IP address of the migrated virtual machine. The updated tunnel endpoint destination can be based on a network address associated with the second server system.Type: GrantFiled: March 11, 2019Date of Patent: May 3, 2022Assignee: Google LLCInventors: Evan K. Anderson, Cristian Petrescu-Prahova, Joseph S. Beda, III
-
Patent number: 10228959Abstract: Systems and techniques are described for virtual machine communication and migration. A described technique includes operating server systems that are configured to run virtual machines and providing a virtual network for Internet Protocol (IP) based communications to the virtual machines. The virtual machines can be assigned network addresses, such as IP addresses, on the virtual network. Providing the virtual network can include using separate IP tunnels to effect delivery of IP packets on the virtual network to the virtual machines, respectively. The technique includes migrating a virtual machine running on a first server system to a second server system. The migrated virtual machine can maintain its assigned IP address. The technique includes updating a tunnel endpoint destination associated with the assigned IP address of the migrated virtual machine. The updated tunnel endpoint destination can be based on a network address associated with the second server system.Type: GrantFiled: July 19, 2011Date of Patent: March 12, 2019Assignee: Google LLCInventors: Evan K. Anderson, Cristian Petrescu-Prahova, Joseph S. Beda, III
-
Patent number: 9798566Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for associating one or more of a plurality of metadata collections with one or more respective identifiers, wherein each metadata collection includes one or more pairings of metadata attributes with metadata values, and wherein each identifier is one of a project identifier, a tag identifier or an instance identifier; identifying, based on identifier information associated with a virtual machine instance, one or more metadata values to be provided to the virtual machine instance, wherein the identifier information specifies one or more of a project identifier, a tag identifier and an instance identifier, and wherein each identified metadata value belongs to a metadata collection associated with an identifier that is specified in the identifier information; and providing, to the virtual machine instance, the identified one or more metadata values.Type: GrantFiled: October 23, 2015Date of Patent: October 24, 2017Assignee: Google Inc.Inventors: Joseph S. Beda, III., Craig I. McLuckie, Christopher L. Eck, Martin R. Gannholm, Evan K. Anderson, Matthew A. Mills
-
Patent number: 9740516Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for implementing virtual network pairs between virtual machines and other devices.Type: GrantFiled: September 10, 2015Date of Patent: August 22, 2017Assignee: Google Inc.Inventors: Cristian Petrescu-Prahova, Christoph Kern, Evan K. Anderson, Joseph S. Beda, III
-
Patent number: 9619662Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for implementing virtual network pairs between virtual machines and other devices. In one aspect, a method includes associating each of a plurality of different virtual machine network addresses with a respective host machine network address; receiving, from a sender, a request for a source virtual machine to communicate with a destination virtual machine; determining that the source virtual machine is authorized to communicate with the destination virtual machine; selecting, from the associations, a host machine network address for the destination virtual machine; generating a token based at least partly on the selected host machine network address and on a secret key of the destination virtual machine, wherein the secret key is not known by the source virtual machine; and sending the selected host machine network address and generated token to the sender.Type: GrantFiled: January 11, 2012Date of Patent: April 11, 2017Assignee: Google Inc.Inventors: Joseph S. Beda, III, Cristian Petrescu-Prahova, Christoph Kern
-
Patent number: 9535742Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for clustering for parallel processing. One of the methods includes providing virtual machines with an interface to a shuffle service, the shuffle service executing external of the virtual machines. The method includes receiving data records through the interface, each data record having a key and a value. The method includes partitioning the data records, using the shuffle service, according to the respective keys. The method includes providing a part of the partitioned data records through the interface to the virtual machines, wherein data records having the same key are provided to the same virtual machine. Each of the virtual machines can execute on a host machine and each of the virtual machine is a hardware virtualization of a machine.Type: GrantFiled: May 6, 2016Date of Patent: January 3, 2017Assignee: Google Inc.Inventors: Joseph S. Beda, III, Grzegorz J. Czajkowski, Yonggang Zhao
-
Patent number: 9448830Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for service bridges. In one aspect, a method includes a host operating system performs operations comprising: receiving, using one or more service bridges that execute in the host operating system, a plurality of requests from the one or more virtual machines, wherein each service bridge is associated with a different virtual machine of the one or more virtual machines, and wherein each request is a request to interface with one or more external services; modifying, using a respective service bridge, each request to be processed by the one or more external services; and providing each modified request from the respective service bridge to the one or more external services, where the respective service bridge communicates with the one or more external services over a network.Type: GrantFiled: March 14, 2013Date of Patent: September 20, 2016Assignee: Google Inc.Inventors: Evan K. Anderson, Alexander Mohr, Joseph S. Beda, III, Michael H. Waychison, Cory T. Maccarrone, Eric R. Northup, Sanjeet Singh Mehat
-
Patent number: 9430255Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for maintaining virtual machine metadata. One of the methods includes initializing a first virtual machine (VM) on a first host machine using one or more elements of user-specified initialization metadata. Upon receiving a notification that the first VM has published one or more elements of VM-generated metadata, one or more elements of VM-generated metadata are obtained. A request is received for the one or more elements of VM-generated metadata, and the one or more elements of VM-generated metadata are provided in response to the request.Type: GrantFiled: March 15, 2013Date of Patent: August 30, 2016Assignee: Google Inc.Inventors: Joseph S. Beda, III, Craig I. McLuckie, Christopher L. Eck
-
Patent number: 9336024Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for clustering for parallel processing. One of the methods includes providing virtual machines with an interface to a shuffle service, the shuffle service executing external of the virtual machines. The method includes receiving data records through the interface, each data record having a key and a value. The method includes partitioning the data records, using the shuffle service, according to the respective keys. The method includes providing a part of the partitioned data records through the interface to the virtual machines, wherein data records having the same key are provided to the same virtual machine. Each of the virtual machines can execute on a host machine and each of the virtual machine is a hardware virtualization of a machine.Type: GrantFiled: December 27, 2012Date of Patent: May 10, 2016Assignee: Google Inc.Inventors: Joseph S. Beda, III, Grzegorz J. Czajkowski, Jerry Zhao
-
Patent number: 9292319Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for implementing a global computing interface. One of the methods includes maintaining a global database of virtual machine configuration information, the database including information on cloud computing resources in each of a plurality of regions, wherein each region of the plurality of regions includes one or more datacenters. A virtual machine image is received in a first region. The global database is updated with configuration information about the received virtual machine image that is stored in the first region. A request is received to start one or more virtual machines from the virtual machine image in a second different region, and the virtual machine image is transmitted from the first region to the second region and one or more virtual machines are started from the virtual machine image in a datacenter of the second different region.Type: GrantFiled: March 15, 2013Date of Patent: March 22, 2016Assignee: Google Inc.Inventors: Joseph S. Beda, III, Cristian Petrescu-Prahova, Vishesh Khemani
-
Patent number: 9286092Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing images of virtual machine virtual disks. One of the methods includes receiving a request from a first user to save a first virtual machine (VM) disk image, wherein the first VM disk image is an image of a virtual disk of a first VM instance and captures an application and operating system configuration of the first VM instance; in response to the request, providing data identifying a plurality of image tracks to the first user, wherein each image track is a collection of VM disk images; receiving data from the first user identifying a first image track of the plurality of image tracks; and adding the first VM disk image to the first image track, comprising associating data identifying the first VM disk image with data identifying the first image track.Type: GrantFiled: March 15, 2013Date of Patent: March 15, 2016Assignee: Google Inc.Inventor: Joseph S. Beda, III
-
Publication number: 20160048410Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for associating one or more of a plurality of metadata collections with one or more respective identifiers, wherein each metadata collection includes one or more pairings of metadata attributes with metadata values, and wherein each identifier is one of a project identifier, a tag identifier or an instance identifier; identifying, based on identifier information associated with a virtual machine instance, one or more metadata values to be provided to the virtual machine instance, wherein the identifier information specifies one or more of a project identifier, a tag identifier and an instance identifier, and wherein each identified metadata value belongs to a metadata collection associated with an identifier that is specified in the identifier information; and providing, to the virtual machine instance, the identified one or more metadata values.Type: ApplicationFiled: October 23, 2015Publication date: February 18, 2016Inventors: Joseph S. Beda, III, Craig I. McLuckie, Christopher L. Eck, Martin R. Gannholm, Evan K. Anderson, Matthew A. Mills
-
Patent number: 9135037Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving an outgoing packet from a source virtual machine; obtaining a secret key for the source virtual machine, the secret key not being known by a destination virtual machine; obtaining a unique token derived at least partly from the secret key and a network address of the destination virtual machine; encapsulating the outgoing packet in a second packet along with the token and a token expiration time; and sending the second packet to the destination virtual machine.Type: GrantFiled: January 13, 2012Date of Patent: September 15, 2015Assignee: Google Inc.Inventors: Cristian Petrescu-Prahova, Christoph Kern, Evan K. Anderson, Joseph S. Beda, III
-
Patent number: 8983860Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for an advertisement auction system. In one aspect, a method includes operating bidders on a data processing apparatus, each bidder executing in a distinct virtual machine, wherein a host operating system that executes on the data processing apparatus performs operations including: receiving an advertisement bid request from a requestor using a first communication protocol, the bid request identifying a bidder, the data processing apparatus and the ad exchange being on a same internal network; sending the advertisement bid request to the virtual machine of the identified bidder using a second communication protocol; receiving an advertisement bid response for the bid request from the identified bidder using the second communication protocol; and sending the advertisement bid response to the requestor using the first communication protocol.Type: GrantFiled: January 30, 2012Date of Patent: March 17, 2015Assignee: Google Inc.Inventors: Joseph S. Beda, III, Craig I. McLuckie
-
Patent number: 8909939Abstract: Methods, systems, and apparatuses, including computer programs encoded on a computer storage medium, for distribution of cryptographic keys. In one aspect, a method includes receiving a plurality of requests, each request being received by a different respective virtual machine of a plurality of virtual machines; generating, by each of the virtual machines, a different host key pair, wherein each of the host key pairs comprises an encryption key and a decryption key that are associated with the virtual machine that generated it; providing, by each of the virtual machines, the encryption key generated by the virtual machine to a distinct metadata server that stores parameters of the virtual machine; and sending, from each of the metadata servers, the encryption key generated by the virtual machine that the metadata server is configured to communicate with to an application programming interface system.Type: GrantFiled: April 4, 2012Date of Patent: December 9, 2014Assignee: Google Inc.Inventors: Joseph S. Beda, III, Brandon S. Baker
-
Patent number: 8874888Abstract: Techniques and systems for managed boot are described. A described technique includes creating, at a server system, a boot image based on one or more user-specified parameters associated with virtual machine booting, providing a first virtual drive that includes the boot image, booting a virtual machine using the boot image on the first virtual drive, and providing a second virtual drive to the virtual machine, where the virtual machine mounts the second virtual drive as a root file system.Type: GrantFiled: January 5, 2012Date of Patent: October 28, 2014Assignee: Google Inc.Inventors: Joseph S. Beda, III, Sanjeet Singh Mehat, Robert H. Earhart, III, Andrew Thornton, David T. McWherter, Evan K. Anderson, Frank Berreth
-
Patent number: 8862743Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for managing resources in a computing system. A plurality of distributed computing system resources are represented as nodes in a graph. Links between the nodes are defined, where each link in the links representing ownership or usage by a parent node of a respective resource represented by a child node. A message is sent from a source node in the graph to a target node in the graph wherein the source node is linked directly or indirectly to the target node. The message is processed by a message handler task associated with the target node, wherein processing includes allocating or deallocating a respective resource represented by the target node.Type: GrantFiled: January 12, 2012Date of Patent: October 14, 2014Assignee: Google Inc.Inventors: Cristian Petrescu-Prahova, Joseph S. Beda, III, Vishesh Khemani, Robert A. Horn
-
Patent number: 8843925Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, relating to managing resources. In one aspect, a method includes the actions of receiving configuration information, the configuration information specifying a plurality of parameter values including values for a size and input/output performance parameters, where the size and performance parameters are independently specified by a user; determining one or more physical resources that satisfy the received configuration information; and generating one or more virtual disk instances having the specified size and performance parameters.Type: GrantFiled: November 15, 2011Date of Patent: September 23, 2014Assignee: Google Inc.Inventors: Joseph S. Beda, III, Andrew Kadatch