(57)【要約】【課題】リンク集約の構成の変更を、サービスを停止させることなく、かつ、フレームの破棄や重複を発生させることなく実行することができる伝送装置およびフレーム転送方法を提供すること。【解決手段】ラインユニット２１００は、運用面情報２１２３にどのフラディングテーブルを運用面とみなすかを示す番号を保持し、入力フレーム転送部がこの番号をフラディング対象のフレームの装置内フレームヘッダに埋め込む。この埋め込みは、フレームがバックボードを介して各ラインユニットに転送される前におこなわれるため、同一のフレームは共通した運用面のフラディング設定テーブルによって出力先を判定されることになり、フレームの破棄や重複が回避される。【選択図】        図２−１
2007081990.tif 000002
【特許請求の範囲】
【請求項１】
フレームの転送をおこなう伝送装置であって、
フレームの転送に係る設定情報を複数パターン記憶する記憶手段と、
転送するフレームに埋め込まれた識別情報に基づいて該フレームを転送するための設定情報を前記記憶手段に記憶された複数パターンの設定情報から選択する選択手段と、
前記選択手段によって選択された設定情報に従って前記フレームの転送をおこなう通信制御手段と
を備えたことを特徴とする伝送装置。
【請求項２】
前記伝送装置は、複数の通信ユニットを相互接続して構成された伝送装置であって、
装置外からフレームを受信した場合に、該フレームを転送するために用いる設定情報を指定する識別情報を該フレームに埋め込む埋込手段と、
前記識別情報を埋め込んだフレームの転送を他の通信ユニットに依頼する転送依頼手段と、
前記記憶手段と、
前記通信制御手段と
を通信ユニットごとに備えたことを特徴とする請求項１に記載の伝送装置。
【請求項３】
前記埋込手段は、当該の通信ユニットに予め記憶された識別情報をフレームに埋め込むことを特徴とする請求項２に記載の伝送装置。
【請求項４】
前記通信ユニットは、複数の物理的なリンクを一つの論理的なリンクとして扱うリンク集約を設定することが可能な通信ユニットであって、
前記記憶手段は、当該の通信ユニットにおいてフラディングをおこなう場合にフレームを出力する必要があるポートの情報を設定情報として複数パターン記憶し、
前記通信制御手段は、フラディングをおこなう場合に、前記選択手段によって選択された設定情報に基づいてフレームを出力するポートを決定することを特徴とする請求項２または３に記載の伝送装置。
【請求項５】
フレームの転送をおこなう伝送装置におけるフレーム転送方法であって、
フレームの転送に係る設定情報を記憶手段に複数パターン記憶させる記憶工程と、
転送するフレームに埋め込まれた識別情報に基づいて該フレームを転送するための設定情報を前記記憶工程により記憶された複数パターンの設定情報から選択する選択工程と、
前記選択工程によって選択された設定情報に従って前記フレームの転送をおこなう通信制御工程と
を含んだことを特徴とするフレーム転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、フレーム（パケット）の転送をおこなう伝送装置およびフレーム転送方法に関し、特に、リンク集約の構成の変更を、サービスを停止させることなく、かつ、フレームの破棄や重複を発生させることなく実行することができる伝送装置およびフレーム転送方法に関する。
【背景技術】
【０００２】
従来、イーサネット（登録商標）は、ＬＡＮ（Local Area Network）において用いられることが多かったが、比較的安価にネットワークを構築できる点等が評価されて、広域ネットワークにおいても用いられるようになってきている。たとえば、通信キャリアのバックボーンとしてイーサネット（登録商標）が用いられることも多くなってきている。
【０００３】
かかる背景から、イーサネット（登録商標）に対して通信速度と可用性の向上が強く求められるようになってきている。イーサネット（登録商標）の通信速度と可用性を向上させる技術にＩＥＥＥ８０２．３ａｄ（現在は、ＩＥＥＥ８０２．３に統合されている）により規定されたリンク集約（リンクアグリゲーション）がある。
【０００４】
リンク集約は、複数の物理的なリンクを束ねて一つの論理的なリンクとして使用する技術であり、たとえば、１Ｇｂｐｓのリンクを５本束ねて５Ｇｂｐｓのリンクを実現することができる。このように、複数のリンクを束ねて使用することにより、帯域幅が広がるのに加え、一部のリンクに障害が発生しても他のリンクで通信を維持することができるため、可用性も高まる（詳しくは、非特許文献１を参照）。
【０００５】
【非特許文献１】"Part 3: Carrier sense multiple access with collision detection (CSMA/CD) access method and physical layer specifications", [online], March 2002, retrieved from the Internet: <URL:   http://standards.ieee.org/getieee802/download/802.3-2002.pdf>
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、リンク集約の機能を用いて複数のリンクを束ねて使用する場合、ブローキャストやマルチキャストのためにＭＡＣフレームをフラディングする際にフレームの重複が発生しないように制御する必要がある。リンク集約を意識せずに全てのリンクに対してフレームをフラディングすると、リンク集約の対向装置においてフレームの重複が発生するためである。これを回避するため、リンク集約されているリンクにおいては、フラディング時に一つのリンクのみにフレームを出力する必要がある。
【０００７】
このため、従来のレイヤ２スイッチ（以下、「Ｌ２スイッチ」と略す。）等の伝送装置は、たとえば、フラディング時にフレームを出力するか否かをポートごとに定義したテーブルを備え、このテーブルを用いてフレームの重複が発生しないように制御していた。
【０００８】
しかしながら、このようなテーブルを用いてフラディングの制御をおこなった場合でも、テーブルの書き換え時にフレームの重複もしくは消失が発生する可能性があった。かかるフレームの重複や消失は、特に通信キャリアにとって重大な問題であり、解決が強く望まれていた。
【０００９】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、リンク集約の構成の変更を、サービスを停止させることなく、かつ、フレームの破棄や重複を発生させることなく実行することができる伝送装置およびフレーム転送方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するため、本発明は、フレームの転送をおこなう伝送装置であって、フレームの転送に係る設定情報を複数パターン記憶する記憶手段と、転送するフレームに埋め込まれた識別情報に基づいて該フレームを転送するための設定情報を前記記憶手段に記憶された複数パターンの設定情報から選択する選択手段と、前記選択手段によって選択された設定情報に従って前記フレームの転送をおこなう通信制御手段とを備えたことを特徴とする。
【００１１】
また、本発明は、フレームの転送をおこなう伝送装置におけるフレーム転送方法であって、フレームの転送に係る設定情報を記憶手段に複数パターン記憶させる記憶工程と、転送するフレームに埋め込まれた識別情報に基づいて該フレームを転送するための設定情報を前記記憶工程により記憶された複数パターンの設定情報から選択する選択工程と、前記選択工程によって選択された設定情報に従って前記フレームの転送をおこなう通信制御工程とを含んだことを特徴とする。
【００１２】
この発明によれば、フレームの転送に際して、複数パターン記憶されている設定情報のいずれを適用するかを、そのフレームに埋め込まれた識別情報に基づいておこなうように構成したので、同一のフレームの転送を複数の通信制御手段に依頼した場合であっても、通信制御手段が転送処理をおこなうタイミングの時差に関係なく、同一の設定情報に基づいて転送処理をおこなわせることができる。
【００１３】
また、本発明は、上記の発明において、前記伝送装置は、複数の通信ユニットを相互接続して構成された伝送装置であって、装置外からフレームを受信した場合に、該フレームを転送するために用いる設定情報を指定する識別情報を該フレームに埋め込む埋込手段と、前記識別情報を埋め込んだフレームの転送を他の通信ユニットに依頼する転送依頼手段と、前記記憶手段と、前記通信制御手段とを通信ユニットごとに備えたことを特徴とする。
【００１４】
この発明によれば、複数の通信ユニットを相互接続して構成された伝送装置においてフレームを転送する際に、入力側の通信ユニットにおいてフレームに識別情報を埋め込み、出力側の通信ユニットでこのフレームに埋め込まれた識別情報に基づいてフレーム転送のための設定情報を選択するように構成したので、入力側の通信ユニットが複数の通信ユニットにフレームの転送を依頼した場合であっても、出力側の通信ユニットが転送処理をおこなうタイミングの時差に関係なく、同一の設定情報に基づいて転送処理をおこなわせることができる。
【００１５】
また、本発明は、上記の発明において、前記埋込手段は、当該の通信ユニットに予め記憶された識別情報をフレームに埋め込むことを特徴とする。
【００１６】
この発明によれば、通信ユニットに予め記憶された識別情報をフレームに埋め込むように構成したので、フレーム転送に係る設定情報を通信ユニット単位で共通にすることができる。
【００１７】
また、本発明は、上記の発明において、前記通信ユニットは、複数の物理的なリンクを一つの論理的なリンクとして扱うリンク集約を設定することが可能な通信ユニットであって、前記記憶手段は、当該の通信ユニットにおいてフラディングをおこなう場合にフレームを出力する必要があるポートの情報を設定情報として複数パターン記憶し、前記通信制御手段は、フラディングをおこなう場合に、前記選択手段によって選択された設定情報に基づいてフレームを出力するポートを決定することを特徴とする。
【００１８】
この発明によれば、リンク集約を設定することができる伝送装置においてフレームを転送する際に、入力側の通信ユニットにおいてフレームに識別情報を埋め込み、出力側の通信ユニットでこのフレームに埋め込まれた識別情報に基づいてフラディングのための設定情報を選択するように構成したので、入力側の通信ユニットが複数の通信ユニットにフレームのフラディングを依頼した場合であっても、出力側の通信ユニットがフラディングをおこなうタイミングの時差に関係なく、同一の設定情報に基づいてフラディングをおこなわせることができる。
【００１９】
この結果、リンク集約の構成を変更するためにフラディングの設定情報を更新した場合に、同一のフレームが出力側の通信ユニットにおいて異なる設定情報に基づいてフラディングされることがなくなり、フレームの破棄や重複の発生を回避することができる。
【発明の効果】
【００２０】
本発明によれば、フレームの転送に際して、複数パターン記憶されている設定情報のいずれを適用するかを、そのフレームに埋め込まれた識別情報に基づいておこなうように構成したので、同一のフレームの転送を複数の通信制御手段に依頼した場合であっても、通信制御手段が転送処理をおこなうタイミングの時差に関係なく、同一の設定情報に基づいて転送処理をおこなわせることができるという効果を奏する。
【００２１】
また、本発明によれば、複数の通信ユニットを相互接続して構成された伝送装置においてフレームを転送する際に、入力側の通信ユニットにおいてフレームに識別情報を埋め込み、出力側の通信ユニットでこのフレームに埋め込まれた識別情報に基づいてフレーム転送のための設定情報を選択するように構成したので、入力側の通信ユニットが複数の通信ユニットにフレームの転送を依頼した場合であっても、出力側の通信ユニットが転送処理をおこなうタイミングの時差に関係なく、同一の設定情報に基づいて転送処理をおこなわせることができるという効果を奏する。
【００２２】
また、本発明によれば、通信ユニットに予め記憶された識別情報をフレームに埋め込むように構成したので、フレーム転送に係る設定情報を通信ユニット単位で共通にすることができるという効果を奏する。
【００２３】
また、本発明によれば、リンク集約を設定することができる伝送装置においてフレームを転送する際に、入力側の通信ユニットにおいてフレームに識別情報を埋め込み、出力側の通信ユニットでこのフレームに埋め込まれた識別情報に基づいてフラディングのための設定情報を選択するように構成したので、入力側の通信ユニットが複数の通信ユニットにフレームのフラディングを依頼した場合であっても、出力側の通信ユニットがフラディングをおこなうタイミングの時差に関係なく、同一の設定情報に基づいてフラディングをおこなわせることができる。
【００２４】
この結果、リンク集約の構成を変更するためにフラディングの設定情報を更新した場合に、同一のフレームが出力側の通信ユニットにおいて異なる設定情報に基づいてフラディングされることがなくなり、フレームの破棄や重複の発生を回避することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２５】
以下に添付図面を参照して、本発明に係る伝送装置およびフレーム転送方法の好適な実施の形態を詳細に説明する。以下の実施例では、本発明に係るフレーム転送方式をシャーシ型のＬ２スイッチに適用した場合を例にして説明することとし、実施例の説明に先立って、従来のフレーム転送方式について説明をおこなう。
【００２６】
なお、本発明に係るフレーム転送方式の適用対象は、シャーシ型のＬ２スイッチに限られるものではなく、他の伝送装置においても有効である。
【００２７】
（従来のフレーム転送方式について）
Ｌ２スイッチの構成の１種類として、挿抜の可能な複数のラインユニットをバックボードにて接続する、シャーシ型と呼ばれるものがある。図１−１は、シャーシ型のＬ２スイッチの一例を示すサンプル図である。同図に示すＬ２スイッチ１０００は、ラインユニット１１００、ラインユニット１１０１およびラインユニット１１０２という３つのラインユニットをバックボードに接続して構成されている。
【００２８】
ラインユニットは、複数のインターフェイスのポート（たとえば、１００Ｍｂｐｓのイーサネット（登録商標）のポート）とフレーム転送機能とが搭載されたプリント回路板であり、バックボードとコネクタを介して接続する。
【００２９】
このようなシャーシ型の構造とすることにより、装置の用途に応じてラインユニットの組合せを変更することが可能となり、装置を多様に利用することができる。たとえば、ラインユニットを１００Ｍｂｐｓのイーサネット（登録商標）のユニットで統一したり、一部のラインユニットを１Ｇｂｐｓのイーサネット（登録商標）のユニットやＡＴＭインターフェイスのユニットにしたりというように使用するユニット構成を変えることによって、様々な構成のＬ２スイッチを同一のシャーシで実現することができる。
【００３０】
また、一部のポートもしくはラインユニットに故障が発生しても、装置全体を交換することなく、該当するラインユニットのみを交換することで対応することができ、装置の可用性を高めることができる。
【００３１】
シャーシ型のＬ２スイッチにおいて各ラインユニットを相互に接続する形態として、バックボードの配線を経由して各ラインユニットメッシュ状に接続する形態がある。たとえば、３つのユニットから構成されるシャーシ型のＬ２スイッチにおいて各ラインユニットをメッシュ状に接続する場合、図１−２に示すように、各ラインユニットは、バックボードとの間に３方路の出力と３方路の入力をもつこととなる。
【００３２】
次に、リンク集約を設定したネットワークの例を示す。図１−３は、ネットワーク構成の一例を示すサンプル図である。同図に示したネットワークは、Ｌ２スイッチ１０００〜１００２および端末２００〜２０７によって構成されている。
【００３３】
既に説明したように、Ｌ２スイッチ１０００は、シャーシ型のＬ２スイッチであり、ラインユニット１１００、ラインユニット１１０１およびラインユニット１１０２という３つのラインユニットを搭載する。これらのラインユットは、イーサネット（登録商標）のインターフェイスをもつラインユニットであり、それぞれ、＃１、＃２および＃３というユニット番号で識別される。
【００３４】
Ｌ２スイッチ１００１およびＬ２スイッチ１００２は、シャーシ型ではない一般的なＬ２スイッチである。
【００３５】
Ｌ２スイッチの各ポートには、ラインユニット単位もしくは装置単位で他のポートと識別するためのポート番号が付与されている。以下の説明ではｎ番目のポート番号を＃Ｐｎと表現する。
【００３６】
このネットワークにおいて、Ｌ２スイッチ１０００とＬ２スイッチ１００１は、２本のリンクを束ねたリンク集約によって相互に接続されている。具体的には、Ｌ２スイッチ１０００のラインユニット１１００のポート＃Ｐ３がＬ２スイッチ１００１のポート＃Ｐ４と接続され、Ｌ２スイッチ１０００のラインユニット１１０１のポート＃Ｐ３がＬ２スイッチ１００１のポート＃Ｐ５と接続された構成となっている。
【００３７】
Ｌ２スイッチ１０００側において異なるラインユニットを用いてリンク集約をおこなっているのは、一方のラインユニットに障害が発生しても他方のラインユニットを使用して通信を維持することが可能であるからである。
【００３８】
また、Ｌ２スイッチ１０００とＬ２スイッチ１００２も、２本のリンクを束ねたリンク集約によって相互に接続されている。具体的には、Ｌ２スイッチ１０００のラインユニット１１００のポート＃Ｐ４がＬ２スイッチ１００２のポート＃Ｐ４と接続され、Ｌ２スイッチ１０００のラインユニット１１０１のポート＃Ｐ４がＬ２スイッチ１００２のポート＃Ｐ５と接続された構成となっている。
【００３９】
このようにリンク集約によって束ねられたリンクの束はトランクと呼ばれ、トランク番号によって識別される。本実施例では、Ｌ２スイッチ１０００とＬ２スイッチ１００１の間に設定されたリンク集約が１０というトランク番号で識別され、Ｌ２スイッチ１０００とＬ２スイッチ１００２の間に設定されたリンク集約が２０というトランク番号で識別されるものとする。
【００４０】
また、端末２００〜２０７は、各Ｌ２スイッチに以下のように接続されている。端末２００は、Ｌ２スイッチ１０００のラインユニット１１０２のポート＃Ｐ１に接続され、端末２０１は、ラインユニット１１０１のポート＃Ｐ２に接続されている。端末２０３〜２０４は、それぞれ、Ｌ２スイッチ１００１のポート＃Ｐ１〜３に接続されている。端末２０５〜２０７は、それぞれ、Ｌ２スイッチ１００２のポート＃Ｐ１〜３に接続されている。
【００４１】
次に、Ｌ２スイッチ１０００の構成について説明する。図１−４は、シャーシ型のＬ２スイッチの構成を示すブロック図である。既に説明したように、Ｌ２ユニット１０００は、ラインユニット１１００〜１１０２という複数のラインユニットを搭載し、各ラインユニットはバックボードとのバス接続により相互に接続される。
【００４２】
Ｌ２ユニット１０００は、装置の運用管理をおこなうための装置制御部１２００も備える。装置制御部１２００は、ＣＰＵ（Central Processing Unit）１２１０と、ＲＯＭ（Read Only Memory）１２２０と、ＲＡＭ（Random Access Memory）１２３０と、保守端末通信機構１２４０と、装置内制御用通信機構１２５０とをバスによって接続して構成される。
【００４３】
ＣＰＵ１２１０は、運用管理のための制御ソフトウェアを実行する演算装置である。ＲＯＭ１２２０は、制御ソフトウェアや各種の設定情報を記憶する不揮発性メモリである。ＲＡＭ１２３０は、制御ソフトウェアや各種のデータが展開される作業用のメモリである。保守端末通信機構１２４０は、制御ソフトウェアが保守端末１００と情報のやりとりをおこなうための処理部である。装置内制御用通信機構１２５０は、制御ソフトウェアが各ラインユニットを制御するためのインターフェイス部である。
【００４４】
ＲＯＭ１２２０に格納された制御ソフトウェアは、Ｌ２ユニット１０００の起動時にＣＰＵ１２１０によって読み出され、ＲＡＭ１２３０に展開されて実行状態となる。実行状態となった制御ソフトウェアは、保守端末通信機構１２４０を介して保守端末１００からの指示を受付け、この指示に従い、装置内制御用通信機構１２５０を介して各ラインユニットを制御する。
【００４５】
ラインユニット１１００〜１１０２は、それぞれ、主信号処理部と、制御指示解析／テーブル制御部とを有する。主信号処理部は、通信を実現するための処理部である。制御指示解析／テーブル制御部は、装置内制御用通信機構１２５０を介して制御ソフトウェアからの指示を受付け、この指示に従い、主信号処理部の動作を制御するためのテーブル群の設定変更等をおこなう処理部である。
【００４６】
次に、Ｌ２スイッチ１０００に搭載されるラインユニットの主信号処理部の構成について説明する。図１−５は、ラインユニットの構成を示すブロック図である。同図は、ラインユニット１１００の構成を示しているが、ラインユニット１１０１およびラインユニット１１０２も同様の構成を有する。なお、同図では制御指示解析／テーブル制御部の図示を省略している。
【００４７】
同図に示すように、ラインユニット１１００は、少なくとも一つのイーサネット（登録商標）ポートと、入力監視部１１１０と、入力フレーム転送部１１２０と、送出側バックボードインターフェイス部１１３０と、受信側バックボードインターフェイス部１１４０と、出力フレーム転送部１１５０と、学習／検索部１１６０とを有する。
【００４８】
入力監視部１１１０は、各イーサネット（登録商標）ポートがＭＡＣフレームを受信したか否かを監視し、いずれかのイーサネット（登録商標）ポートが正常なＭＡＣフレームを受信したならば、これに装置内フレームヘッダを付与して入力フレーム転送部１１２０へ転送する処理部である。
【００４９】
図１−６は、イーサネット（登録商標）ポートにて受信されるＭＡＣフレームのフォーマットを示す構成図である。同図に示すように、ＭＡＣフレームは、送信先を示す宛先ＭＡＣアドレスと、送信元を示す送信元ＭＡＣアドレスと、ＶＬＡＮ（Virtual Local Area Network）を識別するためのＶＬＡＮタグと、目的に応じたデータが格納されるペイロードと、誤り検出のためのＦＣＳとからなる。なお、ＶＬＡＮタグは省略されることがある。
【００５０】
図１−７は、装置内フレームヘッダのフォーマットを示す構成図である。同図に示すように、装置内フレームヘッダは、宛先ユニットビットマップと、宛先ポート番号と、受信ユニット番号と、受信ポート番号とを有する。
【００５１】
宛先ユニットビットマップは、宛先となるラインユニットをビットで表現し、宛先となるユニットに１を設定する。宛先ユニットビットマップは、Ｌ２スイッチ１０００に搭載可能なラインユニット数以上のビット数を有する。宛先ポート番号は、フレームをラインユニット内のどのポートへ出力するかを示す。受信ユニット番号と受信ポート番号はフレームを受信したユニットとポートの番号を示す。
【００５２】
入力監視部１１１０は、正常なフレームが受信された場合に、自身が記憶しているトランク番号テーブル１１１２を参照し、フレームを受信したポートにリンク集約が設定されているか否かを確認する。そして、フレームを受信したポートにリンク集約が設定されていた場合は、装置内フレームヘッダの受信ユニット番号に０を設定し、受信ポート番号にリンク集約のトランク番号を設定する。
【００５３】
ポートにリンク集約が設定されていなかった場合は、装置内フレームヘッダの受信ユニット番号に自身が記憶している自ユニット番号１１１１を設定し、受信ポート番号にそのＭＡＣフレームを受信したポートのポート番号を設定する。
【００５４】
図１−８は、トランク番号テーブル１１１２の構成例を示すサンプル図である。同図に示すように、トランク番号テーブル１１１２は、ポートごとに一つの数値を保持する。この数値は、０であればそのポートにリンク集約が設定されていないことを示し、０でなければその数値をトランク番号とするリンク集約が設定されていることを示す。
【００５５】
同図は、図１−３のラインユニット１１００におけるトランク番号テーブル１１１２の状態を示している。ポート＃Ｐ１とポート＃Ｐ２に対応する数値は０に設定され、これらのポートにリンク集約が設定されていないことを示している。ポート＃Ｐ３に対応する数値は１０に設定され、このポートにトランク番号が１０のリンク集約が設定されていることを示している。同様に、ポート＃Ｐ４に対応する数値は２０に設定され、このポートにトランク番号が２０のリンク集約が設定されていることを示している。
【００５６】
入力フレーム転送部１１２０は、ＭＡＣフレームの転送先を判定し、判定結果を装置内フレームヘッダに反映し、その後にＭＡＣフレームを送出側バックボードインターフェイス部１１３０へ転送する処理部である。
【００５７】
入力フレーム転送部１１２０は、ＭＡＣフレームの宛先ＭＡＣアドレスを取得し、このアドレスがマルチキャストもしくはブロードキャストを示すアドレスであるか否かを検査する。イーサネット（登録商標）の規定によれば、先頭の１バイト目の最下位ビットが１のＭＡＣアドレスは、マルチキャストかブロードキャストであることを示す。
【００５８】
そして、宛先ＭＡＣアドレスがマルチキャストもしくはブロードキャストを示すアドレスであった場合は、Ｌ２スイッチ１０００に搭載されている全てのラインユニットが転送先となるように宛先ユニットビットマップを設定する。具体的には、自身が記憶している実装ユニット情報１１２１を参照し、Ｌ２スイッチ１０００に搭載されているとされているラインユニットに対応するビットがすべて１になるように宛先ユニットビットマップを設定する。この場合、転送先のポートは特定されないので、宛先ポート番号には０を設定する。
【００５９】
このような設定をおこなうことにより、ＭＡＣフレームはＬ２スイッチ１０００に搭載されている全てのラインユニットの全てのポートから出力されることになる。このようにＭＡＣフレームを全てのポートへ出力することをフラディングという。
【００６０】
また、ＭＡＣフレームから取得した宛先ＭＡＣアドレスが特定の送信先を示すものであった場合は、学習／検索部１１６０に宛先ＭＡＣアドレスを引き渡して、このＭＡＣアドレスに対応する学習情報を検索させる。学習情報とは、フラディングを回避するために、転送処理したフレームの送信元ＭＡＣアドレスとそのフレームを受信したポートの位置情報（ユニット番号とポート番号の組合せ、もしくは、トランク番号）とを関連付けて記憶しておき、次回逆方向のフレームを転送する場合に出力位置を特定するために利用する情報である。
【００６１】
ここで、学習情報が存在した場合は、学習されているユニット番号が０であるか否かを確認する。そして、ユニット番号が０でない場合は、その学習情報に従って宛先ユニットビットマップと宛先ポート番号を設定し、ＭＡＣフレームが特定のラインユニットの特定のポートからのみ出力されるようにする。具体的には、学習されているユニット番号に対応する宛先ユニットビットマップのビットを１に設定し、学習されているポート番号を宛先ポート番号に設定する。
【００６２】
ユニット番号が０の場合、学習されているポート番号はトランク番号を示す。この場合、入力フレーム転送部１１２０は、自身が記憶するリンク集約テーブル１１２２を参照してトランク番号が示すリンク集約に属するリンクの情報を取得し、そのリンクの一つを出力先として選択してそのリンクの情報を宛先ユニットビットマップと宛先ポート番号に設定する。
【００６３】
図１−９は、リンク集約テーブル１１２２の構成例を示すサンプル図である。同図に示すように、リンク集約テーブル１１２２は、トランク番号ごとに、そのトランク番号が示すリンク集約に属するリンクのポート数と、それらのリンクのポート情報のリストとを保持する。ポート情報のリストは、ポート数と同数のポート情報からなる。
【００６４】
同図は、図１−３のラインユニット１１００におけるリンク集約テーブル１１２２の状態を示している。１０というトランク番号が示すリンク集約に関して、「２」というポート数と、「０１０３」と「０２０３」という２つのポート情報からなるリストが保持されている。また、２０というトランク番号が示すリンク集約に関して、「２」というポート数と、「０１０４」と「０２０４」という２つのポート情報からなるリストが保持されている
【００６５】
各ポート情報は、前半２文字がユニット番号を示し、後半２文字がポート番号を示す。たとえば、「０１０３」というポート情報は、ユニット番号が＃１のラインユニットのポート＃Ｐ３を意味する。
【００６６】
入力フレーム転送部１１２０は、この情報を基にしてフレームを出力するポートを選択し、選択したポートのユニット番号とポート番号を装置内フレームヘッダに設定する。たとえば、学習されていたポート番号が１０であった場合は、「０１０３」と「０２０３」のいずれかを選択し、選択したポート情報を宛先ユニットビットマップと宛先ポート番号に設定する。
【００６７】
ポートの選択は、たとえば、ＭＡＣアドレスとポート数をもとにハッシング処理をおこない、その結果に基づいておこなう。このように、ハッシング処理をおこなうことにより、フレームを出力するポートが分散化され、リンク集約を構成する各リンクのうち特定のリンクへ集中することが避けられる。
【００６８】
送出側バックボードインターフェイス部１１３０は、バックボードとのバス接続インターフェイスであり、入力フレーム転送部１１２０から転送されたＭＡＣフレームを複製して全ての方路へ向けて転送する。
【００６９】
受信側バックボードインターフェイス部１１４０は、バックボードとのバス接続インターフェイスであり、バックボードを経由して他のラインユニットから転送されたＭＡＣフレーム、および、送出側バックボードインターフェイス部１１３０から転送され自ユニットへ折り返されたＭＡＣフレームを受信し、バッファに一時的に格納する。
【００７０】
そして、バッファに格納されたＭＡＣフレームを逐次読み出し、装置内フレームヘッダの宛先ユニットビットマップを参照して自身が記憶している自ユニット番号１１４１に対応するビットの値を検査する。ここで、ビットの値が１であればそのＭＡＣフレームを出力フレーム転送部１１５０へ転送し、ビットの値が０であればそのＭＡＣフレームを破棄する。
【００７１】
出力フレーム転送部１１５０は、転送されたＭＡＣフレームの装置内フレームヘッダを除去し、装置内フレームヘッダを除去したフレームを指定されたポートへ出力する処理部である。指定されたポートとは、装置内フレームヘッダの宛先ポート番号の値が０の場合は、フラディング対象となっている全てのポートであり、宛先ポート番号の値が０でない場合は、そのポート番号に対応するポートである。
【００７２】
ただし、装置内フレームヘッダの宛先ポート番号の値が０の場合であっても、そのＭＡＣフレームが自ユニットで受信されたフレームの場合は、そのフレームを受信したポートにはフレームを出力させない。これは、フレームの重複やループを回避するためである。
【００７３】
ポートがフラディング対象となっているか否かはフラディング設定テーブル１１５１を参照して判定する。図１−１０は、フラディング設定テーブル１１５１の構成例を示すサンプル図である。同図に示すように、フラディング設定テーブル１１５１は、ポートごとにフラディング対象であるか否かを示す値を保持する。この値が１の場合は、そのポートがフラディング対象であることを示し、０の場合は、そのポートがフラディング対象ではないことを示す。
【００７４】
同図は、図１−３のラインユニット１１００におけるフラディング設定テーブル１１５１の状態を示している。同図に示すように、ラインユニット１１００におけるフラディング設定テーブル１１５１は、全てのポートに対して１が設定されており、フラディング時に全てのポートが出力対象になることを示している。
【００７５】
図１−１１は、図１−３のラインユニット１１０１におけるフラディング設定テーブル１１５１の状態を示している。同図に示すように、ラインユニット１１０１におけるフラディング設定テーブル１１５１は、ポート＃Ｐ３およびポート＃Ｐ４に対して０が設定されており、フラディング時にこの２つのポートが出力対象にならないことを示している。
【００７６】
ラインユニット１１０１のポート＃Ｐ３およびポート＃Ｐ４がフラディング対象となっていないのは、リンク集約により論理的に１本のリンクを構成している各物理リンクに同一のフレームを重複して送出しないようにするためである。このように、リンク集約に属している各リンクのうち、一つのリンクのみがフラディング対象となるように各ラインユニットのフラディング設定テーブル１１５１を設定することにより、フラディング時のフレームの重複を回避することができる。
【００７７】
また、出力フレーム転送部１１５０は、転送されたＭＡＣフレームの送信元ＭＡＣアドレスと、同ＭＡＣフレームに付与されていた装置内フレームヘッダの受信ユニット番号および受信ポート番号を学習／検索部１１６０に引き渡して学習させる。
【００７８】
学習／検索部１１６０は、出力フレーム転送部１１５０から引き渡された送信元ＭＡＣアドレスと、受信ユニット番号と、受信ポート番号とを関連付けてＣＡＭ１１６１の学習テーブルに学習情報として記憶する処理部である。そして、入力フレーム転送部１１２０の問い合わせに応じてＣＡＭ１１６１を検索し、問い合わされたＭＡＣアドレスと同一のＭＡＣアドレスが記憶されていれば、それに対応する受信ユニット番号と受信ポート番号を応答する。
【００７９】
このような学習機能を備えることにより、フラディングの発生を最小限にすることができ、フラディングにともなうＬ２スイッチ１０００およびネットワーク全体の負荷の増大を抑制することができる。
【００８０】
図１−１２は、学習テーブルの構成例を示すサンプル図である。同図に示すように、学習テーブルは、ＭＡＣアドレスと、ユニット番号と、ポート番号とを対応付けてＣＡＭ１１６１に記憶するものである。
【００８１】
次に、Ｌ２スイッチ１０００の処理手順について説明する。ここでは、図１−３に示したネットワークの構成において、端末２００と端末２０７の間で通信がおこなわれる場合を例にして説明をおこなう。なお、ここでは、端末２００のＭＡＣアドレスが０Ａであり、端末２０７のＭＡＣアドレスが０Ｂであるものとする。
【００８２】
Ｌ２スイッチ１０００が全く経路の学習をおこなっていない状態のときに、端末２００が端末２０７へ向けてＭＡＣフレームを送信した場合のＬ２スイッチ１０００の処理手順を図１−１３と図１−１４を用いて説明する。
【００８３】
図１−１３は、イーサネット（登録商標）ポートで受信したフレームを送出側バックボードインターフェイス部へ送出するまでの処理手順を示すフローチャートである。
【００８４】
ラインユニット１１００の入力監視部１１１０は、各イーサネット（登録商標）ポートからのフレームの受信を監視する（ステップＳ１−１）。この例の場合、端末２００が送信したＭＡＣフレームをユニット番号＃３のラインユニットのポート＃Ｐ１で受信することになる。
【００８５】
そして、受信したＭＡＣフレームが正常なフレームかどうかを確認する。イーサネット（登録商標）の仕様に照らして正常なフレームでないと判断した場合は（ステップＳ１−２否定）、そのフレームは破棄して、次の受信フレームを監視する処理へ移る（ステップＳ１−３）。
【００８６】
正常なフレームであった場合は（ステップＳ１−２肯定）、トランク番号テーブル１１１２を参照してフレームを受信したポートがリンク集約に属しているか否かを判断する。フレームを受信したポートがリンク集約に属していた場合は（ステップＳ１−４肯定）、フレームに装置内フレームヘッダに付与し、受信ユニット番号に０を設定し、受信ポート番号にトランク番号テーブル１１１２から取得したトランク番号を設定する（ステップＳ１−５）。
【００８７】
この例では、ポート＃Ｐ１はリンク集約に属していないので（ステップＳ１−４否定）、フレームに装置内フレームヘッダに付与し、フレームを受信したユニットとポートの番号を装置内フレームヘッダの受信ユニット番号と受信ポート番号に設定する（ステップＳ１−６）。具体的には、受信ユニット番号に３を設定し、受信ポート番号に１を設定する。受信したフレームは、装置内フレームヘッダとともに、入力フレーム転送部１１２０へ渡される。
【００８８】
入力フレーム転送部１１２０は、フレームの宛先ＭＡＣアドレスを調べ、これがマルチキャストかブロードキャストを示すアドレスの場合は（ステップＳ１−７肯定）、フレームがフラディングであることを示す情報として、装置内フレームヘッダの宛先ポート番号に０を設定し、宛先ユニットビットマップには全ての実装ユニットに１を設定する（ステップＳ１−１３）。そして、フレームを送出側バックボードインターフェイス部１１３０へ転送し、バックボードへ送出させる（ステップＳ１−１４）。
【００８９】
この例の場合、宛先ＭＡＣアドレスは、端末２０７のＭＡＣアドレスため、マルチキャストでもブロードキャストでもないと判断され（ステップＳ１−７否定）、入力フレーム転送部１１２０は、学習／検索部１１６０に学習情報の検索処理をおこなわせる（ステップＳ１−８）。
【００９０】
この例の場合、何も学習がおこなわれていないため、宛先ＭＡＣアドレスに一致する情報は検索されず（ステップＳ１−９否定）、入力フレーム転送部１１２０は、宛先ＭＡＣアドレスがマルチキャストかブロードキャストを示すアドレスの場合と同様にステップＳ１−１３およびステップＳ１−１４を実行する。
【００９１】
図１−１５は、上記の処理の結果としてバックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。同図に示すように、宛先ユニットビットマップのラインユニット１１００、ラインユニット１１０１およびラインユニット１１０２に対応するビットに１が設定され、宛先ポート番号に０が設定される。そして、受信ユニット番号には３が設定され、受信ポート番号には１が設定される。
【００９２】
上記の処理の結果、装置内フレームヘッダを付与されたＭＡＣフレームは、Ｌ２スイッチ１０００に搭載された全てのラインユニット、すなわち、ラインユニット１１００、ラインユニット１１０１およびラインユニット１１０２に送出される。
【００９３】
以下、ラインユニット１１００の場合を例にして、各ラインユニットがバックボードからＭＡＣフレームを受信した後の処理手順を説明する。
【００９４】
図１−１４は、バックボードより受信したフレームをイーサネット（登録商標）ポートへ送出するまでの処理手順を示すフローチャートである。
【００９５】
受信側バックボードインターフェイス部１１４０は、各ユニットから送られてきたフレームがバッファに格納されているか否かを監視する（ステップＳ２−１）。そして、フレームがバッファに格納されていたならば、宛先ユニットビットマップを検査して自ユニット宛か否かを判定し、自ユニット宛でなければ（ステップＳ２−２否定）、そのフレームを破棄する（ステップＳ２−３）。
【００９６】
この例の場合、フレームは自ユニット宛であるので（ステップＳ２−２肯定）、破棄されずに出力フレーム転送部１１５０へ転送され、出力フレーム転送部１１５０は、フレームの送信元ＭＡＣアドレスと、装置内フレームヘッダの受信ユニット番号と受信ポート番号を学習／検索部１１６０に引き渡して学習テーブルに登録させる（ステップＳ２−４）。
【００９７】
そして、出力フレーム転送部１１５０は、装置内フレームヘッダの宛先ポート番号が０か否かを検査する。この例の場合、宛先ポート番号は０なので（ステップＳ２−５肯定）、出力フレーム転送部１１５０は、フラディング設定テーブル１１５１を参照してフラディング対象となっているポートを特定し（ステップＳ２−７）、装置内フレームヘッダを除去したフレームをフラディング対象と特定したイーサネット（登録商標）ポートへ出力する（ステップＳ２−８）。
【００９８】
上記の処理は、ラインユニット１１０１およびラインユニット１１０２でも同様におこなわれる。図１−１０に示したように、ラインユニット１１００では全てのポートがフラディング対象として設定されているので、全てのポートにフレームが出力される。また、図１−１１に示したように、ラインユニット１１０１ではポート＃Ｐ３および＃Ｐ４がフラディング対象外として設定されているので、これらを除く全てのポートにフレームが出力される。
【００９９】
この結果、トランク番号２０のリンク集約を通じて一つのフレームのみがＬ２スイッチ１００２に送信され、Ｌ２スイッチ１００２においてさらにフラディングされたフレームが端末２０７に到達することになる。
【０１００】
そして、Ｌ２スイッチ１０００の各ラインユニットにおいて端末２００のＭＡＣアドレスが学習テーブルで学習された状態となる。図１−１６は、学習後の学習テーブルを示すサンプル図である。同図に示すように、ＭＡＣフレームの送信元ＭＡＣアドレスである０Ａと、受信ラインユニットのユニット番号である＃３と、受信ラインユニットにおける受信ポートのポート番号である＃Ｐ１とが対応付けられて記憶される。
【０１０１】
続いて、先ほどと反対方向に、端末２０７から端末２００へ向けてフレームが送信された場合のＬ２スイッチ１０００の処理手順を図１−１３と図１−１４を用いて説明する。この場合の処理手順は、宛先のＭＡＣアドレスが学習されている場合の処理手順となる。
【０１０２】
端末２０７が送信したフレームは、Ｌ２スイッチ１００２に受信され、トランク番号２０のリンク集約を通じてＬ２スイッチ１０００へ転送される。トランク番号２０のリンク集約は２本のリンクから構成されるが、いずれのリンクを使用してフレームが転送されるかはＬ２スイッチ１００２のリンク集約機能におけるポートへの分散方法に依存する。ここでは、Ｌ２スイッチ１００２のポート＃Ｐ４からフレームが出力され、Ｌ２スイッチ１０００のラインユニット１１００（ユニット番号＃１）のポート＃Ｐ４で受信されたものとする。
【０１０３】
ラインユニット１１００がポート＃Ｐ３でＭＡＣフレームを受信し、バックボードへ送出するまでの処理手順のうち、図１−１３のステップＳ１−８までは既に説明した手順と同一であるので説明を省略する。
【０１０４】
図１−１６に示したように、宛先ＭＡＣアドレスである０Ａは学習テーブルに学習されているので、ステップＳ１−８の検索の結果、入力フレーム転送部１１２０は、ＭＡＣアドレスが学習済と判定する（ステップＳ１−９肯定）。そして、学習されているユニットとポートの情報を取り出し、学習されているユニット番号が０か否かを判定する。
【０１０５】
ここで、学習されているユニット番号が０の場合、すなわち、出力先がリンク集約されている場合は（ステップＳ１−１０肯定）、リンク集約テーブル１１２２に設定されているポート情報の一つを出力先として選択する（ステップＳ１−１１）。この例の場合、学習されているユニット番号は３なので（ステップＳ１−１０否定）、学習されているユニット番号とポート番号をそのまま出力先とみなす。
【０１０６】
そして、装置内フレームヘッダの宛先ユニット番号と宛先ポート番号に出力先の情報を設定し（ステップＳ１−１２）、フレームを送出側バックボードインターフェイス部１１３０へ転送してバックボードから出力させる（ステップＳ１−１４）。
【０１０７】
図１−１７は、上記の処理の結果としてバックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。同図に示すように、宛先ユニットビットマップのうちラインユニット１１０２に対応するビットのみに１が設定され、宛先ポート番号に１が設定される。そして、受信ユニット番号には０が設定され、受信ポート番号には２０が設定される。
【０１０８】
このフレームの装置内フレームヘッダをもったフレームは、バックボードのバスを介して全てのラインユニットに送信されるが、宛先ユニットビットマップを参照するとラインユニット１１０２に対応するビットのみに１が設定されているため、ラインユニット１１０２以外のラインユニットでは破棄されることとなる。
【０１０９】
続いて、ラインユニット１１０２が、バックボードからフレームを受信し、イーサネット（登録商標）ポートよりフレームを出力するまでの処理手順について説明する。この処理手順のうち、図１−１４のステップＳ２−４までは既に説明した手順と同一であるので説明を省略する。
【０１１０】
出力フレーム転送部１１５０は、ステップＳ２−４において学習／検索部１１６０に学習をおこなわせた後、装置内フレームヘッダの宛先ポート番号に０が設定されているか否かを検査する。この例の場合、宛先ポート番号は１なので（ステップＳ２−５否定）、出力フレーム転送部１１５０は、装置内フレームヘッダを除去したフレームを宛先ポート番号が示すイーサネット（登録商標）ポート（この例の場合、ポート＃Ｐ１）へ出力する（ステップＳ２−６）。
【０１１１】
上記の処理の結果、端末２０７から送信されたフレームは、端末２００に到達する。そして、Ｌ２スイッチ１０００のラインユニット１１０２において端末２０７のＭＡＣアドレスが学習テーブルで学習された状態となる。図１−１８は、学習後の学習テーブルを示すサンプル図である。同図に示すように、ＭＡＣフレームの送信元ＭＡＣアドレスである０Ｂと、トランク番号である２０が対応付けられて記憶される。トランク番号は、ポート番号の項目に設定され、ユニット番号の項目には０が設定される。
【０１１２】
続いて、端末２００から端末２０７へ向けて再びフレームが送信された場合のＬ２スイッチ１０００の処理手順を図１−１３と図１−１４を用いて説明する。この場合の処理手順は、宛先のＭＡＣアドレスが学習されている場合の処理手順となる。
【０１１３】
端末２００が送信したフレームは、Ｌ２スイッチ１０００のラインユニット１１０２、ポート＃Ｐ１に受信される。
【０１１４】
ラインユニット１１０２がポート＃Ｐ１でＭＡＣフレームを受信し、バックボードへ送出するまでの処理手順のうち、図１−１３のステップＳ１−８までは既に説明した手順と同一であるので説明を省略する。
【０１１５】
図１−１８に示したように、宛先ＭＡＣアドレスである０Ｂは学習テーブルに学習されているので、ステップＳ１−８の検索の結果、入力フレーム転送部１１２０は、ＭＡＣアドレスが学習済と判定する（ステップＳ１−９肯定）。そして、学習されているユニットとポートの情報を取り出し、学習されているユニット番号が０か否かを判定する。
【０１１６】
この例では、学習されているユニット番号が０であり、出力先がリンク集約されていることを示しているので（ステップＳ１−１０肯定）、リンク集約テーブル１１２２に設定されているポート情報の一つを出力先として選択する（ステップＳ１−１１）。
【０１１７】
具体的には、学習されているポート番号が２０であることから、出力先のリンク集約のトランク番号が２０であることがわかるので、リンク集約テーブル１１２２を参照してトランク番号２０に対応するポート情報を取得する。図１−９の例に示すように、トランク番号２０に対応するポート情報として「０１０４」と「０２０４」という２つのポート情報が存在しているが、ハッシング処理等により一つを出力先として選択する。
【０１１８】
そして、装置内フレームヘッダの宛先ユニット番号と宛先ポート番号に出力先の情報を設定し（ステップＳ１−１２）、フレームを送出側バックボードインターフェイス部１１３０へ転送してバックボードから出力させる（ステップＳ１−１４）。
【０１１９】
図１−１９は、上記の処理の結果としてバックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。ここでは、ステップＳ１−１１において「０１０４」が出力先として選択されたものとしている。同図に示すように、宛先ユニットビットマップのうちラインユニット１１００に対応するビットのみに１が設定され、宛先ポート番号に４が設定される。そして、受信ユニット番号には３が設定され、受信ポート番号には１が設定される。
【０１２０】
これまで説明してきたように、リンク集約されたトランクへフレームを転送する際に、フラディングの場合と、ＭＡＣアドレスが学習されている場合とで、出力先のポートを選択する処理が異なる。すなわち、ＭＡＣアドレスが学習されている場合は、フレームを入力した側のラインユニットで宛先ポートを決めるのに対し、フラディングの場合は、フレームを出力する側のラインユニットにおいてフラディング設定テーブル１１５１に基づき出力するポートを決める。
【０１２１】
なお、フラディングの場合にもフレームを入力側のラインユニットで宛先ポートを決める方法も考えられるが、どのポートへ出力するかを装置内ヘッダを使って出力側のラインユニットへ通知する必要があり、ポート数が多い場合は装置内ヘッダのサイズが大きくなってしまう。また、入力側での処理が増えて転送遅延が増加すること等、他にも不利な点が多いことから、入力側のラインユニットでフラディング先ポートを決める方法は採用されていない。
【０１２２】
ところで、シャーシ型のＬ２スイッチでは、ラインユニットの保守交換や改版などのために、一部のラインユニットを一時的に停止させ、残りのラインユニットでサービスを継続する運用がとられることがある。特に、通信キャリアにとっては顧客のサービスを停止しないこと重要であり、保守作業中においてもサービスの提供を継続するために、予めラインユニット間をまたがるリンク集約を構成しておくことが一般的におこなわれている。
【０１２３】
保守作業をおこなう場合、外部の保守端末からＬ２スイッチに対してコマンドを送出する。コマンドを受信したＬ２スイッチでは、制御ソフトウェアが、そのコマンドに従い、いままで説明してきた各ラインユニット内の各種テーブルの設定変更等を実行する。
【０１２４】
ここで、図１−３に示したネットワークにおいて、Ｌ２スイッチ１０００のラインユニット１１００を保守点検のために停止させる場合の処理手順について説明する。ラインユニット１１００のポート＃Ｐ３およびポート＃Ｐ４は、ラインユニット１１０１のポートとラインユニット間をまたがるリンク集約が設定されているので、ラインユニット１１００を停止させてもＬ２スイッチ１００１およびＬ２スイッチ１００２との通信を維持することができる。
【０１２５】
図１−２０は、リンク集約の設定を変更する手順を説明するための説明図である。同図に示すように、保守端末１００は、管理者の入力に従って、Ｌ２スイッチ１０００に対して、トランク１０からラインユニット１１００のポート＃Ｐ３を削除し、トランク２０からラインユニット１１００のポート＃Ｐ４を削除するように指示するコマンドを送信する（ステップＳ３−１）。
【０１２６】
コマンドを受信したＬ２スイッチ１０００の装置制御部１２００の制御ソフトウェアは、ラインユニット１１００に対し、リンク集約テーブル１１２２のトランク番号１０のエントリから「０１０３」のポート情報を削除し、トランク番号２０のエントリから「０１０４」のポート情報を削除するように指示する（ステップＳ３−２）。そして、同様の指示をラインユニット１１０１とラインユニット１１０２に対してもおこなう（ステップＳ３−３、ステップＳ３−４）。
【０１２７】
その後、ラインユニット１１００に対し、ポート＃Ｐ３およびポート＃Ｐ４がフラディングの対象外になるようにフラディング設定テーブル１１５１を書き換えるように指示し（ステップＳ３−５）、ラインユニット１１０１に対し、ポート＃Ｐ３およびポート＃Ｐ４がフラディングの対象になるようにフラディング設定テーブル１１５１を書き換えるように指示する（ステップＳ３−６）。
【０１２８】
そして、以上の処理が完了したならば、制御ソフトウェアは、保守端末１００に対して指示を完了した旨を応答する（ステップＳ３−７）。
【０１２９】
この処理の結果、図１−２１に示すように、各ラインユニットのリンク集約テーブル１１２２からラインユニット１１００のポートの情報が削除される。また、図１−２２に示すように、ラインユニット１１００からトランク１０およびトランク２０のフラディングのフレームが出力されないように設定され、図１−２３に示すように、これらのトランクのフラディングのフレームがラインユニット１１０１から出力されるように設定される。
【０１３０】
このように、各ラインユニットのリンク集約テーブル１１２２とフラディング設定テーブル１１５１を書き換えることにより、ラインユニット１１００からトランク１０およびトランク２０のフレームが一切出力されない状態となるが、それぞれのトランクは、ラインユニット１１０１のポートを介してＬ２スイッチ１００１およびＬ２スイッチ１００２との接続を維持することができる。
【０１３１】
しかしながら、上記の手順において、ステップＳ３−５とステップＳ３−６の間は、ラインユニット１１００においてもラインユニット１１０１においてもフラディング設定テーブル１１５１のポート＃Ｐ３およびポート＃Ｐ４がフラディングの対象外となってしまう。このため、この間にトランク１０とトランク２０においてフラディングされるべきフレームがいずれのポートからも出力されずに破棄されてしまう可能性がある。
【０１３２】
この２つのステップの時間の差を小さくできれば、破棄数を減らせるが、装置内の制御用の通信手段やソフトウェアの処理性能には限界がある。また、フレームの転送レートが高い場合は、短時間であっても、その間で流れているフレームが多くなることから、フレームの廃棄が多数発生する。
【０１３３】
仮にステップＳ３−６をステップＳ３−５よりも先に実行することにすると、今度は、ラインユニット１１００とラインユニット１１０１の両方においてフラディング設定テーブル１１５１のポート＃Ｐ３およびポート＃Ｐ４が同時にフラディングの対象となってしまい、フレームの重複が発生してしまう。
【０１３４】
このようなフレームの破棄は、サービスの一時的な停止となるため、特に通信キャリア向けの装置では、フレームの破棄を回避する機能の実現が求められていた。
【実施例】
【０１３５】
まず、本実施例に係るＬ２スイッチの構成について説明する。図２−１は、本実施例に係るＬ２スイッチが搭載するラインユニット２１００の構成を示すブロック図である。
【０１３６】
同図に示すように、ラインユニット２１００は、フラディング設定テーブル２１５１とフラディング設定テーブル２１５２という２つのフラディング設定テーブルを備える。この２つのフラディング設定テーブルは、一方が運用面となり、他方が非運用面となる。いずれが運用面となるかは制御ソフトウェアによって制御される。
【０１３７】
運用面となったフラディング設定テーブルが出力フレーム転送部２１５０に参照され、各ポートがフラディング対象であるか否かを判定するために用いられる。非運用面となったフラディング設定テーブルは、制御ソフトウェアによる書き換えの対象となる。
【０１３８】
このように、フラディング設定テーブルを多面化しておき、非運用面のフラディング設定テーブルを全てのラインユニットにおいて書き換えた後にいっせいに運用面と非運用面を切り替えるように運用することで、前述のステップＳ３−５とステップＳ３−６の間の時間差を小さくすることができる。
【０１３９】
しかし、フラディング設定テーブルを多面化しただけでは、フレームの破棄を完全に回避することはできない。第１に、各ラインユニットは物理的に独立しているため、制御ソフトウェアが全てのラインユニットに対して運用面の切り替えを同時に指示したとしても、実際に切り替えがおこなわれるタイミングは多少ずれてしまう。
【０１４０】
第２に、フラディングすべきフレームは、個別にラインユニットに送信され、受信側バックボードインターフェイス部２１４０にて一旦バッファリングされるため、出力フレーム転送部２１５０に到達するタイミングがラインユニットごとに異なる。このため、同一のフレームに関して、あるラインユニットでは切り替え前のフラディング設定テーブルを参照して出力ポートを特定し、別のラインユニットでは切り替え後のフラディング設定テーブルを参照して出力ポートを特定するという事態が発生し、フレームの破棄もしくは重複が発生する。
【０１４１】
そこで、ラインユニット２１００は、運用面情報２１２３にどのフラディングテーブルを運用面とみなすかを示す番号を保持し、入力フレーム転送部２１２０がこの番号をフラディング対象のフレームの装置内フレームヘッダに埋め込む。この埋め込みは、フレームがバックボードを介して各ラインユニットに転送される前におこなわれるため、同一のフレームは共通した運用面のフラディング設定テーブルによって出力先を判定されることになる。運用面情報２１２３の値は、制御ソフトウェアの指示に従って書き換えられる。
【０１４２】
かかる構成により、ラインユニット２１００は、リンク集約の構成変更にともなうパケットの破棄や重複を回避することができる。
【０１４３】
なお、運用面情報２１２３の値は、装置内フレームヘッダの現用フラディングテーブル面という項目に設定されるものとし、出力フレーム転送部２１５０は、この値が１であればフラディング設定テーブル２１５１を運用面とみなし、この値が２であればフラディング設定テーブル２１５２を運用面とみなすものとする。
【０１４４】
ラインユニット２１００の各処理部について説明すると、入力監視部２１１０、送出側バックボードインターフェイス部２１３０および受信側バックボードインターフェイス部２１４０は、それぞれ、図１−５に示した入力監視部１１１０、送出側バックボードインターフェイス部１１３０および受信側バックボードインターフェイス部１１４０と同様の処理部である。
【０１４５】
入力フレーム転送部２１２０は、フレームをフラディングするように装置内フレームヘッダを設定する場合に、運用面情報２１２３の値を装置内フレームヘッダに埋め込む点において、図１−５に示した入力フレーム転送部１１２０と異なる。
【０１４６】
図２−２は、本実施例における装置内フレームヘッダのフォーマットの一例を示す構成図である。同図に示すように、本実施例における装置内フレームヘッダは、現用フラディングテーブル面という項目を有しており、入力フレーム転送部２１２０は、ここに運用面情報２１２３の値を埋め込む。
【０１４７】
出力フレーム転送部２１５０は、フラディングするフレームの出力ポートを特定する際に、装置内フレームヘッダの現用フラディングテーブル面を参照し、この値に対応するフラディング設定テーブルに基づいて出力ポートを特定する点において、図１−５に示した出力フレーム転送部１１５０と異なる。
【０１４８】
次に、本実施例に係るＬ２スイッチの処理手順について説明する。ここで処理手順を説明するＬ２スイッチ２０００は、図１−３に示したＬ２スイッチ１０００のラインユニット１１００、ラインユニット１１０１およびラインユニット１１０２を、それぞれ、ラインユニット２１００、ラインユニット２１０１およびラインユニット２１０２に置き換えた装置である。
【０１４９】
これ以降の説明において図１−３について言及する場合、Ｌ２スイッチ１０００に代わってＬ２スイッチ２０００が配設されているものとする。また、ラインユニット２１０１およびラインユニット２１０２は、ラインユニット２１００と同様の構成を有するものとする。
【０１５０】
ここでも、図１−３に示したネットワークの構成において、端末２００と端末２０７の間で通信がおこなわれる場合を例にして説明をおこなう。端末２００のＭＡＣアドレスは０Ａであり、端末２０７のＭＡＣアドレスは０Ｂであるものとする。
【０１５１】
Ｌ２スイッチ２０００が全く経路の学習をおこなっていない状態のときに、端末２００が端末２０７へ向けてＭＡＣフレームを送信した場合のＬ２スイッチ２０００の処理手順を図２−３と図２−４を用いて説明する。
【０１５２】
端末２００が送信したフレームは、ラインユニット２１０２（ユニット番号＃３）のポート＃Ｐ１で受信される。ステップＳ４−１〜ステップＳ４−８については、図１−１３において説明したステップＳ１−１〜ステップＳ１−８と同一の処理手順であるため説明を省略する。
【０１５３】
この例の場合、何も学習がおこなわれていないため、宛先ＭＡＣアドレスに一致する学習情報は検索されず（ステップＳ４−９否定）、入力フレーム転送部２１２０は、フレームがフラディングであることを示す情報として、装置内フレームヘッダの宛先ポート番号に０を設定し、宛先ユニットビットマップには全ての実装ユニットに１を設定する。また、現用フラディング面に運用面情報２１２３の値を設定する（ステップＳ４−１３）。そして、フレームを送出側バックボードインターフェイス部２１３０へ転送し、バックボードへ送出させる（ステップＳ４−１４）。
【０１５４】
図２−５は、上記の処理の結果としてバックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。同図に示すように、宛先ユニットビットマップのラインユニット２１００、ラインユニット２１０１およびラインユニット２１０２に対応するビットに１が設定され、宛先ポート番号に０が設定される。そして、受信ユニット番号には３が設定され、受信ポート番号には１が設定される。また、現用フラディング面には２が設定される。この値は、この時点で運用面情報２１２３に設定されていた値である。
【０１５５】
上記の処理の結果、装置内フレームヘッダを付与されたＭＡＣフレームは、Ｌ２スイッチ２０００に搭載された全てのラインユニット、すなわち、ラインユニット２１００、ラインユニット２１０１およびラインユニット２１０２に送出される。
【０１５６】
以下、ラインユニット２１００の場合を例にして、各ラインユニットがバックボードからＭＡＣフレームを受信した後の処理手順を説明する。
【０１５７】
図２−４は、バックボードより受信したフレームをイーサネット（登録商標）ポートへ送出するまでの処理手順を示すフローチャートである。
【０１５８】
ステップＳ５−１〜ステップＳ５−４については、図１−１４において説明したステップＳ２−１〜ステップＳ２−４と同一の処理手順であるため説明を省略する。
【０１５９】
この例の場合、宛先ポート番号は０なので（ステップＳ５−５肯定）、出力フレーム転送部２１５０は、フラディング設定テーブルを参照してフラディング対象となっているポートを特定する（ステップＳ５−７）。ここで、フラディング設定テーブル２１５１とフラディング設定テーブル２１５２のいずれを参照するかについては、装置内フレームヘッダの現用フラディングテーブル面の値を参照して判断する。図２−５に示した例では、この値が２であったので、ここでは、フラディング設定テーブル２が参照される。
【０１６０】
そして、出力フレーム転送部２１５０は、装置内フレームヘッダを除去したフレームをフラディング対象と特定したイーサネット（登録商標）ポートへ出力する（ステップＳ５−８）。
【０１６１】
上記の処理は、ラインユニット２１０１およびラインユニット２１０２でも同様におこなわれる。いずれのラインユニットの出力フレーム転送部２１５０も、ラインユニット２１０２の入力フレーム転送部２１２０において装置内フレームヘッダに設定された情報に基づいて運用面とみなすフラディング設定テーブルを決定することになるので、参照する運用面の食い違いによるフレームの破棄や重複が発生することはない。
【０１６２】
なお、ＭＡＣアドレスが学習された後に端末２００と端末２０７の間で通信がおこなわれる場合のＬ２スイッチ２０００の処理手順は、既に説明した処理手順と同一のため、説明を省略する。
【０１６３】
次に、図１−３に示したネットワークにおいて、Ｌ２スイッチ２０００のラインユニット２１００を保守点検のために停止させる場合の処理手順について説明する。ラインユニット２１００のポート＃Ｐ３およびポート＃Ｐ４は、ラインユニット２１０１のポートとラインユニット間をまたがるリンク集約が設定されているので、ラインユニット２１００を停止させてもＬ２スイッチ１００１およびＬ２スイッチ１００２との通信を維持することができる。
【０１６４】
図２−６は、リンク集約の設定を変更する手順を説明するための説明図である。同図に示すように、保守端末１００は、管理者の入力に従って、Ｌ２スイッチ２０００に対して、トランク１０からラインユニット２１００のポート＃Ｐ３を削除し、トランク２０からラインユニット２１００のポート＃Ｐ４を削除するように指示するコマンドを送信する（ステップＳ６−１）。
【０１６５】
コマンドを受信したＬ２スイッチ２０００の制御ソフトウェアは、ラインユニット２１００に対し、リンク集約テーブル２１２２のトランク番号１０のエントリから「０１０３」のポート情報を削除し、トランク番号２０のエントリから「０１０４」のポート情報を削除するように指示する（ステップＳ６−２）。そして、同様の指示をラインユニット２１０１とラインユニット２１０２に対してもおこなう（ステップＳ６−３、ステップＳ６−４）。
【０１６６】
その後、ラインユニット２１００に対し、ポート＃Ｐ３およびポート＃Ｐ４がフラディングの対象外になるように非運用面のフラディング設定テーブルを書き換えるように指示し（ステップＳ６−５）、ラインユニット２１０１に対し、ポート＃Ｐ３およびポート＃Ｐ４がフラディングの対象になるように非運用面のフラディング設定テーブルを書き換えるように指示する（ステップＳ６−６）。
【０１６７】
この結果、ラインユニット２１００のフラディング設定テーブルは、図２−７に示すようになり、ラインユニット２１０１のフラディング設定テーブルは、図２−８に示すようになる。なお、ここでは、フラディング設定テーブル２１５１が運用面であるものとする。この時点では、非運用面の書き換えをおこなっているだけなので、実際のフラディング処理に影響はない。
【０１６８】
続いて、ラインユニット２１００に対し、非運用面のフラディング設定テーブルが運用面になるように運用面情報２１２３を書き換えるように指示する（ステップＳ６−７）。そして、同様の指示をラインユニット２１０１とラインユニット２１０２に対してもおこなう（ステップＳ６−８、ステップＳ６−９）。これにより、フラディング設定テーブルの運用面が切り替わったこととなり、ラインユニット２１００のポート＃Ｐ３およびポート＃Ｐ４からフラディングのパケットが出力されることがなくなる。
【０１６９】
そして、以上の処理が完了したならば、制御ソフトウェアは、保守端末１００に対して指示を完了した旨を応答する（ステップＳ６−１０）。以上の手順により、フレームの破棄や重複を発生させることなく、ラインユニット２１００はライン集約から外された状態となる。
【０１７０】
なお、上記の処理例では、保守端末からの一回のコマンドでトランク１０とトランク２０を一度に処理するようにしているが、トランクを一つずつ処理するような実施も可能である。その場合、トランク１０について、各テーブルの変更を行い、フラディング設定テーブルの面の切り替えをおこない、続いて、トランク２０について、各テーブルの変更を行い、その後、フラディング設定テーブルの面を再度切り替える動作となる。
【０１７１】
上述してきたように、本実施例では、ラインユニット２１００が、運用面情報２１２３にどのフラディングテーブルを運用面とみなすかを示す番号を保持し、入力フレーム転送部がこの番号をフラディング対象のフレームの装置内フレームヘッダに埋め込むように構成した。この埋め込みは、フレームがバックボードを介して各ラインユニットに転送される前におこなわれるため、同一のフレームは共通した運用面のフラディング設定テーブルによって出力先を判定されることになり、フラディング設定テーブルの齟齬によるフレームの破棄や重複の発生を防止することができる。
【０１７２】
（付記１）フレームの転送をおこなう伝送装置であって、
フレームの転送に係る設定情報を複数パターン記憶する記憶手段と、
転送するフレームに埋め込まれた識別情報に基づいて該フレームを転送するための設定情報を前記記憶手段に記憶された複数パターンの設定情報から選択する選択手段と、
前記選択手段によって選択された設定情報に従って前記フレームの転送をおこなう通信制御手段と
を備えたことを特徴とする伝送装置。
【０１７３】
（付記２）前記伝送装置は、複数の通信ユニットを相互接続して構成された伝送装置であって、
装置外からフレームを受信した場合に、該フレームを転送するために用いる設定情報を指定する識別情報を該フレームに埋め込む埋込手段と、
前記識別情報を埋め込んだフレームの転送を他の通信ユニットに依頼する転送依頼手段と、
前記記憶手段と、
前記通信制御手段と
を通信ユニットごとに備えたことを特徴とする付記１に記載の伝送装置。
【０１７４】
（付記３）前記埋込手段は、当該の通信ユニットに予め記憶された識別情報をフレームに埋め込むことを特徴とする付記２に記載の伝送装置。
【０１７５】
（付記４）前記通信ユニットは、複数の物理的なリンクを一つの論理的なリンクとして扱うリンク集約を設定することが可能な通信ユニットであって、
前記記憶手段は、当該の通信ユニットにおいてフラディングをおこなう場合にフレームを出力する必要があるポートの情報を設定情報として複数パターン記憶し、
前記通信制御手段は、フラディングをおこなう場合に、前記選択手段によって選択された設定情報に基づいてフレームを出力するポートを決定することを特徴とする付記２または３に記載の伝送装置。
【０１７６】
（付記５）フレームの転送をおこなう伝送装置におけるフレーム転送方法であって、
フレームの転送に係る設定情報を記憶手段に複数パターン記憶させる記憶工程と、
転送するフレームに埋め込まれた識別情報に基づいて該フレームを転送するための設定情報を前記記憶工程により記憶された複数パターンの設定情報から選択する選択工程と、
前記選択工程によって選択された設定情報に従って前記フレームの転送をおこなう通信制御工程と
を含んだことを特徴とするフレーム転送方法。
【０１７７】
（付記６）前記伝送装置は、複数の通信ユニットを相互接続して構成された伝送装置であって、
前記フレーム転送方法は、
装置外からフレームを受信した場合に、該フレームを転送するために用いる設定情報を指定する識別情報を該フレームに埋め込む埋込工程と、
前記識別情報を埋め込んだフレームの転送を他の通信ユニットに依頼する転送依頼工程と
さらに含んだことを特徴とする付記５に記載のフレーム転送方法。
【０１７８】
（付記７）前記埋込工程は、当該の通信ユニットに予め記憶された識別情報をフレームに埋め込むことを特徴とする付記６に記載のフレーム転送方法。
【０１７９】
（付記８）前記通信ユニットは、複数の物理的なリンクを一つの論理的なリンクとして扱うリンク集約を設定することが可能な通信ユニットであって、
前記記憶工程は、当該の通信ユニットにおいてフラディングをおこなう場合にフレームを出力する必要があるポートの情報を設定情報として複数パターン記憶し、
前記通信制御工程は、フラディングをおこなう場合に、前記選択工程によって選択された設定情報に基づいてフレームを出力するポートを決定することを特徴とする付記６または７に記載の伝送方法。
【産業上の利用可能性】
【０１８０】
以上のように、本発明に係る伝送装置およびフレーム転送方法は、フレームの転送に有用であり、特に、リンク集約の構成を変更する際にフレームの重複や破棄が発生することを完全に回避することが必要な場合に適している。
【図面の簡単な説明】
【０１８１】
【図１−１】シャーシ型のＬ２スイッチの一例を示すサンプル図である。
【図１−２】ラインユニットの接続状態の一例を示すサンプル図である。
【図１−３】ネットワーク構成の一例を示すサンプル図である。
【図１−４】シャーシ型のＬ２スイッチの構成を示すブロック図である。
【図１−５】ラインユニットの構成を示すブロック図である。
【図１−６】ＭＡＣフレームのフォーマットを示す構成図である。
【図１−７】装置内フレームヘッダのフォーマットの一例を示す構成図である。
【図１−８】トランク番号テーブルの構成例を示すサンプル図である。
【図１−９】リンク集約テーブルの構成例を示すサンプル図である。
【図１−１０】フラディング設定テーブルの構成例を示すサンプル図である。
【図１−１１】他のラインユニットにおけるフラディング設定テーブルを示すサンプル図である。
【図１−１２】学習テーブルの構成例を示すサンプル図である。
【図１−１３】イーサネット（登録商標）ポートで受信したフレームをバックボードへ送出するまでの処理手順を示すフローチャートである。
【図１−１４】バックボードより受信したフレームをイーサネット（登録商標）ポートへ送出するまでの処理手順を示すフローチャートである。
【図１−１５】バックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。
【図１−１６】学習後の学習テーブルを示すサンプル図である。
【図１−１７】バックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。
【図１−１８】学習後の学習テーブルを示すサンプル図である。
【図１−１９】バックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。
【図１−２０】リンク集約の設定を変更する手順を説明するための説明図である。
【図１−２１】書換え後のリンク集約テーブルを示すサンプル図である。
【図１−２２】書換え後のフラディング設定テーブルを示すサンプル図である。
【図１−２３】ラインユニット１１０１における書換え後のフラディング設定テーブルを示すサンプル図である。
【図２−１】本実施例に係るＬ２スイッチが搭載するラインユニットの構成を示すブロック図である。
【図２−２】本実施例における装置内フレームヘッダのフォーマットの一例を示す構成図である。
【図２−３】イーサネット（登録商標）ポートで受信したフレームをバックボードへ送出するまでの処理手順を示すフローチャートである。
【図２−４】バックボードより受信したフレームをイーサネット（登録商標）ポートへ送出するまでの処理手順を示すフローチャートである。
【図２−５】バックボードに送出されるフレームの装置内フレームヘッダのサンプル図である。
【図２−６】リンク集約の設定を変更する手順を説明するための説明図である。
【図２−７】ラインユニット２１００における書換え後のフラディング設定テーブルを示すサンプル図である。
【図２−８】ラインユニット２１０１における書換え後のフラディング設定テーブルを示すサンプル図である。
【符号の説明】
【０１８２】
１０、２０  トランク
１００  保守端末
２００〜２０７  端末
１０００〜１００２  Ｌ２スイッチ
１１００〜１１０２  ラインユニット
１１１０  入力監視部
１１１１  自ユニット番号
１１１２  トランク番号テーブル
１１２０  入力フレーム転送部
１１２１  実装ユニット情報
１１２２  リンク集約テーブル
１１３０  送出側バックボードインターフェイス部
１１４０  受信側バックボードインターフェイス部
１１４１  自ユニット番号
１１５０  出力フレーム転送部
１１５１  フラディング設定テーブ
１１６０  学習／検索部
１１６１  ＣＡＭ
１２００  装置制御部
１２１０  ＣＰＵ
１２２０  ＲＯＭ
１２３０  ＲＡＭ
１２４０  保守端末通信機構
１２５０  装置内制御用通信機構
２０００  Ｌ２スイッチ
２１００〜１１０２  ラインユニット
２１１０  入力監視部
２１１１  自ユニット番号
２１１２  トランク番号テーブル
２１２０  入力フレーム転送部
２１２１  実装ユニット情報
２１２２  リンク集約テーブル
２１２３  運用面情報
２１３０  送出側バックボードインターフェイス部
２１４０  受信側バックボードインターフェイス部
２１４１  自ユニット番号
２１５０  出力フレーム転送部
２１５１  フラディング設定テーブル
２１５２  フラディング設定テーブル
２１６０  学習／検索部
２１６１  ＣＡＭ
【図１−１】
2007081990.tif 000003
【図１−２】
2007081990.tif 000004
【図１−３】
2007081990.tif 000005
【図１−４】
2007081990.tif 000006
【図１−５】
2007081990.tif 000007
【図１−６】
2007081990.tif 000008
【図１−７】
2007081990.tif 000009
【図１−８】
2007081990.tif 000010
【図１−９】
2007081990.tif 000011
【図１−１０】
2007081990.tif 000012
【図１−１１】
2007081990.tif 000013
【図１−１２】
2007081990.tif 000014
【図１−１３】
2007081990.tif 000015
【図１−１４】
2007081990.tif 000016
【図１−１５】
2007081990.tif 000017
【図１−１６】
2007081990.tif 000018
【図１−１７】
2007081990.tif 000019
【図１−１８】
2007081990.tif 000020
【図１−１９】
2007081990.tif 000021
【図１−２０】
2007081990.tif 000022
【図１−２１】
2007081990.tif 000023
【図１−２２】
2007081990.tif 000024
【図１−２３】
2007081990.tif 000025
【図２−１】
2007081990.tif 000026
【図２−２】
2007081990.tif 000027
【図２−３】
2007081990.tif 000028
【図２−４】
2007081990.tif 000029
【図２−５】
2007081990.tif 000030
【図２−６】
2007081990.tif 000031
【図２−７】
2007081990.tif 000032
【図２−８】
2007081990.tif 000033