(57)【特許請求の範囲】
【請求項１】
加入者端末を収容する加入者収容スイッチと、複数の加入者収容スイッチ間においてフレーム転送を制御するコアスイッチを有するコアネットワークとからなるＬＡＮにおけるループ抑止方式において、
前記加入者収容スイッチは、自己が収容する加入者端末から送出されたフレームに自己のアドレスを転送元アドレスとして付加して新たなフレームを構成し、該フレームを前記コアネットワークに向けて転送し、
前記加入者収容スイッチおよび前記コアスイッチは、前記コアネットワークを介して受信したフレームが自己が転送したフレームと同一であるか否かを、該受信したフレームに付加されている転送元アドレスと自己が転送したフレームの転送元アドレスに基づいて判断し、同一であると判断した場合には、該フレームの転送を行わないことを特徴とするＬＡＮにおけるループ抑止方式。
【請求項２】
前記加入者収容スイッチのアドレスは、任意に設定可能であることを特徴とする請求項１に記載のＬＡＮにおけるループ抑止方式。
【請求項３】
前記加入者収容スイッチのアドレスは、加入者収容スイッチごとに異なるように設定されることを特徴とする請求項１または２に記載のＬＡＮにおけるループ抑止方式。
【請求項４】
前記加入者収容スイッチのアドレスは、地理的または論理構成的に規則性のあるアドレスに設定されることを特徴とする請求項１ないし３にいずれかに記載のＬＡＮにおけるループ抑止方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＬＡＮにおけるループ抑止方式に関し、特に、広域のＬＡＮでのループを簡単かつ確実に抑止でき、通信事業者のサービスの低下を防ぐことができるＬＡＮにおけるループ抑止方式に関する。
【０００２】
【従来の技術】
従来、広域のイーサネット（登録商標）網などの広域のＬＡＮは、IEEE802.1QtagVLAN方式やそれを応用したQinQtagVLAN（virtual LAN）方式に従って構築されている。これらの方式は、通常のＬＡＮフレーム（以下、MACフレームと記す。）とほぼ同じ構成のフレームを転送するものであり、MACフレームに論理的なLANを識別するためのVLAN識別子（tag）を付与することにより、多数の論理ネットワークを収容可能な広域のＬＡＮを実現している。
【０００３】
図９は、IEEE802.1QtagVLAN方式におけるフレーム構成を示す。このフレームは、宛先MACアドレス、送信元MACアドレス、VLAN識別子（tag）、およびデータを含み、VLAN識別子（tag）が論理的なLANを識別するための識別子であり、広域のＬＡＮを実現するために付与されたものである。また、このフレーム構成は、SFD、TPID、CFI、受信側で伝送誤りを検出できるようにするためのビット列であるFCS（frame check sequence）などを含んでいる。
【０００４】
図１０は、加入者端末からのMACフレームの送信動作の説明図である。ここでは簡単化のために、MACフレームの宛先MACアドレスフィールド、送信元MACアドレスフィールド、データフィールドのみを示している。通常、加入者端末には、製造時に端末固有のアドレスが割振られており、送信時にはそのアドレスが送信元MACアドレスフィールドにセットされ、宛先MACアドレスフィールドには相手加入者端末のアドレスがセットされてＬＡＮスイッチに送出される。
【０００５】
ＬＡＮスイッチは、加入者端末から受信したMACフレームにおける送信元MACアドレスBとＬＡＮフレームを受信したをポート（２）の組み合せを登録することにより、MACアドレス学習テーブルを作成する。
【０００６】
図１０では、既に宛先MACアドレスAとポート(1)の対が登録されており、さらに、今回のMACフレームの受信での学習により送信元MACアドレスBとポート(2)の対が登録される状態を示している。MACアドレス学習テーブルは、以後のMACフレームの転送に際して転送先を判断するために参照される。
【０００７】
ＬＡＮスイッチは、MACフレームにおける宛先MACアドレスAとMACアドレス学習テーブルに登録されている内容を参照し、ポート(1)よりMACフレームを送出する。
【０００８】
ＬＡＮスイッチを冗長構成にし、複数の経路を持つ網を構築して広域のＬＡＮの可用性をあげることも考えられている。
【０００９】
【発明が解決しようとする課題】
しかしながら、通信事業者が、IEEE802.1QtagVLAN方式やそれを応用したQinQtagVLAN方式で広域のＬＡＮを構築し、さらに信頼度向上のためにＬＡＮスイッチを冗長構成にした場合、次の問題がある。
【００１０】
宛先MACアドレスの種別には、全ての加入者端末を宛先とするブロードキャストアドレス、あるグループの加入者端末を宛先とするマルチキャストアドレス、一つの加入者端末を宛先とするユニキャストアドレスがある。ユニキャストアドレスのうち、ＬＡＮスイッチにおけるMACアドレス学習テーブルへの登録が無いものは、特にアンノウンユニキャストと称される。宛先MACアドレスがアンノウンユニキャストでないユニキャストアドレスのＬＡＮフレームは、MACアドレス学習テーブルに登録されているポートに転送されるが、それ以外のブロードキャスト、マルチキャスト、アンノウンユニキャストのフレームは、通常、受信ポート以外の全てのポートに転送される。
【００１１】
単にＬＡＮスイッチを冗長構成にするのみであると、網内に入力されたフレーム、特にブロードキャストのフレームは、網内を回り続け、網の接続状況によっては増殖する。結果として、網における通信帯域を無駄に消費し、最終的には、通信不能状態を発生させてしまい、いわゆるループという現象を発生させる。
【００１２】
この現象が発生しないように、物理的には冗長構成を取りながら論理的な構成がループでなくなるようにするための技術が使われる。この技術の最も一般的なものは、STP(spanning tree protocol）である。しかしながら、STPではループを抑止する冗長プロトコルが正常に動作している時には、ループの発生を抑え、また、障害の発生時には代替経路の構築を行なうことができるが、ＬＡＮスイッチの制御部の故障やＬＡＮスイッチの操作ミスにより冗長プロトコルの処理に問題が生じた場合、論理構成がおかしくなりループが発生する恐れががある。ループは正常な通信のトラヒックを圧迫するだけでなく、ＬＡＮスイッチにおけるMACアドレス学習テーブルの内容を間違った内容に書き換えてしまうため、通信に与える影響は極めて大きい。
【００１３】
本発明の目的は、上記の点にかんがみなされたものであり、冗長プロトコルの処理に問題がある場合にもＬＡＮでのループを簡単かつ確実に抑止でき、通信事業者によるサービスの低下を防ぐことができるＬＡＮにおけるループ抑止方式を提供することにある。
【００１４】
【課題を解決するための手段】
前記した課題を解決するために、本発明は、加入者端末を収容する加入者収容スイッチと、複数の加入者収容スイッチ間においてフレーム転送を制御するコアスイッチを有するコアネットワークとからなるＬＡＮにおけるループ抑止方式において、前記加入者収容スイッチは、自己が収容する加入者端末から送出されたフレームに自己のアドレスを転送元アドレスとして付加して新たなフレームを構成し、該フレームを前記コアネットワークに向けて転送し、前記加入者収容スイッチおよび前記コアスイッチは、前記コアネットワークを介して受信したフレームが自己が転送したフレームと同一であるか否かを、該受信したフレームに付加されている転送元アドレスと自己が転送したフレームの前記転送元アドレスに基づいて判断し、同一であると判断した場合には、該フレームの転送を行わない点に第１の特徴がある。
【００１５】
また、本発明は、前記加入者収容スイッチのアドレスは、任意に設定可能である点に第２の特徴がある。
【００１６】
また、本発明は、前記加入者収容スイッチのアドレスは、加入者収容スイッチごとに異なるように設定される点に第３の特徴がある。
【００１７】
さらに、本発明は、前記加入者収容スイッチのアドレスは、地理的または論理構成的に規則性のあるアドレスに設定される点に第４の特徴がある。
【００１８】
第１の特徴によれば、加入者収容スイッチのアドレスに基づいてループを確実に抑止でき、加入者収容スイッチのアドレスは、ＬＡＮ端末のMACアドレスに比較して少数であるので、転送されてきたＬＡＮフレームがループを形成するものであるか否かの判断および処理が容易になる。
【００１９】
また、第２の特徴によれば、転送されてきたＬＡＮフレームがループを形成するものであるか否かを、任意に設定された加入者収容スイッチのアドレスに基づいて容易に判断処理できる。
【００２０】
また、第３の特徴によれば、各加入者収容スイッチごとにループ抑止を図ることができ、第４の特徴によれば、地域ごとやPEスイッチごとにループ抑止を図ることができる。
【００２１】
【発明の実施の形態】
以下、図面を参照して本発明を詳細に説明する。本発明は、加入者収容スイッチにおいて自己が収容する加入者端末から送出されたMACフレームに自己のアドレスを転送元アドレスとして付加して新たなフレーム（以下、MACinMACフレームと記す。）を構成し、このMACinMACフレームをコアネットワークに向けて転送し、加入者収容スイッチとコアスイッチにおいては、コアネットワークを介して受信したMACinMACフレームが自己が転送したMACinMACフレームと同一であるか否かを転送元アドレスに基づいて判断し、この判断結果に従ってMACinMACフレームの転送を制御するものである。
【００２２】
図１は、本発明が適用される広域のＬＡＮの一例を示すブロック構成図であり、本例のＬＡＮは、加入者端末を収容する加入者収容スイッチ（以下、PEスイッチと記す（PEはProvider Edgeの略）。）１、２と、これらのPEスイッチ１、２間においてMACinMACフレームの転送を制御するコアスイッチ４を有するコアネットワーク３とからなっている。
【００２３】
広域のＬＡＮは、一般的には、より多くのPEスイッチおよびコアスイッチを有するが、ここでは説明を簡単にするために、送信元加入者端末Aを収容しているPEスイッチ１と宛先加入者端末Bを収容しているPEスイッチ２とPEスイッチ１、２間でMACinMACフレームの転送を制御するコアスイッチ４のみを示し、PEスイッチ１、２間に１つのコアスイッチ４のみがあるとしている。
【００２４】
また、加入者端末A、BのMACアドレスはそれぞれ、α、βであり、PEスイッチ１、２のMACアドレス（以下、MACinMACアドレスと記す。）としてそれぞれ、ａ、ｂが設定されているものとする。MACinMACアドレスは、通信事業者において任意に設定可能である。
【００２５】
まず、PEスイッチにおいて生成されるMACinMACフレームの構成、その転送について説明する。加入者端末A（MACアドレス：α）から送出されたMACフレームをコアネットワーク３を介して加入者端末B（MACアドレス：β）に転送する場合、加入者端末Aから送出されたMACフレームはPEスイッチ１で受信される。このMACフレームは、送信元MACアドレス（SA1：α）、宛先MACアドレス（DA1：β）、データ（DATA：Hello）を含む。なお、MACフレームは、通常、論理的なLANを識別するためのVLAN識別子を含んでいるが、図示を省略している。
【００２６】
PEスイッチ１は、受信したMACフレームに自己のMACinMACアドレス（SA2：ａ）、加入者端末Bを収容しているPEスイッチ２のMACinMACアドレス（DA2：ｂ）、コアネットワーク３を論理的に仮想私設網VPN（virtual private network）に分割するための識別子L2VPN（tag：Ｘ社）を付加してMACinMACフレームを構成し、それを出力ポートより送出する。出力ポートは、PEスイッチ１におけるMACアドレス学習テーブルを参照して決定されるが、その詳細は後述する。
【００２７】
コアスイッチ４は、MACinMACフレームを受信し、自己が有するMACアドレス学習テーブルとMACinMACフレームにおけるMACinMACアドレス（DA2：ｂ）を参照して出力ポートを決定し、受信したMACinMACフレームを該出力ポートより送出する。このMACinMACフレームは、PEスイッチ２により受信される。
【００２８】
PEスイッチ２は、受信したMACinMACフレームからMACフレームを抽出（デカプセル化）し、自己が有するMACアドレス学習テーブルとMACフレームにおけるMACアドレス（DA1：β）を参照して出力ポートを決定し、該出力ポートよりMACフレームを送出する。加入者端末ｂは、PEスイッチ２から送出されたMACフレームを受信する。
【００２９】
図２は、PEスイッチ１、２におけるMACアドレス学習テーブルに宛先MACアドレスが登録されておらず、コアスイッチ４におけるMACアドレス学習テーブルに転送先MACinMACアドレスが登録されていない場合の動作概要を示す図である。コアスイッチ４には、さらにPEスイッチ５が接続されているとする。
【００３０】
図２において、加入者端末Aから送出されたMACフレーム（DA1：β、SA1：α、DATA：Hello）は、ポート(1)でPEスイッチ１により受信される。PEスイッチ１は、受信したMACフレームを学習してMACアドレス学習テーブルを作成する。
【００３１】
PEスイッチにおけるMACアドレス学習テーブルは、送信元アドレス（MAC）を登録するキー（Key）領域と、フレームが到着した物理ポート（IF）および該フレームを転送したPEスイッチのアドレス（転送）を登録するデスティネーション（Destination）領域とを有する。本例の場合、MACフレームが到着した物理ポートに関連したL2VPNのMACアドレス学習テーブルに、MAC：α、IF：(1)が登録される。MACフレームはPEスイッチを介して転送されたものではないので、「転送」には登録されない。
【００３２】
なお、このMACアドレス学習テーブルには、論理的なLANを識別するための識別子「VLAN-ID」を登録する領域を設けることができる。この場合、加入者端末Ａから送信されたフレームがIEEE802.1Qに従うフレーム構成でない場合にはVLAN-IDにはデフォルトVLAN-IDを登録する。
【００３３】
次に、PEスイッチ１は、受信したMACフレームの宛先MACアドレス（DA1：β）がそのMACフレームの所属するL2VPNのMACアドレス学習テーブルにあるか否かを調べる。なお、VLAN-IDが登録される場合には宛先MACアドレスとVLAN-IDのペアがMACアドレス学習テーブルにあるか否かを調べる。
【００３４】
宛先MACアドレスがMACアドレス学習テーブルにない（学習により登録されていない）場合、PEスイッチ１は、所属するL2VPNが設定されているポート全て（入力されたポートを除く。）に対してMACinMACフレーム化したフレームを転送する。MACinMACフレーム化とは、加入者端末から送信されてきたMACフレームに、宛先加入者端末を収容しているPEスイッチのアドレス（DA2）、PEスイッチ自身のMACアドレス（SA2）、さらに必要ならば、論理的に仮想私設網に分割するための識別子L2VPN（VPN-ID）を付加して新たなフレームを構成することを意味する。
【００３５】
本例の場合、MACinMACフレームとして、DA2：Multicast（マルチキャストを意味する。）、SA2：a、VPN-ID：100、DA1：β、SA1：α、DATA：Helloが構成される。
【００３６】
なお、PEスイッチ１において、フレームが到着した物理ポート以外にダウンリンク側のポートに同じL2VPNに所属するポートが存在する場合には、該ダウンリンク側のポート全てにフレームをMACinMACフレーム化せずに転送し、アップリンク側に同じL2VPNに所属するポートが存在する場合は、その所属するポート全てにMACinMACフレーム化したフレームを転送する。その場合のMACinMACフレーム化では、DA2に「Multicast」をセットし、SA2にそのフレームの転送元「MACinMACアドレス」をセットし、VPN-IDにそのフレームが到着した物理ポートが所属するL2VPNをセットする。
【００３７】
また、「TTL（time to live）」のフィールドを設け、ここに事前に設定された値をセットすることもできる。この値は、PEスイッチおよびコアスイッチでの１回の転送ごとに１づつ減算され、この値が０になったフレームは廃棄してその転送を止めるようにするために使用される。
【００３８】
なお、PEスイッチ１は、宛先MACアドレスDA1の種別がブロードキャストアドレスあるいはマルチキャストアドレスである場合にもDA2に「Multicast」をセットし、所属するL2VPNが設定されているポート全て（入力されたポートを除く）に対してMACinMACフレーム化したフレームを転送する。
【００３９】
コアネットワーク３内のコアスイッチ４では、PEスイッチ１から送られてきたMACinMACフレームを受信し、その転送元MACinMACアドレス（SA2）からMACアドレス学習テーブルを作成する。コアスイッチ４におけるMACアドレス学習テーブルは、転送元PEスイッチのアドレス（転送MAC）を登録するキー（Key）領域と、フレームが到着した物理ポート（IF）を登録するデスティネーション（Destination）領域とを有する。
【００４０】
本例の場合、フレームが到着した物理ポートに関連したL2VPNのMACアドレス学習テーブルに、転送MAC：ａ、IF：(1)が登録される。なお、このMACアドレス学習テーブルには、論理的に仮想私設網に分割するための識別子L2VPN（VPN-ID）を登録する領域を設けることができる。
【００４１】
また、コアスイッチ４は、フレームにおけるDA2：Multicastに従って所属するL2VPNが設定されているポート全て（入力されたポートを除く）に対してMACinMACフレームを転送する。
【００４２】
PEスイッチ２、５においても同様の動作が行われ、PEスイッチ２、５におけるMACアドレス学習テーブルには、MAC：α、IF：(1)、転送：ａが登録される。
【００４３】
PEスイッチ２、５は、受信したMACinMACフレームからMACフレーム（DA1：β、DA2：α、DATA：Hello）を抽出し、マルチキャストで送出する。MACアドレスがβである加入者端末Ｂは、このMACフレームを受信する。
【００４４】
図３は、PEスイッチ１、２のMACアドレス学習テーブルに宛先MACアドレスが登録されており、コアスイッチ４のMACアドレス学習テーブルに転送先MACinMACアドレスが登録されている場合の動作概要を示す図である。ここでは、図２を参照して説明した内容のMACアドレス学習テーブルが既に作成されており、加入者端末Bから送出されたMACフレームを加入者端末Aに送信する場合を想定する。
【００４５】
図３において、加入者端末Bから送出されたMACフレーム（DA1：α、SA1：β、DATA：Hello）は、ポート(2)を介してPEスイッチ２で受信される。PEスイッチ２は、受信したMACフレームを学習してMACアドレス学習テーブルを作成する。本例の場合、フレームが到着した物理ポートに関連したL2VPNのMACアドレス学習テーブルに、MAC：β、IF：(2)が登録される。
【００４６】
次に、PEスイッチ２は、受信したMACフレームの宛先MACアドレス（DA1：α）がそのMACフレームの所属するL2VPNのMACアドレス学習テーブルにあるか否かを調べる。この場合、宛先MACアドレス（DA1：α）はMACアドレス学習テーブルにあるので、DA1：αに対応する物理ポート(1)にMACinMACフレームが転送される。MACinMACフレームは、DA2：ａ、SA2：ｃ、VPN-ID：100、DA1：α、SA1：β、DATA：Helloからなる。
【００４７】
コアスイッチ４では、PEスイッチ２から送られてきたMACinMACフレームを受信し、その転送元MACinMACアドレス（SA2）からMACアドレス学習テーブルを作成する。本例の場合、フレームが到着した物理ポートに関連したL2VPNのMACアドレス学習テーブルに、転送MAC：ｃ、IF：(3)が登録される。また、コアスイッチ４は、受信したMACinMACフレームの転送先MACinMACアドレス（DA2：ａ）が所属するL2VPNのMACアドレス学習テーブルにあるか否かを調べる。この場合、転送先MACinMACアドレス（DA2：ａ）はMACアドレス学習テーブルにあるので、DA2：ａに対応する物理ポート(1)にMACinMACフレームが転送され、物理ポート(2)には転送されない。
【００４８】
PEスイッチ１においても同様の動作が行われ、PEスイッチ１におけるMACアドレス学習テーブルには、MAC：β、IF：(2)、転送：ｃが登録される。
【００４９】
PEスイッチ１は、受信したMACinMACフレームからMACフレーム（DA1：α、SA1：β、DATA：Hello）を抽出し、ポート(1)より送出する。MACアドレスがαである加入者端末Aは、このMACフレームを受信する。
【００５０】
このように、MACフレームおよびMACinMACフレームは、MACアドレス学習テーブルに登録されている内容に従って転送されるが、MACアドレスの種別が、特にブロードキャストである場合には、上述のように、フレームは全ての物理ポート（入力されたポートを除く）に送出されるので、コアネットワーク３内を回り続け、いわゆるループという現象が発生する恐れがある。この現象は、コアネットワーク３における通信帯域を無駄に消費しして通信不能状態を発生させるばかりでなく、MACアドレス学習テーブルに余計な、しかも誤った内容を書き込むものであるので抑止する必要がある。
【００５１】
次に、PEスイッチとコアスイッチが備えるループ抑止機能について説明する。図４は、地域単位およびPEスイッチ単位でのループ抑止の例の説明図である。地域1-1-1にあるPEスイッチのMACinMACアドレスをA：A：A：*：*：*に設定し、地域1-1-2のPEスイッチのMACinMACアドレスはA：A：B：*：*：*に設定する。なお、*は、同じ領域内のPEスイッチでは互いに相違するが、任意であることを示す。
【００５２】
地域1-1-1と地域1-1-2とを統合した地域1-1のPEスイッチは、A：A：*：*：*：*というアドレスで表現できる。同様に地域1-2のPEスイッチのPEスイッチのMACinMACアドレスをA：B：*：*：*：*に設定することにより、地域1-1と地域1-2とを統合した地域1のPEスイッチは、A：*：*：*：*：*というアドレスで表現できる。なお、図４には、B：B：B：1：1：1というMACinMACアドレスが設定されたをPEスイッチも示している。
【００５３】
ここで箇所A1のPEスイッチあるいはコアスイッチにフィルタF1を用意し、地域1-1-1外に一旦送出され、逆流してきたMACinMACフレームをここで廃棄するようにすれば、その逆流に基づくループが抑止される。この際、逆流してきたMACinMACフレームであるか否かは、MACinMACアドレスがA：A：A：*：*：*を有するか否かで容易に判断でき、フィルタF1をそれに対するアドレスフィルタにすればよい。同様に、箇所A2のPEスイッチあるいはコアスイッチにフィルタF2を用意し、地域1-1外に一旦送出され、逆流してきたMACinMACフレームをここで廃棄するようにすれば、その逆流に基づくループが抑止される。この際、逆流してきたMACinMACフレームであるか否かは、MACinMACアドレスがA：A：*：*：*：*を有するか否かで容易に判断できる。
【００５４】
また、箇所A3のPEスイッチあるいはコアスイッチにフィルタF3を用意し、PEスイッチから一旦送出され、逆流してきたMACinMACフレームをここで廃棄するようにすれば、その逆流に基づくループが抑止される。この際、逆流してきたMACinMACフレームであるか否かは、MACinMACアドレスがB：B：B：1：1：1を有するか否かで容易に判断できる。これにより、PEスイッチ単位のループ抑止が可能になる。
【００５５】
このように、地理的または論理構成的に規則性のあるアドレスに設定し、アドレスフィルタを組み合わせることにより、地域ごとやPEスイッチごとにMACinMACフレームの逆流、すなわちループを抑止することができる。MACinMACアドレスは、通信事業者（プロバイダ）が任意に設定可能であり、通信事業者において地理的または論理構成的に規則性のあるアドレスを設定することが可能であり、また、その数は、加入者端末のMACアドレスに比較して格段に少ないため、ループを抑止するためのアドレスフィルタを構成することは容易である。
【００５６】
以上で説明したPEスイッチおよびコアスイッチでの処理をまとめると、図５〜図７のようになる。図５は、PEスイッチが加入者端末側（ダウンリンクポート）からMACフレームを受信した場合の処理（Ingress動作）を示すフローチャートである。
【００５７】
PEスイッチは、加入者端末からMACフレームを受信する（Ｓ５０１）と、受信したMACフレームを学習してMACアドレス学習テーブル（送信元MACアドレス（SA1），VPN-ID，入力ポート）を作成する（Ｓ５０２）。
【００５８】
次に、宛先MACアドレス（DA1）がマルチキャストまたはブロードキャストであるか否かを調べ（Ｓ５０３）、マルチキャストまたはブロードキャストであるならばＳ５０４へ進み、そうでないならばＳ５０５へ進む。Ｓ５０４では転送先MACinMACアドレス（DA2）にマルチキャストをセットし、転送元MACinMACアドレスに自装置の保有するアドレスをセットする。
【００５９】
続いて、所属するVPNのポートのうち、MACフレームを受信したポート以外の全てのポートへMACinMACフレーム化したフレームを転送（フラッディング：flooding）する（Ｓ５０６）。なお、MACフレームを受信したポート以外に加入者向けのポートがある場合、該ポートには受信したMACフレームをそのまま転送する。
【００６０】
Ｓ５０５では宛先MACアドレス（DA1）、VPN-IDでMACアドレス学習テーブルを検索する。これが検索されたかを否かを調べ（Ｓ５０７）、検索されればＳ５０８に進み、検索されなければ前記のＳ５０４に進む。Ｓ５０８では宛先MACアドレス（DA1）に対するポートがダウンリンクポートであるか、コアネットワークポートであるかを調べ、ダウンリンクポートである場合には該ポートへ受信したMACフレームをそのまま転送し（Ｓ５０９）、コアネットワークポートである場合には、転送先MACinMACアドレス（DA2）に検索により得られたアドレスをセットし、転送元MACinMACアドレス（SA2）に自装置が有する入力ポートに関連したアドレスをセットしてMACinMACフレームを生成（Ｓ５１０）した後、該ポートへMACinMACフレームを転送する（Ｓ５１１）。
【００６１】
図６は、PEスイッチがコアネットワーク側（コアネットワークポート）からMACinMACフレームを受信した場合の処理（Egress動作）を示すフローチャートである。
【００６２】
PEスイッチは、MACinMACフレームを受信する（Ｓ６０１）と、転送元MACinMACアドレス（SA2）と自装置の保有するアドレスとを比較する（Ｓ６０２）。この比較結果が一致の場合、受信したMACinMACフレームは、ループを形成して戻ったフレームであるとして廃棄する（Ｓ６０３）。これがPEスイッチでのループ抑止機能である。
【００６３】
また、比較結果が不一致の場合には、受信したMACinMACフレームを学習してMACアドレス学習テーブル（送信元MACアドレス（SA1），VPN-ID，転送元MACinMACアドレス（SA2），入力ポート）を作成する（Ｓ６０４）。
【００６４】
次に、転送先MACinMACアドレス（DA2）が自装置のアドレス、マルチキャストまたはブロードキャストであるか否かを調べ（Ｓ６０５）、自装置のアドレス、マルチキャストまたはブロードキャストであるならばＳ６０６へ進み、そうでないならばＳ６０７へ進む。Ｓ６０７では受信したMACinMACフレームを廃棄、あるいはコアネットワークへフラッディングなどを行う。
【００６５】
Ｓ６０６では、送信先MACアドレス（DA1）がマルチキャストまたはブロードキャストであるか否かを調べ、マルチキャストまたはブロードキャストであるならばＳ６１０へ進み、そうでないならばＳ６０８へ進む。Ｓ６１０では所属するVPNのポートのうち、MACinMACフレームを受信したポート以外の全てのポートにMACinMACフレームをフラッディングする。なお、MACinMACフレームを受信したポート以外のコアネットワークポートにはMACinMACフレームをそのまま転送し、加入者向けのポートにはMACinMACフレームをデカプセル化して転送する。
【００６６】
Ｓ６０８では宛先MACアドレス（DA1）、VPN-IDでMACアドレス学習テーブルを検索する。これが検索されたかを否かを調べ（Ｓ６０９）、検索されなければ前記のＳ６１０に進み、検索されればＳ６１１に進む。Ｓ６１１では宛先MACアドレス（DA1）に対するポートがダウンリンクポートであるか、コアネットワークポートであるかを調べ、ダウンリンクポートである場合には、該ポートへ受信したMACinMACフレームをデカプセル化して転送し（Ｓ６１２）、コアネットワークポートである場合には、該ポートへ受信したMACinMACフレームをそのままへ転送する（Ｓ６１３）。
【００６７】
図７は、コアスイッチでの処理を示すフローチャートである。コアスイッチは、MACinMACフレームを受信する（Ｓ７０１）と、転送元MACinMACアドレス（SA2）と事前に設定されているループ抑止フィルタ用フィルタの内容とを比較する（Ｓ７０２）。この比較結果が一致の場合、受信したMACinMACフレームは、ループを形成して戻ったフレームであるとして廃棄する（Ｓ７０３）。これがコアスイッチでのループ抑止機能である。
【００６８】
また、比較結果が不一致の場合には、受信したMACinMACフレームを学習してMACアドレス学習テーブル（転送元MACinMACアドレス（SA2），VPN-ID，，入力ポート）を作成する（Ｓ７０４）。
【００６９】
次に、転送先MACinMACアドレス（DA2）がマルチキャストまたはブロードキャストであるか否かを調べ（Ｓ７０５）、マルチキャストまたはブロードキャストであるならばＳ７０８へ進み、そうでないならばＳ７０６へ進む。
【００７０】
Ｓ７０８では所属するVPNのポートのうち、MACinMACフレームを受信したポート以外の全てのポートにMACinMACフレームをフラッディングする。また、Ｓ７０６では転送先MACinMACアドレス（DA2）、VPN-IDでMACアドレス学習テーブルを検索する。これが検索されたかを否かを調べ（Ｓ７０７）、検索されなければ前記のＳ７０８に進み、検索されればＳ７０９に進む。Ｓ７０９では転送先MACinMACアドレス（DA2）に対するポートへ受信したMACinMACフレームをそのまま転送する。
【００７１】
図８は、MACinMACフレームの具体的構成例を示す図である。MACinMACフレームは、通常のMACフレームの外側にさらに転送先MACinMACアドレス、転送元MACinMACアドレス、L2VPN識別子、MACinMACフレーム識別子、MACinMAC TTLを付加した構成を有する。
【００７２】
図８には、IEEE8-2.1Qに従ったMACフレーム(a-1)とイーサネット（登録商標）II,802.3に従ったMACフレーム(a-2)について示している。これらのMACフレームをペイロードに搭載し、１バイトのMACinMAC TTLと１バイトの「予約」を付加して中間MACinMACフレーム(b)を生成する。なお、MACフレームは、プリアンブル、SFD、FCSを除いた形でペイロードに搭載する。また、TTLには、事前に設定された値（最大255）をセットする。この値は、PEスイッチおよびコアスイッチでの１回の転送ごとに１づつ減算され、この値が０になったフレームは転送されずに廃棄される。
【００７３】
さらに、この中間MACinMACフレーム(b)をぺーロードに搭載し、プリアンブル、SFD、網内転送用宛先MACアドレス（転送先MACinMACアドレス）、網内転送用送信元MACアドレス（転送元MACinMACアドレス）、TPID、TCI、MACinMAC  TPID、FCSを付加してIEEE802.1Qにカプセル化したMACinMACフレーム(c-1)を生成する。
【００７４】
また、中間MACinMACフレームをぺーロードに搭載し、プリアンブル、SFD、網内転送用宛先MACアドレス、網内転送用送信元MACアドレス、TYPE、FCSを付加してUntagEthernet（登録商標）フレームにカプセル化したMACinMACフレーム(c-2)を生成することもできる。
【００７５】
ここで、TPIDおよびTYPEは、カプセル化されたMACinMACフレームを判定するためのものであり、例えば、0xE0E0に設定される。また、TPIDは、IEEE802.1Qを利用する場合、例えば、0X8100に設定されるが、VMAN（virtual metropolitan area network）スイッチなどでMACinMACフレームを転送する場合には、例えば0x9100に設定してもよい。
【００７６】
以上、実施形態について説明したが、本発明は、PEスイッチおよびコアスイッチの全てにフレームの転送を行うか行わないかの判断および制御の機能を持たせる必要はなく、特にループ発生を問題とする箇所のPEスイッチやコアスイッチにその判断および制御の機能を持たせればよい。また、STPの技術は、本発明と併用することができ、排除されるものではない。
【００７７】
【発明の効果】
以上、説明したように、本発明によれば、PEスイッチのアドレスに基づいてループを確実に抑止することができる、この際、PEスイッチのアドレスは、事業者が任意に設定可能であり、また、加入者端末のMACアドレスに比較して少数であるので、転送されてきたMACinMACフレームがループを形成するものであるか否かの判断および処理が容易になる。
【００７８】
また、PEスイッチのアドレスを地理的または論理構成的に規則性のあるアドレスに設定することにより、地域ごとやPEスイッチごとに効果的にループを抑止することができる。
【図面の簡単な説明】
【図１】  本発明が適用されるＬＡＮの一例を示すブロック構成図である。
【図２】  本発明における動作例の概要説明図である。
【図３】  本発明における他の動作例の概要説明図である。
【図４】  地域単位およびＰＥスイッチ単位でのループ抑止の例の説明図である。
【図５】  PEスイッチでのMACフレーム受信処理の一例を示すフローチャートである。
【図６】  PEスイッチでのMACinMACフレーム受信処理の一例を示すフローチャートである。
【図７】  コアスイッチでの処理の一例を示すフローチャートである。
【図８】  本発明により構成されるフレームの具体的構成例を示す図である。
【図９】  IEEE802.1QtagVLAN方式におけるフレーム構成を示す図である。
【図１０】  加入者端末からのMACフレームの送信動作の説明図である。
【符号の説明】
１，２，５，PEsw・・・(加入者収容)スイッチ、３・・・コアネットワーク、４，SW・・・コアスイッチ、Ａ，Ｂ・・・加入者端末、F1，F2，F3・・・ループ抑止用フィルタ
【図１】
0004136753.tif 000002
【図２】
0004136753.tif 000003
【図３】
0004136753.tif 000004
【図４】
0004136753.tif 000005
【図５】
0004136753.tif 000006
【図６】
0004136753.tif 000007
【図７】
0004136753.tif 000008
【図８】
0004136753.tif 000009
【図９】
0004136753.tif 000010
【図１０】
0004136753.tif 000011