(57)【特許請求の範囲】
【請求項１】
パケット交換ネットワークを制御する方法であって、
パケット交換ネットワークによって相互接続された複数のデータソースと複数のスイッチとのそれぞれの送信遅延と、前記パケット交換ネットワークにおける複数のリンクのそれぞれの送信遅延とを含むネットワーク特性のレコードを維持するステップと、
所与のタイプのトラフィックの複数のパケットのそれぞれについて、前記複数のスイッチの少なくとも１つの特定のスイッチを介し、前記複数のデータソースの特定のデータソースからのパスと、前記特定のデータソースと前記少なくとも１つの特定のスイッチとのそれぞれにおける出発時間のスケジュールとを生成するため、前記ネットワーク特性を処理するステップと、
を有し、
前記パスと前記スケジュールとは、前記所与のタイプのトラフィックに対するジッタ要求を充足するよう最適化され、
各送信サイクルにおいてパケットが送信される頻度はフローレートに依存して変化し、
前記処理するステップは、パラメータα、β及びΦに基づき前記出発時間のスケジュールのタイムスロットサイズを選択するステップを含み、前記パラメータαは送信をスケジューリングするためにネットワークにおいて利用可能な基本時間粒度を反映し、前記パラメータβはトラフィックフローが前記ネットワークにおいてスケジューリングされるタイムウィンドウにおけるタイムスロットの数を反映し、前記パラメータΦはリンク容量及びトラフィックフローレートを定量化するための基本的な粒度を反映する方法。
【請求項２】
前記パスと前記スケジュールとを反映した制御メッセージを前記特定のデータソースと前記少なくとも１つの特定のスイッチとに送信するステップを更に有する、請求項１記載の方法。
【請求項３】
前記複数のデータソースと前記複数のスイッチとのそれぞれにおけるクロックを同期させるステップを更に有する、請求項１記載の方法。
【請求項４】
前記所与のタイプのトラフィックは、コモン・パブリック・ラジオ・インタフェース（ＣＰＲＩ）トラフィックである、請求項１記載の方法。
【請求項５】
前記パケット交換ネットワークは、イーサネットネットワークである、請求項１記載の方法。
【請求項６】
前記パスと前記スケジュールとは、前記所与のタイプのトラフィックに対する遅延要求を充足するよう最適化される、請求項１記載の方法。
【請求項７】
パケット交換ネットワークを制御する装置であって、
パケット交換ネットワークによって相互接続された複数のデータソースと複数のスイッチとのそれぞれの送信遅延と、前記パケット交換ネットワークにおける複数のリンクのそれぞれの送信遅延とを含むネットワーク特性を記憶するメモリと、
前記メモリと通信する少なくとも１つのプロセッサであって、
所与のタイプのトラフィックの複数のパケットのそれぞれについて、前記複数のスイッチの少なくとも１つの特定のスイッチを介し、前記複数のデータソースの特定のデータソースからのパスと、前記特定のデータソースと前記少なくとも１つの特定のスイッチとのそれぞれにおける出発時間のスケジュールとを生成するため、前記ネットワーク特性を処理するよう構成される、プロセッサと、
を有し、
前記パスと前記スケジュールとは、前記所与のタイプのトラフィックに対するジッタ要求を充足するよう最適化され、
各送信サイクルにおいてパケットが送信される頻度はフローレートに依存して変化し、
前記少なくとも１つのプロセッサは、パラメータα、β及びΦに基づき前記出発時間のスケジュールのタイムスロットサイズを選択するよう構成され、前記パラメータαは送信をスケジューリングするためにネットワークにおいて利用可能な基本時間粒度を反映し、前記パラメータβはトラフィックフローが前記ネットワークにおいてスケジューリングされるタイムウィンドウにおけるタイムスロットの数を反映し、前記パラメータΦはリンク容量及びトラフィックフローレートを定量化するための基本的な粒度を反映する装置。
【請求項８】
前記少なくとも１つのプロセッサは、前記パスと前記スケジュールとを反映した制御メッセージを前記特定のデータソースと前記少なくとも１つの特定のスイッチとに送信するよう構成される、請求項７記載の装置。
【請求項９】
前記少なくとも１つのプロセッサは、前記複数のデータソースの少なくとも１つの一定のビットレートに基づき、前記パスと前記スケジュールとの少なくとも１つを生成するよう構成される、請求項７記載の装置。
【請求項１０】
前記所与のタイプのトラフィックは、コモン・パブリック・ラジオ・インタフェース（ＣＰＲＩ）トラフィックである、請求項７記載の装置。
【請求項１１】
前記パケット交換ネットワークは、イーサネットネットワークである、請求項７記載の装置。
【請求項１２】
前記パスと前記スケジュールとは、前記所与のタイプのトラフィックに対する遅延要求を充足するよう最適化される、請求項７記載の装置。
【請求項１３】
前記少なくとも１つのプロセッサは、前記複数のデータソースと前記複数のスイッチとのクロックを同期させるためのクロック同期メッセージを送信又は処理するよう構成される、請求項７記載の装置。
【請求項１４】
ネットワーク通信システムであって、
複数のデータソースと複数のスイッチであって、前記データソースと前記スイッチとのそれぞれは、パケット交換ネットワークによって相互接続され、共通クロックに同期される、複数のデータソースと複数のスイッチと、
前記データソースと前記スイッチとのそれぞれの送信遅延と、前記パケット交換ネットワークにおける複数のリンクのそれぞれの送信遅延とを含むネットワーク特性のレコードを維持し、
所与のタイプのトラフィックの複数のパケットのそれぞれについて、前記複数のスイッチの少なくとも１つの特定のスイッチを介し、前記複数のデータソースの特定のデータソースからのパスと、前記特定のデータソースと前記少なくとも１つの特定のスイッチとのそれぞれにおける出発時間のスケジュールとを生成するため、前記ネットワーク特性を処理するよう構成されるネットワークコントローラと、
を有し、
前記パスと前記スケジュールとは、前記所与のタイプのトラフィックに対するジッタ要求を充足するよう最適化され、
各送信サイクルにおいてパケットが送信される頻度はフローレートに依存して変化し、
前記ネットワークコントローラは、パラメータα、β及びΦに基づき前記出発時間のスケジュールのタイムスロットサイズを選択するよう構成され、前記パラメータαは送信をスケジューリングするためにネットワークにおいて利用可能な基本時間粒度を反映し、前記パラメータβはトラフィックフローが前記ネットワークにおいてスケジューリングされるタイムウィンドウにおけるタイムスロットの数を反映し、前記パラメータΦはリンク容量及びトラフィックフローレートを定量化するための基本的な粒度を反映するネットワーク通信システム。
【請求項１５】
前記ネットワークコントローラは、前記パスと前記スケジュールとを反映した制御メッセージを前記特定のデータソースと前記少なくとも１つの特定のスイッチとに送信するよう構成される、請求項１４記載のシステム。
【請求項１６】
前記共通クロックを示すクロック同期メッセージを前記複数のデータソースと前記複数のスイッチとの少なくとも１つに送信するよう構成されるクロックコントローラを更に有する、請求項１４記載のシステム。
【請求項１７】
前記クロック同期メッセージは、ＩＥＥＥ  ８０２．１ＡＳ規格に従って送信される、請求項１６記載のシステム。
【請求項１８】
前記パケット交換ネットワークは、イーサネットネットワークである、請求項１４記載のシステム。
【請求項１９】
前記所与のタイプのトラフィックは、コモン・パブリック・ラジオ・インタフェース（ＣＰＲＩ）トラフィックである、請求項１４記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
本出願は、２０１４年１０月３１日に出願された“Ｓｙｓｔｅｍｓ  ａｎｄ  Ｍｅｔｈｏｄｓ  ｆｏｒ  ＣＰＲＩ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｏｖｅｒ  ａ  Ｐａｃｋｅｔ−Ｓｗｉｔｃｈｅｄ  Ｎｅｔｗｏｒｋ”という名称の米国仮特許出願第６２／０７３，１３２号、２０１５年３月１０日に出願された“Ｏｐｔｉｍｉｚａｔｉｏｎ  ｆｏｒ  Ｓｃｈｅｄｕｌｉｎｇ  Ｌｏｗ  Ｔｒａｆｆｉｃ  Ｊｉｔｔｅｒ  ｏｎ  ａ  Ｐａｃｋｅｔ  Ｎｅｔｗｏｒｋ”という名称の米国特許出願第６２／１３０，９０１号、及び２０１５年８月１２日に出願された“Ｓｙｓｔｅｍｓ，Ｄｅｖｉｃｅｓ，Ａｎｄ  Ｍｅｔｈｏｄｓ  Ｆｏｒ  Ｌｏｗ−Ｊｉｔｔｅｒ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｏｖｅｒ  Ａ  Ｐａｃｋｅｔ−Ｓｗｉｔｃｈｅｄ  Ｎｅｔｗｏｒｋ”という名称の米国特許出願第１４／８２４，６０８号に対する優先権の利益を主張し、これらのそれぞれが参照によってここに援用される。
【０００２】
［分野］
本開示は、ネットワーク通信に関し、より詳細には、パケット交換ネットワークを介した低ジッタ通信のためのシステム、装置及び方法に関する。
【背景技術】
【０００３】
光リンクは、低パケットジッタを必要とするネットワーク通信に使用される。例えば、光リンクは、無線通信システムのフロントホールネットワークにおいて使用される。
【０００４】
無線通信システムにおいて、無線アクセスネットワークは、モバイル装置（例えば、ユーザ装置（ＵＥ）又は他のそのような装置）をコアネットワークに接続する。異なる世代の無線ネットワークは、それらのコアネットワーク（例えば、第３世代パートナーシッププロジェクト（３ＧＰＰ）によって指定されるようなパケットコア（ＰＣ）ネットワーク及び進化型パケットコア（ＥＰＣ）ネットワーク）に対して異なるアーキテクチャを使用する。無線アクセスネットワークの具体例は、グローバル・システム・フォー・モバイル・コミュニケーションズ（ＧＳＭ）ネットワーク、ユニバーサル・モバイル・テレコミュニケーションズ・システム（ＵＭＴＳ）ネットワーク、４Ｇロング・ターム・エボリューションネットワークなどを含む。無線アクセスネットワークは、地理的領域にサービス提供し、無線基地局を介しモバイル装置に無線アクセスを提供する。無線基地局の具体例は、ベース・トランシーバ・ステーション（ＢＴＳ）、ノードＢ及び進化型ノードＢ（ｅＮＢ）を含む。無線基地局は、無線インタフェースを介しそれのサービスエリア内の機器モバイル装置と通信し、コアネットワークへのアクセスを提供する。当業者は、モバイル装置に言及する際、モバイル装置は、装置自体がモバイルであるかどうかにかかわらず、無線ネットワークなどのモバイルネットワークに接続する装置であることが理解されるべきであることを理解するであろう。
【０００５】
無線基地局は、分散型アーキテクチャを有してもよい。例えば、無線基地局は、無線機コントローラと１つ以上の無線機（また、リモート・ラジオ・ヘッド（ＲＲＨ）として参照される）に分割されてもよい。無線機コントローラは、無線基地局の内部のインタフェースを介して、無線機におけるアンテナ送信を制御するためのメッセージなど、１つ以上の無線機と通信してもよい。そのような内部インタフェースの具体例は、ＣＰＲＩ仕様Ｖ６．０において定義されるようなコモン・パブリック・ラジオ・インタフェース（ＣＰＲＩ）である。このような内部インタフェースは、無線機及び無線機コントローラが互いに遠隔に配置されることを可能にする。例えば、無線機はアンテナサイトに配置されてもよく、一方で無線機コントローラはデータセンタに配置されてもよい。
【０００６】
ＣＰＲＩインタフェースによる通信は、光リンクによって充足され得るジッタに関する厳しい境界を有する。しかしながら、そのような光リンクは高価であるかもしれず、常に利用可能であるとは限らない。イーサネット接続を介したＣＰＲＩ（ＣＰＲＩ−ｏｖｅｒ−Ｅｔｈｅｒｎｅｔ）の利用に関する研究があったが、この研究の多くはコントローラとＲＲＨとの間の専用のイーサネット接続の利用に着目していた。ＣＰＲＩに必要な高速及びジッタに関する厳しい境界が充足されることを確実にするため、専用のイーサネット接続は、直接的な接続として効果的に扱われる。
【０００７】
従って、低ジッタ通信のための改良されたシステム、装置及び方法、又は少なくとも代替に対する必要性が存在する。
【発明の概要】
【０００８】
ある態様によると、ネットワーク通信システムが提供される。システムは、複数のデータソースと複数のスイッチとを有する。データソースとスイッチとのそれぞれは、パケット交換ネットワークによって相互接続され、共通クロックに同期される。システムはまた、データソースとスイッチとのそれぞれの送信遅延と、パケット交換ネットワークにおける複数のリンクのそれぞれの送信遅延とを含むネットワーク特性のレコードを維持し、所与のタイプのトラフィックの複数のパケットのそれぞれについて、複数のスイッチの少なくとも１つの特定のスイッチを介し、複数のデータソースの特定のデータソースからのパスと、特定のデータソースと少なくとも１つの特定のスイッチとのそれぞれにおける出発時間のスケジュールとを生成するため、ネットワーク特性を処理するよう構成されるネットワークコントローラを有する。パスとスケジュールとは、所与のタイプのトラフィックに対するジッタ要求を充足するよう最適化される。
【０００９】
他の態様によると、パケット交換ネットワークを制御する方法が提供される。方法は、パケット交換ネットワークによって相互接続された複数のデータソースと複数のスイッチとのそれぞれの送信遅延と、パケット交換ネットワークにおける複数のリンクのそれぞれの送信遅延とを含むネットワーク特性のレコードを維持するステップを有する。方法はまた、所与のタイプのトラフィックの複数のパケットのそれぞれについて、複数のスイッチの少なくとも１つの特定のスイッチを介し、複数のデータソースの特定のデータソースからのパスと、特定のデータソースと少なくとも１つの特定のスイッチとのそれぞれにおける出発時間のスケジュールとを生成するため、ネットワーク特性を処理するステップを有する。パスとスケジュールとは、所与のタイプのトラフィックに対するジッタ要求を充足するよう最適化される。
【００１０】
更なる他の態様によると、パケット交換ネットワークを制御する装置が提供される。装置は、パケット交換ネットワークによって相互接続された複数のデータソースと複数のスイッチとのそれぞれの送信遅延と、パケット交換ネットワークにおける複数のリンクのそれぞれの送信遅延とを含むネットワーク特性を記憶するメモリを有する。装置はまた、メモリと通信する少なくとも１つのプロセッサを有する。プロセッサは、所与のタイプのトラフィックの複数のパケットのそれぞれについて、複数のスイッチの少なくとも１つの特定のスイッチを介し、複数のデータソースの特定のデータソースからのパスと、特定のデータソースと少なくとも１つの特定のスイッチとのそれぞれにおける出発時間のスケジュールとを生成するため、ネットワーク特性を処理するよう構成され、パスとスケジュールとは、所与のタイプのトラフィックに対するジッタ要求を充足するよう最適化される。
【００１１】
本改良に関する多くの更なる特徴及びこれらの組み合わせは、本開示を読んだ後に当業者に明らかになるであろう。
【図面の簡単な説明】
【００１２】
図において、
【図１】図１は、実施例によるネットワーク通信システムのネットワーク図である。
【図２】図２は、実施例による図１のネットワーク通信システムのネットワークコントローラのハイレベルな概略図である。
【図３】図３は、実施例による図１のネットワーク通信システムにおけるパケットレートに従うタイムスロットにおけるパケットの送信を示す概略図である。
【図４】図４は、実施例による図１のネットワーク通信システムのデータソースのハイレベルな概略図である。
【図５】図５は、実施例による図１のネットワーク通信システムのスイッチのハイレベルな概略図である。
【図６】図６は、実施例によるネットワーク通信システムの処理を示すフローチャートである。
【図７】図７は、図１のネットワークにおけるパケットの一例となるフローを示す概略図である。
【００１３】
これらの図面は、例示的な目的のため一例となる実施例を示し、これらの一例となる実施例に対する変形、代替的な構成、代替的なコンポーネント及び修正が行われてもよい。
【発明を実施するための形態】
【００１４】
図１は、実施例によるネットワーク通信システム１０を示す。図示されるように、システム１０は、パケット交換ネットワーク７０によって相互接続された、ネットワークコントローラ２０、データソース３０、スイッチ４０、データシンク５０及びクロックコントローラ６０を含む。
【００１５】
ネットワークコントローラ２０は、ソフトウェア・デファインド・ネットワーク（ＳＤＮ）コントローラであり、パケット交換ネットワーク７０のための制御プレーン機能を実行する。ネットワークコントローラ２０は、例えば、ＯｐｅｎＤａｙｌｉｇｈｔ  ＳＤＮコントローラ、オープン・ネットワーク・オペレーティング・システム（ＯＮＯＳ）ＳＤＮコントローラなどであってもよい。別の実施例では、ネットワークコントローラ２０は、非ＳＤＮネットワークコントローラであってもよい。
【００１６】
ネットワークコントローラ２０は、ネットワーク７０のためのトラフィックエンジニアリング機能を実行する。例えば、ネットワークコントローラ２０は、ネットワーク７０において送信されたパケットのためのパスを決定し、ネットワーク７０を介したパケットの送信のためのジッタが最小限に抑えられるように、システム１０のノード、例えば、データソース３０及びスイッチ３０におけるパケットの出発時間をスケジューリングする。ネットワークコントローラ２０はまた、ネットワーク７０を介したパケットの送信のための遅延が最小になるように、パス及びスケジュールを決定してもよい。
【００１７】
ネットワークコントローラ２０は、ＯｐｅｎＦｌｏｗＴＭプロトコルに従って、システム１０のノード、例えば、データソース３０及びスイッチ４０と通信してもよい。
【００１８】
ネットワークコントローラ２０は、ネットワーク７０に対するネットワーク構成、ネットワーク監視などを含む様々な他の制御プレーン機能を実行してもよい。
【００１９】
図示された実施形態では、システム１０は、ＣＰＲＩ通信のため構成される。従って、各データソース３０は無線機コントローラであり、無線機コントローラ３０として参照されてもよく、各データシンク５０は無線機であり、無線機５０として参照されてもよい。無線機５０は、いくつかの実施例では、リモート・ラジオ・ヘッドであってもよい。各無線機コントローラ３０は、ここに詳述される方式で、パケット交換ネットワーク７０を介しＣＰＲＩを利用して、少なくとも１つの関連する無線機５０と通信する。無線機コントローラ３０及び関連する無線機５０は、無線アクセスネットワークの一部にサービス提供する無線基地局を提供するため、協調して動作する。
【００２０】
図示された実施例では、ネットワーク７０は、複数の有線リンクを含むイーサネットネットワークである。しかしながら、別の実施例では、ネットワーク７０は、他のリンクタイプ、有線と無線との双方を利用してもよい。選択されるリンクのタイプは、ネットワークが利用される特定の用途に固有のスループット、タイミング及び遅延要求を充足する必要があることが理解されるべきである。ネットワークがＣＰＲＩトラフィックに利用される実施例では、ミリ波無線ラジオなどの先進的なポイント・ツー・ポイント無線技術を利用して無線リンクのように、イーサネットリンクを利用した有線ネットワークが適切でありうる。
【００２１】
図２は、実施例によるネットワークコントローラ２０のハイレベルの概略図である。図示されるように、ネットワークコントローラ２０は、プロセッサ２００、メモリ２０２、トランシーバユニット（Ｔｘ／Ｒｘ）２０４及びポート２０６を含む。
【００２２】
プロセッサ２００は、ハードウェア及びソフトウェアによって実現されてもよい。例えば、プロセッサ２００は、１つ以上の中央処理装置（ＣＰＵ）チップ、論理ユニット、コア（例えば、マルチコアプロセッサとして）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）及びデジタル信号プロセッサ（ＤＳＰ）として実現されてもよい。プロセッサ２００は、メモリ２０２、Ｔｘ／Ｒｘ２０４及びポート２０６と通信する。ポート２０６は、送信機、受信機又はそれらの組み合わせであってもよいＴｘ／Ｒｘ２０４に結合される。Ｔｘ／Ｒｘ２０４は、ポート２０６を介しデータを送信及び受信してもよい。
【００２３】
メモリ２０２は、揮発性又は不揮発性メモリを含んでもよい。メモリ２０２は、読み出し専用メモリ（ＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、ターナリ・コンテンツ・アドレッサブル・メモリ（ＴＣＡＭ）及びスタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）を含んでもよい。メモリ２０２はまた、ディスク、テープドライブ及びソリッドステートドライブの１つ以上を含んでもよい。
【００２４】
メモリ２０２は、例えば、ここに説明される実施例を実現するためのプロセッサ２００において、プログラム実行中に読み出される命令及びデータを記憶してもよい。
【００２５】
特に、メモリ２０２は、ネットワークデータベース２０８及びスケジューリングモジュール２１０のための命令及びデータを記憶する。
【００２６】
ネットワークデータベース２０８は、ネットワーク７０のトポロジー及び動作特性に関するデータによって占有される。例えば、ネットワークデータベース２０８は、各ノード（例えば、データソース３０、スイッチ４０及びデータシンク５０）を識別し、ノードを相互接続する各リンクを識別するレコード、各リンクの動作特性（例えば、データレート、リンク上のタイム・オブ・フライト又は送信遅延など）を反映するレコード、各ノードの動作特性（例えば、各データソース３０のデータレート、各スイッチ４０を介したインバウンドポートからアウトバウンドポートへの送信遅延、各スイッチ４０のスループットなど）を反映するレコードを含んでもよい。
【００２７】
ネットワークデータベース２０８に記憶されるデータの少なくとも一部は、ネットワークコントローラ２０の動作前に測定されてもよい。ネットワークデータベース２０８は、ネットワーク７０のトポロジー及び動作特性が変わるに従って、例えば、新しいノード又はリンクが追加又はアップグレードされるに従って、あるいは、ノード又はリンクが削除又は故障するに従って、更新されてもよい。変化するネットワーク状態に関する更新は、ノードから、又はネットワーク７０に接続された専用モニタ（図示せず）から受信されてもよい。実施例では、ネットワークデータベース２００は、リアルタイム又はほぼリアルタイムで更新されてもよい。
【００２８】
スケジューリングモジュール２１０は、ネットワーク７０において、例えば、所与のデータソース３０から所与のデータシンク５０に、１つ以上のスイッチ４０を介して送信されるパケットのためのパスを生成するよう構成される。
【００２９】
スケジューリングモジュール２１０はまた、パスにおける所与のデータソース３０及び各スイッチ４０におけるパケットの出発時間のスケジュールを生成するよう構成されてもよい。このスケジュールはまた、各データソース３０又はスイッチ４０において使用される特定のキュー又はポートを特定してもよい。
【００３０】
スケジューリングモジュール２１０は、各ノードにおける及び各リンクを介した送信遅延などを含む、上述のネットワーク７０のトポロジー及び動作特性を考慮するため、データベース２０８のレコードを処理することによって、パス及びスケジュールを生成する。このようなネットワーク特性を考慮することによって、パス及びスケジュールは、ネットワーク７０を介し送信される各パケットのエンド・ツー・エンドジッタ及び／又はエンド・ツー・エンド遅延を最小化するよう最適化される。
【００３１】
例えば、特定の各パケットについて、データソース３０又はスイッチ４０のアウトバウンドキューからの送信が、特定のタイムスロットにおける出発のためスケジューリングされてもよい。特定のタイムスロットは、パケットがそれの宛先ノード、例えば、所与のスイッチ４０へのリンクをトラバースするとき、それの到着時間が所与のスイッチ４０における同じ送信リソースと競合する別のパケットの到着時間と一致しないように、選択されてもよい。このようにして、スイッチ４０における複数の到着パケットによる送信リソースの競合に起因するジッタ及び遅延が、回避又は最小化されうる。
【００３２】
同様に、特定のタイムスロットは、パケットが所与のスイッチ４０に到着したときに、所与のスイッチ４０によって、当該パケットに対してスケジューリングされたタイムスロットにおいて直ちに転送されるように、選択されてもよい。これにより、パケットを転送するために利用可能なタイムスロットを待機することに関連する遅延が、回避又は最小化されうる。
【００３３】
各パケットについて、所与のデータソース３０と所与のデータシンク５０とを接続するパスにおける連続する各ノードでのタイムスロットをスケジューリングすることによって、エンド・ツー・エンドジッタ及び／又はエンド・ツー・エンド遅延が回避又は最小化されうるように、パケットはスケジュールされたタイムスロットにおけるパス全体をトラバースしてもよい。従って、例えば、ＣＰＲＩトラフィックのパケットは、ＣＰＲＩ要求を満たす遅延及びジッタによってネットワーク７０を介し送信されてもよい。
【００３４】
実施例では、スケジューリングモジュール２１０は、ノード（例えば、データソース３０又はスイッチ４０）が送信すべきパケットを有するとき、タイムスロットが利用可能となるように、出発時間のスケジュールにおけるタイムスロットサイズを選択するよう構成されてもよい。
【００３５】
タイムスロットサイズの選択は、パラメータα、β及びφを参照して説明されてもよい。
【００３６】
パラメータαは、送信をスケジューリングするためにネットワークにおいて利用可能な基本時間粒度を反映する。理解されるように、αの値は物理的なネットワークハードウェアに依存する。ネットワーク７０などパケット交換ネットワークでは、αはパケットを送信するために最高速度のリンクによって必要とされる時間に対応してもよい。
【００３７】
パラメータβは、トラフィックフローがネットワーク７０を介しスケジューリングされるタイムウィンドウにおけるタイムスロットの数を反映する。パラメータβはまた、スケジューリングが１サイクルについて実行されるため、送信サイクルとして参照されてもよく、一定のビットレートのデータソースを仮定すると、スケジュールは後続のサイクルに適用されてもよい。
【００３８】
パラメータφは、リンク容量及びトラフィックフローレートを整数として定量化するための基本的な粒度を反映する。より詳細には、パラメータφは、送信サイクルβ内において１つのタイムスロットαによって送信されるデータの量である。
【００３９】
パラメータφは、ネットワークにおけるすべてのリンクタイプの容量とすべてのトラフィックのフローレートの最大公約数（ｇｃｄ）として決定されてもよい。パラメータφの選択は更に、ネットワーク７０におけるＣＰＲＩトラフィックの送信のための以下の具体例を参照して説明されてもよい。本例では、それぞれ２．５Ｇｂｐｓ、５Ｇｂｐｓ及び１０Ｇｂｐｓとして近似されうる３つの可能なフロー２．４５７６Ｇｂｐｓ、４．９１５２Ｇｂｐｓ及び９．８３０４Ｇｂｐｓ（例えば、無線機コントローラ３０における送信レートに対応する）がある。本例では、１０Ｇｂｐｓ、４０Ｇｂｐｓ及び１００Ｇｂｐｓの３つの可能なリンク容量がまたある。従って、パラメータφ、これらのフローレートとリンク容量とのｇｃｄは２．５Ｇｂｐｓである。フローレート及びリンク容量は、φの整数倍として、以下のように、｛１，２，４，４，１６，４０｝として表されてもよい。
【００４０】
このとき、パラメータβは、φの単位におけるフローレートとリンク容量との最小公倍数（ｌｃｍ）として、以下のように、
β＝ｌｃｍ  ｏｆ｛１，２，４，４，１６，４０｝＝８０
として選択されてもよい。
【００４１】
各送信サイクルでパケットが送信されうる頻度は、フローレートに依存して変化する。上記の具体例では、φ＝２．５Ｇｂｐｓ及びβ=８０であるため、２．５Ｇｂｐｓのフローレートは、８０タイムスロット毎にパケットが１回送信されうるように、各送信サイクルにおいて１つのタイムスロットにマッピングし、５Ｇｂｐｓのフローレートは、８０タイムスロット毎にパケットが２回送信されるように、２つのタイムスロットにマッピングし、１０Ｇｂｐｓのフローレートは、８０タイムスロット毎にパケットが４回送信されるように、４つのタイムスロットにマッピングする。
【００４２】
図３は、簡略化された具体例を参照してフローレートの変化を示す。この簡略化された具体例では、ＣＰＲＩフローレートは、６１４．４Ｍｂｐｓ、１２２８．８Ｍｂｐｓ及び２４５７．６Ｍｂｐｓである。最も低いフローレート６１４．４Ｍｂｐｓの整数倍であるリンク容量を仮定すると、送信サイクルにおけるタイムスロットの数は４である（すなわち、β=４）。図３に示されるように、この簡略化された具体例について、６１４．４Ｍｂｐｓのフローレートが与えられると、４つのタイムスロット（低パケットレート）毎にパケットが送信され、１２２８．８Ｍｂｐｓのフローレートが与えられると、２つのタイムスロット（中間パケットレート）毎にパケットが送信され、２４５７．６Ｍｂｐｓのフローレートが与えられると、タイムスロット（高パケットレート）毎にパケットが送信される。
【００４３】
ネットワーク７０がイーサネットネットワークである実施例では、タイムスロットのサイズはイーサネットパケットのサイズに対応する。
【００４４】
実施例では、スケジューリングモジュール２１０は、ＩＥＥＥ  Ｐ８０２．１Ｑｂｕ／Ｄ１−１に従って、プリエンプションなどのフレームプリエンプションに関連するオーバヘッドに収容するためのタイムスロットサイズを選択するよう構成されてもよい。実施例では、スケジューリングモジュール２１０は、例えば、イーサネット及び／又はＩＰパケットヘッダについて、パケットオーバヘッドを収容するためのタイムスロットサイズを選択するよう構成されてもよい。実施例では、スケジューリングモジュール２１０は、ネットワーク７０におけるノード間のクロックドリフトを収容するためのタイムスロットサイズを選択するよう構成されてもよい。
【００４５】
実施例では、スケジューリングモジュール２１０は、ネットワーク７０のトポロジー及び／又は動作特性が変化するとき、例えば、リンク容量が変化するとき、あるいは、フローレートが変化するとき、タイムスロットサイズを再選択するよう構成されてもよい。従って、タイムスロットのサイズは、変化するネットワーク状態に動的に適応してもよい。
【００４６】
実施例では、ネットワーク７０におけるパケットサイズは、タイムスロットサイズの選択を容易にするよう選択されてもよい。例えば、パケットサイズは、ネットワーク７０における最も遅いリンク上の各フロータイプに対して望ましい１秒当たりのパケット数を提供するよう選択されてもよく、ここで、望ましい数は、シンプルな分数として表現されうる整数及び有理数を含む。
【００４７】
実施例では、パケットサイズ及びスロットサイズの一方又は両方は、スロットサイズがパケットサイズより大きいことを保証しながら選択されてもよい。
【００４８】
ネットワークコントローラ２０は、生成されたルート及びスケジュールの少なくとも一部を、パケットの送信における実現のためにデータソース３０及びスイッチ４０のそれぞれに送信する。以下で詳述されるように、データソース３０及びスイッチ４０のそれぞれは、送信スケジュールが正確かつ正しく実現されることを可能にする共通クロックに同期されてもよい。
【００４９】
ネットワークコントローラ２０は、ネットワークコントローラ２０に通知されるように、ネットワークトポロジーの変更又は動作特性の変更に応答して、ルート又はスケジュールを生成又は更新してもよい。例えば、実施例では、ネットワークコントローラ２０は、リンク又はノードが追加又は削除されるとき、あるいは、データソース３０のデータレートが変更されるとき、スケジュール又はルートを生成又は更新してもよい。ネットワークコントローラ２０はまた、所定の間隔でスケジュール又はルートを生成又は更新してもよい。
【００５０】
実施例では、ネットワークコントローラ２０は、ＩＥＥＥ  ８０２．１Ｑｂｖ／Ｄ２．１“Ｅｎｈａｎｃｅｍｅｎｔｓ  ｆｏｒ  Ｓｃｈｅｄｕｌｅｄ  Ｔｒａｆｆｉｃ”に従って、ルート及びスケジュールデータを生成及び送信してもよい。
【００５１】
実施例では、スケジューリングモジュール２１０は、例えば、データソース３０又はスイッチ４０におけるクロックエラーから生じるスケジュールの何れかの偏差に対する耐性を提供するためのマージン（しばしば、スロップとして参照される）を提供するスケジュールを生成してもよい。
【００５２】
図４は、実施例によるデータソース３０のハイレベルの概略図である。図示されるように、データソース３０は、プロセッサ３００、メモリ３０２、Ｔｘ／Ｒｘ３０４及びポート３０６を含む。メモリ３０２は、パケット化器３１０、アウトバウンドキュー３１２及びゲートコントローラ３１４のための命令及びデータを記憶する。１つのみのアウトバウンドキュー３１２しか示されていないが、例えば、それぞれが特定のポート３０６に関連付けられた複数のキュー３１２があってもよい。
【００５３】
パケット化器３１０は、データストリームから複数のパケットを生成するよう構成される。実施例では、パケット化器３１０は、上述した方式で選択されたパケットサイズを有するパケットを生成するよう構成されてもよい。いったん生成されると、パケットは、Ｔｘ／Ｒｘ３０４及びポート３０６を経由して、ネットワーク７０を介した送信のためにアウトバウンドキュー３１２に提供される。
【００５４】
図示された実施例では、各データソース３０は一定のビットレートソースである。別の実施例では、１つ以上のデータソース３０は可変的なビットレートソースであってもよい。上述されるように、データソース３０はＣＰＲＩ無線機コントローラであってもよい。
【００５５】
各パケットは、ネットワークコントローラ２０によってスケジューリングされた正確な時間に、データソース３０におけるアウトバウンドキュー３１２からネットワークコントローラ２０によって選択された宛先ノードに送信される。各パケットは、アウトバウンドキュー３１２からネットワークコントローラ２０又はデータソース３０によって選択されたポート３０６を介し送信されてもよい。
【００５６】
キュー３１２は、ゲートコントローラ３１４の制御の下、キューのゲートがアクティブ化されたときにのみパケットが送信されるようにゲート処理される。ゲートコントローラ３１４は、ＩＥＥＥ  ８０２．１Ｑｂｖ／Ｄ２．１に従ってゲート制御を実行するよう構成されてもよい。
【００５７】
ゲートコントローラ３１４は、ネットワークコントローラ２０において生成されたスケジュールの少なくとも一部を受信し、特定のパケットが出発のためスケジューリングされる特定のタイムスロットを決定するため、スケジュールを処理する。ゲートコントローラ３１４は、当該パケットについてスケジューリングされた時間に各特定のパケットの送信のためにキュー３１２をアクティブ化する。
【００５８】
データソース３０からのパケットの送信は、以下で詳述する方式で、他のデータソース３０及びスイッチ４０と同期されるクロックを使用する。
【００５９】
プロセッサ３００、メモリ３０２、Ｔｘ／Ｒｘ３０４及びポート３０６は、プロセッサ２００、メモリ２０２、Ｔｘ／Ｒｘ２０４及びポート２０６について説明されたものと実質的に同様の方式で構成及び相互接続される。
【００６０】
図５は、実施例によるスイッチ４０のハイレベルな概略図である。図示されるように、スイッチ４０は、プロセッサ４００、メモリ４０２、Ｔｘ／Ｒｘ４０４及びポート４０６を含む。メモリ４０２は、アウトバウンドキュー４１２及びゲートコントローラ４１４のための命令及びデータを記憶する。１つのみのアウトバウンドキュー４１２しか示されていないが、例えば、それぞれが特定のポート４０６に関連する複数のキュー４１２があってもよい。
【００６１】
スイッチ４０は、ネットワークコントローラ２０の制御下でパケット交換を実行する。スイッチ４０において受信されたパケット（例えば、データソース３０又は別のスイッチ４０）は、送信のためアウトバウンドキュー４１２に配置される。
【００６２】
各パケットは、ネットワークコントローラ２０によってスケジューリングされた正確な時間に、スイッチ４０におけるアウトバウンドキュー４１２からネットワークコントローラ２０によって選択された宛先ノードに送信される。
【００６３】
各パケットは、アウトバウンドキュー４１２からネットワークコントローラ２０又はスイッチ４０によって選択されたポート４０６を介し送信されてもよい。
【００６４】
キュー４１２は、ゲートコントローラ４１４の制御の下、キューのゲートがアクティブ化されたときにのみパケットが送信されるようにゲート制御される。ゲートコントローラ４１４は、ＩＥＥＥ  ８０２．１Ｑｂｖ／Ｄ２．１に従ってゲート制御を実行するよう構成されてもよい。
【００６５】
ゲートコントローラ４１４は、ネットワークコントローラ２０において生成されたスケジュールの少なくとも一部を受信し、特定のパケットが出発のためスケジューリングされる特定のタイムスロットを決定するため、スケジュールを処理する。ゲートコントローラ４１４は、当該パケットについてスケジューリングされた時間に各特定のパケットの送信のためにキュー４１２をアクティブ化する。
【００６６】
スイッチ４０からのパケットの送信は、以下に詳述される方式で他のスイッチ４０及びデータソース３０と同期されるクロックを使用する。
【００６７】
スイッチ４０は、それぞれ特定のタイプ／クラスを送信するための追加的なアウトバウンドキューを含んでもよい。例えば、スイッチ４０は、ＣＰＲＩトラフィックを送信するためのキューと、他のタイプのトラフィックを送信するための追加的なキューとを含んでもよい。何れかそのような追加的なアウトバウンドキューからのパケットの送信はまた、ネットワークコントローラ２０によって制御されてもよい。
【００６８】
プロセッサ４００、メモリ４０２、Ｔｘ／Ｒｘ４０４及びポート４０６は、プロセッサ２００、メモリ２０２、Ｔｘ／Ｒｘ２０４及びポート２０６について説明されたものと実質的に同様の方式で構成及び相互接続される。
【００６９】
ネットワーク７０を介し送信されるパケットは、データシンク５０（図１）に到着する。各データシンク５０は、関連するデータソース３０によって送信されたデータパケットを受信する。各データシンク５０は、データストリームを形成するため、受信したデータをデパケット化する。上述されるように、各データシンク５０は、ＣＰＲＩ無線機であってもよい。従って、データシンク５０において受信されたデータパケットは、無線機におけるアンテナを制御するため、データシンク５０において処理されうるＣＰＲＩデータを含んでもよい。
【００７０】
システム１０は、各データソース３０及びスイッチ４０のクロック（すなわち、時間及び周波数）を共通クロックに同期させるため、クロック同期を実現する。
【００７１】
図示される実施例では、システム１０は、ＩＥＥＥ  １５８８−２００８規格“ＩＥＥＥ  Ｓｔａｎｄａｒｄ  ｆｏｒ  ａ  Ｐｒｅｃｉｓｉｏｎ  Ｃｌｏｃｋ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｎｅｔｗｏｒｋｅｄ  Ｍｅａｓｕｒｅｍｅｎｔ  ａｎｄ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍｓ”において定義されるようなプリシジョン・タイム・プロトコル（ＰＴＰ）に従って、クロック同期を実現する。従って、図示されるように、システム１０は、システム１０における他のクロックが同期されうる正確かつ正しいクロックを確立するため、ＰＴＰグランドマスタとして動作するよる適応されたクロックコントローラ６０を含む。
【００７２】
クロックコントローラ６０は、ネットワーク７０を介し、相互接続されたノード、例えば、データソース３０及びスイッチ４０にクロック同期メッセージを送信する。データソース３０及びスイッチ４０の一部又は全ては、クロック同期メッセージを相互接続されたノードに更に伝搬するＰＴＰマスタとして動作するよう構成されてもよい。クロック同期メッセージは、ＩＥＥＥ  ８０２．１ＡＳ−２０１１規格“ＩＥＥＥ  Ｓｔａｎｄａｒｄ  ｆｏｒ  Ｌｏｃａｌ  ａｎｄ  Ｍｅｔｒｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ−Ｔｉｍｉｎｇ  ａｎｄ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  ｆｏｒ  Ｔｉｍｅ−Ｓｅｎｓｉｔｉｖｅ  Ａｐｐｌｉｃａｔｉｏｎｓ  ｉｎ  Ｂｒｉｄｇｅｄ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ”において定義されるプロトコルに従って、ネットワーク７０を介し伝搬されてもよい。
【００７３】
このようにして、クロックコントローラ２０、データソース３０及びスイッチ４０のそれぞれは、共通のＰＴＰタイミング領域下にもたらされる。これは、データソース３０及びスイッチ４０のそれぞれがパケットを送信するときにネットワークコントローラ２０によって生成されたスケジュールに正確かつ正しく従うことを可能にする。実施例では、ネットワークコントローラ２０がまた、このタイミング領域下にもたらされ、共通クロックに同期されてもよい。
【００７４】
図１において別々の装置として示されるが、いくつかの実施例では、ネットワークコントローラ２０は、クロックコントローラ６０の機能を含むか、さもなければ実行するよう構成されてもよい。
【００７５】
別の実施例では、システム１０は、例えば、ネットワーク・タイム・プロトコル（ＮＴＰ）又はグローバル・ポジショニング・システム（ＧＰＳ）時間同期プロトコルなどの１つ以上の他のプロトコルに従って、クロック同期を実行してもよい。例えば、クロックコントローラ６０、データソース３０及びスイッチ４０を含むシステム１０のコンポーネントは、１つ以上のこのような他のプロトコルを実現するように適応されてもよい。システム１０内のクロック同期メッセージの送信は、ＩＥＥＥ  ８０２．１ＡＳ−２０１１において定義されるもの以外のプロトコルに従ってもよい。
【００７６】
システム１０がネットワーク相互接続されたクロックコントローラを必要としないクロック同期プロトコルを実現するとき、例えば、データソース３０及びスイッチ４０がそれらのクロックを衛星ソースと同期させるとき、クロックコントローラ６０は省略されてもよい。
【００７７】
システム１０によって実現される特定の時間同期プロトコル又は複数のプロトコルは、要求されるクロック精度及び正確さに基づき選択されてもよく、それは次にシステム１０において送信されるトラフィックのタイプに依存してもよい。
【００７８】
実施例では、ネットワーク７０は、異なるタイプのトラフィック、例えば、ＣＰＲＩトラフィック及び１つ以上の他のタイプのトラフィックを送信するのに利用されてもよい。このような他のタイプのトラフィックは、例えば、ＰＴＰ同期メッセージに関連するトラフィック及びユーザデータに関連するトラフィックを含んでもよい。本実施例では、ネットワークコントローラ２０は、このような異なるタイプのトラフィックのパケットの送信をスケジューリングするよう構成されてもよい。
【００７９】
異なるタイプのトラフィックがより高い優先度タイプのトラフィック（例えば、ＣＰＲＩデータ）及びより低い優先度タイプのトラフィック（例えば、ユーザデータ）を含むとき、ネットワークコントローラ２０は、より低い優先度のトラフィックのパケットの前に順序通りでなく、送信のためにより高い優先度のトラフィックのパケットをスケジューリングしてもよい。
【００８０】
実施例では、例えば、データソース３０及びスイッチ４０などのシステム１０のノードは、より低い優先度のトラフィックのパケットの送信を中断するため、より高い優先度のトラフィックのパケットの送信を可能にするプリエンプション機構を実現してもよい。例えば、プリエンプション機構は、ＩＥＥＥ  Ｐ８０２．１Ｑｂｕ／Ｄ１−１“Ｆｒａｍｅ  Ｐｒｅ−ｅｍｐｔｉｏｎ”において定義されるようなものであってもよい。
【００８１】
システム１０の処理は、図６及び一例となるブロック６０２〜６１０を参照して更に説明される。
【００８２】
ブロック６０２において、ネットワークコントローラ２０は、例えば、ネットワーク７０のトポロジー及び動作特性など、ネットワーク特性に関するデータを記憶するレコードを維持する。これらの特性は、各データソース３０及び各スイッチ４０の送信遅延を含んでもよい。これらの特性はまた、ネットワーク７０の各リンクの送信遅延を含んでもよい。ブロック６０４において、ネットワークコントローラ２０は、各パケットについて、パケットのデータソース３０から少なくとも１つのスイッチ４０を介しデータシンク５０へのパスと、当該パスにおけるデータソース３０及びスイッチ４０における出発時間のスケジュールとを生成するため、これらの特性を処理する。上記で詳述したように、パス及びスケジュールは、所与のタイプのトラフィックに対する遅延及び／又はジッタ要求を満たすよう最適化される。
【００８３】
ブロック６０６において、ネットワークコントローラ２０は、例えば、パス及びスケジュールを反映する制御メッセージをデータソース３０及びスイッチ４０に送信することによって、データソース３０及びスイッチ４０にパス及びスケジュールを提供する。
【００８４】
ブロック６０８において、データソース３０及びスイッチ４０におけるクロックは、ここに詳述される方式で共通クロックに同期される。
【００８５】
ブロック６１０において、データソース３０及びスイッチ４０は、ネットワーク７０を介しパケットを送信するため、ネットワークコントローラ２０によって生成されるパス及びスケジュールを実現する。
【００８６】
図６に示されるブロックの順序は、単なる一例として提供される。当該ブロックは他の順序で実行されてもよい。いくつかのブロックは、他のブロックと同時に実行されてもよい。
【００８７】
図７は、ネットワーク７０における一例となるパケットのフローを概略的に示す。図示されるように、４つのデータソース（すなわち、データソース３０−１，３０−２，３０−３及び３０−４）からのパケットは、最初は低ビットレートリンクに沿って移動し、スイッチ４０において他のリンクに合併され、これは漸次的により高いビットレートを有しうる。
【００８８】
例えば、図示されるように、データソース３０−２からのパケットは、リンクＤに沿って移動し、スイッチ４０においてデータソース３０−１からのパケットとマージし、データソース３０−１及び３０−２からのパケットは、リンクＣに沿って移動するため当該スイッチ４０から送信される。さらに、図示されるように、データソース３０−３及び３０−４からのパケットは、リンクＡに沿って移動し、他のスイッチ４０において３０−３及び３０−４からのパケットとリンク上でマージする。これらデータソースの全てからのパケットは、リンクＢに沿って移動するため、当該他のスイッチ４０から送信される。
【００８９】
データソースからのトラフィックは、各スイッチ４０において、スイッチ４０における送信リソースの競合が最小化されるようにマージされる。従って、図示されるように、パケットは、ジッタ及び遅延が回避又は最小化されるように、スイッチ４０においてマージ及び転送されてもよい。
【００９０】
実施例がネットワークコントローラ２０において生成されるルート及びスケジュールを参照して上記において説明されたが、ルート及び／又はスケジュールはまた、異なるネットワークコンポーネントにおいて生成されてもよい。さらに、実施例では、ネットワーク７０が静的なトポロジー及び動作特性を有するとき、ルート及び／又はスケジュールは、オフラインで生成され、データ送信に先立って各データソース３０及び各スイッチ４０に対して構成されてもよい。そのような実施例では、ルート及び／又はスケジュールは、ネットワーク７０を介し送信される必要はない。そのような実施例では、ネットワークコントローラ２０は省略されてもよい。
【００９１】
実施例がＣＰＲＩトラフィックを参照して上記において説明されたが、ここに説明される方法及びシステムはまた、そのそれぞれがマイクロ秒又はナノ秒のオーダに関するものであってもよい、遅延及び／又はジッタに関する制約による送信を必要とする他のタイプのトラフィックに適用されてもよい。このような他のタイプのトラフィックは、例えば、オープン・ベース・ステーション・アーキテクチャ・イニシアチブトラフィック、リアルタイムオーディオ／ビデオトラフィック、金融取引トラフィックなど、無線基地局の内部の他のタイプのトラフィックなどを含むものであってもよい。
【００９２】
ここに開示される実施例は、ハードウェアのみを使用することによって、又はソフトウェア及びハードウェアプラットフォームを使用することによって実現されてもよい。そのような理解に基づき、技術的解決策は、ソフトウェア製品の形態で具現化されてもよい。ソフトウェア製品は、コンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、ＵＳＢフラッシュディスク又はリムーバブルハードディスクとすることができる不揮発性又は非一時的な記憶媒体に記憶されてもよい。ソフトウェア製品は、コンピュータ装置（パーソナルコンピュータ、サーバ又はネットワーク装置）が実施例において提供された方法を実行することを可能にする多数の命令を含む。
【００９３】
プログラムコードは、ここに説明された機能を実行し、出力情報を生成するため、入力データに適用される。出力情報は、１つ以上の出力装置に適用される。いくつかの実施例では、通信インタフェースはネットワーク通信インタフェースであってもよい。要素が組み合わされる実施例では、通信インタフェースは、プロセス間通信のためのものなど、ソフトウェア通信インタフェースであってもよい。さらに他の実施例では、ハードウェア、ソフトウェア及びこれらの組み合わせとして実現される通信インタフェースの組み合わせがあってもよい。
【００９４】
各コンピュータプログラムは、記憶媒体又は装置がここに説明された手順を実行するためコンピュータによって読み込まれるとき、コンピュータを構成及び実行するため、汎用又は特定用途プログラマブルコンピュータによって可読な記憶媒体又は装置（例えば、ＲＯＭ、磁気ディスク、光ディスク）上に記憶されてもよい。システムの実施例はまた、コンピュータプログラムにより構成された非一時的なコンピュータ可読記憶媒体として実現されると考えられてもよく、ここで、このように構成された記憶媒体は、コンピュータにここに説明された機能を実行するため特定の所定の方式で動作させる。
【００９５】
さらに、説明された実施例のシステム及び方法は、１つ以上のプロセッサのコンピュータ使用可能命令を担持する物理的な非一時的なコンピュータ可読媒体を含むコンピュータプログラム製品において配布可能である。当該媒体は、１つ以上のディスケット、コンパクトディスク、テープ、チップ、磁気及び電子記憶媒体、揮発性メモリ、不揮発性メモリなどを含む様々な形態において提供されてもよい。非一時的なコンピュータ可読媒体は、一時的な伝搬信号を除いて、全てのコンピュータ可読媒体を含みうる。非一時的という用語は、一次メモリ、揮発性メモリ、ＲＡＭなどのコンピュータ可読媒体を除外することを意図するものではなく、ここで、そこに記憶されるデータは一時的にしか記憶されないものであってもよい。コンピュータ使用可能命令は、コンパイルされたコード及びコンパイルされていないコードを含む様々な形態であってもよい。
【００９６】
サーバ、サービス、インタフェース、ポータル、プラットフォーム又はハードウェア装置から形成される他のシステムに関する多数の参照がなされるであろう。そのような用語の使用は、コンピュータ可読の有形の非一時的媒体に記憶されたソフトウェア命令を実行するよう構成された少なくとも１つのプロセッサを有する１つ以上の装置を表すとみなされることが理解されるべきである。さらに、開示されたコンピュータベースのアルゴリズム、プロセス、方法又は他のタイプの命令セットは、プロセッサに開示されたステップを実行させる命令を記憶する非一時的な有形のコンピュータ可読媒体を含むコンピュータプログラム製品として具体化することができることを理解すべきである。
【００９７】
様々な例示的な実施例がここに説明される。各実施例は発明の要素の単一の組み合わせを表しているが、発明の主題は、開示された要素の全ての可能な組み合わせを含むとみなされる。従って、一実施例が要素Ａ、Ｂ及びＣを含み、第２の実施例が要素Ｂ及びＤを含む場合、発明の主題はまた、明示的に開示されていない場合であっても、Ａ、Ｂ、Ｃ又はＤの他の残りの組合せを含むとみなされる。
【００９８】
ここで用いられ、文脈がそうでないと示さない場合、“に結合される”という用語は、直接的結合（互いに結合した２つの要素が互いに接触する）と、間接的結合（少なくとも１つの追加的要素が２つの要素の間に配置される）との双方を含むことが意図される。従って、“に結合される”及び“と結合される”という用語は、同義的に使用される。
【００９９】
ここに説明される実施例は、物理的なコンピュータハードウェアの実施例によって実現される。ここに説明される実施例は、例えば、計算装置、サーバ、プロセッサ、メモリ、ネットワークの有用な物理的機械と、特に構成されたコンピュータハードウェア構成とを提供する。ここに説明される実施例は、例えば、電子データ信号の処理及び変換を介しコンピュータによって実現されるコンピュータ装置及び方法に関する。
【０１００】
ここに説明される実施例は、様々な動作を実現するよう特に構成された計算装置、サーバ、受信機、送信機、プロセッサ、メモリ、ディスプレイ、ネットワークに関するものであってもよい。ここに説明される実施例は、様々なタイプの情報を表す電磁信号を処理及び変換するように適応された電子機械に関する。ここに説明される実施例は、包括的かつ一体的に機械及びその使用に関連し、ここに説明される実施例は、コンピュータハードウェア、機械、様々なハードウェア構成要素と共にそれらの使用の範囲外の意味又は実用的適用可能性を有しない。
【０１０１】
例えば、精神的ステップを利用して、非物理的ハードウェアのための様々な動作を実現するよう特に構成された計算装置、サーバ、受信機、送信機、プロセッサ、メモリ、ディスプレイ、ネットワークを置換することは、実施例が作用する方法に実質的に影響を与えうる。
【０１０２】
このようなハードウェア制限は、ここに説明される実施例の明確に必須の要素であり、それらは、ここに説明される実施例の処理及び構成に対する物質的な効果を有することなく、省略又は精神的手段に置換できない。ハードウェアは、ここに説明される実施例に必須であり、迅速かつ効率的な方式でステップを実行するためだけに使用されるものではない。
【０１０３】
本発明及びそれの効果が詳細に説明されたが、添付の請求項によって規定される発明から逸脱することなく、様々な変更、置換及び変更がここで行うことができることが理解されるべきである。
【０１０４】
さらに、本出願の範囲は、明細書において説明されるプロセス、機械、製造物、物質の組成物、手段、方法及びステップの特定の実施例に限定されることを意図するものではない。当業者は、本発明の開示から、実質的に同じ機能を実行するか、又はここに説明される対応する実施例と実質的に同じ結果を実現する現在存在するか、又は以降に開発されるプロセス、機械、製造物、物質の組成物、手段、方法又はステップが、本発明に従って利用されてもよいことを容易に理解するであろう。従って、添付された請求項は、そのようなプロセス、機械、製造物、物質の組成物、手段、方法又はステップをそれらの範囲内に含むことが意図される。
【図１】
0006502492.tif 000002
【図２】
0006502492.tif 000003
【図３】
0006502492.tif 000004
【図４】
0006502492.tif 000005
【図５】
0006502492.tif 000006
【図６】
0006502492.tif 000007
【図７】
0006502492.tif 000008