-
60 Published by the IEEE Computer Society 1089-7801/12/$31.00
2012 IEEE IEEE INTERNET COMPUTING
Thin
Clie
nt C
ompu
ting
Cloud-Based Desktop Services for Thin Clients
Lien Deboosere, Bert Vankeirsbilck, Pieter Simoens, Filip De
Turck, Bart Dhoedt, and Piet DemeesterGhent University
Cloud computing and ubiquitous network availability have renewed
peoples
interest in the thin client concept. By executing applications
in virtual desktops
on cloud servers, users can access any application from any
location with any
device. For this to be a successful alternative to traditional
offline applications,
however, researchers must overcome important challenges. The
thin client
protocol must display audiovisual output fluidly, and the server
executing
the virtual desktop should have sufficient resources and ideally
be close to
the users current location to limit network delay. From a
service provider
viewpoint, cost reduction is also an important issue.
C loud computing services,1 such as
Amazons Elastic Compute Cloud, are widely available today,
offer-
ing computing resources on demand. Thanks to such advances and
ubiq-uitous network availability, the thin client computing
paradigm is enjoy-ing increasing popularity. Originally intended
for wired LAN environments,2 this paradigm is repeating its success
in a mobile context. A study from ABI Research forecasts a US$20
billion turnover surrounding services directly associated with
mobile cloud comput-ing by the end of 2014. Clearly, when
applications are offloaded, the mobile terminal only needs to
present audio-visual output to users and convey user input to
remote servers, considerably reducing the client devices
computa-tional complexity. Consequently, appli-cations can run
as-is, without requiring (many) scaled-down versions for mobile
devices.
Several popular applications, such as Google Docs and Microsoft
Live, already execute on servers in the cloud. The ability to
access applications in the cloud is referred to as software as a
service (SaaS), whereas hosting a virtual desk-top (VD) is referred
to as desktop as a service (DaaS). We can categorize DaaS
implementations according to where the VD is executed (locally or
remotely) or to the method of accessing the VDs output (browser or
thin client protocol, such as the Remote Desktop Protocol or
virtual network computing). With mobile users specifically, VDs are
executed remotely due to resource constraints. To enable such users
to access existing OSs and applications, we can employ a thin
client protocol to visually render the output of applications
executed by a VD.
Current DaaS deployments, such as the VMWare Vir tual Desktop
Infra-structure, are concentrated mainly in corporate environments.
The availability
IC-16-06-Debo.indd 60 10/13/12 2:40 PM
-
Cloud-Based Desktop Services for Thin Clients
NOVEMBER/DECEMBER 2012 61
of (virtual) computing resources distributed over the network
lets providers offer desktop services in mobile wide area network
(WAN) environments.
Here, we discuss solutions that address the challenges providers
face in offering cloud-based desktop services. We look at how to
both improve users experience and reduce providers costs in
offering the service. We also present a system architecture for
offering efficient desk-top services in the cloud.
System ArchitectureExisting cloud platforms fulfill the hardware
requirements for implementing DaaS. However, an emerging category
of mobile applications including augmented reality, rich sensing,
and multimedia editing pose stringent require-ments on delays.
Current cloud management systems cant meet user expectations for
these applications, especially in terms of latency. A clear need
exists for novel cloud management algorithms that consider the
specific requirements of mobile thin client computing. Our
proposed
system architecture implements such algorithms in the service
managers self-management component. The manager can be implemented
as part of existing cloud management sys-tems such as OpenNebula,
OpenStack, and Eucalyptus.
Figure 1 shows our architecture. Simplified OS image management
(that is, re-using an OS image among users to reduce the storage
per user) and application management are essential for the service
to scale. Our system builds a VD from a shared golden image from
the OS data-base and augments it with personal settings for
example, by using a copy-on-write solu-tion with UnionFS
(http://unionfs.filesystems.org). Multilayer VDs simplify the
complexity of upgrading the golden image without causing broken
dependencies or conflicts.3 To improve DaaS usability, we could
combine DaaS with application virtualization technologies such as
Softricity and Microsoft App-V. The system would then dynamically
deliver applications to the users VD without having to install,
con-figure, and update them. This approach further
Figure 1. System architecture for enabling cloud-based desktop
services for thin clients. Users connect via a thin client device a
smartphone, tablet PC, PDA, netbook, or minimal- or zero-state
device to their remote applications executed in a virtual desktop.
The service managers self-management component covers optimizations
to improve the user experience and decrease service provider
costs.
Applicationvirtualization
service
Thin clientusers
Service manager
Thin clientprotocol
Host 1
Host H
Virtualdesktops
Data center
Self-management
Overbooking Allocation
Consolidation Relocation
Data center
Data center
Thin client user
Thin clientusers
OS imageand proledatabase
Monitoring framework
Resourceoverbooking
IC-16-06-Debo.indd 61 10/13/12 2:40 PM
-
Thin Client Computing
62 www.computer.org/internet/ IEEE INTERNET COMPUTING
reduces the complexity of upgrading golden images because
applications arent installed in the users VD and thus cant be
broken.
User ExperienceWe must consider two aspects to maintain or
improve user experience: high performance of the thin client
protocol that is, crisp inter-activity and fluid audiovisual output
and suf-ficient allocated resources on the server side so that
applications respond quickly. For mobile users, reducing energy
consumption on the cli-ent device is also important.
Crisp InteractivityAcceptable interaction-delay bounds depend on
the application at hand. For office automa-tion applications,
delays of up to 150 ms are tolerable,4 whereas for multimedia
applications such as video games, users are already affected by
interaction delays higher than 80 ms. The result of user input can
be seen only after at least one round-trip time (RTT), so we should
address delay for critical applications using a proximate server.
Every time users connect to the service, the system must select a
data center that can be reached fast enough from the users current
location. Inside the data center, the sys-tem should select an
appropriate server based on the expected resource requirements of
the users applications (determined via the users profile and the
current load on the servers, as discussed later).
Due to user mobility, guaranteeing delay bounds implies that a
VD might have to migrate to another server. In practice, the system
con-tinuously monitors the desktop service and, for example, when
the RTT exceeds a predefined boundary based on the type of active
applica-tions, relocates the users VD to a more suitable host. The
system performs this relocation using live migration.5
Storing a VDs UnionFS delta file system on network storage
equipment reduces a service
providers cost of relocating the VD to copying the current
active memory or, in the worst case (that is, migration across data
centers), copying the VDs delta file system. During the migration
process, both the original and target host require resources. In a
heavily loaded system, such double-resource reservations can lead
the system to reject new user requests while caus-ing substantial
network traffic for the memory- copying process. Thus, the system
should relo-cate VDs only when it will achieve valuable
improvements for them or their customers.
Fluid Audiovisual OutputMultimedia content has been a stumbling
block for thin client computing for years especially in mobile WAN
environments where bandwidth availability is limited and expensive.
This is mainly because the same coding is applied to static (text
editing, for example) and dynamic (as with video games) content.
Recently, both researchers and industry have proposed several
bandwidth optimizations for thin client proto-cols. One important
innovation implements a channel for redirecting multimedia in its
origi-nal format to the client (as with Citrix Speed-Screen),6 at
least when the appropriate codec is available on the client device.
This approach is valid only for playing multimedia streams, not for
displaying high-motion output from an application (such as a video
game). Weve evaluated a thin client protocol optimization that
encodes applications high-motion output with a video codec and
switches to a thin client protocol to encode low-motion output;7
Table 1 shows this approachs feasibility for some pop-ular mobile
devices. In these experiments, we played a full-screen video on the
server and streamed it to the client. Given that the bottle-neck in
the live-encoding process is the servers CPU, we reached higher
frame rates for smaller screen resolutions. Using a GPUs processing
power on the server side could improve the frame rate.
Table 1. Thin client computing performance on popular mobile
devices.
Device Screen resolution Available codecsStreaming frame rate
(frames per second)
iPhone 4 640 960 H264, MPEG-4, M-JPEG 27
Samsung Galaxy S 800 480 H263, H264, MPEG-4, WMV, VC-1 23
iPad 1024 768 H264, MPEG-4, M-JPEG 20
Laptop 1280 1024 Depends on OS/applications 12
IC-16-06-Debo.indd 62 10/13/12 2:40 PM
-
Cloud-Based Desktop Services for Thin Clients
NOVEMBER/DECEMBER 2012 63
Another approach is to cache important out-put sequences such as
the desktop view and menu items to reduce both the required
band-width and the interaction delay.8 A complete overview of
recent thin client protocol optimi-zations is available
elsewhere.9
Resource AllocationIn the data center, the allocation algorithm
must find a suitable host to satisfy an arriving user request, as
Figure 2a shows. From the customers viewpoint, the least-utilized
host is preferable, whereas the provider prefers the host resulting
in the least resource fragmentation (that is, the best-fit host)
because this can reduce energy consumption. The resources a user
needs are specified in a service-level agreement (SLA). To observe
the aforementioned balance, the alloca-tion algorithm attributes a
penalty for each request that receives too few resources, and a
penalty b related to resource fragmentation that is, to the amount
of nonreserved resources on this host. The algorithm selects the
host with the lowest penalty to handle the user request. Figure 2b
shows the influence of the ratio /b on the probability of SLA
violations for a simu-lation with 10 hosts and an average
utilization of 90 percent. In this context, an SLA violation
implies that the user applications receive fewer resources than
requested. When /b increases that is, when SLA violations are
expensive the allocation algorithm can reduce the probability
of SLA violations by 10 percent. An SLA viola-tion as defined
here might not be noticeable or obstructive for the user experience
because it might just take a bit longer for the user applica-tions
to execute a task.
For scalability, we cant assume that every user has a dedicated
profile. Rather, VDs resource requirements should be clustered
offline into a finite number of profiles. At subscription time the
system assigns a user one of these profiles. An online clustering
algorithm such as a decen-tralized clustering algorithm10 could map
the current resource requirements of a users VD to one of the
cluster profiles. This online mapping can let the system adapt the
current resource allocation or even the users prof ile when
appropriate.
If the current resource requirements dont correspond to the
users profile (for example, the system detects bursts of SLA
violations), the cloud management component can decide, based on
the users SLA, to adapt the resource allocation to current needs.
If more resources are required and sufficient resources are
avail-able on the current host, it simply allocates these
additional resources. A problem arises, however, when the current
host cant update its resource reservation to the desired level. In
this case the system can take one of two actions: it can relocate
the users VD to a host with sufficient free resources or relocate
other VDs from the current host until sufficient resources are
freed.
Figure 2. Simulation results. (a) The allocation algorithm
selects a suitable host to satisfy an arriving user request,
thereby balancing the providers gains by decreasing energy
consumption and hence limiting the number of active servers and the
penalties related to customers unsatisfied resource demands. (b) We
evaluated our proposed allocation algorithm in a scenario with 10
hosts and an average utilization of 90 percent. The cost-based
algorithm proposed in the main text shows a decrease of 10 percent
in service-level agreement (SLA) violations. An SLA violation means
that the user applications receive fewer resources than
requested.
Arriving user requests
Allocation algorithm
Virtual desktops(VDs)
0
16
Ave
rage
pro
babi
lity
of S
LA v
iola
tions
(per
cent
)
+2 13 0 21 3
log (/)
2
4
6
8
10
12
14 Cost-basedRandom
(a) (b)
IC-16-06-Debo.indd 63 10/13/12 2:40 PM
-
Thin Client Computing
64 www.computer.org/internet/ IEEE INTERNET COMPUTING
The preferred choice depends on several factors, such as users
SLA contracts and a VDs mem-ory consumption, which determines the
time required to finish its live migration.
Battery AutonomyLimited battery drain is important for mobile
users. Because computing power shif ts to the network, we could
expect a small bat-tery drain; on the other hand, the continuous
wireless network connection is a huge battery consumer.
Several approaches exist for reducing a wireless network
connections energy con-sumption, such as cross-layer optimization.9
Even with this adaptation, offloading all appli-cations isnt
justifiable in terms of reducing energy consumption. Thus, we
propose weigh-ing the advantages of offloading an application to a
remote server versus locally executing it. One solution between
these two extremes is to offload parts of the applications and
render them at remote servers while executing the other parts
locally, which could also reduce interaction delay.11
Service Provider CostsA service providers most important
challenge is satisfying customers while minimizing costs. We focus
on optimizing the number of users a single host can serve and
minimizing energy consumption in the cloud.
Number of UsersDepending on the targeted user experience,
resources should remain in reserve on the infrastructure. Of
course, reserving worst-case resource needs will lead providers to
overprovi-sion cloud resources. The planning guide from Citrix12
suggests assigning at most 10 normal VDs or four heavy VDs to a
single host. Given that mobile device screen resolutions are
grow-ing closer to those of regular screens, the dif-ference in
resource requirements for hosting a VD for a mobile or for a fixed
user is negligi-ble. So, the Citrix study is also valid in todays
mobile context. When more VDs are assigned to a host, the
performance degradation depends on the type of applications
executed in those VDs.13 Thus, the number of allocated resources
should depend on the applications users will likely execute, as
specified in their profiles.
Its important to share resources to optimize utilization in the
context of shared Internet hosting platforms.14 Based on the
observation that a VDs resource requirement varies sig-nificantly
and depends on many factors, such as multiple active applications,
we can use a resource overbooking technique in a VD com-puting
context.
Figure 3a illustrates our overbooking tech-nique, which exploits
the shared resource platform the host uses to execute VDs. In our
approach, the provider reserves part of the expected resource
requirements according to
Figure 3. Overbooking technique. (a) Nonconsumed reserved
resources are collected in the hosts resource pool to be shared
among virtual desktops (VDs) requesting more resources than
reserved. (b) The simulation results (averaged over 15 simulations)
consider a fully reserved host with normal VDs requesting resources
(based on the planning guide from Citrix12) according to a normal
distribution N(,2) with taken from N(10, 3.5) and 2 taken from
N(3.5, 2/3 3.5).
60
100
Ave
rage
util
izat
ion
(per
cent
)
Ave
rage
pro
babi
lity
ofSL
A v
iola
tions
(pe
rcen
t)
50403020
Overbooking degree (percent)
65
70
75
80
85
90
95
0
25
15
20
10
5
10
UtilizationProbability(SLA violations)
Add resourcesto RP
Resourcerequirements VDion time stamp t
Res
erve
d
Req
uest
ed
Res
erve
d
Req
uest
ed
Request resourcesfrom RP
Resource pool (RP) of host H
Resourcerequirements VDjon time stamp t(a) (b)
IC-16-06-Debo.indd 64 10/13/12 2:40 PM
-
Cloud-Based Desktop Services for Thin Clients
NOVEMBER/DECEMBER 2012 65
the adopted overbooking degree. We define the overbooking degree
as the probability of not being able to satisfy a users request.
The hosts resource scheduler ensures that a VD can always consume
at least the reserved resources. The host collects nonconsumed
resources in its resource pool. VDs requesting more resources than
reserved can receive additional resources from this pool. As Figure
3b shows, when the overbooking degree increases, the utilization of
the host by the served VDs also increases. In this case, fewer
resources are reserved and hence the probability of SLA violations
increases.
The provider can assign different overbook-ing degrees to VDs
with different profiles or SLA contracts. As emphasized previously,
user experience isnt determined only by the resource allocation for
the users VD, but also by audiovi-sual quality and the interaction
delay with the application. To globally optimize user experience
and resource allocation, future research should examine how to
couple the resource allocation strategy with the thin client
protocol settings in a global framework.
Energy CostTo achieve a green cloud-based desktop service,
providers should implement a consolidation algorithm to adapt the
online host pool to the current system load. This algorithm must
pre-dict the (near) future system load to determine the required
number of hosts. The time between two iterations of the
consolidation algorithm is
called the time window. During a time window, the algorithm
collects monitoring information and based on the assumption that
the sys-tem load during the next time window will vary in a similar
way predicts the system load via linear extrapolation (see Figure
4a).
When additional hosts are required, the sys-tem simply puts them
online. When redundant hosts are found, more elaboration is
required to decide which hosts should go offline. Idle hosts are
naturally the best choice for going offline because no VDs must be
relocated before this can occur. If there arent enough idle hosts,
the algorithm sorts the hosts by ascending number of VDs. To
minimize the number of relocations, the algorithm tries to relocate
the VDs from the hosts in list order. When it cant relocate all VDs
on a host to other hosts, relocating any of them is pointless, and
the algorithm should continue with the next host down the list,
until sufficient hosts are put offline or no hosts remain on the
list. When the real system load appears to be higher than expected,
the monitoring frame-work notices this unfavorable situation and
requests that the cloud management component take appropriate
action.
The simulation results in Figure 4b are from a scenario with
realistic user behavior (that is, a daily cycle of user requests
according to the Lublin model15). These results show that a large
potential exists for saving energy at the cost of a small increase
in SLA violations. In this scenario, providers can save up to 36.6
percent
Figure 4. A consolidation algorithm. To reduce the energy
consumption of servers in the cloud, the algorithm adapts the
number of online servers to the system load. This results in a
small increase in SLA violations. (a) The algorithm can predict the
system load in the next time window. (b) Our simulation considers a
daily cycle of arrivals by two user types in a ratio of 3 normal to
1 heavy user, with an average resource request distribution of
N(10, 3.5) and N(25, 5), respectively.
Ener
gy c
onsu
mpt
ion
(kW
h)
0
1
2
3
4
5
6
0
50
100
150
200
250
Disabled Enabled
Ave
rage
pro
babi
lity
ofSL
A v
iola
tions
(pe
rcen
t)
Consolidation algorithm
Energy consumption Probability (SLA violations)
Predictedadditionalutilization
Max utilizationumax,
Previousutilization u1 Current
utilization u
Time window Time window +1
Predicted maxutilization umax, +1
u+1
(a) (b)
IC-16-06-Debo.indd 65 10/13/12 2:40 PM
-
Thin Client Computing
66 www.computer.org/internet/ IEEE INTERNET COMPUTING
in energy for an additional 1.7 percent in SLA violations.
E xisting optimizations of thin client proto-cols and desktop
services each focus on a specific part of the user experience.
Currently, we can quantify user experience of thin-client-based
virtual desktops offline only via a slow-motion benchmarking
technique.13 Clearly, we need a novel, objective metric that
represents the global user experience along with online measurement
methodologies. Future research should be devoted to integrating
relevant thin client protocol optimizations with resource
allocation strategies to achieve the best user experience. To
further improve user experi-ence, we should extend the cloud
management algorithms presented here to operate on inter-connected
data centers for example, by relo-cating virtual desktops from
overloaded to less loaded data centers.
AcknowledgmentsLien Debooseres and Bert Vankeirsbilcks research
is
funded by a PhD grant from the Institute for the Promotion
of Innovation through Science and Technology, Flanders
(IWT Vlaanderen).
References1. R. Buyya et al., Cloud Computing and Emerging
IT
Platforms: Vision, Hype, and Reality for Delivering
Computing as the 5th Utility, Future Generation Com-
puter Systems, vol. 25, no. 6, 2009, pp. 599616.
2. A. Lai and J. Nieh, On the Performance of Wide-Area
Thin-Client Computing, ACM Trans. Computer Sys-
tems, vol. 24, no. 2, 2006, pp. 175209.
3. R. Schwarzkopf et a l. , Mult i-Layered Vir tual
Machines for Security Updates in Grid Environments,
Proc. 35th EUROMICRO Conf. Internet Technologies,
Quality of Service, and Applications, IEEE Press, 2009,
pp. 563570.
4. N. Tolia, D.G. Andersen, and M. Satyanarayanan,
Quantifying Interactive User Experience on Thin Cli-
ents, Computer, vol. 39, no. 3, 2006, pp. 4652.
5. F. Travostino et al., Seamless Live Migration of Vir-
tual Machines over the MAN/WAN, Future Generation
Computer Systems, vol. 22, no. 8, 2006, pp. 901907.
6. SpeedScreen Latency Reduction Explained, white
paper, Citrix Systems, Dec. 2000.
7. P. Simoens et al., Design and Implementation
of a Hybrid Remote Display Protocol to Optimize
Multimedia Experience on Thin Client Devices,
Proc. Australasian Telecomm. Networks and Applica-
tions Conf., IEEE Press, 2008, pp. 391396.
8. B. Vankeirsbilck et al., Bandwidth Optimization for
Mobile Thin Client Computing through Graphical Update
Caching, Proc. Australasian Telecomm. Networks and
Applications Conf., IEEE Press, 2008, pp. 385390.
9. P. Simoens et al., Remote Display Solutions for Mobile
Cloud Computing, Computer, vol. 44, no. 8, 2011,
pp. 4653.
10. A. Quiroz et al., Towards Autonomic Workload Provi-
sioning for Enterprise Grids and Clouds, Proc. IEEE/
ACM Intl Conf. Grid Computing, IEEE Press, 2009,
pp. 5057.
11. Y. Lu, S. Li, and H. Shen, Virtualized Screen: A Third
Element for Cloud-Mobile Convergence, IEEE Multi-
media, vol. 18, no. 2, 2011, pp. 411.
12. XenDesktop Planning Guide Hosted VM-Based
Resource Allocation, white paper CTX12277, Citrix, 2010.
13. A. Berryman et al., VDBench: A Benchmarking Tool-
kit for Thin-Client-Based Virtual Desktop Environ-
ments, Proc. 2nd IEEE Intl Conf. Cloud Computing
Technology and Science, IEEE Press, 2010, pp. 480487.
14. B. Urgaonkar, P. Shenoy, and T. Roscoe, Resource
Overbooking and Application Profiling in a Shared
Internet Hosting Platform, ACM Trans. Internet Tech-
nology, vol. 9, no. 1, 2009, pp. 145.
15. U. Lublin and D.G. Feitelson, The Workload on Parallel
Supercomputers: Modeling the Characteristics of Rigid
Jobs, J. Parallel and Distributed Computing, vol. 63,
no. 11, 2003, pp. 11051122.
Lien Deboosere is an IT business analyst at Melexis NV. At
the time of this research, she was in the Department of
Information Technology at Ghent University, Belgium.
Her main research interest is the design of architec-
tures for wide-area thin client computing. Deboosere
has a PhD in computer science engineering from Ghent
University. Contact her at [email protected].
Bert Vankeirsbilck is a PhD researcher in the Internet Based
Communication Networks and Services research group,
Department of Information Technology (INTEC), Ghent
University, Belgium. His main research interest is the
execution of resource-intensive applications on mobile
devices through thin client technology. Vankeirsbilck
has an MSc in computer science engineering from
Ghent University. Contact him at bert.vankeirsbilck@
intec.ugent.be.
Pieter Simoens is a post-doctoral researcher with the
Department of Information Technology at Ghent Uni-
versity, Belgium. His current work focuses on smart
clients and cloud computing; his research activities
IC-16-06-Debo.indd 66 10/13/12 2:40 PM
-
Cloud-Based Desktop Services for Thin Clients
NOVEMBER/DECEMBER 2012 67
are combined with a mandate as doctoral assistant at
Ghent University. Simoens has a PhD in computer sci-
ence engineering from Ghent University. Contact him
at [email protected].
Filip De Turck is a professor in the Department of Infor-
mation Technology at Ghent University, Belgium.
His main research interests include scalable software
architectures for telecommunication network and ser-
vice management, performance evaluation, and design
of new telecommunication services. De Turck has a
PhD in electronic engineering from Ghent University.
Hes on the program committee of several conferences
and a regular reviewer for conferences and journals in
the telecommunication services field. Contact him at
[email protected].
Bart Dhoedt is a professor in the Department of Information
Technology at Ghent University, Belgium. His research
interests include software engineering, distributed
(autonomic) systems, grid and cloud computing, and
thin client computing. Dhoedt has a PhD in opto-
electronics from Ghent University. Contact him at bart.
[email protected].
Piet Demeester is a professor of communication networks
in the Department of Information Technology at Ghent
University, Belgium, where he heads the Internet Based
Communication Networks and Services (IBCN) research
group thats part of the Interdisciplinary Institute for
Broadband Technology (IBBT). Demeester has a PhD
in photonics from Ghent University. Hes a fellow of
IEEE. Contact him at [email protected];
www.ibcn.ugent.be.
Selected CS articles and columns are also available for free at
http://ComputingNow.computer.org.
IEEE Software seeks practical, readable articles that will
appeal
to experts and nonexperts alike.
The magazine aims to deliver reliable
information to software developers
and managers to help them stay on
top of rapid technology change.
Submissions must be original and
no more than 4,700 words, including
200 words for each table and fi gure.
CallArticlesfor
Author guidelines: www.computer.org/software/author.htmFurther
details: [email protected]
www.computer.org/software
IC-16-06-Debo.indd 67 10/13/12 2:40 PM