(57)【要約】【課題】  ＬＡＮ側ポートとＷＡＮ側ポートとの区別がなく、複雑な設定作業も必要とせずに、複数のネットワーク機器を正常に相互接続することができる相互接続装置を提供する。【解決手段】  ポートごとに、送出されたパケットの発信元アドレス、変換アドレス及び宛て先アドレスを蓄積するＯｕｔｇｏｉｎｇテーブルと、そのポートに接続されているネットワーク機器のアドレスを保持するＩｎｃｏｍｅテーブルとからなるアドレステーブル１３を設ける。ＣＰＵ１５は、ネットワーク機器が新たに接続されたらそのネットワーク機器に向けて探査パケットを送出する処理と、探査パケットからの応答に基づいてＩｎｃｏｍｉｎｇテーブルを設定する処理と、発信元アドレス及び宛て先アドレスが設定された受信パケットが入力した場合に、アドレステーブル１３を参照して出力ポートを決定し、その受信パケットをその出力ポートから送出する処理と、を実行する。【選択図】        図１
2005294915.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク機器が接続可能な複数のポートを有し、複数のネットワーク機器を相互接続する相互接続装置であって、
ポートごとに設けられ、対応するポートにおける物理層及びデータリンク層の処理を実行するデータリンク層処理手段と、
ポートごとに設けられ、対応するポートから送出されたパケットの発信元アドレス、変換アドレス及び宛て先アドレスを蓄積する第１のテーブルと、
ポートごとに設けられ、対応するポートに接続されているネットワーク機器のアドレスを保持する第２のテーブルと、
ネットワーク機器が新たに接続されたことを検出した場合に、前記新たに接続されたネットワーク機器に対応するポートから探査パケットを送出する処理と、該探査パケットからの応答に基づいて前記第２のテーブルを設定する処理と、発信元アドレス及び宛て先アドレスが設定された受信パケットが前記相互接続装置に入力した場合に、前記第１及び第２のテーブルを参照して前記受信パケットの送出先となるポートを選択し、前記選択したポートから前記受信パケットを送出する処理と、を実行する制御手段と、
を有する、相互接続装置。
【請求項２】
前記相互接続装置は、ＤＨＣＰサーバ機能を有するＤＨＣＰサーバ手段を有し、
前記制御手段は、他のＤＨＣＰサーバからの応答パケットを受け取ったときは、前記ＤＨＣＰサーバ機能を無効に設定するとともに、当該他のＤＨＣＰサーバの所在情報を記憶して、前記他のＤＨＣＰサーバからの応答パケットを受け取ったポートのアドレスを前記他のＤＨＣＰサーバから通知されたアドレスに設定し、前記新たに接続されたネットワーク機器からアドレス要求を受け取ったときは、前記ＤＨＣＰサーバ機能が有効に設定されていれば前記ＤＨＣＰサーバ手段を用いて当該新たに接続されたネットワーク機器にアドレスを設定し、前記ＤＨＣＰサーバ機能が無効に設定されていれば前記アドレス要求を前記他のＤＨＣＰサーバに転送する、請求項１に記載の相互接続装置。
【請求項３】
前記受信パケットを送出する処理は、前記受信パケットの宛て先アドレスが前記相互接続装置と同一のサブネットに属するものでないときに、前記受信パケットの発信元アドレスを前記相互接続装置のアドレスとするとともに、対応するポートの第１のテーブルにおいて前記相互接続装置のアドレスを前記変換アドレスとして蓄積する処理を含む、請求項１または２に記載の相互接続装置。
【請求項４】
前記受信パケットを送出する処理は、前記受信パケットの宛て先アドレスがいずれかの前記第２のテーブルに登録されているときは、その登録のあった第２のテーブルに対応するポートから前記受信パケットを送出し、前記受信パケットの宛て先アドレスがいずれの前記第２のテーブルにも登録されていないときは、前記相互接続装置の全てのポートから前記受信パケットを送出する処理を含む、請求項３に記載の相互接続装置。
【請求項５】
前記受信処理を送出する処理は、前記受信パケットの宛て先アドレスが前記相互接続装置である場合に、当該受信パケットを受信したポートの前記第１のテーブルを参照して前記受信パケットの宛て先アドレスを書き換え、書き換え後の宛て先アドレスに基づいて前記受信パケットを送出する処理を含む、請求項１または２に記載の相互接続装置。
【請求項６】
前記探査パケットは、ＤＨＣＰリクエストパケットまたはＡＲＰパケットである、請求項１乃至５のいずれか１項に記載の相互接続装置。
【請求項７】
前記データリンク層処理手段は前記データリンク層の処理としてＭＡＣ層の処理を実行し、前記制御手段は、前記探査パケットを送出する処理と前記第２のテーブルを設定する処理と前記受信パケットを送出する処理とをネットワーク層としてのＩＰ層の処理として実行する、請求項１に記載の相互接続装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各種のネットワーク機器を相互に接続するために使用される相互接続装置に関する。
【背景技術】
【０００２】
複数のネットワーク機器（例えば、パーソナルコンピュータ、ＡＤＳＬモデム、ネットワーク対応プリンタ、ルータなど）が存在する環境では、それらを相互に接続する装置が必要になる。例えば、ＩＥＥＥ８０２．３に規定され一般的に広く普及しているイーサネット(R)を用いるネットワークでは、プロトコルとして現在主流のＩＰ(Internet Protocol)を使用するものとすると、個々の機器に割当てられたＩＰアドレスから、各機器が所属するネットワーク（サブネットと呼ぶ）のアドレスとその中の装置アドレスとを抽出し、異なるサブネット間での通信であればルータやＮＡＴ(Network Address Translator)を用いて、同一のサブネット内の通信であればスイッチングハブなどの装置を経由することによって、ようやく通信を行うことが可能になる。つまり、ＩＰアドレスの仕組みを正しく理解して適切なアドレス（及びサブネットマスク）を機器に設定し、接続装置も適切に設定しないと、通信が行えないことになる。ネットワーク技術に熟練していればこれらを正しく使い分け、正しく設定することができるであろうが、一般的にはこれらの設定は難解であって、正しく動作させることは容易ではない。
【０００３】
単一のサブネット内のみでの動作を前提とする相互接続装置は、比較的設定が容易であるが、異なるサブネット間の相互接続を行う装置やＷＡＮ（広域ネットワーク）側とＬＡＮ（ローカルエリアネットワーク）側との相互接続を行う装置、アドレス変換を伴う装置などは、設定が難解である。
【０００４】
ＡＤＳＬ（非対称デジタル加入者線）によるＷＡＮ側と宅内のＬＡＮとを接続するために、現在、ブロードバンドルータと呼ばれる接続装置が広く用いられている。このブロードバンドルータには、ＷＡＮ側への接続のためのポートとＬＡＮ側の機器を接続するためのポートとが設けられているが、これらのポートは、ＷＡＮ側ポートかＬＡＮ側ポートかを色分けなどによって区別しているが、いずれも同一ピン数の同一形状のコネクタ（ＲＪ４５−８ピン・モジュラ・ソケット）であり、したがって、ＬＡＮ側機器からのケーブルをＷＡＮ側ポートに接続したりするような誤接続を誘発しやすくなっている。スイッチングハブなどにおいても、上位のハブへの接続に用いられるポート（アップリンクポート）とその他のポートとの間での区別が分かり難くなっている。
【０００５】
さらに、ＡＤＳＬの回線終端装置であるＡＤＳＬモデムには、ルータ機能やアドレス変換機能などを備えたものと、単に回線を終端して物理層レベルでの信号を変換するに過ぎないものとがあり、前者の場合であればＡＤＳＬモデムはルータのＬＡＮ側ポート（自サブネット側ポート）に接続する必要があり、後者の場合であればルータのＷＡＮ側ポートに接続する必要がある。しかしながら、ＡＤＳＬモデムにはそのことが明記されていない、あるいは記載されていたとしても一般的な消費者が理解できるようには記載されていない、ことが多い。
【０００６】
１０ＢａｓｅＴや１００ＢａｓｅＴなどのケーブルを接続できる複数のポート（コネクタ）を有する機器として、例えば、ルータやハブなどがあるが、これらは用途や接続方法が異なるにも関わらず同じような形状をしており、その点で、店頭でこれらの機器を購入する消費者が間違えて別の機器を購入してしまうおそれもある。
【０００７】
昨今、ネットワーク家電やパーソナルコンピュータなどが家庭内に普及しており、家庭内に複数のネットワーク機器を導入してそれらを相互接続することが多くなってきているが、ネットワーク技術に精通しない消費者であっても、それらの機器を容易かつ正確に接続できるようにすることが望まれている。従来は、相互接続装置などを使用するのはコンピュータやネットワーク技術に関する特定のユーザであり、そのようなユーザは機器の購入等に際しても機器の外観等のデザインよりも堅牢性などを重視していた。家庭内にネットワークが普及するにつれて、相互接続装置などのユーザとして、家電製品などと同様に簡単に取り扱うことができるような相互接続装置を望む一般的な消費者（コンシューマ）が増えてきており、このような消費者は、装置に対し、デザインが優れていることや設置の自由度が高いことも重視する。
【０００８】
ネットワーク機器を容易に相互接続するための技術として、特許文献１（特開平１０−２４３０１４）には、各機器が出力するＬＡＮパケットのヘッダに非標準のビットパターンを添付するようにして、そのビットパターンにより装置の属性を判断し、その判断結果に応じてその装置と相互接続装置との間のプロトコルを設定することが開示されている。しかしながら、この方法は、非標準のビットパターンを使用するために一般的に利用できるものであるとは言いがたい。
【特許文献１】特開平１０−２４３０１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上述したように、現状では、ネットワーク機器を相互接続するための相互接続装置は、任意のポートにとにかくケーブルを接続しさえすれば正常に動作するようにはなっていない。
【００１０】
そこで本発明の目的は、複雑な設定作業を必要とせず、また、ポート（コネクタ）ごとの用途も気にすることなく、複数のネットワーク機器を正常に相互接続することができる相互接続装置を提供することにある。
【課題を解決するための手段】
【００１１】
本発明の相互接続装置は、ネットワーク機器が接続可能な複数のポートを有し、複数のネットワーク機器を相互接続する相互接続装置であって、ポートごとに設けられ、対応するポートにおける物理層及びデータリンク層の処理を実行するデータリンク層処理手段と、ポートごとに設けられ、対応するポートから送出されたパケットの発信元アドレス、変換アドレス及び宛て先アドレスを蓄積する第１のテーブルと、ポートごとに設けられ、対応するポートに接続されているネットワーク機器のアドレスを保持する第２のテーブルと、ネットワーク機器が新たに接続されたことを検出した場合に、その新たに接続されたネットワーク機器に対応するポートから探査パケットを送出する処理と、探査パケットからの応答に基づいて第２のテーブルを設定する処理と、発信元アドレス及び宛て先アドレスが設定された受信パケットが相互接続装置に入力した場合に、第１及び第２のテーブルを参照して受信パケットの送出先となるポートを選択し、選択したポートから受信パケットを送出する処理と、を実行する制御手段と、を有する。
【００１２】
本発明の相互接続装置は、ＤＨＣＰサーバとしての機能を備えていてもよい。その場合は、ＤＨＣＰサーバ機能を有するＤＨＣＰサーバ手段を設け、外部のＤＨＣＰサーバからの応答パケットを受け取ったときは、ＤＨＣＰサーバ機能を無効に設定するとともに、外部のＤＨＣＰサーバの所在情報を記憶して、外部のＤＨＣＰサーバからの応答パケットを受け取ったポートのアドレスを外部のＤＨＣＰサーバから通知されたアドレスに設定し、新たに接続されたネットワーク機器からアドレス要求を受け取ったときは、ＤＨＣＰサーバ機能が有効に設定されていればＤＨＣＰサーバ手段を用いてその機器にアドレスを設定し、ＤＨＣＰサーバ機能が無効に設定されていればアドレス要求を外部のＤＨＣＰサーバに転送するようにすればよい。
【００１３】
本発明の相互接続装置は、いわゆるルータとスイッチングハブの両方の機能を有するものであって、ＷＡＮ側のポートとＬＡＮ側のポートとの区別がないものである。全てのポートを対等のものとすることができるので、複雑な設定をすることなしに、複数のネットワーク機器を容易に接続することができる。
【発明の効果】
【００１４】
本発明の相互接続装置は、任意のポートに自由にネットワーク機器を接続でき、さらに必要に応じて適切なアドレス変換を実施して相互に接続をすることができるため、ユーザは、簡単にネットワークを構成できるようになる、という効果がある。また、接続すべきポートに制限がないことから、装置設置上の自由度や、装置の外観等のデザイン上、操作上の自由度が向上する。
【００１５】
さらに、この相互接続装置では、ポートにＬＡＮ用／ＷＡＮ用の区別がない上に、第１及び第２のテーブルを参照してパケットごとに動作が制御されるため、同一のＬＡＮ上に複数のサブネットが混在するような場合であっても、あるいは同時に３以上のネットワークが接続するような場合であっても、正常な通信を可能にする。必要であれば、ＤＨＣＰサーバとして機能し、アドレス割当てを自動解決することも可能である。
【００１６】
本発明によれば、ネットワーク設定に不慣れなユーザであっても、本発明の相互接続装置を用いてネットワーク機器を接続することにより、接続時にポートごとのネットワーク設定がチェックされ最適なものに設定されるので、最適なネットワークを容易に構築できるようになる、という効果がある。
【発明を実施するための最良の形態】
【００１７】
次に、本発明の好ましい実施の形態について、図面を参照して説明する。図１は本発明の実施の一形態の相互接続装置の構成を示すブロック図である。以下の説明では、相互接続装置は、ＩＰにしたがって動作するものとする。
【００１８】
この相互接続装置１０は、各種のネットワーク機器２０（例えば、ルータ、ブロードバンドルータ、ＡＤＳＬモデム、パーソナルコンピュータ、ネットワーク家電、スイッチングハブ、ネットワーク対応プリンタ、無線ＬＡＮ用アクセスポイントなど）が接続され、接続されたネットワーク機器２０間での通信を可能とするものである。具体的には、相互接続装置１０は、複数のネットワーク機器を接続するものであって、自動的に、(1)ネットワーク機器の接続・切離しを随時監視し、(2)新たにネットワーク機器が接続された場合にはその機器のＩＰアドレスを調査し、必要であれば新たにＩＰアドレスを割当て、(3)接続された機器のサブネット及び装置アドレスをアドレステーブルに蓄積し、(4)同一のサブネットであるとみなした機器同士についてはスイッチングハブ機能によって相互間のパケット伝送を行い、(5)異なるサブネットであると判断した場合には、必要に応じて相互のアドレス変換を行うとともに、ルーティングを行うものである。
【００１９】
相互接続装置１０は、それぞれネットワーク機器２０が接続されるポートを複数個備えており（図示したものではポート１〜ポートｎ）、各ポートごとに、ネットワーク機器２０からのケーブル（例えば、１０ｂａｓｅＴケーブルあるいは１００ｂａｓｅＴケーブル）が接続されるコネクタ１１と、コネクタ１１に接続し、物理層の処理とデータリンク層であるＭＡＣ（メディアアクセス制御）層の処理を行うＭＡＣ処理部１２と、そのポートに接続されたネットワーク機器のアドレスを管理するアドレステーブル１３とが設けられている。コネクタ１１は、典型的には、ＲＪ４５−８ピン・モジュラ・ソケットである。ＭＡＣ処理部１２は、物理層及びＭＡＣ層の処理に付随して、コネクタ１１に新たにネットワーク機器２０が接続されたかどうかを判別することができる。なお、本実施形態では、物理層での処理、例えば、伝送媒体が有線なのか無線なのかの判別、データ転送速度が１０Ｍビット／秒なのか１００Ｍビット／秒なのかの判別、全二重通信なのか半二重通信なのかの判別、接続されるケーブルがいわゆるストレートケーブルなのかリバースケーブルなのかの判別と、それらの判別結果に基づく設定とは、ＭＡＣ処理部１２において周知の既存の技術を用いて行われるようになっており、したがって、ポートにネットワーク機器２０を接続した時点で、物理的な接続は完了したものとする。
【００２０】
さらに相互接続装置１０には、内部バス１４と、相互接続装置１０の機能をソフトウェア実行によって実現するＣＰＵ（中央処理装置）１５と、各ＭＡＣ処理部１２に対して直接接続して新たなネットワーク機器２０の接続を検出する接続検出部１６と、接続されたネットワーク機器２０に対してＤＨＣＰ(Dynamic Host Configuration Protocol)にしたがってＩＰアドレスを割当てるためのＤＨＣＰサーバ機能部１７と、各機器から送られてきたパケットデータを格納するパケットバッファ１８とを備えている。内部バス１４には、各ＭＡＣ処理部１２と各アドレステーブル１３とＣＰＵ１５とが接続している。また、接続検出部１６、ＤＨＣＰサーバ機能部１７及びパケットバッファ１８は、ＣＰＵ１５に接続している。ＣＰＵ１５は、後述するように、ポートに接続されたネットワーク機器２０のＩＰアドレスを調査したり、パケットの受信変換発信などを実行する。
【００２１】
次に、各ポートごとに設けられるアドレステーブル１３の構成について、図２を用いて説明する。
【００２２】
アドレステーブル１３は、上述したように、対応するポートに接続されるネットワーク機器２０のアドレスを管理するものである。各アドレステーブル１３内には、Ｏｕｔｇｏｉｎｇ（発信）テーブル３１とＩｎｃｏｍｅ（着信）テーブル３２とが定義されている。
【００２３】
Ｏｕｔｇｏｉｎｇテーブル３１は、対応するポートから発信したパケットの、（ａ）発信元のアドレス（ＩＰアドレスとＩＰ上のポート番号）、（ｂ）この相互接続装置１０に書き換えられた発信元アドレス（すなわち変換アドレス）（ＩＰアドレスとＩＰ上のポート番号）、及び（ｃ）宛て先アドレス（ＩＰアドレスとＩＰ上のポート番号）とを蓄積する。ここでＩＰ上のポート番号とは、この相互接続装置１０において物理的にはコネクタ１１として設けられているポートを特定するための番号のことを指すのではなく、ＩＰプロトコルの上位プロトコルであるＴＣＰ(Transmission Control Protocol)あるいはＵＤＰ(User Datagram Protpcol)において、ＴＣＰやＵＤＰを使用するアプリケーションを特定するためのサービス番号のことである。ＩＰ上のポート番号は、ＩＰマスカレードなどの処理を実行するために必要となる。
【００２４】
これに対しＩｎｃｏｍｅテーブル３２は、相互接続装置１０の対応するポートに入ってきたパケットの発信元ＭＡＣアドレスとＩＰアドレス、すなわちそのポートに接続されているネットワーク機器に設定されているＭＡＣアドレスとＩＰアドレスとを格納する。
【００２５】
なお、図には示していないが、相互接続装置１０は、他のＤＨＣＰサーバが存在する場合に、そのＤＨＣＰサーバの所在情報（そのようなＤＨＣＰサーバが接続されているポートを示す情報）を格納する機能も備えている。
【００２６】
次に、この相互接続装置１０の動作について説明する。
【００２７】
接続検出部１６は、各ＭＡＣ処理部１２の状態を調べることにより、相互接続装置１０の全てのポートについて、ネットワーク機器が接続されているかを定期的にチェックする。機器の新しい接続が見つかった場合には、ＣＰＵ１５は、以下の手順１〜５を順次実行することにより、ネットワークアドレスの解決と対応するアドレステーブル１３への登録を行う。
【００２８】
手順１：新たに接続された機器に対し、対応するポートを介して、ブロードキャストパケット（具体的には、ＤＨＣＰリクエストパケットあるいはＡＲＰパケットなど）をポート探査パケットとして送出する。
【００２９】
手順２：そのポートに到着するパケット（手順１で送出したパケットに対する応答パケットなど）を待つ。
【００３０】
手順３：受信したパケットに含まれるアドレス情報から、そのポートに接続された機器のアドレス及びその機器のサブネット情報を抽出し、抽出した情報は、そのポートに付随するアドレステーブル１３のＩｎｃｏｍｅテーブル３２に格納する。
【００３１】
手順４：手順２で受信したパケットが手順１で発信したＤＨＣＰリクエストに対する応答パケットである場合には、そのポートに接続された機器上にはＤＨＣＰサーバが存在することになるので、この相互接続装置１０が備えるＤＨＣＰサーバ機能を無効にしてＩＰアドレスの新規割当ては行わないこととする。また、相互接続装置１０に接続された他の機器からＤＨＣＰリクエストが送られてくることを想定して、接続された機器のＤＨＣＰサーバの所在情報を覚えておく。
【００３２】
手順５：手順２で受信したパケットがＤＨＣＰリクエストパケットあるいはアドレス要求のパケットである場合には、その受信したパケットからはサブネット情報や機器のアドレスは特定できないので、ＩＰアドレスを抽出しない。その代わり、この相互接続装置１０のＤＨＣＰサーバ機能が有効である場合には、その新たに接続された機器にＩＰアドレスを割当て、相互接続装置１０のＤＨＣＰサーバ機能が無効である場合には、手順４で取得しているＤＨＣＰサーバの所在情報に基づいてＤＨＣＰリクエストパケットを転送し、転送先のＤＨＣＰサーバによって、その新たに接続された機器にＩＰアドレスが付与されるようにする。いずれの場合であっても、その後、その機器のアドレス及びその機器のサブネット情報はＩｎｃｏｍｅテーブル３２に格納されるようにする。
【００３３】
もし、既に接続されていたネットワーク機器が対応するポートから切り離されたことが検出された場合には、そのポートに対応するアドレステーブル１３の内容をクリアするようにする。
【００３４】
以上のようにして、新たに接続された機器のＩＰアドレスが取得されてＩｎｃｏｍｅテーブル３２に格納され、あるいは、新たに接続された機器にＩＰアドレスが割当てられることになる。
【００３５】
次に、その後の定常状態におけるパケット転送について説明する。相互接続装置１０に接続したある機器から発信したパケットを受け取ると、相互接続装置１０は、そのパケットの宛て先アドレスをチェックし、以下のルール１〜４にしたがって、パケットを転送する。
【００３６】
ルール１：宛て先アドレスが、相互接続装置１０のいずれかのポートのアドレステーブル１３のＩｎｃｏｍｅテーブル３２に登録済みである場合には、そのポートの接続されている機器にパケットを転送する。このとき、サブネットが異なるネットワークにパケットを送出することとなるのであれば、ＮＡＴ機能として、転送する際に、そのパケットの発信元アドレスをこの相互接続装置１０のアドレスで書き換える。このとき、発信元アドレス、変換アドレス、宛て先アドレスを、Ｏｕｔｇｏｉｎｇテーブル３２に蓄積する。例えば、発信元アドレスがＡであり、変換アドレスがＢ、宛て先アドレスがＣの場合、Ｃが接続されているポートに対応するＯｕｔｇｏｉｎｇテーブルに、ＡＢＣを蓄積する。アドレス変換を必要としない場合には、変換アドレスＢは発信元アドレスＡと同一である。これに対し、アドレス変換を行った場合には、変換アドレスＢは、ＩＰマスカレードによりこの相互接続装置１０にＩＰアドレスを割当てたものとなる。それと同時に、パケットは、発信元アドレスがＢであるパケットとして、宛て先であるアドレスＣに送信される。
【００３７】
ルール２：宛て先アドレスがブロードキャストアドレスである場合には、各ポートのＩｎｃｏｍｅテーブル３２を参照し、そのパケットと同じサブネットに属することとなるポートが存在すれば、該当する全てのポートに対してパケットを転送する。この場合も上述と同様にＯｕｔｇｏｉｎｇテーブル３１にアドレスが蓄積される。
【００３８】
ルール３：宛て先アドレスのサブネットが、相互接続装置１０のどのアドレステーブル１３にも登録されていないサブネットである場合（すなわち、宛て先アドレスＣに対応する接続先が不明の場合）には、未知のネットワーク機器がいずれかのポートに接続されている、あるいはその先にゲートウェイがあるものとして、全てのポートにパケットを転送する。この際も、ルール１と同様に、必要に応じてアドレス変換を実行する。この場合も上述と同様にＯｕｔｇｏｉｎｇテーブル３１にアドレスが蓄積される。
【００３９】
ルール４：ルール１〜３で行ったアドレス変換については、その変換内容がＯｕｔｇｏｉｎｇテーブル３１に仮登録されるが、一定時間のうちにその変換パケットに対する応答がなければ、仮登録された内容をＯｕｔｇｏｉｎｇテーブル３１から削除する。
【００４０】
以上説明した処理を繰り返し実行することにより、相互接続装置１０のポートごとに設けられているアドレステーブル１３には、対応するポートに接続されているネットワーク機器のアドレス情報が正確に蓄積されることになる。その結果、本実施形態の相互接続装置１０では、具体的なネットワーク設定を行わない場合であっても、この相互接続装置１０に到着するパケットは、宛先アドレスの機器が接続されたポートのみに正確に転送されるようになる。また、相互接続装置１０は、アドレス変換機能も有しているので、どのポートがアップストリーム（ＷＡＮ側）であっても、また、ダウンストリーム（ＬＡＮ側）であっても構わない。したがってこの相互接続装置１０は、ポートがアップストリーム（ＷＡＮ側）とダウンストリーム（ＬＡＮ側）とが混在可能な装置であるが、それらについての専用ポートは定義されておらず、ポート探査パケットを送出したときの対向側からの応答に応じて各ポートがアップストリームとダウンストリームとの間で自動的に切り替わるようになっている装置である。
【００４１】
上述したような処理を実行するために、ＣＰＵ１５は、相互接続装置１０の電源が投入されると、メインタスクと呼ばれる処理を実行する。また、いずれかのポートにおいてパケットが受信されると、そのたびにＣＰＵ１５に対して割り込みがかかってＣＰＵ１５はパケット制御タスクを実行する。以下、メインタスク及びパケット制御タスクについて説明する。
【００４２】
図３は、メインタスクの概要を示している。相互接続装置１０の電源が投入されると、まず、初期化動作として、ステップ１０１において、ＣＰＵ１５は、各ポートのアドレステーブル１３の内容をクリアする。次に、ステップ１０２において、接続検出部１６を介して各ポートにおける接続状態をチェックし、ステップ１０３において、新規にネットワーク機器が接続されたかどうかを判断する。ここで新規接続がない場合にはそのままステップ１０５に移行し、新規接続があった場合には、ステップ１０４において、上述の手順１で説明したように、新規接続があったポートを介して、ポート探査パケットを送出し、ステップ１０５に移行する。なお、ポート探査パケットに対する応答パケットを受信したときは、パケット制御タスクが起動してパケット制御タスクがその応答パケットを処理するので、ポート探査パケットに対する応答パケットを受信するステップは、メインタスクの中には存在しない。
【００４３】
ステップ１０５では、ステップ１０２でのチェックの結果、新規に解放されたポート、すなわちそれまでネットワーク機器が接続されていたがその接続が解除されたポートがあるかどうかを判断する。そのようなポートがない場合には、ステップ１０２に戻り、そのようなポートがある場合には、その解放されたポートのアドレステーブル１３をステップ１０６においてクリアしてから、ステップ１０２に戻る。
【００４４】
メインタスクでは、これ以降、ステップ１０２〜１０６の処理が繰り返し実行される。
【００４５】
次に、パケット制御タスクの処理について、図４を用いて説明する。
【００４６】
相互接続装置１０のいずれかのポートでパケットが受信されるとパケット制御タスクが起動し、まず、ステップ１１１において、パケットを受信したポートのＩｎｃｏｍｅテーブル３２に、上述の手順３で説明したように、アドレスなどを登録し、ステップ１１２において、受信したパケットがＤＨＣＰリクエストパケットかどうかを判断する。ＤＨＣＰリクエストである場合には、ステップ１１３において、そのＤＨＣＰリクエストが強制ＤＨＣＰモードのものかを判断し、強制ＤＨＣＰモードのものであれば、ステップ１１４において相互接続装置１０自体をＤＨＣＰサーバとして機能させ、ＤＨＣＰリクエストに対して付与すべきＩＰアドレスを決定し、ステップ１１５において、ＤＨＣＰリクエストに対する応答パケットを返信し、タスクを終了させる。当然のことながら応答パケットは、ステップ１１４で決定されたＩＰアドレスを通知するものである。
【００４７】
ステップ１１３において強制ＤＨＣＰモードではないと判断した場合は、ステップ１１６において、他にＤＨＣＰサーバが存在するかどうかを判断し、存在しない場合にはステップ１１４に移行する。他のＤＨＣＰサーバが存在する場合には、ステップ１１７において、そのＤＨＣＰサーバが接続しているポートを介して、そのＤＨＣＰサーバにＤＨＣＰリクエストを転送し、パケット制御タスクを終了する。
【００４８】
ステップ１１２において、受信パケットがＤＨＣＰリクエストではないと判断した場合には、ステップ１１８において、その受信パケットがこの相互接続装置１０宛てのパケットであるかどうかを判断し、自装置宛てのパケットである場合には、ステップ１１９において、その受信パケットが他のＤＨＣＰサーバからの応答パケットかどうかを判断する。他のＤＨＣＰサーバから応答パケットであれば、ステップ１２０において、そのＤＨＣＰサーバの所在を登録し、ステップ１２１において、この相互接続装置１０にＩＰアドレスをその応答パケットで指定されたものに設定して、パケット制御タスクを終了する。また、ステップ１１９において、ＤＨＣＰサーバからの応答ではないと判断した場合には、ステップ１２２において、その受信パケットを受信したポートのＯｕｔｇｏｉｎｇテーブル３１を参照して、受信パケットの宛て先アドレスを修正し、ステップ１２３において、修正後の宛て先アドレスが登録されているアドレステーブル３１に対応するポートから、そのパケットを送信し、パケット制御タスクを終了する。ステップ１２２で宛て先アドレスの修正は、ＩＰマスカレードにより発信元アドレスがこの相互接続装置自体のアドレスに置き換えられたパケットに対する応答として受け取ったパケットに対する宛て先アドレスの修正であるから、受信パケットにおける宛て先アドレスと一致する変換アドレスをＯｕｔｇｏｉｎｇテーブル３１内で検索し、ヒットした変換アドレスに対応してＯｕｔｇｏｉｎｇテーブル３１に格納されている発信元アドレスによって、その受信パケットの宛て先アドレスを書き換えることになる。
【００４９】
ステップ１１８において、受信パケットがこの相互接続装置１０宛てのパケットではない、と判断した場合には、ステップ１２４において、そのパケットの送信元アドレスと宛て先アドレスとが同一のサブネットに属するかどうかを判断する。同一のサブネットに属するときは、ステップ１２５において、Ｏｕｔｇｏｉｎｇテーブル３１の変換アドレスの欄の値をそのパケットの発信元アドレスに設定してステップ１２６に移行し、同一のサブネットに属しないときは、Ｏｕｔｇｏｉｎｇテーブル３１の変換アドレスの欄の値をこの相互接続装置１０のアドレスに設定してステップ１２６に移行する。ステップ１２６では、そのパケットの宛て先アドレスがいずれかのポートのＩｎｃｏｍｅテーブル３２に存在するかどうかを調べ、存在する場合には、ステップ１２７において、該当するポートのＯｕｔｇｏｉｎｇテーブル３１にそのパケットに含まれるアドレスを蓄積し、該当するポートを介してそのパケットを送信し、パケット制御タスクを終了する。これに対しステップ１２６で宛て先アドレスがＩｎｃｏｍｅテーブル３２に存在しない場合には、ステップ１２９において、全てのポートのＯｕｔｇｏｉｎｇテーブル３１にそのパケットに含まれるアドレスを蓄積し、全てのポートを介してそのパケットを送信し、パケット制御タスクを終了する。
【００５０】
以上説明したメインタスク及びパケット制御タスクは、それらのタスクを実現するためのプログラムをＣＰＵ１５が実行することによって行われる。そのようなプログラムは、不図示の記憶手段に予め格納されてＣＰＵ１５によって実行される。プログラムは、例えば、ファームウェアの形態でネットワークを介してダウンロードされることにより、あるいは、メモリカードなどの不揮発性メモリから記憶手段に読み込まれることになる。
【００５１】
図５は、ポート１に到達したパケットがポート２から送出される場合のパケットの流れを示しており、図示斜線部は、アドレス情報の登録位置を示している。図から分かるように、パケットが到着したポートでは、Ｉｎｃｏｍｅテーブル３２にアドレス情報が登録され、パケットが外部に送出されるポートでは、Ｏｕｔｇｏｉｎｇテーブル３１にアドレス情報が登録される。
【００５２】
以上、本実施形態の相互接続装置１０を説明したが、この相互接続装置１０は、ＤＨＣＰサービスを必要に応じてマニュアル設定したり、ＩＰマスカレードを実施する際の自装置のＩＰアドレスを手動で定義したりする機能を備えていてもよい。さらには、ＴｅｌｎｅｔやＨＴＴＰ(HyperText Transfer Protocol)などにより、リモートで、この相互接続装置１０の各ポートについてアップストリーム／ダウンストリームの別、ネットワークアドレス、ＤＨＣＰサーバ機能のオン／オフなどを設定できるようにしてもよい。もっとも、これらは、従来の設定が難解なルータやハブなどにおいても備えられている機能であり、本発明の相互接続装置において強調すべき特徴点ではない。
【００５３】
本実施形態の相互接続装置と、従来のルータやスイッチングハブなどとの相違点を説明する。従来のスイッチングハブでは、ポートごとに本実施形態でのＩｎｃｏｍｅテーブルに相当するテーブルは設けられているものの、Ｏｕｔｇｏｉｎｇテーブルに相当するテーブルは設けられていない。また、従来のルータは、本実施形態でのＯｕｔｇｏｉｎｇテーブルに相当するテーブルは備えているものの、そのようなテーブルは１組しか設けられておらず、そのテーブルを利用できるポートも限定されている。それにより、従来のルータは、ＷＡＮ側とＬＡＮ側とをはっきり区別してポートを使用する必要があり、また、異なる２つのサブネット間でしかパケットの転送を行うことができない。これに対し本実施形態の相互接続装置１０では、ポートごとにＯｕｔｇｏｉｎｇテーブル３１とＩｎｃｏｍｅテーブル３２を設けているので、各ポートにおいてＷＡＮ側かＬＡＮ側かを意識することなく、ＷＡＮ側ケーブルとＬＡＮ側ケーブルとを混在させても正しくルーティングすることができ、また、同時に３以上の異なるサブネットのネットワークが接続されている場合であっても、相互に通信可能である。
【００５４】
本実施形態の相互接続装置では、各ポートがＷＡＮ側のものなのかＬＡＮ側のものなのかを意識することなくケーブルを接続できるので、結果として、装置の設置に際する自由度が向上し、また、外観等のデザインにおける自由度も向上する。例えば、壁面からＷＡＮ側ケーブルが出てきていてそのケーブルをこの相互接続装置に接続する場合、ＷＡＮ側のポートが１箇所に限定されていれば、そのポートの挿入口が壁面側を向くように装置を設置するのが一般的であり、そうしなければ、ケーブルの引き回しが複雑化する。本実施形態の相互接続装置では、どのポートもＷＡＮ側のものとして使用できるので、結果として、一番差し込みやすいポートにケーブルを接続すればよく、装置の設置の自由度が高められることになる。逆に、室内等に配置されたＬＡＮ側機器からの各ケーブルを無作為に（あるいはケーブルの引き回しが最小となるように）この相互接続装置に接続した後、任意の空きポートにＷＡＮ側ケーブルを接続することも可能である。ＬＡＮ側かＷＡＮ側かを区別せずにケーブルをポートに接続できることは、装置設置の自由度を向上させることのみならず、例えば、デザイン上、常に表側（よく見える側）にしたい面を作りこむことが可能になるので、相互接続装置のデザインの自由度も向上させることになる。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施の一形態の相互接続装置の構成を示すブロック図である。
【図２】アドレステーブルの構成を示す図である。
【図３】メインタスクの処理を示すフローチャートである。
【図４】パケットを受信すると行う動作であるパケット制御タスクの処理を示すフローチャートである。
【図５】パケットの流れを説明する図である。
【符号の説明】
【００５６】
１０    相互接続装置
１１    コネクタ
１２    ＭＡＣ処理部
１３    アドレステーブル
１４    内部バス
１５    ＣＰＵ
１６    接続検出部
１７    ＤＨＣＰサーバ機能部
１８    パケットバッファ
２０    ネットワーク機器
３１    Ｏｕｔｇｏｉｎｇテーブル
３２    Ｉｎｃｏｍｅテーブル
１０１〜１０６，１１１〜１２９    ステップ
【図１】
2005294915.tif 000003
【図２】
2005294915.tif 000004
【図３】
2005294915.tif 000005
【図４】
2005294915.tif 000006
【図５】
2005294915.tif 000007