Patents by Inventor Navendu Jain

Navendu Jain 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: 20110276951
    Abstract: Instances of a same application execute on different respective hosts in a cloud computing environment. Instances of a monitor application are distributed to concurrently execute with each application instance on a host in the cloud environment, which provides user access to the application instances. The monitor application may be generated from a specification, which may define properties of the application/cloud to monitor and rules based on the properties. Each rule may have one or more conditions. Each monitor instance running on a host, monitors execution of the corresponding application instance on that host by obtaining from the host information regarding values of properties on the host per the application instance. Each monitor instance may evaluate the local host information or aggregate information collected from hosts running other instances of the monitor application, to repeatedly determine whether a rule condition has been violated. On violation, a user-specified handler is triggered.
    Type: Application
    Filed: May 5, 2010
    Publication date: November 10, 2011
    Applicant: MICROSOFT CORPORATION
    Inventor: Navendu Jain
  • Publication number: 20110239010
    Abstract: One or more computers manage power consumption in a plurality of computers by repeatedly evaluating power consumption of pluralities of computers such that any given plurality of computers is evaluated by aggregating indicia of power consumption of the individual computers in the given plurality. The evaluation identifies or predicts pluralities of computers that are over-consuming power and identifies pluralities of computers that are under-consuming power. A first plurality of computers identified as over-consuming power are sent messages to instruct some of its comprising computers or virtual machines (VMs) to lower their computational workload. A second plurality of computers identified as under-consuming power are sent messages instructing the other computers to increase their computation workload.
    Type: Application
    Filed: March 25, 2010
    Publication date: September 29, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, Aman Kansal
  • Publication number: 20100306408
    Abstract: This patent application relates to an agile network architecture that can be employed in data centers, among others. One implementation provides a virtual layer-2 network connecting machines of a layer-3 infrastructure.
    Type: Application
    Filed: October 14, 2009
    Publication date: December 2, 2010
    Applicant: Microsoft Corporation
    Inventors: Albert Greenberg, Parantap Lahiri, David A. Maltz, Parveen K. Patel, Sudipta Sengupta, Navendu Jain, Changhoon Kim
  • Publication number: 20100218005
    Abstract: The described implementations relate to energy-aware server management. One implementation involves an adaptive control unit configured to manage energy usage in a server farm by transitioning individual servers between active and inactive states while maintaining response times for the server farm at a predefined level.
    Type: Application
    Filed: February 23, 2009
    Publication date: August 26, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, CJ Williams, James Larus, Dan Reed
  • Publication number: 20090178046
    Abstract: Techniques are disclosed for allocation of resources in a distributed computing system. For example, a method for allocating a set of one or more components of an application to a set of one or more resource groups includes the following steps performed by a computer system. The set of one or more resource groups is ordered based on respective failure measures and resource capacities associated with the one or more resource groups. An importance value is assigned to each of the one or more components, wherein the importance value is associated with an affect of the component on an output of the application. The one or more components are assigned to the one or more resource groups based on the importance value of each component and the respective failure measures and resource capacities associated with the one or more resource groups, wherein components with higher importance values are assigned to resource groups with lower failure measures and higher resource capacities.
    Type: Application
    Filed: January 8, 2008
    Publication date: July 9, 2009
    Inventors: Navendu Jain, Yoonho Park, Deepak S. Turaga, Chitra Venkatramani