Power manager for a network having a virtual machine

A system for managing energy efficiency and control mechanisms in a network having a virtual machine includes a virtual machine power manager (VMPM) coupled to a virtual machine manager (VMM) and a network component. The VMPM is configured to receive power information from the network component, analyze the power information, generate configuration instructions based on the analyzing and send the configuration instructions to the VMM.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is related to U.S. Non-Provisional patent application Ser. No. 12/813,085, filed concurrently herewith, which is entitled “Global Control Policy Manager,” and is incorporated herein by reference in its entirety.

FIELD OF THE INVENTION

The present invention generally relates to managing power consumption a network that uses virtual machines.

BACKGROUND OF THE INVENTION

Energy costs continue to escalate in a trend that has accelerated in recent years. Because of this, various industries have become increasingly sensitive to the impact of those rising costs. One area that has drawn increasing scrutiny is the IT infrastructure. Many companies are now looking at their IT systems' power usage to determine whether the energy costs can be reduced. For this reason, an industry focus on energy efficient networks has arisen to address the rising costs of IT equipment usage as a whole (i.e., PCs, displays, printers, servers, network components, etc.).

Modern networking components are increasingly implementing energy consumption and efficiency (ECE) control mechanisms. Some ECE control mechanisms allow physical layer components to enter and exit a low power state. An ECE control policy controls when and under what circumstances, ECE control enabled physical layer components enter and exit low power states. The integration of the control policy decision engine with the controls to the physical layer will affect the overall efficiency attained. The control policy plays a key role in maximizing savings while minimizing performance impact on the network.

The same modern networks that are increasingly using ECE-enabled components also are increasingly using virtualized components. Virtualized environments, managed by virtual machine managers (VMMs) are deployed in different ways, on top of different physical topologies. With ECE in a traditional, non-virtualized network implementation, physical network components, e.g., ports, bridges and network switches, have a more direct connection to the logic that implements the ECE policies. Within virtualized environments however, the underlying physical topology upon which the VM is deployed and the ECE policies attached thereto are not generally visible to the virtual machine manager (VMM).

Challenges to implementing ECE control policies in virtualized network include the dynamic nature of the VM and different types of topologies upon which a VM can be deployed, e.g., VMs that span multiple machines, complex and dynamically changing network topologies, and the maintenance of performance standards.

Thus, what is needed is a virtual machine power manager (VMPM) with power and topology information that overcomes the shortcomings described above.

The invention is described with reference to the accompanying drawings. The drawing in which an element first appears is typically indicated by the leftmost digit(s) in the corresponding reference number.

DETAILED DESCRIPTION OF THE INVENTION

The following detailed description of the present invention refers to the accompanying drawings that illustrate exemplary embodiments consistent with this invention. Other embodiments are possible, and modifications may be made to the embodiments within the spirit and scope of the invention. Therefore, the detailed description is not meant to limit the invention. Rather, the scope of the invention is defined by the appended claims.

Features and advantages of the invention are set forth in the description that follows, and in part are apparent from the description, or may be learned by practice of the invention. The advantages of the invention are realized and attained by the structure and particularly pointed out in the written description and claims hereof as well as the appended drawings. The following detailed description is exemplary and explanatory and is intended to provide further explanation of the invention as claimed.

Overview

FIG. 1is a block diagram of an embodiment of a system100for managing energy conservation and efficiency (ECE) and control mechanisms in a network having a virtual machine. Host150is depicted coupled to network switch (switch)160and virtual machine power manager (VMPM)190. Host150includes virtual machine manager110, physical port155and virtual machine (VM)120, such VM120having virtual port125. Switch160is shown coupled to network101.

Host150is typically a computer with various computer system configurations, including multi-core multiprocessor systems, minicomputers, mainframe computers, computer linked or clustered with distributed functions, as well as pervasive or miniature computers that may be embedded into virtually any device.

As used herein network101can be any one or more networks of any type including, but not limited to, local area networks, medium area networks, or wide-area networks, such as, the Internet. In an embodiment, system100is a subset of a larger, interconnected data center having multiple hosts150and switches160connected by network101.

Network switch160is typically a networking bridge device with data ports that can additionally have routing/switching capability, e.g., L3switch/router. The switch could have as little as two data ports or as many as 400 or more data ports, and can direct traffic in full duplex from any port to any other port, effectively making any port act as an input and any port as an output. Herein, data ports and their corresponding links can be interchangeably referred to as data channels, communication links, data links, etc, for ease of discussion. Because the physical depictions in the figures should not be interpreted as limiting, switch160and host150, as used herein can include host150and switch160combined in a single physical device (not shown). Switch160also broadly includes the use of switch logic in modern tiered switching architectures.

VM120is typically an instance of a virtual machine as a part of a virtualization platform. One having skill in the art will know of modern virtualization platforms and their implementation. A system having a virtual machine typically provides a complete system platform, which supports the execution of a complete operating system (OS). Virtual machines are typically managed by virtual machine managers (also known as hypervisors), such as VMM110.

Energy Consumption and Efficiency (ECE)

As used herein energy consumption and efficiency (ECE) control mechanisms are used to refer to various modern techniques for controlling the energy consumption and efficiency of devices. Generally speaking, these ECE mechanisms are designed to reduce energy consumption and improve efficiency while maintaining an acceptable level of performance.

One example of an ECE control mechanism is the IEEE P802.3az standard, also known as Energy Efficient Ethernet, which is incorporated herein by reference. EEE is an IEEE suggested standard that is designed to save energy in Ethernet networks on a select group of physical layer devices (PHYs). Example PHYs referred to within the EEE standard include the 100BASE-TX and 1000BASE-T PHYs, as well as emerging 10GBASE-T technology and backplane interfaces, such as 10GBASE-KR.

Adding an additional layer of control, EEE capable devices can have their ECE features managed by a type of configuration instructions called a control policy. Control policy generation can consider different types of power information, e.g., traffic patterns over time, traffic, performance characteristics, the type and profile of traffic and other relevant information to help decide when to utilize EEE features. Control policy generation may also be determined by looking at hardware subsystem activity as a proxy for actual traffic analysis. Broadly speaking, power information can include all configuration, resource and power usage information for all network hardware, software and traffic that is relevant for ECE optimization.

Virtual Machine Power Manager (VMPM)

Returning to virtual machines, one having skill in the relevant art will appreciate that in some implementations, the virtual control plane (e.g., VMM110) of a virtualized system can be unaware of different aspects of the physical portions of the system. This lack of information in VMM110is especially important with respect to ECE improvement, e.g., VMM110does not have information about different ECE capabilities, control policies and other power conservation features of different system components. As discussed herein, by collecting power information, analyzing the power information, generating configuration instructions and interacting with VMM110, an embodiment VMPM190is designed to address many of these problems. Termed another way, in an embodiment, it is a feature of VMPM190to relay the ECE logic of associated system components to VMM110in order to improve ECE.

VMPM190is coupled to a VMM110and network components, e.g., switch160, and receives power information from at the network components. This power information will be discussed further below. After collecting power information, VMPM190analyzes the power information and generates configuration instructions based on the analysis. These configuration instructions, discussed further below, are then relayed to VMM110.

The analysis and generation features described above can balance the power information against other network considerations, e.g., performance, security, etc. In an embodiment, VMPM190improvement of ECE performance can be balanced, coordinated with and otherwise affected by, other performance characteristics and goals set for the system.

Any characteristics available to VMPM190or similar components, can be analyzed and relayed to VMM110or similar virtual machine management components. In an embodiment, the VMPM is designed to be a unifying resource to promote ECE with respect to VMM110managed systems. In an embodiment, VMPM190acts to coordinate requirements of different system components, e.g., performance, with different ECE goals.

In generating configuration instructions, VMPM190can receive various types of energy/power-relevant information (power information) about network components. Examples of this power information include physical layer (PHY) information, link information, ECE control policy information and application information. One having skill in the relevant arts, with access to the teachings herein, will appreciate that a broad range of information, characteristics, policies, etc., will qualify as power information as used herein.

Physical layer (PHY) information can relate to the operational characteristics or capabilities of a network component itself, including characteristics such as the supported link rates available to the network component, the different modes of operation (e.g., subset modes) available to the component, etc.

Link information can relate to the utilization of the links between network components. An example of link information is traffic buffer fullness. In another example, the link information can include burstiness parameters (e.g., size of the bursts on the link, time between bursts, idle time on the link, etc.) that enable a determination of the actual link utilization. Another example is the percentage of link capacity usage over time, e.g., if the average usage of 10G link is always less than 1G over a period of time this can be a useful measure of link utilization.

ECE policy parameters can relate to those parameters that can govern the analysis and/or operation of the control policy set for the network component. When a network component is configured, for example, policy parameters can be set to govern the ECE operation of the device, including link utilization thresholds, IT policies, user parameters, etc. Finally, application information can relate to the characteristics of the system applications that can govern the operation of network components. An example of useful application information includes the streams running through an analyzed network component, e.g., in a L2switch without virtualization, awareness of an AVB stream running through the component can be useful in helping determine whether lower power states are useful.

As should be appreciated, the specific set of power information received, the analysis performed on the power information and the process of generating configuration instructions based on the power information would be implementation dependent. Regardless of the data collected and the analysis mechanisms used, it is significant that VMPM190is consolidating, analyzing and utilizing power information from network components to guide the operation of VMM110, and possibly over all network configuration and routing/switching.

It should be noted that the principles of the present invention can be broadly applied to various contexts, such as in all PHYs that implement ECE (e.g., backplane, twisted pair, optical, etc.). Moreover, the principles of the present invention can be applied to standard or non-standard (e.g., 2.5G, 5G, 100M, 1G and 10G optical interfaces, PON, etc.) link rates, as well as future link rates (e.g., 40G, 100G, 400G, Terabit etc.). It should also be noted that the principles of the present invention can be applied to a given link either asymmetrically or symmetrically.

Example ECE Mechanisms

A method of power savings (ECE) implemented within the EEE standard is a technique known as sub-rating. In general, a reduction in link rate to a sub-rate of the main rate enables a reduction in power, thereby leading to energy savings. In one example, this sub-rate can be a zero rate, which produces maximum power savings. In addition, the principles of the present invention can be applied to variations of sub-rating, such as “subset-PHY” and other similar techniques.

One example of sub-rating is through the use of a subset PHY technique. In this subset PHY technique, a low link utilization period can be accommodated by transitioning the PHY to a lower link rate that is enabled by a subset of the parent PHY. In one embodiment, the subset PHY technique is enabled by turning off portions of the parent PHY to enable operation at a lower or subset rate. For example, a subset 1G PHY can be created from a parent 10GBASE-T PHY by a process that turns off three of the four channels. In another embodiment, the subset PHY technique is enabled by slowing down the clock rate of a parent PHY. For example, a parent PHY having an enhanced core that can be slowed down and sped up by a frequency multiple can be slowed down by a factor of 10 during low link utilization, then sped up by a factor of 10 when a burst of data is received. In this example of a factor of 10, a 10G enhanced core can be transitioned down to a 1G link rate when idle, and sped back up to a 10G link rate when data is to be transmitted.

Another example of sub-rating as method of power savings (ECE) implemented within the EEE standard is a technique known as Low Power Idle (LPI), e.g., the sub-rate is set to zero while the connection is idle. Traditional Ethernet standards specification has an active idle state, which requires the bulk of traditional Ethernet circuitry to remain powered up, independent of data transmission. This constant powered-up state results in similar power consumption regardless of whether or not a link is being used. LPI provides for a lower consumption energy state that can be employed during the periods of low link utilization (high idle time) common to many Ethernet networks. LPI also allows for rapid transitions back to the active state for high-performance data transmission.

In general, LPI relies on turning the active channel silent when there is nothing to transmit. Energy is thereby saved when the link is off. Refresh signals can be sent periodically to enable wakeup from the sleep mode. In one enhancement to a standard LPI embodiment, a sync signal can be used on the interfaces (i.e., medium dependent interface (MDI) and PHY/medium access control (MAC) interface) to allow for a quick wake-up from the sleep mode and maintain frequency lock. For example, on the MDI interface for a 10GBASE-T signal, a simple PAM2 pseudorandom bit sequence could be used on pair A during LPI mode. This would not significantly increase the power that is consumed.

In general, both the subset and LPI sub-rating techniques discussed above involve turning off or otherwise modifying portions of the PHY during a period of low link utilization. Due to the similarity in the complexity of their implementation, the overhead is relatively small and both sub-rating techniques can be incorporated practically in the same PHY. This gives increased flexibility to the application and application requirements in the upper layers. In general, both techniques present different solutions and challenges to the different applications and traffic patterns from a networking perspective (above the PHY).

An example of a method and system of sub-rating a network connection to achieve a reduction in power usage can be found in U.S. patent application Ser. No. 12/369,026, which is entitled “Hybrid Technique in Energy Efficient Ethernet Physical Layer Devices,” and is incorporated herein by reference in its entirety.

LPI is favorable when there is very low link utilization. Moderate utilization, on the other hand, may have widely varied link utilization. Obtaining efficient outcomes in a network with such varied traffic requires coordination between different network components. Unsuccessful coordination can add cost, latency, and jitter to network traffic and makes the energy efficiency less predictable.

The foregoing features associated with the LPI technique should be considered in the context of a network having a VMPM190and VM110. As noted above, traditionally, VMMs do not receive power information about network components in the system. This lack of information can render ECE techniques such as LPI unworkable in conventional configurations.

In an example of an LPI implementation using the components shown inFIG. 1, under a traditional approach, although physical port155may receive notification of the switch160change in status, virtual port125and virtual machine120may not have the same notice. Complex ECE policies implemented at components connected to VM120are generally not propagated to associated VMM110in traditional configurations. In an embodiment, VMPM190can receive and analyze this power information, including the control policies and capabilities of connected components.

In another embodiment, if idle-promoting approaches are used by components (e.g., buffering and queues used by switch160and physical port155), VMPM190can monitor these approaches and relay status and other information to VMM110.

In an embodiment, different network components may have different ECE capabilities. For example, some components may have no ECE capabilities, while others may only have basic idle capacity, e.g., idle on or idle off. Other more sophisticated components can have internal control policies that guide ECE functions, while other components are controlled by control policies on external devices. As would be appreciated by one having skill in the art given the description herein, VMPM190can interact with all of these different devices, coordinating their characteristics, events, policies and other related information, with associated VMMs110in the system. In addition to a basic storage and coordination of connected device characteristics, in an embodiment, VMPM190can perform a synchronization role between devices to promote ECE.

In an embodiment, by knowing the particular ECE policies and EEE capabilities of different network components, VMPM190can avoid the components with ECE policies which otherwise may degrade required performance. For example, if VMPM190is managing an instance of VM120that handles banking information requiring low latency, certain components with aggressive ECE control policies could be avoided. Similarly, VMPM190can direct other non-performance sensitive applications in other managed VMs to network components with additional EEE capabilities and different ECE control policies.

In embodiment, this connection between VMPM190and network components, e.g., switch160, is constant and dynamic, thereby giving VMPM190the capability of quickly updating VMM110about changing policies and circumstances. An example action that can be performed by VMM110in response to information from VMPM190is related to virtual port125. In an example, virtual port125can be set to coordinate its responses, e.g., buffering of specific types of traffic, with physical port155and switch160.

In another embodiment, VMPM190can receive power information from network components and relay this information to VMM110without performing analysis of the power information. In this embodiment, VMPM190acts to aggregate the power information, and VMM110performs the analysis and ECE determinations.

Placement of VMPM

FIG. 2illustrates alternative physical and logical configurations for different embodiments of VMPM190fromFIG. 1. Each depicted placement of VMPM290A-D is intended to be non-limiting, and present a placement that can function independently or in coordination with other VMPM290A-D components. For example, system200could have a single VMPM290A, two VMPMs290A-B, or all four VMPM290A-D components.

VMPM290A is depicted onFIG. 2placed as a component of host150. Instead of the external placement illustrated onFIG. 1, VMPM290A is a component on host150. As described above, in an embodiment, VMPM190,290A can connect with different network devices, e.g., switch160and components on network101. In an embodiment, the installation on host150does not affect this connectivity, VMPM290A having the capacity to connect to external components via physical port155.

VMPM290B is depicted onFIG. 2placed as a component of VMM110, e.g., a software component or “plug-in.” As would be appreciated by one skilled in the relevant arts, software systems, e.g., VMM110, can allow add-on software components to be installed and interact with the main system. In an embodiment, VMPM290B is designed to be installed as a plug-in in a VMM110software system. Other software interactions are also possible.

VMPM290C is depicted onFIG. 2placed as a component of switch160, e.g., a separate, software component linked to the existing switch software265or “plug-in” component (not shown) to switch software265. As would be appreciated by one having skill in the art, switch160can have installed software and hardware logic that provide different functions to the switch device. In an embodiment, VMPM290C is installed as hardware logic in switch160and can manage one or more VMMs, including VMM110. In another embodiment, VMPM290C is installed as a software component in switch160. In another embodiment, VMPM290D is depicted as an external component linked to switch160, this linkage contrasting with the embodiment illustrated onFIG. 1where VMPM190was linked directly to host150.

The placement illustrations ofFIG. 2are not intended to be limiting. One having skill in the relevant art will appreciate that the functions of VMPM190,290as described herein can be located in various positions within the systems described herein, implemented as either software or hardware, or a combination of the two.

Multiple Virtual Machines

FIG. 3illustrates host350as including virtual machines320A-B, managed by VMM110, and virtual switch380connected to virtual ports125A-B and physical ports155A-B.FIG. 3also illustrates an embodiment of VMPM190connected to host350and switches160A-B.

As would be appreciated by one having skill in the art, the complexities of multiple VM320A-B management by VMM110greatly complicates traditional ECE improvement in system300. In addition, virtual switch380connected to physical ports155A-B provides an additional area where performance can by improved by embodiments above traditional approaches.

In an embodiment, VMPM190can provide information and direction to VMM110that can affect where VMM110places different VM320A-B functions. As would be appreciated by one having skill in the relevant arts, VM function placement, e.g., live migration, can be used to allocate operating VM applications to different machines based on VMM190direction. In an example ECE application, VM320A may have an ECE advantage with respect to its interaction with host350, virtual switch380and physical port155A. In an embodiment, VMPM190can have information regarding the different ECE characteristics of allFIG. 3components, and guide VMM110in the placement of virtualized applications. For example, VMPM190can direct the placement of communication-intensive applications on VM320A instead of VM320B because of the ECE advantage characteristics of320A.

In a variation of this example, VMPM190could balance the performance implications of application placement, e.g., placement of the communication-intensive application on VM320A, and determine the application should be placed elsewhere. It should be appreciated that, in an embodiment, VMPM190balances competing determinations using collected ECE information and other considerations to guide VMM110.

In an embodiment, system300may have policies implemented that are designed to promote different, possibly contradictory goals than ECE. For example, while ECE considerations may cause VMPM190to direct VMM110or switch160B to buffer traffic for idle-time considerations, switch160B may have load-balancing logic implemented that contradicts these buffering instructions. In an embodiment VMPM190has information regarding different system policies, e.g., load-balancing, ECE, security and performance, and acts as a centralized coordination component to guide VMM110and related system components.

In an embodiment, VMPM190generates configuration instructions to manage the routing/switching by VMM110, of data traffic from virtual ports125A-B. If, for example physical port155A has, at a particular moment, superior power characteristics to physical port155B, VMPM190can direct VMM110to prefer this port if other considerations, e.g., performance requirements, permit. In traditional VMM110implementations, the coordination of an improved ECE with multiple VMs320A-B on a single host, as illustrated onFIG. 3, has been difficult because of the lack of comprehensive ECE information.

In an embodiment, as noted above, VMPM190has a dynamic coordinating capability vis-à-vis connected system components. As illustrated onFIG. 3, the coordination of ECE characteristics and capabilities between and among the different components, e.g., switches160A-B, physical ports155A-B, virtual switch380, VMs320A-B and host150can be performed by VMPM190.

In an additional example, still referring toFIG. 3, if switch160A has ECE enabled and switch160B does not, VMPM190can prefer the160A traffic route if other considerations, e.g., performance requirements, permit. In a traditional virtualized system, VMM110does not have information corresponding to the ECE characteristics of downstream systems. This example embodiment that places VMPM190as coupled to switches160A-B and VMM110increases the cooperation between ECE systems.

In further embodiments illustrated onFIG. 3, VMPM190can route traffic to improve ECE using in a variety of approaches:

A1. Switch160can route traffic from virtual ports125A-B to physical ports155A-B.

A2. VMM110can be directed to prioritize the processing of output from VM320A or320B.

A3. VMM110can be directed to perform migration of VM functions from VM320A to320B based on ECE requirements.

A4. If physical port155A has ECE enabled, host350can be directed to direct data to this port.

The list of Approaches A1-A4 noted above in not intended to be limiting. One having skill in the relevant arts, given the descriptions herein will understand that VMPM190can route traffic in additional ways to affect ECE in system300.

Port Profile Database (PPD)

Still referring toFIG. 3, in an embodiment, one resource that can be used by VMPM190to both receive and store ECE and general component characteristics is port profile database (PPD)395. As would be appreciated by one having skill in the art with knowledge of the descriptions herein, PPD395is used by other system components, including VMM110, to provide information about the characteristics of system components, e.g., ports.

In an embodiment, VMPM190can interact with VMM110to collect, analyze and relay different configuration instructions to VMM110and to ECE enabled devices. As would be appreciated by one having skill in the relevant art(s) given the description herein, configuration instructions can broadly include any instructions that when relayed to VMM110can impact ECE optimation. For example, configuration instructions broadly include, EEE control policies, Energy efficient Ethernet Networking (EEN) policies, and other ECE instructions to VM managed hardware, software and traffic.

Virtualized system optimization can benefit from a two way routing/switching of information by embodiments to VMM110from VMPM190and from VMM110to VMPM190. As noted above, because both VMPM190and VMM110can share access to PPD395, both components can share information via this central repository. For example, VMPM190can gather power characteristics and/or control policy information about network components, and store them in PPD395for analysis by VMM110to support routing/switching decisions. Alternatively, VMPM190can provide direct or contingent routing/switching instructions directly to network components to enact routing/switching decisions.

Virtual Machine Spanning

FIG. 4illustrates an embodiment of system400having a virtual machine420that spans multiple physical hosts150A-B, VMM110and VMPM190. As with the illustration inFIG. 3(multiple VMs in a single host), the embodiment illustrated inFIG. 4represents increasing complexity in term of VMM110ECE management.

VM420and its placement across multiple physical devices (hosts150A-B) shows a varied ECE environment. For example, virtual port125A and125B now can map to physical port155A and155B respectively, such ports potentially having different ECE characteristics. It should be noted also that, in the embodiment illustrated inFIG. 4, each host150A-B are depicted as physically connected to different switches160A and160B respectively. As noted above VMPM190, in an embodiment, can coordinate the ECE capabilities and control polices between and among these complex connections.

In an embodiment illustrated onFIG. 4, direction by VMPM190to VMM110can be especially useful because of the different host150A-B spanning by VM420, as described above. In an embodiment, VMPM190, having access to ECE information forFIG. 4components, can direct VMM110to allocate virtualized applications between hosts150A-B.

FIG. 5illustrates a non-limiting example of data center500, where VMPM590manages power consumption in a network having a network topology including two hosts (550,555), four switches (560A-B,565A-B) and client570. Because the teachings herein as applied to traffic path selection can be generally applied to all components that handle these functions, as used herein, the terms routing, switching and routing/switching are generally used interchangeably.

In an example embodiment illustrated onFIG. 5, switches560A-B have ECE capabilities (e.g., EEE LPI as discussed above) and switches565A-B do not. In this embodiment, VMPM590has collected the ECE characteristics of all hardware components shown onFIG. 5. As would be appreciated by one having skill in the relevant art(s), VMM510can direct traffic through various network traffic paths, e.g., host550to switch560A to switch560B to client570. One having skill in the art will appreciate that this routing/switching can be accomplished in a variety of ways, including the tagging of data packets and the routing/switching by the switches according to the tags.

VMPM590, having information available corresponding to ECE information (switch560A-B capabilities) can analyze this information and combine it with other considerations, e.g., performance requirements. In this example, because the ECE capabilities of switches560A-B, VMPM590directs VMM510to use this route for traffic to client570. This routing/switching can be performed by VMM510using the packet tagging approach described above. As would be appreciated by persons having skill in the relevant art(s), other traffic paths can be considered.

FIG. 6illustrates a non-limiting example of data center600, where VMPM690manages power consumption in a network having a network topology including two hosts (650,655), four switches (660A-B,665A-B) and client670. In an example illustrated byFIG. 6, switches660A-B have ECE capabilities and a control policy “A” implemented, and switches665A-B have ECE capabilities and a control policy “B” implemented. In this example, control policy “A” has traffic-specific ECE policies (e.g., prioritizing VoIP traffic), and policy “B” does not implement traffic-specific ECE policies.

In an embodiment, VMPM690can be “traffic-aware” in its coordination of ECE policies and capabilities. One challenge of VMM610is the interaction with types of network traffic on the virtual and physical network component devices. For example, switches660A-B,665A-B can be set to carry both high priority (e.g., video streaming, VoIP) traffic and low-priority (e.g., HTML) traffic. Those skilled in the relevant art(s) will understand that different ECE policies/approaches can be designed around different traffic types. For example, switches660A-B, according to policy “A” noted above, can be set to buffer low-priority standard traffic and immediately relay VoIP high-priority traffic. In an embodiment, VMPM690is coupled to theFIG. 6switches660A-B,665A-B and can receive specific power information regarding ECE control policies and other information.

In another embodiment, VMPM690can also be performance-aware—weighing the performance implications of routing/switching determinations. For example, the four switches noted above (660A-B,665A-) can have settings determined that increase the speed of all traffic notwithstanding ECE considerations, if performance considerations dictate.

Continuing with this example, VMPM690can analyze the received power information and generate configuration instructions for VMM610regarding data center600traffic types. Thus, in this example, if a traffic profile required by a specific virtualized application favors a particular type of traffic, VMPM690can not only direct VMM610to direct traffic to the link path with a control policy that improves ECE, but also direct VMM610to reallocate the virtualized application placement between the VMs620A-B and625A-B.

In another example embodiment illustrated onFIG. 6, connection662is a 10GB link and connection667is a 1GB link. As would be known by one skilled in the art, a 10GB link will use more power than a 1GB link, and ECE policies implemented, in this example, on switches660A-B and665A-B can take these link speeds and power requirements into account. In an embodiment of VMPM690, these link speeds and ECE policies can be coordinated with virtualized application placement on VMs620A-B and625A-B. In an embodiment, VMPM690can generate configuration instructions for VMM610to implement the routing/switching techniques noted above (packet tagging, for example).

In addition, if the traffic from particular virtualized application favors the performance balance between the faster662link and the slower667link, VMPM690can not only direct VMM610to direct traffic to link path662, but also direct to VMM610to reallocate the virtualized application placement between the VMs620A-B and625A-B. Without an embodiment that includes the VMPM690analysis and management characteristics described above, mismatches and inefficient configurations of network components can occur.

This routing/switching and resource allocation guidance would not traditionally be available to VMM610, and the generation of configuration instructions by VMPM690, can act to promote ECE in data center600.

This section andFIG. 7summarize the techniques described herein by presenting a flowchart of an exemplary method700of managing energy efficiency and control mechanisms in a network having a virtual machine and a plurality of network components. While method700is described with respect to an embodiment of the present invention, method700is not meant to be limiting and may be used in other applications.

As shown inFIG. 7, an embodiment of method700begins at step710where a virtual machine power manager (VMPM) receives power information from at least one of the plurality of network components. In an embodiment, VMPM190receives power information, such as ECE information discussed above, from switch160. Once step710is complete, method700proceeds to step720.

At step720, the power information is analyzed. In an embodiment, the power information, such as the ECE information from switch160is analyzed by a VMPM190. Once step720is complete, method700proceeds to step730.

At step730, configuration instructions are generated based on the analyzing of the power information. In an embodiment, VMPM190generates configuration instructions based on the analysis of the power information received from switch160. Once step730is complete, method700proceeds to step740.

At step740, the power information is sent to the virtual machine manager. In an embodiment, VMPM190sends the configuration instructions to VMM110. Once step740is complete, method700ends at step750.

Conclusion

While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example and not limitation. It will be apparent to one skilled in the pertinent art that various changes in form and detail can be made therein without departing from the spirit and scope of the invention. Therefore, the present invention should only be defined in accordance with the following claims and their equivalents.