以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
さらに、以下の実施の形態において、その構成要素(要素ステップ等も含む)は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
(実施の形態1)
《中継システムの構成およびフレーム中継動作》
図1は、本発明の実施の形態1による中継システムにおいて、その構成例を示す概略図である。図1に示す中継システムは、2台のスイッチ装置(第1および第2スイッチ装置)SW1,SW2で構成されるMLAGスイッチMLAGSWと、複数(ここではn台)の通信装置10[1]〜10[n]と、を備える。スイッチ装置SW1,SW2のそれぞれは、ここでは、レイヤ2(L2)の中継処理を行うL2スイッチである場合を例とするが、レイヤ3(L3)の中継処理を行うL3スイッチ等であってもよい。
スイッチ装置(第1および第2スイッチ装置)SW1,SW2のそれぞれは、ブリッジ用ポートPbと、複数(ここではn個)のポートP1〜Pnを持ち、ブリッジ用ポートPbを介して互いに通信回線12で接続される。通信回線12は、イーサネット(登録商標)回線で構成される場合や、専用回線で構成される場合がある。n個のポートP1〜Pnのそれぞれは、ここでは、MLAG用ポートであるものとする。ただし、n個のポートP1〜Pnは、全てMLAG用ポートである必要はなく、少なくとも1個以上がMLAG用ポートであればよい。この場合、その残りのポートは、MLAGが設定されない一般ポートとなる。
n台の通信装置10[1]〜10[n]のそれぞれは、例えば、サーバ装置等の情報処理装置や、L2スイッチ等のスイッチ装置などである。通信装置10[1]〜10[n]のそれぞれは、ポート(LAG用ポート)Pu1,Pu2を持つ。スイッチ装置SW1,SW2の各MLAG用ポートP1は、それぞれ、通信回線13を介して通信装置10[1]のLAG用ポートPu1,Pu2に接続される。この例では、LAG用ポートPu1はスイッチ装置SW1側に接続され、LAG用ポートPu2はスイッチ装置SW2側に接続される。
同様に、スイッチ装置SW1,SW2の各MLAG用ポートP2は、それぞれ、通信回線13を介して通信装置10[2]のLAG用ポートPu1,Pu2に接続され、スイッチ装置SW1,SW2の各MLAG用ポートPnは、それぞれ、通信回線13を介して通信装置10[n]のLAG用ポートPu1,Pu2に接続される。通信回線13は、例えば、イーサネット(登録商標)回線で構成される。
ここで、スイッチ装置SW1,SW2のそれぞれは、自装置のMLAG用ポートと、他装置のMLAG用ポートとの間にLAG(すなわちMLAG)を設定する。例えば、スイッチ装置SW1は、自装置(SW1)のMLAG用ポートP1と、他装置(SW2)のMLAG用ポートP1との間にMLAG[1]を設定し、スイッチ装置SW2も、自装置(SW2)のMLAG用ポートP1と、他装置(SW1)のMLAG用ポートP1との間にMLAG[1]を設定する。
同様に、スイッチ装置SW1は、自装置(SW1)のMLAG用ポートP2と、他装置(SW2)のMLAG用ポートP2との間にMLAG[2]を設定し、スイッチ装置SW2も、自装置(SW2)のMLAG用ポートP2と、他装置(SW1)のMLAG用ポートP2との間にMLAG[2]を設定する。以降同様にして、スイッチ装置SW1,SW2は、共に、MLAG用ポートPnにMLAG[n]を設定する。
一方、通信装置10[1]は、LAG用ポートPu1,Pu2にMLAG[1]を設定する。同様に、通信装置10[2]は、LAG用ポートPu1,Pu2にMLAG[2]を設定し、通信装置10[n]は、LAG用ポートPu1,Pu2にMLAG[n]を設定する。なお、ここでは、通信装置10[1]〜10[n]のそれぞれは、LAG用ポートPu1,Pu2にMLAGを設定することとしたが、実際には、通常のLAGを設定すればよく、特に、MLAGとLAGとを区別して取り扱う必要はない。
図2(a)および図2(b)は、図1の中継システムにおいて、そのフレーム中継時の概略的な動作例を示す説明図である。ここでは、通信装置10[1]は、MAC(Media Access Control)アドレスMA1を持つ情報処理装置等であり、通信装置10[n]は、MACアドレスMA2を持つ情報処理装置等であり、通信装置10[1]から通信装置10[n]に向けてユーザフレームが転送される場合を想定する。また、図2(a)には障害が無い場合の動作例が示され、図2(b)にはスイッチ装置SW1と通信装置10[n]との間の通信回線13に障害が有る場合の動作例が示される。
図2(a)(または図2(b))において、通信装置10[1]は、ユーザフレームUF1a(またはUF1b)を生成し、MLAG[1]における所定の分散規則に基づき、LAG用ポートPu1,Pu2のいずれか一方からユーザフレームUF1a(またはUF1b)を送信する。ここでは、通信装置10[1]は、ユーザフレームUF1a(またはUF1b)を、LAG用ポートPu1からスイッチ装置SW1に向けて送信したものとする。スイッチ装置SW1は、ユーザフレームUF1a(またはUF1b)をMLAG用ポートP1で受信し、その送信元MACアドレス(ここではMA1)をMLAG[1]に対応付けてアドレステーブル(FDB)に学習する。
さらに、スイッチ装置SW1は、ユーザフレームUF1a(またはUF1b)に含まれる宛先MACアドレス(ここではMA2)を検索キーとしてアドレステーブル(FDB)を検索する。その結果、スイッチ装置SW1は、宛先ポートとしてMLAG[n]を得る。ここで、図2(a)に示すように、スイッチ装置SW1は、MLAG[n]のメンバポートである自装置のMLAG用ポートPnに障害が無い場合、ユーザフレームUF1aをMLAG用ポートPnに中継する。これにより、ユーザフレームUF1aは、通信装置10[n]に転送される。
一方、図2(b)に示すように、スイッチ装置SW1は、MLAG[n]のメンバポートである自装置のMLAG用ポートPnに障害が有る場合、ユーザフレームUF1bをブリッジ用ポートPbに中継する。すなわち、スイッチ装置SW1は、自装置(SW1)のMLAG用ポートPnと他装置(SW2)のMLAG用ポートPnとの間にMLAG[n]が設定されていることを認識すると共に、スイッチ装置SW2のMLAG用ポートPnに障害が無いことを認識した上で、ユーザフレームUF1bをブリッジ用ポートPbに中継する。スイッチ装置SW2は、ブリッジ用ポートPbで受信したユーザフレームUF1bを、宛先ポートであるMLAG[n]に対応する自装置のMLAG用ポートPnに中継する。これにより、ユーザフレームUF1bは、通信装置10[n]に転送される。
なお、図2(b)において、スイッチ装置SW2は、様々な方式を用いてユーザフレームUF1bを中継することができる。例えば、スイッチ装置SW2は、スイッチ装置SW1から宛先ポートであるMLAG[n]の識別子が付加されたユーザフレームUF1bを受け、当該識別子に基づきユーザフレームUF1bを中継する。あるいは、スイッチ装置SW2は、ユーザフレームUF1bを受けた際に、自装置のアドレステーブル(FDB)を検索し、その検索結果に基づきユーザフレームUF1bを中継する。
また、スイッチ装置SW1,SW2は、アドレステーブル(FDB)を同期する仕組みを備えることが望ましい。その一例として、スイッチ装置SW1は、ユーザフレームUF1a(またはUF1b)の送信元MACアドレス(ここではMA1)をアドレステーブル(FDB)に学習すると共に、その受信ポート(ここではMLAG[1])とMACアドレスMA1との対応関係を表す学習用フレームを生成し、スイッチ装置SW2に送信する。スイッチ装置SW2は、当該学習用フレームに基づきアドレステーブル(FDB)の学習を行う。
以上のように、MLAGスイッチMLAGSWでは、例えば、MLAGの1個のメンバポート(例えばSW1のPn)に障害が有る場合でも、当該MLAGの他のメンバポート(例えばSW2のPn)を用いて代替え経路を構築することができる。その前提として、スイッチ装置SW1,SW2のそれぞれは、図2(a)および図2(b)に示すように、ピア装置との間でブリッジ用ポートPbを介して定期的に制御フレームCFの送信および受信を行うことで、MLAGの制御情報を共有していることが必要となる。なお、本実施の形態では、ピア装置とは、スイッチ装置SW1から見た場合のスイッチ装置SW2や、スイッチ装置SW2から見た場合のスイッチ装置SW1を意味する。
《制御フレームのフレーム形式》
図3は、図2における制御フレームCFのフレーム形式の一例を示す概略図である。図3に示す制御フレームCFは、宛先MACアドレスの領域15と、送信元MACアドレスの領域16と、未使用の領域18と、プロトコルバージョン(ver.)の領域19と、LAG(具体的にはMLAG)の制御情報の領域21と、を含む。MLAGの制御情報の領域21は、MLAGスイッチ状態の領域17と、それぞれMLAG用ポートの情報を格納するn個の領域20[1]〜20[n]と、を含む。
ここでは、一例として、図2において、スイッチ装置SW1からスイッチ装置SW2に向けて送信される制御フレームCFを想定する。この場合、領域15には、スイッチ装置SW2のMACアドレスが格納され、領域16には、スイッチ装置SW1のMACアドレスが格納される。領域17には、例えば、スイッチ装置SW1のMLAGスイッチとしての状態(正常状態、障害状態等)が格納される。領域19には、制御フレームCFのフレーム形式のバージョンを表すプロトコルバージョン(ver.)が格納される。本明細書では、この領域19に格納されるプロトコルバージョンをフレームバージョン(第2バージョン)と呼ぶ。
領域20[1]〜20[n]は、それぞれ、図1のMLAG[1]〜MLAG[n]に対応する領域である。例えば、MLAG[1]に対応する領域20[1]には、スイッチ装置SW1におけるMLAG[1]のメンバポートの識別子{P1}や、図示は省略するが当該メンバポートの障害有無の情報等が格納される。同様に、MLAG[n]に対応する領域20[n]には、スイッチ装置SW1におけるMLAG[n]のメンバポートの識別子{Pn}や、図示は省略するが当該メンバポートの障害有無の情報等が格納される。なお、例えば、{P1}は、ポート(MLAG用ポート)P1の識別子(ID)を表し、本明細書では、同様にして、{AA}は、「AA」の識別子(ID)を表すものとする。
このように、図3の制御フレームCFは、領域19に示されるようなバージョン(ここではフレームバージョン(第2バージョン))と、領域21に示されるようなLAG(具体的にはMLAG)の制御情報と、を含んだものとなっている。スイッチ装置SW2は、このような制御フレームCFをスイッチ装置SW1から定期的に受信することで、スイッチ装置SW1と共にMLAGスイッチとしての機能を実現する。同様に、スイッチ装置SW1も、制御フレームCFをスイッチ装置SW2から定期的に受信することで、スイッチ装置SW2と共にMLAGスイッチとしての機能を実現する。
具体的には、例えば、図2(b)において、スイッチ装置SW1は、スイッチ装置SW2から定期的に送信される筈の制御フレームCFを所定の期間内に受信することで、ブリッジ用ポートPbが障害無しであることを認識する。さらに、スイッチ装置SW1は、当該制御フレームCFに含まれる領域20[n]の情報に基づいて、MLAG[n]のメンバポートがスイッチ装置SW2に存在することや、当該メンバポートが障害無しであること等を認識する。スイッチ装置SW1は、このような認識を行っていることを前提として、図2(b)に示したように、ユーザフレームUL1bをブリッジ用ポートPbに中継する。その結果、MLAGスイッチMLAGSWの機能の一つとして、装置跨ぎで代替え経路を構築することが可能になる。
なお、ここでは、領域21におけるLAG(MLAG)の制御情報の一例として、各MLAG毎のメンバポートの識別子や、その障害有無の情報等を挙げたが、特にこれに限定されるものではなく、スイッチ装置SW1,SW2をMLAGスイッチMLAGSWとして機能させるのに必要な情報であればよい。例えば、特許文献2のようにLAGの帯域制御を行うのであれば、各MLAGポート毎の帯域情報(帯域の監視結果)等を含んでもよい。
《中継装置の構成および動作》
図4は、図1の中継システムにおいて、その中継装置の概略構成例を示すブロック図である。図5(a)は、図4におけるアドレステーブルの構成例を示す概略図であり、図5(b)は、図4におけるMLAGテーブルの構成例を示す概略図である。図4に示す中継装置SWは、図1の中継装置SW1,SW2のそれぞれに対応するL2スイッチまたはL3スイッチである。ここでは、L2スイッチである場合を例とする。図4の中継装置SWは、複数(n個)のポートP1〜Pnと、ブリッジ用ポートPbと、フレーム処理部25と、制御部26と、を備える。ここでは、図1の場合と同様に、ポートP1〜Pnのそれぞれは、MLAG用ポートであるものとする。
フレーム処理部25は、アドレステーブルFDBと、MLAGテーブル27と、障害監視部28と、を備える。アドレステーブルFDBは、図5(a)に示すように、ポート識別子/MLAG識別子と、当該識別子が示すポート/MLAGの先に存在するMACアドレスと、当該MACアドレスに対応するVLAN(Virtual Local Area Network)識別子と、の対応関係を保持する。
図5(a)のアドレステーブルFDBでは、図2(a)および図2(b)の場合を例として、MACアドレスMA1とMLAG識別子{MLAG[1]}との対応関係と、MACアドレスMA2とMLAG識別子{MLAG[n]}との対応関係と、が保持される。なお、仮にポートP1〜Pnのいずれかが一般ポートである場合、アドレステーブルFDBでは、この一般ポートに関し、MLAG識別子ではなくポート識別子が用いられる。
MLAGテーブル27は、図5(b)に示すように、MLAG識別子と、当該MLAGの各メンバポートのポート識別子と、当該各メンバポート毎の障害有無の情報と、を保持する。図5(b)のMLAGテーブル27では、図2(b)の場合を例として、MLAG識別子{MLAG[1]}と、その各メンバポートのポート識別子{P1}(SW1),{P1}(SW2)と、スイッチ装置SW1,SW2の各MLAG用ポートP1における障害無しの情報と、が保持される。また、当該MLAGテーブル27では、MLAG識別子{MLAG[n]}と、その各メンバポートのポート識別子{Pn}(SW1),{Pn}(SW2)と、スイッチ装置SW1のMLAG用ポートPnにおける障害有りの情報と、スイッチ装置SW2のMLAG用ポートPnにおける障害無しの情報と、が保持される。
障害監視部28は、ハードウェアによって各ポート(P1〜Pn,Pb)におけるリンクダウンの有無を監視するリンクダウン監視回路を備える。例えば、リンクダウン監視回路は、受信した光信号レベルを監視し、光信号レベルの不足といった異常状態が所定の期間継続する場合にリンクダウン有りと判定する。あるいは、リンクダウン監視回路は、受信した信号から、アイドル状態で生成されるリンクパルス信号の有無や非アイドル状態でのデータ信号の有無を監視し、リンクパルス信号およびデータ信号が共に無しといった異常状態が所定の期間継続する場合にリンクダウン有りと判定する。
フレーム処理部25は、主に、アドレステーブルFDBの学習および検索を行い、このアドレステーブルFDB等に基づいて各ポート(P1〜Pn,Pb)間でフレーム(例えばユーザフレーム)を中継する。具体的には、フレーム処理部25は、例えば、ポート(MLAG用ポート)P1〜Pnのいずれかでフレームを受信した際に、MLAGテーブル27に基づいて、当該MLAG用ポートに対応するMLAG識別子を取得する。そして、フレーム処理部25は、当該フレームの送信元MACアドレスを、当該MLAG識別子ならびに所定のVLAN識別子に対応付けてアドレステーブルFDBに学習する。
また、フレーム処理部25は、当該フレームの宛先MACアドレスと所定のVLAN識別子とを検索キーとしてアドレステーブルFDBを検索し、宛先ポート識別子を取得する。宛先ポート識別子がMLAG識別子の場合、フレーム処理部25は、MLAGテーブル27に基づいて、当該MLAG識別子のメンバポートとなる自装置のMLAG用ポートを認識する。そして、フレーム処理部25は、MLAGテーブル27に基づいて、自装置のMLAG用ポートが障害無しの場合には、当該MLAG用ポートにフレームを中継し、自装置のMLAG用ポートが障害有りで、かつ他装置(すなわちピア装置)のMLAG用ポートが障害無しの場合には、ブリッジ用ポートPbにフレームを中継する。
さらに、フレーム処理部25は、詳細な説明は省略するが、図2(a)および図2(b)で述べたように、スイッチ装置SW1,SW2間でのアドレステーブルFDBの同期方法に応じた処理や、図2(b)のスイッチ装置SW2のように、ブリッジ用ポートPbで受信したフレームの中継方法に応じた処理も行う。
制御部26は、プロセッサ部(CPU)29と、記憶部30と、を備え、フレーム処理部25の制御や管理を含めて、スイッチ装置SW全体の制御や管理を行う。記憶部30は、揮発性メモリや不揮発性メモリで構成され、ファームウェア(FW)32や、装置の管理情報/設定情報(図示せず)等を保持する。プロセッサ部(CPU)29は、ファームウェア(FW)32を実行することによって構成される制御フレーム処理部31を備える。制御フレーム処理部31は、前述したように、ブリッジ用ポートPbを介して図3等で述べたような制御フレームCFの送信および受信を行う。
制御フレーム処理部31は、具体的には、制御フレーム送信部31aと、制御フレーム受信部31bと、を備える。制御フレーム送信部31aは、定期的に制御フレームCFを生成し、当該生成した制御フレームCFを、フレーム処理部25を介してブリッジ用ポートPbからピア装置に向けて送信する。制御フレーム受信部31bは、ブリッジ用ポートPbで受信したピア装置からの制御フレームCFをフレーム処理部25を介して受け、当該制御フレームCFの解析を行う。さらに、制御フレーム受信部31bは、ブリッジ用ポートPbで、ピア装置からの制御フレームCFを所定の期間受信しない場合に、ブリッジ用ポートPb(またはピア装置)を障害有りと判定する。
ここで、一例として、スイッチ装置SW1が備える図5(b)のMLAGテーブル27は、例えば、次のようにして生成される。まず、ユーザは、予めスイッチ装置SW1に対して、MLAG識別子(例えば{MLAG[1]})と、そのメンバポートに設定する当該装置のMLAG用ポートのポート識別子(例えば{P1}(SW1))と、を入力する。この入力を受けて、プロセッサ部(CPU)29は、MLAGテーブル27の一部の情報を生成する。
また、プロセッサ部(CPU)29(具体的には制御フレーム受信部31b)は、ピア装置からの制御フレームCFに含まれるMLAGの制御情報(具体的には、図3の領域20[1]〜20[n]の情報)に基づいて、MLAGテーブル27の他の一部の情報を生成する。具体的には、他の一部の情報として、例えば、スイッチ装置SW2におけるMLAG識別子(例えば{MLAG[1]})とポート識別子(例えば{P1}(SW2))との対応関係や、当該MLAG用ポートP1(SW2)における障害有無の情報が生成される。また、MLAGテーブル27において、例えばスイッチ装置SW1のMLAG用ポートP1の障害有無の情報は、障害監視部28の監視結果に基づいて生成される。
《中継システムにおける問題点の一例》
図14は、本発明の比較例として検討した中継システムにおいて、図4の制御フレーム受信部の動作例を示すフロー図である。図14において、比較例となる制御フレーム受信部は、ピア装置からの制御フレームCFを受信する(ステップS501)。次いで、当該制御フレーム受信部は、当該制御フレームに含まれる領域19のフレームバージョン(第2バージョン)が、自装置がデフォルトで用いるフレーム形式のバージョンと同じか否かを判定する(ステップS502)。
自装置がデフォルトで用いるフレーム形式のバージョンとは、自装置が、デフォルトで制御フレームCFを送信する際に、この制御フレームCFのフレーム形式に基づいて図3の領域19に格納するプロトコルバージョン(言い換えればフレーム形式のバージョン)を意味する。以降、本明細書では、このデフォルトで用いるフレーム形式のバージョンをデフォルトバージョン(第1バージョン)と呼ぶ。デフォルトバージョン(第1バージョン)は、図4に示したファームウェア(FW)32のバージョンに基づいて一義的に定まる。
ステップS502において、フレームバージョン(第2バージョン)とデフォルトバージョン(第1バージョン)とが同じ場合、比較例となる制御フレーム受信部は、制御フレームCFの領域21に格納されるMLAGの制御情報の解析処理を行う(ステップS503)。一方、フレームバージョンとデフォルトバージョンとが異なる場合、当該制御フレーム受信部は、領域21に格納されるMLAGの制御情報(場合によってはそれを含む制御フレームCF自体)を破棄する(ステップS504)。
ここで、例えば、領域19のプロトコルバージョンの相違に伴い制御フレームCFのフレーム形式が異なると、MLAGスイッチMLAGSWを構成する各スイッチ装置SW1,SW2は、領域21に格納されるMLAGの制御情報を正しく共有できない恐れがある。具体例として、スイッチ装置SW1は最大64個のMLAGを設定可能にする新バージョンのファームウェア(FW)32を備え、スイッチ装置SW2は最大32個のMLAGを設定可能にする旧バージョンのファームウェア(FW)32を備える場合を想定する。
この場合、例えば図3の領域20[1]〜20[n]に関し、スイッチ装置SW1は、「n=64」の制御フレームCFを送信するのに対して、スイッチ装置SW2は、「n=32」の制御フレームCFを送信する。そうすると、各スイッチ装置SW1,SW2は、この制御フレームCFのフレーム長の違いによって、MLAGの制御情報全体を正しく認識できない場合が有る。その結果、MLAGスイッチMLAGSWの誤動作が生じたり、場合によっては、各スイッチ装置SW1,SW2が互いをピア装置として認識すること自体が行えなくなる。例えば、このような事態を防止するためなどから、ステップS503,S504の処理が行われる。
ただし、ステップS504において領域21に格納されるMLAGの制御情報が破棄されると、比較例となる制御フレーム受信部は、前述した図5(b)のMLAGテーブル27を生成することができなくなる。あるいは、当該MLAGの制御情報を含む制御フレームCF自体が破棄されると、当該制御フレーム受信部は、ブリッジ用ポートPb(またはピア装置)を障害有りと判定してしまう。その結果、スイッチ装置SW1,SW2は、図2(a)および図2(b)に示した装置跨ぎの代替え経路の構築を代表例とする、MLAGスイッチMLAGSWとしての機能を実現できなくなる。
《制御フレーム処理部の動作》
図6は、本発明の実施の形態1による中継装置において、図4の制御フレーム処理部の動作例を示す説明図である。まず、図6の概略について説明する。制御フレーム処理部31は、ブリッジ用ポートPbで制御フレームCFを受信した際に、当該制御フレームCFに含まれるバージョンに応じて、デフォルト状態ST101か、下位互換状態ST102か、で動作する。
制御フレーム処理部31は、デフォルト状態ST101では、自装置のデフォルトバージョン(第1バージョン)のフレーム形式を用いて制御フレームCFを送信する。デフォルトバージョン(第1バージョン)とは、図14で述べたように、デフォルトで用いるフレーム形式のバージョン(領域19のプロトコルバージョン)である。一方、制御フレーム処理部31は、下位互換状態ST102では、自装置のデフォルトバージョン(第1バージョン)よりも下位のバージョンのフレーム形式を用いて制御フレームCFを送信する。
次に図6の詳細について説明する。制御フレーム処理部31は、装置起動が行われた場合(条件(1))、デフォルト状態ST101で動作する。また、制御フレーム処理部31(具体的には制御フレーム受信部31b)は、ピア装置からの制御フレームCFを受信した際に、当該制御フレームCFに含まれるバージョンを取得する。本実施の形態1では、当該バージョンは、図3の領域19に格納されるフレームバージョン(第2バージョン)である。当該フレームバージョン(第2バージョン)は、図3で述べたように、当該制御フレームCFのフレーム形式のバージョンを表す。
ここで、制御フレーム受信部31bは、取得したフレームバージョン(第2バージョン)に基づいて、受信した制御フレームCFのフレーム形式を判別し、当該判別結果に基づいて当該制御フレームCFの領域21に含まれるLAG(具体的にはMLAG)の制御情報を認識する。具体的には、制御フレーム受信部31bは、図14の場合と異なり、取得したフレームバージョン(第2バージョン)が自装置のデフォルトバージョン(第1バージョン)と同一であるか、あるいは下位の場合に、MLAGの制御情報の解析処理を行う。また、制御フレーム受信部31bは、取得したフレームバージョンが自装置のデフォルトバージョンよりも上位の場合には、MLAGの制御情報を破棄する。ただし、MLAGの制御情報が破棄される状況は、図6の下位互換状態ST102を備えることによって、継続的に生じることは無い。
デフォルト状態ST101で動作している制御フレーム送信部31aは、制御フレーム受信部31bによって取得されたフレームバージョン(第2バージョン)が自装置のデフォルトバージョン(第1バージョン)よりも下位の場合(条件(2))、下位互換状態ST102に遷移する。そして、制御フレーム送信部31aは、下位互換状態ST102において、制御フレーム受信部31bによって取得されたフレームバージョンと同じバージョンのフレーム形式を用いて制御フレームCFを送信する。
また、下位互換状態ST102で動作している制御フレーム送信部31aは、制御フレーム受信部31bによって取得されたフレームバージョン(第2バージョン)が自装置のデフォルトバージョン(第1バージョン)と比較して同じか又は上位の場合(条件(3))、デフォルト状態ST101に遷移する。そして、制御フレーム送信部31aは、デフォルト状態ST101において、デフォルトバージョン(第1バージョン)のフレーム形式を用いて制御フレームCFを送信する。
図7は、図1の中継システムにおいて、MLAGスイッチを構成する各装置の少なくとも一方が図6の動作を行う場合の動作シーケンスの一例を示す図である。図7の例では、スイッチ装置SW1は、新バージョンのファームウェア(FW)32を備え、これに基づき、自装置のデフォルトバージョン(第1バージョン)は、「2」である。スイッチ装置SW1は、図6の動作を行う。
一方、スイッチ装置SW2は、旧バージョンのファームウェア(FW)32を備え、これに基づき、自装置のデフォルトバージョン(第1バージョン)は、「1」である。スイッチ装置SW2は、図6の動作を行わない。すなわち、スイッチ装置SW2は、下位互換状態ST102を備えずに、常にデフォルト状態ST101で動作するような装置仕様となっている。ここで、新バージョンのファームウェア(FW)32は、旧バージョンのファームウェア(FW)32の上位互換となるように作成されているものとする。
図7において、スイッチ装置SW1,SW2は、装置起動(ステップS101)に伴い、共に、図6のデフォルト状態ST101で動作する。これにより、スイッチ装置SW1は、デフォルト状態ST101の期間35においてピア装置に向けて制御フレームCFを送信する際には、図3の領域19のプロトコルバージョンにデフォルトバージョンである「2」を格納する。一方、スイッチ装置SW2は、デフォルト状態ST101の期間36においてピア装置に向けて制御フレームCFを送信する際には、図3の領域19のプロトコルバージョンにデフォルトバージョンである「1」を格納する。
スイッチ装置SW1は、期間35において、スイッチ装置SW2からプロトコルバージョン(フレームバージョン)=1の制御フレームCFを受信する(ステップS102)。スイッチ装置SW1は、受信したフレームバージョン(第2バージョン)=1が自装置のデフォルトバージョン(第1バージョン)=2よりも下位であるため、図6の下位互換状態ST102に遷移する。
これにより、スイッチ装置SW1は、下位互換状態ST102の期間37においてピア装置に向けて制御フレームCFを送信する際には、図3の領域19に、ステップS102で受信したフレームバージョン(第2バージョン)と同じフレームバージョン(=1)を格納する(ステップS103)。なお、この際に、スイッチ装置SW1は、フレームバージョン=1を格納すると共に、制御フレームCFのフレーム形式もフレームバージョン=1のフレーム形式に変更する。
具体的には、例えば、図14で述べたように、ファームウェア(FW)32のバージョンによってMLAGの最大設定数(64個または32個)が異なる場合を想定する。この場合、前述した図3の領域20[1]〜20[n]に関し、フレームバージョン=2の制御フレームCFは、「n=64」であり、フレームバージョン=1の制御フレームCFは、「n=32」である。
ステップS103に伴い、スイッチ装置SW2は、スイッチ装置SW1からプロトコルバージョン(フレームバージョン)=1の制御フレームCFを受信する。スイッチ装置SW2は、受信したフレームバージョン(第2バージョン)=1が自装置のデフォルトバージョン(第1バージョン)=1と同じであることを認識する。その結果、スイッチ装置SW2は、仮に図14の処理を行う場合であっても、MLAG制御情報の解析処理(ステップS503)を行うことが可能になる。
このような方式を用いることで、各スイッチ装置SW1,SW2は、自装置よりも上位のフレームバージョンを持つ制御フレームCFを継続的に受信することが無くなり、前述した図14の場合と異なり、領域21のMLAGの制御情報を解析ならびに共有することが可能になる。そして、スイッチ装置SW1,SW2は、旧バージョンのファームウェア(FW)32に基づく仕様(例えば、MLAGの最大設定数=32個)を前提として、MLAGスイッチとしての機能を実現できる。言い換えれば、スイッチ装置SW1,SW2は、双方が採りえる最も新しいバージョンのファームウェア(FW)32に基づく装置仕様で、MLAGスイッチとしての機能を実現できる。
以上で述べたように、本実施の形態1の中継システムおよび中継装置を用いることで、代表的には、MLAGスイッチを構成する各スイッチ装置の装置仕様(例えばファームウェア(FW)32)のバージョンに関わらず、MLAGスイッチとしての機能を実現可能になる。なお、図7では、スイッチ装置SW1が図6の動作を行う場合を例としたが、スイッチ装置SW1,SW2の両方が図6の動作を行うと共に、スイッチ装置SW1のデフォルトバージョンと、スイッチ装置SW2のデフォルトバージョンとが異なるような場合であっても、図7と同様の動作が行われ、同様の効果が得られる。
(実施の形態2)
《実施の形態1の方式による不具合の一例》
図8は、本発明の実施の形態2による中継システムにおいて、その前提として検討した不具合時の動作シーケンスの一例を示す図である。ここでは、図1の中継システムにおけるMLAGスイッチMLAGSWは、図6および図7で述べたような動作を行うものとする。ただし、図8では、図7の場合と異なり、スイッチ装置SW2のファームウェア(FW)32は、旧バージョンから、スイッチ装置SW1と同じ新バージョンに更新されている。すなわち、図8は、例えば、スイッチ装置SW1のファームウェア(FW)32が新バージョンに更新された状態で、ある程度の期間を経たのち、スイッチ装置SW2のファームウェア(FW)32も新バージョンに更新されるような状況を表している。
図8では、図7の場合と同様のステップS101およびステップS102を介して、スイッチ装置SW2は、期間36においてデフォルト状態ST101で動作し、スイッチ装置SW1は、期間37において下位互換状態ST102で動作している。この状態で、スイッチ装置SW2のファームウェア(FW)32は、新バージョンに更新される(ステップS201)。スイッチ装置SW2は、ファームウェア(FW)32の更新が完了すると、装置起動が行われたのち、期間40においてデフォルト状態ST101で動作する。このデフォルト状態ST101の期間40では、前述したデフォルト状態ST101の期間36と異なり、プロトコルバージョン(フレームバージョン)=2の制御フレームCFが送信される。
この期間40において、仮に、スイッチ装置SW1に先だってスイッチ装置SW2から制御フレームCFが送信された場合、スイッチ装置SW1は、デフォルト状態ST101に遷移することが可能である。しかしながら、図8では、スイッチ装置SW2に先だってスイッチ装置SW1から制御フレームCFが送信されている(ステップS202)。当該制御フレームCFは、プロトコルバージョン(フレームバージョン)=1の制御フレームCFである。
そうすると、スイッチ装置SW2は、当該フレームバージョン=1の制御フレームCFを受信して、下位互換状態ST102に遷移し、以降、期間41において下位互換状態ST102で動作する。これにより、スイッチ装置SW1も、スイッチ装置SW2からフレームバージョン=1の制御フレームCFを受信することになるため、期間37での下位互換状態ST102を維持する。その結果、スイッチ装置SW1,SW2は、本来、新バージョンのファームウェア(FW)32に基づくデフォルト状態ST101での動作が可能であるにも関わらず、下位互換状態ST102でデットロックされることになる。
《制御フレーム処理部の動作(応用例[1])》
図9は、本発明の実施の形態2による中継装置において、図4の制御フレーム処理部の動作例を示す説明図である。図9の示す動作例は、図6に示した動作例と比較して、さらに条件(4)が追加された点が異なっている。すなわち、制御フレーム処理部31(具体的には制御フレーム送信部31a)は、図9に示すように、ピア装置との間のブリッジ用ポートPbを介する通信経路(より詳細には、ピア装置からの受信経路)の切断有りが検出された場合(条件(4))、デフォルト状態ST101で動作する。
ここで、ブリッジ用ポートPbを介する通信経路の切断有無は、ブリッジ用ポート監視部によって検出される。ブリッジ用ポート監視部は、具体的には、例えば、図4で述べた障害検出部28および制御フレーム受信部31bのいずれか一方あるいは両方で構成される。すなわち、障害検出部28がブリッジ用ポートPbをリンクダウン有りと判定している状態や、制御フレーム受信部31bがピア装置を障害有りと判定している状態のいずれか一方または両方の状態に基づいて、ブリッジ用ポートPbを介する通信経路の切断有りが検出される。
図10は、図1の中継システムにおいて、MLAGスイッチを構成する各装置の少なくとも一方が図9の動作を行う場合の動作シーケンスの一例を示す図である。図10では、図7および図8の場合と同様のステップS101およびステップS102を介して、スイッチ装置SW2は、期間36においてデフォルト状態ST101で動作し、スイッチ装置SW1は、期間37において下位互換状態ST102で動作している。この状態で、図8の場合と同様に、スイッチ装置SW2のファームウェア(FW)32は、新バージョンに更新される(ステップS201)。この更新によって、スイッチ装置SW1に加えてスイッチ装置SW2も、図9の動作を行うことになる。
ここで、スイッチ装置SW2のファームウェア(FW)32の更新が行われている間、通常、スイッチ装置SW2のブリッジ用ポートPbは、リンクダウン状態となり、スイッチ装置SW2からの制御フレームCFの送信も停止する。これに応じて、スイッチ装置SW1のブリッジ用ポート監視部は、ブリッジ用ポートPbを介する通信経路の切断有りを検出する(ステップS301)。制御フレーム送信部31aは、当該切断有りの検出(条件(4))に応じてデフォルト状態ST101に遷移し、期間45においてデフォルト状態ST101で動作する。
この期間45では、図8の場合と同様に、スイッチ装置SW2に先だってスイッチ装置SW1から制御フレームCFが送信されている(ステップS302)。ただし、当該制御フレームCFは、図8の場合と異なり、プロトコルバージョン(フレームバージョン)=2の制御フレームCFである。一方、スイッチ装置SW2は、図8の場合と同様に、ファームウェア(FW)32の更新の完了に伴い、期間40においてデフォルト状態ST101で動作している。スイッチ装置SW2は、この期間40においてフレームバージョン=2の制御フレームCFを受信する(ステップS302)。
その結果、スイッチ装置SW2は、受信したフレームバージョン(第2バージョン)が自装置のデフォルトバージョン(第1バージョン)と同じであるため、図8の場合と異なり、デフォルト状態ST101を維持することができる。また、スイッチ装置SW1も、スイッチ装置SW2からフレームバージョン=2の制御フレームCFを受信することになるため、期間45でのデフォルト状態ST101を維持する。その結果、スイッチ装置SW1,SW2は、図8の場合と異なり、新ファームウェア(FW)32に基づくデフォルト状態ST101で動作することが可能になる。
以上、本実施の形態2の中継システムおよび中継装置を用いることで、実施の形態1で述べた各種効果に加えて、さらに、次のような効果が得られる。すなわち、図10のスイッチ装置SW2のように装置仕様(例えばファームウェア(FW)32)に変更が生じた場合であっても、スイッチ装置SW1,SW2の双方が採りえる最も新しい装置仕様に基づいて、MLAGスイッチとしての機能を実現可能になる。なお、ここでは、スイッチ装置SW2のファームウェア(FW)32を更新する場合を例としたが、スイッチ装置SW2自体をその後継機種(すなわち更新後のファームウェア(FW)32を持つ機種)に交換するような場合であっても同様の効果が得られる。
(実施の形態3)
前述した実施の形態2の方式では、可能性としては非常に低いものの、図10のステップS301での切断有りの検出が実行されず、図8で述べた不具合を解消できない場合が考えられる。具体的には、例えば、図4で述べたリンクダウン監視回路で検出を行う場合で、ファームウェア(FW)32の更新がリンクアップ状態のまま行われるような装置仕様の場合が挙げられる。または、リンクダウン監視回路でリンクダウン有りを判定する際の所定の期間(図4で述べた異常状態の継続期間)内に、装置の交換(またはファームウェア(FW)32の更新)が行われる場合が挙げられる。
さらには、図4で述べたように、制御フレーム受信部31bで検出を行う場合で、制御フレームCFの受信可否の判定基準となる所定の期間内に、装置の交換(またはファームウェア(FW)32の更新)が行われる場合が挙げられる。このような場合に、本実施の形態3の方式を用いることが有益となる。
《制御フレームのフレーム形式(応用例[2])》
図11は、本発明の実施の形態3による中継システムにおいて、図2における制御フレームCFのフレーム形式の一例を示す概略図である。図11に示す制御フレームCFは、図3と比較して、さらに、図3における未使用の領域18の一部に設けられた領域22を備える点が異なっている。領域22には、ファームウェア(FW)32のバージョン(ver.)が格納される。なお、図4のスイッチ装置SWのデフォルトバージョン(第1バージョン)は、ファームウェア(FW)32のバージョンに基づき一義的に定められる。このため、図11の領域22に格納される情報は、当該デフォルトバージョン(第1バージョン)と等価である。
このように、本実施の形態3の方式では、図4の制御フレーム処理部31(具体的には制御フレーム送信部31a)は、制御フレームCFを送信する際に、バージョンとして、自装置のデフォルトバージョン(第1バージョン)を領域22に格納する。さらに、制御フレーム処理部31(具体的には制御フレーム送信部31a)は、バージョンとして、デフォルトバージョン(第1バージョン)に加えて、領域19に、実施の形態1の場合と同様のフレームバージョン(第2バージョン)を格納する。
《制御フレーム処理部の動作(応用例[2])》
図12は、本発明の実施の形態3による中継装置において、図4の制御フレーム処理部の動作例を示す説明図である。図12において、制御フレーム処理部31は、実施の形態1の場合と同様に、ブリッジ用ポートPbで制御フレームCFを受信した際に、当該制御フレームCFに含まれるバージョンに応じて、デフォルト状態ST201か、下位互換状態ST202か、で動作する。ただし、制御フレーム処理部31は、この際のバージョンとして、実施の形態1の場合と異なり、領域22のデフォルトバージョン(第1バージョン)を用いる。
具体的には、制御フレーム処理部31は、まず、装置起動が行われた場合(条件(1))、デフォルト状態ST201で動作する。制御フレーム処理部31(具体的には制御フレーム送信部31a)は、デフォルト状態ST201では、自装置のプロトコルバージョン(すなわちデフォルトバージョン(第1バージョン))のフレーム形式を用いて制御フレームCFを送信する。
一方、制御フレーム処理部31(具体的には制御フレーム受信部31b)は、ピア装置からの制御フレームCFを受信した際に、当該制御フレームCFに含まれるバージョンを取得する。当該バージョンは、領域22のデフォルトバージョン(第1バージョン)および領域19のフレームバージョン(第2バージョン)である。
ここで、制御フレーム受信部31bは、取得したフレームバージョン(第2バージョン)に基づいて、受信した制御フレームCFのフレーム形式を判別し、当該判別結果に基づいて当該制御フレームCFの領域21に含まれるLAG(具体的にはMLAG)の制御情報を認識する。具体的には、制御フレーム受信部31bは、図14の場合と異なり、取得したフレームバージョン(第2バージョン)が自装置のデフォルトバージョン(第1バージョン)と同一であるか、あるいは下位の場合に、MLAGの制御情報の解析処理を行う。また、制御フレーム受信部31bは、取得したフレームバージョンが自装置のデフォルトバージョンよりも上位の場合には、MLAGの制御情報を破棄する。
デフォルト状態ST201で動作している制御フレーム送信部31aは、制御フレーム受信部31bによって取得されたデフォルトバージョン(第1バージョン)が自装置のデフォルトバージョン(第1バージョン)よりも下位の場合(条件(5))、下位互換状態ST202に遷移する。制御フレーム送信部31aは、下位互換状態ST202では、制御フレーム受信部31bによって取得されたフレームバージョン(第2バージョン)と同じバージョンのフレーム形式を用いて制御フレームCFを送信する。
また、下位互換状態ST202で動作している制御フレーム送信部31aは、制御フレーム受信部31bによって取得されたデフォルトバージョン(第1バージョン)が自装置のデフォルトバージョン(第1バージョン)と比較して同じか又は上位の場合(条件(6))、デフォルト状態ST201に遷移する。そして、制御フレーム送信部31aは、デフォルト状態ST201において、自装置のデフォルトバージョン(第1バージョン)のフレーム形式を用いて制御フレームCFを送信する。
図13は、図1の中継システムにおいて、MLAGスイッチを構成する各装置の少なくとも一方が図12の動作を行う場合の動作シーケンスの一例を示す図である。この例では、まず、図13の装置起動(ステップS401)の前に、スイッチ装置SW1は、FWバージョン=2のファームウェア(FW)32を備え、これに基づき、自装置のデフォルトバージョン(第1バージョン)は、「2」となっている。スイッチ装置SW1は、図12の動作を行う。
一方、スイッチ装置SW2は、FWバージョン=1のファームウェア(FW)32を備え、これに基づき、自装置のデフォルトバージョン(第1バージョン)は、「1」となっている。スイッチ装置SW2は、図12の動作を行わない。すなわち、スイッチ装置SW2は、下位互換状態ST202を備えずに、常にデフォルト状態ST201で動作するような装置仕様となっている。
スイッチ装置SW1,SW2は、装置起動(ステップS401)に伴い、共に、図12のデフォルト状態ST201で動作する。スイッチ装置SW1は、このデフォルト状態ST201の期間50において、フレームバージョン(第2バージョン)=2およびFWバージョン(言い換えればデフォルトバージョン(第1バージョン))=2の制御フレームCFを送信する。一方、スイッチ装置SW2は、このデフォルト状態ST201の期間51において、フレームバージョン=1の制御フレームCFを送信する(ステップS402)。すなわち、スイッチ装置SW2は、FWバージョン=1のファームウェア(FW)32に伴い、図11のような制御フレームCFではなく、図3のような制御フレームCFを送信する。
スイッチ装置SW1は、ステップS402において、フレームバージョン=1の制御フレームCFを受信する。ここで、図11のFWバージョンの領域22は図3の未使用領域18を使用しているため、領域22に特に何も格納されない場合、領域22には、通常、「0」が格納されることになる。これにより、スイッチ装置SW1は、等価的に、フレームバージョン=1およびFWバージョン(デフォルトバージョン)=0の制御フレームCFを受信することになる。
スイッチ装置SW1は、受信したデフォルトバージョン(第1バージョン)=0が自装置のデフォルトバージョン(第1バージョン)=2よりも下位であるため、図12の下位互換状態ST202に遷移する。スイッチ装置SW1は、この下位互換状態ST202の期間52では、ステップS402で受信したフレームバージョンと同じフレームバージョン(=1)と、自装置のデフォルトバージョン(=2)と、を含む制御フレームCFを送信する。
スイッチ装置SW2は、仮に、デフォルト状態ST201の期間51において当該制御フレームCFを受信した場合、受信したフレームバージョン(第2バージョン)=1が自装置のデフォルトバージョン(第1バージョン)=1と同じであることを認識する。その結果、スイッチ装置SW2は、仮に図14の処理を行う場合であっても、MLAG制御情報の解析処理(ステップS503)を行うことが可能になる。
このような状態で、図13では、図10の場合と同様に、スイッチ装置SW2のファームウェア(FW)32は、スイッチ装置SW1と同じFWバージョン=2に更新される(ステップS403)。この更新によって、スイッチ装置SW1に加えてスイッチ装置SW2も、図12の動作を行うことになる。スイッチ装置SW2は、ファームウェア(FW)32の更新の完了およびその後の装置起動を経て、期間53においてデフォルト状態ST201で動作する。スイッチ装置SW2は、このデフォルト状態ST201の期間53において、下位互換状態ST202で動作しているスイッチ装置SW1から、フレームバージョン=1およびデフォルトバージョン=2の制御フレームCFを受信する(ステップS404)。
スイッチ装置SW2は、ステップS404で受信したデフォルトバージョンが自装置のデフォルトバージョンと同じであるため、デフォルト状態ST201を維持する。そして、スイッチ装置SW2は、スイッチ装置SW1に向けて、フレームバージョン=2およびデフォルトバージョン=2の制御フレームCFを送信する(ステップS405)。スイッチ装置SW1は、下位互換状態ST202の期間52において、当該制御フレームCFを受信した結果、受信したデフォルトバージョンが自装置のデフォルトバージョンと同じであるため、デフォルト状態ST201に遷移する。
スイッチ装置SW1は、デフォルト状態ST201の期間54において、フレームバージョン=2およびデフォルトバージョン=2の制御フレームCFを送信する(ステップS406)。これを受信したスイッチ装置SW2も、デフォルト状態ST201の期間53において、フレームバージョン=2およびデフォルトバージョン=2の制御フレームCFを送信する。その結果、スイッチ装置SW1,SW2は、共に、デフォルト状態ST201を維持し、FWバージョン=2の装置仕様に基づき、MLAGスイッチMLAGSWとして機能を実現可能になる。
以上、本実施の形態3の中継システムおよび中継装置を用いることで、実施の形態1および2で述べた各種効果に加えて、図8で述べたデットロックの不具合を実施の形態2の場合よりも確実に解消することが可能になる。ただし、当該不具合は、前述したように、実際には生じない可能性の方が高く、ファームウェア(FW)の更新や装置の交換等が行われる際には、通常、そのピア装置によってブリッジ用ポートPbを介する通信経路の切断有りが検出されることになる。
また、本実施の形態3の方式は、実施の形態2の方式と比較して、図11で述べたように、未使用の領域18を消費することや、図10と図13の比較から分かるように、各スイッチ装置SW1,SW2が共にデフォルト状態に到達するまでに若干時間を要することがデメリットとなり得る。すなわち、各スイッチ装置SW1,SW2は、図10の例では、スイッチ装置SW2のファームウェア(FW)の更新(又は装置の交換)が完了した時点で共にデフォルト状態に到達する。一方、図13の例では、各スイッチ装置SW1,SW2は、スイッチ装置SW1がスイッチ装置SW2からの制御フレームCFを受信した時点(ステップS405)で共にデフォルト状態に到達する。したがって、このような観点からは、実施の形態2の方式が望ましい。
また、本実施の形態3の変形例として、場合によっては、図11の領域19におけるフレームバージョン(第2バージョン)を設けないことも可能である。すなわち、原理的には、スイッチ装置SW1,SW2間で互いにデフォルトバージョン(第1バージョン)を共有させることで、制御フレームのフレームバージョンも一義的かつ暗黙的に定めることができる。具体的な方法として、例えば、スイッチ装置は、自装置またはピア装置のデフォルトバージョンに変化があった場合、イニシャル状態等に遷移する。そして、各スイッチ装置は、このイニシャル状態の中で、制御フレームによって互いのデフォルトバージョンを共有し、以降で用いる制御フレームのフレームバージョンを定める。
ただし、この場合、共有されたデフォルトバージョンに基づくフレームバージョンを含む制御フレームが、どの時点から有効になるかを早期に判別できない恐れがある。特に、自装置が送信したデフォルトバージョンは、ピア装置によっていつ受信されるか分からず、また、必ずしも確実に受信されるとは限らない。すなわち、制御フレームのフレームバージョンを確定させる際の前提となるデフォルトバージョンの共有状態が、どの時点で構築されるかを確実に判別することは容易でない。この場合、例えば、イニシャル状態の期間を十分に長くする等の対策が必要となる。したがって、このような観点からは、実施の形態3のように、デフォルトバージョンに加えてフレームバージョンを送信することが望ましい。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、前述した実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
例えば、実施の形態1〜実施の形態3では、自装置のデフォルトバージョンよりも下位のフレームバージョンまたはデフォルトバージョンを含む制御フレームCFを受信した場合に、下位互換状態(ST102またはST202)で動作する方式とした。この際に、応用例として、下位互換状態で使用するバージョンを制限するような機能を設けることも可能である。
具体的には、例えば、FWバージョン(またはフレームバージョン)=3のファームウェア(FW)において、FWバージョン(フレームバージョン)=2の下位互換機能と、FWバージョン(フレームバージョン)=1の下位互換機能と、を持たせる場合を想定する。この場合、2種類の下位互換機能を実装する必要があるため、ファームウェア(FW)の容量の増大や設計工数の増大等が生じる恐れがある。さらに、FWバージョン(フレームバージョン)=1のファームウェア(FW)は、何らかの不具合を含んでいる場合もある。そこで、当該機能を用いて、下位互換状態で使用するFWバージョン(またはフレームバージョン)を「2」に制限し、FWバージョン(フレームバージョン)=1に基づく動作が行われないようにすることが有益となる。
また、例えば、実施の形態3は方式は、実施の形態2の方式と組み合わせて適用してもよい。具体的には、例えば、図12において、図9の場合と同様に、条件(4)を追加すればよい。また、図4では、制御フレーム処理部31をプロセッサ部(CPU)29によって構成したが、必ずしも、プロセッサ部(CPU)である必要はなく、制御フレーム処理部31の一部または全てを専用のハードウェア等によって構成することも可能である。