(57)【要約】      （修正有）【課題】パケット遅延変動を効果的に低減するパケット中継装置及びパケット送信装置を提供する。【解決手段】パケット中継装置は、パケットを蓄積するバッファと、前記バッファに入力される前記パケットのパケット長及びパケット間隔に基づき、前記バッファからの読み出し遅延時間を算出する遅延算出部３３と、前記遅延算出部により算出された前記読み出し遅延時間に従って、前記バッファから読み出された前記パケットを遅延させる遅延制御部４とを有する。【選択図】図１０
2014239343.tif 000002
【特許請求の範囲】
【請求項１】
パケットを蓄積するバッファと、
前記バッファに入力される前記パケットのパケット長及びパケット間隔に基づき、前記バッファからの読み出し遅延時間を算出する遅延算出部と、
前記遅延算出部により算出された前記読み出し遅延時間に従って、前記バッファから読み出された前記パケットを遅延させる遅延制御部とを有することを特徴とするパケット中継装置。
【請求項２】
前記遅延算出部により算出された前記読み出し遅延時間を示す遅延情報を、前記パケットに付与する付与処理部を、さらに有し、
前記遅延制御部は、前記パケットから前記遅延情報を抽出することにより、前記読み出し遅延時間を取得することを特徴とする請求項１に記載のパケット中継装置。
【請求項３】
前記付与処理部は、前記バッファから前記パケットを読み出し、読み出した前記パケットに前記遅延情報を付与することを特徴とする請求項２に記載のパケット中継装置。
【請求項４】
前記遅延制御部は、
前記バッファから読み出された前記パケットを、優先パケット及び非優先パケットに分けて蓄積する複数のキューと、
前記複数のキューの１つを選択し、選択したキューから前記パケットを読み出す読み出し処理部と、
前記読み出し処理部に、前記複数のキューのうち、前記パケットの読み出し対象として選択するキューと、該キューから前記パケットを読み出すタイミングとを指示するタイミング制御部とを有し、
前記タイミング制御部は、前記優先パケットの前記読み出し遅延時間に従って、前記優先パケットが読み出される前記タイミングを決定することを特徴とする請求項１乃至３の何れかに記載のパケット中継装置。
【請求項５】
前記タイミング制御部は、前記優先パケットが、前記読み出し処理部が読み出し中の前記非優先パケットにより待機させられる待機遅延時間と、前記優先パケットの前記読み出し遅延時間とに従って、前記優先パケットが読み出される前記タイミングを決定することを特徴とする請求項４に記載のパケット中継装置。
【請求項６】
前記複数のキューから読み出された前記パケットを蓄積する出力側バッファを、さらに有し、
前記タイミング制御部は、前記出力側バッファにおける前記優先パケットの読み出し遅延時間を、決定した前記タイミングに基づき算出し、該算出した読み出し遅延時間に従って、決定した前記タイミングを補正することを特徴とする請求項５に記載のパケット中継装置。
【請求項７】
前記タイミング制御部は、前記優先パケットの前記読み出し遅延時間が閾値より大きい場合、前記複数のキューのうち、前記優先パケットを蓄積しているキューに、前記優先パケットを廃棄させることを特徴とする請求項４乃至６の何れかに記載のパケット中継装置。
【請求項８】
外部のバッファに入力されるパケットのパケット長及びパケット間隔に基づき算出された前記バッファからの読み出し遅延時間に従って、前記バッファから読み出された前記パケットを遅延させる遅延制御部を有することを特徴とするパケット送信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、パケット中継装置及びパケット送信装置に関する。
【背景技術】
【０００２】
時分割多重（TDM：Time Division Multiplex）方式のネットワークにおいて、複数の伝送装置は、連続して伝送されるデータ信号からクロックを再生することにより、互いに時刻同期や周波数同期を行う。時分割多重方式による同期伝送方式の標準規格としては、例えばＳＤＨ（Synchronous Digital Hierarchy）、及びＳＯＮＥＴ（Synchronous Optical NETwork）が挙げられる。
【０００３】
インターネットの普及に伴い、時分割多重方式に代えて、ＩＰ（Internet Protocol）に対応するネットワークが普及している。ＩＰにおいて、データ信号は、時分割多重方式とは異なり、パケット単位で非同期に伝送されるため、異なる方式によって時刻同期や周波数同期が行われる。
【０００４】
ＩＰに基づく時刻同期及び周波数同期の方式の標準規格としては、ＮＴＰ（Network Time Protocol）やＩＥＥＥ１５８８−２００８（IEEE：The Institute of Electrical and Electronics Engineers， Inc.）などが挙げられる。ＩＥＥＥ１５８８−２００８に規定された技術は、マイクロ秒単位の精度による時刻同期が可能とされ、無線ネットワーク内の基地局間における同期処理などへの適用が期待される。
【０００５】
ＩＰの場合、同期処理は、サーバ装置と複数のクライアント装置との間において、タイムスタンプ（時刻情報）を含む同期メッセージを交換することによって両者間の伝送遅延時間を測定し、周波数及び時刻のオフセット量を推定ことにより行われる。同期メッセージは、ネットワーク内に設けられたパケット中継装置（例えばレイヤ２スイッチやルータ）などを介して交換される。なお、本明細書において、同期メッセージを含むパケットを、単に「同期メッセージ」と表記する。
【０００６】
パケット中継装置は、同期メッセージだけではなく、他のトラフィックのパケットも同様に中継する。このため、パケット中継装置の送信処理において、同期メッセージは、同一ポートから送信される他のパケットと競合を生ずることがある。競合が発生した場合、同期メッセージは、優先的な送信対象として選択されても、競合する他のパケットの送信処理（キューからの読み出し）が既に開始されていれば、その送信処理が完了するまで待機させられる。
【０００７】
したがって、同期メッセージのネットワーク内の伝送遅延時間は、他のトラフィックからの影響によって変動する。この遅延変動は、ＰＤＶ（Packet Delay Variation）と呼ばれ、時刻同期及び周波数同期の精度を劣化させる要因となり得る。
【０００８】
これに対し、例えば特許文献１には、優先パケットを、非優先パケットとは別の優先キューに蓄積し、この優先キューに、最大長のユーザパケットの読み出し処理時間以上の固定遅延時間を設けることにより、遅延を調整する技術が開示されている。また、特許文献２には、時刻同期パケットを、他のデータパケットより優先して割り込ませ、最大長のデータパケットの送信時間以上の遅延時間分だけ遅延させて送信することにより、遅延を調整する技術が開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００８−２２１３１号公報
【特許文献２】特開２０１２−３４２２４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
パケット中継装置のパケット処理方式は、パケットを一時的にバッファに蓄積して処理するストアアンドフォワード方式と、バッファを用いずに、パケットを、受信した順序に従って処理するカットスルー方式とが存在する。ストアアンドフォワード方式のパケット中継装置では、ＱｏＳ（Quality of Service）を制御するパケット送信部のキューとは別に、多くのバッファが他の処理部（例えばパケットの出力ポートの選択処理部など）に設けられている。
【００１１】
このバッファでは、同期メッセージより先に蓄積された他のユーザパケットによる遅延の問題が生ずる。つまり、バッファに入力された同期メッセージは、既に蓄積されている他のユーザパケットがバッファから出力されるまで読み出されないので、当該ユーザパケットの読み出しが完了するまでの待機時間が生ずる。とりわけ、バッファ数が多い場合や、同期メッセージより先に蓄積されたユーザパケットのパケット長（データ量）が長い（例えば９６００（Ｂｙｔｅ））場合、ＰＤＶに対する待機時間の影響は深刻である。
【００１２】
この問題に対して、上記の特許文献１に開示された技術は、パケット送信部のキューにおいて生ずるパケット間の競合による遅延に基づいて全体の遅延を調整するが、上記のバッファにおいて生ずる遅延には対応できない。これは、上記の特許文献２に開示された技術も同様である。なお、このような問題は、イーサネット（登録商標、以下同様）フレームに限られず、ＩＰ（Internet Protocol）パケットなどの他のパケットについても同様に存在する。
【００１３】
そこで本件は上記の課題に鑑みてなされたものであり、パケット遅延変動を効果的に低減するパケット中継装置及びパケット送信装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本明細書に記載のパケット中継装置は、パケットを蓄積するバッファと、前記バッファに入力される前記パケットのパケット長及びパケット間隔に基づき、前記バッファからの読み出し遅延時間を算出する遅延算出部と、前記遅延算出部により算出された前記読み出し遅延時間に従って、前記バッファから読み出された前記パケットを遅延させる遅延制御部とを有する。
【００１５】
本明細書に記載のパケット送信装置は、外部のバッファに入力されるパケットのパケット長及びパケット間隔に基づき算出された前記バッファからの読み出し遅延時間に従って、前記バッファから読み出された前記パケットを遅延させる遅延制御部を有する。
【発明の効果】
【００１６】
本明細書に記載のパケット中継装置及びパケット送信装置は、パケット遅延変動を効果的に低減するという効果を奏する。
【図面の簡単な説明】
【００１７】
【図１】同期メッセージを中継する複数のパケット中継装置を含むネットワークの一例を示す構成図である。
【図２】サーバ装置及びクライアント装置の間における同期メッセージの送受信シーケンスの一例を示すラダーチャートである。
【図３】図２に示されたシーケンスにおいて用いられる同期メッセージの構成例を示す構成図である。
【図４】同期メッセージのメッセージ種別の一例を示す一覧表である。
【図５】パケット中継装置において生ずる遅延時間を示すラダーチャートである。
【図６】伝送遅延時間の分布の例を示すグラフである。
【図７】実施例に係るパケット中継装置の機能構成を示す構成図である。
【図８】パケット中継装置内のパケットの経路を示す構成図である。
【図９】従来例における伝送遅延時間の分布の例を示すグラフである。
【図１０】第１実施例の入力処理部の機能構成を示す構成図である。
【図１１】同期メッセージを含むレイヤ３のパケットの構成の一例を示す構成図である。
【図１２】同期メッセージを含むレイヤ２のフレームの構成の一例を示す構成図である。
【図１３】バッファにおける読み出し処理の遅延を示すタイムチャートである。
【図１４】複数のユーザパケットによる読み出し処理の遅延を示すタイムチャートである。
【図１５】パケット間隔の変化を示すタイムチャートである。
【図１６】タイミング制御部の動作を示すフローチャートである。
【図１７】第１実施例の出力処理部の機能構成を示す構成図である。
【図１８】タイミング制御部の動作を示すフローチャートである。
【図１９】第１実施例に係るパケット中継装置において生ずる遅延時間を示すラダーチャートである。
【図２０】第２実施例の入力処理部の機能構成を示す構成図である。
【図２１】第３実施例の出力処理部の機能構成を示す構成図である。
【図２２】タイミング制御部の動作を示すフローチャートである。
【図２３】第３実施例に係るパケット中継装置において生ずる遅延時間を示すラダーチャートである。
【図２４】第４実施例の出力処理部の機能構成を示す構成図である。
【図２５】読み出しタイミングの補正処理の動作を示すフローチャートである。
【図２６】読み出しタイミングの補正処理の一例を示すタイムチャートである。
【図２７】第５実施例の出力処理部の機能構成を示す構成図である。
【図２８】第６実施例の出力処理部の機能構成を示す構成図である。
【図２９】タイミング制御部の動作を示すフローチャートである。
【図３０】遅延制御部の動作の一例を示すタイムチャートである。
【発明を実施するための形態】
【００１８】
図１には、同期メッセージを中継する複数のパケット中継装置を含むネットワークの一例が示されている。このネットワークは、スマートフォンや携帯電話機などの無線通信端末の通信に用いられる無線ネットワークである。
【００１９】
中継ネットワークＮＷは、複数のパケット中継装置１を含み、無線ネットワーク制御装置（RNC：Radio Network Controller）９２、及び複数の無線基地局装置（BTS：Base Transceiver Station）９４間の通信を中継する。無線ネットワーク制御装置９２は、複数の無線基地局装置９４を制御することによって、発着信接続制御、終話制御、及びハンドオーバ制御などを行う。
【００２０】
パケット中継装置１は、ある装置から受信したパケットを、その宛先に従って他装置に中継する中継装置であり、例えば、ルータ（レイヤ３スイッチ）やレイヤ２スイッチなどである。なお、本明細書において、パケットとは、伝送されるデータ（情報）の伝送単位を表すものとする。したがって、パケットには、ＩＰパケットに限られず、例えばイーサネットフレームやＡＴＭ（ATM：Asynchronous Transfer Mode）セルなどの他のＰＤＵ（Protocol Data Unit）も含まれる。
【００２１】
また、中継ネットワークＮＷは、サーバ装置９３、及び複数のクライアント装置９５間の通信も中継する。したがって、サーバ装置９３及びクライアント装置９５間の通信（符号Ｐ１参照）と、無線ネットワーク制御装置９２及び無線基地局装置９４間の通信（符号Ｐ２参照）は、共通の中継ネットワークＮＷを介して行われる。
【００２２】
サーバ装置９３は、ネットワーク内の装置の動作タイミングの基準となるマスタークロックを供給する。各クライアント装置９５は、サーバ装置９３と同期メッセージを交換することによって、周波数同期及び時刻同期の少なくとも一方を行う。そして、各クライアント装置９５は、マスタークロックに同期するクロックまたは時刻を、無線基地局装置９４に供給する。これにより、複数のクライアント装置９５は、互いに同期し、上記のハンドオーバ制御などを高精度に行うことができる。
【００２３】
図２には、サーバ装置９３及びクライアント装置９５の間における同期メッセージの送受信シーケンスの一例が示されている。図２は、ＩＥＥＥ１５８８−２００８に規定された高精度時間プロトコル（PTP：Precision Time Protocol）に基づくシーケンスを例示するが、これに限定されず、他のシーケンスを採用してもよい。
【００２４】
また、図３には、図２に示されたシーケンスにおいて用いられる同期メッセージの構成例が示されている。同期メッセージは、ＰＴＰヘッダ及びメッセージフィールドを含む。ＰＴＰヘッダには、メッセージ種別を示す「ｍｅｓｓａｇｅＴｙｐｅ」情報が格納されている。「ｍｅｓｓａｇｅＴｙｐｅ」情報の内容は、図４に例示された一覧表に従う。例えば、「ｍｅｓｓａｇｅＴｙｐｅ」情報が「０」の値を示す場合、当該同期メッセージは「Ｓｙｎｃ」である。
【００２５】
本例のシーケンスでは、「Ｓｙｎｃ」、「Ｆｏｌｌｏｗ＿Ｕｐ」、「Ｄｅｌａｙ＿Ｒｅｑ」、及び「Ｄｅｌａｙ＿Ｒｅｓｐ」の４種類の同期メッセージが用いられる。クライアント装置９５は、各同期メッセージをサーバ装置９３と交換することにより、タイムスタンプなどと称される時刻情報ｔ１〜ｔ４を取得する。時刻情報ｔ１〜ｔ４は、図３に示されたメッセージフィールド内に格納される（「ＯｒｉｇｉｎＴｉｍｅＳｔａｍｐ」情報を参照）。なお、図２の紙面右側には、クライアント装置９５が取得する時刻情報ｔ１〜ｔ４が段階的に示されている。
【００２６】
まず、サーバ装置９３は、送信時刻を示す時刻情報ｔ１を含む「Ｓｙｎｃ」をクライアント装置９５に送信する。そして、クライアント装置９５は、「Ｓｙｎｃ」を受信し、該受信時刻を示す時刻情報ｔ２を取得する。さらに、サーバ装置９３は、Ｓｙｎｃメッセージに送信時刻ｔ１を収容できない場合、Ｓｙｎｃの送信時刻情報ｔ１を含む「Ｆｏｌｌｏｗ＿Ｕｐ」をクライアント装置９５に送信する。これにより、クライアント装置９５は、「Ｓｙｎｃ」の送信時刻ｔ１及び受信時刻ｔ２を取得する。
【００２７】
次に、クライアント装置９５は、送信時刻を示す時刻情報ｔ３を含む「Ｄｅｌａｙ＿Ｒｅｑ」をサーバ装置９３に送信する。そして、サーバ装置９３は、「Ｄｅｌａｙ＿Ｒｅｑ」を受信し、該受信時刻を示す時刻情報ｔ４を含む「Ｄｅｌａｙ＿Ｒｅｓｐ」をクライアント装置９５に送信する。これにより、クライアント装置９５は、「Ｄｅｌａｙ＿Ｒｅｑ」の送信時刻ｔ３及び受信時刻ｔ４を取得する。
【００２８】
したがって、クライアント装置９５は、ｔ２−ｔ１を算出することによって、サーバ装置９３からクライアント装置９５に向かう伝送方向における伝送遅延時間ｔ−ｍｓを得ることができる。また、クライアント装置９５は、ｔ４−ｔ３を算出することによって、クライアント装置９５からサーバ装置９３に向かう伝送方向における伝送遅延時間ｔ−ｓｍを得ることができる。ここで、各伝送方向の伝送遅延時間が等しいと仮定すると、サーバ装置９３及びクライアント装置９５間の時刻のオフセット値は、｛（ｔ−ｍｓ）＋（ｔ−ｓｍ）｝／２を算出することにより取得される。
【００２９】
上記の伝送遅延時間ｔ−ｍｓ，ｔ−ｓｍは、パケット中継装置１において生ずる遅延時間が含まれる。図５には、上記の「Ｓｙｎｃ」を送信した場合を例として、パケット中継装置１において生ずる遅延時間が示されている。なお、図５は、「Ｓｙｎｃ」が１台のパケット中継装置１のみを介して送信される場合を示しているが、以降の説明は、複数のパケット中継装置１を介した場合も同様である。
【００３０】
パケット中継装置１における遅延時間Ｔ＿ｄｅｌａｙは、固定遅延時間Ｔ＿ｆｉｘと、読み出し遅延時間Ｔ＿ｂｕｆと、競合遅延時間Ｔ＿ｃｍｐとを含む。固定遅延時間Ｔ＿ｆｉｘは、所定の内部処理により定常的に生ずる遅延時間である。読み出し遅延時間Ｔ＿ｂｕｆは、内部処理用のバッファに、同期メッセージ（「Ｓｙｎｃ」）に先行する他のパケットが蓄積されているときに、該パケットの読み出しにより生ずる待機時間である。競合遅延時間Ｔ＿ｃｍｐは、「Ｓｙｎｃ」の転送処理が他のパケットと競合することにより生ずる待機時間である。
【００３１】
パケット中継装置１は、上述したように、サーバ装置９３及びクライアント装置９５間において送受信される同期メッセージだけでなく、無線ネットワーク制御装置９２及び無線基地局装置９４間において送受信される他のパケットも中継する。このため、同期メッセージは、内部処理用のバッファにおいて、同一ポートから入力された他のパケットにより待機させられる場合があり、この場合に読み出し遅延時間Ｔ＿ｂｕｆが生ずる。また、同期メッセージは、同一ポートから送信される他のパケットと競合し、送信待ち状態とされる場合があり、この場合に競合遅延時間Ｔ＿ｃｍｐが生ずる。なお、以降の説明において、同期メッセージではない他のパケットを「ユーザパケット」と表記する。
【００３２】
読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐは、中継ネットワークＮＷ内を伝送されるユーザパケットのトラフィック状況に応じて変化する。例えば、符号Ｅ２で示される例の読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐは、符号Ｅ１で示される例の読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐより大きい。したがって、伝送遅延時間ｔ−ｍｓも、符号Ｅ２で示される例の方が符号Ｅ１で示される例より大きくなる。
【００３３】
図６には、伝送遅延時間ｔ−ｍｓの分布の例を示すグラフが示されている。図６において、横軸は経過時間を示し、縦軸は伝送遅延時間ｔ−ｍｓを示す。なお、図６において、ユーザパケットが中継ネットワークＮＷを伝送されていない場合の遅延は、点線で示されるように、上記の固定遅延時間Ｔ＿ｆｉｘとなる。
【００３４】
伝送遅延時間ｔ−ｍｓのばらつきの程度（離散度合）は、ユーザパケットのトラフィック量が多いほど大きい。これは、ユーザパケットのトラフィック量が多いほど、読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐが大きくなるためである。
【００３５】
伝送遅延時間ｔ−ｍｓのばらつきは、パケットの遅延変動として、クライアント装置９５の同期精度に影響を与える。同期精度を高めるためには、同期メッセージの中継遅延Ｔ＿ｄｅｌａｙを調整することにより、伝送遅延時間ｔ−ｍｓを一定値Ｔｃｏｎにするとよい。なお、これまで、一方の伝送方向における伝送遅延時間ｔ−ｍｓを例に挙げて説明したが、他方の伝送方向における伝送遅延時間ｔ−ｓｍについても同様に、ばらつきが生ずる。
【００３６】
次に、読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐが発生するメカニズムに関して説明する。図７には、実施例に係るパケット中継装置１の機能構成が示されている。パケット中継装置１は、制御部１０と、スイッチ部１１と、複数の送受信器１２と、複数の伝送処理部１３とを含む。複数の伝送処理部１３は、それぞれ、送受信器１２ごとに対応して設けられ、入力処理部１３１と、出力処理部１３２とを含む。
【００３７】
送受信器１２は、例えば光信号を送受信する光デバイスであり、各ポート＃０〜＃Ｎに対応する。送受信器１２は、光ファイバなどを介して外部装置と接続され、該装置との間でパケットを送受信する。入力処理部１３１は、ポート＃０〜＃Ｎを介して受信したパケットを処理する。入力処理部１３１は、例えば、パケットに含まれる宛先情報に基づいて転送先のポート＃０〜＃Ｎを判別し、転送先ポート番号を含む内部ヘッダをパケットに付与して、パケットをスイッチ部１１に出力する。
【００３８】
スイッチ部１１は、内部ヘッダを参照し、転送先ポート番号に従って、パケットを、他のポート＃０〜＃Ｎに対応する出力処理部１３２に出力する。出力処理部１３２は、ポート＃０〜＃Ｎを介して送信するパケットを処理する。出力処理部１３２は、ＱｏＳを満たすように、送信対象となるパケットを順次にポート＃０〜＃Ｎに出力する。つまり、出力処理部１３２は、パケットを送信するパケット送信装置として機能する。
【００３９】
制御部１０は、例えばＣＰＵ（Central Processing Unit）などの演算処理手段であり、装置全体を制御する。制御部１０は、例えば、コンピュータなどの外部の端末装置からの操作に応じて、伝送処理部１３及びスイッチ部１１に対する設定処理をし、また、伝送処理部１３及びスイッチ部１１から情報を読み出す。
【００４０】
図８は、パケット中継装置１内のパケットの経路を示す構成図である。より具体的には、図８には、パケット経路上に設けられている複数のバッファ２０及び複数のキュー５４，５５が例示されている。
【００４１】
各ポート＃０〜＃Nから入力されたパケットは、入力処理部１３１内の複数のバッファ２０に蓄積される。複数のバッファ２０は、例えば、内部ヘッダの付与処理などを行うためにパケットを一時的に格納する。
【００４２】
図８に示された例では、ポート＃Ｎの入力処理部１３１のバッファ２０には、同期メッセージ（「同期ｍｓｇ」参照）のみが蓄積されている。このため、この同期メッセージは、遅延することなく、バッファ２０から読み出される。
【００４３】
一方、ポート＃０の入力処理部１３１のバッファ２０には、同期メッセージの前に、ユーザーパケット（「ユーザＰＫＴ」参照）が蓄積されている。このため、この同期メッセージは、ユーザパケットが出力されるまで待機し、読み出しが遅延する。とりわけ、ロングパケット（いわゆる、ジャンボフレーム）のように、ユーザパケットのパケット長が、例えば９６００（Ｂｙｔｅ）である場合、同期メッセージの読み出し遅延は、より大きくなる。また、同期メッセージの読み出し遅延は、バッファの数が多いほど、遅延が蓄積されて大きくなる。このようにして、上記の読み出し遅延時間Ｔ＿ｂｕｆは生ずる。
【００４４】
バッファ２０から読み出されたパケットは、スイッチ部１１を介して、宛先となるポート＃０〜＃Ｎの出力処理部１３２に出力される。出力処理部１３２は、ＱｏＳを満たすように送信処理を行うため、送信待ちのパケットを、優先パケット及び非優先パケットに分けて蓄積する格納する複数のキュー５４，５５が設けられている。優先キュー５４は、同期メッセージのような優先パケットを蓄積し、非優先キュー５５は、ユーザパケットのような非優先パケットを格納する。
【００４５】
図８に示された例では、ポート＃０の出力処理部１３２において、優先キュー５４に同期メッセージが蓄積され、非優先キュー５５にユーザパケットが蓄積されている。同期メッセージは、非優先パケットであるユーザパケットより優先的に優先キュー５４から読み出されて送信される。
【００４６】
しかし、同期メッセージがキュー５４に入力されたとき、ユーザパケットの１つがキュー５５から読み出されている途中である場合、同期メッセージは、ユーザパケットの読み出しが完了するまで待機させられるため、上記の競合遅延時間Ｔ＿ｃｍｐが生ずる。つまり、競合遅延時間Ｔ＿ｃｍｐは、読み出し中の非優先パケットにより待機させられる待機遅延時間である。
【００４７】
このように、パケット中継装置１におけるＰＤＶは、２つの遅延時間（Ｔ＿ｂｕｆ，Ｔ＿ｃｍｐ）により生ずる。例えば上記の特許文献１に開示された技術（以下、「従来例」と表記）は、２つの遅延時間のうち、競合遅延時間Ｔ＿ｃｍｐのみに基づいて、中継遅延Ｔ＿ｄｅｌａｙを調整する。
【００４８】
図９には、従来例における伝送遅延時間ｔ−ｍｓの分布の例を示すグラフである。従来例によると、競合遅延時間Ｔ＿ｃｍｐは、変動が低減されて一定値Ｔｃｏｎに調整されるが、読み出し遅延時間Ｔ＿ｂｕｆの変動は改善されないので、伝送遅延時間ｔ−ｍｓはばらつく。したがって、従来例では、同期精度を改善することが困難である。なお、図９に示される例は、ストアアンドフォワード方式のパケット中継装置の場合の特性であり、バッファ２０が設けられないカットスルー方式のパケット中継装置の場合は、この限りではない。
【００４９】
これに対し、実施例に係るパケット中継装置１は、バッファ２０に入力されるパケットのパケット長及びパケット間隔に基づき、バッファからの読み出し遅延時間を算出し、読み出されたパケットを読み出し遅延時間に従って遅延させることにより、ＰＤＶを低減する。
【００５０】
（第１実施例）
図１０は、第１実施例の入力処理部１３１の機能構成を示す構成図である。入力処理部１３１は、遅延情報生成部３と、複数のバッファ２０と、内部ヘッダ生成部２１と、出力ポート決定部２２と、遅延制御部４とを有する。なお、図１０には、２つのバッファ２０が示されている、これに限定されず、バッファ２０は、所定のパケット処理に対する数だけ設けられる。
【００５１】
遅延情報生成部３は、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆｆを示す遅延情報を生成する。遅延情報生成部３は、パケット識別部３０と、付与処理部３１と、測定部３２と、遅延算出部３３とを有する。パケット識別部３０は、同期メッセージ及びユーザパケットを識別し、識別したパケットの種別を付与処理部３１及び測定部３２に通知する。
【００５２】
図１１には、同期メッセージを含むレイヤ３のパケットの構成の一例が示されている。パケットは、ＩＰ（Internet Protocol）ヘッダと、ＵＤＰ（User Datagram Protocol）ヘッダと、同期メッセージとを含む。なお、同期メッセージの構成例については、図３を参照して述べたとおりである。
【００５３】
ＩＰヘッダは、バージョン、ヘッダ長、サービス種別、全長、生存時間（TTL：Time To Live）、識別子、フラグ、断片位置、プロトコル、チェックサム、送信元アドレス、及び宛先アドレスの各情報を含む。ＵＤＰヘッダは、送信元ポート番号、宛先ポート番号、長さ、及びチェックサムの各情報を含む。パケットの優先度は、例えば、ＩＰヘッダ内のサービス種別情報を参照することにより判断される。なお、ＩＰヘッダ内の識別子、フラグ、及び断片位置は、パケットが複数に分割された場合におけるフラグメント処理に用いられる。
【００５４】
また、同期メッセージは、レイヤ３のパケットに限定されず、レイヤ２のフレームとして転送されてもよい。図１２には、同期メッセージを含むレイヤ２のフレームの構成の一例が示されている。
【００５５】
フレームは、ＭＡＣ（Media Access Control）ヘッダと、同期メッセージと、ＦＣＳ（Frame Check Sequence）とを含む。ＭＡＣヘッダは、宛先アドレスであるＤＡ（Destination Address）、送信元アドレスであるＳＡ（Source Address）、及び、プロトコルを示すＴｙｐｅを含む。ＦＣＳは、フレーム内のデータの正常性を検査するための検査符号である。
【００５６】
パケット識別部３０は、図１１及び図１２に示されたパケット内の同期メッセージを検出することにより、パケットの種別を識別する。測定部３２は、バッファ２０に入力されるパケットのパケット長及びパケット間隔を測定する。遅延算出部３３は、測定部３２により測定されたパケット長及びパケット間隔に基づき、同期メッセージのバッファ２０からの読み出し遅延時間Ｔ＿ｂｕｆを算出する。以下に、図１３〜図１５を参照して、読み出し遅延時間Ｔ＿ｂｕｆの算出手法を説明する。
【００５７】
図１３は、バッファ２０における読み出し処理の遅延を示すタイムチャートである。図１３において、ユーザパケットのパケット長をａ１（Ｂｙｔｅ）とし、同期メッセージのパケット長をａ２（Ｂｙｔｅ）とし、ユーザパケット及び同期メッセージのパケット間隔をｂ１（Ｂｙｔｅ）とする。図１３は、パケットのバッファ２０への入力タイミング、遅延がない場合の同期メッセージのバッファ２０からの読み出しタイミング、及び、バッファ２０からの読み出しタイミングを示す。
【００５８】
ユーザパケットが、同期メッセージより先にバッファ２０に入力されている場合、ユーザパケットが同期メッセージより先にバッファ２０から読み出される。ここで、ユーザパケットの出力タイミングＴｕは、ユーザパケットより先にバッファ２０に入力された他のパケットがない場合、バッファ２０への入力が完了した直後のタイミングとなる。
【００５９】
一方、同期メッセージより先にバッファ２０に入力された他のパケットがないと仮定すると、ユーザパケットの出力タイミングＴｄは、バッファ２０への入力が完了した直後のタイミングとなる。つまり、出力タイミングＴｄは、遅延がない場合の同期メッセージの読み出しタイミングである。同期メッセージの読み出しが、ユーザパケットの読み出しの完了直後に開始されると仮定すると、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆは、上記の出力タイミングＴｕ及び出力タイミングＴｄの差分となるから、以下の式（１）により算出される。
【００６０】
Ｔ＿ｂｕｆ＝ａ１−ｂ１−ａ２                                    式（１）
【００６１】
もっとも、同期メッセージより先にバッファ２０に入力されているユーザパケットは１つとは限らないので、複数のユーザパケットが蓄積されている場合を想定して、式（１）を一般化するとよい。図１４は、複数のユーザパケットによる読み出し処理の遅延を示すタイムチャートである。図１４において、先頭からｎ番目のパケットのパケット長をａｎ（Ｂｙｔｅ）とし、先頭からｎ番目のパケット及びｎ＋１番目のパケット間隔をｂｎ（Ｂｙｔｅ）とする。
【００６２】
図１４において、Ｄ１，ｎは、複数のバッファ２０のうち、１つ目のバッファに蓄積された先頭からｎ番目のパケットの読み出し遅延時間である。Ｄ１，ｎは、上記の式（１）から、以下の式（２）のように一般化される。
【００６３】
Ｄ１，ｎ＝ａｎ−１−ｂｎ−１−ａｎ                                    式（２）
【００６４】
したがって、バッファ２０に入力される全てのパケットのパケット長及びパケット間隔を測定することにより、式（２）に基づいて、パケットごとの読み出し遅延Ｄ１，ｎが算出される。同期メッセージの読み出し遅延は、先行する全てのユーザパケットにより生ずる読み出し遅延Ｄ１，ｎの和として算出される。よって、１つ目のバッファ２０における同期メッセージの読み出し遅延Ｄ１は、以下の式（３）により算出される。
【００６５】
Ｄ１＝Ｄ１，２＋Ｄ１，３＋・・・＋Ｄ１，ｎ    （Ｄ１，ｎ＞０）        式（３）
【００６６】
２つ目以降のバッファ２０における読み出し遅延時間Ｄ２，Ｄ３，・・・，ＤＭ（Ｍは全バッファ数）も、式（３）と同様の式に従って算出される。ただし、２つ目以降のバッファ２０では、前段のバッファ２０を通過することにより、パケット間隔ｂｎが変化することがあるため、パケット間隔ｂｎを補正して、読み出し遅延時間Ｄ２，Ｄ３，・・・，ＤＭを算出するとよい。また、Ｄ１，ｎ≦０の場合は、遅延が発生せず、それまでに加算した遅延が０になることを意味するので、Ｄ１＝０となる。
【００６７】
図１５は、パケット間隔の変化を示すタイムチャートである。本例において、１つ目のバッファ２０に、８０（Ｂｙｔｅ）のユーザパケットが入力された後、６０（Ｂｙｔｅ）のパケット間隔をおいて、６４（Ｂｙｔｅ）の同期メッセージが入力されたと仮定する。また、一般化のため、ユーザパケットのパケット長をａｎ−２（Ｂｙｔｅ）とし、同期メッセージのパケット長をａｎ−２（Ｂｙｔｅ）とし、ユーザパケット及び同期メッセージのパケット間隔をｂｎ−１（Ｂｙｔｅ）とする。つまり、ａｎ−２＝８０、ａｎ−２＝６０、ｂｎ−１＝６０とする。
【００６８】
各パケットのバッファ２０からの読み出しタイミングを、パケットの入力の完了直後と仮定すると、バッファから読み出された後のパケット間隔ｂ’ｎ−１は、同期メッセージのパケット長及びパケット間隔の和からユーザパケットのパケット長を減算した値となる。つまり、パケット間隔ｂ’ｎ−１は、６０＋６４−８０＝６０−（８０−６４）により得られるので、以下の式（４）のように一般化される。
【００６９】
ｂ’ｎ−１＝ｂｎ−１−（ａｎ−２−ａｎ−１）                        式（４）
【００７０】
したがって、２つ目以降のバッファ２０の読み出し遅延時間Ｄ２，Ｄ３，・・・，ＤＭは、上記の式（４）に従ってパケット間隔ｂｎを補正したうえで、上記の式（３）に従い算出される。同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆは、全てのバッファ２０の読み出し遅延時間Ｄ１，Ｄ２，Ｄ３，・・・，ＤＭの合計であるため、以下の式（５）により算出される。
【００７１】
Ｔ＿ｂｕｆ＝Ｄ１＋Ｄ２＋Ｄ３＋・・・＋ＤＭ                  式（５）
【００７２】
このように、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆを、パケット長及びパケット間隔により算出すれば、回路構成が簡単化される。例えば、上記の算出手法とは異なりバッファ１０ごとにパケットが入力される入力時刻と、パケットが出力される出力時刻とを測定し、入力時刻及び出力時刻の差分から読み出し遅延時間Ｔ＿ｂｕｆを算出する手法も考えられる。しかし、この手法を用いる場合、時刻計時回路が計時する時刻を、複数の伝送処理部１３の間において時刻同期させる必要があるので、回路構成の複雑化及び回路規模の増大などの不利益を招く。
【００７３】
再び図１０を参照すると、付与処理部３１は、遅延算出部３３により算出された読み出し遅延時間Ｔ＿ｂｕｆを示す遅延情報を同期メッセージに付与する。遅延情報は、符号Ｐで示されるように、例えば、パケットのヘッダとペイロードの間に挿入されてもよい。なお、付与処理部３１は、ユーザパケットに遅延情報を付与することはない。
【００７４】
付与処理部３１から出力されたパケットは、１つ目のバッファ２０に入力され、内部ヘッダ生成部２１により処理される。内部ヘッダ生成部２１は、パケット中継装置１内における転送処理などに用いられる内部ヘッダを、パケットごとに付与する。
【００７５】
次に、パケットは、２つ目のバッファ２０に入力され、出力ポート決定部２２により処理される。出力ポート決定部２２は、パケットの宛先情報（例えば、図１２に示されるＤＡ）などに従って、パケットの出力先となるポート＃０〜＃Ｎを決定する。出力ポート決定部２２は、出力先として決定したポート＃０〜＃Ｎを示す出力先情報を、例えば上記の内部ヘッダの一部に書き込む。スイッチ部１１は、この出力先情報を参照して、該当するポート＃０〜＃Ｎの出力処理部１３２に、パケットを出力する。
【００７６】
次に、パケットは、遅延制御部４に入力される。遅延制御部４は、同期メッセージから遅延情報を抽出することにより、読み出し遅延時間Ｔ＿ｂｕｆを取得し、読み出し遅延時間Ｔ＿ｂｕｆに従って、バッファ２０から読み出されたパケットを遅延させる。
【００７７】
遅延制御部４は、分配部４０と、遅延情報抽出部４１と、同期メッセージ用の第１キュー４２と、ユーザパケットなどの同期メッセージ以外のパケット用の第２キュー４３と、読み出し処理部４４と、タイミング制御部４５とを有する。第１キュー４２及び第２キュー４３は、バッファから読み出されたパケットを、同期メッセージ（優先パケット）、及び、ユーザパケットなどのその他のパケット（非優先パケット）に分けて蓄積する。
【００７８】
分配部４０は、バッファ２０から入力されたパケットを識別し、パケットが同期メッセージである場合、パケットを第１キュー４２に出力し、パケットが同期メッセージではない場合、パケットを第２キュー４３に出力する。また、分配部４０は、バッファ２０からパケットが到着するたびに、到着したパケットの種別情報（同期メッセージまたはその他）、パケット長、到着タイミング、及び到着順序などのパケット情報をタイミング制御部４５に出力する。
【００７９】
遅延情報抽出部４１は、分配部４０及び第１キュー４２の間に設けられ、同期メッセージから遅延情報を抽出し、タイミング制御部４５に出力する。なお、遅延情報抽出部４１は、遅延情報を抽出した後、同期メッセージから遅延情報を削除してもよい。
【００８０】
読み出し処理部４４は、第１キュー４２及び第２キュー４３の一方を選択し、選択したキューからパケットを読み出す。読み出されたパケットは、スイッチ部１１に入力される。
【００８１】
タイミング制御部４５は、読み出し処理部４４に、第１キュー４２及び第２キュー４３のうち、パケットの読み出し対象として選択するキューと、該キューからパケットを読み出すタイミングとを指示する。タイミング制御部４５は、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆに従って、同期メッセージが読み出されるタイミングを決定する。
【００８２】
図１６は、タイミング制御部４５の動作を示すフローチャートである。タイミング制御部４５は、分配部４０から、到着したパケットのパケット情報を取得する（ステップＳｔ１）。次に、タイミング制御部４５は、パケット情報に含まれる種別情報に基づいて、パケットが同期メッセージか否かを判定する（ステップＳｔ２）。
【００８３】
パケットが同期メッセージではない場合（ステップＳｔ２のＮｏ）、タイミング制御部４５は、パケット情報に含まれるパケット長、到着タイミング、及び到着順序などに基づいて、パケット（ユーザパケットなど）の読み出しタイミングを決定する（ステップＳｔ５）。
【００８４】
一方、パケットが同期メッセージである場合（ステップＳｔ２のＹｅｓ）、タイミング制御部４５は、遅延情報抽出部４１から遅延情報を取得する（ステップＳｔ３）。次に、タイミング制御部４５は、遅延情報が示す読み出し遅延時間Ｔ＿ｂｕｆに基づいて、中継遅延時間Ｔ＿ｄｅｌａｙ（図５参照）を一定値とするための読み出し遅延調整時間Ｔ＿ａｄｊを算出する（ステップＳｔ４）。
【００８５】
次に、タイミング制御部４５は、算出した読み出し遅延調整時間Ｔ＿ａｄｊに基づいて、同期メッセージの読み出しタイミングを決定する（ステップＳｔ５）。より具体的には、タイミング制御部４５は、同期メッセージの読み出しタイミングを読み出し遅延調整時間Ｔ＿ａｄｊだけ遅延させる。このようにして、タイミング制御部４５の動作は実行される。
【００８６】
このように、タイミング制御部４５は、バッファ２０において生ずる読み出し遅延時間Ｔ＿ｂｕｆに基づいて算出した読み出し遅延調整時間Ｔ＿ａｄｊに従って、同期メッセージを遅延させる。したがって、ＰＤＶに対する読み出し遅延時間Ｔ＿ｂｕｆの変動の影響が、低減される。なお、上記の特許文献１に開示された技術は、バッファの読み出し遅延時間Ｔ＿ｂｕｆの変動を考慮したものではないため、該変動を低減できない。
【００８７】
また、図１７は、第１実施例の出力処理部１３２の機能構成を示す構成図である。出力処理部１３２は、ＭＵＸ部５０と、分配部５１と、同期メッセージ検出部５２と、優先パケット用の優先キュー５４と、複数の非優先キュー５５と、読み出し処理部５６と、タイミング制御部５９とを有する。
【００８８】
ＭＵＸ部５０は、スイッチ部１１を介して入力されたパケットを、順次に分配部５１に出力する。分配部５１は、ＭＵＸ部５０から入力されたパケットの優先度を判別し、優先パケットを優先キュー５４に出力し、非優先パケットを非優先キュー５５の１つに出力する。また、分配部５１は、パケットが到着するたびに、パケット長、到着タイミング、及び到着順序などのパケット情報をタイミング制御部５９に出力する。
【００８９】
優先キュー５４及び非優先キュー５５は、優先パケット及び非優先パケットをそれぞれ格納する。つまり、優先キュー５４及び非優先キュー５５は、パケットを、優先パケット及び非優先パケットに分けて蓄積する。優先キュー５４及び非優先キュー５５は、メモリなどの記憶手段により構成される。
【００９０】
優先パケットは、非優先パケットより優先的に送信対象となるパケットであり、上記の同期メッセージが含まれる。なお、優先パケットは、同期メッセージ以外のパケットを含んでもよい。一方、非優先パケットは、例えば、上記の無線ネットワーク制御装置９２及び無線基地局装置９４間において送受信されるパケットであり、ユーザパケットが含まれる。
【００９１】
分配部５１は、例えば、ＭＡＣヘッダ内の「Ｔｙｐｅ」情報（図１１参照）を参照することにより、パケットの優先度を判断してもよい。また、フレームにＶＬＡＮ（Virtual Local Area Network）タグが付与されている場合、優先度は、ＶＬＡＮタグ内のプライオリティ情報に基づいて判断されてもよい。
【００９２】
同期メッセージ検出部５２は、優先キュー５４及び分配部５１の間に設けられ、優先キュー５４に入力される優先パケットから同期メッセージを検出し、検出通知をタイミング制御部５９に出力する。読み出し処理部５６は、優先キュー５４及び複数の非優先キュー５５のうち、１つを選択し、選択したキューからパケットを読み出す。読み出されたパケットは、ポート＃０〜＃Ｎを介して外部装置に出力される。
【００９３】
タイミング制御部５９は、読み出し処理部５６に、優先キュー５４及び複数の非優先キュー５５のうち、パケットの読み出し対象として選択するキューと、該キューからパケットを読み出すタイミングとを指示する。タイミング制御部５９は、同期メッセージの競合遅延時間Ｔ＿ｃｍｐに従って、同期メッセージが読み出されるタイミングを決定する。
【００９４】
図１８は、タイミング制御部５９の動作を示すフローチャートである。タイミング制御部５９は、分配部５１から、到着したパケットのパケット情報を取得する（ステップＳｔ５１）。次に、タイミング制御部５９は、同期メッセージ検出部５２からの検出通知の有無を判定する（ステップＳｔ５２）。
【００９５】
同期メッセージの検出通知がない場合（ステップＳｔ５２のＮｏ）、タイミング制御部５９は、パケット情報に含まれるパケット長、到着タイミング、及び到着順序などに基づいて、パケット（ユーザパケットなど）の読み出しタイミングを決定する（ステップＳｔ５５）。
【００９６】
一方、同期メッセージの検出通知がある場合（ステップＳｔ５２のＹｅｓ）、タイミング制御部５９は、同期メッセージの競合遅延時間Ｔ＿ｃｍｐを算出する（ステップＳｔ５３）。競合遅延時間Ｔ＿ｃｍｐは、例えば、同期メッセージが優先キュー５４に入力されたとき、読み出し処理部５６が読み出し中の非優先パケット（ユーザパケット）の未読み出しのデータ量などに基づいて算出される。
【００９７】
次に、タイミング制御部５９は、算出した競合遅延時間Ｔ＿ｃｍｐに基づいて、中継遅延時間Ｔ＿ｄｅｌａｙ（図５参照）を一定値とするための競合遅延調整時間Ｔ＿ｑｏｓを算出する（ステップＳｔ５４）。
【００９８】
次に、タイミング制御部５９は、算出した競合遅延調整時間Ｔ＿ｑｏｓに基づいて、同期メッセージの読み出しタイミングを決定する（ステップＳｔ５５）。より具体的には、タイミング制御部５９は、同期メッセージの読み出しタイミングを競合遅延調整時間Ｔ＿ｑｏｓだけ遅延させる。このようにして、タイミング制御部５９の動作は実行される。
【００９９】
このように、タイミング制御部５９は、パケット送信処理におけるＱｏＳを満たしつつ、優先キュー５４及び非優先キュー５５において生ずる競合遅延時間Ｔ＿ｃｍｐに基づいて算出した競合遅延調整時間Ｔ＿ｑｏｓに従って、同期メッセージを遅延させる。したがって、ＰＤＶに対する競合遅延時間Ｔ＿ｃｍｐの変動の影響が、低減される。
【０１００】
図１９は、本実施例に係るパケット中継装置１において生ずる遅延時間を示すラダーチャートである。図１９において、入力遅延時間Ｔ＿ｉｎは、入力処理部１３１において生ずる遅延時間を示し、出力遅延時間Ｔ＿ｏｕｔは、出力処理部１３２において生ずる遅延時間を示す。したがって、中継遅延時間Ｔ＿ｄｅｌａｙは、入力遅延時間Ｔ＿ｉｎ及び出力遅延時間Ｔ＿ｏｕｔの和となる。
【０１０１】
入力遅延時間Ｔ＿ｉｎは、入力側固定遅延時間Ｔ＿ｆｉｘ＿ｉｎと、読み出し遅延時間Ｔ＿ｂｕｆと、読み出し遅延調整時間Ｔ＿ａｄｊとを含む。したがって、入力処理部１３１のタイミング制御部４５は、入力遅延時間Ｔ＿ｉｎを所定値としたとき、以下の式（６）により読み出し遅延調整時間Ｔ＿ａｄｊを算出する。
【０１０２】
Ｔ＿ａｄｊ＝Ｔ＿ｉｎ−Ｔ＿ｆｉｘ＿ｉｎ−Ｔ＿ｂｕｆ                式（６）
【０１０３】
一方、出力遅延時間Ｔ＿ｏｕｔは、出力側固定遅延時間Ｔ＿ｆｉｘ＿ｏｕｔと、競合遅延時間Ｔ＿ｃｍｐと、競合遅延調整時間Ｔ＿ｑｏｓとを含む。したがって、出力処理部１３２のタイミング制御部５９は、出力遅延時間Ｔ＿ｏｕｔを所定値としたとき、以下の式（７）により競合遅延調整時間Ｔ＿ｑｏｓを算出する。
【０１０４】
Ｔ＿ｑｏｓ＝Ｔ＿ｏｕｔ−Ｔ＿ｆｉｘ＿ｏｕｔ−Ｔ＿ｃｍｐ            式（７）
【０１０５】
このように、適切な読み出し遅延調整時間Ｔ＿ａｄｊ及び競合遅延調整時間Ｔ＿ｑｏｓにより、読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐが小さい場合（符号Ｅ３参照）も、大きい場合（符号Ｅ４参照）も、中継遅延Ｔ＿ｄｅｌａｙが一定となる。よって、ＰＤＶが効果的に低減され、伝送遅延時間ｔ−ｍｓは、一定値Ｔｃｏｎ（図６参照）となる。
【０１０６】
（第２実施例）
第１実施例では、読み出し遅延調整時間Ｔ＿ａｄｊを示す遅延情報は、付与処理部３１により同期メッセージに付与されたが、これに限定されず、内部ヘッダ生成部２１により内部ヘッダとして付与されてもよい。
【０１０７】
図２０は、第２実施例の入力処理部１３１の機能構成を示す構成図である。図２０において、図１０と共通する構成については、同一の符号を付し、その説明を省略する。
【０１０８】
入力処理部１３１は、遅延情報生成部３と、バッファ２０と、出力ポート決定部２２と、遅延制御部４とを有する。遅延情報生成部３は、パケット識別部３０と、測定部３２と、遅延算出部３３ａと、内部ヘッダ生成部（付与処理部）２１ａと、バッファ２０ａとを有する。なお、遅延制御部４の構成は、図１０を参照して説明したとおりであり、また、出力制御部１３２の構成は、図１７を参照して説明したとおりである。
【０１０９】
遅延算出部３３ａは、測定部３２により測定されたパケット長及びパケット間隔に基づき、同期メッセージのバッファ２０からの読み出し遅延時間Ｔ＿ｂｕｆを算出し、内部ヘッダ生成部２１ａに出力する。読み出し遅延時間Ｔ＿ｂｕｆの算出手法は、上述したとおりである。
【０１１０】
内部ヘッダ生成部２１ａは、遅延算出部３３ａから入力された読み出し遅延時間Ｔ＿ｂｕｆを示す遅延情報を生成し、遅延情報を含む内部ヘッダを生成する。内部ヘッダ生成部２１ａは、生成した内部ヘッダをバッファ２０ａに格納された同期メッセージに付与する（符号Ｐａ参照）。これにより、遅延情報は、内部ヘッダの領域の一部に割り当てられるので、内部ヘッダが有効に利用される。
【０１１１】
このように、内部ヘッダ生成部２１ａは、バッファ２０ａから同期メッセージを読み出し、読み出した同期メッセージに遅延情報を付与する。したがって、バッファ２０ａに格納された同期メッセージの処理（本例では、内部ヘッダの付与処理）と同時に、遅延情報の付与処理を行うことができるので、装置構成が簡単化される。また、本実施例によると、第１実施例と同様に、ＰＤＶが低減される。
【０１１２】
（第３実施例）
【０１１３】
上述した実施例において、遅延制御部４は、入力処理部１３１に設けられているが、これに限定されず、遅延制御部４に代えて、出力処理部１３２に遅延制御部を設けてもよい。この場合、遅延制御部は、図１７に示された構成を含む。
【０１１４】
図２１は、第３実施例の出力処理部１３２の機能構成を示す構成図である。図２１において、図１７と共通する構成については、同一の符号を付し、その説明を省略する。
【０１１５】
出力処理部１３２は、ＱｏＳを満たすように送信処理を行うとともに、同期メッセージの遅延を制御する遅延制御部５を有する。遅延制御部５は、ＭＵＸ部５０と、分配部５１と、同期メッセージ検出部５２と、遅延情報抽出部５３と、優先キュー５４と、複数の非優先キュー５５と、読み出し処理部５６と、タイミング制御部５７とを有する。
【０１１６】
遅延情報抽出部５３は、同期メッセージ検出部５２及び優先キュー５４の間に設けられ、同期メッセージから遅延情報を抽出し、タイミング制御部５７に出力する。遅延情報は、入力処理部１３１において、図１０または図２０に示される遅延情報生成部３により生成され、同期メッセージに付与される。なお、遅延情報抽出部５３は、遅延情報を抽出した後、同期メッセージから遅延情報を削除してもよい。
【０１１７】
タイミング制御部５７は、読み出し処理部５６に、優先キュー５４及び複数の非優先キュー５５のうち、パケットの読み出し対象として選択するキューと、該キューからパケットを読み出すタイミングとを指示する。タイミング制御部５７は、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐに従って、同期メッセージが読み出されるタイミングを決定する。
【０１１８】
図２２は、タイミング制御部５７の動作を示すフローチャートである。タイミング制御部５７は、分配部５１から、到着したパケットのパケット情報を取得する（ステップＳｔ１１）。次に、タイミング制御部５７は、同期メッセージ検出部５２からの検出通知の有無を判定する（ステップＳｔ１２）。
【０１１９】
同期メッセージの検出通知がない場合（ステップＳｔ１２のＮｏ）、タイミング制御部５７は、パケット情報に含まれるパケット長、到着タイミング、及び到着順序などに基づいて、パケット（ユーザパケットなど）の読み出しタイミングを決定する（ステップＳｔ１６）。
【０１２０】
一方、同期メッセージの検出通知がある場合（ステップＳｔ１２のＹｅｓ）、タイミング制御部５７は、同期メッセージの競合遅延時間Ｔ＿ｃｍｐを算出する（ステップＳｔ１３）。競合遅延時間Ｔ＿ｃｍｐは、例えば、同期メッセージが優先キュー５４に入力されたとき、読み出し処理部５６が読み出し中の非優先パケット（ユーザパケット）の未読み出しのデータ量などに基づいて算出される。
【０１２１】
次に、タイミング制御部５７は、遅延情報抽出部５３から遅延情報を取得する（ステップＳｔ１４）。タイミング制御部５７は、遅延情報から読み出し遅延時間Ｔ＿ｂｕｆを得る。
【０１２２】
次に、タイミング制御部５７は、算出した競合遅延時間Ｔ＿ｃｍｐと、読み出し遅延時間Ｔ＿ｂｕｆとに基づいて、中継遅延時間Ｔ＿ｄｅｌａｙ（図５参照）を一定値とするための遅延調整時間Ｔａ＿ａｄｊを算出する（ステップＳｔ１５）。
【０１２３】
次に、タイミング制御部５７は、算出した遅延調整時間Ｔａ＿ａｄｊに基づいて、同期メッセージの読み出しタイミングを決定する（ステップＳｔ１６）。より具体的には、タイミング制御部５７は、同期メッセージの読み出しタイミングを遅延調整時間Ｔａ＿ａｄｊだけ遅延させる。このようにして、タイミング制御部５７の動作は実行される。
【０１２４】
このように、タイミング制御部５７は、同期メッセージが、競合遅延時間Ｔ＿ｃｍｐと、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆとに従って、同期メッセージが読み出されるタイミングを決定する。したがって、ＰＤＶに対する読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐの変動の影響が、低減される。
【０１２５】
図２３は、本実施例に係るパケット中継装置１において生ずる遅延時間を示すラダーチャートである。中継遅延時間Ｔ＿ｄｅｌａｙは、入力側固定遅延時間Ｔ＿ｆｉｘ＿ｉｎと、読み出し遅延時間Ｔ＿ｂｕｆと、出力側固定遅延時間Ｔ＿ｆｉｘ＿ｏｕｔと、競合遅延時間Ｔ＿ｃｍｐと、遅延調整時間Ｔａ＿ａｄｊとを含む。したがって、タイミング制御部５７は、中継遅延時間Ｔ＿ｄｅｌａｙを所定値としたとき、以下の式（８）により読み出し遅延調整時間Ｔａ＿ａｄｊを算出する。
【０１２６】
Ｔａ＿ａｄｊ＝Ｔ＿ｄｅｌａｙ−Ｔ＿ｆｉｘ＿ｉｎ−Ｔ＿ｂｕｆ
−Ｔ＿ｆｉｘ＿ｏｕｔ−Ｔ＿ｃｍｐ                    式（８）
【０１２７】
このように、適切な遅延調整時間Ｔａ＿ａｄｊにより、読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐが小さい場合（符号Ｅ５参照）も、大きい場合（符号Ｅ６参照）も、中継遅延Ｔ＿ｄｅｌａｙが一定となる。したがって、ＰＤＶが効果的に低減され、伝送遅延時間ｔ−ｍｓは、一定値Ｔｃｏｎ（図６参照）となる。
【０１２８】
（第４実施例）
これまで述べた実施例において、遅延制御部４，５は、入力処理部１３１のバッファ２０，２０ａにおいて生ずる読み出し遅延時間Ｔ＿ｂｕｆに従って、同期メッセージの遅延を制御するが、これに限定されない。遅延制御部４，５は、さらに、出力処理部１３２のバッファにおいて生ずる読み出し遅延時間に従って遅延を制御してもよい。
【０１２９】
図２４は、第４実施例の出力処理部の機能構成を示す構成図である。図２４において、図２１と共通する構成については、同一の符号を付し、その説明を省略する。
【０１３０】
出力制御部１３２は、遅延制御部５と、内部ヘッダ除去部６と、出力側バッファ６０とを有する。出力側バッファ６０は、遅延制御部５のキュー５４，５５から読み出されたパケットを蓄積する。内部ヘッダ除去部６は、出力側バッファ６０に蓄積されたパケットから内部ヘッダを除去する。内部ヘッダを除去されたパケットは、バッファ６０からポート＃０〜＃Ｎを介して外部装置に送信される。
【０１３１】
遅延制御部５は、入力処理部１３１に設けられたバッファ２０，２０ａにおける読み出し遅延Ｔ＿ｂｕｆだけでなく、出力側バッファ６０における読み出し遅延Ｔａ＿ｂｕｆに基づいて遅延を制御する。遅延制御部５は、ＭＵＸ部５０と、分配部５１と、同期メッセージ検出部５２と、遅延情報抽出部５３と、優先キュー５４と、複数の非優先キュー５５と、読み出し処理部５６と、タイミング制御部５７ａとを有する。
【０１３２】
タイミング制御部５７ａは、読み出し処理部５６に、優先キュー５４及び複数の非優先キュー５５のうち、パケットの読み出し対象として選択するキューと、該キューからパケットを読み出すタイミングとを指示する。タイミング制御部５７ａは、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐに従って、同期メッセージが読み出されるタイミングを決定する。この動作は、図２２を参照して述べたとおりである。
【０１３３】
また、タイミング制御部５７ａは、出力側バッファ６０における同期メッセージの読み出し遅延時間Ｔａ＿ｂｕｆを、図２２に示される処理により決定した読み出しタイミングに基づき算出する。読み出し遅延時間Ｔａ＿ｂｕｆは、例えば、決定された読み出しタイミングから、出力側バッファ６０に入力されるパケットのパケット間隔を予測し、パケット長及びパケット間隔を用いて、上述した算出手法により算出される。タイミング制御部５７ａは、算出した読み出し遅延時間Ｔａ＿ｂｕｆに基づいて、決定した読み出しタイミングを補正する。
【０１３４】
図２５は、読み出しタイミングの補正処理の動作を示すフローチャートである。タイミング制御部５７ａは、同期メッセージ検出部５２からの検出通知の有無を判定する（ステップＳｔ２１）。同期メッセージの検出通知がない場合（ステップＳｔ２１のＮｏ）、タイミング制御部５７ａは、処理を終了する。一方、同期メッセージの検出通知がある場合（ステップＳｔ２１のＹｅｓ）、タイミング制御部５７ａは、出力側バッファ６０における同期メッセージの読み出し遅延時間Ｔａ＿ｂｕｆを算出する（ステップＳｔ２２）。
【０１３５】
次に、タイミング制御部５７ａは、算出した読み出し遅延時間Ｔａ＿ｂｕｆが０より大きいか否かを判定する（ステップＳｔ２３）。読み出し遅延時間Ｔａ＿ｂｕｆが０以下である場合（ステップＳｔ２３のＮｏ）、タイミング制御部５７ａは、出力側バッファ６０において遅延が生じないと判断し、図２２に示された動作により決定した読み出しタイミングを確定させ（ステップＳｔ２５）、処理を終了する。
【０１３６】
一方、読み出し遅延時間Ｔａ＿ｂｕｆが０より大きい場合（ステップＳｔ２３のＹｅｓ）、タイミング制御部５７ａは、読み出し遅延時間Ｔａ＿ｂｕｆに基づいて、図２２に示された処理により決定した読み出しタイミングを補正する（ステップＳｔ２４）。
【０１３７】
図２６は、読み出しタイミングの補正処理の一例を示すタイムチャートである。図２６の紙面上部には、同期メッセージ及びユーザパケットの補正前のキュー５４，５５からの読み出しタイミングと、出力側バッファ６０からの読み出しタイミングとが示されている。また、図２６の紙面下部には、補正後の同期メッセージ及びユーザパケットのキュー５４，５５からの読み出しタイミングと、出力側バッファ６０からの読み出しタイミングとが示されている。
【０１３８】
図２６の例では、補正前の読み出しタイミングは、ユーザパケットが同期メッセージより早いために、出力側バッファ６０において、読み出し遅延時間Ｔａ＿ｂｕｆが生ずる。このため、タイミング制御部５７ａは、読み出しタイミングを、同期メッセージがユーザパケットより先に読み出されるように補正する。これにより、読み出し遅延時間Ｔａ＿ｂｕｆが０となる。なお、読み出しタイミングの補正処理は、本例に限定されず、例えば、読み出し遅延時間Ｔａ＿ｂｕｆが０となるように、ユーザパケット及び同期メッセージ間のパケット間隔を広げるように行われてもよい。
【０１３９】
読み出し遅延時間Ｔａ＿ｂｕｆは、読み出しタイミングの補正後、処理を終了する。このようにして、読み出しタイミングの補正処理は行われる。
【０１４０】
このように、タイミング制御部５７ａは、出力側バッファ６０における同期メッセージの読み出し遅延時間Ｔａ＿ｂｕｆｆを、決定した読み出しタイミングに基づき算出し、該算出した読み出し遅延時間に従って、決定した読み出しタイミングを補正する。
【０１４１】
したがって、本実施例によると、ＰＤＶに対する読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐの変動の影響が、低減されるとともに、出力側バッファ６０における読み出し遅延時間Ｔａ＿ｂｕｆｆが低減される。
【０１４２】
（第５実施例）
これまで述べた実施例において、入力処理部１３１は、バッファ２０，２０ａを有するが、これに限定されず、入力処理部１３１がバッファ２０，２０ａを有さず、出力処理部１３２のみがバッファ６０を有してもよい。この場合、遅延制御部５は、出力側バッファ６０における読み出し遅延時間Ｔａ＿ｂｕｆｆ及び競合遅延時間Ｔ＿ｃｍｐに基づいて、同期メッセージの遅延を制御する。
【０１４３】
図２７は、第５実施例の出力処理部１３２の機能構成を示す構成図である。図２７において、図２４と共通する構成については、同一の符号を付し、その説明を省略する。
【０１４４】
出力制御部１３２は、遅延制御部５と、内部ヘッダ除去部６と、出力側バッファ６０とを有する。遅延制御部５は、ＭＵＸ部５０と、分配部５１と、同期メッセージ検出部５２と、優先キュー５４と、複数の非優先キュー５５と、読み出し処理部５６と、タイミング制御部５７ｂとを有する。
【０１４５】
タイミング制御部５７ｂは、読み出し処理部５６に、優先キュー５４及び複数の非優先キュー５５のうち、パケットの読み出し対象として選択するキューと、該キューからパケットを読み出すタイミングとを指示する。タイミング制御部５７ｂは、競合遅延時間Ｔ＿ｃｍｐに従って、同期メッセージが読み出されるタイミングを決定する。この動作は、図１８を参照して述べたとおりである。
【０１４６】
また、タイミング制御部５７ｂは、出力側バッファ６０における同期メッセージの読み出し遅延時間Ｔａ＿ｂｕｆを、図１８に示される処理により決定した読み出しタイミングに基づき算出する。読み出し遅延時間Ｔａ＿ｂｕｆは、例えば、決定された読み出しタイミングから、出力側バッファ６０に入力されるパケットのパケット間隔を予測し、パケット長及びパケット間隔を用いて、上述した算出手法により算出される。タイミング制御部５７ｂは、算出した読み出し遅延時間Ｔａ＿ｂｕｆに基づいて、決定した読み出しタイミングを補正する。この補正処理は、図２５及び図２６を参照して述べたとおりである。
【０１４７】
このように、タイミング制御部５７ａは、出力側バッファ６０における同期メッセージの読み出し遅延時間Ｔａ＿ｂｕｆｆを、決定した読み出しタイミングに基づき算出し、該算出した読み出し遅延時間に従って、決定した読み出しタイミングを補正する。
【０１４８】
したがって、本実施例によると、ＰＤＶに対する競合遅延時間Ｔ＿ｃｍｐの変動の影響が低減されるとともに、出力側バッファ６０における読み出し遅延時間Ｔａ＿ｂｕｆｆが低減される。
【０１４９】
（第６実施例）
これまで述べた実施例において、競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆｆが閾値を超える同期メッセージを、遅延調整が不可能であると判断し、廃棄してもよい。クライアント装置９５は、遅延が小さい同期メッセージを優先的に用いて同期処理を行うので、全ての同期メッセージを受信しなくてもよい。したがって、同期メッセージの廃棄処理は、クライアント装置９５における同期処理に影響しない。
【０１５０】
図２８は、第６実施例の出力処理部１３２の機能構成を示す構成図である。図２８において、図２１と共通する構成については、同一の符号を付し、その説明を省略する。
【０１５１】
遅延制御部５は、ＭＵＸ部５０と、分配部５１と、同期メッセージ検出部５２と、遅延情報抽出部５３と、優先キュー５４ａと、複数の非優先キュー５５と、読み出し処理部５６と、タイミング制御部５７ｃと、廃棄処理部５８とを有する。優先キュー５４ａは、上述した優先キュー５４と同様に、同期メッセージを蓄積し、また、タイミング制御部５７ｃからの廃棄指示に従い、蓄積した同期メッセージを廃棄処理部５８に出力する。廃棄処理部５８は、優先キュー５４ａから入力された同期メッセージを廃棄する。
【０１５２】
タイミング制御部５７ｃは、読み出し処理部５６に、優先キュー５４ａ及び複数の非優先キュー５５のうち、パケットの読み出し対象として選択するキューと、該キューからパケットを読み出すタイミングとを指示する。タイミング制御部５７ｃは、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆ及び競合遅延時間Ｔ＿ｃｍｐに従って、同期メッセージが読み出されるタイミングを決定する。
【０１５３】
図２９は、タイミング制御部５７ｃの動作を示すフローチャートである。タイミング制御部５７ｃは、分配部５１から、到着したパケットのパケット情報を取得する（ステップＳｔ４１）。次に、タイミング制御部５７ｃは、同期メッセージ検出部５２からの検出通知の有無を判定する（ステップＳｔ４２）。
【０１５４】
同期メッセージの検出通知がない場合（ステップＳｔ４２のＮｏ）、タイミング制御部５７ｃは、パケット情報に含まれるパケット長、到着タイミング、及び到着順序などに基づいて、パケット（ユーザパケットなど）の読み出しタイミングを決定する（ステップＳｔ４７）。
【０１５５】
一方、同期メッセージの検出通知がある場合（ステップＳｔ４２のＹｅｓ）、タイミング制御部５７ｃは、同期メッセージの競合遅延時間Ｔ＿ｃｍｐを算出する（ステップＳｔ４３）。競合遅延時間Ｔ＿ｃｍｐは、例えば、同期メッセージが優先キュー５４に入力されたとき、読み出し処理部５６が読み出し中の非優先パケット（ユーザパケット）の未読み出しのデータ量などに基づいて算出される。
【０１５６】
次に、タイミング制御部５７ｃは、遅延情報抽出部５３から遅延情報を取得する（ステップＳｔ４４）。タイミング制御部５７ｃは、遅延情報から読み出し遅延時間Ｔ＿ｂｕｆを得る。
【０１５７】
次に、タイミング制御部５７ｃは、同期メッセージの競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計が、所定の閾値より大きいか否かを判定する（ステップＳｔ４５）。同期メッセージの競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計が、所定の閾値Ｔ＿ｔｈより大きい場合（ステップＳｔ４５のＹｅｓ）、タイミング制御部５７ｃは、優先キュー５４ａに同期メッセージの廃棄指示を出力する（ステップＳｔ４８）。
【０１５８】
一方、同期メッセージの競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計が、所定の閾値Ｔ＿ｔｈ以下である場合（ステップＳｔ４５のＮｏ）、タイミング制御部５７ｃは、上述した遅延調整時間Ｔａ＿ａｄｊを算出する（ステップＳｔ４６）。次に、タイミング制御部５７ｃは、算出した遅延調整時間Ｔａ＿ａｄｊに基づいて、同期メッセージの読み出しタイミングを決定する（ステップＳｔ４７）。このようにして、タイミング制御部５７ｃの動作は実行される。
【０１５９】
図３０は、遅延制御部５の動作の一例を示すタイムチャートである。図３０には、同期メッセージのパケット中継装置１への入力タイミングと、遅延時間と、キュー５４ａからの読み出しタイミングが示されている。
【０１６０】
符号Ｅ７で示されるように、同期メッセージの競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計が小さい場合（Ｔ＿ｂｕｆ＋Ｔ＿ｃｍｐ＜＜Ｔ＿ｔｈの場合）、遅延調整時間Ｔａ＿ａｄｊは大きい。一方、符号Ｅ９で示されるように、同期メッセージの競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計が大きい場合（Ｔ＿ｂｕｆ＋Ｔ＿ｃｍｐ≦Ｔ＿ｔｈの場合）、遅延調整時間Ｔａ＿ａｄｊは小さい。
【０１６１】
また、符号Ｅ８で示されるように、同期メッセージの競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計が所定の閾値Ｔ＿ｔｈより大きい場合（Ｔ＿ｂｕｆ＋Ｔ＿ｃｍｐ＞Ｔ＿ｔｈの場合）、同期メッセージは廃棄される。
【０１６２】
このように、タイミング制御部５７ｃは、同期メッセージの競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計が閾値Ｔ＿ｔｈより大きい場合、同期メッセージを蓄積している優先キュー５４に、同期メッセージを廃棄させる。したがって、同期メッセージの遅延調整が不可能である場合、該同期メッセージによる伝送遅延時間ｔ−ｍｓへの影響が回避される。なお、遅延調整が不可能である場合とは、例えば、図１９において、固定遅延時間Ｔ＿ｆｉｘ＿ｉｎ，Ｔ＿ｆｉｘ＿ｏｕｔ、競合遅延時間Ｔ＿ｃｍｐ、及び読み出し遅延時間Ｔ＿ｂｕｆの合計が、所定の中継遅延時間Ｔ＿ｄｅｌａｙを超える場合を指す。
【０１６３】
また、本実施例において、タイミング制御部５７ｃは、競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの合計を閾値Ｔ＿ｔｈと比較し、比較結果に応じて同期メッセージの廃棄の可否を決定するが、これに限定されない。タイミング制御部５７ｃは、競合遅延時間Ｔ＿ｃｍｐ及び読み出し遅延時間Ｔ＿ｂｕｆの一方を閾値Ｔ＿ｔｈと比較し、比較結果に応じて同期メッセージの廃棄の可否を決定してもよい。
【０１６４】
これまで述べたように、実施例に係るパケット中継装置１は、パケットを蓄積するバッファ２０，２０ａと、遅延算出部３３と、遅延制御部４，５とを有する。遅延算出部３３は、バッファ２０，２０ａに入力されるパケットのパケット長及びパケット間隔に基づき、バッファ２０，２０ａからの同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆを算出する。遅延制御部４，５は、遅延算出部３３により算出された読み出し遅延時間Ｔ＿ｂｕｆに従って、バッファ２０，２０ａから読み出された同期メッセージを遅延させる。
【０１６５】
実施例に係るパケット中継装置１は、バッファ２０，２０ａに入力されるパケットのパケット長及びパケット間隔に基づき、同期メッセージの読み出し遅延時間Ｔ＿ｂｕｆを算出するので、簡単な構成を用いて読み出し遅延時間Ｔ＿ｂｕｆを算出できる。遅延制御部４，５は、読み出し遅延時間Ｔ＿ｂｕｆに従って、バッファ２０，２０ａから読み出された同期メッセージを遅延させるので、読み出し遅延時間Ｔ＿ｂｕｆによるＰＤＶが低減される。
【０１６６】
また、実施例に係るパケット送信装置（出力処理部１３２）は、外部のバッファ２０，２０ａに入力されるパケットのパケット長及びパケット間隔に基づき算出されたバッファ２０，２０ａからの読み出し遅延時間Ｔ＿ｂｕｆに従って、バッファ２０，２０ａから読み出されたパケットを遅延させる遅延制御部５を有する。したがって、実施例に係るパケット送信装置は、上記のパケット中継装置１と同様の作用効果を奏する。
【０１６７】
以上、好ましい実施例を参照して本発明の内容を具体的に説明したが、本発明の基本的技術思想及び教示に基づいて、当業者であれば、種々の変形態様を採り得ることは自明である。
【０１６８】
なお、以上の説明に関して更に以下の付記を開示する。
（付記１）  パケットを蓄積するバッファと、
前記バッファに入力される前記パケットのパケット長及びパケット間隔に基づき、前記バッファからの読み出し遅延時間を算出する遅延算出部と、
前記遅延算出部により算出された前記読み出し遅延時間に従って、前記バッファから読み出された前記パケットを遅延させる遅延制御部とを有することを特徴とするパケット中継装置。
（付記２）  前記遅延算出部により算出された前記読み出し遅延時間を示す遅延情報を、前記パケットに付与する付与処理部を、さらに有し、
前記遅延制御部は、前記パケットから前記遅延情報を抽出することにより、前記読み出し遅延時間を取得することを特徴とする付記１に記載のパケット中継装置。
（付記３）  前記付与処理部は、前記バッファから前記パケットを読み出し、読み出した前記パケットに前記遅延情報を付与することを特徴とする付記２に記載のパケット中継装置。
（付記４）  前記遅延制御部は、
前記バッファから読み出された前記パケットを、優先パケット及び非優先パケットに分けて蓄積する複数のキューと、
前記複数のキューの１つを選択し、選択したキューから前記パケットを読み出す読み出し処理部と、
前記読み出し処理部に、前記複数のキューのうち、前記パケットの読み出し対象として選択するキューと、該キューから前記パケットを読み出すタイミングとを指示するタイミング制御部とを有し、
前記タイミング制御部は、前記優先パケットの前記読み出し遅延時間に従って、前記優先パケットが読み出される前記タイミングを決定することを特徴とする付記１乃至３の何れかに記載のパケット中継装置。
（付記５）  前記タイミング制御部は、前記優先パケットが、前記読み出し処理部が読み出し中の前記非優先パケットにより待機させられる待機遅延時間と、前記優先パケットの前記読み出し遅延時間とに従って、前記優先パケットが読み出される前記タイミングを決定することを特徴とする付記４に記載のパケット中継装置。
（付記６）  前記複数のキューから読み出された前記パケットを蓄積する出力側バッファを、さらに有し、
前記タイミング制御部は、前記出力側バッファにおける前記優先パケットの読み出し遅延時間を、決定した前記タイミングに基づき算出し、該算出した読み出し遅延時間に従って、決定した前記タイミングを補正することを特徴とする付記５に記載のパケット中継装置。
（付記７）  前記タイミング制御部は、前記優先パケットの前記読み出し遅延時間が閾値より大きい場合、前記複数のキューのうち、前記優先パケットを蓄積しているキューに、前記優先パケットを廃棄させることを特徴とする付記４乃至６の何れかに記載のパケット中継装置。
（付記８）  パケットを優先パケット及び非優先パケットに分けて蓄積する複数のキューと、
前記複数のキューの１つを選択し、選択したキューから前記パケットを読み出す読み出し処理部と、
前記読み出し処理部に、前記複数のキューのうち、前記パケットの読み出し対象として選択するキューと、該キューから前記パケットを読み出すタイミングとを指示するタイミング制御部と、
前記読み出し処理部により前記複数のキューから読み出された前記パケットを蓄積する出力側バッファとを有し、
前記タイミング制御部は、
前記優先パケットが、前記読み出し処理部が読み出し中の前記非優先パケットにより待機させられる待機遅延時間に従って、前記優先パケットが読み出される前記タイミングを決定し、
前記出力側バッファにおける前記優先パケットの読み出し遅延時間を、決定した前記タイミングに基づき算出し、該算出した読み出し遅延時間に従って、決定した前記タイミングを補正することを特徴とするパケット中継装置。
（付記９）  外部のバッファに入力されるパケットのパケット長及びパケット間隔に基づき算出された前記バッファからの読み出し遅延時間に従って、前記バッファから読み出された前記パケットを遅延させる遅延制御部を有することを特徴とするパケット送信装置。
（付記１０）  前記パケットは、前記読み出し遅延時間を示す遅延情報が付与され、
前記遅延制御部は、前記パケットから前記遅延情報を抽出することにより、前記読み出し遅延時間を取得することを特徴とする付記９に記載のパケット送信装置。
（付記１１）  前記遅延制御部は、
前記バッファから読み出された前記パケットを、優先パケット及び非優先パケットに分けて蓄積する複数のキューと、
前記複数のキューの１つを選択し、選択したキューから前記パケットを読み出す読み出し処理部と、
前記読み出し処理部に、前記複数のキューのうち、前記パケットの読み出し対象として選択するキューと、該キューから前記パケットを読み出すタイミングとを指示するタイミング制御部とを有し、
前記タイミング制御部は、前記優先パケットの前記読み出し遅延時間に従って、前記優先パケットが読み出されるタイミングを決定することを特徴とする付記９または１０に記載のパケット送信装置。
（付記１２）  前記タイミング制御部は、前記優先パケットが、前記読み出し処理部が読み出し中の前記非優先パケットにより待機させられる待機遅延時間と、前記優先パケットの前記読み出し遅延時間とに従って、前記優先パケットが読み出されるタイミングを決定することを特徴とする付記１１に記載のパケット送信装置。
（付記１３）  前記複数のキューから読み出された前記パケットを蓄積する出力側バッファを、さらに有し、
前記タイミング制御部は、前記出力側バッファにおける前記優先パケットの読み出し遅延時間を、決定した前記タイミングに基づき算出し、該算出した読み出し遅延時間に従って、決定した前記タイミングを補正することを特徴とする付記１２に記載のパケット送信装置。
【符号の説明】
【０１６９】
１                                パケット中継装置
２０，２０ａ                      バッファ
２１ａ                            内部ヘッダ生成部（付与処理部）
３１                              付与処理部
３３                              遅延算出部
４，５                            遅延制御部
４２                              第１キュー
４３                              第２キュー
５４，５４ａ                      優先キュー
５５                              非優先キュー
４４，５６                        読み出し処理部
４５，５７，５７ａ〜５７ｃ        タイミング制御部
６０                              出力側バッファ
１３１                            入力処理部
１３２                            出力処理部（パケット送信装置）
【図１】
2014239343.tif 000003
【図２】
2014239343.tif 000004
【図３】
2014239343.tif 000005
【図４】
2014239343.tif 000006
【図５】
2014239343.tif 000007
【図６】
2014239343.tif 000008
【図７】
2014239343.tif 000009
【図８】
2014239343.tif 000010
【図９】
2014239343.tif 000011
【図１０】
2014239343.tif 000012
【図１１】
2014239343.tif 000013
【図１２】
2014239343.tif 000014
【図１３】
2014239343.tif 000015
【図１４】
2014239343.tif 000016
【図１５】
2014239343.tif 000017
【図１６】
2014239343.tif 000018
【図１７】
2014239343.tif 000019
【図１８】
2014239343.tif 000020
【図１９】
2014239343.tif 000021
【図２０】
2014239343.tif 000022
【図２１】
2014239343.tif 000023
【図２２】
2014239343.tif 000024
【図２３】
2014239343.tif 000025
【図２４】
2014239343.tif 000026
【図２５】
2014239343.tif 000027
【図２６】
2014239343.tif 000028
【図２７】
2014239343.tif 000029
【図２８】
2014239343.tif 000030
【図２９】
2014239343.tif 000031
【図３０】
2014239343.tif 000032