Patents by Inventor James Joseph Stabile
James Joseph Stabile 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: 11822970Abstract: Example methods are provided for a first node to perform identifier (ID) allocation in a virtualized computing environment that includes a cluster formed by the first node and at least one second node. The method may comprise retrieving, from a pool of IDs associated with the cluster, a batch of IDs to a cache associated with the first node. The pool of IDs may be shared within the cluster and the batch of IDs retrieved for subsequent ID allocation by the first node. The method may also comprise, in response to receiving a request for ID allocation from an ID consumer, allocating one or more IDs from the batch of IDs in the cache to respective one or more objects for unique identification of the one or more objects across the cluster; and sending, to the ID consumer, a response that includes the allocated one or more IDs.Type: GrantFiled: October 19, 2016Date of Patent: November 21, 2023Assignee: NICIRA, INC.Inventors: Bhagyashree Gujar, Prashant Ambardekar, Prayas Gaurav, James Joseph Stabile
-
Patent number: 11677611Abstract: Some embodiments provide a novel method for distributing control-channel communication load between multiple controllers in a network control system. In some embodiments, the controllers manage physical forwarding elements that forward data between several computing devices (also called hosts or host computers), some or all of which execute one or more virtual machines (VMs). The method of some embodiments distributes a controller assignment list to the host computers. The host computers use this list to identify the controllers with which they need to interact to perform some of the forwarding operations of their associated logical forwarding elements. In some embodiments, agents executing on the host computers (1) review the controller assignment list to identify the appropriate controllers, and (2) establish control channel communications with these controllers to obtain the needed data for effectuating the forwarding operations of their associated physical forwarding elements.Type: GrantFiled: November 4, 2018Date of Patent: June 13, 2023Assignee: NICIRA, INC.Inventors: Jianjun Shen, Hua Wang, James Joseph Stabile, Xuan Zhang
-
Patent number: 11088990Abstract: Some embodiments provide a method for distributing firewall configuration in a datacenter comprising multiple host machines. The method retrieves a rule in the firewall configuration for distribution to the host machines. The firewall rule is associated with a minimum required version number. The method identifies a high-level construct in the firewall rule. The method queries a translation cache for the identified high-level construct. The translation cache stores previous translation results for different high-level constructs. Each stored translation result is associated with a version number. When the translation cache has a stored previous translation result for the identified high-level construct that is associated with a version number that is equal to or newer than the minimum required version number, the method uses the previous translation result stored in the cache to translate the identified high-level construct to a low-level construct.Type: GrantFiled: December 21, 2016Date of Patent: August 10, 2021Assignee: NICIRA, INC.Inventors: Kaushal Bansal, Uday Masurekar, Shadab Shah, James Joseph Stabile, Steven Peters
-
Patent number: 11082400Abstract: Some embodiments provide a method for managing firewall protection in a datacenter that includes multiple host machines that each hosts a set of data compute nodes. The method maintains a firewall configuration for the host machines at a network manager of the data center. The firewall configuration includes multiple firewall rules to be enforced at the host machines. The method aggregates a first set of updates to the firewall configuration into a first aggregated update and associates the first aggregated update with a first version number. The method distributes a first host-level firewall configuration update to a first host machine based on the first aggregated update and associates the first host machine with the first version number. The method aggregates a second set of updates to the firewall configuration into a second aggregated update and associates the second aggregated update with a second version number.Type: GrantFiled: December 21, 2016Date of Patent: August 3, 2021Assignee: NICIRA, INC.Inventors: Kaushal Bansal, Uday Masurekar, Shadab Shah, James Joseph Stabile, Steven Peters
-
Patent number: 11070520Abstract: Some embodiments provide a network system that includes several host machines for hosting virtual machines, divided into several different domains. The network system includes several local domain management servers. A first local domain management server of a first domain is for (i) initiating creation of a set of distributed virtual switch ports associated with a particular logical network identifier on a host machine within its domain and (ii) attaching a first virtual machine on the host machine to a created port associated with the particular logical network identifier in order for the first virtual machine to send traffic over the logical network. The network system includes a second level management server for coordinating the use of logical network identifiers between multiple different logical domain management servers in order for the first virtual machine to communicate via the logical network with a second virtual machine in a second domain.Type: GrantFiled: March 19, 2020Date of Patent: July 20, 2021Assignee: NICIRA, INC.Inventors: James Joseph Stabile, Debashis Basak, Amol Palshikar, Sachin Thakkar
-
Patent number: 10944722Abstract: A novel method for managing firewall configuration of a software defined data center is provided. Such a firewall configuration is divided into multiple sections that each contains a set of firewall rules. Each tenant of the software defined data center has a corresponding set of sections in the firewall configuration. The method allows each tenant to independently access and update/manage its own corresponding set of sections. Multiple tenants or users are allowed to make changes to the firewall configuration simultaneously.Type: GrantFiled: June 29, 2016Date of Patent: March 9, 2021Assignee: NICIRA, INC.Inventors: Radha Popuri, Shadab Shah, James Joseph Stabile, Sameer Kurkure, Kaushal Bansal
-
Patent number: 10880158Abstract: Some embodiments provide a method for determining a realization status of one or more logical entities of a logical network. The method, each time a particular event occurs, increments the value of a realization number and publishes the incremented value to a set of controllers of the logical network. Upon receiving data that specifies the state of a logical entity of the logical network, the method publishes the logical entity state's data to the set of controllers. In some embodiments, the method queries the set of controllers for a realization status of the state data for a set of logical entities that is published to the set of controllers up to a particular point of time. The submitted query, in some embodiments, includes a particular value of the realization number associated with the particular point of time.Type: GrantFiled: March 14, 2019Date of Patent: December 29, 2020Assignee: NICIRA, INC.Inventors: W. Andrew Lambeth, James Joseph Stabile, Ganesan Chandrashekhar, Pankaj Thakkar, Peter J. Balland, III, Igor Ganichev
-
Publication number: 20200220767Abstract: Some embodiments provide a network system that includes several host machines for hosting virtual machines, divided into several different domains. The network system includes several local domain management servers. A first local domain management server of a first domain is for (i) initiating creation of a set of distributed virtual switch ports associated with a particular logical network identifier on a host machine within its domain and (ii) attaching a first virtual machine on the host machine to a created port associated with the particular logical network identifier in order for the first virtual machine to send traffic over the logical network. The network system includes a second level management server for coordinating the use of logical network identifiers between multiple different logical domain management servers in order for the first virtual machine to communicate via the logical network with a second virtual machine in a second domain.Type: ApplicationFiled: March 19, 2020Publication date: July 9, 2020Inventors: James Joseph Stabile, Debashis Basak, Amol Palshikar, Sachin Thakkar
-
Patent number: 10601637Abstract: Some embodiments provide a network system that includes several host machines for hosting virtual machines, divided into several different domains. The network system includes several local domain management servers. A first local domain management server of a first domain is for (i) initiating creation of a set of distributed virtual switch ports associated with a particular logical network identifier on a host machine within its domain and (ii) attaching a first virtual machine on the host machine to a created port associated with the particular logical network identifier in order for the first virtual machine to send traffic over the logical network. The network system includes a second level management server for coordinating the use of logical network identifiers between multiple different logical domain management servers in order for the first virtual machine to communicate via the logical network with a second virtual machine in a second domain.Type: GrantFiled: May 3, 2019Date of Patent: March 24, 2020Assignee: NICIRA, INC.Inventors: James Joseph Stabile, Debashis Basak, Amol Palshikar, Sachin Thakkar
-
Publication number: 20190260630Abstract: Some embodiments provide a network system that includes several host machines for hosting virtual machines, divided into several different domains. The network system includes several local domain management servers. A first local domain management server of a first domain is for (i) initiating creation of a set of distributed virtual switch ports associated with a particular logical network identifier on a host machine within its domain and (ii) attaching a first virtual machine on the host machine to a created port associated with the particular logical network identifier in order for the first virtual machine to send traffic over the logical network. The network system includes a second level management server for coordinating the use of logical network identifiers between multiple different logical domain management servers in order for the first virtual machine to communicate via the logical network with a second virtual machine in a second domain.Type: ApplicationFiled: May 3, 2019Publication date: August 22, 2019Inventors: James Joseph Stabile, Debashis Basak, Amol Palshikar, Sachin Thakkar
-
Publication number: 20190215238Abstract: Some embodiments provide a method for determining a realization status of one or more logical entities of a logical network. The method, each time a particular event occurs, increments the value of a realization number and publishes the incremented value to a set of controllers of the logical network. Upon receiving data that specifies the state of a logical entity of the logical network, the method publishes the logical entity state's data to the set of controllers. In some embodiments, the method queries the set of controllers for a realization status of the state data for a set of logical entities that is published to the set of controllers up to a particular point of time. The submitted query, in some embodiments, includes a particular value of the realization number associated with the particular point of time.Type: ApplicationFiled: March 14, 2019Publication date: July 11, 2019Inventors: W. Andrew Lambeth, James Joseph Stabile, Ganesan Chandrashekhar, Pankaj Thakkar, Peter J. Balland, III, Igor Ganichev
-
Patent number: 10326639Abstract: Some embodiments provide a network system that includes several host machines for hosting virtual machines, divided into several different domains. The network system includes several local domain management servers. A first local domain management server of a first domain is for (i) initiating creation of a set of distributed virtual switch ports associated with a particular logical network identifier on a host machine within its domain and (ii) attaching a first virtual machine on the host machine to a created port associated with the particular logical network identifier in order for the first virtual machine to send traffic over the logical network. The network system includes a second level management server for coordinating the use of logical network identifiers between multiple different logical domain management servers in order for the first virtual machine to communicate via the logical network with a second virtual machine in a second domain.Type: GrantFiled: August 12, 2016Date of Patent: June 18, 2019Assignee: NICIRA, INC.Inventors: James Joseph Stabile, Debashis Basak, Amol Palshikar, Sachin Thakkar
-
Patent number: 10241820Abstract: Some embodiments provide a method for identifying a realization status of one or more logical entities of a logical network. In some embodiments the method is implemented by a controller that controls network data communications in a logical network. The method receives a request for realization status of a set of logical entities at a particular point of time that is associated with a particular value of a realization number. The method determines whether configuration data up to the particular point of time for each logical entity in the set has been processed and distributed to a set of local controllers that operates on a set of host machines. The method returns a realization reply that includes a successful realization message when the configuration data up to the particular point in time for each logical entity in the set has been processed and distributed to the set of local controllers.Type: GrantFiled: March 14, 2016Date of Patent: March 26, 2019Assignee: NICIRA, INC.Inventors: W. Andrew Lambeth, James Joseph Stabile, Ganesan Chandrashekhar, Pankaj Thakkar, Peter J. Balland, III, Igor Ganichev
-
Patent number: 10243797Abstract: Some embodiments provide a method for determining a realization status of one or more logical entities of a logical network. The method, each time a particular event occurs, increments the value of a realization number and publishes the incremented value to a set of controllers of the logical network. Upon receiving data that specifies the state of a logical entity of the logical network, the method publishes the logical entity state's data to the set of controllers. In some embodiments, the method queries the set of controllers for a realization status of the state data for a set of logical entities that is published to the set of controllers up to a particular point of time. The submitted query, in some embodiments, includes a particular value of the realization number associated with the particular point of time.Type: GrantFiled: March 14, 2016Date of Patent: March 26, 2019Assignee: NICIRA, INC.Inventors: W. Andrew Lambeth, James Joseph Stabile, Ganesan Chandrashekhar, Pankaj Thakkar, Peter J. Balland, III, Igor Ganichev
-
Publication number: 20190075012Abstract: Some embodiments provide a novel method for distributing control-channel communication load between multiple controllers in a network control system. In some embodiments, the controllers manage physical forwarding elements that forward data between several computing devices (also called hosts or host computers), some or all of which execute one or more virtual machines (VMs). The method of some embodiments distributes a controller assignment list to the host computers. The host computers use this list to identify the controllers with which they need to interact to perform some of the forwarding operations of their associated logical forwarding elements. In some embodiments, agents executing on the host computers (1) review the controller assignment list to identify the appropriate controllers, and (2) establish control channel communications with these controllers to obtain the needed data for effectuating the forwarding operations of their associated physical forwarding elements.Type: ApplicationFiled: November 4, 2018Publication date: March 7, 2019Inventors: Jianjun Shen, Hua Wang, James Joseph Stabile, Xuan Zhang
-
Publication number: 20190018710Abstract: In a computer-implemented method for managing resource allocation of a managed system, responsive to a request by a consumer node, an owner node of a plurality of owner nodes that controls resource allocations from the pool of resources is determined, where the resource is associated with a data object. A resource is allocated from a pool of resources comprising a plurality of resources by the owner node. An allocation marker corresponding to the resource is created. The resource and the allocation marker are made available for retrieval by the consumer node.Type: ApplicationFiled: November 13, 2017Publication date: January 17, 2019Inventors: PRASHANT AMBARDEKAR, Prayas Gaurav, James Joseph Stabile, Steven Peters
-
Patent number: 10148484Abstract: Some embodiments provide a novel method for distributing control-channel communication load between multiple controllers in a network control system. In some embodiments, the controllers manage physical forwarding elements that forward data between several computing devices (also called hosts or host computers), some or all of which execute one or more virtual machines (VMs). The method of some embodiments distributes a controller assignment list to the host computers. The host computers use this list to identify the controllers with which they need to interact to perform some of the forwarding operations of their associated logical forwarding elements. In some embodiments, agents executing on the host computers (1) review the controller assignment list to identify the appropriate controllers, and (2) establish control channel communications with these controllers to obtain the needed data for effectuating the forwarding operations of their associated physical forwarding elements.Type: GrantFiled: November 1, 2013Date of Patent: December 4, 2018Assignee: NICIRA, INC.Inventors: Jianjun Shen, Hua Wang, James Joseph Stabile, Xuan Zhang
-
Publication number: 20180007000Abstract: Some embodiments provide a method for distributing firewall configuration in a datacenter comprising multiple host machines. The method retrieves a rule in the firewall configuration for distribution to the host machines. The firewall rule is associated with a minimum required version number. The method identifies a high-level construct in the firewall rule. The method queries a translation cache for the identified high-level construct. The translation cache stores previous translation results for different high-level constructs. Each stored translation result is associated with a version number. When the translation cache has a stored previous translation result for the identified high-level construct that is associated with a version number that is equal to or newer than the minimum required version number, the method uses the previous translation result stored in the cache to translate the identified high-level construct to a low-level construct.Type: ApplicationFiled: December 21, 2016Publication date: January 4, 2018Inventors: Kaushal Bansal, Uday Masurekar, Shadab Shah, James Joseph Stabile, Steven Peters
-
Publication number: 20180007008Abstract: Some embodiments provide a method for managing firewall protection in a datacenter that includes multiple host machines that each hosts a set of data compute nodes. The method maintains a firewall configuration for the host machines at a network manager of the data center. The firewall configuration includes multiple firewall rules to be enforced at the host machines. The method aggregates a first set of updates to the firewall configuration into a first aggregated update and associates the first aggregated update with a first version number. The method distributes a first host-level firewall configuration update to a first host machine based on the first aggregated update and associates the first host machine with the first version number. The method aggregates a second set of updates to the firewall configuration into a second aggregated update and associates the second aggregated update with a second version number.Type: ApplicationFiled: December 21, 2016Publication date: January 4, 2018Inventors: Kaushal Bansal, Uday Masurekar, Shadab Shah, James Joseph Stabile, Steven Peters
-
Publication number: 20170371716Abstract: Example methods are provided for a first node to perform identifier (ID) allocation in a virtualized computing environment that includes a cluster formed by the first node and at least one second node. The method may comprise retrieving, from a pool of IDs associated with the cluster, a batch of IDs to a cache associated with the first node. The pool of IDs may be shared within the cluster and the batch of IDs retrieved for subsequent ID allocation by the first node. The method may also comprise, in response to receiving a request for ID allocation from an ID consumer, allocating one or more IDs from the batch of IDs in the cache to respective one or more objects for unique identification of the one or more objects across the cluster; and sending, to the ID consumer, a response that includes the allocated one or more IDs.Type: ApplicationFiled: October 19, 2016Publication date: December 28, 2017Inventors: BHAGYASHREE GUJAR, PRASHANT AMBARDEKAR, PRAYAS GAURAV, JAMES JOSEPH STABILE