(57)【特許請求の範囲】
【請求項１】
ノード装置上で動作するノードスリバと、リンク装置上で動作するリンクスリバとによって構成される仮想ネットワークにおけるノード装置であって、
ノードスリバ間で通信するときの仮想ポートに設けられた、障害を記録するための障害記録部と、
他のリンク装置または他のノード装置、もしくは該他のリンク装置または該他のノード装置に直接接続された装置から、障害が発生した旨の通知を受信することによって、ノードスリバ間の通信における障害を検出し、障害が検出された場合、障害が発生したことを示す識別情報を前記障害記録部に書き込む監視部と、
を有するノード装置。
【請求項２】
ノードスリバ上で動作し、障害が発生したことを示す識別情報が前記障害記録部に書き込まれたことを検知する障害検知部を更に有する、請求項１に記載のノード装置。
【請求項３】
前記監視部は、物理ポートの障害を監視し、障害が発生した物理ポートに対応する仮想ポートの前記障害記録部に、障害が発生したことを示す識別情報を書き込む、請求項１又は２に記載のノード装置。
【請求項４】
ノード装置上で動作するノードスリバと、リンク装置上で動作するリンクスリバとによって構成される仮想ネットワークにおける障害検出方法であって、
ノードスリバ間で通信するときの仮想ポートに、障害を記録するための障害記録部を設けるステップと、
他のリンク装置または他のノード装置、もしくは該他のリンク装置または該他のノード装置に直接接続された装置から、障害が発生した旨の通知を受信することによって、ノードスリバ間の通信における障害を検出し、障害が検出された場合、障害が発生したことを示す識別情報を前記障害記録部に書き込むステップと、
を有する障害検出方法。
【請求項５】
コンピュータを請求項１乃至３のうちいずれか１項に記載のノード装置を構成する各手段として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノード装置、障害検出方法及びプログラムに関する。
【背景技術】
【０００２】
ネットワークサービスやアプリケーションの利用拡大により、ネットワークの利用形態が拡大している。このため、品質、トラヒック、セキュリティ等が異なるサービスを共通のインフラストラクチャで提供できるネットワーク仮想化が注目されている（非特許文献１、２参照）。
【０００３】
ネットワーク仮想化では、リンク資源だけでなく、ノード上の計算資源やストレージ資源も含むインフラストラクチャ全体の資源が仮想化される。例えば、ルータやスイッチは、ＣＰＵ（Central Processing Unit）やメモリを計算資源やストレージ資源として保持する一種の計算機とみなされる。このような資源を「スライス」と呼ばれる論理的に生成される仮想ネットワークに分離し、ユーザ又はアプリケーションは、ネットワークインフラストラクチャを直接利用するのではなく、スライスを利用する形態をとる。
【０００４】
スライスは、リンクスリバ（仮想リンク）、ノードスリバ（仮想ノード）及びインタフェースの集合体として考えられる。リンクスリバを生成管理するリダイレクタは、一般的にルータやスイッチのようなネットワーク機器により構成され、ノードスリバを生成管理するプログラマは、一般的にパーソナルコンピュータやワークステーションのようなコンピュータ機器により構成される。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】山本猛仁、滝澤允、高橋紀之、中尾彰宏、"スライス提供を考慮した仮想化ネットワークの管理モデル"、電子情報通信学会ソサイエティ大会、２０１０
【非特許文献２】中尾彰宏、"新世代ネットワーク構想におけるネットワーク仮想化"、電子情報通信学会誌、Ｖｏｌ．９４、Ｎｏ．５、ｐｐ．３８５−３９０、２０１１
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１及び２の技術は、スライスのリンクリソースであるリンクスリバに障害が生じた際に、ノードリソースであるノードスリバ上で動作するソフトウェアプログラムがこれを短時間で検知することができない。
【０００７】
例えば、ノードスリバ上で動作するソフトウェアプログラムは、通信のタイムアウトなど間接的な方式で障害を検出することができるが、誤検出や検出に時間がかかる等の問題がある。
【０００８】
本発明は、ノードスリバと、リンクスリバとによって構成される仮想ネットワークにおいて、ノードスリバ間の通信における障害の検知に要する時間を短縮することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一形態に係るノード装置は、
ノード装置上で動作するノードスリバと、リンク装置上で動作するリンクスリバとによって構成される仮想ネットワークにおけるノード装置であって、
ノードスリバ間で通信するときの仮想ポートに設けられた、障害を記録するための障害記録部と、
他のリンク装置または他のノード装置、もしくは該他のリンク装置または該他のノード装置に直接接続された装置から、障害が発生した旨の通知を受信することによって、ノードスリバ間の通信における障害を検出し、障害が検出された場合、障害が発生したことを示す識別情報を前記障害記録部に書き込む監視部と、
を有することを特徴とする。
【００１０】
また、本発明の一形態に係る障害検知方法は、
ノード装置上で動作するノードスリバと、リンク装置上で動作するリンクスリバとによって構成される仮想ネットワークにおける障害検出方法であって、
ノードスリバ間で通信するときの仮想ポートに、障害を記録するための障害記録部を設けるステップと、
他のリンク装置または他のノード装置、もしくは該他のリンク装置または該他のノード装置に直接接続された装置から、障害が発生した旨の通知を受信することによって、ノードスリバ間の通信における障害を検出し、障害が検出された場合、障害が発生したことを示す識別情報を前記障害記録部に書き込むステップと、
を有することを特徴とする。
【００１１】
また、本発明の一形態に係るプログラムは、
コンピュータを上記のノード装置を構成する各手段として機能させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、ノードスリバと、リンクスリバとによって構成される仮想ネットワークにおいて、ノードスリバ間の通信における障害の検知に要する時間を短縮することが可能になる。
【図面の簡単な説明】
【００１３】
【図１】仮想ネットワークにおけるスライスの概念図
【図２】本発明の実施例に係るネットワークシステムの構成図
【図３】本発明の実施例に係るネットワークシステムにおいて障害を検出する方法を示すフローチャート
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施例について説明する。
【００１５】
本発明の実施例では、仮想ネットワークにおける障害検知について説明する。図１に、仮想ネットワークにおけるスライスの概念図を示す。
【００１６】
スライスは、ネットワークインフラストラクチャ上に論理的に生成される仮想ネットワークである。スライスは、仮想リンクであるリンクスリバと、仮想ノードであるノードスリバとによって構成される。また、ノードスリバとリンクスリバとはインタフェースによって接続される。
【００１７】
リンクスリバは、一般的にルータやスイッチのようなリンク装置上で動作し、ノードスリバは、一般的にパーソナルコンピュータやワークステーションのようなノード装置上で動作する。リンクスリバを実現する要素技術はリダイレクタ（Ｒ）と呼ばれ、ノードスリバを実現する要素技術はプログラマ（Ｐ）と呼ばれる。
【００１８】
ネットワークにおいて障害が発生した場合、ルータやスイッチのような物理的なノード装置で障害を検知することができる。一方、ノードスリバと、リンクスリバとによって構成される仮想ネットワークにおいて、ノードスリバ間の通信に障害が発生した場合、物理的なノード装置における障害の検知では、どのスライスに障害が発生しているのかを判断することができない。
【００１９】
このため、本発明の実施例では、ノードスリバ間で通信するときの仮想ポートに、障害を記録するための障害記録部を設け、ノードスリバ間の通信における障害が検出された場合、障害が発生したことを示す識別情報を障害記録部に書き込む。そして、ノードスリバ上で動作するソフトウェアプログラムが、障害記録部に書き込まれた識別情報により、ノードスリバ間の障害を短時間で検知可能にする。
【００２０】
図２は、本発明の実施例に係るネットワークシステムの構成図である。本発明の実施例に係るネットワークシステムは、物理的なネットワークインフラストラクチャとして、物理的なノード装置（物理ノード装置＃１及び＃２）１００と、物理的なリンク装置２００とによって構成される。実際のネットワークシステムには、複数のノード装置１００と複数のリンク装置２００が含まれるが、以下の説明では、１つのノード装置（物理ノード装置＃１）１００及び１つのリンク装置２００に着目して説明する。
【００２１】
ノード装置１００及びリンク装置２００は、ＣＰＵ（Central Processing Unit）やメモリを計算資源やストレージ資源として保持する一種の計算機としてみなされてもよい。ノード装置１００及びリンク装置２００の機能及び処理は、メモリ等に格納されているデータやプログラムをＣＰＵが実行することによって実現される。
【００２２】
ノード装置１００及びリンク装置２００は、それぞれ物理ポートを介して接続されており、それぞれの物理ポートにおける障害を監視する監視部１２０及び２２０を有する。
【００２３】
一方、仮想ネットワークであるスライスは、ノード装置１００上で動作するノードスリバ１１０と、リンク装置２００上で動作するリンクスリバ２１０によって構成される。１つのスライスは、物理ノード装置＃１及び＃２上で動作するノードスリバ１１０と、物理リンク装置上で動作するリンクスリバ２１０との組み合わせによって構成される。複数のスライスが構成される場合、複数のノードスリバ及び複数のリンクスリバが生成される。
【００２４】
ノードスリバ１１０は、ノードスリバ上で動作してスライスにおける通信サービスを提供するためのソフトウェアプログラム１１１と、ノードスリバ間で通信するための仮想的なネットワークインタフェースである仮想ポート１１２とを含む。仮想ポート１１２は、ノード装置１００の１つの物理ポートに関連付けられる。
【００２５】
本発明の実施例では、仮想ポート１１２に、障害を記録するための障害記録部１１３を設ける。監視部１２０は、ノードスリバ間の通信における障害を検出し、障害が検出された場合、障害が発生したことを示す識別情報を障害記録部１１３に書き込む。
【００２６】
このようにすることで、ソフトウェアプログラム１１１は、障害が発生したことを示す識別情報が障害記録部１１３に書き込まれたことを、例えばＣＰＵ割り込みによって短時間で検知することが可能になる。なお、障害が発生したことを示す識別情報が障害記録部１１３に書き込まれたことを検知するための障害検知部（図示せず）は、ソフトウェアプログラム１１１内に存在してもよく、ソフトウェアプログラム１１１とは別の機能部として設けられてもよい。
【００２７】
図３を参照して、より具体的な障害検出方法について説明する。図３は、本発明の実施例に係るネットワークシステムにおいて障害を検出する方法を示すフローチャートである。
【００２８】
まず、スライスの生成に伴い、仮想ポート１１２に、障害を記録するための障害記録部１１３が設けられる（ステップＳ１０１）。
【００２９】
次に、監視部１２０は、ノードスリバ間の通信における障害を検出する（ステップＳ１０２）。例えば、監視部１２０は、スライス毎に送信される所定のパケットを監視し、所定のパケットが予め指定した時間内に受信されない場合、ノードスリバ間の通信に障害が発生したことを検出する。より具体的には、ノード装置１００の監視部１２０とリンク装置２００の監視部２２０のそれぞれは、スライス毎にＯＡＭ（Operations, Administration, Maintenance）信号として、例えば、ＣＣ（Continuity check）パケットを送受信する。ＣＣパケットは、例えば、3msec間隔で送信される。そして、物理ノード装置１００の監視部１２０は、ＣＣパケットが予め指定した時間内（例えば最後に到着したＣＣパケットから9msecの時間内等）に到着しない場合、ノードスリバ間の通信に障害が発生したことを検出する。
【００３０】
例えば、監視部１２０は、Ethernet（登録商標）デバイス等の既存の故障検出の仕組みによって物理ポートの障害を監視してもよい。また、例えば、監視部１２０は、他のリンク装置２００の監視部２２０や他のノード装置の監視部から障害が発生したという通知を受信することにより、物理ポートの障害を監視してもよい。
【００３１】
監視部１２０は、ノードスリバ間の通信に障害が発生したことを検出した場合、障害が発生したことを示す識別情報を障害記録部１１３に書き込む（ステップＳ１０３）。例えば、監視部１２０は、スライス毎に送信される所定のパケットが予め指定した時間内に受信されないことにより障害が発生したことを検出した場合、該当するスライスに対応する仮想ポートの障害記録部１１３に、障害が発生したことを示す識別情報を書き込む。また、監視部１２０は、物理ポートの障害を検出した場合、障害が発生した物理ポートに対応する仮想ポートの障害記録部１１３に、障害が発生したことを示す識別情報を書き込む。例えば、障害記録部１１３の所定のビットを０から１に書き換えてもよい。
【００３２】
そして、ソフトウェアプログラム１１１の障害検知部又はソフトウェアプログラム１１１とは別の障害検知部は、障害が発生したことを示す識別情報が障害記録部１１３に書き込まれたことを検知する（ステップＳ１０４）。例えば、仮想ポートの障害記録部１１３に障害が発生したことを示す識別情報が書き込まれたことを、ＣＰＵ割り込み等によって短時間で検知する。
【００３３】
以上のように、本発明の実施例によれば、ノードスリバと、リンクスリバとによって構成される仮想ネットワークにおいて、ノードスリバ間の通信における障害の検知に要する時間を短縮することが可能になる。
【００３４】
従来は、ノードスリバ間の通信に障害が発生したことをノードスリバ上で動作するソフトウェアプログラムが検知する情報伝達路がなく、ソフトウェアプログラムは、例えば、ソフトウェアプログラムの通信のタイムアウトなど間接的な方式で障害を検出していたため、誤検出や検出に時間がかかるなど問題がある。しかし、本発明の実施例では、故障が発生した装置や故障が発生した装置に直接接続された装置が検出した結果をソフトウェアプログラムがＣＰＵ割り込みなどによって短時間に検知可能な仮想ポートの障害記録部に書き込むため、誤検出なく従来に比べて短時間でソフトウェアプログラムがノードスリバ間の通信に障害が発生したことを検知できる。
【００３５】
例えば、ＣＣパケットによって9msec程度で障害が検出できる場合には、障害が発生したことを通知するメッセージの到着までにかかる時間を合わせても数十msec以内でソフトウェアプログラム１１１が障害を検知できるようになる。
【００３６】
例えば、既存の専用線サービスのサービス品質保証制度においては、中継回線が異経路冗長構成をとり、稼動系に障害が発生した際に待機系への切替時間として50msec以内であることを保証するものがあるが、そのような切替時間もノードスリバ上で動作するソフトウェアプログラムによって実現可能である。
【００３７】
説明の便宜上、本発明の実施例に係るノード装置及びリンク装置は機能的なブロック図を用いて説明しているが、本発明の実施例に係るノード装置及びリンク装置は、ハードウェア、ソフトウェア又はそれらの組み合わせで実現されてもよい。例えば、本発明の実施例は、コンピュータに対して本発明の実施例に係るノード装置及びリンク装置の各機能を実現させるプログラム、コンピュータに対して本発明の実施例に係る方法の各手順を実行させるプログラム等により、実現されてもよい。また、各機能部が必要に応じて組み合わせて使用されてもよい。また、本発明の実施例に係る方法は、実施例に示す順序と異なる順序で実施されてもよい。
【００３８】
以上、ノードスリバと、リンクスリバとによって構成される仮想ネットワークにおいて、ノードスリバ間の通信における障害の検知に要する時間を短縮するための手法について説明したが、本発明は、上記の実施例に限定されることなく、特許請求の範囲内において、種々の変更・応用が可能である。
【符号の説明】
【００３９】
１００  ノード装置
１１０  ノードスリバ
１１１  ソフトウェアプログラム
１１２  仮想ポート
１１３  障害記録部
１２０  監視部
２００  リンク装置
２１０  リンクスリバ
２２０  監視部
【要約】
【課題】ノードスリバと、リンクスリバとによって構成される仮想ネットワークにおいて、ノードスリバ間の通信における障害の検知に要する時間を短縮することを目的とする。
【解決手段】ノード装置上で動作するノードスリバと、リンク装置上で動作するリンクスリバとによって構成される仮想ネットワークにおけるノード装置は、ノードスリバ間で通信するときの仮想ポートに設けられた、障害を記録するための障害記録部と、ノードスリバ間の通信における障害を検出し、障害が検出された場合、障害が発生したことを示す識別情報を前記障害記録部に書き込む監視部とを有する。
【選択図】図２【図１】
0005890545.tif 000002
【図２】
0005890545.tif 000003
【図３】
0005890545.tif 000004