(57)【要約】【課題】簡単な構成で固定遅延転送を実現する中継装置を得ること。【解決手段】本発明にかかる中継装置は、固定遅延パケットを受信したか否かを判別するパケット解析部３１と、固定遅延パケットの各々に対して一定量の遅延を与えてから出力する固定遅延バッファ３２２と、非固定遅延パケットを保持する非固定遅延バッファ３３２と、固定遅延パケットの到着間隔であるパケット間隔を計測するパケット間隔計測部３２３と、計測されたパケット間隔の各々を計測された順番通りに初期値に設定してカウントダウンを順次行う減算カウント部３２５と、固定遅延パケットの出力が完了した時点における減算カウント部３２５のカウント値と、非固定遅延バッファ３３２で保持されている非固定遅延パケットの長さとに基づいて、非固定遅延バッファ３３２に出力させる非固定遅延パケットを決定する出力制御部３４と、を備える。【選択図】図２
2015115704.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークにおいてパケットを中継する中継装置であって、
固定遅延転送を必要とするパケットである固定遅延パケットを受信したか否かを判別するパケット解析部と、
固定遅延パケットを受け取り、受け取った固定遅延パケットの各々に対して一定量の遅延を与えてから出力する固定遅延バッファと、
固定遅延転送を必要としないパケットである非固定遅延パケットを保持する非固定遅延バッファと、
固定遅延パケットの到着間隔であるパケット間隔を計測するパケット間隔計測部と、
前記パケット間隔計測部で計測されたパケット間隔の各々を計測された順番通りに初期値に設定してカウントダウンを順次行う減算カウント部と、
前記固定遅延バッファによる固定遅延パケットの出力が完了した時点における前記減算カウント部のカウント値と、前記非固定遅延バッファで保持されている非固定遅延パケットの長さとに基づいて、前記固定遅延バッファが固定遅延パケットを出力していない期間において前記非固定遅延バッファに出力させる非固定遅延パケットを決定する出力制御部と、
を備えることを特徴とする中継装置。
【請求項２】
通信ポートを複数備え、
前記パケット解析部、前記固定遅延バッファ、前記非固定遅延バッファ、前記パケット間隔計測部、前記減算カウント部および前記出力制御部を含んで構成された出力処理部、を通信ポート毎に備えることを特徴とする請求項１に記載の中継装置。
【請求項３】
前記固定遅延バッファは、前記固定遅延パケットのうち、誤りが検出された固定遅延パケットについては出力しないことを特徴とする請求項１または２に記載の中継装置。
【請求項４】
前記出力制御部は、前記カウント値と、前記非固定遅延バッファで保持されている非固定遅延パケットのうち、最も滞留時間の長い非固定遅延パケットの長さとに基づいて、前記出力させる非固定遅延パケットを決定することを特徴とする請求項１、２または３に記載の中継装置。
【請求項５】
前記出力制御部は、前記カウント値と、前記非固定遅延バッファで保持されている非固定遅延パケットの各々の長さとに基づいて、前記出力させる非固定遅延パケットを決定することを特徴とする請求項１、２または３に記載の中継装置。
【請求項６】
前記一定量を、システムで規定された最大サイズのパケットに相当する時間以上の値とし、
パケット間隔計測部は、前記一定量を最大値とし、前記固定遅延パケットが到着するごとに、その時点のカウント値を出力してからカウント値を０にリセットしてカウントアップを行うとともに、カウント値が最大値に達した後は前記固定遅延パケットが到着するまでカウント値を最大値に保持するカウンタにより構成され、
前記減算カウント部は、カウント値が０となるまでカウントダウンを行った時点で前記パケット間隔計測部から出力済のカウント値が存在しない場合、カウント値を最大値に設定するとともに、当該カウント値が最大値の状態を、前記パケット間隔計測部から次のカウント値が出力されるまで維持する、
ことを特徴とする請求項１から５のいずれか一つに記載の中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークにおいてパケットを中継する中継装置に関する。
【背景技術】
【０００２】
通信ネットワークを形成している通信装置は、様々な種類のデータを送受信する。データは、必要に応じて、宛先の通信装置とは異なる機器（通信装置や中継装置）により中継（転送）され、宛先の通信装置まで到達する。データの中には、固定遅延での中継が必要な種類のものとそうでないものが存在する。
【０００３】
通信ネットワークにて、自らはデータの送信元や宛先とはならずにデータの中継処理を行う中継装置として、例えば、レイヤ２スイッチが存在する。レイヤ２スイッチにおいて固定遅延転送を実現するためには、非固定遅延パケット（フレーム）の転送も考慮する必要がある。一般的には以下の二つの方法により固定遅延転送を行う。
【０００４】
すなわち、
（１）固定遅延転送を必要とするパケット（固定遅延パケット）はパケット識別に必要な最低限の長さのみチェックを行い、パケット長に関わらず、入力された順に最短遅延で転送するカットスルー処理を行う方法。この方法では、非固定遅延パケット（固定遅延転送を必要としないパケット）を出力中に固定遅延パケットを出力するタイミングとなった場合、非固定遅延パケットの出力を中断し、固定遅延パケットの出力を優先することで出力制御を行う。
（２）固定遅延パケットを一定時間以上固定的に遅延させる回路（固定遅延回路）を経由させることで遅延揺らぎを発生させない方法。この方法では、固定遅延パケットが固定遅延回路を通過中の場合、あるいは固定遅延パケットが存在しない場合に非固定遅延パケットを出力する制御を行う。
【０００５】
例えば、特許文献１には、上記（２）の方法を用いてパケットを転送するスイッチ装置の発明が記載されている。特許文献１に記載されたスイッチ装置においては、固定遅延で転送する優先パケット（固定遅延パケット）が到着した場合は固定遅延で読み出すキューへ蓄積し、ベストエフォートで転送する非優先パケット（非固定遅延パケット）が到着した場合には通常のストアアンドフォワード方式のキューへ蓄積する。非固定遅延パケットは、固定遅延パケットを固定遅延キューから読み出していない空き時間を利用して出力する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第４８７５４２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
レイヤ２スイッチにおける通常の優先制御では、固定遅延での転送が必要な高優先トラヒックと固定遅延での転送が必要ない低優先トラヒックとでキューを分け、高優先トラヒックを優先的に転送するが、ストアアンドフォワード方式では、転送するパケットが可変長であることや低優先トラヒックの転送状況によっては転送遅延の揺らぎが発生する（図６，図７参照）。図６および図７において、‘Ｈ’が記載されたものは高優先パケット、‘Ｌ’が記載されたものは低優先パケットを示す。図６や図７に示したように、サイズが大きいトラヒック（パケット）の入力があると、遅延時間が大きくなる。
【０００８】
近年、産業分野等、遅延ゆらぎに非常に敏感なネットワークについてもイーサネット（登録商標）化が進んでおり、固定遅延転送が可能なレイヤ２スイッチが必要とされるが、上記のような理由により、通常のレイヤ２スイッチ装置では固定遅延転送の実現が難しいという問題があった。上記の特許文献１に記載されたスイッチ装置は、固定遅延転送を実現しているが、入力パケット毎にタイムスタンプを管理し、時間を計時し、個別に二種類のタイマを組み込む必要がある。そのため、回路が複雑化するとともに大規模化するという問題がある。
【０００９】
本発明は、上記に鑑みてなされたものであって、簡単な構成で固定遅延転送を実現する中継装置を得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、通信ネットワークにおいてパケットを中継する中継装置であって、固定遅延転送を必要とするパケットである固定遅延パケットを受信したか否かを判別するパケット解析部と、固定遅延パケットを受け取り、受け取った固定遅延パケットの各々に対して一定量の遅延を与えてから出力する固定遅延バッファと、固定遅延転送を必要としないパケットである非固定遅延パケットを保持する非固定遅延バッファと、固定遅延パケットの到着間隔であるパケット間隔を計測するパケット間隔計測部と、前記パケット間隔計測部で計測されたパケット間隔の各々を計測された順番通りに初期値に設定してカウントダウンを順次行う減算カウント部と、前記固定遅延バッファによる固定遅延パケットの出力が完了した時点における前記減算カウント部のカウント値と、前記非固定遅延バッファで保持されている非固定遅延パケットの長さとに基づいて、前記固定遅延バッファが固定遅延パケットを出力していない期間において前記非固定遅延バッファに出力させる非固定遅延パケットを決定する出力制御部と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、固定遅延転送を実現する中継装置の回路規模が増大するのを抑えることができる、という効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明にかかる中継装置の構成例を示す図である。
【図２】図２は、出力処理部の構成例を示す図である。
【図３−１】図３−１は、パケットの出力動作の一例を示す図である。
【図３−２】図３−２は、パケットの出力動作の一例を示す図である。
【図４】図４は、固定遅延パケットの出力動作を説明する図である。
【図５】図５は、中継装置の特徴的な動作の概要を示す図である。
【図６】図６は、課題を説明する図である。
【図７】図７は、課題を説明する図である。
【発明を実施するための形態】
【００１３】
以下に、本発明にかかる中継装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。実施の形態では、「パケット」という表現を使用して説明を行うが、「パケット」は「フレーム」に置き換えることができる。
【００１４】
実施の形態．
図１は、本発明にかかる中継装置の構成例を示す図である。中継装置は、他の通信機器（通信装置、中継装置など）とともに通信ネットワークを形成する。図示したように、中継装置は、例えばレイヤ２スイッチであり、パケットを送受信する通信ポート１（１Ａ，１Ｂ，１Ｃ）と、複数の通信ポート１の中のいずれか一つと対応付けられ、対応付けられている通信ポート１が受信したパケットの出力先（転送先）を決定する出力先解決部２（２Ａ，２Ｂ，２Ｃ）と、複数の通信ポート１の中のいずれか一つと対応付けられ、対応付けられている通信ポート１に対してパケットを出力する出力処理部３（３Ａ，３Ｂ，３Ｃ）と、ＭＡＣ学習テーブル４とを備えている。なお、本実施の形態では、一例として、通信ポート１、出力先解決部２および出力処理部３からなる処理ブロックが３系統の場合について説明するが、図示した構成に限定されない。２系統としてもよいし４系統以上としても構わない。
【００１５】
通信ポート１は、ＬＡＮケーブルなどを介して他の通信機器と接続可能に構成されており、接続されている他の通信機器からパケットを受信すると出力先解決部２へ出力する。また、出力処理部３からパケットを受け取った場合、接続されている他の通信機器へ送信する。
【００１６】
出力先解決部２は、通信ポート１からパケットを受け取ると、ＭＡＣ学習テーブル４を参照し、パケットを出力する通信ポート１を決定する。出力する通信ポート１を決定した後は、決定した通信ポート１と対応付けられている出力処理部３へパケットを出力する。なお、出力先解決部２は、必要に応じてＭＡＣ学習テーブル４を更新する。例えば、出力先解決部２Ａは、通信ポート１Ａから受け取ったパケットの送信元アドレス（ＭＡＣアドレス）がＭＡＣ学習テーブル４に登録されていない場合、ＭＡＣアドレスと通信ポート１Ａを対応付けてＭＡＣ学習テーブル４に登録する。
【００１７】
出力処理部３は、出力先解決部２からパケットを受け取ると、当該パケットが固定遅延で転送すべきパケットか否かを確認し、確認結果に応じたタイミングで当該パケットを通信ポート１へ出力する。
【００１８】
ＭＡＣ学習テーブル４は、ＭＡＣアドレスと通信ポート１の対応関係を示すテーブルであり、出力先解決部２がパケットの出力先（通信ポート１）を決定する際に参照される。また、出力先解決部２により適宜更新される。
【００１９】
図１に示した中継装置の全体動作を説明する。中継装置がある通信ポート１でパケットを受信すると、まず、出力先解決部２が、受信したパケットの宛先のＭＡＣアドレス情報を元にして、ＭＡＣアドレス学習テーブル４を参照し、マッチするエントリがあればそのエントリが示す出力先ポート（出力先の通信ポート１）の情報を取得する。なお、エントリには、ＭＡＣアドレスと、当該ＭＡＣアドレスが宛先に設定されたパケットの出力先の通信ポート１の情報とが登録されているものとする。出力先ポートの情報を取得すると、取得した情報が示す出力先ポートに対応付けられている出力処理部３へパケットを出力する。また、ＭＡＣアドレス学習テーブル４にマッチするエントリが存在しない場合、パケットを受信した通信ポート以外の通信ポートに対応付けられている出力処理部３へパケットを出力する。出力処理部３は、中継装置において特徴的な動作を行うものであり、パケットを受け取ると、パケットの種類（固定遅延転送が必要なパケットか否か）に応じた処理を実行し、自身と対応付けられている通信ポート１へパケットを出力する。なお、出力処理部３については別途詳しく説明する。通信ポート１は、出力処理部３からパケットを受け取ると、接続されている他の通信機器へパケットを送信する。
【００２０】
次に、出力処理部３について詳しく説明する。図２は、出力処理部３（３Ａ，３Ｂ，３Ｃ）の構成例を示す図である。
【００２１】
図２に示したように、出力処理部３は、入力されたパケットが固定遅延転送を必要とするパケット（以下、固定遅延パケットと称する）か否かを判別するパケット解析部３１と、固定遅延パケットを一定時間保持してから出力する固定遅延出力部３２と、固定遅延転送を必要としないパケット（以下、非固定遅延パケットと称する）を一旦保持し、後述する出力制御部３４から指定されたタイミングで出力する非固定遅延出力部３３と、非固定遅延出力部３３からパケットを出力するタイミングを決定する出力制御部３４と、固定遅延出力部３２から出力されたパケットまたは非固定遅延出力部３３から出力されたパケットを選択して出力する出力セレクタ３５とを備えている。固定遅延出力部３２は、パケット特性情報抽出部３２１と、固定遅延パケットを一定時間保持する固定遅延バッファ３２２と、固定遅延パケットが到着する間隔を計測するパケット間隔計測部３２３と、パケット間隔計測部３２３による計測結果である到着間隔を保持するパケット間隔保持部３２４と、減算カウント部３２５とを含んで構成されている。非固定遅延出力部３３は、パケット特性情報抽出部３３１と、非固定遅延パケットを保持する非固定遅延バッファ３３２とを含んで構成されている。
【００２２】
以下、出力処理部３の動作を詳しく説明する。出力処理部３は、パケットの入力があると、まず、パケット解析部３１に渡され、パケット解析部３１は、受け取ったパケットが固定遅延パケットか否かを判定する。ここで、パケット解析部３１は、パケットヘッダあるいはペイロード内の然るべきフィールドに定義された識別子（例えばイーサネットタイプフィールド）を確認し、固定遅延パケットか否かを判定する。判定の結果、固定遅延パケットであれば固定遅延出力部３２へ、非固定遅延パケットであれば非固定遅延出力部３３へ振り分ける。
【００２３】
固定遅延出力部３２または非固定遅延出力部３３に振り分けられた各パケットは、パケットの種類（固定遅延パケットか否か）に応じたタイミングで出力セレクタ３５へ出力される。
【００２４】
非固定遅延出力部３３に振り分けられた非固定遅延パケットは、基本的には通常のレイヤ２スイッチと同様にストアアンドフォワード方式でキューイングおよび出力される。出力タイミングは、固定遅延出力部３２からのパケット出力状況を考慮して出力制御部３４が決定する。すなわち、出力制御部３４は、図３−１および図３−２に示したように、固定遅延パケットが出力中か否かを判断材料として、固定遅延パケットが出力中であれば非固定遅延パケットを出力せず（図３−１）、固定遅延パケットが出力中ではない場合には固定遅延パケットの出力までの空き時間の中で非固定遅延パケットを出力するよう、非固定遅延出力部３３を制御する（図３−２）。固定遅延パケットはシフトレジスタなどを利用して構成された固定遅延キューを通過することにより、一定量（固定量）の遅延が与えられてから出力される。一方、非固定遅延パケットは非固定遅延キューに格納され、固定遅延パケットが出力されない空き時間において出力される。
【００２５】
非固定遅延出力部３３において、パケット特性情報抽出部３３１は、パケット解析部３１から非固定遅延パケットが入力されると、パケット特性情報を抽出して出力制御部３４へ出力するとともに、当該パケットを非固定遅延バッファ３３２へ格納する。パケット特性情報は、少なくともパケットの長さ（パケット長）の情報を含むものとする。パケット転送優先度情報をパケット特性情報に含ませるようにしてもよい。非固定遅延バッファ３３２は、出力制御部３４の指示に従ったタイミングで、保持している非固定遅延パケットを出力する。パケット特性情報がパケット転送優先度情報を含むように構成する場合、非固定遅延バッファは、例えば、パケット転送優先度情報が示す優先度それぞれに対応する複数のキューを備え、非固定遅延パケットをその優先度に対応するキューに格納する。
【００２６】
一方、固定遅延出力部３２に振り分けられた固定遅延パケットは、固定遅延出力部３２が図４に示した手順に従った動作を実行することにより、出力セレクタ３５へ出力される。すなわち、固定遅延出力部３２に固定遅延パケットが入力されると、まず、当該パケットはパケット特性情報抽出部３２１に渡され、パケット特性情報抽出部３２１は、パケット特性情報を抽出してパケット間隔計測部３２３へ出力するとともに、当該パケットを固定遅延バッファ３２２へ格納する。固定遅延バッファ３２２は、受け取った固定遅延パケットを一定時間保持してから出力セレクタ３５へ出力する。ここで、パケット特性情報抽出部３２１が抽出するパケット特性情報は、パケットの先頭を示す情報（パケットの入力があったことを示す情報）であり、例えばヘッダに設定されている情報の一部または全てとすればよいが、その他の情報としても構わない。パケット解析部３１からの固定遅延パケット入力があったことをパケット間隔計測部３２３が認識できるのであればどのような情報でも構わない。
【００２７】
パケット間隔計測部３２３は、固定遅延パケットが入力されたことを示す情報をパケット特性情報抽出部３２１から受け取ると、パケット間隔を計算する。具体的には、前回固定遅延パケットが入力されてからの経過時間をパケット間隔として計算する。パケット間隔計測部３２３は、計算したパケット間隔（前パケットとの間隔情報）をＦＩＦＯ（First  In  First  Out）回路であるパケット間隔保持部３２４へ出力し、パケット間隔保持部３２４は受け取ったパケット間隔を保持しておく。空き時間カウンタとしての減算カウント部３２５は、初期値が設定されると設定値が０となるまで減算する（カウントダウンする）タイマであり、カウント値が０になるとパケット間隔保持部３２４が保持しているパケット間隔を一つ読み出し、読み出したパケット間隔をタイマの初期値（カウント値）に設定してカウントダウンを開始する処理を繰り返す。ただし、減算カウント部３２５は、パケット間隔保持部３２４がパケット間隔を保持していない状態の場合、パケット間隔保持部３２４に対して新たなパケット間隔が入力されたかどうかを継続的に監視するとともに、カウント値を最大値に設定し、パケット間隔保持部３２４に対して新たなパケット間隔が入力されるまで、カウント値が最大値の状態を維持する（カウントダウンを行わない）。また、減算カウント部３２５は、カウント値を出力制御部３４に対して常時通知する。
【００２８】
固定遅延バッファ３２２は、例えばシフトレジスタを備え、パケット特性情報抽出部３２１から固定遅延パケットを受け取ると、当該パケットをシフトレジスタに格納する。シフトレジスタでは１クロックに１段ずつパケットを進め、固定時間が経過することで固定遅延パケットがシフトレジスタを抜ける。固定遅延バッファ３２２は、固定遅延パケットがシフトレジスタを通過すると、固定遅延パケットの出力が完了したことを出力制御部３４へ通知する。
【００２９】
出力制御部３４は、固定遅延パケットの出力が完了した旨の通知を固定遅延バッファ３２２から受けると、その時点で減算カウント部３２５から通知されているカウント値を確認し、パケット特性情報抽出部３３１から通知されているパケット特性情報（非固定遅延バッファ３３２で保持されている非固定遅延パケットのパケット長）に基づいて、カウント値が０となるまでの間に出力する非固定遅延パケット（カウント値が０になるまでの間に出力が完了するサイズの非固定遅延パケット）を選択し、選択結果に対応するパケットを出力するよう非固定遅延バッファ３３２を制御する。選択する非固定遅延パケットは複数の場合もあり得る。また、このとき、次の固定遅延パケットの出力が開始されるまでの間は非固定遅延パケット（非固定遅延出力部３３から出力されるパケット）を選択して出力するよう、出力セレクタ３５を制御する。なお、出力制御部３４は、パケット特性情報として、非固定遅延パケットのパケット長の情報に加えてパケット転送優先度情報が通知されている場合、パケット転送優先度情報を考慮し、出力する非固定遅延パケットを選択する（優先度の高いパケットを選択する）。なお、上記のカウント値が０になるまでの時間は、次の固定遅延パケットの出力が開始されるまでの時間と一致する。非固定遅延パケットを出力する順番は、非固定遅延バッファ３３２に格納された順番に依存しないようにしてもよい。例えば、パケット＃１から＃３の順番で非固定遅延バッファ３３２に格納され、これらが保持されている場合に、上記のカウント値が０になるまでの間にパケット＃１は出力不可能だがパケット＃２は出力可能であれば、パケット＃２を先に出力するようにしてもよい。
【００３０】
出力セレクタ３５は、出力制御部３４からの指示に従い、固定遅延バッファ３２２から出力されたパケットまたは非固定遅延バッファ３３２から出力されたパケットを選択して出力する。
【００３１】
本実施の形態の中継装置の特徴的な動作の詳細を図５に示す。図５は、中継装置の特徴的な動作の概要を示す図である。本実施の形態の中継装置においては、以下の（１）から（６）の手順でパケットを転送する。
【００３２】
（１）固定遅延キュー（図２に示したパケット特性情報抽出部３２１および固定遅延バッファ３２２に相当）の入口に１クロックに１加算するクロックカウンタを設け、固定遅延パケットが固定遅延キューに入力された時点で、以前（前回）に到着した固定遅延パケットのＳＯＰ（Start  Of  Packet）からの経過クロック数をパケット間隔としてパケット間隔保持ＦＩＦＯ（図２に示したパケット間隔保持部３２４に相当）に書き込む。このとき、クロックカウンタ（ｑとする）を０にリセットする。クロックカウンタｑの最大値は、固定遅延キューを構成しているシフトレジスタの長さに依存した値（固定遅延パケットに与える遅延時間に相当する値）とする。カウンタが最大値に達した場合、それ以降は固定遅延パケットの到着によるリセットが無い限り加算しない（最大値でホールド）。なお、シフトレジスタの長さは、固定遅延パケットに与える遅延時間が、システムで規定されている最大パケット長相当の時間と同じかそれよりも大きくなる長さとする。
【００３３】
（２）送信パケット選択回路（図２に示した減算カウント部３２５および出力制御部３４に相当）においては、パケット間隔保持ＦＩＦＯから最初の１データ（パケット間隔）を取り出して減算カウンタ（図２に示した減算カウント部３２５に相当）にセットする。減算カウンタは１クロック毎に１減算する。減算カウンタが０になると、パケット間隔保持ＦＩＦＯから次の最初の１データを取り出し、同様に減算カウンタにセットして減算する。ただし、パケット間隔保持ＦＩＦＯがデータを保持していない場合、減算カウンタには設定可能な最大値をセットし、減算は行わずに（最大値でホールド）、パケット間隔保持ＦＩＦＯに新たなデータが書き込まれたかどうかを監視する。パケット間隔保持ＦＩＦＯに新たなデータが書き込まれたことを検知すると、上記の減算動作（データを取り出して減算カウンタにセットし、１クロック毎に１減算する動作）を再開する。
【００３４】
（３）固定遅延キューには固定遅延パケットを入力する。シフトレジスタの最終段において、固定遅延パケットを出力中か否かを判定し、判定結果を示すデータバリッドビット（以下、ガード中フラグ）を出力する。例えば、固定遅延パケットのデータが最終段を通過中の場合はガード中フラグを‘１’とし、そうでなければ‘０’とする。
【００３５】
（４）上記（２）で説明した減算カウンタの値は非固定遅延キュー読出し可能時間に相当する。送出パケット選択回路においては、減算カウンタの値と上記（３）で説明したガード中フラグの値とに基づいて、出力セレクタおよび非固定遅延キュー（図２に示した非固定遅延バッファ３２２に相当）を制御する。すなわち、ガード中フラグが固定遅延パケットの出力中を示している場合、非固定遅延キュー読出し可能時間が０とみなし、出力セレクタに対して固定遅延パケットを選択出力するよう指示するとともに、非固定遅延キューに対して非固定遅延パケットを出力しないよう指示する。一方、ガード中フラグが固定遅延パケットの出力中を示していない場合（非固定遅延パケットの出力許可を示している場合）、出力セレクタに対して非固定遅延パケットを選択出力するよう指示するとともに、非固定遅延キューに対して非固定遅延パケットの出力を指示する。
【００３６】
（５）上記の（４）で非固定遅延キューに対して非固定遅延パケットの出力を指示する場合、その時点で上記減算カウンタの値が示す時間（値が０になるまでの時間）内で出力が可能な非固定遅延パケットを選択し、選択したパケットを出力するよう指示する（非固定遅延キュー読出し制御）。すなわち、次の固定遅延パケットが出力開始となるまでの間に出力を完了させることが可能な非固定遅延パケットを選択し、出力するよう指示する。
【００３７】
（６）なお、固定遅延パケットは、固定遅延キューに蓄積される間にＦＣＳエラーチェックを行い、ＦＣＳエラーが発生している場合には、出力時にマスクする（出力せずに破棄する）ようにしてもよい。
【００３８】
本実施の形態の中継装置は、従来よりも小さな回路規模で固定遅延転送を実現することができる。たとえば、ＦＰＧＡ（Field  Programmable  Gate  Array）での実装を考えた場合、仮に、取り扱うパケット長を最大１５００Ｂｙｔｅとすると、本実施の形態の中継装置は、１出力ポートあたり約３０フリップフロップ程度（ＦＩＦＯは、例えばＸｉｌｉｎｘのＦＰＧＡではルックアップテーブルわずか２個分＝フリップフロップ回路４個分で実装可能）で実現できる。多ポート構成が想定されるイーサネットスイッチにおいては更に大きな回路規模削減効果が期待できる。なお、上記の特許文献１に記載されたスイッチ装置の場合、１出力ポートあたり約６００フリップフロップ程度が必要になると予想される。
【００３９】
このように、本実施の形態の中継装置は、固定遅延パケットが到着する間隔を算出し、この算出結果に基づいて次の固定遅延パケットの出力を開始するまでの残り時間を算出し、固定遅延パケットの出力が完了した時点における残り時間と、保持している非固定遅延パケットの長さに基づいて、非固定遅延パケットの出力制御を行うこととした。これにより、回路規模が増大するのを回避しつつ固定遅延転送を実現できる。
【産業上の利用可能性】
【００４０】
以上のように、本発明にかかる中継装置は、パケットの固定遅延転送をレイヤ２レベルで実現する中継装置として有用である。
【符号の説明】
【００４１】
１Ａ，１Ｂ，１Ｃ  通信ポート、２Ａ，２Ｂ，２Ｃ  出力先解決部、３Ａ，３Ｂ，３Ｃ  出力処理部、４  ＭＡＣ学習テーブル、３１  パケット解析部、３２  固定遅延出力部、３３  非固定遅延出力部、３４  出力制御部、３５  出力セレクタ、３２１，３３１  パケット特性情報抽出部、３２２  固定遅延バッファ、３２３  パケット間隔計測部、３２４  パケット間隔保持部、３２５  減算カウント部、３３２  非固定遅延バッファ。
【図１】
2015115704.tif 000003
【図２】
2015115704.tif 000004
【図３−１】
2015115704.tif 000005
【図３−２】
2015115704.tif 000006
【図４】
2015115704.tif 000007
【図５】
2015115704.tif 000008
【図６】
2015115704.tif 000009
【図７】
2015115704.tif 000010