(57)【要約】本発明は、パケット交換ネットワークにおいて通信エンティティによって実施される方法であって、通信エンティティは、通信信号フレームを送信する少なくとも１つのポートを含み、フレームは、トラフィックシェーピングが規定された複数のストリーム内で送信されるように意図された第１のタイプのフレーム（ＳＦ）と、トラフィックシェーピングが規定されていない第２のタイプのフレーム（ＵＦ）であって、各フレームは、この第２のタイプのフレームのフラグメントのみを送信するように細分化することができる、第２のタイプのフレームとを含む、方法に関する。通信エンティティは、第１のタイプのフレームの複数の第１のキューであって、この第１のキュー（Ｑｉ）は、上記複数のストリームにそれぞれ関連付けられる、第１のタイプのフレームの複数の第１のキューと、第２のタイプのフレームのための少なくとも１つの第２のキュー（Ｑｕ）とを記憶する。エンティティは、第１のタイプのフレームの送信と、少なくとも２つの第１のタイプのフレーム同士の間の、少なくとも１つの第２のタイプのフレームの少なくともフラグメントの送信とを更にスケジューリングする。第２のタイプのフレームのフラグメントのみを送信することを決定するために、通信エンティティは、送信されることになるフラグメントのサイズが閾値よりも大きいか否か、かつ、上記第２のタイプのフレームの残りのフラグメントのサイズが上記閾値よりも大きいか否かを判断し、これらの２つの条件が満たされるのではない場合、フラグメント送信を阻止する。
2020507245.tif 000002
【特許請求の範囲】
【請求項１】
パケット交換ネットワークにおいて通信エンティティのコンピューター手段によって実施される方法であって、前記通信エンティティは、通信信号フレームを送信する少なくとも１つのポートを含み、前記フレームは、
トラフィックシェーピングが規定された複数のストリーム内で送信されるように意図された第１のタイプのフレーム（ＳＦ）と、
トラフィックシェーピングが規定されていない第２のタイプのフレーム（ＵＦ）であって、各フレームは、前記第２のタイプのフレームのフラグメントのみを送信するように細分化することができる、第２のタイプのフレームと、
を含み、
前記通信エンティティは、
前記第１のタイプのフレームの複数の第１のキューであって、前記第１のキュー（Ｑｉ）は、前記複数のストリームにそれぞれ関連付けられる、前記第１のタイプのフレームの複数の第１のキューと、
前記第２のタイプのフレームのための少なくとも１つの第２のキュー（Ｑｕ）と、
を記憶し、
第１のタイプのフレームの送信と、
少なくとも２つの第１のタイプのフレーム同士の間の、少なくとも１つの第２のタイプのフレームの少なくともフラグメントの送信と、
をスケジューリングし、
第２のタイプのフレームのみのフラグメントを送信することを判断するために、前記通信エンティティは、
送信されることになる前記フラグメントのサイズが閾値（ＭｉｎＦｒａｇＳｉｚｅ）よりも大きいか否か、かつ、
前記第２のタイプのフレームの残りのフラグメントのサイズが前記閾値よりも大きいか否か、
を判断し、これらの２つの条件が満たされるのではない場合、フラグメントの送信を阻止する、方法。
【請求項２】
前記第１のキュー及び前記第２のキューの各々は、先入れ先出し型バッファー（ＢＵＦＦ）に記憶され、第１のタイプのフレームが割り当てられるキューは、前記第１のタイプのフレームの特徴に依存して、前記第１のタイプのフレームが属する前記ストリームに従って決定される、請求項１に記載の方法。
【請求項３】
前記第１のタイプのフレームの前記特徴は、フレーム長と、前記第１のタイプのフレームが属する前記ストリームの現在のレートとを含み、
各第１のタイプのフレームの前記送信のために前記第１のタイプのフレームのキューにおいて割かれる時間が計算され、前記第１のタイプのフレームの前記送信のために割かれるそれぞれの時間に従って、前記第１のタイプのフレームのためにそれぞれの送信時間がスケジューリングされる、請求項２に記載の方法。
【請求項４】
シェーピングされたストリームに属するフレームが、各第１のキューの先頭において配置されたフレームのスケジューリングされた送信時間（ＴＴＴｉ）を比較することによって、送信のために選択され、最小のスケジューリングされた送信時間（ｍｉｎｉＴＴＴｉ）に関連付けられたフレームは、送信のための次の候補として選択される、請求項２又は３に記載の方法。
【請求項５】
前記通信エンティティは、現在の時間（Ｔ）を求める時間計測を実行し、
前記次の候補に関連付けられた前記スケジューリングされた送信時間（ＴＴＴｋ）が前記現在の時間（Ｔ）以下である場合、かつ、
他の第１のタイプのフレームが現在送信されていない場合、かつ、
第２のタイプのフレーム又はフラグメントが現在送信されていない場合、
前記次の候補の送信を実施する、請求項４に記載の方法。
【請求項６】
前記通信エンティティは、第２のタイプのフレーム又はフレームフラグメントが送信されているか否かを判断し、送信されている場合、前記第２のタイプのフレーム又はフレームフラグメントの送信を中断するために前記第２のタイプのフレーム又はフレームフラグメントを更に細分化することができ、それにより、前記次の候補の送信を可能にすることができるか否かを判断する、請求項４又は５に記載の方法。
【請求項７】
前記通信エンティティは、
送信が中断されることになる前記第２のタイプのフレーム又はフレームフラグメントのサイズが前記閾値（ＭｉｎＦｒａｇＳｉｚｅ）よりも大きい場合、かつ、
前記中断後に前記第２のキュー内に残るフレームフラグメントのサイズが前記閾値よりも大きい場合、
前記第２のタイプのフレーム又はフレームフラグメントの細分化を実施する、請求項６に記載の方法。
【請求項８】
前記通信エンティティは、現在の時間を求める時間計測を実行し、
第１のタイプのフレームが現在送信されていない場合、かつ、
第１のキューの先頭において配置された第１のタイプのフレームが前記現在の時間（Ｔ）以下のスケジューリングされた送信時間（ＴＴＴｉ）を有しない場合、
フラグメント送信の観点において第２のタイプのフレーム細分化を実施する、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記通信エンティティは、前記次の候補の送信のいかなるレイテンシーをも回避するように、送信のための前記次の候補を含む前記第１のキューの少なくとも１つの前記先頭においてプローブフレーム（ＰＦ）を挿入する、請求項４〜７のいずれか１項に記載の方法。
【請求項１０】
パケット交換ネットワークにおいて通信信号フレームを送信する少なくとも１つのポートを含み、請求項１〜９のいずれか１項に記載の方法を実行するコンピューター回路を更に備える、通信エンティティ。
【請求項１１】
プロセッサによって実行されると、請求項１〜９のいずれか１項に記載の方法を実行する命令を含む、コンピュータープログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット交換ネットワーク管理に関する。
【背景技術】
【０００２】
レイテンシー及び伝送遅延変動を受けることが不可能である制御データのトランスポートを可能にするレイヤー２機能の導入に起因して、パケット交換ネットワークが産業用制御応用にますます用いられている。
【０００３】
例えば、低レイテンシーサンプリングデータ、（閉ループにおけるもの）制御及び画像ストリーミング（例えば、画像処理）は、非常に厳格なレイテンシー要件を有する。制御ループの一部としての画像ストリーミング及び関連付けられた処理は、収束ネットワークにおいて提供することができるベストエフォートトランスポートよりも多大な要件を有する。同時に、ベストエフォートストリームはタイムクリティカルではなく、むしろ干渉ストリームの一定の発生源を提供する。
【０００４】
特に産業分野のバス：ＥｔｈｅｒＣＡＴ（登録商標）、Ｅｔｈｅｒｎｅｔ  Ｐｏｗｅｒｌｉｎｋ（登録商標）、ＴＣｎｅｔ（登録商標）、ＰＲＯＦＩＮＥＴ（登録商標）等の要件に対する交換Ｅｔｈｅｒｎｅｔ（登録商標）の適合のために、解決策が漸進的に開発されている。
【０００５】
全てのこれらの解決策は、スケジューリングされたストリームのサポートを提供する、標準Ｅｔｈｅｒｎｅｔプロトコルに対する特定の追加物に依拠している。
【０００６】
これらの適合によって用いられる共通のスキームは、時間ウィンドウにおける送信多重化の編成に基づいており、各ウィンドウは、特定のストリームのために予約されている。時間ウィンドウの数及び反復周波数は、応用の要件に従って決定される。
【０００７】
スケジューリングされたストリームを生成する（産業用制御）応用が周期的活動を有することを考慮して、送信多重化は、周期的サイクルにおいて編成される。図１を参照すると、各サイクルは、スケジューリングされた（低レイテンシー）フレームＳＦ送信のために予約された一連の時間ウィンドウＳＴＷを含み、送信機会の残りは、スケジューリングされていないストリームに充てられる。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、いくつかの他の制御応用は、さほど厳格ではないレイテンシー要件及びジッタ要件を有する。例えば、これらの応用の中に埋め込み型自動車制御ネットワーク（embedded automotive control networks）がある。これらの環境において、選ばれたトラフィック管理方法が、限られたジッタ、限度を設けられたレイテンシー及びクリティカルな制御ストリームに対する０パケットロスを保証することを仮定すると、スケジュール、及び、トラフィックソースのネットワークとの同期の計算によって要求される追加のネットワークエンジニアリングを回避することができる。
【０００９】
ネットワーク中で確保されるとともにソースによってネットワークとネゴシエートされる所定のデータレートに従うトラフィックシェーピングは、これらの性能目標を達成するために良好に適合された技法である。このトラフィックシェーピングは、送信遅延限度と、シェーピングされたストリーム同士の間の公平性とを保証する手段を提供する。
【００１０】
シェーピングされたストリームとシェーピングされていないストリームとの間の干渉に起因したレイテンシーの潜在的な発生源を更に削減するために、プリエンプションメカニズムを導入することもできる。プリエンプションは、図２に示すように、シェーピングされていないストリーム送信機会とシェーピングされたストリーム送信機会との間の移行部において介入する。特に、そのような移行部において、シェーピングされたストリーム送信機会ＳＦＴＯの開始は、シェーピングされていないストリームの送信機会の終了に重なる可能性がある。そのような場合、シェーピングされたストリームのフレームＳＦは、シェーピングされていないストリームのフレームＵＦの現在の送信が終了するまで、送信することができない。
【００１１】
図２に更に示すように、シェーピングされていないフレームＵＦの残留部分の送信機会をプリエンプトすることによって、シェーピングされたストリームＳＦが被ることになる追加遅延を回避することが可能である。したがって、プリエンプション動作を容易にするために、シェーピングされていないストリームのフレームを、（図２の下側部分に示すように、ｆｒａｇ＃１の送信を用いて）細分化することができ、それにより、シェーピングされたストリームの送信機会が完了するまで、残りのフラグメント（複数の場合もある）（図２の例におけるｆｒａｇ＃２）の送信を遅延させる。
【００１２】
これまでのところ、スケジューリングされたストリームとスケジューリングされていないストリームとの間の効率的な連携機能を提供するために、以下のものが提案されている。
【００１３】
異なるタイプのストリーム（スケジューリングされたストリーム及びスケジューリングされていないストリーム）のための時間ウィンドウの予約に依拠するスケジューリングスキームを規定する、ＩＥＥＥ８０２．１Ｑｂｖのような第１のタイプの標準規格。
【００１４】
通常、スケジューリングされたストリームに属する、いわゆる「エクスプレス（express）」フレームの同時送信の際に、いわゆる「ノーマル（normal）」フレームに適用される細分化メカニズムを指定するプリエンプションスキームを規定する、ＩＥＥＥ８０２．３ｂｒ及びＩＥＥＥ８０２．１Ｑｂｕのような第２のタイプの標準規格。
【００１５】
ＩＥＥＥ８０２．１Ｑｂｖは、周期的カレンダー表に基づいており、この周期的カレンダー表の各エントリは、特定のクラスのストリーム（例えば、スケジューリングされたもの又はスケジューリングされていないもの）の送信のために予約された時間ウィンドウを規定している。
【００１６】
したがって、これらの標準規格は、上記の産業標準規格によって提供されるサービスと同様のサービスを提供することができる、最小レイテンシーでの周期的にスケジューリングされたストリームのトランスポートの完全なフレームワークを提供する。
【００１７】
ＩＥＥＥ８０２．３ｂｒにおいて指定されるメカニズムにより、シェーピングされたトラフィックの送信機会が開始する前に、「エクスプレス」トラフィック（ここでは、シェーピングされたストリーム）を有するＭＡＣクライアントが「ノーマル」フレームの送信（シェーピングされていないストリームに属する）をプリエンプトすることが可能になる。シェーピングされたストリームに属するフレームが送信のためにスケジューリングされると、このフレームは、即時送信することができる。
【００１８】
加えて、ＩＥＥＥ８０２．３ｂｒ標準規格は、ホップ単位細分化（per-hop fragmentation）、及び、ノーマルフレームの送信を停止してエクスプレスフレームに送信機会を与えることを可能にするノーマルフレームの再構築スキームを規定する。ノーマルフレームフラグメントとエクスプレスフレームとは、それらのプレアンブル長及び「フレームデリミター開始（Start of Frame Delimiter）」フィールドによって区別される。これにより、非エクスプレスフレーム（ノーマルフレーム）が、送信される前に過度に長いタイムスロットの間待機しないことが可能になる。この結果、ノーマルフローについての追加レイテンシーが限られたものとなるとともに、リンク容量の使用がより良好になる。
【００１９】
いずれの時点においても（同じリンク上で又は同じ送信ポートにおいて）単一のノーマルフレームしか細分化することができないことに留意されたい。
【００２０】
最小プリエンプトフラグメントサイズは、６４バイトである。したがって、１２８バイト未満の長さを有するパケットは、プリエンプトすることも、（最終的に６４バイト未満のフラグメントのままにすることはないので）最終的に細分化することもできない。その上、中間（non-final）フラグメントは、８バイトの倍数の長さを有する。
【００２１】
これまでのところ、スケジューリングされていないストリームに属するフレーム又はフラグメントに干渉することに起因した残留レイテンシーの追加は、ノーマル（非エクスプレス）ストリームに専用の送信ウィンドウの開始及び終了の厳密な時間が利用可能であるために回避することができる。実際、次のエクスプレストラフィック送信ウィンドウが開始する時点を知ることにより、エクスプレストラフィック送信ウィンドウとの重複を何ら伴わずに、送信されることになるノーマルフレーム又はフラグメントを選択することが可能になる。
【００２２】
しかしながら、クリティカルデータ転送がシェーピングされたストリーム又は少なくともレート制御されたストリームによってサポートされる場合（そのような転送が超低レイテンシーを要求しないときでさえ）、これらのストリームが、非クリティカルフレーム又はフラグメント送信と干渉することに起因した追加レイテンシーを被ることがないことを保証するメカニズムは規定されていない。
【００２３】
現行の細分化標準規格（ＩＥＥＥ８０２．３ｂｒ及び８０２．１Ｑｂｕ）に基づいた現行技術水準の解決法を用いることで、シェーピングされたストリーム及びシェーピングされていないストリームの多重化は、プリエンプションから利益を得ることができるものの、依然として、シェーピングされていないストリームに属するフレームフラグメントの送信に起因した残留レイテンシーを被る。
【課題を解決するための手段】
【００２４】
本発明は、この状況を改善することを目的とする。
【００２５】
したがって、本発明は、パケット交換ネットワークにおいて通信エンティティのコンピューター手段によって実施される方法であって、上記通信エンティティは、通信信号フレームを送信する少なくとも１つのポートを含み、上記フレームは、
トラフィックシェーピングが規定された複数のストリーム内で送信されるように意図された第１のタイプのフレームと、
トラフィックシェーピングが規定されていない第２のタイプのフレームであって、各フレームは、この第２のタイプのフレームのフラグメントのみを送信するように細分化することができる、第２のタイプのフレームと、を提案する。
【００２６】
より詳細には、通信エンティティは、第１のタイプのフレームの複数の第１のキューであって、この第１のキューは、上記複数のストリームにそれぞれ関連付けられる、第１のタイプのフレームの複数の第１のキューと、第２のタイプのフレームのための少なくとも１つの第２のキューとを記憶する。したがって、通信エンティティは、第１のタイプのフレームの送信と、少なくとも２つの第１のタイプのフレーム同士の間の、少なくとも１つの第２のタイプのフレームの少なくともフラグメントの送信とをスケジューリングすることができる。その上、そのため、第２のタイプのフレームのフラグメントのみを送信することを判断するために、通信エンティティは、送信されることになるフラグメントのサイズが閾値よりも大きいか否か、かつまた、上記第２のタイプのフレームの残りのフラグメントのサイズがその閾値よりも大きいか否かを更に判断することができる。他の状況において、すなわち、これらの２つの条件が満たされるのではない場合、通信エンティティは、フラグメント送信を阻止する。
【００２７】
したがって、本発明の実施によって、シェーピングされたトラフィックのために予約された送信機会の開始時点及び終了時点がシェーピングされたストリームの送信に沿って動的に求められ、シェーピングされていないフラグメント又はフレーム（上述の「第２のタイプ」のフレーム）の送信機会のための時間境界を提供するように、シェーピングされたストリーム（上述の「第１のタイプ」のフレーム）に属するフレームの送信を編成することが可能である。
【００２８】
可能な実施形態において、上記第１のキュー及び上記第２のキューの各々は、先入れ先出し型バッファーに記憶され、第１のタイプのフレームが割り当てられるキューは、この第１のタイプのフレームの特徴に依存して、第１のタイプのフレームが属するストリームに従って決定される。通常、フレームのヘッダー内に与えられる情報を用いて、そのフレームのタイプ（シェーピングされたトラフィックに属するのか又はシェーピングされていないトラフィックに属するのか）を特定することができる。さらに、上記第１のタイプのフレームの特徴は、そのフレーム長と、その第１のタイプのフレームが属するストリームの現在のレートとを含むことができる。したがって、各第１のタイプのフレームの送信のために、この第１のタイプのフレームのキューにおいて割かれる時間を（従来的に、フレームの長さをストリームレートで除算することによって）計算することができ、それに応じて、第１のタイプのフレームのためにそれぞれの送信時間をスケジューリングすることができる。
【００２９】
したがって、本実施形態において、シェーピングされたストリームに属するフレームが、各第１のキューの先頭において配置されたフレームのスケジューリングされた送信時間（以降ＴＴＴｉと表記する）を比較することによって、送信のために選択されることができ、最小のスケジューリングされた送信時間（以降ｍｉｎｉＴＴＴｉと表記する）に関連付けられたフレームは、送信のための次の候補として選択される。
【００３０】
したがって、通信エンティティが現在の時間を求める時間計測を実行することができる一実施形態では、通信エンティティは、
上記次の候補に関連付けられた、スケジューリングされた送信時間が現在の時間以下である場合、かつ、
他の第１のタイプのフレームが現在送信されていない場合、かつ、
第２のタイプのフレーム又はフラグメントが現在送信されていない場合、
上記次の候補の送信を実施することができる。
【００３１】
通信エンティティは、第２のタイプのフレーム又はフレームフラグメントが現在送信されているか否かを更に判断することができ、送信されている場合、この第２のタイプのフレーム又はフレームフラグメントの送信を中断するためにこの第２のタイプのフレーム又はフレームフラグメントを更に細分化することができ、それにより、上記次の候補の送信を可能にすることができるか否かを判断することができる。
【００３２】
本実施形態において、通信エンティティは、
送信が中断されることになる上記第２のタイプのフレーム又はフレームフラグメントのサイズが上記閾値よりも大きい場合、かつ、
中断後に上記第２のキュー内に残るフレームフラグメントのサイズが閾値よりも大きい場合、
上記第２のタイプのフレーム又はフレームフラグメントの細分化を実施することができる。
【００３３】
一実施形態では、第２のタイプのフレームの送信のために、通信エンティティは、現在の時間を求める時間計測を実行することができ、
第１のタイプのフレームが現在送信されていない場合、かつ、
第１のキューの先頭において配置された第１のタイプのフレームが現在の時間以下のスケジューリングされた送信時間を有しない場合、
フラグメント送信の観点において第２のタイプのフレーム細分化を実施することができる。
【００３４】
その上、第１のタイプのフレームの送信のレイテンシーを制限するように提供することができ、そのために、通信エンティティは、次の候補の送信のいかなるレイテンシーをも回避するように、送信のための次の候補を好ましくは含む第１のキューのうちの少なくとも１つの先頭においてプローブフレームを挿入することができる。
【００３５】
また、本発明は、パケット交換ネットワークにおいて通信信号フレームを送信する少なくとも１つのポートを含み、上記で規定した方法を実行するコンピューター回路を更に備える、通信エンティティを目的とする。そのような通信エンティティの実施形態の一例が、以下で言及する図４に示される。
【００３６】
また、本発明は、プロセッサによって稼働されると、上記で規定した方法を実行する命令を含む、コンピュータープログラム製品も目的とする。そのようなコンピュータープログラムの全体アルゴリズムは、以下で言及する図５、図６、図９、及び図１０に対応するフローチャートによる例を用いて示すことができる。
【００３７】
より包括的には、本発明は、添付図面の図に、限定としてではなく例として示される。添付図面において、同様の参照符号は同様の要素を参照する。
【図面の簡単な説明】
【００３８】
【図１】従来技術による送信多重化のサイクリック編成を示す図である。
【図２】シェーピングされたフレーム送信を保証する、シェーピングされていないフレーム細分化を示す図である。
【図３】本発明による、通信エンティティの送信ポート（又は以降では「出力ポート」）におけるシェーピングされたキュー及びシェーピングされていないキューを示す図である。
【図４】本発明の一実施形態による、通信エンティティのコンピューター回路（ＦＰＧＡ、集積チップ、又は他の任意のコンピューター回路）を概略的に示す図である。
【図５】通信エンティティの送信ポートによって送信されることになるフレームを生成する通信エンティティの入力ポート及び／又は他の部分によって実行される動作を示す図である。
【図６Ａ】自身の送信ポートからシェーピングされたフレームを送信する通信エンティティによって実行される動作を示す図である。
【図６Ｂ】自身の送信ポートからシェーピングされたフレームを送信する通信エンティティによって実行される動作を示す図である。
【図７Ａ】シェーピングされていないフレームのフラグメント送信の場合の、図６Ａ及び図６Ｂの実施形態と一致する、シェーピングされたフレームのための送信条件を示す図であり、ここで、スケジューリングされた送信時間は、右（［ｍｉｎｉＴＴＴｉ］１）から左（［ｍｉｎｉＴＴＴｉ］２）に向かうものである。
【図７Ｂ】シェーピングされていないフレームのフラグメントを送信することが不可能な場合の、図６Ａ及び図６Ｂの実施形態と一致する、シェーピングされたフレームのための送信条件を示す図であり、ここで、スケジューリングされた送信時間は、右（［ｍｉｎｉＴＴＴｉ］１）から左（［ｍｉｎｉＴＴＴｉ］２）に向かうものである。
【図８】シェーピングされていないフレームのための送信条件及び細分化条件を示す図である。
【図９】シェーピングされていないフレーム又はフラグメントの送信が既に進行中である（テストＳ２６からの矢印Ｙ）場合の、図８と一致する、自身の送信ポートからシェーピングされていないフレームを送信する通信エンティティによって実行される動作を示す図である。
【図１０】シェーピングされていないフレーム又はフラグメントの送信が現在進行していない（図１０を開始するテストＳ２６からの矢印Ｎ）場合の、図８と一致する、自身の送信ポートからシェーピングされていないフレームを送信する通信エンティティによって実行される動作を示す図である。
【発明を実施するための形態】
【００３９】
本発明の実施により、ネットワークにおいて直面する連続多重化ステージにおいてシェーピングされたストリームが被るレイテンシーを制限することが可能になる。このために、本発明は、シェーピングされていないストリームに適用されるプリエンプションと連携して、シェーピングされたストリームに対して専用である送信機会を動的に規定するのに用いられる時間ベーススケジューリングメカニズムを利用する。時間ベーススケジューリングメカニズムによって提供されるタイミング情報により、シェーピングされたストリーム送信機会同士の間の送信のためのフレーム又はフラグメント候補のサイズを求めることが可能になる。
【００４０】
以降、標準規格ＩＥＥＥ８０２．３ｂｒにおいて規定されるエクスプレスフレームは、シェーピングされたストリームに属するフレームである。
【００４１】
標準規格ＩＥＥＥ８０２．３ｂｒにおいて規定されるノーマルフレームは、シェーピングされていないストリーム（通常、いわゆる「ベストエフォート」トランスポートサービスをサポートする）に属するフレームである。
【００４２】
ノーマルフレームは、標準規格ＩＥＥＥ８０２．３ｂｒのように複数のフラグメントに分割することができる。
【００４３】
多重化スキーム及びこれに伴うパラメーターが、図３を参照して以下で記載される。
【００４４】
各シェーピングされたストリームｉは、送信レートＲｉに関連付けられるとともに、パケット交換ネットワークの各通信エンティティの出口ポートにおけるキューＱｉに関連付けられる。一実施形態では、通信エンティティは、ストリームが通過する多重化ノードとすることができる。代替的な一実施形態では、通信エンティティは、ピアツーピア通信構成において受信フレームを送信し、及び／又は、単に自身のフレームを発信する端末とすることができる。
【００４５】
上述の送信レートＲｉは、ビット毎秒の単位で表される。全てのシェーピングされたストリームｉについて、Ｒｉの総和は、総リンク（又はポート）送信レートρ未満である。さらに、送信するパケットは、オクテットから構成されることが想定されており、各オクテットは８ビットに対応し、これは、図面（例えば、以下で言及される図１０のテストＳ３５）において後に登場する値「８」を説明する。
【００４６】
Ｒｉは、シグナリング又はネットワーク管理を用いて、ストリームｉによってトラバースされる連続ノードにおいて確保される。
【００４７】
ストリームｉのパケットは、メモリバッファーに、キューＱｉにおける順序を規定するＦＩＦＯ（先入れ先出し法）に従って編成されて、記憶される。
【００４８】
時間は、ビット送信時間（リンクレートにおける）ごとに増分される変数Ｔによって表され、通常、ノードの全てのリンク及びポートについて同じである。
【００４９】
各シェーピングされたストリームｉは、ストリームコンテキストＳＣｉに関連付けられる。ストリームコンテキストＳＣｉは、シェーピングメカニズムのために要求される変数、例えば、
出力ポートにおける関連付けられた、シェーピングされた送信キューの状態Ｓｔａｔ（Ｑｉ）（空（０）又は非空（１）の値を取り得る）、
関連付けられた、シェーピングされた送信キューの先頭において記憶されるフレームの理論送信時間（以降ＴＴＴｉと表記する）、
を含む。
【００５０】
ここで簡潔にするために、全てのシェーピングされていないストリームは、単一の専用キュー、すなわち、ＦＩＦＯ順においてフレームを格納するシェーピングされていない送信キューＱｕを用いて分配される。
【００５１】
キューコンテキストは、シェーピングされていない送信キューＵＣに関連付けられる。シェーピングされていない送信キューＵＣは、３つの変数、すなわち、
シェーピングされていないキューの状態Ｓｔａｔ（Ｑｕ）（空（０）又は非空（１）の値を取り得る）、
シェーピングされていないキューの先頭において格納されるフレーム又は残りのフラグメントのサイズ、すなわち、ｓｉｚｅｏｆＱｕＨｅａｄ、
現在のシェーピングされていないフレーム又はフラグメントの送信の開始から送信されたバイト数、すなわち、ｓｉｚｅｏｆＣｕｒｒＦｒａｇ（各バイトの送信時に更新される）、
を含む。
【００５２】
シェーピングされていないストリームに属するフレームの送信を考慮すると、１つのフラグメントは、規定の最小フラグメントサイズＭｉｎＦｒａｇＳｉｚｅよりも短くすることはできない。通常、１つのフレームフラグメントは、少なくとも、
ヘッダー、
フラグメントの位置のインジケーション（少なくともフレームの最初のフラグメント、又は中間フラグメント、又は最後のフラグメント）、
フラグメントの末尾におけるＣＲＣコード、及び希望的にはその間にあるデータ、
を含む。
【００５３】
実際には、最小サイズＭｉｎＦｒａｇＳｉｚｅは、これらの要件に対応するサイズ未満とすることはできないが、より一般的には、Ｅｔｈｅｒｎｅｔフレームの最小サイズ（例えば、上記で示したように６４バイト）未満とすることができない。
【００５４】
シェーピングされたフレームの送信は、ＳｈａｐｅｄＴｘＢｕｓｙフラグによって示され、このフラグは、送信中は１に設定され、送信中でない場合は０に再設定される。
【００５５】
シェーピングされていないフレーム又はフラグメントの送信は、ＵｎｓｈａｐｅｄＴｘＢｕｓｙフラグによって示され、このフラグは、送信中は１に設定され、送信中でない場合は０に再設定される。シェーピングされたフレーム送信時間が既に到来している（due）場合、シェーピングされていないフレームの送信の中断をトリガーするのに、ＳｔｏｐＵｎｓｈａｐｅｄＴｘフラグが用いられる。
【００５６】
これらの動作は、通信エンティティ１００（ネットワークのノード、又はピアツーピアネットワークにおける端末デバイス等）によって実施することができ、この通信エンティティ１００は、図４に概略的に示され、以下、すなわち、
処理するフレームを受信する１つ又はいくつかの入力ポート１０と、
受信されたフレーム（及び／又は自身の直接のニーズのために通信エンティティ１００によって送信されることになる他の任意のフレーム）を送信する１つ又はいくつかの出力ポート１４と、
以下で詳述するようなフレームのキューの送信の前に、少なくともそれらのフレームのキューを記憶する１つ又はいくつかのバッファーメモリ１３と、
例えば、本発明の一実施形態による方法を実行するためにコンピュータープログラムの少なくとも命令を記憶するメモリ１２と協調するプロセッサ１１を備えるコンピューター回路と、
を備える。
【００５７】
図５は、そのような通信エンティティ１００の入力ポート１０の動作の一例を示している。
【００５８】
受信されたフレームがシェーピングされたフレームであるのか又はそうではなくシェーピングされていないフレームであるのかを判断する（ステップＳ１）とともに、更に、いずれの送信キュー（複数の場合もある）において受信されたフレームが転送されなければならないのかを判断するために、最初のステップＳ０において、受信されたフレームが属するストリームが入力ポートにおいて識別される。この識別は、
宛先出力ポート（ステップＳ２）と、
選択された出力ポート内の宛先送信キューＱ（ステップＳ３）と、
を判断するためにフレームのヘッダー及び／又はペイロード内に含まれる情報を用いる。
【００５９】
ここで、送信ポート１４における動作が、図６Ａ及び図６Ｂを参照して開示される。
【００６０】
シェーピングされたフレームを受信する（テストＳ４の出力における矢印Ｙ）場合、及びシェーピングされた送信キューＱｉ内でそのフレームを記憶する際、以下の動作が実行される。
テストＳ５において、Ｓｔａｔ（Ｑｉ）＝０の場合、テストＳ６が実行され、Ｔ＞ＴＴＴｉの場合、ステップＳ７においてＴＴＴｉ＝Ｔである。
その後、ステップＳ８においてソート関数にＴＴＴｉ値が導入される（以下で詳述する）。
その後、値Ｓｔａｔ（Ｑｉ）がＳｔａｔ（Ｑｉ）＝１に設定される（ステップＳ９）。
【００６１】
ここで、シェーピングされていないストリームに関して、シェーピングされていない送信キューＱｕ内のフレームをソートする（テストＳ４からの矢印Ｎ）際、ステップＳ１０において、Ｓｔａｔ（Ｑｕ）が非空（＝１）に設定されることが付け加えられる。
【００６２】
ここで、シェーピングされたストリームに属するフレームの送信が開示される。
【００６３】
送信されることになるシェーピングされたストリームに属するフレームは、（上述のソート関数を用いて）全てのＴＴＴｉを比較することによって選択される。（ステップＳ１０において求められた）最小のＴＴＴｉ値に関連付けられたフレームは、ステップＳ１１において、送信の次の候補として決定される。このために、ソート関数は、Ｓｔａｔ（Ｑｉ）＝１である（すなわち、キューが非空である）ようなｉを有する最小のＴＴＴｉを維持する。最小のＴＴＴｉは、以降ｍｉｎＴＴＴｉと表記する。
【００６４】
全てのストリームｉについてＳｔａｔ（Ｑｉ）が０に等しい（すなわち、ステップＳ１２において求められたように、全てのシェーピングされたキューが空である）場合、ステップＳ１３において、ｍｉｎＴＴＴｉは、ヌル値を取る。
【００６５】
シェーピングされていないフレーム（又はフラグメント）が図７Ａに示すように現在送信されている場合、このシェーピングされていないフレームを（再）細分化することができるか否かがチェックされる。このために、
送信が中断されることになるフレーム（又はフラグメント）のサイズは、ＭｉｎＦｒａｇＳｉｚｅよりも大きくなければならず、
送信中断後のシェーピングされていないキュー内に残っているフラグメントのサイズも、ＭｉｎＦｒａｇＳｉｚｅよりも大きくなければならない。
【００６６】
これら２つの条件の双方がともに満たされるのではない場合、図７Ｂに示すように、更なる細分化を伴わずに、シェーピングされていないフレーム（又はフラグメント）のノーマル送信が通常通り継続する。
【００６７】
それ以外の場合、図７Ａに示すように、シェーピングされていないフレームの細分化が可能であるとき、シェーピングされたフレームの送信同士の間に、シェーピングされていないフレームのフラグメントを送信することができる。
【００６８】
したがって、シェーピングされたフレームは、主に、以下の場合に実効的に送信される。
ＴＴＴｉが既に到来している場合、すなわち、現在の時間ＴがＴＴＴｉ以上である場合。
現在送信されている別のシェーピングされたストリームに属するフレームがない場合。
現在送信されているシェーピングされていないストリームに属するフレーム又はフラグメントがない場合。
【００６９】
再び図６Ａ及び図６Ｂを参照すると、ステップＳ１４において時間単位１つ分だけの時間変数Ｔの各増分の際、以下の動作が実行される。ステップＳ１１において決定された、送信されることになるシェーピングされたフレーム（最小のＴＴＴｉを有する）は、インデックスｋを有し、したがってＴＴＴｋ＝ｍｉｎＴＴＴｉである。ステップＳ１５において、テストの結果は、通常ＴＴＴｋ≠ｎｕｌｌであるべきである。なぜならば、ステップＳ１１においてフレームが受信されるためである。さらに、ステップＳ１６においてＴ≧ＴＴＴｋである場合、シェーピングされていないフレームの送信が現在進行中であるのか否かを判断するようにテストＳ１７が実行される。ｙｅｓである（ＵｎｓｈａｐｅｄＴｘＢｕｓｙ＝１）場合、ステップＳ１８において、その現在の送信を停止するための要求が設定される（ＳｔｏｐＵｎｓｈａｐｅｄＴｘ＝１）。そうではない場合（テストＳ１７からの矢印Ｎ）、テストＳ１９において、シェーピングされたフレームの送信が進行中であるのか否かが更に評価される。進行中ではない（ＳｈａｐｅｄＴｘＢｕｓｙ＝０）場合、ステップＳ２０において、送信するシェーピングされたフレームがＱｋの先頭に配置される。
【００７０】
その後、次の時間Ｔについて更新が実行される。ステップＳ２１において、パラメーターＳｈａｐｅｄＴｘＢｕｓｙが、サイズ（フレーム）＊８／ρについて「１」に更新される。ステップＳ２２において、ＴＴＴｋ値も、ＴＴＴｋ＝ＴＴＴｋ＋ｓｉｚｅ（ｆｒａｍｅ）＊８／Ｒｋに更新され、ステップＳ２３においてＳｔａｔ（Ｑｋ）も更新される。その上、テストＳ２４においてＳｔａｔ（Ｑｋ）が非ヌルである場合、ステップＳ２５において再びＴＴＴｋがソート関数に導入される。
【００７１】
シェーピングされていないストリームに属するフレームの送信及び細分化のために、ここで、図９を参照しながら以下に詳細が与えられる。一般原則として、シェーピングされていないストリームに属するフレームの送信は、以下の条件が満たされた場合に開始される。
シェーピングされたフレームに属するフレームが現在送信されていない、
シェーピングされたキューのうちの１つに格納されたフレームが、既に到来している（現在の時間ＴがそのＴＴＴｉ以上である）送信時間を有していない場合。
【００７２】
したがってシェーピングされていないフレームを送信することができるのか又は細分化することができるのかをチェックするのに、シェーピングされたストリームに属する次に送信されることになるフレームの理論送信時間が用いられる。
【００７３】
最後に、シェーピングされていないフレームの第１のフラグメントが、この第１のフラグメントの長さとＱｕ内に残っているフラグメントの長さとの双方がＭｉｎＦｒａｇＳｉｚｅ以上である場合にのみ、送信される。
そうではない場合、シェーピングされていないキューからの送信は行われない。
【００７４】
実際には、上記で見たように、シェーピングされていないフレーム送信が保留中である間に新たなシェーピングされたフレームが送信されなければならない場合、シェーピングされていないフレームの送信は、
中断までに送信されるフラグメントの長さがＭｉｎＦｒａｇＳｉｚｅ以上であり、
かつ、中断後にシェーピングされていないキュー内に残るフラグメントの長さがＭｉｎＦｒａｇＳｉｚｅ以上である、
場合にのみ、中断することができる。
【００７５】
上記の条件のうちのいずれかでも満たされない場合、シェーピングされていないフレームの送信は、図８に示すように中断することができない。
【００７６】
図９を参照すると、時間単位１つ分だけの時間変数Ｔの各増分の際、以下の動作が実行される。
【００７７】
ＵｎｓｈａｐｅｄＴｘＢｕｓｙ＝１である場合（テストＳ２６）、かつＳｔｏｐＴｘＵｎｓｈａｐｅｄ＝１である場合（テストＳ２７）、かつテストＳ２８において（ｓｉｚｅｏｆＱｕＨｅａｄ≧ＭｉｎＦｒａｇＳｉｚｅかつｓｉｚｅｏｆＣｕｒｒＦｒａｇ≧ＭｉｎＦｒａｇＳｉｚｅ）である場合、ステップＳ２９において、現在のフレーム送信が停止される。その後、更新が実行されてＵｎｓｈａｐｅｄＴｘＢｕｓｙがヌルに設定され（ステップＳ３０）、ＳｔｏｐＵｎｓｈａｐｅｄＴｘがヌルに設定される（ステップＳ３１）。
【００７８】
次に実行について、時間Ｔが「１」だけ増分される（ステップＳ１４）。
【００７９】
ここで図１０を参照すると、他の状況において、すなわち、ＵｎｓｈａｐｅｄＴｘＢｕｓｙ≠１（テストＳ２６からの矢印Ｎ）である場合、以下のテストが更に処理される。
Ｓｔａｔ（Ｑｋ）≠０である場合（テストＳ３２）、かつ、
ＳｈａｐｅｄＴｘＢｕｓｙ＝０である場合（テストＳ３３）、かつ、
ｍｉｎｉＴＴＴｉ≠ｎｕｌｌである場合（テストＳ３４）、
以下の条件、すなわち、
［（ｍｉｎＴＴＴｉ−Ｔ）≧ＭｉｎＦｒａｇＳｉｚｅ＊８／ρ］及び［ｓｉｚｅ（ｆｒａｍｅ）−（ｍｉｎＴＴＴｉ−Ｔ）＊ρ／８≧ＭｉｎＦｒａｇＳｉｚｅ］
の双方が満たされる場合（テストＳ３５）、
ステップＳ３６において、現在のフレーム又はフラグメントがキューＱｕの先頭において送信され、
ステップＳ３７において、パラメーターＵｎｓｈａｐｅｄＴｘＢｕｓｙが、
（ｍｉｎＴＴＴｉ−Ｔ）と、
ｓｉｚｅ（ｆｒａｍｅ）＊８／ρ（このために、対応するテンポライゼーション（temporisation：時間稼ぎ、時間調整）を提供することができる）と、
の間の最小値の間、１に設定される。
【００８０】
一方、テストＳ３４においてｍｉｎｉＴＴＴｉ＝ｎｕｌｌである場合（矢印Ｎ）、ステップＳ３８において、Ｑｕの先頭においてフレーム又はフラグメントを送信する時機であり、ステップＳ３９において、ｓｉｚｅ（ｆｒａｍｅ）＊８／ρに対応する時間の間、ＵｎｓｈａｐｅｄＴｘＢｕｓｙを１に設定する時機である。
【００８１】
その後、ステップＳ１４において時間Ｔが増分されると、次の実行が実施される。
【００８２】
以降で説明されるように、シェーピングされたストリーム内に挿入される「プローブ」フレームＰＦの提供によって残留レイテンシーを消去することができることに留意されたい。そのようなプローブフレームＰＦは、各シェーピングされたストリームキューの先頭において挿入することができる。実際には、通常例えばサイレンス期間の後にシェーピングされたストリームのフレームが送信される場合、図７Ｂに示すように、（例えば作成されたフラグメントのサイズに起因して）細分化不可能なシェーピングされていないフレーム又はフラグメントの送信を中止することができず、その代りにシェーピングされたフレームの即時送信に順番を譲るということができない場合が起こり得る。結果としてもたらされる残留レイテンシーを回避するために、「プローブ」フレームをシェーピングされたストリーム内に挿入することができ、それにより、このプローブに後続する最初のシェーピングされたフレームが、そのような状況下でレイテンシーを何ら被ることがないようにする。図３に示す代替的な一実施形態では、１つのプローブフレームＰＦのみをシェーピングされたフレームキューＱｋ（ただし、図３の例ではｋ＝２）の先頭において挿入することができ、キューＱｋ内の送信のための次の候補は、レイテンシーを何ら被ることがない。
【００８３】
より包括的には、本発明は、プリエンプションを転送することが可能であるパケット交換ネットワークを対象としており、非サイクリックレート制御ストリーム上でトランスポートされるタイムクリティカルな応用に低レイテンシーデータ転送を提供することができる。通常、本発明は、産業用ネットワーク又は自動車ネットワーク等の組み込み制御ネットワークにおいて適用することができる。
【図１】
2020507245.tif 000003
【図２】
2020507245.tif 000004
【図３】
2020507245.tif 000005
【図４】
2020507245.tif 000006
【図５】
2020507245.tif 000007
【図６Ａ】
2020507245.tif 000008
【図６Ｂ】
2020507245.tif 000009
【図７Ａ】
2020507245.tif 000010
【図７Ｂ】
2020507245.tif 000011
【図８】
2020507245.tif 000012
【図９】
2020507245.tif 000013
【図１０】
2020507245.tif 000014
【国際調査報告】
2020507245.tif 000015
2020507245.tif 000016