特許第6795527号(P6795527)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧

<>
  • 特許6795527-通信システム、及び、サーバ切替方法 図000002
  • 特許6795527-通信システム、及び、サーバ切替方法 図000003
  • 特許6795527-通信システム、及び、サーバ切替方法 図000004
  • 特許6795527-通信システム、及び、サーバ切替方法 図000005
  • 特許6795527-通信システム、及び、サーバ切替方法 図000006
  • 特許6795527-通信システム、及び、サーバ切替方法 図000007
  • 特許6795527-通信システム、及び、サーバ切替方法 図000008
  • 特許6795527-通信システム、及び、サーバ切替方法 図000009
  • 特許6795527-通信システム、及び、サーバ切替方法 図000010
  • 特許6795527-通信システム、及び、サーバ切替方法 図000011
  • 特許6795527-通信システム、及び、サーバ切替方法 図000012
  • 特許6795527-通信システム、及び、サーバ切替方法 図000013
  • 特許6795527-通信システム、及び、サーバ切替方法 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6795527
(24)【登録日】2020年11月16日
(45)【発行日】2020年12月2日
(54)【発明の名称】通信システム、及び、サーバ切替方法
(51)【国際特許分類】
   H04L 12/711 20130101AFI20201119BHJP
   H04L 12/70 20130101ALI20201119BHJP
   H04L 12/751 20130101ALI20201119BHJP
   H04L 12/28 20060101ALI20201119BHJP
   G06F 13/00 20060101ALI20201119BHJP
【FI】
   H04L12/711
   H04L12/70 D
   H04L12/751
   H04L12/28 200Z
   H04L12/28 200A
   G06F13/00 351M
【請求項の数】5
【全頁数】20
(21)【出願番号】特願2018-23688(P2018-23688)
(22)【出願日】2018年2月14日
(65)【公開番号】特開2019-140589(P2019-140589A)
(43)【公開日】2019年8月22日
【審査請求日】2019年12月19日
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110001807
【氏名又は名称】特許業務法人磯野国際特許商標事務所
(72)【発明者】
【氏名】北野 雄大
【審査官】 安藤 一道
(56)【参考文献】
【文献】 特開2017−130852(JP,A)
【文献】 米国特許出願公開第2014/0204761(US,A1)
【文献】 特開2017−38218(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/711
G06F 13/00
H04L 12/28
H04L 12/70
H04L 12/751
(57)【特許請求の範囲】
【請求項1】
それぞれアクティブ系又はスタンバイ系として機能する複数のサーバと、
前記アクティブ系のサーバとクライアントによって操作される1乃至複数のクライアント端末との間で通信を中継する中継装置と、を備え、
それぞれの前記サーバは、
それぞれの前記クライアントの優先度を決定する優先度決定部と、
自サーバ内に、それぞれの前記クライアントに割り振られた仮想LANに対応する仮想ポートを作成する仮想ポート作成部と、
前記クライアント端末との間で行われる通信の宛先を前記仮想ポート宛に変更することを前記中継装置に指示する通信処理部と、を有し、
前記通信処理部は、前記アクティブ系の他のサーバで不具合が発生したときに、前記クライアントの優先度の高い順に、前記通信の宛先の変更指示を行う
ことを特徴とする通信システム。
【請求項2】
請求項1に記載の通信システムにおいて、
前記サーバは、前記アクティブ系の他のサーバで不具合が発生したときに、前記クライアントの優先度の高い順に、前記仮想ポート作成部による前記仮想ポートの作成と、前記通信処理部による前記通信の宛先の変更指示とを繰り返し行う
ことを特徴とする通信システム。
【請求項3】
請求項1又は請求項2に記載の通信システムにおいて、
前記通信処理部による前記通信の宛先の変更指示は、前記仮想LANに対応する仮想IPアドレスとそれに対応するMACアドレスとを含むG−ARPパケットを前記中継装置に送信することによって行われる
ことを特徴とする通信システム。
【請求項4】
請求項1乃至請求項3のいずれか一項に記載の通信システムにおいて、
前記優先度決定部は、それぞれの前記クライアントに割り振られた仮想LANの利用頻度に基づいて、それぞれの前記クライアントの優先度を決定する
ことを特徴とする通信システム。
【請求項5】
中継装置を介してクライアントによって操作される1乃至複数のクライアント端末と通信可能に配置された複数のサーバのうち、アクティブ系のサーバで不具合が発生したときに、スタンバイ系のサーバが、それぞれの前記クライアントの優先度を決定する優先度決定工程と、
前記スタンバイ系のサーバが、自サーバ内に、それぞれの前記クライアントに割り振られた仮想LANに対応する仮想ポートを作成する仮想ポート作成工程と、
前記スタンバイ系のサーバが、前記クライアントの優先度の高い順に、前記クライアント端末との間で行われる通信の宛先を前記仮想ポート宛に変更することを前記中継装置に指示する通信処理工程と、を含む
ことを特徴とするサーバ切替方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アクティブ系サーバとスタンバイ系サーバとの切替を行う通信システム、及び、サーバ切替方法に関する。
【背景技術】
【0002】
クライアントによって操作されるクライアント端末に対して各種のサービスを提供する通信システムは、高度な信頼性が求められるため、通常時に処理を行うサーバ(アクティブ系サーバ)に加え、アクティブ系サーバが処理を行うことができなくなったときに備えて、通常時に処理を行わずに待機しているサーバ(スタンバイ系サーバ)を備えることが一般的である。スタンバイ系サーバは、アクティブ系サーバの動作を監視し、アクティブ系サーバに不具合が生じて処理ができていないと判断された場合に、スタンバイ系からアクティブ系に自身の設定の切替を行う。
【0003】
このような通信システムに関連して、例えば、以下に説明する図8A図8B、及び図9に示す従来例の通信システム603がある。図8A図8B、及び図9に示す従来例の通信システム603は、以下に説明する仮想IPアドレス技術と仮想LAN(Virtual Local Area Network;VLAN)技術とを用いたシステムである。
【0004】
<仮想IPアドレス技術の概要>
以下、図6A及び図6Bを参照して、仮想IPアドレス技術の概要について説明する。図6A及び図6Bは、それぞれ、仮想IPアドレス技術を用いた通信システム601の構成及び動作を示す図である。図6Aは、通常時における通信システム601の構成及び動作を示している。図6Bは、アクティブ系サーバでの不具合発生時における通信システム601の構成及び動作を示している。
【0005】
通信システム601は、仮想IPアドレス技術(例えば、非特許文献1参照)を用いて、アクティブ系サーバとスタンバイ系サーバとの切替を行うシステムである。
【0006】
図6Aに示す例では、通信システム601は、2台のサーバ10(10a,10b)と、ルータ等の中継装置20と、を備えている。2台のサーバ10のうち、一方のサーバ10aは現アクティブ系サーバとして機能しており、また、他方のサーバ10bは現スタンバイ系サーバとして機能している。中継装置20は、通信回線を介して接続されたサーバ10とクライアント端末30との間で行われる通信を中継する。ここでは、アクティブ系サーバに対して仮想IPアドレス「10.10.1.1」が設定されるものとして説明する。
【0007】
図6Aに示す例では、現アクティブ系サーバ10aには、IPアドレス「10.10.1.2」と、仮想IPアドレス「10.10.1.1」と、が設定されている。現アクティブ系サーバ10aのネットワークインタフェースのMAC(Media Access Control)アドレスは、「aa−aa−aa−aa−aa−aa」である。
【0008】
一方、現スタンバイ系サーバ10bには、仮想IPアドレスが設定されておらず、IPアドレス「10.10.1.3」が設定されている。現スタンバイ系サーバ10bのネットワークインタフェースのMACアドレスは、「bb−bb−bb−bb−bb−bb」である。
【0009】
また、中継装置20は、図示せぬ記憶部にARP(Address Resolution Protocol)テーブル60を記憶している。ARPテーブル60は、IPアドレスと各サーバ10のMACアドレスとの対応関係を表している。
【0010】
図6Aに示す例では、ARPテーブル60は、IPアドレス「10.10.1.1」と、「10.10.1.2」と、「10.10.1.3」とに対して、それぞれ、MACアドレス「aa−aa−aa−aa−aa−aa」と、「aa−aa−aa−aa−aa−aa」と、「bb−bb−bb−bb−bb−bb」とを対応付けている。
【0011】
ここで、IPアドレス「10.10.1.1」は、アクティブ系サーバに対して設定された仮想IPアドレスである。したがって、図6Aに示す例では、ARPテーブル60は、アクティブ系サーバに対して設定された仮想IPアドレス「10.10.1.1」に対して、現アクティブ系サーバ10aのMACアドレス「aa−aa−aa−aa−aa−aa」を対応付けている。
【0012】
ここで、クライアント端末30がIPアドレス「10.10.1.1」宛に信号を送信したとする。
【0013】
図6Aに示すように、通常時において、ARPテーブル60では、IPアドレス「10.10.1.1」が現アクティブ系サーバ10aのMACアドレス「aa−aa−aa−aa−aa−aa」に対応付けられている。そのため、このとき、中継装置20は、ARPテーブル60に基づいて、クライアント端末30から送信された信号を現アクティブ系サーバ10aに中継する(送信ルート70a参照)。その結果、現アクティブ系サーバ10aがクライアント端末30から送信された信号を受信する。
【0014】
ここで、現アクティブ系サーバ10aに不具合(例えば、通信障害等)が発生したとする。
【0015】
このとき、現スタンバイ系サーバ10bは、ハートビート通信等により、現アクティブ系サーバ10aの不具合を検知する。すると、現スタンバイ系サーバ10bは、予めアクティブ系サーバとスタンバイ系サーバとの間で共有されている仮想IPアドレス(ここでは、IPアドレス「10.10.1.1」)を用いて、新アクティブ系サーバとしての立ち上げ処理を行う。
【0016】
新アクティブ系サーバとしての立ち上げ処理は、図6Bに示すように、通信システム601が、現アクティブ系サーバ10aに対して設定されていた仮想IPアドレス「10.10.1.1」を新アクティブ系サーバとなる現スタンバイ系サーバ10bに変更することによって行われる。これにより、現アクティブ系サーバ10aが旧アクティブ系サーバとなるとともに、現スタンバイ系サーバ10bが新アクティブ系サーバとなるように、サーバ10の設定の切替が行われる。以下、現アクティブ系サーバ10aを「旧アクティブ系サーバ10a」と称し、現スタンバイ系サーバ10bを「新アクティブ系サーバ10b」と称する場合がある。
【0017】
図6Bに示すように、新アクティブ系サーバ10bは、G−ARP(Gratuitous Address Resolution Protocol)パケット80を中継装置20にブロードキャストする。これは、仮想IPアドレス「10.10.1.1」の設定が旧アクティブ系サーバ10aから新アクティブ系サーバ10bに移ったことを中継装置20に認識させるためである。G−ARPパケット80は、アクティブ系サーバに対して設定された仮想IPアドレス「10.10.1.1」と、新アクティブ系サーバ10bのMACアドレス「bb−bb−bb−bb−bb−bb」とを対応付ける内容になっている。
【0018】
G−ARPパケット80を受信した中継装置20は、G−ARPパケット80に基づいて、ARPテーブル60を更新し、更新されたARPテーブル60に従って、パケットのルーティング(転送経路の制御)を行う。
【0019】
図6Bに示す例では、ステップS1150での更新後のARPテーブル60は、IPアドレス「10.10.1.1」と、「10.10.1.2」と、「10.10.1.3」とに対して、それぞれ、MACアドレス「bb−bb−bb−bb−bb−bb」と、「aa−aa−aa−aa−aa−aa」と、「bb−bb−bb−bb−bb−bb」とを対応付けている。
【0020】
ここで、IPアドレス「10.10.1.1」は、アクティブ系サーバに対して設定された仮想IPアドレスである。したがって、図6Bに示す例では、更新後のARPテーブル60は、アクティブ系サーバに対して設定された仮想IPアドレス「10.10.1.1」に対して、新アクティブ系サーバ10bのMACアドレス「bb−bb−bb−bb−bb−bb」を対応付けている。
【0021】
ここで、クライアント端末30がIPアドレス「10.10.1.1」宛に信号を送信したとする。
【0022】
ARPテーブル60では、IPアドレス「10.10.1.1」が新アクティブ系サーバ10bのMACアドレス「bb−bb−bb−bb−bb−bb」に対応付けられている。そのため、このとき、中継装置20は、ARPテーブル60に基づいて、クライアント端末30から送信された信号を新アクティブ系サーバ10bに中継する(送信ルート70b参照)。したがって、このとき、新アクティブ系サーバ10bがクライアント端末30から送信された信号を受信する。
【0023】
このような仮想IPアドレス技術を用いた通信システム601は、アクティブ系サーバとスタンバイ系サーバとの切替を行うことができる。
【0024】
<仮想LAN(VLAN)技術の概要>
以下、図7を参照して、仮想LAN(VLAN)技術の概要について説明する。図7は、仮想LAN(VLAN)技術を用いた通信システム602の構成及び動作を示す図である。
【0025】
通信システム602は、仮想LAN(Virtual Local Area Network;VLAN)技術(例えば、非特許文献2参照)を用いて、複数のクライアント端末がサーバと接続可能になっている構成において、他のクライアント端末からの干渉を無くすために、クライアント端末同士を論理的に隔離するシステムである。
【0026】
図7に示す例では、通信システム602は、サーバ10と、ルータ等の中継装置20と、を備えている。サーバ10は、中継装置20を介してクライアントによって操作される複数のクライアント端末30(図7に示す例では、3台のクライアント端末30a,30b,30c)と接続することが可能になっている。各クライアントは、1乃至複数台のクライアント端末30を操作することができる。図7に示す例では、3つのクライアントが3台のクライアント端末30a,30b,30cを操作する場合(つまり、3つのクライアントのそれぞれがクライアント端末30を1台ずつ操作する場合)を想定して説明する。ただし、各クライアントは1乃至複数台のクライアント端末30を操作することができるため、1つのクライアントが3台のクライアント端末30a,30b,30cのうちの複数台を操作する場合もあり得る。
【0027】
一般に、通信システムは、複数のクライアント端末がサーバと接続することが可能になっている場合に、ネットワーク構成によっては、クライアント端末間での直接通信が可能となってしまう可能性がある。クライアント端末間での直接通信が可能となると、あるクライアント端末が別のクライアント端末に悪影響を与えることが可能になる。そのため、通信システムは、複数のクライアント端末がサーバと接続可能になっている構成において、他のクライアント端末からの干渉を無くすために、クライアント端末同士を論理的に隔離する必要がある。
【0028】
そこで、図7に示すように、通信システム602では、クライアント端末30同士を論理的に隔離する方法として、仮想LAN(Virtual Local Area Network;VLAN)技術が用いられている。VLAN技術は、仮想的なLANセグメントを作る技術である。
【0029】
VLAN技術では、サーバ10は、クライアント端末30間の通信を防止するために、クライアント端末30毎に各クライアント端末30を操作するクライアントに対応したVLAN50を作成する。そして、サーバ10は、VLAN50毎に仮想ポート40を作成する。各クライアント端末30は、各クライアントに割り振られたVLAN50に対応する仮想ポート40に設定されたIPアドレスを宛先として信号を送信して、サーバ10との間で通信を行う。中継装置20は、サーバ10と各クライアント端末30との間で行われる通信を中継する。
【0030】
例えば、図7に示す例では、サーバ10は、クライアント端末30a,30b,30c毎に各クライアント端末30を操作するクライアントに対応したVLAN50a,50b,50cを作成する。そして、サーバ10は、VLAN50a,50b,50c毎に仮想ポート40a,40b,40cを作成する。各クライアント端末30は、各クライアントに割り振られたVLAN50に対応する仮想ポート40に設定されたIPアドレスを宛先として信号を送信して、サーバ10との間で通信を行う。
【0031】
このようなVLAN技術を用いた通信システム602は、クライアント端末30毎に各クライアント端末30を操作するクライアントに対応したVLAN50を作成することで、サーバ10と各クライアント端末30との間の通信の独立性を確保することができる。
【0032】
また、通信システム602は、各クライアント端末30が複数の端末によって構成された独自のネットワーク体系を有している場合であっても、各クライアント端末30をVLAN50で分離することで、各クライアント端末30が有している独自のネットワーク体系を保持することができる。
【0033】
<従来例>
以下、図8A図8B、及び図9を参照して、前記した仮想IPアドレス技術と仮想LAN(VLAN)技術とを用いた従来例の通信システム603について説明する。図8A及び図8Bは、それぞれ、従来例の通信システム603の構成及び動作を示す図である。図8Aは、通常時における従来例の通信システム603の構成及び動作を示している。図8Bは、アクティブ系サーバの不具合発生時における従来例の通信システム603の構成及び動作を示している。また、図9は、従来例の通信システム603の動作を示すシーケンス図である。
【0034】
従来例の通信システム603は、前記した仮想IPアドレス技術と仮想LAN(VLAN)技術とを用いて、複数のクライアント端末がサーバと接続可能になっている構成において、クライアント端末同士を論理的に隔離しつつ、アクティブ系サーバとスタンバイ系サーバとの切替を行うシステムである。
【0035】
図8Aに示す例では、従来例の通信システム603は、複数台(図示例では2台)のサーバ10(10a,10b)と、ルータ等の中継装置20と、を備えている。2台のサーバ10のうち、一方のサーバ10aは現アクティブ系サーバとして機能しており、また、他方のサーバ10bは現スタンバイ系サーバとして機能している。中継装置20は、通信回線を介して接続されたサーバ10とクライアント端末30との間で行われる通信を中継する。
【0036】
サーバ10は、中継装置20を介してクライアントによって操作される複数のクライアント端末30(図8Aに示す例では、3台のクライアント端末30a,30b,30c)と接続することが可能になっている。各クライアントは、1乃至複数台のクライアント端末30を操作することができる。図8Aに示す例では、3つのクライアントが3台のクライアント端末30a,30b,30cを操作する場合(つまり、3つのクライアントのそれぞれがクライアント端末30を1台ずつ操作する場合)を想定して説明する。ただし、各クライアントは1乃至複数台のクライアント端末30を操作することができるため、1つのクライアントが3台のクライアント端末30a,30b,30cのうちの複数台を操作する場合もあり得る。
【0037】
現アクティブ系サーバ10aは、クライアント端末30a,30b,30c毎に各クライアント端末30を操作するクライアントに対応したVLAN50a,50b,50cを作成する。そして、現アクティブ系サーバ10aは、VLAN50a,50b,50c毎に仮想ポート40a,40b,40cを作成する。作成されたVLAN50a,50b,50cは、アクティブ系サーバとスタンバイ系サーバとの間で共有される。また、作成されたVLAN50a,50b,50cに関する情報は、アクティブ系サーバとスタンバイ系サーバとの間で共有される。
【0038】
中継装置20は、記憶部にARPテーブル60を記憶している。ARPテーブル60は、各VLAN50a,50b,50cの仮想IPアドレスであるIPアドレスと現アクティブ系サーバ10aのMACアドレスとの対応関係を表している。
【0039】
図8Aに示す例では、ARPテーブル60は、各VLAN50a,50b,50cの仮想IPアドレスであるIPアドレス「10.10.1.1」と、「10.10.1.2」と、「10.10.1.3」とに対して、それぞれ、現アクティブ系サーバ10aのMACアドレス「aa−aa−aa−aa−aa−aa」と、「aa−aa−aa−aa−aa−aa」と、「aa−aa−aa−aa−aa−aa」とを対応付けている。
【0040】
各クライアント端末30は、各クライアントに割り振られたVLAN50に対応する仮想ポート40に設定されたIPアドレスを宛先として信号を送信して、現アクティブ系サーバ10aとの間で通信を行う。
【0041】
ここで、図9に示すように、通常時において、クライアント端末30がIPアドレス「10.10.1.1」宛に信号を送信したとする(ステップS1310)。
【0042】
図8Aに示すように、通常時において、ARPテーブル60では、現アクティブ系サーバ10aのMACアドレスが各IPアドレスに対応付けられている。そのため、このとき、中継装置20は、ARPテーブル60に基づいて、クライアント端末30から送信された信号を現アクティブ系サーバ10aに中継する。その結果、現アクティブ系サーバ10aがクライアント端末30から送信された信号を受信する。
【0043】
ここで、図9に示すように、現アクティブ系サーバ10aに不具合(例えば、通信障害等)が発生したとする。この場合に、通信システム603は、クライアント端末30からの要求が途絶えた状態(応答なしの状態)になる。
【0044】
このとき、現スタンバイ系サーバ10bは、現アクティブ系サーバ10aの不具合を検知する(ステップS1320)。すると、現スタンバイ系サーバ10bは、予めアクティブ系サーバとスタンバイ系サーバとの間で共有されているVLAN50毎の仮想IPアドレスを用いて、順番が最初の方から順番に、VLAN50毎に仮想ポート40を作成し(ステップS1340)、新アクティブ系サーバとしての立ち上げ処理を行う。
【0045】
新アクティブ系サーバとしての立ち上げ処理は、図8Bに示すように、通信システム603が、VLAN50の仮想IPアドレスに対応するMACアドレスを新アクティブ系サーバとなる現スタンバイ系サーバ10bのMACアドレスに変更することによって行われる。これにより、現アクティブ系サーバ10aが旧アクティブ系サーバとなるとともに、現スタンバイ系サーバ10bが新アクティブ系サーバとなるように、サーバ10の設定の切替が行われる。以下、現アクティブ系サーバ10aを「旧アクティブ系サーバ10a」と称し、現スタンバイ系サーバ10bを「新アクティブ系サーバ10b」と称する場合がある。
【0046】
図9に示すように、ステップS1340の後、新アクティブ系サーバ10bは、順番が最初の方から順番に、G−ARPパケット80を中継装置20にブロードキャストする(ステップS1350)。これは、VLAN50の仮想IPアドレスに対応するMACアドレスの設定が旧アクティブ系サーバ10aのMACアドレスから新アクティブ系サーバ10bのMACアドレスに変更されたことを中継装置20に認識させるためである。G−ARPパケット80は、VLAN50の仮想IPアドレスと、新アクティブ系サーバ10bのMACアドレス「bb−bb−bb−bb−bb−bb」とを対応付ける内容になっている。新アクティブ系サーバ10bは、VLAN50の数分だけ、ステップS1340とステップS1350の処理を繰り返し行う。
【0047】
G−ARPパケット80を受信する度に、中継装置20は、G−ARPパケット80に基づいて、VLAN50のARPテーブル60を更新し、更新されたVLAN50のARPテーブル60に従って、パケットのルーティング(転送経路の制御)を行う(ステップS1360)。
【0048】
図8Bに示す例では、ステップS1360での更新後のARPテーブル60は、各VLAN50a,50b,50cの仮想IPアドレスに対して、それぞれ、新アクティブ系サーバ10bのMACアドレス「bb−bb−bb−bb−bb−bb」を対応付けている。
【0049】
中継装置20は、ARPテーブル60に基づいて、クライアント端末30から送信された信号を新アクティブ系サーバ10bに中継する。その結果、新アクティブ系サーバ10bがクライアント端末30から送信された信号を受信する。
【0050】
これにより、ARPテーブル60の更新が完了したVLAN50に対応するクライアント端末30は、新アクティブ系サーバ10bとの間で通信可能な状態になる。
【0051】
しかしながら、ARPテーブル60の更新が完了していないVLAN50に対応するクライアント端末30は、新アクティブ系サーバ10bとの間で通信不能な状態になっている。そのため、通信システム603は、ARPテーブル60の更新が完了していないVLAN50に対応するクライアント端末30からの要求が途絶えた状態(応答なしの状態)になっている。
【0052】
ステップS1360の後、新アクティブ系サーバ10bは、順番が最後の方のVLAN50に対応する仮想ポート40を作成し(ステップS1340a)を作成して、順番が最後の方のVLAN50に対応するG−ARPパケット80を中継装置20にブロードキャストする(ステップS1350a)。
【0053】
これにより、最終的には、全てのクライアント端末30は、新アクティブ系サーバ10bとの間で通信可能な状態になる。その結果、全てのクライアント端末30がIPアドレス「10.10.1.1」宛に信号を送信して(ステップS1310a)、新アクティブ系サーバ10bとの間で通信を行うことができるようになる。
【0054】
このような仮想IPアドレス技術と仮想LAN(VLAN)技術とを用いた従来例の通信システム603は、各クライアントに割り振られたVLAN50に対応する仮想ポート40を作成することで、サーバ10と各クライアント端末30との間の通信の独立性を確保しつつ、アクティブ系サーバとスタンバイ系サーバとの切替を行うことができる。また、通信システム603は、各クライアント端末30が複数の端末によって構成された独自のネットワーク体系を有している場合であっても、各クライアント端末30をVLAN50で分離することで、各クライアント端末30が有している独自のネットワーク体系を保持することができる。
【先行技術文献】
【非特許文献】
【0055】
【非特許文献1】アイティメディア株式会社、“アクティブ/スタンバイでサーバを自在に操る”、[online]、[平成29年12月1日検索]、インターネット〈URL:http://www.atmarkit.co.jp/ait/articles/0304/09/news001.html〉
【非特許文献2】サイト“ネットワークエンジニアとして”、“VLANとは”[online][平成29年12月4日検索]、インターネット〈URL:http://www.infraexpert.com/study/vlanz1.html〉
【発明の概要】
【発明が解決しようとする課題】
【0056】
しかしながら、仮想IPアドレス技術と仮想LAN(VLAN)技術とを用いた従来例の通信システムは、VLANの数が多くなると、VLANによっては切替時間が遅くなり、サービス断(Service interruption)時間が長大化する可能性がある、という課題があった。
【0057】
つまり、前記した従来例の通信システムでは、現スタンバイ系サーバが、現アクティブ系サーバの不具合を検知した後、仮想ポートの作成や、G−ARPパケットの送信、ARPテーブルの更新等の処理をVLANの数分行うため、最後の方で仮想ポートが作成されるVLANを使うクライアント端末において、サービス断時間が長大化する可能性があった。
【0058】
本発明は、前記した問題点を解決するためになされたものであり、クライアント端末のサービス断時間(特に、利用頻度が高いクライアントによって操作されるクライアント端末のサービス断時間)を低減する通信システム、及び、サーバ切替方法を提供することを主な課題とする。
【課題を解決するための手段】
【0059】
前記課題を解決するため、請求項1に記載の発明は、それぞれアクティブ系又はスタンバイ系として機能する複数のサーバと、前記アクティブ系のサーバとクライアントによって操作される1乃至複数のクライアント端末との間で通信を中継する中継装置と、を備え、それぞれの前記サーバは、それぞれの前記クライアントの優先度を決定する優先度決定部と、自サーバ内に、それぞれの前記クライアントに割り振られた仮想LANに対応する仮想ポートを作成する仮想ポート作成部と、前記クライアント端末との間で行われる通信の宛先を前記仮想ポート宛に変更することを前記中継装置に指示する通信処理部と、を有し、前記通信処理部は、前記アクティブ系の他のサーバで不具合が発生したときに、前記クライアントの優先度の高い順に、前記通信の宛先の変更指示を行うことを特徴とする通信システムとした。
【0060】
この通信システムは、スタンバイ系のサーバが新しいアクティブ系のサーバとして切り替わる際に、クライアントの優先度の高い順に、各クライアントによって操作されるクライアント端末との通信の宛先の変更指示(つまり、クライアント端末との通信の確立)を行うため、優先度の高いクライアントによって操作されるクライアント端末ほど、クライアント端末のサービス断時間を低減することができる。
【0061】
また、前記課題を解決するため、請求項5に記載の発明は、中継装置を介してクライアントによって操作される1乃至複数のクライアント端末と通信可能に配置された複数のサーバのうち、アクティブ系のサーバで不具合が発生したときに、スタンバイ系のサーバが、それぞれの前記クライアントの優先度を決定する優先度決定工程と、前記スタンバイ系のサーバが、自サーバ内に、それぞれの前記クライアントに割り振られた仮想LANに対応する仮想ポートを作成する仮想ポート作成工程と、前記スタンバイ系のサーバが、前記クライアントの優先度の高い順に、前記クライアント端末との間で行われる通信の宛先を前記仮想ポート宛に変更することを前記中継装置に指示する通信処理工程と、を含むことを特徴とするサーバ切替方法とした。
【0062】
このサーバ切替方法は、スタンバイ系のサーバが新しいアクティブ系のサーバとして切り替わる際に、クライアントの優先度の高い順に、各クライアントによって操作されるクライアント端末との通信の宛先の変更指示(つまり、クライアント端末との通信の確立)を行うため、優先度の高いクライアントによって操作されるクライアント端末ほど、クライアント端末のサービス断時間を低減することができる。
【0063】
また、請求項2に記載の発明は、請求項1に記載の通信システムにおいて、前記サーバは、前記アクティブ系の他のサーバで不具合が発生したときに、前記クライアントの優先度の高い順に、前記仮想ポート作成部による前記仮想ポートの作成と、前記通信処理部による前記通信の宛先の変更指示とを繰り返し行うことを特徴とする通信システムとした。
【0064】
この構成によれば、クライアントの優先度の高い順に、仮想ポートの作成と通信の宛先の変更指示とを行うため、スタンバイ系のサーバが新しいアクティブ系のサーバとして切り替わる際の、スタンバイ系のサーバの負荷を軽減することができる。
【0065】
また、請求項3に記載の発明は、請求項1又は請求項2に記載の通信システムにおいて、前記通信処理部による前記通信の宛先の変更指示は、前記仮想LANに対応する仮想IPアドレスとそれに対応するMACアドレスとを含むG−ARPパケットを前記中継装置に送信することによって行われることを特徴とする通信システムとした。
【0066】
この構成によれば、スタンバイ系のサーバが中継装置にG−ARPパケットを送信するだけで、通信の宛先の変更を行うことができるため、スタンバイ系のサーバが新しいアクティブ系のサーバとして切り替わる際の、スタンバイ系のサーバの負荷を軽減することができる。
【0067】
また、請求項4に記載の発明は、請求項1乃至請求項3のいずれか一項に記載の通信システムにおいて、前記優先度決定部は、それぞれの前記クライアントに割り振られた仮想LANの利用頻度に基づいて、それぞれの前記クライアントの優先度を決定することを特徴とする通信システムとした。
【0068】
この構成によれば、利用頻度が高いクライアントほど、優先度の高いクライアントであるため、特に、優先度の高いクライアントによって操作されるクライアント端末のサービス断時間を低減することができる。
【発明の効果】
【0069】
本発明によれば、クライアント端末のサービス断時間(特に、優先度の高いクライアントによって操作されるクライアント端末のサービス断時間)を低減することができる。
【図面の簡単な説明】
【0070】
図1A】実施形態に係る通信システムの構成及び動作を示す図(1)である。
図1B】実施形態に係る通信システムの構成及び動作を示す図(2)である。
図2】実施形態に係るサーバの構成を示す図である。
図3】実施形態に係る中継装置の構成を示す図である。
図4A】実施形態で用いるクライアントデータの一例を示す図である。
図4B】実施形態で用いる仮想IPデータの一例を示す図である。
図5】実施形態に係る通信システムの動作を示すシーケンス図である。
図6A】仮想IPアドレス技術を用いた通信システムの構成及び動作を示す図(1)である。
図6B】仮想IPアドレス技術を用いた通信システムの構成及び動作を示す図(2)である。
図7】仮想LAN(VLAN)技術を用いた通信システムの構成及び動作を示す図(1)である。
図8A】従来例の通信システムの構成及び動作を示す図(1)である。
図8B】従来例の通信システムの構成及び動作を示す図(2)である。
図9】従来例の通信システムの動作を示すシーケンス図である。
【発明を実施するための形態】
【0071】
以下、図面を参照して、本発明の実施の形態(以下、「本実施形態」と称する)について詳細に説明する。なお、各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。また、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【0072】
[実施形態]
<通信システムの構成>
以下、図1A及び図1Bを参照して、本実施形態に係る通信システム100について説明する。図1A及び図1Bは、それぞれ、本実施形態に係る通信システム100の構成及び動作を示す図である。図1Aは、通常時における本実施形態に係る通信システム100の構成及び動作を示している。図1Bは、アクティブ系サーバの不具合発生時における本実施形態に係る通信システム100の構成及び動作を示している。
【0073】
本実施形態に係る通信システム100は、仮想IPアドレス技術と仮想LAN(VLAN)技術とを用いて、アクティブ系サーバとスタンバイ系サーバとの切替を行うシステムである。
【0074】
図1Aに示す例では、本実施形態に係る通信システム100は、複数台(図示例では2台)のサーバ10(10a,10b)と、ルータ等の中継装置20と、を備えている。2台のサーバ10のうち、一方のサーバ10aは現アクティブ系サーバとして機能しており、また、他方のサーバ10bは現スタンバイ系サーバとして機能している。中継装置20は、通信回線を介して接続されたサーバ10とクライアント端末30との間で行われる通信を中継する。
【0075】
サーバ10は、中継装置20を介して複数のクライアント端末30(図1Aに示す例では、3台のクライアント端末30a,30b,30c)と接続することが可能になっている。各クライアントは、1乃至複数台のクライアント端末30を操作することができる。図1Aに示す例では、3つのクライアントが3台のクライアント端末30a,30b,30cを操作する場合(つまり、3つのクライアントのそれぞれがクライアント端末30を1台ずつ操作する場合)を想定して説明する。ただし、各クライアントは1乃至複数台のクライアント端末30を操作することができるため、1つのクライアントが3台のクライアント端末30a,30b,30cのうちの複数台を操作する場合もあり得る。
【0076】
現アクティブ系サーバ10aは、クライアント端末30a,30b,30c毎に各クライアント端末30を操作するクライアントに対応したVLAN50a,50b,50cを作成する。そして、現アクティブ系サーバ10aは、VLAN50a,50b,50c毎に仮想ポート40a,40b,40cを作成する。作成されたVLAN50a,50b,50cは、アクティブ系サーバとスタンバイ系サーバとの間で共有される。また、作成されたVLAN50a,50b,50cに関する情報は、アクティブ系サーバとスタンバイ系サーバとの間で共有される。
【0077】
中継装置20は、記憶部にARPテーブル60を記憶している。ARPテーブル60は、各VLAN50a,50b,50cの仮想IPアドレスであるIPアドレスと現アクティブ系サーバ10aのMACアドレスとの対応関係を表している。
【0078】
図1Aに示す例では、ARPテーブル60は、各VLAN50a,50b,50cの仮想IPアドレスであるIPアドレス「10.10.1.1」と、「10.10.1.2」と、「10.10.1.3」とに対して、それぞれ、現アクティブ系サーバ10aのMACアドレス「aa−aa−aa−aa−aa−aa」と、「aa−aa−aa−aa−aa−aa」と、「aa−aa−aa−aa−aa−aa」とを対応付けている。
【0079】
各クライアント端末30は、各クライアントに割り振られたVLAN50に対応する仮想ポート40に設定されたIPアドレスを宛先として信号を送信して、現アクティブ系サーバ10aとの間で通信を行う。
【0080】
図1Bに示すように、現アクティブ系サーバ10aで不具合が発生すると、現スタンバイ系サーバ10bが新アクティブ系サーバとなり、現アクティブ系サーバ10aが旧アクティブ系サーバとなる。この動作の詳細については、後記する「通信システムの動作」の章で説明する。
【0081】
<サーバの構成>
以下、図2を参照して、サーバ10の構成について説明する。図2は、サーバ10の構成を示す図である。図2に示すように、本実施形態では、サーバ10は、各種の演算を行う制御部11と、様々なプログラムやデータを記憶する記憶部16と、他の装置との間での通信を行う通信部19とを備えている。
【0082】
制御部11は、CPU(Central Processing Unit)で構成されている。本実施形態では、制御部11は、記憶部16に予め記憶された制御プログラムPr10を実行することにより、監視部12a、優先度決定部12b、仮想ポート作成部12c、通信処理部12d、及び、サービス実行部12eとして機能する。
【0083】
監視部12aは、現アクティブ系サーバでの不具合(例えば、通信障害)の発生の有無を監視する機能手段である。
優先度決定部12bは、各クライアントの優先度を決定する機能手段である。本実施形態では、優先度決定部12bは、各クライアントに割り振られたVLAN50の利用頻度に基づいて、各クライアントの優先度を決定する構成になっている。
仮想ポート作成部12cは、旧アクティブ系サーバから新アクティブ系サーバにサーバの設定を変更する際の仮想ポート40を作成する機能手段である。
通信処理部12dは、他の装置との間での通信を制御する機能手段である。本実施形態では、通信処理部12dは、クライアント端末30との間で行われる通信の宛先を仮想ポート40宛に変更することを中継装置20に指示する構成になっている。
サービス実行部12eは、クライアント端末30に提供する各種のサービスを実行する機能手段である。
【0084】
記憶部16は、RAM(Random Access Memory)やROM(Read Only Memory)、ハードディスクドライブ、フラッシュメモリ、ソリッドステートドライブ等で構成されている。本実施形態では、記憶部16は、制御プログラムPr10や、クライアントデータ17a(図4A参照)、仮想IPデータ17b(図4B参照)を記憶している。
クライアントデータ17aは、各クライアント端末30に関するデータである。
仮想IPデータ17bは、仮想ポート40(図1A参照)に関するデータである。
クライアントデータ17aと仮想IPデータ17bについては、後記する。
【0085】
<中継装置の構成>
以下、図3を参照して、中継装置20の構成について説明する。図3は、中継装置20の構成を示す図である。図3に示すように、本実施形態では、中継装置20は、各種の演算を行う制御部21と、様々なプログラムやデータを記憶する記憶部26と、他の装置との間での通信を行う通信部29とを備えている。
【0086】
制御部21は、CPUで構成されている。本実施形態では、制御部21は、記憶部26に予め記憶された制御プログラムPr20を実行することにより、設定部22a、及び、通信処理部22bとして機能する。
【0087】
設定部22aは、サーバ10から送信されるG−ARPパケット80(図1B参照)に基づいて、記憶部26に記憶されたARPテーブル60の設定を更新する機能手段である。
通信処理部22bは、他の装置との間での通信を制御する機能手段である。本実施形態では、通信処理部22bは、アクティブ系サーバとクライアント端末30との間で行われる通信を中継する構成になっている。
【0088】
記憶部26は、RAMやROM、ハードディスクドライブ、フラッシュメモリ、ソリッドステートドライブ等で構成されている。本実施形態では、記憶部26は、制御プログラムPr20や、ARPテーブル60(図1A参照)を記憶している。
【0089】
<サーバに記憶されるデータの構成>
以下、図4Aを参照して、クライアントデータ17aの構成について説明する。図4Aは、クライアントデータ17aの一例を示す図である。図4Aに示す例では、クライアントデータ17aは、「クライアントNo.」や、「前回利用時刻」、「累積利用時間」、「利用頻度」等のデータを含んでいる。「クライアントNo.」は、各クライアントに固有に設定された符号を表している。「前回利用時刻」は、各クライアントが前回利用した時刻を表している。「累積利用時間」は、各クライアントの累積利用時間を表している。「利用頻度」は、各クライアントに割り振られたVLAN50の利用頻度を表している。
【0090】
以下、図4Bを参照して、仮想IPデータ17bの構成について説明する。図4Bは、本実施形態で用いる仮想IPデータ17bの一例を示す図である。図4Bに示す例では、仮想IPデータ17bは、「仮想ポートNo.」や、「IPアドレス」、「MACアドレス」等のデータを含んでいる。「仮想ポートNo.」は、各VLAN50に対応する仮想ポート40に固有に設定された符号を表している。「IPアドレス」は、各VLAN50の仮想IPアドレスを表している。「MACアドレス」は、アクティブ系サーバのMACアドレスを表している。
【0091】
<通信システムの動作>
以下、図5を参照して、通信システム100の動作について説明する。図5は、通信システム100の動作を示すシーケンス図である。
【0092】
ここで、図5に示すように、通常時において、クライアント端末30がIPアドレス「10.10.1.1」宛に信号を送信したとする(ステップS110)。
【0093】
図1Aに示すように、通常時において、ARPテーブル60では、現アクティブ系サーバ10aのMACアドレスが各IPアドレスに対応付けられている。そのため、このとき、中継装置20は、ARPテーブル60に基づいて、クライアント端末30から送信された信号を現アクティブ系サーバ10aに中継する。その結果、現アクティブ系サーバ10aがクライアント端末30から送信された信号を受信する。
【0094】
ここで、図5に示すように、現アクティブ系サーバ10aに不具合(例えば、通信障害等)が発生したとする。この場合に、通信システム100は、クライアント端末30からの要求が途絶えた状態(応答なしの状態)になる。
【0095】
このとき、現スタンバイ系サーバ10bの監視部12aは、現アクティブ系サーバ10aの不具合を検知する(ステップS120)。すると、現スタンバイ系サーバ10bの優先度決定部12bは、記憶部16に記憶されたクライアントデータ17aを参照して、利用頻度が高いVLAN50を算出し、そのVLAN50の利用頻度に基づいて、各クライアントの優先度を決定する(ステップS130)。このとき、優先度決定部12bは、利用頻度が高いVLAN50に対応するクライアントほど、優先度の高いクライアントであると判断して、各クライアントの優先度を決定する。
【0096】
次に、現スタンバイ系サーバ10bの仮想ポート作成部12cは、予めアクティブ系サーバとスタンバイ系サーバとの間で共有されているVLAN50に対応する仮想IPアドレスを用いて、優先度が最も高いVLAN50に対して仮想ポート40を作成し(ステップS140)、新アクティブ系サーバとしての立ち上げ処理を行う。
【0097】
新アクティブ系サーバとしての立ち上げ処理は、図1Bに示すように、通信システム100が、VLAN50の仮想IPアドレスに対応するMACアドレスを新アクティブ系サーバとなる現スタンバイ系サーバ10bのMACアドレスに変更することによって行われる。これにより、現アクティブ系サーバ10aが旧アクティブ系サーバとなるとともに、現スタンバイ系サーバ10bが新アクティブ系サーバとなるように、サーバ10の設定の切替が行われる。
【0098】
図5に示すように、ステップS140の後、新アクティブ系サーバ10bの通信処理部12dは、優先度が最も高いVLAN50に対応するG−ARPパケット80を中継装置20にブロードキャストする(ステップS150)。これは、優先度が最も高いVLAN50の仮想IPアドレスに対応するMACアドレスの設定が旧アクティブ系サーバ10aのMACアドレスから新アクティブ系サーバ10bのMACアドレスに変更されたことを中継装置20に認識させるためである。G−ARPパケット80は、優先度が最も高いVLAN50の仮想IPアドレスと、新アクティブ系サーバ10bのMACアドレス「bb−bb−bb−bb−bb−bb」とを対応付ける内容になっている。
【0099】
G−ARPパケット80を受信した中継装置20は、G−ARPパケット80に基づいて、優先度が最も高いVLAN50のARPテーブル60を更新し、更新されたVLAN50のARPテーブル60に従って、パケットのルーティング(転送経路の制御)を行う(ステップS160)。
【0100】
ここで、更新が完了したVLAN50に対応するクライアント端末30がIPアドレス「10.10.1.1」宛に信号を送信したとする(ステップS110a)。このとき、図1Bに示すように、中継装置20は、ARPテーブル60に基づいて、クライアント端末30から送信された信号を新アクティブ系サーバ10bに中継する。その結果、新アクティブ系サーバ10bがクライアント端末30から送信された信号を受信する。
【0101】
これにより、ARPテーブル60の更新が完了したVLAN50に対応するクライアント端末30は、新アクティブ系サーバ10bとの間で通信可能な状態になる。その結果、新アクティブ系サーバ10bは、更新が完了したVLAN50に対応するクライアント端末30との間で通信を行う。その際に、新アクティブ系サーバ10bのサービス実行部12eが、クライアント端末30に提供する各種のサービスを実行する。
【0102】
ステップS110aの後、新アクティブ系サーバ10bの仮想ポート作成部12cは、優先度が2番目以降のVLAN50に対応する仮想ポート40を作成し(ステップS140a)を作成する。そして、新アクティブ系サーバ10bの通信処理部12dは、優先度が2番目以降のVLAN50に対応するG−ARPパケット80を中継装置20にブロードキャストする(ステップS150a)。新アクティブ系サーバ10bは、VLAN50の数分だけ、ステップS140aとステップS150aの処理を繰り返し行う。
【0103】
G−ARPパケット80を受信する度に、中継装置20は、G−ARPパケット80に基づいて、優先度が2番目以降のVLAN50のARPテーブル60を更新し、更新されたVLAN50のARPテーブル60に従って、パケットのルーティング(転送経路の制御)を行う(ステップS160a)。
【0104】
これにより、最終的には、全てのクライアント端末30は、新アクティブ系サーバ10bとの間で通信可能な状態になる。その結果、全てのクライアント端末30がIPアドレス「10.10.1.1」宛に信号を送信して(図1Bに示すステップS110a参照)、新アクティブ系サーバ10bとの間で通信を行うことができるようになる。
【0105】
図1Bに示す例では、ステップS160aでの更新後のARPテーブル60は、各VLAN50a,50b,50cの仮想IPアドレスに対して、それぞれ、新アクティブ系サーバ10bのMACアドレス「bb−bb−bb−bb−bb−bb」を対応付けている。
【0106】
このような仮想IPアドレス技術と仮想LAN(VLAN)技術とを用いた本実施形態に係る通信システム100は、各クライアントに割り振られたVLAN50に対応する仮想ポート40を作成することで、サーバ10と各クライアント端末30との間の通信の独立性を確保しつつ、アクティブ系サーバとスタンバイ系サーバとの切替を行うことができる。また、通信システム100は、各クライアント端末30が複数の端末によって構成された独自のネットワーク体系を有している場合であっても、各クライアント端末30をVLAN50で分離することで、各クライアント端末30が有している独自のネットワーク体系を保持することができる。
【0107】
また、通信システム100は、現スタンバイ系サーバ10bが新アクティブ系サーバとして切り替わる際に、利用頻度が高いVLAN50に対応するクライアントを優先度の高いクライアントとし、クライアントの優先度の高い順に、各クライアントによって操作されるクライアント端末30との通信の宛先の変更指示(つまり、クライアント端末30との通信の確立)を行う。
【0108】
このような通信システム100は、図9に示す従来例の通信システム603のサービス断時間と図5に示す本実施形態に係る通信システム100のサービス断時間との比較から分かるように、クライアント端末30のサービス断時間を低減することができる。特に、利用頻度が高いクライアントは、優先度の高いクライアントである。通信システム100は、その優先度の高いクライアントによって操作されるクライアント端末30のサービス断時間を低減することができる。
【0109】
以上の通り、本実施形態に係る通信システム100によれば、クライアント端末30のサービス断時間を低減することができる。特に、通信システム100によれば、優先度の高いクライアントによって操作されるクライアント端末30のサービス断時間を低減することができる。
【0110】
なお、本発明は、前記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の変更や変形を行うことができる。
【0111】
例えば、前記した実施形態は、本発明の要旨を分かり易く説明するために詳細に説明したものである。そのため、本発明は、必ずしも説明した全ての構成要素を備えるものに限定されるものではない。また、本発明は、ある構成要素に他の構成要素を追加したり、一部の構成要素を他の構成要素に変更したりすることができる。また、本発明は、一部の構成要素を削除することもできる。
【0112】
また、例えば、前記した実施形態では、優先度決定部12bが各クライアントに割り振られたVLAN50の利用頻度に基づいて、各クライアントの優先度を決定するものとして説明している。しかしながら、例えば、優先度決定部12bは、各クライアントに割り振られたVLAN50の累積利用時間に基づいて、各クライアントの優先度を決定するようにしてもよい。又は、例えば、優先度決定部12bは、予め定められた各クライアント端末30の重要度に基づいて、各クライアントの優先度を決定するようにしてもよい。
【符号の説明】
【0113】
10(10a,10b) サーバ
11 制御部
12a 監視部
12b 優先度決定部
12c 仮想ポート作成部
12d 通信処理部
12e サービス実行部
16 記憶部
17a クライアントデータ
17a 仮想IPデータ
19 通信部
20 中継装置(ルータ等)
21 制御部
22a 設定部
22b 通信処理部
26 記憶部
29 通信部
30(30a,30b,30c) クライアント端末
40(40a,40b,40c) 仮想ポート
50(50a,50b,50c,…) 仮想LAN(VLAN)
60 ARPテーブル
80 G−ARPパケット
100 通信システム
Pr10,Pr20 制御プログラム
図1A
図1B
図2
図3
図4A
図4B
図5
図6A
図6B
図7
図8A
図8B
図9