Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Amazon’s New Browser, Silk, Is Using a Split Architecture

Amazon’s New Browser, Silk, Is Using a Split Architecture

Leia em Português

This item in japanese

Amazon has created Silk, a WebKit-based browser using SPDY to maintain a single connection with services hosted on AWS where web pages are preloaded and prepared for being pushed to the device. The effect: faster browsing, less device power consumption and better security.

Amazon has launched yesterday Kindle Fire, an Android-based tablet that has a new browser called Silk. Silk has a different approach to browsing, the execution of browser’s subsystems - Networking, HTML, CSS, …, Rendering -, being split between the tablet and the cloud, the browser dynamically deciding what to execute on AWS and what is left to be executed locally. AWS is seen as a limitless cache for storing images, JavaScript and CSS files of the pages users are going to load with Silk, so “it doesn’t take a single byte of storage on the actual device”, according to Jon Jenkins, Director of Software Development, Amazon Silk. That has a positive impact on Kindle Fire’s small 8GB of internal memory.

The AWS services feeding up pages to Silk prepare the content before being delivered. For example, images are automatically trimmed down to a resolution corresponding to the screen they are displayed upon, making them smaller in size for faster delivery and loading. The browser maintains a single open connection to Amazon’s servers, ready to request more content when needed. Also, Silk does not need to wait on getting the entire HTML page so it can know what other content to request because the servers will index pages, knowing what content is to be delivered along with the HTML.

Silk can even run JavaScript code on AWS and compile it to ARM, according to ArsTechnica. And it decides when to load the standard website pages or the mobile one based on user’s preferences.

Amazon has not detailed other technical aspects of the browser, but its job openings suggest Silk is based on the WebKit layout engine and makes heavy use of SPDY, Google’s protocol running on top of SSL and meant to reduce latencies introduced by HTTP.

Silk’s approach to detecting the aggregate user behavior patterns, preloading pages based on user’s habits, has raised some privacy concerns, but Amazon dismisses those saying that such data is collected anonymously.

Others have tried a similar approach in the past but without the computing resources Amazon has nor the breadth of their solution. Opera Mini, a browser designed for smartphones and PDAs, loads pages through Opera’s proxy servers which compress pages reducing the load time by a factor of 2 to 3 and the amount of data transferred.

Amazon’s approach to browsing will have a positive impact on page loading speed, power consumption due to fewer connections and round trips made to fetch content, and security since all content will most likely be scanned before being loaded and all transfers will be secure, SPDY using SSL. For Amazon one of the main benefits is considered to be the data mining opportunities arising from having all web pages browsed by Kindle Fire users tunneled through AWS. Google has had a similar modest attempt by offering the Page Speed Service which optimizes provider’s websites delivering pages out of their own servers, but without much success. It is interesting to see if Chrome OS will implement something similar in the future.

Rate this Article