(57)【要約】【課題】  広域VLANのキャリアネットワーク１１内でエッジスイッチ(１４，１５)が持つMACアドレス学習テーブルでのヒット率を向上させるMACアドレス学習装置を提供する。【解決手段】  キャリアネットワーク（１１）を介してユーザネットワーク（１２，１３）間で通信をする広域LANサービスを提供するネットワークで、エッジスイッチ（１４，１５）は、キャリアネットワークからの未学習状態パケットの送信元MACアドレスと受信ポートを仮学習状態で登録する仮学習登録手段（１６）と、ユーザネットワークからのパケットの宛先MACアドレスの学習済み状態を本学習状態に変更する学習状態変更手段（１７）と、キャリアネットワークからのパケットの宛先MACアドレスが学習済み状態の場合、キャリアネットワークからのパケットの送信元MACアドレスと受信ポートを本学習状態で登録する本学習登録手段（１８）とを具備する。【選択図】      図１
2006129036.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワークを介して複数の第２のネットワーク間で通信をする広域LANサービスを提供するネットワークにおいて、前記第１のネットワーク内で前記第２のネットワークと接続するエッジスイッチを備えており、該エッジスイッチは、
第１のネットワークから受信した未学習状態のパケットの送信元MACアドレスと受信ポートを仮学習状態で登録する仮学習登録手段と、
前記第２のネットワークから受信したパケットの宛先MACアドレスが学習済み状態で登録されている場合、前記宛先MACアドレスの学習済み状態を本学習状態に変更する学習状態変更手段と、
前記第１のネットワークから受信したパケットの宛先MACアドレスが学習済み状態の場合、前記第１のネットワークから受信したパケットの送信元MACアドレスと受信ポートを本学習状態で登録する本学習登録手段とを具備することを特徴とする、MACアドレス学習装置。
【請求項２】
前記仮学習登録手段は、
前記第１のネットワークから最初に受信したパケットの送信元MACアドレスと受信ポートを仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録するよう依頼する第１のネットワーク側受信パケット制御部と、
前記送信元MACアドレスが前記第１のネットワーク側MACアドレス学習テーブルに未登録の場合、該MACアドレスと受信ポートを仮学習の状態で前記第１のネットワーク側MACアドレス学習テーブルに登録する第１のネットワーク側学習テーブル制御部と、
を具備することを特徴とする、請求項１に記載のMACアドレス学習装置。
【請求項３】
前記学習状態変更手段は、
前記第２のネットワークから受信したパケットの宛先MACアドレスで前記第１のネットワーク側MACアドレス学習テーブルを検索した結果、該宛先MACアドレスが仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録済みの場合、前記宛先MACアドレスの学習状態を本学習に更新するよう依頼する第１のネットワーク側学習テーブル検索部と、
前記宛先MACアドレスの登録を本学習の状態に更新する第１のネットワーク側学習テーブル制御部と、
を具備することを特徴とする、請求項１に記載のMACアドレス学習装置。
【請求項４】
前記本学習登録手段は、
前記第１のネットワークから受信したパケットの宛先MACアドレスで前記第２のネットワーク側MACアドレス学習テーブルを検索した結果、該宛先MACアドレスが前記第２のネットワーク側MACアドレス学習テーブルに登録済みの場合、受信パケットの送信元アドレスと受信ポートを本学習の状態で登録するよう依頼する第２のネットワーク側学習テーブル検索部と、
前記宛先MACアドレスが前記第１のネットワーク側MACアドレス学習テーブルに仮学習の状態で登録済みの場合、該宛先MACアドレスの登録を本学習の状態に更新する第１のネットワーク側学習テーブル制御部と、
を具備することを特徴とする、請求項１に記載のMACアドレス学習装置。
【請求項５】
前記エッジスイッチは、前記第１のネットワークから受信したパケットのMACアドレス学習内容を格納する第１のネットワーク側MACアドレス学習テーブルと、該第１のネットワーク側MACアドレス学習テーブルに登録されている学習情報のランク別にタイムアウト時間を管理するエイジングタイム管理部と、ランク別のエイジングタイムを前記エイジングタイム管理部に問い合わせて得られた結果を前記第１のネットワーク側学習テーブルに設定する第１のネットワーク側学習テーブル制御部とを具備することを特徴とする、請求項１から４のいずれか一項に記載のMACアドレス学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はMACアドレス学習装置に関し、特に近年注目を集めている広域VLANサービスなどを提供する通信キャリア向けデータ伝送装置に適用されるMACアドレス学習装置に関する。
【背景技術】
【０００２】
広域VLANサービスは、主に企業のLANを接続するので、企業内VLANよりもはるかに多量のMACアドレス学習を要求される分野である。
【０００３】
一般的に企業などがプライベートネットワークを構築する場合、専用線を用いて構築する方法、IP(Internet Protocol)を用いたIP-VPN(Virtual Private Network)により構築する方法、およびVLAN(Virtual LAN)を用いた広域LANサービスにより構築する方法がある。中でも、広域LANサービスは、専用線やIP-VPNよりコストが安く、また管理が容易なことから、広域LANサービスが拡大している。
【０００４】
広域LANサービスでは、複数の企業でのLANデータを混信せずに伝送するレイヤ2スイッチが必要である。このため、それぞれの企業に固有のVLAN IDを割り当て、VLAN IDをもとにデータの行き先を識別する技術を導入している。具体的には、キャリアネットワークの入り口であるエッジスイッチにおいて、それぞれの企業からイーサネットパケットが送られると、ここでVLAN IDが付けられ、キャリアネットワーク内のコアスイッチではVLAN IDのチェックを行い、パケットの転送を行う。
【０００５】
また、通常レイヤ2スイッチでは、パケットを受信した際に、送信元MACアドレスとVLAN ID、および受信ポートを記憶するためのMACアドレス学習テーブルを持つ。パケットを中継する際に、宛先MACアドレスおよびVLAN IDにて本テーブルを検索し、エントリが無い場合はVLAN IDの属する全ポートに転送するが、エントリがある場合は、対応ポートにのみ転送する。これにより、不必要なパケットの転送を防いでいる。また、それぞれのエントリは一定時間参照されないとエージング(学習テーブルから削除)される。この時間をエージングタイムという。
【０００６】
図２９は従来のMACアドレス学習方法を説明する概略図である。同図において、VLANはキャリアネットワーク２９０を介してユーザネットワーク２９１(VLAN ID＝1)、ユーザネットワーク２９２(VLAN ID＝1)、及びユーザネットワーク２９３(VLAN ID＝２)が接続されている。例えば、ユーザネットワーク２９１(VLAN ID＝1)とユーザネットワーク２９２(VLAN ID＝1)とは同一企業のネットワークであり、ユーザネットワーク２９３(VLAN ID＝２)は別の企業のネットワークである。
【０００７】
ユーザネットワーク２９１、２９１及び２９３はそれぞれ端末A,B,…を備えている。キャリアネットワーク２９０はその末端にエッジスイッチ２９４、２９５、２９６等を備えており、内部にコアスイッチ２９７、２９８、２９９等を備えている。エッジスイッチ及びコアスイッチはそれぞれ、MACアドレス学習テーブルTを備えている。図では代表的にエッジスイッチ２９４が備えているMACアドレステーブルTのみを示してある。
【０００８】
次に図２９に示したVLANの動作例を簡単に説明する。ユーザネットワーク２９１(VLAN ID＝1)内の端末A(MACアドレス＝a)から同じVLAN IDを有するユーザネットワーク２９２内の端末B(MACアドレス＝b)にパケットを送信すると、宛先MACアドレス＝bおよびVLAN ID＝1をキーワードとし各エッジスイッチ及びコアスイッチ内のMACアドレス学習テーブルTを検索する。最初は、検索結果より宛先MACアドレス＝bはどのスイッチ内のMACアドレス学習テーブルでも未登録、即ち未学習であるので、キャリアネットワーク２９０内の各スイッチではパケットがブロードキャストされる。その結果、エッジスイッチ２９４、コアスイッチ２９７、エッジスイッチ２９５、コアスイッチ２９８、コアスイッチ２９９、エッジスイッチ２９６の全スイッチで端末Aの学習がされる。
【０００９】
次いで、端末Bから端末Aに対して応答を返した場合、エッジスイッチ２９５、コアスイッチ２９７、及びエッジスイッチ２９４では宛先端末AのMACアドレス＝ａを既に学習しているので、ブロードキャストされずに、エッジスイッチ２９５、コアスイッチ２９７、及びエッジスイッチ２９４へと転送される。しかし、コアスイッチ２９８、コアスイッチ２９９、及びエッジスイッチ２９６では端末Aの学習が使われる可能性は低い。端末Aの学習が使用されない場合はそれらのスイッチにおける端末Aの学習は無駄な学習となってしまう。
【００１０】
広域LANサービスの利用者の数、例えば企業の数が増加し、その結果ネットワークに接続している端末の数が増加すると、ネットワークを通過するMACアドレスが飛躍的に増加する。例えば、ユーザネットワーク２９１内に１０００個の端末が存在する場合、各MAC学習テーブルには１０００個のエントリが必要になる。ここでMAC学習テーブルにエントリが無いパケットは上記のようにスイッチの全ポートに転送(ブロードキャスト)される。そのため、該パケットを受信したキャリアネットワーク内のすべてのスイッチで該MACアドレスが学習されることになり、MACアドレス学習テーブルが飽和してしまうという問題がある。
【００１１】
この問題を解決するために、パワードコム社が考案したEoE (Ethernet over Ethernet)技術が注目されている。EoEは、ユーザネットワークから送信されたパケットをエッジスイッチにて、EoEネットワークで使用するEoE-MACアドレスに変換してキャリアネットワーク内を転送する技術である。これにより、コアスイッチが学習するMACアドレスはエッジスイッチのEoE-MACアドレスのみになるため、負荷が軽減される。
【００１２】
図３０は従来のEoE技術を用いた場合のパケット送受信を説明する概略図である。同図において、VLANはキャリアネットワーク３００を介してユーザネットワーク(VLAN ID＝1)３０１及びユーザネットワーク(VLAN ID＝1)３０２が接続されている。ユーザネットワーク(VLAN ID＝1)３０１には一例として端末A及びBが含まれている。ユーザネットワーク(VLAN ID＝1)３０２には一例として端末C及びDが含まれている。キャリアネットワーク３００はその末端にエッジスイッチ３０３、３０４等を備えており、内部にコアスイッチ３０５等を備えている。エッジスイッチ３０３及び３０４はそれぞれMACアドレス学習テーブルT１を備えている。図では代表的にエッジスイッチ３０３が備えているMACアドレス学習テーブルT１のみを示してある。コアスイッチ３０５はMACアドレス学習テーブルT２を備えている。MACアドレス学習テーブルT１及びT2の図示の内容は学習後の状態を示している。
【００１３】
次に図３０に示したVLANの動作を簡単に説明する。ユーザネットワーク３０１（VLAN ID＝1)内の端末A(MACアドレス＝a)からユーザネットワーク３０２（VLAN ID＝1)内の端末C(MACアドレス：c)にパケットを送信する場合について説明する。EoE技術では、各エッジスイッチのユーザネットワーク側の各ポートにEoE-MACアドレスe1, e2, …が設定されている。EoE-MACアドレスとはキャリアネットワーク３００内でだけ通用するアドレスである。具体的には、エッジスイッチ３０３のポート１にはEoE-MACアドレスe1が設定されており、エッジスイッチ３０４のポート２にはEoE-MACアドレスe2が設定されている。
【００１４】
３０６は端末Aから出力されたパケットを示しており、そのパケット３０６の最左端のｃは宛先、その右のaは送信元を示している。エッジスイッチ３０３は、端末Aからパケット３０６を受信すると、受信ポート1に受信された送信元アドレスaに対応する送信元EoE-MACアドレスをe1に設定する。
【００１５】
また、宛先MACアドレス＝cとVLAN ID＝1をもとにMACアドレス学習テーブルT1を検索し、宛先EoE-MACアドレス＝e2を抽出する。そしてパケット３０５は送信元EoE-MACアドレスをe1とし、宛先EoE-MACアドレスをe2としてカプセリングされたパケット３０７となり、キャリアネットワーク３００内を転送される。キャリアネットワーク３００内のコアスイッチ３０５は、宛先EoE-MACアドレス＝e2をキーワードにしてMACアドレス学習テーブルT2を検索し、その結果得られたポート2へパケット３０７を転送する。
【００１６】
エッジスイッチ３０４では、パケットの先頭にある送信元EoE-MACアドレスe1及び宛先EoE-MACアドレスe2からなるカプセリングを削除し、端末Cへパケットを送信する。これにより、コアスイッチ３０５はキャリアネットワーク３００内のエッジスイッチ３０３及び３０４のEoE-MACアドレスe1及びe2のみを学習すればよいので、負荷が軽減される。図２９の従来技術ではキャリアネットワークが持つMACアドレス学習テーブルT2は全端末ａ，ｂ，ｃ，ｄについてMACアドレスを学習する必要があったのに対して、図３０の従来技術ではキャリアネットワーク内でだけ通用するEoE-MACアドレスe1，e2，…を用いることにより、コアスイッチ３０５が持つMACアドレス学習テーブルの内容を大幅に削減することが可能になる。
【００１７】
図３１は図２９に示した従来のエッジスイッチ２９４の構成を示すブロック図である。同図において、３１１はキャリアネットワーク側ポート、３１２はユーザネットワーク側ポート１、３１３はキャリア側受信パケット制御部、３１４はユーザ側学習テーブル検索部、３１５はユーザ側送信パケット制御部、３１６はキャリア側学習テーブル制御部、３１７はキャリア側MACアドレス学習テーブル、３１８はユーザ側MACアドレス学習テーブル、３１９はユーザ側学習テーブル制御部、３２０はユーザ側受信パケット制御部、３２１はキャリア側学習テーブル検索部、３２２はキャリア側送信パケット制御部。３２３はキャリア側MACアドレス学習テーブル３１７の各学習情報について、エイジングタイムを管理し、エイジングタイムアウトした学習内容をキャリア側MACアドレス学習テーブル３１７から削除するエイジングタイム管理部である。キャリア側とはキャリアネットワーク側のことであり、ユーザ側とはユーザネットワーク側のことである。
【００１８】
次に図３１に示したエッジスイッチの動作を簡単に説明する。
まず、キャリアネットワーク２９０側からエッジスイッチ２９４にパケットを送信する場合を説明する。
【００１９】
キャリア側受信パケット制御部３１３はキャリアネットワーク側ポート３１１からパケットを受信すると、キャリア側学習テーブル制御部３１６に対して、キャリア側MACアドレス学習テーブル３１７(図２９のT)の内容に、送信元のアドレスと受信ポートを登録するよう依頼する。
【００２０】
次いでキャリア側学習テーブル制御部３１６はキャリア側MACアドレス学習テーブル３１７にパケットの送信元アドレスと受信ポートを登録する。
【００２１】
次いでパケットの宛先MACアドレスをもとに、ユーザ側ポートに対応して設けられているユーザ側MACアドレス学習テーブル（図２９のTと同じ形式のテーブル）からパケットを送信するユーザネットワーク側のポート願号を検索する。ユーザ側送信パケット制御部３１５は、ユーザ側MACアドレス学習テーブル３１８の検索結果をもとに、ユーザネットワーク側の該当送信ポートへパケットを転送する。送信するユーザネットワーク側のポート願号がなければ、ブロードキャストでユーザネットワーク内の全端末にパケットを送信する。
【００２２】
逆にユーザネットワーク２９２からエッジスイッチ２９５にパケットを転送する場合は、ユーザ側受信パケット制御部３２０はユーザネットワーク側ポート３１１からパケットを受信すると、ユーザ側学習テーブル制御部３１９に対して、ユーザ側MACアドレス学習テーブル３１８の内容に、送信元のアドレスと受信ポートを登録するよう依頼する。
【００２３】
次いでユーザ側学習テーブル制御部３１９はユーザ側MACアドレス学習テーブル３１８にパケットの送信元アドレスと受信ポートを登録する。
【００２４】
次いで、キャリア側学習テーブル検索部３２１は、パケットの宛先MACアドレスをもとに、キャリア側ポートに対応して設けられているキャリア側MACアドレス学習テーブル３１７（図２９のT）からパケットを送信するキャリアネットワーク側のポート願号を検索する。キャリア側送信パケット制御部３２２は、ユーザ側MACアドレス学習テーブルの検索結果をもとに、キャリアネットワーク側の該当送信ポートへパケットを転送する。送信するキャリアネットワーク側のポート願号がなければ、ブロードキャストでキャリアネットワーク内の全スイッチにパケットを送信する。
【００２５】
エイジングタイム管理部３２３は例えば３００秒といった所定時間が経過しても学習内容が変更されないキャリア側MACアドレス学習テーブル３１７内の情報は使用されていないものとして削除する。
【特許文献１】特開平０３−００１７３５号公報
【特許文献２】特開平０４−３６０３３６号公報
【特許文献３】特開平６−６９９２７号公報
【非特許文献１】日経コミュニケーション、２００３．１１．２４  Ｎｏ．４０３ＰＰ７３−８１
【発明の開示】
【発明が解決しようとする課題】
【００２６】
上記の図３０に示した従来のEoE技術では、キャリアネットワーク内のコアスイッチのが持つMACアドレス学習テーブルの容量を削減することができるが、エッジスイッチは依然として、ユーザネットワーク内の全ての端末のMACアドレスを学習する必要があるので、MACアドレス学習テーブルが飽和してしまうという問題がある。特に、広域LANサービスにおいては、キャリアネットワークに接続している端末の数が飛躍的に増加するため、各エッジスイッチのMACアドレス学習テーブルがすぐに飽和してしまい、そのため、MACアドレス学習テーブルのヒット率が低下し、キャリアネットワークに向けて送信されるブロードキャストパケットが増加してしまい、結果的にキャリアネットワーク内のパケット流量が低下するという問題がある。
【００２７】
本発明の目的は、上記従来技術における問題を解決するために、広域VLANのキャリアネットワーク内でユーザネットワークと接続する位置に配置されているエッジスイッチが持つMACアドレス学習テーブルにおける無駄な学習を避けてそのMACアドレス学習テーブルにおけるヒット率を向上させることにある。
【課題を解決するための手段】
【００２８】
上記の目的を達成するために、本発明の第１の態様により提供されるものは、第１のネットワークを介して複数の第２のネットワーク間で通信をする広域LANサービスを提供するネットワーク内のエッジスイッチが、第１のネットワークから受信した未学習状態のパケットの送信元MACアドレスと受信ポートを仮学習状態で登録する仮学習登録手段と、第２のネットワークから受信したパケットの宛先MACアドレスが学習済み状態で登録されている場合、宛先MACアドレスの学習済み状態を本学習状態に変更する学習状態変更手段と、第１のネットワークから受信したパケットの宛先MACアドレスが学習済み状態の場合、第１のネットワークから受信したパケットの送信元MACアドレスと受信ポートを本学習状態で登録する本学習登録手段とを具備することを特徴とする、MACアドレス学習装置である。
【００２９】
本発明の第２の態様においては、仮学習登録手段は、第１のネットワークから最初に受信したパケットの送信元MACアドレスと受信ポートを仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録するよう依頼する第１のネットワーク側受信パケット制御部と、送信元MACアドレスが第１のネットワーク側MACアドレス学習テーブルに未登録の場合、該MACアドレスと受信ポートを仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録する第１のネットワーク側学習テーブル制御部と、を具備する。
【００３０】
本発明の第３の態様においては、学習状態変更手段は、第２のネットワークから受信したパケットの宛先MACアドレスで第１のネットワーク側MACアドレス学習テーブルを検索した結果、宛先MACアドレスが仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録済みの場合、宛先MACアドレスの学習状態を本学習に更新するよう依頼する第１のネットワーク側学習テーブル検索部と、宛先MACアドレスの登録を本学習の状態に更新する第１のネットワーク側学習テーブル制御部と、を具備する。
【００３１】
本発明の第４の態様においては、本学習登録手段は、第１のネットワークから受信したパケットの宛先MACアドレスで第２のネットワーク側MACアドレス学習テーブルを検索した結果、該宛先MACアドレスが第２のネットワーク側MACアドレス学習テーブルに登録済みの場合、受信パケットの送信元アドレスと受信ポートを本学習の状態で登録するよう依頼する第２のネットワーク側学習テーブル検索部と、宛先MACアドレスが第１のネットワーク側MACアドレス学習テーブルに仮学習の状態で登録済みの場合、宛先MACアドレスの登録を本学習の状態に更新する第１のネットワーク側学習テーブル制御部と、を具備する。
【００３２】
本発明の第５の態様においては、エッジスイッチは、第１のネットワークから受信したパケットのMACアドレス学習内容を格納する第１のネットワーク側MACアドレス学習テーブルと、該第１のネットワーク側MACアドレス学習テーブルに登録されている学習情報のランク別にタイムアウト時間を管理するエイジングタイム管理部と、ランク別のエイジングタイムをエイジングタイム管理部に問い合わせて得られた結果を第１のネットワーク側学習テーブルに設定する第１のネットワーク側学習テーブル制御部とを具備する。
【発明の効果】
【００３３】
本発明の第１の態様によれば、第１のネットワークから受信したパケットの宛先MACアドレスが学習済みの場合にのみ、そのパケットの送信元MACアドレスと受信ポートを本学習状態で登録することにより、学習情報にランク付けを行い、それにより仮学習状態のパケットで設定時間以上使用されなかったものについては、その送信元MACアドレスと受信ポートは本学習登録手段には登録されず、したがってエッジスイッチにおけるMACアドレス学習テーブルの飽和を避けることができるという効果が得られる。
【００３４】
本発明の第２の態様によれば、仮学習登録手段は、MACアドレスが第１のネットワーク側MACアドレス学習テーブルに未登録の場合は、最初のMACアドレスと受信ポートを仮学習状態で一時的な学習として第１のネットワーク側MACアドレス学習テーブルに登録するようにしたので、エッジスイッチにおける第１のネットワーク側MACアドレス学習テーブルの飽和を一層確実に避けることができるという効果が得られる。
【００３５】
本発明の第３の態様によれば、第２のネットワークから第１のネットワーク方向のパケット受信を契機に、一時的な学習である仮学習を本学習にランクアップさせることにより、実際に有効なパケットのみを第１のネットワーク側MACアドレス学習テーブルで使用するようにしたので、第２のネットワークから第１のネットワーク方向のパケット受信の場合の第１のネットワーク側MACアドレス学習テーブルの飽和を一層確実に避けることができるという効果が得られる。
【００３６】
本発明の第４の態様によれば、第１のネットワークから第２のネットワーク方向のパケット受信を契機に、一時的な学習である仮学習を本学習にランクアップさせることにより、実際に有効なパケットのみを第１のネットワーク側MACアドレス学習テーブルで使用するようにしたので、第１のネットワークから第２のネットワーク方向のパケット受信の場合のエッジスイッチにおける第１のネットワーク側MACアドレス学習テーブルの飽和を一層確実に避けることができるという効果が得られる。
【００３７】
本発明の第５の態様によれば、ランク別にタイムアウト時間を管理するようにしたので、第１のネットワーク側MACアドレス学習テーブルの飽和を一層確実に避けることができるという効果が得られる。
【発明を実施するための最良の形態】
【００３８】
以下に本発明の実施の形態を図面に基づいて説明する。全図を通して同一参照符号は同一物を表わす。
本発明の実施例を説明する上で必要な記号やデータの定義を以下に示す。
（１）エッジスイッチとは、キャリアネットワーク（第１のネットワーク）内で、ユーザネットワーク（第２のネットワーク）と接続するスイッチをいう。
（２）コアスイッチとは、キャリアネットワーク内で、ユーザネットワークと接続しないスイッチをいう。
（３）VLAN IDとは、VLANを識別する識別子をいい、レイヤ2ネットワークで一意な値である。
（４）学習情報とは、MACアドレス学習テーブルに登録される、MACアドレス、VLAN ID、ポート番号等の情報をいう。
（５）仮学習とは、学習情報を一時的な学習としてMACアドレス学習テーブルへ登録することをいう。
（６）本学習とは、学習情報を有効な学習としてMACアドレス学習テーブルへ登録することをいう。
（７）学習状態とは、キャリア側MACアドレス学習テーブル２０９内に登録される、仮学習または本学習の状態のことをいう。
（８）エイジングタイムとは、MACアドレス学習テーブルで、一定時間参照されないと学習情報が削除されるが、このときの一定時間のことをいう。
【００３９】
実施の形態１
図１は本発明の実施の形態１によるMACアドレス学習装置の概略を説明する図である。同図において、MACアドレス学習装置は、第１のネットワーク（以下、キャリアネットワークという）１１を介して第２のネットワーク（以下、ユーザネットワークという）１２及び１３の間で通信をする広域LANサービスを提供するネットワークにおいて、キャリアネットワーク１１内でユーザネットワーク１２及び１３とそれぞれ接続するエッジスイッチ１４及び１５を備えている。
【００４０】
エッジスイッチ１４および１５はそれぞれ、キャリアネットワーク１１から受信した未学習状態のパケットの送信元MACアドレスと受信ポートを仮学習状態でキャリア側MACアドレス学習テーブル２０９(図２参照）に登録する仮学習登録手段１６と、ユーザネットワーク１３から受信したパケットの宛先MACアドレスを元にキャリア側MACアドレス学習テーブル２０９を検索し、上記宛先MACアドレスが学習済み状態で登録されている場合、宛先MACアドレスの学習済み状態を本学習状態に変更する学習状態変更手段１７とを備えている。
【００４１】
更に、エッジスイッチ１４および１５はそれぞれ、キャリアネットワーク１１から受信したパケットの宛先MACアドレスを元にユーザ側MACアドレス学習テーブル２１４（図２参照）を検索し、その宛先MACアドレスが学習済み状態の場合、キャリアネットワーク１１から受信した上記パケットの送信元MACアドレスと受信ポートを本学習状態でキャリア側MACアドレス学習テーブル２０９に登録する本学習登録手段１８を備えている。
【００４２】
図１では最初にユーザネットワーク１２からユーザネットワーク１３に向けてパケットを送信され、次にユーザネットワーク１３からユーザネットワーク１２にパケットが送信される場合が示されているが、これとは逆に、最初にユーザネットワーク１３からユーザネットワーク１２に向けてパケットを送信され、次にユーザネットワーク１２からユーザネットワーク１３にパケットが送信される場合も当然あり得る。
【００４３】
図２は図１に示したエッジスイッチ１５の構成の概略を示すブロック図である。同図において、太線のブロックが本発明により改造された部分である。
【００４４】
エッジスイッチ１４は、キャリアネットワーク側入力ポート２０１と、ユーザネットワーク側出力ポート２０２と、ユーザネットワーク側入力ポート２０３と、ユーザネットワーク側出力ポート２０４と、キャリア側受信パケット制御部２０５と、ユーザ側学習テーブル検索部２０６と、ユーザ側送信パケット制御部２０７と、キャリア側学習テーブル制御部２０８と、キャリア側MACアドレス学習テーブル２０９と、ユーザ側受信パケト制御部２１０と、キャリア側学習テーブル検索部２１１と、キャリア側送信パケット制御部２１２と、エイジングタイム管理部２１３と、ユーザ側MACアドレス学習テーブル２１４と、ユーザ側学習テーブル制御部２１５とを備えている。
【００４５】
キャリア側受信パケット制御部２０５は、キャリアネットワーク１１からのパケットの送信元アドレスと受信ポートをキャリア側MACアドレス学習テーブル２０９に登録するように、キャリア側学習テーブル制御部２０８に依頼する。本発明では、最初に受信するパケットについては仮学習の状態で登録するよう依頼する。
【００４６】
ユーザ側学習テーブル検索部２０６は、キャリアネットワーク１１から最初に受信したパケットの宛先MACアドレスをもとに、ユーザ側MACアドレス学習テーブル２１４からパケットを送信するユーザネットワーク側のポート番号を検索する。本発明では、該宛先MACアドレスが登録済みの場合、パケットの送信元アドレスと受信ポートを本学習の状態で登録するようにキャリア側学習テーブル制御部２０８に依頼する。
【００４７】
ユーザ側送信パケット制御部２０７は、ユーザ側学習テーブル制御部２１５の検索結果をもとに、ユーザネットワーク１３側の送信ポート２０２へパケットを転送する。
【００４８】
キャリア側学習テーブル制御部２０８は、受信パケットの送信元MACアドレスと受信ポートをキャリア側MACアドレス学習テーブル２０９へ登録する。本発明では、最初の受信パケットについては仮学習としてランク付けを行って登録し、２回目以降の受信パケットについては本学習としてランク付けを行って登録する。
【００４９】
ユーザ側学習テーブル制御部２１５は、ユーザネットワーク１３からのパケットの送信元MACアドレスと受信ポートをユーザ側MACアドレス学習テーブル２１４へ登録する。
【００５０】
ユーザ側受信パケト制御部２１０は、ユーザネットワーク１３からのパケットの送信元MACアドレスと受信ポートをユーザ側MACアドレス学習テーブル２１４へ登録するように、ユーザ側学習テーブル制御部２１５に依頼する。
【００５１】
キャリア側学習テーブル検索部２１１は、ユーザネットワーク１３からのパケットの宛先MACアドレスをもとに、キャリア側MACアドレス学習テーブル２０９からパケットを送信するキャリアネットワーク１１側のポート番号を検索する。本発明では、該宛先MACアドレスがキャリア側MACアドレス学習テーブル２０９に登録済みの場合、キャリア側MACアドレス学習テーブル２０９内の学習状態を本学習に更新するようキャリア側学習テーブル制御部２０８に依頼する。
【００５２】
キャリア側送信パケット制御部２１２は、キャリア側MACアドレス学習テーブル２０９の検索結果をもとに、キャリアネットワーク１１側の送信ポートへパケットを転送する。
【００５３】
エイジングタイム管理部２１３は、キャリア側MACアドレス学習テーブル２０９の各学習情報について、エイジングタイムを管理する。また、エイジングタイムが経過した学習情報をキャリア側MACアドレス学習テーブル２０９から削除する。本発明では、仮学習状態と本学習状態という学習状態別にエイジングタイムを管理する。
【００５４】
図３は図２におけるキャリア側受信パケット制御部２０５の動作の概略を説明するフローチャートである。図３において、ステップＳ３１にてキャリアネットワーク１１から最初のパケットを受信し、ステップＳ３２にて受信パケットの送信元MACアドレス、VLAN  IDおよび受信ポート番号を、仮学習の状態でキャリア側MACアドレス学習テーブル２０９に登録するようキャリア側学習テーブル制御部２０８に依頼する。次いでステップＳ３３で受信パケットをユーザ側学習テーブル検索部２０６に渡す。
【００５５】
図４はキャリアネットワークからパケットを受信した場合のキャリア側学習テーブル制御部２０８の動作の概略を説明するフローチャートである。図４において、ステップＳ４１にてキャリア側受信パケット制御部２０５またはユーザ側学習テーブル検索部２０６から、送信元MACアドレス、VLAN  ID、および受信ポート番号の登録依頼を受ける。
【００５６】
次いでステップＳ４２にて、パケットの送信元MACアドレスとVLAN  IDをもとにキャリア側MACアドレス学習テーブル２０９を検索し、該送信元MSCアドレスの登録状態および学習状態を判定する。
【００５７】
次いでステップＳ４３にて学習状態の判定の結果、未学習の場合はステップＳ４４に進み、仮学習のエイジングタイム（例えば３秒）をエイジングタイム管理部２１３に問い合わせる。次いでステップＳ４５にて、パケット送信元MACアドレス、VLAN  ID、および受信ポート番号、仮学習のエイジングタイム、および仮学習の学習状態をキャリア側ＭＡＣアドレス学習テーブル２０９に登録する。
【００５８】
ステップＳ４３の判定で学習済みの場合はステップＳ４６に進み、キャリア側ＭＡＣアドレス学習テーブル２０９に登録されている学習状態が仮学習か本学習かを判定する。仮学習の場合はステップＳ４６に進み、本学習のエイジングタイム（例えば３００秒）をエイジングタイム管理部２１３に問い合わせる。次いでステップＳ４７にてキャリア側ＭＡＣアドレス学習テーブル２０９に登録されている仮学習の学習状態を本学習の状態に更新し、エイジングタイムを本学習のエイジングタイムに更新する。
【００５９】
図５はエイジングタイム管理部２１３の動作の概略を説明するフローチャートである。図５において、ステップＳ５１にてキャリア側学習テーブル制御部２０８が受信パケットの学習状態をもとにエイジングタイム管理部２１３にエイジングタイムを問い合わせる。次いでステップＳ５２にてエイジングタイム管理部２１３から受信パケットの学習状態に対応したエイジングタイムをキャリア側学習テーブル制御部２０８に返す。
【００６０】
図６はユーザ側学習テーブル検索部２０６の動作の概略を説明するフローチャートである。図６において、ステップＳ６１にてキャリア側学習テーブル制御部２０８から受信パケットを受け取る。次いでステップＳ６２にてそのパケットの宛先MACアドレスとVLAN  IDをもとにキャリア側MACアドレス学習テーブル２０９を検索する。
【００６１】
次いでステップＳ６３でキャリア側ＭＡＣアドレス学習テーブル２０９に上記受信パケットが登録されているか否かを判定し、登録ありであればステップＳ６４に進み登録なしであればステップＳ６５に進む。
【００６２】
ステップＳ６４ではキャリア側学習テーブル制御部２０８は、受信パケットの送信元アドレス、VLAN  ID、および受信ポート番号を、本学習の状態でキャリア側MACアドレス学習テーブルに登録するようにキャリア側学習テーブル制御部２０８に依頼する。
【００６３】
ステップＳ６３又はステップＳ６４の後にステップＳ６５にてユーザ側送信パケット制御部２０７にパケットを渡す。
【００６４】
図７はキャリア側学習テーブル検索部２１１の動作の概略を説明するフローチャートである。図７において、ステップＳ７１でユーザ側受信パケト制御部２１０からパケットを受け取り、ステップＳ７２にてそのパケットの宛先アドレスとVLAN  IDをもとにキャリア側MACアドレス学習テーブル２０９を検索し、ステップＳ７３でそのパケットがキャリア側ＭＡＣアドレス学習テーブル２０９に登録されているか否かを判定する。
【００６５】
ステップＳ７３の判定の結果、登録ありの場合はステップＳ７４に進み、そのパケットの学習状態を判定する。その判定の結果、学習状態が仮学習であればステップＳ７５にてキャリア側学習テーブル制御部２０８に該MACアドレスの学習状態を本学習に更新するよう依頼する。ステップＳ７３で登録なし、ステップＳ７４で本学習、又はステップＳ７５の後にステップＳ７６にてキャリア側送信パケット制御部２１２にパケットを渡す。
【００６６】
図８はユーザネットワークからパケットを受信した場合のキャリア側学習テーブル制御部２０８の動作の概略を説明するフローチャートである。図８において、ステップＳ８１にてキャリア側学習テーブル検索部２１１から、宛先MACアドレスの学習状態の更新依頼を受ける。この更新依頼は、ユーザネットワークから受信したパケットの学習状態がキャリア側ＭＡＣアドレス学習テーブル２０９内で未学習又は仮学習の場合にのみ発行される。換言すれば、ユーザネットワークから受信したパケットの学習状態がキャリア側ＭＡＣアドレス学習テーブル２０９内で本学習の状態であれば、更新依頼が来ても学習状態およびエイジングタイムは更新されない。
【実施例１】
【００６７】
図９は本発明の実施例１による、宛先MACアドレス学習前のキャリアネットワークからのパケット受信を説明する図である。
【００６８】
本実施例では、エッジスイッチ１５において、従来のようにキャリアネットワーク１１から受信したパケットの送信元MACアドレス、VLAN ID、および受信ポート番号をそのままキャリア側MACアドレス学習テーブル２０９に登録するのではなく、上記宛先MACアドレスがキャリア側MACアドレス学習テーブル２０９に未登録であるか否かを判定し、未登録である場合は一時的な学習（仮学習）としてキャリア側MACアドレス学習テーブル２０９に登録する。
【００６９】
ユーザネットワーク１２内の端末Aより送信されたパケット９１は、宛先がB、送信元がA、VLAN  IDが１のパケットである。パケット９１をキャリアネットワーク１１を介して受信したエッジスイッチ１５のキャリア側受信パケット制御部２０５は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号をキャリア側MACアドレス学習テーブル２０９へ登録するようキャリア側学習テーブル制御部２０８へ依頼し、パケットをユーザ側学習テーブル検索部２０６へ渡す。従来技術では、キャリア側学習テーブル制御部２０８へ依頼する際、学習情報をそのまま登録するよう依頼するが、本発明では学習状態を一時的な学習(仮学習)とランク付けをして登録するよう依頼する。
【００７０】
学習情報の登録を依頼されたキャリア側学習テーブル制御部２０８は、パケットの送信元MACアドレスとVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索する。パケット受信前ではキャリア側MACアドレス学習テーブル２０９には該MACアドレスが未登録である。
【００７１】
従来技術では、キャリア側MACアドレス学習テーブル２０９に受信パケットの送信元MACアドレス、VLAN  ID、および入力ポート番号を登録し、エイジングタイム管理部２１３にエイジングタイムを問い合わせ、固定のエイジングタイムをそのままキャリア側MACアドレス学習テーブル２０９に登録していた。
【００７２】
これに対し、本発明の実施例１におけるエイジングタイム管理部２１３は、学習状態のランク別にエイジングタイムを管理しており、キャリア側学習テーブル制御部２０８は、最初にパケットを受信した場合に、仮学習のエイジングタイムをエイジングタイム管理部２１３に問い合わせる。エイジングタイム管理部２１３は、仮学習のエイジングタイムをキャリア側学習テーブル制御部２０８に返し、キャリア側学習テーブル制御部２０８は、宛先MACアドレス、VLAN  ID、ポート番号に加えて、学習状態として仮学習を示す”０”、および仮学習の場合のエイジングタイムである３秒をキャリア側MACアドレス学習テーブル２０９に登録する。
【００７３】
キャリア側MACアドレス学習テーブル２０９の更新前に、ユーザ側学習テーブル検索部２０６は、パケットの宛先MACアドレス、およびVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索するが、該宛先MACアドレスは未学習のため、ユーザ側送信パケット制御部２０７にパケットをブロードキャスト送信するよう依頼し、パケットを渡す。パケットを受け取ったユーザ側送信パケット制御部２０７は、パケット９２をブロードキャストする。
【００７４】
これにより、エッジスイッチ１５は、キャリアネットワーク１１から最初に受信したパケットの送信元MACアドレスがキャリア側MACアドレス学習テーブル２０９に未登録であることを判定し、一時的な学習である仮学習としてキャリア側MACアドレス学習テーブル２０９に登録することが可能となる。
【実施例２】
【００７５】
図１０は本発明の実施例２による、宛先MACアドレス学習後のユーザネットワークからのパケット受信を説明する図である。
【００７６】
本実施例では、エッジスイッチ１５において、従来のようにユーザネットワーク１３から受信したパケットの宛先MACアドレス、およびVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索し、検索結果をもとにキャリアネットワーク１１に送信するだけではなく、該宛先MACアドレスがキャリア側MACアドレス学習テーブル２０９に一時的な学習として登録されている場合は、学習状態を有効な学習(本学習）に更新する。
【００７７】
尚、以下の説明にあたっては、図９に示したキャリア側MACアドレス学習テーブル２０９のパケット受信後の状態でエッジスイッチ１５が端末Bからパケットを受信する場合を説明する。
【００７８】
ユーザネットワーク１３内の端末Bより送信されたパケットは１０１は、宛先がA、送信元がB、VLAN  IDが１のパケットである。このパケット１０１を受信したエッジスイッチ１５のユーザ側受信パケト制御部２１０は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号をユーザ側MACアドレス学習テーブル２１４へ登録するようにユーザ側学習テーブル制御部２１５へ依頼し、パケットをキャリア側学習テーブル検索部２１１へ渡す。ユーザ側学習テーブル制御部２１５は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号をユーザ側MACアドレス学習テーブル２１４へ登録する。
【００７９】
従来技術では、キャリア側MACアドレス学習テーブル検索部３１４は、パケットの宛先MACアドレスおよびVLAN IDをもとにキャリア側MACアドレス学習テーブル３１７を検索し、検索結果をもとにキャリア側送信パケット制御部にパケットをポート１から送信するよう依頼し、パケットを渡していた（図３１）。
【００８０】
これに対し、本発明のキャリア側学習テーブル検索部２１１は、キャリア側MACアドレス学習テーブル２０９を検索するとき、パケットの宛先MACアドレスの学習状態を判定し、該宛先MACアドレスが仮学習の状態で学習されている場合は、学習状態を一時的な学習(仮学習)から有効な学習(本学習)へ更新するようにキャリア側学習テーブル制御部２０８へ依頼する。
【００８１】
学習状態の更新を依頼されたキャリア側学習テーブル制御部２０８は、エイジングタイム管理部２１３に本学習のエイジングタイムを問い合わせる。エイジングタイム管理部２１３は、学習状態のランク別にエイジングタイムを管理しており、本学習のエイジングタイムをキャリア側学習テーブル制御部２０８に返す。キャリア側学習テーブル制御部２０８は、キャリア側MACアドレス学習テーブル２０９内の当該パケットのテーブルの学習状態を本学習に更新し、エイジングタイムも更新する。
【００８２】
キャリア側学習テーブル検索部２１１からパケットを受け取ったキャリア側送信パケット制御部２１２は、キャリア側学習テーブル検索部２１１による検索結果をもとに、出力ポート２０４からパケット１０２を送信する。
【００８３】
これにより、エッジスイッチ１５は、ユーザネットワーク１３から受信したパケットの宛先MACアドレスがキャリア側MACアドレス学習テーブル２０９に一時的な学習である仮学習として登録されていることを判定し、学習状態を有効な学習である本学習状態に更新することが可能となる。
【実施例３】
【００８４】
図１１は本発明の実施例３による、宛先MACアドレス学習後のキャリアネットワーク１１からのパケット受信を説明する図である。
【００８５】
本実施例では、エッジスイッチ１５において、従来のようにキャリアネットワーク１１から受信したパケットの送信元MACアドレス、VLAN ID、および受信ポート番号をそのままキャリア側MACアドレス学習テーブル２０９に登録するのではなく、受信したパケットの宛先MACアドレスがユーザ側MACアドレス学習テーブル２１４に登録されていることを判定し、パケットの送信元MACアドレスを有効な学習としてキャリア側MACアドレス学習テーブル２０９に登録する。
【００８６】
尚、説明にあたっては、図１０に示した宛先MACアドレス学習後のユーザネットワークからのパケット受信後の状態で、端末Aからのパケットがキャリアネットワーク１１を経由してエッジスイッチ１５にて受信した場合を説明する。
【００８７】
端末Aより送信されたパケット１１１は送信元MACアドレスがA、宛先MACアドレスがB、VLAN  IDが１のパケットである。このパケット１１１を受信したエッジスイッチ１５のキャリア側受信パケット制御部２０５は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号をキャリア側MACアドレス学習テーブル２０９へ登録するようキャリア側学習テーブル制御部２０８へ依頼し、パケットをユーザ側学習テーブル検索部２０６へ渡す。
【００８８】
従来技術では、キャリア側学習テーブル制御部２０８へ依頼する際、学習情報をそのまま登録するよう依頼したいたが、本発明では未学習状態で最初にパケットを受信した時のキャリア側MACアドレス学習テーブル２０９内の学習状態を一時的な学習(仮学習)とランク付けをして登録するよう依頼する。
【００８９】
学習情報の登録を依頼されたキャリア側学習テーブル制御部２０８は、パケットの送信元MACアドレスとVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索する。該送信元MACアドレスが未登録のため、従来技術では、エイジングタイム管理部にエイジングタイムを問い合わせ、学習情報とエイジングタイムをそのままキャリア側MACアドレス学習テーブルに登録していた。
【００９０】
これに対し、本実施例のエイジングタイム管理部２１３は、学習状態のランク別にエイジングタイムを管理しており、キャリア側学習テーブル制御部２０８は、仮学習のエイジングタイムを問い合わせる。エイジングタイム管理部２１３は、仮学習のエイジングタイムをキャリア側学習テーブル制御部２０８に返し、キャリア側学習テーブル制御部２０８は、学習情報、学習状態(仮学習)、およびエイジングタイムをキャリア側MACアドレス学習テーブル２０９に登録する。
【００９１】
従来技術では、ユーザ側学習テーブル検索部は、パケットの宛先MACアドレス、およびVLAN IDをもとにユーザ側MACアドレス学習テーブルを検索し、該MACアドレスは学習済みのため、ユーザ側送信パケット制御部にパケットを出力ポートから送信するよう依頼し、パケットを渡していた。
【００９２】
これに対し、本実施例のユーザ側学習テーブル検索部２０６は、ユーザ側MACアドレス学習テーブル２１４において該宛先MACアドレスが学習済みの場合、キャリア側MACアドレス学習テーブル２０９に登録されているパケットの送信元MACアドレスの学習状態を、一時的な学習(仮学習)から有効な学習(本学習)へ更新するようにキャリア側学習テーブル制御部２０８へ依頼する。
【００９３】
学習状態の更新を依頼された、キャリア側学習テーブル制御部２０８は、エイジングタイム管理部２１３に本学習のエイジングタイムを問い合わせる。エイジングタイム管理部２１３は、学習状態のランク別にエイジングタイムを管理しており、本学習のエイジングタイムをキャリア側学習テーブル制御部２０８に返す。キャリア側学習テーブル制御部２０８は、キャリア側MACアドレス学習テーブル２０９内の該当パケットの学習状態を本学習に更新し、エイジングタイムも更新する。
【００９４】
ユーザ側学習テーブル検索部２０６からパケットを受け取ったユーザ側送信パケット制御部２０７は、ユーザ側学習テーブル検索部２０６による検索結果をもとに、出力ポート２０２からパケット１１２を送信する。
【００９５】
これにより、エッジスイッチ１５は、キャリアネットワーク１１から受信したパケット１１１の宛先MACアドレスがユーザ側MACアドレス学習テーブル２１４に登録されていることを判定し、パケットの送信元MACアドレスを有効な学習としてキャリア側MACアドレス学習テーブル２０９に登録することが可能となる。
【実施例４】
【００９６】
図１２は本発明の実施例４による、キャリア側MACアドレス学習テーブル２０９が飽和している状態でのキャリアネットワークからのパケット受信の説明図である。
【００９７】
本実施例では、エッジスイッチ１５において、キャリア側MACアドレス学習テーブル２０９が飽和している状態で学習情報の登録を依頼された場合、従来のように学習内容に関わらず学習情報を削除するのではなく、仮学習状態の学習情報から削除することにより、キャリア側MACアドレス学習テーブル２０９のヒット率を向上させることが可能となる。
【００９８】
図１２において、ユーザネットワーク１２内の端末Cより送信されたパケット１２１は送信元MACアドレスはC、宛先MACアドレスはD、VLAN  IDは１のパケットである。このパケット１２１を受信したエッジスイッチ１５のキャリア側受信パケット制御部２０５は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号をキャリア側MACアドレス学習テーブル２０９へ登録するようキャリア側学習テーブル制御部２０８へ依頼し、パケットをユーザ側学習テーブル検索部２０６へ渡す。
【００９９】
従来技術では、キャリア側学習テーブル制御部２０８へ依頼する際、学習情報をそのまま登録するよう依頼していたが、本実施例では端末Cからのパケットの学習状態は未学習状態なので、その学習状態を一時的な学習(仮学習)とランク付けをして登録するよう依頼する。
【０１００】
学習情報の登録を依頼されたキャリア側学習テーブル制御部２０８は、パケットの送信元MACアドレスCとVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索する。図１２に示すキャリア側MACアドレス学習テーブル２０９はパケットCの受信前には、送信元MACアドレスCが未登録なので、パケットCの情報をキャリア側MACアドレス学習テーブル２０９に登録可能かどうかを判定するためにキャリア側MACアドレス学習テーブル２０９内のテーブルの学習数を判定する。
【０１０１】
テーブル学習数が最大数となっている場合は、従来技術では、キャリア側MACアドレス学習テーブルへの登録順に学習情報を一つ削除し、エイジングタイム管理部にエイジングタイムを問い合わせ、登録を依頼された学習情報とエイジングタイムをそのままキャリア側MACアドレス学習テーブルに登録していた。
【０１０２】
これに対し、本実施例のキャリア側学習テーブル制御部２０８は、キャリア側MACアドレス学習テーブル２０９から仮学習の学習情報を検索してその学習情報を削除する。そして、エイジングタイム管理部２１３に仮学習のエイジングタイムを問い合わせる。エイジングタイム管理部２１３は、仮学習のエイジングタイムをキャリア側学習テーブル制御部２０８に返し、キャリア側学習テーブル制御部２０８は、学習情報、学習状態(仮学習)、およびエイジングタイムをキャリア側MACアドレス学習テーブル２０９に登録する。
【０１０３】
これにより、エッジスイッチ１５は、キャリア側MACアドレス学習テーブル２０９に仮学習の状態で登録されている学習情報を削除して、依頼された学習情報を登録することにより、学習テーブルのヒット率を向上させることが可能となる。
【０１０４】
図１３は上記各実施例に適用されるネットワークの構成例を示す図である。なお、このネットワークでは、説明の簡便のため、EoE技術を用いない場合について説明するが、EoE技術を用いた場合についても本発明は問題なく適用可能である。図１３に示したネットワークの構成は図１に示したものとほぼ同じである。図１３においては、キャリアネットワーク１１内にコアスイッチ１３１がエッジスイッチ１４と１５の間に存在しており、ユーザネットワーク１２内に端末Aが存在しており、ユーザネットワーク１３内に端末Bが存在している。
【０１０５】
エッジスイッチ１４および１５におけるエイジングタイムは、コマンド入力等で設定可能であるが、本発明の各実施例では、初期設定で、学習状態が仮学習の場合は３秒に設定し、本学習の場合は３００秒に設定する。仮学習および本学習のエイジングタイムとしては、勿論これ以外の時間を設定してもよい。
【０１０６】
図１４は上記各実施例における端末Aから端末Bへのパケット送信の具体例を説明する図である。
【０１０７】
図１４に示す例では、端末AのMACアドレスは00-E0-00-00-10-10、端末BのMACアドレスは00-E0-00-00-10-20であり、エッジスイッチ１４およびエッジスイッチ１５のポート1およびポート2にはVLAN ID＝1が登録されている。
【０１０８】
端末Aより送信されたパケット１４１は、エッジスイッチ１４のポート１で受信される。エッジスイッチ１４のユーザ側学習テーブル制御部２１５は、パケットの送信元MACアドレス＝00-E0-00-00-10-10、VLAN ID＝1、および受信ポート番号＝1をユーザ側MACアドレス学習テーブル２１４へ登録するようユーザ側学習テーブル制御部２１５へ依頼し、パケット１４１をキャリア側学習テーブル２１１へ渡す。
【０１０９】
ユーザ側学習テーブル制御部２１５は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号をユーザ側MACアドレス学習テーブル２１４へ登録する。図１６はエッジスイッチ１４のユーザ側MACアドレス学習テーブル２１４の内容例を示す図である。
【０１１０】
キャリア側学習テーブル２１１は、パケット１４１の宛先MACアドレス＝00-E0-00-00-10-20およびVLAN ID：1をもとにキャリア側MACアドレス学習テーブル２０９を検索するが、該MACアドレスは未学習のため、キャリア側送信パケット制御部２１２にパケット１４１をブロードキャスト送信するよう依頼し、パケット１４１を渡す。パケット１４１を受け取ったキャリア側送信パケット制御部２１２は、VLAN ID＝1が登録されているポート２へパケットをブロードキャストする。
【０１１１】
エッジスイッチ１４１のポート２からブロードキャストされたパケット１４２はコアスイッチ１３１で受信され、エッジスイッチ１５へ転送される。このときのコアスイッチ１３１の動作は従来技術と同様の動作であるため、本実施例での説明は省略する。
【０１１２】
コアスイッチ１３１から転送されたパケット１４２はエッジスイッチ１５のポート1で受信される。エッジスイッチ１５のユーザ側学習テーブル制御部２１５は、図４のフローチャートに示すように、パケット１４２の送信元MACアドレス＝00-E0-00-00-10-10、VLAN ID＝1、および受信ポート番号＝1をキャリア側MACアドレス学習テーブル２０９へ登録するようキャリア側学習テーブル制御部２０８へ依頼し、パケット１４２をユーザ側学習テーブル検索部２０６へ渡す。本発明ではキャリア側MACアドレス学習テーブル２０９へ未学習の学習情報の登録を依頼するときに、仮学習の状態で登録するよう依頼する。
【０１１３】
キャリア側学習テーブル制御部２０８は、図４のフローチャートに示したように、パケットの送信元MACアドレスとVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索し、該MACアドレスの学習状態を判定する。該MACアドレスは未学習のため、エイジングタイム管理部２１３に、仮学習のエイジングタイムを問い合わせる。
【０１１４】
図１７はエイジングタイム管理部２１３内のエイジングタイム管理テーブルの内容例を示す図である。
【０１１５】
エイジングタイム管理部２１３は、図５のフローチャートに示したように、学習状態＝仮学習をもとに図１７に示したエイジングタイム管理テーブルからエイジングタイムを検索し、エイジングタイム＝３秒をキャリア側学習テーブル制御部２０８に返す。キャリア側学習テーブル制御部２０８は、パケット１４２の送信元MACアドレス、VLAN ID、受信ポート番号、学習状態＝0(仮学習)、およびエイジングタイム＝３秒をキャリア側MACアドレス学習テーブル２０９に登録する。
【０１１６】
図１８は仮学習が登録された状態のエッジスイッチ１５のキャリア側MACアドレス学習テーブル２０９の内容を示す図である。
【０１１７】
エッジスイッチ１５内のユーザ側学習テーブル検索部２０６は、図６のフローチャートに示したように、パケットの宛先MACアドレス＝0-E0-00-00-10-20およびVLAN ID＝1をもとにユーザ側MACアドレス学習テーブル２１４を検索するが、該宛先MACアドレスは未学習のため、ユーザ側送信パケット制御部２０７にパケット１４３をブロードキャスト送信するよう依頼し、パケット１４３を渡す。パケット１４３を受け取ったユーザ側送信パケット制御部２０７は、VLAN ID＝1が登録されているポート２へパケット１４３をブロードキャストする。
【０１１８】
以上に説明したように、エッジスイッチ１５においてパケットの送信元MACアドレス、VLAN IDおよび受信ポートが未学習の場合は仮学習としてMACアドレス学習テーブルに登録する。
【０１１９】
図１５は上記各実施例における端末Bから端末Aへのパケット送信の動作を具体例で説明する図である。
【０１２０】
説明の簡便のため、図１４により説明した動作をし終わった状態を前提として引き続き説明する。エッジスイッチ１４のユーザ側MACアドレス学習テーブル２１４およびエッジスイッチ１５のキャリア側MACアドレス学習テーブル２０９は端末AのMACアドレス＝00-E0-00-00-10-10を学習済みである。
【０１２１】
図１５に示す端末Bより送信されたパケット１５１は、エッジスイッチ１５のポート２で受信される。エッジスイッチ１５のユーザ側受信パケト制御部２１０は、パケットの送信元MACアドレス＝00-E0-00-00-10-20、VLAN ID＝1、および受信ポート番号＝2をユーザ側MACアドレス学習テーブル２１４へ登録するようユーザ側学習テーブル制御部２１５へ依頼し、パケットをキャリア側学習テーブル２１１へ渡す。
【０１２２】
ユーザ側学習テーブル制御部２１５は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号をユーザ側MACアドレス学習テーブル２１４へ登録する。
【０１２３】
図１９は図１５におけるエッジスイッチ１５内のユーザ側MACアドレス学習テーブル２１４に上記登録をした後の状態を示す図である。
【０１２４】
キャリア側学習テーブル２１１は、図７のフローチャートに示したように、パケットの宛先MACアドレス＝00-E0-00-00-10-10およびVLAN ID＝1をもとにキャリア側MACアドレス学習テーブル２０９を検索する。該宛先MACアドレスは図１８に示すように、仮学習の状態で学習されているので、キャリア側学習テーブル２１１は該宛先MACアドレスの学習状態を仮学習から本学習へ更新するようキャリア側学習テーブル制御部２０８へ依頼する。また、キャリア側送信パケット制御部２１２にパケットをポート1から送信するよう依頼し、パケットを渡す。
【０１２５】
キャリア側学習テーブル制御部２０８は、図８のフローチャートに示したように、エイジングタイム管理部２１３に、本学習のエイジングタイムを問い合わせる。エイジングタイム管理部２１３は、図５のフローチャートに示したように、学習状態＝本学習をもとに図７に示したエイジングタイム管理テーブルからエイジングタイムを検索し、エイジングタイム＝300秒をキャリア側学習テーブル制御部２０８に返す。キャリア側学習テーブル制御部２０８は、キャリア側MACアドレス学習テーブル２０９内の学習状態を1(本学習)に更新し、エイジングタイムも300s(秒）に更新する。図２０は更新後のキャリア側MACアドレス学習テーブル２０９を示す図である。
【０１２６】
キャリア側学習テーブル２１１からパケットを受け取ったキャリア側送信パケット制御部２１２は、キャリア側学習テーブル２１１の検索結果をもとに、ポート1からキャリアネットワーク１１内のコアスイッチ１３１にパケット１５２を送信する。
【０１２７】
以上に説明したように、エッジスイッチ１５においてユーザネットワーク１３からキャリアネットワーク１１方向のパケット受信を契機に、仮学習の状態の学習情報を本学習の状態に更新することができる。
【０１２８】
エッジスイッチ１５のポート1から送信されたパケット１５２はコアスイッチ１３１で受信され、エッジスイッチ１４へ転送される。このときのコアスイッチ１３１の動作は従来技術と同様の動作であるため、ここでの説明は省略する。
【０１２９】
コアスイッチ１３１から転送されたパケット１５２はエッジスイッチ１４のポート２で受信される。エッジスイッチ１４のユーザ側学習テーブル制御部２１５は、図４のフローチャートに示したように、パケットの送信元MACアドレス＝00-E0-00-00-10-20、VLAN ID＝1、および受信ポート番号＝２を仮学習の状態でキャリア側MACアドレス学習テーブル２０９へ登録するようキャリア側学習テーブル制御部２０８へ依頼し、パケットをユーザ側学習テーブル検索部２０６へ渡す。
【０１３０】
キャリア側学習テーブル制御部２０８は、図４のフローチャートに示したように、パケット１５３の送信元MACアドレスとVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索し、該送信元MACアドレスの学習状態を判定する。この場合、該送信元MACアドレスは未学習のため、エイジングタイム管理部２１３に、仮学習のエイジングタイムを問い合わせる。
【０１３１】
エイジングタイム管理部２１３は、図５のフローチャートに示したように、学習状態＝仮学習をもとに図１７に示したエイジングタイム管理テーブルからエイジングタイムを検索し、エイジングタイム＝3sをキャリア側MACアドレス学習テーブル２０９に返す。キャリア側学習テーブル制御部２０８は、パケットの送信元MACアドレス、VLAN ID、および受信ポート番号を学習状態＝０(仮学習)、エイジングタイム＝3sをキャリア側MACアドレス学習テーブル２０９に登録する。図２１は上記の仮学習登録後のキャリア側MACアドレス学習テーブル２０９の状態を示す図である。
【０１３２】
ユーザ側学習テーブル検索部２０６は、図６のフローチャートに示したように、パケットの宛先MACアドレス＝00-E0-00-00-10-10およびVLAN ID＝1をもとにユーザ側MACアドレス学習テーブル２１４を検索する。この場合、該宛先MACアドレスは図１６に示したように学習済みなので、ユーザ側学習テーブル検索部２０６はパケットの送信元MACアドレス＝00-E0-00-00-10-20、VLAN ID＝1、および受信ポート番号＝２を本学習の状態で登録するようキャリア側学習テーブル制御部２０８へ依頼する。また、ユーザ側送信パケット制御部２０７にパケットをポート1から送信するよう依頼し、パケットを渡す。
【０１３３】
キャリア側学習テーブル制御部２０８は、図４のフローチャートに示したように、パケットの送信元MACアドレスとVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索し、該送信元MACアドレスの学習状態を判定する。この場合、該送信元MACアドレスは図２１に示したように仮学習（学習状態＝０）の状態のため、エイジングタイム管理部２１３に、本学習のエイジングタイムを問い合わせる。
【０１３４】
エイジングタイム管理部２１３は、図４のフローチャートに示したように、学習状態＝本学習をもとに図１７に示したエイジングタイム管理テーブルからエイジングタイムを検索し、エイジングタイム＝300sをキャリア側学習テーブル制御部２０８に返す。キャリア側学習テーブル制御部２０８は、図２２に示すように学習状態を1(本学習)に更新し、エイジングタイムも300sに更新する。図２２は本学習への更新後のエッジスイッチ１４のキャリア側MACアドレス学習テーブル２０９の状態を示す図である。
【０１３５】
ユーザ側学習テーブル検索部２０６からパケットを受け取ったユーザ側送信パケット制御部２０７は、ユーザ側学習テーブル検索部２０６の検索結果をもとに、ポート＝1からユーザネットワーク１２の端末Aにパケットを送信する。
【０１３６】
以上に説明したように、エッジスイッチ１４おいてキャリアネットワーク１１からキユーザネットワーク１２方向のパケット受信を契機に、仮学習の状態の学習情報を本学習の状態に更新することができる。
【０１３７】
また、キャリア側MACアドレス学習テーブル２０９に登録されている学習情報のランク別にタイムアウト時間を設定することができる。
【０１３８】
これ以降、キャリアネットワーク１１内のエッジスイッチ１４および１５は、各MACアドレス学習テーブルにしたがって、端末AとBの間でブロードキャストパケットを送信することなく、パケットの送受信を行うことが可能である。
【０１３９】
以上に説明したように、キャリアネットワーク１１の各エッジスイッチにて、学習情報にランク付けを行って保持することができる。
【０１４０】
上記状態において、各エッジスイッチのエイジングタイム管理部２１３は、従来技術により、１秒周期でキャリア側MACアドレス学習テーブル２０９の全学習情報のエイジングタイムを減算し、エイジングタイムが０s(秒）になった場合、該学習情報をキャリア側MACアドレス学習テーブル２０９から削除する。このとき、学習状態別にエイジングタイムを設定しているため、仮学習の学習情報の方が本学習の学習情報より早く削除することができ、無駄な学習でMACアドレス学習テーブルが飽和するのを防ぐことが可能である。
【０１４１】
実施の形態２
【０１４２】
図２３は本発明の実施の形態２よるMACアドレス学習装置の概略を説明する図である。
【０１４３】
説明の簡便のため、本実施の形態でも、EoE技術を用いない場合について説明するが、EoE技術を用いた場合についても本実施の形態は問題なく適用可能である。
同図において、MACアドレス学習装置は、キャリアネットワーク２３１を介してユーザネットワーク２３２〜２３５の間で通信をする広域LANサービスを提供するネットワークにおいて、キャリアネットワーク２３１は、ユーザネットワーク２３２及び２３３と接続するエッジスイッチ２３６と、ユーザネットワーク２３４及び２３５と接続するエッジスイッチ２３７と、エッジスイッチ２３６と２３７の間に接続されているコアスイッチ２３８とを備えている。
【０１４４】
本実施の形態２においても、エッジスイッチ２３６および２３７のそれぞれの構成は図２に示したものと同じであり、実施の形態１で説明したのと同様の部分の説明はここでは省略する。
【０１４５】
図示例では、ユーザネットワーク２３２および２３４にはVLAN ID＝1が割り当てられており、ユーザネットワーク２３３および２３５にはVLAN ID＝２が割り当てられている。ユーザネットワーク２３２には端末AおよびBが存在し、ユーザネットワーク２３４には端末CおよびDが存在し、ユーザネットワーク２３３には端末EおよびFが存在し、ユーザネットワーク２３５には端末Gが存在している。
【０１４６】
VLAN  ID＝１のユーザネットワーク２３２および２３４内の端末A〜DのMACアドレスはそれぞれ、00-E0-00-00-10-10、00-E0-00-00-10-20、00-E0-00-00-10-30、00-E0-00-00-10-40である。また、VLAN  ID＝２のユーザネットワーク２３３および２３５内の端末E〜GのMACアドレスはそれぞれ、00-E0-00-00-20-10、00-E0-00-00-20-20、00-E0-00-00-20-30である。
【０１４７】
図２４は本発明の実施の形態２における、エッジスイッチ２３７のキャリア側MACアドレス学習テーブル２０９のテーブル学習数が最大で３個である場合の内容を示す図である。同図において、実施の形態１と同様に、学習状態が１（本学習）の場合はエイジングタイムは300s(秒）、０（仮学習）の場合のエイジングタイムは3s(秒）である。テーブル学習数が最大で３個というのは例示であって、実際にはより多くの数が最大テーブル学習数である。
【０１４８】
図２５は本発明の実施の形態２において、キャリア側MACアドレス学習テーブル２０９から削除する仮学習の学習情報の条件を、テーブル昇順検索とした場合の、更新後のキャリア側MACアドレス学習テーブル２０９の内容を示す図である。図２６は本発明の実施の形態２において、キャリア側MACアドレス学習テーブル２０９から削除する仮学習の学習情報の条件を、VLAN ID検索とした場合の、更新後のキャリア側MACアドレス学習テーブル２０９の内容を示す図である。
【０１４９】
図２７および図２８は本実施の形態２によるキャリア側学習テーブル制御部２０８の動作を説明するフローチャートである。
以下、図２および図２３〜図２８を用いて本実施の形態２によるMACアドレス学習装置の動作を説明する。
【０１５０】
VLAN ID＝2に属する端末Eと、同じくVLAN ID＝2に属する端末Gでパケットを送受信する場合について説明する。
ユーザネットワーク２３３の端末Eから送信されたパケットは、キャリアネットワーク２３１内を転送されてエッジスイッチ２３７で受信される。このときのエッジスイッチ２３６、およびコアスイッチ２３８の動作は実施の形態１と同様の動作であるため、ここでの説明は省略する。
【０１５１】
コアスイッチ２３８から転送されたパケットはエッジスイッチ２３７のポート1で受信される。エッジスイッチ２３７のキャリア側受信パケット制御部２０５は、パケットの送信元MACアドレス：00-E0-00-00-20-10、VLAN ID＝2、および受信ポート番号＝1をキャリア側MACアドレス学習テーブル２０９へ登録するようキャリア側学習テーブル制御部２０８へ依頼し、パケットをユーザ側学習テーブル検索部２０６へ渡す。本実施の形態２でもキャリア側MACアドレス学習テーブル２０９へ最初に学習情報の登録を依頼するときに、仮学習の状態で登録するよう依頼する。
【０１５２】
キャリア側学習テーブル制御部２０８は、図２７および図２８のフローチャートに示すように、パケットの送信元MACアドレスとVLAN IDをもとにキャリア側MACアドレス学習テーブル２０９を検索し、該送信元MACアドレスの学習状態を判定する。最初は該送信元MACアドレスは図２４に示すように学習状態＝０（未学習）のため、テーブルの学習情報の登録数をチェックする(ステップＳ２７３）。図２４に示すようキャリア側MACアドレス学習テーブル２０９には最大数の学習情報が登録されているため、キャリア側MACアドレス学習テーブル２０９から学習状態が仮学習の学習情報を検索し、仮学習状態のMACアドレス＝00-E0-00-00-10-10の学習情報を削除する。以後、MACアドレス＝00-E0-00-00-20-10の学習情報をキャリア側MACアドレス学習テーブル２０９に登録するまでの動作は実施の形態１と同様の動作であるため、ここでの説明は省略する。
【０１５３】
なお、本実施の形態２では、キャリア側MACアドレス学習テーブル２０９から削除する仮学習の学習情報を、テーブルを昇順に検索し、最初に該当したものとしているが、新たに登録しようとしている学習情報(MACアドレス＝00-E0-00-00-20-10、VLAN ID＝2、受信ポート番号＝1)のVLAN IDの値が一致する学習情報にすることも可能である。この場合は、図２４に示すように、MACアドレス：00-E0-00-00-10-10の学習情報のVLAN ID：2で一致するため、MACアドレス：00-E0-00-00-10-10の学習情報を削除する。
【０１５４】
キャリア側MACアドレス学習テーブル２０９から削除する仮学習の学習情報の条件を、テーブル昇順検索とした場合の、更新後のキャリア側MACアドレス学習テーブル２０９は図２５となる。また、キャリア側MACアドレス学習テーブル２０９から削除する仮学習の学習情報の条件を、VLAN ID検索とした場合の、更新後のキャリア側MACアドレス学習テーブル２０９は図２６となる。
【０１５５】
以上に説明したように、実施の形態２により、エッジスイッチ２３７において、キャリア側MACアドレス学習テーブル２０９に仮学習の状態で登録されている学習情報を削除して、依頼された学習情報を登録することにより、学習テーブルのヒット率を向上させることができる。
【０１５６】
(付記１）  第１のネットワークを介して複数の第２のネットワーク間で通信をする広域LANサービスを提供するネットワークにおいて、前記第１のネットワーク内で前記第２のネットワークと接続するエッジスイッチを備えており、該エッジスイッチは、
第１のネットワークから受信した未学習状態のパケットの送信元MACアドレスと受信ポートを仮学習状態で登録する仮学習登録手段と、
前記第２のネットワークから受信したパケットの宛先MACアドレスが学習済み状態で登録されている場合、前記宛先MACアドレスの学習済み状態を本学習状態に変更する学習状態変更手段と、
前記第１のネットワークから受信したパケットの宛先MACアドレスが学習済み状態の場合、前記第１のネットワークから受信したパケットの送信元MACアドレスと受信ポートを本学習状態で登録する本学習登録手段とを具備することを特徴とする、MACアドレス学習装置。
(付記２）  前記仮学習登録手段は、
前記第１のネットワークから最初に受信したパケットの送信元MACアドレスと受信ポートを仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録するよう依頼する第１のネットワーク側受信パケット制御部と、
前記送信元MACアドレスが前記第１のネットワーク側MACアドレス学習テーブルに未登録の場合、該MACアドレスと受信ポートを仮学習の状態で前記第１のネットワーク側MACアドレス学習テーブルに登録する第１のネットワーク側学習テーブル制御部と、
を具備することを特徴とする、付記１に記載のMACアドレス学習装置。
(付記３）  前記学習状態変更手段は、
前記第２のネットワークから受信したパケットの宛先MACアドレスで前記第１のネットワーク側MACアドレス学習テーブルを検索した結果、該宛先MACアドレスが仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録済みの場合、前記宛先MACアドレスの学習状態を本学習に更新するよう依頼する第１のネットワーク側学習テーブル検索部と、
前記宛先MACアドレスの登録を本学習の状態に更新する第１のネットワーク側学習テーブル制御部と、
を具備することを特徴とする、付記１に記載のMACアドレス学習装置。
(付記４）  前記本学習登録手段は、
前記第１のネットワークから受信したパケットの宛先MACアドレスで前記第２のネットワーク側MACアドレス学習テーブルを検索した結果、該宛先MACアドレスが第２のネットワーク側MACアドレス学習テーブルに登録済みの場合、受信パケットの送信元アドレスと受信ポートを本学習の状態で登録するよう依頼する第２のネットワーク側学習テーブル検索部と、
前記宛先MACアドレスが前記第１のネットワーク側MACアドレス学習テーブルに仮学習の状態で登録済みの場合、該宛先MACアドレスの登録を本学習の状態に更新する第１のネットワーク側学習テーブル制御部と、
を具備することを特徴とする、付記１に記載のMACアドレス学習装置。
(付記５）  前記エッジスイッチは、前記第１のネットワークから受信したパケットのMACアドレス学習内容を格納する第１のネットワーク側MACアドレス学習テーブルと、該第１のネットワーク側MACアドレス学習テーブルに登録されている学習情報のランク別にタイムアウト時間を管理するエイジングタイム管理部と、ランク別のエイジングタイムを前記エイジングタイム管理部に問い合わせて得られた結果を前記第１のネットワーク側学習テーブルに設定する第１のネットワーク側学習テーブル制御部とを具備することを特徴とする、付記１から４のいずれか一項に記載のMACアドレス学習装置。
(付記６）  前記第１のネットワーク側MACアドレス学習テーブルが飽和している状態で、前記第１のネットワーク側受信パケット制御部から学習登録以来を受けた場合、前記第１のネットワーク側MACアドレス学習テーブルに仮学習状態で登録されている学習情報を削除して、依頼された学習を登録する第１のネットワーク側学習テーブル制御部を具備することを特徴とする、付記２に記載のMACアドレス学習装置。
(付記７）  第１のネットワークを介して複数の第２のネットワーク間で通信をする広域LANサービスを提供するネットワークにおいて、前記第１のネットワーク内で前記第２のネットワークと接続するエッジスイッチは、
第１のネットワークから受信した未学習状態のパケットの送信元MACアドレスと受信ポートを仮学習状態で登録し、
前記第２のネットワークから受信したパケットの宛先MACアドレスが学習済み状態で登録されている場合、前記宛先MACアドレスの学習済み状態を本学習状態に変更し、
前記第１のネットワークから受信したパケットの宛先MACアドレスが学習済み状態の場合、前記第１のネットワークから受信したパケットの送信元MACアドレスと受信ポートを本学習状態で登録することを特徴とする、MACアドレス学習方法。
(付記８）  前記仮学習状態で登録することは、
前記第１のネットワークから最初に受信したパケットの送信元MACアドレスと受信ポートを仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録するよう依頼し、
前記送信元MACアドレスが前記第１のネットワーク側MACアドレス学習テーブルに未登録の場合、該MACアドレスと受信ポートを仮学習の状態で前記第１のネットワーク側MACアドレス学習テーブルに登録する、
ことを特徴とする、付記７に記載のMACアドレス学習方法。
(付記９）  前記学習状態の変更は、
前記第２のネットワークから受信したパケットの宛先MACアドレスで前記第１のネットワーク側MACアドレス学習テーブルを検索した結果、該宛先MACアドレスが仮学習の状態で第１のネットワーク側MACアドレス学習テーブルに登録済みの場合、前記宛先MACアドレスの学習状態を本学習に更新するよう依頼し、
前記宛先MACアドレスの登録を本学習の状態に更新することを特徴とする、付記７に記載のMACアドレス学習方法。
(付記１０）  前記本学習状態で登録することは、
前記第１のネットワークから受信したパケットの宛先MACアドレスで前記第２のネットワーク側MACアドレス学習テーブルを検索した結果、該宛先MACアドレスが第２のネットワーク側MACアドレス学習テーブルに登録済みの場合、受信パケットの送信元アドレスと受信ポートを本学習の状態で登録するよう依頼し、
前記宛先MACアドレスが前記第１のネットワーク側MACアドレス学習テーブルに仮学習の状態で登録済みの場合、該宛先MACアドレスの登録を本学習の状態に更新する、
ことを特徴とする、付記７に記載のMACアドレス学習方法。
(付記１１）  前記エッジスイッチは、前記第１のネットワークから受信したパケットのMACアドレス学習内容を格納し、該第１のネットワーク側MACアドレス学習テーブルに登録されている学習情報のランク別にタイムアウト時間を管理し、ランク別のエイジングタイムを前記エイジングタイム管理部に問い合わせて得られた結果を前記第１のネットワーク側学習テーブルに設定する、付記７から１０のいずれか一項に記載のMACアドレス学習方法。
(付記１２）  前記第１のネットワーク側MACアドレス学習テーブルが飽和している状態で、前記第１のネットワーク側受信パケット制御部から学習登録以来を受けた場合、前記第１のネットワーク側MACアドレス学習テーブルに仮学習状態で登録されている学習情報を削除して、依頼された学習を登録する、付記８に記載のMACアドレス学習方法。
【産業上の利用可能性】
【０１５７】
本発明により、広域VLANサービスなどを提供する通信キャリア向けデータ伝送装置に適用されるMACアドレス学習装置において、有効な学習であると決定するまで、一時的な学習としてMACアドレス学習テーブルに保持することで、無駄な学習によってMACアドレス学習テーブルを飽和させないことが可能である。また、MACアドレス学習テーブルが飽和した場合も、一時的な学習から優先的に削除することで、MACアドレス学習テーブルのヒット率も向上させることが可能である。
【図面の簡単な説明】
【０１５８】
【図１】本発明の実施の形態よるMACアドレス学習装置の概略を説明する図である。
【図２】図１に示したエッジスイッチ１５の構成の概略を示すブロック図である。
【図３】図２におけるキャリア側受信パケット制御部２０５の動作の概略を説明するフローチャートである。
【図４】キャリアネットワークからパケットを受信した場合のキャリア側学習テーブル制御部２０８の動作の概略を説明するフローチャートである。
【図５】エイジングタイム管理部２１３の動作の概略を説明するフローチャートである。
【図６】ユーザ側学習テーブル検索部２０６の動作の概略を説明するフローチャートである。
【図７】キャリア側学習テーブル検索部２１１の動作の概略を説明するフローチャートである。
【図８】ユーザネットワークからパケットを受信した場合のキャリア側学習テーブル制御部２０８の動作の概略を説明するフローチャートである。
【図９】本発明の実施例１による、宛先MACアドレス学習前のキャリアネットワークからのパケット受信を説明する図である。
【図１０】本発明の実施例２による、宛先MACアドレス学習後のユーザネットワークからのパケット受信を説明する図である。
【図１１】本発明の実施例３による、宛先MACアドレス学習後のキャリアネットワーク１１からのパケット受信を説明する図である。
【図１２】本発明の実施例４による、キャリア側MACアドレス学習テーブル２０９が飽和している状態でのキャリアネットワークからのパケット受信の説明図である。
【図１３】上記各実施例に適用されるネットワークの構成例を示す図である。
【図１４】上記各実施例における端末Aから端末Bへのパケット送信の具体例を説明する図である。
【図１５】上記各実施例における端末Bから端末Aへのパケット送信の動作を具体例で説明する図である。
【図１６】上記各実施例におけるエッジスイッチ１４のユーザ側MACアドレス学習テーブルの内容例を示す図である。
【図１７】エイジングタイム管理部２１３内のエイジングタイム管理テーブルの内容例を示す図である。
【図１８】仮学習が登録された状態のエッジスイッチ１５のキャリア側MACアドレス学習テーブル２０９の内容を示す図である。
【図１９】図１５におけるエッジスイッチ１５内のユーザ側MACアドレス学習テーブル２１４に上記登録をした後の状態を示す図である。
【図２０】更新後のキャリア側MACアドレス学習テーブル２０９を示す図である。
【図２１】仮学習登録後のキャリア側MACアドレス学習テーブル２０９の状態を示す図である。
【図２２】本学習への更新後のエッジスイッチ１４のキャリア側MACアドレス学習テーブル２０９の状態を示す図である。
【図２３】は本発明の実施の形態２よるMACアドレス学習装置の概略を説明する図である。
【図２４】本発明の実施の形態２における、エッジスイッチ２３７のキャリア側MACアドレス学習テーブル２０９のテーブル学習数が最大で３個である場合の内容を示す図である。
【図２５】本発明の実施の形態２において、キャリア側MACアドレス学習テーブル２０９から削除する仮学習の学習情報の条件を、テーブル昇順検索とした場合の、更新後のキャリア側MACアドレス学習テーブル２０９の内容を示す図である。
【図２６】本発明の実施の形態２において、キャリア側MACアドレス学習テーブル２０９から削除する仮学習の学習情報の条件を、VLAN ID検索とした場合の、更新後のキャリア側MACアドレス学習テーブル２０９の内容を示す図である。
【図２７】本実施の形態２によるキャリア側学習テーブル制御部２０８の動作を説明するフローチャートの一部である。
【図２８】本実施の形態２によるキャリア側学習テーブル制御部２０８の動作を説明するフローチャートの他の一部である。
【図２９】従来のMACアドレス学習方法を説明する概略図である。
【図３０】従来のEoE技術を用いた場合のパケット送受信を説明する概略図である。
【図３１】図２９に示した従来のエッジスイッチ２９４の構成を示すブロック図である。
【符号の説明】
【０１５９】
１１    キャリアネットワーク
１２    ユーザネットワーク
１３    ユーザネットワーク
１４    エッジスイッチ
１５    エッジスイッチ
１６    仮学習登録手段
１７    学習状態変更手段
１８    本学習登録手段
２０１    キャリア側受信ポート
２０２    ユーザ側送信ポート
２０３    ユーザ側受信ポート
２０４    キャリア側送信ポート
２０５    キャリア側受信パケット制御部
２０６    ユーザ側学習テーブル検索部
２０８    キャリア側学習テーブル制御部
２１１    キャリア側学習テーブル
２１３    エイジングタイム管理部
【図１】
2006129036.tif 000003
【図２】
2006129036.tif 000004
【図３】
2006129036.tif 000005
【図４】
2006129036.tif 000006
【図５】
2006129036.tif 000007
【図６】
2006129036.tif 000008
【図７】
2006129036.tif 000009
【図８】
2006129036.tif 000010
【図９】
2006129036.tif 000011
【図１０】
2006129036.tif 000012
【図１１】
2006129036.tif 000013
【図１２】
2006129036.tif 000014
【図１３】
2006129036.tif 000015
【図１４】
2006129036.tif 000016
【図１５】
2006129036.tif 000017
【図１６】
2006129036.tif 000018
【図１７】
2006129036.tif 000019
【図１８】
2006129036.tif 000020
【図１９】
2006129036.tif 000021
【図２０】
2006129036.tif 000022
【図２１】
2006129036.tif 000023
【図２２】
2006129036.tif 000024
【図２３】
2006129036.tif 000025
【図２４】
2006129036.tif 000026
【図２５】
2006129036.tif 000027
【図２６】
2006129036.tif 000028
【図２７】
2006129036.tif 000029
【図２８】
2006129036.tif 000030
【図２９】
2006129036.tif 000031
【図３０】
2006129036.tif 000032
【図３１】
2006129036.tif 000033