(57)【要約】      （修正有）【課題】ＮＦ（Network  Function）を互いに接続したネットワークシステムの構成変更に要する手順を削減すること。【解決手段】ネットワークシステムは、スイッチ及びスイッチに接続されたネットワーク機器を有する機能グループを互いに接続したものである。構成変更が行われた場合、機能グループは、構成変更の際に行われた設定にしたがってアップリンク方向のパケットのルーティングを行うことができる。また、構成変更が行われた場合、機能グループは、アップリンク方向のパケットのヘッダ情報を記憶し、当該記憶したヘッダ情報を基にアップリンク方向と異なるダウンリンク方向のパケットのルーティングを行う自動ルーティング機能により第２の方向のパケットのルーティングを行う。【選択図】図１
2020136742.tif 000002
【特許請求の範囲】
【請求項１】
スイッチ及び前記スイッチに接続されたネットワーク機器を有する機能グループを互いに接続したネットワークシステムにおける通信を制御する通信制御方法であって、
前記スイッチは、
前記ネットワークシステムの構成変更が行われた場合、
構成変更の際に行われた設定にしたがって第１の方向のパケットのルーティングを行い、
前記第１の方向のパケットのヘッダ情報を記憶し、当該記憶したヘッダ情報を基に前記第１の方向と異なる第２の方向のパケットのルーティングを行う自動ルーティング機能により前記第２の方向のパケットのルーティングを行うことを特徴とする通信制御方法。
【請求項２】
前記スイッチは、
前記ネットワークシステムに第１の機能グループを追加する構成変更が行われた場合、
前記第１の機能グループ及び前記第１の機能グループの前記第２の方向にある機能グループから前記第１の方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行い、
前記第１の機能グループ及び前記第１の機能グループの前記第１の方向にある機能グループから前記第２の方向に送信されるパケットのルーティングを前記自動ルーティング機能により行うことを特徴とする請求項１に記載の通信制御方法。
【請求項３】
前記スイッチは、
前記ネットワークシステムから第１の機能グループを削除する構成変更が行われた場合、
前記第１の機能グループの前記第２の方向にあった機能グループから前記第１の方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行い、
前記第１の機能グループの前記第１の方向にあった機能グループから前記第２の方向に送信されるパケットのルーティングを前記自動ルーティング機能により行うことを特徴とする請求項１に記載の通信制御方法。
【請求項４】
前記スイッチは、前記ネットワークシステムの第１の機能グループに第１のネットワーク機器を追加する構成変更が行われた場合、
前記第１のネットワーク機器及び前記第１の機能グループの前記第２の方向にある機能グループから前記第１の方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行い、
前記第１のネットワーク機器及び前記第１の機能グループの前記第１の方向にある機能グループから前記第２の方向に送信されるパケットのルーティングを前記自動ルーティング機能により行うことを特徴とする請求項１に記載の通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御方法に関する。
【背景技術】
【０００２】
近年、ＬＢ、ＦＷ、ＷＡＦ、ＩＰＳ等のネットワーク機器による機能（ＮＦ：Network  Function）を複数用いたシステムが一般化してきている。例えば、ＮＡＴ、ＦＷ（Firewall）、ＬＢ（Load  Balancer:ロードバランサ）ＩＰＳ（Intrusion  Prevention  System）等を接続するサービスチェイニングが知られている（例えば、非特許文献１を参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】次世代サービスチェイニングNSH、Cisco、［平成31年2月4日検索］、インターネット＜URL：https://www.cisco.com/c/dam/assets/global/JP/training-events/events-webinars/interop/sp-01-interop2016-nsh.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術には、複数のＮＦを含むネットワークシステムの構成変更に多くの手順が必要になる場合があるという問題がある。
【０００５】
例えば、ＮＦとして機能する機器は、種類や機種等により性能や可用性が異なり、導入する際に性能や可用性を鑑みた設計を行わなくてはならない。これにより、設計の複雑化及びそれによる構成変更のコスト増、期間増及び作業ミスの助長等が起こっている。
【０００６】
特に、ＮＦを複数台スケールアウト構成で利用している場合において、ネットワークトポロジーの変更は大量のＰＢＲ（Policy  Based  Routing）を使わなくてはならない。このため、ＮＦを複数台スケールアウト構成で利用している場合の構成変更は、複雑な設計になり、手順が増大する。
【課題を解決するための手段】
【０００７】
前記した課題を解決するため、本発明の通信制御方法は、スイッチ及び前記スイッチに接続されたネットワーク機器を有する機能グループを互いに接続したネットワークシステムにおける通信を制御する通信制御方法であって、前記スイッチは、前記ネットワークシステムの構成変更が行われた場合、構成変更の際に行われた設定にしたがって第１の方向のパケットのルーティングを行い、前記第１の方向のパケットのヘッダ情報を記憶し、当該記憶したヘッダ情報を基に前記第１の方向と異なる第２の方向のパケットのルーティングを行う自動ルーティング機能により前記第２の方向のパケットのルーティングを行うことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ＮＦを互いに接続したネットワークシステムの構成変更に要する手順を削減することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施形態に係るネットワークシステムの構成例を示す図である。
【図２】図２は、第１の実施形態に係る構成変更装置の構成例を示す図である。
【図３】図３は、第１の実施形態に係る通信制御装置の構成例を示す図である。
【図４】図４は、第１の実施形態に係る通信制御装置の上り方向の通信に対する処理の流れを示すフローチャートである。
【図５】図５は、第１の実施形態に係る通信制御装置の下り方向の通信に対する処理の流れを示すフローチャートである。
【図６】図６は、第１の実施形態に係る構成変更装置による機能グループの挿入処理の流れを示すフローチャートである。
【図７】図７は、接続の追加を説明する図である。
【図８】図８は、アップリンク側からのルーティングの設定を説明する図である。
【図９】図９は、ダウンリンク側からのルーティングの設定を説明する図である。
【図１０】図１０は、アップリンク側からの戻しルーティングの設定を説明する図である。
【図１１】図１１は、接続の削除を説明する図である。
【図１２】図１２は、第１の実施形態に係る構成変更装置による機能グループの削除処理の流れを示すフローチャートである。
【図１３】図１３は、接続の追加を説明する図である。
【図１４】図１４は、ダウンリンク側からのルーティングの設定を説明する図である。
【図１５】図１５は、アップリンク側からのルーティングの設定を説明する図である。
【図１６】図１６は、接続の削除を説明する図である。
【図１７】図１７は、第１の実施形態に係る構成変更装置によるスケールアウト処理の流れを示すフローチャートである。
【図１８】図１８は、ＮＦの起動を説明する図である。
【図１９】図１９は、接続の追加を説明する図である。
【図２０】図２０は、追加したＮＦからのダウンリンク側へのルーティングの設定を説明する図である。
【図２１】図２１は、追加したＮＦへのダウンリンク側からのルーティングの設定を説明する図である。
【図２２】図２２は、第１の実施形態に係る構成変更装置によるスケールイン処理の流れを示すフローチャートである。
【図２３】図２３は、ダウンリンク側からのルーティングの設定を説明する図である。
【図２４】図２４は、接続の削除を説明する図である。
【図２５】図２５は、ＮＦの停止を説明する図である。
【図２６】図２６は、通信制御プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下に、本願に係る通信制御方法の実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
【００１１】
［第１の実施形態の構成］
まず、図１を用いて、第１の実施形態に係るネットワークシステムの構成について説明する。図１は、第１の実施形態に係るネットワークシステムの構成例を示す図である。図１に示すように、ネットワークシステムの論理構成は、スイッチ及びスイッチに接続されたネットワーク機器を有する機能グループが、互いに接続されたものである。
【００１２】
また、ネットワークシステムの一方の端にはクライアント群（seg-c）が存在し、他方の端にはサーバ群（seg-s）が存在する。ここで、クライアント群からサーバ群へ向かう方向をアップリンク側と呼ぶ。また、サーバ群からクライアント群へ向かう方向をダウンリンク側と呼ぶ。また、アップリンク側を上りと呼び、ダウンリンク側を下りと呼ぶ場合がある。なお、アップリンク側は第１の方向の一例である。また、ダウンリンク側は第２の方向の一例である。
【００１３】
各機能グループは、ネットワークに関する所定の機能を有する。図１の例では、NF-Group1は、ＦＷとして機能する。また、図１の例では、NF-Group2は、ＬＢとして機能する。また、図１の例では、NF-Group3は、ＩＰＳとして機能する。また、アップリンク側のルーティングは、例えばＥＣＭＰ（Equal  Cost  Multi  Path）により行われる。また、ダウンリンク側のルーティングは、後に説明する自動ルーティング機能により行われる。
【００１４】
また、ネットワークシステムの論理構成によってオーバーレイされる物理構成は、Spine-Leafのファブリックであってよい。この場合、ネットワークシステムは、ＳＤＮ（Software  Defined  Network）により、Spine-Leafのファブリック内に構築された論理的なＮＷ（Network）である。また、ＮＦは物理アプライアンスやＩＡサーバにデプロイされる。なお、実施形態のネットワークシステムは、図１のように論理的に構成された仮想ネットワークであってもよいし、物理ネットワークであってもよい。
【００１５】
ネットワークシステムの構成の変更方法について説明する。ネットワークシステムの構成の変更には、機能グループの挿入、機能グループの削除、ＮＦのスケールアウト（追加）、ＮＦのスケールイン（削除）等がある。ネットワークシステムの構成変更の際には、変更後もクライアント群とサーバ群との間でパケットが正常に送受信されるように、所定の手順が実行される。
【００１６】
各手順は、各機能グループ、各機能グループのスイッチ及びＮＦが稼働する物理的又は仮想的な装置に対して、所定のコマンドを手動で実行することにより行われてもよいし、バッチ処理として自動的に行われてもよい。例えば、スイッチ及びＮＦとして機能するコンピュータが各手順に対応するコマンドの入力を受け付け、コンピュータに備えられたＯＳ（Operating  System）の機能等を利用して各手順を実行する。
【００１７】
［構成変更装置の構成］
また、ネットワークシステムの構成変更のための手順は、各機能グループを制御可能な構成変更装置によって行われてもよい。ここでは、図２を用いて、構成変更のための手順を実行する構成変更装置の構成について説明する。図２は、第１の実施形態に係る構成変更装置の構成例を示す図である。図２に示すように、構成変更装置１０は、通信部１１、入出力部１２、記憶部１３及び制御部１４を有する。
【００１８】
通信部１１は、外部装置との通信インタフェースを司る。通信部１１は、各機能グループに対し制御信号を送信することができる。入出力部１２は、当該構成変更装置１０への各種情報の入出力を司る。入出力部１２は、例えば、当該構成変更装置１０への手動の入力を受け付けるマウスやキーボード等の入力装置であってもよい。
【００１９】
記憶部１３は、制御部１４が動作する際に参照する各種情報を記憶する。制御部１４は、構成変更装置１０全体の制御を司る。制御部１４は、接続制御部１４１、設定部１４２、起動部１４３及び停止部１４４を有する。
【００２０】
接続制御部１４１、機能グループ間の接続の追加及び削除を行う。例えば、スイッチがLinux（登録商標）の仮想ブリッジである場合、接続制御部１４１は、コマンド「brctl  addif」によりＬ１／Ｌ２接続を追加し、コマンド「brctl  delif」によりＬ１／Ｌ２接続を削除することができる。
【００２１】
設定部１４２は、ＮＦのルーティングを設定する。例えば、機能グループのルーティングがLinuxの「ip  route2」により行われている場合、設定部１４２は、コマンド「ip  route  append」によりパケットの転送先のＮＦ及び重みを設定することができる。
【００２２】
起動部１４３は、指定したＮＦを起動させる。また、停止部１４４は、指定したＮＦを停止させる。
【００２３】
［通信制御装置の構成］
ここで、機能グループは、下りパケットを自動的にルーティングする機能を有する。このため、機能グループは、構成変更の際に行われた設定にしたがって上り方向のパケットのルーティングを行うのに対し、自動ルーティング機能により第２の方向のパケットのルーティングを行うことができる。自動ルーティング機能は、上り方向のパケットのヘッダ情報を記憶し、当該記憶したヘッダ情報を基に下り方向のパケットのルーティングを行う機能である。
【００２４】
ここで、図３を用いて、自動ルーティング機能を実現するための通信制御装置について説明する。図３は、第１の実施形態に係る通信制御装置の構成例を示す図である。図３の通信制御装置２０の機能は、スイッチに実装されてもよいし、ＮＦに実装されてもよいし、スイッチに接続された他の装置に実装されてもよい。図３に示すように、通信制御装置２０は、通信部２１、入出力部２２、記憶部２３及び制御部２４を有する。
【００２５】
通信部２１は、外部装置との通信インタフェースを司る。通信部２１は、例えば、クライアント群から送信されてきた上りパケットを受信したり、制御部２４から出力された下りパケットをサーバ群に送信したりする。入出力部２２は、当該通信制御装置２０への各種情報の入出力を司る。入出力部２２は、例えば、当該通信制御装置２０への設定情報等の入力を受け付ける。
【００２６】
記憶部２３は、制御部２４が動作する際に参照する各種情報を記憶する。記憶部２３は、例えばセッションテーブル２３１を記憶する領域を備える。セッションテーブル２３１はセッション情報を記憶する。セッション情報は、上りパケットの送信元ＭＡＣアドレス及び当該上りパケットのセッションを特定する情報である。
【００２７】
図３に示すように、セッションテーブル２３１の項目には、セッション識別情報＃、送信元ポート番号、プロトコル番号及び返却用ＭＡＣアドレスが含まれる。図５の例では、セッションテーブル２３１には、セッション識別情報＃として「１」が格納され、送信元ポート番号として「ＩＰ−Ｃ−１」が格納され、プロトコル番号として「ｘｘｘｘ」が格納され、返却用ＭＡＣアドレスとしてｔｃｐプロトコルを示す「６」が格納され、返却用ＭＡＣアドレスとして「ＭＣ−ＬＢ−１」が格納される。ただし、「ｘｘｘｘ」は所定の数値であるものとする。
【００２８】
制御部２４は、通信制御装置２０全体の制御を司る。制御部２４は、格納部２４１及び更新部２４２を有する。
【００２９】
格納部２４１は、上りパケットの送信元ＭＡＣアドレス及び当該上りパケットのセッションを特定する情報を記憶部２３に格納する。更新部２４２は、下りパケットのセッションを特定する情報が、記憶部２３に格納された上りパケットのセッションを特定する情報と一致する場合、当該下りパケットの宛先ＭＡＣアドレスを、当該上りパケットの送信元ＭＡＣアドレスに更新する。また、例えば、更新部２４２は、netfilterと呼ばれるLinux  Kernelが持つＡＰＩや、libnetfilter_queueと呼ばれる類似のライブラリ等を用いてＭＡＣアドレスの更新を行うことができる。
【００３０】
例えば、格納部２４１は、上りパケットのセッションを特定する情報として、上りパケットの送信元ＩＰアドレス、送信元ポート番号及びプロトコル番号を記憶部２３に格納する。このとき、更新部２４２は、下りパケットの宛先ＩＰアドレス、宛先ポート番号及びプロトコル番号が、それぞれ記憶部２３に格納された上りパケットの送信元ＩＰアドレス、送信元ポート番号及びプロトコル番号と一致する場合、下りパケットの宛先ＭＡＣアドレスを、上りパケットの送信元ＭＡＣアドレスに更新する。
【００３１】
［通信制御装置の実施形態の処理手順］
図４を用いて、通信制御装置２０の上り方向の通信に対する処理の流れを説明する。図４は、第１の実施形態に係るＬ２スイッチの上り方向の通信に対する処理の流れを示すフローチャートである。
【００３２】
図４に示すように、まず、通信制御装置２０は、上りパケットを受信する（ステップＳ１１１）。次に、通信制御装置２０は、パケットの送信元ＩＰアドレス、送信元ポート番号、プロトコル番号及び返却用ＭＡＣアドレスを取得する（ステップＳ１１２）。ここで、送信元ＩＰアドレス、送信元ポート番号及びプロトコル番号は、セッションを特定する情報の一例である。また、返却用ＭＡＣアドレスは、送信元ＭＡＣアドレスである。
【００３３】
ここで、通信制御装置２０は、取得した情報をセッションテーブル２３１に格納する（ステップＳ１１３）。そして、通信制御装置２０は、あらかじめ設定されたルーティング情報にしたがいパケットを送信する（ステップＳ１１４）。
【００３４】
図５を用いて、通信制御装置２０の下り方向の通信に対する処理の流れを説明する。図５は、第１の実施形態に係るＬ２スイッチの下り方向の通信に対する処理の流れを示すフローチャートである。
【００３５】
図５に示すように、まず、通信制御装置２０は、下りパケットを受信する（ステップＳ１２１）。次に、Ｌ２スイッチは、パケットの宛先ＩＰアドレス、宛先ポート番号、プロトコル番号でセッションテーブル２３１を検索し、一致するレコードの返却用ＭＡＣアドレスを取得する（ステップＳ１２２）。
【００３６】
ここで、通信制御装置２０は、パケットの宛先ＭＡＣアドレスを、取得した返却用ＭＡＣアドレスに更新する（ステップＳ１２３）。そして、通信制御装置２０は、あらかじめ設定されたルーティング情報にしたがいパケットを送信する（ステップＳ１２４）。
【００３７】
［構成変更手順］
以降、ネットワークシステムの機能グループの挿入、機能グループの削除、ＮＦのスケールアウト及びＮＦのスケールインについて、具体的な手順を説明する。また、ここでは各手順の主体が構成変更装置１０であるものとして説明するが、各手順の主体は構成変更装置１０に限られず、例えば、スイッチやＮＦとして機能する各装置であってもよい。また、接続の追加、削除、及びルーティングの設定は、Linuxのコマンドによって実行されるものとする。
【００３８】
構成変更手順の完了後、スイッチは、構成変更の際に行われた設定にしたがって上り方向のパケットのルーティングを行う。このとき、スイッチは、上り方向のパケットのヘッダ情報を記憶し、当該記憶したヘッダ情報を基に上り方向と異なる下り方向のパケットのルーティングを行う自動ルーティング機能により下り方向のパケットのルーティングを行うことができる。
【００３９】
［機能グループの挿入］
図６は、第１の実施形態に係る構成変更装置による機能グループの挿入処理の流れを示すフローチャートである。図７は、接続の追加を説明する図である。図８は、アップリンク側からのルーティングの設定を説明する図である。図９は、ダウンリンク側からのルーティングの設定を説明する図である。図１０は、アップリンク側からの戻しルーティングの設定を説明する図である。図１１は、接続の削除を説明する図である。
【００４０】
図６に示すように、まず、構成変更装置１０は、アップリンク側のＮＦを挿入するスイッチに接続する（ステップＳ１１、図７）。次に、挿入するＮＦをダウンリンク側のスイッチに接続する（ステップＳ１２、図８）。構成変更装置１０は、コマンド「brctl  addif」によりNF-Group1のＮＦと挿入するNF-Group’のスイッチとの接続、及び、NF-Group’のＮＦとNF-Group2のスイッチとの接続を追加する。
【００４１】
そして、構成変更装置１０は、挿入するＮＦのルーティング設定をアップリンク側のＮＦに対し設定する（ステップＳ１３）。例えば、構成変更装置１０は、
ip  route  append  seg-s
nexthop  via  NF1(NF-Group2)  weight  10
nexthop  via  NF2(NF-Group2)  weight  10
を実行し、複数のnexthopを同一の重さで設定する。
【００４２】
また、構成変更装置１０は、ダウンリンク側のＮＦのルーティング設定を挿入するＮＦに対し設定する（ステップＳ１４）。例えば、構成変更装置１０は、
ip  route  append  seg-s
nexthop  via  NF1(NF-Group’)  weight  10
nexthop  via  NF2(NF-Group’)  weight  10
を実行し、複数のnexthopを同一の重さで設定する。
【００４３】
この時点で、上りパケットはNF-Group1→NF-Group’→NF-Group2→NF-Group3という経路で送信されるようになる。また、自動ルーティング機能により、下りパケットは上りパケットの逆順でクライアントに返却されるようになる。
【００４４】
また、構成変更装置１０は、アップリンク側のＮＦの戻しルーティング設定を挿入するＮＦのいずれかに設定する（ステップＳ１５、図１０）。例えば、構成変更装置１０は、
ip  route  append  seg-c  via  NF1(NF-Group’)
ip  route  del  seg-c  via  NF1(NF-Group1)
を実行し、その後元のルーティング設定を削除する。
【００４５】
この後の手順でNF-Group1とNF-Group2の間のＬ１／Ｌ２接続が削除された際に、NF-Group2のＮＦ１及びＮＦ２のnexthopのＩＰアドレス（NF-Group1のＮＦ１及びＮＦ２）への到達性がなくなる。そこで、自動ルーティングが行われることなく下りパケットが破棄されることを防止するためにステップ１５の手順が行われる。このため、ステップ１５の手順は省略可能である。例えば、NF-Group2のスイッチがＩＰアドレスを持ち、下りパケットが当該スイッチにルーティングされている場合、ステップ１５の手順を省略することができる。
【００４６】
そして、構成変更装置１０は、挿入する機能グループの前後の接続を削除する（ステップＳ１６、図１１）。構成変更装置１０は、コマンド「brctl  delif」によりNF-Group1のＮＦとNF-Group2のスイッチとの接続を削除する。
【００４７】
スイッチは、ネットワークシステムに第１の機能グループを追加する構成変更が行われた場合、第１の機能グループ及び第１の機能グループの下り方向にある機能グループから上り方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行う。このとき、スイッチは、第１の機能グループ及び第１の機能グループの上り方向にある機能グループから下り方向に送信されるパケットのルーティングを自動ルーティング機能により行うことができる。例えば、ステップＳ１６の後、スイッチは、NF-Group1及びNF-Group'から送信される上りパケットのルーティングを、構成変更の際に行われた設定にしたがって行う。一方、スイッチは、NF-Group'及びNF-Group2から送信される下りパケットのルーティングを、自動ルーティング機能により行う。
【００４８】
［機能グループの削除］
図１２は、第１の実施形態に係る構成変更装置による機能グループの削除処理の流れを示すフローチャートである。図１３は、接続の追加を説明する図である。図１４は、ダウンリンク側からのルーティングの設定を説明する図である。図１５は、アップリンク側からのルーティングの設定を説明する図である。図１６は、接続の削除を説明する図である。
【００４９】
図１２に示すように、まず、構成変更装置１０は、ダウンリンク側のNFからアップリンク側のスイッチにバイパスラインを引く（ステップＳ２１、図１３）。構成変更装置１０は、コマンド「brctl  addif」によりNF-Group1のＮＦとNF-Group3のスイッチとの接続を追加する。
【００５０】
次に、構成変更装置１０は、ダウンリンク側のＮＦのルーティング設定をアップリンク側のＮＦに対し設定する（ステップＳ２２、図１４）。例えば、構成変更装置１０は、
ip  route  append  seg-s
nexthop  via  NF1(NF-Group3)  weight  10
nexthop  via  NF2(NF-Group3)  weight  10
を実行し、複数のnexthopを同一の重さで設定する。
【００５１】
また、構成変更装置１０は、アップリンク側のＮＦの戻しルーティング設定を挿入するＮＦのいずれかに設定する（ステップＳ２３、図１５）。例えば、構成変更装置１０は、
ip  route  append  seg-c  via  NF1(NF-Group’)
ip  route  del  seg-c  via  NF1(NF-Group1)
を実行し、その後元のルーティング設定を削除する。なお、ステップＳ１６と同様に、ステップＳ２３は省略可能である。
【００５２】
この時点で、上りパケットはNF-Group1→NF-Group3という経路で送信されるようになる。また、自動ルーティング機能により、下りパケットは上りパケットの逆順でクライアントに返却されるようになる。
【００５３】
そして、構成変更装置１０は、挿入する機能グループの前後の接続を削除する（ステップＳ２４、図１６）。構成変更装置１０は、コマンド「brctl  delif」によりNF-Group1のＮＦとNF-Group2のスイッチとの接続、及び、NF-Group2のＮＦとNF-Group3のスイッチとの接続を削除する。
【００５４】
スイッチは、ネットワークシステムから第１の機能グループを削除する構成変更が行われた場合、第１の機能グループの下り方向にあった機能グループから上り方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行う。このとき、スイッチは、第１の機能グループの上り方向にあった機能グループから下り方向に送信されるパケットのルーティングを自動ルーティング機能により行うことができる。例えば、ステップＳ２４の後、スイッチは、NF-Group1から送信される上りパケットのルーティングを、構成変更の際に行われた設定にしたがって行う。一方、スイッチは、NF-Group3から送信される下りパケットのルーティングを、自動ルーティング機能により行う。
【００５５】
［ＮＦのスケールアウト］
図１７は、第１の実施形態に係る構成変更装置によるスケールアウト処理の流れを示すフローチャートである。図１８は、ＮＦの起動を説明する図である。図１９は、接続の追加を説明する図である。図２０は、追加したＮＦからのダウンリンク側へのルーティングの設定を説明する図である。図２１は、追加したＮＦへのダウンリンク側からのルーティングの設定を説明する図である。
【００５６】
図１７に示すように、まず、構成変更装置１０は、スケールアウトで追加したＮＦを起動する（ステップＳ３１、図１８）そして、構成変更装置１０は、追加したＮＦから同じ機能グループのスイッチとアップリンク側のスイッチに接続する（ステップＳ３２、図１９）。構成変更装置１０は、コマンド「brctl  addif」によりNF-Group2のＮＦ3とNF-Group2のスイッチとの接続、及び、NF-Group2のスイッチとNF-Group3のＮＦとの接続を追加する。
【００５７】
また、構成変更装置１０は、追加したＮＦの戻しルーティング設定をダウンリンク側のＮＦのいずれかに設定する（ステップＳ３３、図２０）。例えば、構成変更装置１０は、
ip  route  append  seg-c  via  NF1(NF-Group1)
を実行する。ステップＳ１６と同様に、ステップＳ３３は省略可能である。
【００５８】
ここで、構成変更装置１０は、ダウンリンク側のＮＦからのnexthopに追加したＮＦを追加する（ステップＳ３４、図２１）。例えば、構成変更装置１０は、
ip  route  append  seg-s
nexthop  via  NF1(NF-Group2)  weight  10
nexthop  via  NF2(NF-Group2)  weight  10
nexthop  via  NF3(NF-Group2)  weight  10
を実行し、複数のnexthopを同一の重さで設定する。
【００５９】
スイッチは、ネットワークシステムの第１の機能グループに第１のネットワーク機器を追加する構成変更が行われた場合、第１のネットワーク機器及び第１の機能グループの下り方向にある機能グループから上り方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行う。このとき、スイッチは、第１のネットワーク機器及び第１の機能グループの上り方向にある機能グループから下り方向に送信されるパケットのルーティングを自動ルーティング機能により行うことができる。例えば、ステップＳ３４の後、スイッチは、NF-Group2のＮＦ３及びNF-Group1から送信される上りパケットのルーティングを、構成変更の際に行われた設定にしたがって行う。一方、スイッチは、NF-Group1のＮＦ３及びNF-Group2から送信される下りパケットのルーティングを、自動ルーティング機能により行う。
【００６０】
［ＮＦのスケールイン］
図２２は、第１の実施形態に係る構成変更装置によるスケールイン処理の流れを示すフローチャートである。図２３は、ダウンリンク側からのルーティングの設定を説明する図である。図２４は、接続の削除を説明する図である。図２５は、ＮＦの停止を説明する図である。
【００６１】
図２２に示すように、まず、構成変更装置１０は、ダウンリンク側のＮＦからのnexthopからスケールインするＮＦを削除する（ステップＳ４１、図２３）。例えば、構成変更装置１０は、
ip  route  del  seg-s
nexthop  via  NF3(NF-Group2)  weight  10
を実行し、nexthopを同一の重さで削除する。
【００６２】
次に、構成変更装置１０は、スケールインするＮＦの前後の接続を削除する（ステップＳ４２、図２４）。構成変更装置１０は、コマンド「brctl  delif」によりNF-Group2のスイッチとNF-Group2のＮＦ２との接続、及び、NF-Group2のＮＦ２とNF-Group3のスイッチとの接続を削除する。そして、構成変更装置１０は、スケールインするＮＦを停止する（ステップＳ４３、図２５）。
【００６３】
［第１の実施形態の効果］
これまで説明してきたように、第１の実施形態のネットワークシステムのスイッチは、ネットワークシステムの構成変更が行われた場合、構成変更の際に行われた設定にしたがって第１の方向のパケットのルーティングを行う。このとき、スイッチは、第１の方向のパケットのヘッダ情報を記憶し、当該記憶したヘッダ情報を基に第１の方向と異なる第２の方向のパケットのルーティングを行う自動ルーティング機能により第２の方向のパケットのルーティングを行う。このように、ネットワークシステムは、例えば下り方向のパケットの自動ルーティングを行うことができる。このため、実施形態によれば、ネットワークシステムの構成変更において、自動ルーティングが可能な方向のルーティング設定を省略でき、構成変更に必要な手順を削減することが可能になる。
【００６４】
また、スイッチは、ネットワークシステムに第１の機能グループを追加する構成変更が行われた場合、第１の機能グループ及び第１の機能グループの第２の方向にある機能グループから第１の方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行う。このとき、スイッチは、第１の機能グループ及び第１の機能グループの第１の方向にある機能グループから第２の方向に送信されるパケットのルーティングを自動ルーティング機能により行う。この場合、第１の機能グループの第１の方向へのルーティング設定を省略することができる。例えば、図１１のNF-Group’からNF-Group1へのルーティング設定を省略できる。また、図１１のNF-Group3からNF-Group1’へのルーティング設定を省略できる場合がある。
【００６５】
また、スイッチは、ネットワークシステムから第１の機能グループを削除する構成変更が行われた場合、第１の機能グループの第２の方向にあった機能グループから第１の方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行う。このとき、スイッチは、第１の機能グループの第１の方向にあった機能グループから第２の方向に送信されるパケットのルーティングを自動ルーティング機能により行う。この場合、第１の機能グループの第１の方向へのルーティング設定を省略することができる場合がある。例えば、図１６のNF-Group3からNF-Group1へのルーティング設定を省略できる場合がある。
【００６６】
また、スイッチは、ネットワークシステムの第１の機能グループに第１のネットワーク機器を追加する構成変更が行われた場合、第１のネットワーク機器及び第１の機能グループの第２の方向にある機能グループから第１の方向に送信されるパケットのルーティングを構成変更の際に行われた設定にしたがって行う。このとき、スイッチは、第１のネットワーク機器及び第１の機能グループの第１の方向にある機能グループから第２の方向に送信されるパケットのルーティングを自動ルーティング機能により行う。この場合、第１の機能グループに追加された第１のネットワーク機器からのルーティング設定を省略することができる。例えば、図２１のNF-Group2のＮＦ３からNF-Group1へのルーティング設定を省略できる。
【００６７】
［その他の実施形態］
上記の説明では、例として、NF-Group2のスイッチがＩＰアドレスを持ち、下りパケットが当該スイッチにルーティングされている場合にステップ１５の手順を省略することができるものとして説明した。一方で、これらのステップを省略可能なケースは上記のものに限られない。まず、パケットの破棄を無視できる場合や上りパケットの送信をあらかじめ制限している場合、ステップ１５は省略可能である。また、スイッチにダミーのポートを設け、当該ポートを含むセッション情報及び返却用ＭＡＣアドレスを疑似的に生成しておくことで下りパケットが破棄されることを防止してもよい。
【００６８】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、ＣＰＵ（Central  Processing  Unit）及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６９】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７０】
［プログラム］
一実施形態として、構成変更装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の構成変更を実行する構成変更プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の構成変更プログラムを情報処理装置に実行させることにより、情報処理装置を構成変更装置として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）等のスレート端末等がその範疇に含まれる。
【００７１】
図２６は、構成変更プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００７２】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００７３】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、構成変更の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、構成変更における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【００７４】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０は、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した実施形態の処理を実行する。
【００７５】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００７６】
１０  構成変更装置
１１、２１  通信部
１２、２２  入出力部
１３、２３  記憶部
１４、２４  制御部
２０  通信制御装置
１４１  接続制御部
１４２  設定部
１４３  起動部
１４４  停止部
２３１  セッションテーブル
２４１  格納部
２４２  更新部
【図１】
2020136742.tif 000003
【図２】
2020136742.tif 000004
【図３】
2020136742.tif 000005
【図４】
2020136742.tif 000006
【図５】
2020136742.tif 000007
【図６】
2020136742.tif 000008
【図７】
2020136742.tif 000009
【図８】
2020136742.tif 000010
【図９】
2020136742.tif 000011
【図１０】
2020136742.tif 000012
【図１１】
2020136742.tif 000013
【図１２】
2020136742.tif 000014
【図１３】
2020136742.tif 000015
【図１４】
2020136742.tif 000016
【図１５】
2020136742.tif 000017
【図１６】
2020136742.tif 000018
【図１７】
2020136742.tif 000019
【図１８】
2020136742.tif 000020
【図１９】
2020136742.tif 000021
【図２０】
2020136742.tif 000022
【図２１】
2020136742.tif 000023
【図２２】
2020136742.tif 000024
【図２３】
2020136742.tif 000025
【図２４】
2020136742.tif 000026
【図２５】
2020136742.tif 000027
【図２６】
2020136742.tif 000028