(57)【要約】プロバイダ・データを提供するプロバイダを含み、複数のリクエスタからの予約速度に基づいてネットワーク帯域幅を最適化するシステムを開示する。またこのシステムは、第１の予約速度でプロバイダ・データを要求した第１のリクエスタと、第２の予約速度でプロバイダ・データを要求した第２のリクエスタとを含む。第２の予約速度は第１の予約速度より高い。またこのシステムは複数の介在アクセス・ノードを含む。各介在アクセス・ノードは、介在アクセス・ノードを通して送られる全てのプロバイダ・データとこれに対応する予約速度とを指定する要求情報を含む。複数の介在アクセス・ノードは、リクエスタがリクエスタ予約速度を下げると隣接するノードへの速度を下げて、プロバイダから最終リクエスタまでの共通伝送路上の全ての速度を最適化して利用可能な帯域幅を最大にするように形成される。
2005537753.tif 000002
【特許請求の範囲】
【請求項１】
複数のリクエスタからの予約速度に基づいてネットワーク帯域幅を最適化するシステムであって、
プロバイダ・データを提供するプロバイダと、
前記プロバイダ・データを第１の予約速度で要求した第１のリクエスタと、
前記プロバイダ・データを前記第１の予約速度より高い第２の予約速度で要求した第２のリクエスタと、
複数の介在アクセス・ノードであって、各介在アクセス・ノードは前記介在アクセス・ノードを通して送られる全てのプロバイダ・データとこれに対応する予約速度とを指定する要求情報を含み、前記複数の介在アクセス・ノードは、リクエスタがリクエスタ予約速度を下げると隣接するノードへの速度を下げて、前記プロバイダから最終リクエスタまでの共通伝送路上の全ての速度を最適化して利用可能な帯域幅を最大にするように形成される、複数の介在アクセス・ノードと、
を備えるネットワーク帯域幅を最適化するシステム。
【請求項２】
前記プロバイダは埋込み装置である、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項３】
少なくとも１つのリクエスタは埋込み装置である、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項４】
少なくとも１つの介在アクセス・ノードは埋込み装置である、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項５】
前記複数の介在アクセス・ノードで介在アクセス・ノード・ネットワークを構成する、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項６】
前記プロバイダは１つ以上のウエブ・サービスを提供し、また前記プロバイダ・データは前記１つ以上のウエブ・サービスに関係する、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項７】
前記要求情報は、受信するデータを識別するデータＩＤと、前記受信するデータの送り先を記述する次のノードと、前記受信するデータの予約速度とを含む、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項８】
前記要求情報は、チャンネルを識別する入出力チャンネルと、前記受信するデータの送り先を記述するノードと、入出力チャンネルから受信するデータとこれに対応する予約速度の全ての要求を識別する要求とを含む、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項９】
各介在アクセス・ノードは更に、前記第２のリクエスタが前記第２の予約速度を前記第１の予約速度以下の新しい速度に下げると、前記プロバイダから前記第１のリクエスタおよび前記第２のリクエスタまでの共通伝送路上の介在アクセス・ノードが前記速度を前記第１の予約速度に下げて利用可能な帯域幅を最適化するように形成される、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項１０】
各介在アクセス・ノードは更に、前記第１のリクエスタが前記第１の予約速度を下げると、前記プロバイダから前記第１のリクエスタおよび前記第２のリクエスタまでの共通伝送路上の介在アクセス・ノードが同じ速度を保持するように形成される、請求項１記載のネットワーク帯域幅を最適化するシステム。
【請求項１１】
複数のリクエスタからの予約速度に基づいてネットワーク帯域幅を最適化するシステムであって、
プロバイダ・データを提供する埋込みプロバイダと、
前記プロバイダ・データを第１の予約速度で要求した第１のリクエスタと、
第２のリクエスタであって、前記プロバイダ・データを前記第１の予約速度より高い第２の予約速度で要求し、前記第１のリクエスタと前記第２のリクエスタの一方は埋込み装置である、第２のリクエスタと、
複数の介在アクセス・ノードであって、各介在アクセス・ノードは前記介在アクセス・ノードを通して送られる全てのプロバイダ・データとこれに対応する予約速度とを指定する要求情報を含み、前記複数の介在アクセス・ノードは、リクエスタがリクエスタ予約速度を下げると隣接するノードへの速度を下げて、前記プロバイダから最終リクエスタまでの共通伝送路上の全ての速度を最適化して利用可能な帯域幅を最大にするように形成される、複数の介在アクセス・ノードと、
を備えるネットワーク帯域幅を最適化するシステム。
【請求項１２】
前記複数の介在アクセス・ノードで介在アクセス・ノード・ネットワークを構成する、請求項１１記載のネットワーク帯域幅を最適化するシステム。
【請求項１３】
前記プロバイダはＳＯＡＰを用いる１つ以上のウエブ・サービスを提供し、また前記プロバイダ・データは前記１つ以上のウエブ・サービスに関係する、請求項１１記載のネットワーク帯域幅を最適化するシステム。
【請求項１４】
前記要求情報は、受信するデータを識別するデータＩＤと、前記受信するデータの送り先を記述する次のノードと、前記受信するデータの予約速度とを含む、請求項１３記載のネットワーク帯域幅を最適化するシステム。
【請求項１５】
前記要求情報は、チャンネルを識別する入出力チャンネルと、前記受信するデータの送り先を記述するノードと、入出力チャンネルから受信するデータとこれに対応する予約速度の全ての要求を識別する要求とを含む、請求項１３記載のネットワーク帯域幅を最適化するシステム。
【請求項１６】
各介在アクセス・ノードは更に、前記第２のリクエスタが前記第２の予約速度を前記第１の予約速度以下の新しい速度に下げると、前記プロバイダから前記第１のリクエスタおよび前記第２のリクエスタまでの共通伝送路上の介在アクセス・ノードが前記速度を前記第１の予約速度に下げて、利用可能な帯域幅を最適化するように形成される、請求項１３記載のネットワーク帯域幅を最適化するシステム。
【請求項１７】
各介在アクセス・ノードは更に、前記第１のリクエスタが前記第１の予約速度を下げると、前記プロバイダから前記第１のリクエスタおよび前記第２のリクエスタまでの共通伝送路上の介在アクセス・ノードが同じ速度を保持するように形成される、請求項１６記載のネットワーク帯域幅を最適化するシステム。
【請求項１８】
プロバイダからのサービスを予約する複数のリクエスタからの予約速度に基づいてネットワーク帯域幅を最適化する方法であって、前記複数のリクエスタはコンピュータ・ネットワークにより前記プロバイダと電子的に通信し、前記方法は、
ウエブ・サービスに関するプロバイダ・データを埋込みプロバイダが提供し、
第１のリクエスタは第１の予約速度で前記サービスを要求し、
第２のリクエスタは前記サービスを前記第１の予約速度より高い第２の予約速度で要求し、
コンピュータ・ネットワーク上の複数の介在アクセス・ノードは前記リクエスタと前記埋込みプロバイダとの間に情報を送り、各介在アクセス・ノードは前記介在アクセス・ノードを通して送られる全てのプロバイダ・データとこれに対応する予約速度とを指定する要求情報を含み、前記複数の介在アクセス・ノードは、リクエスタがリクエスタ予約速度を下げると隣接するノードへの速度を下げて、前記埋込みプロバイダから最終リクエスタまでの共通伝送路上の全ての速度を最適化して利用可能な帯域幅を最大にするように形成される、
ことを含む、ネットワーク帯域幅を最適化する方法。
【請求項１９】
少なくとも１つのリクエスタは埋込み装置である、請求項１８記載のネットワーク帯域幅を最適化する方法。
【請求項２０】
前記複数の介在アクセス・ノードで介在アクセス・ノード・ネットワークを構成する、請求項１９記載のネットワーク帯域幅を最適化する方法。
【請求項２１】
前記要求情報は、受信するデータを識別するデータＩＤと、前記受信するデータの送り先を記述する次のノードと、前記受信するデータの予約速度とを含む、請求項２０記載のネットワーク帯域幅を最適化する方法。
【請求項２２】
前記要求情報は、チャンネルを識別する入出力チャンネルと、前記受信するデータの送り先を記述するノードと、入出力チャンネルから受信するデータとこれに対応する予約速度の全ての要求を識別する要求とを含む、請求項２０記載のネットワーク帯域幅を最適化する方法。
【請求項２３】
各介在アクセス・ノードは更に、前記第２のリクエスタが前記第２の予約速度を前記第１の予約速度以下の新しい速度に下げると、前記プロバイダから前記第１のリクエスタおよび前記第２のリクエスタまでの共通伝送路上の介在アクセス・ノードが前記速度を前記第１の予約速度に下げて利用可能な帯域幅を最適化するように形成される、請求項２１記載のネットワーク帯域幅を最適化する方法。
【請求項２４】
各介在アクセス・ノードは更に、前記第１のリクエスタが前記第１の予約速度を下げると、前記プロバイダから前記第１のリクエスタおよび前記第２のリクエスタまでの共通伝送路上の介在アクセス・ノードが同じ速度を保持するように形成される、請求項２３記載のネットワーク帯域幅を最適化する方法。
【請求項２５】
埋込み介在アクセス・ノードであって、
プロセッサと、
前記プロセッサと電子的に通信するネットワーク・インターフェースと、
前記プログラムと電子的に通信して、前記介在アクセス・ノードを通して送られる全てのプロバイダ・データとこれに対応する予約速度とを指定する要求情報を記憶するためのメモリと、
前記メモリ内に記憶され、リクエスタがリクエスタ予約速度を下げると隣接するノードへの速度を下げて、プロバイダから最終リクエスタまでの共通伝送路上の全ての速度を最適化して利用可能な帯域幅を最大にする方法を実現する、プログラム命令と、
を備える埋込み介在アクセス・ノード。
【請求項２６】
前記プロバイダは１つ以上のウエブ・サービスを提供し、また前記プロバイダからのプロバイダ・データは前記１つ以上のウエブ・サービスに関係する、請求項２５記載の埋込み介在アクセス・ノード。
【請求項２７】
前記要求情報は、受信するデータを識別するデータＩＤと、前記受信するデータの送り先を記述する次のノードと、前記受信するデータの予約速度とを含む、請求項２５記載の埋込み介在アクセス・ノード。
【請求項２８】
前記埋込み介在アクセス・ノードはプロトコル変換器として動作するように更にプログラムされる、請求項２５記載の埋込み介在アクセス・ノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般にコンピュータ・ネットワークに関するもので、より特定すると、望ましい予約速度に基づくサブネットワーク帯域幅の最適化に関するものである。
【背景技術】
【０００２】
コンピュータおよび通信技術は急速に発展している。実際のところ、コンピュータおよび通信技術は人の日常の多くの局面に関わっている。例えば、消費者が今日用いている多くの装置は装置内に小型コンピュータを有する。かかる小型コンピュータの大きさと複雑さは多岐にわたる。かかる小型コンピュータは、１個のマイクロコントローラから全機能を有する完全なコンピュータ・システムまであらゆるものを含む。例えば、かかる小型コンピュータは、マイクロコントローラなどのワンチップ・コンピュータや、コントローラなどのワンボード型のコンピュータや、ＩＢＭ−ＰＣ互換機などの代表的なデスクトップ・コンピュータでよい。
【０００３】
コンピュータは一般に、そのコンピュータの心臓部に１個以上のプロセッサを有する。通常、プロセッサは種々の外部入出力に接続して、特定のコンピュータや装置を管理する。例えば、サーモスタット内のプロセッサは、温度設定を選択するのに用いられるボタンや、温度を変える暖房機や空調機や、現在の温度を読んでディスプレイ上に表示する温度センサに接続してよい。
【０００４】
多くの器具や装置は１個以上の小型コンピュータを含む。例えば、サーモスタット、暖房機、空調システム、冷蔵庫、電話、タイプライタ、自動車、自動販売機、多くの異なる種類の産業設備は、一般にその内部に小型コンピュータまたはプロセッサを有する。コンピュータ・ソフトウエアはかかるコンピュータのプロセッサを走らせて、或るタスクを実行する方法をプロセッサに指示する。例えば、サーモスタット上で走るコンピュータ・ソフトウエアは或る温度に達すると空調機を停止させ、または必要に応じてヒータをオンにする。
【０００５】
装置や器具や道具などの一部であるこの種の小型コンピュータは埋込み装置と呼ばれることが多い。「埋込み装置」という用語は、通常、大きなシステムの一部であるコンピュータ・ハードウエアおよびソフトウエアを指す。埋込み装置はキーボードやマウスやモニタなどの代表的な入出力装置を有しなくてよい。通常、各埋込み装置の心臓部には１個以上のプロセッサがある。
【０００６】
上に述べたように、埋込み装置は多くの異なるシステムや資源や製品などを監視または制御するのに用いてよい。インターネットやワールド・ワイド・ウエブの発展と共にますます多くの埋込み装置がインターネットに接続されるので、遠隔で監視および／または制御することが可能である。構内通信網や広域網などを含むコンピュータ・ネットワークに接続する埋込み装置もあってよい。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
埋込み装置の中にはコンピュータ・ネットワークを用いて他の計算装置にデータおよび／またはサービスを提供するものがある。かかる要求する計算装置は指定された速度でデータおよび／またはサービスを提供するよう要求してよい。この情報を送るコンピュータ・ネットワークは、この通信に用いられる帯域幅を最適化するための十分な、および／または望ましい手段を提供しないことがある。要求する計算装置が望む速度に基づいてサブネットワークの帯域幅を最適化するシステムと方法が与えられれば益するところが大きい。
【実施例】
【０００８】
容易に理解されるように、ここに一般的に説明し図示する実施の形態の構成要素は種々の異なる構成で配列し設計することができる。したがって、図に示す本発明の方法と装置の実施の形態に関する以下の詳細な説明は特許を請求する本発明の範囲を制限するものではなく、本発明の実施の形態の単なる代表例である。
【０００９】
この明細書を通して「１つの実施の形態」または「或る実施の形態」とは、その実施の形態に関して記述する特定の機能や構造や特徴が本発明の少なくとも１つの実施の形態に含まれることを意味する。したがって、本明細書を通していろいろのところに現れる「１つの実施の形態では」または「或る実施の形態では」という表現は、必ずしも全てが同じ実施の形態を指すわけではない。
【００１０】
また、記述されている機能や構造や特徴は、任意の適当な方法で１つ以上の実施の形態に結合してよい。以下の説明では、本発明の実施の形態を完全に理解できるように多くの特定の詳細が示されている。しかし当業者が理解するように、１つ以上の特定の詳細がなくても、または他の方法や構成要素や材料を用いても、本発明は実施することができる。或る場合には、本発明の態様が分かりにくくなることを避けるために、周知の構造や材料や動作の詳細は図示も説明もしない。
【００１１】
プロバイダ・データを提供するプロバイダを含み、複数のリクエスタからの予約速度に基づいてネットワーク帯域幅を最適化するシステムを開示する。予約は時間ベースまたは変化ベースの更新である。またこのシステムは、プロバイダ・データを第１の予約速度で要求した第１のリクエスタと、プロバイダ・データを第２の予約速度で要求した第２のリクエスタとを含む。第２の予約速度は第１の予約速度より高い。更に、このシステムは複数の介在アクセス・ノードを含む。各介在アクセス・ノードはその介在アクセス・ノードを通して送られる全てのプロバイダ・データとこれに対応する予約速度とを指定する要求情報を含む。複数の介在アクセス・ノードは、リクエスタがリクエスタ予約速度を下げると隣接するノードへの速度を下げて、プロバイダから最終リクエスタまでの共通伝送路上の全ての速度を最適化して利用可能な帯域幅を最大にするように形成される。
【００１２】
埋込み装置をこのシステムに用いてよい。例えば、プロバイダは埋込み装置でよい。また１つ以上のリクエスタも埋込み装置でよい。
上に述べたように、このシステムは複数の介在アクセス・ノードを含む。複数の介在アクセス・ノードで介在アクセス・ノード・ネットワークを構成してよい。
プロバイダはウエブ・サービスのプロバイダでよい。プロバイダがウエブ・サービスのプロバイダの場合は、プロバイダ・データは１つ以上のウエブ・サービスに関係してよい。
【００１３】
要求情報は種々の形式で実現してよい。１つの実施の形態では、要求情報は受信するデータを識別するデータＩＤを含む。また要求情報は受信するデータの送り先を記述する次のノードを含んでよい。予約速度も含んでよい。
別の実施の形態では、要求情報はチャンネルを識別する入出力チャンネルを含んでよい。また要求情報は受信するデータの送り先を記述するノードを含んでよい。また、入出力チャンネルから受信するデータとこれに対応する予約速度とについて全ての要求を識別する要求も含んでよい。
【００１４】
更に各介在アクセス・ノードは、第２のリクエスタが第２の予約速度を第１の予約速度以下の新しい速度に下げると、プロバイダから第１のリクエスタおよび第２のリクエスタまでの共通の伝送路上の介在アクセス・ノードが速度を第１の予約速度に下げて利用可能な帯域幅を最適化するように形成される。また介在アクセス・ノードは、第１のリクエスタが第１の予約速度を下げると、プロバイダから第１のリクエスタおよび第２のリクエスタまでの共通の伝送路上の介在アクセス・ノードが同じ速度を保つように形成される。
【００１５】
プロバイダからのサービスを予約する複数のリクエスタからの予約速度に基づいてネットワーク帯域幅を最適化する方法も開示する。複数のリクエスタはコンピュータ・ネットワークを通してプロバイダと電子的に通信する。埋込みプロバイダはウエブ・サービスに関係するプロバイダ・データを提供する。第１のリクエスタは第１の予約速度でサービスを要求する。第２のリクエスタは第２の予約速度でサービスを要求する。第２の予約速度は第１の予約速度より高い。リクエスタと埋込みプロバイダとの間の情報はコンピュータ・ネットワーク上の複数の介在アクセス・ノードにより送られる。各介在アクセス・ノードは、介在アクセス・ノードを通して送られる全てのプロバイダ・データとこれに対応する予約速度とを指定する要求情報を含む。複数の介在アクセス・ノードは、リクエスタがリクエスタ予約速度を下げると隣接ノードへの速度を下げて、埋込みプロバイダから最終リクエスタまでの共通の伝送路上の全ての速度を最適化して利用可能な帯域幅を最大にするように形成される。
【００１６】
図１は、ネットワーク１００内の２つの介在アクセス・ノードを示すネットワーク・ブロック図である。プロバイダ１０２はネットワーク１００と電子的に通信する。図１のネットワークの実施の形態１００はネットワーク１００と電子的に通信する２つのリクエスタ１０４を含む。介在アクセス・ノード１０６もネットワーク１００上にある。ネットワーク１００上には更に多くのノードがあってよい。
【００１７】
介在アクセス・ノード１０６は、ネットワーク１００に機能とサービスとを提供するネットワーク・ノードである。介在アクセス・ノード１０６は種々の方法で用いてよい。例えば、介在アクセス・ノード１０６はネットワーク上に存在して、ネットワーク１００上のコンピュータやアプリケーションやオブジェクトにサービスを提供してよい。また介在アクセス・ノード１０６はプロトコル変換器として用いてよい。介在アクセス・ノード１０６は埋込みでもよいし、企業のトラフィックを処理できるほど十分大きくてもよい。
【００１８】
介在アクセス・ノード１０６が含んでよい１つの機能はオブジェクトの洗練に関する。オブジェクトの洗練とは、介在アクセス・ノード１０６が自分をオブジェクトの代わりに用いて、同じインターフェースを異なった方法で実現することを指す。これにより、とりわけ、或るインターフェースの実現における問題を、インターフェースの実際の最終プロバイダを変えずに解決することができる。
【００１９】
介在アクセス・ノード１０６の別の機能はオブジェクトの増強の機能である。オブジェクトの増強とは、最終プロバイダがサポートしないオブジェクトに介在アクセス・ノード１０６が新しいインターフェースを追加することである。
現在の設計では介在アクセス・ノード１０６はクライアントと装置とを区別しないので、追加された全てのサービスは全ての（許可された）接続されたエンティティすなわちノードに利用することができる。
【００２０】
図１に示すネットワークはウエブ・サービスの多くの機能を承継してよい。ウエブ・サービスはウエブ・プロトコル（通常、ＨＴＴＰやＳＯＡＰ）を用いてアクセスされる。この構造はネットワーキングのピア・ツウ・ピア・パラダイムに基づく。
相互に通信する多数の介在アクセス・ノード１０６は介在アクセス・ノード・ネットワーク１１０を形成する。リクエスタ１０４および／またはプロバイダ１０２には、介在アクセス・ノード・ネットワーク１１０の１つ以上の介在アクセス・ノード１０６は単一の介在アクセス・ノード１０６のように見える。介在アクセス・ノード・ネットワーク１１０内に含まれる大きさと数とはプロバイダ１０２および／またはリクエスタ１０４には見えない。
【００２１】
プロバイダ１０２はネットワーク１００上のノードであって、サービス１０８のソースである。リクエスタ１０４はネットワーク１００上のノードであって、サービス１０８のユーザである。リクエスタ１０４はノード上に実現されるソフトウエア・エンティティであって、プロバイダ１０２を直接発見し、サービス１０８の種々の態様を用いてこれを制御しまたはこれと対話する。
【００２２】
サービス１０８は計算装置が提供する任意の種類のサービスでよい。サービス１０８の例として挙げられるのは、或る場所から温度データを与えたり、監視データを与えたり、天気情報を与えたり、オーディオ・ストリームを与えたり、ビデオ・ストリームを与えたりすることである。当業者が認識するように、プロバイダ１０２は多くの種々のサービスおよび／またはデータをコンピュータ・ネットワーク１００により提供してよい。
【００２３】
プロバイダ１０２は埋込みプロバイダでよい。埋込みプロバイダとは埋込み装置上に実現されるプロバイダ１０２である。埋込み装置とは、代表的なデスクトップ・コンピュータに関連する同じ構成要素の全ては含まない種類の計算装置である。例えば、埋込み装置の中にはモニタを含まないものや、キーボードやマウスを含まないものや、モニタまたはキーボード／マウスを含まないものがある。多くの埋込み装置はマイクロコントローラ・ベースの装置である。すなわち、埋込み装置の中央処理装置はマイクロコントローラである。埋込み装置については図１０に関して説明する。
【００２４】
ここで用いる「ネットワーク」という用語は、一連のノードが通信経路により相互接続されているシステムを指す。ノードとは、他のノードと通信する物理的な計算装置である。ノードの特定の挙動はそれが実行するアプリケーションまたはソフトウエアにより決まる。ネットワークのノード上で走るアプリケーションは、プロトコル（データをネットワークで送る規則を形式化したもの）を実現するソフトウエア・モジュールを通して相互に通信する。データ伝送のタイミングやシーケンシングや誤りチェックを処理するプロトコルもあるし、データのフォーマッティング方法や、ノードが交換するコマンドや応答を処理するプロトコルもある。協同するプロトコルの集合をプロトコル・スタックと呼び、各プロトコルはスタック内の別の層の上に構築された層として作用する。プロトコル・スタックの上層はアプリケーションが使用し、その中層はノード間のデータのグループ（パケットやフレーム）の転送を処理し、その下層はデータを転送するネットワーキング・ハードウエアを直接処理する。
【００２５】
物理ネットワークは、何らかの種類の物理的媒体（例えば、電線、光ファイバ、空気）により接続されるノードから成る。この物理的接続はリンクと呼ばれることがある。２つのノードに限定される物理ネットワークをポイント・ツウ・ポイントと呼んでよく、３つ以上のノードをサポートする物理ネットワークを多元接続と呼んでよい。多元接続ネットワーク上の各ノードは１つの物理アドレスを有し、これはネットワーク上の他のノードと区別するのに用いられる。
【００２６】
ノードの特有のグループを指定するために論理ネットワークを物理ネットワーク上に重ねてよい。論理ネットワーク内の各ノードは論理アドレスを有し、これはプロトコルによりそのノードの物理アドレスにマップされる。サブネットワーク（すなわちサブネット）はネットワークの物理的にまたは論理的に独立した部分であって、サブネット番号により区別される。
【００２７】
多くのプロトコルは論理ネットワークを扱う。なぜなら、多くの物理ネットワーク問題はすでに多くの明確な実例を有しており、新しい物理層を定義する必要がないからである。また論理ネットワークの利点は、物理ネットワークから隔離されるので、より一般的に有用であることである。例えば、ＴＣＰ／ＩＰは論理ネットワーク（ＩＰ）の上に定義されている。ＩＰは多くの物理ネットワーク（イーサネット（登録商標）、シリアル、無線など）上で走ることができる。このため、ＴＣＰ／ＩＰは、何か特定の物理ネットワークだけに関して定義されるより一般的な解を与える。
【００２８】
ネットワーク１００内には任意の数の介在アクセス・ノード１０６を用いてよい。図２は、図に示すように多数の介在アクセス・ノード２０６を含むネットワーク２００を示す。３つのリクエスタが介在アクセス・ノード２０６と電子的に通信する。図２に示すネットワークの実施の形態では、３つのリクエスタの全てが、プロバイダ２０２が提供するサービス２０８を要求する。サービス２０８からのデータは介在アクセス・ノード・ネットワーク２１０を通して送られる。
【００２９】
図２の介在アクセス・ノード・ネットワーク２１０は図１の介在アクセス・ノード・ネットワーク１１０と同様に動作する。代表的な動作を説明すると、リクエスタ１０４，２０４とプロバイダ１０２，２０２とは、図１の介在アクセス・ノード・ネットワーク１１０と図２の介在アクセス・ノード・ネットワーク２１０とを区別しない。また図２にリクエスタ／プロバイダ２０５で示すように、ノードはリクエスタとプロバイダとを兼ねて機能してよい。
【００３０】
図３は介在アクセス・ノードの或る実施の形態３０６のブロック図である。介在アクセス・ノード３０６は、このノード３０６がデータをその宛先に送るのに必要な情報を記憶する。種々のデータの送り先を追跡するための情報を介在アクセス・ノード３０６が記憶する方法はいろいろある。図３の介在アクセス・ノード３０６は、データＩＤ３０２と、次のノード３０４と、速度３０６とを記憶する。データＩＤ３０２フィールドは介在アクセス・ノード３０６に入来するデータまたはデータ・ストリームを識別する。次のノード３０４フィールドはこの介在アクセス・ノード３０６からのデータの送り先を示す。すなわち、データを受信する次のノードを示す。速度３０６はデータの伝送速度を示す。速度３０６は予約速度と呼ぶこともある。予約は時間ベースまたは変化ベースの更新である。一般に、リクエスタ１０４が要求する速度を予約速度と呼ぶ。介在アクセス・ノード１０６の間の速度はリクエスタの予約速度により決まる予約速度に関係する。介在アクセス・ノード１０６は、リクエスタがデータを望ましい予約速度で受信するのに十分の速度でデータを受信する。
【００３１】
図４は介在アクセス・ノードの別の実施の形態４０６のブロック図である。介在アクセス・ノード４０６はノード４０６がデータをその送り先に送るのに必要な情報を記憶する。図４の介在アクセス・ノード４０６は、入出力チャンネル４０２と、ノード４０４と、登録要求４０６とを記憶する。入出力チャンネル４０２フィールドは入出力通信チャンネルを識別する。ノード４０４フィールドは、データを受信する次のノードを識別し、および／またはデータを送るのに用いる入出力チャンネル４０２を識別する。登録要求４０６フィールドは、関連する入出力チャンネル４０２を通して入来するデータにどんな要求があるか、またどんな速度が要求されたかを示す。
【００３２】
図５は、ネットワーク１００に接続するプロバイダ１０２の方法の或る実施の形態の流れ図である。５０２で、プロバイダ１０２はネットワーク１００に接続する。次に５０４で、プロバイダ１０２は自分が利用可能であることをネットワーク１００に通知する。５０４で、自分が利用可能であることをプロバイダ１０２が通知すると、ネットワーク１００上の介在アクセス・ノード１０６はこの通知を受信する。次に５０６で、介在アクセス・ノード１０６はプロバイダ１０２が利用可能であることを、利用可能であることの通知を受信するよう予約した全ての他の介在アクセス・ノード１０６および／またはリクエスタ１０４に送る。１つ以上のノードに送られる新しいプロバイダ通知を利用可能性通知と呼んでよい。かかる利用可能性通知は、予約できる任意の他のサービスと同様に予約してよい。
【００３３】
１つ以上の介在アクセス・ノード１０６を、ディレクトリとして作用するようにしてよい。ディレクトリとは、プロバイダの利用可能性とかかるプロバイダと通信する方法とに関して、他のノードに情報を与えるノードである。ディレクトリとして作用する全ての介在アクセス・ノード１０６はディレクトリ内にプロバイダ１０２の情報を記憶する。
【００３４】
リクエスタとプロバイダとの役割は介在アクセス・ノード１０６に接続する装置およびソフトウエア・ノードが行ってよい。また、介在アクセス・ノード１０６はリクエスタおよび／またはプロバイダでよい。例えば、複数の介在アクセス・ノード１０６の間に通信を設定するとき、介在アクセス・ノード１０６はリクエスタ／プロバイダでよい。介在アクセス・ノード１０６が別の介在アクセス・ノード１０６に接続しているとき、ノード１０６がプロバイダに関する情報を要求するときは、ノード１０６はリクエスタとして作用する。介在アクセス・ノード１０６が別の介在アクセス・ノード１０６に他のプロバイダに関する情報を与えるときは、ノード１０６はプロバイダとして作用する。
【００３５】
図６は、プロバイダ１０２とサービス通信リンクを確立するリクエスタ１０４の方法の或る実施の形態の流れ図である。６０２で、リクエスタ１０４はネットワーク１００に接続する。次に６０４で、リクエスタ１０４は介在アクセス・ノード１０６にプロバイダ１０２のリストを要求する。６０６で、リクエスタはプロバイダ１０２のリストを用いて必要とするサービスを決めて、プロバイダ１０２にそのサービスを要求することができる。６０８で、介在アクセス・ノード・ネットワーク２１０はリクエスタ１０４からの要求をプロバイダ１０２に送る。６１０で、プロバイダ１０２は要求されたサービスの提供を始める。
【００３６】
図７は、プロバイダ１０２に送られる、サービスの要求を処理する介在アクセス・ノード１０６の方法の或る実施の形態の流れ図である。一般に、介在アクセス・ノード１０６は、要求を満たすのに十分の速度で自分がすでにサービスを受けているかどうか判定する。そうであれば、介在アクセス・ノード１０６は新しい要求情報を単に記憶して、そのサービスからのデータを新しいノードに提供し始める。
【００３７】
７０２で、介在アクセス・ノード１０６は隣接するノードからサービスの要求を受ける。隣接するノードは別の介在アクセス・ノード１０６でもよいし、リクエスタ１０４でもよい。７０４で、介在アクセス・ノード１０６は要求情報を追跡または記憶する。次に７０６で、介在アクセス・ノード１０６は一致する要求があるかどうか判定する。一致する要求とは、同じデータがすでに受信されていることを意味する。一致する要求がある場合は、７０８で、介在アクセス・ノード１０６はデータが十分な速度で受信されたかどうか判定する。データが十分な速度で受信された場合は、介在アクセス・ノード１０６はその要求を更に伝送する必要はなく、追跡ステップ７０４で記憶した情報が示す新しいノードにデータを伝送する。７０８で速度が十分でないと介在アクセス・ノード１０６が判定した場合は、７１０で、介在アクセス・ノード１０６はプロバイダ１０２側の通信路内の次のノードに要求を送って速度を上げるよう要求する。７０６の一致判定において、一致する要求がないと介在アクセス・ノード１０６が判定した場合は、７１２で介在アクセス・ノード１０６はプロバイダ１０２側の通信路内の次のノードに要求を送ってサービスを要求する。
【００３８】
図８は、サービスを停止する、またはサービスから受けるデータの速度を下げる、という要求を処理する介在アクセス・ノード１０６の方法の或る実施の形態の流れ図である。一般に介在アクセス・ノード１０６は、下げることができない速度で別のリクエスタまたはノードがそのサービスを必要とするかどうか判定し、またはサービスを停止するまたは速度を下げるという要求をプロバイダ１０２側の通信路内の次のノードに送ってサービスを要求すべきかどうか判定する。
【００３９】
８０２で、介在アクセス・ノード１０６は隣接するノードから、サービスの速度を下げる通知、またはサービスの予約を取り消す通知を受ける。この隣接するノードは別の介在アクセス・ノード１０６でもよいし、リクエスタ１０４でもよい。８０４で、介在アクセス・ノード１０６は介在アクセス・ノード１０６の情報を変更してこの要求を反映する。次に８０６で、介在アクセス・ノード１０６は一致する要求があるかどうか判定する。一致する要求とは、同じデータがすでに受信されていることを意味する。一致する要求がない場合は、８０８で、介在アクセス・ノード１０６はプロバイダ１０２側の通信路内の次のノードに要求を送って、予約を取り消すこと、または予約速度を下げることを要求する。一致する要求がある場合は、８１０で、介在アクセス・ノード１０６は速度を下げるか、または予約を取り消すか判定する。
【００４０】
例えば、ＡＢＣという１つのデータＩＤを受信して２つの次のノードＮｅｘｔＮｏｄｅ１とＮｅｘｔＮｏｄｅ２とに、ＮｅｘｔＮｏｄｅ１には１Ｋｈｚで、ＮｅｘｔＮｏｄｅ２には２Ｋｈｚで送ると仮定する。ＮｅｘｔＮｏｄｅ２がその速度を１Ｋｈｚに下げるよう要求した場合は、介在アクセス・ノード１０６は、ＮｅｘｔＮｏｄｅ２の速度を下げるのでデータＩＤ  ＡＢＣの速度を１Ｋｈｚに下げることを決定する。しかし、ＮｅｘｔＮｏｄｅ１がその速度を５００Ｈｚに下げるよう要求した場合は、介在アクセス・ノード１０６は、ＮｅｘｔＮｏｄｅ２がまだ２Ｋｈｚの高い速度を必要とするのでデータＩＤ  ＡＢＣの速度を下げることはできないと判定する。図８に戻って、速度を下げることができる場合は、または予約を取り消すことができる場合は、介在アクセス・ノード１０６はプロバイダ１０２側の通信路内の次のノードに予約の取消しまたは速度の低減を通知する。速度を下げない場合は、介在アクセス・ノード１０６はサービス速度の低減または予約の取消しの処理を終了する。
【００４１】
図９は、データを発信するサービスのプロバイダ１０２側の通信路内のノード（「上流ノード」と呼ぶ）から受信したデータを処理する介在アクセス・ノード１０６の方法の或る実施の形態の流れ図である。９０２で、介在アクセス・ノード１０６は上流ノードからデータを受信する。次に９０４で、介在アクセス・ノード１０６はデータを受信すべきかどうか判定する。介在アクセス・ノード１０６が受信するデータまたはチャンネルを追跡する方法に従って、ノード１０６はこれを種々の方法で判定してよい。図３に示す介在アクセス・ノード１０６の実施の形態では、ノード１０６はデータＩＤ３０２フィールドをチェックしてデータを受信すべきかどうか判定する。図４に示す実施の形態では、ノード１０６はリストされた入出力チャンネル４０２を通してデータが入来しているかどうか調べる。データを受信すべきでないと介在アクセス・ノード１０６が判定した場合は、９０６で上流ノードに通知する。データを受信すべきであると介在アクセス・ノード１０６が判定した場合は、図に示す処理を続ける。
【００４２】
次に９０８で、介在アクセス・ノード１０６はこの速度が必要な最大速度と一致するかどうか判定する。速度が十分でない場合は、９１０で、ノード１０６は必要な速度の要求を上流ノードに通知する。速度が十分である場合は、９１２で、ノード１０６はリクエスタ１０４側の次のノード（「下流ノード」と呼ぶ）にデータを送る。
【００４３】
図１０は、埋込みプロバイダとしてまたは埋込みリクエスタとして用いることのできる、埋込み装置の或る実施の形態に用いてよいハードウエア構成要素のブロック図である。
【００４４】
ＣＰＵ１０１０すなわちプロセッサは、バス１０１２を介してＣＰＵ１０１０に結合する埋込み装置１００２（その他の構成要素を含む）の動作を制御する。ＣＰＵ１０１０は、マイクロプロセッサ、マイクロコントローラ、ディジタル信号処理プロセッサ、またはこの技術で周知の他のデバイスとして実現してよい。ＣＰＵ１０１０は、メモリ１０１４内に記憶されているプログラム・コードに基づいて論理および算術演算を行う。或る実施の形態では、メモリ１０１４はＣＰＵ１０１０に含まれるオンボード・メモリでよい。例えば、マイクロコントローラは或る量のオンボード・メモリを含むことが多い。
【００４５】
埋込み装置１００２はネットワーク・インターフェース１０１６も含んでよい。ネットワーク・インターフェース１０１６は埋込み装置１００２とネットワーク１００に接続する他の装置との間の通信を容易にする。ネットワーク１００は、ページャ・ネットワーク、セルラ・ネットワーク、グローバル通信ネットワーク、インターネット、コンピュータ・ネットワーク、電話ネットワークなどでよい。ネットワーク・インターフェース１０１６は適用可能なネットワーク１００の標準プロトコルに従って動作する。
【００４６】
埋込み装置１００２はメモリ１０１４も含んでよい。メモリ１０１４は一時データを記憶するためのランダム・アクセス・メモリ（ＲＡＭ）を含んでよい。代替的にまたは追加して、メモリ１０１４は固定コードや構成データなどの永久データを記憶するためのリード・オンリー・メモリ（ＲＯＭ）を含んでよい。また、メモリ１０１４はハード・ディスク・ドライブなどの磁気記憶装置として実現してよい。メモリ１０１４は電子情報を記憶することのできる任意の種類の電子装置でよい。
【００４７】
埋込み装置１００２は、他の装置との通信を容易にする通信ポート１０１８も含んでよい。埋込み装置１００２は、キーボード、マウス、ジョイスティック、タッチスクリーン、モニタ、スピーカ、プリンタなどの入出力装置１０２０も含んでよい。
【００４８】
図１１は、プロトコル変換器として作用するネットワーク１１００内の介在アクセス・ノード１１０６ａを示すネットワーク・ブロック図である。この図は図１に示した図と同様である。当業者が認識するように、多くの異なるプロトコルをここの実施の形態と共に用いてよく、またどの例示的な実施の形態もここに示す本発明の原理の使用を制限するものではない。一般に、介在アクセス・ノード１１０６ａは１つのプロトコルから別のプロトコルに変換するプロトコル変換器として作用してもよい。図１１の例はプロトコル変換器の使用を示す。
【００４９】
プロバイダ１１０２はネットワーク１１００と電子的に通信する。図１１のネットワークの実施の形態１１００はネットワーク１１００と電子的に通信する２つのリクエスタ１１０４を含む。また介在アクセス・ノード１１０６はネットワーク１１００上にある。ネットワーク１１００上には更に多くのノードがあってよい。
【００５０】
図に示すように、第１の介在アクセス・ノード１１０６ｂと第２の介在アクセス・ノード１１０６ａとの間にＳＯＡＰが用いられている。しかし、第１のリクエスタ１１０４ａはＳＯＡＰを用いてサービスを受けるが、第２のリクエスタ１１０４ｂは２進プロトコル（例えば、ＲＰＣ）を用いる。介在アクセス・ノード１１０６ａはプロトコル変換器として機能して２進プロトコルを第２のリクエスタ１１０４ｂに与えてよい。プロトコル変換器として作用するとき、介在アクセス・ノード１１０６ａは入来するプロトコルを望ましいプロトコルに変換するので、ノード１１０６ａは望ましいプロトコルを次のノードに伝送することができる。またノード１１０６ａは、ＳＯＡＰフォーマットで通信する必要のある任意のノードにＳＯＡＰ通信を提供する。したがって、受信したプロトコルは１つだけだが、プロトコル変換器として作用する介在アクセス・ノード１１０６ａにより２つ以上のプロトコルが提供される。
【００５１】
多くの種類の埋込み装置があり、装置ネットワークを作る多くの理由がある。装置ネットワーキング・アプリケーションのいくつかの例を以下に示す。当業者が認識するように、これらの例は網羅的なものではない。
【００５２】
装置ネットワーキング・アプリケーションの１つの例は遠隔監視である。多くの有用な装置ネットワークは、１つのノードから他のノードに情報を一方向に転送する遠隔監視に関わる。かかるアプリケーションでは、プロバイダは一般に、リクエスタに応答して或る情報を報告する小型サーバとして活動する。またプロバイダはその状態情報を加入者に公表するようにしてもよい。リクエスタは定期的な報告または状態が変化したときの更新を求めてよい（恐らく、更新を送る頻度を何らかの手段で制限して）。プロバイダは、或る事象または例外的な状態が発生したときにリクエスタに通知するようにしてよい。
【００５３】
装置ネットワーキング・アプリケーションの別の例は遠隔制御である。この場合、リクエスタはコマンドをプロバイダに送って或る特定の行動を起こさせることができる。多くの場合、遠隔制御は何らかのフィードバックを伴う。
【００５４】
装置ネットワーキング・アプリケーションの更に別の例は分散制御システムである。ネットワークを通して個別のプロバイダに関連する機能とデータとを結合し調整して、付加的な価値を与える分散システムを作ることができる。かかる分散制御システムは事実上自動的に確立してよい。多くの場合、より高度の装置がピア・ツー・ピア・ネットワークを統合して、構成や監視や診断の機能を行う。かかるシステムは、ピアとしてまたはマスタ／スレーブ構成を通して通信するオブジェクトで作ってよい。このシステム内の各オブジェクトは、全ての制御論理を含む単一の中心ノードと通信する。
【００５５】
ネットワーキング・アプリケーションの各カテゴリでは、リクエスタとプロバイダとを結ぶ種々の方法がある。比較的少数のプロバイダが関わるときは、リクエスタはウエブ・ブラウザやページャやＷＡＰ可能な携帯電話を用いて、事実上対話的にプロバイダと通信してよい。しかしプロバイダの数が多くなるとかかる方法は実行不可能になり、リクエスタはスプレッドシートやデータベース・アプリケーションなどの、より一般的なデータ管理技術を用いてよい。
【００５６】
時間が経つに従って種々のネットワークが異なる技術で実現されると、複数のネットワークが同じホームすなわち設備内にあり、それぞれが自分のプロトコルを用いるので他と通信できなくなる、という事態が起こる。かかる場合は、種々のネットワークとプロトコルに架橋して単一の大きなネットワークを作るとよい。これにより単一のアプリケーションが各プロバイダにアクセスすることができるので、全てのプロバイダとの対話が簡単になる。
【００５７】
本発明は、その精神と本質的な特性から逸れることなく他の特定の形式で実現してよい。上に説明した実施の形態は全ての点で単なる例であって制限するものではないと考えるべきである。したがって本発明の範囲は、上の説明ではなく添付のクレームにより示される。クレームと同等の意味と範囲内にある全ての変化はその範囲内に含まれるものである。
【図面の簡単な説明】
【００５８】
本発明は、添付の図面と共に参照すれば、ここの説明とクレームとから明らかである。これらの図面は単なる代表的な実施の形態を示すものであって本発明の範囲を制限するものではないことを理解すれば、添付の図面を用いることにより特異性と詳細を追加した実施の形態を示すことができる。
【図１】コンピュータ・ネットワーク内の２つの介在アクセス・ノードを示すネットワーク・ブロック図である。
【図２】コンピュータ・ネットワーク内の複数の介在アクセス・ノードを示すネットワーク・ブロック図である。
【図３】介在アクセス・ノードの或る実施の形態のブロック図である。
【図４】介在アクセス・ノードの別の実施の形態のブロック図である。
【図５】ネットワークに接続するプロバイダの方法の或る実施の形態の流れ図である。
【図６】プロバイダとサービス通信リンクを確立するリクエスタの方法の或る実施の形態の流れ図である。
【図７】プロバイダに送られるサービスの要求を処理する介在アクセス・ノードの方法の或る実施の形態の流れ図である。
【図８】サービスを停止する、またはサービスから受けるデータの速度を下げる、という要求を処理する介在アクセス・ノードの方法の或る実施の形態の流れ図である。
【図９】データを発信するサービスのプロバイダ側の通信路内のノードから受信したデータを処理する介在アクセス・ノードの方法の或る実施の形態の流れ図である。
【図１０】埋込み装置の或る実施の形態に用いてよいハードウエア構成要素のブロック図である。
【図１１】プロトコル変換器として作用する介在アクセス・ノードを示すネットワーク・ブロック図である。
【図１】
2005537753.tif 000003
【図２】
2005537753.tif 000004
【図３】
2005537753.tif 000005
【図４】
2005537753.tif 000006
【図５】
2005537753.tif 000007
【図６】
2005537753.tif 000008
【図７】
2005537753.tif 000009
【図８】
2005537753.tif 000010
【図９】
2005537753.tif 000011
【図１０】
2005537753.tif 000012
【図１１】
2005537753.tif 000013
【国際調査報告】
2005537753.tif 000014