(57)【要約】【課題】        最大限利用可能なデータレートを完全に利用することができるようにすること。【解決手段】    本発明は、或るデータレートを与えるリンクを介し接続された第1ネットワークブロックと第2ネットワークブロックとを備えたネットワーク構成要素であって、第1ネットワークブロックが、少なくとも1つのデータソースとデータソースに結合された少なくとも1つのデータレート制限手段とを備え、第2ネットワークブロックが、データソースに結合された少なくとも1つのデータ処理手段とデータ処理手段により処理されるデータのデータレートに関するデータフロー情報を取得するデータフロー情報取得手段とを備え、第1ネットワークブロックのデータレート制限手段が、データソースから送信されるデータのデータレートをデータフロー情報に基づき変化させるよう適合されるネットワーク構成要素を、提案することを目的とする。本発明はこれに対応する方法も提案する。【選択図】      図２
2008502192.tif 000002
【特許請求の範囲】
【請求項１】
或るデータレートを与えるリンク（３）を介して接続された第１のネットワークブロック（１）と第２のネットワークブロック（２）とを備えたネットワーク構成要素であって、
前記第１のネットワークブロックが、少なくとも１つのデータソース（１１−１〜１１−ｎ）、及び、該データソースに結合された少なくとも１つのデータ制限手段（１２−１〜１２−ｎ）を備え、
前記第２のネットワークブロックが、前記データソースに結合された少なくとも１つのデータ処理手段（２２−１〜２２−ｎ）、及び、該データ処理手段により処理されるデータのデータレートに関するデータフロー情報を取得するデータフロー情報取得手段（２３−１〜２３−ｎ）を備え、
前記第１のネットワークブロックの前記データレート制限手段が、前記データソースから送信されたデータのデータレートを前記データフロー情報に依存して変化させる、ことを特徴とするネットワーク構成要素。
【請求項２】
前記データ処理手段（２２−１〜２２−ｎ）が、前記データソース（１１−１〜１１−ｎ）に結合したネットワークインタフェイス（２４−１〜２４−ｎ）についてのデータを用意するように適合されている、請求項１に記載のネットワーク構成要素。
【請求項３】
複数のデータストリームが与えられ、
各々のデータストリームが、前記第１のネットワークブロックにおける１つのデータソース及び１つのデータレート制限手段に結合され、前記第２のネットワークブロックにおける１つのデータ処理手段、１つのデータフロー情報取得手段及び１つのネットワークインタフェイスに結合されている、請求項１に記載のネットワーク構成要素。
【請求項４】
前記リンク（３）が多重化されたリンクであり、
前記複数のデータストリームが、前記第１のネットワークブロックと前記第２のネットワークブロックとの間における多重化されたリンクを介して転送される、請求項３に記載のネットワーク構成要素。
【請求項５】
前記多重化されたリンクがイーサネット（登録商標）リンクである、請求項４に記載のネットワーク構成要素。
【請求項６】
前記イーサネット（登録商標）リンクに適用される前記多重化された技術が、仮想ローカルエリアネットワーク（ＶＬＡＮ）イーサネット（登録商標）である、請求項５に記載のネットワーク構成要素。
【請求項７】
前記データフロー情報取得手段が、バッファリング手段とバッファレベル検出手段とを備え、
前記データフロー情報が、バッファ占有レベルに関する情報を含む、請求項１に記載のネットワーク構成要素。
【請求項８】
少なくとも第１の閾値（ｔｈ1）が前記バッファ占有レベルについて設けられ、
前記データフロー情報取得手段が、前記第１の閾値を超過しているかどうかに関する情報を前記データフロー情報に含めるように適合されている、請求項７に記載のネットワーク構成要素。
【請求項９】
前記第１の閾値を超過しているかどうかという情報が、データフローメッセージ内に含まれ、
前記データフロー情報取得手段は、前記第１の閾値を超過したときにのみ、前記データフローメッセージを送信するように適合されている、請求項８に記載のネットワーク構成要素。
【請求項１０】
前記データレート制限手段が、前記第１の閾値を超過した場合に、前記データレートを低減するように適合されている、請求項８に記載のネットワーク構成要素。
【請求項１１】
第２の閾値（ｔｈ2）が前記バッファ占有レベルについて設けられ、
前記データフロー情報取得手段が、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を前記データフロー情報に含めるように適合されている、請求項７に記載のネットワーク構成要素。
【請求項１２】
第２の閾値（ｔｈ2）が前記バッファ占有レベルについて設けられ、
前記第２の閾値が前記第１の閾値より低くなっており、
前記データフロー情報取得手段が、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を前記データフロー情報に含めるように適合されている、請求項８又は請求項１１に記載のネットワーク構成要素。
【請求項１３】
前記データフロー情報取得手段が、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を前記データフローメッセージに含め、前記バッファ占有レベルが前記第２の閾値より低くなっているときに前記データフローメッセージを送信するように、適合されている、請求項１１又は請求項１２に記載のネットワーク構成要素。
【請求項１４】
前記データレート制限手段が、前記データレートが前記第２の閾値より低くなっている場合に前記データレートを増加させるように適合されている、請求項１１又は請求項１２に記載のネットワーク構成要素。
【請求項１５】
少なくとも１つのデータソース（１１−１〜１１−ｎ）と、該データソースに結合された少なくとも１つのデータレート制限手段（１２−１〜１２−ｎ）と、データ送信手段（１３）と、を備えたネットワークブロックであって、
前記データレート制限手段が、前記データソースから送信されたデータのデータレートをデータフロー情報に依存して変化させるように適合されている、ことを特徴とするネットワークブロック。
【請求項１６】
複数のデータストリームが設けられ、
各々のデータストリームが、１つのデータソース及び１つのデータレート制限手段に結合されている、請求項１５に記載のネットワークブロック。
【請求項１７】
前記データ送信手段が１つの多重化されたリンク（３）を与え、
前記複数のデータストリームが、前記１つの多重化されたリンクを介して転送される、請求項１６に記載のネットワークブロック。
【請求項１８】
データ受信手段（２１）と、受信されたデータを処理する少なくとも１つのデータ処理手段（２２−１〜２２−ｎ）と、データレートに関するデータフロー情報を取得するデータフロー情報取得手段（２３−１〜２３−ｎ）と、を備えたネットワークブロックであって、
前記データフロー情報取得手段が、前記データレートを変化させるデータフロー情報を与えるように適合されている、ことを特徴とするネットワークブロック。
【請求項１９】
前記データ処理手段（２２−１〜２２−ｎ）が、前記データ受信手段に結合されたネットワークインタフェイス（２４−１〜２４−ｎ）についてのデータを用意するように適合されている、請求項１８に記載のネットワークブロック。
【請求項２０】
複数のデータストリームが設けられ、
各々のデータストリームが、１つのデータ処理手段、１つのデータフロー情報取得手段及び１つのネットワークインタフェイスに結合されている、請求項１８に記載のネットワークブロック。
【請求項２１】
前記データ受信手段が、１つの多重化されたリンクに接続されており、
前記複数のデータストリームが、前記１つの多重化されたリンクを介して受信される、請求項２０に記載のネットワークブロック。
【請求項２２】
前記データフロー情報取得手段が、バッファリング手段及びバッファレベル検出手段を備え、
前記データフロー情報が、バッファ占有レベルに関する情報を含む、請求項１８に記載のネットワークブロック。
【請求項２３】
少なくとも第１の閾値（ｔｈ1）が前記バッファ占有レベルについて設けられ、
前記データフロー情報取得手段が、前記閾値を超過しているかどうかという情報を前記データフロー情報に含めるように適合されている、請求項２２に記載のネットワークブロック。
【請求項２４】
前記第１の閾値を超過しているかどうかという情報が、データフローメッセージに含まれ、
前記データフロー情報取得手段が、前記第１の閾値を超過したときにのみ、前記データフローメッセージを送信するように適合されている、請求項２３に記載のネットワークブロック。
【請求項２５】
第２の閾値（ｔｈ2）が前記バッファ占有レベルについて設けられ、
前記データフロー情報取得手段が、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を前記データフロー情報に含めるように適合されている、請求項２２に記載のネットワークブロック。
【請求項２６】
第２の閾値（ｔｈ２）が前記バッファ占有レベルについて設けられ、
前記第２の閾値が前記第１の閾値より低くなっており、
前記データフロー情報取得手段が、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を前記データフロー情報に含めるように適合されている、請求項２４に記載のネットワークブロック。
【請求項２７】
前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報をデータフローメッセージに含め、
前記データフロー情報取得手段が、前記バッファ占有レベルが前記第２の閾値より低くなっているときにのみ、前記データフローメッセージを送信するように適合されている、請求項２５又は請求項２６に記載のネットワークブロック。
【請求項２８】
請求項１５に記載のネットワークブロックと、請求項１８に記載のネットワークブロックとを備え、
前記ネットワークブロックが多重化されたリンクを介して接続されている、ネットワークシステム。
【請求項２９】
第１のネットワークブロックから、或るデータレートを与えるリンクを介して接続された第２のネットワークブロックへのデータフローを制御する方法であって、
前記第１のネットワークブロックのデータソースから受信したデータを、前記リンクを介して、前記第１のネットワークブロックから前記第２のネットワークブロックに送信するステップと、
前記第２のネットワークブロックにおいて、前記リンクを介して受信したデータを処理するステップと、
前記処理したデータのデータレートに関するデータフロー情報を取得するステップ（Ｓ１−３）と、
前記第１のネットワークブロックの前記データソースから前記データリンクに送信されるデータのデータレートを、前記データフロー情報に依存して変化させるステップ（Ｓ４）と、
を含むことを特徴とする方法。
【請求項３０】
前記受信したデータを処理するステップにおいて、ネットワークインタフェイスについてのデータが用意される、請求項２９に記載の方法。
【請求項３１】
複数のデータストリームが設けられ、
各々のデータストリームが１つのデータソースに結合されており、
前記データレートを制限するステップ、前記受信したデータを処理するステップ、及び、前記データフロー情報を取得するステップが、各々のデータストリームについて別々に実行される、請求項２９に記載の方法。
【請求項３２】
前記複数のデータストリームが、前記第１のネットワークブロックと前記第２のネットワークブロックとの間における１つの多重化されたリンクを介して転送される、請求項３１に記載の方法。
【請求項３３】
前記多重化されたリンクがイーサネット（登録商標）リンクである、請求項３２に記載の方法。
【請求項３４】
前記イーサネット（登録商標）リンクに適用される多重化技術が、仮想ローカルエリアネットワーク（ＶＬＡＮ）イーサネット（登録商標）である、請求項３３に記載の方法。
【請求項３５】
前記データフロー情報を取得するステップにおいて、バッファリング手段が用いられ、  前記データフロー情報を取得するステップが、バッファレベルを検出するステップをさらに含み、
前記データフロー情報が、前記バッファ占有レベルに関する情報である、請求項２９に記載の方法。
【請求項３６】
少なくとも第１の閾値（ｔｈ1）が前記バッファ占有レベルについて設けられ、
前記データフロー情報が、前記閾値を超過しているかどうかという情報を含む、請求項３５に記載の方法。
【請求項３７】
前記データフロー情報を取得するステップが、
前記第１の閾値を超過しているかどうかという情報をデータフローメッセージに含めるステップと、
前記閾値を超過しているときにのみ、前記データフローメッセージを送信するステップと、をさらに含む、請求項３６に記載の方法。
【請求項３８】
前記データレートを制限するステップにおいて、前記第１の閾値を超過した場合に、前記データレートが減少させられる、請求項３６又は請求項３７に記載の方法。
【請求項３９】
第２の閾値（ｔｈ2）が前記バッファ占有レベルについて設けられ、
前記データフロー情報が、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を含む、請求項３５に記載の方法。
【請求項４０】
第２の閾値（ｔｈ2）が前記バッファ占有レベルについて設けられ、
前記第２の閾値が前記第１の閾値（ｔｈ2）より低くなっており、
前記データフロー情報が、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を含む、請求項３６又は請求項３９に記載の方法。
【請求項４１】
前記データレートを制限するステップにおいて、前記データレートは、該データレートが前記第２の閾値より低くなっている場合に、増加させられる、請求項３９又は請求項４０に記載の方法。
【請求項４２】
前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報が、データフローメッセージ内に含まれ、
前記データフロー情報取得手段が、前記バッファ占有レベルが前記第２の閾値より低くなっているときにのみ、前記データフローメッセージを送信するように適合されている、請求項３９又は請求項４０に記載の方法。
【請求項４３】
或るデータレートを与える多重化されたリンク（３）を介して接続された第１のネットワークブロック（１）と第２のネットワークブロック（２）とを備えたネットワーク構成要素であって、
前記第１のネットワークブロックが、複数のデータソース（１１−１〜１１−ｎ）、及び、各々が１つのデータソースに結合された複数のデータレート制限手段（１２−１〜１２−ｎ）を備え、
前記第２のネットワークブロックが、複数のデーアプリケーション処理手段（２２−１〜２２−ｎ）、及び、前記複数のデータ処理手段により処理されるデータのデータレートに関するデータフロー情報を取得するデータフロー情報取得手段（２３−１〜２３−ｎ）を備え、
複数のデータストリームが設けられ、
各々のデータストリームが、前記第１のブロックにおける１つのデータソース及び１つのデータレート制限手段に結合され、前記第２のブロックにおける１つのデータフロー情報取得手段及び１つのネットワークインタフェイスに結合され、
前記複数のデータストリームが、前記第１のブロックと前記第２のブロックとの間における多重化されたリンクを介して転送され、
前記第１のブロックにおける前記データレート制限手段が、各々のデータソースから送信されるデータのデータレートを前記データフロー情報に依存して変化させるように適合されている、ことを特徴とするネットワーク構成要素。
【請求項４４】
前記データ処理手段が、ネットワークインタフェイスについてのデータを用意するように適合されている、請求項４３に記載のネットワーク構成要素。
【請求項４５】
各々が１つのデータソースに結合された複数のデータストリームについて、第１のネットワークブロックから、或るデータレートを与える多重化されたリンクを介して接続された第２のネットワークブロックへのデータフローを制御する方法であって、
各データストリームについて、第１のネットワークブロックのデータソースから受信したデータを、前記多重化されたリンクを介して、前記第１のネットワークブロックから前記第２のネットワークブロックに送信するステップと、
前記第２のネットワークブロックにおいて、各データストリームについて、前記多重化されたリンクを介して受信したデータを処理するステップと、
各データストリームについて、前記処理したデータのデータレートに関するデータフロー情報を取得するステップと、
各データストリームについて別々に、前記第１のネットワークブロックにおける前記データソースから前記データリンクに送信されるデータのデータレートを、前記データフロー情報に依存して変化させるステップと、
を含むことを特徴とする方法。
【請求項４６】
前記受信したデータを処理するステップにおいて、ネットワークインタフェイスについてのデータが用意され、
各ストリームについて１つのネットワークインタフェイスが設けられる、請求項４５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、第１のネットワークブロックから、或るデータレートを与えるリンクを介して接続された第２のネットワークブロックへのデータフローを制御する方法、並びに、上記第１のネットワークブロック及び上記第２のネットワークブロックを備えた対応するネットワーク構成要素に関する。
【背景技術】
【０００２】
本発明は、多重化された伝送インタフェイスを介したデータソースとデータ受信側との間におけるデータ転送を実行する装置又はネットワーク構造に関する。データソースとデータ受信側と（これらは、物理的に異なるモジュールとして実装することができる）の接続については、様々なタイプの伝送インタフェイスが存在する。これらの伝送インタフェイスには、フロー制御メカニズムを実現するものもあれば、そうでないものもある。本発明は、後者のタイプに関連し、フロー制御を欠いているという問題に対処することに着目するものである。
【０００３】
以下、考えるべき構造について図１を参照して説明する。この構造は、例えば、ＩＰ（インターネットプロトコル）ルータ又はＭＰＬＳ（マルチプロトコルラベルスイッチング）スイッチングルータの部分とすることができる。この構造は、２つの機能的なブロックを含む。そのうちの第１のブロックは、「レイヤ３ブロック」（Ｌ３ブロック）である。このブロックは、データパケットについての幾つかのソースを含む（これらは、例えば、ＩＰパケットについてのディフサーブ[DiffServ: Differentiated Services]スケジューラとすることができる）。第２のブロックは、「レイヤ２ブロック」（Ｌ２ブロック）であり、このレイヤ２ブロックは、Ｌ３ブロックからパケットを受信し、そのパケットを、そのデータパケットが最終的に伝送される公衆ネットワークに向けてネットワークインタフェイスに対して転送する、幾つかの処理ブロックを含む。Ｌ２ブロックは、ＰＰＰ／ＨＤＬＣ（ポイントツーポイントプロトコル／ハイレベルデータリンク制御）カプセル化（encapsulation）及び処理を実行する。Ｌ３ブロックにおける各ソースは、正にＬ２ブロックにおける１つのＰＰＰ／ＨＤＬＣ伝送器及び１つのネットワークインタフェイスに対して伝送を行う。
【０００４】
Ｌ３ブロック及びＬ２ブロックは、イーサネット（登録商標）インタフェイスを介して相互接続されている。異なるＬ３ソースからのデータパケットを区別するために、論理的な多重が、ＶＬＡＮイーサネット（登録商標）ヘッダに基づいて実行される。イーサネット（登録商標）ヘッダは、ネットワークインタフェイスの総合的なスループットよりも、遥かに高いスループットを有する。この理由により、レートリミッタは、各Ｌ３データパケットソースに従う。このレートリミッタは、時間ユニットにつき伝送されるバイト数を制限するので、Ｌ３ソースから結合したＰＰＰ／ＨＤＬＣブロックに対するデータレートは、ネットワークインタフェイスの最大スループットを超えないようになっている。データレートを制限することは、基本的な形として、例えば、連続した複数のパケットの間にタイムインターバルを挿入することにより、実行される。
【０００５】
伝送方向（ＴＸ）のみが、この場面に関連する（データソースからネットワークインタフェイスへの方向）。受信方向は、本発明が解決しようとする以下に説明する問題を生じさせない。
【０００６】
Ｌ２におけるＰＰＰ／ＨＤＬＣ処理（伝送方向）が、データパケットのペイロードに対して、（動作モードに依存した）ビット又はバイトを付加する（ビット／バイトのスタッフ）。付加されるビット又はバイトの数は、ペイロードのビットパターンに依存し、各パケットのペイロードを検査することなく予測することはできないものである。ネットワークインタフェイス上に伝送すべきデータの実際の量は増加している、換言すれば、Ｌ３ブロックによって認識されるようなネットワークインタフェイスの実際に利用可能なスループットは、減少している。
【０００７】
このような実際のスループットの減少を（Ｌ３ソースが、各パケットのペイロードを検査（これは著しい労力を要する）しない限り）Ｌ３ソースブロックによって認識できないことが、問題である。すなわち、ネットワークインタフェイス上の予測できない伝送について、多かれ少なかれ時間が必要とされる。レートリミッタが、元々のペイロードのバイト数のみしか考慮しない場合には、ネットワークインタフェイスは、オーバサブスクライブとなり、パケット損失がＬ２ブロックにおいて発生する。レートリミッタが、公称ネットワークインタフェイススループットより十分低いデータレートを設定することにより、ＰＰＰ／ＨＤＬＣ ビット／バイトスタッフを考慮しようとすれば、容量が浪費される。
【０００８】
かかる問題は、以前は、Ｌ２ブロックにおいて最低ケースのビット／バイトスタッフを用いてもネットワークインタフェイスの伝送容量を超過しない程度に十分に低い値に、Ｌ３ブロックにおけるデータレートを制限することにより、解決されていた。この結果、ネットワークインタフェイスにおける伝送容量が、効率的に利用されない。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
この問題は、上述したＬ３／Ｌ２構造においては当てはまらないが、デバイスＸが多重化された（共有）インタフェイスを介してデバイスＹに対してデータを供給するような他の構造において生じうる。デバイスＹは、このデータをさらに正確には予測できない速度により処理する（例えば、このデータをネットワークインタフェイス等を介して伝送する）。２つのデバイス間におけるリンクは、データがさらにデバイスＹにおいて処理されるレートよりも、高いレートをもたらす。デバイスＸは、伝送されるデータの量を制限するために、デバイスＹの処理ブロックの各々について別個のレートリミッタ（レートシェーパとも称される）機能を含んでいるので、後に続くインタフェイスの利用可能な伝送容量を超過することはない。デバイスＹにおけるインタフェイスの予測可能な利用可能伝送容量が変動すること、及び、デバイスＹにおける伝送すべきデータからの可変ヘッダ情報を付加することに起因して、達成可能なスループットは、利用可能な容量に比べて低くなる。これは、予測できない容量の変動についてのいくらかのマージンが、デバイスＸにおけるレートシェーパによって、デバイスＹに属するインタフェイスに残されなければならないからである（典型的な値は、利用可能な伝送容量の１０％である）。
【課題を解決するための手段】
【００１０】
したがって、本発明の目的は、上述した問題を解決して、最大限利用可能なデータレートを完全に利用することができるようにすることである。
【００１１】
この目的は、或るデータレートを与えるリンクを介して接続された第１のネットワークブロックと第２のネットワークブロックとを備えたネットワーク構成要素であって、前記第１のネットワークブロックが、少なくとも１つのデータソース、及び、該データソースに結合された少なくとも１つのデータ制限手段を備え、前記第２のネットワークブロックが、前記データソースに結合された少なくとも１つのデータ処理手段、及び、該データ処理手段により処理されるデータのデータレートに関するデータフロー情報を取得するデータフロー情報取得手段を備え、前記第１のネットワークブロックの前記データレート制限手段が、前記データソースから送信されたデータのデータレートを前記データフロー情報に依存して変化させる、ネットワーク構成要素により、達成される。
【００１２】
或いはまた、この目的は、第１のネットワークブロックから、或るデータレートを与えるリンクを介して接続された第２のネットワークブロックへのデータフローを制御する方法であって、前記第１のネットワークブロックのデータソースから受信したデータを、前記リンクを介して、前記第１のネットワークブロックから前記第２のネットワークブロックに送信するステップと、前記第２のネットワークブロックにおいて、前記リンクを介して受信したデータを処理するステップと、前記処理したデータのデータレートに関するデータフロー情報を取得するステップと、前記第１のネットワークブロックの前記データソースから前記データリンクに送信されるデータのデータレートを、前記データフロー情報に依存して変化させるステップと、を含む方法により、達成される。
【００１３】
さらには、上記目的は、少なくとも１つのデータソースと、該データソースに結合された少なくとも１つのデータレート制限手段と、データ送信手段と、を備えたネットワークブロックであって、前記データレート制限手段が、前記データソースから送信されたデータのデータレートをデータフロー情報に依存して変化させるように適合されている、ことを特徴とするネットワークブロックにより、達成される。
【００１４】
さらにまた、上記目的は、データ受信手段と、このデータ受信手段に結合された少なくとも１つのデータ処理手段と、このデータ処理手段により処理されたデータのデータレートに関するデータフロー情報を取得するデータフロー情報取得手段と、を備えたネットワークブロックであって、前記データフロー情報取得手段が、前記データレートを変化させるための前記データフロー情報を与えるように適合されている、ネットワークブロックにより、達成される。
【００１５】
このように、本発明によれば、前記第２のネットワークブロック／構成要素において用いられるデータレートに関する情報（以下「バックプレッシャ情報」とも称される）が、前記第１のネットワークブロック／構成要素における前記レートリミッタに供給されるので、前記データレートは、前記バックプレッシャ情報に基づいて変化させられる。
【００１６】
すなわち、前記データレートに対する決定要素である手段によって前記第２のネットワークブロック・構成要素において達成できる最大データレートを、完全に利用することができる。例えば、前記第２のネットワークブロックがネットワークインタフェイスを与え、かつ、前記データ処理手段がこのインタフェイスについてのデータを用意する場合には、パケット損失なく、最大インタフェイス容量を１００％まで利用することができる。
【００１７】
さらには、本発明によれば、データレートのみが適合されるにすぎない。すなわち、バックプレッシャ情報に依存して、前記データレートは、増加又は減少させられるが、０には設定されない。よって、トラフィックは決して中断されない。すなわち、本発明によれば、円滑な通信が可能である。
【００１８】
「ネットワーク構成要素」又は「ネットワークブロック」という用語が、ネットワークにおける、任意の種類の「モジュール」、「ユニット」、「システムにおける機能ブロック」を指す、ということに注意されたい。
【００１９】
複数のデータストリームを設けることができ、各データストリームは、前記第１のネットワークブロックにおける、１つのデータソース、１つのデータレート制限手段に結合することができ、前記第２のネットワークブロックにおける、１つのデータ処理手段、１つのデータフロー情報取得手段及び１つのネットワークインタフェイスに結合することができる。
【００２０】
前記リンクは、多重されたリンクとすることができ、前記複数のデータストリームは、前記第１のネットワークブロックと前記第２のネットワークブロックとの間における前記多重化されたリンクを介して転送される。前記多重化されたリンクは、イーサネット（登録商標）リンクとすることができ、このイーサネット（登録商標）リンクに適用される多重化技術は、仮想ローカルエリアネットワーク（ＶＬＡＮ）イーサネット（登録商標）とすることができる。
【００２１】
前記データフロー情報を取得するために、バッファリング手段及びバッファレベル検出手段を用いることができ、前記データフロー情報は、バッファ占有レベルに関する情報を含む。
【００２２】
少なくとも第１の閾値が前記バッファ占有レベルについて設けるものとすることができ、前記データフロー情報取得手段は、前記閾値を超過しているかどうかという情報を前記データフロー情報に含めるように適合することができる。前記第１の閾値を超過しているかどうかという情報は、データフローメッセージに含めることができ、このデータフローメッセージは、前記第１の閾値を超過したときにのみ、送信することができる。前記データレートは、前記第１の閾値を超過した場合に、減少させることができる。
【００２３】
第２の閾値が前記バッファ占有レベルについて設けるものとすることができ、前記データフロー情報取得手段は、前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報を前記データフロー情報に含めるように適合することができる。前記第２の閾値を前記第１の閾値より低くして、前記第１及び第２の閾値の両方を適用することができる。
【００２４】
前記データレートは、前記第２の閾値より低くなっている場合に、増加させるものとすることができる。
【００２５】
前記バッファ占有レベルが前記第２の閾値より低くなっているかどうかという情報は、データフローメッセージに含めることができ、このデータフローメッセージは、前記バッファ占有レベルが前記第２の閾値より低くなっているときにのみ送信することができる。
【発明を実施するための最良の形態】
【００２６】
ＴＸ方向のみについて示す添付図面を参照して本発明を説明する。
以下、本発明の好ましい実施形態について添付図面を参照して説明する。
【００２７】
本発明の実施形態に係るネットワーク構成要素の概略的な構造について、図２を参照して以下の通り説明する。
【００２８】
ネットワーク構成要素は、第１のネットワークブロックＬ１についての例としてのＬ３ブロックと、第２のネットワークブロックＬ２についての例としてのＬ２ブロックと、を含む。両方のブロックは、データリンク３を介して接続されている。かかるデータリンクについての一例が、イーサネット（登録商標）インタフェイスである。このリンクが、Ｌ２ブロック上のインタフェイスの総合データレートよりも高い或るデータレートを与えるものである、ということに注意されたい。Ｌ２ブロックはデータソース（例えばパケットソース）１１−１〜１１−ｎと、データレート制限手段１２−１〜１２−ｎと、を含む。データレート制限手段の各々は、特定のデータソース（例えば、図２において示されている１１−１〜１２−１）に結合されている。少なくとも１つのデータソース及びデータレート制限手段を設けなければならない、ということに注意されたい。送信手段１３は、インタフェイス３上においてデータを送信する。
【００２９】
Ｌ２ブロック２は、インタフェイス３からデータを受信する受信手段２１を含む。データ処理手段２２−１〜２２−ｎが（Ｌ３ブロック１におけるデータソース１１−１〜１１−ｎのそれぞれに対応して）設けられる。さらには、各々がバッファ占有（filling）レベル検出手段を備えたバッファ２３−１〜２３−ｎが設けられる。バッファ２３−１〜２３−ｎは、それぞれネットワークインタフェイス２４−１〜２４−ｎに接続される。
【００３０】
１つのパケットソース、１つのレートリミッタ、１つのデータ処理手段、１つのバッファ及び１つのインタフェイスが、それぞれ相互に関連付けられ、これにより、これらが、１つのデータストリームを実現している、ということに注意されたい。例えば、第１のデータストリームが、パケットソース１１−１、レートリミッタ１２−１、バッファ２３−１及びインタフェイス２４−１を介して、実現される。インタフェイス３は、上述したように、この例では、イーサネット（登録商標）インタフェイスであり、Ｌ３ブロックにおける送信手段１３が、複数のデータストリームの多重を実行する一方、Ｌ２ブロックの受信手段２１が、複数のデータストリームの分離（de-multiplexing）を実行する。
【００３１】
バッファ２３−１〜２３−ｎの各々に結合されたバッファ占有レベル検出器は、データ処理手段のデータレート（例えば、実際にインタフェイスによって利用することができるデータレート）に関するデータフロー情報を取得しているデータフロー情報取得手段としての例である。この情報は、Ｌ３ブロックにおける対応するレートリミッタに供給され、このレートリミッタは、このデータフロー情報に依存してデータレートを変化させる。
【００３２】
レートリミッタは、例えば、連続する複数のパケット間に時間ギャップを挿入することにより、データレートを変化させる。すなわち、データレートを減少させるために、レートリミッタは、連続する複数のパケットの間におけるギャップを延長させる一方、データレートを増加させるために、連続する複数のパケットの間における時間ギャップは、短縮される。
【００３３】
上述した実施形態に係る概略的な構造及び動作について、図３をも参照することにより、以下の通り、さらに詳細に説明する。図３は、ＰＰＰ／ＨＤＬＣ処理ブロック、ＦＩＦＯバッファ、及び、関連した閾値を描いた、Ｌ２ブロックのさらに詳細な構造を示す。
【００３４】
説明を簡単にするために、１つのパケットソース／レートリミッタ／ネットワークインタフェイスのみのメカニズムを説明する。他のすべてのインタフェイスは、さらに多くの同一のメカニズムを実装したものとともに動作する。図３に示すように、Ｌ２ブロックは、各データストリームについてのＰＰＰ／ＨＤＬＣ処理ブロックをさらに備える。図２に示すバッファ２３−１〜２３−ｎは、この例では、ＦＩＦＯ（先入れ先出し）式のバッファである。これらのＦＩＦＯについては、バッファ占有レベル検出器によって監視される２つの閾値ｔｈ1及びｔｈ2が定められる。
【００３５】
Ｌ３レートリミッタ（すなわち１２−１〜１２−ｎ）は、２つの異なるレートを用いて動作する。２つの異なるレートのうちの一方は、（付加的なヘッダであるＰＰＰ／ＨＤＬＣカプセル化の予測可能な部分を考慮する）ネットワークインタフェイスの公称レートである。このレートを用いて動作することにより、（ペイロードパターンに起因してビット／バイトスタッフが必要とされないために）ビット／バイトスタッフがない場合でもネットワークインタフェイス容量が完全に利用される、ということが確実となる。ペイロードパターンに起因してビット／バイトスタッフがある場合には、ＦＩＦＯバッファは、ゆっくりと占有される。第１の閾値ｔｈ1を超過したときには、情報がＬ３ブロックに送信され、対応するレートリミッタが、上記公称ネットワークインタフェイス容量より十分に低いレートを用いて動作し始める。このレートは、最大ビット／バイトスタッフを用いても、ＦＩＦＯバッファの占有レベルが増加しないような、すなわち、最悪でない場合において占有レベルが減少するような方法により、選択される。占有レベルが第１の閾値ｔｈ1より小さい第２の閾値ｔｈ2より小さくなるまで低下した場合には、Ｌ３ブロックは、再度通知を受け、レートリミッタのレートが、再度、ネットワークインタフェイスの公称レートに設定される（また、ＦＩＦＯバッファは、占有され始める。以後も同様である）。
【００３６】
ＦＩＦＯバッファ及び閾値の値が、図３に示されている。この例では、ＦＩＦＯ１は、ｔｈ1とｔｈ2との間にまで占有されている。このことは、対応するレートリミッタのレートを変更する必要がないことを意味する（レートが高い場合には、占有レベルが増加し、或いは、レートが低い場合には、占有レベルが低下する）。ＦＩＦＯ２は、ｔｈ2より低い値に占有されている。このことは、レートリミッタのレートをさらに高いレートに変更すべきであることを意味する。ＦＩＦＯ３は、ｔｈ1より高い値にまで占有されている。このことは、占有レベルを減少させるために、レートリミッタのレートをさらに低いレートに変更しなければならないことを意味する。
【００３７】
ＦＩＦＯバッファ占有レベルに関する情報は、Ｌ２ブロックからＬ３ブロックへの特別なメッセージ（「バックプレッシャメッセージ（backpressure messages）」）により伝達される。これらのメッセージは、ＶＬＡＮイーサネット（登録商標）ヘッダ内のＶＬＡＮ（仮想ローカルエリアネットワーク）タグについて専用の値により、又は、標準的なイーサネット（登録商標）ヘッダ（潜在的には、イーサネット（登録商標）フィールドについての専用の値を有する）を用いることにより、公称ペイロードパケットと区別される。
【００３８】
バックプレッシャメッセージは、１つのネットワークインタフェイスのみについての占有レベル情報を含むことができ、或いは、Ｌ２ブロックにおけるすべてのネットワークインタフェイスについての占有レベル情報を含むことができる。Ｌ３ブロックに転送される情報は、「ｔｈ1を超過した」というタイプのみによるもの（この場合には、Ｌ２ブロックが、実際の占有レベルと閾値とを比較する）か、或いは、バイト数により実際の占有レベルを与えるもの（この場合には、Ｌ３ブロックが、実際の占有レベルと閾値とを比較する）のいずれかとすることができる。
【００３９】
このメカニズムは、図４に示すフロー図を参照することにより、以下の通りにまとめられる。図４に示す手順は、繰返し実行される。このことは、図４に示すループにより示されている。記載及び図示を簡単にするために、１つのデータストリームのみについての手順について説明する。
【００４０】
詳細には、ステップＳ１において、バッファ占有が、第１の閾値ｔｈ1を超えているか、又は、上述した閾値ｔｈ2より低いかが、チェックされる。バッファ占有レベルが、第１の閾値ｔｈ1を超過しないか又はこの閾値より低い場合、すなわち、範囲内にある場合には、ステップＳ１が繰り返される。しかしながら、バッファ占有レベルが、第１の閾値ｔｈ1を超過するか、又は、第２の閾値ｔｈ2より低い場合には、処理はステップＳ２に移行し、このステップＳ２では、データレートを変更すべきであるという情報を含むバックプレッシャメッセージが生成される。このバックプレッシャメッセージは、ステップＳ３において、Ｌ３ブロック、さらに詳細にはレートリミッタに転送される。ステップＳ４において、Ｌ３ブロックにおけるレートリミッタは、上述したバックプレッシャメッセージに含まれたバックプレッシャ情報に従って制御される。
【００４１】
ステップＳ１における処理が例示的なものである、ということに注意されたい。或いはまた、閾値を超過しているか又は閾値より低いかを監視することに代えて、バッファ占有レベルが第１の閾値ｔｈ1と第２の閾値ｔｈ2との間の範囲内にあるかどうかといったように、バッファ占有レベルを絶えず監視することも可能である。
【００４２】
上述したように、本発明によれば、本発明のもととなっている課題を解決するために、１つの多重化された（イーサネット（登録商標））リンクを介して転送される別々のデータストリームについてのフロー制御を実現するバックプレッシャ情報をもたらすメカニズムが提供される。具体的には、別々のフロー制御（バックプレッシャ）メカニズムが、多重化されたリンクにおけるデータストリームの各々について用いられる。さらには、各レートリミッタ（レートシェーパとも称される）の伝送データレートは、２つの適合性のある（configurable）レートの間でトグルされる。受信側のバッファ占有につながる低い方のレートは減少し、受信側のバッファ占有に対する高い方のレートは、増加する。すなわち、各Ｌ３レートリミッタのレートは、Ｌ２のＦＩＦＯバッファの占有レベル及び関連する閾値の状態に依存して、動的に適合させられる。この情報は、専用のインバンド（in-band）メッセージによってＬ３のレートリミッタに通信される。この結果、ネットワークインタフェイスの利用可能な容量は、最適な方法により利用され、パケットの損失はなくなる。本発明は、例えばスタッフ動作のために必要とされる余分な容量を確保する必要がないので、最適な伝送容量の利用をサポートする。
【００４３】
他の既知のバックプレッシャ／フロー制御解決法に比べて、伝送が停止することはない。これにより、遅延変動及びジッター動作を改善することができる。
【００４４】
パケット損失のない１００％の容量利用率という利点は、論理的な多重の場合、標準的なイーサネット（登録商標）フロー制御では不可能なことである。これにより、ネットワーク構成要素の構造的なデザインにおいてさらなる自由度が生まれ、別々の機能的なブロックの間において、高価でない標準化されたイーサネット（登録商標）インタフェイスを利用することができる。
【００４５】
本発明が上述した実施形態に限定されないものであり、これら実施形態が例示的なものであって限定的なものでないと考えるべきである、ということに注意されたい。したがって、これら実施形態を様々に変更することが可能である。
【００４６】
例えば、上述した実施形態は、Ｌ３／Ｌ２構造に関連している。しかしながら、本発明は、この構造に限定されるものではなく、第１のネットワークブロックが、第２のネットワークブロックによって処理可能なレートよりも高いレートを用いてこの第２のネットワークブロックにデータを供給するのである場合に常に適用可能なものである。具体的には、本発明は、第２のネットワークブロックのネットワークインタフェイスに限定されず、他のデータ処理手段を用いることも可能である。具体的には、上述した２つのネットワークブロックは、ネットワーク内の別々のネットワーク構成要素とすることができる。すなわち、この場合には、本発明は、リンクを介して接続された互いに独立した２つのネットワーク構成要素を備えたネットワークシステムに関連する。
【００４７】
さらには、上述した実施形態において、閾値ｔｈ1及びｔｈ2が適用されている。しかしながら、これに代えて、１つの閾値のみを適用することが可能である。すなわち、高い方の閾値ｔｈ1のみを用いた場合には、バッファ占有レベルがこの閾値を超過したときに、データレートがレートリミッタによって減少させられ、レートリミッタは、バッファ占有レベルがもはやこの閾値を超過しなくなったときにデータレートを公称レートに制限することを再開する。このことが、バックプレッシャメッセージの頻度が高くなり、データレートが頻繁に変化する一方、１つの閾値のみを監視すればよいのでバッファの構造を簡略化できる、ということにつながる。
【００４８】
さらには、本発明は、関係する２つのネットワークブロックの間における多重化されたイーサネット（登録商標）に限定されるものではなく、任意の好適なリンクメカニズムを適用することが可能である。
【００４９】
さらに、本発明は、上述したようなＶＬＡＮに限定されるものではない。
【００５０】
データ処理は、ＰＰＰ／ＨＤＰＬＣ処理に限定されず、データ処理後のデータ量が、データソースによって予測することができず変化するものである、任意の種類の「データ処理」を適用することができる。
【図面の簡単な説明】
【００５１】
【図１】図１は、Ｌ３ブロックと、Ｌ２ブロックと、これらの間にあって多重化される手法により用いられるイーサネット（登録商標）インタフェイスと、を含む構造を示す。
【図２】図２は、本発明の好ましい実施形態に係る構造を示すブロック図である。
【図３】図３は、上記好ましい実施形態に係るＬ２ブロックについての詳細な図面を示す。
【図４】図４は、本発明の上記好ましい実施形態に係るバックプレッシャ情報に対応してレートリミッタを制御するための手順についてのフロー図である。
【図１】
2008502192.tif 000003
【図２】
2008502192.tif 000004
【図３】
2008502192.tif 000005
【図４】
2008502192.tif 000006
【国際調査報告】
2008502192.tif 000007
2008502192.tif 000008
2008502192.tif 000009