説明

ネットワーク装置、送信先問合せ方法および送信先問合せプログラム

【課題】レイヤ2において送信先のアドレスを問合わせる場合、トラフィックの低減とセキュリティの維持を図る。
【解決手段】ネットワーク装置1は、フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する学習テーブル21と、送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が学習テーブル21に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信するアドレス問合せ部17と、アドレス問合せ部17による問合せ要求に対する応答情報に基づいて、送信要求を示すフレームを送信するフレーム送信部12とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク装置等に関する。
【背景技術】
【0002】
ネットワークスイッチまたは無線アドホック等の中継装置では、データリンク層(レイヤ2)で用いられるアドレス(MACアドレス)について学習機能を有しているものがある。かかる中継装置は、送信したいフレームについて送信先のアドレスが存在する物理回線に当該フレームを送信する。ところが、送信先のアドレスがどの物理回線に存在しているのかが不明の場合には、中継装置は、接続する全ての物理回線に、フレームを転送する。これを「フラッディング」という。
【0003】
ここで、送信先のアドレスを問い合わせる技術を説明する。この技術では、無線局は、送信先のアドレスを問い合わせるために、問合わせフレームや応答フレームを用いて、フレームを中継するためのルーティング情報を、隣接する無線局との間で交換する。そして、無線局は、交換した情報により自局の学習テーブルには含まれていないが、隣接無線局の学習テーブルに含まれている無線局を検出する。この結果、無線局は、検出した無線局が送信先のアドレスと一致すれば、隣接無線局を介して送信先のアドレスの無線局にフレームを中継できる。
【0004】
また、別の技術では、中継装置は、学習テーブルに受信フレームの送信先アドレスと一致するアドレスが登録されていない場合、接続されている全中継装置に、送信先アドレスと一致するアドレスが登録済みであるか否かを問い合わせる。そして、中継装置は、登録済みであると判定された中継装置から送信される応答フレームを受信すると、応答フレームの受信ポートを介して、受信フレームを中継する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006−319676号公報
【特許文献2】特開2009−200632号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、レイヤ2における通信において、送信先のアドレスが学習されていない中継装置では、送信先のアドレスを問合わせる場合、不要なトラフィックが発生するとともに、セキュリティが維持できない場合があるという問題があった。すなわち、中継装置がフラッディングを行うと、接続する全ての物理回線にフレームを転送することとなるので、不要なトラフィックが発生する。この結果、パケットキャプチャ等による盗聴の可能性が増大する。
【0007】
また、ルーティング情報を隣接する無線局との間で交換する技術では、無線局は、隣接する無線局との間で互いに保有された学習テーブルを添付して通信し合うので、不要なトラフィックが発生する。しかも、隣接する無線局が送信先のアドレスを知らない場合には、無線局が、隣接無線局を介して送信先のアドレスにフレームを中継できない。また、接続されている全中継装置に送信先アドレスを問い合わせる技術であっても、送信先アドレスが接続されている全中継装置に登録されていなければ、問い合わせ元の中継装置は、受信フレームを中継できない。
【0008】
開示の技術は、上記に鑑みてなされたものであって、レイヤ2において送信先のアドレスを問合わせる場合、トラフィックの低減とセキュリティの維持を図ることができるネットワーク装置等を提供することを目的とする。
【課題を解決するための手段】
【0009】
本願の開示するネットワーク装置は、一つの態様において、フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する記憶部と、送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が前記記憶部に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信する問合せ部と、前記問合せ部による問合せ要求に対する応答情報に基づいて、前記送信要求を示すフレームを送信する送信部とを有する。
【発明の効果】
【0010】
本願の開示するネットワーク装置の一つの態様によれば、レイヤ2において送信先のアドレスを問合わせる場合、トラフィックの低減とセキュリティの維持を図ることができるという効果を奏する。
【図面の簡単な説明】
【0011】
【図1】図1は、実施例に係るネットワークシステムの構成を示す機能ブロック図である。
【図2】図2は、学習テーブルのデータ構造の一例を示す図である。
【図3】図3は、問合せ管理テーブルのデータ構造の一例を示す図である。
【図4A】図4Aは、問合せフレームのフォーマットの一例を示す図である。
【図4B】図4Bは、応答フレームのフォーマットの一例を示す図である。
【図5】図5は、実施例に係るアドレス問合せ(問合せ元)の手順を示すフローチャートである。
【図6】図6は、実施例に係るアドレス問合せ(問合せ先)の手順を示すフローチャートである。
【図7A】図7Aは、ホップ数が1である場合のフレームフローの具体例を説明する図である。
【図7B】図7Bは、ホップ数が2である場合のフレームフローの具体例を説明する図である。
【図8】図8は、実施例に係るアドレス問合せをHTに用いた場合のシーケンスを説明する図である。
【図9】図9は、送信先問合せプログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【0012】
以下に、本願の開示するネットワーク装置、送信先問合せ方法および送信先問合せプログラムの実施例を図面に基づいて詳細に説明する。以下の実施例では、イーサネット(登録商標)を用いて、データリンク層(レイヤ2)における通信制御を行うネットワーク装置に適用した場合を示す。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【0013】
[実施例に係るネットワークシステムの構成]
図1は、実施例に係るネットワークシステムの構成を示す機能ブロック図である。図1に示すように、ネットワークシステム9は、ネットワーク装置1とn台のネットワーク装置2とを有する。ネットワーク装置1は、n台のネットワーク装置2と直接的または間接的にネットワーク内の伝送路を介して接続される。接続方法としては、有線であっても無線であっても構わない。なお、以降の説明では、有線で接続されているものとして説明する。また、ネットワーク装置1、2は、MACアドレスを用いて送信先を識別するレイヤ2で通信を行う。
【0014】
[ネットワーク装置1の構成]
ネットワーク装置1は、送信要求を示すフレームを検知すると、当該フレームの送信先の送信先情報が自装置で学習されていない場合、当該送信先の送信先情報を問い合わせる問合せ要求を、隣接するネットワーク装置2に対して送信する。かかる問合せ要求には、当該送信先の送信先情報を問い合わせる装置の数(以降、「ホップ数」という。)が含まれている。
【0015】
このネットワーク装置1の構成について説明する。ネットワーク装置1は、制御部10および記憶部20を有する。制御部10は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路である。さらに、制御部10は、フレーム受信部11、フレーム送信部12、アプリケーション部13、アドレス学習部14、振分部15A、アドレス検索部16およびアドレス問合せ部17を有する。
【0016】
記憶部20は、例えば、RAM(Random Access Memory)、フラッシュメモリ(flash memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置である。さらに、記憶部20は、学習テーブル21および問合せ管理テーブル22を有する。
【0017】
フレーム受信部11は、伝送路から送信要求を示すフレームまたはフレームを中継する中継フレーム等を受信する。また、フレーム受信部11は、送信要求に係る送信先の送信先情報を問い合わせる問合せ要求に対する応答を、ネットワーク装置2から受信する。
【0018】
フレーム送信部12は、伝送路に各種フレームを送信する。
【0019】
アプリケーション部13は、アプリケーションを実行する。例えば、アプリケーション部13は、ネットワーク装置2に送信要求が発生するようなアプリケーションを実行する。
【0020】
アドレス学習部14は、フレーム受信部11により受信されたフレームから送信元のアドレスを学習する。例えば、アドレス学習部14は、フレーム受信部11により受信されたフレームの送信元のMACアドレスを、当該フレームを受信したポートに対応付けて学習テーブル21に格納する。なお、アドレス学習部14は、送信元のMACアドレスが学習テーブル21に格納されていれば、送信元のMACアドレスが既に学習されているので、当該送信元のMACアドレスを学習テーブル21に追加しない。
【0021】
ここで、学習テーブル21のデータ構造について、図2を参照して説明する。図2は、学習テーブルのデータ構造の一例を示す図である。図2に示すように、学習テーブル21は、アドレス21aおよび物理ポート番号21bを対応付けて記憶する。
【0022】
アドレス21aには、学習されたMACアドレスが記憶される。なお、アドレス21aは、後述するアドレス検索部16によってフレームの送信先のアドレスが学習済みであるか否かが判定される際に用いられる。
【0023】
物理ポート番号21bには、対応付けられたアドレス21aが指す装置の送信先情報、すなわちポート番号が記憶される。言い換えれば、物理ポート番号21bには、送信先のMACアドレスにより識別されるネットワーク装置2の送信先情報としてポート番号が記憶されている。なお、物理ポート番号21bは、物理的な送信先情報であるが、仮想的な送信先情報であっても良い。すなわち、物理ポート番号に代えて、VLAN(Virtual LAN)に関する情報を送信先情報としても良い。また、物理ポート番号21bは、有線の場合の送信先情報であるが、無線の場合の送信先情報であっても良い。無線の場合には、送信先情報を、物理ポート番号に代えて、フレームを転送する際の隣接装置のMACアドレスとしても良い。
【0024】
学習テーブル21の一例として、アドレス21aが「AAAA」である場合、物理ポート番号21bとして「ポート1」を記憶している。
【0025】
振分部15Aは、受信したフレームから処理を振り分ける。例えば、振分部15Aは、アドレス学習部14によって取得されたフレームの送信先のアドレスが自装置のアドレスである場合には、当該フレームを用いてアプリケーションを実行すべく、当該フレームをアプリケーション部13に引き渡す。また、振分部15Aは、アドレス学習部14によって取得されたフレームの送信先のアドレスが自装置以外のアドレスである場合には、当該フレームが送信要求を示すフレームまたは中継フレームであると判断し、当該フレームをアドレス検索部16に引き渡す。また、振分部15Aは、アドレス学習部14によって取得されたフレームが問合せ要求の際に用いられるフレームである場合には、当該フレームが問合せ要求に対する応答であると判断し、当該フレームを問合せ処理部171Aに引き渡す。
【0026】
アドレス検索部16は、振分部15Aから引き渡されたフレームについて、送信先のアドレスに対応する送信先情報を学習テーブル21から検索する。そして、アドレス検索部16は、送信先のアドレスに対応する送信先情報を検索できた場合には、検索できた送信先情報に基づいて、振分部15Aから引き渡されたフレームを、フレーム送信部12を介して送信する。一方、アドレス検索部16は、送信先のアドレスに対応する送信先情報を検索できなかった場合には、送信先のアドレスが学習されていないと判断する。そして、アドレス検索部16は、送信先のアドレスに対応する送信先情報を問い合わせるべく、振分部15Aから引き渡されたフレームをアドレス問合せ部17に引き渡す。なお、アドレス検索部16は、振分部15Aから引き渡されたフレームについて、送信先のアドレスに対応する送信先情報を学習テーブル21から検索するものとしたが、これに限定されるものではない。例えば、アドレス検索部16は、アプリケーション部13から送信要求を示すフレームを引き渡された場合であっても、当該フレームについて、送信先のアドレスに対応する送信先情報を学習テーブル21から検索するものとしても良い。
【0027】
アドレス問合せ部17は、問合せ処理部171Aおよび応答処理部172を有する。問合せ処理部171Aは、アドレス検索部16により学習されていないと判断された送信先のアドレスに対して、ホップ数を付加した送信先情報の問合せフレームを作成する。なお、「問合せフレーム」とは、送信先のアドレスの送信先情報を問い合わせる際に用いられるフレームのことをいう。
【0028】
例えば、問合せ処理部171Aは、所定のホップ数および問い合わせたい送信先のアドレスを問合せフレームのユーザデータ部分に設定する。また、問合せ処理部171Aは、問合せフレームを送信してから応答を待ち合わせる応答待ち時間を問合せ管理テーブル22に格納する。また、問合せ処理部171Aは、作成した問合せフレームを、フレーム送信部12を介して隣接するネットワーク装置2に対して送信する。隣接するネットワーク装置2が複数存在する場合には、問合せ処理部171Aは、複数のネットワーク装置2に対して同時に送信することが望ましい。これは、問い合わせ時間を短縮するためである。なお、所定のホップ数は、例えばネットワークの幹線であるバックボーンを除外したネットワーク装置1側のネットワーク装置2の数としても良い。バックボーンを除外するのは、問い合わせによってネットワークの負荷をかけないためであるとともに、問い合わせ自体の時間を短縮するためである。しかしながら、ネットワークの全体構成が不明である場合には、ネットワーク内の最大ホップ数を所定のホップ数としても良い。
【0029】
ここで、問合せ管理テーブル22のデータ構造について、図3を参照して説明する。図3は、問合せ管理テーブルのデータ構造の一例を示す図である。図3に示すように、問合せ管理テーブル22は、アドレス22a、物理ポート番号22bおよび応答待ちタイマ値22cを対応付けて記憶する。
【0030】
アドレス22aには、問い合わせを行う送信先のアドレスが記憶される。物理ポート番号22bには、問合せフレームを送信した送信先情報、すなわちポート番号が記憶される。なお、物理ポート番号22bは、物理的な送信先情報であるが、仮想的な送信先情報であっても良い。すなわち、物理ポート番号に代えて、VLAN(Virtual LAN)に関する情報を送信先情報としても良い。また、物理ポート番号22bは、有線の場合の送信先情報であるが、無線の場合の送信先情報としても良い。無線の場合には、物理ポート番号に代えて、例えば、問合せフレームを転送する際の隣接装置のMACアドレスを送信先情報とする。
【0031】
応答待ちタイマ値22cには、応答待ち時間の残り時間が記憶される。すなわち、アドレス問合せ部17は、問合せフレームを送信したとき、最大の応答待ち時間を応答待ちタイマ値22cに設定し、設定した応答待ち時間を時間の経過に応じてカウントダウンして、応答を待つ残り時間を応答待ちタイマ値22cに設定しなおす。
【0032】
問合せ管理テーブル22の一例として、アドレス22aが「AAAA」である場合、物理ポート番号22bとして「ポート1、ポート2、ポート3」を記憶し、応答待ちタイマ値22cとして「残り3秒」を記憶している。この場合には、問合せ処理部171Aは、残り3秒を用いて、問い合わせを継続することとなる。
【0033】
図1に戻って、応答処理部172は、問合せ要求に対する応答処理を行う。例えば、応答処理部172は、応答待ち時間が0になるまでに、問合せ要求に対する応答フレームを振分部15Aから取得した場合、応答フレームに設定された問合せ結果に応じて、応答に関する処理を行う。なお、「応答フレーム」とは、問合せ要求に対する応答に用いられるフレームのことをいう。
【0034】
一例として、応答処理部172は、応答フレームの問合せ結果に送信先アドレスを知っている旨の情報が設定されていた場合、応答フレームを受信したポートを用いて送信要求を示すフレームを、フレーム送信部12を介して送信する。すなわち、応答フレームの問合せ結果に送信先アドレスを知っている旨の情報が設定されていた場合、応答フレームを受信したポートが送信先アドレスの送信先情報となる。したがって、応答処理部172は、アドレス学習部14によって学習テーブル21に記憶された、送信先アドレスに対応付けられたポートを用いて送信要求を示すフレームを送信する。また、応答処理部172は、応答フレームの問合せ結果に送信先アドレスを知らない旨の情報が設定されていた場合、応答に対応する問合せフレームに設定されたホップ数を1加算した数のホップ数を付加した問合せフレームを問合せ処理部171Aに作成させる。そして、応答処理部172は、送信先のアドレスの送信先情報の問合せ要求を、問合せ処理部171Aに再び送信させる。
【0035】
応答処理部172は、応答待ち時間が0になった場合、応答フレームを取得できないと判断し、問合せフレームに設定されたホップ数を1加算した数のホップ数を付加した問合せフレームを問合せ処理部171Aに作成させる。そして、応答処理部172は、送信先のアドレスの送信先情報の問合せ要求を、問合せ処理部171Aに再び送信させる。なお、応答処理部172は、再度問合せをする場合の処理について説明したが、これに限られず、問合せを断念しても良い。
【0036】
[ネットワーク装置2の構成]
次に、ネットワーク装置2の構成について説明する。ネットワーク装置2は、ネットワーク装置1と同一の構成については同一符号を示すことで、その重複する構成および動作の説明については省略する。ネットワーク装置2がネットワーク装置1と異なるところは、振分部15Aを振分部15Bに変更し、問合せ処理部171Aを問合せ処理部171Bに変更し、応答中継処理部173を追加した点にある。なお、ネットワーク装置2およびネットワーク装置1は、それぞれの機能部をマージすることで、同一の構成を備えるネットワーク装置としても良い。
【0037】
振分部15Bは、受信したフレームが問合せフレームである場合には、当該フレームの送信先を問合せるべく、当該フレームを問合せ処理部171Bに引き渡す。また、振分部15Bは、受信したフレームが応答フレームである場合には、当該フレームを中継するべく、当該フレームを応答中継処理部173に引き渡す。
【0038】
問合せ処理部171Bは、振分部15Bから問合せフレームを取得すると、取得した問合せフレームに設定された問合せ先のアドレスが学習テーブル21に記憶されているか否かを判定する。そして、問合せ処理部171Bは、問合せ先のアドレスが学習テーブル21に記憶されていない場合、取得した問合せフレームに基づいて、新たに問合せフレームを作成する。一例として、問合せ処理部171Bは、取得した問合せフレームに設定されたホップ数を1減算する。また、問合せ処理部171Bは、問合せ先のアドレスに対して、減算したホップ数を付加した、送信先情報の問合せフレームを新たに作成する。また、問合せ処理部171Bは、取得した問合せフレームに設定されていた送信元アドレスを、新たに作成した問合せフレームの送信元アドレスに設定する。これは、問合せフレームをさらに中継するネットワーク装置2に送信する際に、中継するネットワーク装置2にもこの送信元アドレスを学習テーブル21に記憶させるようにするためである。そして、問合せ処理部171Bは、新たに作成した問合せフレームを、先行して取得した問合せフレームの送信元のネットワーク装置2と異なる隣接するネットワーク装置2に対して送信する。
【0039】
また、問合せ処理部171Bは、問合せ先のアドレスが学習テーブル21に記憶されている場合、学習されていると判断し、問合せ要求に対する応答フレームを作成する。一例として、問合せ処理部171Bは、応答フレームの問合せ結果に、問合せ先のアドレスを知っている旨の情報を設定する。また、問合せ処理部171Bは、応答フレームの宛先アドレスに問合せフレームの送信元アドレス、すなわち問合せ元であるネットワーク装置1のアドレスを設定する。また、問合せ処理部171Bは、応答フレームの送信元アドレスに、自装置のアドレスを設定する代わりに問合せ先のアドレスを設定する。これは、応答フレームを問合せ元のネットワーク装置1に戻す際に、ネットワーク装置1と自装置とを中継するネットワーク装置2にもこの問合せ先のアドレスを学習テーブル21に記憶させるようにするためである。そして、問合せ処理部171Bは、作成した応答フレームを、問合せフレームの送信元である隣接装置、すなわちネットワーク装置2(または1)に対して送信する。
【0040】
応答中継処理部173は、振分部15Bから応答フレームを取得すると、取得した応答フレームを中継する。一例として、応答中継処理部173は、応答フレームに設定された問合せ結果が問合せ先のアドレスを知っている旨の情報であった場合、当該応答フレームの問合せ先のアドレスを学習テーブルに追加し、問合せフレームの送信元であるネットワーク装置2(または1)に対して送信する。なお、問合せ先のアドレスを学習テーブルに追加する処理は、当該応答フレームの送信元アドレスが問合せ先のアドレスになっていることから、アドレス学習部14で行うことも可能である。また、応答中継処理部173は、応答フレームに設定された問合せ結果が問合せ先のアドレスを知らない旨の情報であった場合、受信した応答フレームをそのまま問合せフレームの送信元である隣接装置、すなわちネットワーク装置2(または1)に対して送信する。
【0041】
[フレームフォーマットの一例]
ここで、問合せフレームおよび応答フレームのフレームフォーマットについて、図4Aおよび図4Bを参照して説明する。図4Aは、問合せフレームのフォーマットの一例を示す図である。図4Bは、応答フレームのフォーマットの一例を示す図である。
【0042】
図4Aに示すように、問合せフレームには、宛先アドレスf1、送信元アドレスf2、タイプf3およびユーザデータf4が含まれる。宛先アドレスf1には、隣接するネットワーク装置2のみが受信可能なマルチキャストアドレスや隣接するネットワーク装置2のMACアドレスを指定するユニキャストアドレスが設定される。隣接するネットワーク装置2のみが受信可能なマルチキャストアドレスの一例として、STP(Spanning Tree Protocol)で用いられるBPDU(Bridge Protocol Data Unit)で使用されるアドレスが用いられる。
【0043】
送信元アドレスf2には、送信先のアドレスを問い合わせる送信元装置のアドレスが設定される。すなわち、送信元アドレスf2には、ネットワーク装置1のアドレスが設定される。なお、前述したとおり、問合せフレームを中継するネットワーク装置2は、送信元アドレスf2に送信元装置であるネットワーク装置1のアドレスをそのまま引き継いで設定する。送信元アドレスf2にネットワーク装置1のアドレスをそのまま引き継ぐのは、ネットワーク装置2の送信先のネットワーク装置に対して、ネットワーク装置1のアドレスを学習させるためでる。タイプf3には、レイヤ3で用いられるプロトコルのタイプが設定される。
【0044】
ユーザデータf4には、ホップ数f41および問合せ先f42が含まれる。ホップ数f41には、送信先のアドレスの送信先情報を問い合わせるネットワーク装置2の数が設定される。すなわち、ホップ数f41とは、送信先のアドレスの送信先情報を問い合わせるために中継可能なネットワーク装置2の数となる。問合せ先f42には、送信先情報を問い合わせる送信先のアドレスが設定される。
【0045】
図4Bに示すように、応答フレームには、宛先アドレスg1、送信元アドレスg2、タイプg3およびユーザデータg4が含まれる。宛先アドレスg1には、送信先アドレスを問い合わせる送信元装置のアドレスが設定される。すなわち、宛先アドレスg1には、ネットワーク装置1のアドレスが設定される。なお、前述したとおり、応答フレームを中継するネットワーク装置2は、宛先アドレスg1に送信元装置であるネットワーク装置1のアドレスをそのまま引き継いで設定する。送信元アドレスg2には、後述する問合せ結果g41が知っている旨の情報である場合、問い合わせた送信先のアドレスが設定される。送信元アドレスg2に問い合わせた送信先のアドレスを設定するのは、この応答フレームを中継するネットワーク装置2に対して、問い合わせた送信先のアドレスを学習させるためでる。一方、問合せ結果g41が知らない旨の情報である場合、送信元アドレスg2には、自装置のアドレスが設定される。
【0046】
ユーザデータg4には、問合せ結果g41および問合せ先g42が含まれる。問合せ結果g41には、送信先のアドレスの送信先情報が学習されている場合には、送信先のアドレスを知っている旨の情報が設定される。送信先のアドレスの送信先情報が学習されていない場合には、送信先のアドレスを知らない旨の情報が設定される。問合せ先g42には、問合せフレームの問合せ先f42と同様、問い合わせた送信先のアドレスが設定される。
【0047】
[アドレス問合せ(問合せ元)の手順]
次に、問合せ元であるネットワーク装置1がフレームの送信先のアドレスを問い合わせるアドレス問合せの手順を、図5を参照して説明する。図5は、実施例に係るアドレス問合せ(問合せ元)手順を示すフローチャートである。なお、フレーム受信部11が送信要求を示すフレームまたはフレームを中継する中継フレームを受信し、振分部15Aが受信したフレームをアドレス検索部16に引き渡すものとして説明する。
【0048】
まず、アドレス検索部16は、振分部15Aから引き渡されたフレームの中に、送信要求を示すフレームまたはフレームを中継する中継フレームがあったか否かを判定する(ステップS11)。送信要求を示すフレームまたは中継フレームがなかったと判定した場合(ステップS11;No)、アドレス検索部16は、判定処理を繰り返す。一方、送信要求を示すフレームまたは中継フレームがあったと判定した場合(ステップS11;Yes)、アドレス検索部16は、引き渡されたフレームの送信先のアドレスが学習済みであるか否かを、学習テーブル21に基づいて判定する(ステップS12)。
【0049】
そして、引き渡されたフレームの送信先のアドレスが学習済みであると判定した場合(ステップS12;Yes)、アドレス検索部16は、学習テーブル21の内容に従って、当該フレームを、フレーム送信部12を介して送信する(ステップS13)。すなわち、アドレス検索部16は、学習テーブル21の送信先のアドレスに対応する送信先情報(物理ポート番号21b)を学習テーブル21から検索し、検索した送信先情報のポートから当該フレームを送信する。そして、応答処理部172は、アドレス問合せ処理を終了する。
【0050】
一方、引き渡されたフレームの送信先のアドレスが学習済みでないと判定した場合(ステップS12;No)、問合せ処理部171Aは、学習済みでないと判定された送信先のアドレスに対して、ホップ数を付加した、送信先情報の問合せフレームを作成する。そして、問合せ処理部171Aは、作成した問合せフレームを、フレーム送信部12を介して隣接するネットワーク装置2に対して送信する(ステップS14)。隣接するネットワーク装置2が複数存在する場合には、問合せ処理部171Aは、複数のネットワーク装置2に対して同時に送信する。
【0051】
そして、問合せ処理部171Aは、問合せフレームを送信したとき、応答待ちタイマを設定する(ステップS15)。例えば、問合せ処理部171Aは、問合せフレームを送信してから応答を待つ残り時間(応答待ち時間)を、問合せフレームを送信した際に用いた送信先情報を対応付けて問合せ管理テーブル22に設定する。なお、問合せ処理部171Aは、設定した応答待ち時間を時間の経過に応じてカウントダウンして、応答を待つ残り時間を設定しなおす。
【0052】
その後、応答処理部172は、応答待ちタイマが0になるまでに応答があるか否かを判定する(ステップS16)。そして、応答待ちタイマが0になるまでに応答があったと判定した場合(ステップS16;Yes)、応答処理部172は、応答フレームの問合せ結果に送信先アドレスを知らない旨の情報が設定されているか否かを判定する(ステップS17)。応答フレームの問合せ結果に送信先アドレスを知っている旨の情報が設定されていると判定した場合(ステップS17;No)、応答処理部172は、応答の情報に従って送信する(ステップS18)。すなわち、応答処理部172は、応答フレームを受信したポートを用いて送信要求を示すフレームまたは中継フレームを、フレーム送信部12を介して送信する。そして、応答処理部172は、アドレス問合せ処理を終了する。
【0053】
一方、応答待ちタイマが0になるまでに応答がなかった場合(ステップS16;No)、または応答フレームの問合せ結果に送信先アドレスを知らない旨の情報が設定されていた場合(ステップS17;Yes)、応答処理部172は、ステップS19に移行する。
【0054】
そして、問合せ処理部171Aは、問合せフレームに設定されたホップ数を1だけ加算し(ステップS19)、加算したホップ数が予め定められた最大ホップ数であるか否かを判定する(ステップS20)。加算したホップ数が予め定められた最大ホップ数でないと判定した場合(ステップS20;No)、問合せ処理部171Aは、再び問合せすべく、ステップS14に移行する。
【0055】
一方、加算したホップ数が予め定められた最大ホップ数であると判定した場合(ステップS20;Yes)、問合せ処理部171Aは、例えばディスプレイへの表示によって、送信先のアドレスを問い合わせできなかったことを警告する(ステップS21)。そして、応答処理部172は、アドレス問合せ処理を終了する。
【0056】
[アドレス問合せ(問合せ先)の手順]
次に、問合せ元であるネットワーク装置1から問合せフレームを受信する、問合せ先であるネットワーク装置2が送信先のアドレスを問い合わせるアドレス問合せの手順を、図6を参照して説明する。図6は、実施例に係るアドレス問合せ(問合せ先)手順を示すフローチャートである。
【0057】
まず、振分部15Bは、フレーム受信部11によって受信されたフレームが問合せフレームであるか否かを判定する(ステップS31)。問合せフレームでないと判定した場合(ステップS31;No)、振分部15Bは、判定処理を繰り返す。一方、問合せフレームであると判定した場合(ステップS31;Yes)、問合せ処理部171Bは、振分部15Bから引き渡された問合せフレームの問合せ先のアドレスが学習済みであるか否かを判定する(ステップS32)。問合せ先のアドレスが学習済みであるか否かの判定は、学習テーブル21に基づいて行われる。
【0058】
問合せ先のアドレスが学習済みであると判定した場合(ステップS32;Yes)、問合せ処理部171Bは、問合せ要求に対する応答フレームを作成する。そして、問合せ処理部171Bは、作成した応答フレームを、フレーム送信部12を介して送信する(ステップS33)。そして、問合せ処理部171Bは、問合せ先であったネットワーク装置2のアドレス問合せ処理を終了する。
【0059】
一方、問合せ先のアドレスが学習済みでないと判定した場合(ステップS32;No)、問合せ処理部171Bは、問合せ要求に係る問合せフレームに設定されたホップ数をカウントダウンする(ステップS34)。そして、問合せ処理部171Bは、カウントダウンしたホップ数が0でないか否かを判定する(ステップS35)。カウントダウンしたホップ数が0であると判定した場合(ステップS35;No)、問合せ処理部171Bは、後続するネットワーク装置2に問合せできないので、応答フレームを送信するか否かを判定する(ステップS36)。そして、応答フレームを送信しないと判定した場合(ステップS36;No)、問合せ処理部171Bは、問合せフレームを破棄する(ステップS38)。そして、問合せ処理部171Bは、問合せ先であったネットワーク装置2のアドレス問合せ処理を終了する。
【0060】
一方、応答フレームを送信すると判定した場合(ステップS36;Yes)、問合せ処理部171Bは、送信先アドレスを知らない旨の応答結果を応答フレームの問合せ結果に設定した、問合せに対する応答フレームを作成する。そして、問合せ処理部171Bは、作成した応答フレームを、問合せフレームの送信元のネットワーク装置2(または1)に対して送信する(ステップS37)。そして、問合せ処理部171Bは、問合せ先であったネットワーク装置2のアドレス問合せ処理を終了する。
【0061】
一方、カウントダウンしたホップ数が0でないと判定した場合(ステップS35;Yes)、問合せ処理部171Bは、カウントダウンしたホップ数を付加した、送信先情報の問合せフレームを新たに作成する。そして、問合せ処理部171Bは、新たに作成した問合せフレームを、先行して取得した問合せフレームの送信元のネットワーク装置2と異なる隣接するネットワーク装置2に対して送信する(ステップS39)。
【0062】
そして、問合せ処理部171Bは、新たに作成した問合せフレームを送信したとき、応答待ちタイマを設定する(ステップS40)。例えば、問合せ処理部171Bは、問合せフレームを送信してから応答を待つ残り時間(応答待ち時間)を、問合せフレームを送信した際に用いた送信先情報を対応付けて問合せ管理テーブル22に設定する。なお、問合せ処理部171Bは、設定した応答待ち時間を時間の経過に応じてカウントダウンして、応答を待つ残り時間を設定しなおす。
【0063】
その後、応答中継処理部173は、応答待ちタイマが0になるまでに送信した問合せフレームに対する応答があったか否かを判定する(ステップS41)。送信した問合せフレームに対する応答がないと判定した場合(ステップS41;No)、応答中継処理部173は処理を終了する。
【0064】
一方、送信した問合せフレームに対する応答があると判定した場合(ステップS41;Yes)、応答中継処理部173は、応答に係る応答フレームを、問合せフレームの送信元のネットワーク装置2(または1)に対して中継する(ステップS42)。そして、応答中継処理部173は、問合せ先であったネットワーク装置2のアドレス問合せ処理を終了する。
【0065】
[フレームフローの具体例]
次に、問合せフレームおよび応答フレームのフレームフローの具体例について、図7Aおよび図7Bを参照して説明する。図7Aは、ホップ数が1である場合のフレームフローの具体例を説明する図である。図7Bは、ホップ数が2である場合のフレームフローの具体例を説明する図である。なお、図7Aおよび図7Bでは、送信要求を示すフレームをアドレス「A」を有するネットワーク装置1が受信し、受信したフレームの送信先のアドレス「D」を学習していないものとして説明する。
【0066】
図7Aに示すように、アドレス「A」を有するネットワーク装置1は、送信元アドレスf2を「A」、宛先アドレスf1を「B」、ホップ数f41を「1」、問合せ先f42を「D」に設定した問合せフレームを作成する。そして、ネットワーク装置1は、作成した問合せフレームを宛先アドレス「B」を有するネットワーク装置2に対して送信する。
【0067】
宛先アドレス「B」を有するネットワーク装置2は、アドレス「A」を有するネットワーク装置1から問合せフレームを受信する。ここでは、宛先アドレス「B」を有するネットワーク装置2は、受信した問合せフレームに設定された問合せ先f42のアドレス「D」を学習していないものとする。すると、ネットワーク装置2は、ホップ数f41として設定された「1」をカウントダウンして得られたホップ数が「0」であるので、後続するネットワーク装置2に問合せのアドレスを問合せできない。ここでは知らない場合に応答フレームを送信するものとし、ネットワーク装置2は、送信元アドレスg2を「B」、宛先アドレスg1を「A」、問合せ結果g41を「知らない」、問合せ先g42を「D」に設定した応答フレームを作成する。そして、ネットワーク装置2は、作成した応答フレームを問合せフレームの送信元、すなわちアドレス「A」を有するネットワーク装置1に対して送信する。この結果、ネットワーク装置1は、送信要求を示すフレームの送信先のアドレスの問合せに失敗した。
【0068】
次に、アドレス「A」を有するネットワーク装置1は、ホップ数を「2」に設定して、送信先のアドレス「D」の問合せを行う。図7Bに示すように、ネットワーク装置1は、送信元アドレスf2を「A」、宛先アドレスf1を「B」、ホップ数f41を「2」、問合せ先f42を「D」に設定した問合せフレームを作成する。そして、ネットワーク装置1は、作成した問合せフレームを宛先アドレス「B」を有するネットワーク装置2に対して送信する。
【0069】
宛先アドレス「B」を有するネットワーク装置2は、アドレス「A」を有するネットワーク装置1から問合せフレームを受信する。ここでは、宛先アドレス「B」を有するネットワーク装置2は、受信した問合せフレームに設定された問合せ先f42のアドレス「D」を学習していない。そこで、宛先アドレス「B」を有するネットワーク装置2は、ホップ数f41として設定された「2」をカウントダウンして得られたホップ数「1」を新たな問合せフレームに設定する。すなわち、宛先アドレス「B」を有するネットワーク装置2は、送信元アドレスf2を「A」、宛先アドレスf1を「C」、ホップ数f41を「1」、問合せ先f42を「D」に設定した問合せフレームを新たに作成する。そして、ネットワーク装置2は、作成した問合せフレームを宛先アドレス「C」を有するネットワーク装置2に対して送信する。
【0070】
宛先アドレス「C」を有するネットワーク装置2は、宛先アドレス「B」を有するネットワーク装置2から問合せフレームを受信する。ここでは、宛先アドレス「C」を有するネットワーク装置2は、受信した問合せフレームに設定された問合せ先f42のアドレス「D」を学習しているものとする。すると、ネットワーク装置2は、送信元アドレスg2を「D」、宛先アドレスg1を「A」、問合せ結果g41を「知っている」、問合せ先g42を「D」に設定した応答フレームを作成する。そして、ネットワーク装置2は、作成した応答フレームを問合せフレームの送信元、すなわちアドレス「B」を有するネットワーク装置2に対して送信する。
【0071】
さらに、アドレス「B」を有するネットワーク装置2は、宛先アドレス「C」を有するネットワーク装置2から応答フレームを受信する。そして、宛先アドレス「C」を有するネットワーク装置2は、受信した応答フレームを中継すべく、問合せフレームの送信元、すなわちアドレス「A」を有するネットワーク装置1に対して送信する。この結果、ネットワーク装置1は、送信要求を示すフレームの送信先のアドレス「D」の問合せに成功した。そして、ネットワーク装置1は、応答フレームを受信したポートを用いて、送信要求を示すフレームを送信することができる。
【0072】
[アドレス問合せの用途]
次に、実施例に係るアドレス問合せをハンディターミナル(HT:Handy Terminal)に用いた場合のシーケンスについて、図8を参照して説明する。図8は、実施例に係るアドレス問合せをHTに用いた場合のシーケンスを説明する図である。ここで、HTとは、データ収集端末を意味し、例えば電力を測定する端末であったりするが、これに限定されるものでない。
【0073】
図8の例では、HTから無線局である通信ユニットCに接続する際のシーケンスを示している。HTのアプリケーションは、無線局である通信ユニットCとの通信接続をHTドライバに依頼する(ステップS41)。このとき、HTのアプリケーションは、通信ユニットCのMACアドレスを用いて無線局通信接続を依頼する。
【0074】
そして、HTドライバは、通信ユニットCのMACアドレスを通信アダプタに対して問い合わせる(ステップS42)。ここでは、通信アダプタは、通信ユニットCのMACアドレスを学習していないものとする。すると、通信アダプタは、1チャネル(ch)を選択し、選択した1chの通信ユニットAに対して、通信ユニットCの問い合わせを行う(ステップS43)。例えば、通信アダプタは、ホップ数を「2」としたホップ数制限付きのマルチキャストで問合せフレームを通信ユニットAに送信する。そして、通信アダプタは、応答待ちタイマに3秒を設定する。
【0075】
そして、通信ユニットAは、通信ユニットCのMACアドレスを知らないとすると、通信ユニットBに対して、通信ユニットCの問い合わせを行う(ステップS44)。例えば、通信ユニットAは、通信アダプタから送信された問合せフレームのホップ数が「2」であるとすると、「2」から1カウントダウンして得られた「1」をホップ数としたホップ数制限付きのマルチキャストで問合せフレームを通信ユニットBに送信する。
【0076】
そして、通信ユニットBは、通信ユニットCのMACアドレスを知っているとすると、問合せ結果を「知っている」とした応答フレームを通信ユニットAに送信する(ステップS45)。例えば、通信ユニットBは、ユニキャストで応答フレームを通信ユニットAに送信する。
【0077】
さらに、通信ユニットAは、通信ユニットBから送信された応答フレームを中継して、例えばユニキャストで応答フレームを通信アダプタに送信する(ステップS46)。そして、通信アダプタは、ワンホップもしくはマルチホップで通信可能か否かを判定する(ステップS47)。図8の例では、通信アダプタは、応答待ちタイマに設定した3秒以内に2ホップで通信ユニットCを知っている旨の情報を受信したので、マルチホップで通信可能であると判定する(ステップS47;Yes)。そして、通信アダプタは、通信ユニットCと接続し(ステップS48)、通信可能となる。
【0078】
なお、通信アダプタは、ワンホップもしくはマルチホップで通信可能でないと判定した場合(ステップS47;No)、1chから3chまで全て問い合わせに失敗したか否かを判定する(ステップS49)。そして、通信アダプタは、1chから3chまで全て問い合わせに失敗していないと判定した場合(ステップS49;No)、別のchを選択して、選択したchで問い合わせを行う。一方、通信アダプタは、1chから3chまで全て問い合わせに失敗したと判定した場合(ステップS49;Yes)、通信ユニットCとの接続は不可能である旨をアプリケーションに返却することになる(ステップS50)。
【0079】
[実施例の効果]
上記実施例によれば、問合せ処理部171Aが、送信要求を示すフレームを検知したフレームの送信先のアドレスに対応付けられる送信先情報が学習されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を問合せ要求に付加する。そして、問合せ処理部171Aは、所定のホップ数を付加した問合せ要求を隣接したノードに対して送信する。そして、応答処理部172は、問合せ要求に対する応答情報に基づいて、送信要求を示すフレームを送信するようにした。かかる構成によれば、問合せ処理部171Aは、送信要求を示すフレームの送信先のアドレスに対応付けられる送信先情報を、最大でもホップ数分のノードにしか問い合わせないこととなる。この結果、問合せ処理部171Aは、ネットワークに不要なトラフィックを発生させないので、トラフィックを低減することができるとともに、パケットキャプチャ等による盗聴の可能性が減少する。
【0080】
また、上記実施例によれば、問合せ処理部171Aは、所定のホップ数を、送信要求を示すフレームのユーザデータ部分に設定するようにした。かかる構成によれば、問合せ処理部171Aは、レイヤ2でホップ数を容易に適用することができ、ネットワークに不要なトラフィックを発生させないようにすることができる。
【0081】
また、上記実施例によれば、問合せ処理部171Aは、所定のホップ数を、バックボーンを除外したノードの数であるように設定するようにした。かかる構成によれば、問合せ処理部171Aは、通信量が多いバックボーンを避けることができるので、問い合わせによるネットワークの負荷を軽減することができる。さらに、問合せ処理部171Aは、問い合わせに対する応答スピードを向上させることができる。
【0082】
また、上記実施例によれば、問合せ処理部171Aは、問合せ要求に対する応答情報に送信先情報が設定されていなかった場合、ホップ数を1加算する。そして、問合せ処理部171Aは、加算したホップ数を付加した送信先情報の問合せ要求を再び送信するようにした。かかる構成によれば、問合せ処理部171Aは、送信先情報を問い合わせるノードを1つずつ増やしていくことで、問い合わせによるネットワーク負荷をかけないようにしながら確実に送信先情報を問い合わせることができる。
【0083】
また、上記実施例によれば、問合せ処理部171Aは、問合せフレームの宛先アドレスとして隣接するノードのユニキャストアドレスを使用できるようにした。かかる構成によれば、隣接する全てのノードではなく、特定のノードのみへの問合せが可能になる。
【0084】
また、上記実施例によれば、問合せ処理部171Aは、問合せフレームの宛先アドレスとして隣接するノードのみが受信可能なマルチキャストアドレスを使用できるようにした。かかる構成によれば、隣接するノードのアドレスを知らない場合でも、ホップ数を制限した問合せが可能になる。
【0085】
また、上記実施例によれば、ネットワーク装置2の問合せ処理部171Bは、問合せ先のアドレスを学習している場合、応答フレームの送信元アドレスに問合せ先アドレスを設定し、宛先アドレスに問合せフレームの送信元アドレスを設定する。かかる構成によれば、応答フレームを中継するネットワーク装置2の応答中継処理部173は、応答フレームの加工を不要とするので、フレームを用いて通信するレイヤ2で処理スピードを低下させないように処理することができる。
【0086】
また、上記実施例によれば、ネットワーク装置2の応答処理部171Bは、問合せ先のアドレスが学習済みでないと判定した場合の応答フレームの送信について、送信せずに問合せフレームを破棄することができるようにした。かかる構成によれば、問合せ先が広範囲で応答フレームを送信するノード数が多い場合には、ネットワークのトラフィックを少なくすることができる。
【0087】
また、上記実施例によれば、ネットワーク装置2の問合せ処理部171Bは、問合せ先のアドレスが学習済みでないと判定した場合の応答フレームの送信について、応答フレームを送信することができるようにした。かかる構成によれば、問い合わせ先のノード数が限られており、応答フレームを送信するノード数が少なければ、応答待ちタイマがタイムアウトする前に問合せ結果を知ることができる。
【0088】
また、上記実施例によれば、問合せ処理部171Aは、問合せ要求に対する応答期間だけ問合せ要求に対する応答を待つようにした。かかる構成によれば、問合せ処理部171Aは、問合せ要求に対する応答に時間がかかりすぎる場合に、問合せ要求に対する応答の待ち合わせを途中で打ち切ることができるので、その後の処理を効率的に進めることができる。
【0089】
[プログラム等]
なお、上記実施例では、ネットワーク装置1、2は、イーサネットを用いたレイヤ2における通信制御を行った。しかしながら、ネットワーク装置1、2は、これに限定されず、例えばPPP(Point to Point Protocol)プロトコルまたはHDLC(High-level Data Link Control procedure)プロトコルを用いたレイヤ2における通信制御を行うものであっても良い。PPPプロトコルの場合、問合せフレームおよび応答フレームをMACフレームのフォーマットに代えてPPPフレームのフォーマットを用いるようにすれば良い。また、HDLCプロトコルの場合、問合せフレームおよび応答フレームをMACフレームのフォーマットに代えてHDLCフレームのフォーマットを用いるようにすれば良い。
【0090】
また、ネットワーク装置1、2は、既知のパーソナルコンピュータ、ワークステーション等の情報処理装置に、上記した振分部15A、アドレス検索部16およびアドレス問合せ部17等の各機能を搭載することによって実現することができる。
【0091】
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、問合せ処理部171Aと問合せ処理部171Bと応答処理部172と応答中継処理部173とを1個の部として統合しても良い。また、振分部15Aと振分部15Bとを1個の部として統合しても良い。一方、応答処理部172を応答フレームを応答待ち時間内に受信できた場合の第1の応答処理部と、応答フレームを応答待ち時間内に受信できなかった場合の第2の応答処理部とに分散しても良い。また、学習テーブル21や問合せ管理テーブル22等の記憶部20をネットワーク装置1の外部装置としてネットワーク経由で接続するようにしても良い。
【0092】
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。そこで、以下では、図9を用いて、図1に示したネットワーク装置1と同様の機能を有する送信先問合せプログラムを実行するコンピュータの一例を説明する。
【0093】
図9は、送信先問合せプログラムを実行するコンピュータを示す図である。図9に示すように、コンピュータ1000は、RAM(Random Access Memory)1010と、ネットワークインタフェース装置1020と、HDD(Hard Disk Drive)1030と、CPU(Central Processing Unit)1040と、媒体読取装置1050と、バス1060とを有する。RAM1010、ネットワークインタフェース装置1020、HDD1030、CPU1040、媒体読取装置1050は、バス1060によって接続されている。
【0094】
そして、HDD1030には、図1に示した制御部10と同様の機能を有する送信先問合せプログラム1031が記憶される。また、HDD1030には、図1に示した学習テーブル21および問合せ管理テーブル22に対応する送信先問合せ関連情報1032が記憶される。
【0095】
そして、CPU1040が送信先問合せプログラム1031をHDD1030から読み出してRAM1010にロードすることにより、送信先問合せプログラム1031は、送信先問合せプロセス1011として機能するようになる。そして、送信先問合せプロセス1011は、送信先問合せ関連情報1032から読み出した情報等を適宜RAM1010上の自身に割り当てられた領域にロードし、このロードしたデータ等に基づいて各種データ処理を実行する。
【0096】
なお、上記の送信先問合せプログラム1031は、必ずしもHDD1030に格納させなくても良く、CD−ROM等の「可搬用の物理媒体」に記憶されたこのプログラムを、コンピュータ1000が読み出して実行するようにしても良い。
【0097】
また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等を介してコンピュータ1000に接続される他のコンピュータ(またはサーバ)等にこのプログラムを記憶させておいても良い。この場合には、コンピュータ1000がこれらからプログラムを読み出して実行する。
【0098】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0099】
(付記1)フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する記憶部と、
送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が前記記憶部に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信する問合せ部と、
前記問合せ部による問合せ要求に対する応答情報に基づいて、前記送信要求を示すフレームを送信する送信部と
を有することを特徴とするネットワーク装置。
【0100】
(付記2)前記問合せ部は、前記所定のホップ数を、前記送信要求を示すフレームのユーザデータ部分に設定することを特徴とする付記1に記載のネットワーク装置。
【0101】
(付記3)前記問合せ部は、前記所定のホップ数を、バックボーンを除外したノードの数として設定することを特徴とする付記1または付記2に記載のネットワーク装置。
【0102】
(付記4)前記問合せ部は、前記問合せ要求に対する応答情報に前記送信先情報が設定されていなかった場合、前記ホップ数を1加算し、加算したホップ数を付加した前記送信先情報の問合せ要求を再び送信することを特徴とする付記1から付記3のいずれか1つに記載のネットワーク装置。
【0103】
(付記5)前記問合せ部は、前記問合せ要求を送信する際、送信先として隣接したノードのユニキャストアドレスを指定することを特徴とする付記1から付記4のいずれか1つに記載のネットワーク装置。
【0104】
(付記6)前記問合せ部は、前記問合せ要求を送信する際、送信先として隣接したノードのみ受信可能なマルチキャストアドレスを指定することを特徴とする付記1から付記4のいずれか1つに記載のネットワーク装置。
【0105】
(付記7)前記問合せ部は、前記問合せ要求に対する応答を送信する際、送信元として問合せ先のアドレスを指定することを特徴とする付記1から付記6のいずれか1つに記載のネットワーク装置。
【0106】
(付記8)前記問合せ部は、前記問合せ要求に対する応答として、前記記憶部に記憶されていない、または、問合せ要求のホップ数の制限に達した場合には何も応答を送信しないことを特徴とする付記1から付記6のいずれか1つに記載のネットワーク装置。
【0107】
(付記9)前記問合せ部は、前記問合せ要求に対する応答として、前記記憶部に記憶されていない、または、問合せ要求のホップ数の制限に達した場合には問合せ失敗を通知する応答を送信することを特徴とする付記1から付記6のいずれか1つに記載のネットワーク装置。
【0108】
(付記10)前記問合せ部は、前記問合せ要求に対する応答期間だけ前記問合せ要求に対する応答を待つことを特徴とする付記1から付記8のいずれか1つに記載のネットワーク装置。
【0109】
(付記11)コンピュータが実行する送信先問合せ方法であって、
送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が、フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する記憶部に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信し、
該送信による問合せ要求に対する応答情報に基づいて、前記送信要求を示すフレームを送信する
処理を含むことを特徴とする送信先問合せ方法。
【0110】
(付記12)コンピュータに、
送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が、フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する記憶部に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信し、
該送信による問合せ要求に対する応答情報に基づいて、前記送信要求を示すフレームを送信する
処理を実行させる送信先問合せプログラム。
【符号の説明】
【0111】
1、2 ネットワーク装置
9 ネットワークシステム
10 制御部
11 フレーム受信部
12 フレーム送信部
13 アプリケーション部
14 アドレス学習部
15A、15B 振分部
16 アドレス検索部
17 アドレス問合せ部
171A、171B 問合せ処理部
172 応答処理部
173 応答中継処理部
20 記憶部
21 学習テーブル
22 問合せ管理テーブル

【特許請求の範囲】
【請求項1】
フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する記憶部と、
送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が前記記憶部に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信する問合せ部と、
前記問合せ部による問合せ要求に対する応答情報に基づいて、前記送信要求を示すフレームを送信する送信部と
を有することを特徴とするネットワーク装置。
【請求項2】
前記問合せ部は、前記所定のホップ数を、前記送信要求を示すフレームのユーザデータ部分に設定することを特徴とする請求項1に記載のネットワーク装置。
【請求項3】
前記問合せ部は、前記問合せ要求に対する応答情報に前記送信先情報が設定されていなかった場合、前記ホップ数を1加算し、加算したホップ数を付加した前記送信先情報の問合せ要求を再び送信することを特徴とする請求項1または請求項2に記載のネットワーク装置。
【請求項4】
前記問合せ部は、前記問合せ要求に対する応答期間だけ前記問合せ要求に対する応答を待つことを特徴とする請求項1から請求項3のいずれか1つに記載のネットワーク装置。
【請求項5】
コンピュータが実行する送信先問合せ方法であって、
送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が、フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する記憶部に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信し、
該送信による問合せ要求に対する応答情報に基づいて、前記送信要求を示すフレームを送信する
処理を含むことを特徴とする送信先問合せ方法。
【請求項6】
コンピュータに、
送信要求を示すフレームを検知すると、検知したフレームの送信先のアドレスに対応付けられる送信先情報が、フレームをノードに送信する際に用いられる送信先情報を送信先のノードのアドレスと対応付けて記憶する記憶部に記憶されていない場合、当該送信先情報を問い合わせるノードの数を示す所定のホップ数を付加した、当該送信先情報の問合せ要求を隣接したノードに対して送信し、
該送信による問合せ要求に対する応答情報に基づいて、前記送信要求を示すフレームを送信する
処理を実行させる送信先問合せプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4A】
image rotate

【図4B】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2013−4987(P2013−4987A)
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願番号】特願2011−130546(P2011−130546)
【出願日】平成23年6月10日(2011.6.10)
【出願人】(000005223)富士通株式会社 (25,993)
【出願人】(000003687)東京電力株式会社 (2,580)
【Fターム(参考)】