(57)【要約】【課題】パケットロスの発生を回避する。【解決手段】通信装置は、第１装置向けの宛先情報を含むパケットを一時記憶可能なバッファの記憶量が所定値を超過する場合に、パケットの宛先情報を第２装置向けに変更する変更部と、変更された宛先情報に基づき第２装置へ転送され且つ宛先情報が第１装置向けに変更されたパケットが第２装置から受信された場合に、バッファの記憶量が所定範囲であれば、パケットをバッファに記憶する管理部とを含む。【選択図】図２
2017204785.tif 000002
【特許請求の範囲】
【請求項１】
第１装置向けの宛先情報を含むパケットを一時記憶可能なバッファの記憶量が所定値を超過する場合に、前記パケットの宛先情報を第２装置向けに変更する変更部と、
変更された宛先情報に基づき前記第２装置へ転送され且つ宛先情報が前記第１装置向けに変更された前記パケットが前記第２装置から受信された場合に、前記バッファの記憶量が所定範囲であれば、前記パケットを前記バッファに記憶する管理部と、
を含む通信装置。
【請求項２】
前記第２装置へ転送され且つ宛先情報が前記第１装置向けに変更された前記パケットが前記第２装置から受信された場合に、前記バッファの記憶量が所定範囲外であれば、前記変更部が、前記パケットの宛先情報を前記第２装置と異なる第３装置向けに変更し、
前記管理部が、変更された宛先情報に基づき前記第３装置へ転送され且つ宛先情報が前記第１装置向けに変更された前記パケットが前記第３装置から受信された場合に、前記バッファの記憶量が所定範囲であれば、前記パケットを前記バッファに記憶する
請求項１に記載の通信装置。
【請求項３】
宛先情報が前記第１装置向けから前記第２装置向けに変更されるパケットの識別情報を記憶する記憶部をさらに含み、
前記管理部は、前記記憶部に記憶された識別情報と同一の識別情報を有するパケットの宛先情報を前記第１装置向けから前記第２装置向けに変更することを決定する
請求項１又は２に記載の通信装置。
【請求項４】
前記管理部は、前記第２装置から受信されたパケットのうち、識別情報が前記記憶部に記憶されているパケットを宛先情報の変更により前記第２装置へ転送されたパケットと判定する
請求項３に記載の通信装置。
【請求項５】
複数の第２装置の候補のそれぞれに対応する通信量を示す情報に基づき、前記複数の第２装置の候補の中から、通信量の少ない候補を前記第２装置に決定する決定部
をさらに含む請求項１から４のいずれか１項に記載の通信装置。
【請求項６】
第１装置と、
第２装置と、
前記第１装置及び前記第２装置と接続される通信装置とを含み、
前記通信装置は、
前記第１装置向けの宛先情報を含むパケットを一時記憶可能なバッファの記憶量が所定値を超過する場合に、前記パケットの宛先情報を前記第２装置向けに変更する変更部と、
変更された宛先情報に基づき前記第２装置へ転送され且つ宛先情報が前記第１装置向けに変更された前記パケットが前記第２装置から受信された場合に、前記バッファの記憶量が所定範囲であれば、前記パケットを前記バッファに記憶する管理部と、を含み、
前記第２装置は、前記通信装置から受信された前記パケットの宛先情報が所定値を示す場合に、前記パケットの宛先情報を前記第１装置向けに変更して前記通信装置へ転送する通信システム。
【請求項７】
前記第２装置は、前記宛先情報が前記所定値として前記第２装置の物理アドレスと前記第１装置のネットワークアドレスとを含む場合に、アドレス解決プロトコルを用いて前記第１装置のネットワークアドレスに対応する前記第１装置の物理アドレスを求め、前記パケットの宛先情報に含まれる前記第２装置の物理アドレスを前記第１装置の物理アドレス
に書き換える書換部を含む
請求項６に記載の通信システム。
【請求項８】
通信装置が、
第１装置向けの宛先情報を含むパケットを一時記憶可能なバッファの記憶量が所定値を超過する場合に、前記パケットの宛先情報を第２装置向けに変更し、
変更された宛先情報に基づき前記第２装置へ転送され且つ宛先情報が前記第１装置向けに変更された前記パケットが前記第２装置から受信された場合に、前記バッファの記憶量が所定範囲であれば、前記パケットを前記バッファに記憶する、
ことを含む通信装置のパケット転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信システム、及び通信装置のパケット転送方法に関する。
【背景技術】
【０００２】
ネットワークを形成する通信設備（通信装置）の一つとして、端末（ホスト）間で送受信されるパケットを中継する中継装置（集線装置とも呼ばれる）がある。中継装置には、例えば、ルータ,レイヤ３スイッチ,レイヤ２スイッチ,スイッチングＨＵＢなどが含まれ
る。
【０００３】
中継装置に対し、中継装置の処理性能の限度を考慮して通信可能な通信量（帯域）が予め定められている場合がある。或いは、他の通信の疎通の保証を目的として通信量（帯域）が制限される場合もある。
【０００４】
近年における通信量の急激な増加に伴って、隣接する装置から想定を超える通信量のパケット（データ）が中継装置に到達する場合があり得る。この場合、中継装置で受信可能なパケットの許容量の超過によるバッファのオーバーフローなどによって、パケットの喪失（パケットロス）が生じる。パケットロスの発生により、パケットの転送経路の両端にある装置（ホスト）間での通信が異常となる。パケットロスを開始する手法としては、例えば、中継装置を高性能なものに入れ替えることが考えられる。或いは、宛先のホストまでの迂回路を増設することが考えられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−３２５１７８号公報
【特許文献２】特開２００３−７８５５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、中継装置の入れ替えや迂回路の増設には多大なコストが発生する可能性がある。
【０００７】
本発明は、通信設備の入れ替えや増設なくパケットロスを回避し得る技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様は、通信装置である。この通信装置は、第１装置向けの宛先情報を含むパケットを一時記憶可能なバッファの記憶量が所定値を超過する場合に、前記パケットの宛先情報を第２装置向けに変更する変更部と、変更された宛先情報に基づき前記第２装置へ転送され且つ宛先情報が前記第１装置向けに変更された前記パケットが前記第２装置から受信された場合に、前記バッファの記憶量が所定範囲であれば、前記パケットを前記バッファに記憶する管理部と、を含む。
【発明の効果】
【０００９】
本発明の一態様によれば、通信設備の入れ替えや増設なくパケットロスを回避することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施形態と対比される参考例の説明図である。
【図２】図２は、実施形態に係る通信システムの構成例を示す。
【図３】図３は、中継装置のハードウェア構成例を示す。
【図４】図４は、中継装置３ａとして動作する中継装置１０が有する機能を示すブロック図であり、パケット迂回処理時の動作を示す。
【図５】図５は、パケット迂回処理の例を示すフローチャートである。
【図６】図６は、迂回先管理領域のデータ構造例を示す図である。
【図７】図７は、順序管理領域のデータ構造例を示す。
【図８】図８は、中継装置３ｂ（３ｃ）のパケット復元処理時の動作を示す図である。
【図９】図９は、パケット復元処理の例を示すフローチャートである。
【図１０】図１０は、中継装置３ａの迂回パケット復帰処理時の動作を示す図である。
【図１１】図１１は、パケット復帰処理の例を示すフローチャートである。
【図１２】図１２は、パケット復帰処理の例を示すフローチャートである。
【図１３】図１３は、中継装置２、３がレイヤ２スイッチ（又はスイッチングＨＵＢ）である場合におけるパケットの転送例の説明図である。
【図１４】図１４は、中継装置２、３がルータ（又はレイヤ３スイッチ）である場合におけるパケットの転送例の説明図である。
【図１５】図１５は、迂回先が１つの場合におけるパケットの転送手順を示す。
【図１６】図１６は、迂回先が１つの場合におけるパケットの転送手順を示す。
【図１７】図１７は、迂回先が１つの場合におけるパケットの転送手順を示す。
【図１８】図１８は、迂回先が１つの場合におけるパケットの転送手順を示す。
【図１９】図１９は、迂回先が２つの場合におけるパケットの転送手順を示す。
【図２０】図２０は、迂回先が２つの場合におけるパケットの転送手順を示す。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態について説明する。実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１２】
〔参考例〕
図１は、実施形態と対比される参考例の説明図である。参考例に係るネットワークシステムは以下のように形成されている。すなわち、図１（Ａ）に示すように、ネットワークシステムは、複数の端末装置１と、複数の通信設備としての中継装置２とを含む。参考例では、３つの端末装置１ａ,１ｂ,１ｃと、６つの中継装置２ａ〜２ｆとが例示されている。
【００１３】
端末装置１ａは、中継装置２ａに接続され、端末装置１ｂは、中継装置２ｅに接続され、端末装置１ｃは、中継装置２ｆに接続されている。端末装置１ｂ及び端末装置１ｃのそれぞれから、８Ｍｂｐｓの通信量で、端末装置１ａへパケットが転送される場合を仮定する。
【００１４】
この場合、中継装置２ｅ及び中継装置２ｆからのパケットを中継する中継装置２ｃには、合計で１６Ｍｂｐｓのパケットが到達する。中継装置２ｃは、端末装置１ａ向け、すなわち中継装置２ａに転送するパケットを一時記憶するバッファメモリを有している。バッファメモリの記憶量は、中継装置２ｃの性能や、他のトラフィックの疎通を考慮した帯域（この例では１０Ｍｂｐｓ）を超過しない範囲に制限される。すなわち、バッファメモリの記憶量（パケット蓄積量）が所定値を超過する場合、バッファメモリに対するパケットの記憶は行われず、パケットは廃棄される。
【００１５】
例えば、中継装置２ｃが端末装置１ａを収容する中継装置２ａへパケットを送信する能力（帯域）が１０Ｍｂｐｓである場合、超過分の６Ｍｂｐｓ分のパケットは、バッファメモリに記憶されずに廃棄される。この結果、パケットロスが発生する。パケットロスによって端末装置１ａと端末装置１ｂとの間の通信、及び端末装置１ａと端末装置１ｃとの間の通信が異常となる。
【００１６】
パケットロスを回避するため、図１（Ｂ）に示すように、中継装置２ｃを高性能な中継装置２ｇに入れ替えて帯域を増やすことが考えられる。或いは、図１（Ｃ）に示すように、中継装置２ｃと端末装置１ａとの間に中継装置２ｈを経由する迂回路を増設して帯域を増やすことが考えられる。
【００１７】
しかし、中継装置の入れ替え（置換）や迂回路の増設には、多大なコストが発生する。実施形態では、高性能な中継装置２ｇへの入れ替えや迂回路の増設無く、パケットロス、ひいてはパケットロスによる通信異常を回避し得る通信装置,通信システム及びパケット
転送方法について説明する。
【００１８】
〔実施形態〕
＜ネットワーク構成＞
図２は、実施形態に係る通信システムの構成例を示す。ネットワークの構成は、図１（Ａ）に示した参考例のネットワークと機器の配置や接続関係は同様である。但し、実施形態では、中継装置２ｃ,中継装置２ｂ及び中継装置２ｄの代わりに、中継装置３ａ,中継装置３ｂ,中継装置３ｃが設けられている。中継装置３ａ,中継装置３ｂ,中継装置３ｃを区
別しない場合には、「中継装置３」と表記する。
【００１９】
中継装置は、「通信装置」の一例である。通信装置は、中継装置だけでなく、端末装置を含む概念である。実施形態の構成は、パケットを中継する中継装置だけでなく、パケットを生成して送信する端末装置が２以上の通信経路を有する場合にも適用し得る。また、中継装置３ａは、「通信装置」の一例である。端末装置１ａは「第１装置」の一例である。中継装置３ｂは、「第２装置」の一例である。中継装置３ｃは、「第３装置」の一例である。
【００２０】
実施形態に係る中継装置３ａは、中継装置２ｃと同様に、宛先の端末装置１ａへの通信経路上にある中継装置２ａへ送信されるパケットを一時記憶するバッファメモリ（以下「バッファ」ともいう）を有する。バッファは、中継装置２ａへ送信されるパケット量が規定量を超えないようにパケットの送信レートを調整するために使用される。バッファの使用によって、中継装置２ａでのバッファのオーバーフローが回避され、パケットロスによる通信異常を回避し得る。
【００２１】
実施形態に係る中継装置３ａは、中継装置２ｃと異なり、バッファに記憶されたパケット量（「バッファの記憶量」の一例）が所定値を超過する場合に、パケットを廃棄しない。廃棄の代わりに、中継装置３ａは、パケットの本来の転送先（中継装置２ａ）と異なる中継装置３ｂへ、超過分に相当するパケットを迂回送信する。
【００２２】
中継装置３ｂは、中継装置３ｂ内で迂回送信されたパケットを必要に応じて滞留させた後、中継装置３ａへこのパケットを折り返し送信する。パケットが中継装置３ａに受信されたとき、バッファメモリの記憶量が所定範囲に収まる（例えば所定値を超えていない）場合には、中継装置３ａは、中継装置３ｂから受信されたパケットをバッファメモリに記憶し、中継装置２ａへ送信する。
【００２３】
パケット量が所定値を超えている場合には、中継装置３ａは、中継装置３ｂから受信さ
れたパケットを、中継装置３ｂとは異なる、他の迂回先としての中継装置３ｃへ送信する。中継装置３ｃは、必要に応じてパケットを滞留させた後、迂回されてきたパケットを中継装置３ａに折り返し送信する。中継装置３ａは、中継装置３ｃからのパケットを中継装置２ａに送る。
【００２４】
このようにして、実施形態では、バッファの記憶量が所定値を超過する場合に、パケットがバッファに記憶されることなく、中継装置３ａ→中継装置３ｂ→中継装置３ａ（→中継装置３ｃ→中継装置３ａ）のルート（迂回路）をパケットが経由するようにパケット転送が制御される。これによって、パケットの遅延時間を稼ぎ、バッファのオーバーフローによるパケットの喪失や、オーバーフロー回避乃至解消のためのパケット廃棄、すなわちパケットロスが発生しないようにされる。なお、図２の例では、中継装置３ａへパケットを折り返す中継装置３の数が２である場合を例示しているが、このような中継装置の数は１でも３以上であっても良い。
【００２５】
＜中継装置のハードウェア構成＞
図３は、中継装置２、中継装置３として使用可能な中継装置１０のハードウェア構成例を示す。中継装置１０は、Central Processing Unit（ＣＰＵ）１１と、ＣＰＵ１１と接
続された単数又は複数のメモリ１２と、ＣＰＵ１１と接続されたスイッチ１３と、スイッチ１３に含まれたメモリ１４と、スイッチ１３と接続されたＰＨＹ１５と、ＰＨＹ１５に接続された複数のポート１６とを含む。
【００２６】
ＣＰＵ１１は、「プロセッサ」、「制御部」、「制御装置」の一例であり、メモリ１２及びメモリ１４のそれぞれは、「記憶装置」、「メモリ」、「記憶部」、「記憶媒体」の一例である。
【００２７】
メモリ１２、メモリ１４は、主記憶装置と補助記憶装置とを含む。主記憶装置は、プログラムの展開領域，ＣＰＵ１１の作業領域，データやプログラムの記憶領域、バッファ領域、バッファ領域として使用される。主記憶装置は、例えばRandom Access Memory（ＲＡＭ），或いはＲＡＭとRead Only Memory（ＲＯＭ）との組み合わせで形成される。
【００２８】
補助記憶装置は、例えば、ハードディスクドライブ（ＨＤＤ），Solid State Drive（
ＳＳＤ），フラッシュメモリ，Electrically Erasable Programmable Read-Only Memory
（ＥＥＰＲＯＭ）などの不揮発性記憶媒体で形成される。補助記憶装置は、データやプログラムの記憶領域として使用される。
【００２９】
メモリ１２は、例えば、オペレーティングシステム（ＯＳ）がインストールされ、ＯＳ上の設定データを保存している。もっとも、メモリ１２は、ＯＳ以外のプログラムやＯＳの設定データ以外のデータを記憶することができる。
【００３０】
メモリ１４は、フレーム（パケット）をバッファ（一時記憶）するバッファメモリとして使用される。また、メモリ１４は、パケットの送信元情報に対応する宛先情報を記憶したテーブルを記憶する。テーブルは、ＭＡＣフレームの転送に用いるＭＡＣ学習テーブルや、ＩＰパケットの転送に用いるルーティングテーブル、ＩＰアドレスとＭＡＣアドレスとの対応関係を示すＡＲＰテーブルなどを含む。ＩＰアドレスは「ネットワークアドレス」の一例であり、ＭＡＣアドレスは「物理アドレス」の一例である。
【００３１】
スイッチ１３は、テーブルを用いたフレーム（パケット）の転送（スイッチング）を行う。すなわち、スイッチ１３は、メモリ１４に記憶されたテーブルを用い、ＰＨＹ１５から受信されるパケットの宛先に合致する出力先を決定し、出力先に対応するポート１６へ向けてパケットを送り出す。また、スイッチ１３は、ＱｏＳ（サービス品質）に係る処理
（トラフィックの優先度に応じた処理）、及びＭＡＣ（Media Access Control）層の処理などを行う。ＱｏＳ情報は、パケットに対する優先順位を示す情報として扱われる。
【００３２】
ＰＨＹ１５は、符号化などの物理層の処理を行う。ＰＨＹ１５やスイッチ１３は、例えば、ＬＳＩなどの集積回路で形成される。各ポート１６は、外部とデータを入出力するための物理インタフェースである。各ポート１６にネットワークと接続する物理リンク（ケーブル）が接続される。
【００３３】
ＣＰＵ１１は、メモリ１２に記憶されたプログラムを実行することによって、中継装置２（中継装置３）としての処理乃至動作を行う。実施形態は、中継装置２及び中継装置３がレイヤ３スイッチ又はルータである場合と、中継装置２及び中継装置３がレイヤ２スイッチ又はスイッチングＨＵＢである場合とがある。
【００３４】
中継装置２及び中継装置３がレイヤ３スイッチ又はルータである場合、ＣＰＵ１１は、ＩＰ層のルーティングや冗長化などのソフトウェア処理を実行する。これに対し、中継装置２及び中継装置３がレイヤ２スイッチ又はＨＵＢである場合には、ＣＰＵ１１は、ＭＡＣ層（レイヤ２）のルーティングやソフトウェア処理を実行する。
【００３５】
中継装置１０におけるＣＰＵ１１がプログラムを実行することにより、中継装置１０は、中継装置３ａ,中継装置３ｂ,中継装置３ｃとして動作することができる。中継装置３ａは、パケット迂回処理と、パケット復元処理と、迂回パケット復帰処理とを少なくとも行う。
【００３６】
＜中継装置の構成及び動作例＞
図４は、中継装置３ａとして動作する中継装置１０が有する機能を示すブロック図であり、パケット迂回処理時の動作を示す。図５は、パケット迂回処理の例を示すフローチャートである。
【００３７】
図４において、中継装置３ａは、パケット受信部２１と、パケット受信処理部２２と、優先順位判定部２３と、高優先バッファ領域２４と、低優先バッファ領域２５と、送信制御部２６と、ＭＡＣ学習テーブル２７とを含む。また、中継装置３ａは、パケット送信部２８と、制御処理部２９と、ヘッダ復元部３０と、ＡＲＰ（Address Resolution Protocol：アドレス解決プロトコル）テーブル３１と、パケット送信部３７とを含む。さらに、
中継装置３ａは、ヘッダ復元部３０と、順序管理部３２と、迂回先管理領域３３と、順序管理領域３４と、迂回送信制御部３５と、ヘッダ変換部３６と、パケット送信部３７とを含む。
【００３８】
パケット受信部２１は、各ポート１６に到着するパケットを受信する。パケット受信処理部２２は、パケットが自装置宛てか否かなどのパケット受信処理を行う。優先順位判定部２３は、パケット中のＱｏＳデータを参照して、パケットの優先順位を判定する。
【００３９】
高優先バッファ領域２４は、優先順位が「高優先」と判定されたパケットを一時記憶するバッファ領域（バッファメモリ）である。低優先バッファ領域２５は、優先順位が「低優先」と判定されたパケット（高優先以外のパケット）を一時記憶するバッファ領域（バッファメモリ）である。高優先バッファ領域２４及び低優先バッファ領域２５の容量は、各ポート１６の帯域を考慮して決定される。また、高優先バッファ領域２４及び低優先バッファ領域２５には、パケットの記憶量の上限である所定値が予め設定されている。送信制御部２６は、ＭＡＣ学習テーブル２７を参照して、パケットの送信先（出力先のポート１６）を決定する。パケット送信部は、例えば、ポート１６対応に設けられ、パケットを送信する。図４では、中継装置２ａにパケットを送信するポート１６に対応するパケット
送信部２８と、中継装置３ｂにパケットを送信するポート１６に対応するパケット送信部３７とが例示されている。なお、パケット送信部２８に対し、ポート１６の先（リンク）の帯域に応じた送信レート調整を行うための一時記憶領域を設け、帯域を超過しないように送信タイミングを調整することもできる。制御処理部２９は、制御用のパケットに基づく制御や処理を行う。
【００４０】
ヘッダ復元部３０は、迂回先から折り返されて戻ってきたパケットのヘッダ中の宛先ＭＡＣアドレスを元のＭＡＣアドレスに戻す処理を行う。ＡＲＰテーブル３１は、ＡＲＰ処理の結果として得られる、ＩＰアドレスとＭＡＣアドレスとの対応関係を示す情報を記憶する。順序管理部３２は、迂回先へ迂回させるパケットの順序を管理する。
【００４１】
迂回先管理領域３３は、迂回先を示す情報を記憶する。図６は、迂回先管理領域３３のデータ構造例を示す図である。図６に示すように、迂回先管理領域３３は、迂回先となるインタフェース（ポート）毎に用意された１以上のレコードにより形成されるテーブルを記憶する。迂回先となる各ポートに接続される隣接装置は、「複数の第２装置の候補」の一例である。例えば、中継装置３ｂ及び中継装置３ｃは、「複数の第２装置の候補」の一例である。
【００４２】
レコードは、迂回先のインタフェース（ポート）の識別情報と、迂回先のポートに係る送信レート,受信レート,及び迂回パケット数を含む。送信レートは、単位時間当たりのパケット送信量を示し、受信レートは、単位時間当たりのパケット受信量を示す。迂回パケット数は、その迂回先のポートへ送信したパケットの数を示す。
【００４３】
順序管理領域３４は、迂回先へ送信したパケットの順序を示す情報を記憶する。図７は、順序管理領域３４のデータ構造例を示す。順序管理領域３４は、迂回パケットの識別情報を記憶するレコードの集合で形成されるテーブルを記憶する。パケットの識別情報として、パケットのヘッダに格納された情報（ヘッダ情報）が用いられる。図７の例では、パケットは、宛先ＭＡＣアドレス,送信元ＭＡＣアドレス,Ｅｔｈｅｒタイプ,プロトコル,宛先ＩＰアドレス,送信元ＩＰアドレス,及びＶＬＡＮ識別子（ＶＬＡＮＩＤ）の組み合わせが例示されている。もっとも、パケットの識別情報をなすヘッダ情報の組み合わせは適宜選択可能である。さらに、各レコードには、パケットの迂回先として選択されたインタフェース（迂回インタフェース）の識別情報と、タイムスタンプ（レコードの格納時刻）とが記憶される。
【００４４】
迂回送信制御部３５は、パケットの迂回先を特定する。ヘッダ変換部３６は、パケットのヘッダに含まれる宛先ＭＡＣアドレスの変換処理を行う。パケット送信部３７は、迂回先へのパケット送信を行う。
【００４５】
例えば、パケット受信部２１,パケット送信部２８,パケット送信部３７,パケット受信
処理部２２は、図３に示したポート１６及びＰＨＹ１５が有する機能である。優先順位判定部２３,送信制御部２６,ヘッダ復元部３０,順序管理部３２,迂回送信制御部３５,ヘッ
ダ変換部３６は、ＣＰＵ１１がプログラムを実行することによって得られる機能である。換言すれば、ＣＰＵ１１は、これら各部として動作する。但し、ＣＰＵ１１の機能として説明した各部の少なくとも一部が、スイッチ１３によって行われても良い。
【００４６】
高優先バッファ領域２４,低優先バッファ領域２５,ＭＡＣ学習テーブル２７,ＡＲＰテ
ーブル３１は、メモリ１４上に作成される。但し、メモリ１２上に作成されても良い。また、迂回先管理領域３３及び順序管理領域３４のそれぞれは、メモリ１２及びメモリ１４の少なくとも一方上に作成することができる。その他、以下に説明する動作例や処理例で示す情報は、メモリ１２又はメモリ１４に記憶されている。
【００４７】
低優先バッファ領域２５は、「第１装置向けの宛先情報を含むパケットを一時記憶可能なバッファ」の一例である。但し、バッファが優先順位乃至優先度と関連づけられていることは必須要件ではない。高優先バッファ領域２４が「バッファ」として扱われることもあり得る。ヘッダ変換部３６は、「変更部」の一例である。順序管理部３２は、「管理部」、「決定部」の一例である。ヘッダ復元部３０は、「書換部」の一例である。順序管理領域３４は、「記憶部」の一例である。
【００４８】
＜＜パケット迂回処理＞＞
以下、図４及び図５を用いてパケット迂回処理を説明する。図５の００１において、パケット受信部２１は、パケットを受信する（図４（１））。受信されたパケットは、受信処理部２２に渡される。
【００４９】
受信処理部２２は、パケットのヘッダを参照してパケットの宛先を確認する（００２,
図４（２））。確認は、例えば、ヘッダに含まれた宛先アドレスが自装置（中継装置３ａ）のアドレスかを判定することによって行われる。パケットの宛先が自装置である場合には（００２のＹ）、パケットが制御パケットとして扱われ、制御処理部２９に渡される。制御処理部２９は、制御様パケットに基づく処理や制御を行う（００３）。
【００５０】
パケットが自装置宛てでなければ（００２のＮ）、パケットが優先順位判定部２３に渡される。優先順位判定部２３は、パケットの優先順位(ＱｏＳ)に従って、パケットの振分を行う（００３,図４（３））。
【００５１】
ここで、パケットの高優先、低優先の設定は、予め行われる。優先順位の設定は、トラフィック,サービス,ネットワーク（例えばＶＬＡＮ）,ユーザなど様々な単位で設定可能
である。例えば、ＶｏＩＰ（Voice over Internet Protocol）のパケットを高優先に設定したり、ＵＤＰ（User Datagram Protocol）のパケットは低優先に設定したりすることが考えられる。優先度の判定は、例えば、パケットのヘッダ情報に基づいて行われる。
【００５２】
００４の判定において、パケットが高優先パケットと判定される場合には、パケットは、高優先バッファ領域２４へ格納される（００５,図４（４））。高優先バッファ領域２
４へ格納されたパケットは、送信制御部２６によって、優先的に読み出される（図４（５））。
【００５３】
送信制御部２６は、ＭＡＣ学習テーブル２７からパケットのヘッダに含まれた宛先ＭＡＣアドレス（DstMAC）に対応する送信インタフェース（ポート１６）を特定し（図４（６））、パケットをパケット送信部２８に送る。パケット送信部２８は、特定したポート１６から他の装置へパケットを送信する（００９）。
【００５４】
００４の判定において、パケットが低優先パケットと判定される場合には、パケットは、順序管理部３２へ渡される（図４（７））。順序管理部３２は、順序管理領域３４（図７）を参照し、受け取ったパケットの識別情報と同一の識別情報を含むレコードが存在しないか確認する（００６）。レコードがある場合には、処理が０１２に進み、レコードがない場合には、処理が００７に進む。
【００５５】
００７では、順序管理部３２は、低優先バッファ領域２５に空き領域があるか否かを判定する。この判定は、低優先バッファ領域２５のパケット記憶量が所定値となっているか、或いは所定値を超過しているか否かの判定で行われる。記憶量が所定値となっている、或いは超過している場合には、空き領域がないと判定され、そうでなければ、空き領域があると判定される。
【００５６】
空き領域があると判定する場合には（００７のＹ）、パケットを低優先バッファ領域２５に格納する（００８,図４（９））。この場合、パケットは、送信制御部２６によって
低優先に応じたタイミングで低優先バッファ領域２５から読み出され、ＭＡＣ学習テーブル２７を用いて宛先に対応するポート１６が特定される（図４（６））。そして、パケット送信部２８によって、特定されたポート１６から送信される（００９）。
【００５７】
低優先バッファ領域２５に空き領域がないと判定される場合には（００７のＮ）、順序管理部３２は、パケットの迂回先があるか否かを判定する（０１０）。０１０の処理は、例えば、以下のようにして行われる。
【００５８】
順序管理部３２は、順序管理領域３４（図７）を参照する（図４（８））。順序管理部３２は、受信されたパケットのヘッダ情報と同一の情報を含むレコードが順序管理領域３４にあるか否かを判定する。
【００５９】
このとき、該当するレコードがある場合には、順序管理部３２は、該当のレコード中の迂回インタフェースを示す情報が、受信されたパケットの受信ポートを示すか否かを判定する。迂回インタフェースが受信ポートを示さない（迂回インタフェースと受信ポートとが異なる）場合には、順序管理部３２は、該当レコード中の迂回インタフェースで示される迂回先のポートへパケットを送信することを決定する。その後、処理が０１２に進む（０１０のＹ（迂回先あり））。これによって、パケットの順序が維持される。
【００６０】
迂回インタフェースと受信ポートとが異なるか否かの判定は、パケットが本来の通信経路から到着したものか、迂回させたパケットが折り返して到着したものかを判定するために行われる。
【００６１】
順序管理部３２は、受信されたパケットのヘッダ情報と同一の情報を含むレコードが順序管理領域３４に格納されていない場合には、迂回先管理領域３３（図６）を参照する（図４（１０））。順序管理部３２は、迂回先ポートとして登録された１以上のポート１６の中から、送信レートと受信レートとの合計値が最も低いポートを選出する。
【００６２】
順序管理部３２は、選出したポートの送信レートと受信レートと迂回パケット数の少なくとも１つが閾値を超過するかを判定する。超過しない場合は、順序管理部３２は、該当ポートを迂回先のポートとして決定し、処理を０１２へ進める（０１０のＹ（迂回先あり））。これに対し、送信レートと受信レートと迂回パケット数の少なくとも一つが超過する場合には、選出したポートを用いた迂回は不可と判定する。迂回によるトラフィックの増加を回避するためである。迂回が不可の場合（０１０のＮ（迂回先なし））、パケットは廃棄される（０１１）。
【００６３】
このように、実施形態では、宛先に対応するポートと異なるポートのうち、通信量（送信レート、受信レート）が少なく、且つ送信レート,受信レート,及びパケット数が閾値を超過しないポートが迂回先のポートとして選定される。但し、迂回先の選定方法は、上記以外であっても良い。
【００６４】
０１２では、順序管理部３２が、迂回先管理領域３３における該当レコード（０１０で決定したポートに対応するレコード）の「迂回パケット数」を＋１（インクリメント）する。
【００６５】
０１３では、順序管理部３２が、順序管理領域３４に、迂回先へ転送するパケットの情報（宛先ＭＡＣ／ＩＰアドレス、送信元ＭＡＣ／ＩＰアドレス、プロトコル、迂回先ポー
ト、格納時刻など）を追加する（図４（１１））。パケットは、迂回送信制御部３５へ送られる（図４（１２））。
【００６６】
０１４では、迂回送信制御部３５が、ヘッダ変換部３６を用いたヘッダ変換処理を行う。ヘッダ変換処理によって、予め設定してある迂回先のＭＡＣアドレス（迂回先ポートを介して接続された隣接装置のＭＡＣアドレス）がパケットのヘッダにある宛先ＭＡＣアドレス(DstMAC)に変換される（図４（１３））。
【００６７】
０１５では、迂回送信制御部３５は、変換後の宛先ＭＡＣアドレスを基にＭＡＣ学習テーブル２７を参照し、変換後の宛先ＭＡＣアドレスに対応する出力先のポートとして、迂回先のポート１６を特定する（図４（１４））。パケット送信部３７は、迂回送信制御部３５が特定した迂回先のポート１６から隣接装置へパケットを転送する。実施形態では、中継装置３ｂ,中継装置３ｃが迂回先ポートの先にある隣接装置となる。
【００６８】
＜＜パケット復元処理＞＞
次に、図８及び図９を用いてパケット復元処理を説明する。図８は、中継装置３ｂ（３ｃ）のパケット復元処理時の動作を示す図であり、図９は、パケット復元処理の例を示すフローチャートである。
【００６９】
図８に示すように、中継装置３ｂ（３ｃ）も、プログラムの実行によって、中継装置３ａと同様の機能を有する。以下、中継装置３ｂが迂回先の装置であるとの仮定で説明する。図９の１０１において、中継装置３ｂのパケット受信部２１でパケット受信する（図８（１））。パケットは受信処理部２２に渡される（図８（２））。
【００７０】
１０２では、受信処理部２２が宛先を確認する。確認によって、受信したパケットの宛先ＭＡＣアドレスとＩＰアドレスとがともに自装置（中継装置３ｂ）宛であった場合、パケットは、制御用パケットとして制御処理部２９に送られる。制御処理部２９は、パケットに基づく処理を行う（１０３,図８（３））。
【００７１】
１０３では、受信したパケットの宛先ＭＡＣアドレスが自装置宛で、且つＩＰアドレスが自装置以外であった場合、パケットがヘッダ復元部３０に渡され（図８（４））処理が１０６に進む。そうでない場合、例えば、通常のパケット転送処理が行われる（１０５）。
【００７２】
１０６では、ヘッダ復元部３０がＡＲＰテーブル３１を参照する（図８（５））。ＡＲＰテーブル３１には、ＩＰアドレスとＭＡＣアドレスとの対応関係が記憶されており、ヘッダ復元部３０は、パケットの宛先ＩＰアドレスに対応するＭＡＣアドレスをＡＲＰテーブル３１から読み出し、パケットのヘッダの宛先ＭＡＣアドレスに設定する。これによって、中継装置３ａから迂回されてきたパケットのヘッダが復元される。パケットは優先順位判定部２３に渡される。
【００７３】
１０７では、優先順位判定部２３がパケットの優先順位を判定する。パケットが「高優先」の場合、パケットが高優先バッファ領域２４に記憶される（１０８）。但し、迂回されてきたパケットの優先順位は「低優先」であるので、処理が１０９に進む（図８（７））。
【００７４】
１０９では、順序管理部３２が、順序管理領域３４を参照し、受信したパケットに対応するレコードの有無を確認する。レコードがある場合（１０９のＹ）、パケットは低優先バッファ領域２５に記憶される（１１１）。
【００７５】
レコードがない場合（１０９のＮ）、順序管理部３２は、低優先バッファ領域２５に空きがあるか否かを判定する（１１０）。空きがある場合、パケットが低優先バッファ領域２５に記憶される。空きがなければ、パケットは廃棄される（１１２）。
【００７６】
低優先バッファ領域２５に記憶されたパケットについて、図４及び図５を用いて説明したパケット送信処理（００９）と同様の処理が行われる（１１３,図８（１０）及び（１
１））。詳細は既に説明したのと同様であるので説明を省略する。このようにして、迂回先の中継装置３ｂで受信されたパケットが、迂回元の中継装置３ａに折り返し送信される。
【００７７】
＜＜迂回パケット復帰処理＞＞
次に、図１０及び図１１を用いて迂回パケット復帰処理を説明する。図１０は、中継装置３ａの迂回パケット復帰処理時の動作を示す図であり、図１１は、パケット復帰処理の例を示すフローチャートである。
【００７８】
図１１における、００１〜００６の処理は、図５に示した処理と同じであるため、説明を省略する。００６において、順序管理部３２は、順序管理領域３４に、受信されたパケットに対応するレコードがある場合に、３０１へ処理を進める。
【００７９】
３０１では、順序管理部３２は、順序管理領域３４から、格納時刻が最も古いレコードを削除する。３０２では、順序管理部３２は、迂回先管理領域３３から、パケットの受信ポートと合致する迂回先ポートの情報を含むレコードを特定し、当該レコード中の迂回パケット数をデクリメント（１を減算）する。
【００８０】
その後は、図４に示した００７,００８,００９の各処理と同様の処理が行われる。これらの処理の説明は省略する。３０３では、順序管理部は、連続迂回回数が零より大きいか否かを判定する。連続迂回回数は、或る装置から折り返されたパケットを他の迂回先へ転送可能な回数である。連続迂回回数は、予め装置のコンフィグファイルなどで設定できるようにされる。連続迂回回数が０より大きい場合には、３０４に処理が進み、そうでない場合には、処理が０１１に進み、パケットが廃棄される。
【００８１】
３０４では、連続迂回回数がデクリメントされる。その後は、パケット迂回処理で説明した０１０〜０１５と同様の処理が実行される。説明は省略する。迂回パケット復帰処理によって、迂回先から折り返されて戻ってきたパケットが、本来の宛先（端末装置１ａ）に対応する中継装置２ａと接続されたポート１６から送信される。また、連続迂回回数が零でなければ、他の迂回先へ再び転送され、遅延時間を稼ぐ処理が行われる。
【００８２】
＜パケットの転送例＞
＜＜レイヤ２スイッチの場合＞＞
図１３は、中継装置２、３がレイヤ２スイッチ（又はスイッチングＨＵＢ）である場合におけるパケットの転送例の説明図である。この例でのパケットは、ＭＡＣフレームである。
【００８３】
図１３において、端末装置１ｃ（ＭＡＣアドレス“ＡＡ”を有する）は、端末装置１ａ（ＭＡＣアドレス“ＦＦ”を有する）宛のパケットを送信する。パケットのヘッダには、送信元ＭＡＣアドレス（ＳｒｃＭＡＣ）“ＡＡ”,宛先ＭＡＣアドレス（ＤｓｔＭＡＣ）
“ＦＦ”,送信元ＩＰアドレス（ＳｒｃＩＰ）“１．０．０．１”及び宛先ＩＰアドレス
（ＤｓｔＩＰ）“１．０．０．２”が含まれている。宛先ＭＡＣアドレス“ＦＦ”は、「第１装置向けの宛先情報」の一例である。なお、「〜装置向けの宛先情報」とは、〜装置自体のアドレスと、〜装置に至る経路上の装置のアドレスとを含む概念である。
【００８４】
パケットは、中継装置２ｆとして動作するレイヤ２スイッチであるスイッチＡに受信される。スイッチＡは、宛先ＭＡＣアドレスに基づき、パケットをスイッチＢに転送する。スイッチＢは、中継装置３ａとして動作するレイヤ２スイッチである。
【００８５】
スイッチＢでは、低優先バッファ領域３２に空き領域があるか否かを判定する。空き領域がない（キューが枯渇する）ことは、宛先ＭＡＣアドレスに対応する経路に空き帯域がないことを意味する。この場合に、スイッチＢ（中継装置３ａ）は、パケット迂回処理及び迂回パケット復帰処理を行う状態となる。すなわち、スイッチＢは、スイッチＡ（中継装置２ｆ）から受信されるパケットに対して、パケット迂回処理を行い、スイッチＤ（中継装置３ｂ）から折り返されるパケットに対して迂回パケット復帰処理を行う。
【００８６】
図１３の例では、スイッチＢは、ポート“１”から受信されるパケットについて、迂回先を決定する。迂回先として、スイッチＤ（中継装置３ｂとして動作するレイヤ２スイッチ）と接続されたポート“２”が決定される。このとき、スイッチＢは、迂回先ポートであるポート“２”に対応するスイッチＤのＭＡＣアドレス“ＤＡ”を、パケットの宛先ＭＡＣアドレスに変換する（ヘッダ変換）。これによって、パケットは迂回先のスイッチＤへ転送される。宛先ＭＡＣアドレス“ＤＡ”は、「第２装置向けの宛先情報」の一例である。
【００８７】
スイッチＤでは、パケットの宛先ＭＡＣアドレスが自装置で、且つ宛先ＩＰアドレスが他装置のＩＰアドレスであるので、ＡＲＰテーブル３１を用いてパケットの宛先ＭＡＣアドレスを、元のＭＡＣアドレス“ＦＦ”に戻す（ヘッダ復元）。これによって、パケットは、スイッチＢへ折り返される。宛先ＭＡＣアドレス“ＤＡ”及び宛先ＩＰアドレス“１．０．０．２”は、「所定値を示す宛先情報」の一例である。
【００８８】
スイッチＢでは、既に説明した迂回パケット復帰処理が実行され、パケットがスイッチＣ（中継装置２ａとして動作するレイヤ２スイッチ）へ転送される。これにより、パケットが本来の通信経路を転送される。スイッチＣは、宛先ＭＡＣアドレスに従い、パケットを端末装置１ａに送る。
【００８９】
＜＜ルータの場合＞＞
図１４は、中継装置２、３がルータ（又はレイヤ３スイッチ）である場合におけるパケットの転送例の説明図である。この例でのパケットは、ＩＰパケットである。ルータは、パケットのヘッダに含まれた宛先ＩＰアドレスに従って、パケットの転送を行う。
【００９０】
図１４において、端末装置１ｃ（ＩＰアドレス“１．０．０．１”）は、端末装置１ａ（ＩＰアドレス“１．０．０．２”）宛のパケットを送信する。パケットのヘッダには、送信元ＭＡＣアドレス“ＡＡ”,宛先ＭＡＣアドレス（ＤｓｔＭＡＣ）“ＢＡ”,送信元ＩＰアドレス（ＳｒｃＩＰ）“１．０．０．１”及び宛先ＩＰアドレス（ＤｓｔＩＰ）“１．０．０．２”が含まれている。ＩＰアドレスに基づきパケットが転送される場合、宛先ＭＡＣアドレスとして、次ホップのＭＡＣアドレスが設定される。端末装置１ｃの次ホップは、ルータａである。ルータａは、中継装置２ｆとして動作する。
【００９１】
ルータａは、端末装置１ｃからのパケットを宛先ＩＰアドレスに基づき、ルータｂに転送する。ルータｂは、中継装置３ａとして動作する。ルータｂの受信処理部は、パケットの宛先ＭＡＣアドレスに対応するキュー（バッファ）に空き領域があるか否かを判定する。空き領域がないと判定される場合、ルータｂは、パケット迂回処理及び迂回パケット復帰処理を行う状態となる。すなわち、ルータｂは、ルータａ（中継装置２ｆ）から受信されるパケットに対してパケット迂回処理を行い、ルータｄから折り返されるパケットに対
して迂回パケット復帰処理を行う。ルータｂは、パケットの宛先ＭＡＣアドレスを、ルータｄの“ＤＡ”に書き換え、ルータｄへ送信する。ＭＡＣアドレス“ＤＡ”は、「第２装置向けの宛先情報」の一例である。
【００９２】
ルータｄは、中継装置３ｂとして動作する。ルータｄでは、ルータｂから転送されたパケットの宛先ＭＡＣアドレスが自装置宛てで宛先ＩＰアドレスが他装置である場合に、宛先ＩＰアドレスに基づくパケット転送を行う。このとき、ルータｄのルーティングテーブルにおいて、宛先ＩＰアドレス“１．０．０．２”は、ルータｂの先にあるので、宛先ＭＡＣアドレスがルータｂに対応する“ＣＢ”に書き換えられ、ルータｂへ転送される。これにより、パケットが折り返される。ＭＡＣアドレス“ＣＢ”は、「第１装置向けの宛先情報」の一例である。
【００９３】
ルータｂは、迂回パケット復帰処理を行い、宛先ＩＰアドレスに基づいて、パケットをルータｃ（中継装置２ａとして動作する）に転送し、ルータｃは、宛先ＩＰアドレスに基づいて、パケットを端末装置１ａに転送する。
【００９４】
＜パケット転送手順例１：迂回先が１つの場合＞
図１５〜図１８は、パケット転送手順例１、すなわち端末装置１ｂ及び端末装置１ｃのそれぞれから、端末装置１ａ向けのパケット８個を送信する場合の手順を示す。図１５において、中継装置３ａは、端末装置１ｂからのパケットを受信するポート＃１と、端末装置１ｃからのパケットを受信するポート＃２と、端末装置１ａへ向けてパケットを送信するポート＃３とを含んでいる。
【００９５】
ポート１６は、パケットの送信部と受信部とを含んでおり、各送信部と各受信部とにそれぞれ固定サイズのパケット４個を記憶できるメモリ領域（メモリ１４の領域）が割り当てられていると仮定する。優先制御（優先順位）については考慮しない。
【００９６】
図１５の手順１では、端末装置１ｂからのパケット群（トラフィック１とする）,端末
装置１ｃからのパケット群（トラフィック２とする）が送信される。手順２では、ポート＃１にて、トラフィック１のパケット“１”が受信される。また、ポート＃１にて、トラフィック１のパケット“１”が受信される。
【００９７】
各受信部は、１タイミングで１個のパケットを受信し、１個のパケットを次へ送る。送信部も、１個のパケットを次に送る。このため、手順３では、ポート＃１及びポート＃２の各受信部から各パケット“１”がポート＃３に転送される。また、ポート＃１及びポート＃２の受信部は、パケット“２”をそれぞれ受信する。
【００９８】
手順４では、ポート＃３の送信部がトラフィック１のパケット“１”を端末装置１ａへ送信する一方で、ポート＃１及びポート＃２からのパケット“２”を受信する。また、ポート＃１及びポート＃２の受信部は、パケット“３”をそれぞれ受信する。
【００９９】
手順５にて、ポート＃３の送信部がトラフィック１のパケット“２”を端末装置１ａへ送信する。一方で、ポート＃３の送信部は、ポート＃１及びポート＃２からのパケット“３”を受信する。これにより、ポート＃３の送信部のメモリ領域（バッファの一例）が所定値（上限：４個）となる。また、ポート＃１及びポート＃２の受信部は、パケット“４”をそれぞれ受信する。
【０１００】
図１６に示す手順６では、トラフィック１のパケット“４”は、ポート＃３の送信部のメモリ領域に記憶し得るが、トラフィック２のパケット“４”は、所定値である４個を超過するため、送信部のメモリ領域に記憶し得ない。このため、トラフィック２のパケット
“４”は、迂回先のポートであるポート＃４の送信部に送られる。
【０１０１】
手順７に示すように、ポート＃４の送信部は、次のタイミングで、トラフィック２のパケット“４”を迂回先の中継装置３ｂに送る。中継装置３ｂで受信される。中継装置３ｂは、最大２個のパケットを滞留可能なメモリ領域（バッファ）を有している。
【０１０２】
このため、次のタイミングである手順８に例示するように、次のタイミングで、中継装置３ｂは、トラフィック２のパケット“４”及び“５”を保持する。次のタイミングである手順９では、中継装置３ｂは、トラフィック２のパケット“４”を中継装置３ａへ折り返し（送り返し）、パケット“４”は、ポート＃４の受信部で受信される。
【０１０３】
次のタイミングである手順１０（図１７）では、ポート＃４の受信部で受信されたパケットは、次のタイミングで、本来の送信先と接続されたポート＃３の送信部に転送される。手順１０では、トラフィック２のパケット“４”が、ポート＃３の送信部で保持されている。
【０１０４】
このようにして、ポート＃３の送信部のメモリ領域に記憶しきれない（所定値４個を超過する）パケットは、ポート＃４の送信部→中継装置３ｂ→ポート＃４の受信部→ポート＃３の送信部の経路で転送される。結果、ポート＃３のメモリ領域に記憶できないパケットに対し、パケット４個分の遅延時間が与えられる。その後、手順１１以降同様の動作が行われ、最終的には、トラフィック１及び２に係る全てのパケットが、端末装置１ａに到達し、パケットロスが生じない。
【０１０５】
＜パケット転送手順例２：迂回先が２つの場合＞
図１９及び図２０は、パケット転送手順例２、すなわち迂回先が２つの場合のパケット転送手順を示す。パケット転送手順例２では、端末装置１ｂ及び端末装置１ｃから端末装置１ａ向けのパケット（トラフィック１及び２）が１６個ずつ送信される（図１９、手順１参照）。中継装置３ａでは、ポート＃４及びポート＃５が、ポート＃３の迂回先ポートとして使用される。
【０１０６】
ポート＃３の保持可能なパケットの上限（所定値）はパケット転送手順例１と同じである。また、１タイミングで転送されるパケットの数は１個である。これも、パケット転送手順例１と同じである。手順２以降、パケット転送手順例２と同様に、迂回先である中継装置３ｂを経るパケット転送が行われる（図１９、手順６、手順１２参照）。手順２〜５,７〜１１は省略している。
【０１０７】
図２０の手順１７（手順１３〜１６は省略）で例示するように、ポート＃４の送信部におけるパケット数が所定値（４つ）となっている場合には、第２の迂回先であるポート＃５の送信部にパケットが転送される。パケットは、ポート＃５の送信部から中継装置３ｃに転送される。
【０１０８】
図２０の例では、中継装置３ｃは、パケット２個を滞留させる（保持する）ことができ、中継装置３ａのポート＃５の受信部にパケットを折り返す（手順２１参照、手順１８〜２０は省略）。最終的に、トラフィック１及び２のパケット（各１６個）は、パケットロスなく端末装置１ａに到着する（図２０、手順３５参照）。
【０１０９】
＜効果＞
実施形態によれば、中継装置３ａにおいて、低優先バッファ領域２５のパケットの記憶量が所定値を超過する場合でも、パケットは廃棄されず、少なくとも１つの迂回先の中継装置（例えば中継装置３ｂ）を経て中継装置３ａに戻される。このとき、低優先バッファ
領域２５に空き領域がある（「記憶量が所定範囲にある」の一例）には、パケットを低優先バッファ領域２５に記憶することができ、端末装置１ａへ向けて転送することができる。このような実施形態の構成によれば、中継装置３ａにおける、低優先バッファ領域２５のオーバーフローを回避することができる。
【０１１０】
よって、パケットロスを回避し、パケットロスによる通信の異常を回避することができる。実施形態の構成は、短時間で大量のトラフィックが発生するような場面において、パケットロスの発生頻度を下げる効果がある。このため、短時間で見ればネットワークの容量を拡張したに等しい効果が得られる。
【０１１１】
また、実施形態の構成は、物理的なネットワーク構成を変える事なく、現有ネットワーク機器のファーム更新や記憶装置の増設で実現可能である。換言すれば、中継装置の入れ替えや迂回路の増設は不要である。このため、新たな機器の設置や光ファイバ等の回線の敷設は不要である。このため、導入コストを安価に抑える事ができる利点がある。
【０１１２】
また、実施形態では、連続迂回を可能として、遅延時間を稼ぐことにより、パケットロスの可能性を抑えることができる。また、実施形態では、順序管理領域３４の利用で、同一のトラフィック（パケットフロー）に属する各パケットが同一の迂回先に転送されることを保証できる。また、順序管理領域３４の利用で、迂回先から折り返されたパケットか否かを判定することができる。このようにして、構成の簡易化が図られている。
【０１１３】
また、実施形態では、迂回先管理領域３３にて、複数の迂回先ポートの情報を用意し、通信量の少ない迂回先にパケットを転送することができる。また、迂回先の中継装置３ｂ（３ｃ）では、ＡＲＰテーブル３１を用いたヘッダ復元処理によって、迂回元からのパケットを元の状態（ヘッダ変換前の状態）に戻すことができる。なお、実施形態では、バッファが優先度単位で設けられているが、バッファを設ける単位は、適宜設定可能であり、例えば、送信（出力）ポート単位、受信（入力）ポート単位、宛先単位等のいずれであっても良い。要は、第１装置向けの宛先情報を有するパケットを一時記憶可能なバッファの容量が所定値を超過する場合に、該バケットをバッファに記憶することなく第２の装置に送る構成となっていれば良い。以上説明した実施形態の構成は、適宜組み合わせることができる。
【符号の説明】
【０１１４】
１・・・端末装置
２,３・・・中継装置
１１・・・ＣＰＵ
１２,１４・・・メモリ
１３・・・スイッチ
３２・・・順序管理部
３６・・・ヘッダ変換部
【図１】
2017204785.tif 000003
【図２】
2017204785.tif 000004
【図３】
2017204785.tif 000005
【図４】
2017204785.tif 000006
【図５】
2017204785.tif 000007
【図６】
2017204785.tif 000008
【図７】
2017204785.tif 000009
【図８】
2017204785.tif 000010
【図９】
2017204785.tif 000011
【図１０】
2017204785.tif 000012
【図１１】
2017204785.tif 000013
【図１２】
2017204785.tif 000014
【図１３】
2017204785.tif 000015
【図１４】
2017204785.tif 000016
【図１５】
2017204785.tif 000017
【図１６】
2017204785.tif 000018
【図１７】
2017204785.tif 000019
【図１８】
2017204785.tif 000020
【図１９】
2017204785.tif 000021
【図２０】
2017204785.tif 000022