Motivation:
Loading a webpage on a mobile phone would require a lot of computation power, which is very limited for a mobile device. Web pages have high page latencies on mobile devices and consume about 35% of energy for computation, which is therefore a bottleneck for power sensitive mobile devices. Frameworks like Opera Mini, Amazon Silk and Android Chrome Beta have been developed to address this issue, by offloading fixed parts of web pages. The paper presents a different framework, which allows to offload any portion of the page load process. Selective offloading of portions of pages reduces the computation as well as data usage.Main Points:
- Methods adopted for offloading native applications differ from web pages in two ways: network activities and computation are inter-dependent in web pages, also different kinds of objects have different computation patterns. Therefore offloading in mobile would have the following advantages:1) Reduced round trips: If parts of the page load process is offloaded to the cloud, cloud interacts with the web server on behalf of the mobile device. The latency can be reduced by placing the web server close to the cloud. Also, the cloud can connect to the mobile device using a single TCP connection, unlike the case when the mobile makes multiple TCP connections to the server in order to load a web page directly.
2) Reduced time in computation: Opera mini and Android Chrome beta compress the webpages in the cloud while leaving the full logics of page loading process to the mobile device. The new framework sends the webpage in its intermediate form, which is easier to analyze.
3) Consistency with other mobile constraints: Performance, power consumption and data usage are the key constraints on mobile phones. Performance is improved due to reduction in the round trip times and computation. Power consumption is also reduced because of a single TCP connection instead of multiple connections to the web page. Data usage is reduced as the cloud transfers the intermediate representations of the webpage to the mobile device instead of raw pages.
- There are few challenges involved with the computation offloading, few of which are:
1) No standardized page load process, which therefore requires different implementations.
2) When and what to offload
3) Determining the location of cloud servers is difficult. They can be placed near the web servers to reduce latency, but which web server is still a question.
4) Security issues: The cloud breaks the security between the mobile and the server.
- The framework discussed in the paper addresses these challenges by providing a solution to each of them. In order to determine the portions of computation to be offloaded, the data flow is represented as a Directed Acylic Graph(DAG). Therefore, the problem of dividing the page load process is now equal to finding the cut of the DAG. The location of the cloud servers should be near or at a CDN service. The question of when to make offloading decisions would be made by the cloud as it is the first of all active components that collect useful information.
- Processes like object loading, HTML parsing, Rendering might be inter-dependent, which is therefore a bottleneck. These bottlenecks can be identified by applying critical path analysis to the DAG constructed earlier. Offloading decisions should consider reducing the time spent on the bottleneck.
Drawbacks:
- As the cloud sends intermediate representation to the mobile, converting the intermediate representation back to the original form would involve computation and is therefore an overhead.- Criteria to choose a location for a cloud server is not well defined. I multiple CDNs have information required to load a page on a single cloud, then the position of the cloud server could be close to any of the CDN.
- No experiments have been shown in order to support the correctness of their work.
Very good analysis - though please try to get them in prior to the presentation. Thanks.
ReplyDelete