Patents by Inventor Srinivas Neginhal

Srinivas Neginhal 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: 20240380696
    Abstract: Some embodiments provide a network system. The network system includes a first set of host machines for hosting virtual machines that connect to each other through a logical network. The first set of host machines includes managed forwarding elements for forwarding data between the host machines. The network system includes a second set of host machines for hosting virtualized containers that operate as gateways for forwarding data between the virtual machines and an external network. At least one of the virtualized containers peers with at least one physical router in the external network in order to advertise addresses of the virtual machines to the physical router.
    Type: Application
    Filed: July 22, 2024
    Publication date: November 14, 2024
    Inventors: Ariel Tubaltsev, Ronghua Zhang, Benjamin C. Basler, Serge Maskalik, Rajiv Ramanathan, David J. Leroy, Srinivas Neginhal, Kai-Wei Fan, Ansis Atteka
  • Patent number: 12047286
    Abstract: Some embodiments provide a network system. The network system includes a first set of host machines for hosting virtual machines that connect to each other through a logical network. The first set of host machines includes managed forwarding elements for forwarding data between the host machines. The network system includes a second set of host machines for hosting virtualized containers that operate as gateways for forwarding data between the virtual machines and an external network. At least one of the virtualized containers peers with at least one physical router in the external network in order to advertise addresses of the virtual machines to the physical router.
    Type: Grant
    Filed: May 4, 2021
    Date of Patent: July 23, 2024
    Assignee: Nicira, Inc.
    Inventors: Ariel Tubaltsev, Ronghua Zhang, Benjamin C. Basler, Serge Maskalik, Rajiv Ramanathan, David J. Leroy, Srinivas Neginhal, Kai-Wei Fan, Ansis Atteka
  • Patent number: 11907745
    Abstract: Certain embodiments described herein are directed to methods and systems for adding one or more nodes to a first cluster including a first node in a computer system. A method performed by the first node comprises receiving a first request from a second node to join the first cluster. The method also comprises retrieving a first cluster configuration associated with the first cluster from a distributed database through a first database server (DBS) and creating a second cluster configuration using the first cluster configuration and information received from the second node as part of the request. The method further comprises populating a first one or more local trust stores of a first one or more processes executing on the first node with a second one or more security certificates of a second one or more processes executing on the second node. The method further comprises writing the second cluster configuration to the distributed database and returning the second cluster configuration to the second node.
    Type: Grant
    Filed: January 25, 2021
    Date of Patent: February 20, 2024
    Assignee: VMware, Inc.
    Inventors: Srinivas Neginhal, Medhavi Dhawan, Vjekoslav Brajkovic, Cheng Zhang, Jiaqi Chen, David Tsai, Maithem Munshed, Zeeshan Lokhandwala, Ming Wen, Ragnar Edholm, Rajneesh Bajpai
  • Patent number: 11683233
    Abstract: Some embodiments provide a method for a global manager that manages a logical network spanning multiple physical sites. The method receives a set of data describing a modification to a definition of the logical network. From multiple queues that each correspond to a different one of the physical sites spanned by the logical network, the method identifying a set of queues to which to store the received set of data. The method stores the received set of data in the identified set of queues. From each respective queue in the identified set of queues, the method sends the set of data through a respective channel between the global manager and a respective local manager at the respective physical site corresponding to the respective queue.
    Type: Grant
    Filed: June 19, 2020
    Date of Patent: June 20, 2023
    Assignee: VMWARE, INC.
    Inventors: Alexander Rogozinsky, Dwarika Lal, Artem Korneev, Cheng Zhang, Srinivas Neginhal, Medhavi Dhawan
  • Patent number: 11561824
    Abstract: Various aspects are disclosed for distributed application management using an embedded persistent queue framework. In some aspects, task execution data is monitored from a plurality of task execution engines. A task request is identified. The task request can include a task and a Boolean predicate for task assignment. The task is assigned to a task execution engine embedded in a distributed application process if the Boolean predicate is true, and a capacity of the task execution engine is sufficient to execute the task. The task is enqueued in a persistent queue. The task is retrieved from the persistent queue and executed.
    Type: Grant
    Filed: March 15, 2020
    Date of Patent: January 24, 2023
    Assignee: VMWARE, INC.
    Inventors: Srinivas Neginhal, Medhavi Dhawan, Gaurav Sharma, Rajneesh Bajpai
  • Patent number: 11381456
    Abstract: Some embodiments provide a method that, at a first machine that operates at a first physical site as a primary global manager for a logical network spanning a plurality of physical sites, receives a set of ordered data describing a configuration of the logical network. The method stores, in a particular order, the received set of ordered data in a first database located at the first physical site. Through a channel between (i) the first machine and (ii) a second machine that operates at a second physical site as a secondary global manager for the logical network in case of failure of the primary global manager, the method provides the set of ordered data in the particular order for the second machine to store in a second database in the particular order. The second database located at the second physical site.
    Type: Grant
    Filed: June 19, 2020
    Date of Patent: July 5, 2022
    Assignee: VMWARE, INC.
    Inventors: Anny Martinez Manzanilla, Xiaoqin Ma, Maithem Munshed, Srinivas Neginhal, Medhavi Dhawan, Cheng Zhang
  • Patent number: 11334405
    Abstract: Disclosed are a method and system for implementing a distributed persistent queue. To implement the queue, an API is defined that includes a command to enqueue an object onto the queue, to obtain the ordering of all objects in the queue and to remove any item from the queue. Enqueuing an object includes obtaining a unique ID for the object from a generator and then storing the object in a persistent shared log, which provides persistent storage for the queue. Obtaining an ordering of all objects in the persistent queue includes receiving for each object stored in the queue a pair of values, the first being the unique ID and the second being a sequence number from the persistent shared log. Regardless of the host computer system making the request for the ordering of objects in the queue the ordering provided to each host computer system is the same.
    Type: Grant
    Filed: December 12, 2019
    Date of Patent: May 17, 2022
    Assignee: VMware, Inc.
    Inventors: Sundar Sridharan, Maithem Munshed, Srinivas Neginhal, Medhavi Dhawan, Pavan kumar Anumula
  • Publication number: 20220150112
    Abstract: Some embodiments provide a managed network for implementing a logical network for a tenant. The managed network includes a first set of host machines and a second set of host machines. The first set of host machines is for hosting virtual machines (VMs) for the logical network. Each of the first set of host machines operates a managed forwarding element that implements a first logical router for the tenant logical network and a second logical router to which the first logical router connects. The implementation of the second logical router is for processing packets entering and exiting the tenant logical network. The second set of host machines is for hosting L3 gateways for the second logical router. The L3 gateways connect the tenant logical network to at least one external network.
    Type: Application
    Filed: January 19, 2022
    Publication date: May 12, 2022
    Inventors: Srinivas Neginhal, Ronghua Zhang
  • Patent number: 11252024
    Abstract: Some embodiments provide a managed network for implementing a logical network for a tenant. The managed network includes a first set of host machines and a second set of host machines. The first set of host machines is for hosting virtual machines (VMs) for the logical network. Each of the first set of host machines operates a managed forwarding element that implements a first logical router for the tenant logical network and a second logical router to which the first logical router connects. The implementation of the second logical router is for processing packets entering and exiting the tenant logical network. The second set of host machines is for hosting L3 gateways for the second logical router. The L3 gateways connect the tenant logical network to at least one external network.
    Type: Grant
    Filed: July 9, 2019
    Date of Patent: February 15, 2022
    Assignee: NICIRA, INC.
    Inventors: Srinivas Neginhal, Ronghua Zhang
  • Publication number: 20210311960
    Abstract: Some embodiments provide a method for a global manager that manages a logical network spanning multiple physical sites. The method receives a set of data describing a modification to a definition of the logical network. From multiple queues that each correspond to a different one of the physical sites spanned by the logical network, the method identifying a set of queues to which to store the received set of data. The method stores the received set of data in the identified set of queues. From each respective queue in the identified set of queues, the method sends the set of data through a respective channel between the global manager and a respective local manager at the respective physical site corresponding to the respective queue.
    Type: Application
    Filed: June 19, 2020
    Publication date: October 7, 2021
    Inventors: Alexander Rogozinsky, Dwarika Lal, Artem Korneev, Cheng Zhang, Srinivas Neginhal, Medhavi Dhawan
  • Publication number: 20210314215
    Abstract: Some embodiments provide a method that, at a first machine that operates at a first physical site as a primary global manager for a logical network spanning a plurality of physical sites, receives a set of ordered data describing a configuration of the logical network. The method stores, in a particular order, the received set of ordered data in a first database located at the first physical site. Through a channel between (i) the first machine and (ii) a second machine that operates at a second physical site as a secondary global manager for the logical network in case of failure of the primary global manager, the method provides the set of ordered data in the particular order for the second machine to store in a second database in the particular order. The second database located at the second physical site.
    Type: Application
    Filed: June 19, 2020
    Publication date: October 7, 2021
    Inventors: Anny Martinez Manzanilla, Xiaoqin Ma, Maithem Munshed, Srinivas Neginhal, Medhavi Dhawan, Cheng Zhang
  • Publication number: 20210286647
    Abstract: Various aspects are disclosed for distributed application management using an embedded persistent queue framework. In some aspects, task execution data is monitored from a plurality of task execution engines. A task request is identified. The task request can include a task and a Boolean predicate for task assignment. The task is assigned to a task execution engine embedded in a distributed application process if the Boolean predicate is true, and a capacity of the task execution engine is sufficient to execute the task. The task is enqueued in a persistent queue. The task is retrieved from the persistent queue and executed.
    Type: Application
    Filed: March 15, 2020
    Publication date: September 16, 2021
    Inventors: Srinivas Neginhal, Medhavi Dhawan, Gaurav Sharma, Rajneesh Bajpai
  • Publication number: 20210258254
    Abstract: Some embodiments provide a network system. The network system includes a first set of host machines for hosting virtual machines that connect to each other through a logical network. The first set of host machines includes managed forwarding elements for forwarding data between the host machines. The network system includes a second set of host machines for hosting virtualized containers that operate as gateways for forwarding data between the virtual machines and an external network. At least one of the virtualized containers peers with at least one physical router in the external network in order to advertise addresses of the virtual machines to the physical router.
    Type: Application
    Filed: May 4, 2021
    Publication date: August 19, 2021
    Inventors: Ariel Tubaltsev, Ronghua Zhang, Benjamin C. Basler, Serge Maskalik, Rajiv Ramanathan, David J. Leroy, Srinivas Neginhal, Kai-Wei Fan, Ansis Atteka
  • Patent number: 11086846
    Abstract: Certain aspects described herein are directed to methods and systems for updating a status of a first process. In certain aspects, a method includes periodically examining a first table stored in a consistent and distributed database, wherein the table includes a first indication of a status of the first process and a second indication of a status of a second process and the first process and the second process are clustered for implementing functions of a distributed application in a distributed manner. The method further includes determining that the first indication has not changed during a first time period and changing the status of the first process in a second table to reflect that the first process is non-operational, wherein a different share of workload associated with the distributed application is performed by the second process as compared to when the first process was operational.
    Type: Grant
    Filed: January 23, 2019
    Date of Patent: August 10, 2021
    Assignee: VMware, Inc.
    Inventors: Srinivas Neginhal, Medhavi Dhawan, Vjekoslav Brajkovic, Cheng Zhang, Jiaqi Chen, Ragnar Edholm, Rajneesh Bajpai
  • Publication number: 20210182130
    Abstract: Disclosed are a method and system for implementing a distributed persistent queue. To implement the queue, an API is defined that includes a command to enqueue an object onto the queue, to obtain the ordering of all objects in the queue and to remove any item from the queue. Enqueuing an object includes obtaining a unique ID for the object from a generator and then storing the object in a persistent shared log, which provides persistent storage for the queue. Obtaining an ordering of all objects in the persistent queue includes receiving for each object stored in the queue a pair of values, the first being the unique ID and the second being a sequence number from the persistent shared log. Regardless of the host computer system making the request for the ordering of objects in the queue the ordering provided to each host computer system is the same.
    Type: Application
    Filed: December 12, 2019
    Publication date: June 17, 2021
    Inventors: Sundar SRIDHARAN, Maithem MUNSHED, Srinivas NEGINHAL, Medhavi DHAWAN, Pavan kumar ANUMULA
  • Patent number: 11025543
    Abstract: Some embodiments provide a network system. The network system includes a first set of host machines for hosting virtual machines that connect to each other through a logical network. The first set of host machines includes managed forwarding elements for forwarding data between the host machines. The network system includes a second set of host machines for hosting virtualized containers that operate as gateways for forwarding data between the virtual machines and an external network. At least one of the virtualized containers peers with at least one physical router in the external network in order to advertise addresses of the virtual machines to the physical router.
    Type: Grant
    Filed: January 29, 2020
    Date of Patent: June 1, 2021
    Assignee: NICIRA, INC.
    Inventors: Ariel Tubaltsev, Ronghua Zhang, Benjamin C Basler, Serge Maskalik, Rajiv Ramanathan, David J Leroy, Srinivas Neginhal, Kai-Wei Fan, Ansis Atteka
  • Publication number: 20210141660
    Abstract: Certain embodiments described herein are directed to methods and systems for adding one or more nodes to a first cluster including a first node in a computer system. A method performed by the first node comprises receiving a first request from a second node to join the first cluster. The method also comprises retrieving a first cluster configuration associated with the first cluster from a distributed database through a first database server (DBS) and creating a second cluster configuration using the first cluster configuration and information received from the second node as part of the request. The method further comprises populating a first one or more local trust stores of a first one or more processes executing on the first node with a second one or more security certificates of a second one or more processes executing on the second node. The method further comprises writing the second cluster configuration to the distributed database and returning the second cluster configuration to the second node.
    Type: Application
    Filed: January 25, 2021
    Publication date: May 13, 2021
    Inventors: Srinivas NEGINHAL, Medhavi DHAWAN, Vjekoslav BRAJKOVIC, Cheng ZHANG, Jiaqi CHEN, David TSAI, Maithem MUNSHED, Zeeshan LOKHANDWALA, Ming WEN, Ragnar EDHOLM, Rajneesh BAJPAI
  • Patent number: 10901771
    Abstract: Certain embodiments described relate to methods and systems for adding one or more nodes to a first cluster including a first node in a computer system. A method performed by the first node comprises retrieving a first cluster configuration associated with the first cluster from a distributed database through a first database server (DBS) and creating a second cluster configuration using the first cluster configuration and information received from a second node as part of a request to join the first cluster. The method further comprises populating a first one or more local trust stores of a first one or more processes executing on the first node with a second one or more security certificates of a second one or more processes executing on the second node. The method further comprises writing the second cluster configuration to the distributed database and returning the second cluster configuration to the second node.
    Type: Grant
    Filed: January 23, 2019
    Date of Patent: January 26, 2021
    Assignee: VMware, Inc.
    Inventors: Srinivas Neginhal, Medhavi Dhawan, Vjekoslav Brajkovic, Cheng Zhang, Jiaqi Chen, David Tsai, Maithem Munshed, Zeeshan Lokhandwala, Ming Wen, Ragnar Edholm, Rajneesh Bajpai
  • Patent number: 10798048
    Abstract: A method of suppressing ARP packets in a logical network comprising a set of data compute nodes (DCNs). The DCNs are hosted on a set of physical hosts. Each DCN has a protocol address and is connected to a forwarding elements (FE) on the corresponding host. Each FE has a set of flows that specifies a set of conditions to match a set of fields of each received packet and a set of actions to take on a packet that matches the set of conditions. An FE on a physical host receives a packet sent by a first DCN on the physical host and determines that the received packet is an ARP request packet by matching a set of fields in the packet with a set of conditions of a particular flow. The ARP request packet identifies a protocol address of a second DCN on the logical network.
    Type: Grant
    Filed: December 3, 2015
    Date of Patent: October 6, 2020
    Assignee: NICIRA, INC.
    Inventors: Harold Vinson C. Lim, Mart Haitjema, Srinivas Neginhal, Pankaj Thakkar, Teemu Koponen, Anupam Chanda, Benjamin L. Pfaff
  • Publication number: 20200233853
    Abstract: Certain aspects described herein are directed to methods and systems for updating a status of a first process. In certain aspects, a method includes periodically examining a first table stored in a consistent and distributed database, wherein the table includes a first indication of a status of the first process and a second indication of a status of a second process and the first process and the second process are clustered for implementing functions of a distributed application in a distributed manner. The method further includes determining that the first indication has not changed during a first time period and changing the status of the first process in a second table to reflect that the first process is non-operational, wherein a different share of workload associated with the distributed application is performed by the second process as compared to when the first process was operational.
    Type: Application
    Filed: January 23, 2019
    Publication date: July 23, 2020
    Inventors: Srinivas NEGINHAL, Medhavi DHAWAN, Vjekoslav BRAJKOVIC, Cheng ZHANG, Jiaqi CHEN, Ragnar EDHOLM, Rajneesh BAJPAI