(57)【要約】ネットワークを介してパケットを送信する方法は、送信間隔を互いに離散したタイム・スロットに区画する工程と、送信ノードがパケットをいつ送信するかに関して、送信ノードと受信ノードとの間で合意を得る工程とを含む。対象となる受信ノードは、タイム・スロットがまだ割り当てられていないタイム・スロットを示す受信マップを送信器に送信する。送信器は、送信器が送信に使用するタイム・スロットを含む配信スケジュールを提案する。受信ノードが合意した後、送信器は、合意されたスケジュールに従ってパケットを送信する。他の送信器は、まだ受信ノードに対して割り当てられていないタイム・スロットの間に送信を行うように同様に計画することができる。【特許請求の範囲】
【請求項１】
以下の工程を含む、コンピュータ・ネットワークを介してパケットを送信する方法：
（1）送信ノードから対象となる受信ノードにクエリーを送信する工程；
（2）対象となる受信ノードへの送信が他の送信器と競合しないタイム・スロットを示す受信マップを対象となる受信ノードから受信する工程；
（3）送信ノードがパケットを送信することになっている、受信マップに対応する、タイム・スロットを示す提案された送信マップを、送信ノードから送信する工程；および
（4）提案された送信マップに従って、送信ノードから対象となる受信ノードにパケットを送信する工程。
【請求項２】
工程（4）の前に、対象となる受信ノードから合意を受信する工程、合意が受信されない場合、工程（4）で代わりの送信マップに従って送信を行う工程をさらに含む、請求項1記載の方法。
【請求項３】
代わりの送信マップが、対象となる受信ノードによって提案される、請求項2記載の方法。
【請求項４】
工程（4）が、提案された送信マップに従って対象となる受信ノードにパケットを繰り返し送信する工程を含む、請求項1記載の方法。
【請求項５】
他の送信ノードからすでに割り当てられたタイム・スロットに基づいて受信マップを対象となる受信ノードで生成する工程をさらに含む、請求項1記載の方法。
【請求項６】
受信マップがビットマップを含み、各ビットは複数のタイム・スロットのうちの1つに対応し、その対応するタイム・スロットがすでに割り当てられているかどうかを示す、請求項5記載の方法。
【請求項７】
送信ノードと受信ノードとの間で、提案された送信マップが工程（4）で使用される時間間隔を周期的に同期させる工程をさらに含む、請求項1記載の方法。
【請求項８】
同期工程が、あらゆるネットワーク接続から分離されかつ離れた、同期信号が送信される電気的接続を使用する工程を含む、請求項7記載の方法。
【請求項９】
同期工程が、ネットワークを介して同期パケットを送信する工程を含む、請求項7記載の方法。
【請求項１０】
以下の工程を含む、コンピュータ・ネットワークを介してパケットを送信する方法：
（1）送信ノードから対象となる受信ノードに帯域幅要件を送信する工程；
（2）対象となる受信ノードへの送信が他の送信器と競合しないタイム・スロットを示す送信マップを対象となる受信ノードから受信する工程；および
（3）送信マップに従って送信ノードから対象となる受信ノードにパケットを送信する工程。
【請求項１１】
送信ノードから送信される帯域幅要件に基づいて、対象となる受信ノードで送信マップを生成する工程をさらに含む、請求項10記載の方法。
【請求項１２】
送信ノードと対象となる受信ノードとの間で、送信マップが基づいている時間間隔を同期させる工程をさらに含む、請求項10記載の方法。
【請求項１３】
同期工程が、あらゆるネットワーク接続から分離されかつ離れた、同期信号が送信される電気的接続を使用する工程を含む、請求項12記載の方法。
【請求項１４】
同期工程が、ネットワークを介して同期パケットを送信する工程を含む、請求項12記載の方法。
【請求項１５】
以下の工程を含む、コンピュータ・ネットワークを介してパケットを送信する方法：
（1）送信ノードが対象となる受信ノードへパケットを送信するよう提案する時間に対応するタイム・スロットを示す提案された配信スケジュールを、送信ノードから、対象となる受信ノードに送信する工程；
（2）提案された配信スケジュールが対象となる受信ノードに受け入れられるかどうかを示すものを対象となる受信ノードから受信する工程；および
（3）提案された配信スケジュールが受け入れられる場合、提案された配信スケジュールに従って、対象となる受信ノードにパケットを送信する工程。
【請求項１６】
提案された配信スケジュールが対象となる受信ノードに受け入れられないと判定したときに、対象となる受信ノードから代わりの配信スケジュールを受信し、この代わりの配信スケジュールを使用して工程（3）でパケットを送信する工程をさらに含む、請求項15記載の方法。
【請求項１７】
送信ノードによって使用されることが提案されたタイム・スロットと、他の送信器によって割り当てられた割り当て済みのタイム・スロットを比較することによって、提案された配信スケジュールが受け入れられるかどうかを、対象となる受信ノードで判定する工程をさらに含む、請求項15記載の方法。
【請求項１８】
送信ノードと対象となる受信ノードとの間で、配信スケジュールが基づいている時間間隔を同期させる工程をさらに含む、請求項15記載の方法。
【請求項１９】
同期工程が、あらゆるネットワーク接続から分離されかつ離れた、同期信号が送信される電気的接続を使用する工程を含む、請求項18記載の方法。
【請求項２０】
同期工程が、ネットワークを介して同期パケットを送信する工程を含む、請求項18記載の方法。
【請求項２１】
実行されるときに、以下の工程を実行する実行可能命令によってプログラムされるコンピュータ：
（1）コンピュータが対象となる受信ノードへパケットを送信するよう提案する時間に対応するタイム・スロットを示す提案された配信スケジュールを、対象となる受信ノードに送信する工程；
（2）提案された配信スケジュールが対象となる受信ノードに受け入れられるかどうかを示すものを対象となる受信ノードから受信する工程；および
（3）提案された配信スケジュールが対象となる受信ノードに受け入れられる場合、提案された配信スケジュールに従って、対象となる受信ノードにパケットを送信する工程。
【請求項２２】
実行されたときに、対象となる受信ノードから代わりの配信スケジュールを受信し、該代わりの配信スケジュールを工程（3）でパケットを送信する根拠として使用する工程を実行する実行可能命令をさらに含む、請求項21記載のコンピュータ。
【請求項２３】
提案された配信スケジュールを対象となる受信ノードと同期させる手段をさらに含む、請求項21記載のコンピュータ。
【請求項２４】
手段が対象となる受信ノードにリンクされたワイヤを含み、ワイヤは対象となる受信ノードへのあらゆるネットワーク接続から分離されている、請求項23記載のコンピュータ。
【請求項２５】
手段が、対象となる受信ノードでネットワーク接続を介して送信される同期パケットを処理するコンピュータ命令を含む、請求項23記載のコンピュータ。
【請求項２６】
以下のコンピュータ実行型工程を含む、イーサネットを介してパケットを送信する方法：
（1）送信ノードから対象となる受信側にクエリーを送信する工程；
（2）複数の離散したタイム・スロットがその対象となる受信ノードにパケットを送信するためすでに割り当てられているのはどれかを示す受信マップを対象となる受信ノードで生成する工程であって、各タイム・スロットがイーサネットを介して送信間隔内に単位時間を表す工程；
（3）対象となる受信ノードから送信ノードに受信マップを送信する工程；
（4）送信ノードがイーサネットを介して対象となる受信ノードにパケットを送信することになっている間、受信マップに対応する、タイム・スロットを示す提案された送信マップを送信ノードから対象となる受信ノードに送信する工程；
（5）提案された送信マップに従って、送信ノードから対象となる受信ノードにパケットを送信する工程；および
（6）送信ノードと対象となる受信ノードとの間のあらゆるネットワーク接続から分離されかつ離れた電気的接続を使用することによって、送信ノードと受信ノードとの間の離散したタイム・スロットに応じて時間同期を維持する工程。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の背景
本発明は概して、ネットワークに接続された装置が、互いに協働して、ネットワークに影響を与えずにデータ・パケットを送受信するのを可能にするシステムに関する。
【背景技術】
【０００２】
イーサネット・ネットワークおよびパケット交換インタネット・プロトコル（IP）ネットワークは、様々なポイントの間でデータを送信するシステムである。これらのシステムは、「競合ベースの」システムと呼ばれている。すなわち、すべての送信器がネットワーク・リソースを求めて競合する。すべての送信器は同時に送信を行うことができる。すべての送信器が同時に送信を行った場合、ネットワーク・リソースの需要が過多になる可能性がある。そうすると、データが遅延したり失われたりすることがあり、ネットワークが影響を受ける。
【０００３】
図1に示されているように、従来のネットワークは、イーサネットLANに接続されたコンピュータのような複数のローカル・エリア・ネットワーク（LAN）エンドポイントを含む。エンドポイントは1つまたは複数のLANスイッチ102に結合され、LANスイッチ102はネットワークの他の部分を通して1つまたは複数の他のLANエンドポイント103に接続されている。エンドポイント101がエンドポイント103にパケットを送信するとき、パケットは、他のLANエンドポイントからのパケットも取り扱う他のLANスイッチ102を通して送信される。他のエンドポイントによって103に同時に送信されるパケットが多すぎる場合、LANスイッチ102のキューがオーバーフローし、パケットが失われる恐れがある。（用語「パケット」は、LANまたはワイド・エリア・ネットワーク（WAN）環境におけるデータグラムを指すのに使用される。LAN環境では、パケットは「フレーム」とも呼ばれる。パケット交換WAN環境では、パケット交換装置は通常、「ルータ」と呼ばれる。）
【０００４】
図2は、LAN環境でもWAN環境でも起こる可能性があるパケット喪失問題の性質を示している。複数のエンドポイントがネットワークを介してパケットを同時に送信している周期には、LANスイッチ102が過負荷になり、したがって、いくつかのパケットが破棄される可能性がある。これは通常、LANスイッチ内の内部キューが満杯になり、したがって、発信パケットがキューから除去されるまで新しいパケットを受け入れられなくなることによって起こる。このため、送信器エンドポイントがそのパケットを確実に到着させることができなくなり、伝送制御プロトコル（TCP）のような信頼できる転送プロトコルを使用することなどの他の解決策が必要になるという問題が起こる。このような解決策は、パケットの再送を待つことができないストリーミング・ビデオやその他のリアルタイム・アプリケーションには不適切な場合がある。
【０００５】
本発明者の以前の米国特許出願第10/663,378号で提案された他の解決策では、ネットワーク輻輳条件の経験的な評価に基づいて発信器エンドポイントによってパケットの送信がスケジューリングされる。送信間隔は、互いに離散したフレームおよびサブフレームに区画され、各エンドポイントは、経験的に判定された最小ネットワーク輻輳条件に対応するサブフレーム中のタイム・スロットの間に転送されるようにパケットをスケジューリングする。この方式は、ネットワークにパケットの複数の優先順位レベルが存在することに依存し、したがって、より低いレベルの「発見」優先順位レベルを使用してより高い優先順位のデータ・トラフィックに影響を与えずに経験的な判定を行うことによってパケットを送信することができる。
【０００６】
いくつかのネットワークおよび装置は、データ・パケットの複数の優先順位レベルをサポートすることができない。たとえば、いくつかのパケット・スイッチは、1つのパケット優先順位レベル（すなわち、優先順位付けされたパケット用のキューと優先順位付けされないパケット用の他のキューの2つのキュー）しかサポートすることができず、そのような方式は実施が困難である。したがって、本発明は、イーサネットLANまたはWANパケット交換網のような競合ベースのネットワークを使用してストリーミング・ビデオのような時間の影響を受けるデータを送信するという異なる解決策を提案する。
【発明の開示】
【０００７】
発明の概要
本発明は、配信スケジュールに関する送信ノードと受信ノードとの合意に基づいて各パケットの転送をスケジューリングすることによって、ネットワークにおいて各パケットを送信する方法を提供する。
【０００８】
送信ノードは、対象となる受信ノードにクエリーを送信する。受信ノードは、すでに他の送信ノードによって割り当てられているのはどの送信タイム・スロットであるか（または、代わりに、どの送信タイム・スロットが利用可能であるか）を示す受信マップで対応する。送信ノードは次いで、すでに送信ノードに割り当てられているあらゆるタイム・スロットを考慮に入れて受信ノードに送信マップを提案する。受信ノードは、提案された送信マップを受け入れるかまたは代わりの送信マップを提案する。ノード同士が合意すると、送信ノードは、提案された送信マップに従って送信を開始し、受信ノードは、提案された送信マップをその割当てテーブルに組み込む。提案された配信スケジュールは、2つのエンドポイント間で合意されているので、他の場合にはエンドポイントの近傍のネットワーク・スイッチをオーバフローさせる可能性のある調整されていない競合が回避される。スケジュールは、2つのエンドポイントによって決定されるため、ネットワーク・リソース間の調整を行うネットワークアービタは必要とされない。
【０００９】
他の態様では、送信ノードは、提案された送信（たとえば、ビデオ・パケットのストリーミング）を送信ノードがサポートするのに必要な帯域幅を示す帯域幅要件を、対象となる受信ノードに送信する。対象となる受信ノードは、すでに他の送信器に割り当てられているタイム・スロットを評価した後、送信器に必要な帯域幅を維持しつつ、すでにスケジューリングされている他のパケットとの競合を回避するため、送信器がパケットを送信すべきタイム・スロットを示す提案された配信スケジュールで対応する。送信器はその後、提案された配信スケジュールによってパケットを送信する。
【００１０】
他の態様では、送信ノードは、送信ノードがパケットを送信するよう提案する時間に対応するタイム・スロットを示す提案された配信スケジュールを、対象となる受信器に送信する。対象となる受信器は、提案された配信スケジュールに合意するか、または送信器の帯域幅要件を考慮に入れた代わりの配信スケジュールを提案する。ノード同士が合意すると、合意された配信スケジュールに従って送信が行われる。スケジュールは送信の終了時に解除することができる。
【００１１】
発明の詳細な説明
図3は、本発明の仕組みを実施する一方法を示している。この方法について説明する前に、本発明によってパケットをネットワークを介してノード同士の間で転送できるようにパケットをスケジューリングするにはどうするかについて説明することが役立つ。
【００１２】
図6を参照すると、送信間隔は、データ・パケットを送信できる時間の単位および（任意に）小単位に分割されている。図6の例では、100ミリ秒の任意の送信間隔（マスター・フレーム）をそれぞれの持続時間が10ミリ秒のサブフレームに分割することができ、各サブフレームをそれぞれの持続時間が1ミリ秒の二次サブフレームに分割することができる。各二次サブフレームは、持続時間が100マイクロ秒のタイム・スロットに分割される。したがって、100ミリ秒の周期は、持続時間が100マイクロ秒の1000個のスロットを含む。本発明の一態様によれば、受信ノードへの各送信帯域幅単位の転送周期は、図6に示されている方式などの方式を使用して分割され、各パケットは、送信時にこのスケジュールに従って各タイム・スロットに割り当てられる。この方式は、ネットワークにおける時分割マルチプレキシング（TDM）に類似している。
【００１３】
パケット・サイズおよび基本的なネットワーク帯域幅に応じて、実際には各タイム・スロットのある可変的な一部を使用してパケットが送信される。125バイト（1000ビット）のパケット・サイズと10mbpsで動作する10BaseTイーサネットとを仮定すると、単一の100マイクロ秒タイム・スロットを使用して各パケットが送信される。1500バイトのパケット・サイズを仮定すると、各パケット送信によって12個の100マイクロ秒間隔が消費される。
【００１４】
本発明の一態様によれば、このスケジューリング転送方式は、ネットワークにおける優先順位付けされたパケットに適用され、他の優先順位付けされないパケットはこの方式に含められない。したがって、優先順位トラフィックおよび非優先順位トラフィックのみをサポートするシステムでは、このスケジューリング転送方式はすべての優先順位トラフィックに適用され、アドホック・ネットワーク・トラフィックは引き続き優先順位なしで転送される。言い換えれば、すべての優先順位トラフィックは、非優先順位トラフィックが転送される前に転送される。
【００１５】
図6の配信スケジュールは、例示的なものに過ぎず、他の周期方式を使用することができる。たとえば、送信間隔を図示のようにサブフレームに分割する必要はなく、その代わり、任意の間隔を、各タイム・スロットを特定の送信ノードに割り当てることのできる100ミリ秒タイム・スロットに分割することができる。もちろん他の周期を使用することができ、本発明は、任意の特定のタイム・スロット方式に限定されるものではない。この配信スケジュールは、グローバル・ポジショニング・システム（GPS）から与えられるようなクロックから得ることができる。タイム・スロットをネットワークにおいて同期させる手段について以下に詳しく論じる。
【００１６】
送信ノードがネットワークを介して音声接続をサポートする必要があると仮定する。シングルVoIP（Voice-over-IP）接続の場合、毎秒64キロビットの帯域幅が必要になることがある。80バイトまたは640ビットのパケット・サイズを仮定すると、このことは、（平均で）10ミリ秒ごとに1つのパケットに相当する毎秒100個のパケットを送信しなければならないことを意味する。図6の例では、このことは、図の1番下で各10番目の二次サブフレーム中の少なくとも1つのタイム・スロットの間にパケットを送信することを意味する。（各タイム・スロットは100マイクロ秒に相当し、したがって、平均では、100ミリ秒ごとに1つのパケットが必要になり、二次サブフレーム10個ごとに1つのパケットが必要になる）。
【００１７】
図3に戻ると、工程301で、送信ノードは、ネットワークにおける対象となる受信ノードに、受信マップを求めるクエリーを送信する。
【００１８】
受信マップ（図7参照）は、受信ノードによって受信できるように、すでに他の送信器に割り当てられているタイム・スロット（またはまだ割り当てられていないタイム・スロット、または送信の候補であるタイム・スロット）を示すデータ構造である。より一般的には、受信マップは、対象となる受信ノードへの送信が他の送信器と競合しないタイム・スロットを何らかの形式で示すデータ構造である。このようなマップを表す数多くの方法があるが、各ビットが1つのタイム・スロットに対応し、「1」が、タイム・スロットが送信ノードに割り当てられていることを示し、「0」が、タイム・スロットがまだ割り当てられていないことを示すビットマップを使用する手法がある。したがって、図7は、配信スケジュールの25個のタイム・スロットを表しており、あるタイム・スロット（図7では「x」で示されている）はすでに他の送信器に割り当てられている。100ミリ秒転送間隔を100マイクロ秒タイム・スロットに分割する場合、受信マップには1000ビットが存在する。このマップは、帯域幅が高いほど大きくなる。たとえば、毎秒100メガビットのリンクの場合、マップは、同じスロット当たりスループットを表すのに10,000ビットなどを有してよい。
【００１９】
工程302で、対象となる受信ノードは、すでに他の送信器に割り当てられているのはどのタイム・スロットかを示す、図7に示されているような受信マップで対応する。これがこの受信ノードに最初に送信を行う送信器である場合、受信マップは空になる。もちろん、最初の送信をサポートするためにタイム・スロットが同じ送信器にすでに割り当ててあってもよい（すなわち、同じ送信器が同じ受信側との第2の接続を確立する必要がある）。
【００２０】
工程303で、送信器は、提案された送信マップを対象となる受信ノードに送信する。提案された送信マップは好ましくは、対象となる受信ノードから受信された割り当てられたタイム・スロットを考慮しており、したがって、すでに割り当てられているタイム・スロットは避けられる。送信器は、すでに割り当てられているタイム・スロットを避けつつ、送信に必要な帯域幅をサポートするのに十分なタイム・スロットを割り当てる。
【００２１】
電話音声接続をサポートするためにネットワーク上に2つのノード間に仮想接続を確立すると仮定する。VoIP接続には、80バイト・ペイロード・パケット（パケット・ヘッダを含まない）を使用した毎秒64キロバイトの転送測度が必要になることがある。ビデオ・ストリームは通常、ネットワークにこれよりも高い帯域幅要件を課す。イーサネットLAN上では、各パケットは最大で1,500バイトを含み、これは（10BaseT速度で）それぞれ100マイクロ秒の約12周期またはスロットで送信することができる。VoIP接続は、10ミリ秒ごとに1つの80バイト・ペイロード・パケットを送信することによって確立することができる。
【００２２】
工程304で、対象となる受信側は、提案された送信マップをレビューし、それに合意するか、または代わりの送信マップを提案する。たとえば、対象となる受信側が、送信器が帯域幅の交渉を行っている間に、提案されたタイム・スロットの一部を他の送信器に割り当てた場合、新たに提案された配信スケジュールと対立する可能性がある。この状況では、対称となる受信側は、送信器の帯域幅要件を維持する他のマップを提案することができる。
【００２３】
工程305で、送信器は、合意された配信スケジュールに従って、対象となる受信器に繰り返し送信を行う。送信器は、VoIP接続をサポートするために、80バイト・パケットを10ミリ秒ごとに送信することができる。ストリーミング・ビデオ接続の場合、送信器はより頻繁に送信を行うことができる。最後に、工程306で、受信側のマップは、送信器がもはや送信を行う必要がなくなったときに割当てを解除する。
【００２４】
2方向通信の場合、一方が、ノードAがノードBへの送信を行うための接続であり、他方の接続が、ノードBがノードAへの送信を行うための接続である2つの別々の接続を確立しなければならない。本発明の仕組みについては1方向送信に関して説明するが、2方向接続が望ましい場合は他方のエンドポイントで同じ工程が繰り返されることを理解されたい。
【００２５】
図4は、本発明の仕組みを実施する他の方法を示している。まず工程401で、送信器は、対象となる受信側に帯域幅要件を送信する。たとえば、送信器は、パケット・サイズおよび帯域幅を指示することができ、対象となる受信側は、その帯域幅をサポートするのにどのスロットを割り当てることができるかを判定することができる。工程402で、対象となる受信側は、すでに割り当てられているタイム・スロットを考慮して、提案された送信マップを送って応答する。
【００２６】
工程403で、送信器は、提案された送信マップに合意し、対象となる受信側に、合意されたタイム・スロットに「ロック・イン」させ（この工程は省略することができる）、工程404で、送信器は、合意されたスケジュールに従ってパケットを送信する。最後に工程405で、送信マップは、接続の終了時に割当てを解除する。
【００２７】
図5は、本発明の方法の他の態様を示している。工程501で、送信ノードは、提案された送信マップを対象となる受信側に送信する。工程502で、対象となる受信側は、提案された送信マップに合意する（提案された送信マップがいずれかのすでに割り当てられているマップに対応する場合）か、または提案された送信マップから推論することのできる送信器の帯域幅要件を満たす他のマップを提案する。たとえば、送信器がタイム・スロット1、11、21、31、41、、、における送信を提案している場合、送信器が10タイム・スロットごとに一度送信を行う必要があることは明白である。要求されたスロットが利用可能でない場合、対象となる受信側はその代わりにスロット2、12、22、32、、、を提案する。
【００２８】
工程503で、送信器は、合意された配信スケジュールに従って送信を行い、工程504で、送信の終了時に送信マップが割当て解除される。
【００２９】
他の態様では、送信器は帯域幅を要求することができ（たとえば、10ミリ秒ごとに1つの1000バイト・パケット）、受信側はプレースメント・メッセージ（たとえば、75番目の100マイクロ秒スロットから始める）で対応する。受信側は、複数の代替で対応することもできる（たとえば、75番目、111番目、または376番目のタイム・スロットから始める）。送信器は、使用を予定していたタイム・スロット（たとえば、111番目）で対応し、送信を開始する。この態様は、本明細書における意味での「送信マップ」および「受信マップ」の送信の範囲内であることを目的としている。
【００３０】
各送信器および受信側が配信スケジュールに合意するには、ノード同士の間にある時間同期を確立し維持することが望ましいかまたは必要である。図8は、ネットワーク内のノード間の配信スケジュールを同期させる1つの考えられる手法を示している。
【００３１】
図8に示されているように、ネットワークは、スイッチ802を通して接続された様々なエンドポイントを含む。本発明の一態様によれば、クロック・ソース804（たとえば、GPSから得られるクロック）は、電線805を通して、スケジューリング転送方式に参加する各ネットワーク・ノードに結合される。クロック・ソースは、各ノードに送信され、配信スケジュールの根拠として使用されるパルスを生成する。各ノードは、タイマ・カード、またはタイミング信号を使用して共通の基準フレームを確立することのできる他の機構（たとえば、割込み駆動オペレーティング・システム）を含んでよい。したがって、この同期手段は、同期信号を各ノードに送信するための（ネットワークから分離されかつ離れた）物理的ワイヤを含んでよい。この手段はさらに、同期信号を検出し復号するためハードウェア・カードおよび／またはソフトウェアを各ノードに含んでよい。
【００３２】
クロック・パルスは、パルスの開始時に同期させられるタイム・スロットを生成するために各ノードによって使用される合意された間隔（たとえば、1秒）によるパルスを含んでよい。または、クロック・ソースは高周波数信号を生成することができ、この信号は次いで、各ノードによってタイム・スロットに分割される。もちろん、他の手法も可能である。他の方法として、各ノードは、米国政府によって送信される無線信号のような共通の基準信号に（GPSまたはその他の手段を介して）同期させられるノード自体のクロック・ソースを含んでよい。ワイヤ805は、同軸ケーブル、またはクロック・ソースを各ノードに接続する他の手段を含んでよい。一態様では、接続は、送信の影響および遅延が回避されるように十分に短い距離（数百フィート）の接続である。これらの同期手段はどれも互いに独立に使用することができる。
【００３３】
各ノード間でタイム・スロットおよび配信スケジュールを同期させる他の方法または手段は、あるノードに、ノード上の同期パケットをネットワークを介して（たとえば、マルチキャストを介して）周期的に送信させることである。各ノードは、このパケットを受信し、それを使用して参照のために内部クロックを同期させる。マルチキャスト手法の代わりに、あるネットワーク・ノードを、送信に伴うスタガー遅延を考慮しつつ、参加している各ネットワーク・ノードに個々に同期パケットを送信するように構成することができる。たとえば、同期ノードは、ネットワーク上の第1のノードに同期パケットを送信し、次いでネットワーク上の第2のノードに同じパケットを送信する。パケットは、第2のノードには遅れて受信される。この時間差を、定量化し、共通の基準点に対して補正するのに使用することができる。もちろん他の手法も可能である。
【００３４】
図9は、本発明の仕組みを使用することにより、送信器と受信側との間でデータ・パケットをより効率的にスケジューリングすることによって、輻輳をどのように低減させるかを示している。図9に示されているように、各送信ノードが、転送すべきパケットを、他のノードによって送信されるパケットと競合しない時間にスケジューリングするため、失われるパケットはない。
【００３５】
本発明を実施する現在好ましい態様を含む特定の例に関して本発明を説明したが、当業者には、添付の特許請求の範囲に記載された本発明の趣旨および範囲内の上述のシステムおよび技術の多数の態様および修正態様があることが理解されよう。本明細書に記載されたあらゆる方法工程は、コンピュータ・ソフトウェアで実現することができ、かつ汎用または専用コンピュータで実行できるようにコンピュータ可読媒体上に記憶することができ、そのようなコンピュータ可読媒体は、対象となる発明の範囲内に含まれる。本発明は、方法だけでなく、本発明の仕組みを実施するようにプログラムされたコンピュータ・ノードにも拡張される。特許請求の範囲内のプロセス工程に関連する番号付けは、都合上のものに過ぎず、特定の順序付けやシーケンスを意味するとみなすべきではない。
【図面の簡単な説明】
【００３６】
【図１】パケットを失わせるオーバフロー状態をパケット・スイッチにおいて発生させるバースト状態のパケットの問題を示す図である。
【図２】2組のエンドポイントがバースト条件の下で共通のネットワーク・リソースを共用する場合にネットワークの輻輳によってどのようにパケットが失われるかを示す図である。
【図３】送信ノードと対象となる受信ノードとの間の送信用の配信スケジュールを調整する一方法を示す図である。
【図４】送信ノードと対象となる受信ノードとの間の送信用の配信スケジュールを調整する第2の方法を示す図である。
【図５】送信ノードと対象となる受信ノードとの間の送信用の配信スケジュールを調整する第3の方法を示す図である。
【図６】毎秒10メガバイト・リンクについて、送信間隔をマスタ・フレーム、サブフレーム、および二次フレームに分解することのできるフレーム構造を示す図である。
【図７】一定の送信間隔についての1つの考えられる受信マップを示す図である。
【図８】ネットワーク・ノード間の配信スケジュールを同期させる方式を示す図である。
【図９】本発明の仕組みを使用してネットワークの輻輳を回避し、ネットワークにおけるパケットのスケジューリングをより効率的に行うにはどうするかを示す図である。
【図１】
2007523513.tif 000002
【図２】
2007523513.tif 000003
【図３】
2007523513.tif 000004
【図４】
2007523513.tif 000005
【図５】
2007523513.tif 000006
【図６】
2007523513.tif 000007
【図７】
2007523513.tif 000008
【図８】
2007523513.tif 000009
【図９】
2007523513.tif 000010
【国際調査報告】
2007523513.tif 000011