(57)【要約】  第１のノードにおける、１つまたは複数のジョブをハンドリングするための方法であって、前記第１のノードが着信リンク上でジョブを受信し、前記ジョブがジョブ値を備え、前記方法は、前記第１のノードによって、ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を決定するステップと、前記第１のノードによって、しきい値を決定するために使用されるドロッピング確率を決定するために誤差値として前記偏差を使用するステップであって、前記しきい値が、ジョブのキューの輻輳レベルに対応または関連する、前記偏差を使用するステップと、前記第１のノードによって、ジョブ値をしきい値と比較し、前記ジョブ値が前記しきい値を下回ることを決定するステップと、前記第１のノードによって、前記比較に基づいて前記ジョブをドロップするステップとを含む、方法。【選択図】図８
2020519059.tif 000002
【特許請求の範囲】
【請求項１】
第１のノードにおける、１つまたは複数のジョブをハンドリングするための方法であって、前記第１のノードが着信リンク上でジョブを受信し、前記ジョブがジョブ値を備え、前記方法は、
−  前記第１のノードによって、ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を決定するステップと、
−  前記第１のノードによって、しきい値を決定するために使用されるドロッピング確率を決定するために誤差値として前記偏差を使用するステップであって、前記しきい値が、前記ジョブのキューの輻輳レベルに対応または関連する、前記偏差を使用するステップと、
−  前記第１のノードによって、前記ジョブ値を前記しきい値と比較し、前記ジョブ値が前記しきい値を下回ることを決定するステップと、
−  前記第１のノードによって、前記比較に基づいて前記ジョブをドロップするステップと
を含む、方法。
【請求項２】
前記方法が、
−  前記第１のノードによって、前記ジョブ値の分布関数を維持するステップと、
−  前記第１のノードによって、前記維持された分布関数に基づいて前記しきい値を決定するステップと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記方法が、
−  前記第１のノードによって、動作ポイントにおける分布関数の微分を推定するステップと、
−  前記第１のノードによって、前記推定に基づいて、および所望のジョブドロップレベルと実際のジョブドロップレベルとの間の偏差または差分に基づいて前記しきい値を決定するステップと
をさらに含む、請求項１または２に記載の方法。
【請求項４】
前記ジョブがパケットであり、前記ジョブ値がパケット値である、請求項１から３のいずれか一項に記載の方法。
【請求項５】
１つまたは複数のジョブをハンドリングするために構成された第１のノードであって、前記第１のノードが、着信リンク上でジョブを受信するように構成され、前記ジョブがジョブ値を備え、前記第１のノードは、
−  ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を決定することと、
−  しきい値を決定するために使用されるドロッピング確率を決定するために誤差値として前記偏差を使用することであって、前記しきい値が、前記ジョブのキューの輻輳レベルに対応または関連する、前記偏差を使用することと、
−  前記ジョブ値を前記しきい値と比較し、前記ジョブ値が前記しきい値を下回ることを決定することと、
−  前記比較に基づいて前記ジョブをドロップすることと
を行うために構成された、第１のノード。
【請求項６】
前記第１のノードが、
−  前記ジョブ値の分布関数を維持することと、
−  前記維持された分布関数に基づいて前記しきい値を決定することと
を行うためにさらに構成された、請求項５に記載の第１のノード。
【請求項７】
前記第１のノードが、
−  動作ポイントにおける分布関数の微分を推定することと、
−  前記推定に基づいて、および所望のジョブドロップレベルと実際のジョブドロップレベルとの間の偏差または差分に基づいて前記しきい値を決定することと
を行うためにさらに構成された、請求項５または６に記載の第１のノード。
【請求項８】
前記ジョブがパケットであり、前記ジョブ値がパケット値である、請求項５から７のいずれか一項に記載の第１のノード。
【請求項９】
コンピュータプログラムを備えるコンピュータ可読記憶媒体であって、前記コンピュータプログラムが、少なくとも１つのプロセッサ上で実行されたとき、前記少なくとも１つのプロセッサに、請求項１から４のいずれか一項に記載の方法を行わせる命令を備える、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書の実施形態は、第１の通信ノード、第１の通信ノードにおいて実施される方法、コンピュータプログラム、およびコンピュータ可読記憶媒体に関する。特に、本明細書の実施形態は、通信ネットワークにおいて１つまたは複数のパケットをハンドリングすることに関する。
【背景技術】
【０００２】
無線通信ネットワークなどの一般的な通信ネットワークでは、移動局および／またはユーザ機器（ＵＥ）としても知られる、無線端末が、無線アクセスネットワーク（ＲＡＮ）を介して１つまたは複数のコアネットワークに通信する。ＲＡＮは、セルエリアに分割される地理的エリアをカバーし、各セルエリアは、いくつかのネットワークでは、たとえば、「ノードＢ」または「ｅノードＢ」と呼ばれることもある、基地局、たとえば、無線基地局（ＲＢＳ）によってサーブされる。セルは、アンテナと無線基地局とがコロケートされない場合、基地局サイトまたはアンテナサイトにおける無線基地局によって無線カバレッジが与えられる、地理的エリアである。各セルは、ローカル無線エリア内の識別情報によって識別され、その識別情報はセル中でブロードキャストされる。モバイルネットワーク全体において一意にセルを識別する別の識別情報も、セル中でブロードキャストされる。基地局は、基地局の範囲内で、無線周波数上で動作するエアインターフェースを介してユーザ機器と通信する。
【０００３】
ＲＡＮのいくつかのバージョンでは、いくつかの基地局は、一般に、たとえば、ランドラインまたはマイクロ波によって、無線ネットワークコントローラ（ＲＮＣ）または基地局コントローラ（ＢＳＣ）など、コントローラノードに接続され、コントローラノードは、コントローラノードに接続された複数の基地局の様々なアクティビティを監視し、協調させる。ＲＮＣは、一般に、１つまたは複数のコアネットワークに接続される。
【０００４】
Ｕｎｉｖｅｒｓａｌ  Ｍｏｂｉｌｅ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｙｓｔｅｍ（ＵＭＴＳ）は、第２世代（２Ｇ）モバイル通信用グローバルシステム（ＧＳＭ）から発展した、第３世代移動体通信システムである。ＵＭＴＳ地上波無線アクセスネットワーク（ＵＴＲＡＮ）は、基本的に、ユーザ機器のために広帯域符号分割多元接続（ＷＣＤＭＡ）および／または高速パケットアクセス（ＨＳＰＡ）を使用するＲＡＮである。第３世代パートナーシッププロジェクト（３ＧＰＰ）として知られるフォーラムでは、電気通信サプライヤが、たとえば第３世代ネットワークおよびさらなる世代のための規格を提案およびその規格に関して同意し、向上されたデータレートおよび無線容量を研究する。
【０００５】
エボルブドパケットシステム（ＥＰＳ）のための仕様は３ＧＰＰ内で完成されており、この作業は次の３ＧＰＰリリースにおいて続く。ＥＰＳは、Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）無線アクセスとしても知られる、拡張ユニバーサル地上無線アクセスネットワーク（Ｅ−ＵＴＲＡＮ）と、システムアーキテクチャエボリューション（ＳＡＥ）コアネットワークとしても知られる、エボルブドパケットコア（ＥＰＣ）とを備える。Ｅ−ＵＴＲＡＮ／ＬＴＥは、無線基地局がＲＮＣではなくＥＰＣコアネットワークに直接接続される３ＧＰＰ無線アクセス技術の変形態である。概して、Ｅ−ＵＴＲＡＮ／ＬＴＥでは、ＲＮＣの機能は、無線基地局、たとえば、ＬＴＥにおけるｅノードＢと、コアネットワークとの間で分散される。したがって、ＥＰＳのＲＡＮは、ＲＮＣへの報告なしの無線基地局を備える、基本的に「フラットな」アーキテクチャを有する。
【０００６】
パケットは、通信ネットワークの一部であるトランスポートネットワークにおける経路に沿ってコアネットワークにおいてトランスポートされる。今日、トランスポートネットワーキングの２つの広いカテゴリーが利用可能である。自動と呼ばれるカテゴリーでは、経路選択は、自動であり、通常、分散され、通常、最短経路パラダイムに従う。インターネットプロトコル（ＩＰ）ルーティング、ＩＰ／マルチプロトコルラベルスイッチング（ＭＰＬＳ）、およびイーサネット最短経路ブリッジング（ＳＰＢ）は、このカテゴリーに明確に分類される。トラフィックエンジニアリングと呼ばれるもう一方の手法は、より回線アウェア（ｃｉｒｃｕｉｔ  ａｗａｒｅ）であり、通常、リソース予約が含まれる、ネットワークにわたる明示的経路をセットアップすることに依拠する。一般化ＭＰＬＳ（ＧＭＰＬＳ：Ｇｅｎｅｒａｌｉｚｅｄ  ＭＰＬＳ）、ＭＰＬＳトランスポートプロファイル（ＴＰ）、プロバイダバックボーンブリッジトランスポートプロファイル（ＰＢＢ−ＴＰ：Ｐｒｏｖｉｄｅｒ  Ｂａｃｋｂｏｎｅ  Ｂｒｉｄｇｅｓ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｆｉｌｅ）およびリソース予約プロトコル（ＲＳＶＰ：Ｒｅｓｏｕｒｃｅ  Ｒｅｓｅｒｖａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）がすべて、このカテゴリーに分類される。
【０００７】
自動ソリューションは低い管理負担を有し、大部分の時間の間、最短経路に依拠するので、自動ソリューションはまた、何らかの形の低遅延効率を達成する。自動ソリューションは、信頼性およびネットワーク利用を増加させるために、自動高速リルートおよび等コストマルチパス（ＥＣＭＰ：Ｅｑｕａｌ−Ｃｏｓｔ  Ｍｕｌｔｉｐａｔｈ）で拡大され得る。しかしながら、自動ソリューションは、十分なサービス品質（ＱｏＳ）測度を与えることができない。通常、単純なパケット優先度またはＤｉｆｆＳｅｒｖハンドリングが帯域幅保証を与えない。
【０００８】
トラフィックエンジニアリングソリューションは、フローに対する容量を予約することに焦点を当てており、帯域幅保証を与えることにより適しているが、経路算出は、より高い利用率の場合に代替経路が使用されるべきである場合、潜在的に極めて複雑であり得る。また、ロバストネスは、通常、代替経路を予約することによって達成され、これはリソースの浪費である。通信ノードなど、トランスポート機器は、高いスループットおよび低いビット当たり価格に重きが置かれるので、通常、少数の優先または重み付き公平キュー、数レベルのドロップ優先順位に限定される、ごく限られたパケット処理能力を通常有する。
【０００９】
たとえば、パケットネットワークなどのコアネットワークにおける通信ネットワークにおけるボトルネックに対する所望のリソース需要を規定およびシグナリングする２つの一般的なやり方がある。ボトルネックは、単一のまたは限られた数の構成要素またはリソースが通信ネットワークの容量または性能に影響を及ぼす、通信ネットワーク中のあるロケーションである。
【００１０】
第１の一般的なやり方は、実際のトラフィックの到着より前に、フローまたはベアラなど、所与のトラフィックアグリゲートのための所望のリソース共有ルールをボトルネックノードに事前シグナリング／事前設定することである。ボトルネックノードは、次いで、これらの共有ルールに基づいてトラフィックアグリゲートのハンドリングを実装し、たとえば、所望のリソース共有を実現するためのスケジューリングを使用する。この事前シグナリング／事前設定方法のための例は、たとえば３ＧＰＰ［３ＧＰＰ  ＴＳ２３．４０１  ｖ１２．４．０］、ＳＩＲＩＧ［３ＧＰＰ  ＴＳ２３．０６０セクション５．３．５．３、ｖ１２．４．０］、またはリソース予約プロトコル（ＲＳＶＰ）［ＲＦＣ２２０５］のベアラ概念である。ＬＴＥ  ｅＮＢにおいて３ＧＰＰベアラ概念を実装する、この方法のための例示的なスケジューリングアルゴリズムが、Ｗａｎｇ  Ｍｉｎ、Ｊｏｎａｓ  Ｐｅｔｔｅｒｓｓｏｎ、Ｙｌｖａ  Ｔｉｍｎｅｒ、Ｓｔｅｆａｎ  ＷａｎｓｔｅｄｔおよびＭａｇｎｕｓ  Ｈｕｒｄ、Ｅｆｆｉｃｉｅｎｔ  ＱｏＳ  ｏｖｅｒ  ＬＴＥ−ａ  Ｓｃｈｅｄｕｌｅｒ  Ｃｅｎｔｒｉｃ  Ａｐｐｒｏａｃｈ．Ｐｅｒｓｏｎａｌ  Ｉｎｄｏｏｒ  ａｎｄ  Ｍｏｂｉｌｅ  Ｒａｄｉｏ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ（ＰＩＭＲＣ）、２０１２  ＩＥＥＥ  第２３回国際シンポジウムにおいて見つけられ得る。これの別の例は、Ｓｅｒｖｉｃｅ  Ｖａｌｕｅ  Ｏｒｉｅｎｔｅｄ  Ｒａｄｉｏ  Ｒｅｓｏｕｒｃｅ  Ａｌｌｏｃａｔｉｏｎ、ＷＯ２０１３０８５４３７に記載されているように、リソース共有をサービス値に基づかせることである。
【００１１】
第２の一般的なやり方は、優先度でパケットをマークすることであり、これは、より高い優先度のフローにより多くのリソースを与えることになり、または互いに比較してパケットの相対的重要性をマークする、ドロップ優先順位でパケットをマークすることである。より高いドロップ優先順位のパケットが、より低いドロップ優先順位のパケットの前にドロップされることになる。そのような方法のための一例は、所与のクラス［ＲＦＣ２５９７］内のＤｉｆｆＳｅｒｖ相対的優先転送（ＡＦ：Ａｓｓｕｒｅｄ  Ｆｏｒｗａｒｄｉｎｇ）である。また、いくつかのドロップ優先順位レベルをもつそのような方法は、Ｐｅｒ−Ｂｅａｒｅｒ  Ｍｕｌｔｉ  Ｌｅｖｅｌ  Ｐｒｏｆｉｌｉｎｇ、ＥＰ２６６３０３７において規定されている。
【００１２】
毎パケット値（ＰＰＶ：Ｐｅｒ  Ｐａｃｋｅｔ  Ｖａｌｕｅ）概念に従って、通信ノードが、パケットを、リソース共有に関係する値に関連付ける。したがって、通信ノードは、パケットを物理ネットワークにおけるリソース共有に関係する値でマークし、本明細書ではパケット値とも呼ばれるその値は、物理ネットワークにおいて、たとえば線形スケールに沿った、他のパケットの重要性に対するパケットの重要性のレベルを示す。通信ノードは、さらに、物理ネットワーク上で、マークされたパケットを宛先ノードに向かって送信する。したがって、毎パケットマーキングベース帯域幅共有制御方法の基本概念は、以下である。エッジ通信ノードにおいて、各パケットは、パケットの重要性を表すラベルを得る。ボトルネックノードでは、これらのラベルまたはパケット値は、帯域幅共有判定において使用される。フローのパケットは、たとえば、輻輳の場合、最も低い重要性をもつ第１のドロップパケットに対する異なる重要性値を有することができる。
【００１３】
毎パケットオペレータ値（ＰＰＯＶ：Ｐｅｒ  Ｐａｃｋｅｔ  Ｏｐｅｒａｔｏｒ  Ｖａｌｕｅ）概念とも呼ばれる毎パケット値概念に関係する、［１，２］では、毎フローキューイングが可能でないときでもフローの間の帯域幅共有を制御するための方法が提案される。両方の概念は、毎パケットマーキングベース帯域幅共有制御に基づく。単一のバッファのためのアルゴリズムが規定され、これは、これらのパケットフローの間の共有遅延を生じる。［４］では、パケットフィルタベース方法が説明される。
【００１４】
これまで説明されたＰＰＶスケジューラは、キューの中間からドロップすることを必要とする（最小ＰＰＶを最初にドロップすること）。これは、ルータなどのいくつかの実際的な通信ノードにとって、処理／メモリ集約的すぎることがある。代替的に、それらの通信ノードのチップセットが、パケット到着時にのみドロップをサポートし、後でドロップをサポートしないことがある。これは、通信ネットワークの性能を制限または低減するフレキシブルでないソリューションを生じる。
【発明の概要】
【００１５】
本明細書の実施形態の目的は、効率的な様式で通信ネットワークにおけるリソースを使用する機構を提供することである。
【００１６】
第１の態様によれば、本目的は、通信ネットワークにおいて、たとえば宛先ノードに向かう１つまたは複数のパケットをハンドリングするための、第１の通信ノードにおける方法を提供することによって達成される。第１の通信ノードは、着信リンク上で第２の通信ノードからパケットを受信し、そのパケットはパケット値を備える。第１の通信ノードは、さらに、ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を決定し、ＰＰＶ限界とも呼ばれるしきい値を決定するために使用されるドロッピング確率を決定するために誤差値としてこの偏差を使用する。第１の通信ノードは、パケット値をしきい値と比較する。しきい値は、パケットのキューの輻輳レベルに対応または関連する。第１の通信ノードは、比較の結果に基づいて、パケットをドロップすべきなのか、発信リンクのためのキューに送信、たとえば転送すべきなのかをさらに決定する。
【００１７】
別の態様によれば、本目的は、通信ネットワークにおいて１つまたは複数のパケットをハンドリングするための第１の通信ノードを提供することによって達成される。第１の通信ノードは、着信リンク上で第２の通信ノードからパケットを受信するように設定され、そのパケットはパケット値を備える。第１の通信ノードは、ターゲットキューイング遅延値からのキューイング遅延の偏差を決定することと、ＰＰＶ限界とも呼ばれるしきい値を決定するために使用されるドロッピング確率を決定するために誤差値としてこの偏差を使用することとを行うようにさらに設定される。第１の通信ノードは、パケット値をしきい値と比較するようにさらに設定される。しきい値は、パケットのキューの輻輳レベルに対応または関連する。第１の通信ノードは、比較の結果に基づいて、パケットをドロップすべきなのか、発信リンクのためのキューに送信または転送すべきなのかを決定するようにさらに設定される。
【００１８】
さらにまた別の態様によれば、本目的は、少なくとも１つのプロセッサ上で実行されたとき、少なくとも１つのプロセッサに、第１の通信ノードによって実施される、本明細書の方法に記載の方法を行わせる命令を備える、コンピュータプログラムを提供することによって達成される。
【００１９】
さらにまた別の態様によれば、本目的は、コンピュータプログラムを備えるコンピュータ可読記憶媒体を提供することによって達成され、そのコンピュータプログラムは、少なくとも１つのプロセッサ上で実行されたとき、少なくとも１つのプロセッサに、第１の通信ノードによって実施される、本明細書の方法を行わせる命令を備える。
【００２０】
したがって、本明細書では、キュー管理アルゴリズム、たとえばＰＩＥアルゴリズムとのＰＰＶリソース共有フレームワークの組合せが提案される。
【００２１】
いくつかの実施形態では、キュー管理アルゴリズムは、キューまたはパケットキューについて実行され、第１の通信ノードは、たとえばＰＩＥ概念を使用してドロッピング確率を決定することによって、ターゲットキューイング遅延値を維持し得る。次いで、第１の通信ノードは、輻輳しきい値（ＣＴＶ：ｃｏｎｇｅｓｔｉｏｎ  ｔｈｒｅｓｈｏｌｄ  ｖａｌｕｅ）など、予想されるＰＰＶ限界を決定し得、ＰＰＶ限界のその使用は、実装されているとき、決定されたドロッピング確率を生じる。このＰＰＶ限界は、キューについてのパケットフィルタとしてセットされ、第１の通信ノードは、決定されたＰＰＶ限界よりも小さいパケット値をもつすべてのパケットをドロップし得る。
【００２２】
ドロッピング確率からＰＰＶ限界を決定することの代替形態も、本明細書で提供される。ターゲットドロッピング確率とも呼ばれる、決定されたドロッピング確率からＰＰＶ限界を決定するための最も簡単な様式は、着信パケット値の経験的累積分布関数（ＥＣＤＦ：Ｅｍｐｉｒｉｃａｌ  Ｃｕｍｕｌａｔｉｖｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｆｕｎｃｔｉｏｎ）などの分布関数を維持し、その決定されたドロッピング確率においてパケット値としてＰＰＶ限界を決定することである。
【００２３】
より少ないストレージ集約的ソリューションは、システムの現在の動作ポイントにおけるＥＣＤＦなどの分布関数の微分を推定し、また、最後の期間または時間間隔における所望のパケットドロップ／マークと実際のパケットドロップ／マークとの間の偏差または差分を考慮に入れることである。また、ターゲットキューイング遅延値に基づくＰＰＶ限界の直接制御が、拡張された比例積分コントローラ（ＰＩＥ：Ｐｒｏｐｏｒｔｉｏｎａｌ  Ｉｎｔｅｇｒａｌ  ｃｏｎｔｒｏｌｌｅｒ  Ｅｎｈａｎｃｅｄ）などのコントローラで可能である。
【００２４】
本明細書の実施形態は、キューについてさえ、フローの間のリソース共有を制御することを可能にし、たとえば、到着ドロップのみが、可能であり、幾分迅速なおよび複雑でない実装形態を必要とする。
【００２５】
本開示のさらなる態様では、処理システムにおけるキュー管理の方法が提供され、前記システムは、処理されるべきジョブを備える処理キューを備え、前記システムは、着信ジョブを備える少なくとも１つの着信キューを備え、各着信キューは、着信ジョブの処理のために処理キューに着信ジョブを出力するように構成され、各着信キューは、着信ジョブが前記対応する着信キューに入れられるべきであるかどうかを決定するための値フィルタに関連し、前記方法は、以下のステップを含む。
−  少なくとも１つの値フィルタによって、処理されるべきジョブを受信するステップであって、処理されるべき前記ジョブがジョブ値に関連する、処理されるべきジョブを受信するステップ、
−  前記少なくとも１つの値フィルタによって、処理されるべき前記ジョブの前記ジョブ値が、前記処理キュー中の処理ジョブのレイテンシに関連するジョブしきい値を下回ると決定するステップ、
−  前記値フィルタによって、処理されるべき前記ジョブをドロップするステップ。
【００２６】
本開示の概念のうちの１つは、コントローラベース値フィルタ処理と、最小値を最初にドロップするドロッピングとを組み合わせ、両方の利点を保つための考えを対象とする。
【００２７】
コントローラが値フィルタをセットし得る。そのコントローラは、従来技術の場合のようにキューイング遅延を直接制御するのではなく、たとえば５０％未満の、サーバのキューの制御される損失をターゲットにし得る。
【００２８】
すべてのパケット／ジョブが、値フィルタによってフィルタ処理されず、たとえば値フィルタによってドロップされず、サーバのキューに入れられる。そのキューの遅延が大きくなりすぎるとき、ＡＱＭは、最も小さい値をもつパケット／ジョブをドロップする。ＡＱＭはまた、値フィルタを制御するコントローラに、失われたおよびサーブされたパケット／ジョブの数を周期的に報告し、これは、コントローラが値フィルタを再計算することを可能にする。
【００２９】
上記の利点のうちの１つは、それが、制御される余分のＡＱＭ処理を伴う、最小ＰＶを最初にドロップするソリューションの精度を保つことである。別の利点は、簡略化されたコントローラ設計に関係する。このソリューションは、ＰＶフィルタをセットするコントローラに、はるかに小さい安定性要件、すなわち、ＡＱＭが許容可能であり得る、最小ＰＶを最初にドロップすることによる、大きい範囲の実際のドロップ割合、たとえば１％〜１００％を課す。
【００３０】
ＶＭプロセスは、実施されるべきジョブ、たとえば、処理されるべきパケットを記憶する、プロセスキューを有する。各プロセスキューは、ＶＭプロセスを供給するために他のプロセスによって使用される、１つまたは複数の入力キューによって供給される。「ＡＱＭプロセス」は、入力キューからプロセスキューにジョブを移動させること、および過負荷の場合ジョブをドロップすることを担当する。各ジョブは、ＰＰＶ概念におけるパケット値と同様に、ジョブに関連する値を有する。プロセスキューが大きくなりすぎると、最小値をもつ（１つまたは複数の）ジョブがドロップされる。この場合、着信キューによるおよびＡＱＭプロセスによる事前処理が無駄になる。ドロップすること自体も処理を必要とする。ジョブレートが大きくなると、これは、システムの性能を減少させることになる。
【００３１】
不要な処理の量を減少させるために、システムに「値フィルタ」を導入する。値フィルタは、値フィルタに設定される値限界を有し、値限界よりも小さい値をもつすべてのジョブが、この時点で早期にドロップされる。値限界はコントローラによってセットされ、これは、キューイング遅延および「プロセスキュー」中のドロップデータ（ジョブの総数、ドロップされたジョブ）および「値フィルタ」中のドロップデータによって供給される。プロセスキューからジョブをドロップするＡＱＭ処理によって、実際のキュー長さが保たれるので、コントローラは、中で説明されるものと同様であるが、コントローラは、緩和された要件を有する。解決されるべき実際の問題に応じて、ＡＭＱプロセスによるドロップレートは、たとえば、１〜５０％であり得、高い過負荷の場合、ジョブの残りのみが値フィルタによってドロップされなければならない。また、このソリューションは、ＡＱＭプロセスがオーバーシュート（ｏｖｅｒｓｈｏｏｔ）をハンドリングすることができるので、オーバーシュートをより小さい問題点にする。
【００３２】
「値フィルタ」は、たとえば１０〜１００ｍｓごとに定期的に更新され得、値フィルタは、ジョブのサーバが知られているとき、最も早期のポイントに、好ましい場合、システムのエントリポイントに置かれ得る。このようにして、不要な事前処理（さらにはサーバへの送信）が最小限に抑えられ得る。
【００３３】
一例では、コントローラは、いくつのパケットがドロップ／パスされたかに関する統計値をフィルタから受信し得る。そのような情報は、システムの総作業負荷の洞察を与えるために使用され得る。
【００３４】
一例では、処理システムはコントローラをさらに備え、前記方法は、以下のステップをさらに含む。
−  前記コントローラによって、前記処理キュー中の処理ジョブの前記レイテンシを決定するステップ、
−  前記コントローラによって、前記決定されたレイテンシに基づいて、前記少なくとも１つの値フィルタの前記ジョブしきい値を更新するステップ。
【００３５】
さらなる一例では、本方法は、以下のステップをさらに含む。
−  前記コントローラによって、前記決定されたレイテンシを事前規定されたレイテンシ値と比較するステップ、および
−  前記コントローラによって、前記比較に基づいて、前記少なくとも１つの値フィルタの前記ジョブしきい値を更新するステップ。
【００３６】
別の例では、本方法は、以下のステップをさらに含む。
−  前記コントローラによって、前記処理システムの瞬時処理負荷に基づいて、前記少なくとも１つの値フィルタの前記ジョブしきい値を更新するステップ。
【００３７】
さらなる態様では、１つまたは複数のジョブをハンドリングするために構成された第１のノードが提供され、前記第１のノードは、着信リンク上でジョブを受信するように構成され、前記ジョブはジョブ値を備え、前記第１のノードは、以下を行うために構成される。
−  ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を決定すること、
−  しきい値を決定するために使用されるドロッピング確率を決定するために誤差値として前記偏差を使用することであって、前記しきい値が、ジョブのキューの輻輳レベルに対応または関連する、前記偏差を使用すること、
−  ジョブ値をしきい値と比較し、前記ジョブ値が前記しきい値を下回ることを決定すること、
−  前記比較に基づいて前記ジョブをドロップすること。
【００３８】
一例では、前記第１のノードは、以下を行うためにさらに構成される。
−  ジョブ値の分布関数を維持すること、および
−  前記維持された分布関数に基づいてしきい値を決定すること。
【００３９】
さらなる一例では、第１のノードは、以下を行うためにさらに構成される。
−  動作ポイントにおける分布関数の微分を推定すること、および
−  前記推定に基づいて、および所望のジョブドロップレベルと実際のジョブドロップレベルとの間の偏差または差分に基づいてしきい値を決定すること。
【００４０】
また別の例では、ジョブはパケットであり、前記ジョブ値はパケット値である。
【００４１】
次に、実施形態が、同封の図面に関してより詳細に説明される。
【図面の簡単な説明】
【００４２】
【図１】本明細書の実施形態による、通信ネットワークを示す概観を示す図である。
【図２】本明細書の実施形態による、概略フローチャートである。
【図３】本明細書の実施形態による、概略フローチャートである。
【図４】本明細書のいくつかの実施形態による、第１の通信ノードを示す概観を示す図である。
【図５】本明細書のいくつかの実施形態による、第１の通信ノードを示す概観を示す図である。
【図６】本明細書の実施形態による、概略フローチャートである。
【図７】本明細書のいくつかの実施形態による、第１の通信ノードを示す概観を示す図である。
【図８】本明細書の実施形態による、第１の通信ノードによって実施される方法を示す概略フローチャートである。
【図９】本明細書の実施形態による、通信ネットワークを示す概観を示す図である。
【図１０】本明細書の実施形態による、第１の通信ノードを示すブロック図である。
【発明を実施するための形態】
【００４３】
図１は、本明細書の実施形態による、通信ネットワーク１を示す概観である。通信ネットワーク１は、第１の通信ノード１０’および第２の通信ノード１０”など、複数の通信ノード１０を備える。パケットが、通信ネットワーク１上で受信ノードまたは宛先ノード１１にトランスポートされ、受信ノードまたは宛先ノード１１も通信ノードである。第１の通信ノード１０’は、ルータ、スイッチ、アプリケーションサーバ、あるいは通信ネットワーク１内で１つまたは複数のパケットをトランスポートするスケジューラまたはパケットハンドラをもつ任意のノード、たとえば、基地局または同様のものなど、無線ネットワークノードであり得る。パケットのトランスポート中に、第１の通信ノード１０’は、たとえば第２の通信ノード１０”から、パケット値をもつパケットを受信し、そのパケット値は、パケットの重要性のレベル、たとえば優先度レベルまたは同様のものを示し得る。第１の通信ノード１０’は、ターゲットキューイング遅延値、すなわち、事前規定された予想される値からの、第１の通信ノード１０’のキューのキューイング遅延の偏差を決定する。これは、第１の通信ノード１０’がキューイング遅延とターゲットキューイング遅延値との差分を決定すると見なされ得る。第１の通信ノード１０’は、ＰＰＶ限界とも呼ばれるしきい値を調整または決定するために使用されるドロッピング確率を決定するために誤差値としてこの偏差（差分）を使用する。第１の通信ノード１０’は、パケット値をしきい値と比較する。しきい値は、パケットのキューの輻輳レベルに対応または関連し得る。第１の通信ノード１０’は、比較の結果に基づいて、パケットをドロップすべきなのか、発信リンクのためのキューに送信（転送）すべきなのかをさらに決定する。
【００４４】
参考文献［３］は、着信パケットのためにランダムパケットドロップ／マーキングを適用する入力フィルタ処理方法を示している。従来技術における拡張された比例積分コントローラ（ＰＩＥ）スケジューラは、異なるフローの間のリソース共有を制御することができない［３］。第１に、それは、所与の輻輳制御（ＣＣ）挙動、たとえばトランスポート制御プロトコル（ＴＣＰ）フレンドリな挙動を仮定する。異なるＣＣ挙動をもつフローが、不公平な共有を得ることになるか、またはすべての他のフローを支配することさえできる。第２に、ＰＰＶフレームワークが可能にするようなフローの間のリッチなリソース共有ポリシーを規定することが可能でない。さらに、すべてのフローについての等しいドロップ確率が、ＰＰＶ概念によって規定される所望のリソース共有を生じないことになる。本明細書の実施形態は、キューがいっぱいになるときよりも早期に輻輳状況に反応するＰＩＥと同様の軽量プロアクティブ機構を用いて、ＰＰＶ概念など、パケットマーキングベース帯域幅共有制御を拡張し得、これは、観測されたキューイング遅延を低減し得、帯域幅共有がフロー間のマーキングポリシーによって規定されることを保証し得る。
【００４５】
ターゲットキューイング遅延からのキューイング遅延の偏差を連続的に決定し、たとえば、フィルタとも呼ばれるパケット値ベースパケットフィルタにおいて使用されるしきい値を調整するために誤差値としてこの偏差を使用するための、コントローラ、たとえば比例積分（ＰＩ：ｐｒｏｐｏｒｔｉｏｎａｌ-ｉｎｔｅｇｒａｌ）コントローラ、比例微分（ＰＤ：ｐｒｏｐｏｒｔｉｏｎａｌ-ｄｅｒｉｖａｔｉｖｅ）コントローラ、比例積分微分（ＰＩＤ：ｐｒｏｐｏｒｔｉｏｎａｌ-ｉｎｔｅｇｒａｌ-ｄｅｒｉｖａｔｉｖｅ）コントローラなどを使用するＰＰＯＶ−ＡＱＭと呼ばれるコントローラベースアクティブキュー管理（ＡＱＭ）方法が、本明細書で提案される。次いで、パケット値ベースパケットフィルタは、単に、しきい値よりも小さいパケット値をもつあらゆる着信パケットを（ＰＩＥの場合のように）ドロップまたはマークする。コントローラは、周期的に（たとえばＴミリ秒ごとに）しきい値を更新し得る。
【００４６】
実施形態が、図２上に示されており、システムを起動した後に、本方法は、最初に、アクション２０１において、統計的変数を初期化し、アクション２０２において、タイマーをリセットする。時間Ｔが経過した後に（アクション２０３参照）、第１の通信ノード１０’は、たとえば、１つまたは複数のコントローラおよび収集された統計値を適用することによって、アクション２０４において、しきい値（パケットフィルタ）を更新する。アクション２０５において、パケットがシステムに到着するたびに、アクション２０６において、統計値が収集され、次いで、アクション２０７において、統計値が更新され、パケットフィルタが適用され、すなわち、アクション２０８において、（ＰＶによってマークされた）着信パケットのパケット値が（フィルタと示される）しきい値よりも小さい場合、アクション２０９において、パケットは単にドロップされ、他の場合、アクション２１０において、パケットはバッファに転送される。
【００４７】
フィルタを更新し、したがって、しきい値を制御する（図２中のアクション２０４において「フィルタを更新する」）ための異なるストラテジーを適用する、間接、直接および複合ＰＰＯＶ−ＡＱＭ方法が、本明細書で提供される。提案される方法の目的は、予想されるレベルにキューイング遅延を保ち、並行して、任意の輻輳レベルにおいて事前規定されたリソース共有ポリシーを保証し、それに応じて、（しきい値、輻輳しきい値（ＣＴＶ）またはフィルタしきい値としても知られる）ＰＰＶ限界をセットすることである。提案されるソリューションの効率および適用可能性が、シミュレーションによって検査され、証明された。
【００４８】
間接方法
間接方法が図３および図４に示されている。本方法は、最初に、図２中のアクション２０１に対応するアクション３０１において、統計的変数を初期化し、図２中のアクション２０２に対応するアクション３０２において、タイマーをリセットする。時間Ｔが経過した後に（図２中のアクション２０３に対応するアクション３０３参照）、第１の通信ノード１０’は、たとえば、１つまたは複数のコントローラおよび収集された統計値を適用することによって、図２中のアクション２０４に対応するアクション３０４において、しきい値（パケットフィルタ）を更新する。図２中のアクション２０５に対応するアクション３０５において、パケットがシステムに到着するたびに、図２中のアクション２０６に対応するアクション３０６において、統計値が収集され、次いで、図２中のアクション２０７に対応するアクション３０７において、統計値が更新され、アクション３０８において、さらなるパケット値が収集されて、ＥＣＤＦなどの分布関数に入る。次いで、パケットフィルタが適用され、すなわち、図２中のアクション２０８に対応するアクション３０９において、（ＰＶによってマークされた）着信パケットのパケット値が（フィルタと示される）しきい値よりも小さい場合、図２中のアクション２０９に対応するアクション３１０において、パケットは単にドロップされ、他の場合、図２中のアクション２１０に対応するアクション３１１において、パケットはバッファに転送される。
【００４９】
さらに、本方法は、２つのステップにおいて動作し、すなわち、アクション３１２において、第１の通信ノード１０’が、予想されるキューイング遅延（τ）を保証するために必要とされる、予想されるドロッピング確率を計算し得、次いで、２）アクション３１３において、観測されたパケット値の分布関数（経験的累積分布関数（ｅＣＤＦ））および予想されるドロッピング確率に従って、（フィルタとも示される）ＰＰＶ限界がセットまたは計算される。たとえば、時間ｔにおける所与のドロッピング確率ｐについて、ＰＰＶ限界Ｖｎｅｗは、観測されたパケット値の経験的累積分布関数（ｅＣＤＦ）から、
V_new=eCDF_t^(-1) (p)
として計算され、
ここで、ｅＣＤＦ＿ｔ＾（−１）（．）は、時間ｔにおける観測されたパケット値のｅＣＤＦの逆関数であり、予想されるドロッピング確率ｐをＰＰＶ限界に結びつける。ＰＰＶ限界が計算された後に、アクション３１４において、ｅＣＤＦがリセットされ得る（たとえば、古い測定値をドロップする）。コントローラは、Ｔ秒ごとに周期的にＰＰＶ限界を更新する。
【００５０】
例示的な実装形態が図４に示されている。ｐを推定するために、［３］と同様のＰＩコントローラまたはＰＩＤコントローラなど、コントローラ４０１が、構築および実装され得、観測された誤差（Ｄ＿ｑ（ｔ）−τ）を最小限に抑えるために、新しいターゲットドロッピング確率ｐ＿ｎｅｗがセットされる。このコントローラ４０１は、以下のように形式化され得る。
2020519059.tif 000003
ここで、Ｐ、ＩおよびＤは、コントローラパラメータ、すなわち、それぞれ、比例項、積分項および微分項のための定数であり、ｅｒｒｏｒ（ｔ）は、（（Ｄ＿ｑ（ｔ）−τ）、すなわち、現在のキューイング遅延と予想されるキューイング遅延との差分として計算される）時間ｔにおける誤差であり、ｐ＿ｏｌｄは、前の反復において計算されたドロッピング確率を示す。ｐ＿ｎｅｗは、新しいＰＰＶ限界を更新するために使用され、たとえば、ｐとＶとの間の関係を示すグラフからとられ得る。
【００５１】
直接方法
直接ＰＰＯＶ−ＡＱＭ方法は、誤差として、事前規定されたターゲット値（τ）に対する現在のキューイング遅延（Ｄ＿ｑ）の偏差を使用するコントローラ５０１に依拠する。コントローラ５０１は、この誤差を最小限に抑えることを目的とし、したがって、図５に示されているように、フィルタにおいて適用されるべきＰＰＶ限界を直接計算する。フローチャートは図２と同じであり、ここで、「フィルタを更新する」が単一のコントローラを表す。ＰＰＶ限界（Ｖ）が更新されるとき、あらゆる着信パケットのパケット値（ｖ）が検査され、ｖ＜Ｖである場合、着信パケットはドロップされ、他の場合、着信パケットはバッファに転送される。コントローラは、Ｔ秒ごとに周期的にＰＰＶ限界を更新する。
【００５２】
例示的な実装形態：直接ＰＰＯＶ−ＡＱＭ方法は、たとえば、コントローラ５０１としてＰＩＤコントローラを使用して、
2020519059.tif 000004
として時間ｔにおいてフィルタを更新することができ、
ここで、Ｐ、ＩおよびＤは、コントローラパラメータ、すなわち、それぞれ、比例項、積分項および微分項のための定数であり、ｅｒｒｏｒ（ｔ）は、（（Ｄ＿ｑ（ｔ）−τ）、すなわち、現在のキューイング遅延と予想されるキューイング遅延との差分として計算される）時間ｔにおける誤差であり、Ｖ＿ｏｌｄは、前の反復においてセットされたＰＰＶ限界を示す。
【００５３】
複合ＰＰＯＶ−ＡＱＭ方法によれば、本方法は、最初に、アクション２０１および３０１に対応するアクション６０１において、統計的変数を初期化し、アクション２０２および３０２に対応するアクション６０２において、タイマーをリセットする。時間Ｔが経過した後に（アクション２０３および３０３に対応するアクション６０３参照）、第１の通信ノード１０’は、たとえば、１つまたは複数のコントローラおよび収集されたパケット統計値およびキュー統計値を適用することによって、アクション２０４および３０４に対応するアクション６０４において、しきい値（パケットフィルタ）を更新する。アクション２０５および３０５に対応するアクション６０５において、パケットがシステムに到着するたびに、アクション２０６および３０６に対応するアクション６０６において、統計値が収集され、次いで、アクション６０７において、パケット統計値が更新され、アクション６０８において、さらなるキュー統計値が更新される。その場合、これらは、フィルタまたは実際にＰＰＶ限界を更新するために使用される。次いで、パケットフィルタが適用され、すなわち、アクション２０８および３０９に対応するアクション６０９において、（ＰＶによってマークされた）着信パケットのパケット値が（フィルタと示される）しきい値よりも小さい場合、アクション２０９および３１０に対応するアクション６１０において、パケットは単にドロップされ、他の場合、アクション２１０および３１１に対応するアクション６１１において、パケットはバッファに転送される。
【００５４】
複合ＰＰＯＶ−ＡＱＭ方法は、第１の通信ノード１０’において２つのコントローラを適用する。観測されたキューイング遅延偏差（前に規定された誤差）を低減するためにドロップレートを制御するための第１のコントローラ（アクション６１２参照）。第１のコントローラによって与えられる、観測されたドロップレートと予想されるドロップレートとの間の偏差を低減するために、フィルタにおいて使用されるＰＰＶ限界を制御するための第２のコントローラ（アクション６１３参照）。したがって、第１のコントローラは、予想されるレベルの近くにキューイング遅延を保つために必要とされる、予想されるドロップレートを決定することを担当し、第２のコントローラは、できるだけ速く目的に達するためにフィルタのＰＰＶ限界がどのように変更されるべきであるかを説明する。複合ＰＰＯＶ−ＡＱＭ方法は、図６および図７に示されている。コントローラ１  ７０１が、ターゲット変数（τ：予想されるキューイング遅延）が固定であった前のＰＰＯＶ−ＡＱＭ変形態におけるコントローラとして動作し、コントローラ２  ７０２が、達せられるべきターゲットとしてコントローラ１  ７０１の出力を使用し、ＰＰＶ限界を制御するための現在値として、観測されたドロップ確率を使用する。
【００５５】
例示的な実装形態：たとえば、両方のコントローラは、ＰＩＤコントローラであり得（ただし、他の種類のコントローラも可能である）、確率ｐおよびしきい値Ｖが、以下のように計算され得る。
コントローラ１：
2020519059.tif 000005
コントローラ２：
2020519059.tif 000006
ここで、ｅｒｒｏｒ（ｔ）＝Ｄ＿ｑ（ｔ）−τおよび（ｅｒｒｏｒ）＾（ｔ）＝ｐ＿ｏｂｓｅｒｖｅｄ（ｔ）−ｐ＿ｎｅｗであり、後者は、達せられるべきターゲット値としてコントローラ１によって与えられるドロッピング確率を使用する。コントローラ２は、収束を加速するためにしきい値を変更することを目的とする。
【００５６】
次に、図８に示されているフローチャートを参照しながら、実施形態による、通信ネットワークにおいて１つまたは複数のパケットをハンドリングするための、第１の通信ノード１０’によって実施される方法アクションが、説明される。アクションは、以下で述べられる順序でとられる必要はないが、任意の好適な順序でとられ得る。いくつかの実施形態において実施されるアクションは、点線ボックスでマークされる。第１の通信ノード１０’は、通信ネットワーク１中に備えられる。
【００５７】
アクション８０１．第１の通信ノード１０’は、第２の通信ノード１０”などの別の通信ノードから、パケット値をもつパケットを受信する。パケット値は、線形スケールに沿った、別のパケットのパケット相対的重要性の重要性のレベルに関係し得る。いくつかの実施形態では、第１の通信ノード１０’は、同じフローのそれぞれのパケット値をもつ複数のパケットを受信する。
【００５８】
アクション８０２．第１の通信ノード１０’は、キュー中の１つまたは複数のパケットのキューイング遅延を決定し、決定されたキューイング遅延をターゲットキューイング遅延と比較し、したがって、第１の通信ノード１０’は、キューイング遅延の偏差または差分を決定する。この偏差または差分は、キューのパケットのドロッピング確率を決定するために使用され、たとえば、キューのパケットのドロッピング確率を決定するために誤差値として使用される。したがって、第１の通信ノード１０’は、ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を監視し、誤差値としてこの偏差を使用する。これはまた、キューイング遅延の偏差または差分を決定することと見なされ得る。
【００５９】
アクション８０３．第１の通信ノード１０’は、着信パケットのパケット値の統計値を収集し得る。たとえば、第１の通信ノード１０’は、統計値収集関数、たとえば着信パケット値の分布関数を実行し得る。分布関数のための一例がＥＣＤＦである。別の例が、所与の時間ウィンドウにおいてすべての着信パケット値を記憶することである。したがって、第１の通信ノード１０’は、観測されたパケット値の分布関数を実行し得る。
【００６０】
アクション８０４．第１の通信ノード１０’は、誤差値または決定されたドロッピング確率に基づいて、しきい値（ＰＰＶ限界）を更新またはセットするなど、決定する。第１の通信ノード１０’は、分布関数にさらに基づいて、しきい値をさらに更新またはセットし得る。したがって、第１の通信ノード１０’は、ターゲットキューイング遅延からのキューのキューイング遅延の偏差を決定し、その偏差を監視することとしても表され得、しきい値を調整または決定するために誤差値としてこの偏差または差分を使用する。たとえば、どのしきい値が、（事前規定され得る）ターゲットキューイング遅延などの予想されるレベルの近くにキューイング遅延を保つために必要とされる、予想されるドロップレートに達するようにセットされるかが決定される。第１の通信ノード１０’は、着信パケット値のＥＣＤＦなどの分布関数を維持することによって、決定されたドロッピング確率からしきい値を決定し得、その決定されたドロッピング確率においてパケット値としてしきい値を決定し得る。
【００６１】
より少ないストレージ集約的ソリューションは、システムの現在の動作ポイントにおけるＥＣＤＦなどの分布関数の微分を推定し、また、最後の期間における所望のパケットドロップ／マークと実際のパケットドロップ／マークとの間の差分を考慮に入れることである。また、ターゲットキューイング遅延に基づくＰＰＶ限界の直接制御が、たとえばＰＩＥと同様のコントローラで可能である。したがって、第１の通信ノード１０’は、キューイング遅延の決定された偏差に基づいてしきい値を決定し得る。アクション８０２および８０４が、各パケットについて実施されないことがあるが、周期的に、たとえば事前セットされた時間間隔中に１回実施され得ることに留意されたい。
【００６２】
アクション８０５．第１の通信ノード１０’は、パケット値をしきい値と比較する。したがって、第１の通信ノード１０’は、パケット値を、第１の通信ノード１０’から宛先ノード１１に向かう発信リンクのしきい値と比較する。しきい値は、発信リンクの輻輳レベルに対応し得る。
【００６３】
アクション８０６．第１の通信ノード１０’は、さらに、比較に基づいてパケットをドロップまたは転送する。したがって、第１の通信ノード１０’は、比較の結果に基づいて、パケットをドロップすべきなのか、発信リンクのためのキューに送信または転送すべきなのかを決定する。
【００６４】
したがって、本明細書の実施形態は、既存のソリューションの所望のまたはターゲットドロッピング確率をパケット値フィルタ（すなわちフィルタのＰＰＶ限界）に変換する。ＰＰＶ限界は、着信パケット値のＥＣＤＦを利用することによってセットされ得る。ＰＰＶ限界は、現在の動作ポイントにおけるＥＣＤＦの微分を推定することによってセットされ得る。ＰＰＶ限界は、ＥＣＤＦの微分についてのアプリオリな知識によってセットされ得る。ＰＰＶ限界は、前の所望のドロッピング確率と実際に経験されるドロッピング確率とを考慮に入れることによってセットされ得る。
【００６５】
図９は、第１の通信ノード１０’が宛先ノード１１にパケットを送信することを示すブロック図を開示する。第１の通信ノード１０’は、異なるパケットのサービスに関係する異なる値、たとえば値「１０」、「２０」、「４０」のパケットのフローＦを受信する。本明細書の実施形態による、局所的に生成された値であり、宛先ノード１１に向かうキューの輻輳レベルを示し得る、しきい値Ｔｈが、１５にセットされ、すなわち、Ｔｈ＝１５であり、キューのキューイング遅延に基づいてセットされる。１５よりも小さいパケット値をもつパケット、この場合、パケット値１０をもつパケットが、ドロップされ、他のパケットが、キューに転送され、宛先ノード１１に向かって送信される。
【００６６】
本明細書の実施形態は、パケット値（ＰＶ）の概念を使用する。パケット値は、たとえば、線形スケールに沿った、パケットの重要性のレベルに対応し得る。パケット値は、別のパケットのパケット相対的重要性の重要性のレベルを示す。たとえば、パケット値「１００」は、そのパケットが、値「１０」をもつパケットの１０倍重要であり、値「１」をもつパケットの１００倍重要であることを示す。重要性は、パケットペイロードの実際のコンテンツ、たとえば重要なビデオフレームに基づいて、または特定のパケットフロー、たとえばゴールドサブスクライバ（ｇｏｌｄ  ｓｕｂｓｃｒｉｂｅｒ）のプレミアムトラフィックに基づいて、またはスループットコミットメント、たとえばこのパケットが一定のレベルのスループットに達することを必要とされるか否かに基づいて、あるいはこれらの組合せ、あるいは任意の他の基準に基づいて決定され得る。パケット値は、各パケット中で搬送され、オペレータがこのパケットの１バイトを配信することから得る効用を表す。したがって、その名前が全パケットのパケット値を暗示する場合でも、パケット値は、全パケットのパケット値を得るために、パケットの長さを乗算され得る。その名前は、依然として、概念全体を示し、パケット値をフロー値と区別するために、パケット値である。通信ネットワークは、送信されるパケットの合計値を最大にしようと努力する。
【００６７】
図１０は、パケットネットワークなどの通信ネットワークにおいて１つまたは複数のパケットをハンドリングするための、２つの実施形態において例示される第１の通信ノード１０’を示すブロック図である。点線ボックスは、モジュール／回路要素が随意であることを示す。
【００６８】
第１の通信ノード１０’は、本明細書の方法を実施するように設定された、１つまたは複数のプロセッサなど、処理回路要素１００１を備え得る。
【００６９】
第１の通信ノード１０’は、受信モジュール１００２、たとえば受信機またはトランシーバを備え得る。第１の通信ノード１０’、処理回路要素１００１、および／または受信モジュール１００２は、他の通信ノードから、パケットを受信するように設定される。パケットは、他のパケットのパケット相対的重要性の重要性のレベルに関係するパケット値を備える。いくつかの実施形態では、第１の通信ノード１０’は、同じフローのそれぞれのパケット値をもつ複数のパケットを受信する。
【００７０】
第１の通信ノード１０’は監視モジュール１００３を備え得る。第１の通信ノード１０’、処理回路要素１００１、および／または監視モジュール１００３は、キューのキューイング遅延を決定することと、決定されたキューイング遅延を、事前規定された予想される値と比較して差分または偏差を生じさせることとを行うように設定される。言い換えれば、第１の通信ノード１０’、処理回路要素１００１、および／または監視モジュール１００３は、キューイング遅延の偏差または差分を監視するように設定される。この偏差は、誤差値として使用され、および／またはキューのパケットのドロッピング確率を決定するために使用される。第１の通信ノード１０’、処理回路要素１００１、および／または監視モジュール１００３は、着信パケットのパケット値統計値を収集するように設定され得る。たとえば、第１の通信ノード１０’、処理回路要素１００１、および／または監視モジュール１００３は、着信パケット値の分布関数を実行するように設定され得る。たとえば、第１の通信ノード１０’、処理回路要素１００１、および／または監視モジュール１００３は、分布関数としてＥＣＤＦを決定するように設定され得る。代替または追加として、第１の通信ノード１０’、処理回路要素１００１、および／または監視モジュール１００３は、所与の時間ウィンドウにおいてすべての着信パケット値を記憶するように設定され得る。したがって、第１の通信ノード１０’、処理回路要素１００１、および／または監視モジュール１００３は、観測されたパケット値の分布関数を実行するように設定され得る。
【００７１】
第１の通信ノード１０’はフィルタ処理モジュール１００４を備え得る。第１の通信ノード１０’、処理回路要素１００１、および／またはフィルタ処理モジュール１００４は、誤差値または決定されたドロッピング確率に基づいて、しきい値（ＰＰＶ限界）を更新またはセットするように設定され、しきい値（ＰＰＶ限界）を調整または決定することとも見なされ得る。第１の通信ノード１０’、処理回路要素１００１、および／またはフィルタ処理モジュール１００４は、分布関数にさらに基づいてしきい値を更新またはセットするようにさらに設定され得る。したがって、第１の通信ノード１０’は、事前規定された予想される値からのキューのキューイング遅延の偏差を監視することと、しきい値を調整または決定するために誤差値としてこの差分を使用することとを行うように設定される。たとえば、第１の通信ノード１０’、処理回路要素１００１、および／またはフィルタ処理モジュール１００４は、どのしきい値が、予想されるレベルの近くにキューイング遅延を保つために必要とされる、予想されるドロップレートに達するようにセットされるかを決定するように設定され得る。第１の通信ノード１０’、処理回路要素１００１、および／またはフィルタ処理モジュール１００４は、着信パケット値の経験的累積分布関数（ｅＣＤＦ）を維持することによって、決定されたドロッピング確率からしきい値を決定することと、その決定されたドロッピング確率においてパケット値としてしきい値を決定することとを行うように設定され得る。
【００７２】
第１の通信ノード１０’、処理回路要素１００１、および／またはフィルタ処理モジュール１００４は、システムの現在の動作ポイントにおけるＥＣＤＦの微分を推定することと、また、最後の期間における所望のパケットドロップ／マークと実際のパケットドロップ／マークとの間の差分を考慮に入れることとを行うように設定され得る。また、ターゲットキューイング遅延に基づくＰＰＶ限界の直接制御が、たとえばＰＩＥと同様のコントローラで可能である。
【００７３】
第１の通信ノード１０’は比較モジュール１００５を備え得る。第１の通信ノード１０’、処理回路要素１００１、および／または比較モジュール１００５は、パケット値をしきい値と比較するように設定される。したがって、第１の通信ノード１０’、処理回路要素１００１、および／または比較モジュール１００５は、パケット値を、たとえば、第１の通信ノード１０’から宛先ノード１１に向かう発信リンクのしきい値と比較するように設定される。しきい値は、発信リンクの輻輳レベルに対応または関連する。
【００７４】
第１の通信ノード１０’はハンドリングモジュール１００６を備え得る。第１の通信ノード１０’、処理回路要素１００１、および／またはハンドリングモジュール１００６は、比較に基づいてパケットをドロップまたは転送するように設定される。したがって、第１の通信ノード１０’、処理回路要素１００１、および／またはハンドリングモジュール１００６は、比較の結果に基づいて、パケットをドロップすべきなのか、発信リンクのためのキューに送信または転送すべきなのかを決定するように設定され得る。
【００７５】
第１の通信ノード１０’は、送信モジュール１００７、たとえば送信機またはトランシーバを備え得る。第１の通信ノード１０’、処理回路要素１００１、および／または送信モジュール１００７は、キューからパケットを送信するように設定され得る。
【００７６】
第１の通信ノード１０’はメモリ１００８をさらに備える。メモリ１００８は、パケット値、帯域幅、しきい値、分布関数、曲線、実行されるときに本明細書で開示される方法を実施するためのアプリケーション、および同様のものなど、データを記憶するために使用され得る１つまたは複数のユニットを備える。
【００７７】
第１の通信ノード１０’のための本明細書で説明される実施形態による方法は、たとえば、少なくとも１つのプロセッサ上で実行されたとき、第１の通信ノード１０’によって実施されるように、少なくとも１つのプロセッサに、本明細書で説明されるアクションを行わせる、命令、すなわち、ソフトウェアコード部分を備える、コンピュータプログラム１００９またはコンピュータプログラム製品によってそれぞれ実装され得る。コンピュータプログラム１００９は、コンピュータ可読記憶媒体１０１０、たとえばディスクまたは同様のものに記憶され得る。コンピュータプログラムを記憶したコンピュータ可読記憶媒体１０１０は、少なくとも１つのプロセッサ上で実行されたとき、第１の通信ノード１０’によって実施されるように、少なくとも１つのプロセッサに、本明細書で説明されるアクションを行わせる、命令を備え得る。いくつかの実施形態では、コンピュータ可読記憶媒体は、非一時的コンピュータ可読記憶媒体であり得る。したがって、第１の通信ノード１０’は、処理回路要素とメモリとを備え得、前記メモリは、前記処理回路要素によって実行可能な命令を備え、それにより、前記通信ノードは、本明細書の方法を実施するように動作可能である。
【００７８】
本明細書で説明される値またはパケット値を使用することは、単一の機構を用いた異なるパケットネットワーク上のベアラ内でおよびベアラの間でパケットを区別することとリソース共有を制御することの両方を可能にする。すなわち、ベアラのサブフローまたはフローの最初の数個のパケットの優先度を上げる（ｕｐ−ｐｒｉｏｒｉｔｉｚｅ）ことが容易で自然である。区別は、単一のベアラ内でさえ、ベストエフォートおよび特殊トラフィックについて等しく単純である。さらに、すべてのユーザのためのビデオの第１のレイヤに、それらの他のトラフィックに勝る優先度を与えることなど、他の場合も実現しやすい。
【００７９】
たとえば、ＰＰＯＶは、広範囲のリソース共有ポリシーをサポートするが、宛先ノードに対する各トラフィック部分の値に焦点を当てると、ＱｏＥ関係ポリシーに特にうまく適合する。単独のパケットのためのハンドリングでさえ、規定され、たとえば、ＴＣＰ始動またはピングの優先度を上げ得る。リソース共有がパケットマーキングによって規定され、ＲＡＮにおける影響または再設定を回避するので、これは、セットアップまたは再設定することが特に容易であり得る。このようにして、このソリューションは、オペレータにとって、多くの異なるポリシーをセットアップすることに関して極めてスケーラブルでフレキシブルである。トラフィック測定または分析に基づくマーキングポリシーのオンザフライ再設定でさえ、可能である。
【００８０】
パケット値を規定するための１つのオプションは、それを所与のフローのスループットに基づかせることである。リソース共有は、スループット対値曲線によって記述され得る。これは、広範囲の輻輳レベルのためのリソース共有の理解しやすい視覚表示を可能にする。さらに、曲線の傾斜は、チャネル状態が変動する場合、リソース共有のスループット公平性と帯域幅利用率との間のトレードオフを決定する。意図された値曲線を選定することによって、公平性対利用率トレードオフは、サービスごとに影響を及ぼされ、また、経験されるサービス品質に依存し得る。
【００８１】
エアインターフェースを介したリソース共有に加えて、このフレームワークは、多くのタイプの乏しいリソースを共有するために使用され得る。可能な例は、バッファメモリ、パケット処理リソースである。
【００８２】
本明細書の第１の実施形態によれば、通信ネットワークにおいて１つまたは複数のパケットをハンドリングするための、第１の通信ノード１０’によって実施される方法が、本明細書で提供される。第１の通信ノード１０’は、通信ネットワーク１中に備えられる。本方法は、
第２の通信ノードから、パケット値をもつパケットを受信することと、
キュー中の１つまたは複数のパケットのキューイング遅延を決定することと、
決定されたキューイング遅延をターゲットキューイング遅延と比較して偏差を生じさせることと、
キューのパケットのドロッピング確率を決定するために偏差を使用することと、
決定されたドロッピング確率に基づいてしきい値をセットすることと、
パケット値をしきい値と比較することと、
比較に基づいて、パケットをドロップするか、またはパケットをキューに転送することと
を含む。
【００８３】
着信パケットのパケット値の統計値を収集することと、
しきい値をセットすること、また、収集された統計値を考慮に入れることと
をさらに含む、第１の実施形態に記載の方法。
【００８４】
統計値を収集することが、ＥＣＤＦを決定することを含み、決定されたドロッピング確率に基づいてしきい値をセットすることが、着信パケット値のＥＣＤＦを維持することと、その決定されたドロッピング確率においてパケット値としてしきい値を決定することとを含む、第１の実施形態に記載の方法。
【００８５】
統計値を収集することが、現在の動作ポイントにおけるＥＣＤＦの微分を推定することと、また、期間における所望のパケットドロップ／マークと実際のパケットドロップ／マークとの間の差分を考慮に入れることとを含む、第１の実施形態に記載の方法。
【００８６】
しきい値は、発信リンクの輻輳レベルに対応し得、および／または、パケット値は、パケットの重要性レベルに対応し得る。
【００８７】
通信設計に精通している人々によって容易に理解されるように、その機能手段またはモジュールは、デジタル論理および／または１つまたは複数のマイクロコントローラ、マイクロプロセッサ、あるいは他のデジタルハードウェアを使用して実装され得る。いくつかの実施形態では、様々な機能のうちのいくつかまたはすべては、単一の特定用途向け集積回路（ＡＳＩＣ）において、あるいは、間に適切なハードウェアおよび／またはソフトウェアインターフェースがある２つまたはそれ以上の別個のデバイスにおいてなど、一緒に実装され得る。機能のうちのいくつかは、たとえば、無線端末またはネットワークノードの他の機能構成要素と共有されるプロセッサ上に実装され得る。
【００８８】
代替的に、説明される処理手段の機能エレメントのうちのいくつかは、専用ハードウェアの使用によって与えられ得、他の機能エレメントは、適切なソフトウェアまたはファームウェアに関連して、ソフトウェアを実行するためのハードウェアとともに与えられ得る。したがって、本明細書で使用される「プロセッサ」または「コントローラ」という用語は、ソフトウェアを実行することが可能なハードウェアのみに言及せず、限定はしないが、デジタル信号プロセッサ（ＤＳＰ）ハードウェア、ソフトウェアを記憶するための読取り専用メモリ（ＲＯＭ）、ソフトウェアおよび／またはプログラムあるいはアプリケーションデータを記憶するためのランダムアクセスメモリ、ならびに不揮発性メモリを暗黙的に含み得る。従来のおよび／またはカスタムの他のハードウェアも含まれ得る。通信受信機の設計者は、これらの設計選択に固有のコスト、性能、および保守のトレードオフを諒解されよう。
【００８９】
開示された実施形態の変更および他の実施形態が、上記の説明および関連する図面において提示される教示の恩恵を得る当業者に、想到されるであろう。したがって、（１つまたは複数の）実施形態が、開示された特定の実施形態に限定されるべきでないことと、変更および他の実施形態が、本開示の範囲内に含められるものであることとを理解されたい。特定の用語が本明細書で採用され得るが、それらの用語は、一般的および説明的な意味において使用されるにすぎず、限定の目的で使用されない。
【図１】
2020519059.tif 000007
【図２】
2020519059.tif 000008
【図３】
2020519059.tif 000009
【図４】
2020519059.tif 000010
【図５】
2020519059.tif 000011
【図６】
2020519059.tif 000012
【図７】
2020519059.tif 000013
【図８】
2020519059.tif 000014
【図９】
2020519059.tif 000015
【図１０】
2020519059.tif 000016
【手続補正書】
【提出日】平成31年2月11日(2019.2.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１のノード（１０’）における、１つまたは複数のジョブをハンドリングするための方法であって、前記第１のノード（１０’）が着信リンク上でジョブを受信し、前記ジョブがジョブ値を備え、前記方法は、
−  前記第１のノード（１０’）によって、ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を決定するステップと、
−  前記第１のノード（１０’）によって、しきい値を決定するために使用されるドロッピング確率を決定するために誤差値として前記偏差を使用するステップであって、前記しきい値（Ｖ）が、前記ジョブのキューの輻輳レベルに対応または関連する、前記偏差を使用するステップと、
−  前記第１のノード（１０’）によって、前記ジョブ値を前記しきい値と比較し、前記ジョブ値が前記しきい値を下回ることを決定するステップと、
−  前記第１のノード（１０’）によって、前記比較に基づいて前記ジョブをドロップするステップと
を含む、方法。
【請求項２】
前記方法が、
−  前記第１のノード（１０’）によって、前記ジョブ値の分布関数を維持するステップと、
−  前記第１のノード（１０’）によって、前記維持された分布関数に基づいて前記しきい値を決定するステップと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記方法が、
−  前記第１のノード（１０’）によって、動作ポイントにおける分布関数の微分を推定するステップと、
−  前記第１のノード（１０’）によって、前記推定に基づいて、および所望のジョブドロップレベルと実際のジョブドロップレベルとの間の偏差または差分に基づいて前記しきい値を決定するステップと
をさらに含む、請求項１または２に記載の方法。
【請求項４】
前記ジョブがパケットであり、前記ジョブ値がパケット値である、請求項１から３のいずれか一項に記載の方法。
【請求項５】
１つまたは複数のジョブをハンドリングするために構成された第１のノード（１０’）であって、前記第１のノード（１０’）が、着信リンク上でジョブを受信するように構成され、前記ジョブがジョブ値を備え、前記第１のノード（１０’）は、
−  ターゲットキューイング遅延値からの第１の通信ノードのキューイング遅延の偏差を決定することと、
−  しきい値を決定するために使用されるドロッピング確率を決定するために誤差値として前記偏差を使用することであって、前記しきい値が、前記ジョブのキューの輻輳レベルに対応または関連する、前記偏差を使用することと、
−  前記ジョブ値を前記しきい値と比較し、前記ジョブ値が前記しきい値を下回ることを決定することと、
−  前記比較に基づいて前記ジョブをドロップすることと
を行うために構成された、第１のノード（１０’）。
【請求項６】
前記第１のノード（１０’）が、
−  前記ジョブ値の分布関数を維持することと、
−  前記維持された分布関数に基づいて前記しきい値を決定することと
を行うためにさらに構成された、請求項５に記載の第１のノード（１０’）。
【請求項７】
前記第１のノード（１０’）が、
−  動作ポイントにおける分布関数の微分を推定することと、
−  前記推定に基づいて、および所望のジョブドロップレベルと実際のジョブドロップレベルとの間の偏差または差分に基づいて前記しきい値を決定することと
を行うためにさらに構成された、請求項５または６に記載の第１のノード（１０’）。
【請求項８】
前記ジョブがパケットであり、前記ジョブ値がパケット値である、請求項５から７のいずれか一項に記載の第１のノード（１０’）。
【請求項９】
コンピュータプログラムを備えるコンピュータ可読記憶媒体であって、前記コンピュータプログラムが、少なくとも１つのプロセッサ上で実行されたとき、前記少なくとも１つのプロセッサに、請求項１から４のいずれか一項に記載の方法を行わせる命令を備える、コンピュータ可読記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
これまで説明されたＰＰＶスケジューラは、キューの中間からドロップすることを必要とする（最小ＰＰＶを最初にドロップすること）。これは、ルータなどのいくつかの実際的な通信ノードにとって、処理／メモリ集約的すぎることがある。代替的に、それらの通信ノードのチップセットが、パケット到着時にのみドロップをサポートし、後でドロップをサポートしないことがある。これは、通信ネットワークの性能を制限または低減するフレキシブルでないソリューションを生じる。
公開ＸＰ０１５１１５４２７、ＰＡＮ  Ｐ  ＮＡＴＡＲＡＪＡＮ  Ｆ  ＢＡＫＥＲ  ＣＩＳＣＯ  ＳＹＳＴＥＭＳ  Ｇ  ＷＨＩＴＥ  ＣＡＢＬＥＬＡＢＳ、ＩＥＴＳ、Ｓｔａｎｄａｒｄｗｏｒｋｉｎｇｄｒａｆｔ，Ｉｎｔｅｒｎｅｔ  Ｓｏｃｉｅｔｙ（ＩＳＯＣ）、４、Ｒｕｅ  ｄｅｓ  Ｆａｌａｉｓｅｓ  ＣＨ−１２０５、ジュネーブ、スイス、２０１６年９月２６日、１〜２７ページは、「ＰＩＥ：Ａ  ｌｉｇｈｔｗｅｉｇｈｔ  Ｃｏｎｔｒｏｌ  Ｓｃｈｅｍｅ  ｔｏ  Ａｄｄｒｅｓｓ  ｔｈｅ  Ｂｕｆｆｅｒｂｌｏａｔ  ｐｒｏｂｌｅｍ」を開示する。
公開ＸＰ０３３０５８８４８、ＮＡＤＡＳ  ＳＺＩＬＶＥＳＺＴＥＲら、２０１６  ＩＥＥＥ  Ｇｌｏｂａｌ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｃｏｎｆｅｒｅｎｃｅ、ＩＥＥＥ、２０１６年１２月４日、１〜７ページは、「Ｐｅｒ  Ｐａｃｋｅｔ  Ｖａｌｕｅ：Ａ  ｐｒａｃｔｉｃａｌ  Ｃｏｎｃｅｐｔ  ｆｏｒ  Ｎｅｔｗｏｒｋ  Ｒｅｓｏｕｒｃｅ  Ｓｈａｒｉｎｇ」を開示する。
公開ＸＰ０６８１０９７１８、ＩＥＥＥ  ＤＲＡＦＴ、ＩＥＥＥ−ＳＡ、Ｐｉｓｃａｔａｗａｙ、ＮＪ  ＵＳＥ、ｖｏｌ．８０２、ｎｏ．ｖ０２、２０１６年５月２４日、１〜１７ページは、「Ｖｉａ  ｐｅｒ  ｐａｃｋｅｔ  ｖａｌｕｅ  （ＰＰＶ）」を開示する。
【国際調査報告】
2020519059.tif 000017
2020519059.tif 000018