Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
ENERGY EFFICIENCY WITH RATE ADAPTATION
Document Type and Number:
WIPO Patent Application WO/2011/075292
Kind Code:
A1
Abstract:
A system and method of rate adaptation is disclosed for energy efficiency. The system and method of rate adaptation for energy efficiency provides for parsing a heterogeneous network into rate-adaptation domains that are fully isolated with respect to the control of their operating states. The system and method is particularly useful for creating the conditions for the incremental introduction of rate-adaptive devices in existing networks; combining the best properties of sleep-state exploitation and rate scaling techniques by defining a class of state-setting policies for rate adaptation schemes that enforce tight deterministic bounds on the extra delay that the schemes may cause to network traffic at every node where they are deployed.

Inventors:
FRANCINI ANDREA (US)
STILIADIS DIMITRIOS (US)
Application Number:
PCT/US2010/057711
Publication Date:
June 23, 2011
Filing Date:
November 23, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ALCATEL LUCENT USA INC (US)
FRANCINI ANDREA (US)
STILIADIS DIMITRIOS (US)
International Classes:
H04L12/12; H04L12/56; H04L47/56
Other References:
ANDREA FRANCINI ET AL: "Performance bounds of rate-adaptation schemes for energy-efficient routers", HIGH PERFORMANCE SWITCHING AND ROUTING (HPSR), 2010 INTERNATIONAL CONFERENCE ON, 13 June 2010 (2010-06-13), IEEE, PISCATAWAY, NJ, USA, pages 175 - 182, XP031759356, ISBN: 978-1-4244-6969-7
FRANCINI AND D STILIADIS A: "Rate adaptation for energy efficiency in packet networks", BELLS LABS TECHNICAL JOURNAL, vol. 15, 2, 23 August 2010 (2010-08-23), Wiley Online Library, pages 131 - 146, XP002620289, Retrieved from the Internet [retrieved on 20110207]
ZAFER M A ET AL: "A Calculus Approach to Energy-Efficient Data Transmission With Quality-of-Service Constraints", IEEE / ACM TRANSACTIONS ON NETWORKING, vol. 17, no. 3, 1 June 2009 (2009-06-01), IEEE / ACM, NEW YORK, NY, US, pages 898 - 911, XP011257304, ISSN: 1063-6692
NEDEVSCHI S ET AL: "Reducing network energy consumption via sleeping and rate-adaptation", PROCEEDING NSDI'08 PROCEEDINGS OF THE 5TH USENIX SYMPOSIUM ON NETWORKED SYSTEMS DESIGN AND IMPLEMENTATION, 2008, USENIX Association Berkeley, CA, USA, pages 323 - 336, XP002620434, Retrieved from the Internet [retrieved on 20110207]
Attorney, Agent or Firm:
MURGIA, Gregory, J. (Attention: Docket Administrator - Room 3D-201600-700 Mountain Avenu, Murray Hill NJ, US)
Download PDF:
Claims:
WHAT IS CLAIMED IS:

1 . A method of establishing a rate-adaptation domain in a packet network having a plurality of domains, said method comprising:

receiving packets at an input interface from a domain immediately upstream to said rate-adaptation domain;

establishing Quality-of-Service requirements associated with said received packets;

processing said received packets in a processing unit;

dispatching packets at an output interface to a domain immediately downstream from said rate-adaptation domain;

establishing a set of state variables;

controlling the operating state of said processing unit with said state variables so as to control the rate at which packets are dispatched over said output interface;

selecting such state variables so as to satisfy a feasible departure curve; and

further selecting such state variables so as to reduce energy consumption in said rate-adaptation domain.

2. The method of claim 1 , wherein said Quality-of-Service requirements comprise a maximum added delay.

3. The method of claim 1 , wherein said further selecting step selects state variables so as to place said processing unit in a sleep state.

4. The method of claim 1 , wherein said further selecting step selects state variables so as to adjust the clock rate of said processing unit.

5. The method of claim 1 , wherein said selecting step uses a state setting policy to select said state variables, said state setting policy is based upon system parameters of said rate-adaptation domain, and said system parameters of said rate-adaptation domain comprise at least one of the group of a power-rate function, a state transition time, and a minimum state hold time.

6. The method of claim 1 , wherein said packet processing step comprises at least one of the group of parsing, modifying, and storing in a buffer queue, and said state variables include at least one of the group of a queue length in said buffer queue and a traffic arrival measure.

7. The method of claim 1 , wherein said feasible departure curve comprises an optimal departure curve.

8. A method of operating a packet handling device having a dynamic voltage and frequency scaling mode of operation, and a sleep exploitation mode of operation, said method comprising:

establishing a first power rate curve for said packet handling device due to sleep state exploitation mode of operation;

establishing a second power rate curve for said packet handling device due to dynamic voltage and frequency scaling mode of operation;

operating said packet handling device by selecting one of the modes of sleep state exploitation or dynamic voltage and frequency scaling so as to minimize energy consumption for a specific rate of packet processing.

9. The method of claim 8, further comprising

establishing an intersection point of said first and second power rate curves; and

at rates below said intersection point, selecting the mode of operation which minimizes energy consumption; and

at rates above said intersection point, selecting the alternate mode of operation.

10. The method of claim 8, further comprising establishing an intersection point of said first and second power rate curves; and

at rates below said intersection point, selecting the sleep state exploitation mode of operation; and

at rates above said intersection point, selecting the dynamic voltage and frequency scaling mode of operation.

Description:
ENERGY EFFICIENCY WITH RATE ADAPTATION Field of the invention

[001] The invention relates to energy efficiency with rate adaptation and is particularly concerned with rate-adaptation schemes that combine the best properties of sleep-state exploitation and rate-scaling techniques.

Background of the Invention

[002] Data networking services and applications enable substantial energy savings in broad sectors of economic activity, for example by replacing the transportation of people and goods with the electronic transfer of data packets. In order to maximize the energy-saving yields of the replacement function offered by network services and applications, packet network themselves must target energy efficiency comprehensively, in every component and in every function. Energy efficiency thus becomes an attribute of foremost importance in the design and qualification of network equipment.

[003] Network nodes forward data packets from one network interface to another, often modifying part of their contents. To minimize energy consumption, energy use in network equipment should be proportional to traffic handling activity. More specifically, energy use in a system should scale with the network traffic load and should become negligible when the system does not process packets.

[004] Rate scaling and sleep-state exploitation are popular methods for reducing energy consumption in network nodes when traffic load is well below link capacity. (For reference, in this disclosure the terms rate scaling and sleep-state exploitation are referred to as examples of rate adaptation.)

[005] With rate scaling, the clock frequency of the data-path device changes over time to track the traffic load, using the generally linear relationship that exists between frequency and power to decrease power consumption levels under low traffic loads. However, since the traffic processing rate also scales with the operating frequency, delay accumulation may be caused by frequency reductions. To control delay accumulation, the operation of rate-scaling systems is typically constrained by bounds on the additional delay that lower processing rates can impose on traffic. Steeper reductions of power consumption levels can be obtained by integration of dynamic voltage and frequency scaling (DVFS) technologies in the rate- scaling system. In a DVFS device, the voltage level of the power supply can decrease as the clock frequency scales down, at least down to the minimum voltage level needed to maintain the electronic circuitry of the device in predictable operation.

[006] With sleep-state exploitation, the network device alternates between a full-capacity state where it operates at maximum clock frequency as long as traffic is available for processing and a sleep state where power consumption is much lower.

[007] While a significant body of work can be found in the literature that defines and studies rate-scaling and sleep-state exploitation schemes and architectures, several issues remain unresolved.

[008] First, a clear framework for the coordination of contiguous rate- adaptation devices is not yet available. For sleep-state exploitation techniques with the architectures that have been proposed so far, the lack of coordination may lead to substantial drops in energy-saving performance, while the introduction of coordination requires the broad consensus of a standard body (see for example the ongoing work within the IEEE 802.3az Energy Efficient Ethernet Task Force) or the full cooperation of large portions of the entire network. Even within a single circuit pack, new components, and therefore new sources of energy consumption, must be added to coordinate the clock frequency of multiple rate-scaling devices.

[009] Second, while the energy-saving performance results presented for rate-adaptation techniques are generally encouraging, they heavily depend on the specific set of operating states that are available in a given device and on the resulting power-rate (PR) function. When different schemes are compared, the final choice for the best solution can only be determined after entering the actual parameters of a practical device. General guidelines for straightforward design practices remain unavailable.

[010] Therefore, it would be desirable to have a scheme for rate adaptation that combine the best properties of sleep-state exploitation and rate scaling while overcoming the limitations of the rate-adaptation techniques that are available in the prior art.

Summary of the Invention

[011] An object of the present invention is to provide an improved system and method for achieving energy efficiencies in network devices via rate adaptation.

[012] According to an aspect of the invention there is provided a method of establishing a rate-adaptation domain in a packet network having a plurality of domains, the method having the steps of receiving packets at an input interface from a domain immediately upstream to the rate-adaptation domain; establishing Quality-of-Service requirements associated with the received packets; processing the received packets in a processing unit; dispatching packets at an output interface to a domain immediately downstream from the rate-adaptation domain; establishing a set of state variables; controlling the operating state of the processing unit with the state variables so as to control the rate at which packets are dispatched over the output interface; selecting such state variables so as to satisfy a feasible departure curve; and further selecting such state variables so as to reduce energy consumption in the rate- adaptation domain.

[013] In some embodiments of the invention the Quality-of-Service requirements comprise a maximum added delay.

[014] In other embodiments of the invention the further selecting step selects state variables so as to place the processing unit in a sleep state, or selects state variables so as to adjust the clock rate of the processing unit.

[015] Advantageously, in certain embodiments the selecting step uses a state setting policy to select the state variables. As well, in certain embodiments the state setting policy is based upon system parameters of the rate-adaptation domain. The system parameters of the rate-adaptation domain may include at least one of a power-rate function, a state transition time, or a minimum state hold time.

[016] In some embodiments of the invention the packet processing step includes at least one of the group of parsing, modifying, and storing in a buffer queue. Also, in certain embodiments the state variables include at least one of the group of a queue length in the buffer queue and a traffic arrival measure.

[017] Advantageously, in certain embodiments the feasible departure curve comprises an optimal departure curve.

[018] According to another aspect of the invention, there is provided a method of operating a packet handling device having a dynamic voltage and frequency scaling mode of operation, and a sleep exploitation mode of operation, the method having the steps of establishing a first power rate curve for the packet handling device due to sleep state exploitation mode of operation; establishing a second power rate curve for the packet handling device due to dynamic voltage and frequency scaling mode of operation; and operating the packet handling device by selecting one of the modes of sleep state exploitation or dynamic voltage and frequency scaling so as to minimize energy consumption for a specific rate of packet processing.

[019] In some embodiments of the invention there is the additional step of establishing an intersection point of the first and second power rate curves; and at rates below the intersection point, selecting the mode of operation which minimizes energy consumption; and at rates above the intersection point, selecting the alternate mode of operation.

[020] In other embodiments of the invention there is the additional step of establishing an intersection point of the first and second power rate curves; and at rates below the intersection point, selecting the sleep state exploitation mode of operation; and at rates above the intersection point, selecting the dynamic voltage and frequency scaling mode of operation.

[021] According to another aspect of the invention, there is provided a rate- adaptation subdomain in a packet network, the packet network having a plurality of subdomains of connected network nodes, the rate-adaptation subdomain having an input interface for receiving packets from a domain immediately upstream to the rate-adaptation subdomain; a set of Quality-of- Service requirements associated with the received packets; a processing unit for processing the received packets; an output interface for dispatching packets to a domain immediately downstream from the rate-adaptation subdomain; a set of state variables for controlling the operating state of the processing unit wherein the state variables control the rate at which packets are dispatched over the output interface; an initial subset of such state variables selected so as to satisfy a feasible departure curve; and a further subset of the subset of state variables selected so as to reduce energy consumption in the rate-adaptation domain.

[022] In some embodiments of the invention the set of Quality-of-Service requirements comprise a maximum added delay.

[023] In some embodiments of the invention the further subset of state variables places the processing unit in a sleep state, while in other embodiments the further subset of state variables adjusts the clock rate of the processing unit.

[024] Advantageously, some embodiments of the invention have a state setting policy used to select the initial subset of state variables. In some of these embodiments the state setting policy is based upon system parameters of the rate-adaptation domain. The system parameters of the rate-adaptation domain may include at least one of the group of a power-rate function, a state transition time, and a minimum state hold time.

[025] In some embodiments of the invention, there is also a buffer queue wherein the processing unit may store packets which have been parsed or modified by the processing unit.

[026] In some embodiments of the invention, the state variables include at least one of a queue length in the buffer queue or a traffic arrival measure.

[027] Advantageously, in certain embodiments the feasible departure curve is an optimal departure curve.

[028] Note: in the following the description and drawings merely illustrate the principles of the invention. It will thus be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the principles of the invention and are included within its spirit and scope. Furthermore, all examples recited herein are principally intended expressly to be only for pedagogical purposes to aid the reader in understanding the principles of the invention and the concepts contributed by the inventor(s) to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the invention, as well as specific examples thereof, are intended to encompass equivalents thereof.

Brief Description of the drawings

[029] The present invention will be further understood from the following detailed description of embodiments of the invention, with reference to the drawings in which:

[030] Fig. 1 illustrates an example of network nodes connected by a datapath in accordance with the known art;

[031] Fig. 2a illustrates a set of network nodes connected by bidirectional links in accordance with the known art;

[032] Fig. 2b illustrates an alternative version of Fig. 2a in which the bidirectional links are split into their unidirectional components;

[033] Fig. 2c illustrates a directed graph version of Fig. 2b in which vertices represent rate-adaptation domains and edges represent interfaces between the domains;

[034] Figs. 3a and 3b illustrate a set of arrival and departure curves;

[035] Figs. 4a and 4b illustrate a set of optimal service curves for the arrival curves of Figs. 3a and 3b respectively;

[036] Fig. 5 is a plot illustrating a sequence of operating intervals for a rate- adaptation domain according to an embodiment of the invention;

[037] Fig. 6 is a plot illustrating different operating regions for a rate scaling device;

[038] Fig. 7 is a plot illustrating power consumption for a sleep-state exploitation device;

[039] Fig. 8 is a plot illustrating power consumption for a hybrid combination of a rate-scaling and sleep-state exploitation device;

[040] Fig. 9 is a plot illustrating the optimal power function transition point from sleep-state exploitation to rate-scaling according to an embodiment of the invention; [041] Fig. 10 is a comparison plot for the energy gains of several backlog clearing policies according to embodiments of the invention;

[042] Fig. 11 is a further comparison plot for the extra delays of two specific strong backlog clearing policies according to embodiments of the invention;

[043] Fig. 12 is a performance plot showing the effects of a rate-adaptation scheme that combines rate-scaling with sleep-state exploitation according to an embodiment of the invention; and

[044] Fig. 13 is a comparison plot contrasting the delay performance of a rate-adaptation scheme to its underlying rate-scaling scheme according to an embodiment of the invention.

Detailed Description

[045] Following are definitions of terms and concepts that are used throughout the description. Also described is the reference model that is used for evaluating the energy-saving performance of rate adaptation schemes.

[046] A rate-adaptive networking device is a device that receives and forwards data packets over one or more interfaces and is capable of adjusting its operating state to the traffic load it is offered. The rate-adaptive device is arranged with a finite set S = {s k , k = ...K} of operating states, where each state is identified by fixed values of clock frequency {f k ) and power-supply voltage {V k ) \ s k ≡{f k ,V k ) . Since a unique traffic processing capacity r can be associated with every frequency value f , we can represent the operating states also by reference to the respective processing capacities: s k ≡{r k ,V k ) .

For each state s k , an active substate s k , an idle substate s k , and a transition substate s^ are further defined, depending on whether the device is processing traffic ( s k ), not processing traffic ( s k ), or transitioning to state s k from a different state s - ( s ). In a first-order approximation of the energy model for rate-adaptive devices, fixed levels of power consumption (P k ,P k ,P k ) are associated with each substate. The three power consumption levels are referred to as the active power, the idle power, and the transition power, respectively.

[047] For a given device, it is assumed that the transition time δ , which is the time needed to complete a state transition, is fixed and independent of the two states involved in the transition: S{s j ,s k ) = d V (y ' , / ) . As a conservative assumption, it is assumed that no traffic processing can take place during a state transition.

[048] Eq. (1 ) expresses the energy consumed over a time interval of duration T based on the time spent in each substate: [049] Ε(Τ) =∑(ΡΪ-Τ; + Ρΐ-Τί+Ρί-Τί) (1)

[050] The idle power can comfortably be assumed to be always lower than the active power: P = β -P k a , 0 < β < 1. Considering that the device remains idle during a state transition, it is reasonable to argue that the transition power Pi should be defined as the average of the idle power for the states before and after the state transition, and therefore as a function of both states: P = {p j i +Pl)l2 = Pl(j,k). Observing that, under fluctuating load levels, for every transition into a state there is always a transition out of the same state, the inbound and outbound idle power contributions for state s k can be aggregated into a fixed transition power P k { = P k for the inbound state transition, and accordingly remove the idle-power contribution P k ' 12 from the transition power for the outbound transition. Eq. (1) may now be rewritten as follows:

[051] £(Τ) =∑[ρ ·τ + β:·(τ +τ )] (2)

[052] Eq. (2) is the metric of reference for comparing the energy-saving performance of different rate-adaptation schemes.

[053] In a sleep-state exploitation device only two operating states are available: the full-capacity state s c ≡(C,V C ) and the sleep state s s ≡(0,V S ). The energy equation becomes as follows:

[054] E(T) = Ρ »■ T » + P > ■ {T > + T< ) + ¾ . (r + T s f ) (3)

[055] To take advantage of the reduced power consumption in sleep state, the device must transition out of the full-capacity state every time there is no packet to be processed, so that = 0 :

[056] E(T) = P c a■ T* +p i .T<+P > . (r + T< ) (4)

[057] Sleep-state exploitation matches the average offered traffic load λ by limiting the time spent in the full-capacity state: [058] = C^r (5)

[059] In a rate-scaling device, eq. (2) remains the energy equation of reference, only with the restriction that no sleep state is included in the set of operating states available. The device matches the offered load by proper distribution of the time spent in each operating state:

k T k '

[060] l = ^ — (6)

[061] The type of concavity of the power-rate function of a device should drive the selection of the rate-adaptation scheme: if the function is concave over the full set of available processing capacities, i.e., ((P(r 1 ) + P(r 2 )) / 2≤ P((r 1 + r 2 ) / 2) V ^ < r 2 , the adoption of sleep-state exploitation is the obvious choice, if effective at all in reducing energy consumption. If instead the curve is convex, i.e., (P(r 1 ) + P(r 2 )) / 2 > P((r + r 2 ) / 2) V r, < r 2 , a properly designed rate-scaling scheme can yield higher energy savings.

[062] RATE-ADAPTATION REPRESENTATION OF PACKET NETWORKS

[063] It has been historically argued that tight coordination between adjacent network nodes is necessary for certain rate-adaptation techniques to yield any energy-saving gains. The need for coordination hinders the deployment of those techniques because no new technology can be reasonably expected to be exhaustively deployed overnight in any multi- player environment. The following development shows via a simple data path abstraction that the need for coordination can be entirely removed and that rate-adaptive devices can be deployed incrementally, both within individual network nodes and in the network at large. [064] Referring to Fig. 1 , there may be seen an example of the simplest data-path configuration 100, wherein a rate-adaptive device 102 forwards packets to a rate-adaptive device 104 over an interface 106.

[065] Devices A and B are arranged with respective sets of rate-adaptation operating states, possibly identical. The nature of interface C determines whether the states of devices A and B must be controlled jointly or can be controlled separately:

[066] · If interface C requires both devices to be in consistent rate- adaptation states in order for the integrity of any data transferred over C to be preserved, the states of devices A and B must be controlled jointly. This would be an example of a case wherein devices A and B belong to the same rate-adaptation domain. As an example of equipment, the transmitter and receiver at the two ends of an optical fiber can be seen as parts of the same rate-adaptation domain.

[067] · If the integrity of data transfers over interface C is preserved independently of the operating states of devices A and B, there is no need for coordination between the two devices, which thus belong to distinct rate- adaptation domains. As an example, two devices that are separated by a buffer memory in the packet processing pipeline of a router's line card belong to distinct rate-adaptation domains and their operating states do not strictly require coordination as long as the buffer memory can be accessed at different speeds for write and read operations.

[068] As a more formal definition, a rate-adaptation domain may consist of one input interface where packets are received from the domain immediately upstream, a processing unit where packets may be parsed, modified, or assigned to buffer queues, and one output interface through which packets are dispatched to the domain immediately downstream. The rate-adaptation domain maintains state variables that drive the operating state of the processing unit and therefore the rate at which packets are forwarded over the output interface. For stability purposes, it is assumed that the maximum transmission capacity of the output interface and the maximum processing capacity of the processing unit are identical and never lower than the maximum capacity of the input interface.

[069] Referring to Fig. 2a there may be seen three network nodes ni 201 , n 2 202, and n 3 203 connected by bidirectional links L1 206 and L2 208. Node n 2 202 may for example be a router with output-queued 2x2 switch fabric. Referring to Fig. 2b, it may be seen that each bidirectional link is split into its two unidirectional components (L1 206 splits into , 2 212 and l 2, i 221 , L2 208 splits into l 2 , 3 223 and l 3 , 2 232. This representation may be further elaborated as shown in the directed graph of Fig. 2c, wherein the vertices vi 271 through v 6 276 represent rate-adaptation domains and the edges ei 261 through e 5 265 represent the interfaces between them.

[070] More specifically:

[071] · vertex vi 271 includes the ni 201 transmitter and the n 2 202 receiver at the two ends of link 2 212;

[072] · edge ei 261 is the portion of packet memory in n 2 202 that is dedicated to packets arriving from link ,2 212;

[073] · vertex v 2 272 includes the n 3 203 transmitter and the n 2 202 receiver at the two ends of link l 3 2 232;

[074] · edge e 2 262 is the portion of packet memory in n 2 202 that is dedicated to packets arriving from link l 3 2 232;

[075] · vertex v 3 273 is the interface aggregation module in n 2 202 that multiplexes packet streams from links ,2 212 and l 3 2 232;

[076] · edge e 3 263 is the buffer where packets from different input links are lined up into a single queue;

[077] · vertex v 4 is the header parsing module in n 2 202, which assigns packets to their respective egress queues and prepares them for modification prior to transmission;

[078] · edge e 4 264 is the buffer where packets waiting for transmission to node ni 201 are queued; [079] · edge es 265 is the buffer where packets waiting for transmission to node n 3 203 are queued;

[080] · vertex v 5 includes the n 2 202 transmitter and the ni 201 receiver at the two ends of link l 2 ,i 221 ; and

[081] · vertex v 6 includes the n 2 202 transmitter and the n 3 203 receiver at the two ends of link l 2 3 223.

[082] In the design of a network system with rate adaptation capabilities, the directed -graph representation of the system helps identify opportunities for the insertion of rate-adaptive devices. As well, the directed -graph representation allows a recognition of trade-offs between the benefits of designs with a small number of rate adaptation domains (lower delay penalties) and designs with a higher number of domains (lower complexity). The directed-graph representation indeed makes it evident that tight coordination between network nodes is not a necessary condition for the introduction of rate-adaptation capabilities in a packet network. Rate-adaptive devices that single-handedly form a rate adaptation domain can be added to the network incrementally, without requiring coordinated efforts from equipment vendors and service providers. It becomes apparent, for example, that a system designer can include a rate-adaptive network processor in a line card that has no rate-adaptive transceivers.

[083] The following disclosure focuses on methods for controlling the operating state of a rate-adaptation domain that fully avoid any coordination between domains.

[084] IMPLEMENTATION GUIDELINES FOR RATE-ADAPTATION SCHEMES

[085] The following discussion identifies general guidelines for the effective implementation of rate-adaptation schemes.

[086] Consider a rate-adaptation domain in isolation. Through its state- setting policy, a rate-adaptation scheme sets the sequence of operating states in response to a sequence of packet arrivals with the objective of minimizing energy consumption in the domain while not violating the quality-of-service (QoS) requirements of the incoming traffic. Different types of traffic may present different types of QoS requirements, expressed through respective QoS constraints.

[087] Listed here are a number of useful definitions and implications:

[088] · An arrival curve A{t), t > 0 , is a right-continuous function that counts the number of bits that have arrived to the rate-adaptation domain in time interval [0,f] . In a practical non-fluid domain, where bits are grouped in packets and all bits of a packet are considered available for processing only after the last bit has arrived, A{t) is a staircase function.

[089] · A departure curve D(t), t > 0 , is a right-continuous function that counts the number of bits that have departed from the rate-adaptation domain in time interval [0,t]■

[090] · For a given arrival curve A{t) , a minimum departure curve D min (f ) is a departure function such that D mm (t)≤A(t), t > 0 and is defined as the minimum number of bits that must depart by time t to satisfy the QoS requirements of the rate-adaptation domain.

[091] To meet the QoS requirements of the incoming traffic, the sequence of operating states set by the rate adaptation scheme must produce a departure curve that always lies between the minimum departure curve (QoS constraint) and the arrival curve (causality constraint):

[092] A(t)≥D(t)≥D m t), t > 0 .

[093] Such a departure curve is called feasible. Referring to Fig. 3a, there may be seen a minimum departure curve D min (f ) and a feasible departure curve D{t) for a given arrival curve A{t) under two types of delay-based QoS constraint.

[094] In the example of Fig. 3a, the QoS constraint requires that all packets that arrive between time 0 and time T be delivered by time T . The feasible departure curve shown in the diagram derives from a sequence of three operating states s v s 2 , and s 3 that have increasing processing capacity. In the case of Fig. 3b, a maximum delay d is accepted for the transmission of every packet. The feasible departure curve shown is obtained from the sequence of two operating states s 1 and s 2 where the first state has null processing capacity.

[095] It is known that for systems with convex power-rate function the departure curve that minimizes energy consumption, called the optimal departure curve D opt (t) , is the shortest feasible curve between the points

(0, 4(0)) and (T,D min (f)) . For quick visualization of the result, the following has been suggested:

[096] "Consider a string that is restricted to lie between A(t) and D min (t) . Tie its one end at the origin and pass the other end through D min (f ) . Now if the string is made taut, its trajectory is the same as the optimal curve."

[097] Figs. 4a and 4b show the optimal service curves for the two examples of Figs. 3a and 3b respectively (it should be noted that instantaneous state transitions are assumed for the depiction of the curves of Fig 3 and Fig. 4).

[098] The "shortest-string result" for convex power-rate functions indicates that energy minimization is achieved when the processing capacity of the rate-adaptation domain is set equal to the average rate needed to meet the QoS constraint exactly by the time available to complete the task.

[099] The following differences can be appreciated between a practical rate-adaptation domain and the more abstract reference system for the results shown in Fig. 4:

[0100] 1 . In the abstract reference system, the operating state can be chosen out of an infinite set, with a continuous range of processing capacities available; in the practical rate-adaptation domain the set of operating states is finite, with discrete values of processing capacity available. As a consequence, the optimal departure curve for the practical domain typically yields lower energy savings than the optimal curve for the ideal system.

[0101] 2. In the abstract system all state transitions are instantaneous; in the practical domain, state transitions complete within a fixed amount of time, during which no traffic processing can take place.

[0102] 3. In the abstract system, which processes a continuous stream of bits, state transitions can occur at any time. In the practical domain, which processes bits in atomic packets, state transitions can only occur at packet processing boundaries.

[0103] 4. In the abstract system the arrival curve A{t) is known, so that the minimum departure curve D min (f) can be tailored around it before the traffic starts arriving; in the practical domain the arrival curve is unknown.

[0104] It is desired to implement a practical rate-adaptation scheme that never violates a given delay constraint d for all packets that traverse a single rate-adaptation domain. In approaching the implementation, the discussion is developed along the following three dimensions:

[0105] 1 . subdivision of the time axis into operating intervals;

[0106] 2. optimization of the reference power-rate function; and

[0107] 3. specification of the state-setting policy.

[0108] OPERATING INTERVALS

[0109] The extended duration of state transitions in the practical rate- adaptation domain motivates the subdivision of the time axis into intervals of variable duration but never shorter than a fixed amount h , called the minimum hold time. In fact, the time cost δ of a state transition implies that frequent state transitions must be deterred to prevent them from occupying most of the operating time of the rate-adaptation domain. If the domain is allowed to spend substantial portions of its operating time switching states, then it must execute all traffic processing work within shorter time intervals, at higher power levels. Even without counting the energy consumed during workless transitions, with a convex power-rate function the simple deviation of the operating state from the optimal average-rate point causes significant energy losses. Forcing the operating state of the domain to remain unchanged for a minimum hold time h » δ keeps the total transition time below an acceptable fraction of the total operating time.

[0110] Our target rate-adaptation scheme divides the operation of the rate- adaptation domain into a sequence of operating intervals (f n ,f n+1 ] of variable duration h n , h n > h . The operating state (and processing capacity) in any operating interval is always different than the state (and capacity) in the interval that immediately follows. These relations may be seen by reference to Fig. 5.

[0111] With reference to a generic operating interval (f n , f n+1 ] , the rate- adaptation scheme decides to set a different operating state at time t n . At time t n + δ the state transition is complete and the rate-adaptation domain can start processing traffic again. Starting at time t n + h , the rate-adaptation domain checks at every packet processing completion if the state-setting policy requires the operating state to be changed. The end of the operating interval is reached at time f n+1 = t n + h n ≥t n + h , when the rate-adaptation domain completes the processing of a packet and the state-setting policy indicates the necessity of a state change.

[0112] OPTIMIZATION OF THE POWER-RATE FUNCTION

[0113] The power-rate function of a rate-adaptation domain defines the relationship between processing capacity and power consumption in the active substate. In a practical device the power-rate function is typically defined over a finite set of discrete capacity values. However, for convenience of presentation and after considering that the composition of the set of discrete capacity values of the practical domain constitutes itself a design choice, this section refers to power-rate functions that are defined over continuous ranges of capacity values. [0114] The current lack of commercial rate-adaptive network devices that can quickly adjust their operating state to traffic load conditions makes for a lack of real-life numbers for key parameters such as the state transition time and the power-rate function. However, sleep-state exploitation devices and rate-scaling devices that incorporate DVFS capabilities to offer an extended set of operating states, only controlled over a larger timescale, do exist (especially general-purpose processors [INTEL PXA , I NTEL PE NTIUM]) and can be used to obtain a reasonable indication of what future devices can accomplish.

[0115] Focusing now on DVFS-capable rate-scaling devices, a commonly accepted conclusion about their power-rate function is its partition into two different operating regions. These two different operating regions may be seen in Fig. 6, where a finite set of operating states is explicitly marked. In the upper portion of the capacity range the function is evidently convex, which motivates the deployment of rate-scaling capabilities. However, the benefits of rate scaling become less evident in the lower portion of the capacity range, especially for very low operating frequencies. While the capacity threshold that marks the behavioral discontinuity obviously changes across devices, in all cases the loss of energy-saving benefits is such that it makes no sense to set the operating state of the device in the low-capacity region. As a consequence, the energy efficiency of the rate-scaling device is excellent when heavier traffic loads keep it in operation in the high-gain region, but becomes poor under lighter traffic loads.

[0116] It is relevant now to consider the equivalent power-rate function of a sleep-state exploitation device whose operation alternates between the full- capacity state s c ≡(C,P C ) and the sleep state s s ≡(0,P S ) . In the ideal case of a device with instantaneous state transitions {δ = 0) the equivalent power- rate function is a continuous function where the operating state of the device over an interval of duration T is derived from the time T c spent in the full- capacity state as follows: . P eq (J) = [P c T c + P s (T - T c ) / T . Refer to Fig. 7. [[00111177]] IIff aa rraattee--ssccaalliinngg ddeevviiccee aanndd aa sslleeeepp--ssttaattee eexxppllooiittaattiioonn ddeevviiccee wwiitthh iiddeennttiiccaall ffuullll--ccaappaacciittyy ssttaattee ss cc ≡≡((CC,,PP CC )) aarree ccoommppaarreedd,, aanndd tthhee ccoonnddiittiioonn hhoollddss tthhaatt tthhaatt tthhee mmiinniimmuumm--ccaappaacciittyy ppoowweerr PP 00 iinn tthhee ffoorrmmeerr iiss hhiigghheerr tthhaann tthhee sslleeeepp--ssttaattee ppoowweerr PP ss iinn tthhee llaatttteerr,, rreeffeerrrriinngg ttoo FFiigg.. 88 iitt ccaann eeaassiillyy bbee oobbsseerrvveedd tthhaatt tthhee sslleeeepp--ssttaattee eexxppllooiittaattiioonn ddeevviiccee yyiieellddss bbeetttteerr eenneerrggyy ssaavviinnggss iinn tthhee lloowweerr ppoorrttiioonn ooff tthhee ccaappaacciittyy rraannggee (( rr << rr TT wwhheerree rr TT iiss tthhee vvaalluuee ooff ccaappaacciittyy wwhheerree tthhee ttwwoo ccuurrvveess iinntteerrsseecctt)),, wwhhiillee tthhee rraattee--ssccaalliinngg ddeevviiccee pprreevvaaiillss iinn tthhee uuppppeerr ppoorrttiioonn (( rr >> rr TT ))..

[[00111188]] FFiigg.. 88 ssuuggggeessttss tthhaatt aann ooppttiimmaall ppoowweerr--rraattee ffuunnccttiioonn ccaann bbee ffoouunndd iinn aa pprraaccttiiccaall rraattee--aaddaappttaattiioonn ddeevviiccee tthhaatt rreessoorrttss ttoo sslleeeepp--ssttaattee eexxppllooiittaattiioonn uunnddeerr lliigghhtt llooaaddss ((ii..ee..,, ffoorr ttrraaffffiicc aarrrriivvaall rraattee bbeellooww rr TT )) aanndd ttoo rraattee ssccaalliinngg uunnddeerr hheeaavviieerr llooaaddss ((ii..ee..,, ffoorr ttrraaffffiicc aarrrriivvaall rraattee aabboovvee rr TT )).. WWhhiillee iitt iiss ttrruuee tthhaatt aa ddeevviiccee wwiitthh ssuucchh aa hhyybbrriidd ppoowweerr--rraattee ffuunnccttiioonn wwoouulldd iimmpprroovvee oovveerr tthhee uunnddeerrllyyiinngg rraattee--ssccaalliinngg aanndd sslleeeepp--ssttaattee eexxppllooiittaattiioonn ddeevviicceess,, aann eevveenn bbeetttteerr hhyybbrriidd ppoowweerr--rraattee ffuunnccttiioonn ccaann bbee ddeeffiinneedd bbaasseedd oonn tthhee oobbsseerrvvaattiioonn tthhaatt tthhee ooppttiimmaall ppoowweerr--rraattee ffuunnccttiioonn iiss oonnee tthhaatt ssttaarrttiinngg ffrroomm tthhee ppoowweerr--rraattee ffuunnccttiioonn ooff tthhee aavvaaiillaabbllee rraattee--ssccaalliinngg tteecchhnnoollooggyy mmiinniimmiizzeess tthhee aarreeaa uunnddeerr iittss ggrraapphh.. IInn ffaacctt,, tthhee mmiinniimmuumm--aarreeaa ccoonnddiittiioonn ddeeffiinneess tthhee ffuunnccttiioonn tthhaatt aassssoocciiaatteess tthhee mmiinniimmuumm ppoowweerr lleevveell ppoossssiibbllee wwiitthh eeaacchh ooppeerraattiinngg ssttaattee aavvaaiillaabbllee.. TThhee ccuurrvvee ffoorr ssuucchh ffuunnccttiioonn iiss oobbttaaiinneedd bbyy jjooiinniinngg tthhee ttwwoo ccoommppoonneennttss aatt tthhee ssiinnggllee ppooiinntt {{ RR TT ooppff pp TT oopptt )) wwhheerree tthhee ttaannggeenntt ttoo tthhee rraattee--ssccaalliinngg ccuurrvvee iinntteerrsseeccttss tthhee PP aaxxiiss iinn ((00,,PP SS )) .. IInn ffaacctt,, bbyy ddeeffiinniittiioonn ooff ccoonnvveexx ccuurrvvee tthhee ttaannggeenntt ttoo tthhee ccuurrvvee tthhaatt iinncclluuddeess aa ffiixxeedd ppooiinntt ((00,,PP SS )) bbeellooww tthhee ccuurrvvee iiss aallssoo tthhee ssttrraaiigghhtt lliinnee wwiitthh mmiinniimmuumm ssllooppee oouutt ooff aallll ssttrraaiigghhtt lliinneess bbyy tthhee ssaammee ppooiinntt tthhaatt eevveerr iinntteerrsseecctt tthhee ccoonnvveexx ccuurrvvee..

[[00111199]] FFiigg.. 99 iilllluussttrraatteess ggrraapphhiiccaallllyy wwhhyy ssuucchh aa ddeeffiinniittiioonn ooff [[rr TT oopptt ,, PP TT oopptt )) iiss tthhee oonnee tthhaatt mmiinniimmiizzeess eenneerrggyy ccoonnssuummppttiioonn:: wwhheetthheerr tthheerree iiss aa mmoovvee ooff tthhee pprroocceessssiinngg ccaappaacciittyy ooff tthhee jjooiinniinngg ppooiinntt lloowweerr * oorr hhiigghheerr h > f T,0 pt ) ' tne result ends up with a larger area under the hybrid curve. In mathematical form, r T opt is defined as the value of processing capacity such that:

[0120] (7)

U 1 " r T,opt

[0121] where P rs {r) is the power-rate function of the original rate-scaling domain.

[0122] SPECIFICATION OF THE STATE-SETTING POLICY

[0123] The state-setting policy is the core of the rate-adaptation scheme. It sets the time and the destination of each state transition, based on system parameters (power-rate function, transition time δ , and minimum hold time h ), QoS constraints (maximum added delay d ), and state variables (queue length Q and traffic arrival measures).

[0124] First addressed is the determination of the time when a state transition should occur. In a previous section it was established that, in order to absorb the cost of a state transition, the domain should remain in the resulting state for at least a time h after starting that transition. During the operating interval, the processing capacity of the domain remains unchanged.

[0125] In setting the value of h , the tradeoff is between extending h to minimize the negative effect of state transitions (an increase of average processing rate by up to h / (h - S) is needed to compensate the loss of processing capacity caused by a transition time δ ), and contracting h to improve the accuracy of the departure curve D(t) in tracking the arrival curve A{t) (the larger h , the longer the time the two curves have to diverge). Since the delay constraint d expresses the maximum accepted distance between arrival and departure curve, it may be used to drive the specification of h .

[0126] The following definition is an important property that drives the classification of state-setting policies. [0127] Weak Backlog Clearing Property - At the beginning t 0 of the operating interval the state-setting policy chooses the processing capacity from the set of available capacities that are sufficient to clear the current queue backlog Q(f 0 )>0 by the closest possible end of the operating interval

(t =t 0 + h) r(t 0 )e{r k \ s k eS Ar k ≥Q(t 0 )l (h-δ)} . If no such capacity is available, the policy chooses the full capacity of the rate adaptation domain: r(f 0 ) = C.

[0128] A state-setting policy that holds the weak backlog clearing property is referred to as a weak backlog clearing policy. It should be noted that the weak backlog clearing property has no bearing over the case with null backlog (i.e., when Q(f 0 ) = 0).

[0129] The following theorem gives the relationship between d and h in a fluid rate-adaptation domain, where bits arrive in a continuous stream without packet boundaries.

[0130] Theorem 1 - In a fluid rate-adaptation domain with weak backlog clearing policy the delay constraint d is bounded as follows:

[0131] d<d m ^ =2h + 5 . (8)

[0132] Proof: Without loss of generality, let t 0 be the start time of an operating interval where the state-setting policy chooses a processing capacity r(t 0 ) such that r(t 0 )> Q(t 0 )/ (h -δ) . At time t =t 0 + h, when the rate-adaptation domain has the next chance to set the processing capacity, the queue backlog is Q(t ) = Q(t 0 ) + A(tM-r(t 0 )-(h-S)≤C-h, where A(t 0 ,t )≤C-h is the number of bits received between t 0 and ί . At time the domain sets a processing capacity /-( ,) such that either r(i 1 )>Q(i 1 )/ (h -δ) if Q(t,)<C-(h-S), or r(g = C if Q(t,)>C-(h-S).

[0133] The former case is trivial because it reproduces the conditions at time t 0 , only with a rate that is possibly different. [0134] In the latter case, the queue backlog at the next useful time (f 2 ) for setting the processing capacity is

Q(t 2 ) = Q(t ) + A(t„t 2 )-C-(h-S)≤2C-h-C-(h-S) = C-(h + S). At time t 2 , if Q(f 2 )≤ C · {h - δ) the domain returns to the condition of time t 0 . Otherwise the processing capacity remains C, so that no state transition is triggered.

[0135] At this point there is no way for the queue length to grow any further beyond Q max - C-(h + S). If Q(t 2 ) = C-h + ΔΒ,ΔΒ>0 and no more traffic arrives after t 2 , it takes up to two full operating intervals to clear the backlog

Q(f 2 ): the first operating interval takes the backlog down to Q{t 3 ) = AB and the second interval guarantees that the backlog is cleared by t 4 =t 3 +h . The earliest time the last bit cleared by t 4 may have arrived so that AB > 0 is t E = t 2 - δ + ε, ε→ 0 , so that d = t 4 - t E < 2h + δ .

[0136] The scenario at time t 2 in the proof of Theorem 1 leads to the following formulation of a backlog clearing property that provides a tighter delay bound for given values of h and δ :

[0137] Strong Backlog Clearing Property - The processing capacity set at the beginning t 0 of the operating interval is chosen from the set of available capacities that are sufficient to clear the current queue backlog Q(f 0 )>0 by the closest possible end of the operating interval (t =t 0 + h) and are higher than the current capacity r (^ 0 ) : r(f 0 ) e {r k : s k e S Λ r k > Q(t 0 ) / (h - δ) A r k > r(t ~ )} .

[0138] If no such capacity is available, the policy chooses the full capacity of the rate adaptation domain ( r(t 0 ) = C).

[0139] A state-setting policy that holds the strong backlog clearing property is referred to as a strong backlog clearing policy.

[0140] The following theorem defines the delay bound for a fluid rate- adaptation domain with strong backlog clearing policy. [0141] Theorem 2 - In a fluid rate-adaptation domain with strong backlog clearing policy the delay constraint d is bounded as follows:

[0142] d≤d max = h + S . (9)

[0143] Proof. Consider the same sequence of events as in the proof of Theorem 1 , up to time when a backlog Q(t 2 ) = C h + AB, AB > 0 has accumulated in the queue. As opposed to the case with weak backlog clearing policy, the processing capacity of the rate-adaptation domain cannot be reduced again until the queue backlog is completely cleared. As a consequence r(t 2 ) = C and no additional backlog is allowed to accumulate in the queue. The maximum queue backlog remains Q max = C - {h + S) and d max = h + S \s the maximum time it takes to forward the last bit in the queue after it arrives.

[0144] The following theorem defines the maximum queue length in a packetized rate-adaptation domain with strong backlog clearing policy.

[0145] Theorem 3 - In a packetized rate-adaptation domain with strong backlog clearing policy, the queue size Q(t) \s bounded as follows:

V min J

[0147] where L max is the maximum size of a packet in the rate adaptation domain and r min is the minimum non-null rate in the set of available rates

[0148] Proof: Without loss of generality, let t 0 be the start time of an operating interval where the state-setting policy chooses a processing capacity r(t 0 ) such that r(t 0 )≥Q(t 0 ) l (h - S) . At time when the packetized rate-adaptation domain has the next chance to set the processing capacity at the end of a packet transmission ( t 0 + h≤t^ < t 0 + h + L max / r(t 0 ) ), the queue backlog is Q(t,) = Q(t 0 ) + A(t 0 ,t,)-r(t 0 )-(t,-t 0 -S), with A(tM≤C-(t,-t 0 ). Therefore:

[0149] Q(t,)<(C-r(t 0 )).(t,-t 0 ) + Q(t 0 ) + r(t 0 ).(h-h + S)

[0150] .·. Q(t, )≤ (C - r(t 0 )).(h + L max / r(t 0 )) + r(f 0 ) ft [0151] .·. Q(g≤C-ft + L max .(C/r min -1)

[0152] Since Q(t^)>C-(h-S), at time ^ the state-setting policy chooses /-( ,) = C and during the subsequent state transition the rate-adaptation domain accumulates up to C-δ more bits. At time t^+S, when Q(t )≤ C-ft + L max -(C/r min -1), operation at the full capacity starts preventing the queue length from growing any further.

[0153] As shown in the proof of Theorem 2, in a rate-adaptation domain with strong backlog clearing policy the maximum delay is the time needed to clear the maximum backlog at full capacity. The following result immediately derives from Theorem 3.

[0154] Lemma 1. In a packetized rate-adaptation domain with strong backlog clearing policy the delay constraint d is bounded as follows:

' min

[0156] The identification of the selection criterion for the operating state of the rate-adaptation domain completes the specification of the state-setting policy. To retain the result of Lemma 1 on the relationship between the maximum added delay of^and the minimum hold time ft the selection criterion must satisfy the strong backlog clearing property.

[0157] The simplest strong backlog clearing policy that also minimizes energy consumption is one that chooses capacity r(t 0 ) = m\n{r k :r k ≥Q(t 0 )/(h- S)Ar k ≥r(t ~ )} when Q(£ 0 )>0 and capacity r(t e ) = max{r k : r k < r(t e )} at any time t e such that Q(t e ) = 0 (i.e., chooses the s k eS

processing capacity immediately lower than the current one as soon as the queue gets empty, whether or not the duration of the current operating interval has passed the h mark). It should be noted that in both state-setting events the policy may find no capacity that satisfies the corresponding condition. In that case the policy retains the current capacity without triggering a state transition. It should also be noted that in a rate-adaptation scheme that combines rate scaling with sleep-state exploitation the set S of available operating states is formed by the union of the sleep state with the subset of states in the underlying rate-scaling scheme such that the associated processing capacities are not lower then the optimal threshold capacity r T opt :

[0158] S = {s s } u {s k e S' r k > r T opt ) where S' is the set of operating states in the underlying rate-scaling scheme and r s = 0 is the capacity associated with the sleep state. While the policy only allows single-step capacity decrements when the queue becomes empty to avoid wide state oscillations along the convex power-rate curve, the same policy imposes no restrictions on state transitions that cause capacity increments: at time t 0 , when Q(f 0 ) > 0 and a new operating interval can start because at least h time has elapsed since the beginning of the current operating interval, the policy chooses the new processing capacity out of the full subset of available capacities that are not lower than the current one. The name for this state-setting policy is the simple strong backlog clearing (SSBC) policy.

[0159] To improve statistically the delay performance of the rate-adaptation domain, a predictor A(t )for the traffic arrival rate can be included in the state- setting policy. The simplest predictor uses the arrival rate of an operating interval as the arrival rate estimate for the next interval: A(t n ) = [A(t n+ ) - A(t n )] / (t n+ - t n ) , where t n and f n+1 are the start and end times of the n th operating interval. While the combination of the current queue length with an estimate of the arrivals for the next operating interval does improve the average delay performance of the rate adaptation domain, it cannot reduce the worst-case added delay of eq. (1 1 ). This is because a predictor, however accurate, has no actual control over future arrivals. Heretoafter are described the effects of including the simplest predictor in the state-setting decision at time t 0 such that Q(f 0 ) > 0

[0160] (r(f 0 ) = min{r, : r,≥[Q(f 0 ) + ^(f 0 ) - ft] / (ft - < y) A r,≥r(f- )}) and in the state-setting decision at time t e such that Q(t e ) = 0 r{t e ) = max{r k : r k < r{t e ) ^ r k > A{t e )} . The name for this state-setting policy is the predictive strong backlog clearing (PSBC) policy.

[0161] A slightly different approach to the combination of current state (the queue length Q{t) ) and future arrivals (the predictor A{t) ) is derived from a rate-scaling method of the prior art [Nedevschi]. Instead of being projected over the entire operating interval to follow, the predictor for future arrivals is only applied to the time needed to complete the next transition, so that the new processing capacity is set based on the expected backlog at the time when the domain can start processing packets again. At time t 0 , such that

Q(f 0 ) > 0 this partially predictive strong backlog clearing (PPSBC) policy sets the processing capacity r(t Q ) for the next operating interval as follows:

[0162] r(t 0 ) = min : r k > [Q(f 0 ) + >¾(f 0 ) - δ] I (h - δ) Λ r k > r(t 0 )} .

[0163] At time t e such that Q(f e ) = 0 the PPSBC policy sets the processing capacity r(t e ) for the next operating interval as follows:

[0164] r(t e ) = max{r fc : r k < r(t e ) Λ r k > A(t e ) - δ I (h - δ)} .

s k eS

[0165] The discussion to this point has covered state-setting policies that hold the strong backlog clearing property. However, the experimental results presented in the following section also account for the performance of weak backlog clearing policies and of a non-backlog clearing policy.

[0166] EXPERIMENTAL RESULTS [0167] The energy-saving and delay performance of rate-adaptation schemes that incorporate the state-setting policies heretofore defined (SSBC, PSBC, and PPSBC) were studied by simulation of a 10 Gbps single-queue rate-adaptation domain fed by 10 independent Pareto sources, each capable of supplying up to 1 Gbps traffic. The sources generate 1000 Byte packets and have average burst time and average idle time of 50 ms. The packet- level simulation experiments were run using newly designed Queue subclasses for the ns2 simulation platform. In every experiment data were collected for 100 seconds of system time after expiration of a 5 second warm- up period.

[0168] The power-rate curve of the domain was derived by interpolation and normalization of the six operating states of the Intel® Pentium® M Processor as documented in the March 2004 Whitepaper, "Enhanced Intel® SpeedStep® Technology for the Intel® Pentium® M Processor" (which may be found at ftp://download.intel.com/design/network/papers/301 17401 .pdf):

[0170] where r 0 = 1 .625 Gbps, P 0 = 0.232 W , and A = 0.001308 W Gbps 3 . The operating states of Table 1 were assumed to be available to the state- setting policy.

[0171] It is assumed that the sleep power P s is a fraction of the base active power P 0 (P s = χ · Ρ 0 , < χ < 1) and that the idle power is a fraction of the active power: P = β · Ρ V / , 0 < /? < 1) . Per eq. (7), the optimal threshold capacity is a function of the sleep power P s and therefore of the ratio γ between sleep power and base active power. With the power-rate curve of eq. (12), a relatively low value of the ratio ( γ =0.125) yields r(t T opt ) =5.21

Gbps, whereas a relatively high value ( ^ =0.5) yields r(f r opf ) =4.51 Gbps. As a compromise between the two values, the minimum non-null capacity available in the rate-adaptation domain was set to 5 Gbps: [0172] S = {s s } v {s k S' \ r k ≥5 Gbps} = {s s , s 5 , s e , s 7 , s B , s 9 , Sn}

[0173] The transition time δ is set at 1 ms knowing that it is well within the capabilities of existing technologies but still a cause of delays that may affect the user perception of end-to-end applications. In the evaluation of rate- scaling schemes that do not include sleep-state exploitation, the minimum non-null capacity available is set at 2 Gbps (Table 1 shows that there is no energy benefit in including s 1 in the set of available operating states).

[0174]

[0175] Table 1 [0176] Referring to Fig. 10 there may be seen the energy gains achieved in a rate-scaling context by the three strong backlog clearing policies described previously (SSBC, PSBC, and PPSBC), by their weak backlog clearing counterparts (SWBC, PWBC, and PPWBC), and by a sleep-state exploitation (SSE) domain {γ =0.125), with respect to a domain that only alternates between active and idle substate at full processing capacity. For completeness, included in the comparison is also a non-backlog clearing (NBC) policy from the prior art [Nedevschi], where neither backlog clearing property holds because the policy only allows single-step increments within the set of available rates. In all cases the ratio between idle power and active power is /? = 0.8 .

[0177] Fig. 10 provides the following important indications:

[0178] · Rate adaptation is well-worth pursuing given its capability to achieve large energy savings, especially in the lower portion of the load range.

[0179] · The advantage of sleep-state exploitation over rate scaling in the lower portion of the load range justifies the specification of rate-adaptation schemes that combine the two approaches.

[0180] · All strong backlog clearing policies outperform their weak backlog clearing counterparts.

[0181] · The PSBC policy clearly underperforms the SSBC and PPSBC policies, implying that the application of traffic arrival predictors should not be extended to the entire duration of the operating interval.

[0182] · The energy-saving performance of the SSBC and PPSBC policies is at least as good as that of the pre-existing NBC policy.

[0183] To choose between the SSBC and PPSBC policies, their relative delay performances are illustrated in Fig. 11 , which also plots the average and maximum delay for the NBC policy.

[0184] Fig. 11 shows that the SSBC and PPSBC policies keep the maximum delay within the 1 1 ms bound of eq. (11 ), whereas the NBC policy violates it (although not by large amounts in this experiment). The PPSBC policy consistently outperforms the SSBC policy with respect to both average and maximum delay, by margins that are related to the ratio between the transition time δ , over which the PPSBC prediction is projected, and the minimum hold time h . For simplicity, in the remainder of this section are presented results only for the PPSBC policy, which outperforms all other policies under state transition assumptions that are consistent with currently available technologies. However, it should be understood that, as the state transition technology improves over time offering shorter and shorter transition times, the delay performance distinction will sometime become irrelevant, making the simplest policy (SSBC) by far the most appealing to implement.

[0185] Next is depicted the best minimum capacity to be made available in a rate-adaptation scheme that combines rate scaling with sleep-state exploitation. Referring to Fig. 12 there may be seen the energy-saving performance of the PPSBC rate-adaptation scheme with 2 Gbps, 5 Gbps, and 7 Gbps minimum capacity. The plot also includes the optimal rate-scaling scheme (PPSBC state-setting policy with 2 Gbps minimum capacity) and the sleep-state exploitation (SSE) scheme.

[0186] Fig. 12 confirms expectations in that:

[0187] · The criterion of eq. (7) for setting the minimum non-null capacity proves optimal: in the lower portion of the load range the PPSBC policy with r mm = 5 Gbps yields higher energy savings than the same policy with r min = 2 Gbps and r min = 7 Gbps .

[0188] · The rate-adaptation scheme significantly outperforms the underlying rate-scaling scheme in the lower portion of the load range.

[0189] · The rate-adaptation scheme outperforms the sleep-state exploitation scheme over the entire load range.

[0190] Finally, referring to Fig. 13 there may be seen a comparison between the delay performance of the PPSBC rate-adaptation scheme (RA-PPSBC) with the delay performance of the underlying rate-scaling scheme (RS- PPSBC). [0191] The curves of Fig. 13 show that the two versions of PPSBC fully overlap for loads in excess of 5 Gbps, and that the rate-adaptation version complies with the delay bound of eq. (1 1 ) over the entire load range.

[0192] Summarizing, rate-adaptation schemes for improving the energy efficiency of packet networks have been addressed resulting in two contributions. First, it has been shown that by proper abstraction of network data paths it is possible to create the conditions for the incremental introduction of rate-adaptive devices in practical networks. Second, there has been defined a class of state-setting policies for rate adaptation schemes that enforce tight deterministic bounds on the extra delay that the schemes may cause to network traffic at every node where they are deployed. Within that class, there have been disclosed state-setting policies that effectively combine the best properties of sleep-state exploitation and rate-scaling schemes, demonstrating that the implementation of rate adaptation in practical network equipment can be improved over the rate adaptation methods existent in the prior art.

[0193] The present invention can be embodied in the form of methods and apparatuses for practicing those methods. The present invention can also be embodied in the form of program code embodied in tangible media, such as magnetic recording media, optical recording media, solid state memory, floppy diskettes, CD-ROMs, hard drives, or any other machine-readable storage medium, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention. The present invention can also be embodied in the form of program code, for example, whether stored in a storage medium or loaded into and/or executed by a machine, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention. When implemented on a general-purpose processor, the program code segments combine with the processor to provide a unique device that operates analogously to specific logic circuits. [0194] It will be further understood that various changes in the details, materials, and arrangements of the parts which have been described and illustrated in order to explain the nature of this invention may be made by those skilled in the art without departing from the scope of the invention as expressed in the following claims.

[0195] It should be understood that the steps of the exemplary methods set forth herein are not necessarily required to be performed in the order described, and the order of the steps of such methods should be understood to be merely exemplary. Likewise, additional steps may be included in such methods, and certain steps may be omitted or combined, in methods consistent with various embodiments of the present invention.

[0196] Although the elements in the following method claims, if any, are recited in a particular sequence with corresponding labeling, unless the claim recitations otherwise imply a particular sequence for implementing some or all of those elements, those elements are not necessarily intended to be limited to being implemented in that particular sequence.

[0197] Reference herein to "one embodiment" or "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the invention. The appearances of the phrase "in one embodiment" in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments necessarily mutually exclusive of other embodiments. The same applies to the term "implementation." Numerous modifications, variations and adaptations may be made to the embodiment of the invention described above without departing from the scope of the invention, which is defined in the claims.