(57)【要約】  ゲートウェイ設備は、ノード識別子チェーンの各ノード識別子に対応するノードがオンラインになったか否かを検知する。前記ノード識別子チェーンは、ヘッドノードのノード識別子と、ヘッドノードがテールノードにアクセスするのに順次に経由するサービスノードのノード識別子と、テールノードのノード識別子とを含む。前記各ノード識別子に対応するノードがオンラインになった場合、前記ゲートウェイ設備がヘッドノードによりアクセスされたゲートウェイ設備である時、前記ノード識別子チェーンに関連付けられた第１ストリーム分類策略を本設備のハードウェアに発行する。ヘッドノードがテールノードにアクセスするデータストリームを受信した時、前記ゲートウェイ設備は、前記第１ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送する。前記ゲートウェイ設備がサービスノードによりアクセスされたゲートウェイ設備である時、前記ノード識別子チェーンに関連付けられた第２ストリーム分類策略を本設備のハードウェアに発行する。ヘッドノードがテールノードにアクセスするデータストリームを受信した時、前記ゲートウェイ設備は、第２ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送する。
2019526207.tif 000002
【特許請求の範囲】
【請求項１】
データストリームの処理方法であって、
当該方法は、
ゲートウェイ設備は、ヘッドノードのノード識別子と、ヘッドノードがテールノードにアクセスするのに順次に経由する一つ又は複数のサービスノードのノード識別子と、テールノードのノード識別子とを含むノード識別子チェーンの各ノード識別子に対応するノードがオンラインになったか否かを検知するステップと、
前記各ノード識別子に対応するノードがオンラインになった場合、
前記ゲートウェイ設備がヘッドノードによりアクセスされたゲートウェイ設備である時、前記ゲートウェイ設備は、前記ノード識別子チェーンに関連付けられた第１ストリーム分類策略を本設備のハードウェアに発行し、ヘッドノードがテールノードにアクセスするデータストリームを受信した時、前記ゲートウェイ設備は、前記第１ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送するステップと、
前記ゲートウェイ設備が前記サービスノードによりアクセスされたゲートウェイ設備である時、前記ゲートウェイ設備は、前記ノード識別子チェーンに関連付けられた第２ストリーム分類策略を本設備のハードウェアに発行し、前記ゲートウェイ設備がヘッドノードがテールノードにアクセスするデータストリームを受信した時、前記ゲートウェイ設備は、第２ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送するステップと、
を含むことを特徴とする方法。
【請求項２】
前記第１ストリーム分類策略又は第２ストリーム分類策略は、予め本設備のソフトウェアレイヤに配置されるか、或いは、
前記第１ストリーム分類策略又は第２ストリーム分類策略は、ソフトウェア・デファインド・ネットワークＳＤＮコントローラから取得され、本設備のソフトウェアレイヤに記憶されることを特徴とする請求項１に記載の方法。
【請求項３】
前記第１ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送するステップは、
前記ゲートウェイ設備は、ローカルで前記データストリームにマッチングする前記ノード識別子チェーンを見つけるステップと、
前記ゲートウェイ設備は、前記データストリームを前記ノード識別子チェーンの識別子でカプセル化するステップと、
前記ゲートウェイ設備は、ノード識別子チェーンの識別子でカプセル化したデータストリームを、前記ノード識別子チェーンの２つ目のノード識別子に対応するサービスノードによりアクセスされたという条件を満たすゲートウェイ設備にリダイレクトするステップと、
を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記第２ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送するステップは、
ローカルの擬似ワイヤＰＷポートを介して前記データストリームを受信した時、前記ゲートウェイ設備は、ローカルでデータストリームに追加されたノード識別子チェーンの識別子に対応する前記ノード識別子チェーンを見つけ、データストリームをデカプセル化し、デカプセル化後のデータストリームを前記ノード識別子チェーンにおける２つ目のノード識別子に対応するサービスノードに送信するステップと、
ローカルのサービスノードに接続されるサービスポートを介して前記データストリームを受信した時、前記ゲートウェイ設備は、ローカルで前記データストリームにマッチする前記ノード識別子チェーンを見つけ、前記ノード識別子チェーンに基いて次ホップ識別子を確定し、前記次ホップ識別子がテールノードのノード識別子である場合、データストリームを前記テールノードによりアクセスされたゲートウェイ設備にリダイレクトし、そうでない場合、データストリームを次ホップ識別子に対応するサービスノードに送信するステップと、
を含むことを特徴とする請求項１に記載の方法。
【請求項５】
各々の前記サービスノードは相応するサービスグループに属し、各々のサービスグループは、少なくとも一つのバックアップサービスノードを更に含み、
前記方法は、
前記ゲートウェイ設備は、前記ノード識別子チェーンにおけるノード識別子に対応するサービスノードが故障したことを検出した場合、故障サービスノードの所属するサービスグループから一つの非故障バックアップサービスノードを選択し、ヘッドノードがテールノードにアクセスするデータストリームが前記故障サービスノードから前記バックアップサービスノードに切り替わるように、前記ノード識別子チェーンの前記故障サービスノードに対応するノード識別子を前記選択されたバックアップサービスノードに対応するノード識別子にアップデートするステップを更に含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記故障サービスノードに対応するノード識別子を前記選択されたバックアップサービスノードに対応するノード識別子にアップデートするステップは、
前記故障サービスノード及び前記バックアップサービスノードの両方とも同一ゲートウェイ設備にアクセスした場合、前記ゲートウェイ設備は、前記故障サービスノード及び前記バックアップサービスノードの両方ともによりアクセスされたゲートウェイ設備が前記ノード識別子チェーンの前記故障サービスノードに対応するノード識別子を前記バックアップサービスノードに対応するノード識別子にアップデートするようにトリガーするステップと、
前記故障サービスノードと前記バックアップサービスノードとが異なるゲートウェイ設備にアクセスした場合、前記ゲートウェイ設備は、前記非故障サービスノードによりアクセスされたゲートウェイ設備及び前記故障サービスノードに関連付けられたゲートウェイ設備が前記ノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするように制御するステップと、
を含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記方法は、
前記ゲートウェイ設備は、前記ノード識別子チェーンに基づいて前記故障サービスノードの直前ホップ及び次ホップを確定するステップと、
前記直前ホップが前記ヘッドノードであり且つ前記次ホップが前記テールノードである時、前記ゲートウェイ設備は、故障サービスノードに関連付けられたゲートウェイ設備は前記ヘッドノードによりアクセスされたゲートウェイ設備であると確定するステップと、
前記直前ホップが前記ヘッドノードであり且つ前記次ホップがサービスノードである時、前記ゲートウェイ設備は、故障サービスノードに関連付けられたゲートウェイ設備は前記ヘッドノードによりアクセスされたゲートウェイ設備及び前記次ホップによりアクセスされたゲートウェイ設備であると確定するステップと、
前記次ホップが前記テールノードであり且つ前記直前ホップがサービスノードである時、前記ゲートウェイ設備は、前記故障サービスノードに関連付けられたゲートウェイ設備は前記直前ホップによりアクセスされたゲートウェイ設備であると確定するステップと、
を更に含むことを特徴とする請求項６に記載の方法。
【請求項８】
ゲートウェイ設備であって、
プロセッサと、
前記プロセッサにより実行可能な機械実行可能命令が記憶された記憶媒体と、
を含み、
前記プロセッサは、前記機械実行可能命令により、
ヘッドノードのノード識別子と、ヘッドノードがテールノードにアクセスするのに順次に経由する一つ又は複数のサービスノードのノード識別子と、テールノードのノード識別子とを含むノード識別子チェーンの各ノード識別子に対応するノードがオンラインになったか否かを検知し、
前記各ノード識別子に対応するノードがオンラインになった場合、
前記ゲートウェイ設備がヘッドノードによりアクセスされたゲートウェイ設備である時、前記ノード識別子チェーンに関連付けられた第１ストリーム分類策略を本設備のハードウェアに発行し、ヘッドノードがテールノードにアクセスするデータストリームを受信した時、第１ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送し、
前記ゲートウェイ設備が前記サービスノードによりアクセスされたゲートウェイ設備である時、前記ノード識別子チェーンに関連付けられた第２ストリーム分類策略を本設備のハードウェアに発行し、ヘッドノードがテールノードにアクセスするデータストリームを受信した時、第２ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送させられることを特徴とするゲートウェイ設備。
【請求項９】
前記第１ストリーム分類策略又は第２ストリーム分類策略は、予め本設備のソフトウェアレイヤに配置されるか、或いは、
前記第１ストリーム分類策略又は第２ストリーム分類策略は、ソフトウェア・デファインド・ネットワークＳＤＮコントローラから取得され、本設備のソフトウェアレイヤに記憶されることを特徴とする請求項８に記載のゲートウェイ設備。
【請求項１０】
第１ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送する時、前記プロセッサは、前記機械実行可能命令により、
ローカルで前記データストリームにマッチングする前記ノード識別子チェーンを見つけ、
前記データストリームを前記ノード識別子チェーンの識別子でカプセル化し、
ノード識別子チェーンの識別子でカプセル化したデータストリームを、前記ノード識別子チェーンの２つ目のノード識別子に対応するサービスノードによりアクセスされたという条件を満たすゲートウェイ設備にリダイレクトさせられることを特徴とする請求項８に記載のゲートウェイ設備。
【請求項１１】
第２ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送する時、前記プロセッサは、前記機械実行可能命令により、
ローカルの擬似ワイヤＰＷポートを介して前記データストリームを受信した時、ローカルでデータストリームに追加されたノード識別子チェーンの識別子に対応する前記ノード識別子チェーンを見つけ、データストリームをデカプセル化し、デカプセル化後のデータストリームを前記ノード識別子チェーンにおける２つ目のノード識別子に対応するサービスノードに送信し、
ローカルのサービスノードに接続されるサービスポートを介して前記データストリームを受信した時、ローカルで前記データストリームにマッチングする前記ノード識別子チェーンを見つけ、前記ノード識別子チェーンに基いて次ホップ識別子を確定し、前記次ホップ識別子がテールノードのノード識別子である場合、データストリームを前記テールノードによりアクセスされたゲートウェイ設備にリダイレクトし、そうでない場合、データストリームを次ホップ識別子に対応するサービスノードに送信させられることを特徴とする請求項８に記載のゲートウェイ設備。
【請求項１２】
各々の前記サービスノードは相応するサービスグループに属し、各々のサービスグループは、少なくとも一つのバックアップサービスノードを含み、
前記プロセッサは、前記機械実行可能命令により、
前記ノード識別子チェーンにおけるノード識別子に対応するサービスノードが故障したことを検出した場合、故障サービスノードの所属するサービスグループから一つの非故障バックアップサービスノードを選択し、前記ノード識別子チェーンの前記故障サービスノードに対応するノード識別子を前記選択されたバックアップサービスノードに対応するノード識別子にアップデートし、ヘッドノードがテールノードにアクセスするデータストリームが前記故障サービスノードから前記バックアップサービスノードに切り替わるように制御させられることを特徴とする請求項８に記載のゲートウェイ設備。
【請求項１３】
故障サービスノードに対応するノード識別子を前記選択されたバックアップサービスノードに対応するノード識別子にアップデートする時、前記プロセッサは、さらに、前記機械実行可能命令により、
前記故障サービスノード及び前記バックアップサービスノードの両方とも同一ゲートウェイ設備にアクセスした場合、
前記故障サービスノード及び前記バックアップサービスノードの両方ともによりアクセスされたゲートウェイ設備が前記ノード識別子チェーンの前記故障サービスノードに対応するノード識別子を前記バックアップサービスノードに対応するノード識別子にアップデートするようにトリガーし、
前記故障サービスノードと前記バックアップサービスノードとが異なるゲートウェイ設備にアクセスした場合、
前記非故障サービスノードによりアクセスされたゲートウェイ設備及び前記故障サービスノードに関連付けられたゲートウェイ設備が前記ノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするように制御させられることを特徴とする請求項１２に記載のゲートウェイ設備。
【請求項１４】
前記プロセッサは、さらに、前記機械実行可能命令により、
前記ノード識別子チェーンに基づいて前記故障サービスノードの直前ホップ及び次ホップを確定し、
前記直前ホップが前記ヘッドノードであり且つ前記次ホップが前記テールノードである時、故障サービスノードに関連付けられたゲートウェイ設備は前記ヘッドノードによりアクセスされたゲートウェイ設備であると確定し、
前記直前ホップが前記ヘッドノードであり且つ前記次ホップがサービスノードである時、故障サービスノードに関連付けられたゲートウェイ設備は前記ヘッドノードによりアクセスされたゲートウェイ設備及び前記次ホップによりアクセスされたゲートウェイ設備であると確定し、
前記次ホップが前記テールノードであり且つ前記直前ホップがサービスノードである時、前記故障サービスノードに関連付けられたゲートウェイ設備は前記直前ホップによりアクセスされたゲートウェイ設備であると確定させられることを特徴とする請求項１３に記載のゲートウェイ設備。
【発明の詳細な説明】
【関連する出願の参照】
【０００１】
本特許出願は、２０１６年７月２７日に提出された出願番号が２０１６１０６０６０４６.７であり且つ発明の名称が「データストリームの処理方法及び装置」である中国特許出願及び２０１６年７月２７日に提出された出願番号が２０１６１０６０６０４７.１であり且つ発明の名称が「ネットワークサービス制御方法及び装置」である中国特許出願の優先権を主張するものであり、該２つの出願の全文は参照することにより本文に組み込まれる。
【背景技術】
【０００２】
データストリームは、ネットワークで伝送される時、安全、迅速且つ安定な伝送を実現するために、各種のサービスノードを経由すべきである。ここでのサービスノードとは、データストリームにサービスを提供するノード、例えば、ファイアウォールノード、侵入検知ノード、ロード・バランシングノード等を指す。
【０００３】
データストリームが伝送過程で経由するサービスノードは一つのサービスチェーン（Ｓｅｒｖｉｃｅ  Ｃｈａｉｎ）を配置する。例えば、ＷＥＢがＡＰＰにアクセスするには、ファイアウォールノード（ＦＷ）及びロード・バランシングノード（ＬＢ）等により構成されるサービスチェーンを順次に経由すべきである。
【０００４】
ソフトウェア・デファインド・ネットワーク（ＳＤＮ：Ｓｏｆｔｗａｒｅ  Ｄｅｆｉｎｅｄ  Ｎｅｔｗｏｒｋ）サービスチェーンにおいて、ＳＤＮコントローラは、コントロールプレーンとして、サービスノードがデータストリームを転送するように指導するために、サービスノードにオープンフロー（Ｏｐｅｎｆｌｏｗ）エントリーを発行し、サービスノードがデータストリームにサービスを提供し且つ転送処理を実行するように指導するために、サービスノードに対応するサービス転送策略を発行する。これにより、ＳＤＮコントローラの負荷を増加させ、且つＳＤＮコントローラの信頼性に対する要求も高くなる。
【図面の簡単な説明】
【０００５】
【図１】本開示が提供するデータストリームの処理方法のフローチャートである。
【０００６】
【図２】本開示の実施例が提供する、ＶＸＬＡＮでカプセル化する模式図である。
【０００７】
【図３】本開示の実施例が提供するネットワーキング図である。
【０００８】
【図４】本開示が提供するデータストリームの処理方法の別のフローチャートである。
【０００９】
【図５】本開示が提供する実施例の応用模式図である。
【００１０】
【図６】本開示が提供する実施例の別の応用模式図である。
【００１１】
【図７】本開示が提供する実施例の別の応用模式図である。
【００１２】
【図８】本開示が提供するゲートウェイ設備のハードウェア構造図である。
【００１３】
【図９】本開示が提供する図８に示す設備の構造図である。
【００１４】
【図１０】本開示が提供する図８に示す設備の別の構造図である。
【発明を実施するための形態】
【００１５】
本開示の目的、技術方案及び利点をより明らかにするために、以下では図面及び具体的な実施例と併せて本開示を詳細に説明する。
【００１６】
図１を参照すると、図１は、本開示が提供するデータストリームの処理方法のフローチャートである。当該方法は、ヘッドノードがテールノードにアクセスするのに経由するゲートウェイ設備に応用される。本開示において、ヘッドノードは、テールノードにアクセスしようとする時、ルーティング・プロトコルに基づいてヘッドノードがテールノードにアクセスする経路を確定する。当該経路は、上記のゲートウェイ設備を含み、一連のサービスノードも含む。
【００１７】
本開示において、上記のゲートウェイ設備は、ヘッドノードによりアクセスされたゲートウェイ設備又はサービスノードによりアクセスされたゲートウェイ設備である。ヘッドノードによりアクセスされたゲートウェイ設備は、サービスノードに直接接続されず、サービスノードによりアクセスされたゲートウェイ設備を介してサービスノードに接続される。例えば、イーサネットバーチャルプライベートネットワーク（ＥＶＰＮ：Ｅｔｈｅｒｎｅｔ  Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）において、ここでのヘッドノードは、ＥＶＰＮにおける一つの仮想マシン（ＶＭ）であり、テールノードは、ＥＶＰＮにおける別のＶＭであり、ゲートウェイ設備は、ＥＶＰＮ分散ゲートウェイ設備である。
【００１８】
以下、ステップ２０３において、ゲートウェイ設備がヘッドノードによりアクセスされたゲートウェイ設備としてある時に実行される操作を説明し、ステップ２０４において、ゲートウェイ設備がサービスノードによりアクセスされたゲートウェイ設備としてある時に実行される操作を説明する。
【００１９】
図１に示すように、当該データストリームの処理方法は、下記のステップを含む。
【００２０】
ステップ１０１で、ゲートウェイ設備は、ノード識別子チェーンの各ノード識別子に対応するノードがオンラインになったか否かを検知する。
【００２１】
上記のように、ヘッドノードがテールノードにアクセスする経路は、上記のゲートウェイ設備と、一つの以上のサービスノードとを含む。これに基づいて、本開示において、ヘッドノードのノード識別子と、ヘッドノードがテールノードにアクセスするのに順次に経由するサービスノードのノード識別子と、テールノードのノード識別子とは直列に接続されて、上記のヘッドノードがテールノードにアクセスするノード識別子チェーンを形成する。各ノードのノード識別子は、当該ノードをユニークに識別する。例えば、ノードのＩＰアドレス、ＭＡＣアドレス等をノード識別子とする。本開示において、ヘッドノードがテールノードにアクセスするノード識別子チェーンは、ユニークなノード識別子チェーンの識別子を有し、且つヘッドノードがテールノードにアクセスするデータストリームにマッチングする。ヘッドノードがテールノードにアクセスするデータストリームが順次に経由するサービスノードは、一つのサービスチェーンとされることができ、サービスチェーンで、サービスノードは順に番号が付けられる。
【００２２】
一実施例として、本開示において、既存のアドレス解決プロトコル（ＡＲＰ：Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）、或いはインターネット制御通知プロトコル（ＩＣＭＰ：Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）に基づいて、ヘッドノードがテールノードにアクセスするノード識別子チェーンの各ノード識別子に対応するノードがオンラインになったか否かを検知する。具体的な検知方式は、既存のオンライン検知と類似しており、これ以上詳細に記述しないことにする。
【００２３】
ステップ１０２で、各ノード識別子に対応するノードがオンラインになったことを検知した場合、ゲートウェイ設備がヘッドノードによりアクセスされたゲートウェイ設備である時、ゲートウェイ設備は、ステップ１０３を実行し、ゲートウェイ設備がサービスノードによりアクセスされたゲートウェイ設備である時、ゲートウェイ設備は、ステップ１０４を実行する。
【００２４】
ステップ１０３で、ゲートウェイ設備は、ノード識別子チェーンに関連付けられた第１ストリーム分類策略を本設備のハードウェアに発行し、ヘッドノードがテールノードにアクセスするデータストリームを受信した時、第１ストリーム分類策略に基づいて、当該データストリームを前記ノード識別子チェーンに従って転送する。
【００２５】
本開示において、一実施例として、第１ストリーム分類策略は、予め本設備のソフトウェアレイヤに配置される。別の実施例において、第１ストリーム分類策略は、予めＳＤＮコントローラから取得されて設備のソフトウェアレイヤに記憶される。
【００２６】
一実施例として、上記の設備のソフトウェアレイヤは、設備のメモリ等のソフトウェアユニットであり、上記の設備のハードウェアは、転送チップ等のハードウェアユニットである。説明すべきことは、ここでの記載、ただ設備のソフトウェアレイヤ及び設備のハードウェアに対する例示的な説明であり、本開示は、これに対して限定しない。
【００２７】
具体的には、本ステップ１０３で、第１ストリーム分類策略に基づいて、ヘッドノードがテールノードにアクセスするデータストリームをノード識別子チェーンに従って転送するステップは、具体的に次の通りである。
【００２８】
ステップＡ１で、ゲートウェイ設備は、ヘッドノードがテールノードにアクセスするデータストリームにマッチングするノード識別子チェーンを見つける。
【００２９】
一実施例として、ヘッドノードがテールノードにアクセスするデータストリームの特徴パラメータと、ヘッドノードがテールノードにアクセスするノード識別子チェーンの識別子とを含むＡＣＬルールを予め設定する。ここでの特徴パラメータは、データストリームの５タプル（ソースＩＰアドレス、宛先ＩＰアドレス、ソースポート番号、宛先ポート番号、ポートプロトコル）、データストリームのソースＭＡＣアドレス及び宛先ＭＡＣアドレス等であり、本開示はこれに対して限定しない。当該例の記述に基づいて、一実施例として、ステップＡ１で、ヘッドノードがテールノードにアクセスするデータストリームにキャリーされる特徴パラメータをキーワードとして、全てのＡＣＬルールの中で当該キーワードを含むＡＣＬルールを検索し、当該見つかったＡＣＬルールにおけるノード識別子チェーンの識別子に対応するノード識別子チェーンを、ヘッドノードがテールノードにアクセスするデータストリームにマッチングするノード識別子チェーンとする。当該マッチングするノード識別子チェーンは、上記のヘッドノードがテールノードにアクセスするノード識別子チェーンである。
【００３０】
ステップＡ２で、ゲートウェイ設備は、データストリームを当該マッチングするノード識別子チェーンの識別子でカプセル化する。
【００３１】
一実施例として、本開示がＥＶＰＮに応用される場合、本ステップＡ１で、仮想拡張可能ローカルエリアネットワーク（ＶＸＬＡＮ）カプセル化ヘッダにより、データストリームをノード識別子チェーンの識別子でカプセル化することを実現する。具体的には、データストリームにＶＸＬＡＮカプセル化ヘッダを追加し、ＶＸＬＡＮカプセル化ヘッダのうち一つの予約フィールドは、ノード識別子チェーンの識別子をキャリーする。これにより、データストリームをノード識別子チェーンの識別子でカプセル化する操作を実現する。図２に示すＶＸＬＡＮカプセル化ヘッダにおける予約フィールド１は、ノード識別子チェーンの識別子をキャリーする。
【００３２】
ステップＡ２で、ゲートウェイ設備は、さらに、ノード識別子チェーンの識別子でカプセル化したデータストリームを、ノード識別子チェーン２つ目のノード識別子に対応するサービスノードにアクセスされたという条件を満たすゲートウェイ設備にリダイレクトする。
【００３３】
上記のノード識別子チェーンの２つ目のノード識別子に対応するサービスノードは、1つ目のサービスノードである。
【００３４】
ヘッドノードによりアクセスされたゲートウェイ設備にとって、ストリーム分類策略に基づいて、データストリームを1つ目のサービスノードによりアクセスされたゲートウェイ設備にリダイレクトすべきある。この時、ヘッドノードによりアクセスされたゲートウェイ設備は、ローカルイグレスポートを確定すべきである。例えば、ノード識別子チェーンにより1つ目のサービスノードの識別子（即ち、ノード識別子チェーンの２つ目のノード識別子）を認識し、当該２つ目のノード識別子により対応するイグレスポートを検索する。当該ノード識別子は、ＩＰアドレス又はＭＡＣアドレスである。ＩＰアドレス又はＭＡＣアドレスによりデータ転送イグレスポートを検索する実現に関しては、既に様々な方案があり、本開示はこれ以上詳細に説明しないことにする。
【００３５】
イグレスポートが見つかった後、ゲートウェイ設備は、ノード識別子チェーンの識別子でカプセル化したデータストリームを、当該イグレスポートを介して相応するゲートウェイ設備、即ち、1つ目のサービスノードによりアクセスされたゲートウェイ設備に転送する。
【００３６】
ヘッドノードによりアクセスされたゲートウェイ設備がステップＡ２を通じてノード識別子チェーンの識別子でカプセル化したデータストリームを転送した後、1つ目のサービスノードによりアクセスされたゲートウェイ設備は、擬似ワイヤ（ＰＷ）ポートを介して当該ノード識別子チェーンの識別子でカプセル化したデータストリームを受信する。
【００３７】
ステップ１０４で、ゲートウェイ設備は、ノード識別子チェーンに関連付けられた第２ストリーム分類策略を本設備のハードウェアに発行し、ヘッドノードがテールノードにアクセスするデータストリームを受信した時、第２ストリーム分類策略に基づいて、ヘッドノードがテールノードにアクセスするデータストリームを前記ノード識別子チェーンに従って転送する。
【００３８】
本開示において、一実施例として、第２ストリーム分類策略は、予め本設備のソフトウェアレイヤに配置される。別の実施例において、第２ストリーム分類策略は、予めＳＤＮコントローラから取得されて設備のソフトウェアレイヤに記憶される。
【００３９】
具体的には、本ステップ１０４で、第２ストリーム分類策略に基づいて、ヘッドノードがテールノードにアクセスするデータストリームを前記ノード識別子チェーンに従って転送するステップは、下記のステップを含む。
【００４０】
ステップＢ１で、ローカルＰＷポートを介してヘッドノードがテールノードにアクセスするデータストリームを受信した時、ゲートウェイ設備は、ステップＢ２を実行し、ローカルのサービスノードに接続されるサービスポートを介してヘッドノードがテールノードにアクセスするデータストリームを受信した時、ゲートウェイ設備は、ステップＢ３を実行する。
【００４１】
ステップＢ２で、データストリームに追加されたノード識別子チェーンの識別子に対応するノード識別子チェーンを見つけ、データストリームをデカプセル化し、デカプセル化後のデータストリームを当該見つかったノード識別子チェーンにおける２つ目のノード識別子に対応するサービスノードに送信する。
【００４２】
サービスノードによりアクセスされたゲートウェイ設備がＰＷポートを介してデータストリームを受信した時、上記のステップＡ２の記述に基づいて、当該データストリームはヘッドノードによりアクセスされたゲートウェイ設備から送信されたことが分かる。ゲートウェイ設備は、当該データストリームをＶＸＬＡＮでデカプセル化し、ヘッドノードが送信した元のデータストリームを得る。ゲートウェイ設備は、データストリームに追加されたノード識別子チェーンの識別子に基づいて、ローカルに記憶された全てのノード識別子チェーンの中で当該ノード識別子チェーンの識別子に対応するノード識別子チェーンを見つける。その後、ゲートウェイ設備は、生データストリームを当該見つかったノード識別子チェーンにおける2つ目のノード識別子に対応するサービスノードに送信する。このように、ゲートウェイ設備は、ヘッドノードが送信した、テールノードにアクセスする生データストリームをサービスノードに導入する。サービスノードがデータストリームに対してサービス処理を実行した後、サービスノードは、処理後のデータストリームをそれにアクセスされたゲートウェイ設備に送信する。
【００４３】
サービスノードによりアクセスされたゲートウェイ設備がＰＷポートを介して受信したデータストリームは、例えば、サービスノードの番号、ＩＰアドレス又はＭＡＣアドレス等の情報のようなサービスノードの情報を更にキャリーする。上記のステップＡ１で記述したように、ヘッドノードによりアクセスされたゲートウェイ設備は、データストリームに対して処理する1つ目のサービスノードを確定する。このため、当該ゲートウェイ設備は、データストリームを送信する時、このサービスノードの情報をデータストリームに追加する。例えば、図２に示すようなＶＸＬＡＮカプセル化ヘッダにおける予約フィールド２は、サービスノードの番号をキャリーする。勿論、他の方式によりサービスノードの番号、アドレス等の情報を送信しても良い。このように、サービスノードによりアクセスされたゲートウェイ設備は、サービスノードの情報及びノード識別子チェーンに基づいて相応するサービスノードを確定し、データストリームをサービスノードに導入する。例えば、データストリームがサービスノードの番号をキャリーする場合、若し番号が１であると、データストリームを1つ目のサービスノードに導入すべきであることを示し、この場合、サービスノードによりアクセスされたゲートウェイ設備は、ノード識別子チェーンから当該サービスノードの識別子を見つける。当該ノード識別子は、ＩＰアドレス又はＭＡＣアドレスである。ＩＰアドレス又はＭＡＣアドレスにより本設備上でイグレスポートを検索し、上記の生データストリームを、当該イグレスポートを介して1つ目のサービスノードに送信する。
【００４４】
ステップＢ３で、ゲートウェイ設備は、サービスノードに接続されるサービスポートを介してデータストリームを受信した時（上記のステップＢ２の記述のように、この場合、当該データストリームはサービスノードから送信されたことを意味する）、データストリームにマッチングするノード識別子チェーンを検索し、見つかったノード識別子チェーンに基いて次ホップ識別子を確定する。次ホップ識別子がテールノードのノード識別子である場合、ゲートウェイ設備は、データストリームを前記テールノードによりアクセスされたゲートウェイ設備にリダイレクトする。そうでない場合、ゲートウェイ設備は、データストリームを次ホップ識別子に対応するサービスノードに送信する。次ホップ識別子は、前記ノード識別子チェーンの現在サービスノード識別子の次のノード識別子であり、現在サービスノード識別子は、前記サービスポートに接続されたサービスノードの識別子である。
【００４５】
説明すべきことは、上記の例は、サービスチェーンのサービスノードが全て同一ゲートウェイ設備にアクセスされた場合に基づいたものである。もう一つの場合が存在する。即ち、サービスチェーンのサービスノードが複数のゲートウェイ設備にアクセスしている。それに基いて、ステップＢ２で、サービスノードによりアクセスされたゲートウェイ設備がＰＷポートを介して受信したデータストリームは、他のサービスノードによりアクセスされたゲートウェイ設備から送信されたものであっても良い。理解し得ることは、当該データストリームは、サービスノードの情報もキャリーすることができる。ステップＢ３の記述を結び付けて、ゲートウェイ設備は、次ホップノード識別子を確定する時、当該識別子に対応するノード（サービスノード）が本設備にアクセスしたか否かを確定することができる。次ホップノード識別子に対応するサービスノードが他のゲートウェイ設備にアクセスした場合、データストリームを当該他のゲートウェイ設備に送信すべきである。理解し得ることは、ここで、データストリームを送信する方式は、ステップＡ２と大体同じであり、唯一の差異点は、データストリームを確定された次ホップサービスノードによりアクセスされたゲートウェイ設備にリダイレクトすべきあることである。それに基いて、送信されるデータストリームは、当該次ホップサービスノードの情報をキャリーすることができ、この場合、当該データストリームを受信したゲートウェイ設備の処理方式は、ステップＢ２と同様である。
【００４６】
図１に示すフローから分かるように、ヘッドノードがテールノードにアクセスするのに経由するサービスノードは、データストリームのみに対してネットワークサービスを行い、データストリームをカプセル化せず、ハードウェアエントリー資源を節約する。
【００４７】
以下、ＥＶＰＮを例として図１に示すフローを説明する。
【００４８】
図３を参照すると、図３は、本開示の実施例が提供するにネットワーキング図である。図３に示すようなネットワーキングにおいて、ＶＭ１がＶＭ２にアクセスする場合を例とする場合、ＶＭ１はヘッドノードであり、ＶＭ２はテールノードである。
【００４９】
ＶＭ１がＶＭ２にアクセスする時、ルーティング・プロトコルに基づいてＶＭ１がＶＭ２にアクセスする時、サービスノード１乃至ｎを順次に経由すると確定する。
【００５０】
これに基づいて、本実施例において、ＶＭ１の識別子と、ＶＭ１がＶＭ２にアクセスするのに順次に経由するサービスノード1乃至ｎの識別子と、ＶＭ２の識別子とを直列に接続させて、ＶＭ１がＶＭ２にアクセスするノード識別子チェーンを形成する。ここで、当該直列に接続されたノード識別子チェーンをチェーン１で表す。
【００５１】
ＶＭ１の識別子は、ＶＭ１のＩＰアドレス（ＩＰ０で表す）であり、ＶＭ２の識別子は、ＶＭ２のＩＰアドレス（ＩＰ（２ｎ＋１）で表す）であると仮定する。サービスノード１のノード識別子は、〔ＩＰ１、ＩＰ２〕であり、ＩＰ１は、ＶＭ１がＶＭ２にアクセスするアクセス経路のサービスノード１上のイングレスポートの識別子であり、ＩＰ２は、ＶＭ１がＶＭ２にアクセスするアクセス経路のサービスノード１上のイグレスポートの識別子であると仮定する。サービスノード２のノード識別子は、〔ＩＰ３、ＩＰ４〕であり、ＩＰ３は、ＶＭ１がＶＭ２にアクセスするアクセス経路のサービスノード２上のイングレスポートの識別子であり、ＩＰ４は、ＶＭ１がＶＭ２にアクセスするアクセス経路のサービスノード２上のイグレスポートの識別子であると仮定する。以下同様に類推し、サービスノードｎのノード識別子は、〔ＩＰ（２ｎ-１）、ＩＰ（２ｎ）〕であり、ＩＰ（２ｎ-１）は、ＶＭ１がＶＭ２にアクセスするアクセス経路のサービスノードｎ上のイングレスポートの識別子であり、ＩＰ（２ｎ）は、ＶＭ１がＶＭ２にアクセスするアクセス経路のサービスノードｎ上のイグレスポートの識別子であると仮定する。この場合、図３において、チェーン１は、具体的に、ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１）である。
【００５２】
図３において、上記のＶＭ１がＶＭ２にアクセスするアクセス経路は、ストリーム分類ノード３００、プロキシ転送ノード３０１及びプロキシ転送ノード３０２を更に経由する。ここで、ストリーム分類ノード３００、プロキシ転送ノード３０１及びプロキシ転送ノード３０２は、ＥＶＰＮ分散ゲートウェイ設備に相当する。ストリーム分類ノード３００は、ヘッドノードＶＭ１によりアクセスされたゲートウェイ設備であり、プロキシ転送ノード３０１は、サービスノードによりアクセスされたゲートウェイ設備であり、プロキシ転送ノード３０２は、テールノードによりアクセスされたゲートウェイ設備である。
【００５３】
本実施例において、ストリーム分類ノード３００と、プロキシ転送ノード３０１とは、チェーン１を予め配置する。本実施例において、プロキシ転送ノード３０２は、ＶＭ１がＶＭ２にアクセスする最後のプロキシ転送ノードである。宛先エンドＶＭ２に直接接続されるため、データストリームを正常に宛先エンドＶＭ２に転送できれば十分である。本実施例において、プロキシ転送ノード３０２は、チェーン１を予め配置しなくても良い。
【００５４】
ストリーム分類ノード３００及びプロキシ転送ノード３０１は、チェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２がいずれもオンラインになったか否かを検知する。初期に、チェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２は、オンラインになっていない。
【００５５】
ストリーム分類ノード３００がチェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２がいずれもオンラインになったかを検知する時、チェーン１に関連付けられたストリーム分類策略を本ノードのハードウェアに発行する。当該発行されたストリーム分類策略はストリーム分類策略１で表され、ＶＭ１がＶＭ２にアクセスするデータストリームがチェーン１に従って転送されるように案内するために用いられる。具体的には、ストリーム分類策略１は、次の通りである。ＶＭ１がＶＭ２にアクセスするデータストリームにキャリーされる特徴パラメータとしてのソースＩＰアドレス及び宛先ＩＰアドレスに基づいて、ローカルでＶＭ１がＶＭ２にアクセスするノード識別子チェーンにマッチングさせ、ＶＭ１がＶＭ２にアクセスするデータストリームをチェーン１の識別子でカプセル化し、条件を満たすプロキシ転送ノードにリダイレクトする。当該条件は、次の通りである。チェーン１における２つ目のノード識別子（即ち、ＩＰ１）に対応するサービスノード（即ち、サービスノード１）に接続される。ここで、条件を満たすプロキシ転送ノードは、プロキシ転送ノード３０１である。
【００５６】
プロキシ転送ノード３０１が、チェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２がいずれもオンラインになったことを検知する時、チェーン１に関連付けられたストリーム分類策略を本ノードのハードウェアに発行する。ここでのストリーム分類策略は、ＶＭ１がＶＭ２にアクセスするデータストリームがチェーン１に従って転送されるように案内するために用いられ、具体的には、ストリーム分類策略２と、ストリーム分類策略３とを含む。ストリーム分類策略２は、次の通りである。ローカルのＰＷポートを介してＶＭ１がＶＭ２にアクセスするデータストリームを受信した時、データストリームに追加されたノード識別子チェーンの識別子に対応するノード識別子チェーンを見つけ、データストリームをデカプセル化し、デカプセル化後のデータストリームをノード識別子チェーンにおける２つ目のノード識別子に対応するサービスノード、即ち、上記のサービスノード１に送信する。ストリーム分類策略３は、次の通りである。ローカルのサービスノードに接続されるサービスポートを介してＶＭ１がＶＭ２にアクセスするデータストリームを受信した時、ＶＭ１がＶＭ２にアクセスするデータストリームにキャリーされる特徴パラメータ、例えば、ソースＩＰアドレス及び宛先ＩＰアドレスに基づいてＶＭ１がＶＭ２にアクセスするノード識別子チェーンにマッチングさせ、ＶＭ１がＶＭ２にアクセスするノード識別子チェーンに基いて次ホップ識別子を確定し、次ホップ識別子がテールノードのノード識別子、例えば、ＩＰ（２ｎ＋１）である時、データストリームをテールノードによりアクセスされたゲートウェイ設備、即ち、プロキシ転送ノード３０２にリダイレクトし、そうでない場合、データストリームを次ホップ識別子に対応するサービスノードに送信する。次ホップ識別子は、前記ノード識別子チェーンにおける現在サービスノード識別子の次のノード識別子であり、前記現在サービスノード識別子は、前記サービスポートに接続されたサービスノードの識別子である。
【００５７】
ＶＭ１がオンラインになった後、ＶＭ１は、ＶＭ２にアクセスするデータストリームを送信する。ＶＭ１が送信したＶＭ２にアクセスするデータストリームのソースＩＰアドレスは、ＶＭ１のＩＰアドレス、即ち、ＩＰ０であり、宛先ＩＰアドレスは、ＶＭ２のＩＰアドレス、即ち、ＩＰ（２ｎ＋１）である。説明の便宜上、ここで、ＶＭ１がＶＭ２にアクセスするデータストリームをストリーム１_１で表す。
【００５８】
ストリーム分類ノード３００は、ストリーム１_１を受信する。
【００５９】
ストリーム分類ノード３００は、ストリーム１_１にキャリーされる特徴パラメータ、例えば、ソースＩＰアドレスＩＰ０及び宛先ＩＰアドレスＩＰ（２ｎ＋１）に基づいて、ローカルのノード識別子チェーンの中でマッチングするノード識別子チェーンを見つける。当該見つかったノード識別子チェーンは、上記のチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））である。
【００６０】
ストリーム分類ノード３００は、ストリーム１_１にＶＸＬＡＮカプセル化ヘッダを追加する。ＶＸＬＡＮカプセル化ヘッダは、具体的に、図３に示す通りである。ＶＸＬＡＮカプセル化ヘッダにおける予約フィールド１は、当該見つかったノード識別子チェーン、即ち、チェーン１の識別子をキャリーする。説明の便宜上、ここで、ＶＸＬＡＮカプセル化ヘッダを追加したストリーム１_１をストリーム１_２で表す。
【００６１】
ストリーム分類ノード３００は、ローカルのストリーム１_２を転送するイグレスポートを確定する。当該イグレスポートは、ストリーム分類ノードがローカルで下記のプロキシ転送ノードに接続されるポートである。当該見つかったノード識別子チェーン、即ち、チェーン１における1つ目のサービスノード識別子ＩＰ１に対応するサービスノード１に接続されるプロキシ転送ノード（当該プロキシ転送ノードは、事実上図４におけるプロキシ転送ノード３０１である）。説明の便宜上、ここで、当該確定されたイグレスポートをＰｏｒｔ０で表す。
【００６２】
ストリーム分類ノード３００は、ストリーム１_２を当該確定されたイグレスポートＰｏｒｔ０にリダイレクトして転送する。
【００６３】
プロキシ転送ノード３０１は、ローカルのＰＷポート（Ｐｏｒｔ１で表す）を介してストリーム１_２を受信する。
【００６４】
プロキシ転送ノード３０１は、ストリーム分類策略２に基づいてストリーム１_２のＶＸＬＡＮカプセル化ヘッダにキャリーされるノード識別子チェーンの識別子を確定し、ローカルのノード識別子チェーンの中で、確定されたノード識別子チェーンの識別子を有するノード識別子チェーンを見つける。当該見つかったノード識別子チェーンは、上記のチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））である。
【００６５】
プロキシ転送ノード３０１は、ストリーム１_２のＶＸＬＡＮデカプセル化を実行し、即ち、上記のストリーム１_１に回復する。
【００６６】
プロキシ転送ノード３０１は、回復して取得したストリーム１_１を当該見つかったノード識別子チェーン、即ち、チェーン１における1つ目のサービスノード識別子ＩＰ１に対応するサービスノード１に送信する。
【００６７】
サービスノード１は、ＩＰ１に対応するポート（Ｐｏｒｔ１_１で表す）を介してプロキシ転送ノード３０１が送信したストリーム１_１を受信し、ローカルのサービス策略に従ってストリーム１_１を処理する。
【００６８】
サービスノード１は、ＩＰ２に対応するポート（Ｐｏｒｔ１_２で表す）を介して処理後のストリーム１_１をプロキシ転送ノード３０１に送信する。
【００６９】
プロキシ転送ノード３０１は、ローカルの上記のＰｏｒｔ１_２に接続されるポート（Ｐｏｒｔ１_１２で表す）を介してストリーム１_１を受信する。
【００７０】
プロキシ転送ノード３０１は、ストリーム分類策略３に基づいて、ストリーム１_１にキャリーされる特徴パラメータ、例えば、ソースＩＰアドレスＩＰ０及び宛先ＩＰアドレスＩＰ（２ｎ＋１）にマッチングするノード識別子チェーンを見つける。当該見つかったノード識別子チェーンは、上記のチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））である。
【００７１】
プロキシ転送ノード３０１は、見つかったチェーン１に基づいて、下記のステップを通じて次ホップ識別子を確定する。
ローカルのポートＰｏｒｔ１_１２に接続されるサービスノード１上のポートＰｏｒｔ１_２に対応する識別子はＩＰ２であると確定する。本実施例において、プロキシ転送ノード３０１は、予めローカルの各サービスポートに接続されるサービスノード上のポートに対応する識別子を学習する。これに基づいて、プロキシ転送ノード３０１は、既に学習した各ポートに対応する識別子に基づいてサービスノード１上のポートＰｏｒｔ１_２に対応する識別子を確定し、
見つかったチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））におけるＩＰ２の次のノード識別子（即ち、ＩＰ３）を次ホップ識別子と確定する。
【００７２】
プロキシ転送ノード３０１は、次ホップ識別子ＩＰ３に対応するサービスノード（即サービスノード２）にストリーム１_１を送信する。
【００７３】
サービスノード２は、ＩＰ３に対応するポート（Ｐｏｒｔ２_３で表す）を介してプロキシ転送ノード３０１が送信したストリーム１_１を受信し、ローカルのサービス策略に従ってストリーム１_１を処理する。
【００７４】
サービスノード２は、ＩＰ４に対応するポート（Ｐｏｒｔ２_４で表す）を介して処理後のストリーム１_１をプロキシ転送ノード３０１を送信する。
【００７５】
プロキシ転送ノード３０１は、ローカルのサービスノード２上のＰｏｒｔ２_４に接続されるポート（Ｐｏｒｔ１_２４で表す）を介してストリーム１_１を受信する。
【００７６】
プロキシ転送ノード３０１は、ストリーム分類策略３に基づいてストリーム１_１にキャリーされる特徴パラメータ、例えば、ソースＩＰアドレスＩＰ０及び宛先ＩＰアドレスＩＰ（２ｎ＋１）にマッチングするノード識別子チェーンを見つける。当該見つかったノード識別子チェーンは、上記のチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））である。
【００７７】
プロキシ転送ノード３０１は、見つかったチェーン１に基づいて、下記のステップを通じて次ホップ識別子を確定する。
ローカルのポートＰｏｒｔ１_２４に接続されるサービスノード２上のポートＰｏｒｔ２_４に対応する識別子はＩＰ４であると確定し、
見つかったチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））におけるＩＰ４の次のサービスノード識別子、即ち、ＩＰ５を次ホップ識別子と確定する。
【００７８】
プロキシ転送ノード３０１は、次ホップ識別子ＩＰ５に対応するサービスノードにストリーム１_１を送信する。以下同様に類推し、最終的に、プロキシ転送ノード１は、ストリーム１_１をサービスノードｎに送信する。
【００７９】
サービスノードｎは、ＩＰ（２ｎ-１）に対応するポート（Ｐｏｒｔｎ_２ｎ-１で表す）を介して、プロキシ転送ノード３０１が送信したストリーム１_１を受信し、ローカルのサービス策略に従った受信されたストリーム１_１を処理する。
【００８０】
サービスノードｎは、ＩＰ（２ｎ）に対応するポート（Ｐｏｒｔｎ_２ｎで表す）を介して、処理後のストリーム１_１をプロキシ転送ノード３０１に送信する。
【００８１】
プロキシ転送ノード３０１は、ローカルのサービスノードｎ上のＰｏｒｔｎ_２ｎに接続されるポート（Ｐｏｒｔ１_ｎ２ｎで表す）を介してストリーム１_１を受信する。
【００８２】
プロキシ転送ノード３０１は、ストリーム１_１にキャリーされる特徴パラメータ、例えば、ソースＩＰアドレスＩＰ０及び宛先ＩＰアドレスＩＰ（２ｎ＋１）に基づいて、ローカルのノード識別子チェーンの中でノード識別子チェーンを見つける。当該見つかったノード識別子チェーンは、上記のチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））である。
【００８３】
プロキシ転送ノード３０１は、見つかったチェーン１に基づいて、下記のステップを通じて次ホップ識別子を確定する。
ローカルのポートＰｏｒｔ１_ｎ２ｎに接続されるサービスノードｎ上のポートＰｏｒｔｎ_２ｎに対応する識別子はＩＰ（２ｎ）であると確定し、
見つかったチェーン１（ＩＰ０-ＩＰ１-ＩＰ２-ＩＰ３-ＩＰ４-……-ＩＰ（２ｎ-１）-ＩＰ（２ｎ）-ＩＰ（２ｎ＋１））におけるＩＰ（２ｎ）の次のノード識別子、即ち、ＩＰ（２ｎ＋１）を次ホップ識別子と確定する。
【００８４】
プロキシ転送ノード３０１は、ストリーム１_１をＶＸＬＡＮでカプセル化する。ここで、ＶＸＬＡＮカプセル化後のストリームは、これ以上チェーン１の識別子を含まず、ＶＸＬＡＮカプセル化は、既存のＶＸＬＡＮカプセル化に類似する。ＶＸＬＡＮカプセル化後のストリーム１_１は、ストリーム１_３で表される。
【００８５】
プロキシ転送ノード３０１は、プロキシ転送ノード３０２（テールノードＶＭ２によりアクセスされたゲートウェイ設備）に接続されるイグレスポートを介してストリーム１_３を送信する。
【００８６】
プロキシ転送ノード３０２は、プロキシ転送ノード３０１が送信したストリーム１_３を受信し、ストリーム１_３のＶＸＬＡＮデカプセル化を実行し、即ち、上記のストリーム１_１に回復する。
【００８７】
プロキシ転送ノード３０２は、回復して取得したストリーム１_１を直接ＶＭ２に転送し、最終的に、ＶＭ２は、ＶＭ１からアクセスするデータストリームを受信する。
【００８８】
説明すべきことは、上記の実施例において、サービスチェーンにおける全てのサービスノードが同一プロキシ転送ノードに接続される場合を例としたが、これは、ただ説明の便宜上挙げられた特定例であり、本開示を限定するために用いられない。本開示の目的を実現するという前提で、拡張により、異なるサービスノードが異なるプロキシ転送ノードに接続されても良い。
【００８９】
さらに説明すべきことは、図３に示す実施例において、チェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２がオンラインになった後、ストリーム分類ノード３００及びプロキシ転送ノード３０１は、さらに、チェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２がオフラインになったか否かを検知すべきである。ストリーム分類ノード３００により、チェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２のうち少なくとも一つがフラインになったことが検知された場合、ローカルのハードウェアにおける第１ストリーム分類策略は削除される。
【００９０】
同様に、プロキシ転送ノード３０２により、チェーン１上の各ＩＰアドレスに対応する設備、即ち、ＶＭ１、サービスノード1乃至ｎ及びＶＭ２のうち少なくとも一つがオフラインになったことが検知された場合、ローカルのハードウェアにおける第２ストリーム分類策略は削除する。
【００９１】
上記の技術方案から分かるように、本開示において、ノード識別子チェーン及びノード識別子チェーンに関連付けられた第１ストリーム分類策略により、ヘッドノードによりアクセスされたゲートウェイ設備のデータストリーム転送を改善し、ノード識別子チェーン及びノード識別子チェーンに関連付けられた第２ストリーム分類策略により、サービスノードによりアクセスされたゲートウェイ設備のデータストリーム転送を改善し、最終的に、ＳＤＮコントローラによりデータストリームの転送を制御及び案内するのではなく、ヘッドノードによりアクセスされたゲートウェイ設備とサービスノードによりアクセスされたゲートウェイ設備とが互いに組み合わせられて、ヘッドノードがテールノードにアクセスするデータストリームがノード識別子チェーンに従って転送されるように案内する。これにより、一方では、ＳＤＮコントローラの負荷を軽減し、ＳＤＮコントローラの信頼性に対する要求が低く、ＳＤＮコントローラがデータストリームの経由する各サービスノードでサービス転送策略を発行することによる欠陥も回避する。
【００９２】
上文において、サービスチェーンのデータ処理方法を紹介した。但し、サービスチェーンのサービスノードが故障した時、サービスチェーン全体の無効を引き起こし、データストリームのネットワークサービスに影響を及ぼす。
【００９３】
これに基づいて、本開示において、各々のサービスノードに対して対応するサービスグループを設置する。当該サービスグループは、当該サービスノード以外に、少なくとも一つのバックアップサービスノードを更に含む。サービスノードと、バックアップサービスノードとは、同じサービスを提供することができ、互いにサービス策略をバックアップすることができる。
【００９４】
図４を参照すると、図４は、本開示が提供するデータストリームの処理方法の別のフローチャートである。当該データストリームの処理方法は、サービスチェーンの各ノードによりアクセスされたゲートウェイ設備に応用される。
【００９５】
ステップ４０１で、ゲートウェイ設備は、ヘッドノードがテールノードにアクセスするノード識別子チェーンにおけるノード識別子に対応するサービスノードが故障したか否かを検出する。
【００９６】
同一サービスグループにおける異なるサービスノードは、異なる優先度を有し、当該優先度は、上記のサービスグループにおけるサービスノードの優先度により静的に配置されるか、又はサービスグループにインストールされた順序により動的に確定される。これに基づいて、本ステップ４０１におけるノード識別子チェーンのサービスグループのうち一つのサービスノードのノード識別子は、具体的に、ロード・バランシング原則に従ってサービスグループから選び出された最も優先度の高いサービスノードのノード識別子である。
【００９７】
一実施例として、ステップ４０１で、ノード識別子チェーンにおけるノード識別子に対応するサービスノードが故障したか否かの検出を実時間で実行する。ノード識別子チェーンにおけるノード識別子に対応するサービスノードが故障したことが検出される前に、ヘッドノードがテールノードにアクセスするデータストリームは、当該ノード識別子チェーンに従って転送される。ノード識別子チェーンにおけるノード識別子に対応するサービスノードが故障したことが検出された時、ステップ４０２を実行する。
【００９８】
ステップ４０２で、ゲートウェイ設備は、故障サービスノードの位置するサービスグループから一つの非故障バックアップサービスノードを選択し、前記ノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートし、ヘッドノードがテールノードにアクセスするデータストリームが故障サービスノードからバックアップサービスノードに切り替わってネットワークサービス処理を行うように制御する。
【００９９】
同一サービスグループにおける異なるサービスノードは、異なる優先度を有する。これに基づいて、本ステップ４０２で、故障サービスノードの所属するサービスグループから一つの非故障バックアップサービスノードを選択するステップは、ロード・バランシング原則に従って故障サービスノードの所属するサービスグループから一つの非故障であり且つ最も優先度の高いバックアップサービスノードを選択するステップを含む。
【０１００】
一実施例として、ステップ４０２で、ノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするステップは、下記のステップを含む。
【０１０１】
ステップａ１で、故障サービスノードとバックアップサービスノードとが同一ゲートウェイ設備にアクセスしたか否かを判断する。そうである場合、ステップａ２を実行する。そうでない場合、ステップａ３を実行する。
【０１０２】
ステップａ２で、本ゲートウェイ設備が、故障サービスノード及びバックアップサービスノードの両方ともによりアクセスされたゲートウェイ設備である時、ノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートする。そうでない場合、故障サービスノード及び前記バックアップサービスノードの両方ともによりアクセスされたゲートウェイ設備がノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするようにトリガーする。
【０１０３】
ステップａ３で、バックアップサービスノードによりアクセスされたゲートウェイ設備及び故障サービスノードに関連付けられたゲートウェイ設備がノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするように制御する。
【０１０４】
一実施例として、ここでの故障サービスノードに関連付けられたゲートウェイ設備は、下記のステップを通じて確定される。ノード識別子チェーンに基づいて故障サービスノードの直前ホップ及び次ホップを確定する。直前ホップが前記ヘッドノードであり且つ次ホップが前記テールノードである時、故障サービスノードに関連付けられたゲートウェイ設備は、前記ヘッドノードによりアクセスされたゲートウェイ設備である。直前ホップが前記ヘッドノードであり且つ次ホップがサービスノードである時、故障サービスノードに関連付けられたゲートウェイ設備は、前記ヘッドノードによりアクセスされたゲートウェイ設備及び前記次ホップによりアクセスされたゲートウェイ設備である。次ホップが前記テールノードであり且つ直前ホップがサービスノードである時、前記故障サービスノードに関連付けられたゲートウェイ設備は、前記直前ホップによりアクセスされたゲートウェイ設備である。
【０１０５】
説明すべきことは、一実施例として、上記の方法を実行するゲートウェイ設備は、上記のノード識別子チェーンの各ノード識別子に対応するノードによりアクセスされたゲートウェイ設備から選び出されたゲートウェイ設備である。即ち、具体的に実現される時、上記のゲートウェイ設備は、ヘッドノードによりアクセスされたゲートウェイ設備であっても可能であり、ヘッドノードがテールノードにアクセスするのに経由するサービスノードによりアクセスされたゲートウェイ設備であっても可能であり、テールノードによりアクセスされたゲートウェイ設備であっても可能である。
【０１０６】
以下、図５を参照してサービスチェーンに故障サービスノードが存在する時のデータストリームの処理方法を説明する。図５は、本開示の実施例が提供するネットワーキングの模式図である。図５に示すように、サービスノード１に対応するサービスグループは、ＦＷサービスを提供することができ、ＦＷサービスグループと称され、サービスノード２に対応するサービスグループは、ＬＢサービスを提供することができ、ＬＢサービスグループと称される。ＦＷサービスグループは、三つのサービスノード、即ち、ＦＷ１と、ＦＷ２と、ＦＷ３とを含む。ＦＷ１と、ＦＷ２と、ＦＷ３とは互いにＦＷネットワークサービス策略をバックアップし、且ついずれもバックアップサービスノードとして用いられる。ＬＢサービスグループは、三つのサービスノード、即ち、ＬＢ１と、ＬＢ２と、ＬＢ３とを含む。ＬＢ１と、ＬＢ２と、ＬＢ３とは互いにＬＢネットワークサービス策略をバックアップし、且ついずれもバックアップサービスノードとして用いられる。
【０１０７】
本実施例において、サービスグループにおける各サービスノードは異なる優先度を有する。ＦＷサービスグループを例として、ＦＷ１、ＦＷ２、ＦＷ３の優先度は、ＦＷ１、ＦＷ２、ＦＷ３がＦＷサービスグループにインストールされる先着順に基づいて確定される。先にインストールされたＦＷの優先度は、後にインストールされたＦＷより高い。別の実施例として、サービスグループにおける各サービスノードの優先度は、ランダムに割り当てられても良い。
【０１０８】
図５に示すようなネットワーキングにおいて、ＶＭ１がＶＭ２にアクセスする場合を例として、ＶＭ１は、ヘッドノードであり、ＶＭ２は、テールノードである。
【０１０９】
ＶＭ１がＶＭ２にアクセスする時、ルーティング・プロトコルに基づいてＶＭ１がＶＭ２にアクセスするアクセス経路を確定する。当該アクセス経路が、ＶＭ１->ストリーム分類ノード３００->プロキシ転送ノード３０１->ＦＷサービスグループ->ＬＢサービスグループ->プロキシ転送ノード３０２->ＶＭ２であると仮定する。上記のアクセス経路に基づいて、ＶＭ１がＶＭ２にアクセスするノード識別子チェーンを確定する。ここでのノード識別子チェーンは、ＶＭ１の識別子-ＦＷサービスグループにおける一つのサービスノードのノード識別子-ＬＢサービスグループにおける一つのサービスノードのノード識別子-ＶＭ２の識別子である。
【０１１０】
上記のようなＦＷサービスグループにおける異なるサービスノードは、異なる優先度を有する。これに基づいて、上記のＦＷサービスグループにおける一つのサービスノードのノード識別子は、ロード・バランシング原則に従ってＦＷサービスグループから選び出された最も優先度の高いサービスノードのノード識別子であり、これは、同一サービスグループにおける異なるサービスノードのロードがバランス良く分担されることを現している。
【０１１１】
一例として、ＶＭ１がＶＭ２にアクセスするノード識別子チェーンは、具体的に、ＶＭ１の識別子-ＦＷ２のノード識別子-ＬＢ３のノード識別子-ＶＭ２の識別子である。
【０１１２】
ＶＭ１の識別子は、ＶＭ１のＩＰアドレス（ＩＰ１で表す）であり、ＶＭ２の識別子は、ＶＭ２のＩＰアドレス（ＩＰ２で表す）であると仮定する。ＦＷ２のノード識別子は、ＩＰ２１、ＩＰ２２であると仮定し、ＩＰ２１は、上記のアクセス経路のＦＷ２上のイングレスポートＰｏｒｔ２１の識別子（具体的には、イングレスポートのＩＰアドレスである）であり、ＩＰ２２は、上記のアクセス経路のＦＷ２上のイグレスポートＰｏｒｔ２２の識別子（具体的には、イグレスポートのＩＰアドレスである）である。ＬＢ３のノード識別子は、ＩＰ３１、ＩＰ３２である仮定し、ＩＰ３１は、上記のアクセス経路のＬＢ３上のイングレスポートＰｏｒｔ３１の識別子（具体的には、イングレスポートのＩＰアドレスである）であり、ＩＰ３２は、上記のアクセス経路のＬＢ３上のイグレスポートＰｏｒｔ３２の識別子である（具体的には、イグレスポートのＩＰアドレスである）。この場合、ＶＭ１がＶＭ２にアクセスするノード識別子チェーンは、ＩＰ１-ＩＰ２１-ＩＰ２２-ＩＰ３１-ＩＰ３２-ＩＰ２である。
【０１１３】
本実施例において、説明の便宜上、ここで、ＩＰ１-ＩＰ２１-ＩＰ２２-ＩＰ３１-ＩＰ３２-ＩＰ２を第１チェーンと略称する。予め第１チェーンをストリーム分類ノード３００及びプロキシ転送ノード３０１に配置する。
【０１１４】
ストリーム分類ノード３００は、第１チェーンの各ＩＰに対応する設備、即ち、ＶＭ１、ＦＷ２、ＬＢ３及びＶＭ２がいずれもオンラインになった後、第１ストリーム分類策略を取得して本ノードのハードウェアに発行する。プロキシ転送ノード３０１は、第１チェーンの各識別子に対応する設備、即ち、ＶＭ１、ＦＷ２、ＬＢ３及びＶＭ２がいずれもオンラインになった後、第２ストリーム分類策略を取得して本ノードのハードウェアに発行する。
【０１１５】
本実施例において、ＶＭ１がＶＭ２にアクセスするのに経由するプロキシ転送ノード３０１を選出して図４に支援す所示フロー実行すると仮定し、ストリーム分類ノード及びプロキシ転送ノード３０２も類似に選び出される。
【０１１６】
プロキシ転送ノード３０１は、第１チェーンの各ノード識別子に対応するサービスノード、即ち、ＦＷ２及びＬＢ３がオンラインになった後、第１チェーンの各ノード識別子に対応するサービスノード、即ち、ＦＷ２及びＬＢ３が故障したか否かを実時間で検出する。
【０１１７】
ＦＷ２、ＬＢ３が故障しなかった場合、ＶＭ１がＶＭ２にアクセスするデータストリームは、ストリーム分類ノード３００を経由する。ストリーム分類ノード３００は、第１ストリーム分類策略に基づいてデータストリームを第１チェーンの識別子でカプセル化し、第１チェーン識別子でカプセル化したデータストリームを第１チェーンにおける1つ目のノード識別子ＩＰ２１に対応するサービスノードＦＷ２に接続されるプロキシ転送ノード３０１にリダイレクトする。プロキシ転送ノード３０１は、ローカルＰＷポートを介して第１チェーン識別子でカプセル化したデータストリームを受信した時、データストリームをデカプセル化して第１チェーン識別子を取得し、第１チェーン識別子に基づいて、デカプセル化したデータストリームを第１チェーンにおける1つ目のノード識別子、即ち、ＩＰ２１に対応するサービスノード、即ち、ＦＷ２にリダイレクトする。ＦＷ２は、ローカルのＦＷサービス策略に基づいて、受信されたデータストリームにＦＷサービス処理を提供し、ローカルのポート、即ち、ＩＰ２２に対応するポートＰｏｒｔ２２を介して処理後のデータストリームを送信する。プロキシ転送ノード３０１は、ローカルのサービスノードポートＰｏｒｔ１_２２（第１チェーンにおけるＩＰ２２に対応するポートＰｏｒｔ２２に接続される）を介してデータストリームを受信し、第２ストリーム分類策略に基づいてデータストリームを第１チェーンにおけるＩＰ２２の次のノード識別子、即ち、ＩＰ３１に対応するサービスノード、即ち、ＬＢ３にリダイレクトする。ＬＢ３は、ローカルのＬＢサービス策略に基づいて、受信されたデータストリームにＬＢサービス処理を提供し、ローカルのポート、即ち、ＩＰ３２に対応するポートＰｏｒｔ３２を介して処理後のデータストリームを送信する。プロキシ転送ノード３０１は、ローカルのサービスノードポートＰｏｒｔ１_３２（第１チェーンにおけるＩＰ３２に対応するポートＰｏｒｔ３２に接続される）を介してデータストリームを受信し、第３ストリーム分類策略に基づいて、受信されたデータストリームをテールノードにより接続されたプロキシ転送ノード３０２にリダイレクトする。最終的に、プロキシ転送ノード３０２は、受信されたデータストリームをテールノードに送信する。即ち、ＶＭ１がＶＭ２にアクセスするデータストリームは、ＦＷサービス及びＬＢサービスを経て最終的にＶＭ２に到達する。
【０１１８】
プロキシ転送ノード３０１は、ＦＷ２が故障したことが検出された場合、ロード・バランシング原則に従ってＦＷ２の位置するＦＷサービスグループから一つの非故障であり且つ最も優先度の高いサービスノードを選択する。ここでは、ＦＷ１を例とする。
【０１１９】
プロキシ転送ノード３０１は、故障ＦＷ２と選択された非故障ＦＷ１とが同一ゲートウェイ設備に接続されたか否かを判断する。
【０１２０】
プロキシ転送ノード３０１は、ＦＷ２とＦＷ１とが同一ゲートウェイ設備に接続され且つ当該ゲートウェイ設備が本ノードであることを発見した場合、ローカルに記憶された第１チェーンにおけるＩＰ２１、ＩＰ２２をそれぞれＩＰ１１、ＩＰ１２に修正する。アップデート後の第１チェーンは、ＩＰ１-ＩＰ１１-ＩＰ１２-ＩＰ３１-ＩＰ３２-ＩＰ２である。同時に、プロキシ転送ノード３０１は、アップデート後の第１チェーンに基づいて、ローカルの故障ＦＷ２に関連付けられた第２ストリーム分類策略を自動的にアップデートする。アップデート後の第２ストリーム分類策略は、次の通りである。ＰＷポートを介してＶＭ１がＶＭ２にアクセスするデータストリームを受信した時、データストリームをデカプセル化して第１チェーン識別子を取得し、第１チェーン識別子に基づいてデカプセル化したデータストリームを第１チェーンにおける２つ目のノード識別子、即ち、ＩＰ１１に対応するサービスノード、即ち、ＦＷ１にリダイレクトする。ローカルのサービスノードポートＰｏｒｔ１_１２を介してＶＭ１がＶＭ２にアクセスするデータストリーム受信した時、データストリームを第１チェーンにおけるＩＰ１２の次のノード識別子、即ち、ＩＰ３１に対応するサービスノード、即ち、ＬＢ３にリダイレクトする。アップデート後の第２ストリーム分類策略に基づいて、最終的に、ＶＭ１がＶＭ２にアクセスするデータストリームの転送経路は、図６に示すようである。
【０１２１】
説明すべきことは、プロキシ転送ノード３０１は、ＦＷ２とＦＷ１とが同一ゲートウェイ設備に接続されたが、当該ゲートウェイ設備は本ノードではないことが発見された場合、ＦＷ２及びＦＷ１の両方ともによりアクセスされたゲートウェイ設備が第１チェーンにおけるＩＰ２１、ＩＰ２２をそれぞれＩＰ１１、ＩＰ１２に修正するようにトリガーする。具体的に、当該トリガー例は、次の通りである。アップデート通知を故障サービスノード及び非故障サービスノードの両方ともによりアクセスされたゲートウェイ設備に送信し、アップデート通知は、ローカルに既に記憶された第１チェーンにおけるＩＰ２１、ＩＰ２２をそれぞれＩＰ１１、ＩＰ１２に修正するために用いられる。ＦＷ２及びＦＷ１の両方ともによりアクセスされたゲートウェイ設備は、アップデート後の第１チェーンに基づいて、アップデート後の第１チェーンに関連付けられたストリーム分類策略を自動的に取得して発行する（上記のプロキシ転送ノード３０１によるストリーム分類策略の発行に類似しており、繰り返し説明しない）。
【０１２２】
さらに説明すべきことは、プロキシ転送ノード３０１は、ＦＷ２とＦＷ１とが異なるゲートウェイ設備に接続されたことが発見された場合、ＦＷ１によりアクセスされたゲートウェイ設備（プロキシ転送ノード３０３で表す、図面に未図示）が第１チェーンを記憶した時、プロキシ転送ノード３０３が、既に記憶された第１チェーンにおける故障ＦＷ２のノード識別子ＩＰ２１、ＩＰ２２をＦＷ１のノード識別子ＩＰ１１、ＩＰ１２に修正するようにトリガーし、プロキシ転送ノード３０３が第１チェーンを記憶しなかった時、第１チェーンの故障ＦＷ２のノード識別子ＩＰ２１、ＩＰ２２をＦＷ１のノード識別子ＩＰ１１、ＩＰ１２に修正し、アップデート後の第１チェーンをプロキシ転送ノード３０３に送信して記憶する。プロキシ転送ノード３０３は、アップデート後の第１チェーンに基づいて、ＦＷ１に関連付けられたストリーム分類策略を自動的に取得して発行する（上記のプロキシ転送ノード１によるストリーム分類策略の発行に類似しており、繰り返し説明しない）。
【０１２３】
また、プロキシ転送ノード３０１は、第１チェーンのＦＷ２の直前ホップ及び次ホップを確定する。プロキシ転送ノード３０１は、直前ホップがヘッドノードのノード識別子ＩＰ１であり、次ホップがテールノードのノード識別子ＩＰ２ではなく、ＬＢ３に対応するノード識別子（ＩＰ３１、ＩＰ３２）であることを発見した場合、一方では、次ホップ（ＩＰ３１、ＩＰ３２）によりアクセスされたゲートウェイ設備（ここで、プロキシ転送ノード３０１を例とする）がローカルに記憶された第１チェーンにおける故障ＦＷ２のノード識別子ＩＰ２１、ＩＰ２２をＦＷ１のノード識別子ＩＰ１１、ＩＰ１２に修正するようにトリガーし、他方では、ストリーム分類ノード３００に第１チェーンの故障ＦＷ２に対応するノード識別子ＩＰ２１、ＩＰ２２をＦＷ１に対応するノード識別子ＩＰ１１、ＩＰ１２に修正するように通知する。プロキシ転送ノード３０１は、アップデート後の第１チェーンに基づいて、ローカルの故障ＦＷ２に関連付けられた第２ストリーム分類策略を自動的にアップデートするが、具体的には、上記の通りである。ストリーム分類ノード３００は、第１チェーンの故障ＦＷ２に対応するノード識別子ＩＰ２１、ＩＰ２２をＦＷ１に対応するノード識別子ＩＰ１１、ＩＰ１２に修正した後、さらに、第１ストリーム分類策略をアップデートする。アップデート後の第１ストリーム分類策略は、次の通りである。ＶＭ１がＶＭ２にアクセスするデータストリームを第１チェーンの識別子でカプセル化し、第１チェーンにおける1つ目のノード識別子、即ち、ＩＰ１１に対応するサービスノード、即ち、ＦＷ１に接続されたプロキシ転送ノードにリダイレクトする。
【０１２４】
その後、プロキシ転送ノード３０１は、アップデート後の第１チェーンにおける各ノード識別子に対応するサービスノード、即ち、ＦＷ１、ＬＢ３が故障したか否かを検出する。
【０１２５】
プロキシ転送ノード３０１は、ＬＢ３が故障したことが検出された場合、、ロード・バランシング原則に従ってＬＢ３の位置するＬＢサービスグループから非故障であり且つ最も優先度の高いサービスノードを選択するが、ここでは、ＬＢ２を例とする。
【０１２６】
プロキシ転送ノード３０１は、故障ＬＢ３と非故障ＬＢ２とが同一ゲートウェイ設備に接続され且つ当該ゲートウェイ設備が本ノードであることを発見した場合、直接ローカルに記憶された第１チェーンの故障ＬＢ３に対応するノード識別子ＩＰ３１、ＩＰ３２をＬＢ２に対応するノード識別子ＩＰ２２１、ＩＰ２２２に修正する。アップデート後の第１チェーンは、ＩＰ１-ＩＰ１１-ＩＰ１２-ＩＰ２２１-ＩＰ２２２-ＩＰ２である。同時に、プロキシ転送ノード３０１は、ローカルの故障ＬＢ３に関連付けられたストリーム分類策略をアップデートする。アップデート後のストリーム分類策略は、次の通りである。ローカルのサービスノードポートＰｏｒｔ１_１２を介してＶＭ１がＶＭ２にアクセスするデータストリームを受信した時、データストリームを第１チェーンにおけるＩＰ１２の次のノード識別子、即ち、ＩＰ２２１に対応するサービスノード、即ち、ＬＢ２にリダイレクトする。ローカルのサービスノードポートＰｏｒｔ１_２２２を介してＶＭ１がＶＭ２にアクセスするデータストリームを受信した時、データストリームを第１チェーンにおけるテールノード識別子ＩＰ２に接続されるプロキシ転送ノード、即ち、プロキシ転送ノード３０２にリダイレクトする。最終的に、プロキシ転送ノード３０２は、ＶＭ１がＶＭ２にアクセスするデータストリームをＶＭ２に送信する。アップデート後のストリーム分類策略に基づいて、ＶＭ１がＶＭ２にアクセスするデータストリームの経路は、図７に示す通りである。
【０１２７】
説明すべきことは、故障ＬＢ３と非故障ＬＢ２とが同一ゲートウェイ設備に接続されたが、当該ゲートウェイ設備は本ノードではない場合、プロキシ転送ノード３０１は、故障ＬＢ３及び非故障ＬＢ２の両方ともによりアクセスされたゲートウェイ設備が第１チェーンの故障ＬＢ３に対応するノード識別子ＩＰ３１、ＩＰ３２をＬＢ２に対応するノード識別子ＩＰ２２１、ＩＰ２２２に修正するようにトリガーする。故障ＬＢ３及び非故障ＬＢ２の両方ともによりアクセスされたゲートウェイ設備は、アップデート後の第１チェーンに基づいて、アップデート後の第１チェーンに関連付けられたストリーム分類策略を自動的に取得して発行する（上記のプロキシ転送ノード３０１によるストリーム分類策略の発行に類似しており、繰り返し説明しない）。
【０１２８】
さらに説明すべきことは、プロキシ転送ノード３０１は、故障ＬＢ３と非故障ＬＢ２とが異なるゲートウェイ設備に接続されたことが発見された場合、ＬＢ２によりアクセスされたゲートウェイ設備（プロキシ転送ノード３０４で表し、図面に未図示）が第１チェーンを記憶した時、プロキシ転送ノード３０４が、既に記憶された第１チェーンにおける故障ＬＢ３のノード識別子ＩＰ３１、ＩＰ３２をＬＢ２に対応するノード識別子ＩＰ２２１、ＩＰ２２２に修正することをトリガーし、プロキシ転送ノード３０４が第１チェーンを記憶しなかった時、第１チェーンの故障ＬＢ３に対応するノード識別子ＩＰ３１、ＩＰ３２をＬＢ２に対応するノード識別子ＩＰ２２１、ＩＰ２２２に修正し、アップデート後の第１チェーンをプロキシ転送ノード３０４に送信して記憶する。同時に、プロキシ転送ノード３０４は、アップデート後の第１チェーンに基づいてＦＷ２に関連付けられたストリーム分類策略を自動的に取得して発行する（上記のプロキシ転送ノード３０１によるストリーム分類策略の発行に類似しており、繰り返し説明しない）。最終的には、ＶＭ１がＶＭ２にアクセスするデータストリームがアップデート後の第１チェーン（ＩＰ１-ＩＰ１１-ＩＰ１２-ＩＰ２２１-ＩＰ２２２-ＩＰ２）に従って転送されることを保証する。
【０１２９】
また、プロキシ転送ノード３０１は、第１チェーンのＬＢ３の直前ホップ及び次ホップを確定する。プロキシ転送ノード３０１は、次ホップはテールノードのノード識別子ＩＰ２であり且つ直前ホップはＦＷ１に対応するノード識別子ＩＰ１１、ＩＰ１２であることを発見した場合、直前ホップ、即ち、ＦＷ１に対応するノード識別子（ＩＰ１１、ＩＰ１２）にアクセスされたゲートウェイ設備（ここで、プロキシ転送ノード３０１を例とする）のローカルの第１チェーンの故障ＬＢ３に対応するノード識別子ＩＰ３１、ＩＰ３２のみをＬＢ２に対応するノード識別子ＩＰ２２１、ＩＰ２２２に修正する。プロキシ転送ノード３０１は、ローカルのアップデート後の第１チェーンに関連付けられたストリーム分類策略を自動的にアップデートする。
【０１３０】
本開示例において、ノード識別子チェーンのノード識別子に対応するサービスノードが故障した時、適時に当該ノード識別子チェーンの故障サービスノードのノード識別子を故障サービスノードの位置するサービスグループにおける一つの非故障バックアップサービスノードのノード識別子にアップデートし、最終的に、ヘッドノードがテールノードにアクセスするデータストリームが故障サービスノードからバックアップサービスノードに切り替わってネットワークサービス処理を行うように制御し、ネットワークサービスの連続性を保証する。
【０１３１】
以上、本開示が提供する方法を説明した。以下、本開示が提供する装置を説明する。
【０１３２】
図８を参照すると、図８は、本開示が提供するゲートウェイ設備のハードウェア構造図である。図８に示すように、当該ゲートウェイ設備は、
【０１３３】
プロセッサ８０１と、機械実行可能命令が記憶された機械可読記憶媒体８０２とを含む。プロセッサ８０１と、機械可読記憶媒体８０２とは、システムバス８０３を介して通信する。また、機械可読記憶媒体８０２におけるデータストリーム処理論理に対応する機械実行可能命令を読み取って実行することにより、プロセッサ８０１は、上記のデータストリームの処理方法を実行する。
【０１３４】
本文で言及される機械可読記憶媒体８０２は、いかなる電子、磁気、光学又は他の物理的な記憶装置であり、例えば、実行可能命令、データ等の情報を格納又は記憶する。例えば、機械可読記憶媒体は、ＲＡＭ（Ｒａｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、ランダムアクセスメモリ）、揮発性メモリ、不揮発性メモリ、フラッシュメモリ、記憶ドライブ（例えば、ハードディスクドライバ）、ソリッドステートドライブ、いかなる類型の記憶ディスク（例えば、コンパクトディスク、ｄｖｄ等）、或いは、類似した記憶媒体又はそれらの組み合わせである。
【０１３５】
図９に示すように、機能的に分けて、上記のデータストリーム処理論理は、
ヘッドノードのノード識別子と、ヘッドノードがテールノードにアクセスするのに順次に経由する一つ又は複数のサービスノードのノード識別子と、テールノードのノード識別子とを含むノード識別子チェーンの各ノード識別子に対応するノードがオンラインになったか否かを検知するための検知ユニット９０１と、
検知ユニット９０１により、各ノード識別子に対応するノードがオンラインになったことが検知された場合、前記ゲートウェイ設備がヘッドノードによりアクセスされたゲートウェイ設備である時、前記ノード識別子チェーンに関連付けられた第１ストリーム分類策略を本設備のハードウェアに発行し、ヘッドノードがテールノードにアクセスするデータストリームを受信した時、第１ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送し、前記ゲートウェイ設備が前記サービスノードによりアクセスされたゲートウェイ設備である時、前記ノード識別子チェーンに関連付けられた第２ストリーム分類策略を本設備のハードウェアに発行し、ヘッドノードがテールノードにアクセスするデータストリームを受信した時、第２ストリーム分類策略に基づいて、前記データストリームを前記ノード識別子チェーンに従って転送するための制御ユニット９０２と、
を含む。
【０１３６】
一例において、前記第１ストリーム分類策略又は第２ストリーム分類策略は、予め本設備のソフトウェアレイヤに配置されているか、或いは、
【０１３７】
前記第１ストリーム分類策略又は第２ストリーム分類策略は、予めソフトウェア・デファインド・ネットワークＳＤＮコントローラから取得されて本設備のソフトウェアレイヤに記憶される。
【０１３８】
一例において、制御ユニット９０２が第１ストリーム分類策略に基づいて、前記データストリームをノード識別子チェーンに従って転送するステップは、
ローカルで前記データストリームにマッチングする前記ノード識別子チェーンを検索するステップと、
前記データストリームを前記ノード識別子チェーンの識別子でカプセル化するステップと、
ノード識別子チェーンの識別子でカプセル化したデータストリームを、前記ノード識別子チェーンの２つ目のノード識別子に対応するサービスノードによりアクセスされたという条件を満たす第２ゲートウェイ設備にリダイレクトするステップと、
を含む。
【０１３９】
一例において、前記制御ユニット９０２が第２ストリーム分類策略に基づいて、前記データストリームをノード識別子チェーンに転送するステップは、
ローカルの擬似ワイヤＰＷポートを介して前記データストリームを受信した時、ローカルでデータストリームに追加されたノード識別子チェーンの識別子に対応する前記ノード識別子チェーンを見つけ、データストリームをデカプセル化し、デカプセル化後のデータストリームを前記ノード識別子チェーンにおける２つ目のノード識別子に対応するサービスノードに送信するステップと、
ローカルのサービスノードに接続されるサービスポートを介して前記データストリームを受信した時、ローカルで前記データストリームにマッチングする前記ノード識別子チェーンを見つけ、前記ノード識別子チェーンに基いて次ホップ識別子を確定し、前記次ホップ識別子がテールノードのノード識別子である場合、データストリームを前記テールノードによりアクセスされたゲートウェイ設備にリダイレクトし、そうでない場合、データストリームを次ホップ識別子に対応するサービスノードに送信するステップと、を含み、
前記次ホップは、前記ノード識別子チェーンの現在サービスノード識別子の次のノード識別子であり、前記現在サービスノード識別子は、前記サービスポートに接続されたサービスノードの識別子である。
【０１４０】
一例において、データストリームをノード識別子チェーンの識別子でカプセル化するステップは、
データストリームにＶＸＬＡＮカプセル化ヘッダを追加するステップを含み、
前記ＶＸＬＡＮカプセル化ヘッダのうち一つの予約フィールドは、ノード識別子チェーンの識別子をキャリーする。
【０１４１】
図１０に示すように、機能的に分けて、上記のデータストリーム処理論理は、
ノード識別子チェーンにおけるノード識別子に対応するサービスノードが故障したか否かを確定するための確定ユニット１００１を更に含み、
各々のサービスノードは、相応するサービスグループに属し、各々のサービスグループは、少なくとも一つの非故障バックアップサービスノードを更に含む。
【０１４２】
前記制御ユニット９０２は、現在記確定ユニット１００１により故障が検出された時、故障サービスノードの所属するサービスグループから一つの非故障バックアップサービスノードを選択し、前記ノード識別子チェーンにおける前記故障サービスノードに対応するノード識別子を前記バックアップサービスノードに対応するノード識別子にアップデートし、ヘッドノードがテールノードにアクセスするデータストリームが前記故障サービスノードから前記バックアップサービスノードに切り替わってネットワークサービス処理を行うように制御するために用いられる。
【０１４３】
一例において、前記制御ユニット９０２がノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするステップは、
前記故障サービスノードと前記バックアップサービスノードとが同一ゲートウェイ設備にアクセスしたか否かを判断するステップと、
そうである場合、前記故障サービスノード及び前記バックアップサービスノードの両方ともによりアクセスされたゲートウェイ設備が前記ノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするようにトリガーするステップと、
そうでない場合、前記バックアップサービスノードによりアクセスされたゲートウェイ設備及び前記故障サービスノードに関連付けられたゲートウェイ設備が前記ノード識別子チェーンにおける故障サービスノードに対応するノード識別子をバックアップサービスノードに対応するノード識別子にアップデートするように制御するステップと、
を含む。
【０１４４】
一例において、前記制御ユニット９０２は、
ノード識別子チェーンに基づいて前記故障サービスノードの直前ホップ及び次ホップを確定するステップと、
前記直前ホップが前記ヘッドノードであり且つ前記次ホップが前記テールノードである時、故障サービスノードに関連付けられたゲートウェイ設備は、前記ヘッドノードによりアクセスされたゲートウェイ設備であると確定するステップと、
前記直前ホップが前記ヘッドノードであり且つ前記次ホップがサービスノードである時、故障サービスノードに関連付けられたゲートウェイ設備は、前記ヘッドノードによりアクセスされたゲートウェイ設備及び前記次ホップによりアクセスされたゲートウェイ設備であると確定するステップと、
前記次ホップが前記テールノードであり且つ前記直前ホップがサービスノードである時、前記故障サービスノードに関連付けられたゲートウェイ設備は、前記直前ホップによりアクセスされたゲートウェイ設備であると確定するステップと、
を通じて前記故障サービスノードに関連付けられたゲートウェイ設備を確定する。
【０１４５】
一例において、前記ゲートウェイ設備は、前記ノード識別子チェーンの各ノード識別子に対応するノードによりアクセスされたゲートウェイ設備から選び出されたものである。
【０１４６】
一例において、同一サービスグループにおける異なるサービスノードは、異なる優先度を有し、
故障サービスノードの所属するサービスグループから一つのバックアップサービスノードを選択するステップは、
ロード・バランシング原則に従って、故障サービスノードの所属するサービスグループから一つの非故障であり且つ最も優先度の高いバックアップサービスノードを選択するステップを含む。
【０１４７】
上記のものは、単に本開示の好ましい実施例であり、本開示を制限するために用いられない。本開示の精神及び原則の範囲内でなされるいかなる修正、均等物による置換、改善等は、全て本開示の保護の範囲内に含まれるべきである。
【図１】
2019526207.tif 000003
【図２】
2019526207.tif 000004
【図３】
2019526207.tif 000005
【図４】
2019526207.tif 000006
【図５】
2019526207.tif 000007
【図６】
2019526207.tif 000008
【図７】
2019526207.tif 000009
【図８】
2019526207.tif 000010
【図９】
2019526207.tif 000011
【図１０】
2019526207.tif 000012
【国際調査報告】
2019526207.tif 000013
2019526207.tif 000014
2019526207.tif 000015
2019526207.tif 000016