network-assisted mobile computing with optimal uplink query processing

14
Network-Assisted Mobile Computing with Optimal Uplink Query Processing Carri W. Chan, Member, IEEE, Nicholas Bambos, Member, IEEE, and Jatinder Pal Singh, Member, IEEE Abstract—Many mobile applications retrieve content from remote servers via user generated queries. Processing these queries is often needed before the desired content can be identified. Processing the request on the mobile devices can quickly sap the limited battery resources. Conversely, processing user queries at remote servers can have slow response times due communication latency incurred during transmission of the potentially large query. We evaluate a network-assisted mobile computing scenario where midnetwork nodes with “leasing” capabilities are deployed by a service provider. Leasing computation power can reduce battery usage on the mobile devices and improve response times. However, borrowing processing power from mid-network nodes comes at a leasing cost which must be accounted for when making the decision of where processing should occur. We study the tradeoff between battery usage, processing and transmission latency, and mid-network leasing. We use the dynamic programming framework to solve for the optimal processing policies that suggest the amount of processing to be done at each mid-network node in order to minimize the processing and communication latency and processing costs. Through numerical studies, we examine the properties of the optimal processing policy and the core tradeoffs in such systems. Index Terms—Dynamic programming (DP), network-assisted mobile computing, network optimization Ç 1 INTRODUCTION T HE processing and storage capabilities of mobile consumer devices are becoming increasingly powerful. A gamut of new mobile applications has thus emerged for providing a better quality of experience for the end users. A class of such applications commonly referred to as mobile augmented reality [1], [2], [3] includes ones that enable delivery of content in response to the user-generated queries for enhancing user’s experience of the environment. Text to speech conversion and optical character recognition (OCR)-based applications for mobile devices follow a similar paradigm. Several interesting usage scenarios thus arise. A user clicks a picture or shoots a video of a desired object-a building, painting in a museum, a CD cover, or a movie poster through a camera phone. The video or image is then processed and sent over the network to an application server (AS) hosting a database of images. The extracted query image is then matched with a suitable entry and the resulting content-object information, location, title song from a CD, or movie trailer-is then streamed back to the user. A number of existing commercial products provide this type of service [4], [5], [6]. The processing of query image or video on the phone often involves computationally demanding processes like pattern recogni- tion, background extraction, feature extraction, and feature matching [7], [8], [9], [10], which when done often can diminish the battery lifetime of the mobile device. Similarly running a text to speech conversion application or an OCR engine for usage scenarios such as listening to a book on mobile device while driving or text extraction from pictures is computationally and battery intensive. Alternatively, the raw data could be transmitted to the application server where the processing could be done. However this would increase the bandwidth demand over the network with several users using such an application and competing for spectrum along with voice and data traffic generated by users of the wireless network. The first- hop wireless link between the mobile device and base station (BS) is often bandwidth constrained and backhaul connections in mobile networks have high capital and operation expenditures per bit. Several wireless carriers have also reported a staggering increase in data traffic over mobile networks because of unprecedented use of mobile data applications [11], [12]. Backhaul links that carry the traffic from edges to the core using copper, fiber or wireless links are associated with significant cost for the carriers [13], [14]. Moreover, the transmission latency on the uplink will be higher as larger query data are transmitted through the network. Thus, there is an inherent tradeoff between battery usage and latency. As mobile devices become more sophisticated with higher resolution image and video capabilities, the query data will continue to grow resulting in more demand for intelligent navigation of this tradeoff. Consider the scenario in Fig. 1. A user request originates at the Mobile Station (MS). In order to be completed, the request must be transmitted upstream to a remote Application Server via a Base Station and a series of relay nodes. We refer to the node at the first hop as the base station, but emphasize that the links between the BS, relay nodes, and AS may be IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013 1065 . C.W. Chan is with the Division of Decision, Risk and Operations, Columbia Business School, 3022 Broadway, Uris Hall 410, New York, NY 10027. E-mail: [email protected]. . N. Bambos is with the Departments of Electrical Engineering and Management Science and Engineering, Stanford University, 350 Serra Mall, Stanford, CA 94305. E-mail: [email protected]. . J.P. Singh is with the Palo Alto Research Center, Palo Alto, CA, and Stanford University, 215 Packard Electrical Engineering Building, 350 Serra Mall, Stanford, CA 94305. E-mail: [email protected]. Manuscript received 2 Oct. 2009; revised 30 Oct. 2010; accepted 7 Mar. 2012; published online 20 Mar. 2012. For information on obtaining reprints of this article, please send e-mail to: [email protected], and reference IEEECS Log Number TMC-2009-10-0401. Digital Object Identifier no. 10.1109/TMC.2012.79. 1536-1233/13/$31.00 ß 2013 IEEE Published by the IEEE CS, CASS, ComSoc, IES, & SPS

Upload: jatinder-pal

Post on 01-Mar-2017

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

Network-Assisted Mobile Computingwith Optimal Uplink Query Processing

Carri W. Chan, Member, IEEE, Nicholas Bambos, Member, IEEE, and

Jatinder Pal Singh, Member, IEEE

Abstract—Many mobile applications retrieve content from remote servers via user generated queries. Processing these queries is

often needed before the desired content can be identified. Processing the request on the mobile devices can quickly sap the limited

battery resources. Conversely, processing user queries at remote servers can have slow response times due communication latency

incurred during transmission of the potentially large query. We evaluate a network-assisted mobile computing scenario where

midnetwork nodes with “leasing” capabilities are deployed by a service provider. Leasing computation power can reduce battery usage

on the mobile devices and improve response times. However, borrowing processing power from mid-network nodes comes at a leasing

cost which must be accounted for when making the decision of where processing should occur. We study the tradeoff between battery

usage, processing and transmission latency, and mid-network leasing. We use the dynamic programming framework to solve for the

optimal processing policies that suggest the amount of processing to be done at each mid-network node in order to minimize the

processing and communication latency and processing costs. Through numerical studies, we examine the properties of the optimal

processing policy and the core tradeoffs in such systems.

Index Terms—Dynamic programming (DP), network-assisted mobile computing, network optimization

Ç

1 INTRODUCTION

THE processing and storage capabilities of mobileconsumer devices are becoming increasingly powerful.

A gamut of new mobile applications has thus emerged forproviding a better quality of experience for the end users. Aclass of such applications commonly referred to as mobileaugmented reality [1], [2], [3] includes ones that enabledelivery of content in response to the user-generatedqueries for enhancing user’s experience of the environment.Text to speech conversion and optical character recognition(OCR)-based applications for mobile devices follow asimilar paradigm. Several interesting usage scenarios thusarise. A user clicks a picture or shoots a video of a desiredobject-a building, painting in a museum, a CD cover, or amovie poster through a camera phone. The video or imageis then processed and sent over the network to anapplication server (AS) hosting a database of images. Theextracted query image is then matched with a suitable entryand the resulting content-object information, location, titlesong from a CD, or movie trailer-is then streamed back tothe user. A number of existing commercial productsprovide this type of service [4], [5], [6]. The processingof query image or video on the phone often involves

computationally demanding processes like pattern recogni-tion, background extraction, feature extraction, and featurematching [7], [8], [9], [10], which when done often candiminish the battery lifetime of the mobile device. Similarlyrunning a text to speech conversion application or an OCRengine for usage scenarios such as listening to a book onmobile device while driving or text extraction from picturesis computationally and battery intensive.

Alternatively, the raw data could be transmitted to theapplication server where the processing could be done.However this would increase the bandwidth demand overthe network with several users using such an applicationand competing for spectrum along with voice and datatraffic generated by users of the wireless network. The first-hop wireless link between the mobile device and basestation (BS) is often bandwidth constrained and backhaulconnections in mobile networks have high capital andoperation expenditures per bit. Several wireless carriershave also reported a staggering increase in data traffic overmobile networks because of unprecedented use of mobiledata applications [11], [12]. Backhaul links that carry thetraffic from edges to the core using copper, fiber or wirelesslinks are associated with significant cost for the carriers [13],[14]. Moreover, the transmission latency on the uplink willbe higher as larger query data are transmitted through thenetwork. Thus, there is an inherent tradeoff between batteryusage and latency. As mobile devices become moresophisticated with higher resolution image and videocapabilities, the query data will continue to grow resultingin more demand for intelligent navigation of this tradeoff.

Consider the scenario in Fig. 1. A user request originates atthe Mobile Station (MS). In order to be completed, the requestmust be transmitted upstream to a remote ApplicationServer via a Base Station and a series of relay nodes. We referto the node at the first hop as the base station, but emphasizethat the links between the BS, relay nodes, and AS may be

IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013 1065

. C.W. Chan is with the Division of Decision, Risk and Operations,Columbia Business School, 3022 Broadway, Uris Hall 410, New York, NY10027. E-mail: [email protected].

. N. Bambos is with the Departments of Electrical Engineering andManagement Science and Engineering, Stanford University, 350 SerraMall, Stanford, CA 94305. E-mail: [email protected].

. J.P. Singh is with the Palo Alto Research Center, Palo Alto, CA, andStanford University, 215 Packard Electrical Engineering Building, 350Serra Mall, Stanford, CA 94305. E-mail: [email protected].

Manuscript received 2 Oct. 2009; revised 30 Oct. 2010; accepted 7 Mar. 2012;published online 20 Mar. 2012.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference IEEECS Log Number TMC-2009-10-0401.Digital Object Identifier no. 10.1109/TMC.2012.79.

1536-1233/13/$31.00 � 2013 IEEE Published by the IEEE CS, CASS, ComSoc, IES, & SPS

Page 2: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

wired or wireless. If the request processing is entirely done atthe MS, the limited battery power can be drained. On theother hand, if the processing is done at the AS, communica-tion latency can be high due to limited bandwidth of thewireless access link and large query size.

There are a number of systems which enable distributedprocessing across multiple nodes [15], [16], [17], [18], [19],[20], [21], [22], [23], [24]. We consider systems with leasingservers which are deployed at mid-network nodes to offerprocessing capability for the user queries before they reachthe AS. Deployment of servers by Akamai [25] constitutesan instance of server leasing capabilities in the network,where uplink queries requesting content are processedwithout these uplink data having to travel all the way tobackend servers. Content Centric Networking (CCN) [26]promulgates an architecture that optimizes uplink band-width by aggregating data interest queries on the uplink viaintermediate CCN-compliant node processing using name-based addressing internet data. An offshoot of the archi-tecture is deployment of intermediate node caches thatprocess queries for data and respond with content if theyhave it. Similar methodologies like transparent cachingwhere intermediate nodes in the network respond toqueries to data, fall in the intermediate leasing paradigms.

We consider how to utilize network assisted computingto alleviate the processing burden on the MS therebyreducing its battery consumption and extending its opera-tional lifetime. Leasing processing power from mid-net-work nodes can help lower communication latency becauserather than transmitting the entire, large request messageover multiple congested links to the AS, mid-networkprocessing will reduce the message size. Introducing theability to lease processing power from mid-network nodesbrings in the tradeoff of leasing cost. As discussed, batteryconsumption and latency can be reduced by leasingprocessing power. However, if leasing is costly because ofscarce processing capability available at the mid-networknodes or if the users are averse to their data being accessedby the leasing servers, then battery usage and latency willincrease. Depending on the relative costs between batteryusage, latency, and leasing, it may or may not be beneficialto lease. We examine these tradeoffs in this paper. Usingthe dynamic programming framework, we solve for theoptimal processing policies that suggest amount of proces-sing to be done at a node in the network. The optimizationobjective is to minimize the processing and communicationlatency and processing costs. We consider cases where theprocessing times and leasing costs have linear or concavevariation with the amount of processing and assessthe properties of the optimal processing policy and thecore tradeoffs between leasing cost, latency, batter power,and communication over the wireless access link.

1.1 Related Work

As mobile applications become more sophisticated anddemanding, system operators are utilizing the network toimprove service. A substantial amount of work hasexamined Network-Assisted Computing. However, themain distinction between the previous works and ours isthat we focus on allowing processing power to be leasedfrom mid-network nodes and how to make this decision inan optimal manner.

In [27], [28], [29], Network-Assisted Computing has beenexamined in the case of cache management. The focus ofthese works is to determine how to prefetch informationfrom a remote server in order to maximize quality ofservice. Due to the varying quality of the wireless channel,data may not be able to be retrieved at the precise instant itis needed. If that data are not available to the wirelessdevice when needed, the processor will idle until it can befetched. Prefetching is done in a manner to minimizeservice latency. These works focus on the downlinktransmission to make data available and minimize proces-sing times. In contrast, there are applications where the datanecessary to complete a request are too large to store at themobile device. In Mobile Augmented Reality applications, itis infeasible to store even part of the large databaserequired. In the applications we consider, we assume thatthe request must be transmitted uplink to an ApplicationServer in order to be fully satisfied. We focus on the uplinkscheduling of how much processing to perform at eachnode in order to minimize latency, battery usage, andleasing costs.

Even without the ability to lease processing power frommid-network nodes, limited battery resources present asubstantial challenge. For a survey of energy efficientprotocols for wireless networks, see [30] and the referencestherein. While batteries are becoming more efficient, thegrowing sophistication and abundance of applicationsmakes power saving necessary. There has been an extensivebody of research on reducing power usage via hardware(see [31], [32], [33], [34]) and software (see [35], [36]) design.These designs can significantly reduce the amount ofbattery resources required to process a request. However,a hardware design optimized for one application may behighly inefficient for another. A single device may have aMobile Augmented Reality application which requiresspeech processing, while another application requires videoprocessing. As the number of mobile applications increase,all options to save battery resources will prove to be useful.

In most standard Mobile Augmented Reality systems,processing is performed either entirely at the MobileStation, quickly draining its limited battery resource, orentirely at the Application Server, leading to large commu-nication delays. Most closely to our work is [31], [37], [38],[39], [40], [41]. These works examine load splitting whereprocessing is split between Mobile Station and ApplicationServer. In [37], [38], the potential battery savings by splittingprocessing between Mobile Station and Application Serverare examined experimentally. In [42], the tradeoff betweenbattery usage and latency is closely examined. Girod et al.provide an overview of these types of challenges in mobilevisual search [43]. Over a 3G network, the transmission of a50 kB image would timeout more than 10 percent of thetime while the transmission of a small 3-4 kB query vectornever timed-out. As the sophistication of mobile devices

1066 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013

Fig. 1. System Model: MS transmit data to the AS via the BS and relaynodes. The requested data are transmitted back to the mobile device.Links may be wired or wireless.

Page 3: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

increase, the tradeoff between latency and energy usagewill become more critical. A developer at oMoby stated thathigh latency is the main reason for the use of 50 kB queries,but they hope to eventually include high definition imagesand videos on the order to 1-2 MB.1 In these works, thedecision is between local and remote execution of proces-sing tasks. The networks considered are single hop whilewe consider multihop networks. The main distinctionbetween our work and these works is the idea ofcooperating with the mid-network nodes in order toimprove the battery versus latency tradeoff. Rather thanrelying solely on the Mobile Station and Application Serverto process a request, we allow for mid-network processing.In this work, an extension to [44], we introduce the idea of“leasing” processing power from mid-network nodes inorder to improve quality of service to users.

There has been a steady stream of work on developingsystems which allow leasing of processing power which werequire. These works focus on the software/OS implemen-tation of an “Active Network” where intermediary nodescan be used to perform computations [15], [16], [17], [18],[19]. As applications become more demanding and sophis-ticated, use of such Active Networks will significantlyimprove system performance. In contrast to this body ofwork which is primarily centered around system designand deployment, our work focuses how to use such systemin an efficient manner. Our work aims to develop asystematic framework to utilize the capabilities of inter-mediary nodes in such systems.

There has also been some work considering energy anddelay sensitive scheduling and partitioning of tasks incollaborative networks [20], [21], [22], [23], [24]. However,the tradeoffs considered in these works is quite differentfrom ours. The communications saving due to reducing thenumber of nodes to communication with comes at the costof reducing the lifetime of the network by draining batterypower at each additional node required for communicationand processing. In contrast, we do not affect the number ofnodes to transmit to, but are able to vary the amount ofinformation that is required to be transmitted by utilizingmid-network processing.

The rest of the paper proceeds as follows: In Section 2,we formally introduce the system model and the idea ofNetwork-Assisted Mobile Computing via leasing. In Sec-tion 3, we formulated the optimal processing problem as ashortest path problem and use Dynamic Programming tosolve for the optimal policy. While the optimal processingpolicy can be difficult to solve in general, we identify anumber of interesting and useful properties of the optimalpolicy in Section 4. In Section 5, we examine some of theseproperties via numerical analysis. Finally, we conclude inSection 6.

2 PROBLEM FORMULATION

A typical application where Network-Assisted MobileComputing would be useful is in media applications suchas Mobile Augmented Reality. Many mobile devices areequipped with a small camera. In Mobile AugmentedReality, a picture captured by a mobile device corresponds

to a request, such as streaming a desired video or audiostream to the mobile device. One of the main technicaldifficulties of MAR is matching the original picture to thedesired media content. A series of image processingtechniques are used to do this. The final step requiresmatching the processed image to the requested content in alarge database. It is often the case that this database is solarge it cannot feasibly be stored on the limited memory ofthe mobile device. Therefore, a request must be transmitteduplink to the Application Server. Once the request has beenfully processed, the desired content can be streameddownlink to the requesting handheld device. There hasbeen an extensive body of work focusing on the problem ofdownlink streaming of media content (see [45] andreferences therein). In this paper, we focus on the uplinktransmission and processing of a single original request.

The uplink pathway from MS to AS is shown in Fig. 2. Arequest originates at the Mobile Station. In order to locateand stream the desired content, a request message musttraverse multiple mid-network hops before arriving at theApplication Server. Due to the large file sizes (video/audiostreams) which the requests correspond to, as well as thevast number of these files, it is infeasible to store them all ona memory limited mobile device. As such, they are stored ina large database at the remote Application Server and therequest must be transmitted upstream in order to besatisfied. The request message must be processed (i.e.,speech processing or image processing, feature extraction,feature matching, etc.) before the media stream can betransmitted downstream. See Girod et al. for an overview ofthis process [43]. Some tasks are quite simple while othersare more complex. There are also a number of scalablemedia standards which allow simple transcoding by simplydiscarding bits [46], [47]. In current systems, all of thisprocessing is either done at the MS or the AS. The originalrequest message can be a very large image file andtransmitting it over multiple congested links to the AS willresult in large delays. If the request were processed prior totransmission, the information needed to be transmitted maybe smaller, significantly reducing the communication delay.However, limited computation power and battery resourcesmakes it undesirable to process the entire request at the MS.

The motivation of Network-Assisted Mobile Computingis to improve the Quality of Service of clients subscribing tomobile applications which are often computationally andmemory intensive. As the request message traverses net-work hops, we propose to allow for some processing tobe performed at these mid-network nodes. This willmitigate the power drain at the Mobile Station by alleviat-ing the amount of processing required to be executed on themobile device. Additionally, the large communicationdelays may be reduced as processing can reduce themessage size. The use of Network-Assisted Mobile Com-puting removes some of the processing burden off the

CHAN ET AL.: NETWORK-ASSISTED MOBILE COMPUTING WITH OPTIMAL UPLINK QUERY PROCESSING 1067

1. Private communications with developers at oMoby [6].

Fig. 2. System Diagram: A request originates at the MS and ittransmitted over a multihop network to the AS. Once the request hasreached the Application Server and has been fully processed, it can besatisfied.

Page 4: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

Mobile Station while reducing the size of the requestmessage, and in turn, reducing the communication delays.Certainly, “leasing” the processing power at the mid-network nodes does not come for free, and we examinehow to balance the battery life, latency, and leasing costs. Inorder to study these tradeoff, we must begin by defining thesystem which we are studying.

2.1 Request Size and Processing Model

A request originates at the Mobile Station. Each requestconsists of M stages of processing before the desiredcontent can begin streaming to the MS. For instance, Mcan represent the amount of time required to fully processthe request at the MS. Because the processing power at theMS may differ from that at the AS due to different processortypes and loads, M is not the amount of time required tofully process the request at the Application Server. There-fore, M is a normalized quantity which represents the totalamount of processing required to satisfy the request.Certainly M will depend on the particular request andtype of data that requires processing.

If z stages of processing have been performed, M � zstages remain. At each node, n, in the network, someprocessing 0 � �z �M � z can be executed. The processingtime required to do this is given by

�pð�z; nÞ;

which is dependent on the amount of processing performedas well at the node at which it is executed. In general, �p cantake on any functional form. However, we assume that forfixed n, �pð�z; nÞ is increasing in �z, which corresponds tolarger processing times as more processing is done.

As more processing is completed, the request message/query data will decrease in size. For instance, the originalimage may be reduced to a compressed image or an imagewith the background extracted after some processing isdone. In both cases, processing reduces the amount ofinformation that must be relayed to the Application Server tocomplete the request. Given that z stages of processing havebeen completed, the size of the request message is given by

V ðzÞ;

which is decreasing in z and is strictly positive. Thepositivity is required because, even if all processing iscompleted (z ¼M), a small message must be transmitted tothe Application Server so that it knows what content to beginstreaming downlink. Without the reception of a requestmessage, the Application Server cannot satisfy a request.

2.2 Networking Model

We now describe the network topology of the system weconsider. In order to emphasize the benefits of Network-Assisted Mobile Computing, we assume a tandem network.This allows us to utilize mid-network nodes withoutunnecessarily complicating the approach with routingdecisions, though our framework can be extended toincorporate them. Therefore, our system may reside in amuch more complex network with arbitrary topology;however, we will assume that the route from MobileStation to Application Server is known once the request ismade. This is equivalent to assuming the routes are fixed.

Because routes are fixed, we can model the network asan upstream path of N þ 1 network processing nodes intandem. The request originates at the wireless MobileStation and must traverse N links to reach the ApplicationServer. The first few hops may be wireless prior to reachingthe Base Station/Access Point that connects to the Internetand the next series of hops are wired along the Internet pathto the Application Server. At minimum, there is onewireless link between the Mobile Station and Base Station,but there may be others over wireless relays/sensors/etc.Also, at minimum, there is no wireline link; for instance, theApplication Server is colocated at the Base Station. How-ever, in general the wireline path to the Application Servercould be multihop.

Each link, n (connecting the nth and ðnþ 1Þst nodes), ischaracterized by the capacity of this link, cn, in bits persecond. Therefore, if a message with volume V bits istransmitted along the nth link, it requires V =cn seconds.Hence, the latency incurred on the nth link after z stages ofprocessing has been performed is

�cðz; nÞ ¼V ðzÞcn

:

It is easy to see that �c is decreasing in cn as the link becomesless congested. It is also decreasing in z since V ðzÞ isdecreasing in z as mentioned in Section 2.1.

Due to varying path loss, interference, and fading, awireless channel may be highly varied and randomlyvarying over time. A wired channel may also be varieddue to random congestion in the network. In order toaccount for this unavoidable physical phenomenon, weassume that the capacity of link n is a random variable withknown distribution. We make no assumptions on thisdistribution other than its expectation, E½cn�, exists and isfinite. Therefore, the communication time is a randomvariable with expectation:

E½�cðz; nÞ� ¼V ðzÞE½cn�

:

2.3 Leasing Model

Utilizing the processing power of intermediary nodes is themain idea behind Network-Assisted Mobile Computing.Leasing processing power from mid-network nodes can beextremely beneficial to reduce latency and to extend thebattery life of a mobile device. However, it comes with acost. These costs can capture the fee required to lease CPUpower from the mid-network nodes. Additionally, thesecosts may capture potential security risks by giving accessof client data to these nodes. Some operations, such astranscoding, can be done on encrypted data, while otherwould require decrypting the data [48], [49]. We representthese leasing costs by the following function which isdependent on the amount of processing done, �z, and thenode at which it is performed, n:

�ð�z; nÞ:

On a given node, n, � is increasing in �z, as it is more costlyto process more stages. More client data are available to theprocessing node which could be undesirable. Also, proces-sing more stages requires more processing time so that

1068 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013

Page 5: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

more power is expended and more congestion is cloggingthe processors at the mid-network node. If n ¼ 1, �represents the cost of processing on the Mobile Station. Sorather than encompassing leasing costs, which there arenone, it represents the cost of draining battery power aswell as tying up the MS processor and preventing the use ofother applications. Similarly, if n ¼ N þ 1, � represents thecost of processing at the Application Server. These costs donot represent leasing costs, as leasing cannot be done at theAS, but can represent the computation power required toprocess the request which prevents requests from otherclients from being completed in a timely manner.

The control dilemma we examine is how much proces-sing should be done at each node given the processinglatency, �p, communication latency, �c, and leasing costs, �.Note that we make no restrictions on the relationshipsbetween delay and costs. These relationships should beadjusted according to the types of customers of a particularapplication and network system. For instance, for customerswith strong aversion to delay and are willing to pay extrafor fast service, the leasing costs � will be small compared toany delay, �p and �c. The goal is to determine a computingand transmission control to minimize delay and costs.

3 OPTIMAL COMPUTING/TRANSMISSION CONTROL

In order to determine the optimal computing and transmis-sion control, we cast this as a shortest path problem and useDynamic Programming to find the optimal control [50].

The optimization problem we are trying to solve is tofind �zn, the amount of processing to do at node n given znstages have already been processed in order to minimize thetotal latency and processing costs. The total cost is given bythe processing latency, processing costs, and communica-tion latency. The goal is to minimize the expected costs toprocess the entire request.

min�zn

(XNþ1

n¼1

h�pð�zn; nÞ þ �n�ð�zn; nÞ

i

þXNn¼1

E½�cðV ðzn þ �znÞÞ�)

s:t:XNþ1

n¼1

�zn ¼M:

ð1Þ

In order to study the core tradeoffs we introduce a scalefactor, �n, to weigh the processing costs at each node. Forinstance, we can have �1 ¼ �, �Nþ1 ¼ 1, and �n ¼ � forn 6¼ 1; N þ 1. For � ¼ 0, there is no cost for draining batteryat the MS and for � !1 battery costs are extremelyexpensive and subsequently little, if any, processing shouldbe done at the MS. If � ¼ 0, leasing comes for free and weare mostly concerned with latency. Conversely, if �!1,then we are not concerned with latency and processingshould be done at the node with the lowest leasing costs.

We can solve the constrained optimization in (1) problemusing Dynamic Programming. To begin, we define the stateof the system as:

ðz; nÞ;

where 0 � z �M is the amount of processing that has

already been completed and n 2 f1; 2; . . . ; N þ 1g is the

node at which the request message is currently located.At each state ðz; nÞ, the control that needs to be selected

is �z 2 ½0;M � z�, the amount of processing to perform at

node n prior to transmitting the message uplink along the

nth link to the ðnþ 1Þst node. This decision results in

processing latency, �p, processing costs, �, and communica-

tion latency, �c. We can group these into latency (�p þ �c)and processing costs �. Executing this control changes the

system state to ðzþ �z; nþ 1Þ.Define the total expected cost-to-go under policy �

starting in state ðz; nÞ by

J�ðz; nÞ ¼ E"XNl¼n

n�pð�ðzl; lÞ; lÞ þ �n�ð�ðzl; lÞ; lÞ

þ �cðzl þ �ðzl; lÞ; lÞo

þ �pðM � zN;N þ 1Þ

þ �Nþ1�ðM � zN;N þ 1Þ#

¼XNl¼n

n�pð�ðzl; lÞ; lÞ þ �n�ð�ðzl; lÞ; lÞ

þE½�cðzl þ �ðzl; lÞ; lÞ�o

þ �pðM � zN;N þ 1Þ þ �Nþ1�ðM � zN;N þ 1Þ:

ð2Þ

Then, we can define J�ðz; nÞ as the minimum cost-to-go

given that z stages of processing have already been

completed and the request resides at node n. J�ðz; nÞ is

given by

J�ðz; nÞ ¼ min0��z�M�z

n�pð�z; nÞ þE

��cðzþ �z; nÞ

�þ �n�ð�z; nÞ þ J�ðzþ �z; nþ 1Þ

o:

ð3Þ

Once the request reaches the Application Server, the

remaining processing stages must be completed. Therefore,

it is easy to see that

J�ðz;N þ 1Þ ¼ �pðM � z;N þ 1Þ þ �Nþ1�ðM � z;N þ 1Þ: ð4Þ

The optimal policy can be calculated via backward

recursion and using (3) and (4).The total cost for servicing a request is given by J�ð0; 1Þ

as a request originates at the Mobile Station, node 1, and no

processing has been performed on it yet. This can be broken

into the different components of cost:

J�ð0; 1Þ ¼ CpLatency þ Cc

Latency þ �CLeasing þ �CBattery

¼ CLatency þ �CLeasing þ �CBattery;ð5Þ

where latency can be split into processing and communica-tions latency. The tradeoff factors, � and � shown heredemonstrate the competing objectives. For large �, battery isvery limited at the Mobile Station, and little processingshould be executed there. Conversely, if large � corre-sponds to large leasing costs and little, if any, processingpower should be leased from mid-network nodes.

CHAN ET AL.: NETWORK-ASSISTED MOBILE COMPUTING WITH OPTIMAL UPLINK QUERY PROCESSING 1069

Page 6: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

Define �z�n as the amount of processing done at stage n

under the optimal policy ��. Define z�n as the amount of

processing that has been completed prior to arrival at

node n. So,

J�ð0; 1Þ ¼XNþ1

n¼1

h�pð�z�n; nÞ þ �n�ð�z�n; nÞ

i

þXNn¼1

E

"V ðz�n þ �z�nÞ

cn

#:

ð6Þ

In general, it is difficult to determine the optimalprocessing policy in closed form. In Section 4, we discussproperties of the optimal control under different scenarios.For any cost functions, the optimal solution can be foundusing numerical analysis. In Section 5, we study the coretradeoffs in Network-Assisted Mobile Computing throughnumerical analysis.

4 PROPERTIES OF OPTIMAL CONTROL

The optimal solution of where to process the request, andhow much processing to do, is highly dependent on thefunctional form of the processing times (�p), leasing costs(�), message volume (V ), as well as communicationbandwidth (cn). However, we can identify some keystructural properties of the optimal policy. These propertiesallow us to determine the optimal processing policy undercertain circumstances.

4.1 Monotonicity

We begin by shown some monotonicity results of the

optimal value function and optimal processing/transmis-

sion policy.Intuitively, fewer processing stages that remain to be

completed will correspond to lower costs. The following

proposition formalizes this idea:

Proposition 1 (Monotonicity of J�). For fixed n, J�ðz; nÞ is

decreasing in z.

Proof. Suppose z < z0. Let ��0

correspond to the optimal

policy starting in state ðz0; nÞ. Now suppose in state ðz; nÞ,we use a policy ~� which mimics ��

0as long as z < M.

While z < M, the processing time and costs for the ~�

policy are equal to that of the ��0policy and 0 afterwards.

Likewise, the communication costs for the ~� policy for z

system will be less than those under the ��0

policy for the

z0 system. This is because at each node, the total amount

of processing completed for the z system is less than that

of the z0 system since z < z0 and the additional amount of

processing at each node is equal in each system. Because

V ðzÞ is decreasing in z, the communication latency is less.

Therefore, J ~�ðz; nÞ � J�ðz0; nÞ. The result follows by the

optimality of J�, J�ðz; nÞ � J ~�ðz; nÞ. tu

While one may expect a similar monotonicity result tohold for increasing n, in general it does not hold. It is easy tosee this if the processing time and costs at node n < n0 isvery small and at nodes m � n0 it is very large. Then, notbeing able to process any stages at n becomes very costly forthe system starting at ðz; n0Þ.

As the communication link between the Mobile Stationand the first network node degrades, communicationlatency will increase. By processing more stages at theMobile Station, the request size will decrease, subsequentlydecreasing the communication latency. Define �z�MS as thenumber of stages completed at the Mobile Station.

Proposition 2 (Monotonicity in c1). For fixed costs, �z�MS is

decreasing as the expected capacity of the first link, E½c1�,increases.

Proof. This is shown via a proof by contradiction. Considertwo systems with identical parameters and cost structures,except c1 < c01. Let J� and J�

0denote the optimal value

function for the c1 and c01 systems, respectively. Define�z�MS and �z�

0

MS as the number of stages processed at theMobile Station in each system. Assume that �z�MS < �z�

0

MS .

By the optimality of �z�MS :

J�ðz; 1Þ ¼ �pð�z�MS; 1Þ þ �1�ð�z�MS; 1ÞþE½�cðzþ ��MS; 1Þ� þ J�ðzþ ��MS; 2Þ� �pð�z�

0

MS; 1Þ þ �1�ð�z�0

MS; 1ÞþE½�cðzþ ��

0

MS; 1Þ� þ J�ðzþ ��0

MS; 2Þ;

which implies

�pð�z�MS; 1Þ � �pð�z�0

MS; 1Þ þ �1�ð�z�MS; 1Þ � �1�ð�z�0

MS; 1Þ� E½�cðzþ ��

0

MS; 1Þ� � E½�cðzþ ��MS; 1Þ�þ J�ðzþ ��0MS; 2Þ � J�ðzþ ��MS; 2Þ� 0;

ð7Þ

where the second inequality comes from the mono-tonicity of V and J� (Proposition 1) and recalling that�z�MS < �z�

0

MS .

Now, let � be the policy for the c01 system that uses ��MS

at ðz; 1Þ and the optimal ��0

after. Then,

J�0 ðz; 1Þ � J�ðz; 1Þ

¼ �pð�z�0

MS; 1Þ � �pð�z�MS; 1Þþ �1�ð�z�

0

MS; 1Þ � �1�ð�z�MS; 1Þþ E

��cðzþ �z�

0

MS; 1�� E

��cðzþ �z�MS; 1Þ

�þ J�ðzþ �z�0MS; 2Þ � J�ðzþ �z�MS; 1Þ� E

��cðzþ �z�

0

MS; 1�� E

��cðzþ �z�MS; 1Þ

�þ J�ðzþ �z�0MS; 2Þ � J�ðzþ �z�MS; 1Þ� 0;

ð8Þ

where the first inequality comes from (7) and the second

inequality comes for the monotonicity of V and J�. This

implies that under the c01 system, processing �z�MS stages

results in lower costs than processing �z�0

MS , which contra-

dicts the optimality of �z�0

MS . Therefore, �z�0

MS � �z�MS . tu

4.2 Linear Processing and Leasing Costs

Let’s consider that case of linear processing times and

leasing costs. Therefore, we can define:

�pð�z; nÞ ¼ kn�z;�n�ð�z; nÞ ¼ gn�z;

1070 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013

Page 7: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

for some kn and gn. Recall that the communication time isalready linear in the volume of data that must betransmitted. However, V ðzÞ is not necessarily linear.

For a general function for V ð�Þ, it is possible to determineif the processing power at an upstream node will never beleased. Let �n ¼ kn þ gn so that the total processing cost atnode n is:

Cpð�z; nÞ ¼ �pð�z; nÞ þ �n�ð�z; nÞ¼ �n�z¼ ðkn þ gnÞ�z:

�n is the incremental cost of completing one processingstage at node n. Because processing reduces the size of datathat must be transmitted (V ðzÞ is decreasing in z), there isalready a propensity to process at earlier nodes. So if thereis a node m < n where the processing costs are cheaper,�m < �n, then no processing will be done at node n.

Proposition 3 (Linear Costs). Suppose processing costs arelinear, such that Cpð�z; nÞ ¼ �n�z. Let �z�n denote the optimalamount of processing done at stage n under the optimal policystarting from state ð0; 1Þ. For all n, if there exists m < n suchthat �m < �n, then �z�n ¼ 0.

Proof. The proof is by contradiction. Suppose there existsm < n such that �m < �n and �z�n > 0. Now, consider apolicy ~� that mimics the �� policy, except at node m andn. Instead of processing �z�n at node n and �z�m at node m,~� processes �z�n þ �z�m at node m and 0 at node n. Because�m < �n, the processing costs under the ~� policy are lessthan that of the �� policy. Note also that the commu-nication latency under the ~� policy is lower than that ofthe �� policy since more processing is done earlier,making the size of the transmitted message smaller.Therefore, the total cost under the ~� policy is less thanthat of the �� policy, which contradicts the optimality ofthe �� policy. Hence, �z�n ¼ 0. tu

Even with the communication latency decreasing asmore processing is done, it is not the case that all processingwill necessarily be done at the Mobile Station. This isbecause processing costs may decrease as the messagetraverses network hops and so the increase in communica-tion latency is balanced by the decrease in processing costs(both latency and leasing).

If the message volume is a linear function of the numberof processing stages completed, then all processing will bedone at one node.

Proposition 4 (Linear costs and volume). Suppose processingcosts are linear, such that Cpð�z; nÞ ¼ �n�z. Additionally,assume that the message size is linear in the number of stagesprocessed, such that V ðzÞ ¼ V0 � hz. Let �z�n denote theoptimal amount of processing done at stage n under the optimalpolicy starting from state ð0; 1Þ. Then, there exists one node msuch that �z�m ¼M and for all other nodes n 6¼ m, �z�n ¼ 0.

Proof. We begin by showing that at any state ðz; nÞ, J� islinear in the number of stages processed, z. That is, thereexists �n and n, such that:

J�ðz; nÞ ¼ �nzþ n: ð9Þ

We show this by induction on n. This is clearly true ifn ¼ N because costs are linear, so:

J�ðz;NÞ ¼ �pðM � z;NÞ þ �N�ðM � z;NÞ¼ �NðM � zÞ¼ �Nzþ N;

ð10Þ

where �N ¼ ��N and n ¼ �NM.Now, we assume that J�ðz; nþ 1Þ is linear in z and

show that it holds for J�ðz; nÞ.

J�ðz; nÞ ¼ min�zf�pð�z; nÞ þ E

��cðzþ �z; nÞ

�þ �n�ð�z; nÞ þ J�ðzþ �z; nþ 1Þg

¼ min�z

��n�zþ

V0 � hðzþ �zÞE½cn�

þ �nþ1ðzþ �zÞ þ nþ1

�¼ min

�z

�a0n�zþ a1

nzþ a2n

�¼

a1nzþ a2

n; a0n > 0;

a0nðM � zÞ þ a1

nzþ a2n; a0

n � 0;

(

ð11Þ

for some constants a0n, a1

n, and a2n. We can see that J�ðz; nÞ

is clearly linear in z. Due to the linear dependence on zand �z, if a0

n � 0 then it is optimal to process allremaining stages at node n; otherwise, it is optimal toprocess none. This immediately yields the desired result.If there exists a node n where a0

n � 0, then all processingwill be performed at that node. If there are multiplenodes with a0

n � 0, then all processing will be performedat the earliest one. Now, if there are no nodes witha0n � 0, then no processing will be done at any noden < N þ 1. Since all processing must be completed inorder to process the request, all processing must be doneat node N þ 1, the Application Server. tuLinear costs are reasonable when processing is charged

on a per-stage basis. However, it is sometimes that case that“processing in bulk” may reduce costs. We now turn ourattention to this scenario where costs are concave.

4.3 Concave Processing Times and Leasing Costs

Let us consider the case where processing times and leasingcosts are concave functions in the number of stagesprocessed, so that

@2�p@�z2

< 0 and@2�

@�z2< 0:

For notational simplicity, let fnð�zÞ ¼ �pð�z; nÞ þ �n�ð�z; nÞ.It is easy to see that fn is also concave in �z.

Now suppose that the benefit of processing in bulk isdiminishing in n. That is,

maxz0

@2fn@�z2

�����z¼z0

� minz0

@2fnþ1

@�z2

�����z¼z0

and

@fn@�z

�����z¼0

� @fnþ1

@�z

�����z¼0

:

ð12Þ

CHAN ET AL.: NETWORK-ASSISTED MOBILE COMPUTING WITH OPTIMAL UPLINK QUERY PROCESSING 1071

Page 8: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

An example of these types of cost functions can be seen inFig. 3 where �ð�z; nÞ þ �n�ð�z; nÞ are quadratic functionsof �z. Each solid thick line corresponds to the cost ofprocessing on that node and the lighter lines correspondto the cost of processing on earlier nodes. We can see thatthe cost function for later node dominates that of theearlier nodes. Under examination of these functions, theincreasing costs of processing suggest that most proces-sing is performed at the first node. In fact, underconditions (12), it is optimal to process all stages at theMobile Station.

Proposition 5 (Concave Costs). If the first and secondderivatives of concave fn satisfies (12), then �z�MS ¼M andfor all n > 1, �z�n ¼ 0.

Proof. The proof of this claim is via by contradiction.Assume there exists some intermediary node m 6¼ 1 suchthat �z�m > 0. Now consider a policy ~� such ~�zn ¼ �z�n forall n 6¼ 1;m, while ~�z1 ¼ �z�1 þ �z�m, and ~�zm ¼ 0. That isinstead of following the optimal policy precisely, ~�processes the stages for node m at the Mobile Station. Let~zn and z�n denote the number of stages processed prior tonode n.

J ~�ð0; 1Þ ¼XNþ1

n¼1

½�pð ~�zn; nÞ þ �n�ð ~�zn; nÞ�

þXNn¼1

EV ð~zn þ ~�znÞ

cn

" #" #

¼XNþ1

n¼1

½fnð ~�znÞ� þXNn¼1

EV ð~zn þ ~�znÞ

cn

" #" #

¼XNþ1

n¼1

½fnð�z�nÞ� þXNn¼1

EV ð~zn þ ~�znÞ

cn

" #" #( )

þXn¼1;m

½fnð ~�znÞ � fnð�z�n; nÞ�

� J�ð0; 1Þ þXn¼1;m

½fnð ~�znÞ � fnð�z�nÞ�

� J�ð0; 1Þ:

ð13Þ

The first inequality comes from the fact that V isdecreasing in z and ~zn � z�n. The last inequality comesfrom the concavity property, (12), which implies thatP

n¼1;m½fnð ~�znÞ � fnð�z�nÞ� � 0. This contradicts the op-timality of J�, hence �z�m ¼ 0. tu

Using a similar argument, if

maxz0

@fn@�z

�����z¼z0

� minz0

@fnþ1

@�z

�����z¼z0

; ð14Þ

we can show the following proposition:

Proposition 6 (Increasing Costs). If the first derivative ofconcave fn satisfies (14), then �z�MS ¼M and for all n > 1,�z�n ¼ 0.

Proof. The proof of this claim is via a proof by contra-diction, similar to the proof of Proposition 5. Undercondition (14), (13) still holds. tu

If all processing costs and times are equal and concave,then fn ¼ f; 8n. In this case, fn clearly satisfies (12).

Proposition 7 (Identical Concave Costs). If �pð�z; nÞ ¼�pð�zÞ and �ð�z; nÞ ¼ �ð�zÞ for all n and �pð�Þ and �ð�Þ areconcave, then �z�MS ¼M and for all n > 1, �z�n ¼ 0.

Proof. This is a direct consequence of Proposition 5. tu

Now suppose that instead of all nodes satisfying (12),there exists a series of nodes m;mþ 1; . . . ;mn which satisfy(12). Then, if any processing is done on these nodes, it is alldone at node m.

Proposition 8 (Series of Concave Costs). If there existsm;mþ 1; . . . ;mn whose fm are concave and satisfy (12), then�z�n ¼ 0 and for all n 2 fmþ 1;mþ 2; . . . ;mng.

Proof. This can be shown via a proof similar to that ofProposition 5. We omit the details to avoid repetition andfor the sake of space. tu

A scenario where this may apply is if all intermediatenetwork nodes are identical. If the processing times andleasing costs on these nodes are concave and equal, thenm ¼ 2 and mn ¼ N . If any processing is leased, all of it isleased from the first intermediary node, m ¼ 2. Theremaining processing is done at the Mobile Station andApplication Server.

All of the preceding results corresponding to concavecost functions are independent of the volume function,V ðzÞ. It may very well be the case that processing times areconcave since processing multiple stages at once caneliminate some file input/output overhead. It is also likelythat the mid-network nodes will be identical, so thatProposition 8 will apply.

4.4 Constant Communication Times

In some cases, communication times may be independent ofthe message size. This may occur if the original messagesize (before processing) fits into the size of a single networkpacket. Often, a single packet is the finest granularity withwhich information can be transmitted. So, while furtherprocessing may reduce the message size, the amount ofinformation transmitted must be placed into a standardnetwork packet with padding if the message is very small.Hence, no matter how much processing is done, the

1072 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013

Fig. 3. Cost functions which exhibit diminishing benefits of processing inbulk. Each solid thick line corresponds to the cost of processing on thatnode. The lighter lines correspond to the cost of processing on priornodes.

Page 9: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

transmission times are given by the size of a networkpacket. Therefore, communication latency will be constantand independent of the policy and we can ignore commu-nication times in the optimization.

We can also ignore communication times if processingdoes not affect the query data size. For instance, ifprocessing corresponds to linear transformations of theoriginal image (rotation, wavelet decomposition, etc.) sothat processing requires time and computation power, butdoes not modify the amount of information that needs to betransmitted, then we can ignore communication times. Thisis because the total communication latency will beindependent of how much processing is done and at whichnode it is performed.

Here, we will assume that cn !1 so that �cðz; nÞ ! 0.

As we have mentioned, if �cðz; nÞ ¼ Kn is some constant

independent of z, then we can ignore it in the optimization

problem, so it is similar to assuming �cðz; nÞ ¼ 0 . We can

rewrite the optimization problem in (1) as:

min�zn

XNþ1

n¼1

½�pð�z; nÞ þ �n�ð�z; nÞ� þXNn¼1

Kn

( )

s:t:XNþ1

n¼0

�zn ¼M;

ð15Þ

which results in the same �z�n as the following constrained

minimization problem without communication costs:

min�zn

XNþ1

n¼1

½�pð�z; nÞ þ �n�ð�z; nÞ�

s:t:XNþ1

n¼0

�zn ¼M:

ð16Þ

Bellman’s equations can be rewritten as:

J�ðz; nÞ ¼ min0��z�M�z

f�pð�z; nÞ þ �n�ð�z; nÞ

þ J�ðzþ �z; nþ 1Þg:ð17Þ

Again, once the request reaches the Application Server, the

remaining processing stages must be completed

J�ðz;N þ 1Þ ¼ �pðM � z;N þ 1Þ þ �Nþ1�ðM � z;N þ 1Þ:ð18Þ

If �zn 2 ½0;M � z� can be fractional, the minimization

problem in (16) can be solved using Lagrangian techniques.

Proposition 9 (Constant Communication Costs). If for some

constant k > 0, �cðz; nÞ ¼ k for all z and n, there exists �

such that �z�n satisfies for all n:

@ð�p þ �n�Þ@�z

����z�n¼ �:

Proof. This can be shown via a proof by contradiction. Let’s

suppose that the claim does not hold true. Then, there

exists m and m0 such that:

�m ¼@ð�p þ �n�Þ

@�z

����z�m

<@ð�p þ �n�Þ

@�z

����z�m0¼ �m0 :

Define ~� as the policy which mimics the optimalpolicy ��, except at nodes m and m0. Therefore, ~�zn ¼��zn for all n 6¼ m;m0 and ~�zm ¼ ��zm þ and ~�zm0 ¼��zm0 � for some small > 0. For notational simplicitylet fð�z; nÞ ¼ �pð�z; nÞ þ �n�ð�z; nÞ.

J�ð0; 1Þ � J ~�ð0; 1Þ ¼XNþ1

n¼0

½fð�z�n; nÞ � fð~�zn; nÞ�

¼ �½fð�z�m þ ;mÞ � fð�z�m;mÞ�þ ½fð�z�m0 ;m0Þ � fð�z�m0 � ;m0Þ�

¼ � @ð�p þ �n�Þ@�z

����z�mþ @ð�p þ �n�Þ

@�z

����z�m0

¼ �m0 � �m> 0:

ð19Þ

This contradicts the optimality of J�. Therefore, theredoes not exist m;m0 such that �m < �m0 . tu

The lack of effect on communication delays generates avery interesting contrast to the optimal policies defined byconcave costs given in Section 4.3. Consider a system withthree nodes, a Mobile Station, a Base Station, and anApplication Server as in Fig. 4.

Suppose that costs are identical on each node so that forall n, �pð�z; nÞ ¼ �pð�zÞ and �n�ð�z; nÞ ¼ ��ð�zÞ. Therefore,the cost function at each node is fð�zÞ ¼ �pð�zÞ þ ��ð�zÞ.Let’s consider the case where there are nine processingstages and fð�zÞ is concave, as in Fig. 5. For this example,we consider the case of fð�zÞ ¼ 20�z� �z2, for �z 2 ½0; 9�.

Under variable communication costs, �c > 0, by Propo-sition 7, all processing is done at the Mobile Station, andno processing is done on other stages. Conversely, whencommunication costs are constant, �c ¼ k, Proposition 9implies that equal processing is done at the MS, BS, andAS. This is because the cost functions are identical, and sothe �z�n which achieves derivative � are identical. The twopolicies are compared in Fig. 6. Because of latency due tocommunication of the request message, there is apropensity to process stages at earlier nodes. This willreduce the message size and, in turn, the amount oflatency. However, when communication latency is not afactor, the location of each node is irrelevant-the influen-cing factor is the difference in incremental cost ofprocessing at each node.

4.5 General Costs

In general, communication latency will depend on therequest message size which depends on the amount ofprocessing completed. In this case, communication costs arenot negligible and optimality condition in Proposition 9must be relaxed.

CHAN ET AL.: NETWORK-ASSISTED MOBILE COMPUTING WITH OPTIMAL UPLINK QUERY PROCESSING 1073

Fig. 4. Simple System Diagram: A request originates at the MS and istransmitted over one hop to the BS and finally to the AS. Once therequest has reached the AS and has been fully processed, it can besatisfied.

Page 10: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

Proposition 10 (Nonnegligible Communication Costs). If

��n 6¼ 0;M, then �n is nonincreasing in nwhere �n is defined as:

@ð�p þ �n�Þ@�z

����z�n¼ �n:

Proof. This can be shown via a proof by contradiction

similar to the proof for Proposition 9. Let’s suppose that

the claim does not hold true. Then, there exists m and m0

such that, m < m0 and

�m ¼@ð�p þ �n�Þ

@�z

����z�m

<@ð�p þ �n�Þ

@�z

����z�m0¼ �m0 :

Again ~� mimics the optimal policy ��, except at nodes

m and m0. Therefore, ~�n ¼ ��n for all n 6¼ m;m0 and ~�m ¼��m þ and ~�m0 ¼ ��m0 � for some small > 0. Define ~znand z�n as the amount of processing that has been

completed up to and including node n under policy ~�

and ��, respectively. Note that by the definition of ~� and

��, ~zn � z�n because processing is done earlier under the ~�

policy. Again, let f ¼ �p þ ��

J�ð0; 1Þ � J ~�ð0; 1Þ

¼(XNþ1

n¼0

fð�z�n; nÞ þXNn¼0

�cðz�n; nÞ)

�(XNþ1

n¼0

fð ~�zn; nÞ þXNn¼0

�cð~zn; nÞ)

¼ � @ð�p þ �n�Þ@�z

����z�mþ @ð�p þ �n�Þ

@�z

����z�m0

þXNn¼0

½�cðz�n; nÞ � �cð~zn; nÞ�

¼ �m0 � �m

þXNn¼0

½�cðz�n; nÞ � �cð~zn; nÞ�

> �m0 � �m> 0:

ð20Þ

The first inequality comes because ~zn � z�n and because �cis decreasing in z as described in Section 2.2. Thiscontradicts the optimality of J�. Therefore, there does notexist m < m0 such that �m < �m0 . tuThe communication latency has a significant affect on the

optimal processing policy which we saw in our examplewith quadratic processing costs in Fig. 5. It is easy to see inFig. 6 that with nonnegligible communication times, �c > 0,�n is nondecreasing in n, which seems to contradictProposition 10. However, it does not because ��1 ¼ 9 ¼Mand ��2 ¼ ��3 ¼ 0. These boundary cases make it impossibleto use the interchange to policy ~� because we cannotincrease ��1 nor can we decrease ��2 or ��3.

5 NUMERICAL ANALYSIS

In the previous section, we identified special properties ofthe optimal processing policy under various scenarios. Wenow examine some of these properties through numericalstudies with example cost functions and systems. Latency,battery usage, and leasing costs have a tightly wovenrelationship. Increasing battery usage will decrease latencyand leasing costs, but also limits the lifetime of the mobiledevice. Conversely, the lifetime of the device can beextended by increasing leasing costs which will decreaselatency and battery usage.

For our studies, we assume a request requires 10 stagesof processing. The size of the original request is 500 kilo-bytes (roughly the size of a JPEG image) and aftercompleting all stages of processing, it is 1,000 bytes, for areduction in size by a factor of 500. Note that this query maybe a JPEG image, short video or audio clip, or some othertype of data. The decrease in request size is quadratic in thenumber of stages that have been completed, z, so thatV ðzÞ ¼ 5ðz� 10Þ2 þ 1 kilobytes. The processing time islinear in the number of stages completed and is dependenton the node it is being processed on, so that �pð�z; nÞ ¼ kn�zfor some set of kn.

1074 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013

Fig. 5. Cost Function: total processing latency and costs as a function ofamount of processing completed.

Fig. 6. Optimal processing policy for �c > 0 varying (top) and �c ¼ kconstant (bottom).

Page 11: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

We consider a network with 10 nodes, including theMobile Station and Application Server. Therefore, there areeight intermediary nodes where processing power canbe leased. Each midnetwork is identical in that theprocessing time and leasing costs are identical. We alsoassume they are linear in the number of stages processed sothat, for n 6¼ 1; N þ 1, �pð�z; nÞ ¼ k�zn and �ð�z; nÞ ¼ g�zn. Inthis case, Proposition 8 applies to the series of mid-networknodes. Therefore, if any processing is leased, then it will allbe leased from the first intermediary node, node n ¼ 2.

We examine the case where the leasing costs � ¼ 1 for alln. Therefore, the resulting leasing cost is equal to thenumber of processing stages leased. The processing time forone stage at the Mobile Station is 100 milliseconds, while itis a constant ratio less, 100

r < 100 ms, at the intermediarynodes, and 100

r2 ms at the Application Server. The bandwidthof the wireless links is uniformly distributed between 5-10 Mbits/second.

In Fig. 7, we see the tradeoff between leasing, in terms ofthe number of processing stages performed on mid-networknodes, and latency, in terms of processing and communica-tion time in seconds, for different amounts of battery usage,in terms of number of stages processed on the MobileStation. As expected, as the battery usage increases, leasingand latency both decrease. Despite the slow processingtimes at the Mobile Station, processing stages at the MS canstill reduce latency because of the decrease in communica-tion latency that comes with reducing the message size. Inthis case, the reduction in communication latency is largerthan the increase in processing latency. It’s interesting tonote that for extremely delay sensitive applications whereresponse times must be around one second, leasing shouldbe done very aggressively. In fact, all remaining processingshould be leased from the intermediary nodes in order toavoid high delays due to communication over the poten-tially congested wireless links.

In some instances, the first link may be highly congestedand processing at the Mobile Station becomes imperativeotherwise large delays will ensue. This particularly mayoccur if the Base Station is also the Access Point to the wired

network. Therefore, the connection between MS and firstnode is wireless, while the rest of the links are wired withmuch larger capacity. In Fig. 8, we see how the amount ofprocessing done on the MS varies with the averagethroughput of the first hop between MS and intermediarynodes. As given by Proposition 2, the number of stagesprocessed on the Mobile Station, and subsequently theamount of battery energy that is drained, decreases asthe quality of the first communication link improves. As thechannel improves, even large messages can be transmittedwithout incurring large communication delays. Therefore,in order to save battery power, less processing is done at theMS while communication latency is not vastly affected.When the channel quality is very high, no processing willbe performed at the MS. Each line corresponds to different� values to weight the importance between leasing costsand latency. For larger �, leasing becomes more expensiveand less desirable. Therefore, to avoid lengthy delays due tothe transmission of such a large file, more processing mustbe done at the MS to reduce the size of the request message.

Query sizes may vary due to the diversity in mobiledevices and applications. We explore how the tradeoffbetween leasing and latency and the battery usage versusthroughput of the first network hop changes with the size ofthe original query request. We consider the same scenario asbefore; however, we vary the size of the original requestvaries from 500 to 50 kilobytes. There are still 10 stages ofprocessing and after completing all stages, the request isreduced to 1,000 bytes. Hence, after z stages have beencompleted: V ðzÞ ¼ V ðz� 10Þ2 þ 1 for V ¼ 500; 250; 100; 50.Fig. 9 is analogous to Fig. 7 with battery usage b ¼ 2 andvarying file sizes. We can see that even with smaller initialfile sizes, leasing is still used sometimes, though much lessfrequently than when the file size is large. Fig. 10 isanalogous to Fig. 8 with tradeoff factor � ¼ :25 and varyingfile sizes. As expected, with smaller file sizes, there is lessbattery usage for the same throughput of the first hop link.We see that even for the smallest original file size, 50 kilo-bytes, some processing may be done at the base stationwhen the throughput is very low and communicationlatency is high. Despite the quantitative differences which

CHAN ET AL.: NETWORK-ASSISTED MOBILE COMPUTING WITH OPTIMAL UPLINK QUERY PROCESSING 1075

Fig. 7. Leasing versus Latency for different number of stages (b)processed on the battery limited Mobile Station, i.e., b ¼ 0 means nostages are processed at the MS.

Fig. 8. Battery Usage versus c1, throughput of first network hop. Forvarious tradeoff levels between Leasing costs and Latency.

Page 12: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

arise for varying query sizes, we can see that the funda-mental tradeoffs which we have discussed in this paper areirrespective of the specific file size. For all subsequentnumerical experiments, we assume that V ¼ 500 so that theoriginal query size is 500 kilobytes, recognizing that thequalitative results will hold for other query sizes.

Processing times on the nodes vary due to the differenttypes of processors they may have. For instance, theprocessor in the Mobile Station may be very limitedcompared to that of the remote Application Server whichmay have access to a high powered rack of CPUs. Because�pð�z; 1Þ ¼ 100�z ms, �pð�z; nÞ ¼ 100

r �z ms (n 6¼ 1; N þ 1), and�pð�z;N þ 1Þ ¼ 100

r2 �z ms, r captures the variance betweenthese processing times. The larger the value of r, the moredisparate the processing times on each node. Becausethe processing times per stage improve from the MS tothe intermediary nodes to the AS, one suspects that as r

increases, latency will decrease significantly. Fig. 11 showsthis trend when no processing is done at the MS. It isinteresting to note that when jumping from r ¼ 1 to r ¼ 2the decrease in latency is much more significant than thejump from r ¼ 4 to r ¼ 20. Despite the fact that the increasein r corresponds to a decrease in delay, for very large r, the

delay is mostly due to communication of the request

message rather than processing times.We now consider nonlinear processing costs in the case

of four network nodes, two from which processing power

can be leased. The following experimental setup is identical

as before; however, now �ð�z; nÞ ¼ �nð20�z� �z2Þ where

�1 ¼ 1, �2 ¼ 13 , �3 ¼ 1

4 , and �4 ¼ 110 . Figs. 12 and 13 show the

optimal leasing versus latency tradeoff for various battery

usages for the first and second mid-network nodes,

respectively. Because �3 < �2, the leasing costs on the

second mid-network node is less than that for the first

mid-network node. However, due to communications

latency, the first midnetwork may still be used. We can

see that in order to decrease latency, more processing

should be performed at the first mid-network node.

Conversely, if leasing costs are more important than

latency, it is beneficial to incur an increase in communica-

tion latency in order to process at the second mid-network

node for lower costs.

1076 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013

Fig. 9. Leasing versus Latency for different files sizes (V ).

Fig. 10. Battery Usage versus c1, throughput of first network hop. Forvarious tradeoff levels between Leasing costs and Latency.

Fig. 11. Leasing versus Latency for various values of the ratio betweenprocessing times on each node, 1

r .

Fig. 12. Concave costs: Leasing of first mid-network node versusLatency for different number of stages (b) processed on the batterylimited Mobile Station, i.e., b ¼ 0 means no stages are processed atthe MS.

Page 13: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

We have seen that battery usage, latency (both due toprocessing and communication), and leasing costs arehighly intertwined. These costs are also highly dependenton system parameters such as communication bandwidth;processor speeds at the MS, AS, and intermediary nodes; aswell as request message size as a function of the number ofstages processed. By studying these tradeoffs, we can gain abetter understanding of the relationships between eachcost. This knowledge will help future system design. Froma user’s perspective, one must determine how muchprocessing power to lease from mid-network nodes inorder to satisfy delay constraints and extend battery life.From a network administrator’s perspective, one mustdetermine how much to charge for leasing processingpower in order to encourage users to use the new featurewhile generating revenue.

6 CONCLUSION

The popularity of mobile applications is steadily increasing.Many of these applications require significant computationpower, especially in the case of multimedia applications. Asthe demand, as well as the sophistication and requiredcomputation power, for these types of applications in-creases, battery and communication bandwidth limitationsmay prevent the use of many of these applications. By“leasing” processing power from mid-network nodes, thebattery drain and communication latency may be dimin-ished. Network-Assisted Mobile Computing can helpalleviate the processing burden off the Mobile Stationwithout increasing the service latency. Using DynamicProgramming, we identified the optimal processing policy.We identified some important properties of the optimalpolicy which can be used to guide future system design.Through numerical studies we examine the core tradeoffsand relationships between battery usage, latency, andleasing costs.

A number of factors must be considered for deploymentof such a network-assisted mobile computing system. While

there exist technology for collaborative networks, one must

consider the amount of processing and data that will be

permitted to be shared at mid-network nodes. If high

security is required, there may be additional costs required

to handle mid-network processing. The design challenges

will be application and system dependent. For instance, if

the processing only requires transcoding, this can be done

on fully encrypted data by simply dropping packets,

making mid-network processing simple and secure [48],

[49]. However, it is certainly the case that query partitioning

will be limited if the data must remain encrypted during the

whole query processing. Much as transcoding encrypted

media has been an interesting area of research, one may

want to consider developing processes which allow for

other query processing on encrypted data.

REFERENCES

[1] T. Yeh, K. Tollmar, and T. Darrell, “Searching the Web withMobile Images for Location Recognition,” Proc. IEEE CS Conf.Computer Vision and Pattern Recognition (CVPR), vol. 2, pp. 76-81,July 2004.

[2] G. Fritz, C. Seifert, and L. Paletta, “A Mobile Vision System forUrban Detection with Informative Local Descriptors,” Proc. IEEEInt’l Conf. Computer Vision Systems (ICVS), p. 30, Jan. 2006.

[3] H. Bay, B. Fasel, and L.V. Gool, “Interactive Museum Guide: Fastand Robust Recognition of Museum Objects,” Proc. First Int’lWorkshop Mobile Vision (IMV), May 2006.

[4] “Snaptell Part of A9,” http://www.snaptell.com, 2012.[5] “Amazon App for iPhone and iPod Touch,” http://www.

amazon.com/gp/feature.html?ie=UTF8&docId=1000291661,2012.

[6] “oMoby,” http://www.omoby.com, 2012.[7] D. Chen, S. Tsai, V. Chandrasekhar, G. Takacs, J.P. Singh, and B.

Girod, “Robust Image Retrieval Using Scalable Vocabulary Trees,”Proc. Visual Comm. and Image Processing Conf. (VCIP), 2009.

[8] D. Chen, S. Tsai, V. Chandrasekhar, G. Takacs, J.P. Singh, and B.Girod, “Tree Histogram Coding for Mobile Image Matching,”Proc. IEEE Data Compression Conf. (DCC), pp. 143-152, 2009.

[9] V. Chandrasekhar, G. Takacs, D. Chen, J.P. Singh, and B. Girod,“Transform Coding of Image Feature Descriptors,” Proc. VisualComm. and Image Processing Conf. (VCIP), 2009.

[10] S. Tsai, D. Chen, J.P. Singh, and B. Girod, “Image-Based Retrievalwith a Camera-Phone,” Proc. IEEE Int’l Conf. Acoustics, Speech, andSignal Processing (ICASSP), 2009.

[11] “AT&T Faces 5,000 Percent Surge in Traffic,” http://www.internetnews.com/mobility/article.php/3843001, 2012.

[12] “T-Mobile’s Growth Focusing on 3G,” http://connectedplanetonline.com/wireless/news/t-mobile-3g-growth-0130, 2012.

[13] H. Galeana-Zapien and R. Ferrus, “Design and Evaluation of aBackhaul-Aware Base Station Assignment Algorithm for OFD-MA-Based Cellular Networks,” IEEE Trans. Wireless Comm., vol. 9,no. 10, pp. 3226-3237, Oct. 2010.

[14] T. Biermann, L. Scalia, C. Choi, H. Karl, and W. Kellerer,“Backhaul Network Pre-Clustering in Cooperative CellularMobile Access Networks,” Proc. IEEE Int’l Symp. World Wireless,Mobile and Multimedia Networks (WoWMoM), pp. 1-9, June 2011.

[15] D. Wetherall, U. Legedza, and J. Guttag, “Introducing NewInternet Services: Why and How,” IEEE Network, vol. 12, no. 3,pp. 12-19, May/June 1998.

[16] U. Legedza, D. Wetherall, and J. Guttag, “Improving thePerformance of Distributed Applications Using Active Net-works,” Proc. IEEE INFOCOM, 1998.

[17] D.L. Tennenhouse and J.M. Smith, “A Survey of Active NetworkResearch,” IEEE Comm. Magazine, vol. 35, no. 1, pp. 80-86, Jan.1997.

[18] S. Merugu, S. Bhattacharjee, Y. Chae, M. Sanders, K. Calvert, andE. Zegura, “Bowman and Canes: Implmentation of an ActiveNetwork,” Proc. 37th Ann. Allerton Conf., 1999.

[19] S. Schmid, T. Chart, M. Sifalakis, and A. Scott, “Flexible, Dynamic,and Scalable Service Composition for Active Routers,” Proc. FourthInt’l Working Conf. Active Networks (IWAN), pp. 253-266, 2002.

CHAN ET AL.: NETWORK-ASSISTED MOBILE COMPUTING WITH OPTIMAL UPLINK QUERY PROCESSING 1077

Fig. 13. Concave costs: Leasing of second mid-network node versusLatency for different number of stages (b) processed on the batterylimited Mobile Station, i.e., b ¼ 0 means no stages are processed atthe MS.

Page 14: Network-Assisted Mobile Computing with Optimal Uplink Query Processing

[20] Y. Jin, J. Jin, A. Gluhak, K. Moessner, and M. Palaniswami, “AnIntelligent Task Allocation Scheme for Multi-Hop Wireless Net-works,” IEEE Trans. Parallel and Distributed Systems, vol. 23, no. 3,pp. 444-451, Mar. 2012.

[21] Y. Tian and E. Ekici, “Cross-Layer Collaborative In-NetworkProcessing in Multi-Hop Wireless Sensor Networks,” IEEE Trans.Mobile Computing, vol. 6, no. 3, pp. 297-310, Mar. 2007.

[22] T. Xie and X. Qin, “An Energy-Delay Tunable Task AllocationStrategy for Collaborative Applications in Networked EmbeddedSystems,” IEEE Trans. Computers, vol. 57, no. 3, pp. 329-343, Mar.2008.

[23] A. Olsen, F. Fitzek, and P. Koch, “Energy Aware Computing inCooperative Wireless Networks,” Proc. Int’l Conf. Wireless Net-works, Comm. and Mobile Computing, vol. 1, pp. 16-21, 2005.

[24] J. Li, M. Qiu, J.-W. Niu, and T. Chen, “Battery-Aware TaskScheduling in Distributed Mobile Systems with Lifetime Con-straint,” Proc. 16th Asia and South Pacific Design Automation Conf.(ASP-DAC), pp. 743 -748, 2011.

[25] “Akamai,” http://www.akamai.com, 2012.[26] V. Jacobson, D.K. Smetters, J.D. Thornton, M.F. Plass, N. Briggs,

and R. Braynard, “Networking Named Content,” Proc. Fifth Int’lConf. Emerging Networking Experiments and Technologies (CoNEXT),pp. 1-12, Dec. 2009.

[27] S. Gitzenis and N. Bambos, “Power-Controlled Data Prefetching/Caching in Wireless Packet Networks,” Proc. IEEE INFOCOM,vol. 3, pp. 1405-1414, 2002.

[28] S. Gitzenis and N. Bambos, “Joint Transmitter Power Control andMobile Cache Management in Wireless Computing,” IEEE Trans.Mobile Computing, vol. 7, no. 4, pp. 498-512, Apr. 2008.

[29] S. Drew and B. Liang, “Mobility-Aware Web Prefetching overHeterogeneous Wireless Networks,” Proc. IEEE 15th Int’l Symp.Personal, Indoor and Mobile Radio Comm. (PIMRC), pp. 687-691,2004.

[30] C. Jones, K.M. Sivalingam, P. Agrawal, and J.-C. Chen, “A Surveyof Energy Efficient Network Protocols for Wireless Networks,”Wireless Networks, vol. 7, no. 4, pp. 343-358, 2001.

[31] M. Weiser, B. Welch, A.J. Demers, and S. Shenker, “Scheduling forReduced CPU Energy,” Proc. First USENIX Conf. Operating SystemsDesign and Implementation, pp. 13-23, 1994.

[32] K. Govil, E. Chan, and H. Wasserman, “Comparing Algorithm forDynamic Speed-Setting of a Low-Power Cpu,” Proc. ACMMobiCom, pp. 13-25, 1995.

[33] T. Simunic, L. Benini, A. Acquaviva, P. Glynn, and G.D. Michelli,“Dynamic Voltage Scaling and Power Management for PortableSystems,” Proc. ACM Conf. Design Automation, pp. 524-529, 2001.

[34] P. Pilai and K.G. Shin, “Real-Time Dynamic Voltage Scaling forLow-Power Embedded Operating Systems,” Proc. ACM Symp.Operating Systems Principles, pp. 89-102, 2001.

[35] H. Mehta, R. Owens, M. Irwin, R. Chen, and D. Ghosh,“Techniques in Low Energy Software,” Proc. ACM Int’l Symp.Low Power Electronics and Design, pp. 72-75, 1997.

[36] E.-Y. Chung, L. Benini, and G.D. Michelli, “Source CodeTransformation Based on Software Cost Analysis,” Proc. ACMInt’l Symp. System Synthesis, vol. 4, pp. 153-158, 2001.

[37] A. Rudenko, P. Reiher, G. Popek, and G. Kuenning, “SavingPortable Computer Battery Power through Remote ProcessExecution,” Mobile Computing and Comm. Rev., vol. 2, pp. 19-26,Jan. 1998.

[38] A. Rudenko, P. Reiher, G.J. Popek, and G.H. Kuenning, “TheRemote Processing Framework for Portable Computer PowerSaving,” Proc. ACM Symp. Applied Computing, pp. 365-372, 1999.

[39] S. Mohapatra and N. Venkatasubramanian, “PARM: PowerAware Reconfigurable Middleware,” Proc. IEEE Int’l Conf.Distributed Computing Systems, pp. 312-319, 2003.

[40] S. Gitzenis and N. Bambos, “Joint Task Migration and PowerManagement in Wireless Computing,” IEEE Trans. Mobile Comput-ing, vol. 8, no. 9, pp. 1189-1204, Sept. 2009.

[41] S. Narayanaswamy, S. Seshan, E. Amir, E. Brewer, R. Brodersen, F.Burghart, A. Burstein, Y. Chang, A. Fox, J. Gilbert, R. Han, R. Katz,A.L.D. Messerschmitt, and J. Rabaey, “A Low-Power, LightweightUnit to Provide Ubiquitous Information Access Applications andNetwork Support for Infopad,” IEEE Personal Comm., vol. 3, pp. 4-17, Apr. 1996.

[42] S. Gitzenis and N. Bambos, “Mobile to Base Task Migration inWireless Computing,” Proc. IEEE Second Ann. Conf. PervasiveComputing and Comm. (PerCom), pp. 187-196, Mar. 2004.

[43] B. Girod, V. Chandrasekhar, D. Chen, N.-M. Cheung, R.Grzeszczuk, Y. Reznik, G. Takacs, S. Tsai, and R. Vedantham,“Mobile Visual Search,” IEEE Signal Processing Magazine, vol. 28,no. 4, pp. 61-76, July 2011.

[44] C.W. Chan, N. Bambos, and J. Singh, “Wireless Network-AssistedComputing,” Proc. IEEE 19th Int’l Symp. Personal, Indoor and MobileRadio Comm. (PIMRC), pp. 1-5, Sept. 2008.

[45] P. Chou and Z. Miao, “Rate-Distortion Optimized Streaming ofPacketized Media,” IEEE Trans. Multimedia, vol. 8, no. 2, pp. 390-404, Apr. 2006.

[46] ISO/IEC Int’l Standard 15444 JPEG-2000 Image Coding System,Part 1: Core Coding System, ISO/IEC, 2012.

[47] Joint Video Team of ISO/IEC MPEG & ITU-T VCEG, “HG Reporton Spatial Scalability Resampling,” Document JVT-Q007, Oct.2005.

[48] S. Wee and J. Apostolopoulos, “Secure Scalable Streaming andSecure Transcoding with JPEG-2000,” Proc. IEEE Int’l Conf. ImageProcessing (ICIP), vol. 1, pp. 205-208, Sept. 2003.

[49] J. Apostolopoulos, “Secure Media Streaming & Secure Adaptationfor Non-Scalable Video,” Proc. IEEE Int’l Conf. Image Processing(ICIP), vol. 3, pp. 1763-1766, Oct. 2004.

[50] D. Bertsekas, Dynamic Programming and Optimal Control, vol. 1,second ed. Athena Scientific, 2000.

Carri W. Chan received the SB degree inelectrical engineering and computer sciencefrom the Massachusetts Institute of Technology,in 2004, and the MS and PhD degrees inelectrical engineering from Stanford Universityin 2006 and 2010, respectively. She is anassistant professor at the Graduate School ofBusiness of Columbia University where she hasbeen since 2010. She is a recipient of aSTMicroelectronics Stanford Graduate Fellow-

ship in 2004. Her research interests include modeling of complexstochastic systems, efficient algorithmic design for queuing systems,and dynamic control of stochastic processing systems. Applications forthis line of research include telecommunication networks, healthcareoperations management, and information services. She is a member ofthe IEEE and INFORMS.

Nicholas Bambos received the graduate de-gree in electrical engineering from the NationalTechnical University of Athens, Greece, in 1984and the PhD degree in electrical engineeringand computer science from U.C. Berkeley in1989. He served on the Electrical EngineeringFaculty of UCLA from 1990 to 1995 and joinedStanford University in 1996, where he is now aprofessor in the Electrical Engineering Depart-ment and the Management Science & Engineer-

ing Department. His current research interests include performanceengineering of communication networks and computing systems,including queuing and scheduling issues in wireless an wirelinenetworks, as well as ergodic random processes, queuing theory, andadaptive control of stochastic processing networks. He is a member ofthe IEEE.

Jatinder Pal Singh received the BS degree inelectrical engineering from the Indian Instituteof Technology, Delhi, where he graduated atthe top of his class with Institute Silver Medal,and the MS and PhD degrees in electricalengineering from Stanford University, where hewas awarded Stanford Graduate Fellowshipand Deutsche Telekom Fellowship. He is thedirector of Mobile Innovation Strategy at PaloAlto Research Center and consulting associate

professor with the Department of Electrical Engineering at StanfordUniversity. He was previously vice president of Research withDeutsche Telekom, one of the world’s largest ISP and parent companyof T-Mobile. He is a member of the IEEE.

. For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

1078 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 12, NO. 6, JUNE 2013