JP2016045839A - 通信システム、管理計算機、及びセッション情報移行方法 - Google Patents

通信システム、管理計算機、及びセッション情報移行方法 Download PDF

Info

Publication number
JP2016045839A
JP2016045839A JP2014171307A JP2014171307A JP2016045839A JP 2016045839 A JP2016045839 A JP 2016045839A JP 2014171307 A JP2014171307 A JP 2014171307A JP 2014171307 A JP2014171307 A JP 2014171307A JP 2016045839 A JP2016045839 A JP 2016045839A
Authority
JP
Japan
Prior art keywords
session information
information
session
database
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014171307A
Other languages
English (en)
Other versions
JP2016045839A5 (ja
Inventor
矢野 正
Tadashi Yano
正 矢野
平尾 努
Tsutomu Hirao
努 平尾
通貴 奥野
Michitaka Okuno
通貴 奥野
和 三村
Kazu Mimura
和 三村
大介 石井
Daisuke Ishii
大介 石井
勇太 武藤
Yuta Muto
勇太 武藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2014171307A priority Critical patent/JP2016045839A/ja
Priority to US14/734,299 priority patent/US9769265B2/en
Publication of JP2016045839A publication Critical patent/JP2016045839A/ja
Publication of JP2016045839A5 publication Critical patent/JP2016045839A5/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/148Migration or transfer of sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】セッション情報の移行に伴う通信サービスの中断時間を短縮し、スケールアウトによる効果が反映される時間を短縮する。
【解決手段】計算機及び管理計算機を備える通信システムであって、計算機は端末を収容し、端末のセッションを用いた通信を制御する通信制御部を有し、通信制御部はセッション情報を格納するデータベースを管理し、管理計算機は、データベースに格納される複数のセッション情報の各々の属性を管理する属性管理情報を保持し、第1の通信制御部が管理する第1のデータベースに格納される複数のセッション情報の移行契機を検知し、属性管理情報に基づいて、第1のデータベースに格納される複数のセッション情報の中から、第2の通信制御部が管理する第2のデータベースに移行する複数のセッション情報を選択し、選択された複数のセッション情報の属性に基づいて、選択された複数のセッション情報の移行順番を決定する。
【選択図】図1

Description

本発明は、通信サーバが保持するセッション情報の移行に関する。
移動体通信ネットワークでは、4GシステムのLTE(Long Term Evolution)及びWiMAX2+(Worldwide Interoperability for Microwave Access)などの普及が進み、高速のモバイルブロードバンドが利用可能である。さらに、LTE−Advancedと呼ばれるサービスでは、キャリアアグリゲーションによる無線帯域の拡大が予定されており、より一層の通信の高速化が可能となる。
LTEを利用したサービスではインターネットアクセスサービスに加えて、VoLTE(Voice over LTE)サービスも提供されている。VoLTEでは、回線交換システムを用いて実現される音声サービスがLTE上のIPパケット通信を用いて実現される。
このように、移動体通信ネットワークは社会インフラとしての重要性がより高まっており、障害発生の防止、障害発生時の迅速なサービスの復旧、及びサービス継続性が求められている。
一方で、従来、専用装置を用いて構成されたネットワークノードの機能を、データセンタなどで用いられる汎用のサーバを用いて実現し、又は、仮想化技術を適用した汎用のサーバ上の仮想サーバを用いて実現するNFV(Network Function Virtualization)と呼ばれる方式が検討されている。以下の説明では、ネットワークノードの機能を実現する汎用のサーバ又は汎用サーバ上の仮想サーバを通信サーバとも記載する。
NFVを用いたシステムでは、ネットワークの負荷に応じて、設備の増設(スケールアウト)及び設備の減設(スケールイン)、負荷分散のための仮想サーバの移行に伴うシステム構成の変更、及び冗長化されたシステムにおける障害発生時の切替え等における通信サービスの中断時間及び構成変更による効果が現れるまでの時間の短縮が求められる。
前述した要求に対して特許文献1のような技術が知られている。特許文献1には、「クライアントリクエストの処理結果をクライアントに返信するリクエスト割振り部と、受信したリクエストを処理するリクエスト処理部と、前記リクエストのセッション情報を管理するセッション情報管理部とを有するサーバ装置を複数備えてなるシステムでのセッション管理方法であって、第1のサーバ装置のセッション情報管理部は、第2のサーバ装置のセッション情報管理部にセッション情報を移動し、第1のサーバ装置のリクエスト割振り部は、前記第1のサーバ装置のリクエスト割振り部がリクエストを受信したリクエスト受信時刻及びクライアントに処理結果を返信したレスポンス返信時刻より前記セッション情報の移動時刻が遅い場合、前記セッション情報が移動した移動先情報に基づいて新たに受信したリクエストを第2のサーバ装置に割り振る」ことが記載されている。
特開2012−103879号公報
特許文献1では、仮想サーバの増設等のスケールアウト時にセッション情報を移行することによって、高性能な仮想サーバに優先度の高いセッションを接続させる。これによって、優先度の高いセッションの品質を確保している。
しかし、特許文献1では、セッション情報の移行時における通信サービスの中断時間等が考慮されていない。そのため、多くのセッション情報を高性能の仮想サーバに移行する場合に、通信サービスが長時間中断等する可能性がある。すなわち、システムにおいてスケールアウトの効果がすぐに現れない。
本発明では、スケールアウト等に伴ってセッション情報を移行する場合に、通信サービスの中断時間(サービスの再開時間)を短縮し、また、スケールアウト等の効果が反映される時間を短縮する通信システム、装置、及びセッション情報の移行方法を提供することを目的とする。
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、複数の計算機及び管理計算機を備える通信システムであって、前記複数の計算機は、複数の端末を収容し、前記複数の端末の各々のセッションを用いた通信を制御する通信制御部を有し、前記通信制御部は、前記複数の端末の各々のセッションのセッション情報を格納するデータベースを管理し、前記管理計算機は、前記複数の計算機の稼働状態を示す稼働情報を取得する情報取得部と、任意の通信制御部が管理するデータベースに格納される複数のセッション情報の移行契機を検知し、前記任意の通信制御部が管理する前記データベースに格納される複数のセッション情報を、新たな通信制御部が管理するデータベースに移行するセッション情報移行制御部と、を有し、前記通信制御部が管理する前記データベースに格納される複数のセッション情報の各々の属性を管理する属性管理情報と、前記複数の計算機の稼働状態を管理する稼働管理情報と、を保持し、前記複数の計算機は、第1のデータベースを管理する第1の通信制御部が稼働する第1の計算機、及び第2のデータベースを管理する第2の通信制御部が稼働する第2の計算機、を含み、前記セッション情報移行制御部は、前記稼働管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の移行契機を検知し、前記属性管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の中から、前記第2のデータベースに移行する複数のセッション情報を選択し、前記選択された複数のセッション情報の属性に基づいて、前記選択された複数のセッション情報の移行順番を決定し、前記決定された移行順番を含む移行制御情報を生成することを特徴とする。
本発明によれば、管理計算機は、セッションの属性に基づいて、セッションを用いた通信の中断時間が短く、かつ、セッション情報の移行による効果が迅速に通信システムに反映されるように複数のセッション情報の移行順番を決定する。決定された移行順番にしたがって、複数のセッション情報を移行させることによって、通信サービスの中断時間を短縮し、また、スケールアウト等の効果が反映される時間を短縮できる。
上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
実施例1の通信システムの構成例を示す説明図である。 実施例1の通信システムを適用した移動通信システムの具体例を示す説明図である。 実施例1の管理サーバのハードウェア構成及びソフトウェア構成の一例を示すブロック図である。 実施例1の通信サーバが保持するデータベースの一例を示す説明図である。 実施例1の通信サーバが保持するデータベースの一例を示す説明図である。 実施例1の負荷分散装置が保持する負荷管理情報の一例を示す説明図である。 実施例1の管理サーバが保持する属性管理情報の一例を示す説明図である。 実施例1の管理サーバが保持する稼働管理情報の一例を示す説明図である。 実施例1の負荷分散処理が実行された後の通信システムの構成例を示す説明図である。 実施例1の管理サーバが実行するセッション情報の移行処理に必要な移行条件情報を設定するためのユーザインタフェースの一例を示す説明図である。 実施例1の通信システムの処理の流れを説明するシーケンス図である。 実施例1の通信システムの処理の流れを説明するシーケンス図である。 実施例1の管理サーバが実行する処理の概要を説明するフローチャートである。 実施例1の管理サーバが実行する処理の概要を説明するフローチャートである。 実施例1の管理サーバのセッション情報移行制御部が実行する移行順番決定処理の一例を説明するフローチャートである。 実施例2の通信システムの構成例を示す説明図である。 実施例2の通信システムの処理の流れを説明するシーケンス図である。 実施例3の通信システムの構成例を示す説明図である。 実施例3の管理サーバが保持する稼働管理情報の一例を示す説明図である。 実施例3の通信システムの処理の流れを説明するシーケンス図である。 実施例4の管理サーバのハードウェア構成及びソフトウェア構成の一例を示すブロック図である。 実施例4の管理サーバが保持するポリシ情報の一例を示す説明図である。 実施例4の管理サーバのセッション情報移行制御部が実行する移行順番決定処理の一例を説明するフローチャートである。 実施例4の管理サーバが実行する処理の概要を説明するフローチャートである。 実施例4の管理サーバが実行する処理の概要を説明するフローチャートである。 実施例4の管理サーバが実行する処理の概要を説明するフローチャートである。
以下、本発明の実施例について、図面を参照して説明する。
図1は、実施例1の通信システムの構成例を示す説明図である。図2は、実施例1の通信システムを適用した移動通信システムの具体例を示す説明図である。
図1に示すように通信システムは、管理サーバ100、複数の通信サーバ110、及び負荷分散装置120から構成される。管理サーバ100と複数の通信サーバ110とは管理ネットワーク130を介して接続される。また、負荷分散装置120は、外部ネットワーク140と接続される。負荷分散装置120と複数の通信サーバ110とは、直接接続されてもよいし、LAN(Local Area Network)等のネットワークを介して接続されてもよい。
ここで、図2を用いて図1に示す通信システムを適用した具体的な移動通信システムについて説明する。図2は、図1の通信システムをLTEに適用したものである。
移動端末201は、基地局(eNB:enhanced NodeB)202との間で無線リンクを接続する。基地局202は、無線アクセスネットワーク203に接続される。ここで、通信サーバ110は、無線アクセスネットワーク203内の各サーバに対応する。なお、管理サーバ100は、無線アクセスネットワーク203内にあってもよいし、無線アクセスネットワーク203とは異なるネットワークにあってもよい。
無線アクセスネットワーク203内のサーバは、MME(Mobility Management Entity)204、S−GW(Serving Gateway)205、P−GW(Packet Data Network GW)206、PCRF(Policy Charging Rule Function)207、及びHSS(Home Subscriber Server)208を含む。また、無線アクセスネットワーク203には、移動端末201に対してサービスを提供するインターネット209が接続される。
MME204は、移動端末201の位置情報の管理し、また、移動端末201の認証処理を実行する。S−GW205は、無線アクセスネットワーク203内のアンカーポイントとなる第1のモバイルゲートウェイである。P−GW206は、インターネット209及び無線アクセスネットワーク203の境界となる第2のモバイルゲートウェイである。PCRF207は、QoSの制御情報及び課金に関する情報をP−GW206に提供する。HSS208は、移動端末201の位置登録データベースを管理する。
なお、図1に示す通信システムは、LTE以外に、WiMAXシステム及び3Gシステムにも適用できる。例えば、WiMAXシステムの場合、MME204及びS−GW205がASN−GW(Access Service Network Gateway)に相当する機能を有し、HA(Home Agent)がP−GW206に相当する機能を有する。また、3Gシステムの場合、MME204及びS−GW205がSGSN(Serving GPRS Support Node)に相当する機能を有し、GGSN(Gateway GPRS Support Node)がP−GW206に相当する機能を有する。
図1の説明に戻る。
通信サーバ110は、移動端末201への通信サービスを提供する。実施例1では、説明の簡単のために、二つの通信サーバ110−1及び通信サーバ110−2から構成される通信システムを想定する。
通信サーバ110は、データベース111及びバックアップデータ112を保持する。データベース111は、各移動端末201のセッションのセッション情報を格納する。また、バックアップデータ112には、他の通信サーバ110が保持するデータベース111のコピーである。すなわち、実施例1では、セッション情報が多重化された構成となっている。
なお、バックアップデータ112の構成は、前述したものに限定されない。例えば、N多重化の構成でもよい。N多重化の構成では、N台の通信サーバ110が同一のバックアップデータ112を保持する。また、一つの通信サーバ110のデータベース111のバックアップデータを分割して、複数の通信サーバ110に分散して配置する構成でもよい。また、前述した構成を組み合わせてもよい。
実施例1では、通信サーバ110は、セッション情報の属性毎に異なるデータベース111を保持する。セッション情報の属性としては、セッションの状態が考えられる。セッションの状態には、アクティブ状態及びアイドル状態の二つの状態がある。
アクティブ状態は、移動端末201が基地局202との間の無線リンクを接続し、通信可能な状態を示す。すなわち、アクティブ状態は、移動端末201に対して無線リソースが割り当てられている状態である。一方、アイドル状態は、移動端末201が基地局202との間の無線リンクを切断され、通信できない状態を示す。すなわち、アイドル状態は、移動端末201に対して無線リソースが割り当てられていない状態である。
以下の説明では、アクティブ状態のセッションのセッション情報を第1のセッション情報と記載し、アイドル状態のセッションのセッション情報を第2のセッション情報と記載する。
実施例1では、通信サーバ110−1及び通信サーバ110−2はそれぞれ以下のようなデータベース111及びバックアップデータ112を保持する。
通信サーバ110−1は、複数の第1のセッション情報を格納するデータベース111−1、及び複数の第2のセッション情報を格納するデータベース111−2を保持する。また、通信サーバ110−1は、データベース111−3のコピーであるバックアップデータ112−1、及びデータベース111−4のコピーであるバックアップデータ112−2を保持する。
通信サーバ110−2は、複数の第1のセッション情報を格納するデータベース111−3、及び複数の第2のセッション情報を格納するデータベース111−4を保持する。通信サーバ110−2は、データベース111−1のコピーであるバックアップデータ112−3、及びデータベース111−2のコピーであるバックアップデータ112−4を保持する。
負荷分散装置120は、負荷管理情報121に基づいて、外部ネットワーク140から受信したパケットを所定の通信サーバ110に転送する。負荷管理情報121の詳細については、図5を用いて後述する。
実施例1では、すべての通信サーバ110が実行系として動作する全実行系(ALL ACT系)であるものとする。ただし、本発明はこれに限定されず、バックアップデータ112のみを格納する通信サーバ110が待機系として動作するACT−STB構成、又はM+N冗長化構成でもよい。
管理サーバ100は、通信サーバ110の移行処理、及び通信サーバ110間のセッション情報の移行処理を制御する。
通信サーバ110の移行処理では、管理サーバ100は、通信サーバ110の稼働状態を監視し、通信サーバ110の負荷が高い場合、新たな通信サーバ110を追加するスケールアウトの指示を行う。
セッション情報の移行処理では、管理サーバ100は、移行契機を検知し、移行元の通信サーバ110から移行先の通信サーバ110に複数のセッション情報を移行する。また、管理サーバ100は、複数のセッション情報の移行に伴って、負荷分散装置120に負荷管理情報121の更新指示を行う。
ここで、図3を用いて管理サーバ100の装置構成について説明する。図3は、実施例1の管理サーバ100のハードウェア構成及びソフトウェア構成の一例を示すブロック図である。
管理サーバ100は、ハードウェアとしてCPU301、主記憶装置302、副記憶装置303、NIC304、及びHBA305を有する。なお、管理サーバ100は、キーボード、マウス、タッチパネル及びディスプレイ等の入出力装置を有してもよい。
CPU301は、主記憶装置302に格納されるプログラムを実行する。CPU301がプログラムを実行することによって、管理サーバ100が有する機能を実現できる。
主記憶装置302は、CPU301によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する記憶装置である。以下の説明では、機能部を主語として説明する場合、CPU301によって当該機能部を実現するプログラムが実行されていることを示す。主記憶装置302は、DRAM等の揮発性の記憶装置が考えられる。なお、主記憶装置302は不揮発性の記憶装置でもよい。主記憶装置302に格納されるプログラム及び情報については後述する。
副記憶装置303は、各種プログラム及び各種情報を格納する記憶装置である。副記憶装置303は、Flushメモリ等の不揮発性の記憶装置が考えられる。なお、副記憶装置303は揮発性の記憶装置でもよい。
CPU301は、所定のプログラムを用いて処理を実行する場合、副記憶装置303に格納されるプログラム及び情報を読み出し、当該プログラム及び情報を主記憶装置302上にロードする。CPU301は、主記憶装置302上にロードされた当該プログラムを実行する。
NIC304は、WAN(Wide Area Network)及びLAN等のネットワークを介して他の装置と接続するためのインタフェースである。HBA305は、SAN等のストレージネットワークを介して外部のストレージシステムと接続するためのインタフェースである。
ここで、主記憶装置302に格納されるプログラム及び情報について説明する。実施例1の主記憶装置302は、情報取得部311、負荷分散制御部312、及びセッション情報移行制御部313を実現するプログラムを格納し、また、属性管理情報314及び稼働管理情報315を格納する。
情報取得部311は、通信制御部が管理するセッション情報に関する情報、及び通信サーバ110の状態を示す状態情報を取得する。また、情報取得部311は、属性管理情報314及び稼働管理情報315に取得された情報を格納する。
具体的には、情報取得部311は、通信サーバ110から、通信制御部が管理するセッション情報に関する情報を取得する。また、情報取得部311は、通信サーバ110から当該通信サーバ110の稼働状態を示す情報、及び負荷分散装置120から通信サーバ110に転送されたパケットの転送量等を、状態情報として取得する。なお、状態情報としては、通信サーバ110が正常に稼働しているか否かを示す情報、通信システムにおける通信サーバ110の構成変更を示す情報等も含まれる。
負荷分散制御部312は、通信サーバ110の負荷を分散するための負荷分散処理(スケールアウト処理等)、及び通信サーバ110のマイグレーション処理等を実行する。セッション情報移行制御部313は、スケールアウト等に伴うセッション情報の移行契機を検知し、移行元の通信サーバ110から移行先の通信サーバ110へセッション情報を移行する。
属性管理情報314は、各通信サーバ110が管理するセッション情報の属性を管理するための情報を格納する。属性管理情報314の詳細については、図6を用いて後述する。稼働管理情報315は、通信サーバ110の稼働状態を管理するための情報を格納する。稼働管理情報315の詳細については、図7を用いて後述する。
実施例1の通信サーバ110及び負荷分散装置120は、管理サーバ100と同一のハードウェア構成であるものとする。ただし、主記憶装置302及び副記憶装置303に格納されるプログラム及び情報が管理サーバ100と異なる。
通信サーバ110の主記憶装置302には、移動端末201の通信を制御する通信制御部を実現するプログラムが格納される。通信制御部は、複数の移動端末201を収容し、また、各移動端末201のセッションを用いた通信を制御する。なお、通信制御部の機能は公知のものであるため詳細な説明は省略する。
通信制御部は、各移動端末201のセッションのセッション情報を管理する。具体的には、通信制御部は、自身が管理するセッション情報が格納されたデータベース111、及び他の通信制御部が管理するセッション情報が格納されたバックアップデータ112を管理する。データベース111及びバックアップデータ112は、通信サーバ110の副記憶装置303に格納される。データベース111の詳細については、図4A及び図4Bを用いて後述する。
なお、データベース111及びバックアップデータ112は、副記憶装置303ではなく、通信サーバ110に接続された外部の記憶装置に格納されてもよい。
負荷分散装置120の主記憶装置302には、負荷分散装置120が有する機能を実現するプログラムが格納されている。また、負荷分散装置120の副記憶装置303には、負荷管理情報121が格納される。
次に、管理サーバ100、通信サーバ110及び負荷分散装置120が管理する情報について説明する。
図4A及び図4Bは、実施例1の通信サーバ110が保持するデータベース111の一例を示す説明図である。図4Aは、通信サーバ110−1の通信制御部が管理する複数の第1のセッション情報を格納するデータベース111−1の一例を示す。図4Bは、通信サーバ110−1の通信制御部が管理する複数の第2のセッション情報を格納するデータベース111−2の一例を示す。
データベース111−1及びデータベース111−2には、一つのセッションに対して一つのエントリ、すなわち、一つのセッション情報に対して一つのエントリが存在する。
データベース111−1のエントリは、セッションID401、IMSI402、端末アドレス403、グループ番号404、基地局アドレス405、基地局ポート番号406、基地局トンネルID407、自宛アドレス408、自宛ポート番号409、及び自宛トンネルID410を含む。
セッションID401は、セッション情報、すなわち、セッションを一意に識別するための識別子である。IMSI402は、移動端末201に搭載されるSIM(Subscriber Identity Card)の識別子である。端末アドレス403は、移動端末201に割り当てられたIPアドレスである。グループ番号404は、スケールアウト時に利用するセッション情報の所属、又はセッション情報の冗長化のためのバックアップ先の通信サーバ110を指定する番号である。
基地局アドレス405は、移動端末201が通信を行っている基地局202に割り当てられたIPアドレスである。基地局ポート番号406は、基地局202が通信サーバ110と通信する場合に用いられるL4(TCP/UDP)等のポート番号である。基地局トンネルID407は、ユーザパケットをIPでカプセル化して送信する場合に、ユーザ又はトンネルを識別するための識別子である。
自宛アドレス408は、通信サーバ110が基地局202とパケットの送受信を行う場合に使用するIPアドレスである。自宛ポート番号409は、通信サーバ110が基地局202とパケットの送受信を行う場合に使用するL4(TCP/UDP)等のポート番号である。自宛トンネルID410は、IPでカプセル化されたユーザパケットを基地局202から受信する場合に、ユーザ又はトンネルを識別するための識別子である。
データベース111−2に格納されるエントリは、セッションID411、IMSI412、端末アドレス413、グループ番号414、自宛アドレス415、自宛ポート番号416、及び自宛トンネルID417を含む。アイドル状態では、移動端末201と基地局202との間の無線リンクが切断された状態であるため、第2のセッション情報には、基地局アドレス、基地局ポート番号、及び基地局トンネルIDは含まれない。
実施例1では、第1のセッション情報及び第2のセッション情報は、それぞれ別々のデータベースとして管理されているが、同一のデータベースとして管理してもよい。この場合、セッション情報に対応するセッションの状態がアクティブ状態又はアイドル状態のいずれであるかを示すカラムを追加することによって、セッションの状態の異なる複数のセッション情報を一元的に管理できる。
図5は、実施例1の負荷分散装置120が保持する負荷管理情報121の一例を示す説明図である。
負荷管理情報121には、一つのセッションに対して一つのエントリ、すなわち、一つのセッション情報に対して一つのエントリが存在する。負荷管理情報121のエントリは、セッションID501、通信サーバID502、通信サーバアドレス503、端末アドレス504、送信量505、及び受信量506を含む。
セッションID501は、セッション情報、すなわち、セッションを一意に識別するための識別子である。セッションID501には、セッションID401と同一の情報が格納される。通信サーバID502は、通信サーバ110を一意に識別するための識別子である。通信サーバアドレス503は、負荷分散装置120が通信サーバ110にパケットを転送する場合に宛先として使用するアドレスである。例えば、通信サーバ110のMACアドレス、負荷分散装置120から通信サーバ110へ転送するために設定された専用のIPアドレスなどが考えられる。端末アドレス504は、移動端末201に割り当てられたIPアドレスである。端末アドレス504には、端末アドレス403と同一の情報が格納される。
送信量505は、セッションID501に対応するセッションを用いた通信において、通信サーバ110に対して送信されたデータ(パケット)の容量である。例えば、一定時間内に通信サーバ110に送信されたパケット数若しくはパケット量、又は、これまで通信サーバ110に送信されたパケット数若しくはパケット量の積算値が格納される。受信量506は、セッションID501に対応するセッションを用いた通信において、通信サーバ110から受信したデータ(パケット)の容量である。例えば、一定時間内に通信サーバ110から受信したパケット数若しくはパケット量、又は、これまで通信サーバ110から受信したパケット数若しくはパケット量の積算値が格納される。
図6は、実施例1の管理サーバ100が保持する属性管理情報314の一例を示す説明図である。
属性管理情報314は、情報取得部311によって生成される。具体的には、情報取得部311が、各通信サーバ110からセッション情報の属性に関する情報を取得する。取得される情報には、少なくとも、通信サーバ110の識別子、セッションID、及びセッション情報の属性に関する情報が含まれる。
属性管理情報314には、一つの通信サーバ110に対して一つのエントリが存在する。属性管理情報314のエントリは、通信サーバID601、構成種別602、セッションID603、及び属性604を含む。
通信サーバID601は、通信サーバ110を一意に識別するための識別子である。通信サーバID601には、通信サーバID502と同一の情報が格納される。構成種別602は、通信サーバ110が物理サーバ又は仮想サーバのいずれであるかを示す情報である。具体的には、通信サーバ110が物理サーバの場合、構成種別602には「物理」が格納され、通信サーバ110が仮想サーバの場合、構成種別602には「仮想」が格納される。
セッションID603は、セッション情報、すなわち、セッションを一意に識別するための識別子である。セッションID603には、セッションID401と同一の情報が格納される。実施例1では、属性管理情報314を用いて、通信サーバ110が管理するすべてのセッション情報の属性が管理される。したがって、一つの通信サーバ110のエントリには、当該通信サーバ110が管理するすべてのセッション情報のセッションIDが含まれる。
属性604は、セッション情報の属性を示す情報である。実施例1のセッション情報の属性には、状態605及びデータタイプ606が含まれる。
状態605は、セッションの状態が、アクティブ状態又はアイドル状態のいずれであるかを示す情報である。具体的には、第1のセッション情報の場合、状態605には「Active」が格納され、第2のセッション情報の場合、状態605には「Idle」が格納される。
データタイプ606は、マスタのセッション情報又はバックアップのセッション情報のいずれであるかを示す情報である。具体的には、マスタのセッション情報の場合、データタイプ606には「マスタ」が格納され、バックアップのセッション情報の場合、データタイプ606には「バックアップ」が格納される。
ここで、マスタのセッション情報は、通信制御部がマスタとして管理するセッション情報であることを示す。すなわち、マスタのセッション情報は、データベース111に格納されるセッション情報である。一方、バックアップのセッション情報は、他の通信制御部がマスタとして管理するセッション情報のコピーであることを示す。すなわち、バックアップのセッション情報は、バックアップデータ112に格納されるセッション情報である。
図6に示すように、属性管理情報314には、セッション情報そのものではなく、セッション情報の属性に関する情報のみが格納される。ただし、属性管理情報314は、セッション情報そのものを格納してもよい。
また、属性604には、セッション情報に対応するセッションに設定される優先度を格納するカラムが含まれてもよい。優先度を格納するカラムには、例えば、通信の品質を示す値が格納される。
図7は、実施例1の管理サーバ100が保持する稼働管理情報315の一例を示す説明図である。
稼働管理情報315には、一つの物理サーバに対して一つのエントリが存在する。稼働管理情報315のエントリは、物理サーバID701、CPU使用率702、メモリ使用率703、収容ユーザ数704、処理データ量705、及び通信量706を含む。
物理サーバID701は、物理サーバを一意に識別するための識別子である。実施例1では、物理サーバと通信サーバ110とが一対一に対応しているため、物理サーバID701には、通信サーバID502と同一の情報が格納される。
CPU使用率702は、通信サーバ110が有するCPUの使用率である。メモリ使用率703は、通信サーバ110が有するメモリの使用率である。なお、メモリ使用率703の代わりにメモリ使用量を用いてもよい。収容ユーザ数704は、通信サーバ110が収容する移動端末201の数である。
処理データ量705は、通信サーバ110が処理したデータ(パケット)の容量である。処理データ量705には、一定時間内に処理されたパケット数若しくはパケット量、又は、これまでに処理されたパケット数若しくはパケット量の積算値が格納される。通信量706は、負荷分散装置120が通信サーバ110に転送したデータ(パケット)の容量である。通信量706には、例えば、一定時間内に通信サーバ110に転送したパケット数若しくはパケット量、若しくは、これまでに通信サーバ110に転送したパケット数若しくはパケット量の積算値、又は、通信サーバ110が一定時間内に負荷分散装置120へ送信したパケット数若しくはパケット量、若しくは、これまで負荷分散装置120へ送信したパケット数若しくはパケット量の積算値である。
次に、実施例1の通信システムの処理について説明する。
図8は、実施例1の負荷分散処理が実行された後の通信システムの構成例を示す説明図である。図9は、実施例1の管理サーバ100が実行するセッション情報の移行処理に必要な移行条件情報を設定するためのユーザインタフェースの一例を示す説明図である。
実施例1では、図8に示すように、負荷が増大した通信サーバ110−1及び通信サーバ110−2の負荷を分散するために、通信サーバ110−3を新たに追加する負荷分散処理(スケールアウト)が実行されることを想定する。
このとき、管理サーバ100は、負荷分散処理に伴って、データベース111−1に格納される複数の第1のセッション情報の一部をデータベース111−5に移行し、また、データベース111−2に格納される複数の第2のセッション情報の一部をデータベース111−6に移行する。また、管理サーバ100は、負荷分散処理に伴って、データベース111−3に格納される複数の第1のセッション情報の一部をデータベース111−5に移行し、データベース111−4に格納される複数の第2のセッション情報の一部をデータベース111−6に移行する。
また、図9に示すようなユーザインタフェース900を用いて、セッション情報の移行処理の移行条件情報が設定される。ここで、ユーザインタフェース900について説明する。
ユーザインタフェース900は、移行条件入力領域910、移行順番入力領域920、及び確認領域930を含む。
移行条件入力領域910は、セッション情報の移行契機を検知するための移行条件を設定する入力領域である。実施例1では、負荷分散処理の開始条件がセッション情報の移行条件として設定される。移行条件入力領域910は、対象項目911、閾値912、条件種別913、OKボタン914、及びキャンセルボタン915を含む。
対象項目911は、セッション情報を移行するか否か、すなわち、スケールアウトするか否かを判定するための監視項目を設定する入力領域である。実施例1では、対象項目911には予め監視項目として選択可能な項目が表示される。図9に示す例では「CPU使用率」が監視項目として選択されている。
閾値912は、監視項目の閾値を設定する入力領域である。実施例1では、閾値912には、上限値が設定される。すなわち、監視項目の値が閾値912の値より大きい場合に、セッション情報を移行すると判定される。
条件種別913は、複数の監視項目が選択される場合に、複数の監視項目の関連性を設定する入力領域である。実施例1では、条件種別913には「AND」及び「OR」が表示される。「AND」の場合、すべての監視項目が閾値以上となった場合に、セッション情報を移行すると判定される。また、「OR」の場合、複数の監視項目のうち少なくともいずれかの監視項目の値が閾値以上となった場合に、セッション情報を移行すると判定される。
OKボタン914は、対象項目911、閾値912、及び条件種別913に設定された値を移行条件として設定するための操作ボタンである。キャンセルボタン915は、対象項目911、閾値912、及び条件種別913に設定された値をキャンセルするための操作ボタンである。
移行順番入力領域920は、複数のセッション情報の移行順番を設定する入力領域である。移行順番入力領域920は、移行順番921、オプション922、OKボタン923、及びキャンセルボタン924を含む。
移行順番921は、第1のセッション情報、及び第2のセッション情報のどちらを先に移行するか選択する入力領域である。実施例1では、管理サーバ100は、移行順番921において選択されたセッションの状態のセッション情報を最初に移行元の通信サーバ110から移行先の通信サーバに移行する。
オプション922は、複数のセッション情報の移行処理において、移行順番を決定するための追加条件を設定する入力領域である。例えば、オプション922には、移行するセッション情報を選択するための指標が設定される。図9に示す例では、セッション情報に対応するセッションの優先度が前述した指標として設定される。なお、オプション922には、必ずしも値を入力する必要はない。
OKボタン923は、移行順番921及びオプション922に設定された値をセッション情報の移行順番の条件として設定するための操作ボタンである。キャンセルボタン924は、移行順番921及びオプション922に設定された値をキャンセルするための操作ボタンである。
なお、移行順番入力領域920は、移行先の通信サーバ110を設定する入力領域が含まれてもよい。また、移行順番入力領域920には、移行するセッション情報の数、セッション情報の送信間隔、及びセッション情報の送信タイミング等を設定する入力領域が含まれてもよい。
確認領域930は、移行条件入力領域910及び移行順番入力領域920において設定された値を確認するための領域である。
確認領域930には、表示領域931、登録ボタン932、及びキャンセルボタン933が含まれる。
表示領域931は、移行条件及び移行順番の組合せを表示する領域である。登録ボタン932は、表示領域931に表示された組合せを移行条件情報として管理サーバ100に登録するための操作ボタンである。キャンセルボタン933は、表示領域931に表示された移行条件の登録をキャンセルするための操作ボタンである。
管理サーバ100を操作するオペレータは、ユーザインタフェース900を用いて、セッション情報に対応するセッションを用いた通信の中断時間が短く、かつ、セッション情報の移行による効果が迅速に通信システムに反映されるように、複数のセッション情報の移行順番を設定する。
なお、図9に示すユーザインタフェース900は、一例であって、同様の情報を設定できるものであればどのようなものであってもよい。
図10A及び10Bは、実施例1の通信システムの処理の流れを説明するシーケンス図である。
負荷分散処理の実行前において、負荷分散装置120は、セッションIDが「AAAA」であるセッションを用いた通信のIPパケット、及びセッションIDが「BBBB」であるセッションを用いた通信のIPパケットを通信サーバ110−1に送信する(ステップS1001、ステップS1002)。
また、負荷分散装置120は、セッションIDが「CCCC」であるセッションを用いた通信のIPパケット、及びセッションIDが「DDDD」であるセッションを用いた通信のIPパケットを通信サーバ110−2に送信する(ステップS1003、ステップS1004)。
管理サーバ100は、負荷分散装置120から周期的にトラフィック情報を取得する(ステップS1005)。
具体的には、情報取得部311が、負荷分散装置120にトラフィック情報の取得要求を送信する。負荷分散装置120は、当該取得要求を受信した場合、負荷管理情報121に格納される情報をトラフィック情報として情報取得部311に送信する。なお、トラフィック情報を取得するタイミングは、管理サーバ100を操作するオペレータが任意に設定できる。また、負荷分散装置120が、周期的に、情報取得部311に対してトラフィック情報を送信してもよい。
管理サーバ100は、通信サーバ110−1及び通信サーバ110−2のそれぞれから周期的に稼働情報を取得する(ステップS1006、ステップS1007)。
具体的には、情報取得部311が、通信サーバ110−1及び通信サーバ110−2に稼働情報の取得要求を送信する。通信サーバ110−1及び通信サーバ110−2のそれぞれは、当該取得要求を受信した場合、通信サーバ110の識別子、CPU使用率、メモリ使用率、収容ユーザ数、及び処理したパケットの容量等を稼働情報として情報取得部311に送信する。なお、稼働情報を取得するタイミングは、管理サーバ100を操作するオペレータが任意に設定できる。また、通信サーバ110が、周期的に、情報取得部311に対して稼働情報を送信してもよい。
管理サーバ100は、スケールアウトをするか否かを判定する。実施例1では、負荷分散処理の開始条件とセッション情報の移行条件とが一致するため、管理サーバ100は、移行条件情報及び稼働管理情報315に基づいて、スケールアウトするか否かを判定する。
ここでは、管理サーバ100が、スケールアウトすると判定したものとする。この場合、管理サーバ100は、負荷分散処理を実行する(ステップS1008)。実施例1の負荷分散処理では、負荷分散制御部312が、通信システムに通信サーバ110−3を追加し、当該通信サーバ110−3を起動する。
実施例1では、管理サーバ100は、負荷分散処理の実行を、セッション情報の移行契機として検知する。したがって、管理サーバ100は、負荷分散処理の完了後、セッション情報の移行処理を開始する。セッション情報の移行処理では、まず、管理サーバ100は、移行順番決定処理を実行する(ステップS1009)。
移行順番決定処理では、セッション情報移行制御部313が、新たな通信サーバ110−3に移行する複数のセッション情報を選択し、選択された複数のセッション情報の移行順番を決定する。選択された複数のセッション情報には、一つ以上の第1のセッション情報、及び一つ以上の第2のセッション情報が含まれる。
ここでは、セッションIDが「BBBB」のセッション情報、及びセッションIDが「DDDD」のセッション情報が新たな通信サーバ110−3に移行する第1のセッション情報として選択されたものとする。また、セッション情報の移行順番については、最初に第1のセッション情報が送信され、その後、第2のセッション情報が送信されるものとする。
なお、管理サーバ100が実行する処理については、図11A、図11B、及び図12を用いて後述する。
管理サーバ100は、通信サーバ110−1に第1のセッション情報の移行指示を送信する(ステップS1010)。また、管理サーバ100は、通信サーバ110−2に第1のセッション情報の移行指示を送信する(ステップS1011)。
具体的には、セッション情報移行制御部313が、セッションIDが「BBBB」の第1のセッション情報の移行指示を通信サーバ110−1に送信する。また、セッション情報移行制御部313が、セッションIDが「DDDD」の第1のセッション情報の移行指示を通信サーバ110−2に送信する。
通信サーバ110−1は、移行指示を受信した場合、選択された第1のセッション情報、すなわち、セッションIDが「BBBB」のセッション情報を通信サーバ110−3に送信する(ステップS1012)。また、通信サーバ110−2は、移行指示を受信した場合、選択された第1のセッション情報、すなわち、セッションIDが「DDDD」のセッション情報を通信サーバ110−3に送信する(ステップS1013)。
通信サーバ110−3は、通信サーバ110−1及び通信サーバ110−2のそれぞれから受信した第1のセッション情報をデータベース111−5に格納する。
管理サーバ100は、第1のセッション情報の移行が完了した後、負荷分散装置120に負荷管理情報121の更新指示を送信する(ステップS1014)。更新指示には、更新対象のセッション情報のセッションID、移行先の通信サーバ110の識別子、及び移行先の通信サーバ110のアドレスが含まれる。
このとき、負荷分散装置120は、更新指示にしたがって、負荷管理情報121を更新する。具体的には以下のような処理が実行される。
まず、負荷分散装置120は、受信した更新指示から、セッションID、移行先の通信サーバ110の識別子、及び移行先の通信サーバ110のアドレスを取得する。負荷分散装置120は、セッションID501が取得されたセッションIDに一致するエントリを検索する。負荷分散装置120は、検索されたエントリの通信サーバID502に取得された移行先の通信サーバ110の識別子を設定し、また、当該エントリの通信サーバアドレス503に取得された移行先の通信サーバ110のアドレスを設定する。また、負荷分散装置120は、送信量505及び受信量506の値を初期化する。
以上の処理によって、新たな通信サーバ110−3が、移行した第1のセッション情報に対応するセッションを用いた通信を管理することになる。すなわち、負荷分散装置120は、セッションIDが「AAAA」であるセッションを用いた通信のIPパケットを通信サーバ110−1に送信し(ステップS1015)、セッションIDが「BBBB」であるセッションを用いた通信のIPパケットを通信サーバ110−3に送信する(ステップS1016)。また、負荷分散装置120は、セッションIDが「CCCC」であるセッションを用いた通信のIPパケットを通信サーバ110−2に送信し(ステップS1017)、セッションIDが「DDDD」であるセッションを用いた通信のIPパケットを通信サーバ110−3に送信する(ステップS1018)。
管理サーバ100は、通信サーバ110−1及び通信サーバ110−2のそれぞれに第2のセッション情報の移行指示を送信する(ステップS1019、ステップS1020)。移行指示には、管理サーバ100によって選択された一つ以上の第2のセッション情報のセッションIDが含まれる。
通信サーバ110−1は、移行指示を受信した場合、データベース111−2に格納される複数の第2のセッション情報のうち、移行指示に含まれるセッションIDに一致する第2のセッション情報を通信サーバ110−3に送信する(ステップS1021)。
通信サーバ110−2は、移行指示を受信した場合、データベース111−4に格納される複数の第2のセッション情報のうち、移行指示に含まれるセッションIDに一致する第2のセッション情報を通信サーバ110−3に送信する(ステップS1022)。
通信サーバ110−3は、通信サーバ110−1及び通信サーバ110−2のそれぞれから受信した第2のセッション情報をデータベース111−6に格納する。
管理サーバ100は、第2のセッション情報の移行が完了した後、負荷分散装置120に負荷管理情報121の更新指示を送信する(ステップS1023)。これによって、セッション情報の移行処理が完了する。
負荷分散装置120は、更新指示にしたがって、負荷管理情報121を更新する。なお、更新方法は、ステップS1014において説明した方法と同一であるため、説明を省略する。
次に、管理サーバ100が実行する処理の詳細について説明する。
図11A及び図11Bは、実施例1の管理サーバ100が実行する処理の概要を説明するフローチャートである。
管理サーバ100は、移行条件情報の登録を受け付ける(ステップS1101)。管理サーバ100は、移行条件情報を主記憶装置302又は副記憶装置303に格納する。なお、移行条件情報は、管理サーバ100に予め設定されてもよい。
管理サーバ100は、複数の通信サーバ110の各々から稼働情報を取得する(ステップS1102)。また、管理サーバ100は、負荷分散装置120からトラフィック情報を取得する(ステップS1103)。
具体的には、情報取得部311が、複数の通信サーバ110から稼働情報を取得し、また、負荷分散装置120からトラフィック情報を取得する。
管理サーバ100は、複数の通信サーバ110の各々取得された稼働情報、及び負荷分散装置120から取得されたトラフィック情報に基づいて、稼働管理情報315を更新する(ステップS1104)。具体的には、以下のような処理が実行される。
情報取得部311は、取得された複数の稼働情報の中から一つの稼働情報を選択し、物理サーバID701が当該稼働情報に含まれる通信サーバ110の識別子と一致するエントリを検索する。情報取得部311は、稼働情報に含まれる値を、検索されたエントリのCPU使用率702、メモリ使用率703、収容ユーザ数704、及び処理データ量705のそれぞれに上書きする。管理サーバ100は、取得された複数の稼働情報について前述した処理を繰り返し実行する。
情報取得部311は、トラフィック情報(負荷管理情報121)の中から一つのエントリを選択する。情報取得部311は、物理サーバID701が選択されたエントリの通信サーバID502と一致するエントリを検索する。情報取得部311は、検索されたエントリの通信量706に受信量506に格納される値を上書きする。情報取得部311は、トラフィック情報に含まれるすべてのエントリについて前述した処理を繰り返し実行する。
なお、通信量706には、送信量505に格納される値を設定してもよいし、送信量505及び受信量506のそれぞれに格納される値を設定してもよい。
以上がステップS1104の処理の説明である。
次に、管理サーバ100は、移行条件情報及び稼働管理情報315に基づいて、スケールアウトするか否かを判定する(ステップS1105)。
具体的には、負荷分散制御部312が、移行条件情報及び稼働管理情報315に基づいて、スケールアウトするか否かを判定する。
例えば、図9の確認領域930に表示された移行条件情報が設定されている場合、負荷分散制御部312は、稼働管理情報315のCPU使用率702及びメモリ使用率703を参照し、CPU使用率が80パーセントより大きい通信サーバ110又はメモリ使用率が75パーセントより大きい通信サーバ110が存在するか否かを判定する。
前述した条件を満たす通信サーバ110が少なくとも一つ存在する場合、負荷分散制御部312は、スケールアウトすると判定する。
スケールアウトとしないと判定された場合、管理サーバ100は、ステップS1102に戻り、同様の処理を実行する。
スケールアウトすると判定された場合、管理サーバ100は、負荷分散処理を実行する(ステップS1106)。
具体的には、負荷分散制御部312が、新たな通信サーバ110を通信システムに追加し、また、新たな通信サーバ110を起動する。なお、負荷分散処理は、公知のものを用いればよいため本明細書では詳細な説明は省略する。
実施例1では、通信システムに新たに追加された通信サーバ110が、セッション情報の移行先の通信サーバ110となる。そのため、負荷分散制御部312は、移行先の通信サーバ110の識別子及びアドレス等の、通信サーバ110の識別情報をセッション情報移行制御部313に出力する。
管理サーバ100は、負荷分散処理の完了後、移行条件情報及び稼働管理情報315に基づいて、セッション情報を移行するか否かを判定する(ステップS1107)。ステップS1107の処理は、セッション情報の移行契機を検知するための処理である。
具体的には、セッション情報移行制御部313が、移行条件情報及び稼働管理情報315に基づいて、セッション情報を移行するか否かを判定する。実施例1では、負荷分散処理の開始条件と、セッション情報の移行条件とが一致するため、ステップS1105の判定結果をそのまま利用すればよい。
セッション情報を移行しないと判定された場合、管理サーバ100は、ステップS1102に戻り、同様の処理を実行する。
セッション情報を移行すると判定された場合、管理サーバ100は、移行条件情報及び属性管理情報314に基づいて、移行順番決定処理を実行する(ステップS1108)。
具体的には、セッション情報移行制御部313が、移行元の通信サーバ110が保持するデータベース111に格納される複数のセッション情報の中から、移行させる複数のセッション情報を選択する。また、セッション情報移行制御部313は、選択された複数のセッション情報の移行順番を決定する。移行順番決定処理の詳細は、図12を用いて後述する。
管理サーバ100は、移行元の通信サーバ110から移行先の通信サーバ110に一つ以上の第1のセッション情報を移行する(ステップS1109)。
具体的には、セッション情報移行制御部313が、ステップS1108において選択された一つ以上の第1のセッション情報の移行指示を移行元の通信サーバ110に送信する。当該移行指示には、選択された一つ以上の第1のセッション情報のセッションID、移行先の通信サーバ110の識別子、及び移行先の通信サーバ110のアドレスが含まれる。
移行元の通信サーバ110は、管理サーバ100から移行指示を受信した場合、当該移行指示にしたがって、データベース111から一つ以上の第1のセッション情報を読み出し、移行先の通信サーバ110に読み出された一つ以上の第1のセッション情報を送信する。移行元の通信サーバ110は、第1のセッション情報の移行が完了した後、管理サーバ100に第1の移行完了通知を送信する。なお、移行先の通信サーバ110が、第1の移行完了通知を送信してもよい。
移行先の通信サーバ110は、受信した一つ以上の第1のセッション情報をデータベース111に格納する。また、移行先の通信サーバ110は、移行された第1のセッション情報に対応するセッションを用いた通信処理を開始する。
管理サーバ100は、移行元の通信サーバ110から第1の移行完了通知を受信した場合(ステップS1110)、負荷分散装置120に負荷管理情報121の更新指示を送信する(ステップS1111)。
具体的には、セッション情報移行制御部313が、移行した一つ以上の第1のセッション情報のセッションID、移行先の通信サーバ110の識別子、及び移行先の通信サーバ110のアドレスを含む更新指示を負荷分散装置120に送信する。
管理サーバ100は、第1のセッション情報の移行が完了したか否かを判定する(ステップS1112)。
具体的には、セッション情報移行制御部313が、移行指示を送信したすべての通信サーバ110から第1の移行完了通知を受信したか否かを判定する。移行指示を送信したすべての通信サーバ110から第1の移行完了通知を受信した場合、セッション情報移行制御部313は、第1のセッション情報の移行が完了したと判定する。
第1のセッション情報の移行が完了していないと判定された場合、管理サーバ100は、ステップS1110に戻り、同様の処理を実行する。
第1のセッション情報の移行が完了したと判定された場合、管理サーバ100は、移行元の通信サーバ110から移行先の通信サーバ110に一つ以上の第2のセッション情報を移行する(ステップS1113)。
具体的には、セッション情報移行制御部313が、ステップS1108において選択された一つ以上の第2のセッション情報の移行指示を移行元の通信サーバ110に送信する。当該移行指示には、選択された一つ以上の第2のセッション情報のセッションID、移行先の通信サーバ110の識別子、及び移行先の通信サーバ110のアドレスが含まれる。
移行元の通信サーバ110は、管理サーバ100から移行指示を受信した場合、当該移行指示にしたがって、データベース111から一つ以上の第2のセッション情報を読み出し、移行先の通信サーバ110に読み出された一つ以上の第2のセッション情報を送信する。移行元の通信サーバ110は、第2のセッション情報の移行が完了した後、管理サーバ100に第2の移行完了通知を送信する。
管理サーバ100は、移行元の通信サーバ110から第2の移行完了通知を受信した場合(ステップS1114)、負荷分散装置120に負荷管理情報121の更新指示を送信する(ステップS1115)。
具体的には、セッション情報移行制御部313が、移行した一つ以上の第2のセッション情報のセッションID、移行先の通信サーバ110の識別子、及び移行先の通信サーバ110のアドレスを含む更新指示を負荷分散装置120に送信する。
管理サーバ100は、第2のセッション情報の移行が完了したか否かを判定する(ステップS1116)。
具体的には、セッション情報移行制御部313が、移行指示を送信したすべての通信サーバ110から第2の移行完了通知を受信したか否かを判定する。移行指示を送信したすべての通信サーバ110から第2の移行完了通知を受信した場合、セッション情報移行制御部313は、第1のセッション情報の移行が完了したと判定する。
第2のセッション情報の移行が完了していないと判定された場合、管理サーバ100は、ステップS1114に戻り、同様の処理を実行する。
第2のセッション情報の移行が完了したと判定された場合、管理サーバ100は、ステップS1102に戻り、同様の処理を実行する。
実施例1では、セッション情報の移行条件が負荷分散処理の開始条件と一致するように設定されているが、本発明はこれに限定されない。セッション情報の移行条件と負荷分散処理の開始条件とが異なるように設定されてもよい。この場合、管理サーバ100は、ステップS1104の処理を実行した後、移行条件情報及び稼働管理情報315に基づいて、セッション情報を移行するか否かを判定する(ステップS1107)。すなわち、ステップS1105及びステップS1106の処理が省略される。
図12は、実施例1の管理サーバ100のセッション情報移行制御部313が実行する移行順番決定処理の一例を説明するフローチャートである。
セッション情報移行制御部313は、処理対象の通信サーバ110、すなわち、セッション情報の移行元の通信サーバ110を決定する(ステップS1201)。
具体的には、セッション情報移行制御部313は、負荷分散制御部312から出力された負荷分散処理の処理結果に基づいて、移行元の通信サーバ110を決定する。なお、セッション情報の移行条件が負荷分散処理の開始条件と異なる場合、セッション情報移行制御部313は、移行条件情報に設定された移行条件を満たす通信サーバ110を処理対象の通信サーバ110として決定する。
セッション情報移行制御部313は、属性管理情報314に基づいて、処理対象の通信サーバ110が保持するデータベース111に格納される複数のセッション情報の中から、移行候補の複数のセッション情報を特定する(ステップS1202)。
具体的には、セッション情報移行制御部313は、属性管理情報314を参照して、通信サーバID601が処理対象の通信サーバ110の識別子と一致するエントリを検索する。セッション情報移行制御部313は、検索されたエントリの属性604を参照し、データタイプ606に「マスタ」が設定されたセッション情報を移行候補のセッション情報として特定する。
セッション情報移行制御部313は、移行する第1のセッション情報の数、及び移行する第2のセッション情報の数を決定する(ステップS1203)。
移行するセッション情報の数の決定方法は様々考えられる。例えば、セッション情報移行制御部313は、移行元の通信サーバ110のデータベース111及び移行先の通信サーバ110のデータベース111に格納される第1のセッション情報の数が均一になるように、移行する第1のセッション情報の数を決定する。セッション情報移行制御部313は、移行する第2の数についても同様の方法を用いて決定する。以下の説明では、移行する第1のセッション情報の数を第1の移行数、移行する第2のセッション情報の数を第2の移行数とも記載する。
なお、前述した決定方法は一例であってこれに限定されない。例えば、以下のような決定方法を用いてもよい。
(1)セッション情報移行制御部313は、移行元の通信サーバ110の性能及び移行先の通信サーバ110の性能に基づいて、第1の移行数及び第2の移行数を決定する。この場合、セッション情報移行制御部313は、公知の技術を用いて通信サーバ110の性能値を算出し、移行元の通信サーバ110の性能値及び移行先の通信サーバ110の性能値の比に基づいて、第1の移行数及び第2の移行数を決定する。
(2)移行するセッション情報の数が予め移行条件情報に含まれる場合、セッション情報移行制御部313は、移行条件情報に含まれる数に基づいて、第1の移行数及び第2の移行数を決定する。
以上が、ステップS1203の処理の説明である。
次に、セッション情報移行制御部313は、移行候補の複数の第1のセッション情報の中から、第1の移行数だけ第1のセッション情報を選択する(ステップS1204)。
実施例1では、セッション情報移行制御部313は、データベース111の上のエントリから順に、第1の移行数だけ第1のセッション情報を選択するものとする。
なお、第1のセッション情報の選択方法は前述したものに限定されない。例えば、移行条件情報にセッションの優先度にしたがってセッション情報を選択する旨の情報が含まれる場合、セッション情報移行制御部313は、セッションの優先度が高いものから順に、第1の移行数だけ第1のセッション情報を選択する。
セッション情報移行制御部313は、移行候補の複数の第2のセッション情報の中から、第2の移行数だけ第2のセッション情報を選択する(ステップS1205)。ステップS1205の処理はステップS1204と同一である。
セッション情報移行制御部313は、移行条件情報に基づいて、選択された第1のセッション情報及び第2のセッション情報の移行順番を決定する(ステップS1206)。
実施例1では、セッション情報移行制御部313は、第1のセッション情報、及び第2のセッション情報の順に送信することを決定する。
セッション情報移行制御部313は、処理結果に基づいて移行制御情報を生成する(ステップS1207)。その後、セッション情報移行制御部313は、処理を終了する。
具体的には、セッション情報移行制御部313は、移行元の通信サーバ110の識別情報、移行先の通信サーバ110の識別情報、選択された第1のセッション情報のセッションID、選択された第2のセッション情報のセッションID、及び移行順番を含む移行制御情報を生成する。通信サーバ110の識別情報には、通信サーバ110の識別子及びアドレスが含まれる。
なお、移行制御情報には、第2のセッション情報の送信タイミングが含まれてもよい。移行先の通信サーバ110は、第1のセッション情報を受信した後、当該第1のセッション情報を用いて通信処理を開始する。移行先の通信サーバ110に多くの第2のセッション情報を送信すると、通信処理に使用可能な帯域が確保できない。そのため、帯域を確保するために、予め送信タイミングを設定することが考えられる。
移行順番決定処理が終了した後、セッション情報移行制御部313は、移行制御情報に基づいて、選択されたセッション情報の移行指示を移行元の通信サーバ110に送信する。なお、セッション情報移行制御部313は、生成された移行制御情報を負荷分散装置120等の他の装置に送信してもよい。この場合、当該他の装置が、移行制御情報に基づいて、複数のセッション情報の移行を制御する。
実施例1によれば、セッション情報の属性に応じて、移行元の通信サーバ110から移行先の通信サーバ110に送信する複数のセッション情報の移行順番を決定できる。
より具体的には、管理サーバ100は、最初に、通信サーバ110−1及び通信サーバ110−2が保持するデータベース111に格納される第1のセッション情報を通信サーバ110−3に移行させ、第1のセッション情報の移行が完了した後に、負荷分散装置120に負荷管理情報121の更新を指示する。そのため、通信サーバ110−3は、負荷管理情報121の更新後、第1のセッション情報に対応するセッションを用いた通信の処理を実行できる。
一方、第2のセッション情報に対応するセッションについては、実際に通信が行われていないため、すぐに第2のセッション情報を通信サーバ110−3に移行させなくても移動端末201の通信に影響がない。そのため、管理サーバ100は、第1のセッション情報の移行後、所定のタイミングで、移行元の通信サーバ110に、第2のセッション情報の移行を指示する。
これによって、スケールアウトによる負荷分散の効果を迅速に反映できる。また、スケールアウトに伴うサービスの中断時間を短縮できる。
なお、実施例1では、セッション情報の移行条件が負荷分散処理の開始条件と一致するものとして説明したが、本発明はこれに限定されない。例えば、障害発生をセッション情報の移行条件としてもよい。これによって、障害発生によるサービスダウンの時間を短縮することができ、また、冗長構成の再構築に要する時間を短縮できる。
実施例2では、第2のセッション情報の移行指示が送信される通信サーバ110が実施例1と異なる。具体的には、管理サーバ100は、移行元の通信サーバ110が保持するデータベース111のコピーであるバックアップデータ112を保持する通信サーバ110に、第2のセッション情報の移行指示を送信する。以下、実施例1との差異を中心に実施例2について説明する。
図13は、実施例2の通信システムの構成例を示す説明図である。
実施例2では、通信サーバ110−1の通信制御部が管理するセッション情報を通信サーバ110−3に移行することを想定する。また、通信サーバ110−2は、データベース111−1及びデータベース111−2のコピーであるバックアップデータ112−3及びバックアップデータ112−4のみを保持する待機系であるものとする。
実施例2では、待機系である通信サーバ110−2が、第2のセッション情報の移行元の通信サーバ110として設定される。通信サーバ110−2は、管理サーバ100から移行指示を受信した場合、通信サーバ110−1が保持するデータベース111−2のコピーであるバックアップデータ112−4から、第2の移行数だけ第2のセッション情報を通信サーバ110−3に送信する。
実施例2の管理サーバ100及び通信サーバ110の構成は実施例1の構成と同一であるため説明を省略する。実施例2の各種情報は、実施例1の各種情報と同一であるため説明を省略する。
図14は、実施例2の通信システムの処理の流れを説明するシーケンス図である。
ステップS1401及びステップS1402の処理は、ステップS1001及びステップS1002の処理と同一である。ステップS1403からステップS1408の処理は、ステップS1005からステップS1010の処理と同一である。ステップS1409の処理は、ステップS1012の処理と同一である。ステップS1410からステップS1412の処理は、ステップS1014からステップS1016の処理と同一である。また、ステップS1415の処理は、ステップS1023の処理と同一である。
実施例2では、第1のセッション情報の移行が完了した後、管理サーバ100が、通信サーバ110−2に、第2のセッション情報の移行指示を送信する(ステップS1413)。移行指示に含まれる情報は、実施例1と同一である。
通信サーバ110−2は、移行指示を受信すると、データベース111−2のコピーであるバックアップデータ112−4から、第2の移行数だけ第2のセッション情報を読み出して、通信サーバ110−3に送信する(ステップS1414)。
実施例2では、移行条件情報に、バックアップデータ112から複数の第2のセッション情報を移行させる旨の情報が含まれる。また、実施例2では、移行順番決定処理の処理内容が一部異なる。
ステップS1201からステップS1204の処理は実施例1の処理と同一である。また、ステップS1206の処理は実施例1の処理と同一である。実施例2ではステップS1205の処理内容が一部異なる。
セッション情報移行制御部313は、データベース111の上のエントリから順に、第2の移行数だけ第2のセッション情報を選択する。
セッション情報移行制御部313は、属性管理情報314を参照し、セッションID603が選択されたセッション情報のセッションIDと一致し、かつ、データタイプ606が「バックアップ」であるセッション情報を格納するバックアップデータ112を保持する通信サーバ110を検索する。すなわち、セッション情報移行制御部313は、データベース111のコピーであるバックアップデータ112を保持する通信サーバ110を検索する。
セッション情報移行制御部313は、検索された通信サーバ110を、第2のセッション情報の移行元の通信サーバ110に決定する。検索された通信サーバ110が複数存在する場合、セッション情報移行制御部313は、待機系の通信サーバ110を優先的に選択する。
以上が実施例2のステップS1205の処理の説明である。
また、実施例2ではステップS1207の処理が一部異なる。具体的には、セッション情報移行制御部313は、第1のセッション情報の移行元の通信サーバ110の識別情報、第2のセッション情報の移行元の通信サーバ110の識別情報、移行先の通信サーバ110の識別情報、選択された第1のセッション情報のセッションID、選択された第2のセッション情報のセッションID、及び移行順番を含む移行制御情報を生成する。
以上の処理によって、管理サーバ100は、ステップS1413において、通信サーバ110−2に第2のセッション情報の移行指示を送信できる。
実施例2によれば、待機系の通信サーバ110が、第2のセッション情報を移行するため、第1のセッション情報の移行元の通信サーバ110の処理負荷を低減できる。
実施例3では、仮想サーバを用いて通信サーバ110を実現している点が実施例1と異なる。以下、実施例1との差異を中心に実施例3について説明する。
図15は、実施例3の通信システムの構成例を示す説明図である。
実施例3では、仮想化技術が適用された物理サーバ1500上に生成された仮想サーバを用いて通信サーバ1520を実現している点が実施例1と異なる構成である。
具体的には、仮想化技術が適用された物理サーバ1500では、ハイパバイザ1510を実現するプログラムが実行される。ハイパバイザ1510は、物理サーバ1500の計算機リソースを論理的に分割することによって、一つ以上の仮想サーバを生成する。
実施例3の通信サーバ1520−1は、複数の第1のセッション情報を格納するデータベース111−1、及び複数の第2のセッション情報を格納するデータベース111−2を保持する。また、通信サーバ1520−1は、データベース111−3のバックアップデータ112−1、及びデータベース111−4のバックアップデータ112−2を保持する。
実施例3の通信サーバ1520−2は、複数の第1のセッション情報を格納するデータベース111−3、及び複数の第2のセッション情報を格納するデータベース111−4を保持する。通信サーバ1520−2は、データベース111−1のバックアップデータ112−3、及びデータベース111−2のバックアップデータ112−4を保持する。
実施例3では、通信サーバ1520−1の負荷が増大し、物理サーバ1500−3上に新たに通信サーバ1520−5が生成されるものとする。また、管理サーバ100は、通信サーバ1520−1が保持するデータベース111−1に格納される複数の第1のセッション情報の一部を通信サーバ1520−5のデータベース111−5に移行し、また、通信サーバ1520−1が保持するデータベース111−2に格納される複数の第2のセッション情報の一部を通信サーバ1520−5のデータベース111−6に移行するものとする。
データベース111に格納される複数のセッション情報は実施例1と同一の情報であるため説明を省略する。
負荷管理情報121は実施例1と同一の情報であるため説明を省略する。ただし、通信サーバID502に格納される識別子が実施例1と異なる。
具体的には、実施例3では、物理サーバ1500の識別子及び通信サーバ1520の識別子を組み合わせた情報が通信サーバIDに格納される。物理サーバ1500上の仮想サーバには一意な識別子が割り当てられるが、当該識別子は物理サーバ1500内で一意な識別子であり、他の物理サーバ1500上の仮想サーバと重複する可能性があるためである。
属性管理情報314については、構成種別602に「仮想」が格納される点が実施例と異なる。他のカラムについては、実施例1と同一の情報が格納される。
図16は、実施例3の管理サーバ100が保持する稼働管理情報315の一例を示す説明図である。
実施例3の稼働管理情報315のエントリは、物理サーバID1601、CPU使用率1602、メモリ使用率1603、仮想サーバID1604、仮想CPU使用率1605、仮想メモリ使用率1606、収容ユーザ数1607、処理データ量1608、及び通信量1609を含む。
物理サーバID1601は、物理サーバ1500を一意に識別するための識別子である。CPU使用率1602は、物理サーバ1500が有するCPUの使用率である。メモリ使用率1603は、物理サーバ1500が有するメモリの使用率である。
仮想サーバID1604は、物理サーバ1500上で稼働する仮想サーバを一意に識別するための識別子である。
仮想CPU使用率1605は、通信サーバ1520に対応する仮想サーバに割り当てられた仮想CPUの使用率である。仮想メモリ使用率1606は、通信サーバ1520に対応する仮想サーバに割り当てられた仮想メモリの使用率である。収容ユーザ数1607は、通信サーバ1520が収容する移動端末201の数である。
処理データ量1608は、通信サーバ1520が処理したデータ(パケット)の容量である。処理データ量1608には、一定時間内に処理されたパケット数若しくはパケット量、又は、これまでに処理されたパケット数若しくはパケット量の積算値が格納される。通信量1609は、負荷分散装置120が通信サーバ110に転送したデータ(パケット)の容量である。通信量1609には、負荷分散装置120が通信サーバ1520に一定時間内に転送したパケット数若しくはパケット量、若しくは、これまでに通信サーバ110に転送したパケット数若しくはパケット量の積算値、又は、通信サーバ1520が負荷分散装置120へ一定時間内に送信したパケット数若しくはパケット量、若しくは、これまで負荷分散装置120へ送信したパケット数若しくはパケット量の積算値である。
図17は、実施例3の通信システムの処理の流れを説明するシーケンス図である。図17では、説明の簡単のために物理サーバ1500−2を省略している。
負荷分散処理の実行前において、負荷分散装置120は、セッションIDが「AAAA」であるセッションを用いた通信のIPパケット、及びセッションIDが「BBBB」であるセッションを用いた通信のIPパケットを通信サーバ1520−1に送信する(ステップS1701、ステップS1702)。
ハイパバイザ1510−1は、負荷分散装置120からパケットを受信した場合、当該パケットを解析することによって、通信サーバ1520−1宛てのパケットであることを把握する。ハイパバイザ1510−1は、受信したパケットを通信サーバ1520−1に送信する。
管理サーバ100は、負荷分散装置120から周期的にトラフィック情報を取得する(ステップS1703)。ステップS1703の処理はステップS1005と同一の処理である。
管理サーバ100は、周期的に、物理サーバ1500−1の稼働情報、及び物理サーバ1500−1上で稼働する通信サーバ1520の稼働情報を取得する(ステップS1704)。
具体的には、情報取得部311が、物理サーバ1500−1に稼働情報の取得要求を送信する。物理サーバ1500のハイパバイザ1510は、当該取得要求を受信した場合、物理サーバ1500の稼働情報を取得し、また、当該物理サーバ1500上で稼働するすべての通信サーバ1520の稼働情報を取得する。ハイパバイザ1510は、物理サーバ1500及び通信サーバ1520のそれぞれの稼働情報を情報取得部311に送信する。
なお、ハイパバイザ1510が物理サーバ1500及び通信サーバ1520から稼働情報を取得する方法は公知の技術であるため説明を省略する。
管理サーバ100は、周期的に、物理サーバ1500−3の稼働情報、及び物理サーバ1500−3上で稼働する通信サーバ1520の稼働情報を取得する(ステップS1705)。この時点では、通信サーバ1520−5は生成されていないため、通信サーバ1520−5の稼働情報を取得できない。
管理サーバ100は、スケールアウトするか否かを判定する。判定方法は実施例1と同一の判定方法である。
ここでは、管理サーバ100がスケールアウトすると判定したものとする。この場合、管理サーバ100は、負荷分散処理を実行する(ステップS1706)。実施例3の負荷分散処理では、負荷分散制御部312が、物理サーバ1500−3に通信サーバ1520−5を追加し、当該通信サーバ1520−5を起動する。
管理サーバ100は、負荷分散処理の完了後、セッション情報の移行処理を開始する。セッション情報の移行処理では、まず、管理サーバ100は、移行順番決定処理を実行する(ステップS1707)。ステップS1707の処理は、通信サーバ1520が仮想サーバである点がステップS1009の処理と異なる。ただし、ステップS1707の処理内容は、ステップS1009の処理と同一である。
ここでは、セッションIDが「BBBB」のセッション情報が新たな通信サーバ1520−5に移行する第1のセッション情報として選択されたものとする。また、セッション情報の順番については、最初に第1のセッション情報が送信され、その後、第2のセッション情報が送信されるものとする。
管理サーバ100は、通信サーバ1520−1に第1のセッション情報の移行指示を送信する(ステップS1708)。
具体的には、セッション情報移行制御部313が、セッションIDが「BBBB」のセッション情報の移行指示を通信サーバ1520−1に送信する。
物理サーバ1500−1のハイパバイザ1510−1は、移行指示を受信した場合、当該移行指示を解析することによって、通信サーバ1520−1宛ての移行指示であることを把握する。ハイパバイザ1510−1は、受信した移行指示を通信サーバ1520−1に送信する。
通信サーバ1520−1は、移行指示を受信した場合、第1のセッション情報、すなわち、セッションIDが「BBBB」のセッション情報を通信サーバ1520−5に送信する(ステップS1709)。
物理サーバ1500−3のハイパバイザ1510−3は、セッション情報を含むパケットを受信した場合、当該パケットを解析することによって、通信サーバ1520−5宛てのセッション情報であることを把握する。ハイパバイザ1510−3は、通信サーバ1520−5にセッション情報を送信する。通信サーバ1520−5は、受信したセッション情報をデータベース111−5に格納する。
管理サーバ100は、第1のセッション情報の移行が完了した後、負荷分散装置120に負荷管理情報121の更新指示を送信する(ステップS1710)。ステップS1710の処理は、ステップS1014と同一の処理である。ただし、更新指示に含まれる移行先の通信サーバ1520の識別子は、物理サーバ1500−3及び通信サーバ1520−5の識別子が組み合わされた情報である。
以上の処理によって、新たな通信サーバ1520−5が、移行した第1のセッション情報に対応するセッションを用いた通信を管理することとなる。すなわち、負荷分散装置120は、セッションIDが「AAAA」であるセッションを用いた通信のIPパケットを通信サーバ1520−1に送信し(ステップS1711)、セッションIDが「BBBB」であるセッションを用いた通信のIPパケットを通信サーバ1520−5に送信する(ステップS1712)。
管理サーバ100は、通信サーバ1520−1に第2のセッション情報の移行指示を送信する(ステップS1713)。ステップS1713の処理は、ステップS1019と同一の処理である。
通信サーバ1520−1のハイパバイザ1510−1は、移行指示を含むパケットを受信した場合、当該パケットを解析することによって、通信サーバ1520−1宛ての移行指示であることを把握する。ハイパバイザ1510−1は、通信サーバ1520−1に移行指示を送信する。
通信サーバ1520−1は、移行指示を受信した場合、データベース111−2に格納される複数の第2のセッション情報のうち、移行指示に含まれるセッションIDに対応する第2のセッション情報を通信サーバ1520−5に送信する(ステップS1714)。
物理サーバ1500−3のハイパバイザ1510−3は、セッション情報を含むパケットを受信した場合、当該パケットを解析することによって、通信サーバ1520−5宛てのセッション情報であることを把握する。ハイパバイザ1510−3は、通信サーバ1520−5にセッション情報を送信する。通信サーバ1520−5は、受信したセッション情報をデータベース111−6に格納する。
管理サーバ100は、第2のセッション情報の移行が完了した後、負荷分散装置120に負荷管理情報121の更新指示を送信する(ステップS1715)。ステップS1715の処理は、ステップS1023の処理と同一である。ただし、更新指示に含まれる移行先の通信サーバ1520の識別子は、物理サーバ1500−3及び通信サーバ1520−5の識別子が組み合わされ情報である。
実施例3によれば、仮想化技術を適用した物理サーバ1500であっても、実施例1と同様の効果を奏することができる。
実施例4では、管理サーバ100が、ポリシ情報に基づいて、セッション情報の移行順番を決定する点が実施例1と異なる。以下、実施例1との差異を中心に実施例4について説明する。
通信システムの構成は実施例1と同一であるため説明を省略する。図18は、実施例4の管理サーバ100のハードウェア構成及びソフトウェア構成の一例を示すブロック図である。
管理サーバ100のハードウェア構成は、実施例1のハードウェア構成と同一のものである。実施例4では、ソフトウェア構成が異なる。具体的には、主記憶装置302にポリシ情報1800が格納される。なお、主記憶装置302に格納されるその他のプログラム及びその他の情報は、実施例1のプログラム及び情報と同一のものである。
ポリシ情報1800は、セッション情報移行制御部313が複数のセッション情報の移行順番を決定する場合に参照する情報である。ポリシ情報1800は、予め、管理サーバ100に設定されているものとする。なお、オペレータは、ポリシ情報1800を変更できる。
ここで、ポリシ情報1800について説明する。図19は、実施例4の管理サーバ100が保持するポリシ情報1800の一例を示す説明図である。
ポリシ情報1800には、一つの移行条件に対して一つのエントリが存在する。すなわち、ポリシ情報1800には、一つの移行条件情報に対して一つのエントリが存在する。ポリシ情報1800のエントリは、ポリシID1901、移行条件1902、及び移行順番1903を含む。
ポリシID1901は、ポリシを一意に識別するための識別子である。移行条件1902は、セッション情報の移行契機を検知するための移行条件である。移行順番1903は、複数のセッション情報の移行順番を決定するための指標となる情報である。移行順番1903には、セッション情報に対応するセッションを用いた通信の中断時間が短く、かつ、セッション情報の移行による効果が迅速に通信システムに反映される情報が格納される。
実施例1では、オペレータがユーザインタフェース900を用いて、移行条件及び移行順番を設定することによって移行条件情報を入力し、管理サーバ100は、移行条件情報の入力に基づいて、移行順番を決定していた。実施例4では、管理サーバ100が、予め、移行条件毎に最適な移行順番が設定された移行条件情報をポリシ情報1800として保持し、移行条件に応じて、自動的に複数のセッション情報の移行順番を決定する。
ポリシ情報1800には、移行条件に応じて、様々なポリシを設定できる。例えば、CPUの負荷の増大、メモリ容量の不足、又は収容ユーザ数の増加が移行条件となる場合、それぞれの移行条件に対してポリシを設定できる。
CPUの負荷の増大が移行条件の場合、通信サーバ110のCPUの負荷が転送量の増加することによって高くなった場合、負荷分散処理の効果を迅速に反映するために、最初に第1のセッションを移行させるポリシが考えられる。また、メモリ容量の不足、又は収容ユーザ数の増加が移行条件の場合、最初に第2のセッション情報を移行させるポリシが考えられる。
図20は、実施例4の管理サーバ100のセッション情報移行制御部313が実行する移行順番決定処理の一例を説明するフローチャートである。
ステップS2001からステップS2005の処理は、ステップS1201からステップS1205の処理と同一である。ステップS2007の処理は、ステップS1207の処理と同一である。
セッション情報移行制御部313は、ポリシ情報1800を参照して、複数のセッション情報の移行順番を決定する(ステップS2006)。
具体的には、セッション情報移行制御部313は、負荷分散制御部312から通知された負荷分散処理の開始条件が、ポリシ情報1800の移行条件1902と一致するエントリを検索する。すなわち、セッション情報移行制御部313は、検知された移行契機に対応する移行条件と一致するエントリをポリシ情報1800から検索する。セッション情報移行制御部313は、検索されたエントリの移行順番1903に基づいて、複数のセッション情報の移行順番を決定する。
図21A、図21B及び図21Cは、実施例4の管理サーバ100が実行する処理の概要を説明するフローチャートである。
ステップS2101からステップS2106の処理は、ステップS1102からステップS1107の処理と同一である。ただし、ステップS2105において、負荷分散制御部312は、セッション情報移行制御部313に負荷分散処理の開始条件を通知する。また、ステップS2107の処理は図20において説明したとおりである。
移行順番決定処理の実行後(ステップS2107)、セッション情報移行制御部313は、移行制御情報に基づいて、最初に第1のセッション情報を移行させるか否かを判定する(ステップS2108)。
最初に第1のセッション情報を移行させると判定された場合、セッション情報移行制御部313は、移行元の通信サーバ110から移行先の通信サーバ110に一つ以上の第1のセッション情報を移行する(ステップS2109)。ステップS2109からステップS2116の処理は、ステップS1109からステップS1116の処理と同一である。
最初に第2のセッション情報を移行させると判定された場合、セッション情報移行制御部313は、移行元の通信サーバ110から移行先の通信サーバ110に一つ以上の第2のセッション情報を移行する(ステップS2117)。ステップS2117からステップS2120の処理は、ステップS1113からステップS1116の処理と同一である。
ステップS2120の処理において、第2のセッション情報の移行が完了したと判定された場合、セッション情報移行制御部313は、移行元の通信サーバ110から移行先の通信サーバ110に一つ以上の第1のセッション情報を移行する(ステップS2121)。ステップS2121からステップS2124の処理は、ステップS1109の処理からステップS1112の処理と同一である。
ステップS2124において、第2のセッション情報の移行が完了したと判定された場合、管理サーバ100は、ステップS2102に戻り同様の処理を実行する。
実施例4によれば、管理サーバ100が、移行条件に応じて自動的に、複数のセッション情報の移行順番を決定できる。これによって、オペレータの管理負担を低減できる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
100 管理サーバ
110 通信サーバ
111 データベース
112 バックアップデータ
120 負荷分散装置
121 負荷管理情報
130 管理ネットワーク
140 外部ネットワーク
301 CPU
302 主記憶装置
303 副記憶装置
304 NIC
305 HBA
311 情報取得部
312 負荷分散制御部
313 セッション情報移行制御部
314 属性管理情報
315 稼働管理情報
900 ユーザインタフェース
1500 物理サーバ
1510 ハイパバイザ
1520 通信サーバ
1800 ポリシ情報

Claims (15)

  1. 複数の計算機及び管理計算機を備える通信システムであって、
    前記複数の計算機は、複数の端末を収容し、前記複数の端末の各々のセッションを用いた通信を制御する通信制御部を有し、
    前記通信制御部は、前記複数の端末の各々のセッションのセッション情報を格納するデータベースを管理し、
    前記管理計算機は、
    前記複数の計算機の稼働状態を示す稼働情報を取得する情報取得部と、
    任意の通信制御部が管理するデータベースに格納される複数のセッション情報の移行契機を検知し、前記任意の通信制御部が管理する前記データベースに格納される複数のセッション情報を、新たな通信制御部が管理するデータベースに移行するセッション情報移行制御部と、を有し、
    前記通信制御部が管理する前記データベースに格納される複数のセッション情報の各々の属性を管理する属性管理情報と、
    前記複数の計算機の稼働状態を管理する稼働管理情報と、を保持し、
    前記複数の計算機は、第1のデータベースを管理する第1の通信制御部が稼働する第1の計算機、及び第2のデータベースを管理する第2の通信制御部が稼働する第2の計算機、を含み、
    前記セッション情報移行制御部は、
    前記稼働管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の移行契機を検知し、
    前記属性管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の中から、前記第2のデータベースに移行する複数のセッション情報を選択し、
    前記選択された複数のセッション情報の属性に基づいて、前記選択された複数のセッション情報の移行順番を決定し、
    前記決定された移行順番を含む移行制御情報を生成することを特徴とする通信システム。
  2. 請求項1に記載の通信システムであって、
    前記セッション情報の属性は、前記セッション情報に対応する前記セッションの状態を示す情報を含み、
    前記セッションの状態は、端末が通信可能な状態であるアクティブ状態及び前記端末が通信できない状態であるアイドル状態を含み、
    前記データベースは、前記アクティブ状態のセッションのセッション情報である第1のセッション情報を複数格納し、前記アイドル状態のセッションのセッション情報である第2のセッション情報を複数格納し、
    前記セッション情報移行制御部は、
    前記第1のデータベースに格納される複数の第1のセッション情報の中から、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択し、
    前記第1のデータベースに格納される複数の第2のセッション情報の中から、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択し、
    前記選択された一つ以上の第1のセッション情報、前記選択された一つ以上の第2のセッション情報の順に、前記第2のデータベースに移行することを決定し、
    前記第1の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記移行制御情報に基づいて、前記選択された一つ以上の第1のセッション情報を前記第1のデータベースから前記第2のデータベースに移行し、
    前記第2の通信制御部は、
    前記選択された一つ以上の第1のセッション情報を受信した場合、前記選択された一つ以上の第1のセッション情報を前記第2のデータベースに格納し、
    前記選択された一つ以上の第1のセッション情報を用いて一つ以上の端末の通信処理を開始し、
    前記第1の通信制御部は、前記セッション情報移行制御部に移行完了通知を送信し、
    前記セッション情報移行制御部は、前記移行完了通知を受信した場合、前記選択された一つ以上の第2のセッション情報を前記第1のデータベースから前記第2のデータベースに移行することを特徴とする通信システム。
  3. 請求項1に記載の通信システムであって、
    前記セッション情報の属性は、前記セッション情報に対応する前記セッションの状態を示す情報を含み、
    前記セッションの状態は、端末が通信可能な状態であるアクティブ状態及び前記端末が通信できない状態であるアイドル状態を含み、
    前記データベースは、前記アクティブ状態のセッションのセッション情報である第1のセッション情報を複数格納し、前記アイドル状態のセッションのセッション情報である第2のセッション情報を複数格納し、
    前記管理計算機は、前記任意の通信制御部が管理する前記データベースに格納される複数のセッション情報の移行契機を検知するための移行条件、及び前記セッションの状態に基づいて決定された複数のセッション情報の移行順番が対応づけられたエントリを複数含むポリシ情報を保持し、
    前記セッション情報移行制御部は、
    前記第1のデータベースに格納される複数の第1のセッション情報の中から、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択し、
    前記第1のデータベースに格納される複数の第2のセッション情報の中から、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択し、
    前記ポリシ情報に格納されるエントリの前記移行条件を参照して、前記検知された複数のセッション情報の移行契機に対応する移行条件に一致するエントリを検索し、
    前記検索されたにエントリの前記移行順番に基づいて、前記選択された一つ以上の第1のセッション情報、及び前記選択された一つ以上の第2のセッション情報の移行順番を決定し、
    前記第1の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記移行制御情報に基づいて、前記選択された一つ以上の第1のセッション情報、及び前記選択された一つ以上の第2のセッション情報を前記第1のデータベースから前記第2のデータベースに移行することを特徴とする通信システム。
  4. 請求項2又は請求項3に記載の通信システムであって、
    前記通信制御部は、当該通信制御部とは異なる他の通信制御部が管理する前記データベースのコピーであるバックアップデータを管理し、
    前記セッション情報の属性は、前記セッション情報が前記バックアップデータに格納される前記セッション情報であるか否かを示す情報を含み、
    前記セッション情報移行制御部は、
    前記属性管理情報を参照して、前記選択された一つ以上の第2のセッション情報を格納するバックアップデータを管理する第3の通信制御部を特定し、
    前記選択された一つ以上の第1のセッション情報の移行元である前記第1の通信制御部の識別情報、前記選択された一つ以上の第2のセッション情報の移行元である前記第3の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記選択された一つ以上の第2のセッション情報を移行させる場合、前記第3の通信制御部が管理する前記バックアップデータに格納される前記選択された一つ以上の第2のセッション情報を、前記第2のデータベースに移行することを特徴とする通信システム。
  5. 請求項2又は請求項3に記載の通信システムであって、
    前記セッション情報移行制御部は、
    前記第1のデータベースに格納される前記第1のセッション情報の数と、前記第2のデータベースに格納される前記第1のセッション情報の数とが均一になるように、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択し、
    前記第1のデータベースに格納される前記第2のセッション情報の数と、前記第2のデータベースに格納される前記第2のセッション情報の数とが均一になるように、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択することを特徴とする通信システム。
  6. 複数の端末を収容し、前記複数の端末の各々のセッションを用いた通信を制御する通信制御部を有する複数の計算機と接続する管理計算機であって、
    前記管理計算機は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続され、前記複数の計算機と接続するインタフェースを備え、
    前記通信制御部は、前記複数の端末の各々のセッションのセッション情報を格納するデータベースを管理し、
    前記管理計算機は、
    前記複数の計算機の稼働状態を示す稼働情報を取得する情報取得部と、
    任意の通信制御部が管理するデータベースに格納される複数のセッション情報の移行契機を検知し、前記任意の通信制御部が管理する前記データベースに格納される複数のセッション情報を、新たな通信制御部が管理するデータベースに移行するセッション情報移行制御部と、を有し、
    前記通信制御部が管理する前記データベースに格納される複数のセッション情報の各々の属性を管理する属性管理情報と、
    前記複数の計算機の稼働状態を管理する稼働管理情報と、を保持し、
    前記複数の計算機は、第1のデータベースを管理する第1の通信制御部が稼働する第1の計算機、及び第2のデータベースを管理する第2の通信制御部が稼働する第2の計算機を含み、
    前記セッション情報移行制御部は、
    前記稼働管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の移行契機を検知し、
    前記属性管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の中から、前記第2のデータベースに移行する複数のセッション情報を選択し、
    前記選択された複数のセッション情報の属性に基づいて、前記選択された複数のセッション情報の移行順番を決定し、
    前記決定された移行順番を含む移行制御情報を生成することを特徴とする管理計算機。
  7. 請求項6に記載の管理計算機であって、
    前記セッション情報の属性は、前記セッション情報に対応する前記セッションの状態を示す情報を含み、
    前記セッションの状態は、端末が通信可能な状態であるアクティブ状態及び前記端末が通信できない状態であるアイドル状態を含み、
    前記データベースは、前記アクティブ状態のセッションのセッション情報である第1のセッション情報を複数格納し、前記アイドル状態のセッションのセッション情報である第2のセッション情報を複数格納し、
    前記セッション情報移行制御部は、
    前記第1のデータベースに格納される複数の第1のセッション情報の中から、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択し、
    前記第1のデータベースに格納される複数の第2のセッション情報の中から、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択し、
    前記選択された一つ以上の第1のセッション情報、前記選択された一つ以上の第2のセッション情報の順に、前記第2のデータベースに移行することを決定し、
    前記第1の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記移行制御情報に基づいて、前記選択された一つ以上の第1のセッション情報を前記第1のデータベースから前記第2のデータベースに移行し、
    前記選択された一つ以上の第1のセッション情報の移行が完了した旨を通知する移行完了通知を前記第1の通信制御部から受信した場合、前記選択された一つ以上の第2のセッション情報を前記第1のデータベースから前記第2のデータベースに移行することを特徴とする管理計算機。
  8. 請求項6に記載の管理計算機であって、
    前記セッション情報の属性は、前記セッション情報に対応する前記セッションの状態を示す情報を含み、
    前記セッションの状態は、端末が通信可能な状態であるアクティブ状態及び前記端末が通信できない状態であるアイドル状態を含み、
    前記データベースは、前記アクティブ状態のセッションのセッション情報である第1のセッション情報を複数格納し、前記アイドル状態のセッションのセッション情報である第2のセッション情報を複数格納し、
    前記管理計算機は、前記任意の通信制御部が管理する前記データベースに格納される複数のセッション情報の移行契機を検知するための移行条件、及び前記セッションの状態に基づいて決定された複数のセッション情報の移行順番が対応づけられたエントリを複数含むポリシ情報を保持し、
    前記セッション情報移行制御部は、
    前記第1のデータベースに格納される複数の第1のセッション情報の中から、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択し、
    前記第1のデータベースに格納される複数の第2のセッション情報の中から、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択し、
    前記ポリシ情報に格納されるエントリの前記移行条件を参照して、前記検知された複数のセッション情報の移行契機に対応する移行条件に一致するエントリを検索し、
    前記検索されたにエントリの前記移行順番に基づいて、前記選択された一つ以上の第1のセッション情報、及び前記選択された一つ以上の第2のセッション情報の移行順番を決定し、
    前記第1の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記移行制御情報に基づいて、前記選択された一つ以上の第1のセッション情報、及び前記選択された一つ以上の第2のセッション情報を前記第1のデータベースから前記第2のデータベースに移行することを特徴とする管理計算機。
  9. 請求項7又は請求項8に記載の管理計算機であって、
    前記通信制御部は、当該通信制御部とは異なる他の通信制御部が管理する前記データベースのコピーであるバックアップデータを管理し、
    前記セッション情報の属性は、前記セッション情報が前記バックアップデータに格納される前記セッション情報であるか否かを示す情報を含み、
    前記セッション情報移行制御部は、
    前記属性管理情報を参照して、前記選択された一つ以上の第2のセッション情報を格納するバックアップデータを管理する第3の通信制御部を特定し、
    前記選択された一つ以上の第1のセッション情報の移行元である前記第1の通信制御部の識別情報、前記選択された一つ以上の第2のセッション情報の移行元である前記第3の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記選択された一つ以上の第2のセッション情報を移行させる場合、前記第3の通信制御部が管理する前記バックアップデータに格納される前記選択された一つ以上の第2のセッション情報を、前記第2のデータベースに移行することを特徴とする管理計算機。
  10. 請求項7又は請求項8に記載の管理計算機であって、
    前記セッション情報移行制御部は、
    前記第1のデータベースに格納される前記第1のセッション情報の数と、前記第2のデータベースに格納される前記第1のセッション情報の数とが均一になるように、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択し、
    前記第1のデータベースに格納される前記第2のセッション情報の数と、前記第2のデータベースに格納される前記第2のセッション情報の数とが均一になるように、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択することを特徴とする管理計算機。
  11. 複数の計算機及び管理計算機を備える通信システムにおけるセッション情報移行方法であって、
    前記複数の計算機は、複数の端末を収容し、前記複数の端末の各々のセッションを用いた通信を制御する通信制御部を有し、
    前記通信制御部は、前記複数の端末の各々のセッションのセッション情報を格納するデータベースを管理し、
    前記管理計算機は、
    前記複数の計算機の稼働状態を示す稼働情報を取得する情報取得部と、
    任意の通信制御部が管理するデータベースに格納される複数のセッション情報の移行契機を検知し、前記任意の通信制御部が管理する前記データベースに格納される複数のセッション情報を、新たな通信制御部が管理するデータベースに移行するセッション情報移行制御部と、を有し、
    前記通信制御部が管理するセッション情報の属性を管理する属性管理情報と、
    前記複数の計算機の稼働状態を管理する稼働管理情報と、を保持し、
    前記複数の計算機は、第1のデータベースを管理する第1の通信制御部が稼働する第1の計算機、及び第2のデータベースを管理する第2の通信制御部が稼働する第2の計算機を含み、
    前記セッション情報移行方法は、
    前記セッション情報移行制御部が、前記稼働管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の移行契機を検知する第1のステップと、
    前記セッション情報移行制御部が、前記属性管理情報に基づいて、前記第1のデータベースに格納される複数のセッション情報の中から、前記第2のデータベースに移行する複数のセッション情報を選択する第2のステップと、
    前記セッション情報移行制御部が、前記選択された複数のセッション情報の属性に基づいて、前記選択された複数のセッション情報の移行順番を決定する第3のステップと、
    前記セッション情報移行制御部が、前記決定された移行順番を含む移行制御情報を生成する第4のステップと、を含むことを特徴とするセッション情報移行方法。
  12. 請求項11に記載のセッション情報移行方法であって、
    前記セッション情報の属性は、前記セッション情報に対応する前記セッションの状態を示す情報を含み、
    前記セッションの状態は、端末が通信可能な状態であるアクティブ状態及び前記端末が通信できない状態であるアイドル状態を含み、
    前記データベースは、前記アクティブ状態のセッションのセッション情報である第1のセッション情報を複数格納し、前記アイドル状態のセッションのセッション情報である第2のセッション情報を複数格納し、
    前記第2のステップは、
    前記第1のデータベースに格納される複数の第1のセッション情報の中から、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択する第5のステップと、
    前記第1のデータベースに格納される複数の第2のセッション情報の中から、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択する第6のステップと、を含み、
    前記第3のステップでは、前記選択された一つ以上の第1のセッション情報、前記選択された一つ以上の第2のセッション情報の順に、前記第2のデータベースに移行することを決定し、
    前記第4のステップでは、前記第1の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記セッション情報移行方法は、
    前記セッション情報移行制御部が、前記移行制御情報に基づいて、前記選択された一つ以上の第1のセッション情報を前記第1のデータベースから前記第2のデータベースに移行するステップと、
    前記第2の通信制御部が、前記選択された一つ以上の第1のセッション情報を受信した場合、前記選択された一つ以上の第1のセッション情報を前記第2のデータベースに格納するステップと、
    前記第2の通信制御部が、前記選択された一つ以上の第1のセッション情報を用いて一つ以上の端末の通信処理を開始するステップと、
    前記第1の通信制御部が、前記セッション情報移行制御部に移行完了通知を送信するステップと、
    前記セッション情報移行制御部が、前記移行完了通知を受信した場合、前記選択された一つ以上の第2のセッション情報を前記第1のデータベースから前記第2のデータベースに移行するステップと、を含むことを特徴とするセッション情報移行方法。
  13. 請求項11に記載のセッション情報移行方法であって、
    前記セッション情報の属性は、前記セッション情報に対応する前記セッションの状態を示す情報を含み、
    前記セッションの状態は、端末が通信可能な状態であるアクティブ状態及び前記端末が通信できない状態であるアイドル状態を含み、
    前記データベースは、前記アクティブ状態のセッションのセッション情報である第1のセッション情報を複数格納し、前記アイドル状態のセッションのセッション情報である第2のセッション情報を複数格納し、
    前記管理計算機は、前記任意の通信制御部が管理する前記データベースに格納される複数のセッション情報の移行契機を検知するための移行条件、及び前記セッションの状態に基づいて決定された複数のセッション情報の移行順番が対応づけられたエントリを複数含むポリシ情報を保持し、
    前記第2のステップは、
    前記第1のデータベースに格納される複数の第1のセッション情報の中から、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択する第7のステップと、
    前記第1のデータベースに格納される複数の第2のセッション情報の中から、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択する第8のステップと、を含み、
    前記第3のステップは、
    前記ポリシ情報に格納されるエントリの前記移行条件を参照して、前記検知された複数のセッション情報の移行契機に対応する移行条件に一致するエントリを検索するステップと、
    前記検索されたにエントリの前記移行順番に基づいて、前記選択された一つ以上の第1のセッション情報、及び前記選択された一つ以上の第2のセッション情報の移行順番を決定するステップと、を含み、
    前記第4のステップでは、前記第1の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記セッション情報移行方法は、
    前記セッション情報移行制御部が、前記移行制御情報に基づいて、前記選択された一つ以上の第1のセッション情報、及び前記選択された一つ以上の第2のセッション情報を前記第1のデータベースから前記第2のデータベースに移行するステップを含むことを特徴とするセッション情報移行方法。
  14. 請求項12又は請求項13に記載のセッション情報移行方法であって、
    前記通信制御部は、当該通信制御部とは異なる他の通信制御部が管理する前記データベースのコピーであるバックアップデータを管理し、
    前記セッション情報の属性は、前記セッション情報が前記バックアップデータに格納される前記セッション情報であるか否かを示す情報を含み、
    前記第6のステップ又は前記第8のステップは、前記セッション情報移行制御部が、前記属性管理情報を参照して、前記選択された一つ以上の第2のセッション情報を格納するバックアップデータを管理する第3の通信制御部を特定するステップを含み、
    前記第4のステップでは、前記選択された一つ以上の第1のセッション情報の移行元である前記第1の通信制御部の識別情報、前記選択された一つ以上の第2のセッション情報の移行元である前記第3の通信制御部の識別情報、前記第2の通信制御部の識別情報、前記選択された一つ以上の第1のセッション情報の識別子、前記選択された一つ以上の第2のセッション情報の識別子、及び前記決定された移行順番を含む前記移行制御情報を生成し、
    前記セッション情報移行方法は、
    前記セッション情報移行制御部が、前記選択された一つ以上の第2のセッション情報を移行させる場合、前記第3の通信制御部が管理する前記バックアップデータに格納される前記選択された一つ以上の第2のセッション情報を、前記第2のデータベースに移行するステップを含むことを特徴とするセッション情報移行方法。
  15. 請求項12又は請求項13に記載のセッション情報移行方法であって、
    前記第5のステップ又は前記第7のステップでは、前記第1のデータベースに格納される前記第1のセッション情報の数と、前記第2のデータベースに格納される前記第1のセッション情報の数とが均一になるように、前記第2のデータベースに移行する前記第1のセッション情報を一つ以上選択し、
    前記第6のステップ又は前記第8のステップでは、前記第1のデータベースに格納される前記第2のセッション情報の数と、前記第2のデータベースに格納される前記第2のセッション情報の数とが均一になるように、前記第2のデータベースに移行する前記第2のセッション情報を一つ以上選択することを特徴とするセッション情報移行方法。
JP2014171307A 2014-08-26 2014-08-26 通信システム、管理計算機、及びセッション情報移行方法 Pending JP2016045839A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014171307A JP2016045839A (ja) 2014-08-26 2014-08-26 通信システム、管理計算機、及びセッション情報移行方法
US14/734,299 US9769265B2 (en) 2014-08-26 2015-06-09 Communication system, management computer, and session information migration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014171307A JP2016045839A (ja) 2014-08-26 2014-08-26 通信システム、管理計算機、及びセッション情報移行方法

Publications (2)

Publication Number Publication Date
JP2016045839A true JP2016045839A (ja) 2016-04-04
JP2016045839A5 JP2016045839A5 (ja) 2016-12-28

Family

ID=55403951

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014171307A Pending JP2016045839A (ja) 2014-08-26 2014-08-26 通信システム、管理計算機、及びセッション情報移行方法

Country Status (2)

Country Link
US (1) US9769265B2 (ja)
JP (1) JP2016045839A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020013298A1 (ja) * 2018-07-12 2020-01-16 Groove X株式会社 発信元方向推定装置、発信元方向推定システム、赤外線発光装置、ロボット、発信元方向推定方法およびプログラム、対象物存在方向推定システム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10681182B1 (en) * 2016-04-06 2020-06-09 Uipco, Llc Multi-device work flow management method and system for managing work flow data collection for users across a diverse set of devices and processes by unifying the work process to be data and device agnostic
CN107707583B (zh) * 2016-08-08 2020-11-17 环旭电子股份有限公司 云端数据传输系统及其动态分流方法
CN110737717B (zh) * 2018-07-03 2022-09-09 北京国双科技有限公司 一种数据库迁移方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010063022A (ja) * 2008-09-05 2010-03-18 Hitachi Communication Technologies Ltd アクセスゲートウェイ装置の制御方法及び通信システム
JP2010251838A (ja) * 2009-04-10 2010-11-04 Hitachi Ltd アクセスゲートウェイ装置及びアクセスゲートウェイ装置におけるセッション情報複製方法
WO2013161172A1 (ja) * 2012-04-27 2013-10-31 日本電気株式会社 通信システム及び経路制御方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7487248B2 (en) * 2002-10-08 2009-02-03 Brian Moran Method and system for transferring a computer session between devices
KR101238652B1 (ko) * 2005-04-15 2013-02-28 삼성전자주식회사 고속 패킷 데이터 시스템에서 액세스 네트워크와 액세스단말간 세션 재협상을 위한 트리거링 장치 및 방법
US20090063690A1 (en) * 2007-09-05 2009-03-05 Motorola, Inc. Continuing an application session using a different device from one that originally initiated the application session while preserving session while preserving session state and data
US8412185B2 (en) * 2009-09-14 2013-04-02 Nokia Corporation Method and apparatus for switching devices using near field communication
JP2012103879A (ja) 2010-11-10 2012-05-31 Hitachi Ltd セッション管理方法、セッション管理システム及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010063022A (ja) * 2008-09-05 2010-03-18 Hitachi Communication Technologies Ltd アクセスゲートウェイ装置の制御方法及び通信システム
JP2010251838A (ja) * 2009-04-10 2010-11-04 Hitachi Ltd アクセスゲートウェイ装置及びアクセスゲートウェイ装置におけるセッション情報複製方法
WO2013161172A1 (ja) * 2012-04-27 2013-10-31 日本電気株式会社 通信システム及び経路制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020013298A1 (ja) * 2018-07-12 2020-01-16 Groove X株式会社 発信元方向推定装置、発信元方向推定システム、赤外線発光装置、ロボット、発信元方向推定方法およびプログラム、対象物存在方向推定システム
JPWO2020013298A1 (ja) * 2018-07-12 2021-08-05 Groove X株式会社 発信元方向推定装置、発信元方向推定システム、赤外線発光装置、ロボット、発信元方向推定方法およびプログラム、対象物存在方向推定システム
JP7473202B2 (ja) 2018-07-12 2024-04-23 Groove X株式会社 発信元方向推定装置、発信元方向推定システム、赤外線発光装置、ロボット、発信元方向推定方法およびプログラム、対象物存在方向推定システム

Also Published As

Publication number Publication date
US20160065678A1 (en) 2016-03-03
US9769265B2 (en) 2017-09-19

Similar Documents

Publication Publication Date Title
KR102138002B1 (ko) 세션 관리 기능 엔티티 선택 방법, 장치, 및 시스템
US11297685B2 (en) System and method for session relocation at edge networks
CN111901367B (zh) 一种网络数据分析方法及装置
US8989000B2 (en) Cloud-based telecommunications infrastructure
CN110557791B (zh) 会话管理方法、设备及系统
US10523531B2 (en) SDN-based API controller
JP6402253B2 (ja) 通信制御方法、通信制御装置、及び通信システム
JP6256602B2 (ja) 通信システム、通信方法、コアネットワークノード、及び移動管理方法
JP6754734B2 (ja) Ranスライスにおけるリソース管理装置及びranスライスにおけるリソース管理方法
JP6263424B2 (ja) 管理システム及び管理方法
WO2016152588A1 (ja) サービス割当決定装置及びサービス割当決定方法
CN108632063B (zh) 管理网络切片实例的方法、装置和系统
WO2018034321A1 (ja) スライス管理システムおよびスライス管理方法
US20150382242A1 (en) Methods and Systems for Intelligent Mobile Function Distribution
US20140226975A1 (en) Method and apparatus for boosting data intensive processing through optical circuit switching
CN109155939B (zh) 一种负载迁移方法、装置及系统
JP2016045839A (ja) 通信システム、管理計算機、及びセッション情報移行方法
CN106686676B (zh) 一种会话切换的方法、设备及系统
JP6176734B2 (ja) 仮想マシンの配置決定装置、その方法およびプログラム
US11201791B2 (en) Optimum resource allocation and device assignment in a MEC cluster
CN108616905B (zh) 基于蜂窝的窄带物联网中用户平面优化方法和系统
CN109691152B (zh) 融合控制器选择方法、设备及系统
JP5949684B2 (ja) 拠点間サービス管理システム、管理サーバ、管理方法および管理プログラム
KR20150034559A (ko) 근거리 무선망 접속을 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체
KR101344764B1 (ko) 클라우드 컴퓨팅 환경에서 효율적인 클라우드 기반 무선 네트워크 자원관리 시스템

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161110

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170926

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180320