(57)【要約】  一時的な制御プレーン機能停止の場合にパケットネットワーク再構成および関連するトラフィック損失を防止するために提供されるキャッシング機構。
2009539305.tif 000002
【特許請求の範囲】
【請求項１】
ローカルノード機能停止の間の無中断ネットワーク制御メッセージ生成を提供する方法であって、
プロトコル状態機械からの複数の送信メッセージを受信するステップと、
送信メッセージをネットワークの複数のノードに転送するステップと、
ノードから複数の受信メッセージを受信するステップと、
送信メッセージおよび受信メッセージをバッファに記憶するステップと、
プロトコル状態機械の障害が発生すると、バッファが有効状態のままである限り、ノードにメッセージを送信し、ノードからメッセージを受信するステップとを含む、方法。
【請求項２】
メッセージがノードに周期的に送信される、請求項１に記載の方法。
【請求項３】
バッファの送信メッセージおよび受信メッセージと、障害の後にノードから受信されるメッセージとに基づいてバッファが有効状態であるか否かを決定するステップをさらに含む、請求項１に記載の方法。
【請求項４】
プロトコル状態機械の障害が発生すると、スタンドバイ状態のプロトコル状態機械を切り替えるステップをさらに含み、スタンドバイ状態のプロトコル状態機械が、送信メッセージおよび受信メッセージの複製を含む別のバッファを含む、請求項１に記載の方法。
【請求項５】
ローカルノード機能停止の間の無中断ネットワーク制御メッセージ生成を提供するシステムであって、
複数のメッセージを生成するプロトコル状態機械と、
プロトコル状態機械からメッセージを受信し、それらをネットワークの複数のノードに転送するメッセージキャッシュであって、少なくとも１つのバッファに、ノードに送信されたメッセージおよびノードから受信されたメッセージの両方を記憶する、メッセージキャッシュとを含み、
プロトコル状態機械の障害が発生すると、メッセージキャッシュが有効状態のままである限り、メッセージキャッシュがノードにメッセージを送信し、およびノードからメッセージを受信する、システム。
【請求項６】
メッセージキャッシュが、ノードに周期的メッセージを送信するためのタイマを含む、請求項５に記載のシステム。
【請求項７】
メッセージキャッシュが、メッセージキャッシュが有効状態であるか否かを決定する状態制御装置を含む、請求項５に記載のシステム。
【請求項８】
プロトコル状態機械がワーカープロトコル状態機械であり、メッセージキャッシュがワーカーメッセージキャッシュであり、ワーカーノードがワーカープロトコル状態機械およびワーカーメッセージキャッシュを含み、
防護プロトコル状態機械および防護メッセージキャッシュを含む防護ノードをさらに含み、
ワーカープロトコル状態機械の障害が発生すると、防護状態機械が動作状態になることが可能である、請求項７に記載のシステム。
【請求項９】
ワーカープロトコル状態機械が動作状態である間、防護メッセージキャッシュがワーカーメッセージキャッシュを複製する、請求項７に記載のシステム。
【請求項１０】
ローカルノード機能停止の間の無中断ネットワーク制御メッセージ生成を提供する方法を実行する命令を記憶するコンピュータ可読媒体であって、方法が、
プロトコル状態機械からの複数の送信メッセージを受信するステップと、
送信メッセージをネットワークの複数のノードに転送するステップと、
ノードから複数の受信メッセージを受信するステップと、
送信メッセージおよび受信メッセージをバッファに記憶するステップと、
プロトコル状態機械の障害が発生すると、メッセージキャッシュが有効状態のままである限り、ノードにメッセージを送信し、ノードからメッセージを受信するステップとを含む、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にコンピュータネットワークに関する。本発明は、特にパケット交換および制御プレーンプロトコルに関する。
【背景技術】
【０００２】
パケット交換ネットワークは、スパニングツリープロトコル（ＳＴＰ）、一般属性登録プロトコル（ＧＡＲＰ）および仮想ローカルエリアネットワークに関するそのバージョン、ＶＬＡＮ登録プロトコル（ＧＶＲＰ）、リンク集約制御プロトコル（ＬＡＣＰ）、Ｙ．１７１１高速障害検出（ＦＦＤ）、ならびに予約プロトコル（ＲＳＶＰ）更新等の制御プレーンプロトコルを含む。制御プロトコルは、例えば、ネットワークを介してどのようにレイヤ２（Ｌ２）トラフィックが流れるかのトポロジーおよび分配を制御する責任を有する。これらのプロトコルは、各参加ネットワーク構成要素上で実行中の状態機械で実現されている。一度、安定したネットワーク構成が達成されると、プロトコルは、それらがネットワークに送信したのと同じメッセージを繰り返しがちである。異なるメッセージは、通常、オペレーターかネットワークに変化を発生させる欠陥から生じる。ネットワーク構成要素によるプロトコルへの参加の失敗は、数ミリ秒から数秒の範囲のタイムアウト時間に１回のトラフィック再配置の超過を引き起こす。場合によっては、トラフィック再配置は全ネットワークに関係する。
【０００３】
現在のネットワーク構成要素では、パケット制御プロトコルは、３つのカテゴリの１つに分類される。それらは（１）非防護、（２）制御プレーン機能停止の前に近隣ネットワーク構成要素との専用通信を介した防護、または（３）プロトコル機能停止の少し前もしくは後に近隣ネットワークとの対話を必要とする、標準化された緩やかな再起動技術による防護である。非防護の場合、一般に、ネットワークを介したトラフィックフローが再構成される結果になる。再構成の時間の間、全ネットワークドメインと同じ程度の大きさであり得るネットワークの部分でトラフィック損失が生じる。異常を起こしていたネットワーク構成要素が正常状態に戻ると、障害より前のトラフィックフロー分配を再確立するために第２の再構成が行われる。再度、前と同様の規模でトラフィック損失が生じる。専用の実装では、２つの不利益が存在する。第１に、それが問題のシナリオの一部だけ、即ち、（例えば、ネットワーク構成要素におけるオペレーターによるソフトウェアアップグレードの場合に）自発的に入力され、異常を起こすネットワーク構成要素がその近隣に制御プレーン障害が生じていることを通知することを可能にすることだけを対象にする。第２に、これらの能力を保有する対話ネットワーク構成要素だけに制限されており、即ち、それは他の装置ベンダによる一般の相互作用シナリオでは機能しない。標準化された緩やかな再起動の場合、プロトコルの小セットだけが対象にされる。障害の後に近隣構成要素に緩やかな再起動が適用されることを通知するための時間制約が小さい場合、予期せぬ障害に関する制約の不足の可能性が高い。近隣構成要素が制御プレーン機能停止を検出し、ネットワーク再構成を引き起こすので、時間制限の不足はトラフィック損失を生じる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従って、一時的なパケット制御プレーン機能停止の場合に、パケットネットワーク再構成および関連するトラフィック損失を防止する機構の必要性が存在する。
【課題を解決するための手段】
【０００５】
本発明の例示的な実施形態は、ローカルノード機能停止の間に無中断ネットワーク制御メッセージ生成を提供することによって、パケットネットワーク再構成および関連するトラフィック損失を防止する。
【０００６】
１つの実施形態は、ローカルノード機能停止の間に無中断ネットワーク制御メッセージ生成を提供する方法である。メッセージキャッシュは、ローカルノードに関するプロトコル状態機械から多数の送信メッセージを受信し、それらをネットワークの他のノードに転送する。メッセージキャッシュはこれらのノードからのメッセージを同様に受信する。メッセージキャッシュは、送信および受信メッセージを共にバッファに記憶する。プロトコル状態機械の障害が発生すると、メッセージキャッシュは、バッファが有効状態のままである限り、ノードにメッセージを送信し、かつノードからメッセージを受信する。このメッセージは、ノードに周期的に送信されてよい。メッセージキャッシュは、バッファのメッセージおよび障害の後にノードから受信したメッセージに基づいてバッファが有効状態であるか否かを決定してよい。方法は、動作中のプロトコル状態機械の障害が発生した場合に、スタンドバイプロトコル状態機械へ切り替えることを含んでよく、ここでスタンドバイプロトコル状態機械は、第１のバッファを複製する別のバッファを含む。
【０００７】
別の実施形態は、ローカルノード機能停止の間に無中断ネットワーク制御メッセージ生成を提供するこの方法を実行する命令を記憶するコンピュータ可読媒体である。
【０００８】
さらに別の実施形態は、プロトコル状態機械およびメッセージキャッシュを含む、ローカルノード機能停止の間に無中断ネットワーク制御メッセージ生成を提供するシステムである。プロトコル状態機械は、メッセージを生成する。メッセージキャッシュは、プロトコル状態機械からメッセージを受信し、それらをネットワークのノードに転送する。メッセージキャッシュは、１つまたは複数のバッファに送信および受信メッセージの両方を記憶する。プロトコル状態機械の障害が発生した場合、メッセージキャッシュが有効状態のままである限り、メッセージキャッシュがノードにメッセージを送信し、かつノードからメッセージを受信する。メッセージキャッシュは、ノードに周期的メッセージを送信するタイマと、メッセージキャッシュが有効状態であるか否かを決定する状態制御装置とを含んでよい。システムは、ワーカーノードおよび防護ノードを含んでよく、各々は、ワーカーノードが異常を起こした場合に防護ノードが動作状態になることが可能であるようにプロトコル状態機械およびメッセージキャッシュを有する。防護メッセージキャッシュは、ワーカープロトコル状態機械が動作状態である際にワーカーメッセージキャッシュを複製し得る。
【０００９】
本発明の教示は、以下の詳細な説明を添付の図面と共に考慮することによって容易に理解することが可能である。
【００１０】
理解の容易化を目的として、図面で共通する同一の構成要素を示すために、可能な場合に同一の参照番号が使用されている。
【図面の簡単な説明】
【００１１】
【図１】制御プレーンプロトコルに関する状態機械が動作状態である際に、初期設定の場合のキャッシュ構成概念の例示的な実施形態を示すブロック図である。
【図２】プロトコル状態機械が利用不可能であり、ネットワーク状態が安定である際に、制御プレーン障害の場合の図１のキャッシュ構成概念の例示的な実施形態を示すブロック図である。
【図３】プロトコル状態機械が利用不可能であり、ネットワーク状態が安定でない際に、制御プレーン障害の場合の図１のキャッシュ構成概念の例示的な実施形態を示すブロック図である。
【図４】状態機械の２つのインスタンスが存在し（ワーカーおよび防護）、ワーカー状態機械が動作状態であり、防護状態機械がスタンドバイ状態であり、各々がキャッシュと関連付けられている際に、初期設定の場合のキャッシュ構成概念の例示的な実施形態を示すブロック図である。
【図５】ワーカー状態機械が動作状態であったが故障を起こし、スタンドバイ状態の防護状態機械が（スタンドバイ状態から完全な動作に）復旧中であるが、ネットワーク状態は安定している際の中間状態の図４のキャッシュ構成概念の例示的な実施形態を示すブロック図である。
【図６】（ワーカーから防護への切替えの後に）防護状態機械が動作状態であり、ワーカー状態機械がスタンドバイ状態である際の図４のキャッシュ構成概念の例示的な実施形態を示すブロック図である。
【図７】図４のキャッシュ構成概念の例示的な実施形態に関する時系列上の選択された状態移行およびイベントを示すチャートである。
【図８】分配されたキャッシュの例示的な実施形態を示すブロック図である。
【発明を実施するための形態】
【００１２】
本発明の説明は、主としてパケット交換ネットワークおよび制御プレーンプロトコルの一般情勢に関する。しかしながら、当業者および本明細書の教示によって知識を得た者は、本発明の主たる概念がコンピュータネットワークに一般的に適用可能であり、あらゆるネットワークアーキテクチャおよび設計、通信プロトコル、ネットワークソフトウェア、ネットワーク技術、ネットワークサービスおよびアプリケーション、ならびにネットワーク動作管理に広く適用し得ることを理解するであろう。従って、本発明の一般的な概念は、広く適用可能であり、いずれかの特定の実装に限定されない。
【００１３】
序文−装置防護に関連するＬ２イーサネット（登録商標）例
Ｌ２制御プレーン、即ち、スパニングツリープロトコルおよびリンク集約制御プロトコル、一般属性登録プロトコル（ＧＡＲＰ）およびその変形、ならびに他のプロトコルに影響を及ぼす装置防護切替えの状況の下でＬ２イーサネット（登録商標）サービスに関する安定なネットワーク構成を維持する必要性が存在する。プロトコルデータユニット（ＰＤＵ）分配が約３秒の間、中断される場合、ローカル防護切替えがネットワークの全スパニングツリーの再構成をもたらすことが可能である。これは、ネットワークが再度、安定状態に収束するまで、数十秒のトラフィック機能停止を生じ得る。それゆえに、防護切替えの後にネットワーク構成要素が即座に以下の動作を行うことが望ましい。第１に、不安定の原因が装置防護切替えだけである場合、即ち、単一の障害（例えば、回路パック欠陥）の場合に加えて手動切替え等のオペレーターによるイベントの場合にネットワーク構成要素は安定したネットワークを維持するべきである。第２に、例えば、リモートネットワーク構成要素の障害が原因でネットワークが既に再構成に入っており、それと同時にローカル欠陥（二重障害）またはオペレーター命令に起因して防護切替えが必要である場合にネットワーク構成要素はネットワークの影響を最小化するべきである。本発明の例示的な実施形態は、このＬ２イーサネット（登録商標）の例に関してだけでなく、より広く、多くのプロトコルに対してあらゆるネットワークのローカル制御プレーンの一時的な利用不可能を生じるあらゆる障害（例えば、ハードウェア欠陥）に関してこれらの目標を達成する。
【００１４】
ネットワーク構成要素挙動の高レベルな説明
ネットワーク構成要素挙動は、３つの状態によって説明され得る。第１の状態では、状態機械が完全に動作可能であり、全ての要求に対して反応する。第２の状態では、状態機械は利用可能でないが、キャッシュを無効状態にするネットワークでの変化が生じるか、または状態機械が動作可能になるまで、キャッシュがＰＤＵ送信を続行する。第３の状態では、例えば、ネットワークで再構成が進行中であると同時に状態機械が動作不可能状態であるために、またはプロトコル状態機械とキャッシュとが同期していないために、状態機械およびキャッシュの両方が利用可能でない。
【００１５】
高レベルなキャッシュ構成概念−ＳＴＰ例
キャッシュ構成概念の例示的な実施形態は、安定なネットワークでスパニングツリープロトコルノードが同一ＰＤＵをそれらの近隣に繰り返して分配することの観測結果から導出される。３連続の送信周期の間、スパニングツリーノードによってＰＤＵが受信されないか、または前のＰＤＵとＰＤＵの内容が異なっている場合、ネットワーク欠陥またはネットワーク変化が検出される。従って、それ以外は安定なネットワークトポロジーでは、ＰＤＵの周期的送信が維持されている限り、スパニングツリープロトコル機械の動作が不定時間の間、停止され得る。従って、キャッシュ構成概念がこの事実を使用して、構成、プロトコル状態機械、および同等物の全てが開始および同期されることの必要性なしに、ＰＤＵに関するネットワーク要求がキャッシュから満足されるようにする。従って、キャッシュ構成概念は、キャッシュを動作させる１つ（ホットスタンドバイ状態である）を除き、全てのソフトウェア構成要素の復旧速度に関する要求を救済する。キャッシュがＰＤＵ送信に関して有効状態であるとみなされ得る時間帯とキャッシュが無効状態である必要のある時間帯が存在する。安定なネットワークトポロジー内では、ある程度は、新しいサービスでさえ確立され得ることに留意されたい（例えば、転送トラフィックは新規のサービス品質（ＱｏＳ）パラメータに関して修正され得て、新規の顧客（Ｃ−ＶＬＡＮによって区別される）はサービスプロバイダ（８０２．１ａｄ）ネットワークに付加され得る等）。
【００１６】
高レベルキャッシュ構成概念−一般
１つの実施形態は、パケット交換ネットワークに制御プレーンおよびメッセージキャッシュを含む。パケット交換ネットワークは、メッセージまたはメッセージのフラグメント（パケット）が、それらの宛先に、ルーティングアルゴリズムによって決定される最も適切なルートを介して送信されるネットワークである。制御プレーンは、データプレーン接続を設定、維持および終了するために使用される仮想ネットワーク機能である。それはその機能を実現するために相互運用する必要のあるネットワークノードを介して分配されるという意味で仮想である。データプレーンは、ノード間でデータを分配するために使用される仮想ネットワーク経路である。ネットワークによっては、制御および転送プレーンを同様に分解する。キャッシュという用語は、アクセスの局所性を利用するために管理されるあらゆる記憶を示す。メッセージキャッシュはメッセージを記憶する。メッセージキャッシュは、インスタンス作成され、そのメッセージは制御プレーンがネットワークに／から送信／受信するメッセージと同期状態に保持される。制御プレーンが故障を起こした場合、キャッシュは、キャッシュメッセージを送信することによってネットワークの要求を満足させる。一度、制御プレーンが復旧すると、キャッシュは再度、制御動作に従い、同期を保持する。キャッシュは、制御プレーン状態機械のインスタンスが故障を起こしていながらも、なおネットワーク全てのトラフィックを送信することを可能にする。この構成概念は、不安定なネットワーク、二重障害、および転送プレーンが制御プレーンから独立していないシステムを除くほとんどの状況で機能する。不安定なネットワークは、ネットワーク構成要素のシナリオ上での電力等、トラフィックフロー分配が安定状態を達成していないネットワークである。二重障害は、１つのネットワーク構成要素の制御プレーン機能停止に加えて別のネットワーク構成要素が欠陥またはオペレーターによる再構成を経験するシナリオである。
【００１７】
本発明は、制御プレーンに影響を及ぼす障害およびソフトウェアアップグレードシナリオで著しくトラフィック損失を最小化することを含む多数の利点を有する。この利益は、説明されたようにネットワーク構成要素がキャッシュ動作をサポートする場合に局所的に達成される。ネットワーク構成要素のキャッシング特性は、既存のネットワークに付加され得る。他の装置がキャッシュ動作をサポートする必要性なしに他の装置との相互運用が可能である。
【００１８】
図１は、制御プレーンプロトコルに関する状態機械１０２が動作状態である際の、初期設定の場合のキャッシュ構成概念１００の例示的な実施形態を示す。制御プレーンプロトコルは、任意の種類のプロトコル、例えば、ＳＴＰ、ＶＬＡＮ登録プロトコル、ＬＡＣＰ、Ｙ．１７１１ＦＦＤ、またはＲＳＶＰ更新等であってよい。従来式のネットワークでは、プロトコル状態機械１０２が近隣ノード１０６およびネットワークの残り１０８と（中間ハードウェア層を介して）通信する。一方、この実施形態は、プロトコル状態機械１０２とネットワーク１０８との間に介在するメッセージキャッシュ１０４を含む。プロトコル状態機械１０２は、メッセージキャッシュ１０４にメッセージを送信し、メッセージキャッシュ１０４は、それらのメッセージをネットワーク１０８に送信する。メッセージキャッシュ１０４は、送信メッセージ１１０および受信メッセージ１１２の両方をバッファに記憶することによってプロトコル状態機械１０２とネットワークとの間の通信を捕捉する。メッセージキャッシュ１０４は、タイマ１１４および状態制御装置１１６をさらに含む。任意選択的に、サポートされている特定のプロトコルに応じて、状態機械１０２は、付加的な状態情報を（即ち、交換されるメッセージに加えて）状態制御装置１１６に搬送し得る。メッセージキャッシュ１０４の内容は、実装されている制御プレーンプロトコルに応じて変化し得る。メッセージキャッシュ１０４は、状態機械１０２の障害の場合にネットワーク１０８の要求に一時的にサービス供給するために必要なものを記憶する。
【００１９】
図２は、プロトコル状態機械１０２が利用不可能であり、ネットワーク状態が安定である際の、制御プレーン障害の場合の図１のキャッシュ構成概念１００の例示的な実施形態を示す。メッセージキャッシュ１０４は、一時的にネットワークにサービス供給することを継続することによって、何らかの理由でプロトコル状態機械が利用不可能である状況から防護する。例えば、プロトコル状態機械１０２を保持するプロセッサが再起動状態であり得る。メッセージキャッシュ１０４は、ネットワーク１０８の近隣ノード１０６がプロトコル状態機械１０２が利用不可能であることを認識しないように、バッファからメッセージを送信することを全体的に継続する。近隣ノード１０６への通信は、メッセージキャッシュ１０４に記憶されている情報に基づいて模倣される。従って、メッセージキャッシュ１０４は、プロトコル状態機械１０２が利用不可能である時間の少なくとも一部を埋める。周期的に同じメッセージ（例えば、ハローメッセージ、更新メッセージ）を近隣ノード１０６に送信するプロトコルは容易に模倣され得る。メッセージキャッシュ１０４は、送信メッセージバッファ１１０に記憶されているメッセージを、プロトコル状態機械１０２と同様のやり方で周期的に送信するためにタイマ１１４を使用する。結果として、近隣ノード１０６は、プロトコル状態機械１０２の変化を何ら検出しない。メッセージキャッシュ１０４は、近隣ノード１０６からメッセージを受信し、それらを受信メッセージバッファ１１２に記憶する。メッセージキャッシュ１０４は、状態制御装置１１６および受信メッセージを検査することによって、メッセージキャッシュ１０４を無効状態にし得る、ネットワーク１０８のあらゆるイベントまたは変化（例えば、状態変化）を検出することが可能である。状態制御装置１１６は、メッセージキャッシュ１０４が有効状態または無効状態であるかを決定する。メッセージキャッシュ１０４が無効状態になると、それはネットワーク１０８のイベントまたは変化に適切に反応することが不可能であるため、メッセージの送信を中止する。
【００２０】
メッセージキャッシュ１０４は、プロトコル状態機械１０２の少なくとも一部を擬態するために単純化された構成要素である。メッセージキャッシュ１０４の効率的な実装は、恐らく制御プレーンプロトコルの完全な挙動を擬態しない。メッセージキャッシュ１０４の単純性または複雑性は、実装されている制御プレーンプロトコルに応じて変化し得る。例えば、メッセージキャッシュは、状態制御装置１１６のロジックを用いてプロトコル状態機械１０２の２以上の状態の間の移行を擬態し得る。メッセージキャッシュは、ハードウェア、ファームウェア、またはソフトウェア（例えば、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または特定用途向け集積回路（ＡＳＩＣ））で実装され得る。メッセージキャッシュ１０４は、それが有効状態のままである限り、それは状況に応じて、プロトコル状態機械が利用不可能である短時間または全時間であり得るが、プロトコル状態機械を模倣することを継続する。プロトコルによってはミリ秒程度の更新を必要とし、一方、他のプロトコルは秒程度の更新を必要とする。この実施形態は、いかなる特定のプロトコルまたは状態制御装置ロジック１１６の複雑性の程度にも限定されていない。
【００２１】
図３は、プロトコル状態機械１０２が利用不可能であり、ネットワーク状態が安定でない際の、制御プレーン障害の場合の図１のキャッシュ構成概念１００の例示的な実施形態を示す。この場合、メッセージキャッシュ１０４が無効状態に移行する。受信メッセージ１１２に基づいて、状態制御装置１１６は、ネットワーク状態を不安定にする何らかのイベントが生じていて、それにより、実装されている特定のプロトコルに従って、メッセージキャッシュ１０４によるプロトコル状態機械１０２の擬態を停止する必要があることを決定する。メッセージキャッシュ１０４が一度、プロトコル状態機械１０２の擬態を停止すると、近隣ノード１０６は、あたかもメッセージキャッシュが１０４が存在していないかのように、プロトコル状態機械１０２が故障しているかまたは他の形で利用不可能であることを認識し得る。
【００２２】
図４は、状態機械の２つのインスタンスが存在し（ワーカーおよび防護）、ワーカー状態機械が動作状態であり、防護状態機械がスタンドバイ状態であり、各々がキャッシュと関連付けられている際の、初期設定の場合のキャッシュ構成概念４００の例示的な実施形態を示す。この実施形態は、特定の状況での制御プレーンプロトコルの特定の実現であるが、しかしながら、本発明は、いかなる特定の実装にも限定されない。この実施形態では、ネットワーク利用可能性がキャッシングメッセージによって改善されている。
【００２３】
この実施形態は、ブレードサーバ（図示せず）に関連しているが、しかしながら、本発明は、いかなる特定のハードウェアにも限定されない。ブレードサーバは、サーバブレードとして知られている複数の薄いモジュール式電子回路ボードを内蔵しているサーバシャシーである。各ブレードは、カード上のサーバであり、プロセッサ、メモリ、集積ネットワーク制御装置、および入力／出力（Ｉ／Ｏ）ポートを含んでいる。ブレードサーバは、個々のブレードとしてネットワークスイッチおよびルータ等の機能の包含を徐々に可能にする。２つのそのようなブレードに関する状態機械（ＳＭ）が図４に示されている：ワーカーパケットスイッチ（ＰＳ）４０２に関するワーカー状態機械４０６と、防護ＰＳ４０４に関する防護状態機械４０８とである。ワーカー状態機械４０８が最初に動作状態であり、防護状態機械４０６が最初にスタンドバイであり、すぐに動作状態になる。プロトコル状態機械の２つのインスタンス（動作状態／スタンドバイ）は、異なるハードウェア（例えば、ＣＰＵ）上に配置されているが、それでもなお同じネットワークノード内である。
【００２４】
この実施形態は、ワーカー状態機械４０６および防護状態機械４０４をスパニングツリープロトコル（ＳＴＰ）に関して示しているが、しかしながら、本発明は、いかなる特定のプロトコルにも限定されない。スパニングツリープロトコルは、任意の橋渡しされているネットワークに対してループフリートポロジーを提供する。ＩＥＥＥ標準８０２．１ＤはＳＴＰを定義する。ワーカーＰＳ４０２および防護ＰＳ４０４は、各々、特定の独立ブリッジパーティション（ＩＢＰ）（例えば、１つのイーサネット（登録商標）スイッチインスタンス）およびタイマ４１６、４１２に関するＳＴＰ状態機械４０６、４０８を含む。ネットワークブリッジ（別名ネットワークスイッチ）は、複数のネットワークセグメント（例えば、パーティション、ドメイン）を接続し、トラフィックを１つのセグメントから他へと転送する。これらの状態機械４０６、４０８は、制御プレーンに存在し、ネットワークの残り１０８の近隣ノード１０６に送信するメッセージを生成する。
【００２５】
この実施形態では、ワーカーキャッシュ４１０がワーカー状態機械４０６とネットワーク１０８との間に介在する。図４は、ワーカー状態機械４０６が動作状態であり、ネットワーク１０８に／からメッセージを送信／受信し、ワーカーキャッシュ４１０にメッセージを記憶している初期状態を示す。ワーカーキャッシュ４１０は、送信されたメッセージ４１２と受信されたメッセージ４１４とを共に記憶する。ブリッジプロトコルデータユニット（ＢＰＤＵ）は、ＳＴＰ情報を搬送するフレームである。スイッチは、ポートそれ自体の固有ＭＡＣアドレスを送信元アドレスおよびＳＴＰマルチキャストアドレスの宛先アドレスとして使用してＢＰＤＵフレームを送信する。ウォームスタンドバイ状態であり、開始の待機をしている防護状態機械４０８のために、防護キャッシュ４１８はキャッシュ複製によってワーカーキャッシュ４１０と同期化されている。
【００２６】
図５は、ワーカー状態機械４０６が動作状態であったが故障を起こし（例えば、ソフトウェア障害）、スタンドバイ状態の防護状態機械４０８が（スタンドバイ状態から完全な動作に）復旧中であるが、ネットワーク状態は安定している際の中間状態の図４のキャッシュ構成概念４００の例示的な実施形態を示す。この中間状態は、ワーカー状態機械４０６が故障を起こす時間と、防護状態機械４０８がネットワーク１０８にサービス供給できる準備ができる（即ち、起動後の開始）時間との間に遅延が存在するために生じる。この中間状態の間、防護キャッシュ４１８が現在、動作状態のキャッシュであり、図２で説明されたように動作する。
【００２７】
図６は、（ワーカーから防護への切替えの後に）防護状態機械４０８が動作状態であり、ワーカー状態機械がスタンドバイ状態である際の図４のキャッシュ構成概念の例示的な実施形態を示す。図４と図６とを比較すると、図６で示されるシナリオの防護状態機械４０８は、図４で示されるシナリオのワーカー状態機械４０６と同様に振舞う、即ち、動作状態の状態機械として振舞う。防護キャッシュ４１８は、送信されたメッセージ４２０と受信されたメッセージ４２２との両方を記憶し、従って、図４で示されたのと同じやり方で動作する。防護状態機械４０８が動作状態である間、防護キャッシュ４１８のメッセージがワーカーキャッシュ４１０に複製される。
【００２８】
図７は、図４のワーカー状態機械４０６、防護状態機械４０８、および防護キャッシュ４１８に関しての時系列上の選択された状態移行およびイベントを示すチャートである。（以下の表１は、図７を表形式で説明している。）図７は、防護キャッシュ４１８が有効状態であり、ネットワーク１０８の要求に一時的にサービス供給するために使用され得る場合、および防護キャッシュ４１８が無効状態であり、使用され得ない場合の種々の組み合わせの状態を示す。図７は、種々のシナリオを示す。第１のシナリオはＴ１からＴ５であり、第２はＴ５からＴ９であり、第３はＴ９からＴ１２である。
【００２９】
第１のシナリオはＴ１で開始する。Ｔ１で、ワーカー状態機械４０６が動作状態であり、防護状態機械４０８が同期中状態である場合、防護キャッシュ４１８は無効状態であり、ワーカーキャッシュ４１０を複製する。例えば、防護ＰＳ４０４ブレードがネットワーク構成要素に追加されているので、防護状態機械４０８は最初に同期中状態である。同期がＴ２で完了すると、防護状態機械４０８が同期中状態からスタンドバイ状態に移行し、防護キャッシュ４１８は準備完了状態かつ非動作状態である。Ｔ３で障害が発生すると、ワーカー状態機械４０６が動作状態から故障状態に移行し、防護状態機械４０８がスタンドバイ状態から開始状態（即ち、動作状態の役割を引き継ぐために準備する）に移行し、防護キャッシュ４１８は準備状態かつ送信状態（即ち、ネットワーク１０８の要求に一時的にサービスを供給する）である。Ｔ３からの時間間隔の間に、ワーカー状態機械４０６が故障状態から（例えば、再起動の結果として）同期中状態に移行する。正確な時間は、ネットワーク構成要素の予測される挙動に関して問題でない。それらは、実装に依存し、従って、明確に示されていない。Ｔ４で、防護状態機械４０８が開始状態から動作状態に移行し、防護キャッシュ４１８は更新状態（即ち、動作状態のプロトコル状態機械４０８との同期を継続することによって受動的な役割をとる）である。Ｔ３からの時間間隔の間に、ワーカー状態機械４０６が同期中状態からスタンドバイ状態に移行する。これが行われた後、Ｔ５で、防護状態機械４０８が動作状態であり、ワーカー状態機械４０６がスタンドバイ状態である。
【００３０】
第２のシナリオはＴ５で開始する。Ｔ５で、ワーカー状態機械４０６が動作状態であり、防護状態機械４０８が同期中状態であり、防護キャッシュ４１８が無効状態である。Ｔ６で、防護状態機械４０８が同期中状態からスタンドバイ状態に移行し、防護キャッシュ４１８は準備完了状態かつ非動作状態である。ネットワーク再構成がＴ７で生じる（例えば、ネットワーク構成要素が故障する）と、ワーカー状態機械４０６が動作状態から再構成状態に移行し、防護キャッシュ４１８がＴ７で無効状態になる。Ｔ７からＴ８の時間間隔の間、ワーカー状態機械４０６がネットワークの変化状態を処理する。Ｔ８で、ネットワークが安定した後、ワーカー状態機械４０６が再構成状態から動作状態に移行し、防護キャッシュ４１８が再度、準備完了状態かつ非動作状態になる。
【００３１】
第３のシナリオは、Ｔ９で開始し、第２のシナリオとイベントの順序が異なっている。Ｔ９で、ワーカー状態機械４０６が動作状態であり、防護状態機械４０８が同期中状態であり、防護キャッシュ４１８が無効状態である。ネットワーク再構成がＴ９からＴ１１の時間間隔の間で生じる。Ｔ１０で、ワーカー状態機械４０６が動作状態から再構成状態に移行する。Ｔ１１で、防護状態機械４０８が同期中状態からスタンドバイ状態に移行する。防護キャッシュ４１８は、ワーカー状態機械４０６が再構成状態から動作状態に移行する際のＴ１２で初めて無効状態から準備完了状態、非動作状態に移行する。
【表１】
2009539305.tif 000003
【００３２】
１つの実施形態では、独立のブリッジ部分毎に１つのキャッシュインスタンスが存在する。各独立ブリッジパーティションは、独立した動作および再構成を保障するためにそれ自体のキャッシュ実装を有する。
【００３３】
１つの実施形態では、ポート毎に２つのキャッシュエントリが存在する：１つが入力ＰＤＵのためのものであり、１つが出力ＰＤＵのためのものである。各ポートは、所定のポート状態を有する。ブリッジの状態に応じて、ＰＤＵが送信され、受信され、またはその両方がされる。キャッシュは、送信または受信されたＰＤＵを記憶するだけでなく、ＰＤＵが送信または受信する必要がないことも記憶する。ポートによっては、ＰＤＵ送信／受信がネットワーク収束プロセスの間のある時点で停止する、即ち、キャッシュがネットワークの収束の後にだけ充填されることに留意されたい。
【００３４】
１つの実施形態では、キャッシュがホットスタンドバイモードに保持される。
【００３５】
１つの実施形態では、キャッシュは、それらがＰＤＵ生成に関して有効状態であるか否かを示すフラグを搬送する。種々の状況は、キャッシュを無効状態にし得る、例えば、進行中であるネットワーク再構成、スパニングツリーの計算を必要とするプロビジョニング、およびＢＰＤＵの変化、その他である。
【００３６】
１つの実施形態では、動作状態のＰＳ上のキャッシュは、入力および出力ＰＤＵで更新される。
【００３７】
１つの実施形態では、スタンドバイ状態のＰＳ上のキャッシュが以下の条件で即座に無効状態にされる：ネットワークに提供されたＰＤＵがキャッシュ内容と異なる場合とＰＤＵがキャッシュ内容と異なる場合。相違は共に、ワーキングスパニングツリー状態機械によってのみ処理され得る、ネットワークの変化を示すことに留意されたい。期限切れＰＤＵのいかなる複製も、顧客トラフィック上への重大な影響およびスパニングツリーの収束をもたらす可能性がある。例えば、ループが生成される可能性がある。動作状態のワーカーＰＳの場合に、無効状態にされるのは防護（スタンドバイ状態）ＰＳ上のキャッシュであることに留意されたい。ワーカーＰＳが故障を起こし、防護ＰＳがスタンドバイ状態から動作状態に移行している場合、防護ＰＳのキャッシュが無効状態にされる。まさに復旧中のＰＳ上でキャッシュが無効状態にされる場合、全てのポート状態を破棄状態に変更する必要があり得ることに留意されたい。
【００３８】
１つの実施形態では、トポロジーが収束した場合にだけ、キャッシュが宣言された有効状態であってよい。収束プロセスの間、動作状態の状態機械が必要である。ネットワーク収束期間の終了は、プロトコル状態機械によって告げられても、または充分に長い安定したネットワーク状態から導出されてもよいことに留意されたい。これは、数秒を越えるＰＤＵの追跡変化を必要とし得る。これは、装置防護スイッチに関してシステム（ネットワーク）が脆弱である時間を付加するが、場合によってはトラフィックに影響を及ぼすネットワーク構成が既に生じた後にだけである。切替え後かつ安定しているネットワークでは、状態機械の復旧後に状態機械から生成されたＰＤＵはキャッシュのＰＤＵと変わらない、即ち、この状況では、両方が有効である場合にトポロジーが収束したとみなされ得ることに留意されたい。キャッシュは動作状態であったが、状態機械から送信された最初のＰＤＵによって非動作状態に設定される。キャッシュが無効状態にされた時間以来、状態機械からのＰＤＵによって、キャッシュの全てのＰＤＵが少なくとも一度は更新されている。
【００３９】
１つの実施形態では、スタンドバイ状態のＰＳが完全に同期化されている場合にキャッシュが宣言された有効状態であり得る。
【００４０】
１つの実施形態では、キャッシュからのＰＤＵ生成を引き起こすタイマが存在する。防護ＰＳ状態が動作状態に変化する場合、有効状態にフラグが立てられているキャッシュからＰＤＵが送信される。この目的を達成するために、適切な繰り返しタイマ（および許容期間にわたる分布）が開始される。キャッシュが有効状態にフラグが立てられているならば、ＰＤＵがキャッシュから生成される状態は、動作状態から開始する。それは、異なるＰＤＵがネットワークから受信されるか、または状態機械が完全に復旧すると終了する。これは、状態機械がネットワークにＰＤＵを送信し始める事実によって認識可能である。状態機械は、必要な時間間隔で残りのＰＤＵを全て送信することが可能であるので、最初のＰＤＵがキャッシュ動作を停止するためのトリガとして使用され得る。
【００４１】
図８は、分散型キャッシュの例示的な実施形態である。この例は、システムに対する単一のメッセージキャッシュとは対照的に、システム内でメッセージキャッシュがどのように分散され得るかを示す。この例では、周期的メッセージキャッシュ８１０が２つの入力／出力（Ｉ／Ｏ）パック８０２に分散されている。Ｉ／Ｏパックの数は、勿論、２つに制限されない。各Ｉ／Ｏパック８０２はパケット転送ハードウェア８１０およびボード制御装置８０８を含む。ローカルノード８０４は、パケット転送ハードウェア８１２および１つまたは複数の中央パケット制御プレーンプロセッサ８１４を含む。中央パケット制御プレーンプロセッサ８１４は、Ｉ／Ｏパック８０２のボード制御装置８０８上の周期的メッセージキャッシュ８１０に更新を送信する。周期的メッセージキャッシュ８１０は、Ｉ／Ｏパック８０２のパケット転送ハードウェア８１０を介して外向き周期的メッセージを送信する。このやり方で、制御プレーン状態機械が利用不可能または故障している際に、周期的メッセージキャッシュ８１０が制御プレーンプロトコルを擬態する。アプリケーションプロトコルは、（Ｒ）ＳＴＰ、ＧＶＲＰ、ＲＳＶＰ、開放型最短経路優先（ＯＳＰＦ）、中間システムから中間システム（ＩＳ−ＩＳまたはＩＳＩＳ）、Ｙ．１７１１、ＦＦＤ、その他等の、一定の内容を備えた周期的外向きメッセージを有するあらゆるプロトコルを含む。当然、メッセージキャッシュは多数の異なるシステムアーキテクチャに対する多数のその他のやり方で広範に実装され得る。例えば、メッセージキャッシュは、複数のハードウェアブレード上、複数のコンピュータ処理ユニット（ＣＰＵ）上、１つのＣＰＵ内の複数のスレッド上、ＦＰＧＡ、ＡＳＩＣ等に存在してよい。
【００４２】
本発明の実施形態は、ネットワークシステムの１つまたは複数のコンピュータで実装され得る。各コンピュータは、プロセッサと、種々のプログラムおよびデータを記憶するメモリとを含む。メモリは、さらにプログラムをサポートするオペレーティングシステムを記憶し得る。プロセッサは、電源、クロック回路、キャッシュメモリ、および同等物ならびにメモリに記憶されているソフトウェアルーチンの実行を支援する回路等の従来式のサポート回路と協働し得る。そのようにして、ソフトウェア方法として本明細書で議論されたステップのいくつかが例えば、種々の方法ステップを実行するプロセッサと協働する回路としてハードウェア内で実装され得ることが意図されている。コンピュータは、コンピュータと通信する種々の機能的構成要素の間のインターフェースを形成する入力／出力（Ｉ／Ｏ）回路を同様に含む。本発明の実施形態は、ハードウェアまたはファームウェアに、例えば、ＦＰＧＡまたはＡＳＩＣに同様に実装され得る。
【００４３】
本発明は、コンピュータによって処理されると、コンピュータ命令が、本発明の方法および／または技術が呼び出されるかまたはそれ以外で提供されるように、コンピュータの動作を適応させる、コンピュータプログラム製品として実装され得る。本発明の方法を呼び出す命令は、固定式もしくは取り外し可能な媒体に記憶されていてもよいし、ブロードキャスト媒体もしくは他の信号担持媒体のデータストリームを介して送信されてもよいし、および／または命令に従って動作するコンピューティングデバイス内のワーキングメモリ内に記憶されていてもよい。
【００４４】
前述の事項は、本発明の種々の実施形態に向けられているが、他およびさらなる本発明の実施形態が、それらの基本的な範疇から逸脱することなしに考案され得る。そのようにして、本発明の適切な範疇は、以下の特許請求の範囲により決定される。
【図１】
2009539305.tif 000004
【図２】
2009539305.tif 000005
【図３】
2009539305.tif 000006
【図４】
2009539305.tif 000007
【図５】
2009539305.tif 000008
【図６】
2009539305.tif 000009
【図７】
2009539305.tif 000010
【図８】
2009539305.tif 000011
【国際調査報告】
2009539305.tif 000012