(57)【特許請求の範囲】
【請求項１】
ＬＡＮをバックボーンネットワークに接続するゲートウェイスイッチ装置と、前記バックボーンネットワークに接続されたコントローラ装置と、を備える通信システムであって、
前記ゲートウェイスイッチ装置は、
自装置が収容するＬＡＮに所属する端末の通信に応じて、宛先の端末のネットワーク上の位置情報を学習するとともに、学習した前記位置情報を前記コントローラ装置に学習させる第１学習部と、
自装置以外のゲートウェイスイッチ装置に収容されるＬＡＮに所属する端末の位置情報を、前記コントローラ装置から取得する位置情報リクエスト部と、
を備え、
前記コントローラ装置は、
前記ゲートウェイスイッチ装置から送信された学習情報に基づいて各ＬＡＮに所属する端末の位置情報を学習する第２学習部と、
前記ゲートウェイスイッチ装置の要求に応じて、前記要求に応じた位置情報を前記ゲートウェイスイッチ装置に提供する位置情報提供部と、
前記第２学習部が前記ゲートウェイスイッチ装置によって学習させられた位置情報を、当該ゲートウェイスイッチ装置と同じグループに所属する他のゲートウェイスイッチ装置と共有する位置情報共有部と、
を備え、
前記位置情報共有部は、前記学習情報の受信を契機に前記位置情報を送信する、
通信システム。
【請求項２】
前記第２学習部は、学習する対象の端末に応じて決定される領域に前記端末の位置情報を記憶し、
前記位置情報提供部は、位置情報を要求された端末に応じた領域から前記端末の位置情報を取得して提供する、
請求項１に記載の通信システム。
【請求項３】
ＬＡＮをバックボーンネットワークに接続するゲートウェイスイッチ装置と、前記バックボーンネットワークに接続されたコントローラ装置と、を備える通信システムにおける、前記ＬＡＮに所属する端末の位置を学習する端末位置学習方法であって、
前記ゲートウェイスイッチ装置が、
自装置が収容するＬＡＮに所属する端末の通信に応じて、宛先の端末のネットワーク上の位置情報を学習するとともに、学習した前記位置情報を前記コントローラ装置に学習させる第１学習ステップと、
自装置以外のゲートウェイスイッチ装置に収容されるＬＡＮに所属する端末の位置情報を、前記コントローラ装置から取得する位置情報取得ステップと、
前記コントローラ装置が、
前記ゲートウェイスイッチ装置から送信された学習情報に基づいて各ＬＡＮに所属する端末の位置情報を学習する第２学習ステップと、
前記ゲートウェイスイッチ装置の要求に応じて、前記要求に応じた位置情報を前記ゲートウェイスイッチ装置に提供する位置情報提供ステップと、
前記第２学習ステップで前記ゲートウェイスイッチ装置によって学習させられた位置情報を、当該ゲートウェイスイッチ装置と同じグループに所属する他のゲートウェイスイッチ装置と共有する位置情報共有ステップと、
を有し、
前記位置情報共有ステップでは、前記学習情報の受信を契機に前記位置情報を送信する、
端末位置学習方法。
【請求項４】
ＬＡＮをバックボーンネットワークに接続するゲートウェイスイッチ装置に接続されたコントローラ装置であって、
前記ゲートウェイスイッチ装置から送信された学習情報に基づいて各ＬＡＮに所属する端末の位置情報を学習する学習部と、
前記ゲートウェイスイッチ装置の要求に応じて、前記要求に応じた位置情報を前記ゲートウェイスイッチ装置に提供する位置情報提供部と、
前記学習部が前記ゲートウェイスイッチ装置によって学習させられた位置情報を、当該ゲートウェイスイッチ装置と同じグループに所属する他のゲートウェイスイッチ装置と共有する位置情報共有部と、
を備え、
前記位置情報共有部は、前記学習情報の受信を契機に前記位置情報を送信する、
コントローラ装置。
【請求項５】
請求項４に記載のコントローラ装置としてコンピュータを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レイヤ２ネットワークにおけるＭＡＣアドレスの学習方法に関する。
【背景技術】
【０００２】
従来、パケット転送方式のネットワークでは、フレームをレイヤ３のプロトコル層でスイッチングするＩＰ（Internet Protocol）ルータが主に利用されている。従来のＩＰルータは、インターネット網との接続に必要なＢＧＰ（Border Gateway Protocol）をはじめとする多くのルーティング機能を有し、極めて多機能な装置となっている。しかしながら、通信キャリア網内部でのフレーム転送を実現する場合、ルータ装置においてＢＧＰのようなインターネットルーティングプロトコルの実装は必ずしも必要ではない。そのため、このような必ずしも必要でないプロトコル機能が実装されることによって、従来のルータ装置では、多機能であるが故の維持コストの増大や、保守員の訓練コストの増大などが問題となる場合があった。
【０００３】
この問題を解決するための一つの方法として、フレームをレイヤ３のプロトコル層でスイッチングするＩＰ網の代わりに、レイヤ２のプロトコル層でスイッチングするイーサネット（登録商標）網等のレイヤ２スイッチ網を用いてパケット転送ネットワークを構成する方法がある。このようなレイヤ２スイッチ網では、網を形成するレイヤ２スイッチにおいて、ＢＧＰ等のレイヤ３以上のプロトコル層で実現される機能が不要となる。そのため、フレームの転送機能をレイヤ３以上のプロトコル層からレイヤ２のプロトコル層にシフトさせることができ、レイヤ３以上のプロトコル層にフレーム転送以外の通信機能を持たせることが可能となる。
【０００４】
元来、イーサネットはＬＡＮ（Local Area Network）と呼ばれる小規模なネットワークを構成するために開発されてきた技術であるが、近年では、キャリア網等の大規模なネットワークへの適用が可能なようにいくつかの機能拡張がなされている。その一つに、ＰＢＢ（Provider Backbone Bridge）方式がある（非特許文献１）。ＰＢＢ方式は、ＭＡＣアドレスを階層化し、レイヤ２スイッチ網内のフレーム転送を網内転送専用のＭＡＣアドレスで実現する方式である。このＰＢＢ方式により、各ＬＡＮに所属する端末のＭＡＣ（Media Access Control）アドレスの学習は、イーサネット網とＬＡＮとを接続するゲートウェイスイッチ装置のみが行えばよくなるためイーサネット網を構成する各スイッチのリソース消費を抑えることが可能となる。
【０００５】
図１４は、従来のイーサネットスイッチ網９００の構成の概略を示す図である。従来のイーサネットスイッチ網では、イーサネットスイッチ網を構成する各イーサネットスイッチが、バックボーンネットワーク１０に収容される全てのノードのＭＡＣアドレスを学習する必要があった。具体的には、図１４のイーサネットスイッチ網９００を構成するイーサネットスイッチのそれぞれが、他の全てのイーサネットスイッチ、全てのゲートウェイスイッチ装置３０及び全ての端末５０のＭＡＣアドレスと、それらのＭＡＣアドレスに応じた転送先のＭＡＣアドレスとの対応関係を学習し、保持し続ける必要があった。これは、イーサネットスイッチ網において、ＩＰルーティングの経路集約に相当する概念が存在しないことによる。
【０００６】
これに対してＰＢＢ方式では、ＭＡＣアドレスはバックボーンネットワーク１０とＬＡＮ２０とに階層化して学習される。具体的には、ＰＢＢ方式では、バックボーンネットワーク１０側に送出されるフレームにＢ−ＭＡＣヘッダと呼ばれるフレーム転送用のＭＡＣヘッダが付与される。このＢ−ＭＡＣヘッダの付加及び削除は、バックボーンネットワーク１０のエッジを構成するゲートウェイスイッチ装置３０によって行われる。これにより、バックボーンネットワーク１０内では、Ｂ−ＭＡＣアドレスのみでフレームを転送することが可能となる。そのため、ＰＢＢ方式では、イーサネットスイッチが各端末５０のＭＡＣアドレスごとに転送先のＭＡＣアドレスを学習する必要がなくなり、バックボーンネットワーク１０のスケーラビリティを向上させることができる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Virtual Bridged Local Area Networks - Amendment 6: Provider Backbone Bridges, P802.1ah/D3.5, DRAFT Amendment to IEEE Std 802.1Q -REV, April 19, 2007
【非特許文献２】Y.Rekhter, T.Li, S.Hares, A Border Gateway Protocol 4 (BGP-4), Network Working Group, Request for Comments:4271, Obsoletes:1771, Category: Standards Track, January 2006
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、ＰＢＢ方式によってＭＡＣアドレスの学習が階層化されたとしても、全てのゲートウェイスイッチ装置３０と端末５０との対応関係を各ゲートウェイスイッチ装置３０が学習する必要性は依然として残る。このような学習機能が各ゲートウェイスイッチ装置３０に必要となることは、バックボーンネットワーク１０のスケーラビリティを低下させる要因となりうる。具体的には、学習済みでない端末５０の対応関係の学習が行われる場合、ネットワーク全体に探索メッセージ（例えばＡＲＰフレーム）がブロードキャストされる。この探索メッセージのブロードキャストによるネットワークへの影響は、ネットワークの規模に応じて大きくなる。そのため、ネットワークの規模が大きくなるほど、この探索メッセージによるトラフィックの増加をいかに抑制するか重要な課題となる。
【０００９】
例えば図１４において、ＬＡＮ２０−１に所属する端末５０−１からＬＡＮ２０−２に所属する端末５０−２を宛先とする探索メッセージが送信されたとする。この場合、ゲートウェイスイッチ装置３０−１は、受信した探索メッセージをバックボーンネットワーク１０側にフラッディングする。ゲートウェイスイッチ装置３０−２、３０−３及び３０−４は、ゲートウェイスイッチ装置３０−１からフラッディングされた探索メッセージを自装置のＬＡＮ２０側にフラッディングする。その結果、ＬＡＮ２０−２内の端末５０−２が探索メッセージに対して応答する。端末５０−２は、応答メッセージをゲートウェイスイッチ装置３０−１に送信する。この応答により、ゲートウェイスイッチ装置３０−１は端末５０−２と、ゲートウェイスイッチ装置３０−２との対応関係を学習する。以降、ゲートウェイスイッチ装置３０−１は、端末５０−２宛てのフレームを、ゲートウェイスイッチ装置３０−２を宛先として転送する。
【００１０】
この場合、端末５０−２とゲートウェイスイッチ装置３０−２との対応関係学習できたのはゲートウェイスイッチ装置３０−１とゲートウェイスイッチ装置３０−２自身である。すなわち、この時点ではまだ、ゲートウェイスイッチ装置３０−３及び３０−４は、端末５０−２がゲートウェイスイッチ装置３０−２の配下に収容されていることを知らない。そのため、次に例えばＬＡＮ２０−３に所属する端末から端末５０−２宛ての探索メッセージが送信された場合、再びバックボーンネットワーク１０側に探索メッセージがフラッディングされることとなる。このようなフラッディングは、バックボーンネットワーク１０に接続されるＬＡＮ２０の数の増加に応じて多くなる。そのため、ネットワークの規模が大きくなるほど、この探索メッセージによるネットワーク帯域への影響が増大する。
【００１１】
上記事情に鑑み、本発明は、レイヤ２スイッチ網において、ＭＡＣアドレスの学習の際にフラッディングされる探索メッセージの増大を抑制することが可能な技術を提供することを目的としている。
【課題を解決するための手段】
【００１２】
本発明の一態様は、ＬＡＮをバックボーンネットワークに接続するゲートウェイスイッチ装置と、前記バックボーンネットワークに接続されたコントローラ装置と、を備える通信システムであって、前記ゲートウェイスイッチ装置は、自装置が収容するＬＡＮに所属する端末の通信に応じて、宛先の端末のネットワーク上の位置情報を学習するとともに、学習した前記位置情報を前記コントローラ装置に学習させる第１学習部と、自装置以外のゲートウェイスイッチ装置に収容されるＬＡＮに所属する端末の位置情報を、前記コントローラ装置から取得する位置情報リクエスト部と、を備え、前記コントローラ装置は、各ＬＡＮに所属する端末の位置情報を学習する第２学習部と、前記ゲートウェイスイッチ装置の要求に応じて、前記要求に応じた位置情報を前記ゲートウェイスイッチ装置に提供する位置情報提供部と、を備える通信システムである。
【００１３】
本発明の一態様は、上記の通信システムであって、前記第２学習部は、学習する対象の端末に応じて決定される領域に前記端末の位置情報を記憶し、前記位置情報提供部は、位置情報を要求された端末に応じた領域から前記端末の位置情報を取得して提供する。
【００１４】
本発明の一態様は、上記の通信システムであって、前記第２学習部は、前記第１学習部によって学習させられた位置情報を、前記第１学習部を有するゲートウェイスイッチ装置と同じグループに所属する他のゲートウェイスイッチ装置と共有する位置情報共有部をさらに備える。
【００１５】
本発明の一態様は、ＬＡＮをバックボーンネットワークに接続するゲートウェイスイッチ装置と、前記バックボーンネットワークに接続されたコントローラ装置と、を備える通信システムにおける、前記ＬＡＮに所属する端末の位置を学習する端末位置学習方法であって、前記ゲートウェイスイッチ装置が、自装置が収容するＬＡＮに所属する端末の通信に応じて、宛先の端末のネットワーク上の位置情報を学習するとともに、学習した前記位置情報を前記コントローラ装置に学習させる第１学習ステップと、自装置以外のゲートウェイスイッチ装置に収容されるＬＡＮに所属する端末の位置情報を、前記コントローラ装置から取得する位置情報取得ステップと、前記コントローラ装置が、各ＬＡＮに所属する端末の位置情報を学習する第２学習ステップと、前記ゲートウェイスイッチ装置の要求に応じて、前記要求に応じた位置情報を前記ゲートウェイスイッチ装置に提供する位置情報提供ステップと、を有する端末位置学習方法である。
【００１６】
本発明の一態様は、ＬＡＮをバックボーンネットワークに接続するゲートウェイスイッチ装置であって、自装置が収容するＬＡＮに所属する端末の通信に応じて、宛先の端末のネットワーク上の位置情報を学習するとともに、学習した前記位置情報を前記宛先の端末に応じた他のゲートウェイスイッチ装置に学習させる位置情報学習部と、自装置以外のゲートウェイスイッチ装置に収容されるＬＡＮに所属する端末の位置情報を、前記端末に応じて決定される他のゲートウェイスイッチ装置から取得する位置情報リクエスト部と、を備えるゲートウェイスイッチ装置である。
【００１７】
本発明の一態様は、ＬＡＮをバックボーンネットワークに接続するゲートウェイスイッチ装置に接続されたコントローラ装置であって、各ＬＡＮに所属する端末の位置情報を学習する学習部と、前記ゲートウェイスイッチ装置の要求に応じて、前記要求に応じた位置情報を前記ゲートウェイスイッチ装置に提供する位置情報提供部と、を備えるコントローラ装置である。
【００１８】
本発明の一態様は、上記のゲートウェイスイッチ装置としてコンピュータを機能させるためのコンピュータプログラムである。
【００１９】
本発明の一態様は、上記のコントローラ装置としてコンピュータを機能させるためのコンピュータプログラムである。
【発明の効果】
【００２０】
本発明により、レイヤ２スイッチ網において、ＭＡＣアドレスの学習の際にフラッディングされる探索メッセージの増大を抑制することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】第１実施形態の通信システム１００の概略を示す図である。
【図２】位置情報の具体例を示す図である。
【図３】第１実施形態のゲートウェイスイッチ装置３の機能構成の具体例を示す図である。
【図４】第１実施形態の通信システム１００における位置情報の学習の流れを示すシーケンス図である。
【図５】第１実施形態の通信システム１００のシステム構成の具体例を示す図である。
【図６】第２実施形態の通信システム１００ａの概略を示す図である。
【図７】第２実施形態のコントローラ装置６の機能構成の具体例を示すブロック図である。
【図８】第２実施形態の通信システム１００ａにおける位置情報の学習の流れを示すシーケンス図である。
【図９】第２実施形態の通信システム１００ａのシステム構成の具体例を示す図である。
【図１０】第３実施形態の通信システム１００ｂの概略を示す図である。
【図１１】ゲートウェイグループの態様の他の具体例を示す図である。
【図１２】第３実施形態のコントローラ装置６ｂの機能構成の具体例を示すブロック図である。
【図１３】第３実施形態の通信システム１００ｂのシステム構成の具体例を示す図である。
【図１４】従来のイーサネットスイッチ網９００の構成の概略を示す図である。
【発明を実施するための形態】
【００２２】
＜第１実施形態＞
図１は第１実施形態の通信システム１００の概略を示す図である。通信システム１００は、１つのバックボーンネットワーク１と、４つのＬＡＮ２（ＬＡＮ２−１〜２−４）と、４つのゲートウェイスイッチ装置３（ゲートウェイスイッチ装置３−１〜３−４）と、を備え、各ＬＡＮ２をレイヤ２プロトコルで接続する広域イーサネットを実現する。バックボーンネットワーク１は一以上のレイヤ２スイッチ（図示せず）によって構成されるＰＢＢ方式のネットワークである。具体的には、各レイヤ２スイッチは受信フレームのＢ−ＭＡＣヘッダに基づいてフレームを宛先のレイヤ２スイッチに転送する。ゲートウェイスイッチ装置３は、バックボーンネットワーク１のエッジに位置するレイヤ２スイッチであり、自装置が収容するＬＡＮ２との間でフレームを転送することにより、ＬＡＮ２をバックボーンネットワーク１に接続する。具体的には、ゲートウェイスイッチ装置３は、ＬＡＮ２側からバックボーンネットワーク１側に転送するフレームに対してＢ−ＭＡＣヘッダを付加し、バックボーンネットワーク１側からＬＡＮ２側に転送するフレームからＢ−ＭＡＣヘッダを削除する。
【００２３】
このような、広域イーサネットをＰＢＢ方式で実現する通信システム１００において、各ゲートウェイスイッチ装置３は各ＬＡＮ２に所属する端末の通信に応じて、通信の宛先となる端末のネットワーク上の位置情報を取得する。具体的には、位置情報には、端末と、端末が所属するＬＡＮ２を収容するゲートウェイスイッチ装置３との対応を示す情報が少なくとも含まれる。各ゲートウェイスイッチ装置３は、それぞれ位置情報記憶部３１を備え、取得した位置情報を位置情報記憶部３１に記憶させることで、端末の位置情報を学習する。
【００２４】
図２は、位置情報の具体例を示す図である。以下、図１及び図２を参照して、ゲートウェイスイッチ装置３による位置情報の学習の概略について説明する。
【００２５】
例えば、ＬＡＮ２−１に所属する端末５−１がＬＡＮ２−２に所属する端末５−２のＭＡＣアドレスを取得するために、端末５−２のＩＰアドレスを宛先とするＡＲＰ（Address Resolution Protocol）フレームを送出した場合を考える。なお、簡単のため、ここでは、いずれのゲートウェイスイッチ装置３も、端末５−１及び端末５−２の位置情報を学習していないものと仮定する。この場合、まず、ＡＲＰフレームはゲートウェイスイッチ装置３−１によって受信される。ゲートウェイスイッチ装置３−１は、受信したＡＲＰフレームにＢ−ＭＡＣヘッダを付加してバックボーンネットワーク１側にブロードキャストする。ここで付加されるＢ−ＭＡＣヘッダには、ＡＲＰフレームの転送元であるゲートウェイスイッチ装置３−１のＭＡＣアドレスが含まれる。
【００２６】
ゲートウェイスイッチ装置３−１からブロードキャストされたＡＲＰフレームは、バックボーンネットワーク１を構成する全てのレイヤ２スイッチ（ゲートウェイスイッチ装置３を含む）によって受信される。ＡＲＰフレームを受信した各ゲートウェイスイッチ装置３は、受信したＡＲＰフレームのＢ−ＭＡＣヘッダ及びＭＡＣヘッダを参照し、ＡＲＰフレームを送信した端末５−１と、ＡＲＰフレームの転送元であるゲートウェイスイッチ装置３−１との対応関係を端末５−１の位置情報として学習する。具体的には、ゲートウェイスイッチ装置３−２〜３−４は、図２（Ａ）のような対応関係を示す位置情報を学習する。そして、各ゲートウェイスイッチ装置３は、Ｂ−ＭＡＣヘッダを削除したＡＲＰフレームを、それぞれが収容するＬＡＮ２側にブロードキャストする。その結果、ＡＲＰフレームの宛先である端末５−２のみがＡＲＰフレームを受信する。
【００２７】
端末５−２は、端末５−１に対して自装置のＭＡＣアドレスを応答するためのＡＲＰ応答フレームを生成してゲートウェイスイッチ装置３−２に返信する。ゲートウェイスイッチ装置３−２は、端末５−２から返信されたＡＲＰ応答フレームにＢ−ＭＡＣヘッダを付加してバックボーンネットワーク１側に送出することにより、ＡＲＰ応答フレームをゲートウェイスイッチ装置３−１に転送する。なお、この時点においてゲートウェイスイッチ装置３−２は端末５−１の位置情報を学習済みであり、Ｂ−ＭＡＣヘッダにおいてＡＲＰ応答フレームの転送先を指定することができる。そのため、ＡＲＰ応答フレームの送信時においてＡＲＰ応答フレームがブロードキャストされることはない。その結果、ゲートウェイスイッチ装置３−１のみがＡＲＰ応答フレームを受信する。
【００２８】
ゲートウェイスイッチ装置３−１は、受信したＡＲＰ応答フレームのＢ−ＭＡＣヘッダ及びＭＡＣヘッダを参照し、ＡＲＰ応答フレームを送信した端末５−２と、ＡＲＰ応答フレームの転送元であるゲートウェイスイッチ装置３−２との対応関係を端末５−２の位置情報として学習する。具体的には、ゲートウェイスイッチ装置３−１は、図２（Ｂ）のような対応関係を示す位置情報を学習する。そして、ゲートウェイスイッチ装置３−１は、Ｂ−ＭＡＣヘッダを削除したＡＲＰ応答フレームを、ＡＲＰ応答フレームの宛先である端末５−１を収容するＬＡＮ２側に転送する。その結果、ＡＲＰ応答フレームは端末５−１によって受信され、端末５−１は受信したＡＲＰ応答フレームから端末５−２のＭＡＣアドレスを取得する。
【００２９】
以上、ＰＢＢ方式におけるＭＡＣアドレスの学習方法の概略を説明したが、上記方法の学習のみでは、各ゲートウェイスイッチ装置３は、自装置のＬＡＮ側に収容された端末（以下、「収容端末」という。）については、通信先となる端末の位置情報を学習することができるが、他のゲートウェイスイッチ装置３の収容端末の通信先となる端末の位置情報を学習することはできない。そのため、各ゲートウェイスイッチ装置３は、収容端末から位置情報が学習されていない端末への通信が発生する度にＡＲＰフレームをブロードキャストすることとなってしまい、バックボーンネットワーク１の通信帯域を圧迫してしまう可能性がある。
【００３０】
そこで、第１実施形態のゲートウェイスイッチ装置３は、従来の学習手段を補完する新たな学習手段をさらに備えることによって上述の課題を解決する。以下、第１実施形態のゲートウェイスイッチ装置３の詳細について説明する。
【００３１】
図３は、第１実施形態のゲートウェイスイッチ装置３の機能構成の具体例を示す図である。ゲートウェイスイッチ装置３は、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、ゲートウェイスイッチ装置プログラムを実行する。ゲートウェイスイッチ装置３は、ゲートウェイスイッチ装置プログラムの実行によって位置情報記憶部３１、第１通信部３２、第２通信部３３、フレーム転送部３４、位置情報学習部３５及び位置情報リクエスト部３６を備える装置として機能する。なお、ゲートウェイスイッチ装置３の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されてもよい。ゲートウェイスイッチ装置プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。ゲートウェイスイッチ装置プログラムは、電気通信回線を介して送信されてもよい。
【００３２】
位置情報記憶部３１は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。位置情報記憶部３１は端末５の位置情報を記憶する。位置情報は、位置情報学習部３５によって取得される。
【００３３】
第１通信部３２は、自装置をバックボーンネットワーク１に接続する通信インターフェースである。
第２通信部３３は、自装置をＬＡＮ２に接続する通信インターフェースである。
【００３４】
フレーム転送部３４は、学習済みの位置情報に基づいて受信フレームの転送処理を行う。フレーム転送部３４が行う転送処理には、第１の転送処理と第２の転送処理とがある。第１の転送処理は、自装置に収容されるＬＡＮ２の間でフレームを転送する場合の転送処理である。第２の転送処理は、自装置に収容されるＬＡＮ２とバックボーンネットワーク１との間でフレームを転送する場合の転送処理である。フレーム転送部３４は、ＬＡＮ２側からバックボーンネットワーク１側にフレームを転送する場合、フレーム転送部３４はフレームにＢ−ＭＡＣヘッダを付加してバックボーンネットワーク１側に送出する。一方、バックボーンネットワーク１側からＬＡＮ２側にフレームを転送する場合、フレーム転送部３４は、フレームに付加されたＢ−ＭＡＣヘッダを削除してＬＡＮ２側に送出する。
【００３５】
位置情報学習部３５（第１学習部）は、異なるＬＡＮ２に収容される端末間の通信に応じて、各端末の位置情報を学習する。具体的には、位置情報学習部３５は従来方法で端末の位置情報を学習する機能に加え、学習した位置情報を当該端末に応じた他のゲートウェイスイッチ装置３に学習させる機能を有する。
【００３６】
位置情報リクエスト部３６は、学習済みでない端末の位置情報を、当該端末に応じた他のゲートウェイスイッチ装置３から取得する機能を有する。また、位置情報リクエスト部３６は、他のゲートウェイスイッチ装置３の要求に応じて、自装置に記憶されている位置情報を要求元のゲートウェイスイッチ装置３に送信する機能を有する。
【００３７】
図４は、第１実施形態の通信システム１００における位置情報の学習の流れを示すシーケンス図である。なお以下の説明では、ＡＲＰフレームの送信元である端末を送信元端末と称し、ＡＲＰフレームの宛先となる端末を宛先端末と称する。また以下の説明では、送信元端末が所属するＬＡＮ２を収容するゲートウェイスイッチ装置３を「転送元」のゲートウェイスイッチ装置３と称し、宛先端末が所属するＬＡＮ２を収容するゲートウェイスイッチ装置３を「転送先」のゲートウェイスイッチ装置３と称する。
【００３８】
この場合、まず送信元端末が転送元のゲートウェイスイッチ装置３に対してＡＲＰフレームを送信する（ステップＳ２０１）。転送元のゲートウェイスイッチ装置３は、送信元端末から送信されたＡＲＰフレームを受信すると、学習済みの位置情報を検索し（ステップＳ２０２）、宛先端末の位置情報が学習済みであるか否かを判定する。ここで、宛先端末の位置情報が学習済みでない場合、転送元のゲートウェイスイッチ装置３は、宛先端末に応じた他のゲートウェイスイッチ装置３に対して宛先端末の位置情報を要求する（ステップＳ２０３）。
【００３９】
例えば、ゲートウェイスイッチ装置３は、宛先端末のＩＰアドレスを所定の識別器に入力することによって、位置情報の要求先となる他のゲートウェイスイッチ装置３の識別情報を取得する。この識別器は、ＩＰアドレスの入力に対して、いずれかの他のゲートウェイスイッチ装置３の識別情報を出力する機能を有すればどのような手段で実現されてもよい。ここでは簡単のため、上記識別器は、ＩＰアドレスの入力に対して、他のいずれかのゲートウェイスイッチ装置３のＭＡＣアドレスを出力する関数であると仮定する。位置情報リクエスト部３６は、識別器から出力されたＭＡＣアドレスが示すゲートウェイスイッチ装置３を、位置情報の要求先のゲートウェイスイッチ装置３として選択する。要求先のゲートウェイスイッチ装置３は、宛先端末の位置情報を学習済みである場合には宛先端末の位置情報を要求元（転送元）のゲートウェイスイッチ装置３に応答し、宛先端末の位置情報を学習していない場合には宛先端末の位置情報を保持していないことを要求元（転送元）のゲートウェイスイッチ装置３に応答する。
【００４０】
続いて、転送元のゲートウェイスイッチ装置３はＡＲＰフレームにＢ−ＭＡＣヘッダを付加する（ステップＳ２０４）。このとき転送元のゲートウェイスイッチ装置３は、宛先端末の位置情報が自装置又は要求先のゲートウェイスイッチ装置３から取得可能である場合には、位置情報が示すゲートウェイスイッチ装置３をＡＲＰフレームの転送先とするＢ−ＭＡＣヘッダを付加する。一方、宛先端末の位置情報が自装置及び要求先のゲートウェイスイッチ装置３のいずれからも取得できない場合には、ブロードキャストアドレスを転送先とするＢ−ＭＡＣヘッダを付加する。ゲートウェイスイッチ装置３は、Ｂ−ＭＡＣヘッダが付加されたＡＲＰフレームをバックボーンネットワーク１側に送出する（ステップＳ２０５）。これにより、ＡＲＰフレームは、宛先端末の位置情報が取得可能である場合には転送先のゲートウェイスイッチ装置３にユニキャストされ、宛先端末の位置情報が取得できない場合にはゲートウェイスイッチ装置３を含む全てのレイヤ２スイッチにブロードキャストされる。
【００４１】
続いて、転送先のゲートウェイスイッチ装置３は、受信したＡＲＰフレームのＢ−ＭＡＣヘッダ及びＭＡＣヘッダに基づいて送信元端末の位置情報を学習する（ステップＳ２０６）とともに、学習した位置情報（以下、「学習情報」という。）を他のゲートウェイスイッチ装置３に送信する（ステップＳ２０７及びＳ２０８）。ここで学習情報の送信先となる他のゲートウェイスイッチ装置３には、ステップＳ２０３と同様に宛先端末に応じたゲートウェイスイッチ装置３が選択される。学習情報を受信したゲートウェイスイッチ装置３は、学習情報を自装置の位置情報記憶部３１に記憶することで宛先端末の位置情報を学習する。
【００４２】
続いて、転送先のゲートウェイスイッチ装置３は、受信したＡＲＰフレームからＢ−ＭＡＣヘッダを削除する（ステップＳ２０８）。転送先のゲートウェイスイッチ装置３は、Ｂ−ＭＡＣヘッダが削除されたＡＲＰフレームを自装置が収容するＬＡＮ２側に転送する（ステップＳ２０９）。ここで、転送先のゲートウェイスイッチ装置３は、自装置が収容する全てのＬＡＮ２にＡＲＰフレームをブロードキャストしてもよいし、宛先端末の位置情報が学習済みであればＡＲＰフレームを宛先端末のみにユニキャストしてもよい。
【００４３】
続いて、宛先端末は、ＡＲＰフレームを受信すると、送信元端末に自装置のＭＡＣアドレスを応答するためのＡＲＰ応答フレームを生成する（ステップＳ２１０）。宛先端末は、生成したＡＲＰ応答フレームを送信端末宛てに送信する（ステップＳ２１１）。宛先端末から送信されたＡＲＰ応答フレームは、まず転送先のゲートウェイスイッチ装置３によって受信される。転送先のゲートウェイスイッチ装置３は、ステップＳ２０６において学習した位置情報に基づいて、転送元のゲートウェイスイッチ装置３を転送先とするＢ−ＭＡＣヘッダをＡＲＰ応答フレームに付加する（ステップＳ２１２）。転送先のゲートウェイスイッチ装置３は、Ｂ−ＭＡＣヘッダを付加したＡＲＰ応答フレームをバックボーンネットワーク１側に送出する（ステップＳ２１３）。これにより、ＡＲＰ応答フレームが転送元のゲートウェイスイッチ装置３にユニキャストされる。
【００４４】
続いて、転送元のゲートウェイスイッチ装置３は、受信したＡＲＰ応答フレームのＢ−ＭＡＣヘッダ及びＭＡＣヘッダに基づいて宛先端末の位置情報を学習する（ステップＳ２１４）とともに、学習した位置情報（学習情報）を他のゲートウェイスイッチ装置３に送信する（ステップＳ２１５）。ここで学習情報の送信先となる他のゲートウェイスイッチ装置３には、ＡＲＰ応答フレームの宛先である送信元端末に応じたゲートウェイスイッチ装置３が選択される。学習情報を受信したゲートウェイスイッチ装置３は、学習情報を自装置の位置情報記憶部３１に記憶することで送信元端末の位置情報を学習する。
【００４５】
続いて、転送元のゲートウェイスイッチ装置３は、受信したＡＲＰ応答フレームからＢ−ＭＡＣヘッダを削除する（ステップＳ２１６）。転送元のゲートウェイスイッチ装置３は、Ｂ−ＭＡＣヘッダが削除されたＡＲＰ応答フレームを自装置が収容するＬＡＮ２側に転送する（ステップＳ２１７）。
【００４６】
以上説明した学習方法によれば、ゲートウェイスイッチ装置３は、宛先端末に関する位置情報が自装置に存在しない場合には他のゲートウェイスイッチ装置３に位置情報を問い合わせ、新たな位置情報を学習した場合には学習した位置情報を他のゲートウェイスイッチ装置３に学習させることができる。このような学習機能を備えることにより、ゲートウェイスイッチ装置３は、バックボーンネットワーク１に対してＡＲＰフレームがブロードキャストされる頻度をより低減することができる。
【００４７】
具体的には、上述の学習方法では、あるゲートウェイスイッチ装置３によって学習された位置情報は、宛先端末のＩＰアドレスに応じて決定されるいずれかのゲートウェイスイッチ装置３にも学習される。その一方で、ゲートウェイスイッチ装置３は、宛先端末に関する位置情報が自装置に存在しない場合、宛先端末のＩＰアドレスに応じて決定されるゲートウェイスイッチ装置３に位置情報を問い合わせる。これはすなわち、ある端末の位置情報がいずれかのゲートウェイスイッチ装置３によって一旦学習されてしまえば、他のゲートウェイスイッチ装置３は、当該端末の位置情報を、当該端末のＩＰアドレスに応じて決定されるゲートウェイスイッチ装置３に問い合わせることで確実に取得することができるということである。そのため、バックボーンネットワーク１に対してＡＲＰフレームがブロードキャストされる頻度をより低減することが可能となる。
【００４８】
図５は、第１実施形態の通信システム１００のシステム構成の具体例を示す図である。図５の具体例に示される通信システム１００は、バックボーンネットワーク１を構成するイーサネットスイッチ４−１〜４−５と、バックボーンネットワーク１と各ＬＡＮ２−１１−１〜２−６１−２とを接続するゲートウェイスイッチ装置３（ゲートウェイスイッチ装置３−１１〜３−７０）と、を備える。各イーサネットスイッチ４は他の複数のイーサネットスイッチ４に接続されマルチパス構成のバックボーンネットワーク１を形成する。このようなマルチパス構成のネットワークにおける通信経路（転送経路）は、ＳＰＢ（Shortest Path Bridging）やＴＲＩＬＬ（Transparent Interconnection of Lots of Links）等の技術によって動的に制御される。また、各ＬＡＮ２とバックボーンネットワーク１との間では、各ゲートウェイスイッチ装置３がＰＢＢ方式に基づいてフレームを転送する。このような構成により、ゲートウェイスイッチ装置３を含むバックボーンネットワーク１内では、Ｂ−ＭＡＣヘッダに基づいてフレームが転送される。
【００４９】
イーサネットスイッチ４−１にはゲートウェイスイッチ装置３−１１〜３−３０が、イーサネットスイッチ４−２にはゲートウェイスイッチ装置３−３１〜３−５０が、イーサネットスイッチ４−３にはゲートウェイスイッチ装置３−５１〜３−７０が、それぞれ接続される。また、ゲートウェイスイッチ装置３−ｋ（１≦ｋ≦１０）のそれぞれには、ＬＡＮ２−ｋ−１〜２−ｋ−ｎｋ（ｎｋは１以上の整数）が接続される。同様に、ゲートウェイスイッチ装置３−６１には、ＬＡＮ２−６１−１及び２−６１−２が接続される。図５の例ではｎｋ＝２であるが、各ゲートウェイスイッチ装置３が収容するＬＡＮ２の数は任意である。さらに、ＬＡＮ２−１１−１には端末５−１１が接続され、ＬＡＮ２−６１−２には端末５−１２が接続される。各ゲートウェイスイッチ装置３は、自装置が収容するＬＡＮ２とバックボーンネットワーク１との間で転送されるフレームに対してＢ−ＭＡＣヘッダを付加又は削除することにより、バックボーンネットワーク１内におけるＰＢＢ方式でのフレームの転送を実現する。
【００５０】
なお、図５はあくまで通信システム１００の構成の一具体例を示すものであり、通信システム１００におけるイーサネットスイッチ４の数や各イーサネットスイッチ４に接続されるゲートウェイスイッチ装置３の数、各ゲートウェイスイッチ装置３に接続されるＬＡＮ２の数、各ＬＡＮ２に接続される端末５の数などは任意である。また、紙面の都合により図示していないが、イーサネットスイッチ４−４及び４−５には、イーサネットスイッチ４−１〜４−３と同様に任意の数のゲートウェイスイッチ装置３がそれぞれ接続されてもよい。また、ゲートウェイスイッチ装置３−２１〜３−６０やゲートウェイスイッチ装置３−６２〜３−７０についても、ゲートウェイスイッチ装置３−１１〜３−２０やゲートウェイスイッチ装置３−６１と同様に任意の数のＬＡＮがそれぞれ接続されてもよい。
【００５１】
以下、図５に示された通信システム１００の具体例を参照し、図４に示したフローチャートの各ステップにおける具体的な処理の内容について説明する。なお、以下の説明では、必要に応じてＡＲＰフレームの送信元であるゲートウェイスイッチ装置３−１１を送信側ゲートウェイスイッチ装置と記載し、ＡＲＰフレームの宛先であるゲートウェイスイッチ装置３−６１を宛先側ゲートウェイスイッチ装置と記載する。
【００５２】
（ステップＳ２０１）
まず、端末５−１１（送信元端末）が端末５−１２（宛先端末）のＭＡＣアドレスを取得するためのＡＲＰフレームを送信側ゲートウェイスイッチ装置３−１１に送信する。
【００５３】
（ステップＳ２０２）
ＡＲＰフレームを受信した送信側ゲートウェイスイッチ装置３−１１において、フレーム転送部３４は、ＡＲＰフレームの宛先である端末５−１２の位置情報を取得するため、学習済みの位置情報を検索する。例えば、送信側ゲートウェイスイッチ装置３−１１は、各端末の位置情報を、端末のＩＰアドレスをキーとするハッシュテーブルに記憶している。フレーム転送部３４は、端末５−１２のＩＰアドレスを検索キーとしてハッシュテーブルを検索する。検索キーがハッシュテーブルに登録されている場合、フレーム転送部３４は、検索キーに対応づけられた位置情報をハッシュテーブルから取得する。一方、検索キーがハッシュテーブルに登録されていない場合、フレーム転送部３４は、受信されたＡＲＰフレームを位置情報リクエスト部３６に出力する。
【００５４】
（ステップＳ２０３）
位置情報リクエスト部３６は、フレーム転送部３４から出力されたＡＲＰフレームから端末５−１２のＩＰアドレスを取得し、取得したＩＰアドレスに基づいて位置情報の要求先となるゲートウェイスイッチ装置３を識別する。具体的には、位置情報リクエスト部３６は、上述の識別器に端末５−１２のＩＰアドレスを入力することによって要求先のゲートウェイスイッチ装置３のＭＡＣアドレスを取得する。位置情報リクエスト部３６は、取得されたＭＡＣアドレスを持つゲートウェイスイッチ装置３に端末５−１２のＩＰアドレスを通知し、端末５−１２の位置情報を要求する。
【００５５】
要求先のゲートウェイスイッチ装置３では、位置情報リクエスト部３６が位置情報の取得要求を受け付ける。位置情報リクエスト部３６は、送信側ゲートウェイスイッチ装置３−１１から通知された宛先ＩＰアドレスを検索キーとして自装置のハッシュテーブルを検索する。位置情報リクエスト部３６は、検索キーがハッシュテーブルに登録されている場合、検索キーに対応づけられた端末５−１２の位置情報をハッシュテーブルから取得し、取得した位置情報を送信側ゲートウェイスイッチ装置３−１１に応答する。一方、検索キーがハッシュテーブルに登録されていない場合、位置情報リクエスト部３６は、端末５−１２の位置情報を保持していないことを送信側ゲートウェイスイッチ装置３−１１に応答する。
【００５６】
（ステップＳ２０４及びＳ２０５）
送信側ゲートウェイスイッチ装置３−１１において、フレーム転送部３４は位置情報の取得結果に応じたＢ−ＭＡＣヘッダをＡＲＰフレームに付加する。具体的には、フレーム転送部３４は自装置での検索又は他のゲートウェイスイッチ装置３への問い合わせによって位置情報が取得できた場合、取得された位置情報が示すゲートウェイスイッチ装置３−６１のＭＡＣアドレスを転送先とするＢ−ＭＡＣヘッダを付加する。また、位置情報が取得できなかった場合、フレーム転送部３４はブロードキャストアドレスを転送先とするＢ−ＭＡＣヘッダを付加する。フレーム転送部３４は、Ｂ−ＭＡＣヘッダが付加されたＡＲＰフレームをバックボーンネットワーク１側に送出する。これにより、ＡＲＰフレームがユニキャスト又はブロードキャストによって宛先側ゲートウェイスイッチ装置３−６１に転送される。
【００５７】
（ステップＳ２０６）
宛先側ゲートウェイスイッチ装置３−６１の位置情報学習部３５は、送信側ゲートウェイスイッチ装置３−１１から転送されたＡＲＰフレームのＢ−ＭＡＣヘッダ及びＩＰヘッダに基づいて送信元端末である端末５−１１の位置情報を学習する。具体的には、位置情報学習部３５は、Ｂ−ＭＡＣヘッダから転送元の送信側ゲートウェイスイッチ装置３−１１のＭＡＣアドレスを取得するとともにＩＰヘッダから端末５−１１のＩＰアドレスを取得する。位置情報学習部３５は、端末５−１１のＩＰアドレスをキーとしてゲートウェイスイッチ装置３−１１のＭＡＣアドレスをハッシュテーブルに登録することにより、端末５−１１の位置情報を学習する。
【００５８】
（ステップＳ２０７）
宛先側ゲートウェイスイッチ装置３−６１の位置情報学習部３５は、端末５−１１のＩＰアドレスに基づいて学習情報の送信先となるゲートウェイスイッチ装置３を識別する。具体的には、位置情報学習部３５は、上述の識別器に端末５−１１のＩＰアドレスを入力することによって送信先のゲートウェイスイッチ装置３のＭＡＣアドレスを取得する。位置情報学習部３５は、取得されたＭＡＣアドレスを持つゲートウェイスイッチ装置３に端末５−１１に関する学習情報を送信する。送信先のゲートウェイスイッチ装置３は、宛先側ゲートウェイスイッチ装置３−６１から送信された学習情報を受信すると、受信した学習情報を自装置のハッシュテーブルに登録する。これにより、送信先のゲートウェイスイッチ装置３は、端末５−１１の位置情報を宛先側ゲートウェイスイッチ装置３−６１の学習に応じて学習する。
【００５９】
（ステップＳ２０８及びＳ２０９）
宛先側ゲートウェイスイッチ装置３−６１のフレーム転送部３４は、受信されたＡＲＰフレームからＢ−ＭＡＣヘッダを削除する。フレーム転送部３４は、Ｂ−ＭＡＣヘッダが削除されたＡＲＰフレームをＬＡＮ２−６１−２に転送する。ここで、転送先のゲートウェイスイッチ装置３は、端末５−１２がＬＡＮ２−６１−２に所属することを学習済みでない場合には自装置が収容する全てのＬＡＮ２にＡＲＰフレームをブロードキャストしてもよい。
【００６０】
（ステップＳ２１０及びＳ２１１）
端末５−１２は、ＡＲＰフレームの受信に応じて、自装置のＭＡＣアドレスを端末５−１１に通知するためのＡＲＰ応答フレームを生成する。端末５−１２は、生成したＡＲＰ応答フレームを送信元端末である端末５−１１を宛先として送信する。端末５−１２から送信されたＡＲＰ応答フレームは宛先側ゲートウェイスイッチ装置３−６１によって受信される。
【００６１】
（ステップＳ２１２及びＳ２１３）
送信側ゲートウェイスイッチ装置３−１１のフレーム転送部３４は、ステップＳ２０６で学習済みの位置情報に基づいて転送元の送信側ゲートウェイスイッチ装置３−１１を転送先とするＢ−ＭＡＣヘッダをＡＲＰ応答フレームに付加する。具体的には、フレーム転送部３４は、ＡＲＰ応答フレームのＩＰヘッダから送信元端末である端末５−１１のＩＰアドレスを取得する。フレーム転送部３４は、端末５−１１のＩＰアドレスをキーとしてハッシュテーブルを検索することにより送信側ゲートウェイスイッチ装置３−１１のＭＡＣアドレスを取得する。フレーム転送部３４は、取得した送信側ゲートウェイスイッチ装置３−１１のＭＡＣアドレスを転送先とするＢ−ＭＡＣヘッダをＡＲＰ応答フレームに付加する。フレーム転送部３４は、Ｂ−ＭＡＣヘッダが付加されたＡＲＰ応答フレームをＬＡＮ２−１１−１側に転送する。
【００６２】
（ステップＳ２１４）
送信側ゲートウェイスイッチ装置３−１１のフレーム転送部３４は、ステップＳ２０６で学習済みの位置情報に基づいて宛先端末である端末５−１２の位置情報を学習する。具体的には、位置情報学習部３５は、Ｂ−ＭＡＣヘッダから転送先のゲートウェイスイッチ装置３−６１のＭＡＣアドレスを取得するとともにＩＰヘッダから端末５−１２のＩＰアドレスを取得する。位置情報学習部３５は、端末５−１２のＩＰアドレスをキーとしてゲートウェイスイッチ装置３−６１のＭＡＣアドレスをハッシュテーブルに登録することにより、端末５−１２の位置情報を学習する。
【００６３】
（ステップＳ２１５）
送信側ゲートウェイスイッチ装置３−１１の位置情報学習部３５は、端末５−１２のＩＰアドレスに基づいて学習情報の送信先となるゲートウェイスイッチ装置３を識別する。具体的には、位置情報学習部３５は、上述の識別器に端末５−１２のＩＰアドレスを入力することによって送信先のゲートウェイスイッチ装置３のＭＡＣアドレスを取得する。位置情報学習部３５は、取得されたＭＡＣアドレスを持つゲートウェイスイッチ装置３に端末５−１２に関する学習情報を送信する。送信先のゲートウェイスイッチ装置３は、送信側ゲートウェイスイッチ装置３−１１から送信された学習情報を受信すると、受信した学習情報を自装置のハッシュテーブルに登録する。これにより、送信先のゲートウェイスイッチ装置３は、端末５−１２の位置情報をゲートウェイスイッチ装置３−１１の学習に応じて学習する。
【００６４】
（ステップＳ２１６及びＳ２１７）
ゲートウェイスイッチ装置３−１１のフレーム転送部３４は、受信されたＡＲＰ応答フレームからＢ−ＭＡＣヘッダを削除する。フレーム転送部３４は、Ｂ−ＭＡＣヘッダが削除されたＡＲＰ応答フレームをＬＡＮ２−１１−１に転送する。
【００６５】
このように構成された第１実施形態の通信システム１００では、ゲートウェイスイッチ装置３は、他のゲートウェイスイッチ装置３によって学習された位置情報を、他のゲートウェイスイッチ装置３の学習に応じて学習することができる。具体的には、図５の具体例の通信システム１００では、端末５−１１から端末５−１２に対するＡＲＰフレームの送信に応じて、端末５−１２に応じて決定されるゲートウェイスイッチ装置３がゲートウェイスイッチ装置３−１２の学習に応じて端末５−１１の位置情報を学習し、端末５−１１に応じて決定されるゲートウェイスイッチ装置３がゲートウェイスイッチ装置３−１１の学習に応じて端末５−６１の位置情報を学習することができる。このような学習方法によれば、あるゲートウェイスイッチ装置３によって学習された位置情報が他のゲートウェイスイッチ装置３に分散して保持される可能性が高くなるため、ＡＲＰフレームがバックボーンネットワーク１にブロードキャストされる頻度を低減することができる。
【００６６】
＜第２実施形態＞
図６は、第２実施形態の通信システム１００ａの概略を示す図である。通信システム１００ａは、ゲートウェイスイッチ装置３に代えてゲートウェイスイッチ装置３ａを備える点、コントローラ装置６をさらに備える点で第１実施形態の通信システム１００と異なる。ゲートウェイスイッチ装置３ａは、位置情報学習部３５に代えて位置情報学習部３５ａを備える点、位置情報リクエスト部３６に代えて位置情報リクエスト部３６ａ（図示せず）を備える点で第１実施形態のゲートウェイスイッチ装置３と異なる。位置情報学習部３５ａは、他のゲートウェイスイッチ装置３ａではなくコントローラ装置６に対して学習情報を送信する点で位置情報学習部３５と異なる。また、位置情報リクエスト部３６ａは、他のゲートウェイスイッチ装置３ａではなくコントローラ装置６に対して位置情報を要求する点で位置情報リクエスト部３６と異なる。
【００６７】
コントローラ装置６は、ゲートウェイスイッチ装置３ａとの通信により、各ゲートウェイスイッチ装置３ａの収容端末に関する位置情報を学習するとともに、各ゲートウェイスイッチ装置３ａの要求に応じて、自装置に記憶された位置情報を要求元のゲートウェイスイッチ装置３ａに提供する。
【００６８】
図７は、第２実施形態のコントローラ装置６の機能構成の具体例を示すブロック図である。コントローラ装置６は、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、コントローラ装置プログラムを実行する。コントローラ装置６は、コントローラ装置プログラムの実行によって位置情報記憶部６１、位置情報学習部６２、位置情報提供部６３及び通信部６４を備える装置として機能する。なお、コントローラ装置６の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されてもよい。コントローラ装置プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。コントローラ装置プログラムは、電気通信回線を介して送信されてもよい。
【００６９】
位置情報記憶部６１は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。位置情報記憶部６１は、各ＬＡＮ２に所属する端末５の位置情報を記憶する。具体的には、位置情報記憶部６１は各端末５の位置情報を、各端末５に応じた複数のハッシュテーブルに分散して記憶する。図７は、位置情報が４つのハッシュテーブルに分散して記憶される場合の例である。
【００７０】
位置情報学習部６２（第２学習部）は、各ゲートウェイスイッチ装置３ａから収容端末の位置情報を取得する。具体的には、位置情報学習部６２は、各収容端末のＩＰアドレス及びＭＡＣアドレスと、その収容端末が所属するＬＡＮ２を収容するゲートウェイスイッチ装置３ａのＭＡＣアドレスと、その収容端末が所属するＬＡＮ２の識別情報（以下、「ＬＡＮ−ＩＤ」という。）と、を位置情報として取得する。位置情報学習部６２は、各ゲートウェイスイッチ装置３ａから取得される位置情報を、収容端末に応じたハッシュテーブルに記憶させることで、各端末５の位置情報をそれぞれ異なる領域に分散して学習する。
【００７１】
位置情報提供部６３は、各ゲートウェイスイッチ装置３ａの要求に応じて、自装置に記憶された位置情報を要求元のゲートウェイスイッチ装置３ａに提供する。また、位置情報提供部６３は、要求された位置情報が自装置において学習されていない場合、位置情報の提供を要求された収容端末に対するＡＲＰフレームを送信することによって当該収容端末の位置情報を取得する。位置情報提供部６３は、取得された位置情報を学習するとともに、要求元のゲートウェイスイッチ装置３ａに送信する。
【００７２】
通信部６４は、コントローラ装置６をバックボーンネットワーク１に接続するための通信インターフェースである。コントローラ装置６は、通信部６４を介して各ゲートウェイスイッチ装置３ａと通信する。
【００７３】
図８は、第２実施形態の通信システム１００ａにおける位置情報の学習の流れを示すシーケンス図である。ここでは図８に示す処理のうち、図４と同様の処理については図４と同じ符号を付すことにより説明を省略する。
【００７４】
ステップＳ２０２において、宛先端末の位置情報が学習済みでない場合、転送元のゲートウェイスイッチ装置３ａは、コントローラ装置６に対して宛先端末の位置情報を要求する（ステップＳ３０１）。このとき、転送元のゲートウェイスイッチ装置３ａは、ＡＲＰフレームをコントローラ装置６に送信する。コントローラ装置６は、宛先端末の位置情報を学習済みである場合には宛先端末の位置情報を要求元（転送元）のゲートウェイスイッチ装置３ａに応答する。一方、転送元のゲートウェイスイッチ装置３ａは、宛先端末の位置情報を学習していない場合にはＡＲＰフレームをバックボーンネットワーク１にブロードキャストすることにより宛先端末の位置情報を学習する。
【００７５】
また、転送先のゲートウェイスイッチ装置３ａは、ステップＳ２０６において送信元端末の位置情報を学習すると、学習情報をコントローラ装置６に送信する（ステップＳ３０２）。同様に、転送元のゲートウェイスイッチ装置３ａは、ステップＳ２１４において宛先端末の位置情報を学習すると、学習情報をコントローラ装置６に送信する（ステップＳ３０３）。学習情報を受信したゲートウェイスイッチ装置３ａは、取得した学習情報を学習対象の端末５に応じた領域（ハッシュテーブル）に記憶させることによって送信元端末及び宛先端末の位置情報を学習する。
【００７６】
図９は、第２実施形態の通信システム１００ａのシステム構成の具体例を示す図である。図９の具体例に示される通信システム１００ａは、ゲートウェイスイッチ装置３−１１〜ゲートウェイスイッチ装置３−７０に代えてゲートウェイスイッチ装置３ａ−１１〜ゲートウェイスイッチ装置３ａ−７０を備える点、ゲートウェイスイッチ装置３ａ−１１〜ゲートウェイスイッチ装置３ａ−７０と通信可能なコントローラ装置６をさらに備える点で図５の具体例と異なる。以下、図９に示された通信システム１００ａの具体例を参照し、図８に示したフローチャートの各ステップにおける具体的な処理の内容について説明する。なおここでは、図４と同様の処理についての説明は省略する。
【００７７】
（ステップＳ３０１）
位置情報リクエスト部３６ａは、ステップＳ２０２において自装置が端末５−１１の位置情報を学習していない場合、端末５−１１の位置情報をコントローラ装置６に要求する。コントローラ装置６の位置情報提供部６３は、端末５−１１に応じたハッシュテーブルを検索し、端末５−１１の位置情報が学習済みであるか否かを判定する。具体的には、位置情報の要求時において、位置情報リクエスト部３６ａは受信されたＡＲＰフレームをコントローラ装置６に送信する。コントローラ装置６の位置情報提供部６３は、受信したＡＲＰフレームから端末５−１２のＩＰアドレスを取得し、取得したＩＰアドレスを所定の識別器に入力することによって検索対象のハッシュテーブルを識別する。
【００７８】
この識別器は、ＩＰアドレスの入力に対してハッシュテーブルの識別情報（以下、「テーブルＩＤ」という。）を出力する機能を有すればどのような手段で実現されてもよい。位置情報提供部６３は、識別器から出力されたテーブルＩＤが示すハッシュテーブルを端末５−１１のＩＰアドレスを検索キーとして検索する。位置情報提供部６３は、検索キーが当該ハッシュテーブルに登録されている場合、検索キーに対応づけられた端末５−１２の位置情報をハッシュテーブルから取得し、取得した位置情報をゲートウェイスイッチ装置３−１１に応答する。一方、検索キーが当該ハッシュテーブルに登録されていない場合、位置情報提供部６３は、位置情報学習部６２に端末５−１２の位置情報の学習を指示する。
【００７９】
位置情報学習部６２は、受信されたＡＲＰフレームをバックボーンネットワーク１にブロードキャストすることにより、端末５−１２の位置情報を取得する。位置情報学習部６２は、取得された位置情報を端末５−１２に応じたハッシュテーブルに記憶して学習するとともに、取得された位置情報をゲートウェイスイッチ装置３−１１に応答する。
【００８０】
（ステップＳ３０２及びＳ３０３）
ゲートウェイスイッチ装置３ａ−６１の位置情報学習部３５ａは、ステップＳ２０６における学習情報をコントローラ装置６に送信する。同様に、ゲートウェイスイッチ装置３ａ−１１は、ステップＳ２１４における学習情報をコントローラ装置６に送信する。コントローラ装置６は、ゲートウェイスイッチ装置３ａ−６１から送信された学習情報を端末５−１１に応じたハッシュテーブルに記憶し、ゲートウェイスイッチ装置３ａ−１１から送信された学習情報を端末５−１２に応じたハッシュテーブルに記憶する。
【００８１】
このように構成された第２実施形態の通信システム１００では、ゲートウェイスイッチ装置３ａは自装置で学習されていない位置情報をコントローラ装置６から確実に取得することができる。そのため、各ゲートウェイスイッチ装置３ａは、収容端末から送信されたＡＲＰフレームをバックボーンネットワーク１側にブロードキャストする必要がなくなる。そのため、ＡＲＰフレームがバックボーンネットワーク１にブロードキャストされる頻度を低減することができる。また、コントローラ装置６は、各ゲートウェイスイッチ装置３ａの収容端末の位置情報を、収容端末に応じたハッシュテーブルに分散して記憶する。そのため、コントローラ装置６は、各ゲートウェイスイッチ装置３ａから位置情報を要求された場合に、宛先端末に応じたハッシュテーブルのみを検索すればよい。そのため、コントローラ装置６において位置情報の検索に要する時間を短縮することができる。
【００８２】
＜第３実施形態＞
図１０は、第３実施形態の通信システム１００ｂの概略を示す図である。通信システム１００ｂは、コントローラ装置６ａに代えてコントローラ装置６ｂを備える点で第２実施形態の通信システム１００ａと異なる。図１０の例では、通信システム１００ｂは、ゲートウェイスイッチ装置３ａ−Ａ１〜Ａ４、ゲートウェイスイッチ装置３ａ−Ｂ１〜Ｂ４、ゲートウェイスイッチ装置３ａ−Ｃ１〜Ｃ４、ゲートウェイスイッチ装置３ａ−Ｄ１〜Ｄ４を備える。各ゲートウェイスイッチ装置３ａは１つ以上のＬＡＮ２を収容しバックボーンネットワーク１に接続する。図１０の例では、ゲートウェイスイッチ装置３ａ−Ａ４がＬＡＮ２−Ａ４を収容し、ゲートウェイスイッチ装置３ａ−Ｃ１がＬＡＮ２−Ｃ１を収容する。
【００８３】
なお、第３実施形態の通信システム１００ｂにおいて、各ゲートウェイスイッチ装置３ａは複数のグループ（以下、「ゲートウェイグループ」という。）に分割される。コントローラ装置６ｂは、各ゲートウェイスイッチ装置３ａから取得された学習情報を、取得元のゲートウェイスイッチ装置３ａと同じグループに所属する他のゲートウェイスイッチ装置３ａに共有させる機能を有する。
【００８４】
例えば図１０の例は、同じイーサネットスイッチ４に接続されるゲートウェイスイッチ装置３ａ同士でゲートウェイグループを構成した例である。この場合、ゲートウェイスイッチ装置３ａ−Ａ１〜３ａ−Ａ４は同じイーサネットスイッチ４Ａ（図示せず）に接続され、ゲートウェイグループＡを構成する。同様に、ゲートウェイスイッチ装置３ａ−Ｂ１〜３ａ−Ｂ４はゲートウェイグループＢを、ゲートウェイスイッチ装置３ａ−Ｃ１〜３ａ−Ｃ４はゲートウェイグループＣを、ゲートウェイスイッチ装置３ａ−Ｄ１〜３ａ−Ｄ４はゲートウェイグループＤを、それぞれ構成する。
【００８５】
図１１は、ゲートウェイグループの態様の他の具体例を示す図である。図１１の例は、各ゲートウェイスイッチ装置３ａを、バックボーンネットワーク１上で同じ論理ネットワークを形成するゲートウェイスイッチ装置３ａ同士でゲートウェイグループを構成した例である。例えば、論理ネットワークは、バックボーンネットワーク１におけるＶＬＡＮ（Virtual LAN）である。図１１において各ゲートウェイスイッチ装置３ａを結ぶ線は論理ネットワークの接続構成を示している。この場合、同じ論理ネットワークを構成するゲートウェイスイッチ装置３ａ−Ａ１、３ａ−Ｂ１、３ａ−Ｃ１及び３ａ−Ｄ１がゲートウェイグループＡを構成する。同様に、ゲートウェイスイッチ装置３ａ−Ａ２、３ａ−Ｂ２、３ａ−Ｃ２及び３ａ−Ｄ２がゲートウェイグループＢを、ゲートウェイスイッチ装置３ａ−Ａ３、３ａ−Ｂ３、３ａ−Ｃ３及び３ａ−Ｄ３がゲートウェイグループＣを、ゲートウェイスイッチ装置３ａ−Ａ４、３ａ−Ｂ４、３ａ−Ｃ４及び３ａ−Ｄ４がゲートウェイグループＤを、それぞれ構成する。
【００８６】
図１２は、第３実施形態のコントローラ装置６ｂの機能構成の具体例を示すブロック図である。コントローラ装置６ｂは、位置情報共有部６５をさらに備える点で第２実施形態のコントローラ装置６ａと異なる。位置情報共有部６５は、あるゲートウェイスイッチ装置３ａが学習した情報を、同じゲートウェイグループに所属する他のゲートウェイスイッチ装置３ａに送信する。例えば、位置情報共有部６５は、各ゲートウェイスイッチ装置３ａから送信された学習情報の受信を契機に位置情報を送信する。
【００８７】
図１３は、第３実施形態の通信システム１００ｂのシステム構成の具体例を示す図である。図１３において、符号２００−１〜２００−６及び符号３００−１〜３００−３はゲートウェイグループを表す。ゲートウェイグループ２００−１〜２００−６は、図１０の例のように各イーサネットスイッチ４に閉じた範囲で構成されるゲートウェイグループである。一方、ゲートウェイグループ３００−１〜３００−３は、各イーサネットスイッチ４を跨いで構成されるゲートウェイグループである。図１１の例は、ゲートウェイグループ３００をバックボーンネットワーク１におけるＶＬＡＮに対応づけた例である。以上、説明したゲートウェイグループの態様は一例であり、ゲートウェイグループは他のどのような観点で構成されてもよい。
【００８８】
このように構成された第３実施形態の通信システム１００ｂは、各ゲートウェイスイッチ装置３ａの位置情報の学習に応じて、位置情報を学習したゲートウェイスイッチ装置３ａと同じゲートウェイグループに所属するゲートウェイスイッチ装置３ａに学習情報を共有させるコントローラ装置６ｂを備える。このような構成を備えることにより、そのため、ＡＲＰフレームがバックボーンネットワーク１にブロードキャストされる頻度をより低減させることができる。
【００８９】
＜変形例＞
上述した学習情報の共有手段は、各ゲートウェイスイッチ装置３ａによって実現されてもよい。この場合、例えばゲートウェイスイッチ装置３ａは、学習した位置情報を、同じゲートウェイグループ内の他のゲートウェイスイッチ装置３ａと共有する位置情報共有部（図示せず）を備える。この場合、仮にイーサネットスイッチ４のそれぞれが１つのＡＳ（Autonomous System）を構成すると仮定すれば、ゲートウェイグループ３００に所属するゲートウェイスイッチ装置３同士がＢＧＰ（Border Gateway Protocol）による各ＡＳ間の通信を介して位置情報を共有することができる。
【００９０】
上述した実施形態におけるゲートウェイスイッチ装置又はコントローラ装置をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＦＰＧＡ（Field Programmable Gate Array）等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
【００９１】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【産業上の利用可能性】
【００９２】
本発明は、パケット転送網をレイヤ２のプロトコル層で実現する通信システムに適用可能である。
【符号の説明】
【００９３】
１００，１００ａ，１００ｂ…通信システム、  １…バックボーンネットワーク、  ２…ＬＡＮ、  ３，３ａ，ゲートウェイスイッチ装置、  ３１…位置情報記憶部、  ３２…第１通信部、  ３３…第２通信部、  ３４…フレーム転送部、  ３５，３５ａ…位置情報学習部、  ３６，３６ａ…位置情報リクエスト部、  ４…イーサネットスイッチ、  ５…端末、  ６，６ａ，６ｂ…コントローラ装置、  ６１…位置情報記憶部、  ６２…位置情報学習部、  ６３…位置情報提供部、  ６４…通信部、  ６５…位置情報共有部、  ２００，３００…ゲートウェイグループ、  ９００…イーサネットスイッチ網、  １０…バックボーンネットワーク、  ３０…ゲートウェイスイッチ装置、  ５０…端末
【図１】
0006491616.tif 000002
【図２】
0006491616.tif 000003
【図３】
0006491616.tif 000004
【図４】
0006491616.tif 000005
【図５】
0006491616.tif 000006
【図６】
0006491616.tif 000007
【図７】
0006491616.tif 000008
【図８】
0006491616.tif 000009
【図９】
0006491616.tif 000010
【図１０】
0006491616.tif 000011
【図１１】
0006491616.tif 000012
【図１２】
0006491616.tif 000013
【図１３】
0006491616.tif 000014
【図１４】
0006491616.tif 000015