Kindle ラインナップが一挙に登場したアマゾンのプレスカンファレンスでは、7型タブレット Kindle Fire が搭載するアマゾン独自のウェブブラウザ " Amazon Silk " についても詳しい説明がありました。Silkはアマゾンが誇るクラウドコンピューティング基盤を活用し、モバイルデバイスでのウェブを高速化するブラウザ。

アマゾンいわく、ウェブブラウザのアーキテクチャはページが静的でシンプルだった1990年代なかばから本質的に変わっていない一方、現在のウェブはひとつのページに多数のファイルが含まれJavaScript など動的な要素も一般的になるなど大きな変化を遂げています。このため、画面が狭いだけでなく処理能力や通信帯域・レイテンシで劣るモバイル機器でのウェブブラウズはデスクトップほど快適ではない状態でした。Silk では解決策として、ブラウザのタスクを細かく分割し、クラウドとデバイスで動的に分担する Dynamic Split Browsing を導入します。

続きの解説動画で触れられているように、具体的にはデバイス上からまずアマゾンのクラウドにリクエストが送られ、クラウドが実際のウェブサーバへ並列アクセスします。アマゾンの挙げる数字では、デバイスから無線ネットワーク経由でウェブサーバまでの往復応答時間は数百ms台、太い光幹線と常時接続のEC2サーバなら5ms以下。ファイルの取得、HTMLやスクリプトの解釈、レイアウトの最適化や圧縮をAmazon EC2のサーバ群で並列処理した後、消化しやすい状態にまとめて端末へ送り返す仕組みです。

要は Opera Mini や Skyfire など既存のサーバベースブラウザとおなじ原理ですが、Silk の特徴として挙げられているのは:
  • サーバとデバイスで分担するタスクを動的に分割すること。ページの性質やネットワークに応じて処理を変化させることで、インタラクティブなコンテンツでも違和感のないブラウズが可能。
  • クラウドが学習すること。アマゾンの「この製品をチェックしたカスタマーは~」で開発したアルゴリズムを応用し、多数のユーザーの挙動を統計的に分析することで、アクセス頻度の高いリンク先やファイルをあらかじめクラウド側で取得・処理しておく。クラウド側なので「キャッシュ」の容量には事実上制限がなく、またデバイス側のストレージを圧迫することも先読みのオーバーヘッドも発生しない。
  • クラウドが他ならぬアマゾンであること。Twitter を始め多数の大手ウェブサービスはもともとアマゾンのクラウドにホストされているため、多くのリクエストが自前のクラウド内で完結する。
など。特に後の2点は、膨大なデジタルコンテンツを販売するだけでなく自前のクラウドサービスにホストしているアマゾンならではの強みです。" Silk " の命名は、目に見えない(ほど細い)のに強靱な力で結びつける絹糸から。Amazon Silk はタブレット Kindle Fire に標準で搭載されます。動的なページに弱い Opera Mini などの問題を克服しているのならば、Fire 以外の端末にも提供してほしいところです。


Introducing "Amazon Silk": Amazon's Revolutionary Cloud-Accelerated Web Browser, Available Exclusively on Kindle Fire
Amazon's cloud computing infrastructure and eight years of cloud computing expertise come together in new web browser for Kindle Fire--Amazon's new Kindle for movies, music, books, magazines, apps, games, and web browsing

SEATTLE, Sep 28, 2011 (BUSINESS WIRE) --

(NASDAQ: AMZN)--Amazon Silk introduces a radical new paradigm - a "split browser" architecture that accelerates the power of the mobile device hardware by using the computing speed and power of the Amazon Web Services cloud (AWS). The Silk browser software resides both on Kindle Fire and on the massive server fleet that comprises the Amazon Elastic Compute Cloud (Amazon EC2). With each page request, Silk dynamically determines a division of labor between the mobile hardware and Amazon EC2 (i.e. which browser sub-components run where) that takes into consideration factors like network conditions, page complexity and the location of any cached content. The result is a faster web browsing experience, and it's available exclusively on Kindle Fire, Amazon's new Kindle for movies, music, books, magazines, apps, games, and web browsing.

"Kindle Fire introduces a revolutionary new web browser called Amazon Silk," said Jeff Bezos, Amazon.com Founder and CEO. "We refactored and rebuilt the browser software stack and now push pieces of the computation into the AWS cloud. When you use Silk - without thinking about it or doing anything explicit - you're calling on the raw computational horsepower of Amazon EC2 to accelerate your web browsing."

Modern websites have become complex. For example, on a recent day, constructing the CNN.com home page required 161 files served from 25 unique domains. This degree of complexity is common. In fact, a typical web page requires 80 files served from 13 different domains. Latency over wireless connections is high - on the order of 100 milliseconds round trip. Serving a web page requires hundreds of such round trips, only some of which can be done in parallel. In aggregate, this adds seconds to page load times.

Conversely, Amazon EC2 is always connected to the backbone of the internet where round-trip latency is 5 milliseconds or less to most web sites rather than the 100 milliseconds seen over wireless connections. In addition, EC2 servers have massive computational power. On EC2, available CPU, storage, and available memory can be orders of magnitudes larger than on mobile devices. Silk uses the power and speed of the EC2 server fleet to retrieve all of the components of a website and deliver them to Kindle Fire in a single, fast stream.

In addition to having more horsepower than a mobile processor, AWS has peering relationships with major internet service providers, and many top sites are hosted on EC2. This means that many web requests will never leave the extended infrastructure of AWS, reducing transit times to only a few milliseconds. Further, while processing and memory constraints lead most mobile browsers to limit the amount of work they attempt at any one time, using EC2 frees Silk from these constraints. If hundreds of files are required to build a web page across dozens of domains, Silk can request all of this content simultaneously with EC2, without overwhelming the mobile device processor or impacting battery life.

Traditional browsers must wait to receive the HTML file in order to begin downloading the other page assets. Silk is different because it learns these page characteristics automatically by aggregating the results of millions of page loads and maintaining this knowledge on EC2. While another browser might still be setting up a connection with the host server, Silk has already pushed content that it knows is associated with the page to the Kindle Fire before the site has even instructed the browser where to find it.

A typical web request begins with resolving the domain names associated with the server and establishing a TCP connection to issue the http request. Establishing TCP connections for each request consumes time and resources that slow down traditional browsers. Silk keeps a persistent connection open to EC2 so that there is always a connection at the ready to start loading the next page. Silk also uses EC2 to maintain a persistent connection to the top sites on the web. This approach reduces latency that would otherwise result from constantly establishing TCP connections. Further, Silk's split architecture uses a pipelined, multiplexing protocol that can send all the content over a single connection.

Finally, Silk leverages the collaborative filtering techniques and machine learning algorithms Amazon has built over the last 15 years to power features such as "customers who bought this also bought..." As Silk serves up millions of page views every day, it learns more about the individual sites it renders and where users go next. By observing the aggregate traffic patterns on various web sites, it refines its heuristics, allowing for accurate predictions of the next page request. For example, Silk might observe that 85 percent of visitors to a leading news site next click on that site's top headline. With that knowledge, EC2 and Silk together make intelligent decisions about pre-pushing content to the Kindle Fire. As a result, the next page a Kindle Fire customer is likely to visit will already be available locally in the device cache, enabling instant rendering to the screen.

"Silk"

The name "Silk" is inspired by the idea that a thread of silk is an invisible yet incredibly strong connection between two different things. In the case of Amazon Silk, it's the connection between the Kindle Fire and Amazon EC2 that creates a better, faster browsing experience. For more information on Amazon Silk, visit www.amazon.com/silk.

Exclusively on Kindle Fire

Silk is available exclusively on Kindle Fire. To pre-order Kindle Fire, visit www.amazon.com/Kindlefire.

About Amazon Web Services

Launched in 2006, Amazon Web Services (AWS) provides Amazon's developer customers with access to in-the-cloud infrastructure services based on Amazon's own back-end technology platform, which developers can use to enable virtually any type of business. As one of the world's most reliable, scalable, and cost-efficient web infrastructures, AWS has changed the way businesses think about technology infrastructure--there are no up-front expenses or long-term commitments, capital expense is turned into variable operating expense, resources can be added or shed as quickly as needed, and engineering resources are freed up from the undifferentiated heavy lifting of running onsite infrastructure - all without sacrificing operational performance, reliability, or security. AWS now offers over 21 different services, including Amazon Elastic Compute Cloud (EC2), Amazon Simple Storage Service (Amazon S3), and Amazon SimpleDB. AWS services are used by hundreds of thousands of enterprise, government, and startup customers in more than 190 countries around the world, powering everything from the most popular games on Facebook to NASA's Mars Rover project to pharmaceutical drug research.