MarioNetインターネットアプライアンスは、サーバー上で動作し、事前にレンダリングされたグラフィック画像を軽量クライアントに送信して表示するアプリケーションです。
これは1999年1月に英国ハンプシャー州アンドーバーのiCentrix Ltdで、ロジャー・アラン・グロス[ 1 ]とアンドリュー・トーマス・ワイトマン率いる元Caldera UKの従業員によって試作された。
MarioNetのコンセプトは、RAMやROMが少なく、処理能力も最小限の非常に小型なクライアントプラットフォームにWebコンテンツを提供するシンクライアントブラウザを構築することでした。これは、さまざまな組み込みオペレーティングシステム、あるいはオペレーティングシステムのないROMプラットフォームでも動作するように設計されていました。サーバー側では、 NetscapeのNavigatorをベースに最近オープンソース化されたWebブラウザであるMozillaが使用されました。両者間の通信には、OPTICと呼ばれる独自のプロトコルが使用されました。
MarioNet の設計のユニークな特徴は、その分割アーキテクチャでした。ブラウザコードの大部分はWeb サーバー上にあり、 HTML処理、ターゲットデバイスへの画像レンダリング、ワールドワイドウェブへの接続など、ほとんどの処理はそこで行われました。リモート制御クライアントは、画像を解凍して表示し、マウスの動きとキーストロークを中継するだけの小さなグラフィックエンジンでした (そのため、マリオネットという言葉遊びが生まれました)。この技術はクラウドブラウザとも呼ばれています。[ 1 ]
ウェブブラウザは、当時も今も、大規模で複雑なプログラムです。リソースを大量に消費するため、高いパフォーマンスを発揮するには、複数のクライアント/サーバー接続が必要です。
この設計の中核を成すのは、 OPTIC(Optimized Protocol for Transport of Images to Clients :クライアントへの画像転送最適化プロトコル)と呼ばれる軽量な独自トランスポートプロトコルでした。このプロトコルは非常にシンプルで、クライアントとサーバー間の接続は1つだけで済みました。OPTICは、RS-232シリアル通信からWi-FiやBluetoothまで、あらゆるトランスポートプロトコル上で動作しました。
起動時に、クライアントは画面の特性(解像度、色深度、物理的なサイズなど)をサーバーに送信し、サーバーはそこで画像を処理して対象デバイス向けにレンダリングします。その後、画像は圧縮され、OPTICプロトコルを介してクライアントに送信され、表示されます。
クライアントソフトウェアの設計はわずか数キロバイトのコードで構成されており、ワイトマンが1990年代初頭にデジタルリサーチ社に在籍していた際に開発した、GROW(Graphical ROMable Object Windows )と呼ばれる小型のROM対応グラフィカルウィンドウシステムに基づいていた。
Mozillaをベースとしたサーバーブラウザは、クライアントサイドレンダリング機能とOPTICプロトコルのサポートを組み込むために再構築された。
概念実証は、英国ハンプシャー州のキンプトン小学校で開発され、試験運用されました。学校の図書館に、Linuxウェブサーバーアプライアンスとクライアント部分を実行する旧式の286 PCで構成されたサイバーカフェが作成されました。この試験運用はメディアの関心を集め[ 2 ] [ 3 ] 、さらに、ジョージ・ヤング下院議員がキンプトン小学校でグロスが行ったデモンストレーションに出席したことで、さらに注目を集めました[ 4 ] 。
当初は関心を集めたものの、チームは発明の特許取得とコンセプトを商業製品に発展させるのに必要な資金を調達するのに苦労したため、グロスが1999年後半にケンブリッジのCitrix UKに入社した際にiCentrixは解散した。
このアイデアは数年間停滞していましたが、2005年にOpera Mini 、2009年1月にBolt(Webブラウザ)といった同様の技術が発表され、軽量クライアントを備えたクライアント/サーバー分離型Webブラウザが登場しました。その後、Amazonは2011年にKindle Fire向けに、Amazon EC2サーバーをベースとした「サーバーアクセラレーション」型の分離型アーキテクチャブラウザ、Amazon Silkを発表しました。