Adaptation Framework for Wireless Thin-client Computing Mohammad Al-Turkistany
Presentation Outline Problem Definition Wireless Thin-client Computing Constraints Related Work VNC Thin-client system Thin-client Performance Model Proposed Approach: Adaptive Thin-Clients Experimental Evaluation Conclusion Publications
Problem Definition Thin-client computing is attractive model for mobile computing Outsource processing and storage to network servers Off-device management & maintenance of applications Constraints: Thin-clients may generate excessive traffic when sending screen updates over a wireless network Sensitive to application’s screen hyper-activity Resources variability of the wireless network and the mobile device
Wireless Network Variability Service parameters: bandwidth, latency and error rate are location dependent Causes of resource variability Wireless noise and interference: multi-path fading, impulse noise, etc. Surge in the number of users at airport terminal leads to lower bandwidth per user Vertical & horizontal handoff between different wireless technologies
Client Resources Variability Processing speed, battery energy, transmission power Causes of variability OS decides to decrease processor’s frequency when battery energy reaches some threshold. Decrease in processor’s frequency due to overheating Switching the network card to low power mode
Proposed Approach Dynamic adaptation of thin-client system operation to optimize performance Adaptive system needs to discover thin-client's context (processor’s frequency, wireless bandwidth ) and use it to make tradeoff decisions that affect system performance
Thin-client Computing Model
Wireless Thin-client Computing Constraints Major thin-clients systems Citrix's Winframe and Microsoft's Windows Terminal Server and ATT’s VNC Performance limiting factors Latency in wireless networks Limited processing power of mobile devices Low bandwidth wireless networks Mobility and resources variability (bandwidth etc)
Related Work NCL of Columbia U: Optimizing Bandwidth usage by compressing screen updates may degrade the overall performance in high-latency networks Server-push eager screen update policy has best performance for multimedia (video) applications Wireless thin-client web browsing is superior to local fat-client browsing (under high packet loss rates) TCP protocol overheads and latencies for setting up and maintaining connections under packet loss conditions
Related Work Mobile Computing Lab at UF: Thin-Clients optimization for wireless active-media applications Introduced the concept of scalable application localization at the thin-client Transfer some of the application processing tasks based on the quality of network connectivity Localization of keyboard and mouse events Localization of active-web objects (animated gif image)
AT&T’s VNC Thin-client Encoding requirements for active and media-rich applications (with frequent display updates) Low complexity decoding High compression level: to conserve bandwidth Performance bottleneck VNC performance depends on the quality of underlying wireless connection (i.e. bandwidth & latency) and client’s processing power
VNC Thin-client Limitations Excessive use of the wireless bandwidth Poor compression of complex-graphic screen updates (variation of RLE encoding) Variability of wireless connection quality that causes variable available bandwidth Noise (S/N ratio) Multi-path fading # of users in cell area Power level: position relative to access point
Adaptive Thin-client Computing It is critical to dynamically adapt (at application level) thin-client performance to the variability of available resources Adapt by changing the encoding type or compression level of screen updates Employ scalable compression level control by using lossy Wavelet-based encoding
Proposed Performance Model VNC performance parameters bandwidth, client processing speed, and server processing speed We model these using three cascading queues using M/M/1 model (incremental screen updates) Assumes very high server processing power Server Client Channel
B Link Bandwidth bps Avg Rectangle Size bits/rectangle Avg Arrival Rate rectangles/sec Compression Ratio Transmission Latency= Avg time period that starts when screen rectangle enters the queue and ends when the server finishes processing the rectangle Proposed Performance Model
B Link Bandwidth bps Avg Rectangle Size bits/rectangle Avg Arrival Rate rectangles/sec Compression Ratio Decoding Latency= Avg time period that starts when screen rectangle enters the queue and ends when the server finishes processing the rectangle Proposed Performance Model
Decoding rate bps Compression ratio Avg Total Latency = Our goal is to control the total latency B link bandwidth bps Ave rectangle size bits/rectangle Ave arrival rate rectangles/sec Proposed Performance Model
In general, D(, S, T, algorithm) S is RFB rectangle size T represents the information content of RFB rectangle Decoding rate function is usually non-linear and not easy to model mathematically Fuzzy control is used to control the system latency Used to control complex non-linear processes, when there is no simple mathematical model Relies on experimental knowledge to design the controller
When operating in client pull mode, then and Avg Total Latency= Virtual Bandwidth of Thin- client system
Service Rate
Update Quality-Latency Trade- off The maximum virtual bandwidth achievable (best- case latency) is and this happens when Set the target virtual bandwidth according to quality of screen update requirement : Dynamic adaptation is achieved by controlling at the server (or proxy) side using fuzzy controller
Proposed Thin-client Adaptation Framework Thin-client events Wavelet decoder Wavelet Encoder Adaptation proxy Rectangle updates Server Thin-client Fuzzy Rule-base Context Discovery Rectangle updates QoS Wireless link Application
Proposed Thin-client Adaptation Framework
Goal: Minimize the average latency observed by the user by controlling the compression ratio Trade-off between total latency and screen updates quality (Q=1 corresponds to worst screen quality) Error signal is used to drive a fuzzy controller that outputs the value for compression ratio
Proposed Thin-client Adaptation Framework Avoids direct measurement of available wireless bandwidth (B) and the processing speed of the thin-client device Approximate estimate of virtual bandwidth: measure the time period between two successive, wavelet-encoded, full screen rectangles sent to thin-client
Approximate expert knowledge is used instead of differential equations to describe system dynamics Rule-based inference system If is normal and is normal then 1/ shall be normal If is low and is low then 1/ shall be high Fuzzy rules fires in parallel to contribute to the control action Rule-Based Fuzzy Controller
Rule-based Fuzzy Controller 1 0 normal 1 0 Fuzzy Set normal 1 0 normal Bandwidth Bandwidth’s rate of change Compression Level Actual Bandwidth Actual Bandwidth’s rate of change min
Rule-based Fuzzy Controller Different rules results overlap to yield the overall output. The result of the fuzzy controller is a fuzzy set. To get one representative crisp value as the output, we find the center of gravity of the fuzzy set 1 0 The result Compression Level 1 0 Final output value Compression Level
Experimental Evaluation
Fuzzy controller adapts to variations in link bandwidth by controlling compression level to maintain target total latency For fast processor, the fuzzy controller has to compress more to keep up with the fast decoding rate and prevent data transmission bottleneck
Experimental Evaluation Adaptation Proxy (Linux) Wireless Access Point Linux Server IPAQ PDA CBQ-base traffic control
Compression Level Control Latency=1.7 sec Latency= 3.36
Tuning Controller’s Gain is dominating parameter: higher value results in better latency control but with more fluctuation Wireless Thin-client Rule Base
Controller Tuning (Ka)
Fluctuation Effect
Rules Reduction Effect
Fuzzy Variable
Fuzzy Variable compLevel
Quality Factor Effect
Performance under Variable CPU Frequency Adaptation Proxy (Linux) Linux App Server Wireless Access Point IPAQ PDA XScale Frequency Scaling Unit
Performance under Variable CPU Frequency
Controlling Total Latency
The ratio is determined by activity characteristics of each application. It estimates average screen update traffic generated by the application Assign higher Q values for active applications (k is distortion tolerance) Quality-Latency Trade-offs
Tradeoff between latency and screen rectangles quality (distortion) Higher value of (Q) results in lower total latency at the cost of increased distortion For stable thin-client system Since then
Client’s Decoding Rate
Optimizing Small Screen Areas For small size screen rectangles, high compression level may be an overkill Improvement method: Allows the controller to adapt to variable-size screen updates
Conclusion We propose a proxy-based adaptation framework for wireless thin-client systems Dynamically adapts the performance of wireless thin-client Context information is used by fuzzy rule-based inference engine to optimize wireless resources usage by trading off among different quality of service parameters Uses highly scalable wavelet-based image coding technique to provide high scalability of quality of service Shields the user from the ill effects of abrupt variability of wireless and mobile device resources
Publications M. Al-Turkistany, A. Helal, “Fuzzy Rule-based Adaptation Framework for Wireless Thin-Clients”, Proceedings of International Conference on Computing, Communications and Control Technologies: CCCT’04, August, 2004, Austin, Texas. M. Al-Turkistany, A. Helal, “Modelling and Performance of Adaptive Wireless Thin-client Computing”, to be submitted to IEEE Transactions on Mobile Computing.