(57)【要約】【課題】安価でスケーラブルなオープンアーキテクチャメディアサーバを提供する。【解決手段】マルチメディアサーバ１０はクライアント１２に、ソフトリアルタイム保証を必要とするストリーミングデータと、大量の記憶空間を必要とするスタティックデータとを供給する。サーバ１０はプルモードプロトコルを用いて、クライアントとリアルタイムネットワークを介して通信する。独立したデータおよびコントロールチャネルが、サーバのソフトリアルタイム能力を強化する。【選択図】図１
2010015586.tif 000002
【特許請求の範囲】
【請求項１】
データオブジェクトを、複数のマルチメディアクライアントに、リアルタイムネットワークを介して伝送するマルチメディアサーバであって、
前記ネットワークからアクセス可能であり、前記マルチメディアクライアントからコントロールチャネルを介して受けたアドミッション要求を評価するマスタコーディネータを備え、
前記マスタコーディネータは、アドミッションが認められた要求マルチメディアクライアントからのデータオブジェクトに対する要求に応答して、当該各要求マルチメディアクライアントに対応するクライアントコーディネータを生成し、
前記クライアントコーディネータは、当該要求マルチメディアクライアントのセッション手続を前記コントロールチャネルを介して管理するとともに、データオブジェクトを要求するものであり、
前記マスタコーディネータは、さらに、前記データオブジェクトを格納するリソースデータベースのブロックサイズと所要レートを決定し、このブロックサイズと所要レートを前記要求マルチメディアクライアントに送るものであり、前記データオブジェクトはそれぞれ複数のデータブロックを含み、
前記クライアントコーディネータの１つからの，少なくとも１つのデータオブジェクトに対する要求に応答して、この要求されたデータオブジェクトを要求マルチメディアクライアントに、前記コントロールチャネルから独立したデータチャネルを介して、伝送するストレージマネージャを備え、
前記ストレージマネージャは、前記リソースデータベースに格納された、伝送可能な少なくとも１つのデータオブジェクトを表すストリーミングデータを記憶するデータ記憶ユニットを有し、
前記データ記憶ユニットは、データを、選択可能な所定のブロックサイズからなるデータブロックの階層構造として記憶するように構成されており、
前記複数のマルチメディアクライアントのうちの１つのクライアントは、対応するクライアントコーディネータに前記データオブジェクトの特定のデータブロックを要求する要求を送り、前記ストレージマネージャは、前記特定のデータブロックを前記データ記憶ユニットから前記クライアントに送る
ことを特徴とするマルチメディアサーバ。
【請求項２】
請求項１記載のマルチメディアサーバにおいて、
前記ストレージマネージャは、さらに、前記データ記憶ユニットのデータストライピング（data striping）を含んでいる
ことを特徴とするマルチメディアサーバ。
【請求項３】
請求項１のマルチメディアサーバにおいて、
前記データ記憶部は、ディスクミラーリングを用いて、冗長ディスクを設けている
ことを特徴とするマルチメディアサーバ。
【請求項４】
請求項１のマルチメディアサーバは、
サーバホスト間のメッセージを制御する、独立した，ホスト内コントロールチャネルを備えている
ことを特徴とするマルチメディアサーバ。
【請求項５】
請求項１のマルチメディアサーバは、
アドミッションコントローラを備えている
ことを特徴とするマルチメディアサーバ。
【請求項６】
請求項１のマルチメディアサーバは、
リソースアドミニストレータを備えている
ことを特徴とするマルチメディアサーバ。
【請求項７】
データオブジェクトを、複数のマルチメディアクライアントに、独立したデータおよびコントロールチャネルを有するリアルタイムネットワークを介して伝送するマルチメディアサーバであって、
前記ネットワークからアクセス可能であり、前記マルチメディアクライアントから前記コントロールチャネルを介して受けたアドミッション要求を受けるマスタコーディネータと、
前記マスタコーディネータと接続され、サーバアドミッションポリシーを実行し、前記サーバアドミッションポリシーに従ったアドミッション要求を認めるアドミッションコントローラとを備え、
前記マスタコーディネータは、アドミッションが認められたマルチメディアクライアントからのデータオブジェクトに対する要求に応答して、当該各マルチメディアクライアントに対応するクライアントコーディネータを割り当て、
前記クライアントコーディネータは、当該マルチメディアクライアントのセッション手続を前記コントロールチャネルを介して管理するとともに、データオブジェクトを要求するものであり、当該各マルチメディアクライアントに割り当てられたクライアントコーディネータが存在しており、
前記マスタコーディネータは、さらに、前記データオブジェクトを格納するリソースデータベースのブロックサイズと所要レートを決定し、このブロックサイズと所要レートを前記要求マルチメディアクライアントに送るものであり、前記データオブジェクトはそれぞれ複数のデータブロックを含み、
前記クライアントコーディネータの１つからの，少なくとも１つのデータオブジェクトに対する要求に応答して、この要求されたデータオブジェクトを、データオブジェクトを要求するクライアントコーディネータに対応するマルチメディアクライアントに、前記データチャネルを介して伝送するストレージマネージャを備え、
前記ストレージマネージャは、前記リソースデータベースに格納された、伝送可能な少なくとも１つのデータオブジェクトを表すストリーミングデータを記憶するデータ記憶ユニットを有し、
前記データ記憶ユニットは、データを、選択可能な所定のブロックサイズからなるデータブロックの階層構造として記憶するように構成されており、
前記複数のマルチメディアクライアントのうちの１つのクライアントは、対応するクライアントコーディネータに前記データオブジェクトの特定のデータブロックを要求する要求を送り、前記ストレージマネージャは、前記特定のデータブロックを前記データ記憶ユニットから前記クライアントに送る
前記マスタコーディネータは、外れるマルチメディアクライアントからの終了メッセージに応答して、前記外れるマルチメディアクライアントに対応する前記クライアントコーディネータを消すものである
ことを特徴とするマルチメディアサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、ネットワークマルチメディアシステムに関する。特に、リアルタイムで大容量のデータを保存・検索するために利用可能な，安価でスケーラブルなオープンアーキテクチャマルチメディアサーバに関する。
【背景技術】
【０００２】
コンピュータの能力の向上に伴い、画像や音声データのような選択されたマルチメディアデータを配信可能な低価格ネットワークに対する要望が高まってきている。ホテルや航空会社の娯楽システム、ニュース編集、オンデマンドビデオ、対話型テレビは、その中でも非常に有望なアプリケーションである。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ネットワークに分散できるデータには様々なタイプがある。音声や画像データといったストリーミングデータには厳密なデッドラインがある。静止画やビデオオブジェクトのような静的データは大容量の記憶空間を必要とする。静的データとともにストリーミングデータの配信を行うネットワークでは、メディアサーバは、両タイプのデータオブジェクトの要求を満たすように厳しい制約を受ける。両タイプのデータオブジェクトを満たす１つの方法として、マルチメディアサーバーに能力の高いコンピュータが利用されてきた。この種のコンピュータの例としては、マルチプロセッサ、ミニコンピュータ、および、十分な記憶容量と目標となる数のクライアントにサーブ可能なバンド幅とを有するハイエンドワークステーションが挙げられる。一般に、これらのサーバは非常に高価で、スケーラブルではない。
【課題を解決するための手段】
【０００４】
本発明では、低価格で入手が容易なハードウェア部品を利用するＰＣによって構築した分散アーキテクチャサーバを採用することによって、この問題を解決している。もちろん、他の低価格コンピュータを利用してもかまわない。サーバは、まず、限られた数のディスク、ネットワークバンド幅およびメモリキャッシュによって構成する。次に、より多くのビデオデータやビデオオブジェクトに対する要望が増えるにつれ、ディスク、ネットワークインターフェースカード、メモリキャッシュ等のより低価格のハードウェア部品を追加して、サーバの性能を高めることができる。
【０００５】
サーバファイルシステムは、フォルトトレランス、ネットワークバンド幅の使用、及びハードウェアレベルでの記憶空間の使用を改善するために、数多くの独自の能力を併せ持っている。冗長記憶装置を用いることによって、ハードウェアレベルでのフォルトトレランスを高めることができ、ディスククラッシュの場合でもデータは失われない。ソフトウェアレベルでは、記憶装置がデータを短期間ストリーミング記憶するためのローカルキャッシュバッファによって、フォルトトレランスが改善され、ディスククラッシュから故障なく回復できる。また、フォルトトレランスは、データリンクレイヤにおいて、コントロールパスをデータパスから分離させることによっても改善できる。コントロールパスとデータパスを分離すれば、データパスへよりも高品質のサービスをコントロールパスへ与えることが可能になり、この結果、より信頼性の高い動作が得られる。データパスは、サーバがクライアントからのデータ要求に応えるための最大限の努力を行うソフトリアルタイム保証を、提供する。サーバは、異なるサイズのデータブロックを扱うことのできる階層的ファイルシステムを備えているため、使用可能記憶空間の利用が改善される。ファイルシステム内の空きデータブロックは、より大きなブロックの形成と共に併合され、記憶システムのフラグメンテーションが減少する。ネットワークのバンド幅の使用を高め、ディスク使用を改良するために、データブロックはディスクアレイにストライプ（stripe）される。
【図面の簡単な説明】
【０００６】
【図１】本発明の好ましい実施例を示すネットワークデータグラムである。
【図２】本発明の内部構造を示すデータグラムである。
【図３】本発明の好ましい実施例の配信ファイルシステムを示すデータグラムである。
【図４】クライアントによる読出し要求を示すデータグラムである。
【図５】クライアントによる書込み要求を示すデータグラムである。
【図６】ディスク分割のデータグラムである。
【図７】本発明の好ましい実施例のデータとコントロールチャネルネットワークスタックを示すデータグラムである。
【図８】コントロールチャネルネットワークスタックのメッセージ配信レイヤを示すデータグラムである。
【発明を実施するための形態】
【０００７】
図１及び図２によれば、高価でなくかつスケーラブルであるマルチメディアサーバ１０が、リアルタイムネットワーク１４を通じて複数のクライアント１２にサービスを提供するように描かれている。サーバ１０は、その下に位置する物理ネットワークから独立であるように、データリンクレイヤにおけるデータチャネルのためのオープンスタンダードプロトコルを適用する。したがって、Ethernet、Fibre channel、ＡＴＭ等の、任意のネットワークアーキテクチャが利用可能である。図２は、マルチメディアシステムを例示している。このシステムは、上記高価でなくかつスケーラブルであるマルチメディアサーバ１０の好ましい実施形態と、リアルタイムネットワーク１４と、システムリソースデータベース１６と、少なくとも１つのクライアント１２とで構成される。サーバ１０は、Microsoft Windows NTオペレーティングシステムのようなオペレーティングシステムを走らせる、１以上のＰＣＳ（好ましくはPentium以上）を有している。クライアント１２は、プレゼンテーションマネージャ１５と、クライアントネットワークレイヤ１７と、ローカルバッファ１３とを含んだ、通常のＰＣＳ（好ましくはPentium以上）である。クライアントネットワークレイヤ１７は、メディアオブジェクトのダウンロードに係るタイムシーケンスの種々の変更について責任を負いながら、ローカルバッファ１３にデータブロックを書き込む。本発明におけるシステムリソースデータベース１６は、ＯＤＢＣを通じてサーバ１０にリンクされた、Microsoft Accessリレーショナルデータベースである。クライアント１２とシステムリソースデータベース１６とは、高速Ethernetネットワークを通じてサーバに接続されている。好ましい実施形態では、互いに分離されたコントロールチャネルとデータチャネルとを持つように設計される。ただし、本発明は、データとコントロールとの共通チャネルを持つネットワーク上でも動作し得る。
【０００８】
マルチメディアサーバ１０の主なシステムコーディネーション機能は、マスタコーディネータ１８によって達成される。マスタコーディネータ１８は、「ゲートウェイ−レベル１」の役割を果たし、かつ全てのクライアント１２のための単一のエントリポイントを提供する。アドミッションコントローラ２０は、マスタコーディネータ１８から要求を受け取ると、サーバのクライアントアドミッションポリシーを実行する。このアドミッションコントローラ２０は、システムリソースデータベース１６及びリソースアドミニストレータ２２に問い合わせをして、アドミッション要求を認めるか否かを決定する。リソースアドミニストレータ２２は、ディスクの記憶容量、ディスクのバンド幅、ネットワークのバンド幅、ＣＰＵの利用可能性等の、種々のサーバリソースをモニタする。クライアントのデリバリ要求が認められたときには、個々のクライアント１２に対応するように、クライアントコーディネータ２４がマスタコーディネータ１８により生成される。クライアントコーディネータ２４は、全てのクライアントセッションの進行を管理する。クライアント１２の要求に応答して、クライアントコーディネータ２４は、システムリソースデータベース１６に問い合わせをし、選択要求に係るマルチメディアオブジェクトがサーバ１０の分散ファイルシステム２６の中に存在するか否かを決定する。分散ファイルシステム２６は、サーバのデータオブジェクトを格納している。当該データオブジェクトは、リアルタイムネットワークを介してクライアント１２へ配信される。本発明の実施形態は互いに分離されたデータチャネルとコントロールチャネルとを備えているが、共通チャネルも本発明の範囲に入る。
【０００９】
図３には、分散ファイルシステムが例示されている。この分散ファイルシステムの好ましい実施形態は、Windows NTホストシステムの中に組み込まれた２つのディスクサブシステム３２を含んでいる。これらのディスクサブシステムは、各々４つの同一ＳＣＳＩディスクを持っている。各ディスクサブシステム内では、２つのＳＣＳＩディスクがプライマリディスク３４であり、他の２つのＳＣＳＩディスクがセカンダリディスク３６である。各ディスクは、対応するストレージマネージャにより管理される。ただし、単一のストレージマネージャが複数のディスクを管理してもよいし、また複数のストレージマネージャが単一ディスクの各部分を管理してもよい。ディスクサブシステムスケジューラ３８は、当該ファイルシステム２６のシーク時間及びデッドライン時間を最適化する。このスケジューラ３８は、リード要求及びライト要求を保持するためのキュー４２と、ディスクサブシステム３２へのライトの前にデータを記憶するためのバッファ４４とを備えている。フォールトトレランスモジュール４０は、ＲＡＩＤ−レベル１のディスクミラーリングを実行する。その結果、１００％の冗長ディスクが実現する。このミラーリングにより、ディスクフェイル時のデータアベイラビリティが向上し、かつ応答時間が改善される。
【００１０】
図７に好適な実施例におけるデータ／コントロールチャネルネットワークスタックを示す。データチャネルネットワークスタック２３は、例えばＴＣＰや、ＵＤＰ、またはＲＴＰなどのオープンプロトコルスタンダードに適合するものである。各サーバのデータチャネルには、単一のネットワークスタックが適用される。しかし、本発明の原理は、各サーバについて複数のデータチャネルネットワークスタックを含むように拡張することは容易にできる。コントロールチャネルには、コントロールチャネルネットワークスタック２５内のスイッチドデータリンクレイヤ、および個別のネットワークレイヤが適用される。図８に示すように、ネットワークレイヤのメッセージデリバリレイヤ４６は、送信側と受信側とのペア間でのホストに独立なメッセージ交換を提供する。サーバプロセスからのメッセージは、メッセージデリバリレイヤ４６に送られ、出力キュー５０に保持される。キューに保持された、ローカルデスティネーションを含むメッセージは、メッセージデリバリレイヤ４６によって適切なプロセスの受信キューにルーティングされる。また、キューに保持された、リモートデスティネーションを含むメッセージは、コントロールネットワークを介して、リモートホストのメッセージデリバリレイヤ４６に送られる。そこで、リモートホストは、メッセージを適当なプロセスの受信キューにルーティングする。コントロールパスが狭い帯域しか必要としないことは、コントロールメッセージのブロードキャストやマルチキャストを可能にする。
【００１１】
クライアントは、メディアオブジェクトをファイルネームで要求することにより、マルチメディアセッションを初期化する。要求は、コントロールチャネルネットワークスタック２５を介して、マスタコーディネータ１８に送られる。マスタコーディネータ１８は、システムリソースデータベース１６に、メディアの利用可能性とともにブロックサイズや平均所要レートおよびファイルの長さを決定するための問い合わせをする。マスタコーディネータ１８は、また、アドミッションコントローラ２０に、新たな要求に答えるための要求されたリソースがサーバにあるかどうかを決定をするための問い合わせをする。要求がアドミッションコントローラ２０によって受け入れられると、マスタコーディネータ１８は、アドミッション承認メッセージをクライアント１２に送る。このメッセージには、セッション管理情報、例えば、承認、平均所要レート、およびデータブロックサイズが含まれる。そこで、マスタコントローラ１８は、クライアントに対応した個別のクライアントコーディネータ２４を生成する。クライアントコーディネータ２４は、残りの全てのクライアントセッション手続きを管理する。
【００１２】
プルモードオペレーションは、メディアオブジェクトを検索するために用いられる。プルモードでは、クライアントは、そのクライアントがメディアオブジェクト全体を受け取るまで、繰り返し、サーバ１０に要求を送って別個のデータブロックを要求する。プルモードを用いれば、クライアント１２による、より柔軟で適切なローカルバッファ１３の制御を可能にする。クライアント１２は、バッファのオーバフローやアンダフローを回避するためにデータブロック要求の頻度を調整することによって、ローカルバッファ１３使用の最適化が可能となる。ポールモードと対照になるのは、プッシュモードである。プッシュモードでは、クライアントはメディアオブジェクトの配信を要求する１つの要求をサーバに送る。そこで、サーバは、ローカルバッファの状態を考慮することなく、同期的にデータブロックをクライアントに送る。プッシュモードでは、クライアントとサーバとの間でのコントロールメッセージは少ないが、クライアントはそのローカルバッファの状態に応じたコントロールをすることはできない。
【００１３】
クライアント１２は、マスタコーディネータ１８からアドミッション要求の承認を受け取ると、要求されたメディアオブジェクトを受け取るためのプルモードオペレーションを開始することができる。クライアント１２は、対応するクライアントコーディネータ２４にブロック読み出しメッセージを発行する。クライアントコーディネータ２４は、ブロック読み出しメッセージを分散ファイルシステム２６に転送する。図３に示すように、分散ファイルシステム内では、要求は、ディスクサブシステムスケジューラ３８のキュー４２に入れられる。キュー４２は、読み出しおよび書きこみ要求の両方を管理する。上記スケジューラ３８は、キューに蓄積された要求を処理する際に先着・先提供サービス規則を適用する。上記スケジューラ３８は、要求をキュー４２から適切なプライマリストレージマネージャ２８に転送し、そのマネージャは、プライマリ物理ストレージデバイス３４からデータを検索して、検索されたデータをデータチャネルネットワークスタック２３を介してクライアント１２に送る。同時に、適切なセカンダリストレージマネージャ３０は、同じデータをセカンダリ物理ストレージデバイス３６から検索して、検索されたデータをディスクサブシステムスケジューラ３８内のバッファ４４に送る。バッファされたデータは、プライマリディスクが読み取り処理中に故障した場合のフォールトトレランスのために用いられる。フォールトトレランスについては後述する。クライアント１２は、そのクライアント１２がメディアオブジェクト全体を受け取るまで、繰り返し、クライアントコーディネータ２４に要求を送って、別個のデータブロックを要求する。検索セッションを終了するためには、クライアント１２は、対応するクライアントコーディネータ２４に終了メッセージを送る。そこで、マスタコーディネータ１８は、クライアントコーディネータ２４を抹消する。プルモード処理の同様な方式が、また、トリックモードプレーに用いられる。しかし、トリックモードでは、先行するモードで最後に再生されたフレームのＩＤがメディアオブジェクトの配信開始要求に含まれる。
【００１４】
図５において、サーバは読み出し要求に対する場合と同じように、書き込み要求に応答する。クライアント１２は、コントロールチャネルネットワークスタック２５を介して、書き込み要求をマスタコーディネータ１８に送る。マスタコーディネータ１８は、利用可能であって必要なリソースを分散ファイルシステム２６が有しているか否かを決めるために、システムリソースデータベース１６に問い合わせる。そして、マスタコーディネータ１８は、新たな要求に応じるのに必要なリソースをサーバが有しているか否かを決定するために、アドミッションコントローラ２０に問い合わせる。アドミッションコントローラによる承認を受けると、マスタコーディネータ１８は、承認応答メッセージ（approval response message）をクライアントに送る。また、マスタコーディネータ１８は、そのクライアントに対応する唯一のクライアントコーディネータ２４を生成する。クライアントコーディネータ２４は、指定された大きさのデータのブロックを要求する書き込み要求メッセージをクライアント１２に送る。クライアント１２は、データブロックを、サーバデータチャネルネットワークスタック２３を介して、ディスクサブシステムスケジューラ３８内のバッファ４４に直接送る。また、このデータブロックに関する書き込み要求がキュー４２に入力される。スケジューラ３８は、物理ディスクへのデータブロックの書き込み期限を指定する。この期限は、入力レート（feed-in rate）とバッファサイズとの関数である。読み出し及び書き込み要求を１つのキューに保持するので、同時に読み出し及び書き込みを行う能力が向上する。書き込み要求がキュー４２のトップになると、バッファ４４内のデータブロックは複数のディスクに分割して記録される（図６参照）。複数のディスクにわたるディスクストライピング（disk striping）は、複数の読み出し／書き込みパスを提供することにより、ディスクの利用性を高め、ボトルネックを最小にする。ディスクサブシステムスケジューラ３８は、ディスクに格納されるデータブロックの大きさを、用いられている圧縮方法に応じて変える。異なるブロックサイズを生成することができるので、サーバは、異なる消費レート（consumption rate）を有するリアルタイムストリームをサポートすることができる。物理ディスク３４上のデータブロックは、階層構造によって管理されており、階層ツリーにおける同じ階層にある空きブロックは、併合されてより大きなブロックとなる。空きブロックを併合するので、データブロックの挿入、削除を繰り返すために通常生じるフラグメンテーション（fragmentation）を最小にすることができる。
【００１５】
バッファ４４、読み出し及び書き込み要求用の共通キュー４２、及び可変ブロックサイズは、それぞれ、読み出し要求のためのソフトリアルタイム保証（soft real-time guarantee）を提供する、サーバ１０の能力に寄与する。ソフトリアルタイム保証を提供するシステムは、全ての読み出し及び書き込み要求を実行するよう最善の努力をする。しかし、データの通信量（traffic）がシステムの能力を超えるときには、全ての書き込み要求が確実に受け取られるようにするため、読み出し要求の中には実行されないものがある。データの通信量が増加するにつれ、実行されない読み出し要求の数が増加するので、その結果、映像出力の画質が見苦しくない程度に低下する。クライアント１２の許される最大の数、データオブジェクトのブロックサイズ、バッファ４４の大きさ、及びデータチャネルネットワークスタックの数、更に他のパラメータを制御することによって、同時に供給されるデータストリームの数を最大にすることができる。
【００１６】
本発明の本実施形態では、ＲＡＩＤレベル１のディスクミラーリング（disk mirroring）を実施することによって、ハードウェアレベルの耐故障性（fault tolerance）を組み入れている。プライマリディスク３４への書き込みは全て、セカンダリディスク３６に対しても行われる。図３において、セカンダリディスクの故障が生じたときには、対応するセカンダリストレージマネージャ３０は、その故障をマスタコーディネータ１８に報告する。プライマリディスクの故障が生じたときには、対応するプライマリストレージマネージャ２８は、その故障及び影響を受けたデータブロック要求のＩＤ番号をマスタコーディネータ１８に報告する。プライマリディスクが故障するとき、デバイスが実際に故障してからサーバに通知されるまで時間がある。この初期ディスク故障期間（initial disk failure period）中に失われたデータブロックを置き換えるために、スケジューラ３８のバッファ４４に格納されたデータブロックが用いられる。故障通知を受けると、マスタコーディネータ１８は、セカンダリストレージマネージャ３０をプライマリストレージマネージャ２８に昇格させ、影響を受けたデータブロックのＩＤ番号を送信する。新たなプライマリストレージマネージャ２８は、示されたデータブロックを、データチャネルネットワークスタック２３を介してクライアント１２に直接送信する。以前に故障したディスクが再び使用可能になったときには、対応するストレージマネージャがマスタコーディネータ１８に通知する。通知を受けると、マスタコーディネータ１８は、セカンダリストレージマネージャ３０としてサーバ１０に再び加わるように、そのストレージマネージャに指示をする。
【００１７】
以上のことから、本発明は、リアルタイム配信（realtime delivery）又は大きな格納スペースのいずれかを必要とするデータオブジェクトを欲するクライアントに情報を提供するための、安価で、スケーラブルなマルチメディアサーバを提供することが理解されるであろう。このサーバは、低コストなパーソナル通信サービス（PCS）や他の類似のハードウェアに基づいていてもよく、規模を大きくしたり小さくしたりすることが容易にできる。したがって、このサーバは、効率的でロバスト性を有するものであり、クライアントの数が変動する場合に、クライアントに提供するサービスのレベルの選択を非常に柔軟に行うことができる。
【００１８】
本発明について、現時点で好適な実施形態において説明したが、添付した請求の範囲に明らかにされているように、本発明は、その趣旨を逸脱しない範囲内で修正や変更をすることができるということが理解されるであろう。
【図１】
2010015586.tif 000003
【図２】
2010015586.tif 000004
【図３】
2010015586.tif 000005
【図４】
2010015586.tif 000006
【図５】
2010015586.tif 000007
【図６】
2010015586.tif 000008
【図７】
2010015586.tif 000009
【図８】
2010015586.tif 000010