(57)【要約】    【課題】      ハードウェア処理により、パケット送信または転送処理の処理速度を高速に維持したまま、登録されたリンクレイヤアドレスの到達性を確認すること。    【解決手段】  本発明は、ネットワークアドレスとリンクレイヤアドレスとリンクレイヤアドレスの到達性の確認が必要であるか否か示すＳビット情報との組を格納したリンクレイヤアドレステーブルを設け、リンクレイヤアドレステーブルに格納されたあるリンクレイヤアドレスに対応するＳビット情報が到達性の確認が必要であることを示す場合、あるリンクレイヤアドレスの到達性の確認をし、到達性が確認された場合には対応するＳビット情報を到達性の確認が必要でないことを示す状態にし、到達性が確認できなかった場合にはあるリンクレイヤアドレスをリンクレイヤアドレステーブルから削除するようにした。  【選択図】      図１
2005167516.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークアドレスとリンクレイヤアドレスと前記リンクレイヤアドレスの到達性の確認が必要であるか否か示すＳビット情報との組を格納したリンクレイヤアドレステーブルと、前記リンクレイヤアドレスの到達性を確認する到達性確認処理部と、前記リンクレイヤアドレステーブルに格納されたある前記リンクレイヤアドレスに対応する前記Ｓビット情報が到達性の確認が必要であることを示す場合、前記到達性確認処理部に前記あるリンクレイヤアドレスの到達性の確認を指示し、前記到達性が確認された場合には前記対応するＳビット情報を前記到達性の確認がとれたことを示す状態にし、前記到達性が確認できなかった場合には前記あるリンクレイヤアドレスを前記リンクレイヤアドレステーブルから削除するリンクレイヤアドレステーブル管理部と、を具備したことを特徴とするリンクレイヤアドレステーブル管理装置。
【請求項２】
前記リンクレイヤアドレスを識別する識別情報を前記到達性の確認を行った時系列順に並べたＩｎｄｅｘテーブルを具備し、
前記リンクレイヤアドレステーブル管理部は、前記リンクレイヤアドレスの前記リンクレイヤの数が上限に達した場合に、前記Ｉｎｄｅｘテーブルを用いて前記到達性の確認が古い前記リンクレイヤアドレスを見つけ出し、削除することを特徴とする請求項１記載のリンクレイヤアドレステーブル管理装置。
【請求項３】
前記リンクレイヤアドレステーブルに格納されたいずれかの前記Ｓビット情報が前記到達性の確認を行ったことを示したときから時間を計測するためのＳ−ＯＦＦタイマーを具備し、
前記リンクレイヤアドレステーブル管理部は、前記Ｓ−ＯＦＦタイマーを用いて、所定時間が経過後に前記リンクレイヤアドレステーブルの前記Ｓビット情報が到達性の確認がとれた状態になったままで到達性の確認が必要であるという状態にならなくなっていないことを確認することを特徴とする請求項１または請求項２記載のリンクレイヤアドレステーブル管理装置。
【請求項４】
あて先ＩＰアドレスと送信元ＩＰアドレスを含むヘッダ部とデータ部からなるパケットを生成するパケット生成処理装置と、前記パケットの前記あて先ＩＰアドレスを用いてルーティングテーブルを検索し、出力インタフェースと次ホップノードのＩＰアドレスを決定するルーティングテーブル検索処理装置と、請求項１〜請求項３のいずれかに記載のリンクレイヤアドレステーブル管理装置と、前記リンクレイヤアドレスを用いてフレームヘッダを生成し、前記パケットをフレームのデータ部に格納してフレームを生成する送信フレーム生成処理装置と、前記フレームを次ホップノードに向けて送信するフレーム送信処理装置と、を具備したことを特徴とするパケット送信装置。
【請求項５】
自ノード宛に送信されたフレームを受信するフレーム受信処理装置と、前記フレームのパケットのヘッダ部に含まれるあて先ＩＰアドレスを用いてルーティングテーブルを検索し、出力インタフェースと次ホップノードのＩＰアドレスを決定するルーティングテーブル検索処理装置と、請求項１〜請求項３のいずれかに記載のリンクレイヤアドレステーブル管理装置と、前記リンクレイヤアドレスを用いてフレームヘッダを生成し、前記パケットをフレームのデータ部に格納してフレームを生成する送信フレーム生成処理装置と、前記フレームを次ホップノードに向けて送信するフレーム送信処理装置と、を具備したことを特徴とするパケット中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はインターネットプロトコルを利用してパケット通信を行なう際に用いるリンクレイヤアドレステーブルを管理するリンクレイヤアドレステーブル管理装置およびパケット中継装置に関する。
【背景技術】
【０００２】
インターネットプロトコルを利用したパケット通信では、送り出されたパケットはパケット中継装置を経由して、パケットのヘッダ領域に記載されたあて先ＩＰアドレスに届けられる。パケットを生成して送り出すパケット送信装置や、パケットを受信してさらに別のパケット処理装置に転送するパケット中継装置は、パケットのヘッダ領域に記載されたあて先ＩＰアドレスを読み込み、転送するパケット中継装置を決定する。このようにパケット送信装置が送信したパケットは、隣り合うパケット中継装置間を次々と受け渡されて、最終的にあて先ＩＰアドレスを持つパケット処理装置に届く。
【０００３】
パケット送信装置およびパケット中継装置は、あて先ＩＰアドレスを持つパケット処理装置にパケットを届けるために、転送する先のパケット処理装置を決定する。この処理はルーティング処理と呼ばれている。そして、転送先のパケット処理装置を決定した次に行なう処理がリンクレイヤアドレス解決処理である。
【０００４】
リンクレイヤがＩＥＥＥ８０２．３である場合、ネットワークでつながる転送先のパケット処理装置に対してリンクレイヤアドレスを問い合わせるメッセージを送信し、その応答によってパケットを転送する相手となるパケット処理装置のリンクレイヤアドレスを知ることができる。
【０００５】
ＩＰｖ４（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ｖｅｒｓｉｏｎ  ４）ではこのリンクレイヤアドレス解決処理をＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）によって行なう。ＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ｖｅｒｓｉｏｎ  ６）ではＮＤＰ（Ｎｅｉｇｈｂｏｒ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）によって行なう。
【０００６】
ＡＲＰやＮＤＰを用いたリンクレイヤアドレス解決処理をパケットの送信や転送処理のたびに行なうことは効率が悪いため、転送先パケット処理装置のＩＰアドレスとリンクレイヤアドレス（ＭＡＣアドレス）の関係を保持しておき、２回目以降は保持していたリンクレイヤアドレスを利用する方法がとられている。ＩＰアドレスとリンクレイヤアドレスの対応関係を保持しておくテーブルは、ＡＲＰではＡＲＰテーブル、ＮＤＰではＮＣ（Ｎｅｉｇｈｂｏｒ  Ｃａｃｈｅ）と呼ばれている。
【０００７】
このようなＩＰアドレスとリンクレイヤアドレスの対応関係を管理する仕組みを実装している製品はすでに多々ある。ＩＰｖ６のパケット転送処理を行なうパケット中継装置としては、例えば特許文献１に開示されたものがある。
【０００８】
しかし、従来のリンクレイヤアドレステーブルでは、パケット送信または転送処理の処理速度を維持したまま、登録されたリンクレイヤアドレスの到達性を確認することが困難であった。
【０００９】
パケット送信または転送処理の処理速度を維持したまま、登録されたリンクレイヤアドレスの到達性を確認することの困難性を説明する前に、まず、リンクレイヤアドレスの到達性の確認が必要な理由を説明する。
【００１０】
ＩＰアドレスとリンクレイヤアドレスからなるエントリーがリンクレイヤアドレステーブルに登録されていないとき、ＡＲＰやＮＤＰによってリンクレイヤアドレスを問い合わせる。このとき、実際にパケットの転送先のパケット中継装置はネットワークに接続しており、取得したリンクレイヤアドレスの到達性は確認されている。
【００１１】
このエントリーがリンクレイヤアドレステーブルに登録された後は、パケットの送信または転送処理を行なう際にテーブルに登録されたリンクレイヤアドレスを使用することができる。しかし、リンクレイヤアドレスを問い合わせたときにはネットワークに接続していたとしても、パケット処理装置がいつまでもネットワークに接続していることは保証されない。ＩＥＥＥ８０２．３において送信されたＭＡＣフレームは受信装置が存在しない場合そのまま消えてしまうため、フレームの送信装置はフレームの受信装置が存在しなくなったことに気づかずに送信する状況が発生してしまう。
【００１２】
このようなＭＡＣフレームの到達性の確認を行なう必要性があまり意識されていない理由は、ＩＰパケットの通信にはおもにＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）が使われているためである。ＴＣＰのレイヤで到達性確認を行っているため、パケットが届かなくなったことをＴＣＰのレイヤで知ることができ、パケット送信装置はパケットの送信を止めることができる。
【００１３】
しかし、音声や映像のストリームデータの伝送などに用いられるＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）には到達性確認の仕組みが存在しないため、途中でパケットが消えてしまっても、パケット送信装置がパケットを送信しつづけるという状況が発生してしまう。
【００１４】
このような状況の発生を防ぐために、リンクレイヤアドレステーブルにエントリーが登録されているとしても、リンクレイヤアドレスの到達性確認を行なう必要がある。
【００１５】
しかし、先に述べたようにパケットの送信や転送のたびにリンクレイヤアドレスを問い合わせることは、パケットの処理時間が大きくなり、パケットを高速処理することができなくなる。
【００１６】
そこで、エントリーを登録してから一定時間経過後にエントリーを削除する方法や、エントリーが使用されなくなってから一定時間経過後にエントリーを削除する方法などを用いて、一定時間経過後にエントリーを削除し、エントリーが存在しないことによって定期的にリンクレイヤアドレスの到達性を確認する方法が考えられる。
【００１７】
しかし、これらのエントリーの更新方法にはそれぞれ課題がある。
【００１８】
具体的には、到達性が保証されないことと、パケットの揺らぎを発生させることである。
【００１９】
到達性が保証されないとは、リンクレイヤアドレステーブルにエントリーがあるからといって実際にパケットを転送できるとは限らないことをいう。リンクレイヤアドレス解決処理を行ったときには存在した転送先のパケット処理装置が、ＩＰアドレスとリンクレイヤアドレスをリンクレイヤアドレステーブルに登録し、そのエントリーを参照して使用している間に存在しなくなっている可能性がある。しかも、ＩＥＥＥ８０２．３の場合は存在しない端末にフレームを送信しつづけても問題は発生せず、送信端末は受信端末が存在しなくなったことを知ることができない。
【００２０】
パケットの揺らぎを発生させるとは、一定間隔で流れているパケットの転送を行なう際に間隔幅を大きく変えてしまうことをいう。電話やテレビ電話のような音声や映像データをリアルタイムにストリーム伝送する場合、パケットはほぼ等間隔で送信されることが望ましい。リンクレイヤアドレス解決処理を行ってからリンクレイヤアドレスを取得する場合と、リンクレイヤアドレステーブルを参照して取得する場合とを比較すると取得するのに要する時間が異なり、この時間の差によって揺らぎが発生する。
【００２１】
「エントリーを登録してから一定時間経過後にエントリーを削除する方法」では、一定時間ごとにエントリーを削除し、リンクレイヤアドレス解決処理を行っているため到達性は保証されるが、パケットの揺らぎが発生する。
【００２２】
一方、「エントリーが使用されなくなってから一定時間経過後にエントリーを削除する方法」では、ストリームのパケットが流れつづけている間はエントリーが削除されないので、パケットの揺らぎは発生しないが、その代わり到達性は保証されない。
【００２３】
これらの課題を解決する方法が、ＩＰｖ６で使用されているＮＤＰの仕様書（非特許文献１）に記されている。簡単に説明すると、テーブルに登録したままの状態で、リンクレイヤアドレス解決処理を行って到達性の確認を行い、エントリーが到達性を失ったときテーブルから削除する。
【００２４】
具体的には、ＮＤＰの仕様ではエントリーの状態を６種類（Ｎｏｎｅ状態，  Ｉｎｃｏｍｐｌｅｔｅ状態，  Ｒｅａｃｈａｂｌｅ状態，  Ｓｔａｌｅ状態，  Ｄｅｌａｙ状態，  Ｐｒｏｂｅ状態）定義して、到達性を保証することとパケットの揺らぎの発生を抑えることを試みている。
【特許文献１】特開２００２−７７２６２号公報
【非特許文献１】ＩＥＴＦ文章  ＲＦＣ  ２４６１  「Ｎｅｉｇｈｂｏｒ  Ｄｉｓｃｏｖｅｒｙ  ｆｏｒ  ＩＰ  Ｖｅｒｓｉｏｎ  ６  （ＩＰｖ６）」（ｈｔｔｐ：／／ｗｗｗ．ｉｅｔｆ．ｏｒｇ／ｒｆｃ／ｒｆｃ２４６１．ｔｘｔ  １９９８年１２月）
【発明の開示】
【発明が解決しようとする課題】
【００２５】
しかし、パケット転送処理をハードウェア処理によって高速化しようとしたとき、ＮＤＰの仕様は複雑でありそのまま実装するのは難しい。
【００２６】
具体的に説明すると、リンクレイヤアドレステーブルの検索処理自体は単純な処理でありハードウェア処理に向いている。しかし、各エントリーの使用状況を記録して適切なタイミングでリンクレイヤアドレスの到達性を確認することは複雑な処理となりハードウェア処理には向いていない。
【００２７】
例えばリンクレイヤアドレスを登録してから一定の時間経過後にエントリーを削除することは単純な処理ではあるが、先に述べたように、パケット処理時間にばらつきが生じストリームデータの伝送を実現するには適当な方法ではない。
【００２８】
また、検索時にヒットすることを使用状況として記録しておき、最近使用しなくなったエントリーを削除するという方法も適当ではない。これは、ヒットしつづけているからといって、それはパケット送信装置が送りつづけているだけであり、あて先であるパケット受信装置にパケットが到達しているとは限らないからである。
【００２９】
また、使用しているエントリーと使用していないエントリーを区別することなく、すべてのエントリーに対して登録してから一定の時間間隔でリンクレイヤアドレスの問い合わせを行なう方法も適当とはいえない。これは、エントリーとして残ってはいるがまったくパケットを送信することがない通信相手との到達性を確認することは無駄な処理といえるからである。つまり、実際に最近使用しているエントリーに対して到達性を一定の時間経過ごとに確認することが必要である。
【００３０】
本発明は、かかる点に鑑みて為されたものであり、リンクレイヤアドレステーブルでＮＤＰの状態管理を行なうのではなく、ハードウェア処理により、パケット送信または転送処理の処理速度を高速に維持したまま、登録されたリンクレイヤアドレスの到達性を確認することを目的とする。
【課題を解決するための手段】
【００３１】
この課題を解決するために本発明は、ネットワークアドレスとリンクレイヤアドレスと前記リンクレイヤアドレスの到達性の確認が必要であるか否か示すＳビット情報との組を格納したリンクレイヤアドレステーブルを設け、前記リンクレイヤアドレステーブルに格納されたある前記リンクレイヤアドレスに対応する前記Ｓビット情報が到達性の確認が必要であることを示す場合、前記あるリンクレイヤアドレスの到達性の確認をし、前記到達性が確認された場合には前記対応するＳビット情報を前記到達性の確認がとれたことを示す状態にし、前記到達性が確認できなかった場合には前記あるリンクレイヤアドレスを前記リンクレイヤアドレステーブルから削除するようにした。
【発明の効果】
【００３２】
本発明により、Ｓビット情報という簡易な構成でパケット送信または転送処理においてリンクレイヤアドレステーブルに登録されたエントリーのリンクレイヤアドレスの到達性を保証でき、またパケットの揺らぎを抑えるという効果を得ることができる。また、このように、Ｓビット情報を用いて処理を単純化することにより、ハードウェアで高速処理しやすいようにできる。
【発明を実施するための最良の形態】
【００３３】
本発明の第１の態様にかかるリンクレイヤアドレステーブル管理装置は、ネットワークアドレスとリンクレイヤアドレスと前記リンクレイヤアドレスの到達性の確認が必要であるか否か示すＳビット情報との組を格納したリンクレイヤアドレステーブルと、前記リンクレイヤアドレスの到達性を確認する到達性確認処理部と、前記リンクレイヤアドレステーブルに格納されたある前記リンクレイヤアドレスに対応する前記Ｓビット情報が到達性の確認が必要であることを示す場合、前記到達性確認処理部に前記あるリンクレイヤアドレスの到達性の確認を指示し、前記到達性が確認された場合には前記対応するＳビット情報を前記到達性の確認がとれたことを示す状態にし、前記到達性が確認できなかった場合には前記あるリンクレイヤアドレスを前記リンクレイヤアドレステーブルから削除するリンクレイヤアドレステーブル管理部と、を具備した構成をとる。
【００３４】
これにより、Ｓビット情報という簡単なハード構成によりリンクレイヤアドレステーブルに登録されたリンクレイヤアドレスの到達性を確認できる。この結果、リンクレイヤアドレスの登録時には存在した通信相手が途中で存在しなくなったような状況においてパケットを転送しつづけることがなくなるという作用を有する。また、このように、Ｓビット情報を用いて処理を単純化することにより、ハードウェアで高速処理しやすいようにできる。
【００３５】
本発明の第２の態様は、第１の態様にかかるリンクレイヤアドレステーブル管理装置において、前記リンクレイヤアドレスを識別する識別情報を前記到達性の確認を行った時系列順に並べたＩｎｄｅｘテーブルを具備し、前記リンクレイヤアドレステーブル管理部は、前記リンクレイヤアドレスの前記リンクレイヤの数が上限に達した場合に、前記Ｉｎｄｅｘテーブルを用いて前記到達性の確認が古い前記リンクレイヤアドレスを見つけ出し、削除する。
【００３６】
これにより、リンクレイヤアドレステーブルのＳビット情報が前記到達性の確認がとれた状態になったままで到達性の確認が必要であるという状態に戻らなくなってしまったリンクレイヤアドレスを発見することによって、リンクレイヤアドレスの登録時には存在した通信相手が途中で存在しなくなったような状況においてパケットを転送し続けることがなくなるという作用を有する。また、リンクレイヤアドレス数の上限に達したときに、新しいリンクレイヤアドレスを登録するために、使用しなくなって一番古いリンクレイヤアドレスを即座に見つけることができ、削除できるという作用も有する。この結果、リンクレイヤアドレステーブルの大きさを抑えることができ、リンクレイヤアドレステーブルの検索をハードウェア処理で行なうことができる。よって、高速なパケット転送処理を実現できる。また、もし、あるリンクレイヤアドレスの到達性確認を行っている到達性確認処理部からＳビット情報を到達性確認のとれた状態から到達性確認の必要性がある状態に変える指示がなんらかの原因でリンクレイヤアドレステーブル管理部に届かなかったとしても、そのリンクレイヤアドレスを発見できるという効果が得られる。
【００３７】
本発明の第３の態様は、第１の態様または第２の態様にかかるリンクレイヤアドレステーブル管理装置において、前記リンクレイヤアドレステーブルに格納されたいずれかの前記Ｓビット情報が前記到達性の確認を行ったことを示したときから時間を計測するためのＳ−ＯＦＦタイマーを具備し、前記リンクレイヤアドレステーブル管理部は、前記Ｓ−ＯＦＦタイマーを用いて、所定時間が経過後に前記リンクレイヤアドレステーブルの前記Ｓビット情報が到達性の確認がとれた状態になったままで到達性の確認が必要であるという状態にならなくなっていないことを確認する。
【００３８】
これにより、リンクレイヤアドレステーブルのＳビット情報が到達性の確認のとれた状態のままとなったリンクレイヤアドレスを発見することによって、リンクレイヤアドレスの登録時には存在した通信相手が途中で存在しなくなったような状況においてパケットを転送しつづけることがなくなるという作用を有する。
【００３９】
本発明の第４の態様は、あて先ＩＰアドレスと送信元ＩＰアドレスを含むヘッダ部とデータ部からなるパケットを生成するパケット生成処理装置と、前記パケットの前記あて先ＩＰアドレスを用いてルーティングテーブルを検索し、出力インタフェースと次ホップノードのＩＰアドレスを決定するルーティングテーブル検索処理装置と、第１の態様〜第３の態様のいずれかに記載のリンクレイヤアドレステーブル管理装置と、前記リンクレイヤアドレスを用いてフレームヘッダを生成し、前記パケットをフレームのデータ部に格納してフレームを生成する送信フレーム生成処理装置と、前記フレームを次ホップノードに向けて送信するフレーム送信処理装置と、を具備したことを特徴とするパケット送信装置である。
【００４０】
本発明の第５の態様は、自ノード宛に送信されたフレームを受信するフレーム受信処理装置と、前記フレームのパケットのヘッダ部に含まれるあて先ＩＰアドレスを用いてルーティングテーブルを検索し、出力インタフェースと次ホップノードのＩＰアドレスを決定するルーティングテーブル検索処理装置と、第１の態様〜第３の態様のいずれかに記載のリンクレイヤアドレステーブル管理装置と、前記リンクレイヤアドレスを用いてフレームヘッダを生成し、前記パケットをフレームのデータ部に格納してフレームを生成する送信フレーム生成処理装置と、前記フレームを次ホップノードに向けて送信するフレーム送信処理装置と、を具備したことを特徴とするパケット中継装置である。
【００４１】
以下、本発明の一実施の形態について、添付図面を用いて説明する。
【００４２】
最初に、本実施の形態にかかるパケットの流れについて図１を用いて説明する。図１は、本実施の形態にかかるパケットの流れを示した図である。
【００４３】
パケット送信装置３０１がパケットを送信し、そのパケットを受信したパケット中継装置３０２がパケットの転送先を決定し転送する。パケットは、０またはいくつかのパケット中継装置３０２を経由してパケット受信装置３０３に届く。
【００４４】
パケット送信装置３０１およびパケット中継装置３０２は、あて先ＩＰアドレスによって示されたパケット受信装置３０３にパケットを届けるために、転送する先のパケット処理装置を決定する。この処理はルーティング処理と呼ばれている。また、パケット送信装置３０１およびパケット中継装置３０２が転送先のパケット処理装置を決定した次に行なう処理が、リンクレイヤアドレス解決処理である。
【００４５】
また、パケット送信装置３０１としては、パーソナルコンピュータやＩＰ電話端末、ルータ、レイヤ３スイッチなどさまざまなＩＰ通信機器がある。パケット中継装置３０２の具体的な例としては、ルータやレイヤ３スイッチなどがある。
【００４６】
次に、リンクレイヤがＩＥＥＥ８０２．３の場合における、パケット送信装置３０１におけるパケット送信処理およびパケット中継装置３０２におけるパケット転送処理の流れを、図２を用いて説明する。図２は、パケット送信装置３０１やパケット中継装置３０２の内部構成を示す図である。
【００４７】
パケット送信処理の場合、パケット生成処理装置１０３が送信するパケットを作成する。パケットにはヘッダ部とデータ部があり、ヘッダ部にはあて先ＩＰアドレスと送信元ＩＰアドレスが含まれる。
【００４８】
パケット生成処理装置１０３は、作成したパケットを、ルーティングテーブル検索処理装置１０４に渡す。
【００４９】
次に、ルーティングテーブル検索処理装置１０４は、パケットのヘッダ部に含まれるあて先ＩＰアドレスを用いてルーティングテーブルを検索し、出力インタフェースと次ホップノードのＩＰアドレスを決定する。ルーティングテーブルとはあて先ＩＰアドレスから転送先の次ホップノードを決定するための経路情報を格納したテーブルである。
【００５０】
パケットは、あて先ＩＰアドレスが示す目的地に向けて、パケットの経路上に存在するパケット中継装置３０２に中継されながら目的地に届けられる。
【００５１】
そして、ルーティングテーブル検索処理装置１０４は、リンクレイヤアドレステーブル管理装置１０６にパケットの処理を渡す。
【００５２】
次に、リンクレイヤアドレステーブル管理装置１０６は、次ホップノードのＩＰアドレスを用いて次ホップノードのリンクレイヤアドレス（ＭＡＣアドレス）を求める。そして、リンクレイヤアドレステーブル管理装置１０６は、求めた次ホップノードのリンクレイヤアドレスを送信フレーム生成処理装置１０７に渡す。
【００５３】
次に、送信フレーム生成処理装置１０７は、次ホップノードのリンクレイヤアドレスをあて先ＭＡＣアドレスとして、また出力インタフェースから送信元ＭＡＣアドレスを決定して、ＭＡＣフレームヘッダを生成し、パケットをＭＡＣフレームのデータ部に格納し、ＭＡＣフレームを生成する。そして、送信フレーム生成処理装置１０７は、作成したＭＡＣフレームをフレーム送信処理装置１０８に渡す。
【００５４】
次に、フレーム送信処理装置１０８は、指定された出力インタフェースから、作成したＭＡＣフレームを次ホップノードに向けて送信する。
【００５５】
以上のように、パケット送信装置３０１は、パケット送信処理を行なう。
【００５６】
次にパケット転送処理の場合について説明する。パケット転送処理を行なうのはルータなどのパケット中継装置３０２である。パケット中継装置３０２は、次ホップノードとしてパケットを受信し、次のパケット中継装置３０２にパケットを転送する。
【００５７】
フレーム受信処理装置１０１は、自ノード宛に送信されたＭＡＣフレームを受信し、パケット解析処理装置１０２に渡す。
【００５８】
次に、パケット解析処理装置１０２は、パケットのヘッダ部を解析し、パケット長やバージョンなどが正しくないパケットを破棄する。そして、パケット解析処理装置１０２は、受信したパケットをルーティングテーブル検索処理装置１０４に渡す。
【００５９】
次に、ルーティングテーブル検索処理装置１０４は、パケット送信処理と同様にパケットのヘッダ部に含まれるあて先ＩＰアドレスを用いてルーティングテーブルを検索し、出力インタフェースと次ホップノードのＩＰアドレスを決定する。そして、ルーティングテーブル検索処理装置１０４は、自ノード宛のパケットの場合は、自ノード宛パケット受信処理装置１０５に渡す。また、他ノード宛のパケットの場合は、ルーティングテーブル検索処理装置１０４は、リンクレイヤアドレステーブル管理装置１０６に渡す。
【００６０】
次に、リンクレイヤアドレステーブル管理装置１０６は、次ホップノードのリンクレイヤアドレスを求め送信フレーム生成処理装置１０７に送る。
【００６１】
次に、送信フレーム生成処理装置１０７がＭＡＣフレームを生成し、生成したＭＡＣフレームをフレーム送信処理装置１０８が送信する。
【００６２】
パケットの転送処理の場合、転送するＩＰパケットのヘッダ部にあるＨｏｐ  Ｌｉｍｉｔ値またはＴＴＬ（Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）値の減算処理を行い、演算した値をＩＰパケットのヘッダ部に設定し、そのＩＰパケットを送信するＭＡＣフレームのデータ部に格納する。
【００６３】
以上のように、パケット中継装置３０２は、パケットを受信し、転送処理を行なう。
【００６４】
次に、本発明の特徴である、このようなパケット送信処理やパケット転送処理のなかの、次ホップノードのＩＰアドレスからリンクレイヤアドレスを求めるリンクレイヤアドレステーブル管理装置１０６について図３を用いて説明する。図３は、リンクレイヤアドレステーブル管理装置１０６の構成を説明する図である。
【００６５】
リンクレイヤアドレステーブル管理装置１０６は、リンクレイヤアドレステーブル管理部２０１、パケット送信・転送処理部２０２、リンクレイヤアドレス問い合わせ処理部２０３、到達性確認処理部２０４、リンクレイヤアドレス変更通知受信処理部２０５、リンクレイヤアドレスリクエスト応答・通知受信処理部２０６、Ｉｎｄｅｘテーブル管理部２０７、およびＳ−ＯＦＦタイマー管理部２０８を備える。
【００６６】
リンクレイヤアドレステーブル管理部２０１は、ＩＰアドレスとリンクレイヤアドレスとの対応関係を保持するリンクレイヤアドレステーブル２１０を管理する。
【００６７】
リンクレイヤアドレステーブル２１０の詳細は後述する。
【００６８】
また、リンクレイヤアドレステーブル管理部２０１は、パケット送信・転送処理部２０２より検索要求を受け取ると、リンクレイヤアドレステーブル２１０を検索し、その検索結果を返す。
【００６９】
また、リンクレイヤアドレステーブル管理部２０１は、リンクレイヤアドレステーブル２１０にエントリーが登録されていない場合、リンクレイヤアドレス問い合わせ処理部２０３にリンクレイヤアドレスの解決を要求する。リンクレイヤアドレステーブル管理部２０１は、非同期にリンクレイヤアドレス問い合わせ処理部２０３から処理結果を受信する。そして、リンクレイヤアドレステーブル管理部２０１は、リンクレイヤアドレスの解決を要求した後、次のパケット処理に移る。
【００７０】
また、リンクレイヤアドレステーブル管理部２０１は、リンクレイヤアドレステーブル２１０にエントリーが登録されていて、かつ到達性確認を行なう必要がある場合、到達性確認処理部２０４にリンクレイヤアドレスの到達性確認を要求する。到達性確認の結果として、リンクレイヤアドレステーブル管理部２０１は「パケット通過通知要求」または「エントリー削除要求」を受信する。リンクレイヤアドレステーブル管理部２０１は、パケット送信・転送処理部２０２に検索結果応答を返してから、到達性確認処理部２０４に対して到達性確認を要求したら、応答が返るまでの間に他のパケットの処理を行なうなどする。つまり、リンクレイヤアドレス管理部２０１は到達性確認を要求してから応答が返るまで、何もせずに待つことはない。
【００７１】
また、リンクレイヤアドレステーブル管理部２０１が管理する情報として、リンクレイヤアドレステーブル２１０の他に、エントリー数カウンタ２１１とＳ−ＯＦＦエントリー数カウンタ２１２がある。
【００７２】
エントリー数カウンタ２１１は、後述するＵビット情報がＯＮ（１）（１がセットされているときがＯＮ、０がセットされているときがＯＦＦ）にセットされたエントリー数を管理するカウンタである。このカウンタ値がリンクレイヤアドレステーブル２１０で持ちうる最大の値かどうか比較することによって、エントリーの新規追加の際に既存のエントリーを削除すべきかどうか即座に判定することができる。
【００７３】
Ｓ−ＯＦＦエントリー数カウンタ２１２は、使用中のエントリーでかつ後述するＳビット情報がＯＦＦ（０）にセットされたエントリー数を管理するカウンタである。このＳ−ＯＦＦエントリー数カウンタ２１２によって、Ｓビット情報がＯＦＦ（０）の状態のエントリーがいくつ存在しているのか常に把握することができる。
【００７４】
パケット送信・転送処理部２０２は、ルーティングテーブル検索処理装置１０４から処理するパケットを受け取る。また、パケット送信・転送処理部２０２は、次ホップノードのＩＰアドレスからリンクレイヤアドレスを求めるために、リンクレイヤアドレステーブル管理部２０１に検索要求を送信する。そして、パケット送信・転送処理部２０２は、リンクレイヤアドレステーブル管理部２０１から返される検索結果応答によってリンクレイヤアドレスを取得し、その結果を次の処理である送信フレーム生成処理装置１０７に渡す。
【００７５】
リンクレイヤアドレス問い合わせ処理部２０３は、リンクレイヤアドレステーブル２１０にエントリーが存在しない場合に新しいリンクレイヤアドレス情報を取得する。
【００７６】
リンクレイヤアドレス問い合わせ処理部２０３は、ＡＲＰやＮＤＰを使ってネットワーク越しにリンクレイヤアドレスを問い合わせ、ＩＰアドレスに対応するリンクレイヤアドレスを取得した場合は、その新しい情報をリンクレイヤアドレステーブル２１０に登録するようにリンクレイヤアドレステーブル管理部２０１に要求する。
【００７７】
到達性確認処理部２０４は、リンクレイヤアドレステーブル２１０に登録されているリンクレイヤアドレスの到達性を確認する。到達性確認処理部２０４は、リンクレイヤアドレスの到達性を確認するためにリクエストメッセージを送信し、応答があった場合は到達可能であることをリンクレイヤアドレステーブル管理部２０１に通知する。もし、応答がなく到達不可能であることがわかった場合はエントリーの削除をリンクレイヤアドレステーブル管理部２０１に要求する。
【００７８】
リンクレイヤアドレス変更通知受信処理部２０５は、ネットワークに接続するノードから通知されたリンクレイヤアドレス情報を受信処理する。そして、リンクレイヤアドレス変更通知受信処理部２０５は、新しいリンクレイヤアドレスをリンクレイヤアドレステーブル２１０に反映するようにリンクレイヤアドレステーブル管理部２０１に要求する。
【００７９】
また、リンクレイヤアドレス変更通知受信処理部２０５は、ネットワークにつながる端末がその端末のＭＡＣアドレスが変更したことを通知してきた場合にこれを受信する。
【００８０】
リンクレイヤアドレス変更通知受信処理部２０５が、リンクレイヤアドレス問い合わせ処理部２０３や到達性確認処理部２０４と異なる点はリンクレイヤアドレス問い合わせ処理部２０３や到達性確認処理部２０４が要求を送信し、その応答をもとに処理を行なうのに対し、このリンクレイヤアドレス変更通知受信処理部２０５はネットワークに接続した他パケット処理装置から一方的に送信されてくるリンクアドレスの変更通知を処理しているところである。
【００８１】
リンクレイヤアドレスリクエスト応答・通知受信処理部２０６は、自ノード宛パケット受信処理装置１０５を介して送られてきたリンクレイヤアドレスの問い合わせや到達性確認に対する応答メッセージ、および他ノードから一方的に送信されるリンクレイヤアドレス通知を受信する。そして、リンクレイヤアドレスリクエスト応答・通知受信処理部２０６は、受信したメッセージを解析し、リンクレイヤアドレス問い合わせ処理部２０３、到達性確認処理部２０４、リンクレイヤアドレス変更通知受信処理部２０５に振り分ける。
【００８２】
Ｉｎｄｅｘテーブル管理部２０７は、Ｉｎｄｅｘテーブル２１３を管理する。Ｉｎｄｅｘテーブル管理部２０７は、Ｉｎｄｅｘテーブル２１３を用いて、リンクレイヤアドレステーブル２１０のエントリーの使用状況を管理する。
【００８３】
Ｉｎｄｅｘテーブル２１３は、エントリーの使用状況を管理するためのテーブルで最も新しく使われたエントリーはどれか、使用されてから最も長く時間がたっているエントリーはどれかといった情報を管理するテーブルである。
【００８４】
Ｉｎｄｅｘテーブル２１３は、リンクレイヤアドレステーブルに登録できるエントリー数に限りがあるために存在する。パケットの送信・転送処理をハードウェア処理で高速に行なおうとしたとき、リソースに限りがあるためエントリー数に上限を設けなければならない。そのため新しいエントリーを追加するために、既存のエントリーを削除しなければならない状況が発生する。このとき、どのエントリーを削除するか決めるための情報を提供するのがＩｎｄｅｘテーブル２１３である。Ｉｎｄｅｘテーブル管理部２０７が管理するＩｎｄｅｘテーブル２１３についての詳細は後述する。
【００８５】
Ｓ−ＯＦＦタイマー管理部２０８は、到達性確認処理を行なわないエントリーを発見するためのＳ−ＯＦＦタイマー２１４を管理する。
【００８６】
Ｓ−ＯＦＦタイマー２１４は、各処理部が正常に動作している場合は必要ないタイマーである。このＳ−ＯＦＦタイマー２１４によって、到達性確認を行なっていないエントリーがいつまでもリンクレイヤアドレステーブル２１０に残る可能性を排除することができる。
【００８７】
詳細には、Ｓ−ＯＦＦタイマー管理部２０８は、リンクレイヤアドレステーブル管理部２０１から「Ｓ−ＯＦＦタイマースタート要求」を受信した場合はＳ−ＯＦＦタイマー２１４をスタートする。
【００８８】
また、すでにＳ−ＯＦＦタイマー２１４がスタートしている場合には、Ｓ−ＯＦＦタイマー管理部２０８は、タイマー時間を元に戻してＳ−ＯＦＦタイマー２１４を再スタートする。
【００８９】
また、「Ｓ−ＯＦＦタイマーストップ要求」を受信した場合は、Ｓ−ＯＦＦタイマー管理部２０８は、Ｓ−ＯＦＦタイマー２１４をストップする。
【００９０】
Ｓ−ＯＦＦタイマー管理部２０８は、Ｓ−ＯＦＦタイマー値をスタート時に設定値にセットし、一定間隔で減算する（例えば１秒間隔で減算する）。そして、Ｓ−ＯＦＦタイマー値が０になった時点をタイムアウト発生時として、Ｓ−ＯＦＦタイマー管理部２０８は、リンクレイヤアドレステーブル管理部２０１に「Ｓ−ＯＦＦタイマータイムアウト通知」を送信する。
【００９１】
また、Ｓ−ＯＦＦタイマー管理部２０８は、Ｓ−ＯＦＦタイマー値の問い合わせに随時応じ、「Ｓ−ＯＦＦタイマー値確認要求」に対して「Ｓ−ＯＦＦタイマー値確認応答」を返す。
【００９２】
このＳ−ＯＦＦタイマー値の確認は、Ｓ−ＯＦＦタイマータイムアウト通知とＳ−ＯＦＦタイマースタート要求が衝突したときのために存在する。
【００９３】
また、リンクレイヤアドレステーブル管理部２０１は、「Ｓ−ＯＦＦタイマータイムアウト通知」を受信した場合、Ｓ−ＯＦＦタイマー値を確認してからＳ−ＯＦＦエントリータイムアウト削除処理を行なう。
【００９４】
また、自ノード宛パケット受信処理装置１０５は、自ノード宛に届いたパケットのうちリンクレイヤアドレスリクエスト応答とリンクレイヤアドレス通知メッセージをリンクレイヤアドレスリクエスト応答・通知受信処理部２０６に渡す。
【００９５】
図４に示すように、リンクレイヤアドレステーブル２１０は、Ｉｎｄｅｘ４０１と、Ｕビット情報４０２と、Ｓビット情報４０３と、インタフェース４０４と、ＩＰアドレス４０５と、ＭＡＣアドレス４０６との組を対応付けて格納している。
【００９６】
Ｉｎｄｅｘ４０１は、エントリーを識別する番号である。Ｉｎｄｅｘ４０１には、エントリーごとに一意な値が割当てられていればよい。
【００９７】
Ｕビット情報４０２は、そのエントリーが使用されているかどうかを示す。リンクレイヤアドレステーブル２１０を検索するとき、Ｕビット情報４０２がＯＮ（１）のエントリーだけを検索すればよい。
【００９８】
Ｓビット情報４０３は、到達性を確認する必要があるかどうかを示すための情報である。Ｓビット情報４０３がＯＮ（１）のとき、到達性を確認する必要がある。この場合、リンクレイヤアドレステーブル管理部２０１は到達性確認処理部２０４に到達性確認要求を送信し、到達性確認要求の送信後にＳビット情報４０３をＯＦＦ（０）にする。到達性確認処理部２０４は、到達性が確認された場合は一定時間なにもしない。
【００９９】
つまり、Ｓビット情報４０３がＯＦＦ（０）の場合は、到達性が確認された状態である。到達性が確認できなかった場合、つまりリンクレイヤアドレスが有効でない場合には、到達性確認処理部２０４からエントリーの削除要求が送信される。到達性が確認された場合には、一定時間経過後に到達性確認が必要なことが到達性確認処理部２０４より通知されるので、そのときＳビット情報４０３をＯＮ（１）に設定する。
【０１００】
インタフェース４０４は、出力インタフェースを示す識別子である。リンクレイヤアドレステーブル２１０を検索するとき、検索キーとしてＩＰアドレス４０５と出力インタフェース４０４を用いる。
【０１０１】
検索キーに使用するＩＰアドレス４０５と出力インタフェース４０４は、ルーティングテーブル検索処理装置１０４より与えられる。
【０１０２】
ＩＰアドレス４０５だけで検索するのではなく出力インタフェース４０４もあわせて利用するのは、異なるインタフェースに同じＩＰアドレス４０５を持つ端末が接続している可能性があるからである。
【０１０３】
例えば、ＩＰｖ６の場合ではリンクローカルアドレスは、同一リンク上では一意にＩＰアドレス４０５が決まっているが、他のリンクに同じＩＰアドレス４０５を持つ端末がいないことは保証されていない。リンクレイヤアドレステーブル２１０で管理するＩＰアドレス４０５とＭＡＣアドレス４０６は、次ホップノードのＩＰアドレス４０５とＭＡＣアドレス４０６である。
【０１０４】
次に、Ｉｎｄｅｘテーブル２１３について、図５を用いて説明する。
【０１０５】
Ｉｎｄｅｘテーブル２１３は、リンクレイヤアドレステーブル２１０で用いているＩｎｄｅｘ５０１とＳビット情報５０２から構成される。
【０１０６】
Ｉｎｄｅｘテーブル２１３のＳビット情報５０２の値はリンクレイヤアドレステーブル２１０のＳビット情報４０３の値と常に同じ値になるように同期をとっている。Ｉｎｄｅｘテーブル２１３では到達性確認を行った順番にエントリーが並んでいるためＩｎｄｅｘテーブル２１３の上位のエントリーはＳビット情報５０２が０となり、あるエントリーより下位のエントリーはＳビット情報５０２が１になる。
【０１０７】
次に、リンクレイヤアドレステーブル管理装置１０６が行なう処理について説明する。
【０１０８】
まず、リンクレイヤアドレステーブル検索処理について説明する。
【０１０９】
リンクレイヤアドレステーブル検索処理は、パケット送信・転送処理部２０２が次ホップノードのＩＰアドレスと出力インタフェースからリンクレイヤアドレスを求めるために、リンクレイヤアドレステーブル管理部２０１に「検索要求」を送信し、これに対して、リンクレイヤアドレステーブル管理部２０１が、リンクレイヤアドレステーブル２１０を検索し、「検索結果応答」をパケット送信・転送処理部２０２に返す処理である。
【０１１０】
リンクレイヤアドレステーブル２１０の検索には、次ホップノードのＩＰアドレスと出力インタフェースを用いる。次ホップノードのＩＰアドレスと出力インタフェースは、ルーティングテーブル検索処理装置１０４から渡される情報である。
【０１１１】
次に、リンクレイヤアドレス検索処理について、図６を用いて詳細に説明する。図６は、リンクレイヤアドレステーブル管理部２０１が、パケット送信・転送処理部２０２から「検索要求」を受けた後の処理フロー図である。
【０１１２】
リンクレイヤアドレステーブル管理部２０１は「検索要求」を受信したとき（ＳＴ６００）、「検索要求」で示されたＩＰアドレスと出力インタフェースに一致するエントリーがリンクレイヤアドレステーブル２１０に登録されているか検索し（ＳＴ６０１）、検索ヒットしたかどうかを判定する（ＳＴ６０２）。
【０１１３】
次に、「検索要求」で示されたＩＰアドレスと出力インタフェースに一致するエントリーがリンクレイヤアドレステーブル２１０に登録されている（検索ヒット）場合、リンクレイヤアドレステーブル管理部２０１は、検索ヒットしたＭＡＣアドレス４０６の情報を「検索結果応答」を用いてパケット送信・転送処理部２０２に返す（ＳＴ６０３）。
【０１１４】
その後、リンクレイヤアドレステーブル管理部２０１は、検索ヒットしたエントリーのＳビット情報４０３がＯＮ（１）かどうかをチェックする（ＳＴ６０４）。
【０１１５】
Ｓビット情報４０３がＯＦＦ（０）の場合は、リンクレイヤアドレステーブル管理部２０１は、そのまま処理を終了する。
【０１１６】
一方、Ｓビット情報４０３がＯＮ（１）の場合は、リンクレイヤアドレステーブル管理部２０１は、Ｓビット情報４０３をＯＦＦ（０）に変更する（ＳＴ６０５）。
【０１１７】
そして、リンクレイヤアドレステーブル管理部２０１は、到達性確認要求処理（ＳＴ６０６）、Ｓ−ＯＦＦタイマースタート要求処理、Ｓ−ＯＦＦエントリー数カウンタ加算処理（ＳＴ６０７）、Ｉｎｄｅｘテーブル並び替え要求処理（ＳＴ６０８）を順番に行なう。
【０１１８】
到達性確認要求処理は、リンクレイヤアドレステーブル管理部２０１が到達性確認処理部２０４に「到達性確認要求」を送信する処理である。到達性確認処理部２０４が行なう到達性確認処理については後ほど図７を用いて説明する。
【０１１９】
Ｓ−ＯＦＦタイマースタート要求処理は、リンクレイヤアドレステーブル管理部２０１がＳ−ＯＦＦタイマー管理部２０８にＳ−ＯＦＦタイマースタート要求を送信する処理である。リンクレイヤアドレステーブル２１０のＳビット情報４０３がＯＦＦ（０）であるＳ−ＯＦＦエントリーの数が増加したとき、リンクレイヤアドレステーブル管理部２０１はタイマースタート要求を送信する。
【０１２０】
Ｓ−ＯＦＦエントリー数カウンタ加算処理は、リンクレイヤアドレステーブル管理部２０１が管理するＳ−ＯＦＦエントリー数カウンタ２１２の値を１加算する処理である。リンクレイヤアドレス管理部２０１は、Ｓ−ＯＦＦエントリー数の加算を行なった場合、Ｓ−ＯＦＦタイマースタート処理を行なう。
【０１２１】
Ｉｎｄｅｘテーブル並び替え要求処理は、リンクレイヤアドレステーブル管理部２０１がＩｎｄｅｘテーブル管理部２０７に「Ｉｎｄｅｘテーブル並び替え要求」を送信する処理である。Ｉｎｄｅｘテーブル管理部２０７が行なうＩｎｄｅｘテーブル並び替え処理については後ほど図１２を用いて説明する。
【０１２２】
一方、検索ミスヒットした場合は、リンクレイヤアドレステーブル管理部２０１は、ミスヒットした旨の「検索結果応答」をパケット送信・転送処理部２０２に返すことで、ミスヒットであったことを伝える（ＳＴ６０９）。そして、リンクレイヤアドレステーブル管理部２０１は、リンクレイヤアドレス問い合わせ要求処理を行なう（ＳＴ６１０）。
【０１２３】
リンクレイヤアドレス問い合わせ要求処理とは、リンクレイヤアドレステーブル管理部２０１が、リンクレイヤアドレス問い合わせ処理部２０３に「リンクレイヤアドレス問い合わせ要求」を送信する処理である。リンクレイヤアドレス問い合わせ処理部２０３が行なうリンクレイヤアドレス問い合わせ処理については後ほど図１３を用いて説明する。
【０１２４】
このようにして、リンクレイヤアドレステーブル管理装置１０６は、ルーティングテーブル検索処理装置１０４から渡された、次ホップノードのＩＰアドレスと出力インタフェース対応するリンクレイヤアドレスをリンクレイヤアドレステーブル２１０から検索し、対応するものがあった場合は対応するリンクレイヤアドレスをパケット送信・転送処理部２０２に出力し、対応するものがない場合はリンクレイヤアドレスを問い合わせる処理に移行する。
【０１２５】
次に、リンクレイヤアドレステーブル管理部２１０による到達性確認要求処理（ＳＴ６０６）をうけて、到達性確認処理部２０４が行なう到達性確認処理について、図７を用いて説明する。図７は、本実施の形態にかかるリンクレイヤアドレステーブル管理装置１０６内部で行なう到達性確認処理のフロー図である。
【０１２６】
到達性確認処理部２０４は、リンクレイヤアドレステーブル管理部２０１から「到達性確認要求」を受信し（ＳＴ７００）、一定時間（Ｄｅｌａｙ時間  およそ５秒程度）経過するのを待つ（ＳＴ７０１）。
【０１２７】
その後、到達性確認処理部２０４は、実際にリンクレイヤアドレス宛に送信したフレームが届くのか確認する（ＳＴ７０２）。
【０１２８】
到達性確認処理部２０４は、ＳＴ７０２において、送信したフレームが届くのか確認に、ＩＰアドレスがＩＰｖ４の場合はＡＲＰリクエストメッセージを用い、ＩＰｖ６の場合はＮＤＰのＮｅｉｇｈｂｏｒ  Ｓｏｌｉｃｉｔａｔｉｏｎ（ＮＳ）メッセージを用いる。
【０１２９】
また、到達性確認処理部２０４は、一定時間（約１秒程度）間隔で応答があるまで（ＳＴ７０３）、決められた回数リクエストメッセージ（３回程度）を送信する（ＳＴ７０４）。
【０１３０】
そして、決められた回数リクエストメッセージを送信しても応答がない場合は、到達性確認処理部２０４は、到達性がなくなったと判断し、「エントリー削除要求」をリンクレイヤアドレステーブル管理部２０１に送信する。そして、リンクレイヤアドレステーブル管理部２０１は、到達性の確認できなかったエントリーを削除するために、「エントリー削除処理」に移行する（ＳＴ７０５）。リンクレイヤアドレステーブル管理部２０１のエントリー削除処理については後ほど図８を用いて説明する。
【０１３１】
一方、リンクレイヤアドレスのリクエストメッセージに対して応答があった場合、到達性確認処理部２０４は、応答を受信してから一定時間（Ｒｅａｃｈａｂｌｅ時間  約３０秒）経過するのを待ち（ＳＴ７０６）、その後に「パケット通過通知要求」をリンクレイヤアドレステーブル管理部２０１に送信する。そして、リンクレイヤアドレステーブル管理部２０１は、パケット通過通知準備処理に移行する（ＳＴ７０７）。リンクレイヤアドレステーブル管理部２０１のパケット通過通知要求を受信したときの処理については後ほど図１０を用いて説明する。
【０１３２】
このように、到達性確認処理部２０４は、リンクレイヤアドレスの到達性確認を行なう。そして、リンクレイヤアドレスの到達性を確認できなかった場合、リンクレイヤアドレステーブル管理装置１０６は、到達性の確認できなかったエントリーを削除するために、「エントリー削除処理」に移行し、一方、リンクレイヤアドレスの到達性が確認できた場合は、一定時間（Ｒｅａｃｈａｂｌｅ時間）経過後に、「パケット通過通知準備処理」を行なう。
【０１３３】
次に、エントリー削除処理について、図８を用いて説明する。図８は、本実施の形態にかかるリンクレイヤアドレステーブル管理装置１０６内部で行なうエントリー削除処理のフロー図である。
【０１３４】
リンクレイヤアドレステーブル管理部２０１は、到達性確認処理部２０４から送られてきた「エントリー削除要求」を受信すると（ＳＴ８００）、ＩＰアドレスとインタフェースを用いてリンクレイヤアドレステーブルを検索する（ＳＴ８０１）。
【０１３５】
一致するエントリーが存在しない場合は（ＳＴ８０２）、リンクレイヤアドレステーブル管理部２０１は、処理を終了する。
【０１３６】
一方、一致するエントリーが存在する場合は（ＳＴ８０２）、リンクレイヤアドレステーブル管理部２０１は、エントリー削除処理として、リンクレイヤアドレステーブル２０１のＵビット情報４０２をＯＮ（１）からＯＦＦ（０）にする（ＳＴ８０３）。
【０１３７】
また、リンクレイヤアドレステーブル管理部２０１は、この処理により、リンクレイヤアドレステーブル２１０に登録されているエントリー数が減るので、エントリー数カウンタ２１１を１減算する（ＳＴ８０４）。
【０１３８】
また、リンクレイヤアドレステーブル管理部２０１は、削除したエントリーのＳビット情報４０３を確認し（ＳＴ８０５）、ＯＮ（１）ならば処理を終了する。
【０１３９】
一方、Ｓビット情報４０３がＯＦＦ（０）の場合は、リンクレイヤアドレステーブル管理部２０１は、Ｉｎｄｅｘテーブル管理部２０７に対して、Ｓ−ＯＮ設定要求を送信する（ＳＴ８０６）ことにより、Ｉｎｄｅｘテーブル管理部２０７にＩｎｄｅｘテーブル２１３の該当するＩｎｄｅｘ５０１のＳビット情報５０２の設定をＯＦＦ（０）からＯＮ（１）に変更するように要求する。
【０１４０】
これにより、リンクレイヤアドレステーブル管理装置１０６は、Ｉｎｄｅｘテーブル管理部２０７がＩｎｄｅｘテーブル２１３の該当するＩｎｄｅｘ５０１のＳビット情報５０２の設定をＯＦＦ（０）からＯＮ（１）に変更する処理であるＳ−ＯＮ設定処理に移行する。
【０１４１】
なお、Ｓ−ＯＮ設定処理についての詳細は、後述する。
【０１４２】
次に、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦエントリー数カウンタ２１２の数を１減算するＳ−ＯＦＦエントリー数カウンタ減算処理を行なう（ＳＴ８０７）。
【０１４３】
そして、Ｓ−ＯＦＦエントリー数カウンタ２１２の値が０になった場合は（ＳＴ８０８）、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦタイマー管理部２０８に対して、Ｓ−ＯＦＦタイマー２１４のストップ要求を送信する（ＳＴ８０９）。そして、この要求に応じて、Ｓ−ＯＦＦタイマー管理部２０８は、Ｓ−ＯＦＦタイマー２１４をストップする。
【０１４４】
このように、リンクレイヤアドレステーブル管理装置１０６は、到達性がないことがわかった場合に、「指摘されたエントリーのＵビット情報４０２をＯＮ（１）からＯＦＦ（０）に変更することにより、エントリー削除処理をする。
【０１４５】
次に、Ｓ−ＯＮ設定処理について、詳細に説明する。
【０１４６】
Ｓ−ＯＮ設定処理は、リンクレイヤアドレステーブル管理部２０１がＩｎｄｅｘテーブル管理部２０７に対して、指定したエントリーのＳビット情報をＯＮ（１）に設定するように「Ｓ−ＯＮ設定要求」を送信し、これに応じてＩｎｄｅｘテーブル管理部２０７が「Ｓ−ＯＮ設定要求」を受信し、指定されたエントリーのＳビット情報をＯＮ（１）にする処理である。
【０１４７】
具体的には、図９に示すように、Ｉｎｄｅｘテーブル管理部２０７が、エントリーの削除を行ったとき削除したエントリーのＳビット情報５０２がＯＦＦ（０）ならばＯＮ（１）にする。またＳ−ＯＮ設定処理では、「Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除」と異なり指定されたエントリーの下位にあるエントリーのＳビット５０２の確認を行なわない。
【０１４８】
なぜ、Ｉｎｄｅｘテーブル２１３のＳビット情報５０２をＯＮ（１）にするのかは、後述するＳ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除処理で説明する。
【０１４９】
次に、到達性確認処理部２０４が「パケット通過通知要求」を送信し（ＳＴ７０７）、リンクレイヤアドレステーブル管理部２０１が受信した後の処理について、図１０を用いて詳細に説明する。図１０は、リンクレイヤアドレステーブル管理装置１０６内部のパケット通過通知準備処理のフロー図である。
【０１５０】
リンクレイヤアドレステーブル管理部２０１が到達性確認処理部２０４から送られてきた「パケット通過通知要求」を受信すると（ＳＴ１００１）、ＩＰアドレス４０５とインタフェース４０４の情報を用いて一致するエントリーがリンクレイヤアドレステーブル２１０に存在するか検索する（ＳＴ１００２）。
【０１５１】
リンクレイヤアドレステーブル管理部２０１は、一致するエントリーが存在しない場合は（ＳＴ１００３）、処理を終了する。
【０１５２】
一方、一致するエントリーが存在する場合は（ＳＴ１００３）、リンクレイヤアドレステーブル管理部２０１は、エントリーのＳビット情報４０３をチェックする（ＳＴ１００４）。
【０１５３】
Ｓビット情報４０３がＯＮ（１）の場合は（ＳＴ１００４）、リンクレイヤアドレステーブル管理部２０１は、そのまま処理を終了する。
【０１５４】
一方、Ｓビット情報４０３がＯＦＦ（０）の場合は、リンクレイヤアドレステーブル管理部２０１は、Ｓビット情報４０３をＯＮ（１）に設定し（ＳＴ１００５）、Ｓ−ＯＦＦエントリー数カウンタ２１２を減算する（ＳＴ１００６）。
【０１５５】
Ｓ−ＯＦＦエントリー数の減算によってカウンタ値が０になった場合は（ＳＴ１００７）、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦタイマーストップ要求をＳ−ＯＦＦタイマー管理部２０８に送信する（ＳＴ１００８）。
【０１５６】
これにより、リンクレイヤアドレステーブル管理装置１０６は、Ｓ−ＯＦＦタイマー２１４のストップ処理をする。
【０１５７】
次に、リンクレイヤアドレステーブル管理部２０１は、Ｓビット情報４０３をＯＮ（１）にした後その情報をＩｎｄｅｘテーブル管理部２０７に通知する。このとき、リンクレイヤアドレステーブル管理部２０１が送信するのが「Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除要求」である（ＳＴ１００９）。
【０１５８】
Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除要求は、Ｉｎｄｅｘテーブル管理部２０７に対して、指定したエントリーのＳビット情報をＯＮ（１）にしかつそのエントリーより下位にあるエントリーがＳ−ＯＦＦならば削除するように要求する処理である。この要求に応じて、Ｉｎｄｅｘテーブル管理部２０７は、指定したエントリーのＳビット情報をＯＮ（１）にしかつそのエントリーより下位にあるエントリーがＳ−ＯＦＦならば削除することにより、Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除処理を行なう。
【０１５９】
具体的には、Ｉｎｄｅｘテーブル管理部２０７は、Ｉｎｄｅｘテーブル２１３のＳビット情報５０２をＯＮ（１）にし、そのエントリーより下位にあるエントリーのＳビット情報５０２をチェックし、もしＳビット情報５０２がＯＦＦ（０）のエントリーがあれば、Ｓビット情報５０２がＯＦＦ（０）のエントリーを削除すべきエントリーとしてリンクレイヤアドレステーブル管理部２０１に通知する。
【０１６０】
また、Ｉｎｄｅｘテーブル管理部２０７は、パケットの通過や新規エントリーの追加などのとき、Ｉｎｄｅｘテーブル２１３のエントリーのＳビット情報５０２をＯＦＦ（０）にし、さらにそのエントリーを先頭に移動する。
【０１６１】
Ｓビット情報５０２がＯＦＦ（０）になったエントリーに対しては、一定時間経過後にＳビット情報５０２をＯＮ（１）に戻すように要求（パケット通過通知要求）があり、その要求はリンクレイヤアドレステーブル管理部２０１からＩｎｄｅｘテーブル管理部２０７に送られる。
【０１６２】
そのため「Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除要求」で指定されたＳビット情報５０２をＯＮ（１）にするエントリーより下位にはＳビット情報がＯＦＦ（０）のエントリーは存在しないはずである。もしＳビット情報がＯＦＦ（０）のエントリーが存在した場合には、削除すべきエントリーといえる。
【０１６３】
このように、Ｓ−ＯＦＦタイマー２１４によるエントリー削除とあわせて、このＳ−ＯＦＦエントリー削除を行なうことによって、おかしな状態にあるエントリーを発見し削除することができる。
【０１６４】
Ｉｎｄｅｘテーブル管理部２０７は、Ｉｎｄｅｘテーブル２１３によって削除すべきエントリーが見つかった場合は、その情報を「Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除応答」に入れて、リンクレイヤアドレステーブル管理部２０１に送信する。
【０１６５】
リンクレイヤアドレステーブルのエントリー削除の際にＳ−ＯＮ設定要求を送信する理由は、Ｓ−ＯＦＦエントリーとして残っていると、このＳ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除の際に削除すべきエントリーとして扱われてしまうためである。
【０１６６】
このＳ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除処理は、パケット通過通知要求を受信したリンクレイヤアドレステーブル管理部２０１がエントリーのＳビット情報４０３をＯＮ（１）にした後に、Ｉｎｄｅｘテーブル管理部２０７に要求する。
【０１６７】
このときのＩｎｄｅｘテーブルの操作を、図１１を用いて説明する。「Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除要求」によって指定されたＩｎｄｅｘの値が「＊」のとき、「＊」のエントリーのＳビット情報５０２をＯＮ（１）に設定する。また、Ｉｎｄｅｘの順番は変えない。「＊」より下位にあるエントリーのＳビット情報５０２の値をチェックし、もしＯＦＦ（０）のエントリーが存在する場合は、そのエントリーのＳビット情報５０２の値をＯＮ（１）に変更し、「Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除応答」で削除すべきエントリーのＩｎｄｅｘ値として、リンクレイヤアドレステーブル管理部２０１に通知する。
【０１６８】
これに応じて、リンクレイヤアドレステーブル管理部２０１は、「Ｓ−ＯＮ設定・Ｓ−ＯＦＦエントリー削除応答」を受信し、そのメッセージのなかに削除すべきＳ−ＯＦＦエントリーの情報が入っている場合は、Ｉｎｄｅｘテーブル管理部２０７によって指定されたエントリーを削除し、その変更内容をＳ−ＯＦＦエントリー数カウンタ２１２、エントリー数カウンタ２１１に反映させる。
【０１６９】
具体的には、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦエントリー数カウンタ数、エントリー数カウンタ数を減算処理する（ＳＴ１０１０、ＳＴ１０１１）。
【０１７０】
そして、この処理によってＳ−ＯＦＦエントリー数が０になった場合は（ＳＴ１０１２）、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦタイマー２１４を停止するように、Ｓ−ＯＦＦタイマー管理部２０８に要求し、Ｓ−ＯＦＦタイマー管理部２０８がＳ−ＯＦＦタイマー２１４を停止する（ＳＴ１０１３）。
【０１７１】
このように、パケット通過通知設定処理により、リンクレイヤアドレステーブル管理部２０１は、到達性確認処理部２０４から送られてきた「パケット通過通知要求」を受信し、この要求メッセージによって指定されたエントリーのＳビット情報４０３をＯＦＦ（０）からＯＮ（１）に設定する。つまり、指定されたエントリーが、到達性確認を行なった後一定時間が経過し、再度到達性確認が必要なエントリーとなったことを示す。
【０１７２】
次に、Ｉｎｄｅｘテーブル並び替え処理について説明する。
【０１７３】
Ｉｎｄｅｘテーブル並び替え処理は、Ｉｎｄｅｘテーブル管理部２０７がリンクレイヤアドレステーブル管理部２０１から送信された「Ｉｎｄｅｘテーブル並び替え要求」を受信し、Ｉｎｄｅｘテーブル２１３のエントリーの順番を並び替える処理である。
【０１７４】
この「Ｉｎｄｅｘテーブル並び替え要求」は、パケット処理によってエントリーのＳビット情報４０３がＯＮ（１）からＯＦＦ（０）に変更されたとき、リンクレイヤアドレステーブル管理部２０１が、Ｉｎｄｅｘテーブル管理部２０７に送信する。
【０１７５】
このメッセージを受信したＩｎｄｅｘテーブル管理部２０７は、Ｉｎｄｅｘテーブル２１３の先頭に該当Ｉｎｄｅｘ５０１を移動する。つまり、Ｉｎｄｅｘテーブル管理部２０７は、指定されたエントリーを最上位に移動する。
【０１７６】
具体的なＩｎｄｅｘテーブル管理部２０７の処理を、図１２を用いて説明する。
【０１７７】
「Ｉｎｄｅｘテーブル並び替え要求」で指定されたＩｎｄｅｘの値が「＊」であったとする。
【０１７８】
Ｓビット情報５０２の値は「Ｉｎｄｅｘテーブル並び替え要求」で指定されるが、通常は０に設定する。Ｉｎｄｅｘテーブル管理部２０７は、図１２に示すように、「＊」より上位のエントリーをそのまま一つ下にシフトし、先頭に「＊」のエントリーを移動している。「＊」より下位のエントリーはそのままで移動しない。
【０１７９】
これにより、常にリンクレイヤアドレステーブル２１０の検索でヒットしたエントリーがＩｎｄｅｘテーブル２１３の上位にくるため、逆に下位にあるエントリーは最近使用されていないとわかる。
【０１８０】
次に、リンクレイヤアドレス問い合わせ処理について説明する。
【０１８１】
リンクレイヤアドレス問い合わせ処理は、リンクレイヤアドレス問い合わせ処理部２０３が、リンクレイヤアドレステーブル管理部２０１からの「リンクレイヤアドレス問い合わせ要求」を受信して始まる。
【０１８２】
リンクレイヤアドレステーブル管理部２０１は、リンクレイヤアドレステーブル２１０の検索を行い、所望のエントリーが登録されていないことを発見したとき、リンクレイヤアドレス問い合わせ処理部２０３にリンクレイヤアドレス問い合わせ要求を送信する。問い合わせ結果は、即座に返ってくるわけではないため、リンクレイヤアドレステーブル管理部２０１は問い合わせ要求を送信したらそのパケットに対する処理を終了する。また、リンクレイヤアドレス問い合わせ処理において、リンクレイヤアドレス問い合わせ処理部２０３は、ネットワークを介してリンクレイヤアドレスを取得し、その結果を「エントリー新規追加・更新要求」としてリンクレイヤアドレステーブル管理部２０１に送信する。これにより、リンクレイヤアドレス問い合わせ処理部２０３は、新しいエントリーの追加をリンクレイヤアドレステーブル管理部２０１に要求する。
【０１８３】
リンクレイヤアドレス問い合わせ処理部２０３がリンクレイヤアドレステーブル管理部２０１から「リンクレイヤアドレス問い合わせ要求」を受信したときの処理の流れを、図１３を用いて説明する。
【０１８４】
まず、リンクレイヤアドレス問い合わせ処理部２０３は、リンクレイヤアドレステーブル管理部２０１から送られてきた「リンクレイヤアドレス問い合わせ要求」を受信する（ＳＴ１３０１）。
【０１８５】
次に、リンクレイヤアドレス問い合わせ処理部２０３は、リンクレイヤアドレスを問い合わせるリクエストメッセージを作成する（ＳＴ１３０２）。リンクレイヤアドレス問い合わせ処理部２０３は、ＩＰアドレスがＩＰｖ４の場合は、ＡＲＰリクエストメッセージを、ＩＰｖ６の場合はＮＳメッセージを作成する。
【０１８６】
そして、リンクレイヤアドレス問い合わせ処理部２０３は、作成したリクエストメッセージをリンクレイヤアドレスリクエスト応答・通知受信処理部２０６に送信する。
【０１８７】
ここで、リンクレイヤアドレス問い合わせ処理部２０３は、リクエストメッセージを一定間隔で応答を受信するまでか、または決められた回数に達するまで送信する。
【０１８８】
もし決められた回数まで送信したにもかかわらず応答がない場合は（ＳＴ１３０４、ＳＴ１３０５）、リンクレイヤアドレス問い合わせ処理部２０３は、該当する端末がネットワークに接続していないと判定する。
【０１８９】
一方、リンクレイヤアドレスの問い合わせメッセージに対して応答があった場合、新しく取得したＭＡＣアドレスの情報をリンクレイヤアドレス問い合わせ処理部２０３より「エントリー新規追加・更新要求」をリンクレイヤアドレステーブル管理部２０１に送信する（ＳＴ１３０８）。
【０１９０】
そして、これに対して、リンクレイヤアドレステーブル管理部２０１が、エントリー新規追加・更新処理をして、リンクレイヤアドレステーブルに新しいエントリーを追加する。
【０１９１】
なお、エントリー新規追加・更新処理の詳細については、後述する。
【０１９２】
リンクレイヤアドレス問い合わせ処理部２０３は、「エントリー新規追加・更新要求」送信後に一定時間（Ｒｅａｃｈａｂｌｅ時間  およそ３０秒程度）経過するのを待ち（ＳＴ１３０９）、「パケット通過通知要求」をリンクレイヤアドレステーブル管理部２０１に送信する（ＳＴ１３１０）。そして、これに応じて、リンクレイヤアドレステーブル管理部２０１が、パケット通過通知準備処理を行なう。
【０１９３】
なお、パケット通過通知準備処理は、リンクレイヤアドレステーブル管理部２０１が、要求メッセージによって指定されたエントリーのＳビット情報をＯＦＦ（０）からＯＮ（１）に設定する。つまり、到達性確認を行なった後、一定時間が経過し、再度到達性確認が必要なエントリーとなったことを示す処理である。
【０１９４】
具体的には、図１０を用いて説明した処理と同様である。違いは、「パケット通過通知要求」が到達性確認処理部２０４から送られてくるか、リンクレイヤアドレス問い合わせ処理部２０３から送られてくるかの違いである。詳細には、リンクレイヤアドレス問い合わせ処理部２０３は、エントリーの新規追加（ＳＴ１３０８）のときに到達性を確認しており、一定時間経過したため「パケット通過通知要求」を送信し、Ｓビット情報４０３をＯＮ（１）にするようにリンクレイヤアドレステーブル管理部２０１に要求する。これに対して、到達性確認処理部２０４の場合、到達性を確認してから一定時間経過後にリンクレイヤアドレステーブル管理部２０１に「パケット通過通知要求」を送信し、再度到達性の確認が必要なことを通知する。
【０１９５】
このように、リンクレイヤアドレステーブル管理装置１０６は、リンクレイヤアドレス問い合わせ処理を行なう。
【０１９６】
次に、エントリー新規追加・更新処理について、説明する。
【０１９７】
エントリー新規追加・更新処理は、リンクレイヤアドレステーブル管理部２０１がリンクレイヤアドレステーブル２１０にエントリーを追加またはエントリー内容を更新する処理である。
【０１９８】
「エントリー新規追加・更新要求」を受信した場合のリンクレイヤアドレステーブル管理部２０１の処理手順を、図１４を用いて詳細に説明する。
【０１９９】
まず、リンクレイヤアドレステーブル管理部２０１は、「エントリー新規追加・更新要求」を受信する（ＳＴ１４０１）。
【０２００】
「エントリー新規追加・更新要求」には、ＩＰアドレス、インタフェース、ＭＡＣアドレス、Ａビット情報、Ｓビット情報が含まれる。Ａビット情報とはエントリー追加（Ａｄｄ）すべきかどうかの情報である。Ｓビット情報はリンクレイヤアドレステーブルのＳビット情報と同様で到達性を確認するための情報である。
【０２０１】
まず、リンクレイヤアドレステーブル管理部２０１は、ＩＰアドレスとインタフェースの情報を用いてリンクレイヤアドレステーブルを検索する（ＳＴ１４０２）。
【０２０２】
一致するエントリーが存在している場合は（ＳＴ１４０３）、リンクレイヤアドレステーブル管理部２０１は、更新用のＳビット操作を行なう（ＳＴ１４０４）。
【０２０３】
このときすでにエントリーが存在しているため、リンクレイヤアドレステーブル管理部２０１は、同エントリーのＳビット情報４０３の領域を新しい情報で上書きする。このＳビット処理にともなって、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦタイマー処理、Ｓ−ＯＦＦエントリー数カウンタ処理を行なう。
【０２０４】
Ｓ−ＯＦＦエントリー数カウンタ処理では、リンクレイヤアドレステーブル管理部２０１はＳ−ＯＦＦエントリー数カウンタ２１２の値を設定する。Ｓ−ＯＦＦエントリーとはリンクレイヤアドレステーブルに登録されているＳビット情報４０３がＯＦＦ（０）になっているエントリーのことである。
【０２０５】
Ｓ−ＯＦＦエントリー数カウンタ処理では、リンクレイヤアドレステーブル管理部２０１は、Ｓビット処理によってＳ−ＯＦＦエントリーの数が変化した場合、それにあわせてＳ−ＯＦＦエントリー数カウンタ２１２の値を変化させる。
【０２０６】
また、Ｓ−ＯＦＦタイマー処理は、リンクレイヤアドレステーブル管理部２０１が、Ｓ−ＯＦＦエントリー数カウンタ２１２の変動にあわせて行なう処理である。
【０２０７】
Ｓ−ＯＦＦエントリー数カウンタ２１２が増加した場合は、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦタイマースタート要求をＳ−ＯＦＦタイマー管理部２０８に送信する。
【０２０８】
一方、Ｓ−ＯＦＦエントリー数カウンタ２１２が減少した場合は、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦエントリー数が０になったかどうかを確認し、０になった場合はＳ−ＯＦＦタイマー管理部２０８にＳ−ＯＦＦタイマーストップ要求を送信する。
【０２０９】
そして、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦタイマー処理、Ｓ−ＯＦＦエントリー数カウンタ処理の後、リンクレイヤアドレステーブルの内容を更新する（ＳＴ１４０５）。
【０２１０】
さらに、Ａビット情報がＯＮ（１）の場合は（ＳＴ１４０６）、リンクレイヤアドレステーブル管理部２０１は、Ｉｎｄｅｘテーブル並び替え要求を、Ｉｎｄｅｘテーブル管理部２０７に対して行なう。そして、Ｉｎｄｅｘテーブル管理部２０７がＩｎｄｅｘテーブル２１３の並び替え処理を行なう（ＳＴ１４０７）。
【０２１１】
なお、ＳＴ１４０７において行なうＩｎｄｅｘテーブル並び替え処理は、ＳＴ６０８において行なう処理と同様である。
【０２１２】
一方、Ａビット情報がＯＦＦ（０）の場合は、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＮ設定要求処理（ＳＴ１４０８）を行なう。そして、これに対して、Ｉｎｄｅｘテーブル管理部２０７が、Ｉｎｄｅｘテーブル２１３の対応するＳビット情報５０２をＯＮ（１）にすることにより、Ｓ−ＯＮ設定処理を行なう。
【０２１３】
一方、ＳＴ１４０３において、テーブル検索の結果、一致するエントリーが存在しない場合は、リンクレイヤアドレステーブル管理部２０１は、Ａビット情報をまず確認し（ＳＴ１４０９）、Ａビット情報がＯＦＦ（０）の場合は、処理を終了する。
【０２１４】
一方、ＡビットがＯＮ（１）の場合は、リンクレイヤアドレステーブル管理部２０１は、エントリー数が上限に達しているかどうかチェックする（ＳＴ１４１０）。
【０２１５】
リンクレイヤアドレステーブル２１０のエントリー数が上限に達している場合は、リンクレイヤアドレステーブル管理部２０１は、Ｉｎｄｅｘテーブル管理部２０７に削除可能なＩｎｄｅｘを問い合わせる（ＳＴ１４１１）。
【０２１６】
これに対して、Ｉｎｄｅｘテーブル管理部２０７は、Ｉｎｄｅｘテーブル２１３を管理しており常にエントリーの使用状況を把握しているため、この問い合わせに対して即座に削除するのに一番ふさわしいエントリーを求める。具体的には、Ｉｎｄｅｘテーブル管理部２０７は、Ｉｎｄｅｘテーブル２１３の一番下位にあるエントリーを検索する。そして、Ｉｎｄｅｘテーブル管理部２０７は、検索したエントリーのＩｎｄｅｘ５０１をリンクレイヤアドレステーブル管理部２０１に応答として返す。
【０２１７】
そして、リンクレイヤアドレステーブル管理部２０１は、そのＩｎｄｅｘ５０１の情報を用いて、リンクレイヤアドレステーブルのＩｎｄｅｘ５０１に対応する位置に登録されていたエントリーを削除し、空いた位置に新しいエントリーを追加する。
【０２１８】
エントリーを削除する処理はリンクレイヤアドレステーブル２１０のエントリーのＵビット情報４０２をＯＮ（１）からＯＦＦ（０）に変更するだけであるが、ここでは新規追加もあわせて行なうためＵビット情報４０２はＯＮ（１）のままである。
【０２１９】
このため、次に、リンクレイヤアドレステーブル管理部２０１は、ＩＰアドレス４０５、インタフェース４０４、ＭＡＣアドレス４０６、Ｓビット情報４０３を「エントリー新規追加・更新要求」に含まれる値に上書きする。
【０２２０】
Ｓビット操作では、リンクレイヤアドレステーブル管理部２０１は、Ｓビット情報４０３の情報の変化に従ってＳ−ＯＦＦタイマー処理、Ｓ−ＯＦＦエントリー数カウンタ処理を行なう（ＳＴ１４１２）。なお、Ｓ−ＯＦＦタイマー処理、Ｓ−ＯＦＦエントリー数カウンタ処理は、ＳＴ１４０４の処理と同様である。
【０２２１】
一方、ＳＴ１４１０においてまだ上限に達していない場合は、リンクレイヤアドレステーブル管理部２０１は、空いている領域にエントリー情報を追加する。
【０２２２】
そして、リンクレイヤアドレステーブル管理部２０１は、エントリー数カウンタ２１１を１加算し、エントリーを追加する（ＳＴ１４１３）。
【０２２３】
このときのエントリーの追加方法は、Ｕビット情報４０２をＯＦＦ（０）からＯＮ（１）に変更し、ＩＰアドレス４０５、インタフェース４０４、ＭＡＣアドレス４０６、Ｓビット情報４０３の情報をエントリー内容に登録する。
【０２２４】
また、Ｓビット情報４０３がＯＦＦ（０）の場合は、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦエントリー数カウンタ２１２を１加算し、Ｓ−ＯＦＦタイマースタート要求を送信する（ＳＴ１４１４）。また、Ｓビット情報４０３がＯＮ（１）の場合は、リンクレイヤアドレステーブル管理部２０１は、特にＳ−ＯＦＦエントリー数カウンタ２１２の処理もＳ−ＯＦＦタイマー２１４の処理も必要ない。
【０２２５】
そして、リンクレイヤアドレステーブル管理部２０１は、テーブル内容の更新後（ＳＴ１４１５）、Ｉｎｄｅｘテーブル並び替え要求処理を行なう（ＳＴ１４０７）。
【０２２６】
このように、リンクレイヤアドレステーブル管理部２０１は、エントリー新規追加・更新処理を行なう。
【０２２７】
なお、リンクレイヤアドレステーブル管理部２０１は、「エントリー新規追加・更新要求」をリンクレイヤアドレス変更通知受信処理部２０５から受信することもある。この場合、リンクレイヤアドレス変更通知受信処理部２０５は、ネットワークに接続する端末から一方的に通知されたリンクレイヤアドレス変更通知を受信したとき、その更新情報をリンクレイヤアドレステーブル管理部２０１に「エントリー新規追加・更新要求」を使って通知する。このとき、リンクレイヤアドレス変更通知受信処理部２０５は、Ａビット情報をＯＦＦ（０）にする。これは、リンクレイヤアドレステーブル２１０にすでに登録されているエントリーに対しては新しいリンクレイヤアドレス情報でエントリー情報を更新する必要があるが、エントリーが存在していない場合には今までパケットを送信していない相手の場合には、わざわざ新規にエントリーを生成する必要はないからである。
【０２２８】
リンクレイヤアドレス変更通知受信処理部２０５は「エントリー新規追加・更新要求」送信後、時間経過待ち（Ｒｅａｃｈａｂｌｅ時間）してから「パケット通過通知要求」をリンクレイヤアドレステーブル管理部２０１に送信する。
【０２２９】
次に、リンクレイヤアドレステーブル管理部２０１のＳ−ＯＦＦエントリータイムアウト削除処理について、説明する。
【０２３０】
Ｓ−ＯＦＦエントリータイムアウト削除処理は、Ｓ−ＯＦＦタイマー管理部２０８が管理しているＳ−ＯＦＦタイマー２１４のタイマー値がタイムアウトしたときの処理である。
【０２３１】
Ｓ−ＯＦＦタイマー管理部２０８はタイムアウトが発生した場合、Ｓ−ＯＦＦタイムアウト通知をリンクレイヤアドレステーブル管理部２０１に送信する。この「タイムアウト通知」を受信したリンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦエントリーをすべて削除する。
【０２３２】
Ｓ−ＯＦＦエントリーをタイムアウト削除する理由は、Ｓビット情報４０３がＯＦＦ（０）のまま長時間存在するエントリーが存在するはずがないからである。
【０２３３】
次に、リンクレイヤアドレステーブル管理部２０１のＳ−ＯＮ全設定要求処理について、説明する。
【０２３４】
Ｓ−ＯＮ全設定要求処理は、リンクレイヤアドレステーブル管理部２０１がＩｎｄｅｘテーブル管理部２０７に対して、Ｉｎｄｅｘテーブル２１３に登録されたすべてのエントリーのＳビット情報４０３をＯＮ（１）に設定するように要求する処理である。
【０２３５】
この処理は、Ｓ−ＯＦＦタイムアウトが発生したとき、にすべてのエントリーのＳビット情報４０３をＯＮ（１）にするための処理である。
【０２３６】
次に、Ｉｎｄｅｘテーブル管理部２０７のＳ−ＯＮ全設定処理ついて説明する。
【０２３７】
Ｓ−ＯＮ全設定処理は、Ｉｎｄｅｘテーブル２１３の全エントリーに対してＳビット情報５０２をチェックし、ＯＦＦ（０）の場合はＯＮ（１）に設定する処理である。
【０２３８】
Ｓ−ＯＮ全設定要求は、Ｓ−ＯＦＦタイマー２１４がタイムアウトした場合に発生するもので、正常に動作している場合は発生しない。この処理は、なんらかの異常によってＳ−ＯＦＦエントリーがそのまま残ってしまっても、リンクレイヤアドレス管理装置１０６においてそのエントリーを削除できるようにするために存在する。
【０２３９】
次に、リンクレイヤアドレステーブル２１０のエントリーの状態遷移について説明する。
【０２４０】
リンクレイヤアドレステーブル２１０のエントリーが新規に追加されたとき、Ｓビット情報４０３はＯＦＦ（０）である。
【０２４１】
そして、エントリーの新規追加を要求したリンクレイヤアドレス問い合わせ処理部２０３が一定時間経過後に「パケット通過通知要求」をリンクレイヤアドレステーブル管理部２０１に送信し、リンクレイヤアドレステーブル管理部２０１がそれを受信したことによってＳビット情報４０３はＯＮ（１）に設定される。
【０２４２】
Ｓビット情報４０３がＯＮ（１）のときにパケットが通過し、検索ヒットするとリンクレイヤアドレステーブル管理部２０１はＳビット情報４０３をＯＦＦ（０）に設定し、到達性確認処理部２０４に到達性確認要求を送信する。
【０２４３】
到達性確認処理部２０４では、到達性を確認した後、一定時間経過後に「パケット通過通知要求」をリンクレイヤアドレステーブル管理部２０１に送信する。そして、「パケット通過通知要求」受信したリンクレイヤアドレステーブル管理部２０１はＳビット情報４０３をＯＮ（１）に戻す。
【０２４４】
このようにＳビット情報４０３はＯＦＦ（０）になると、必ず一定時間経過後にＯＮ（１）に戻される。Ｓビット情報４０３がＯＮ（１）の状態でパケットが通過するとＯＦＦ（０）になるため、もしパケットが通過しなければＳビット情報がＯＮ（１）の状態のままになる。
【０２４５】
次に、Ｓ−ＯＦＦエントリー数カウンタ２１２とＳ−ＯＦＦタイマー２１４の関係を、図１５を用いて説明する。
【０２４６】
初期状態はリンクレイヤアドレステーブル２１０のエントリーの数は０で、Ｓ−ＯＦＦエントリー数カウンタ２１２の数も０である（ＳＴ１５０１）。
【０２４７】
そして、Ｓ−ＯＦＦエントリー数カウンタ２１２の数が増えたとき、Ｓ−ＯＦＦタイマー２１４をスタートし（ＳＴ１５０２）、「Ｓ−ＯＦＦエントリー数カウンタ２１２を１以上の状態」に遷移する（ＳＴ１５０３）。
【０２４８】
そして、Ｓ−ＯＦＦエントリー数カウンタ２１２の数が増加するときは、そのつどＳ−ＯＦＦタイマー２１４を再スタートする（ＳＴ１５０４）。
【０２４９】
一方、Ｓ−ＯＦＦエントリー数カウンタ２１２の数が減少するときは、Ｓ−ＯＦＦエントリー数カウンタ２１２の数が０でないか確認し（ＳＴ１５０５）、０でなければ「Ｓ−ＯＦＦエントリー数１以上の状態」に戻る（ＳＴ１５０３）。
【０２５０】
一方、もしＳ−ＯＦＦエントリー数カウンタ２１２が０になる場合は、Ｓ−ＯＦＦタイマー２１４を止めて（ＳＴ１５０６）、Ｓ−ＯＦＦエントリー数０の状態に遷移する（ＳＴ１５０１）。また、「Ｓ−ＯＦＦエントリー数カウンタ２１２が１以上の状態」にいるときにタイムアウトが発生すると、Ｓ−ＯＦＦタイマー管理部２０８はリンクレイヤアドレステーブル管理部２０１にＳ−ＯＦＦタイマータイムアウト通知を送信し（ＳＴ１５０７）、リンクレイヤアドレステーブル管理部２０１はＳ−ＯＦＦエントリータイムアウト削除処理を行なう。
【０２５１】
この処理によってＳ−ＯＦＦエントリー数は０となり、またＳ−ＯＦＦタイマーを止める（ＳＴ１５０８）。
【０２５２】
次に、リンクレイヤアドレステーブル管理部２０１のＳ−ＯＦＦエントリータイムアウト処理の流れを、図１６を用いて説明する。
【０２５３】
Ｓ−ＯＦＦタイマー管理部２０８はタイムアウトが発生するとリンクレイヤアドレステーブル管理部２０１に「Ｓ−ＯＦＦタイマータイムアウト通知」を送信する。
【０２５４】
これに対して、リンクレイヤアドレステーブル管理部２０１は「Ｓ−ＯＦＦタイマータイムアウト通知」を受信し（ＳＴ１６０１）、Ｓ−ＯＦＦタイマー値確認処理を行なう（ＳＴ１６０２）。
【０２５５】
Ｓ−ＯＦＦタイマー値確認処理とは、リンクレイヤアドレステーブル管理部２０１がＳ−ＯＦＦタイマー管理部２０８に対して「Ｓ−ＯＦＦタイマー値確認要求」を送信し、「Ｓ−ＯＦＦタイマー値応答」によりタイマー値を得る処理である。この処理によって、リンクレイヤアドレステーブル管理部２０１は、実際にタイマー値が０でありタイムアウトが発生していることを確認する。
【０２５６】
この確認が必要な理由は、Ｓ−ＯＦＦタイマー２１４のリスタート要求とタイムアウト通知がどちらも非同期に送信されるため、メッセージが衝突する可能性があるからである。
【０２５７】
確認したＳ−ＯＦＦタイマー値が０以外の場合は（ＳＴ１６０３）、実際にはタイムアウト状態ではないため、リンクレイヤアドレステーブル管理部２０１は、処理を終了する。
【０２５８】
一方、Ｓ−ＯＦＦタイマー値が０の場合、リンクレイヤアドレステーブル管理部２０１は、リンクレイヤアドレステーブル２１０内のＳビット情報４０３がＯＦＦ（０）のエントリーをすべて削除し（ＳＴ１６０４）、削除したエントリーの数だけＳ−ＯＦＦエントリー数カウンタ２１２を減算する（ＳＴ１６０５）。
【０２５９】
減算した結果、Ｓ−ＯＦＦエントリー数は０になる（ＳＴ１６０６）。
【０２６０】
さらに、リンクレイヤアドレステーブル管理部２０１は、Ｉｎｄｅｘテーブル２１３にも上述した変化を反映させるために、Ｉｎｄｅｘテーブル管理部２０７に対してＳ−ＯＮ全設定要求処理を行なう（ＳＴ１６０７）。
【０２６１】
このように、リンクレイヤアドレステーブル管理部２０１は、Ｓ−ＯＦＦエントリータイムアウト処理を行なう。
【０２６２】
以上のように、リンクレイヤアドレステーブル管理装置１０６は複数の処理を行なう。
【０２６３】
簡単にまとめると、リンクレイヤアドレステーブル管理装置１０６は、送信または転送するパケットを受け取り、そのＩＰアドレスと出力インタフェースからＭＡＣアドレスが求められない場合、リンクレイヤアドレスの問い合わせ処理を行い、新規エントリーを追加する。リンクレイヤアドレステーブル管理装置１０６は、検索ヒットした場合、Ｓビット情報４０３がＯＦＦ（０）ならば到達性が確認されているためそのままパケットの送信処理を行なう。Ｓビット情報４０３がＯＮ（１）ならば、リンクレイヤアドレステーブル管理部２０１は、到達性の確認が必要なため到達性確認処理を行なう。リンクレイヤアドレステーブル管理装置１０６は、到達性確認をＳビット情報４０３がＯＮ（１）になった後のパケット通過後に行なう。
【０２６４】
このように、リンクレイヤアドレステーブル２１０にＳビット情報領域を設け、到達性確認処理部２０４をリンクレイヤアドレスの到達性を確認するように動作させることによって、リンクレイヤアドレステーブル２１０に登録されているエントリーの到達性を保証するとともに、パケットの揺らぎを抑えられるという効果が得られる。
【０２６５】
また、Ｉｎｄｅｘテーブル２１３を備えることにより、リソースの限られたリンクレイヤアドレステーブルを有効に使うために一番古く使用されていないエントリーを簡単に見つけることができる。
【０２６６】
また、Ｓ−ＯＦＦタイマー２１４を備えることにより、到達性の確認を行なっていないＳビット情報４０３がＯＦＦ（０）のエントリーがいつまでもそのまま存在することがないようにできる。
【０２６７】
以上説明したように、本実施の形態によれば、長い間検索ヒットしていないエントリーを見つけるために本構成ではＩｎｄｅｘテーブル２１３を持つことにより、長い間検索ヒットしていないエントリーを削除して、その空いた領域に新しいエントリーを追加することができる。この結果、リンクレイヤアドレステーブル２１０の大きさを抑えることができ、リンクレイヤアドレステーブルの検索をハードウェア処理で行なうことができる。よって、高速なパケット転送処理を実現できる。
【０２６８】
また、本実施の形態によれば、あるエントリーの到達性確認を行っている到達性確認処理部２０４からＳビット情報４０３をＯＦＦ（０）からＯＮ（１）に変える指示がなんらかの原因でリンクレイヤアドレステーブル管理部２０１に届かなかったとしても、そのエントリーを発見できるという効果が得られる。
【０２６９】
また、本実施の形態によれば、リンクレイヤアドレステーブル２１０にＳビット情報領域をとることにより、テーブル検索時にＳビット情報をみるだけで到達性の確認が必要かどうか判断できる。具体的には、リンクレイヤアドレステーブル２１０のＳビット情報４０３がＯＮ（１）の場合には到達性の確認を行なうためエントリーの有効性を確認することができる。つまり、このように処理を単純化することにより、ハードウェアで高速処理しやすいようにできる。また、この方法では検索ヒットした時刻を保存しておく必要がない。
【０２７０】
さらに、リンクレイヤアドレステーブル２１０にＳビット情報領域をとることにより、検索ヒットした回数や検索ヒットした時刻をエントリーごとに記録しておく方法のように、検索ヒットした回数では、そのエントリーが本当に到達性の保証がされているかわからなくなるようなことはない。また、検索ヒットした時刻を記録しておくことによって一定時間経過ごとに到達性を確認する方法のように、時刻を記録するためのメモリの消費量はかなり大きな量（例えば時刻を記録するために用意したメモリ量を１バイトとした場合には２５５で一回りしてしまうように、小さい量では役に立たないし、大きな量にしたとしても一回りしたときの対策を持つ必要がある）が必要になってしまうこともない。
【０２７１】
Ｓビット情報４０３がＯＦＦ（０）の状態を設けることにより、到達性を確認するか否かを切り替えられる。これにより、常に到達性を確認する必要がなくなるので、負荷が大きくなるのをさけることができる。
【０２７２】
また、本実施形態によれば、Ｉｎｄｅｘテーブル２１３にも同じＳビット情報領域を設けることにより、Ｓビット情報４０３がＯＦＦ（０）のままの異常なエントリーが発生したとしても、他のエントリーのＳビット情報５０２がＯＮ（１）になったタイミングでチェックし、異常なエントリーを削除することができる。これにより、Ｓビット情報４０３がＯＦＦ（０）のままのエントリーが生じてしまった場合に、そのエントリーの到達性を確認することができず、エントリーが検索ヒットしているのにかかわらず到達性を保証できないという事態を防げる。
【０２７３】
さらに、本実施の形態によれば、異常なＳ−ＯＦＦエントリーを発見するためにＩｎｄｅｘテーブル２１３にＳビット情報領域を設け、かつＳ−ＯＦＦタイマー２１４を監視するＳ−ＯＦＦタイマー管理部２０８を設けることにより、Ｓビット情報４０３がＯＦＦ（０）のままのエントリーを発見し削除できる。これにより、他のエントリーのＳビット情報５０２がＯＮ（１）にならない場合、例えばＳビット情報４０３がＯＦＦ（０）のままのエントリーが発生してしまったとして、このエントリーに一致するパケットしか流れていない場合、到達性が確認されないまま永遠にパケットが転送されつづけることになってしまうということを防げる。
【産業上の利用可能性】
【０２７４】
以上のように、本発明によれば、リンクレイヤアドレステーブルでＮＤＰの状態管理を行なうのではなく、ハードウェア処理により、パケット送信または転送処理の処理速度を高速に維持したまま、登録されたリンクレイヤアドレスの到達性を確認できる。このように、ハードウェア処理により、リンクレイヤアドレスの到達性を確認できるようにすることは、ルータなどのネットワーク機器への応用の範囲が広く、その実用性も大きい。
【図面の簡単な説明】
【０２７５】
【図１】本発明の一実施の形態にかかるパケットの流れを示した図
【図２】本実施の形態にかかるパケット送信装置やパケット中継装置の内部構成を示す図
【図３】本実施の形態にかかるリンクレイヤアドレステーブル管理装置の構成を説明する図
【図４】本実施の形態にかかるリンクレイヤアドレステーブルの構成図
【図５】本実施の形態にかかるＩｎｄｅｘテーブルの構成図
【図６】本実施の形態にかかるリンクレイヤアドレステーブル管理部が、パケット送信・転送処理部から「検索要求」を受けた後の処理フロー図
【図７】本実施の形態にかかるリンクレイヤアドレステーブル管理装置の到達性確認処理のフロー図
【図８】本実施の形態にかかるリンクレイヤアドレステーブル管理装置のエントリー削除処理のフロー図
【図９】本実施の形態にかかるＩｎｄｅｘテーブル管理部の処理を説明するための第１の図
【図１０】本実施の形態にかかるリンクレイヤアドレステーブル管理装置のパケット通過通知準備処理のフロー図
【図１１】本実施の形態にかかるＩｎｄｅｘテーブル管理部の処理を説明するための第２の図
【図１２】本実施の形態にかかるＩｎｄｅｘテーブル管理部の処理を説明するための第３の図
【図１３】本実施の形態にかかるリンクレイヤアドレス問い合わせ処理部がリンクレイヤアドレステーブル管理部から「リンクレイヤアドレス問い合わせ要求」を受信したときの処理フロー図
【図１４】本実施の形態にかかるリンクレイヤアドレステーブル管理部が「エントリー新規追加・更新要求」を受信した場合の処理フロー図
【図１５】本実施の形態にかかるＳ−ＯＦＦエントリー数カウンタとＳ−ＯＦＦタイマーの関係を説明するためのフロー図
【図１６】本実施の形態にかかるリンクレイヤアドレス管理部のＳ−ＯＦＦエントリータイムアウト処理フロー図
【符号の説明】
【０２７６】
１０１  フレーム受信処理装置
１０２  パケット解析処理装置
１０３  パケット生成処理装置
１０４  ルーティングテーブル検索処理装置
１０５  自ノード宛パケット受信処理装置
１０６  リンクレイヤアドレステーブル管理装置
１０７  送信フレーム生成処理装置
１０８  フレーム送信処理装置
２０１  リンクレイヤアドレステーブル管理部
２０２  パケット送信・転送処理部
２０３  リンクレイヤアドレス問い合わせ処理部
２０４  到達性確認処理部
２０５  リンクレイヤアドレス変更通知受信処理部
２０６  リンクレイヤアドレスリクエスト応答・通知受信処理部
２０７  Ｉｎｄｅｘテーブル管理部
２０８  Ｓ−ＯＦＦタイマー管理部
２１０  リンクレイヤアドレステーブル
２１１  エントリー数カウンタ
２１２  Ｓ−ＯＦＦエントリー数カウンタ
２１３  Ｉｎｄｅｘテーブル
２１４  Ｓ−ＯＦＦタイマー
３０１  パケット送信装置
３０２  パケット中継装置
３０３  パケット受信装置
【図１】
2005167516.tif 000003
【図２】
2005167516.tif 000004
【図３】
2005167516.tif 000005
【図４】
2005167516.tif 000006
【図５】
2005167516.tif 000007
【図６】
2005167516.tif 000008
【図７】
2005167516.tif 000009
【図８】
2005167516.tif 000010
【図９】
2005167516.tif 000011
【図１０】
2005167516.tif 000012
【図１１】
2005167516.tif 000013
【図１２】
2005167516.tif 000014
【図１３】
2005167516.tif 000015
【図１４】
2005167516.tif 000016
【図１５】
2005167516.tif 000017
【図１６】
2005167516.tif 000018