JP2005244290A - 優先パケットの遅延を最小化するシェーピング装置 - Google Patents

優先パケットの遅延を最小化するシェーピング装置 Download PDF

Info

Publication number
JP2005244290A
JP2005244290A JP2004047522A JP2004047522A JP2005244290A JP 2005244290 A JP2005244290 A JP 2005244290A JP 2004047522 A JP2004047522 A JP 2004047522A JP 2004047522 A JP2004047522 A JP 2004047522A JP 2005244290 A JP2005244290 A JP 2005244290A
Authority
JP
Japan
Prior art keywords
packet
transmission
flow
control information
band
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.)
Granted
Application number
JP2004047522A
Other languages
English (en)
Other versions
JP4118824B2 (ja
Inventor
Takemi Yazaki
武己 矢崎
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004047522A priority Critical patent/JP4118824B2/ja
Publication of JP2005244290A publication Critical patent/JP2005244290A/ja
Application granted granted Critical
Publication of JP4118824B2 publication Critical patent/JP4118824B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】 低遅延要求パケットの遅延時間を最小化できるシェーピング装置を提供する。
【解決手段】 同一回線上に多重化される複数ユーザの受信パケットに、各ユーザの契約帯域を保証するように送信予定時刻を割当て、受信パケットの遅延クラス別に、予め送信予定時刻の最も早いユーザを暫定送信ユーザとして選択しておくことによって、パケット送信制御部が、優先クラスの暫定送信ユーザのパケットを非優先クラスの暫定送信ユーザのパケットよりも優先的に送信するようにしたシェーピング装置。
【選択図】 図1



Description

本発明は、パケット転送装置に関し、特に、ネットワークに出力されるパケットの送信順序や帯域を制御するシェーピング装置に関する。
インターネットで用いられているパケット型通信システムでは、多数のユーザが同一の回線を共用してデータ通信できるため、帯域あたりの通信コストを低く抑えることができる。この低コスト性のために、従来、専用のネットワークで実現されていた各企業の電話網や業務用ネットワークをインターネット上で実現する動きが出てきている。
インターネット上に多重化して構築されるこれらのネットワークでは、音声データやミッションクリティカルデータの通信遅延を小さく抑えるために、従来の業務用ネットワークと同様、それを利用する企業またはユーザ(以下、ユーザと言う)毎に、契約された通信帯域を保証する必要がある。以下の説明では、音声パケットやミッションクリティカルデータ用のパケットのように、通信遅延をできるだけ抑制する必要のあるパケットを優先パケット(または低遅延要求パケット)と呼び、それ以外のパケットを非優先パケット(または通常パケット)と呼ぶことにする。
帯域を保証するための従来技術として、例えば、特開平6−315034号公報(従来技術1)に記載されたシェーピング装置では、固定長パケットであるATMセルをバーチャルコネクションVC(Virtual Connection)毎に蓄積するための複数のキューを有し、これらのキューから、VC毎に予め指定された帯域となる頻度でATMセルを読み出し、出力回線に送信している。各ユーザの契約帯域を上記VCと対応させ、トラヒックが集中する出力回線へのパケット転送を上記シェーピング装置と同様の手法で制御することにより、ユーザ毎の帯域確保が可能となる。
最近では、通信コストの更なる低減を実現するため、例えば、インターネット上のE−mailサーバやwebサーバをアクセスするためのインターネットアクセス網と上述した業務用ネットワークとの統合ニーズがある。この場合、シェーピング装置には、E−mailやwebアクセスで発生する大量のデータによって、ユーザ契約帯域の大部分が消費され、結果的に低遅延要求パケット用の帯域が不足するという事態を回避する機能が必要となる。低遅延要求パケット用の優先フローに対する実質的な割当て帯域が不足すると、キュー内での低遅延要求パケットが停滞し、大きな転送遅延が発生する。最悪の場合には、新たに到着した低遅延要求パケットを蓄積するためのバッファ領域が枯渇し、低遅延要求パケットの1部が廃棄される事態となる。
上記問題に着目した従来技術として、例えば、特開2000−349763号公報(従来技術2)には、バーチャルパスVP(Virtual Path)毎の帯域と、各VP上に多重化されるVC毎の帯域とを同時に制御する多階層シェーピング装置が記載されている。
従来技術2で提案されたシェーピング装置は、出力セルを一時的に蓄積するセルバッファ部と、VP毎の設定帯域に基づいてVP別のセル送信予定時刻(VP送信予定時刻)を計算するVP送信予定時刻計算部と、VP送信予定時刻が最も早いVPを暫定送信VPとして選択するVPソーティング部と、VC毎の設定帯域に基づいてVC別にセル送信予定時刻(VC送信予定時刻)を計算するVCフロー送信予定時刻計算部と、サービスクラス毎にVC送信予定時刻が最も早いVCを暫定送信VCとして選択するVCソーティング部とからなる。
ここで、サービスクラスとは、例えば、最大帯域保証、平均帯域保証の如く、VC毎に保証すべき帯域の特性区分を意味しており、全てのVCは何れかのサービスクラスに属する。上記サービスクラスとして、The ATM Forum Specification version 4.0(従来技術3)では、例えば、最大帯域を保証するCBR(Constant Bit Rate)、最大帯域と平均帯域を保証するVBR(Variable Bit Rate)、保証帯域のないUBR(Unspecified Bit Rate)等を規定している。
上記従来技術2では、シェーピング装置の送信制御部が、暫定送信VPに属するセルの送信時に、該暫定送信VPに属したサービスクラス別の暫定送信VC群の中から、VC毎に予め定義された帯域が保証されるように1つのVCを選択し、セルバッファ部から該選択VCに属する最先着のセルを読み出して、出力回線に送信している。例えば、暫定送信VPに属するサービスクラスとして、CBRとUBRとが存在した場合、送信制御部は、CBR所属VCをUBR所属VCよりも優先的に選択することによって、サービスクラスCBRのVCに保証された最大帯域を確保する。
従来技術2には、ATMセルのシェーピング以外に、可変長パケットのシェーピング方法についても開示している。固定長のセルをシェーピングする場合、VP送信予定時刻計算部とVCフロー送信予定時刻計算部は、セル送信の都度、次セルとの送信間隔が保証帯域で決まる所定の間隔となるように、次セルの送信予定時刻を計算している。可変長パケットをシェーピング対象とした場合、送信パケットの長さによって帯域の消費量が変化するため、VP送信予定時刻計算部とVCフロー送信予定時刻計算部は、次パケットとの送信間隔が保証帯域と送信済みパケット長とによって異なる可変長送信間隔となるように、次パケットの送信予定時刻を計算する。
従来技術2のシェーピング方法によれば、例えば、ユーザ毎の契約帯域を上記VPに対応させ、低遅延要求パケット用の優先フローをCBR所属VCに対応させることによって、IPパケットのような可変長パケットの通信網において、ユーザ別契約帯域と、該契約帯域内で割当てられる優先フロー帯域との両方を保証したシェーピングが可能となる。
特開平6−315034号公報
特許公開2000−349763号公報 The ATM Forum Specification version 4.0
上述したように、従来技術1が示すシェーピング方法では、低遅延要求パケットに十分な帯域を確保できないため、優先フローのパケットに大きな通信遅延が発生する可能性が高い。これに対して、従来技術2が示すシェーピング方法は、低遅延要求パケットに優先的に帯域を割り当てることによって、優先フローのパケット通信遅延を従来技術1よりも小さくできる。
しかしながら、従来技術2のパケット送信VPの決定アルゴリズムでは、送信予定時刻のみに着目し、送信予定時刻の早いパケットが暫定送信VPとして選択されるようになっている。このため、サービスクラス別のVC群において暫定送信VCとなった低遅延要求パケットが送信予定時刻に達していても、帯域制御の基本となるVPの決定アルゴリズムにおいて、上記低遅延要求パケットよりも送信予定時刻の早い通常パケットの所属VPが暫定送信VPとして選択されていれば、通常パケットが優先的に送信され、結果的に、低遅延要求パケットに大きな通信遅延が発生する場合がある。
暫定送信VPパケットとして、例えば、図13に示すように、ユーザ1〜ユーザ3の通常パケット(DATA)P1〜P3とユーザ4の低遅延要求パケットが存在し、VP帯域制御のための送信予定時刻の割当ての結果、低遅延要求パケットP4の送信予定時刻t4が、通常パケットP1〜P3の送信予定時刻t1、t2、t3よりも少し遅れていた場合を想定する。
このように、複数の暫定送信VPパケットが略同時刻の送信予定時刻をもった場合、送信制御部が、送信予定時刻の早いパケットから順に出力回線に送信すると、図14に示すように、低遅延要求パケットP4の実際の送信時刻t12が、送信予定時刻t4から大きく遅延し、通信品質が劣化するという問題がある
同一の出力回線に複数ユーザの契約帯域が多重化された状態で、暫定送信VPパケットとなった或るユーザの低遅延要求パケットPに着目すると、他のユーザ数をn、ユーザi(i=1〜n)の送信パケット長をLi、上記出力回線上での全ユーザの契約帯域(保証帯域)の総和をBとした場合、上記低遅延要求パケットPには、最悪のケースで(L1+L2+…Ln)/Bの遅延が発生する。
ここで、Liの値を、例えば、イーサネット(登録商標)の最大パケット長である1538バイト(フレーム間ギャップ、Frame Check Sequence:FCS、プリアンブル、イーサネットヘッダを含む)とし、総帯域Bを100Mbps、他のユーザ数nを1000とすると、上記低遅延要求パケットPの遅延時間は123ms(=1538×8×999/100M)となる。
本発明の目的は、低遅延要求パケットの遅延時間を最小化できるシェーピング装置を提供することにある。
本発明の他の目的は、低遅延要求パケットの遅延時間を最小化できる可変長パケットの帯域制御に適したシェーピング装置を提供することにある。
上記目的を達成するため、本発明によるシェーピング装置は、同一回線上に多重化される複数ユーザの受信パケットに、各ユーザの契約帯域を保証するように送信予定時刻を割当て、受信パケットの遅延クラス別に、予め送信予定時刻の最も早いユーザを暫定送信ユーザとして選択しておくことによって、パケット送信制御部が、優先クラスの暫定送信ユーザのパケットを非優先クラスの暫定送信ユーザのパケットよりも優先的に送信できるようにしたことを特徴とする。
具体的に言うと、本発明は、それぞれが遅延クラスと帯域識別情報を示す内部ヘッダを備えた複数の受信パケットを一時的に蓄積し、帯域識別情報に応じて各パケットの送信タイミングを制御するシェーピング装置において、パケット送信制御部と、メモリ内に複数のキューを形成し、各受信パケットをその内部ヘッダが示す遅延クラスと帯域識別情報とによって決まる何れかのキューに蓄積しておき、上記パケット送信制御部からの送信指令で特定されるキューから1つの蓄積パケットを出力するパケットバッファリング部と、それぞれが優先度の異なる特定の遅延クラスと対応付けられ、各受信パケットの内部ヘッダに帯域識別情報として含まれる契約帯域識別子別にパケット送信制御情報を記憶した複数の契約帯域制御情報部とからなり、
上記各契約帯域制御情報部が、上記パケット送信制御情報に基づいて、それぞれが上記パケットバッファリング部に送信待ちパケットをもつ複数の契約帯域のうち、最も早くパケット送信すべき契約帯域を選択して、該契約帯域を遅延クラス代表契約帯域として記憶するクラス代表選択部を有し、上記パケット送信制御部が、上記各契約帯域制御情報部が示す遅延クラス代表契約帯域のパケット送信制御情報に基づいて、パケット送信すべき契約帯域を選択し、該契約帯域のパケット送信制御情報が示す送信タイミングで、上記パケットバッファリング部にパケットの送信指令を発行することを特徴とする。
本発明の1実施例では、各受信パケットの内部ヘッダが、帯域識別情報として契約帯域識別子とフロー識別子とからなる階層化帯域識別子を含み、シェーピング装置が、更に、それぞれが優先度の異なる特定の遅延クラスと対応付けられ、各受信パケットの内部ヘッダに帯域識別情報として含まれる契約帯域識別子毎に、フロー識別子別のパケット送信制御情報を記憶した複数のフロー制御情報部を有し、上記パケット送信制御部が、選択された契約帯域のパケット送信制御情報が示す送信タイミングで、該契約帯域と対応するフロー制御情報部が示すパケット送信制御情報に従って、前記パケットバッファリング部にパケットの送信指令を発行することを特徴とする。
本発明の好ましい実施例では、各フロー帯域制御情報部が、パケット送信制御情報に基づいて、それぞれが上記パケットバッファリング部に送信待ちパケットをもつ複数のフローのうち、最も早くパケット送信すべきフローを選択して、該フローを遅延クラス代表フローとして記憶するクラス代表フロー選択部を有し、上記パケット送信制御部が、選択された契約帯域と対応するフロー制御情報部が示す遅延クラス代表フローのパケット送信制御情報に従って、パケットの送信指令を発行することを特徴とする。
尚、複数のフローを1つのフロー集合として帯域制御する場合は、上記フロー制御情報部に代えて、契約帯域識子毎に、フロー集合識別子別のパケット送信制御情報を記憶したフロー集合制御情報部を設け、上記パケット送信制御部が、選択した契約帯域と対応するフロー集合制御情報部が示すパケット送信制御情報に従って、パケットの送信指令を発行するようにすればよい。
更に詳述すると、本発明のシェーピング装置は、パケットバッファリング部によるパケットの送信時に、該送信パケットの属する契約帯域におけるパケット送信予定時刻を計算し、上記パケットバッファリング部によるパケットの受信時に、該受信パケットの属する契約帯域における既存のパケット送信予定時刻とが所定の条件を満たした時、パケット送信予定時刻を計算する送信予定時刻計算回路を有し、上記契約帯域制御情報部が、上記送信予定時刻計算回路で計算されたパケット送信予定時刻を上記送受信パケットの契約帯域識別子と対応するパケット送信制御情報として記憶し、上記クラス代表選択部が、送信待ちパケットを持つ複数の契約帯域のうち、上記パケット送信予定時刻が最も早い契約帯域を前記遅延クラス代表契約帯域として選択することを特徴とする。
本発明のシェーピング装置の更に他の特徴は、シェーピング制御モードを指定するためのモードメモリを有し、上記パケット送信制御部が、上記モードメモリが指定する制御モードに従って、複数の遅延クラス代表契約帯域のなかからパケット送信すべき契約帯域を選択するようにしたことにある。
本発明のシェーピング装置によれば、遅延クラス(優先度)別に暫定送信ユーザ(クラス代表契約帯域)を選択しておくことによって、優先度の低いクラスの送信予定時刻の早い通常パケットよりも、優先度の高いクラスの送信予定時刻の遅い低遅延要求パケットを優先的に送信することが可能となり、優先クラスのパケットの通信遅延を小さくできる。また、従来のように、優先度に関係なく送信予定時刻順のパケット送信モードでシェーピングを実現したい場合は、遅延クラス(優先度)別に選択された複数の暫定送信ユーザ(クラス代表契約帯域)のなかから、送信予定時刻の最も早い暫定送信ユーザを選択し、このユーザに所属したパケットの中で送信予定時刻の最も早いパケットを送信すればよい。
以下、本発明のシェーピング部と、これを応用したルータについて、図面を参照して説明する。
ルータは、1つの出力回線上に多重化される複数ユーザのトラフィックに対して、各ユーザが予め契約した帯域を保証する。各ユーザは、契約帯域の範囲内で同一の出力回線に複数のフローを多重化できる。各フローには、予め定義された複数の遅延クラスのうちの1つが割当てられる。ここで、「フロー」とは、パケットヘッダ内の特定のヘッダ情報の組み合せによって同定される同一グループに所属する一連のパケットからなる一方向のトラフィックを指す。以下の説明では、簡単化のために、上記遅延クラスとして、できるだけ低い通信遅延を保証する「優先クラス」と、優先クラスよりも通信遅延が大きい「非優先クラス」の2クラスを前提とする。
図2は、本発明のシェーピング部が適用されるルータ200のブロック構成の1例を示す。
ルータ200は、パケットが流入するN本の入力回線201(201−1〜201−N)と、パケットが送出されるN本の出力回線202(201−1〜202−N)と、それぞれ1対の入出力回線201−i、202−iに接続されるN個のインターフェース部210−i(i=1−N)と、これらのインターフェース部210−iの間でパケットをスイッチングするパケット中継部250、各インターフェース部210−iとパケット中継部250に接続された制御部290とからなる。上記制御部290は、ルータの外部に位置した管理端末1と接続されている。
インターフェース部210−i(i=1−N)は、入力回線201−iとパケット中継部250との間に接続されたパケット受信回路230と、該パケット受信回路230に付随するヘッダ処理部240と、パケット中継部250から受信した出力パケットを一時的に蓄積し、遅延クラスに従ってユーザ毎、フロー毎の帯域制御を行うシェーピング部100と、該シェーピング部100からの出力パケットを出力回線202−iに送信するパケット送信回路270から構成される。
ヘッダ処理部240は、パケット受信回路230が信号線21に出力する入力パケットのヘッダ情報および入力回線番号に基づいて、図示しないフロー定義テーブルから各入力パケットと対応するユーザ番号、フロー番号、遅延クラスを検索し、検索結果をフロー検出情報として信号線22に出力するフロー検出部241と、上記信号線21に出力されたヘッダ情報に基づいて、図示しないルーティングテーブルから入力パケットの転送先となる出力回線の番号を検索し、これを信号線23に出力するルーティング処理部242とを含んでいる。
図3は、パケット受信回路230が入力回線201−iから受信する入力パケット300のフォーマットの1例を示す。
入力パケットは、ヘッダ部310とデータ(ペイロード)部320とから構成される。本実施例では、入力パケットとして、ヘッダ部310にIPヘッダとTCP/UDPヘッダとを含むIPパケットを想定する。この場合、ヘッダ部310には、フロー検出に関係するヘッダ情報として、パケットの送信元端末を示す送信元IPアドレス(Source IP Address:SIP)311と、パケットの宛先端末を示す宛先IPアドレス(Destination IP Address:DIP)312と、プロトコル(上位アプリケーション)を表す送信元ポート番号(Source Port:SPORT)313および宛先ポート番号(Destination Port:DPORT)314と、ネットワーク内でのパケットの転送優先度を表すDSCP315を含む。データ部320には、ユーザデータ321が含まれる。
図4は、パケット中継部250が取り扱うルータ内部パケット350のフォーマットの1例を示す。
内部パケット350は、入力パケット300の先頭に内部ヘッダ部330を付加した構成となっている。内部ヘッダ部330は、入力パケットのバイト長を表すパケット長331と、該パケットが受信された入力回線を示す入力回線番号332と、該パケットの出力回線を示す出力回線番号333と、該パケットと対応するユーザ番号(契約帯域識別子)334、フロー番号(フロー識別子)335、遅延クラス336を含む。
パケット受信回路230は、入力回線201からパケットを受信すると、内部ヘッダ330を付加し、入力パケットを一時的にバッファリングする。内部ヘッダ330には、パケット受信中に検出された入力パケットのバイト長(パケット長)331と、パケットの入力回線201−iを示す入力回線番号332とが書き込まれる。この時、パケット受信回路230は、入力回線番号332と、ヘッダ部310から抽出した情報要素311〜315をパケットヘッダ情報として信号線21に送出する。
ヘッダ処理部240では、上記パケットヘッダ情報に応答して、フロー検出部241が、ユーザ番号、フロー番号、遅延クラスを含むフロー検出情報を信号線22に出力し、ルーティング処理部242が、パケットヘッダ情報中のDIP312に対応する出力回線番号を信号線23に出力する。尚、入力パケットのヘッダ部310には、情報要素311〜315以外に、例えば、IP層の上位プロトコルや、イーサネット(データリンクレイヤ)のMACアドレス等、フロー検出に利用可能な他の情報要素も含まれているため、フロー検出部241は、これらの情報要素も利用した形で、上述したユーザ番号、フロー番号、遅延クラスを判定するようにしても良い。
パケット受信回路230は、ヘッダ処理部240から出力回線番号とフロー検出情報を受信すると、出力回線番号を内部ヘッダの出力回線番号333に書込み、フロー検出情報を内部ヘッダのユーザ番号334〜遅延クラス336に書き込んだ後、内部パケット350をパケット中継部250に送信する。パケット中継部250は、各パケット受信回路230から受信した内部パケット350を出力回線番号333で特定される何れかのインターフェース部210−jに転送する。
シェーピング部100は、ユーザ番号毎に、フロー番号と対応した複数のキューを備えている。インターフェース部210−jのシェーピング部100は、パケット中継部250から受信した内部パケットを内部ヘッダのユーザ番号334とフロー番号335によって特定される何れかのキューに一時的に蓄積しておき、パケット送信回路270がパケット送信完了の都度発行するパケット送信起動信号24に応答して、後述するシェーピングアルゴリズムによって決定された特定ユーザの特定フローに属したパケットをキューから読み出し、パケット送信回路270に送信する。
パケット送信回路270は、シェーピング部100から内部パケットを受信すると、受信パケットから内部ヘッダ部330を除去し、IPパケットとして出力回線202に送信する。パケット送信回路270は、IPパケットの送信を完了すると、シェーピング部100にパケット送信起動信号24を発行する。
図1は、本発明のシェーピングアルゴリズムを実現するシェーピング部100の1実施例を示す。
シェーピング部100は、複数のキューが形成されるバッファメモリを有し、パケット中継部250から受信した内部パケットをユーザ番号とフロー番号との組み合せに応じてキューイングするパケットバッファリング部110と、帯域管理テーブル180が示すフロー毎の設定帯域に基づいて、フロー別のパケット送信予定時刻を計算するフロー送信予定時刻計算部130と、帯域管理テーブル180が示すユーザ毎の契約帯域に適合し、且つ、フロー別の送信予定時刻にも適合するように、ユーザ別のパケット送信予定時刻を計算するユーザ送信予定時刻計算部140と、フロー送信予定時刻計算部130とユーザ送信予定時刻計算部140に結合された優先フローソーティング部170Aおよび非優先フローソーティング部170Bと、ユーザ送信予定時刻計算部140に結合された優先クラスユーザソーティング部150Aおよび非優先クラスユーザソーティング部150Bと、これらのソーティング部150A〜170Bに結合されたパケット送信制御部120と、パケット送信制御部120に接続された制御モードメモリ190とからなっている。
制御モードメモリ190には、パケット送信制御部120で実行すべきシェーピング制御モードが記憶される。本実施例では、制御モードとして、遅延クラスを考慮して送信パケットを決定する優先パケット先行モードと、遅延クラスに無関係に送信予定時刻順に送信パケットを決定する通常モードとがある。制御モードは、オペレータが管理端末1で指定し、制御部290を介して制御モードメモリ190に記憶される。制御モードの指定は、ユーザ番号(契約帯域)毎に個別の制御モードとして指定してもよいし、各インタフェース部で扱う全てのユーザパケットに一律に適用する共通の制御モードとして指定してもよい。
フロー送信予定時刻計算部130は、パケットバッファリング部110におけるパケットの送受信の都度、帯域管理テーブル180を参照し、送信パケットまたは受信パケットの所属フローにおけるパケット送信予定時刻を計算するフロー予定時刻計算回路131からなる。
優先フローソーティング部170Aは、二分木ソート回路171Aとフロー制御情報メモリ172Aからなる。二分木ソート回路171Aは、フロー制御情報メモリ172Aが示す優先クラスに属した複数のフローを送信予定時刻順にソーティングし、これらのフローの中から最先にパケット送信すべきフローを優先クラスの代表フロー(暫定送信フロー)として選択する。同様に、非優先フローソーティング部170Bも、二分木ソート回路171Bとフロー制御情報メモリ172Bとからなり、二分木ソート回路171Bは、フロー制御情報メモリ172Bが示す非優先クラスに属した複数のフローを送信予定時刻順にソーティングし、最先にパケット送信すべきフローを非優先クラスの代表フロー(暫定送信フロー)として選択する。
ユーザ送信予定時刻計算部140は、パケットバッファリング部110におけるパケットの送受信の都度、帯域管理テーブル180を参照し、送信パケットまたは受信パケットが所属するユーザのパケット送信予定時刻を計算するユーザ予定時刻計算回路141と、優先クラスユーザ予定時刻修正回路142と、非優先クラスユーザ予定時刻修正回路143とから構成される。
優先クラスユーザ予定時刻修正回路142は、優先フローソーティング部170Aによる優先クラスのフロー選択結果を利用して、ユーザ予定時刻計算回路141で算出されたパケット送信予定時刻を修正する。同様に、非優先クラスユーザ予定時刻修正回路143は、非優先フローソーティング部170Bによる非優先クラスのフロー選択結果を利用して、ユーザ予定時刻計算回路141で算出されたパケット送信予定時刻を修正する。これらの送信予定時刻の修正については、後で詳述する。
優先クラスユーザソーティング部150Aは、二分木ソート回路151Aとユーザ制御情報メモリ152Aとからなり、それぞれが優先クラスフローに属した送信パケットをもつ複数のユーザの中から、送信予定時刻に従って、最先に送信すべきパケットをもつユーザを優先クラスの代表ユーザ(暫定送信ユーザ)として選び出すためのソーティング動作を行う。
非優先クラスユーザソーティング部150Bは、二分木ソート回路151Bとユーザ制御情報メモリ152Bとからなり、それぞれが非優先クラスのフローに属した送信パケットをもつ複数のユーザの中から、送信予定時刻に従って、最先に送信すべきパケットをもつユーザを非優先クラスの代表ユーザ(暫定送信ユーザ)として選び出すためのソーティング動作を行う。
パケット送信制御部120は、制御モードメモリ190で指定された制御モードと、上記フローソーティング部170A、170Bおよびユーザソーティング部150A、150Bにおける選択結果に基づいて、今回送信すべきパケットを特定し、信号線11を介して、パケットバッファ部110に上記送信パケットの読み出しを指令する。
図5は、帯域管理テーブル180の1例を示す。
ここに示した帯域管理テーブル180は、ユーザ番号(契約帯域識別子)181と対応して、保証すべき契約帯域182と、契約帯域の範囲内で多重化される複数のフロー番号(フロー識別子)183と、フロー毎の設定帯域(フロー帯域)184と、パケット送信予定時刻計算に適用すべき計算ルール185を示している。
本実施例では、契約帯域182を送信データの1バイト当たりの帯域消費時間(時間間隔)ΔTに換算した値で指定し、データ長Lのパケットが出力回線に送信された時、次のパケットの送信予定時刻tを
t=現在の送信予定時刻+L・ΔT …(1)
として算出するようにしている。
ユーザ番号1の契約帯域をΔT1、ユーザ番号2の契約帯域をΔT2で表した時、もし、ΔT1=2×ΔT2の関係にあれば、ユーザ番号1の契約帯域は、ユーザ番号2の契約帯域の1/2となっていることを意味している。従って、送信パケット長が同一の場合、現在のパケット送信時刻を基準にして、ユーザ番号1に割当てられる次パケットの送信予定時刻t1の値は、ユーザ番号2の次パケット送信予定時刻t2の2倍の値となる。
こでは、ユーザ番号uに所属する第jフローをフロー番号(u,j)で示し、各フローの帯域184も、契約帯域182と同様、送信データの1バイト当たりの帯域消費時間ΔTujに換算した値で指定している。
適用計算ルール185は、パケット送信の都度、フロー予定時刻計算回路131とユーザ予定時刻計算回路141に適用すべき次パケット送信予定時刻計算のための計算式を示している。例えば、最大帯域を保証するCBRフローに対しては、式(1)を適用し、UBRフローに対しては、次のパケットを直ちに送信できるように、次式(2)を適用する場合、適用計算ルール185によって、式(1)と式(2)の識別情報を与えればよい。
t=現在の送信予定時刻(または現在時刻)+1 …(2)
尚、UBRフローに割当てるΔTujを最小値とすることによって、式(1)で計算してもUBRフローの送信予定時刻が他のフローよりも早くなる場合は、全てのフローに同一計算式を適用できるため、適用計算ルール185の指定は不要となる。また、本実施例では、フロー送信予定時刻計算回路131とユーザ送信予定時刻計算回路141が、帯域管理テーブル180を共用しているが、フロー送信予定時刻計算回路用の帯域管理テーブルと、ユーザ送信予定時刻計算回路用の帯域管理テーブルに分けてもよい。
優先フローソーティング部170Aのフロー制御情報メモリ172Aは、ユーザ番号毎に、例えば、図6に示すように、優先クラスに属する各フローのフロー番号700と、送信予定時刻701と、送信待ちパケットの有無を示すフラグ(VLD)702とを示す複数のフロー制御情報エントリが記憶されている。上記フロー制御情報メモリ172Aは、優先クラスのフロー制御情報エントリをフロー番号順に示したフロー情報エリア1722と、該フロー情報エリアの登録エントリを送信予定時刻701の早い順にソートした結果を示すソーティング情報エリア1721とからなる。
図6は、或るユーザ(契約帯域)に属する優先クラスのフロー数が8個の場合を示し、アドレス1000から1111がフロー情報エリア1722、アドレス0000から0111がソーティング情報エリア1721となっている。フロー情報エントリのソーティング動作とソーティング情報エリア1721におけるエントリの配列については後述する。上記フロー制御情報メモリ172Aと同様、非優先フローソーティング部170Bのフロー制御情報メモリ172Bも、非優先クラスに属する複数のフロー制御情報エントリを記憶するフロー情報エリア1722と、該フロー情報エリアの登録エントリを送信予定時刻701の早い順にソートした結果を示すソーティング情報エリア1721とからなっている。
優先クラスユーザソーティング部150Aのユーザ制御情報メモリ152Aには、例えば、図7に示すように、ユーザ番号800と、送信予定時刻801と、優先クラスに属するフローの送信待ちパケットの有無を示すフラグ(VLD)802とを示す複数のユーザ帯域制御情報エントリが記憶されている。ユーザ制御情報メモリ152Aは、それぞれ優先クラスのフローをもつ複数のユーザ帯域制御情報エントリをユーザ番号順に示したユーザ情報エリア1522と、該ユーザ情報エリアの登録エントリを送信予定時刻701の早い順にソートした結果を示すソーティング情報エリア1521とからなる。
同様に、非優先クラスユーザソーティング部150Bのユーザ制御情報メモリ152Bも、非優先クラスのフローをもつ複数のユーザ制御情報エントリをユーザ情報エリア1522とソーティング情報エリア1521に記憶している。
次に、シェーピング部100の動作について、図1と、図8〜図12を参照して詳細に説明する。
1.パケット受信処理500
図8は、パケット中継部250からの内部パケットの受信処理を示すフローチャートを示す。ここでは、受信した内部パケットのユーザ、フロー、遅延クラスをそれぞれユーザ(r)、フロー(r,s)、遅延クラス(r,s)と表記する。
パケット中継部250からシェーピング部100に転送された内部パケットは、パケットバッファリング部110に入力される。パケットバッファリング部110は、上記内部パケットを受信すると、受信パケットをフロー別のキューに一時的に蓄積すると共に、受信パケットの内部ヘッダから抽出したユーザ番号、フロー番号、遅延クラスを信号線13に受信パケット情報として出力する(ステップ501)。上記受信パケット情報に応答して、フロー予定時刻計算回路131がフロー別の送信時刻計算(510)を実行し、ユーザ予定時刻計算回路141がユーザ別の送信時刻計算(520)を実行する。
(1)フロー別の送信時刻計算(ステップ510)
フロー予定時刻計算回路131は、信号線13を介して受信パケット情報を受信すると、図9に示すように、受信パケット情報が示す遅延クラス(優先または非優先)と対応する二分木ソート回路171Aまたは171Bを介して、フロー制御情報メモリ172Aまたは172Bのフロー情報エリア1722から、フロー(r,s)のフロー帯域制御情報を読み出し(511)、該フロー帯域制御情報に含まれるVLDの値を判定する(512)。
VLDが“1”の場合は、送信待ちパケットに対する送信予定時刻が既に割当て済みとなっており、今回、送信予定時刻を更新すると、フロー(r,s)の設定帯域を守れなくなる。従って、フロー予定時刻計算回路131は、送信予定時刻を更新することなく、遅延クラス(r,s)に対応する二分木ソート回路171Aまたは171Bに、上記フロー帯域制御情報に基づくフローソーティングを指令する(516)。
一方、VLDが“0”の場合は、フロー予定時刻計算回路131は、フロー帯域制御情報に含まれる送信予定時刻と現在時刻とを比較する(513)。もし、送信予定時刻>現在時刻の場合、今回、送信予定時刻を更新すると、フロー(r,s)の設定帯域を守れなくなるため、フロー予定時刻計算回路131は、送信予定時刻を更新することなく、フロー帯域制御情報のVLDの値のみを“1”に変更し(515)、遅延クラス(r,s)に対応する二分木ソート回路171Aまたは171Bに、上記フロー帯域制御情報に基づくフローソーティングを指令する(516)。
VLDが“0”で、送信予定時刻>現在時刻でなかった場合、すなわち、前回計算された送信予定時刻に到達または経過していた場合は、受信パケットを直ちに送信可能な状態となっており、送信予定時刻を適当な時刻に更新してもかまわない。そのため、フロー予定時刻計算回路131は、受信パケットに最も早く送信させるために、上記フロー帯域制御情報の送信予定時刻を式(2)に従って更新し(514)、VLDを“1”に変更して(515)、遅延クラス(r,s)に対応する二分木ソート回路に、上記更新されたフロー帯域制御情報に基づくフローソーティングを指令する(516)。
(2)ユーザ別の送信時刻計算(ステップ520)
一方、信号線13を介して受信パケット情報を受信したユーザ予定時刻計算回路141も、受信パケット情報が示す遅延クラスと対応する二分木ソート回路151Aまたは151Bを介して、ユーザ制御情報メモリ152Aまたは152Bのユーザ情報エリア1522から、ユーザ(r)のユーザ帯域制御情報を読み出す。この後、フロー予定時刻計算回路131と同様、VLDが“0”で送信予定時刻に到達または経過していた場合にのみ、ユーザ帯域制御情報の送信予定時刻を式(2)に従って更新する。
ユーザ予定時刻計算回路141で計算された送信予定時刻をそのまま適用してユーザ情報エリア1522の登録エントリをソーティングすると、送信制御部120がパケット送信すべきフローを判定した時、ユーザソーティング部が選択した暫定送信ユーザが送信予定時刻に達しても、フローソーティング部170Aまたは170Bが選択した暫定送信フローでは、未だ送信予定時刻に達していないケースが生じる。この場合、暫定送信フロー側でパケットが送信可能になるまで、パケットの送信が見送られるため、出力回線の帯域に無駄が生じる。そこで、本実施例では、ユーザ予定時刻計算回路141が、上記ユーザ帯域制御情報を、受信パケット情報が示す遅延クラス(r,s)と対応する優先クラスユーザ時刻修正回路142または非優先クラスユーザ時刻修正回路143に出力し、必要に応じて上記ユーザ帯域制御情報に含まれる送信予定時刻を修正する。ユーザ時刻修正回路142と143の動作については、後で詳述する。
受信パケットのフロー(r,s)において送信予定時刻が更新されると、フロー(r,s)が属する遅延クラスの中で暫定送信フローが入れ替わる可能性がある。そこで、優先フローソーティング部170Aの二分木ソート回路171Aまたは非優先フローソーティング部170Bの二分木ソート回路171Bは、フロー予定時刻計算回路131からフローソーティング指令を受信すると、暫定送信フローを判定し直すためのフローソーティング(531)を実行する。
(3)フローソーティング(ステップ531)
以下の説明では、受信パケットの遅延クラス(r,s)が優先クラスであって、ユーザ(r)の優先クラスのフロー(r,n)として、例えば、図10に示すように、フロー(0)〜フロー(7)の8フローが存在した場合を仮定する。ここでは、簡単化のために、、フロー(r,n)を単にフロー(n)と記載している(n=0〜7)。
図10は、ソーティング処理によって形成される二分木構造を示している。二分木の頂点(「根」)、分岐点、先端(「葉」)には、それぞれフロー帯域制御情報エントリ900〜937が位置している。二分木の根に位置するエントリ900を「根エントリ」、葉に位置するエントリ930〜937を「葉エントリ」、任意のエントリからみて根側にあるエントリを「親エントリ」、葉側にある二つのエントリを「子エントリ」と呼ぶ。各エントリを示すブロック内で、1行目はフロー番号、2行目の数字は現在時刻を0とした場合の送信予定時刻、3行目の数字はVLDの値を示している。図6に示したフロー制御情報メモリ172のフロー情報エリア1722には、上記葉エントリ930〜937に相当するフロー帯域制御情報が、フロー番号順に配列されている。
上記二分木構造の根と各分岐点には、葉エントリを最下層の子エントリとして、以下に述べる選択規則に従って、隣り合う1対の子エントリの一方を親エントリとして選択し、選択されたエントリを次層の子エントリとして更に上位層の親エントリを次々と選択することによって、最終的に根エントリが暫定送信フローの帯域制御情報を示すようにソーティングされる。
(規則1) 子エントリの双方がVLD=“1”となっていた場合は、送信予定時刻が早い(送信予定時刻を過ぎている場合を含む)方の子エントリを親エントリとして選択する。この規則によって、例えば、エントリ920として、子エントリ931の情報が記憶される。送信予定時刻が同一の場合は、どちらが選択されても良い。
(規則2) 子エントリの一方がVLD=“1”、他方がVLD=“0”となっていた場合、VLD=“1”の子エントリを親エントリとして選択する。この規則によって、例えば、エントリ922として、エントリ935の情報が記憶される。
(規則3) 子エントリの双方がVLD=“0”となっていた場合、送信予定時刻が早い方の子エントリを親エントリとして選択する。この規則によって、例えば、エントリ921には、エントリ932の情報が記憶される。送信予定時刻が同一の場合は、どちらが選択されても良い。
次に、図6と図10を参照して、上述した二分木構造とフロー制御情報メモリ172A(172B)のソーティング情報エリア1721に記憶されるエントリとの関係について説明する。
(A)二分木構造の根エントリは、アドレス「000…001」番地に記憶される。
(B)アドレス「xyy…yyz」番地に位置したエントリに着目すると、その親エントリは、現在アドレス「xyy…yyz」を1ビット右シフトした「0xy…yyy」番地に位置している。また、二つの子エントリは、現在アドレス「xyy…yyz」を1ビット左シフトした「yyy…yz0」番地と「yyy…yz1」番地に位置している。
以上の規則でソーティング情報エリア1721内のエントリ記憶アドレスを管理すると、フロー予定時刻計算回路131からフロー帯域制御情報を与えられた時、ソーティング時のメモリアクセスのためのアドレスの生成回路の構成を簡単化できる。
即ち、フロー帯域制御情報が示すフロー番号sをもつ葉エントリが、フロー情報エリア1722のアドレス「xyy…yyz」番地に位置していた場合、比較対象となる子エントリは、現在アドレスの最下位ビットLSBの値zを反転して得られる「xyy…yy(z)」番地に記憶されている。また、比較結果の書込み先アドレスは、現在アドレスを1ビット右シフトして得られる「0xy…yyy」番地となる。
次に、受信パケットの遅延クラス(r,s)が優先クラスの場合に、二分木ソート回路171Aが実行するソーティング動作(図8のステップ531)について説明する。非優先クラスのパケットを受信した場合、二分木ソート回路171Bが実行するソーティング動作もこれと同様である。
二分木ソート回路171Aは、フロー制御情報メモリ172Aにおいて、フロー予定時刻計算回路131から受信したフロー帯域制御情報に従って、フロー番号(r,s)と対応する葉エントリの内容を更新する。ここでは、VLD702の値が必ず“1”になる。また、送信予定時刻701は、フロー予定時刻計算回路131で新たな送信予定時刻を算出(ステップ514)した場合は、新たな時刻に更新される。
例えば、図10の二分木構造において、上記フロー番号(r,s)と対応する葉エントリがエントリ934であり、その送信予定時刻が「1」に変更されたと仮定する。この場合、二分木ソート回路171Aは、上記エントリ934を基点として子エントリを特定し、前述の規則1〜規則3に従って親エントリとなるべき子エントリを選択し、上記エントリ934から根エントリ900に向かう経路上に位置したエントリ922、911、900の内容(フロー番号、送信予定時刻、VLD)を順次に書き換える。
この例では、図10に示した二分木は、結果的に図11に示すように、エントリ922、911、900の位置に上記エントリ934の内容を記憶した構造に変化する。この場合、図6に示したソーティング情報エリア1721は、フロー情報エリア1722におけるエントリ934の現在アドレス「1100」を順次に右シフトして得られるアドレス「0110」、「0011」、「0000」に、エントリ934の新たな内容を複写した状態に変化する。
二分木ソート回路171Aは、フローソーティング(フローソーティング情報エリア1721の更新)が完了すると、優先クラスのユーザ予定時刻修正回路142に、根エントリ900の内容(暫定送信フローのフロー帯域制御情報)を送信して、根エントリ900と対応するユーザ予定時刻の修正を指示する。二分木ソート回路171Bでフローソーティングを実行した場合は、非優先クラスのユーザ予定時刻修正回路143に対して、ユーザ予定時刻の修正が指示される。これによって、図8に示したユーザ送信予定時刻の修正(532)が実行される。
(4)ユーザ別の送信予定時刻修正(ステップ532)
優先クラスのユーザ時刻修正回路142は、二分木ソート回路171Aから暫定送信フローのフロー帯域制御情報を受信すると、フロー帯域制御情報が示すVLDの値に応じて送信予定時刻を選択的に修正する。パケット受信時には、受信パケットの遅延クラスと対応するフロー制御情報メモリ172Aまたは172Bにおいて、暫定送信フローのVLDは必ず“1”となっている。この場合、ユーザ時刻修正回路142は、フロー帯域制御情報が示す送信予定時刻と、ユーザ予定時刻計算回路141から与えられたユーザ帯域制御情報が示すユーザ(r)の送信予定時刻とを比較して、遅い方(より未来)の時刻を選択し、二分木ソート回路151Aに対して、上記選択された時刻をユーザ(r)の送信予定時刻として含むユーザ帯域制御情報を送信して、ユーザソーティング(533)を指令する。
非優先クラスのユーザ予定時刻修正回路143も、優先クラスのユーザ時刻修正回路142と同様の規則で送信予定時刻を修正し、二分木ソート回路151Bにユーザソーティングを指令する。
(5)ユーザソーティング(ステップ533)
ユーザソーティング部150A、150Bでは、ユーザ情報エリア1522の登録エントリを送信予定時刻順にソーティングして、パケットバッファ部110に送信パケットをもつユーザのうち、最も早くパケット送信すべきユーザをそれぞれの遅延クラスの代表ユーザ(暫定送信ユーザ)として決定する。フローソーティングと同様の理由で、ユーザ(r)のパケット受信によってユーザ別の送信予定時刻が更新されると、受信パケットの遅延クラスにおける暫定送信ユーザが入れ替わる可能性がある。
そこで、受信パケットが優先クラスの場合は、優先クラスの二分木ソート回路151Aが、優先クラスユーザ予定時刻修正回路142から受信したユーザ帯域制御情報に基づいて、ユーザ制御情報メモリ152Aのユーザ情報エリア1522における該当エントリの内容を書き換え、該エントリを基点として、二分木ソート回路171Aと同様のソーティング処理を実行する。受信パケットが非優先クラスの場合は、二分木ソート回路151Bが、非優先クラスユーザ予定時刻修正回路143から受信したユーザ帯域制御情報に基づいて、ユーザ制御情報メモリ152Bで上記二分木ソート回路151Aと同様の処理を実行する。
以上の動作によって、パケット中継部250からのパケット受信処理が終了する。
2.パケット送信処理600
次に、図1と図12を参照して、パケット送信制御部120が主体となって実行されるパケット送信処理について説明する。
ここでは、二分木ソート回路151Aと151Bが選択している優先クラス、非優先クラスの暫定送信ユーザをそれぞれユーザ(i)、ユーザ(j)とし、二分木ソート回路171Aが暫定送信フローとして選択しているユーザ(i)の優先クラスのフローと、二分木ソート回路171Bが暫定送信フローとして選択しているユーザ(j)の非優先クラスのフローをそれぞれフロー(i,k)、フロー(j,l)とする。また、以下の説明では、送信予定時刻が現在時刻に一致または経過していた場合に、暫定送信ユーザまたは暫定送信フローが送信可能状態にあるものとする。
(1)送信パケットの選択(ステップ601〜607)
パケット送信制御部120は、パケット送信回路270が発行するパケット送信起動信号24を受信すると、ユーザ制御情報メモリ152Aの根エントリから、優先クラスの暫定送信ユーザ(i)のVLDと送信予定時刻を読み出し、ユーザ(i)が送信可能状態になったか否かを判定する(601)。ユーザ(i)が送信可能状態になければ、ユーザ制御情報メモリ152Bの根エントリから、非優先クラスの暫定送信ユーザ(j)のVLDと送信予定時刻を読み出し、ユーザ(j)が送信可能状態になったか否かを判定する(603)。
ユーザ(i)、ユーザ(j)の双方が送信不可状態にある間は、パケット送信制御部120は、ユーザ制御情報メモリ152A、152Bの根エントリの監視を繰り返し、時間の経過に伴って、ユーザ(i)またはユーザ(j)が送信可能状態になるのを待つ。前述したようにユーザ送信予定時刻を修正(532)した結果、ユーザ(i)が送信可能状態になった時には、必然的に優先フロー(i,k)も送信可能状態となっている。同様に、ユーザ(j)が送信可能状態になった時は、フロー(j,l)も送信可能状態となっている。
パケット送信制御部120は、優先クラスの暫定送信ユーザ(i)が送信不可状態で、非優先クラスの暫定送信ユーザ(i)が送信可能状態の場合、ユーザ制御情報メモリ172Bの根エントリから、非優先クラス暫定フローのフロー番号(j,l)を特定し(604)、信号線11を介して、パケットバッファ部110に上記フロー番号(j,l)のパケット送信を指示する(608)。
パケット送信制御部120は、優先クラスの暫定送信ユーザ(i)が送信可能状態となった場合は、フロー制御情報メモリ172Aの根エントリから、優先クラスの暫定送信フローのフロー番号(i,k)を特定する(602)。本実施例では、パケット送信制御部120は、制御モードメモリ190が示す制御モードを判定する(605)。制御モードが個別指定となっていた場合、パケット送信制御部120は、制御モードメモリ190からユーザ番号iに対応する制御モードを読み出す。もし優先パケット先行モードとなっていた場合は、信号線11を介して、パケットバッファ部110に上記優先クラス暫定送信フローのフロー番号(i,k)のパケット送信を指示する(608)。
制御モードが通常モードとなっていた場合、パケット送信制御部120は、非優先クラスの暫定送信ユーザ(j)のVLDと送信予定時刻を読み出し、ユーザ(j)が送信可能状態になったか否かを判定する(606)。ユーザ(j)が送信不可状態であれば、パケットバッファ部110に優先クラス暫定送信フローのフロー番号(i,k)のパケット送信を指示する(608)。非優先クラスの暫定送信ユーザ(j)も送信可能状態となっていた場合、ユーザ(i)とユーザ(j)のうち、送信予定時刻の早い方のフロー番号を選択し(607)、パケットバッファ部110に該フロー番号のパケット送信を指示する(608)。
本実施例によれば、制御モードを優先パケット先行モードに設定しておくことによって、優先クラスユーザ(i)と非優先クラスユーザ(j)の双方が送信可能状態となった場合でも、優先クラスの暫定送信フロー(i,k)からパケットを送信できるため、非優先クラスのパケット転送による優先クラスパケットの大幅な通信遅延を防止することができる。また、制御モードを通常モードに設定しておけば、優先クラスパケットと非優先クラスパケットを送信予定時刻順に送信することができる。
パケットバッファリング部110は、パケット送信制御部120からのパケット送信指示(608)に応答して、指示されたフロー番号(i,k)または(j,l)のキューから1つの蓄積パケットを読み出し、これをパケット送信回路270に送信すると共に、上記送信パケットの内部ヘッダが示すパケット長、ユーザ番号、フロー番号および遅延クラスと、該ユーザ番号およびフロー番号と対応するキューにおける蓄積パケットの有無を示すフラグ情報とを含む送信パケット情報を信号線12に出力する。
フロー予定時刻計算回路131とユーザ予定時刻計算回路141は、上記送信パケット情報の受信に応答して、それぞれフロー別の送信予定時刻計算(610)とユーザ別の送信予定時刻計算(620)を実行する。以下の説明では、送信パケットと対応するユーザ、フロー、遅延クラスをそれぞれユーザ(t)、フロー(t,u)、遅延クラス(t,u)とする。
(2)フロー別の送信予定時刻計算(ステップ610)
送信パケット情報を受信すると、フロー予定時刻計算回路131は、送信パケットの長さLと、帯域管理テーブル180が示すフロー(t,u)の設定帯域に従って、フロー(t,u)における次パケットの送信予定時刻を計算する。次パケットの送信予定時刻の計算は、式(1)に従って算出できる。但し、フロー別の帯域が、従来技術3の4.4.2章に記載されているContinuous-State Leaky Bucket Algorithmの遵守/違反判定において、遵守と判定されるように次パケットの送信予定時刻を計算しても良い。
次パケットの送信予定時刻計算は、フロー(t,u)のキューにおける送信待ちパケットの有無にかかわらず、パケット送信の都度、実行される。送信待ちパケットが無い場合でも、次パケットの送信予定時刻を計算しておくことによって、フロー(t,u)の新たな受信パケットに対して、設定帯域を遵守したパケット送信を行うことが可能となる。尚、送信パケット長に応じた帯域制御を施すことなく、受信パケットを速やかに送信すべきフロー(t,u)については、式(2)に従って次パケットの送信予定時刻を指定すれば良い。
フロー予定時刻計算回路131は、次パケットの送信予定時刻の計算を完了すると、パケットバッファリング部110から受信した上記送信パケット情報の送信予定時刻を更新し、これをフロー帯域制御情報として、送信パケット情報が示す遅延クラス(t,u)に対応する二分木ソート回路171Aまたは171Bにフローソーティングを指令する。
(3)ユーザ別の送信予定時刻計算(ステップ620)
ユーザ予定時刻計算回路141も、パケットバッファリング部110から送信パケット情報を受信すると、送信パケットの長さLと、帯域管理テーブル180が示すユーザ(t)の契約帯域に従って、ユーザ(t)における次パケットのユーザ送信予定時刻を計算する。次パケットの送信予定時刻の計算は、式(1)に従って算出できる。ユーザ予定時刻計算回路141は、次パケットの送信予定時刻の計算を完了すると、パケットバッファリング部110から受信した上記送信パケット情報の送信予定時刻を更新し、これをユーザ帯域制御情報として、送信パケット情報が示す遅延クラス(t,u)に対応する優先クラスユーザ予定時刻修正回路142または非優先クラスユーザ予定時刻修正回路143に与える。
(4)フローソーティング(ステップ631)
二分木ソート回路171Aまたは171Bは、パケット受信時と同様、フロー予定時刻計算回路131から受信したフロー帯域制御情報に基づいて、フローソーティングを実行する。これによって、優先クラスのフロー制御情報メモリ172Aまたは非優先クラスのフロー制御情報メモリ172Bの内容が更新され、遅延クラス(t,u)の根エントリに新たな暫定送信フローのフロー帯域制御情報が書込まれる。フローソーティングが終了すると、二分木ソート回路171Aまたは171Bは、パケット受信時と同様に、遅延クラス(t,u)に対応するユーザ予定時刻修正回路142または143に、新たな暫定送信フローのフロー帯域制御情報に従ったユーザ送信予定時刻の修正を指示する。
(5)ユーザ送信予定時刻修正(ステップ632)
ユーザ予定時刻修正回路142または143は、二分木ソート回路171Aまたは171Bから受信したフロー帯域制御情報に応じて、ユーザ帯域制御情報が示す送信予定時刻を修正する。VLD=“1”の場合は、パケット受信時と同様の規則で送信予定時刻が修正される。
今回のパケット送信によって、ユーザ(t)の遅延クラス(t,u)において送信待ち状態のパケットが皆無となった時、規則(3)に従ってフローソーティングすると、暫定送信フローのVLDが“0”となる可能性がある。VLD=“0”の場合も、パケット受信時と同様、ユーザ帯域制御情報が示す送信予定時刻とフロー帯域制御情報が示す送信予定時刻のうち、遅い方をユーザ(t)の送信予定時刻として選択することによって、次に受信された遅延クラス(t,u)のパケットに対して、ユーザ契約帯域とフロー別の設定帯域の双方を遵守したパケット送信が可能となる。
尚、VLD=“0”の場合、現在のフロー送信予定時刻を経過した後は、ユーザ帯域制御情報が示す送信予定時刻が、式(2)に従って現在時刻+1となるため、遅延クラス(t,u)の次の受信パケットは、新たな暫定送信フローの所属パケットとして、直ちに送信することが可能となる。この場合、式(2)に代えて、ユーザ送信予定時刻に現在時刻そのものを設定してもよい。
送信予定時刻の修正が完了すると、パケット受信時と同様の手順で、ユーザソーティング(633)が実行される。
本実施例のシェーピング部100によれば、図13に示したように、非優先クラスのパケットP1、P2、P3と、優先クラスのパケットP4が、それぞれ送信予定時刻t1、t2、t3、t4を割当てられ、時刻t1でパケットP1の送信が開始された場合でも、パケットP1の送信が完了した時点t5で、パケットP4の所属ユーザ4と所属フローをそれぞれ優先クラスの暫定送信ユーザ、暫定送信フローとして選択できる。従って、パケット送信制御部120で、優先パケット先行モードの暫定送信ユーザ選択を実行することによって、図15に示すように、送信予定時刻の早い非優先クラスの先着パケットP2、P3が存在するにも関わらず、パケットP1の次にパケットP4を優先的に送信し、転送遅延を最小限に抑えることが可能となる。
尚、図13において、パケットP1が短く、その送信が時刻t3で完了したと仮定すると、時刻t3では、優先パケットP4は送信可能状態となっていないため、非優先クラスのパケットP2、P3のうち、送信予定時刻の早いパケットP2が選択され、送信パケットとなる。この場合、優先パケットP4の送信開始は、パケットP2の送信が完了する時刻t7まで遅れるが、優先パケットP4の送信遅延時間は、送信予定時刻t4に送信中の1パケットで必要とする送信時間を超えることはない。
以上の実施例では、ユーザ毎の契約帯域と、各ユーザが契約帯域の範囲内で多重化したフロー別の設定帯域との二階層の帯域制御で転送パケットをシェーピングする例について説明したが、シェーピングにおける帯域の階層数は3以上であっても良い。3帯域層のシェーピングは、例えば、ユーザが企業の場合、キャリアが企業に保証した契約帯域(上位層帯域)を複数のサブ帯域(中間層帯域)に分割し、これらのサブ階層を企業内の複数の部門に割当て、各部門が割当てサブ帯域内で複数のフロー(下位層帯域)を多重化する形式の階層別帯域制御を行う場合に必要となる。
一般に、n帯域層のシェーピング(n:自然数)を行う場合には、送信予定時刻計算部とソーティング部(優先クラス用と非優先クラス用)を各帯域層に対応させてn組用意し、実施例で示した2帯域層のシェーピングと同様の動作を行えば良い。即ち、第i帯域層の送信予定時刻計算部では、パケットの送受信の都度、第i階層の保証帯域に基づいた独自の送信予定時刻を計算する。第i帯域層のソーティング部は、第i帯域層のソーティング情報エリアにおいて、送受信パケットと対応する1つの帯域制御情報エントリの送信予定時刻を変更した後、ソーティングを実行し、その帯域層で最先に送信すべきパケットが所属する帯域識別子を決定する。必要があれば、予定時刻修正回路によって、各帯域層の送信予定時刻をそれより下位の帯域層で計算した送信予定時刻に応じて修正する。
また、パケット送信制御部では、最上位帯域層のソーティング部で選択した優先クラス、非優先クラスの制御情報に従って、遅延クラス毎に送信すべきパケットの有無と送信予定時刻をチェックし、パケットが送信可能状態か否かを判定する。優先クラスに送信可能状態なパケットがあれば、最下位帯域層のソーティング部で選択した優先クラスの帯域識別子に従って、送信パケットを特定する。
優先クラスに送信可能なパケットがなかった場合は、非優先クラスでパケットが送信可能状態か否かを判定し、送信可能状態であれば、最下位帯域層のソーティング部で選択した非優先クラスの帯域識別子に従って、送信パケットを特定する。優先クラス、非優先クラスの双方で、パケットが送信不可状態になっていた場合は、新たなパケットの受信による送信予定時刻と帯域識別子の変更、または時間の経過に伴って、優先クラス、非優先クラスの何れかでパケットが送信可能状態になるのを待つ。
実施例では、遅延クラスが優先クラスと非優先クラスからなっているが、遅延クラスが3クラス以上になっていてもよい。この場合は、各帯域層に、遅延クラス数に応じた複数のソーティング部を用意し、最下位の帯域層以外の送信予定時刻計算部に、遅延クラス数に応じた複数の予定時刻修正回路を用意する。また、パケット送信制御部では、優先度の高い順に、パケットが送信可能状態か否かを判定するようにすればよい。
実施例では、各インタフェース部210のフロー検出部241が、パケット受信回路230から受信した入力パケットのヘッダ情報と入力回線番号に基づいて、各パケットと対応するユーザ番号(契約帯域識別子)と、フロー番号(フロー識別子)と、遅延クラスを特定した。しかしながら、フロー検出部241が参照するフロー定義テーブルにおいて、複数のフローを予めグループ化し、各グループにフロー集合識別子を付与しておき、フロー検出部241が、フロー番号の代わりに、フロー集合識別子を信号線22に出力するようにしてもよい。この場合、各ユーザの契約帯域内には、それぞれが少なくとも1つのフローを含む複数のフロー集合が多重化され、帯域管理テーブル180には、フロー集合識別子と対応してシェーピングすべき帯域が設定される。
図1に示したシェーピング部100において、フロー別の帯域設定を省略し、契約帯域だけの一階層の帯域制御で送信パケットをシェーピングする場合は、パケットバッファリング部110におけるフロー別のキューイングと、フロー送信予定時刻計算およびフローソーティングが不要となる。このように、シェーピング機能を一階層の帯域制御に縮退した場合、図16に示すように、図1に示した構成からフロー送信予定時刻計算部130を除去できる。また、フロー検出部241が参照するフロー定義テーブルには、フロー識別子またはフロー集合識別子を定義しておく必要はなく、フロー検出部241は、入力パケットのヘッダ情報と入力回線番号に基づいて、各パケットと対応するユーザ番号と遅延クラスを特定できればよい。
図16に示すシェーピング部100では、パケットバッファリング部110は、パケット中継部250からの受信パケットを内部ヘッダが示す遅延クラス毎に、ユーザ番号別にキューイングしておき、パケット送信時には、パケット送信制御部120から指定されたユーザ番号と遅延クラスに従って、該当キューから到着順に1つの蓄積パケットを読み出せばよい。
フロー送信予定時刻計算部130が除去された結果、図1に示した優先フローソーティング部170Aの二分木ソート回路171Aと、非優先フローソーティング部170Bの二分木ソート回路171Bは、それぞれフロー制御情報メモリ177A、177Bを読み書きするためのメモリ制御回路176A、176Bに置き換えられる。また、フロー制御情報メモリ177A、177Bには、ソーティング情報エリアは不要であり、それぞれのフロー情報エリアで、ユーザ毎に優先クラスまたは非優先クラスの蓄積パケットの有無(VLD)を示す構成となる。メモリ制御回路176A、176Bは、パケット送受信の都度、信号線12、13を介して、パケットバッファリング部110から送受信パケットのユーザ番号と遅延クラス、必要に応じて蓄積パケットの有無情報を受信し、フロー制御情報メモリ177Aまたは177Bにおける上記ユーザ番号に該当するVLDの値を更新する。
パケット受信時には、図8に示したフローチャートから、フロー別の送信時刻計算(510)、フローソーティング(531)、ユーザ送信予定時刻修正(532)が省略される。パケットバッファリング部110が、信号線13に、受信パケットのユーザ番号と遅延クラスを送出すると、遅延クラスが優先クラスの場合は、メモリ制御回路176Aが、フロー制御情報メモリ177Aの上記ユーザ番号と対応するエントリのVLDを“1”にし、遅延クラスが非優先クラスの場合は、メモリ制御回路176Bが、フロー制御情報メモリ177Bに対して、これと同様の動作を実行する。ユーザ送信予定時刻計算回路140は、信号線13からのユーザ番号と遅延クラスの受信に応答して、図1の実施例と同様の動作を実行する。
パケット送信時には、パケット受信時と同様、図12に示したフローチャートから、フロー別の送信時刻計算(610)、フローソーティング(631)、ユーザ送信予定時刻修正(632)が省略される。メモリ制御回路176A、176Bは、パケットバッファリング部110が信号線12に出力する送信パケットのユーザ番号、遅延クラス、蓄積パケットの有無情報に基づいて、フロー制御情報メモリ177A、177Bの該当エントリのVLDを更新する。
本発明を適用したシェーピング部100の1実施例を示す構成図。 本発明のシェーピング部100が適用されるルータ200の1例を示す構成図。 ルータ200の入力パケットのフォーマットを示す図。 ルータの内部パケットのフォーマットを示す図。 シェーピング部100が備える帯域管理テーブルの構成図。 フロー制御情報メモリ172Aの内容とフローソーティング用の二分木との関係を示す図。 ユーザ制御情報メモリ152Aの内容とユーザソーティング用の二分木との関係を示す図。 シェーピング部100のパケット受信時の動作を示すフローチャート。 図8におけるフロー別の送信予定時刻計算510の詳細を示す示すフローチャート。 フローソーティング用の二分木の構造を示す図。 送信予定時刻更新に伴うフローソーティング後の二分木の構造を示す図。 シェーピング部100のパケット送信時の動作を示すフローチャート。 発明の解決課題を説明するための通常パケットP1〜P3と低遅延要求パケットP4の送信予定時刻の関係を示す図。 従来のシェーピング装置におけるパケットP1〜P4の送信時刻を示す図。 本発明のシェーピング装置によるパケットP1〜P4送信時刻を示す図。 本発明によるシェーピング部100の他の実施例を示す構成図。
符号の説明
100:シェーピング部、110:パケットバッファリング部、
120:パケット送信制御部、130:フロー送信予定時刻計算部、
140:ユーザ送信予定時刻計算部、150A:優先クラスユーザソーティング部、
150B:非優先クラスユーザソーティング部、170A:優先フローソーティング部、170B:非優先フローソーティング部、190:制御モードメモリ、
210:インタフェース部、230:パケット受信回路、240:ヘッダ処理部、
270:パケット送信回路、290:制御部。

Claims (13)

  1. それぞれが遅延クラスと帯域識別情報を示す内部ヘッダを備えた複数の受信パケットを一時的に蓄積し、帯域識別情報に応じて各パケットの送信タイミングを制御するシェーピング装置であって、
    パケット送信制御部と、
    メモリ内に複数のキューを形成し、各受信パケットをその内部ヘッダが示す遅延クラスと帯域識別情報とによって決まる何れかのキューに蓄積しておき、上記パケット送信制御部からの送信指令で特定されるキューから1つの蓄積パケットを出力するパケットバッファリング部と、
    それぞれが優先度の異なる特定の遅延クラスと対応付けられ、各受信パケットの内部ヘッダに帯域識別情報として含まれる契約帯域識別子別にパケット送信制御情報を記憶した複数の契約帯域制御情報部とからなり、
    上記各契約帯域制御情報部が、上記パケット送信制御情報に基づいて、それぞれが上記パケットバッファリング部に送信待ちパケットをもつ複数の契約帯域のうち、最も早くパケット送信すべき契約帯域を選択して、該契約帯域を遅延クラス代表契約帯域として記憶するクラス代表選択部を有し、
    上記パケット送信制御部が、上記各契約帯域制御情報部が示す遅延クラス代表契約帯域のパケット送信制御情報に基づいて、パケット送信すべき契約帯域を選択し、該契約帯域のパケット送信制御情報が示す送信タイミングで、上記パケットバッファリング部にパケットの送信指令を発行することを特徴とするシェーピング装置。
  2. 各受信パケットの内部ヘッダが、帯域識別情報として契約帯域識別子とフロー識別子とからなる階層化帯域識別子を含み、シェーピング装置が、
    それぞれが優先度の異なる特定の遅延クラスと対応付けられ、各受信パケットの内部ヘッダに帯域識別情報として含まれる契約帯域識別子毎に、フロー識別子別のパケット送信制御情報を記憶した複数のフロー制御情報部を有し、
    前記パケット送信制御部が、前記選択された契約帯域のパケット送信制御情報が示す送信タイミングで、該契約帯域と対応するフロー制御情報部が示すパケット送信制御情報に従って、前記パケットバッファリング部にパケットの送信指令を発行することを特徴とする請求項1に記載のシェーピング装置。
  3. 各受信パケットの内部ヘッダが、帯域識別情報として契約帯域識別子とフロー集合識別子とからなる階層化帯域識別子を含み、シェーピング装置が、
    それぞれが優先度の異なる特定の遅延クラスと対応付けられ、各受信パケットの内部ヘッダに帯域識別情報として含まれる契約帯域識別子毎に、フロー集合識別子別のパケット送信制御情報を記憶した複数のフロー集合制御情報部を有し、
    前記パケット送信制御部が、前記選択された契約帯域のパケット送信制御情報が示す送信タイミングで、該契約帯域と対応するフロー集合制御情報部が示すパケット送信制御情報に従って、前記パケットバッファリング部にパケットの送信指令を発行することを特徴とする請求項1に記載のシェーピング装置。
  4. 前記各フロー帯域制御情報部が、前記パケット送信制御情報に基づいて、それぞれが上記パケットバッファリング部に送信待ちパケットをもつ複数のフローのうち、最も早くパケット送信すべきフローを選択して、該フローを遅延クラス代表フローとして記憶するクラス代表フロー選択部を有し、
    前記パケット送信制御部が、前記選択された契約帯域のパケット送信制御情報が示す送信タイミングで、該契約帯域と対応するフロー制御情報部が示す遅延クラス代表フローのパケット送信制御情報に従って、前記パケットバッファリング部にパケットの送信指令を発行することを特徴とする請求項2に記載のシェーピング装置。
  5. 前記各フロー集合制御情報部が、前記パケット送信制御情報に基づいて、それぞれが上記パケットバッファリング部に送信待ちパケットをもつ複数のフロー集合のうち、最も早くパケット送信すべきフロー集合を選択して、該フロー集合を遅延クラス代表フロー集合として記憶するクラス代表フロー集合選択部を有し、
    前記パケット送信制御部が、前記選択された契約帯域のパケット送信制御情報が示す送信タイミングで、該契約帯域と対応するフロー集合制御情報部が示す遅延クラス代表フロー集合のパケット送信制御情報に従って、前記パケットバッファリング部にパケットの送信指令を発行することを特徴とする請求項3に記載のシェーピング装置。
  6. 各受信パケットの内部ヘッダが、帯域識別情報として、契約帯域識別子とフロー識別子との間に少なくとも1つの中間帯域識別子をもつ階層化帯域識別子を含み、シェーピング装置が、
    それぞれが優先度の異なる特定の遅延クラスと対応付けられ、各受信パケットの内部ヘッダに帯域識別情報として含まれる契約帯域識別子毎に、中間識別子別のパケット送信制御情報を記憶した複数の中間帯域制御情報部と、
    それぞれが優先度の異なる特定の遅延クラスと対応付けられ、各受信パケットの内部ヘッダに帯域識別情報として含まれる中間帯域識別子毎に、フロー識別子別のパケット送信制御情報を記憶した複数のフロー制御情報部を有し、
    前記各中間帯域制御情報部が、パケット送信制御情報に基づいて、それぞれが上記パケットバッファリング部に送信待ちパケットをもつ複数の中間帯域のうち、最も早くパケット送信すべき中間帯域を選択して、該中間帯域を遅延クラス代表中間帯域として記憶するクラス代表中間帯域選択部を有し、
    前記各フロー制御情報部が、前記パケット送信制御情報に基づいて、それぞれが上記パケットバッファリング部に送信待ちパケットをもつ複数のフローのうち、最も早くパケット送信すべきフローを選択して、該フローを遅延クラス代表フローとして記憶するクラス代表フロー選択部を有し、
    前記パケット送信制御部が、前記選択された契約帯域のパケット送信制御情報が示す送信タイミングで、該契約帯域と対応する遅延クラス代表中間帯域に基づいて遅延クラス代表フローを特定し、該遅延クラス代表フローのフロー制御情報部が示すパケット送信制御情報に従って、前記パケットバッファリング部にパケットの送信指令を発行することを特徴とする請求項1に記載のシェーピング装置。
  7. 前記パケットバッファリング部によるパケットの送信時に、該送信パケットの属するフローにおけるパケット送信予定時刻を計算し、上記パケットバッファリング部によるパケットの受信時に、該受信パケットの属するフローにおける送信待ちパケットの有無と既存のパケット送信予定時刻とが所定の条件を満たした時、パケット送信予定時刻を計算する送信予定時刻計算回路を有し、
    前記フロー制御情報部が、上記送信予定時刻計算回路で計算されたパケット送信予定時刻を上記送受信パケットのフロー識別子と対応するパケット送信制御情報として記憶し、前記クラス代表フロー選択部が、送信待ちパケットを持つ複数のフローのうち、上記パケット送信予定時刻が最も早いフローを前記遅延クラス代表フローとして選択することを特徴とする請求項4に記載のシェーピング装置。
  8. 前記パケットバッファリング部によるパケットの送信時に、該送信パケットの属するフロー集合におけるパケット送信予定時刻を計算し、上記パケットバッファリング部によるパケットの受信時に、該受信パケットの属するフロー集合における送信待ちパケットの有無と既存のパケット送信予定時刻とが所定の条件を満たした時、パケット送信予定時刻を計算する送信予定時刻計算回路を有し、
    前記フロー制御情報部が、上記送信予定時刻計算回路で計算されたパケット送信予定時刻を上記送受信パケットのフロー集合識別子と対応するパケット送信制御情報として記憶し、前記クラス代表フロー選択部が、送信待ちパケットを持つ複数のフロー集合のうち、上記パケット送信予定時刻が最も早いフロー集合を前記遅延クラス代表フロー集合として選択することを特徴とする請求項5に記載のシェーピング装置。
  9. 前記パケットバッファリング部によるパケットの送信時に、該送信パケットの属する契約帯域におけるパケット送信予定時刻を計算し、上記パケットバッファリング部によるパケットの受信時に、該受信パケットの属する契約帯域における既存のパケット送信予定時刻とが所定の条件を満たした時、パケット送信予定時刻を計算する送信予定時刻計算回路を有し、
    前記契約帯域制御情報部が、上記送信予定時刻計算回路で計算されたパケット送信予定時刻を上記送受信パケットの契約帯域識別子と対応するパケット送信制御情報として記憶し、前記クラス代表選択部が、送信待ちパケットを持つ複数の契約帯域のうち、上記パケット送信予定時刻が最も早い契約帯域を前記遅延クラス代表契約帯域として選択することを特徴とする請求項1〜8の何れかに記載のシェーピング装置。
  10. 前記契約帯域制御情報部に記憶されるパケット送信制御情報が、契約帯域識別子と対応して送信待ちパケットの有無を示す有効性フラグを含み、
    前記クラス代表選択部が、前記契約帯域識別子別に記憶されたパケット送信制御情報を有効性フラグの状態とパケット送信予定時刻に応じてソーティングすることによって、前記遅延クラス代表契約帯域を選択することを特徴とする請求項9に記載のシェーピング装置。
  11. 前記クラス代表選択部が、前記パケット送信制御情報のソーティング結果を二分木構造で記憶するソーティング情報メモリを有し、該ソーティング情報メモリの根エントリに前記遅延クラス代表契約帯域のパケット送信制御情報を保持することを特徴とする請求項10に記載のシェーピング装置。
  12. 前記送信時刻計算回路で計算された各契約帯域におけるパケット送信予定時刻を該契約帯域識よりも下位の帯域用のパケット送信制御情報として計算されたパケット送信予定時刻と整合させるための時刻修正手段を備えたことを特徴とする請求項9〜請求項11の何れかに記載のシェーピング装置。
  13. 制御モードを指定するためのモードメモリを有し、
    前記パケット送信制御部が、上記モードメモリが指定する制御モードに従って、前記複数の遅延クラス代表契約帯域の中からパケット送信すべき契約帯域を選択することを特徴とする請求項1〜11の何れかに記載のシェーピング装置。
JP2004047522A 2004-02-24 2004-02-24 優先パケットの遅延を最小化するシェーピング装置 Expired - Fee Related JP4118824B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004047522A JP4118824B2 (ja) 2004-02-24 2004-02-24 優先パケットの遅延を最小化するシェーピング装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004047522A JP4118824B2 (ja) 2004-02-24 2004-02-24 優先パケットの遅延を最小化するシェーピング装置

Publications (2)

Publication Number Publication Date
JP2005244290A true JP2005244290A (ja) 2005-09-08
JP4118824B2 JP4118824B2 (ja) 2008-07-16

Family

ID=35025608

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004047522A Expired - Fee Related JP4118824B2 (ja) 2004-02-24 2004-02-24 優先パケットの遅延を最小化するシェーピング装置

Country Status (1)

Country Link
JP (1) JP4118824B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007158640A (ja) * 2005-12-05 2007-06-21 Nec Access Technica Ltd 帯域制限方法および装置、それを用いたネットワーク通信機器
JP2007201965A (ja) * 2006-01-30 2007-08-09 Alaxala Networks Corp 送信制御機能を備えるパケット中継装置
JP2008011539A (ja) * 2006-06-27 2008-01-17 Samsung Electronics Co Ltd 通信システムにおけるデータパケットをスケジューリングする装置及び方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4882744B2 (ja) 2004-03-30 2012-02-22 東レ株式会社 止痒剤
PE20060723A1 (es) 2004-11-04 2006-08-29 Toray Industries Derivados de morfina como agentes analgesicos

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007158640A (ja) * 2005-12-05 2007-06-21 Nec Access Technica Ltd 帯域制限方法および装置、それを用いたネットワーク通信機器
JP2007201965A (ja) * 2006-01-30 2007-08-09 Alaxala Networks Corp 送信制御機能を備えるパケット中継装置
JP4547339B2 (ja) * 2006-01-30 2010-09-22 アラクサラネットワークス株式会社 送信制御機能を備えるパケット中継装置
JP2008011539A (ja) * 2006-06-27 2008-01-17 Samsung Electronics Co Ltd 通信システムにおけるデータパケットをスケジューリングする装置及び方法
JP4559451B2 (ja) * 2006-06-27 2010-10-06 三星電子株式会社 通信システムにおけるデータパケットをスケジューリングする装置及び方法
US7864778B2 (en) 2006-06-27 2011-01-04 Samsung Electronics Co., Ltd Apparatus and method of scheduling data packet in a communication system

Also Published As

Publication number Publication date
JP4118824B2 (ja) 2008-07-16

Similar Documents

Publication Publication Date Title
US7672324B2 (en) Packet forwarding apparatus with QoS control
US6418477B1 (en) Communication network
JP3436871B2 (ja) 通信資源管理方法及びノード装置
AU765396B2 (en) Allocating buffers for data transmission in a network communication device
US6772219B1 (en) Message relaying scheme based on switching in units of flows
US7212490B1 (en) Dynamic load balancing for dual ring topology networks
US6259699B1 (en) System architecture for and method of processing packets and/or cells in a common switch
EP1035751A2 (en) Adaptive routing system and method for Qos packet networks
US20020167955A1 (en) Packet transfer device and packet transfer method adaptive to a large number of input ports
EP1783969A1 (en) Method of controlling QoS in IP network using router control and multi-path routing
US20010053149A1 (en) Method and system for quality of service (QoS) support in a packet-switched network
JP2007201965A (ja) 送信制御機能を備えるパケット中継装置
US20080247418A1 (en) Method and Device for Controlling Access to a Communications Network
AU5436801A (en) Router device and priority control method for use in the same
JP2010258844A (ja) 通信システム
JPH1174909A (ja) 資源を共有するシステムにおけるサービス要求受付管理方法
JP4118824B2 (ja) 優先パケットの遅延を最小化するシェーピング装置
US8072885B2 (en) Traffic shaping circuit, terminal device and network node
US11463370B2 (en) Scalable deterministic services in packet networks
JP2000324177A (ja) 網間接続方法及び装置
JP5613261B2 (ja) 通信ネットワーク内で通信パイプを割り当てる方法および割当てユニット
Joung et al. Scalable Flow Isolation with Work Conserving Stateless Core Fair Queuing for Deterministic Networking
KR20010000087A (ko) 고속 통합 서비스망에서 wfq의 에뮬레이션을 통한 공정패킷 스케쥴링 방법 및 그 공정 패킷 스케쥴러
US7184405B1 (en) Method for setting up a communication link in a telecommunication network
Zhu et al. A new scheduling scheme for resilient packet ring networks with single transit buffer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060420

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070821

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071022

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: 20080401

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080423

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110502

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110502

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120502

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130502

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees