(57)【要約】【課題】端末ＩＰアドレスを変更することなく、端末のセグメント間移動を可能にするパケット転送装置およびパケット通信ネットワークを提供する。【解決手段】それぞれが端末を収容する１組のブロードキャストセグメントによって内部サブネットワークを形成しておき、内部サブネットワーク内の何れかのセグメントに接続された端末から、宛先ＩＰアドレスで別セグメントの端末を指定したＭＡＣフレームを受信した時、上記内部サブネットワークに所属する各端末のアドレス情報と接続セグメントとの対応関係を示す端末管理テーブルに従って、上記ＭＡＣフレーム中のＩＰパケットを宛先端末の接続セグメントに転送するパケット転送装置。【選択図】図１
2004193844.tif 000002
【特許請求の範囲】
【請求項１】
複数のブロードキャストセグメントに接続され、これらのセグメント間でＩＰパケットを転送するパケットの転送制御部を有するパケット転送装置であって、上記複数のブロードキャストセグメントのうち、それぞれが複数の端末を収容する１組のセグメントによって、一つのサブネットアドレスをもつ内部サブネットワークが形成されており、
上記パケットの転送制御部が、上記内部サブネットワークに所属する各端末のＭＡＣアドレスおよびＩＰアドレスと、該端末が接続されているセグメントとの対応関係を示す複数のエントリを記憶した端末管理テーブルを備え、
上記内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＩＰアドレスで上記内部サブネットワーク内の別のセグメントに接続された端末を指定したＭＡＣフレームを受信した時、受信フレームに含まれるＩＰパケットを上記端末管理テーブルに従って上記宛先端末の接続セグメントに転送することを特徴とするパケット転送装置。
【請求項２】
前記内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＩＰアドレスを指定して宛先端末のＭＡＣアドレスを問合せるアドレス要求メッセージを受信した時、前記端末管理テーブルを参照して、上記宛先端末の接続セグメントと上記アドレス要求メッセージの受信セグメントとの同一性を判断し、宛先端末の接続セグメントと上記アドレス要求メッセージの受信セグメントが異なった場合に、宛先端末に代わって、上記宛先端末のＩＰアドレスと該ルータのＭＡＣアドレスを含む応答メッセージを上記送信元端末の接続セグメントに送信するための手段を有することを特徴とする請求項１に記載のパケット転送装置。
【請求項３】
前記パケット転送制御部が、サブネットワークのアドレスと対応して経路制御情報を示す複数のエントリが登録された経路テーブルを備え、上記経路テーブルに登録された前記内部サブネットワークのアドレスと対応するエントリは、該内部サブネットワークが複数セグメントからなることを示すセグメント識別子を含んでおり、
外部サブネットワークに接続されたセグメントから前記内部サブネットワークに所属する端末宛のＩＰパケットを受信した時、前記パケット転送制御部が、上記経路テーブルと前記端末管理テーブルを参照して宛先端末の接続セグメントを特定し、該セグメントに受信パケットを転送することを特徴とする請求項１または請求項２に記載のパケット転送装置。
【請求項４】
前記内部サブネットワーク内の何れかのセグメントに接続された送信元端末からＭＡＣフレームを受信した時、該ＭＡＣフレームの受信セグメントと、該ＭＡＣフレームの送信元ＭＡＣアドレスと対応して前記端末管理テーブルに記憶された接続セグメントとを照合し、一致しない場合、送信元端末が上記内部サブネットワーク内で移動したものと判断して、上記端末管理テーブルに記憶された接続セグメントを上記ＭＡＣフレームの受信セグメントに変更するテーブル更新手段を備えたことを特徴とする請求項１に記載のパケット転送装置。
【請求項５】
前記テーブル更新手段が、前記ＭＡＣフレームの受信セグメントと前記端末管理テーブルに記憶された接続セグメントとが一致しない場合に、上記ＭＡＣフレームの送信元アドレス宛の確認メッセージを上記受信セグメントと接続セグメントに対して送信し、上記両セグメントにおける上記確認メッセージに対する応答の受信状況に応じて、前記端末管理テーブルに記憶された接続セグメントの更新の要否を判断することを特徴とする請求項４に記載のパケット転送装置。
【請求項６】
複数のブロードキャストセグメントに接続され、これらのセグメント間でＩＰパケットを転送するパケット転送装置であって、
上記複数のブロードキャストセグメントのうち、それぞれが複数の端末を収容する１組のセグメントによって、一つのサブネットアドレスをもつ内部サブネットワークが形成されており、
連携関係にある隣接パケット転送装置との間でＭＡＣフレームを送受信するための接続回線と、
上記内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＭＡＣアドレスで該パケット転送装置を指定し、宛先ＩＰアドレスで上記内部サブネットワーク内の別のセグメントに接続された端末を指定したＭＡＣフレームを受信した時、該受信フレームに含まれるＩＰパケットを上記宛先端末が接続されたセグメントに転送するパケット転送制御部と、
上記隣接パケット転送装置をデフォルト装置とする端末から、上記内部サブネットワークの何れかのセグメントを介してＭＡＣフレームを受信した時、該ＭＡＣフレームを上記隣接パケット転送装置との接続回線に転送するＭＡＣフレーム転送制御部とを備えたことを特徴とするパケット転送装置。
【請求項７】
前記パケット制御部が、前記内部サブネットワークに所属し、該パケット転送装置をデフォルト装置とする各端末のＭＡＣアドレスおよびＩＰアドレスと、該端末が接続されているセグメントとの対応関係を示す複数のエントリを記憶した端末管理テーブルを備え、該端末管理テーブルに従って、前記内部サブネットワーク内のセグメント間ＩＰパケット転送を制御し、
前記ＭＡＣフレーム転送制御部が、ＭＡＣアドレスと接続セグメントとの対応関係を示す複数のエントリを記憶したＭＡＣ転送テーブルを備え、該ＭＡＣ転送テーブルに従って、前記隣接パケット転送装置へのＭＡＣフレーム転送を制御することを特徴とする請求項６に記載のパケット転送装置。
【請求項８】
前記ＭＡＣフレーム転送制御部が、該パケット転送装置以外のＭＡＣアドレスを宛先ＭＡＣアドレスとする受信ＭＡＣフレームを処理対象とし、受信ＭＡＣフレームの送信元端末と対応するエントリが前記ＭＡＣ転送テーブルに未登録の時、上記送信元端末のデフォルト装置が前記隣接パケット転送装置であることを確認して、前記隣接パケット転送装置への受信ＭＡＣフレームの転送と、上記ＭＡＣ転送テーブルへの上記送信元端末用のエントリの登録を行うことを特徴とする請求項７に記載のパケット転送装置。
【請求項９】
前記内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＩＰアドレスを指定して宛先端末のＭＡＣアドレスを問合せるアドレス要求メッセージを受信した時、前記端末管理テーブルを参照して、上記送信元端末に対応するエントリの有無と、上記宛先端末の接続セグメントと上記アドレス要求メッセージの受信セグメントとの同一性とを判断し、送信元端末に対応するエントリが登録済みで、宛先端末の接続セグメントと上記アドレス要求メッセージの受信セグメントが異なった場合に、宛先端末に代わって、上記宛先端末のＩＰアドレスと該ルータのＭＡＣアドレスを含む応答メッセージを上記送信元端末の接続セグメントに送信するための手段を有することを特徴とする請求項６〜請求項８の何れかに記載のパケット転送装置。
【請求項１０】
前記パケット転送制御部が、サブネットワークのアドレスと対応して経路制御情報を示す複数のエントリが登録された経路テーブルを備え、上記経路テーブルに登録された前記内部サブネットワークのアドレスと対応するエントリが、該内部サブネットワークが複数セグメントからなることを示すセグメント識別子を含んでおり、
外部サブネットワークに接続されたセグメントから前記内部サブネットワークに所属する端末宛のＩＰパケットを受信した時、前記パケット転送制御部が、上記経路テーブルと前記端末管理テーブルを参照して宛先端末の接続セグメントを特定し、該セグメントに受信パケットを転送することを特徴とする請求項９に記載のパケット転送装置。
【請求項１１】
前記パケット転送制御部が、内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＭＡＣアドレスで該パケット転送装置を指定したＭＡＣフレームを受信した時、該ＭＡＣフレームの受信セグメントと、該ＭＡＣフレームの送信元ＭＡＣアドレスと対応して前記端末管理テーブルに記憶された接続セグメントとを照合し、一致しない場合、送信元端末が上記内部サブネットワーク内で移動したものと判断して、上記端末管理テーブルに記憶された接続セグメントを上記ＭＡＣフレームの受信セグメントに変更するテーブル更新手段を含むことを特徴とする請求項９に記載のパケット転送装置。
【請求項１２】
前記テーブル更新手段が、前記ＭＡＣフレームの受信セグメントと前記端末管理テーブルに記憶された接続セグメントとが一致しない場合に、上記ＭＡＣフレームの送信元アドレス宛の確認メッセージを上記受信セグメントと接続セグメントに対して送信し、上記両セグメントにおける上記確認メッセージに対する応答の受信状況に応じて、前記端末管理テーブルに記憶された接続セグメントの更新の要否を判断することを特徴とする請求項１１に記載のパケット転送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パケット転送装置に関し、更に詳しくは、セグメント間で接続通信端末の移動を許容する複数のブロードキャストセグメントを接続するパケット転送装置に関する。
【０００２】
【従来の技術】
ＩＰネットワークでは、例えば、イーサネット（登録商標）などで構築される複数のブロードキャストセグメントが、Ｌ３スイッチまたはルータと呼ばれるパケット転送装置によって相互接続される。この場合、ブロードキャストセグメントは、一般にサブネットワークと呼ばれるネットワーク単位に対応している。
【０００３】
各サブネットワークのアドレスは、例えば、「１９２．１６８．０．０／２４」のように表記される。ここで、数値列「１９２．１６８．０．０」は、３２ビットのアドレス部の値を表しており、アドレスビットの値がバイト単位に０〜２５５の十進数で表記されている。３２ビットのアドレス部は、サブネットワーク・アドレスを示す第１のビット群と、ホストアドレスを示す第１のビット群とからなっており、スラントマークの後にある数値「２４」は、サブネットマスクのビット数を示している。
【０００４】
ここに示した例では、サブネットマスクが示すアドレス部の上位２４ビットの値「１９２．１６８．０」がサブネットワーク・アドレスを示し、下位１バイトがホストアドレスを示している。ホストアドレスは、サブネットに属する各端末の識別子として用いられる。ルータは、一つのサブネットワークからＩＰパケットを受信すると、ＩＰヘッダに含まれる宛先ＩＰアドレスのサブネットワーク・アドレス部分から宛先サブネットワークを認識し、受信パケットを上記宛先サブネットワークの接続セグメントと対応する出力ポートに転送する。
【０００５】
各端末には、上位ビット部分に、その端末が接続されたサブネットワークと同一のアドレス値をもつＩＰアドレスが割当てられる。従って、端末がホームサブネットワークから他のサブネットワークに移動した場合は、端末のＩＰアドレスを変更する必要がある。サブネットワークは、例えば、データリンクレイヤにイーサネットを用いた場合、イーサネットのブロードキャストセグメントに該当している。従って、端末が一つのブロードキャストセグメントから他のブロードキャストセグメントに移動した場合、端末のＩＰアドレスを変更する必要がある。
【０００６】
通常、サブネットワークは、トラフィックの分離やセキュリティー等のネットワーク管理上の要求を考慮して定義される。そのため、例えば、オフィスビルの居室や、フロア毎にサブネットワークを定義し、それぞれを独立したブロードキャストセグメントとすることが多い。
近年、ＩＰネットワークの端末として、小型、軽量で持ち運びが容易なノートパソコンや携帯端末が普及しており、無線ＬＡＮの実用化によって、移動先での端末とネットワークの接続も容易に行えるようになってきている。
【０００７】
【発明が解決しようとする課題】
このような状況に中で、端末ＩＰアドレスを変更することなく、各端末にサブネットワーク（またはブロードキャストセグメント）間の移動を許容し、端末ユーザが移動先で簡単にネットワークを利用できるような通信サービスへの要求が高まっている。移動先でのネットワーク利用を容易にするためには、例えば、次のような方式がある。
（１）サブネットワーク（ブロードキャストセグメント）を大規模化し、端末の移動範囲、例えば、オフィスビルの全領域を一つのサブネットワークでカバーしたネットワーク構成。この場合、一つのサブネットワークに複数の無線アクセスポイントが設けられる。
【０００８】
この方式によれば、各端末を移動先で常に同一サブネットワークに接続できるため、端末ＩＰアドレスとデフォルトルータのＩＰアドレスを変更する必要がない。しかしながら、この方式では、全ての端末を一つのブロードキャストセグメントに収容しているため、同一ネットワーク上にトラフィックが集中し、個々の端末で利用できる通信帯域が不足するという問題がある。また、ブロードキャスト・トラフィックが全ての端末に到達するため、セキュリティーの確保が十分でない。
（２）ＩＥＴＦのＲＦＣ２００２で規定されたモバイルＩＰを採用したネットワーク構成。モバイルＩＰでは、各端末のホームリンクとなるサブネットワークにホームエージェント（ＨＡ：Ｈｏｍｅ  Ａｇｅｎｔ）機能、移動先のリンクにフォーリンエージェント（ＦＡ：Ｆｏｒｅｉｇｎ  Ａｇｅｎｔ）機能を配置しておき、各端末に、ホームリンク外のサブネットワーク（在圏網）に移動した時、該端末のホームアドレスと在圏網で取得した気付アドレス（ＣｏＡ：Ｃａｒｅ  ｏｆ  Ａｄｄｒｅｓｓ）との対応関係をホームエージェントＨＡに通知（端末位置登録）させる。
【０００９】
ＩＰパケットの送信元端末は、宛先アドレスに受信端末のホームアドレスを設定してＩＰパケットを送信する。上記ＩＰパケットは、ホームエージェントＨＡによって捕捉され、ホームアドレスと対応する気付アドレスを宛先アドレスとするＩＰヘッダでカプセル化した形で受信端末の在圏網に転送され、フォーリンエージェントＦＡでデカプセル化して、受信端末に転送される。従って、モバイルＩＰでは、各端末が、在圏網からホームエージェントＨＡに位置登録を行うモバイルＩＰ機能を備える必要がある。
（３）例えば、特開２００２−１３５２８９号公報で提案されているように、端末の移動を検知したルータが、他のルータに移動端末のＩＰアドレスを配布することによって、各ルータが備えるルーティングテーブル（経路表）の内容を端末移動に伴って変更するようにしたホストアドレスルーティング方式のネットワーク構成。
【００１０】
この方式によれば、各端末が常に同じＩＰアドレスを使用できる反面、ネットワーク内の各ルータに全ての端末の経路情報を保持／更新させる必要があるため、ネットワーク上での経路制御のための負荷が増加すると言う問題がある。そのため、ネットワークの構成変更を極力抑え、例えば、サブネットワーク単位で経路制御を行う等、経路制御負担を抑えるための工夫が必要となる。
【００１１】
【特許文献】
特開２００２−１３５２８９号公報
【００１２】
【課題を解決するための手段】
本発明の目的は、移動先で端末ＩＰアドレスを変更することなく容易に端末間通信を行えるようにしたパケット転送装置を提供することにある。
本発明の他の目的は、端末が複数のセグメント間で移動可能なパケット転送装置を提供することにある。
本発明の他の目的は、端末の移動範囲に含まれるセグメントの本数を増加できるパケット転送装置を提供することにある。
【００１３】
上記目的を達成するために、本発明のパケット転送装置は、一つのサブネットワークを複数のブロードキャストセグメントで構成し、サブネットワーク内で各端末に同一ＩＰアドレスの使用を許容する。
一般に、ルータが管理するサブネットワークは一つのブロードキャストセグメントで構成されているため、従来のルータは、例えば、ＩＰ経路制御機能によって宛先端末の所属するサブネットワークを特定し、このサブネットワークにＲＦＣ８２６で規定されているＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）要求メッセージをブロードキャストすることによって、宛先端末のＭＡＣアドレスを取得し、受信ＩＰパケットをＭＡＣフレームに変換している。
【００１４】
しかしながら、一つのサブネットワークを複数のブロードキャストセグメントで形成した場合、受信パケットの宛先ＩＰアドレスから、ＡＲＰ要求メッセージをブロードキャストすべき一つのセグメントを一意に特定することができない。そこで、本発明のパケット転送装置では、端末のＭＡＣアドレスおよびＩＰアドレスと該端末の接続セグメントとの対応関係を示すテーブル（以下、端末管理テーブルと言う）を参照して、ＡＲＰ要求メッセージおよび受信ＩＰパケットを含むＭＡＣフレームの転送先となるセグメントを特定する。
【００１５】
すなわち、本発明のパケット転送装置は、複数のブロードキャストセグメント間でＩＰパケットを転送するパケットの転送制御部を有し、上記複数のブロードキャストセグメントのうち、それぞれが複数の端末を収容する１組のセグメントによって、一つのサブネットアドレスをもつ内部サブネットワークが形成されており、
上記パケットの転送制御部が、上記内部サブネットワークに所属する各端末のＭＡＣアドレスおよびＩＰアドレスと、該端末が接続されているセグメントとの対応関係を示す複数のエントリを記憶した端末管理テーブルを備え、上記内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＩＰアドレスで上記内部サブネットワーク内の別のセグメントに接続された端末を指定したＭＡＣフレームを受信した時、受信フレームに含まれるＩＰパケットを上記端末管理テーブルに従って上記宛先端末の接続セグメントに転送することを特徴とする。
【００１６】
上記端末管理表へのエントリの登録は、例えば、ＲＦＣ２１３１で規定されているＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）による端末へのアドレス割当に連動して自動的に行うことができる。各端末に固定的にＩＰアドレスを割当てる場合は、手動でエントリを設定すればよい。
【００１７】
本発明によるパケット転送装置の他の特徴は、上記内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＩＰアドレスを指定して宛先端末のＭＡＣアドレスを問合せるアドレス要求メッセージを受信した時、上記端末管理テーブルを参照して、宛先端末の接続セグメントと上記アドレス要求メッセージの受信セグメントとの同一性を判断し、宛先端末の接続セグメントと上記アドレス要求メッセージの受信セグメントが異なった場合に、宛先端末に代わって、上記宛先端末のＩＰアドレスと該ルータのＭＡＣアドレスを含む応答メッセージを上記送信元端末の接続セグメントに送信するための手段を有することにある。
【００１８】
このように、パケット転送装置がＭＡＣアドレスを代理応答することによって、別セグメントに接続された端末宛のＩＰパケットを含むＭＡＣフレームをパケット転送装置で捕捉し、上記端末管理テーブルに従って宛先装置の接続セグメントに転送することができる。
【００１９】
本発明によるパケット転送装置の他の特徴は、上記内部サブネットワーク内の何れかのセグメントに接続された送信元端末からＭＡＣフレームを受信した時、該ＭＡＣフレームの受信セグメントと、該ＭＡＣフレームの送信元ＭＡＣアドレスと対応して上記端末管理テーブルに記憶された接続セグメントとを照合し、一致しない場合、送信元端末が上記内部サブネットワーク内で移動したものと判断して、上記端末管理テーブルに記憶された接続セグメントを上記ＭＡＣフレームの受信セグメントに変更するテーブル更新手段を備えたことにある。
【００２０】
このように、端末の移動に応じて端末管理テーブルを更新することによって、移動先での端末ＩＰアドレスやデフォルト転送装置のＩＰアドレスなどのネットワーク設定を変更することなく、各端末にセグメント間の移動を許容できる。
【００２１】
本発明の１実施例によれば、上記テーブル更新手段は、ＭＡＣフレームの受信セグメントと端末管理テーブルに記憶された接続セグメントとが一致しない場合に、上記ＭＡＣフレームの送信元アドレス宛の確認メッセージを上記受信セグメントと接続セグメントに対して送信し、上記両セグメントにおける上記確認メッセージに対する応答の受信状況から適正な端末移動か否かをチェックし、端末管理テーブルに記憶された接続セグメントの更新の要否を決定する。
【００２２】
尚、複数のブロードキャストセグメントで構成したサブネットワークに関しては、例えば、ＲＦＣ３０６９に“ＶＬＡＮ  Ａｇｇｒｅｇａｔｉｏｎ  ｆｏｒ  Ｅｆｆｉｃｉｅｎｔ  ＩＰ  Ａｄｄｒｅｓｓ  Ａｌｌｏｃａｔｉｏｎ”として記述されているが、ここに記述された従来技術は、端末に割当てるＩＰアドレスの節約を目的としており、上述したようにセグメント間の端末移動を目的としたものではない。
【００２３】
本発明によるパケット転送装置の更に他の特徴は、
連携関係にある隣接パケット転送装置との間でＭＡＣフレームを送受信するための接続回線と、
内部サブネットワーク内の何れかのセグメントに接続された送信元端末から、宛先ＭＡＣアドレスで該パケット転送装置を指定し、宛先ＩＰアドレスで上記内部サブネットワーク内の別のセグメントに接続された端末を指定したＭＡＣフレームを受信した時、該受信フレームに含まれるＩＰパケットを上記宛先端末が接続されたセグメントに転送するパケット転送制御部と、
上記隣接パケット転送装置をデフォルト装置とする端末から、上記内部サブネットワークの何れかのセグメントを介してＭＡＣフレームを受信した時、該ＭＡＣフレームを上記隣接パケット転送装置との接続回線に転送するＭＡＣフレーム転送制御部とを備えたことにある。
【００２４】
この場合、パケット制御部は、前述した端末管理テーブルに従って、上記内部サブネットワーク内のセグメント間ＩＰパケット転送を制御し、ＭＡＣフレーム転送制御部は、ＭＡＣアドレスと接続セグメントとの対応関係を示す複数のエンリを記憶したＭＡＣ転送テーブルに従って、上記隣接パケット転送装置へのＭＡＣフレーム転送を制御する。また、上記ＭＡＣフレーム転送制御部は、該パケット転送装置以外のＭＡＣアドレスを宛先ＭＡＣアドレスとする受信ＭＡＣフレームを処理対象とし、受信ＭＡＣフレームの送信元端末と対応するエントリがＭＡＣ転送テーブルに未登録の時、送信元端末のデフォルト装置が隣接パケット転送装置であることを確認して、隣接パケット転送装置への受信ＭＡＣフレームの転送と、上記ＭＡＣ転送テーブルへの上記送信元端末用のエントリの登録を行う。このように、パケット転送装置に連携関係にある隣接パケット転送装置との間でＭＡＣフレームを送受信する機能をもたせることによって、各端末に、デフォルト装置が形成するサブネットワーク内のセグメント間移動に留まらず、隣接パケット転送装置が形成するサブネットワークへの移動も許容できる。
【００２５】
本発明のパケット転送装置は、上述したパケット転送制御部が、サブネットワークのアドレスと対応して経路制御情報を示す複数のエントリが登録された経路テーブルを備え、経路テーブルに登録された上記内部サブネットワークのアドレスと対応するエントリは、該内部サブネットワークが複数セグメントからなることを示すセグメント識別子を含んでおり、外部サブネットワークに接続されたセグメントから上記内部サブネットワークに所属する端末宛のＩＰパケットを受信した時、パケット転送制御部が、上記経路テーブルと端末管理テーブルを参照して宛先端末の接続セグメントを特定し、該特定セグメントに受信パケットを転送する。本発明の他の目的と特徴は、以下に説明する実施例から明らかになる。
【００２６】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
図１は、本発明の第１実施例によるパケット転送装置（以下、レイヤ３スイッチを含めて「ルータ」と言う）が適用されるネットワークの概略図を示す。
ここでは、内部サブネットワークのデータリンクレイヤにイーサネットを採用したＩＰネットワークにおけるルータ１０の機能について説明する。ルータ１０は、内部サブネットワーク３と外部ネットワーク５（サブネットワーク５ａ〜５ｎ）とを接続し、これらのサブネットワーク間でＩＰパケットを中継する。内部サブネットワーク３のアドレスは、図に示すように、「１９２．１６８．０．０／２４」となっている。
【００２７】
本実施例において、内部サブネットワーク３は、それぞれ複数の端末を収容可能な複数のブロードキャストセグメント（接続回線）３ａ、３ｂ、３ｃから構成されている。ここでは、簡単化のために、セグメント３ａに接続された端末４ａ、４ｎと、セグメント３ｂ、３ｃに接続された端末４ｂ、４ｃが示してある。端末４ａ、４ｂ、４ｃのＩＰアドレスは、それぞれ「１９２．１６８．０．２」、「１９２．１６８．０．３」、「１９２．１６８．０．４」となっている。これらのＩＰアドレスは、上位２４ビットが、サブネットワーク・アドレスのマスク長ビットが示すプレフィックス部分「１９２．１６８．０」に一致した値をもっている。
【００２８】
ルータ１０は、サブネットワーク３との接続インタフェースのＩＰアドレスが「１９２．１６８．０．１」となっており、端末４ａ〜４ｃは、このアドレス「１９２．１６８．０．１」をデフォルトルータのＩＰアドレスとして使用する。これらの端末は、デフォルトルータを中継ルータとして、外部ネットワーク５、図示した例ではサブネットワーク５ａ〜５ｎに収容された端末や、例えば、５ｍ、５ｘのように、サブネットワーク５ａ〜５ｎと結合された更に他のサブネットワークに収容された端末とＩＰパケットの送受信を行う。
上記ＩＰアドレスの関係から判るように、本実施例の一つの特徴は、内部サブネットワーク３が複数のセグメント３ａ、３ｂ、３ｃに対応付けられている点にある。
【００２９】
外部ネットワーク５は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、企業バックボーンネットワーク、インターネット等、任意用途のＩＰサブネットワークからなる。６は、サブネットワーク５ａに接続されたＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバを示す。ＤＨＣＰサーバ６は、各端末に端末ＩＰアドレスとデフォルトルータＩＰアドレスを自動的に割当てるためのものであり、その動作については後で詳述する。
【００３０】
図２は、本発明によるルータ１０のブロック構成図を示す。
ルータ１０は、内部サブネットワーク３を構成する複数のセグメント３ａ、３ｂ、３ｃを収容するための入力回線インタフェース１１−１〜１１−３および出力回線インタフェース１２−１〜１２−３と、外部サブネットワーク５ａ〜５ｎとの接続セグメント４ａ〜４ｎを収容するための入力回線インタフェース１１−４〜１１−ｎおよび出力回線インタフェース１２−４〜１２−ｎと、上記各入力回線インタフェースと内部バス１９との間に接続された受信バッファ１３（１３−１〜１３−ｎ）と、上記各出力回線インタフェースと内部バス２９との間に接続された送信バッファ１４（１４−１〜１４−ｎ）と、上記内部バス１９に接続されたプロセッサ１５、プログラムメモリ１６およびデータメモリ１７と、オペレータ用の入出力装置１８とからなっている。
【００３１】
プログラムメモリ１６には、上記プロセッサ１５によって実行されるプログラムとして、パケット送受信ルーチン２００と、端末情報管理機能を備えたＨＤＣＰリレー処理ルーチン３００と、ＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）処理ルーチン４００と、アプリケーションその他のルーチン５００と、これらのルーチンを選択的に起動する基本制御ルーチン１００が格納されている。また、データメモリ１７には、ポート情報テーブル２０と、端末管理テーブル３０と、経路テーブル４０と、ＡＲＰテーブル５０、その他のデータ領域が形成される。
【００３２】
ポート情報テーブル２０は、ルータ１０が備える入出力ポート（入出力回線インタフェース１１、１２）の識別子と、そのポートに接続されるセグメントのタイプとの対応関係を示す。この場合のセグメントタイプは、図１のマルチキャストセグメント３ａ〜３ｃのように、一つのサブネットアドレスを他のセグメントと共有するタイプ（以下、マルチセグメントと言う）か、セグメント４ａ〜４ｎのように、個別のサブネットアドレスをもつサブネットワークに接続される一般的なタイプかの区別を示している。
【００３３】
端末管理テーブル３０には、図３に示すように、内部サブネットワーク３に所属してルータ１０をデフォルトルータとする各端末のＭＡＣアドレス３１およびＩＰアドレス３２と、該端末が接続されたセグメントの識別子３３との対応関係を示す複数のエントリ３０−１、３０−２、…が登録される。
【００３４】
経路テーブル４０には、図４に示すように、宛先プリフィックス（Ｐｒｅｆｉｘ）４１と、次ホップ４２と、出セグメント（出力ポート）識別子４３との対応関係を示す複数のエントリ４０−１、４０−２、…が登録される。ここで、宛先プリフィックス４１は、宛先サブネットワークのアドレスを示し、次ホップ４２は、宛先サブネットワークへの中継ルータのＩＰアドレスを示す。
例えば、エントリ４０−１のように、次ホップ４１が“Ｃｏｎｎｅｃｔｅｄ”となっていた場合、宛先プリフィックス４１で示された宛先サブネットワークがそのルータに直結していることを意味している。出セグメント識別子４３は、次ホップ４２で示されるルータの接続セグメント（出力ポート）の識別子を示している。
【００３５】
宛先プリフィックス４１で示されたサブネットワークが、図１の内部サブネットワーク３のように、複数のセグメントからなっている場合は、出セグメント識別子４３には、このサブネットワークがマルチセグメントタイプとなっていることを示す識別コードが設定される。
【００３６】
ＡＲＰテーブル５０には、図５に示すように、端末に割当てられたＩＰアドレス５１およびＭＡＣアドレス５２と、エントリ有効期限を示すエージングタイマ値５３との対応関係を示す複数のエントリ５０−１、５０−２、…が登録されている。
従来のＩＰネットワークでは、ルータに接続される各サブネットワークが一つのブロードキャストセグメントで構成されている。この場合、ルータは、受信パケットの宛先ＩＰアドレスから宛先端末が接続されているセグメントを一義的に特定することができる。
【００３７】
これに対して、図１に示すように、一つのサブネットワーク３を複数のブロードキャストセグメント３ａ、３ｂ、３ｃで構成した場合、宛先ＩＰアドレスから宛先端末が接続されているセグメントを一義的に特定することができない。端末管理テーブル３０は、受信フレームの宛先ＭＡＣアドレスまたは宛先ＩＰアドレスから、宛先端末が接続されているセグメントを識別するために参照される。上記端末管理テーブル３０へのエントリの登録は、例えば、ＤＨＣＰサーバ６による端末へのＩＰアドレス割当てを利用して行われる。
【００３８】
図６は、ＤＨＣＰサーバ６による端末へのＩＰアドレスの割当てシーケンスを示す。
例えば、ユーザが端末２ａを起動すると、端末２ａは、ＤＨＣＰサーバ検出用の制御メッセージ（ＤＨＣＰＤＩＳＣＯＶＥＲ）をセグメント３ａにブロードキャストする。上記ＨＤＣＰ制御メッセージ（ＤＨＣＰＤＩＳＣＯＶＥＲ）は、例えば、図７に示すイーサフレーム（登録商標）６０形式でブロードキャストセグメント３ａに送出される。
【００３９】
イーサフレーム６０は、ＭＡＣヘッダ６１とペイロード６２からなっており、ペイロード６２に、ＩＰヘッダ６２１と、ＵＤＰヘッダ６２２と、ＨＤＣＰ制御メッセージ（この例では、ＤＨＣＰＤＩＳＣＯＶＥＲメッセージ）６２３とからなるＩＰパケット６２０が含まれる。
【００４０】
ＤＨＣＰＤＩＳＣＯＶＥＲメッセージを送信する場合、端末２ａは、ＩＰヘッダ６２１の宛先ＩＰアドレスにブロードキャストアドレス、送信元ＩＰアドレスにゼロを設定し、ＭＡＣフレームヘッダ６１の宛先アドレスにＭＡＣブロードキャストアドレス、送信元アドレスに自分のＭＡＣアドレスを設定する。
【００４１】
ルータ１０は、上記イーサフレームを受信すると、ＵＤＰヘッダから受信メッセージを処理すべき上位ルーチンを特定し、受信フレームをＨＤＣＰリレー処理ルーチン３００に渡す。ＨＤＣＰリレー処理ルーチン３００は、ＨＤＣＰ制御メッセージを含むイーサフレーム６０を受信すると、ＩＰパケット６２０を抽出し、ＩＰヘッダ６２１の送信元ＩＰアドレスを自分のＩＰアドレスに書き換えた後、該ＩＰパケットをＤＨＣＰサーバ６が接続されたサブネットワーク５ａとの接続回線４ａに転送する。
【００４２】
ＤＨＣＰサーバ６は、サブネットワーク５ａから上記ＨＤＣＰ制御メッセージ（ＤＨＣＰＤＩＳＣＯＶＥＲ）を含むＩＰパケットを受信すると、要求元端末に割当てるべきＩＰアドレスを決定し、上記割当てＩＰアドレスを示す応答メッセージ（ＤＨＣＰＯＦＦＥＲ）を生成する。上記応答メッセージは、送信元ＩＰアドレスにＤＨＣＰサーバ６のＩＰアドレスを含むＩＰパケット形式で、ルータ１０宛に送信される。ルータ１０は、上記応答メッセージ（ＤＨＣＰＯＦＦＥＲ）を含むＩＰパケットをＨＤＣＰリレー処理ルーチン３００で処理し、イーサフレームとしてセグメント３ａに転送する。
【００４３】
端末２ａは、上記応答メッセージ（ＤＨＣＰＯＦＦＥＲ）を受信すると、ＤＨＣＰサーバにＩＰアドレスの割当て確認要求用のＨＤＣＰ制御メッセージ（ＤＨＣＰＲＥＱＵＥＳＴ）を送信する。上記ＤＨＣＰＲＥＱＵＥＳＴメッセージは、ＤＨＣＰＤＩＳＣＯＶＥＲメッセージと同様、ブロードキャストＭＡＣフレーム形式でセグメント３ａに送出され、ルータ１０で送信元ＩＰアドレスを書き換えた後、ＤＨＣＰサーバ６に転送される。
【００４４】
ＤＨＣＰサーバ６は、上記ＤＨＣＰＲＥＱＵＥＳＴメッセージを受信すると、確認応答用のＨＤＣＰ制御メッセージ（ＤＨＣＰＡＣＫ）を生成し、これをＩＰパケット形式でルータ１０に送信する。ルータ１０は、上記ＤＨＣＰＯＦＦＥＲメッセージを含むＩＰパケットをＨＤＣＰリレー処理ルーチン３００で処理し、イーサフレームとしてセグメント３ａに転送する。上記ＤＨＣＰＯＦＦＥＲメッセージを端末４ａが受信することによって、ＩＰアドレスの割当てシーケンスが完了する。
【００４５】
ＨＤＣＰリレー処理ルーチン３００は、上述したＨＤＣＰ制御メッセージの転送過程で、イーサフレームヘッダ６１に含まれる端末のＭＡＣアドレスと、端末に割当てられたＩＰアドレスと、イーサフレーム受信セグメントの識別子との対応関係を把握し、ＤＨＣＰＡＣＫメッセージの中継時に、端末管理テーブル３０にＩＰアドレス要求元端末２ａと対応する新たなエントリを登録する。
尚、ＩＰアドレスを端末毎に固定アドレスとして割当てる場合は、ルータ１０の管理者が、入出力装置１８を介してマニュアル操作で端末管理テーブル３０にエントリ登録するようにしてもよい。
【００４６】
次に、本発明のルータ１０によるＩＰパケットの中継動作と、ＡＲＰ要求に対する代理応答動作について説明する。
先ず、同一の内部サブネットワーク３に属した２つの端末間でのパケット通信について説明する。
【００４７】
一つのサブネットワークに属する全ての端末が同一のブロードキャストセグメントに接続される従来のネットワーク構成においては、上記サブネットワークに属する全ての端末間で直接パケットを送受信できるため、ルータによるパケット中継を必要としない。
従来のネットワーク構成において、例えば、端末Ｘが端末Ｙと通信する場合、端末Ｘは、端末ＹのＭＡＣアドレスを取得するために、端末ＹのＩＰアドレスを指定したＡＲＰ要求メッセージをブロードキャストセグメントにブロードキャストする。端末Ｙは、上記ＡＲＰ要求メッセージの受信に応答して、自己のＭＡＣアドレスとＩＰアドレスを組にした応答メッセージを要求元端末Ｘに返り返す。端末Ｘは、上記応答メッセージが示すＭＡＣアドレスを宛先アドレスに使用するによって、ＭＡＣフレーム形式でデータパケットを端末Ｙに送信することができる。
【００４８】
しかしながら、図１に示したネットワーク構成では、内部サブネットワーク３がマルチセグメントタイプとなっているため、内部サブネットワークで通信する２つの端末が同一ブロードキャストセグメントに属するとは限らない。このため、例えば、同一セグメントに接続された端末２ａと端末２ｎとの間の通信のように、端末２ａがセグメント３ａにブロードキャストしたＡＲＰ要求メッセージを宛先端末２ｎが受信し、要求元端末に応答メッセージを返送できる場合もあれば、例えば、端末２ａと端末２ｂとの間の通信のように、端末接続セグメントが異なるため、端末２ａがセグメント３ａにブロードキャストしたＡＲＰ要求メッセージを宛先端末２ｂで受信できない場合もある。
【００４９】
そこで、本発明では、ＡＲＰ要求メッセージの送信元端末Ｘの接続セグメントと、該ＡＲＰメッセージに応答すべき宛先端末Ｙの接続セグメントとが異なる場合、宛先端末Ｙに代わってルータ１０にＡＲＰ要求への応答動作を行わせる。
【００５０】
例えば、図１のネットワークにおいて、端末２ａが、端末２ｂのＩＰアドレスを指定して、ブロードキャストセグメント３ａにＡＲＰ要求メッセージを送信した時、ルータ１０が、端末２ｂに代わって、端末２ｂのＩＰアドレスとルータ１０のＭＡＣアドレスを示す応答メッセージを返答する。この場合、端末２ａは、宛先端末２ｂから応答があったものと認識し、ルータ１０のＭＡＣアドレスを宛先アドレスとするイーサフレームで端末２ｂ宛のデータ（ＩＰパケット）を送信する。
【００５１】
ルータ１０は、端末２ａからのイーサフレームを受信すると、受信フレームからＩＰパケットを抽出し、宛先ＩＰアドレスに従って受信パケットを転送する。この例では、受信パケットの宛先ＩＰアドレスは端末２ｂ宛となっているため、ルータ１０は、経路テーブル４０を参照した結果、宛先端末２ｂの属するサブネットワークが自ルータに直結されたマルチセグメントタイプのサブネットワークであることを認識し、端末管理テーブル３０から、ＩＰアドレス３２が宛先ＩＰアドレスと一致するエントリを検索する。
【００５２】
端末管理テーブル３０の検索の結果、宛先端末２ｂのＭＡＣアドレス３１と接続セグメント（セグメント識別子）３３が判明するため、ルータ１０は、上記受信パケットをＭＡＣフレーム（イーサフレーム）形式で宛先端末２ｂの接続ポート（送信バッファ１４−２）に転送することができる。
【００５３】
ルータ１０が、端末の代理でＡＲＰ要求メッセージに返答する機能は、一般にＰｒｏｘｙ  ＡＲＰと呼ばれている。本発明のルータ１０は、ＡＲＰ要求メッセージを受信すると、図８に示すＡＲＰ処理ルーチン４００を実行する。
ＡＲＰ処理ルーチン４００では、ＡＲＰ要求メッセージの送信元端末（ＭＡＣアドレス）が端末管理テーブル３０にエントリ登録されているか否かを判定する（４０１）。送信元端末が端末管理テーブル３０に未登録であれば、何もせずにこのルーチンを終了する。
送信元端末が端末管理テーブル３０に登録済みの場合は、端末管理テーブル３０から、ＩＰアドレス３２がＡＲＰ要求メッセージで指定された宛先ＩＰアドレスと一致するエントリを検索し、該エントリのセグメント識別子３３が示す宛先端末の接続セグメントと、ＡＲＰ要求メッセージの受信セグメント（入力ポート）とを比較する（４０２）。２つのセグメントが一致した場合は、宛先端末がＡＲＰ要求メッセージに応答できると判断し、代理応答することなく、このルーチンを終了する。
【００５４】
宛先端末の接続セグメントとＡＲＰ要求メッセージの受信セグメントとが異なった場合は、宛先端末のＩＰアドレスとルータ１０のＭＡＣアドレスを示す応答メッセージを生成し、これを上記ＡＲＰ要求メッセージの受信セグメントと対応する出力ポートに送信し（４０３）、このルーチンを終了する。
【００５５】
本発明のルータ１０は、端末管理テーブル３０によって内部サブネットワーク３に収容される全端末のＩＰアドレスを管理しているため、上述したように、端末管理テーブル３０に登録エントリをもつ端末のみをＰｒｏｘｙ  ＡＲＰの対象とすることによって、所在不明の端末からのパケット送信、または所在不明の端末宛のパケット送信を禁止することができる。
【００５６】
マルチセグメントタイプの内部サブネットワーク３に接続された端末２ａから外部ネットワーク５に接続された端末Ｙにパケットを送信する場合、端末２ａは、端末Ｙ宛のＩＰパケットを含むイーサフレームをデフォルトルータであるルータ１０宛に送信する。ルータ１０は、受信したイーサフレームからＩＰパケットを抽出し、経路テーブル４０から該受信ＩＰパケットの宛先ＩＰアドレスに該当するエントリを検索し、受信ＩＰパケットを次ホップ４２と出セグメント４３に従って転送する。
【００５７】
外部ネットワーク５から端末２ａ宛のＩＰパケットを受信した場合、ルータ１０は、経路テーブル４０から受信ＩＰパケットの宛先ＩＰアドレスに該当するエントリを検索する。この場合、検索エントリの次ホップ４２と出セグメント識別子４３から、宛先端末の所属サブネットワークがルータ１０に接続されたマルチセグメントタイプのものであることが判明するため、ルータ１０は、端末管理テーブル３０から上記宛先ＩＰアドレスに該当するエントリを検索し、セグメント識別子３３が示す出力ポートに受信ＩＰパケットを転送する。
【００５８】
次に、内部サブネットワーク３内で端末が移動した場合のルータ１０の動作について説明する。
図１に示したブロードキャストセグメント３ａ〜３ｃは、例えば、一つの建物におけるフロア毎または居室毎に別セグメントとなるように敷設される。各端末ユーザは、現在位置から他の居室またはフロアに移動し、移動先のブロードキャストセグメントに自分の端末を接続し、他の端末と通信できると便利である。
【００５９】
本発明のネットワーク構成によれば、端末がブロードキャストセグメント３ａ〜３ｃ間で移動した場合でも、その端末が属するＩＰサブネットワーク３は不変となるため、端末のＩＰアドレスとデフォルトルータアドレスを変更する必要がない。
例えば、図１において、端末２ａが現在のセグメント３ａから隣のセグメント３ｂに移動しても、移動先で端末２ａが所属するサブネットワークは、移動前と同じアドレスが「１９２．１６８．０．０／２４」のネットワーク３である。従って、端末がブロードキャストセグメント３ａ〜３ｃ間で移動しても、端末２ａのＩＰアドレス「１９２．１６８．０．２」とデフォルトルータのＩＰアドレス「１９２．１６８．０．１」を変更する必要はない。
【００６０】
このように、一つの内部サブネットワークを複数のブロードキャストセグメントで構成したことによって、端末が内部サブネットワークのセグメント間で移動しても、端末ＩＰアドレスやデフォルトルータアドレスを変更することなく、各端末に移動先でのネットワーク通信を許容できる。従って、本発明のネットワーク構成によれば、ユーザによる端末パラメータの設定変更の負担を軽減し、移動先での移動前と継続した通信が可能になる。
【００６１】
本発明のルータ１０は、端末が移動先で送信する最初のイーサフレームを利用して、端末管理テーブル３０のエントリ更新を行う。上記端末管理テーブルの更新には、例えば、移動前から継続する通信のデータパケットを含むイーサフレーム、新たに開始された通信のイーサフレーム、移動先のブロードキャストセグメントに接続した時に送信される認証用のイーサフレーム、端末アプリケーションが定期的に送信するイーサフレームなどを適用できる。
また、端末から送信されるイーサフレームは、ＩＰパケット以外の、例えば、ＡＲＰメッセージやＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）で用いられるＮｅｔＢＥＵＩ通信パケットを含むものでもよい。
【００６２】
図９は、ルータ１０が実行するパケット送受信処理ルーチン２００のフローチャートを示す。
受信バッファ１３−１〜１３−ｎに蓄積された受信フレームは、基本制御ルーチン１００によって順次に読み出され、ＨＤＣＰ制御メッセージとＡＲＰ要求メッセージ以外の受信フレームは、パケット送受信処理ルーチン２００によって処理される。
【００６３】
パケット送受信処理ルーチン２００では、受信フレームの宛先ＭＡＣアドレスをチェックし（２０１）、宛先ＭＡＣアドレスが自ルータアドレスに一致しない受信フレームは廃棄して（２１７）、このルーチンを終了する。但し、宛先ＭＡＣアドレス判定による受信フレームの廃棄は、入力回線インタフェース１１−１〜１１−ｎで行ってもよい。
【００６４】
受信フレームの宛先ＭＡＣアドレスが自ルータアドレスに一致していた場合は、受信フレームの入力ポートを判定する（２１０）。受信フレーム（イーサフレーム）の入力ポートがマルチセグメント接続ポート、すなわち、受信フレームが受信バッファ１３−１〜１３−３からの読み出しフレームの場合は、送信元のＭＡＣアドレスまたはＩＰアドレスが端末管理テーブル３０に登録済みか否かを判定する（２１１）。
受信フレームの入力ポートが、マルチセグメント接続ポート以外のポート、すなわち、受信フレームが受信バッファ１３−４〜１３−ｎから読み出された外部サブネット接続セグメントからの受信フレームの場合は、図１０で後述するＩＰパケット転送処理２２０を実行する。
【００６５】
ステップ２１１での判定の結果、送信元に該当するエントリが端末管理テーブル３０に未登録の場合は、受信フレームが内部サブネットワークに接続された不正端末からのものと判断し、エラー情報を記録（２１６）した後、受信フレームを廃棄し（２１７）、このルーチンを終了する。
【００６６】
送信元に該当するエントリが端末管理テーブル３０に登録済みの場合は、上記受信フレームの入力ポート（受信セグメント）の識別子が端末管理テーブル３０に登録済みのセグメント識別子３３と一致するか否かを判定する（２１２）。２つの識別子が一致した場合は、受信フレームの送信元端末に移動はなく、端末管理テーブル３０は更新不要と判断して、受信フレームから抽出されたＩＰパケットについて、ＩＰパケット転送処理２２０を実行する。
【００６７】
受信セグメントの識別子が端末管理テーブル３０に登録済みのセグメント識別子３３と一致しなかった場合は、受信フレームの送信元端末に移動があったものと判断し、送信元端末の移動確認処理（２１３）を実行する。端末の移動は、端末管理テーブル３０に登録されている送信元端末のＭＡＣアドレス３１を宛先とする確認フレーム（Ｐｉｎｇフレーム）を生成し、これをセグメント識別子３３が示す端末移動前のセグメントと、上記受信フレームの入力ポートと対応する端末移動先のセグメントに送信し、各セグメントにおける応答フレームの受信の有無によって確認する。
【００６８】
端末がセグメント間で移動した場合は、移動先セグメントにおいてのみ宛先端末が上記Ｐｉｎｇフレームに応答するはずである。移動先セグメントで上記Ｐｉｎｇフレームに応答が無かった場合は、送信元端末に異常が発生したものと判断できる。また、移動前のセグメントに送信したＰｉｎｇフレームに対して応答があった場合は、同一ＭＡＣアドレスをもつ宛先端末が２箇所に存在すると言う異常状態の発生を意味している。端末の移動確認処理の結果（２１４）、受信フレームの送信元端末の移動に異常があった場合は、エラーを記録し（２１６）、受信フレームを廃棄（２１７）して、このルーチンを終了する。
【００６９】
移動前のセグメントで応答が無く、移動先のセグメントで応答があった場合に、正常な端末移動と判断する。この時、端末管理テーブル３０に登録されている上記送信元端末に該当するエントリのセグメント識別子３３を移動後のセグメントの識別子に書き換え（２１５）、受信フレームから抽出されたＩＰパケットについて、ＩＰパケット転送処理２２０を実行する。
【００７０】
図１０は、ＩＰパケット転送処理２２０の詳細を示すフローチャートである。ＩＰパケット転送処理２２０では、経路テーブル４０から受信ＩＰパケットの宛先アドレスに該当するエントリを検索し（２２１）、宛先アドレスに該当するエントリが無かった場合は、エラー情報を記録（２２９）した後、受信パケットを廃棄して（２３０）、このルーチンを終了する。
【００７１】
経路テーブル４０に宛先アドレスに該当するエントリがあった場合は、出セグメント識別子４３の値から、宛先端末がマルチセグメントタイプの内部サブネットワークに接続された端末か否かを判定する（２２２）。宛先端末がマルチセグメントタイプ内部サブネットワークの接続端末の場合は、端末管理テーブル３０を参照し、宛先ＩＰアドレスに該当するエントリが登録済みか否かを判定し（２２３）、未登録の場合は、エラー情報を記録（２２９）した後、受信パケットを廃棄して（２３０）、このルーチンを終了する。
【００７２】
宛先端末が通常セグメントに接続された端末の場合、または、ステップ２２３で端末管理テーブル３０にエントリ登録済みであることが確認された端末の場合は、ＡＲＰテーブル５０を参照し、宛先ＩＰアドレスに該当するエントリがＡＲＰテーブル５０に登録済みか否かを判定する（２２４）。宛先ＩＰアドレスに該当するエントリが登録済みであれば、ＩＰパケットの転送（２２８）を行う。
【００７３】
上記ＩＰパケット転送（２２８）では、ＡＲＰテーブル５０に登録されたＭＡＣアドレスを宛先ＭＡＣアドレスに適用して、受信ＩＰパケットを含むＭＡＣフレームを生成し、経路テーブル４０の出セグメント識別子４３、または端末管理テーブル３０のセグメント識別子３３が示す宛先端末の接続ポートにＭＡＣフレームを転送する（２２８）。
【００７４】
宛先ＩＰアドレスに該当するエントリがＡＲＰテーブル５０に未登録の場合は、宛先端末のＭＡＣアドレスを取得するためのＡＲＰ要求メッセージを生成し、これを経路テーブル４０の出セグメント識別子４３、または端末管理テーブル３０のセグメント識別子３３が示す宛先端末の接続ポートに送信する（２２５）。上記ＡＲＰ要求メッセージに対する応答を待ち、所定時間内に応答がなければ、エラー情報を記録（２２９）し、受信パケットを廃棄して（２３０）、このルーチンを終了する。
【００７５】
ＡＲＰ要求に対する応答メセージを受信した場合は、応答メッセージの内容に従って宛先端末用のＡＲＰ情報エントリを生成し、これをＡＲＰテーブル５０に追加（２２７）した後、上述したＩＰパケット転送（２２８）を実行する。
【００７６】
図１１は、上述したマルチセグメントタイプのサブネットワーク３に含まれるセグメント本数を増加し、端末の移動範囲を拡張するのに適したルータ構成の１例を示す。
本実施例では、ルータ１０が備えるマルチセグメント接続用の入出力ポート３Ａ〜３Ｂ（入力回線インタフェース１１−１〜１１−３、出力回線インタフェース１２−１〜１２−３）にＶＬＡＮスイッチ（７ａ〜７ｃ）を接続し、これらのＶＬＡＮスイッチにそれぞれ複数本のマルチキャストセグメント３ａ−１〜３ａ−Ｎ、３ｂ−１〜３ｂ−Ｎ、３ｃ−１〜３ｃ−Ｎを収容している。
【００７７】
ＶＬＡＮスイッチ７ａは、マルチキャストセグメントとなる複数の物理回線３ａ−１〜３ａ−Ｎを集線し、これらの物理回線での送信フレームを入出力ポート２Ａに論理的に多重／分離する機能を備えている。ＶＬＡＮによって複数の回線を多重化することにより、ルータ１０が提供できる少数の入出力ポートに多数のブロードキャストセグメントを収容することが可能となる。尚、ＶＬＡＮは、ＩＥＥＥ８０２．１Ｑ規格において標準化されている。
【００７８】
図１２は、本発明の第２実施例となるルータを適用したネットワークの概略図を示す。
第２実施例は、それぞれがマルチセグメント構造のサブネットワークを収容する複数台のルータを接続し、端末のＩＰアドレスを変更することなく、これらのサブネットワーク間での端末の移動を許容できるようにしたものである。
【００７９】
図１２において、ルータ１０Ａは、ネットワークアドレス「１９２．１６８．０．０／２４」をもつＩＰサブネットワーク３Ａのデフォルトルータ（ＩＰアドレス：「１９２．１６８．０．１」をもつデフォルトゲートウェイ）となっている。また、ルータ１Ｂは、ネットワークアドレス「１９２．１６８．１．０／２４」をもつＩＰサブネットワーク３Ｂのデフォルトルータ（ＩＰアドレス：「１９２．１６８．１．１」をもつデフォルトゲートウェイ）となっている。
【００８０】
ルータ１０Ａには、ＩＰサブネットワーク３Ａに所属する端末２ａ（ＩＰアドレス：「１９２．１６８．０．２」）、端末２ｂ（ＩＰアドレス：「１９２．１６８．０．３」）、端末２ｃ（ＩＰアドレス：「１９２．１６８．０．４」）が、それぞれブロードキャストセグメント３ａ、３ｂ、３ｃを介して収容されている。
【００８１】
また、ルータ１０Ｂには、ＩＰサブネットワーク３Ｂに所属する端末２ｄ（ＩＰアドレス：「１９２．１６８．１．２」）、端末２ｅ（ＩＰアドレス：「１９２．１６８．１．３」）、端末２ｆ（ＩＰアドレス：「１９２．１６８．１．４」）が、それぞれブロードキャストセグメント３ｄ、３ｅ、３ｆを介して収容されている。
これらのルータ１０Ａ、１０Ｂは、回線３ｘを介して接続してあり、後述するように、上記回線３ｘを介して、他のサブネットワークから移動してきた端末からの受信イーサフレームを相互に転送できるようになっている。
【００８２】
第１実施例と同様、各端末は、起動時にルータ１０Ａまたは１０Ｂを介してＤＨＣＰサーバ６をアクセスし、その端末の収容ルータをデフォルトゲートウェイとするＩＰサブネットワーク対応のＩＰアドレスの割当てを受ける。本実施例では、ルータ１０Ａ、１０Ｂが、例えば、サブネットワーク５ｎに接続されたデフォルトルータ管理サーバ８をアクセスすることによって、他方のルータに収容された端末のアドレス情報を取得する。
【００８３】
デフォルトルータ管理サーバ８は、ルータ１０Ａ、１０Ｂに収容されている各端末のアドレス情報を保持するために、例えば、図１５に示すデフォルトルータ管理テーブル８０を備えている。デフォルトルータ管理テーブル８０には、端末のＭＡＣアドレス８１およびＩＰアドレス８２と、その端末のデフォルトルータ（デフォルトゲートウェイ）の識別子８３との関係を示す複数のエントリ８０−１、８０−２、・・・が登録される。
【００８４】
ルータ１０Ａ、１０Ｂは、自分の端末管理テーブル３０に新たなエントリを登録した時、端末のＭＡＣアドレス３１およびＩＰアドレス３２と、自分のルータ識別子をデフォルトルータ管理サーバ８に通知する。デフォルトルータ管理サーバ８は、これらの情報から新たなエントリ８０−ｉを生成し、これをデフォルトルータ管理テーブル８０に登録する。
【００８５】
図１３は、第２実施例のルータ１０（１０Ａ、１Ｂ）の構成を示す。
本実施例のルータ１０は、図２に示した第１実施例のルータ１０に、回線３ｘに接続された入力回線インタフェース１１−ｘおよび出力回線インタフェース１２−ｘと、これらのインタフェースとバス１９との間に接続された受信バッファ１３−ｘおよび送信バッファ１４−ｘとを追加し、メモリ１７にＭＡＣ転送テーブル６０を追加し、パケット送受信処理ルーチン２００Ｘに新たな機能を追加した構成となっている。
【００８６】
ＭＡＣ転送テーブル６０には、図１４に示すように、端末およびデフォルトルータのＭＡＣアドレス６１と、その端末またはデフォルトルータが接続されたセグメントの識別子６２と、エントリの有効期限を示すエージングタイマ値６３とを示す複数のエントリ６０−１、６０−２、・・・が登録される。デフォルトルータ用のエントリは、システム構築時にオペレータ操作によって登録される。デフォルトルータ用のエントリのセグメント識別子６２には回線３ｘの識別子が設定され、エージングタイマ値６３は、時間制限を受けない特殊な設定値となっている。
【００８７】
本実施例におけるパケット送受信処理ルーチン２００Ｘは、経路テーブル４０に基づくＩＰパケットの転送機能に加えて、上記ＭＡＣ転送テーブル６０を用いたイーサフレームの中継機能を備えている。イーサフレームの中継機能は、後述するように、端末がデフォルトルータ（デフォルトゲートウェイ）間で移動した時に使用される。
【００８８】
例えば、図１２において、端末２ａが、同一のサブネットワークに属したセグメント３ａからセグメント３ｂまたは３ｃに移動した場合、ルータ１０Ａは、第１実施例のルータ１０と同様の動作を行う。端末２ａが、サブネットワーク３Ａに属したセグメント３ａから、別のサブネットワーク３Ｂに属したセグメント３ｄ〜３ｆに移動した場合、異なるデフォルトルータ間（サブネットワーク間）の端末移動になるため、ルータ１０Ａ、１０Ｂには、第１実施例にはない特殊な機能が必要となる。
【００８９】
図１６は、１０Ａ、１０Ｂが実行するパケット送受信処理ルーチン２００Ｘのフローチャートを示す。
パケット送受信処理ルーチン２００Ｘでは、受信フレームに付された宛先ＭＡＣアドレスを判定し（２０１）、宛先ＭＡＣアドレスが自ルータＭＡＣアドレスと一致していれば、上記フレームの受信ポートを判定し（２１０）、以下、第１実施例のパケット送受信処理ルーチン２００と同様の処理ステップ２１１〜２２０を実行する。
【００９０】
受信フレームに付された宛先ＭＡＣアドレスが自ルータＭＡＣアドレスと一致しなかった場合は、ＭＡＣフレーム転送処理２５０を実行する。ＭＡＣフレーム転送処理２５０では、図１７に示すように、ＭＡＣ転送テーブル６０から、ＭＡＣアドレス６１が上記受信フレームの送信元ＭＡＣアドレスに一致するエントリを検索する（２５１）。ＭＡＣ転送テーブル６０に送信元ＭＡＣアドレスに一致するエントリが未登録の場合は、図１８で後述するルータ間端末移動処理２７０を実行する。
【００９１】
ＭＡＣ転送テーブル６０に送信元ＭＡＣアドレスに一致するエントリが登録済みの場合は、ＭＡＣ転送テーブル６０から、ＭＡＣアドレス６１が上記受信フレームの宛先ＭＡＣアドレスに一致するエントリを検索する（２５２）。宛先ＭＡＣアドレスに一致するエントリがあった場合は、該エントリのセグメント識別子６２が指定する出力ポートに受信フレーム（ＭＡＣフレーム）を転送する（２５６）。
【００９２】
例えば、ルータ１０Ａをデフォルトルータとする端末２ａが、ルータ１０Ｂに収容されたセグメント３ｄに移動し、デフォルトルータを宛先ＭＡＣアドレスとするＭＡＣフレームを送信した場合、もし、端末２ａのエントリがＭＡＣ転送テーブルに登録済みであれば、上記ステップ２５５で、受信ＭＡＣフレームが回線２ｘ宛に転送される。
【００９３】
ＭＡＣ転送テーブル６０に宛先ＭＡＣアドレスに一致するエントリが未登録の場合は、受信フレームがブロードキャストフレームか否かを判定し（２５３）、ブロードキャストフレームでなければ、エラー情報を記録し（２５７）、受信フレームを廃棄して（２５８）、このルーチンを終了する。
【００９４】
受信フレームがブロードキャストフレームの場合は、デフォルトルータ管理サーバ８に、上記受信フレームの送信元ＭＡＣアドレスと対応するデフォルトルータを問合せ（２５４）、デフォルトルータの接続セグメントに受信フレーム（ＭＡＣフレーム）を転送する（２５５）。
【００９５】
ルータ間端末移動処理２７０は、ＭＡＣ転送テーブル６０に受信フレームの送信元ＭＡＣアドレスが未登録の時、送信元端末が他のサブネットワークから移動して来たものとの判断に基づいて実行される。
ルータ間端末移動処理２７０では、図１８に示すように、デフォルトルータ管理サーバ８に、上記受信フレームの送信元ＭＡＣアドレスと対応するデフォルトルータを問合せる（２７１）。デフォルトルータ管理サーバ８からの応答によって、デフォルトルータ管理テーブル８０に上記送信元ＭＡＣアドレスと対応するエントリが未登録と判った場合は（２７２）、エラー情報を記録し（２７５）、受信フレームを廃棄して（２７６）、このルーチンを終了する。
【００９６】
デフォルトルータ管理サーバ８から、上記送信元ＭＡＣアドレスと対応するデフォルトルータの回答があった場合は、デフォルトルータの接続セグメントに受信フレーム（ＭＡＣフレーム）を転送し（２７３）、ＭＡＣ管理テーブル６０に上記送信元ＭＡＣアドレスと対応するエントリを登録して（２７４）、このルーチンを終了する。
【００９７】
上記ＭＡＣ転送テーブル６０への新たなエントリの登録によって、同一端末からその後に受信するＭＡＣフレームは、デフォルトルータ管理サーバへのデフォルトルータの問合せを行うことなく、送信元端末のデフォルトルータに転送することが可能となる。
【００９８】
例えば、図１２のネットワークにおいて、ルータ１０Ａをデフォルトルータ（デフォルトゲートウェイ）とする端末２ａが、セグメント３ａからセグメント３ｄに移動し、ルータ１０ＡのＭＡＣアドレスを宛先とするＭＡＣフレームをセグメント３ｄに送信した場合、ルータ１０Ｂは、ＭＡＣフレーム転送処理２５０とルータ間端末移動処理２７０を実行し、受信ＭＡＣフレームをデフォルトルータ管理サーバ８から通知された上記端末２ａのデフォルトルータ１０Ａとの接続セグメント、この例では回線３ｘの接続ポートに転送することになる。
【００９９】
また、ステップ２７４で、ＭＡＣ転送テーブル６０に端末２ａ用のエントリを登録したことによって、その後に端末２ａが送信したＭＡＣフレームをＭＡＣフレーム転送処理２５０において回線３ｘの接続ポートに転送することになる。
従って、セグメント３ａで端末２ｂと通信していた端末２ａが、移動先のブロードキャストセグメント３ｄで端末２ｂとの通信する場合でも、ユーザは、端末２ａの接続セグメントが変ったことを意識することなく、従前と同様の手順で通信を開始できる。
【０１００】
尚、第２実施例においては、ルータ１０Ａ（１０Ｂ）は、自分のサブネットワーク３Ａに所属した端末以外に、ルータ１０Ｂ（１０Ａ）をデフォルトルータとする移動端末からもＡＲＰ要求メッセージを受信する場合がある。例えば、図１２のネットワークにおいて、端末２ｄが、移動先のセグメント３ｃで、端末２ｅのＩＰアドレスを指定したＡＲＰ要求メッセージをブロードキャストした場合、ルータ１０Ａは、受信したＡＲＰ要求メッセージをルータ１０Ｂに転送し、ルータ１０Ｂに代理応答させる必要がある。
【０１０１】
このようなＡＲＰ要求メッセージのルータ間転送を実現するためには、例えば、図８に示したＡＲＰ処理ルーチン４００において、ステップ４０１で、受信メッセージの送信元端末が端末管理テーブルに未登録の端末と判明した時、受信メッセージの宛先アドレスがブロードキャストアドレス（受信メッセージがＡＲＰ要求メッセージ）の場合、図１８に示したルータ間の端末移動処理２７０と同様の処理を実行し、宛先アドレスがブロードキャストアドレス以外の個別の端末アドレスを示していた場合（受信メッセージが応答メッセージの場合）は、更に宛先アドレスがＭＡＣ転送テーブルに登録済みか否かを判定し、登録済みであれば、登録されたセグメントに受信フレームを転送するようにすればよい。
【０１０２】
このようにすれば、ルータ１０Ａは、端末２ｄが送信したＡＲＰ要求をルータ１０ＢにＭＡＣ転送でき、ルータ１０Ｂが宛先端末２ｅの代理で生成した応答メッセージを回線３ｘから受信した時、これをＡＲＰ要求メッセージの送信元である端末２ｄに転送することが可能となる。
【０１０３】
上述した第２実施例によれば、ルータ１０Ａ、１０Ｂが、回線３ｘを介して互いに相手ルータ宛のＭＡＣフレームを送受信する機能を備えたことによって、図１２に実線で示したマルチセグメント構造のサブネットワーク３Ａ、３Ｂの範囲を破線で示した範囲にまで実質的に拡張することが可能となる。
【０１０４】
尚、第２実施例のルータ１０Ａ、１０Ｂは、外部のサブネットワークに対しては、互いに独立したルータとして機能する。例えば、サブネットワーク５ａに経路情報を配布する場合、ルータ１０Ａは、内部サブネットワーク３Ａのアドレス「１９２．１６８．０．０／２４」と、ルータ１０Ａに接続されたサブネットワーク５ａ以外の外部サブネットワーク（５ｂ〜５ｎ）のサブネットアドレスを配布する。
【０１０５】
同様に、ルータ１０Ｂは、内部サブネットワーク３Ａのアドレス「１９２．１６８．１．１／２４」と、ルータ１０Ｂに接続されたサブネットワーク５ａ以外の外部サブネットワーク（５ｂ〜５ｎ）のサブネットアドレスを配布する。これは、サブネットワークに属する端末が、他方のルータが収容するブロードキャストセグメントに移動した場合も不変である。
このように、端末の物理的な位置に関係なく、経路情報を常にサブネットワーク単位で扱うことによって、経路制御機能にかける負担を低減できる。
【０１０６】
以上の実施例では、ルータ１０が、マルチセグメントタイプの内部サブネットワークを介して端末を収容しているが、本発明のルータは、端末接続用の内部サブネットワークとして、マルチセグメントタイプの内部サブネットワークの他に、単一セグメントタイプの通常の内部サブネットワークを備えてもよい。但し、後者の内部サブネットワークに所属する端末は、外部サブネットワークに接続された端末と同様に扱われるため、本発明による端末移動の利点を享受することはできない。
【０１０７】
【発明の効果】
以上で説明したように、本発明によれば、一つのサブネットワークを複数のブロードキャストセグメントで構成し、パケット転送装置で各端末と接続セグメントとの対応関係をルータが自動的に管理することによって、端末ＩＰアドレスやデフォルト装置アドレスなどの設定値を変更することなく、セグメントを越えた端末の移動を許容することが可能になる。
【図面の簡単な説明】
【図１】本発明のルータが適用されるネットワーク構成の１例を示す概略図。
【図２】本発明によるルータ１０の第１実施例を示すブロック構成図。
【図３】ルータ１０が備える端末管理テーブル３０の内容を示す図。
【図４】ルータ１０が備える経路テーブル４０の内容を示す図。
【図５】ルータ１０が備えるＡＲＰテーブル５０の内容を示す図。
【図６】ＤＨＣサーバ６による端末へのＩＰアドレスの割当てシーケンスを示す図。
【図７】イーサフレームのフォーマットを示す図。
【図８】ルータ１０が実行するＡＲＰ処理ルーチン４００の１実施例を示すフローチャート。
【図９】ルータ１０が実行するパケット送受信処理ルーチン２００の１実施例を示すフローチャート。
【図１０】図９におけるＩＰパケット転送処理２２０の詳細を示すフローチャート。
【図１１】マルチセグメント構造のサブネットワークを大規模化するのみ好適なルータ構造の１例を示す図。
【図１２】本発明によるルータが適用されるネットワーク構成の他の例を示す概略図。
【図１３】本発明によるルータ１０の第２実施例を示すブロック構成図。
【図１４】第２実施例のルータ１０が備えるＭＡＣ転送テーブル６０の内容を示す図。
【図１５】図１２におけるデフォルトルータ管理サーバ８が備えるデフォルトルータ管理テーブルの内容を示す図。
【図１６】第２実施例のルータ１０が実行するパケット送受信処理ルーチン２００Ｘのフローチャート。
【図１７】図１６におけるＭＡＣフレーム転送処理２５０の詳細を示すフローチャート。
【図１８】図１６におけるルータ間端末移動処理２７０の詳細を示すフローチャート。
【符号の説明】
１０：ルータ、３、３Ａ、３Ｂ：内部サブネットワーク、
３ａ〜３ｆ：ブロードキャストセグメント、４ａ〜４ｎ：外部サブネット接続セグメント、５ａ〜５ｎ：外部サブネットワーク、６：ＤＨＣＰサーバ、
８：デフォルトルータ管理サーバ、１０：ルータ、２０：ポート管理テーブル、３０：端末管理テーブル、４０：経路テーブル、５０：ＡＲＰテーブル、
６０：ＭＡＣ転送テーブル、２００、２００Ｘ：パケット送受信処理ルーチン、４００：ＨＤＣＰリレー処理ルーチン、４００：ＡＲＰ処理ルーチン。
【図１】
2004193844.tif 000003
【図２】
2004193844.tif 000004
【図３】
2004193844.tif 000005
【図４】
2004193844.tif 000006
【図５】
2004193844.tif 000007
【図６】
2004193844.tif 000008
【図７】
2004193844.tif 000009
【図８】
2004193844.tif 000010
【図９】
2004193844.tif 000011
【図１０】
2004193844.tif 000012
【図１１】
2004193844.tif 000013
【図１２】
2004193844.tif 000014
【図１３】
2004193844.tif 000015
【図１４】
2004193844.tif 000016
【図１５】
2004193844.tif 000017
【図１６】
2004193844.tif 000018
【図１７】
2004193844.tif 000019
【図１８】
2004193844.tif 000020