JP4446356B2 - レート・シェーパ・アルゴリズム - Google Patents

レート・シェーパ・アルゴリズム Download PDF

Info

Publication number
JP4446356B2
JP4446356B2 JP2007507870A JP2007507870A JP4446356B2 JP 4446356 B2 JP4446356 B2 JP 4446356B2 JP 2007507870 A JP2007507870 A JP 2007507870A JP 2007507870 A JP2007507870 A JP 2007507870A JP 4446356 B2 JP4446356 B2 JP 4446356B2
Authority
JP
Japan
Prior art keywords
packet
priority
departure time
layer
packets
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007507870A
Other languages
English (en)
Other versions
JP2007533233A (ja
Inventor
ゲラルト ベルクホフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Oyj
Original Assignee
Nokia Oyj
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Oyj filed Critical Nokia Oyj
Publication of JP2007533233A publication Critical patent/JP2007533233A/ja
Application granted granted Critical
Publication of JP4446356B2 publication Critical patent/JP4446356B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/245Traffic characterised by specific attributes, e.g. priority or QoS using preemption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/325Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the network layer [OSI layer 3], e.g. X.25
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/43Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、レート・シェープ(rate shape)装置、対応する方法、およびレート・シェープ装置とパケット・フラグメント化装置を備えるネットワークシステムに関する。
近年のパケット指向型ネットワークは、異なるサービス品質(QoS)の必要性と共に、アプリケーションのためのサービスの差別化を提供することが要求される。この文脈において、パケット指向型ネットワークは、例えば、IP(インターネットプロトコル)およびMPLS(マルチプロトコルラベルスイッチング)ネットワークである。IPおよびMPLSは、本願明細書においては、「レイヤ3」として述べられる。これらのプロトコルのパケット指向の性質に関心があるからである。レイヤ3におけるQoS機構(例えば、DiffServ(差別化サービス))は、優先順位付け、およびパケットのドロップを含むことで、遅延、遅延偏差、およびロスのようなQoSパラメータの点において所望の振舞いを達成する。
高優先度(緊急の)パケットのための遅延および遅延偏差を更に減少させるために、マルチリンクPPPのためのマルチクラス・エクステンション(MCMP; PPP=ポイント・ツー・ポイント・プロトコル)、またはATMのための差別化UBR(Diff−UBR; UBR=無指定ビットレート、ATM=非同期転送モード)が追加的に利用され得る。これらのレイヤ2機構は二つのレイヤ3ノード間のレイヤ2リンクに制限される(IPルータまたはMPLS LSR(ラベル・スイッチング・ルータ)。それらの動作はこれらの隣接ノードのIPまたはMPLSレイヤへ透過的である。
ATMフォーラム文書,”専門委員会「TM4.1の付録:差別化UBR」、af−tm−0149.000、2000年7月”は、ATMにおいてIP diffServを転送するための一つの方法である差別化UBRについて記述している。
フラグメント化と、あるパケットの送信を他のパケットのために一時中断する可能性を共に有するMCMPおよびDiff−UBRは、例えば、E1(ヨーロッパデジタル信号レベル1)またはT1(トランスミッションシステム1)のような低帯域幅リンクについて特に関心がある。そこでは、パケットの送信時間は、アプリケーションにとって無視できるものではないことが考えられる。例えば、1500バイトパケットのE1リンク上の送信はおおよそ6msかかり、その間、そのリンクは、おそらくより高い優先度を有するその他のパケットのために使用することはできない。これは、リアルタイムアプリケーションによっては大きすぎると考えられる。
このように、リアルタイムアプリケーションのパケットのような高い優先度を有するパケットが遅延し得るという問題が存在する。
この問題は、所望のデータレートに従って後に続くパケットの間にタイムギャップを挿入することで、パケットを含むデータストリームのデータレートを調節するレート・シェーパが利用されるときに、特に深刻である。そういったレート・シェーパは、US5,460,389において開示されている。
この場合、ギャップが終了するまで計算された時間を待つと、高優先度パケットは、特に大きなパケットのために計算されたギャップが長くなりうる低容量レイヤ2機能においては、高優先度パケットを必要以上に長く(おそらく極めて長すぎる)時間遅延させる。すなわち、レイヤ2機能によって優先順位付けされた高優先度パケットを十分にサポートすることができない。したがって、そういった機構の利益は有効に引き出せない。
したがって、本発明の目的は、適したレート・シェーパ・アルゴリズムを利用することで、高い優先度を有するパケットのより高速な配送を補償することである。
この目的は、送信されるパケットの出発時間を決定するためのパケットタイミング決定手段と、当該決定された出発時間に従ってパケットを送信するためのパケット送信手段とを備えるレート・シェープ装置であって、前記パケットタイミング決定手段は、所望のデータレートおよびパケットの優先度を考慮することで前記出発時間を決定するよう構成されるレート・シェープ装置によって解決される。
もう一つの方法として、この目的は、送信されるパケットの出発時間を決定する段階と、当該決定された出発時間に従ってパケットを送信する段階とを備えるパケットのデータレートを設定するための方法であって、前記パケット送信決定段階において前記送信時間は所望のデータレートおよびパケットの優先度を考慮することで決定される方法によって解決される。
このように、本発明に従うと、レート・シェーパ・アルゴリズムが提案され、それはパケット出発時間と、それ故、パケット出発間の時間間隔とが、パケットサイズおよびデータレートに依存するだけでなく、パケット優先度をも考慮し、計算する。
最大送信レートに留意しつつ、高優先度パケットのために低優先度パケットの送信を一時的に中断することが可能である。
したがって、より高い優先度を有するパケットのより高速な配送が補償される。
これは、フラグメント化に基づいたレイヤ2QoS機構の利点を得ることを可能とする。
さらに、本発明に従ったアルゴリズムは、高優先度の、低容量リンクにおける遅延に敏感なパケットの遅延を最小にするために特に有益である。すなわち、低容量リンクにおいては、大きなパケットのための全体の送信時間は長い。このアルゴリズムが使用されない場合、大きな低優先度パケットが送信リンクを長時間に渡って占拠し、これにより、高優先度の、遅延に敏感な送信を待っているパケットための長い遅延を導くことが考えられる。
本発明は、また、上述のように定義されたレート・シェープ装置を備える第1のネットワーク要素と、第2のネットワーク要素と、第1のネットワーク要素と第2のネットワーク要素とを接続するためのリンクとを備えるネットワークシステムであって、第2のネットワーク要素は、第1のネットワーク要素から受信されたパケットをフラグメント化するためのフラグメント化手段を備え、フラグメント化手段は、受信パケットの優先度を検出し、パケットをフラグメント化し、適時の順番でパケット・フラグメント化をパケットの優先度を考慮して配置するように構成されるネットワーク要素を提案する。
更なる有利な発展は、従属請求項によって設定される。
以下において、本発明の好ましい実施形態が、添付された図面を参照することで記述される。
まず、本発明における基本的な問題が以下に詳細に記述される。
IPルータまたはMPLSラベル・スイッチング・ルータがQoS機構をレイヤ3上で、レイヤ2上(例えば、MCMPまたはDiff−UBR)と同様に、(例えば、差分サービス(DiffServ)アーキテクチャ)を実行することが考えられる。DiffServは完全なパケットについて動作し、優先度と輻輳回避のための潜在的なドロップに従うパケットスケジューリングを備える。厳密な優先度スケジューリング、重み付けスケジューリングおよび輻輳回避のための様々なアルゴリズムが使用される。
レイヤ2上でMCMPおよびDiff−UBRがレイヤ2フラグメントまたはセルにおいてレイヤ3パケットのフラグメント化を実行し、優先度に従うフラグメントスケジューリングを含む。また、ここで、厳密な優先度スケジューリング、または重み付けスケジューリング機構が利用され得る。この目的は、より低い優先度を有するパケットのフラグメントの中で高い優先度のパケットに属するフラグメントをインターリーブすることである。その結果、受信側において再組立後に変更されたパケットの順番をもたらす。順番が変更されたパケットが異なる優先度であるとき、この際順番付けは害はなく、それは全く正反対であり、まさにこの操作の目的である。この操作は、低速リンク(例えばE1、T1)において特に関心がある。
レイヤ2動作において、インタフェースの過度の引き受け(送信インタフェースのデータレートを超える)に起因するフラグメントロス(パケットロスを導く)は、避けるべきである。レイヤ2におけるフラグメント化およびフラグメントスケジューリングが二つの隣接レイヤ3ノード間で行なわれ、完全にレイヤ3に透過である(フラグメント化は、ルーチング/転送/スイッチング判断がされた後に、送信ノードによってなされ、フラグメントのパケットへの再組立は、ルーチング/転送/パケットのスイッチングの前に、受信ノードによってなされる。)
本発明の好ましい実施形態に従うアルゴリズムが図1に示される以下の状況に適用される。図1は、参照番号1によって記述されるレイヤ3ブロックと、参照番号2によって記述されるレイヤ2ブロックとを示す。ブロック1に到着したパケット(図1参照)はスケジューリング&ドロッピングブロック12へ転送される。それは、DiffServ機能の一部である(以下、スケジューラ/ドロッパーとして述べられる)。そして、それはそのパケットをレート・シェーパ(レートリミッタ、レート・シェーピングまたはリミッティング手段としても言及される)へ転送する。レイヤ3ブロックおよびレイヤ2ブロックは、ネットワークインタフェース22と比較して高容量を有する内部インタフェース3によって接続される。レイヤ2ブロックは、フラグメント化&優先度スケジューリングブロック21(フラグメンタ/スケジューラとしても言及される)を備える。それは、レイヤ2ブロックによって受信されるパケットのフラグメント化を実行する。このフラグメントはネットワークインタフェース(IF)22へ転送される。それは、フラグメント化されたパケットを、ネットワークを経由して送信する。すなわち、内部インタフェース3がパケット全体を送信する一方で、ネットワークインタフェース22はパケットのフラグメントを送信する。フラグメント化されたパケットがより暗い「ヘッダ」を有することで図面中において示されていることに注意されたい。
本発明の好ましい実施形態に従う構成及び動作について、以下により詳細に述べる。
例えば、レイヤ3のためのスケジューラ/ドロッパー(DiffServ)、およびレイヤ2のためのフラグメンタ/スケジューラ(MCMP、Diff−UBR)が、ルータの分離した機能ブロックにおいて実行される(例えば、それらは中央ユニット(レイヤ3)、および、一またはそれより多いラインカード(レイヤ3)において実行されることが考えられる)。これら二つのブロックへ接続する内部インタフェース3は、パケット/フラグメントが最後に送信される外部インタフェース22よりはるかに高容量(データ送信速度)である。
このタイプのアーキテクチャにおいては、レイヤ3ブロックは、レイヤ2へのインタフェース上のデータレートをレイヤ2機能の最大容量(例えば、外部インタフェースのレイヤ2帰属インタフェース容量)を越えない値へ制限することが要求される。それにより、レイヤ2ブロックにおけるパケットロスが避けられる。この理由は、パケットドロッピング決定は、ただ一つの単一の場所およびレイヤでなされるべきであり、これは、差別化サービス、または統合サービスアーキテクチャに従ってパケットを処理するレイヤ3であるということである。レイヤ3とレイヤ2ブロックの間のインタフェース上でデータレートを制限することを、本明細書中では、「レート・シェープ」と呼ぶ。
その基本的な形態におけるレート・シェープでは、後に続くパケットの間にタイムインターバルを挿入することでなされる。新たなパケットが送信される前のタイムインターバルの継続期間は前のパケットの大きさ(長さ)とインタフェースレートを考慮して計算される。このアプローチはレイヤ2ブロック内でのパケット/フラグメントロスを避ける。しかし、このアプローチが本発明の特有の特徴を考慮することなく使用された場合、すなわち、タイムインターバルまたはタイムギャップがパケットの優先度を考慮することなく計算された場合、このアプローチは、常に、レイヤ2ブロックが処理するための一つの単一のパケットを持つことのみであるという欠点を有する。前のパケットの送信が終了したそのとき、新たなパケットがレイヤ3から受信される。その機能ブロック内においては決して二つのパケットが存在することはなく、それは、レイヤ2ブロックが異なるパケットに属するフラグメントの優先順位付けおよびインタリービングすることを防止する。そして、レイヤ2優先順位付けが無用なものとなる。
本発明の好ましい実施形態に従うアルゴリズムはこの問題を解決する。それはレイヤ2における優先順位付けを可能とし、従って、レイヤ2QoS機構を有効に生かすことを可能とし、さらに、同時に、外部インタフェースの最大送信レートに関連する。
上述の問題を避けるための一つの方法は、レイヤ3とレイヤ2QoS機能を分離せず、一つの機能ブロック、例えば、ネットワークプロセッサ、またはASICによって両方を実行することである。しかし、この解決法の欠点は、それは内部ルータアーキテクチャにおいて強い制限を与えることである(機能ブロックの分離は、技術的、商業的、および戦略的観点からは非常に魅力的かもしれない)。
本発明の好ましい実施形態に従うと、送信する後に続くパケットのタイミング、すなわち、後に続くパケット間のタイムギャップがパケットのサイズ及びインタフェースレートに基づくだけでなく、考慮されているパケットの優先度にも基づいて計算される。
本発明の好ましい実施形態に従ったレート・シェーパ13(または、レートリミッタ)の基本構造を図2に示す。レート・シェーパ13は、対応するパケットの出発時間を決定するためのパケット出発時間決定手段の例として、レート計算手段131を備える。上述のとおり、所望のデータレート、パケットサイズ、および現在ならびに前のパケットの優先度を考慮することにより、これは達成される。その上、レート・シェーパは、決定された出発時間に従ってパケットを送信するためのパケット送信手段132を備える。例えば、このパケット送信手段はバッファを備え、そのバッファ内においてパケットが一時的に格納され、そのバッファから決定された出発時間に従ってそれらが送信される。
図3は本発明の好ましい実施形態に従った基本的な動作を図示したものである。
図3において示された手順は、パケットが受信される度に実行される。ステップS1において、受信パケット(すなわち現在のパケット)の優先度が、検出され、前のパケット(すなわちすぐ前のパケット)の優先度に関連して評価される。すなわち、現在のパケットの優先度がすぐ前のパケットのものより大きいか否かを決定する。その優先度が大きくない(すなわち、より低いか、または同じ)場合、そのパケットの出発時間は前のパケットのサイズおよびインタフェースレートに基づいてステップS2において決定され、ステップS5において、そのパケットがその決定された出発時間に従って、送信される。
ステップS1において、現在のパケットの優先度がより大きい場合、現在のパケットの出発時間はステップS3において可能な限り早い時間に決定され、ステップS4において引き続くパケットのためにその時間は調節される。その後、決定されたパケット出発時間に従い、ステップS5において、そのパケットは送信される。
特に、パケット出発時間の決定は、ステップS1において検出された優先度に基づいて実行される。すなわち、そのパケットがより低い優先度を有する場合(即ち、ステップS1における「no」)、ステップS2においてパケット出発時間は、前のパケットの大きさ、および所望のレート(例えば、パケットが送信されるネットワークのためのインタフェースレート)に基づいて決定される。一方で、そのパケットがより高い優先度を持っている場合(即ち、ステップS1における「yes」)、出発時間は可能な限り早い時点へ決定される。
例えば、これは、より低い優先度を有するパケットを送信したすぐ後に、より高い優先度を有するパケットが送信されることを意味することが考えられ、この前進的な送信は次のパケットのために考慮される。もう一つの方法として、以下で、図4を参照して詳細に説明されるように、これはより高い優先度を有するパケットより早く受信されたより低い優先度を有するパケットが実際には後で送信される。すなわち、より低い優先度を有するパケットのために、ステップS5がより高い優先度であって、続いて受信されるパケットのための対応するステップより後で実行されるかもしれない。
好ましい実施形態に従った動作は、図1および図4Aと図4Bを参照することで、更に詳細に以下で述べる。
異なる優先度を有するパケットに属するフラグメントの差別化取り扱いを実行するために、レイヤ2はパケットの優先度を考慮する。このパケットの優先度は、レイヤ3によって知られ、それは、独自仕様の情報フィールドをパケットに追加するか、プロトコルの種類およびレイヤ3とレイヤ2ブロックの間で使用されるカプセル化に依存して適切なフィールドを使用することによってレイヤ2へシグナリングする。これは例えば、VLAN−Ethernet(VLAN=仮想ローカルエリアネットワーク)ヘッダにおける優先度ビットであることが考えられる。このアプローチは、その優先度を決定するためのパケットの複数のヘッダフィールドの検査を実行するレイヤ2ブロックを有するより、ずっと効果的である。
図4Aおよび4Bは、本発明の好ましい実施形態に従ったアルゴリズムを示す。この例においては、パケットの二つだけの優先度(prio1およびprio2)が示される。しかし、任意の優先度の数もまた可能であることに注意されたい。
1.)初期状態において、低い優先度(piro2)を有するパケットだけがレイヤ3ブロックに存在する。
2.)t_P1がパケット1(P1)が送信される時点とすると、P2のためのt_P2がP1の大きさに従って計算される(次のパケットが送信されるまで待つ時間=現在のパケットのサイズ/インタフェースレート)。P2が送信されたとき、P3のためのt_P3が計算される。
3.)レイヤ3ブロックからレイヤ2ブロックへのP2の送信の間、P2より高い優先度を有するP4(prio1、ここでprio1>prio2)が、レイヤ3ブロックによって受信され、その高い優先度に従って、存在する低い優先度パケットより早く送出される。
4.)このパケットのための出発時間t_P4は、P2のサイズに従って計算されず、それはレイヤ2ブロックへ可能な限り早く、すなわち、P2のすぐ後で送信される。すなわち、パケットP4の出発時間は元々計算されたパケットP3の出発時間t_p3よりかなり早い。
prio2を有する次のパケットであるP3のための出発時間は、P4のパケットサイズを考慮することで更新される必要がある。t’_P3は次のように計算される。

t'_P3 - t_P2 = size of ( P2 + P4 ) / interface rate
高い優先度(prio1)を有するパケットが「通常」の出発時間に比べて前進されている(低い優先度のパケットの直後にそれを送信することで)時間は、より低い優先度(prio2)の次のパケットのためのインターバルに追加される。
注:P3がprio1を有するパケットであった場合、またはP4の送信時間の間にprio1を有するもう一つのパケットが出現した場合、このパケットのタイムインターバルは"size of P4 / interface rate"、すなわち、パケット間のインターバルを計算するための「通常」の方法が使用されるであろう。これは、より高い優先度を有する複数のパケットを伴う場合であっても所望のデータレートを超過することはないことを補償する。
5.)レイヤ3からレイヤ2へのパケット送信の最終的な順番が示される。
6.)レイヤ2ブロックにおいて、パケットは、MCMPまたはDiff−UBR手順に従ってフラグメント化される(これらのプロトコルによって実行される追加的なカプセル化は、この文脈においては関心がない)。これらのフラグメントは物理的なインタフェース上で送信される(インタフェースレートで)。P4がレイヤ3ブロックからレイヤ2ブロックへ、P2の直後に送信されるとき、レイヤ2ブロックはP2−フラグメントの送信を一時中断し、代わりにP4−フラグメントを送信する。その後、P2−フラグメントが再開される。
7.)最後に、遠端(受信端、図1に示されていない)においてパケット・フラグメントを再組立した後、完全なパケットが利用可能となる。P4のフラグメントのためのP2のフラグメントの送信の一時停止のため、P2およびP4のパケットの順番が再組立後に変更された。すなわち、より高い優先度を有するパケット(P4)がより低い優先度を有するパケット(P2)より早く利用可能となる。それは、レイヤ3ブロックにおいて最初に到着した順番と反対であり、それがレイヤ2優先順位付けの目的である。ステップ4.)における高優先度パケットの即座の送信を伴わない場合、結果として生じるパケットの再順番付けは起こらなかったであろうし、レイヤ2フラグメント化およびフラグメントの優先度スケジューリングは無用であろう。
この例は、提案レート・シェーパ・アルゴリズムがパケットの送信間の厳密なタイムインターバルを計算するアプローチに引き続くものではないことを示す。代わりに、それは、現在と前の優先度を考慮してインターバルを決定する。パケットが前のものより、より高い優先度を有している場合、それは、前のものが送信された直後に送信され得る。それから、レイヤ2ブロックは、より高い優先度のフラグメントのためにより低い優先度のフラグメントの送信を一時中断することができる。
「タイムギャップ」、または「タイムインターバル」という用語、および「パケット出発時間」という用語は同等であることに注意されたい。すなわち、「タイムインターバル」という用語は、出発時間と後に続くパケットの出発時間の間の時間期間を意味し、「タイムギャップ」という用語は、前のパケットの最後の後から始まり、後に続くパケットのパケット出発時間までの期間を意味する。
出発時間の計算は、二つの異なる優先度の場合のための以下の擬似コードによってもまた示される。このコードは概してC言語に従っていることに注意されたい。すなわち、{と}は、サブプロシージャを囲み、T1−−は、タイマT1をデクリメントすることを示し、/*と*/は、コメントを囲むといった具合である。先ず、二つのタイマが定義される。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
T1:レイヤ2ブロックにおける高優先度待ち行列のためのレイヤ3ブロックにおけるタイマを決定する。それは、外部送信インタフェース上で高優先度パケットを送信するために必要とされる時間をカウントする。T1が0まで減らされた場合、次の高優先度パケット(HPP)が送られることが考えられる。

T2:レイヤ2ブロックにおける低優先度待ち行列のためにレイヤ3ブロックにおけるタイマを決定する。それは、外部送信インタフェース上で低優先度パケットを送信するために必要とされる時間をカウントする。T2が0まで減らされた場合、次の低優先度パケット(LPP)が送られることが考えられる。
T2の計算は、高優先度パケットによる低優先度パケットの先取りを考慮するべきである。先取りが起きた場合、T2の値は、先取りしたHPPが外部インタフェース上で送信されるために必要な時間によってインクリメントされる。

常に、T1 <= T2 であることに注意!

T1 = 0;
T2 = 0;

for every time step(バックグラウンド・クロックによって提供されるタイミング信号)
{
if T1 = 0
if HPPがレイヤ2ブロックへ送信可能
{
レイヤ2ブロックへのHPPの初期送信;
t_HPP = (size(HPP) + header) / rate_IF; /*またはlook-up table を使用*/
T1 = t_HTTP;
T2 = T2 + t_HPP;
}

if T2 = 0
if LPPがレイヤ2ブロックへ送信可能
{
レイヤ2ブロックへのLPPの初期送信;
t_LPP = (size(LPP) + header) / rate_IF; /*またはlook-up table を使用*/
T2 = t_LTTP;
}

if T1 > 0
T1--;

if T2 > 0
T2--;
}
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
上述の例において、例えば、t_HPPは、図4におけるt_P4(優先度prio1を有するパケットP4のため)に対応し、t_LPPは、図4におけるt’_P3(優先度prio2を有するパケットP4のため)に対応することに注意されたい。rate_IFはネットワーク転送レートであり、それによってインタフェース(図1における22)は、実際にネットワークを経由してデータを送信することができる。
このように、本発明の好ましい実施形態に従うと、レート・シェーパ・アルゴリズムが提案され、それはパケットの出発時間、および、従って、パケットの出発時間の間のタイムインターバルをパケットのサイズおよびデータレートに依存するだけでなく、パケット優先度を考慮して計算する。最大送信レートを考慮しつつ、高優先度パケットのために低優先度パケットの送信を一時中断することが許される。
これは、フラグメント化に基づくレイヤ2QoS機構の利点を得ることを可能とする。
この解決法の利点は、分離したブロックにおいてレイヤ3とレイヤ2を実行し、それらの間に単純なインタフェースを使用することを可能とすることである。これは、パケット転送ネットワーク要素のアーキテクチャ設計において高い自由度を与え、それは、技術的に、商業的に、そして戦略的に魅力的な製品を導く。
本発明は、上述の実施形態に制限されず、それらは説明であり、制限的なものでないことに注意されたい。このように、多くの実施形態の変形が可能である。
例えば、上述の実施形態は二つの優先度レベルを利用する。しかし、この方法は、簡単により多くの優先度レベルへ拡張され得る。一番低い優先度のパケットは決して前進されず、インターリーブされない。次に高い優先度レベルのパケットは、前進され得る。そして、それらのフラグメントは最も低い優先度のフラグメントとインターリーブされ得る(しかし、同じかまたはより高い優先度のパケットのフラグメントにおいてはなされない)。最も高い優先度のパケットは常に前進される(前のパケットもまた最も高い優先度である場合を除いて)。
さらに、上記実施形態は、レイヤ3/レイヤ2構造を対象としている。しかし、本発明は、このアーキテクチャに限定されるものではなく、第1のネットワーク要素がデータを第2のネットワーク要素へ、より高い、第2のネットワークが処理することができるデータレートを伴い供給するときはいつでも適用され得る。特に、本発明は第2のネットワーク要素(そのネットワーク転送レートは実際にレート・シェーパにおいて設定される所望データレートを決定する)に制限されず、また、データ処理手段の他の形式も可能である。
さらに、上述の実施形態に従うと、レート・シェープ装置および方法はパケットの出発タイミングを、優先度、パケットのサイズ、および所望のデータレートを考慮することで決定することに注意されたい。一定のパケットサイズの場合、パケット出発時間を決定するステップは、パケットサイズが計算において一定の要素によって置き換えられうるものとして、単純化されることに注意されたい。
図1は、本発明の好ましい実施形態が適用され得る、レイヤ3ブロックおよびレイヤ2ブロックの基本的な構造を示す。 図2は、本発明の好ましい実施形態に従ったレート・シェーパの基本的な構造を示す。 図3は、本発明の好ましい実施形態に従う基本的な手順を説明するフローチャートを示す。 図4Aは、本発明の好ましい実施形態に従ったアルゴリズムを制限するレートを説明するためのタイミングチャートを示す。 図4Bは、本発明の好ましい実施形態に従ったアルゴリズムを制限するレートを説明するためのタイミングチャートを示す。

Claims (17)

  1. レイヤ3ブロックと、レイヤ2ブロックと、を備える装置であって、
    前記レイヤ3ブロックは、
    送信されるパケットの出発時間を決定するためのパケットタイミング決定手段と、
    前記決定された出発時間に従ってパケットを送信するためのパケット送信手段とを備え、
    前記パケットタイミング決定手段は、所望データレートおよびパケットの優先度を考慮することで前記出発時間を決定し、前に送信されたより低い優先度のパケットとより優先度の高いパケットの出発時間との間のギャップが0または実質的に0であるように、より高い優先度のパケットの出発時間を設定し、
    前記レイヤ2ブロックは、
    前記レイヤ3ブロックから受信されたパケットをフラグメント化するためのフラグメント化手段を備え、
    前記フラグメント化手段は、前記受信されたパケットの優先度を検出し、前記パケットをフラグメント化し、前記パケットの優先度を考慮して前記パケット・フラグメントを適時の順番で配置する、
    ことを特徴とする装置。
  2. 前記パケットタイミング決定手段は出発時間をパケットのサイズもまた考慮することで決定することを特徴とする請求項1に記載の装置。
  3. より高い優先度のパケットのパケットの出発時間がより低い優先度のパケットの出発時間より早く設定されるように、前記パケットタイミング決定手段はより低い優先度を有するパケットの後に受信されたより高い優先度を有するパケットの出発時間を決定することを特徴とする請求項1に記載の装置。
  4. 前記パケットタイミング決定手段は高優先度のパケットの後に続く同じ高優先度のパケットのための出発タイミングを、前記所望のデータレートに従って調節することを特徴とする請求項1に記載の装置。
  5. より高い優先度を有するパケットに最後の先行する低い優先度パケットを加えた長さと、所望のデータレートをも考慮することで、前記パケットタイミング決定手段は、より高い優先度を有するパケットの後に送信されるより低い優先度のパケットの出発時間を決定することを特徴とする請求項1に記載の装置。
  6. 二つの優先度が前記パケットのために定義されることを特徴とする請求項1に記載の装置。
  7. 前記レート決定手段は、前記出発時間を計算に基づいて決定するか、または、前記出発時間を参照テーブルを参照して決定することを特徴とする請求項1に記載の装置。
  8. 更に、前記レイヤ3ブロック及び前記レイヤ2ブロックを接続するためのリンクを備えることを特徴とする請求項1に記載の装置
  9. さらに、ネットワークを経由してフラグメント化されたパケットを送信するためのネットワークインタフェースを備え、
    前記所望データレートは前記ネットワークインタフェースによって達成可能なインタフェースレートに基づいて設定されることを特徴とする請求項1に記載の装置
  10. パケットのデータレートを設定するための方法であって、
    レイヤ3ブロックにおいて、所望のデータレートとパケットの優先度を考慮して、送信されるパケットの出発時間を決定する段階であって、前に送信されたパケットとより高い優先度を有するパケットの出発時間との間のギャップが0または実質的に0となるように、前記より高い優先度のパケットの出発時間が決定される段階と、
    レイヤブロック3からレイヤブロック2への前記決定された出発時間に従って前記パケットを送信する段階と、
    前記受信されたパケットをフラグメント化する段階と、
    前記受信されたパケットの優先度を検出する段階と、
    前記パケットの優先度を考慮して前記パケット・フラグメントを適時の順番で配置する段階と、
    を備えことを特徴とする方法。
  11. 前記パケットタイミング決定段階は、前記出発時間を、パケットのサイズをも考慮することで決定することを特徴とする請求項10に記載の方法。
  12. より高い優先度を有するパケットの出発時間がより低い優先度のパケットの出発時間より早く設定されるように、前記パケットタイミング決定段階はより低い優先度のパケットの後に受信されるより高い優先度のパケットの出発時間を決定することを特徴とする請求項10に記載の方法。
  13. 前記パケットタイミング決定段階は、前記所望のデータレートに従って高優先度のパケットのあとに続く同じ高優先度のパケットのための出発タイミングを調節することを特徴とする請求項10に記載の方法。
  14. 前記パケットタイミング決定段階は、より高い優先度を伴うパケットに最後の先行する低優先度パケットを加えた長さと、前記所望のデータレートをも考慮することで、より高い優先度を伴うパケットの後に送信されるより低い優先度を伴うパケットの出発時間を決定することを特徴とする請求項10に記載の方法。
  15. 二つの優先度が前記パケットのために定義されることを特徴とする請求項10に記載の方法。
  16. 前記レート決定段階は、計算に基づいて出発時間を決定するか、または、参照テーブルを参照することで前記出発時間を決定することを特徴とする請求項10に記載の方法。
  17. さらに、ネットワークを経由して前記フラグメント化されたパケットを、ネットワークインタフェースを使用することで送信する段階であって、前記所望のデータレートは前記ネットワークインタフェースによって達成可能なインタフェースレートに基づいて設定される、フラグメント化されたパケット送信段階を備えることを特徴とする請求項10に記載の方法。
JP2007507870A 2004-05-12 2005-05-11 レート・シェーパ・アルゴリズム Expired - Fee Related JP4446356B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04011299 2004-05-12
PCT/IB2005/001270 WO2005112366A1 (en) 2004-05-12 2005-05-11 Rate shaper algorithm

Publications (2)

Publication Number Publication Date
JP2007533233A JP2007533233A (ja) 2007-11-15
JP4446356B2 true JP4446356B2 (ja) 2010-04-07

Family

ID=34966918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007507870A Expired - Fee Related JP4446356B2 (ja) 2004-05-12 2005-05-11 レート・シェーパ・アルゴリズム

Country Status (5)

Country Link
US (1) US20050254423A1 (ja)
EP (1) EP1745606A1 (ja)
JP (1) JP4446356B2 (ja)
CN (1) CN101002438A (ja)
WO (1) WO2005112366A1 (ja)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002030064A1 (en) * 2000-10-03 2002-04-11 U4Ea Technologies Limited Information flow control in a packet network based on variable conceptual packet lengths
AU2000275414A1 (en) * 2000-10-03 2002-04-15 U4Ea Technologies Limited Filtering data flows
US8203955B2 (en) * 2007-06-21 2012-06-19 Alcatel Lucent Method and apparatus for scheduling packets in an orthogonal frequency division multiple access (OFDMA) system
US8149715B1 (en) 2007-07-17 2012-04-03 Marvell International Ltd. Mesh network operations
US8369782B1 (en) 2007-08-13 2013-02-05 Marvell International Ltd. Bluetooth wideband scan mode
US8553561B1 (en) * 2007-08-22 2013-10-08 Marvell International Ltd. Quality of service for mesh networks
US8577305B1 (en) 2007-09-21 2013-11-05 Marvell International Ltd. Circuits and methods for generating oscillating signals
US8588705B1 (en) 2007-12-11 2013-11-19 Marvell International Ltd. System and method of determining Power over Ethernet impairment
EP2079203A1 (en) * 2008-01-08 2009-07-15 Axis AB Network offloading with reduced packet loss.
JP5343276B2 (ja) 2008-06-16 2013-11-13 マーベル ワールド トレード リミテッド 近距離無線通信
US8310967B1 (en) 2008-06-19 2012-11-13 Marvell International Ltd. Infrastructure and ad-hoc node device
US8600324B1 (en) 2008-06-27 2013-12-03 Marvell International Ltd Circuit and method for adjusting a digitally controlled oscillator
US8472968B1 (en) 2008-08-11 2013-06-25 Marvell International Ltd. Location-based detection of interference in cellular communications systems
US9288764B1 (en) 2008-12-31 2016-03-15 Marvell International Ltd. Discovery-phase power conservation
US8472427B1 (en) 2009-04-06 2013-06-25 Marvell International Ltd. Packet exchange arbitration for coexisting radios
US20110019685A1 (en) * 2009-07-24 2011-01-27 Wael William Diab Method and system for packet preemption for low latency
US20110019668A1 (en) * 2009-07-24 2011-01-27 Wael William Diab Method And System For Packet Preemption Via Packet Rescheduling
US9066369B1 (en) 2009-09-16 2015-06-23 Marvell International Ltd. Coexisting radio communication
US8340034B1 (en) 2009-11-11 2012-12-25 Marvell International Ltd. Bluetooth and wireless LAN arbitration
US8767771B1 (en) 2010-05-11 2014-07-01 Marvell International Ltd. Wakeup beacons for mesh networks
FR2961048B1 (fr) * 2010-06-03 2013-04-26 Arteris Inc Reseau sur puce avec caracteristiques de qualite-de-service
US8817662B2 (en) 2010-10-20 2014-08-26 Marvell World Trade Ltd. Pre-association discovery
US8750278B1 (en) 2011-05-26 2014-06-10 Marvell International Ltd. Method and apparatus for off-channel device invitation
US8983557B1 (en) 2011-06-30 2015-03-17 Marvell International Ltd. Reducing power consumption of a multi-antenna transceiver
US9125216B1 (en) 2011-09-28 2015-09-01 Marvell International Ltd. Method and apparatus for avoiding interference among multiple radios
US9036517B2 (en) 2012-01-09 2015-05-19 Marvell World Trade Ltd. Methods and apparatus for establishing a tunneled direct link setup (TDLS) session between devices in a wireless network
US9215708B2 (en) 2012-02-07 2015-12-15 Marvell World Trade Ltd. Method and apparatus for multi-network communication
US9609676B1 (en) 2012-03-30 2017-03-28 Marvell International Ltd. Efficient transition from discovery to link establishment
US9450649B2 (en) 2012-07-02 2016-09-20 Marvell World Trade Ltd. Shaping near-field transmission signals
US9455905B2 (en) 2013-02-22 2016-09-27 Broadcom Corporation Encapsulation for link layer preemption
US10484287B2 (en) * 2013-05-15 2019-11-19 Avago Technologies International Sales Pte. Limited Support for distinguished minimum latency traffic guard band
US10230665B2 (en) * 2013-12-20 2019-03-12 Intel Corporation Hierarchical/lossless packet preemption to reduce latency jitter in flow-controlled packet-based networks
KR101676353B1 (ko) * 2015-11-06 2016-11-15 전자부품연구원 이종 네트워크 상의 메시지 제어 방법 및 장치
US10505848B2 (en) * 2015-12-24 2019-12-10 Intel Corporation Congestion management techniques for communication networks
US9929928B1 (en) * 2015-12-24 2018-03-27 Microsemi Solutions (U.S.), Inc. Packet transmitter and method for timestamping packets
CN110086728B (zh) * 2018-01-26 2021-01-29 华为技术有限公司 发送报文的方法、第一网络设备及计算机可读存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2922119B2 (ja) * 1994-09-01 1999-07-19 沖電気工業株式会社 帯域規制装置及びパケット通信装置
US6011798A (en) * 1997-08-15 2000-01-04 Intel Corporation Adaptive transmit rate control scheduler
JP3063726B2 (ja) * 1998-03-06 2000-07-12 日本電気株式会社 トラヒックシェーパ
US6891797B1 (en) * 1998-07-06 2005-05-10 Canon Kabushiki Kaisha Method and device for communicating information
JP3733784B2 (ja) 1999-05-21 2006-01-11 株式会社日立製作所 パケット中継装置
US6728265B1 (en) * 1999-07-30 2004-04-27 Intel Corporation Controlling frame transmission
JP2001230810A (ja) * 2000-02-16 2001-08-24 Fujitsu Ltd パケット流量制御装置および方法
US20040062261A1 (en) * 2001-02-07 2004-04-01 Rami Zecharia Multi-service segmentation and reassembly device having integrated scheduler and advanced multi-timing wheel shaper
GB2373671B (en) * 2001-03-23 2004-04-07 Vodafone Ltd Telecommunications systems and methods
US7245624B2 (en) * 2002-02-28 2007-07-17 Agere Systems Inc. Processor with table-based scheduling using software-controlled interval computation

Also Published As

Publication number Publication date
WO2005112366A1 (en) 2005-11-24
CN101002438A (zh) 2007-07-18
US20050254423A1 (en) 2005-11-17
EP1745606A1 (en) 2007-01-24
JP2007533233A (ja) 2007-11-15

Similar Documents

Publication Publication Date Title
JP4446356B2 (ja) レート・シェーパ・アルゴリズム
JP4583691B2 (ja) スケジューリングおよびヘッダ圧縮を利用しパケット遅延を軽減させるための方法と装置
US6765905B2 (en) Method for reducing packet data delay variation in an internet protocol network
CN110166367B (zh) 一种分组网络中控制流量的方法、装置及存储介质
JP2526013B2 (ja) パケット切替式通信方法
US7872973B2 (en) Method and system for using a queuing device as a lossless stage in a network device in a communications network
US7158480B1 (en) Feedback output queuing system, apparatus, and method
EP1735953B1 (en) Network delay control
US7602809B2 (en) Reducing transmission time for data packets controlled by a link layer protocol comprising a fragmenting/defragmenting capability
EP1578072B1 (en) Priority control apparatus and method for transmitting frames
JP4454338B2 (ja) パケット整形装置及びパケット整形方法
JP2008518552A (ja) 粗細試験期間を使用したネットワーク・パケットの経験的スケジューリング法
US20190124006A1 (en) Latency correction between transport layer host and deterministic interface circuit
EP3253013B1 (en) Ultra-low transmission latency for sporadic network traffic
US7359326B1 (en) Method for splitting data and acknowledgements in a TCP session
JP2007506364A (ja) ネットワーク・パケットの経験的スケジュール設定方法
JP2002111742A (ja) データ伝送フローのパケットをマークするための方法およびこの方法を実行するマーカデバイス
EP3032785B1 (en) Transport method in a communication network
JP2006254200A (ja) フレーム出力装置及びフレーム出力方法
JP2009267822A (ja) 通信装置
JP2003318967A (ja) 帯域制御方法および輻輳制御方法ならびにネットワーク構成装置
JP2006246207A (ja) パケットスケジューリング装置およびパケットスケジューリング方法
EP1202508A1 (en) Dynamic fragmentation of information
JP3972370B2 (ja) ネットワーク内のrncとノードbとの間のダウンリンク通信における差別化スケジューリング方法
JP2009206881A (ja) ネットワークシステム、端末装置、中継装置、帯域制御方法、及び中継装置の帯域制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100104

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130129

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees