+ All Categories
Home > Documents > Which Protocol? Mutual Interaction of Heterogeneous Congestion Controllers

Which Protocol? Mutual Interaction of Heterogeneous Congestion Controllers

Date post: 23-Dec-2016
Category:
Upload: srinivas
View: 212 times
Download: 0 times
Share this document with a friend
13
IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014 457 Which Protocol? Mutual Interaction of Heterogeneous Congestion Controllers Vinod Ramaswamy, Diganto Choudhury, and Srinivas Shakkottai, Member, IEEE Abstract—A large number of congestion control protocols have been proposed in the last few years, with all having the same purpose—to divide available bandwidth resources among different ows in a fair manner. Each protocol operates on the paradigm of some conception of link price (such as packet losses or packet delays) that determines source transmission rates. Recent work on network utility maximization has brought forth the idea that the fundamental price or Lagrange multiplier for a link is proportional to the queue length at that link, and that different congestion metrics (such as delays or drops) are essentially ways of interpreting such a Lagrange multiplier. We thus ask the following question: Suppose that each ow has a number of congestion con- trol protocols to choose from, which one (or combination) should it choose? We introduce a framework wherein each ow has a utility that depends on throughput and also has a disutility that is some function of the queue lengths encountered along the route taken. Flows must choose a combination of protocols that would maximize their payoffs. We study both the socially optimal, as well as the selsh cases to determine the loss of system-wide value incurred through selsh decision making, so characterizing the “price of heterogeneity.” We also propose tolling schemes that in- centivize ows to choose one of several different virtual networks catering to particular needs and show that the total system value is greater, hence making a case for the adoption of such virtual networks. Index Terms—Congestion controllers, noncooperative games, Paris Metro Pricing (PMP), TCP/IP. I. INTRODUCTION R ECENT years have seen the design of a large number of congestion control protocols for use on the Internet. Their designs all revolve around the idea that link congestion is indicated by some notion of “price,” to which the source can respond. Different congestion price metrics include packet loss, packet marks, packet delays, or some combination thereof. However, the relative value of one protocol versus another is not well understood. For example, it might be conjectured that a Manuscript received April 20, 2012; revised December 17, 2012; ac- cepted February 27, 2013; approved by IEEE/ACM TRANSACTIONS ON NETWORKING Editor C. Dovrolis. Date of publication June 04, 2013; date of current version April 14, 2014. This work was supported in part by the NSF under Grants CNS-0904520, CNS-0963818, and CNS-1149458; the Google Faculty Research Awards program under Grants HDTRA1-13-1-0030 and FA9550-13-1-0008; and the Google Faculty Research Awards program. V. Ramaswamy and S. Shakkottai are with the Department of Electrical and Computer Engineering, Texas A&M University, College Station, TX 77843 USA (e-mail: [email protected]; [email protected]). D. Choudhury was with the Department of Electrical and Computer Engi- neering, Texas A&M University, College Station, TX 77843 USA. He is now with Maxim Integrated, Dallas, TX 75240 USA (e-mail: dchoudhury@tamu. edu). Color versions of one or more of the gures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identier 10.1109/TNET.2013.2262773 delay-sensitive application would consider using a protocol that has a delay-based congestion metric, and a throughput maxi- mizing application might favor a loss-based metric. How should applications choose the protocol to use? An analytical framework for network resource allocation was developed in seminal work by Kelly et al. [1]. If the ow has a rate and the utility associated with such a ow is repre- sented by a concave, increasing function , the objective is (1) s.t. (2) where is the set of sources, the set of links, and the capacity of link . Also let be the routing matrix with if the route associated with source uses link . The load on link is . The problem can be solved using ideas based on primal-dual system dynamics [1]–[5] to yield a set of controllers. At the source, we have (3) where , and the notation is used to denote the function . (4) Equation (4) ensures that is nonnegative. The controller in (3) has an attractive interpretation that the source rate of ow responds to feedback in the form of link prices , with the end-to-end price being calculated as the sum of prices on all links that the ow traverses—something that is common to all congestion control protocols. Source rate is always nonnegative, which is enforced by the denition of the function in (4). The price at link is calculated using (5) Equation (5) ensures that the price is nonnegative. Each link has a buffer in which packets are queued. If the total load at a link given by is greater than the capacity , the queue length increases, while if it is less than , the queue length decreases as seen in (5). The queue length is always non- negative, as enforced by the denition in (4). The gain param- eter is any positive function. Thus, the link price can be identied with the queue length at link . It has been shown [1]–[5] that the above control scheme converges to the optimal solution to the problem in (1). 1063-6692 © 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
Transcript

IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014 457

Which Protocol?Mutual Interaction of HeterogeneousCongestion Controllers

Vinod Ramaswamy, Diganto Choudhury, and Srinivas Shakkottai, Member, IEEE

Abstract—A large number of congestion control protocolshave been proposed in the last few years, with all having thesame purpose—to divide available bandwidth resources amongdifferent flows in a fair manner. Each protocol operates on theparadigm of some conception of link price (such as packet losses orpacket delays) that determines source transmission rates. Recentwork on network utility maximization has brought forth the ideathat the fundamental price or Lagrange multiplier for a link isproportional to the queue length at that link, and that differentcongestion metrics (such as delays or drops) are essentially ways ofinterpreting such a Lagrange multiplier. We thus ask the followingquestion: Suppose that each flow has a number of congestion con-trol protocols to choose from, which one (or combination) shouldit choose? We introduce a framework wherein each flow has autility that depends on throughput and also has a disutility that issome function of the queue lengths encountered along the routetaken. Flows must choose a combination of protocols that wouldmaximize their payoffs. We study both the socially optimal, aswell as the selfish cases to determine the loss of system-wide valueincurred through selfish decision making, so characterizing the“price of heterogeneity.” We also propose tolling schemes that in-centivize flows to choose one of several different virtual networkscatering to particular needs and show that the total system valueis greater, hence making a case for the adoption of such virtualnetworks.

Index Terms—Congestion controllers, noncooperative games,Paris Metro Pricing (PMP), TCP/IP.

I. INTRODUCTION

R ECENT years have seen the design of a large numberof congestion control protocols for use on the Internet.

Their designs all revolve around the idea that link congestionis indicated by some notion of “price,” to which the sourcecan respond. Different congestion price metrics include packetloss, packet marks, packet delays, or some combination thereof.However, the relative value of one protocol versus another isnot well understood. For example, it might be conjectured that a

Manuscript received April 20, 2012; revised December 17, 2012; ac-cepted February 27, 2013; approved by IEEE/ACM TRANSACTIONS ON

NETWORKING Editor C. Dovrolis. Date of publication June 04, 2013; date ofcurrent version April 14, 2014. This work was supported in part by the NSFunder Grants CNS-0904520, CNS-0963818, and CNS-1149458; the GoogleFaculty Research Awards program under Grants HDTRA1-13-1-0030 andFA9550-13-1-0008; and the Google Faculty Research Awards program.V. Ramaswamy and S. Shakkottai are with the Department of Electrical and

Computer Engineering, Texas A&M University, College Station, TX 77843USA (e-mail: [email protected]; [email protected]).D. Choudhury was with the Department of Electrical and Computer Engi-

neering, Texas A&M University, College Station, TX 77843 USA. He is nowwith Maxim Integrated, Dallas, TX 75240 USA (e-mail: [email protected]).Color versions of one or more of the figures in this paper are available online

at http://ieeexplore.ieee.org.Digital Object Identifier 10.1109/TNET.2013.2262773

delay-sensitive application would consider using a protocol thathas a delay-based congestion metric, and a throughput maxi-mizing application might favor a loss-based metric. How shouldapplications choose the protocol to use?An analytical framework for network resource allocation was

developed in seminal work by Kelly et al. [1]. If the flow has arate and the utility associated with such a flow is repre-sented by a concave, increasing function , the objectiveis

(1)

s.t. (2)

where is the set of sources, the set of links, and thecapacity of link . Also let be the routing matrix with

if the route associated with source uses link . Theload on link is . The problem can be solvedusing ideas based on primal-dual system dynamics [1]–[5] toyield a set of controllers. At the source, we have

(3)

where , and the notation is used to denote thefunction

.(4)

Equation (4) ensures that is nonnegative. The controller in(3) has an attractive interpretation that the source rate of flowresponds to feedback in the form of link prices , with theend-to-end price being calculated as the sum of prices on alllinks that the flow traverses—something that is common to allcongestion control protocols. Source rate is always nonnegative,which is enforced by the definition of the function in (4). Theprice at link is calculated using

(5)

Equation (5) ensures that the price is nonnegative. Each linkhas a buffer in which packets are queued. If the total load at alink given by is greater than the capacity ,the queue length increases, while if it is less than , the queuelength decreases as seen in (5). The queue length is always non-negative, as enforced by the definition in (4). The gain param-eter is any positive function. Thus, the link pricecan be identified with the queue length at link . It has beenshown [1]–[5] that the above control scheme converges to theoptimal solution to the problem in (1).

1063-6692 © 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

458 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014

While this framework indicates that the fundamental price ofa link is proportional to queue length, congestion control pro-tocols use several different congestion metrics. For example,TCP Reno [6] uses packet drops (or marks) as its price metric,while TCP Vegas uses end-to-end delay [2]. Other protocolsinclude Scalable TCP [7] (that uses loss feedback and allowsscaling of rate increases/decreases based on network character-istics), FAST-TCP [8] (that uses delay feedback and is meantfor high-bandwidth environments), and TCP-Illinois [9] (thatuses loss and delay signals to attain high throughput). However,drops, marks, and delays are all functions of the queue length.Thus, a key difference between protocols is their way of inter-preting queue length information.A fallout of different price interpretations is that when flows

choose distinct congestion control protocols, they do not obtainthe same throughput on shared links. For example, studies suchas [10]–[13] study interprotocol as well as intraprotocol fair-ness, while [14] considers a game of choosing between proto-cols, assuming that a certain throughput would be guaranteedper combination.Throughput alone does not fully capture the performance of

an application since it might also be impacted by queueing ef-fects such as delay and packet loss. We consider applicationsthat might have different sensitivities to queueing. Indeed, alarge fraction of Internet traffic consists of file transfers (lessdelay-sensitive) and buffered video streams (more delay-sen-sitive) from data centers or content distribution networks. Wemodel these flows as having (possibly different) utilities forthroughput and disutilities for the queueing encountered on theirrespective paths.We anticipate for a future Internet architecture wheremultiple

congestion controlling schemes are available to cater the needsof different service classes and the flows are allowed choosethe ones according to their service preferences. Hence, we as-sume that flows play “fair” in that they choose to follow the con-straints imposed by employing some form of congestion control.Thus, the flows choose from a set of “reasonable” congestioncontrol mechanisms, for example variants of TCP, so as to max-imize their payoff that is utility minus disutility.Our objective is similar to the proposal in [15], where

a system design for virtual links tailored for flows that arerate-sensitive (R) and delay-sensitive (D) is presented. Theidea is that an R-flow would pick the virtual link where it isguaranteed higher rate, whereas a D-flow would pick one whereit is guaranteed a lower delay. However, unlike that work, wehave two basic differences. First, we explicitly model utility(for throughput) and disutility (for queuing) for all kinds offlows, rather than assume that D-type flows would be willingto live with smaller rate. This enables us to explore the spaceof multiple classes of service with tolling since it gives anobjective measure on the choice made by the flow. Second,we allow a choice between TCP flavors (i.e., interpretationof queue length by congestion controllers) according to theapplication in question. However, in [15], the only way toreduce delay is to have short buffers for the D service class,which might also result in more losses.Our finding is that if the number of flows in the system

is large, the optimal strategy of a flow is to choose a priceinterpretation from among the space of available ones that ismost similar to its disutility function. Using this finding, we

can characterize the total system value to all flows, and weshow that the ratio of this value to the optimum value can bearbitrarily small. Finally, we consider the situation in whichwe create multiple virtual networks with tolling, with eachflow having a choice between networks and between protocols.We show that we can fix the tolls such that the overall systemvalue can be increased significantly, in spite of the toll. We nextpresent our model and summarize our main results.

II. MODEL AND MAIN RESULTS

We consider a system in which each flow has aso-called -fair utility function [16]

(6)

with , and a disutility that depends on the vector of linkprices as

(7)

where is a constant. The overall payoff is the differenceof the two, given by

(8)

The -fair utility function was proposed by Mo et al. [16] as amethod of capturing a large class of fairness measures based onthe value of used. For instance, they showed that re-sults in proportional fairness, while results in max-minfairness. The form of the disutility function is such that basedon , the disutility can be (almost) linear in queue length (whichin turn is proportional to delay, weighted by the parameter ),to gradually increasing convexity as rises, to a sharp cutofffor large . The threshold parameter in (7) models the flow’ssensitivity to queue length, with a small value of indicatinghigh sensitivity (e.g., delay-sensitive applications need shortqueue lengths) and a large value indicating low sensitivity (e.g.,loss-sensitive applications are affected only by buffer overflow).We define a set of protocols , with cardinality .

Each protocol is associated with a price-interpretationfunction . Note that these price-interpre-tation functions take the same form as disutilities and modelthe way in which a particular protocol interprets linkprices.1 Again, a loss-based protocol would have a high valueof , while a dealy-based protocol would have a low value.This corresponds to the fact that in a protocol that is modulatedby buffer over flows such as TCP Reno, the queue length has noimpact until a maximum threshold (buffer size) is reached, afterwhich the price is very high ( here). Similarly,TCP Vegas (approximately) decides on whether the achievedthroughput is too high or too low as compared to a threshold,which in turn can be related to a threshold on the per-packetdelay seen by the flow ( is less than the buffer size here).Now, while a flow cannot change its disutility function param-eterized by it can choose to use a combination of protocols as

1We will refer to “price-interpretation functions” and “protocols” inter-changeably.

RAMASWAMY et al.: MUTUAL INTERACTION OF HETEROGENEOUS CONGESTION CONTROLLERS 459

it finds appropriate. A particular flow ’s choice could take theform

(9)

where , and . The convex combinationmodels the idea that a flow sometimes measures price in oneway (e.g., delay-based) and sometimes in another way (e.g.,loss-based). can be thought of as the probability with whichflow uses protocol . For example, this situation might cor-respond to a flow using delay and loss measurements simulta-neously, and responding to congestion signals (loss or delay)probabilistically. We refer to the choice , made by

flow as . Furthermore,

we denote aggregate choices of all flows byand will refer to as a protocol profile.We first show in Section III that for a given protocol profile,

the bandwidth allocations (and hence the payoffs) are unique.Furthermore, a primal-dual-type control will converge to thisunique bandwidth allocation. The result is essentially a consis-tency check that allows us to analytically determine the payoffsas a function of the protocol profile chosen.We show in Section IV that all bandwidth allocations that are

attainable by a protocol profile over protocols withare attainable by a protocol profile over

just the two protocols and . The result has the ap-pealing interpretation that when , it is suffi-cient to only consider the “strictest” interpretation (smallest ,which can be thought of as delay-based feedback) and the most“lenient” (largest , associated with loss-based feedback). Wenext show that with two protocols with , the bandwidthallocation received by a flow is decreasing in the weight itplaces on the strict protocol. Although the proof is involved,the result is intuitive since a strict protocol would always inter-pret as a larger congestion than the lenient protocol. However,since payoffs are the sum of utility and disutility, it does notfollow that all flows would choose the protocol with the higherthreshold.We show in Sections V and VI that in many cases, the total

system value is maximized when all flows choose to use only. On the one hand, if flows have price-insen-

sitive payoffs, the protocol profile used does not matter as longas all of them use the same profile. On the other hand, if thereis a mix of flows, some of which have a large disutility function(price-sensitive) and others that do not (price-insensitive), usingthe strict price interpretation ensures that theprice does not become too large for all flows, which maximizessystem value.In Sections V and VI, we also consider the case flows use

selfish optimizations to choose their protocol profiles andstudy the Nash equilibrium. If all flows have price-insensitivepayoffs, then they all choose the lenient price interpretation

. This case can be mapped to throughputmaximizing flows all choosing TCP Reno. If we have a mix offlow types sharing a link, it turns out that the price-sensitiveflows with disutility function parametrized by choosethe strict price interpretation , regardless ofthe choice of others. Similarly, the price-sensitive flows withdisutility threshold choose the lenient price interpre-tation . Meanwhile, the other flows may

employ mixed strategies. When the number of flows in thesystem is large, a flow with disutility threshold picks a mixedstrategy that yields an effective price interpretation .The result is interesting since it suggests that a delay-sensitiveapplication cannot do any better in terms of overall payoff evenif it chooses a more lenient protocol. We also characterize theratio of system value in the game versus the social optimum forthe single-link case to determine an efficiency ratio, which canbe quite high.Finally, in Section VIII, we introduce virtual networks, each

of which is assigned a certain fraction of the capacity andchooses a toll. Flows can choose a network and protocols. Theidea is similar to Paris Metro Pricing (PMP) [17]–[19], andwe show that the system value at Nash equilibrium can behigher overall in spite of tolling. The result suggests that theInternet might benefit by having separate tiers of service fordelay-sensitive and loss-sensitive flows.

III. PROBLEM FORMULATION

We assume that for each link, there exists at least one flowthat uses only that link. The assumption implies that all linkshave a nonzero price. We hypothesize from (3) and (5) that thepayoffs should be determined by the protocol profile as

(10)

with and for all

(11)

Note that although we have denoted as depending on bothand , the prices themselves depend on through , andthe solution (if it exists) is solely a function of .We show that the equilibrium exists and can be reached usingprimal-dual dynamics. We have the following proposition.Proposition 1: Given any protocol profile , primal-dual dy-

namics converge to the unique solution of the condi-tions (10) and (11).

Proof: For price-interpretation functions of the form, the source dynamics in (3) can be rewritten as

where . Let where, and let . Then, the above equa-

tion can be modified as

(12)

Now, in (5), choose , where is derivativeof . Then, the price-update equation can be rewritten as

(13)

460 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014

Equations (12) and (13) correspond to the primal-dual dynamicsof the following convex maximization problem:

subject to

The above is a convex optimization problem with a unique solu-tion satisfying (10) and (11). Thus, by the usual Lyapunov argu-ment [2]–[5], primal-dual dynamics converge to this solution.Note that our choice of price interpretation makes it a specialcase of the result in [11, Appendix A, Case-1].We are now in a position to ask questions about what the

flows’ payoffs would look like at such an equilibrium, and howthis would impact the choice of the protocol profile. Recallthat the payoff obtained by a flow when the system state is at

is given by

(14)

We define a system-value function , which is equal to the sumof payoff functions of all flows in the network

(15)

Our first objective is to find an optimal protocol profile thatmaximizes the system-value function

(16)

Let be an optimal profile vector for the above problem. Then,we refer to as the value of the social optimum.An alternative would be for flows to individually maximize

their own payoffs. However, such a proceedingmight not lead toan optimal system state that maximizes the value function (15).We characterize the equilibrium state of such a selfish behaviorby modeling it as a strategic game.Let be a strategic game, where is the

set of flows (players), is the set of all protocol profiles (ac-tion sets), and , whereis the payoff function of user defined in (14). Define

, i.e., this represents the choices of allflows except . Then, . For any fixed , flowmaximizes its payoff as follows:

(17)

The game is said to be at a Nash equilibrium when flows donot have any incentive to unilaterally deviate from their currentstate. We define as a Nash equilibrium of the game if

We refer to as the value of the game. Finally, wedefine the “Efficiency Ratio ” as

(18)

IV. BASIC RESULTS

We first show that a -protocol network can be replaced withan equivalent 2-protocol network. Consider a -protocol net-work with price interpretation functions . Let

be a profile state in the -network. Then, the equilib-rium rate vector and price vector satisfy the equilib-rium conditions (10) and (11). Now, consider a 2-protocol net-work with price interpretation functions and . Note that

, . Let be a profilestate in the 2-protocol network.Proposition 2: For any equilibrium in a -pro-

tocol network, a protocol profile s.t. is alsoan equilibrium for the 2-protocol network.

Proof: For any given , let be an equi-librium pair that satisfies the equilibrium conditions (10) and(11), which are reproduced as follows for clarity:

where . The fact that, implies, . Since both

and are strictly increasing functions, there exists a unique, such that

Now, we have

The above equations correspond to the equilibrium con-ditions of a 2-protocol network with price interpretationfunctions and . Therefore, there exists a protocol profile

such that is an equilibriumpair of 2-protocol network.The above proposition shows that any equilibrium state of a-protocol network can be obtained with an equivalent 2-pro-tocol network. Therefore, we restrict our study to 2-protocol net-works with a “strict” price interpretation and a“lenient” price interpretation , i.e., . Also,we redefine the protocol profile of flow , , as is , whereis the weight applied on the strict price interpretation. Finally,

the equilibrium rate of flow can be written in terms of andas follows:

(19)

RAMASWAMY et al.: MUTUAL INTERACTION OF HETEROGENEOUS CONGESTION CONTROLLERS 461

where is the system protocol profile. Theabove result follows from (10).We next show that the bandwidth allocation received by a

flow is decreasing in the weight it places on the strict protocol.

Proposition 3: Let be the equilibrium rate of flow forany . Then

Proof: From (19), we have

Then, differentiating the above equation with respect to , weget

(20)

where

and

Also, if , and zero otherwise. At equilibrium,. Now, differentiating this equa-

tion with respect to , we get

(21)

Replacing with (20), we obtain

Now, rearranging terms in the above expression, we get,

We can represent the above in a matrix form as

where

Note that is a strictly concave function, and hence. Therefore, is a positive definitematrix. Now,we have

(22)

Let , where is an matrix. Let usrepresent its elements using . Thus, from (22), we have

(23)Let . Then, from (20) and (23), weget

(24)

(25)

where represent elements of .Now, we show that is negative given the assump-

tion in the lemma. Note that is a projection matrix. The diag-onal elements of a projection matrix are positive and less thanor equal to unity. i.e., . Then, from (24), we concludethat and hence have proved the proposition.The above proposition is intuitive in that a strict protocol

would force the flow to cut down its rate for the same price asa lenient protocol.Corollary 4: In the single-link case, the link price and the

rate vector satisfy and if.

Proof: From (23)–(25), we have

(26)

(27)

where

462 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014

The above result follows from (19) and the fact that. Note that since is strictly

concave. Now, the corollary is straightforward from the aboveresults.Now, we study different mixes of flow types in order to un-

derstand the system value in each case.

V. FLOWS WITH PRICE-INSENSITIVE PAYOFF

We associate each flow to a class, based on its disutilityfunction of the form . We begin by con-sidering a system of flows that have a price-insensitive payoff,i.e., . This means that payoff is solely a func-tion of bandwidth, and we have . However,even in this situation, flows must employ congestion control,i.e., they must choose a protocol profile. From Section IV, re-call that since we only have two protocols, the flow ’s choiceof protocol profile is defined by a scalar value . Also note that

for each protocol . The system value is equalto the sum of user payoffs, . We thenhave the following result.Proposition 5: The system value is maximized when the

protocol choices made by all users are the same. Thus, if, and is used to denote the protocol

choice made by-profile of user , then .Proof: We first derive an upper bound for system

value and then show that the upper bound is achievedwhen all sources choose the same protocol. Suppose that

. Let . Notethat equilibrium rate since . Then, thevalue of evaluated at satisfies

We showed in Proposition 2 that the equilibrium rateis the unique maximizer of the convex problem

, where. Then, can be made equal to , the optimal

point in set , by choosing . Such a choicemeans that

Thus, if. Therefore, the system value is maximized when the pro-

tocol choices made by all the users are identical. Also, the max-imum value does not depend on the parameters of the selectedprotocol.We next consider the game in which flows are allowed to

choose their protocols selfishly.Proposition 6: Let be a strategic game with

payoff function of user given as . Then,there exists a Nash equilibrium for game , and the equilibriumprofile for any user is .

Proof: Differentiating w.r.t. and using Proposition 3

Fig. 1. System value with price-insensitive flows as a function of the protocolprofile. We observe that the system value is maximized when both flows choosethe same protocol profile.

Hence, is maximized when . Therefore,.

Efficiency Ratio: We showed in Proposition 5 that the valuefunction is maximized when all flows pick the same protocolprofile. In Proposition 6, we saw that when each flow selfishlymaximizes its own payoff, there exists a Nash equilibrium underwhich every source chooses the lowest-priced protocol, i.e., theprotocol with the higher value of . Such a profile is a specialcase of all flows choosing the same protocol profile. Thus, valueof the social optimum and the value of the game are identical,and Efficiency Ratio is unity.Example 1: Consider the case in which a single link with ca-

pacity is shared by two price-insensitive flows. Usershave -fair utility functions with , and. We use price-interpretation functions and .

Note that the simulation parameters and threshold valuesare chosen arbitrarily. These parameters may not correspond toany particular protocol used in practice. Nevertheless, the ob-servations made here hold true for any values of ,and .In Fig. 1, we show the system value for different choices of

protocol profiles. The plot illustrates that system value is max-imized when both flows choose the same profile. Fig. 2 showshow the payoff function of a flow varies with its protocol pro-file. We find that regardless of the value of the protocol profilechosen by the other flow, the payoff function is maximizedwhenit picks the lower-price protocol.

VI. MIXED ENVIRONMENT

We now consider the case where a network is shared by flowswith different disutilities. We identify the optimal protocol pro-file that maximizes the system value and compare it to and theNash equilibrium. We first study the case of a network con-sisting of a single link.

A. Single-Link Case

Consider a single-link system with capacity sharedby flows. The payoff of user is

. Then, the system value is.

RAMASWAMY et al.: MUTUAL INTERACTION OF HETEROGENEOUS CONGESTION CONTROLLERS 463

Fig. 2. Payoff of a price-insensitive flow as a function of its protocol profile.We observe that payoff is maximized when the flow chooses the more lenientprice interpretation, regardless of the other flow.

Proposition 7: The system value is maximized whenall users pick the protocol with lowest threshold, i.e., if

, then .Proof (Sketch): Recall that by our assumption.

Given this assumption, it can be shown through straightforwarddifferentiation that is a monotonically decreasing func-tion of . Now, the value function is maximum whenis maximized and is minimized. We already know fromProposition 5 that is maximized when all flows choosethe same protocol profile. Coupling this result with the fact that

is decreasing in , we see that system value is maximizedwhen .We now study the strategic game in which users individually

maximize their payoff as in (17). We show that there exists aNash equilibrium and characterize the protocol profile.Proposition 8: Let be a strategic game with

payoff of user is . Then,there exists a Nash equilibrium (NE) for Game . At NE, flowswith greatest sensitivity to price choose the strict protocol, i.e.,if , then .

Proof: We will show that is quasi-concave and usethe Theorem of Nash to show existence of a NE. Differentiatingw.r.t.

(28)

where and is its derivative. Now, sub-stituting the results from (26) and (27), in the above equation,we get

(29)

(30)

where and. Note that since is a negative

function.

From (19) along with the definitions of and , theabove expression can be simplified as follows:

(31)

We show that if the above expression has a root, then it isunique. The roots are characterized by

(32)

First observe that the left side of the above expression is strictlyincreasing in (since ). Since and

if (from Proposition 3 and Corollary 4),the right side of the above expression is strictly decreasing.Therefore, the set of roots of the equation, isa singleton or null set. Thus, is unimodal or monotonic infor any fixed and hence quasi-concave.Since is a nonempty compact convex set, by the

theorem of Nash, the quasi-concavity of guaranteesthat there exists a , such that for all

Hence, the first part of the proof is complete.Now, consider a flow with disutility (per unit rate) ,

where . Replacing with in (31), we observe that(note that ). Therefore, payoff is maxi-

mized when .In Section VI-B, we study the characteristics of the NE and

show that it is unique.

B. Nash Equilibrium Characteristics

We have established the existence of NE of the strategicgame (17) in Section VI-A. We conduct further studies on theproperties of NE in this section. First, we derive conditionsfor the NE system protocol profile. Then, in Proposition 9, weshow that the game has a unique NE. Finally, in Proposition10, we derive the NE strategies of flows when there is a largenumber of flows in the system.Let be a Nash equilibrium system protocol profile (action

profile). Then, by definition, it must satisfy the condition that

Then, from the first-order optimality condition, we have

Consequently, from (31), we get that,

(33)

464 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014

where , and. In addition, the Nash equilibrium

profile must also satisfy

(34)

(35)

Here, (34) follows from (19) and the definition of . Also,(35) follows from the assumption that every link has one flowusing that link alone. Now, we show that the set of Nash equi-libria, characterized by (33)–(35), is singleton.Proposition 9: The strategic game, , has a

unique Nash equilibrium.Proof: To prove by contradiction, assume multiple Nash

equilibria exist. Let two distinct NE system protocol profiles beand . Also, let , , ,

, and . Then, by reorderingthe flow indices, we get that, for some

for (36)

for (37)

Also, if , there exists a flow such that . Weshow that the above condition are infeasible for all values of ,under the NE conditions given by (33)–(34).Initially, consider the case when . Then, from (33), for

, we have

(38)

(39)

which is a contradiction. Hence, this case is not feasible. Simi-larly, we can show that the case when is also not feasible.Now, consider the case when . Also, suppose that

. Then, from (34), we have

for

Let

Note that and hence, . Also, from (35), notethat .Observe that

and strict inequality holds if . It follows from the aboveresult that

Finally, from (33) and the above result, we get . How-ever, from the definition of , we know that . In case

, then from (34) and the assumption that ,we get , which also raises a contradiction. Hence, thiscase is also not feasible. In similar fashion, we can show thatthe case in which is also not feasible.Hence, our assumption that multiple NE exist is not true.

Therefore, NE is unique.Next, we characterize the NE in the asymptotic regime.Proposition 10: When the number of flows in the system, ,

is large, the protocol profile of flow at NE, , satisfies

Proof: Recall from (33) that the NE protocol profile of flowsatisfies

In order to prove the proposition, we claim that

(40)

holds true. Before proving the above result, we introduce a fewnotations: Let , ,

and .Now, the proof of the claim (40) is as follows. From (35), we

can show that

Also, from (34), we have

(41)

The above result follows from the fact that .From Corollary 4, we observe that the link price is a de-

creasing function of protocol profile of each flow and, hence, thesystem protocol profile . Therefore, the link price achieves thelowest value, when every flow adopts the strict protocol. Then,from (34) and (35), it is easy to show that

(42)

Finally, from (41) and (42), we have

where is a constant. The upper bound in the above expressiongoes to zero for large values of . Therefore, the claim in (40)holds true and hence, the proof is completed.Example 2: We consider a link with capacity shared

by two flows with disutilities and , respectively,and . The other parameters are unchanged fromExample 1. We show the system value for different choices ofprotocol profiles in Fig. 3. The value is maximized when bothflows choose the strict protocol. Fig. 4 shows how the payoff

RAMASWAMY et al.: MUTUAL INTERACTION OF HETEROGENEOUS CONGESTION CONTROLLERS 465

Fig. 3. System value against protocol choices : Two flows sharing a link.

Fig. 4. Payoff against protocol choice : Two flows sharing a link.

of each flow varies with its choice of protocol profile, giventhe other’s is fixed. We find that for the first (sensitive) flow,the payoff function is maximized when it chooses the strict pro-tocol, regardless of the other flow. However, the payoff of thesecond (less sensitive) flow is maximized for some combinationof protocols. The results validate our findings.Example 3: We consider a linkwith capacity . There

are 40 flows sharing the link. The strict and lenient thresholdsare and , respectively. In our simulations, wehave set for half of users and for the otherhalf. There are 10 classes of flows, with each class containingfour flows. The disutility threshold of a Class flow, given by, is chosen according to the following relation:

.We choose a candidate flow that belongs to Class 4. We as-

sume that every other flow has chosen their NE protocol pro-file. That means the effective price interpretation of a flow be-longing to Class is . Fig. 5 plots the payoff of thecandidate flow as a function of its effective protocol choice

, where is its protocolprofile. As claimed by Proposition 10, the payoff is maximizedwhen .

C. Network Case

We consider a system of flows with log utility functions,which is a special class of an -fair utility function with

Fig. 5. Payoff of a Class-4 flow ismaximizedwhen .

. The payoff of flow is. Then, the system value is

.Proposition 11: The System-Value function is maximized

when all flows pick the higher priced protocol, namely. Let , then,

Proof: We can show through straightforward differentia-tion that the disutility function, , is a monotonically de-creasing function of . The rest of the proof is similar to that ofProposition 7.We now consider a game with two types of flows: price-in-

sensitive flows with zero disutilities, and price-sensitive flowswith disutility (per unit rate) . In this special case, thereexists a unique Nash equilibrium. In Proposition 6, we saw thatprice-insensitive flows pick the lenient protocol at Nash equi-librium irrespective of the choices of the other players. We willnow show that price-sensitive flows pick the strict protocol atNash equilibrium.Proposition 12: At the unique Nash equilibrium, and flow

with disutility (per rate) (i.e., ) picks .Proof: It can be shown through straightforward differenti-

ation that for any flow with disutility (perrate) , which completes the proof.

VII. EFFICIENCY RATIO

We now characterize the loss of system value at Nash equilib-rium, as compared to the value of the social optimum. We focuson the case of a single link with capacity .Proposition 13: Assume . When the number

of flows in the system is large

where .Proof: Let be the system protocol

profile at social optimum. From Proposition 7, every userchooses the strict protocol at social optimum, i.e., .Hence, from (19), and the definition of , we have

(43)

466 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014

Interpreting as the dual variable, the above equa-tions can be identified as the Karush–Kuhn–Tucker (KKT) con-ditions of the following optimization problem:

subject to

is the unique maximizer of the above problem. Thepayoff of a flow at social optimum, from (8) and the aboveresults, is given by

(44)

where if flow is a price-sensitive flow, and zero other-wise. The system value at social optimum is .Now, let be the system protocol profile at

Nash equilibrium. From Proposition 10, (19), and the definitionof , we have

(45)

Recall that , . Interpretingas the dual variable, the above equations can be

identified as the KKT conditions of the following optimizationproblem:

subject to

Also, is the unique maximizer of the above problem. Fi-nally, the payoff of a flow is

(46)The system value at NE is .Now, from the above results and the fact that ’s are nega-

tive, since by the assumption of this proposition, we canshow that

(47)

where and . Since andare negative, the efficiency ratio can be bounded as

which completes the proof.Example 4: The exact expression for efficiency ratio is de-

rived for the following special case: We assume that every flowhas the same utility function, i.e., in (6), and

. We associate the flows having disutility functionsof the form with Class . Assume that there aresuch classes with and .The flows having zero disutility function are classified as Class

Fig. 6. Efficiency ratio in the single-link case, plotted against the fractionof Class-1 flows for different ratios of . Since and were negativein this example, a higher ratio is worse.

. For algebraic convenience, we define . Let be thenumber of flows belonging to Class and . Then,the value of social optimum and value of game equilibrium

are given by

(48)and

(49)

respectively, where

and

Also, when , and one otherwise. The efficiencyratio, , is given by

(50)

Now, we plot the efficiency ratio for the following case. Lettwo classes of flows, namely Class 1 and Class 2, share a link.Also, let their disutility thresholds be and ,respectively. Letting and , we plot the efficiencyratio , given by (50), in Fig. 6. Fig. 6 shows that increaseswith . Note that a higher ratio is worse. Hence, the per-formance deteriorates with .

VIII. PARIS METRO PRICING

We have shown in Section VII that when the flows selfishlychoose protocols to maximize their own payoff, the systemperformance at the resulting equilibrium, compared to thesocially optimal case, can be much worse. This is due to thefact that, as shown by Proposition 10, the flows with relatively

RAMASWAMY et al.: MUTUAL INTERACTION OF HETEROGENEOUS CONGESTION CONTROLLERS 467

lower disutility functions choose relatively lenient protocolsand, hence, capture a larger fraction of channel bandwidth,leaving not enough for the ones with larger disutility functionswho choose stricter protocols. As a solution to the aforemen-tioned problem, we propose a scheme in which the networkis partitioned into virtual subnetworks each having its ownqueuing buffer, independent price (queue-length) dynamics,and fixed entrance toll. A flow is free to choose a protocol alongwith a subnetwork so as to maximize his own payoff. Thisscheme is similar to Paris Metro Pricing [17]. We show thatthe efficiency of this scheme is superior to the conventional,untolled, single-network scheme.We characterize the performance of the proposed scheme in

a single-link case. The single link, with capacity (bits/s), ispartitioned into virtual subnetworks. Let represent the thsubnetwork. The bandwidth and toll associated with are de-noted by and , respectively. Also, let and

. We refer to and as bandwidth vector andtoll vector, respectively.We assume that every flow has the same utility function, i.e.,

in (6), and . We associate the flowshaving disutility functions of the form to Class- . Weassume that there are such classes and

with . The price-insensitive flows are classi-fied as Class- . For algebraic convenience, we define .We also assume that there are a large number of flows in eachclass. Let represent the number of flows in Class .A flow that seeks to maximize its payoff picks a subnetwork

that yields the maximum payoff. Thus, if is the subnetworkchosen by flow

where is the payoff of a Class- flow in . An NE hereis a state from which none of the flows has an incentive to de-viate from its current choice of subnetwork. Note that we al-ready know the flow’s choices of protocols in each network, sono deviations in protocol are possible. The desired NE is one inwhich all Class- flows select , i.e.,

(51)

Note that the payoffs received are uniquely determined by thePMP system parameters and . Now, we derive sufficient con-ditions on the pair, and , so that (51) holds true.Assume that the system is at the desired equilibrium, i.e.,

every Class- flow is sending its traffic over . Let be theequilibrium price (per unit rate) in . The throughput receivedby a Class- flow (or anticipated by a Class- flow if it shiftedto ) is given by

and (52)

The above results are due to the fact that the entry of a Class-flow into may not significantly change its price sincethere is a large number of flows in . In (52), the first re-sult follows from Proposition 10, (34), and the assumption that

when , while the second one follows fromProposition 6. The link price in follows from the aboveresults and the fact that rates of flows sharing a subnetwork add

up to its bandwidth allocation; it is given by

if and

(53)The payoff of Class- flow in , from (8), is given by

(54)

where for ,,

and . Also, (54)follows from (52) and (53).The following lemma derives conditions on the pair for

(51) to hold true. Before stating the lemma, we introduce somenotation. Let

(55)

(56)

Lemma 14: Suppose the pair satisfy the following con-ditions: If

(57)

(58)

(59)

Then, (51) holds true, and the state where all the Class- flowschoosing , , is a Nash equilibrium.

Proof: See the Appendix.The system value is sum of payoffs of all the flows, which is

given by

(60)We must choose and that maximize (60) satisfying the NEconditions (57)–(59). Let be one such optimal pair. Notethat (60) is a decreasing function of toll vector, . Hence, from(58) and (64), we get

and (61)

Substituting the optimal toll values in (60), we get

(62)

468 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 22, NO. 2, APRIL 2014

where . Then, define

subject to (57) and (58) (63)

We refer to as System value with tolling. Now, we havethe following proposition, which asserts that the system valueachieved by the tolled multitier regime is superior to that of theuntolled single tier regime.Proposition 15: The system value with tolling is no less than

the value of single tier network game. i.e., . Also, thestrict inequality holds if there exists a such that

(64)

Proof: Suppose attains equality in (57) and (58), i.e., acorner point of the constraint set. Note that the elements of ,the bandwidths allocated to each subnetwork, which means toeach flow class, are equal to the total bandwidth received by thecorresponding flow class at the NE of the untolled single net-work game. Also, from (61) and (55), the optimal entrance tollin each subnetwork drops to zero. Then, . Hence,we conclude that .Note that is strictly concave, and hence (63) has a

unique maximizer. When (64) holds true, the unique maximizerlies in the interior of the constraint set of (63). Then, ,which completes the proof.Next, we derive a bound on the efficiency of the multitier

tolling scheme. Let

(65)

where . Then, we claim that

(66)

where is the efficiency of single tier scheme without tolling.The claim can be proved as follows. Let for all

. Then, lies in the feasible set of theoptimization problem (63). Then, . It can be shownthat , where is given by (48). Therefore,

. Also, from Proposition 15, we get that .Together, we get the claim.Note that does not depend on the ratio , but it scales

up with the number of classes in the system. Nevertheless, isno more than the efficiency of the single-tier networks withouttolling. Therefore, we conclude that when the number of classesin the system is not arbitrarily large, the efficiency of multitiertolling schemes are superior to the single-tier networks and itdoes not scale up with the ratio . Note that there might beNash equilibria other than the one stated by Lemma 14. There-fore, (66) may be better than the efficiency of the worst Nashequilibrium. Now, we present a numerical example to validateour analytical observations.Example 5: Let two flow classes, namely Class 1 and Class 2,

with disutility thresholds and share a link withcapacity units. The link is partitioned into two subnetworks,namely and . Let be the number of flows in Class anddefine , for . The optimal bandwidth

Fig. 7. Comparison of efficiency ratio between PMP scheme and game ina network with price-insensitive flows and delay-sensitive flows. Since and

were negative in this example, a higher ratio is worse.

allocation to subnetwork , which maximizes the system valuewith tolling, is given by

Also, the optimal toll in is given by. Note that

has no entrance toll, and the optimal allocation to is. We define efficiency ratio here as the ratio of

system value with tolling to social optimum . From(60) and (from (48)), we can show that

where .In Fig. 7, we have compared attained using the PMP scheme

versus that of a single-tier. We have used , ,and in our simulation. We observe that in spiteof tolling, the PMP scheme always performs better than thesingle-tier scheme. Also, note that, unlike the single tier scheme,the efficiency of the PMP scheme does not scale with .

IX. CONCLUSION

In this paper, we examined the consequences of the idea thata protocol is simply a way of interpreting Lagrange multipliers.We showed that flows could choose the interpretations, basedon criteria such as delay or loss sensitivity. We determined thesocially optimal protocol, as well as the choice that would resultby flows taking their own selfish decisions. We showed that thesocial good is maximized by using the strictest possible price in-terpretation. However, based on different mixes of flow types,a mix of interpretations could be the Nash equilibrium state.We characterized the loss of efficiency for some specific casesand showed that a multitier network with tolling is capable ofachieving superior system value. The result suggests the consid-eration of multiple tolled virtual networks, each geared toward

RAMASWAMY et al.: MUTUAL INTERACTION OF HETEROGENEOUS CONGESTION CONTROLLERS 469

a particular kind of flow. In the future, we propose to explorethe idea of virtual, tolled subnetworks further.

APPENDIX

Proof of Lemma 13: The Nash equilibrium conditions (51)are equivalent to

(67)

which follows from the definition of given by (54). Recallthe definitions of and from (55) and (56), respectively.Therefore, we prove the lemma by showing that (67) holds truewhen (57)–(59) are satisfied.Suppose (57)–(59) are true. Then, it is easy to observe that

. Also, we have

(68)

From the definitions of ’s and the fact that if ,it is easy to show that

(69)

for and . Then, we have

(70)

In a similar fashion, we can show that . Then,(67) is proved and hence the lemma.

REFERENCES[1] F. P. Kelly, A. Maulloo, and D. Tan, “Rate control in communication

networks: Shadow prices, proportional fairness and stability,” J. Oper.Res. Soc., vol. 49, pp. 237–252, 1998.

[2] S. H. Low and D. E. Lapsley, “Optimization flow control. I: Basic al-gorithm and convergence,” IEEE/ACM Trans. Netw., vol. 7, no. 6, pp.861–875, Dec. 1999.

[3] S. Kunniyur and R. Srikant, “A time-scale decomposition approach toadaptive ECN marking,” in Proc. IEEE INFOCOM, Anchorage, AK,USA, Apr. 2001, pp. 1330–1339.

[4] R. Srikant, The Mathematics of Internet Congestion Control. Cam-bridge, MA, USA: Birkhauser, 2004.

[5] S. Shakkottai and R. Srikant, “Network optimization and control,”Found. Trends Netw., vol. 2, no. 3, pp. 271–379, 2008.

[6] R. Stevens, TCP/IP Illustrated, Volume 1. Reading, MA, USA: Ad-dison-Wesley, 1994.

[7] T. Kelly, “Scalable TCP: Improving performance in highspeed widearea networks,” Dec. 2002.

[8] D. X. Wei, C. Jin, S. H. Low, and S. Hegde, “FAST TCP: Motivation,architecture, algorithms, performance,” IEEE/ACM Trans. Netw., vol.14, no. 6, pp. 1246–1259, Dec. 2006.

[9] S. Liu, T. Başar, and R. Srikant, “TCP-Illinois: A loss and delay-basedcongestion control algorithm for high-speed networks,” in Proc. 1stValuetools, Pisa, Italy, Oct. 2006, Art. no. 55.

[10] A. Tang, J. Wang, S. Hegde, and S. Low, “Equilibrium and fairness ofnetworks shared by TCP Reno and Vegas/FAST,” Telecommun. Syst.,vol. 30, no. 4, pp. 417–439, 2005.

[11] A. Tang, J. Wang, S. Low, and M. Chiang, “Equilibrium of hetero-geneous congestion control: Existence and uniqueness,” IEEE/ACMTrans. Netw., vol. 15, no. 4, pp. 824–837, Aug. 2007.

[12] A. Tang, X. Wei, S. Low, and M. Chiang, “Equilibrium of heteroge-neous congestion control: Optimality and stability,” IEEE/ACM Trans.Netw., vol. 18, no. 3, pp. 844–857, Jun. 2010.

[13] J. Mo, R. La, V. Anantharam, and J. Walrand, “Analysis and compar-ison of TCP Reno and Vegas,” in Proc. IEEE INFOCOM, 1999, pp.1556–1563.

[14] E. Altman, R. El-Azouzi, Y. Hayel, and H. Tembine, “The evolutionof transport protocols: An evolutionary game perspective,” Comput.Netw., vol. 53, no. 10, pp. 1751–1759, 2009.

[15] M. Podlesny and S. Gorinsky, “RD network services: Differentiationthrough performance incentives,” Comput. Commun. Rev., vol. 38, no.4, pp. 255–266, 2008.

[16] J. Mo and J. Walrand, “Fair end-to-end window-based congestion con-trol,” IEEE/ACM Trans. Netw., vol. 8, no. 5, pp. 556–567, Oct. 2000.

[17] A. M. Odlyzko, “Paris Metro Pricing for the internet,” in Proc. ACMEC, 1999, pp. 140–147.

[18] S. Shakkottai, R. Srikant, A. Ozdaglar, and D. Acemoglu, “The price ofsimplicity,” IEEE J. Sel. Areas Commun., vol. 26, no. 7, pp. 1269–1276,Sep. 2008.

[19] C.-K. Chau, Q.Wang, and D.-M. Chiu, “On the viability of Paris MetroPricing for communication and service networks,” in Proc. IEEE IN-FOCOM, San Diego, CA, USA, Mar. 2010, pp. 1–9.

Vinod Ramaswamy received the Bachelor ofEngineering degree in electronics and communica-tion from Kerala University, Thiruvananthapuram,India, in 2004, and the M.Tech. degree in electricalengineering, with specialization in communicationsystems, from the Indian Institute of Technology,Madras, India, in 2006, and is currently pursuing thePh.D. degree electrical engineering at Texas A&MUniversity, College Station, TX, USA.His research interests include game theory, opti-

mization methods, and their application to communi-cation networks.

Diganto Choudhury received the Bachelor of Sci-ence degree in electrical engineering with a minor inmathematics from Texas A&M University, CollegeStation, TX, USA, in 2012.He has received the distinction of Undergraduate

Research Fellow and Engineering Scholar. He is cur-rently working with Maxim Integrated, Dallas, TX,USA. His research interests include peer-to-peer sys-tems, queuing theory, connection between informa-tion theory and electromagnetic theory, and conges-tion control.

Srinivas Shakkottai (S’00–M’08) received theBachelor of Engineering degree in electronics andcommunication engineering from the BangaloreUniversity, Bangalore, India, in 2001, and the M.S.and Ph.D. degrees in electrical engineering fromthe University of Illinois at Urbana–Champaign,Urbana, IL, USA, in 2003 and 2007, respectively.He was a Postdoctoral Scholar with Stanford Uni-

versity, Stanford, CA, USA, until 2007. He is cur-rently an Assistant Professor with the Department ofElectrical and Computer Engineering, Texas A&M

University, College Station, TX, USA. His research interests include contentdistribution systems, pricing approaches to network resource allocation, gametheory, congestion control, and the measurement and analysis of Internet data.Dr. Shakkottai has received the Defense Threat Reduction Agency Young In-

vestigator Award in 2009 and the NSF Career Award in 2012, as well as researchawards from Cisco in 2008 and Google in 2010.


Recommended