×

Controlling network utilization

  • US 10,013,281 B2
  • Filed: 06/29/2011
  • Issued: 07/03/2018
  • Est. Priority Date: 06/29/2011
  • Status: Active Grant
First Claim
Patent Images

1. A method of specifying and allocating network bandwidth for distributed applications executing on virtual machines (VMs) executing on hosts in a network, the method comprising:

  • storing, by a computing device, application network specifications, each application network specification corresponding to a respective distributed application, each distributed application comprising a plurality of application elements executing on a respective plurality of the VMs on a respective plurality of the hosts, wherein an application network specification of a distributed application comprises individual bandwidth specifications of respective application elements of the distributed application, wherein each bandwidth specification (i) respectively identifies a first application element of the distributed application and a second application element of the distributed application element, and (ii) specifies an inter-element bandwidth condition as a function of a bandwidth requirement between the first application element and the second application element;

    collecting, storing, and accessing measures of network usage in the network;

    determining, by the computing device, for a given application network specification corresponding to a given distributed application, that an individual given bandwidth specification of the plurality of bandwidth specifications therein is not met, the individual bandwidth specification of the plurality of bandwidth specifications identifying a given first application element of the given network application, a given second application element of the given network application, and a given inter-element bandwidth condition in terms of the given first and second application elements, wherein whether the given bandwidth specification is met is determined by;

    selecting, from among the measures of network usage, measures of network bandwidth for respective VMs, wherein the measures of network bandwidth are selected on the basis of the VMs being determined to be hosting instances of the first and second given application elements identified by the given bandwidth specification;

    based on the network bandwidth specification, determining an inter-element bandwidth measure corresponding to bandwidth between one or more of the given first application elements and one or more of the given second application elements, wherein the inter-element bandwidth measure is determined using the selected measures of network bandwidth;

    determining, by the computing device, that the given inter-element bandwidth condition is not met by evaluating the given inter-element bandwidth condition against the inter-element bandwidth measure; and

    based on the determining that the given inter-element bandwidth condition of the individual bandwidth specification of the plurality of bandwidth specifications is not met, selecting one or more VMs on the basis of the selected VMs hosting the given first or second application elements, and migrating the selected one or more of the VMs and/or regulating, by one or more of the hypervisors, bandwidth usage of the selected one or more of the VMs.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×