JP2013179430A - 装置間同期および切替方法、並びに装置間切替システム - Google Patents

装置間同期および切替方法、並びに装置間切替システム Download PDF

Info

Publication number
JP2013179430A
JP2013179430A JP2012041508A JP2012041508A JP2013179430A JP 2013179430 A JP2013179430 A JP 2013179430A JP 2012041508 A JP2012041508 A JP 2012041508A JP 2012041508 A JP2012041508 A JP 2012041508A JP 2013179430 A JP2013179430 A JP 2013179430A
Authority
JP
Japan
Prior art keywords
active device
synchronization
active
management server
spare
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
JP2012041508A
Other languages
English (en)
Inventor
Konomi Mochizuki
このみ 望月
Kenichi Higuchi
健一 樋口
Takashi Kurimoto
崇 栗本
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012041508A priority Critical patent/JP2013179430A/ja
Publication of JP2013179430A publication Critical patent/JP2013179430A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】パケット転送網を介して接続した現用装置と予備装置とを有し現用装置の故障時に予備装置に切り替わるシステムにおいて、切替に伴う処理遅延や状態不整合を防止し、さらに、予備装置の台数の削減も可能とする。
【解決手段】1または複数の現用装置20を設けるとともに、現用装置20に対して直接接続し、かつ、予備装置40に対してパケット転送網11を介して接続する同期管理サーバ50を設ける。同期管理サーバ50は、対向装置30から現用装置20に入力された情報に基づく同期情報をその現用装置20から受け取って保持・管理し、現用装置20の故障を検出した予備装置40からの要求に応じて、その同期情報を予備装置40に送信する。
【選択図】 図5

Description

本発明は、ネットワークを介して現用装置と予備装置とが接続する場合における、現用装置と予備装置との間で状態の同期を図り、障害発生時などに現用装置から予備装置に切り替える方法と、そのような方法が適用される装置間切替システムとに関する。
ネットワーク事業者が提供するパケット通信網には、アドレス変換やQoS(Quality of Service;サービス品質)制御、トンネル通信のためのヘッダ付与などの各種の処理をパケットに施すパケット転送装置が設置されている。これらの装置が故障した時の対策として、同じ機能を搭載する現用装置と予備装置とを用意し、通常時には現用装置を運転し、かつ、現用装置と予備装置との間で状態の同期を図り、現用装置が故障した場合には、瞬時に予備装置が処理を引き継ぐ方法がある。
図1は、現用装置と予備装置とを備えたシステムの一例を示している。図1の(A)に示したものでは、ルータ等の転送装置によって構成される2つのパケット転送網11,12が設けられており、現用装置20と予備装置40は、いずれも、2つのパケット転送網11,12の両方に接続している。また、パケット転送網12には、対向装置30が接続している。対向装置30は現用装置20に対してパケット処理を依頼するものであり、現用装置20は、通常時には、対向装置30からパケット転送網12を介して入力したデータに対してパケット処理を実行し、その結果をパケット転送網12を介して対向装置30に出力する。また、現用装置20と予備装置40は、パケット転送網11を介して状態同期を行っている。
ここで現用装置20に故障が発生したとすると、図1の(B)に示したように、パケット処理の実行が現用装置20から予備装置40に切り替わり、その結果、予備装置40は、対向装置30からパケット転送網12を介して入力したデータに対してパケット処理を実行し、その結果をパケット転送網12を介して対向装置30に出力するようになる。
ところで、現用装置と予備装置との間で状態の同期を図る方法として、対向装置30から現用装置20に入力した情報をログ(記録)化してパケット化し、その入力情報のログのパケットを現用装置20から予備装置40に送信し、現用装置20と予備装置40のそれぞれにおいて、当該入力に対する演算と出力とを行う方法がある。この場合、現用装置20と予備装置40との間での状態同期を入力情報ログのパケットを用いてどのように行うかによって、データレプリケーション技術などで採用されている同期方式と、非同期方式とがある(非特許文献1参照)。
図2は、同期方式での状態同期を説明する図である。図2の(A)に示すように、対向装置30から入力があると(図2の[1])、現用装置20は入力情報をログに記録してパケット化し([2])、それを予備装置40に送信する([3])。予備装置40は、入力情報を受信したら受信確認応答(Ack)を現用装置に送り([4])、現用装置20は、Ackを受け取ってから演算結果を対向装置30に出力する([5])。図2の(B)は、この同期方式での現用装置20、対向装置30及び予備装置40の間でのデータのやり取りを信号シーケンス図として示したものである。以下の説明において、信号シーケンス図におけるa,bは現用装置への入力を表し、a−Ack,b−Ackは、入力a,bに対する現用装置からの出力を表し、a’,b’は入力情報a,bをパケット化したものを表し、a’−Ack,b’−Ackは、パケット化された入力情報a’,b’に対する到達確認応答を示している。
ここでは、現用装置20と予備装置40との間にパケット転送網11が存在している。そのため、パケット転送網11でのルータの輻輳や故障等により、パケット損失が発生する可能性が高まる。その場合、現用装置20から予備装置40に向けてパケット化された入力情報a’を送信する際に再送が頻発したり、予備装置20からの到達確認応答a’−Ackが遅れ、現用装置20での処理遅延が生じる。この処理遅延により、現用装置20から対向装置30が出力a−Ackを受け取るまでの時間にも遅延が生じる。これは、同期方式における解決すべき課題である。
図3は、非同期方式での状態同期を説明する図である。図3の(A)に示すように、対向装置30から入力があると(図3の[1])、現用装置20は直ちに対向装置30に対する出力を実行し([2])、その後、入力情報をログに記録してパケット化し([3])、それを予備装置40に送信する([4])。予備装置40は、入力情報を受信したら受信確認応答(Ack)を現用装置に送る([5])。図3の(B)は、この非同期方式での現用装置20、対向装置30及び予備装置40の間でのデータのやり取りを信号シーケンス図として示したものである。
ここで、現用装置20が入力に対して直ちに出力を実行したが、その後、入力情報を予備装置40に送信する前に故障したとする。その場合、対向装置30からの入力aに対応した入力情報a’を予備装置40が受け取っていない状態で、予備装置40に切り替わってしまう。その一方で、対向装置30は、入力aに対する出力a−Ackを既に現用装置20から受け取っているため、次の処理に移行している。従って、切替後の予備装置40と対向装置30との間で状態の不整合が生じ、予備装置40は、処理を正しく引き継げない可能性がある。具体的には、入力aを前提として入力bに対する処理を行う必要がある場合、図3の(B)に示すように、予備装置40は入力情報a’を受け取っていないため、切替によって対向装置30から入力bを直接受け取ったとしても、この入力bは不明パケットということになり、出力b−Ackを返すことができなくなる。
現用装置20と予備装置40が配置されている場合、相互に相手側の装置の生存確認を行って、相手側の装置が故障していないかを検出する必要がある。図4の(A)に示すように、現用装置20と予備装置40との間でのこのような生存確認は、一般に、ハートビートパケットを互いに送信し、一定時間相手からの応答がない場合に、故障発生と判断するようにしている。ところで、現用装置20と予備装置40とがパケット転送網11を介して存在する場合、パケット転送網11のルータの輻輳や故障により、ハートビートパケットが不達となる場合がある。図4の(B)に示すように、パケット損失によるハートビートパケットの不達が発生すると、予備装置40は、現用装置20が正常に動作しているにも関わらず現用装置20での故障発生と判断するので、現用装置20が正常に動作していても、予備装置40が処理を引き継いでしまう。これにより、現用装置20と予備装置40が重複して現用装置となりうる両系起動の問題、すなわち両方の装置が対向装置30からの入力を処理する動作を行ってしまう、という問題が生じる。
佐野 正和、"システム担当者のための今さら聞けないストレージ再入門 天災は、忘れたころにやってくる〜災害時対策入門、その具体的手法(2)"、[online]、2008年5月22日、企業ITとマネジメント Enterprise Zine、株式会社翔泳社、[2011年12月14日検索]、インターネット<URL:http://enterprisezine.jp/article/detail/361>
上述したように、現用装置と予備装置とをパケット転送網を介して配置した場合、パケット転送網での輻輳やパケット損失に起因して処理遅延や両系起動の問題が生じたり、あるいは、故障発生のタイミングによっては処理を現用装置から予備装置にうまく引き継げない、などの問題が生じる。また、現用装置と予備装置とを1:1で配置することは、現用装置の台数が多い場合などに不経済になりがちである。
本発明の目的は、現用装置と予備装置とを有するシステムにおいて、切替に伴う処理遅延や状態不整合を防止し、さらに、予備装置の台数の削減も可能とする装置間同期および切替方法を提供することにある。
本発明の目的は、現用装置と予備装置とを備えるシステムであって、切替に伴う処理遅延や状態不整合を防止し、さらに、予備装置の台数の削減も可能な装置間切替システムを提供することにある。
本発明の装置間同期および切替方法は、対向装置からの入力に応じて処理を実行して前記対向装置に出力を返す現用装置と、パケット転送網を介して前記現用装置と接続し、前記現用装置に障害が発生した時に前記現用装置から前記処理を引き続いて実行する予備装置と、を有するシステムにおける装置間同期および切替方法であって、
前記現用装置が、当該現用装置に直接接続した同期管理サーバに、前記対向装置からの入力に基づいて同期情報を送信する段階と、
前記同期管理サーバが前記同期情報を保持する段階と、
前記現用装置の障害を検出した前記予備装置が、当該故障を発生した現用装置の同期情報であって当該予備装置において未受信である同期情報を前記パケット転送網を介して前記同期管理サーバに要求する段階と、
前記予備装置が、前記同期管理サーバから前記パケット転送網を介して受け取った前記同期情報に基づいて、前記故障を発生した現用装置の処理を引き続いて実行する段階と、
を有する。
本発明の装置間切替システムは、対向装置からの入力に応じて処理を実行して前記対向装置に出力を返す現用装置と、
パケット転送網を介して前記現用装置と接続し、前記現用装置に障害が発生した時に前記現用装置から前記処理を引き続いて実行する予備装置と、
前記現用装置に直接接続するとともに、前記パケット転送網を介して前記予備装置にも接続し、前記対向装置から前記現用装置に入力された情報に基づく同期情報を当該現用装置から受け取って保持し、前記予備装置からの要求に応じて前記同期情報を前記予備装置に送信する同期管理サーバと、
を備える。前記予備装置は、前記現用装置の障害を検出したときに、当該故障を発生した現用装置の同期情報であって当該予備装置において未受信である同期情報を前記パケット転送網を介して前記同期管理サーバに要求し、前記同期管理サーバから前記パケット転送網を介して受け取った前記同期情報に基づいて、前記故障を発生した現用装置の処理を引き続いて実行する。
本発明は、1または複数の現用装置を設けるとともに、これらの現用装置と直接接続した同期管理サーバを設け、この同期管理サーバにおいて、現用装置と予備装置との間での状態同期に必要な同期情報を現用装置から受信して保持し、現用装置から予備装置に切り替わるときにはその同期情報を予備装置へ送信するようにすることにより、切替に伴う処理遅延などの発生を防止することができるとともに、状態不整合なども起こらなくなる、という効果を有する。
現用装置と予備装置とを備えたシステムの一例を示すブロック図である。 同期方式による状態同期を説明する図である。 非同期方式による状態同期を説明する図である。 パケット損失によって現用装置と予備装置とが同時に動作状態となることを示す図である。 本発明の実施の一形態の装置間切替システムの構成を示すブロック図である。 現用装置、予備装置及び同期管理サーバの構成を示すブロック図である。 実施例1において現用装置が正常であるときの動作を説明する図である。 実施例1において現用装置が故障したときの動作を説明する図である。 実施例1においてネットワーク障害があったときの動作を説明する図である。 実施例2での動作を説明する図である。 実施例3での動作を説明する図である。 実施例3において入力パケットのバッファへの格納を説明する図である。 実施例3において共用予備装置に複数のバッファを設けた構成を示す図である。 実施例3において共用予備装置に問い合わせ部を設けた構成を示す図である。 実施例3において共用予備装置にフローのQoSクラスごとのバッファを設けた構成を示す図である。
図5は、本発明の実施の一形態の装置間切替システムを示している。このシステムは、図1に示したものと同様にパケット転送網に接続した現用装置20と予備装置40とを備え、通常時には対向装置30からの入力を現用装置20で処理し、現用装置20での障害発生時には対向装置30からの入力を予備装置40で処理するようにしたものである。このシステムが図1に示したものと異なることは、複数の現用装置20に対して、それよりも少ない台数の予備装置40を設ければよいことと、現用装置20と予備装置40との間で状態を同期するために必要な同期情報を現用装置20から受信して保持し、予備装置40に処理が切り替わったときに同期情報を予備装置40へ送信する機能を有する同期管理サーバ50が設けられていることである。同期情報としては、現用装置に対する入力情報は、後述するフローテーブルなどが含まれる。
1または複数の現用装置20(図示したものでは現用装置1〜現用装置N)がパケット転送網11に接続しており、このパケット転送網11には予備装置40も接続している。同期管理サーバ50は、パケット転送網11を介さずに各現用装置20と直接接続し、パケット転送網11を介して予備装置40ともデータの送受信が可能である。パケット転送網11は、現用装置20と予備装置40との間での状態の同期のために用いられるネットワークである。もう1つのパケット転送網12には、各現用装置20と対応装置30と予備装置40とが接続している。パケット転送網12は、各現用装置20及び予備装置40に対して対向装置30を接続するためのネットワークである。ここではパケット転送網11,12が分離しているが、パケット転送網11,12が一体のものとなっていてもよい。
図6は、現用装置、予備装置及び同期管理サーバの各々の構成を示している。
各現用装置20と直接接続し、同期情報を現用装置20から受信して保存し、現用装置20から予備装置40への切り替え時に同期方法を予備装置40へ送信する同期管理サーバ50は、同期情報受信部51とAck送信部52と同期情報保存部53と同期情報要求応答部54とを備えている。同期情報受信部51は、現用装置20から同期情報を受信する機能を有する。Ack送信部52は、現用装置20から同期情報を受信した後、受信確認のためのAck応答を当該現用装置20に送信する機能を有する。同期情報保存部53は、現用装置20から受信した同期情報をある一定時間保存する機能を有する。同期情報要求応答部54は、予備装置20からの同期情報要求に対し、該当する現用装置20の同期情報を予備装置40へ送信する機能を有する。
各現用装置20は、対向装置30からのパケットをパケット転送網12を介して受信し、そのパケットに対して必要な処理を施し、処理後のパケットをパケット転送網12に送信する機能を有するとともに、予備装置40との同期のため、同期情報を同期管理サーバ50または予備装置40に送信する機能を有する。また現用装置20は、予備装置40との間で、ハートビートパケットによる生存確認を行うように構成されている。そのような現用装置20は、同期情報を同期管理サーバ50及び予備装置40に送信する同期情報送信部21と、同期管理サーバ50または予備装置40からのAck応答を受信するAck受信部22と、予備装置40との間でハートビートパケットを一定間隔で交換する生存確認部23と、を備えている。
予備装置40は、現用装置20との同期のため、同期情報を現用装置20または同期管理サーバ50から受信する機能を有する。また予備装置40は、現用装置20との間で、ハートビートパケットによる生存確認を行い、現用装置20の故障を検出した場合、現用装置20の処理を引き継ぎ、パケット転送網12へ切替通知を送信する。このような予備装置40は、現用装置20から同期情報を受信する同期情報受信部41と、現用装置20から同期情報を受信した後、受信確認のためのAck応答を当該現用装置20に送信するAck送信部42と、現用装置20との間でハートビートパケットを一定間隔で交換する生存確認部43と、生存確認部43において、ある一定時間、現用装置からの応答がない場合に、同期管理サーバに対して同期情報を要求する同期情報要求部44と、パケット転送網12に対して切替の通知を行う切替通知部45と、対向装置30から受信したパケットを一定時間保存しておく受信パケット保存部46と、を備えている。
以上説明した構成を有する本実施形態の装置間切替システムでは、(1)冗長構成、(2)同期情報のコピーの方式、及び(3)切替タイミングの3点について、それぞれが独立に複数の形態を考えることができ、これらの各点ごとに1つの形態を選択して、現用装置と予備装置との間での同期と切替を実現することができる。すなわち、組み合わせに関してすべてのものが実現可能である。
(1)冗長構成では、(1−1)現用装置と予備装置をそれぞれ1台ずつとする1:1の構成と、(1−2)N,mがN>mである自然数であるとして、現用装置をN台と予備装置をm台設けるN:mの構成と、が可能である。N:mの構成によれば、複数の現用装置が1台の予備装置を共用することによって、予備装置にかかるコストを低減することが可能である。
(2)同期情報コピー方式では、(2−1)同期情報を現用装置または同期管理サーバから予備装置に逐次コピーする逐次コピー方式と、(2−2)現用装置の正常運用中は同期情報を同期管理サーバに格納しておき、現用装置が故障した際に、同期情報を同期管理サーバから予備装置にコピーする切替後コピー方式とが可能である。
(3)切替タイミングでは、(3−1)現用装置の故障発生後、同期情報または同期情報の差分を同期管理サーバから予備装置へコピーし、そのコピーの完了後、予備装置の切替通知部がパケット転送網へ切替通知を行うコピー後切替方式と、(3−2)現用装置の故障発生後、予備装置の切替通知部パケット転送網へ切替通知を行ってから、同期情報または同期情報の差分を同期管理サーバから予備装置へコピーを行うコピー前切替方式と、が可能である。ただし、コピー前切替方式では、コピー中に対向装置からパケットを受信した場合には、そのパケットを予備装置の受信パケット保存部に保存する。
[実施例]
以下、図5及び図6に示した装置間切替システムにおける(1)冗長構成、(2)同期情報のコピーの方式、及び(3)切替タイミングの組み合わせに基づく各実施例を説明することによって、本発明をさらに詳しく説明する。
[実施例1]
冗長構成として1:1を採用し、同期情報コピー方式として逐次コピー方式を採用し、切替タイミングとしてコピー後切替方式を採用するものとする。また、同期情報は、現用装置20に入力された入力情報(すなわち対向装置30からのパケット入力など)であるとする。
現用装置20が正常に動作しているときは、図7における(A)のブロック図及び(B)の信号シーケンス図に示すように、現用装置20は、対向装置30から入力aを受信すると(図7の[1])、その入力情報をログに記録してパケット化して入力情報a’を生成し([2])、パケット化された入力情報a’を同期情報として同期情報送信部21から同期管理サーバ50に送信する([3])。同期管理サーバ50は、同期情報受信部51によってこのパケット化された入力情報a’を同期情報として受信して同期情報保存部53に保存し、Ack送信部52によって到達確認応答a’−Ackを現用装置20に送信する([4])。現用装置20は、Ack受信部22によって同期管理サーバ50からのa’−Ackを受信したのち、入力aに対する出力a−Ackを対向装置30に送信する([5])。
その後、現用装置20は、予備装置40に対しても、パケット化された入力情報a’を同期情報として送信し([6])、予備装置40は、その同期情報受信部41によって同期情報a’を受信すると、Ack送信部42によって到着確認応答a’−Ackを現用装置30に送信する([7])。
対向装置30および現用装置20は、入力情報aやa’に対する到着確認応答a−Ackやa’−Ackが一定時間たっても届かない場合には、aやa’を再送する機能を備えている。
この実施例では、現用装置20は、同期管理サーバ50にも同期情報a’を送信し、同期管理サーバ50からの到達確認応答a’−Ackを受信したら対向装置30に対する出力を実行できるようにしている。この実施例は、到達確認応答a’−Ackを受信してから現用装置20が対向装置30に対する出力を実行する点では図2に示した同期方式と同じであるが、現用装置20と同期管理サーバ50とが直接接続されており、この直接接続ではルータの輻輳や故障によるパケット損失は発生しにくいことから、図2に示したものと比べ、現用装置20が、入力をを受けてから出力を実行するまでの時間が短縮され、処理遅延の低減が可能となっている。すなわちこの実施例の構成は、現用装置20と予備装置40とが接続するパケット転送網11でのパケット損失などの影響を受けない構成となっている。
次に、図8を用いて、実施例1において現用装置20が故障した時の動作を説明する。
現用装置20と予備装置40との間では、ハートビートパケットを相互に送信することによって、互いの生存確認を行っている。ここでは、対向装置30からの入力aに対する出力a−Ackを現用装置20が対向装置30に送信したが、同期情報a’を予備装置40には送信していない時点で現用装置20に故障が発生したものとする。これは、図3を用いて説明した非同期方式の構成での故障発生時点と同じである。図8における(A)のブロック図及び(B)の信号シーケンス図に示すように、現用装置20で故障が発生すると(図8の[1])、予備装置40ではその生存確認部43が、ハートビートパケットへの現用装置20の応答がないことから、現用装置20での故障発生を検出する([2])。その結果、予備装置40は、その同期情報要求部44によって、同期管理サーバ50に対し、アクセス確認と受信済み同期情報通知のためのパケットを送信する([3])。このパケットを受信した同期管理サーバ50では、同期情報要求応答部54が、予備装置40では未受信の同期情報を同期情報保存部53から取り出して予備装置40へ送信する([4])。予備装置40は、この同期情報を同期情報受信部41において受信し、Ack送信部42によって到達確認応答のパケットa’−Ackを同期管理サーバ50に送信する([5])。
その後、予備装置40は、切替通知部45によってパケット転送網12に対してRARP(Reverse ARP)パケット等の切替通知パケットを送信し([6])、その結果、対向装置30は現用装置20から予備装置40に切り替わったことを認識して、対向装置30からの入力情報(図示したものではb)が予備装置40に到達するようになる([7])。予備装置40は、入力bに対する出力b−Ackを実行して対向装置30に送信する([8])。
この構成では、現用装置20が予備装置40に同期情報を送信する前に現用装置20の故障が発生した場合であっても、同期管理サーバ50には全ての同期情報が保存されているから、予備装置40は、現用装置20での故障発生後に同期管理サーバ50から未受信の同期情報を受信することが可能である。したがって、切替後の予備装置20と対向装置30との間での状態の不整合が生じず、処理を正常に引き継ぐことが可能となる。
次に、図9を用いて、実施例1においてパケット転送網11に障害が発生した場合の動作を説明する。
現用装置20と予備装置40とは、パケット転送網11を介して生存確認用のハートビートパケットを相互に送信している。図9における(A)のブロック図及び(B)の信号シーケンス図に示すように、パケット転送網11でネットワーク障害が発生すると([1])、予備装置40の生存確認部43は、ハートビートパケットの応答がないことから、故障を検出する([2])。ここでは、図8に示した場合と同様に、予備装置40は、同期管理サーバ50に対し、アクセス確認と受信済み同期情報通知のためのパケットをパケット転送網11を介して送信する([3])。ここではパケット転送網11のネットワーク障害が起きているから同期管理サーバ50からの応答が予備装置40に届くことはなく、予備装置40は、同期管理サーバ50からの応答がないことから、現用装置20の故障ではなくパケット転送網12のネットワーク障害であると判断し、現用装置20の処理引き継ぎは行わない。現用装置20は、引き続き、対向装置30からの入力(ここで示した例では入力b)に対し([4])、出力を実行してb−Ackを対向装置30に送信する([5])。
本発明の構成によれば、予備装置40は、ハートビートパケット不達時に、その不達が現用装置20の故障によるものかネットワーク障害によるものかを区別することができ、その結果、ネットワーク障害時に、現用装置と予備装置が重複して動作するいわゆる両系起動の問題を回避することができる。
[実施例2]
冗長構成としてN:mを採用し、同期情報コピー方式として切替後コピー方式を採用し、切替タイミングとしてコピー後切替方式を採用するものとする。また、同期情報は、現用装置20に入力された入力情報であるが、特に、SIP(Session Initiation Protocol)パケットなどに含まれ、パケットのヘッダ情報等により区別されるフローごとに当該フローのパケットに対して要求される処理内容を記載した情報を抽出したものとする。当該処理内容は、フローテーブルとして現用装置20に保存さているものとする。本実施例では、フローテーブルを同期情報とする。フローテーブルはフローごとのものであり、パケット処理もフローごとに現用装置20でなされるものであるから、結果として、現用装置ごとにフローテーブルも区別されることとなる。これらのフローテーブルは、各現用装置20においてメモリに格納され、参照されるものとする。
図10の(A)は、実施例2での構成を示している。3台の現用装置20(現用装置1〜3として区別する)がパケット転送網11に接続し、このパケット転送網11には、各現用装置20に共通のものとして設けられる共用予備装置60も接続している。対向装置30は、パケット転送網12に接続し、パケット転送網12には、各現用装置20も共用予備装置60も接続している。上述と同様に、パケット転送網11は、現用装置20と共用予備装置60との状態同期のために用いられるネットワークであり、パケット転送網12は、対向装置30が要求するパケット処理を現用装置20(あるいは共用予備装置60)で処理するためのネットワークである。同期管理サーバ50は、3台の現用装置に対して直接接続するとともに、パケット転送網11を介して共用予備装置60とも接続している。共用予備装置60は、上述した予備装置40と同様の構成のものであるが、複数の現用装置20に対応するようにしたものである。
各現用装置20が正常に動作している時には、各現用装置20のメモリ上に格納され、パケット処理の際に参照されるフローテーブルを、同期管理サーバ50の記憶媒体上で同期させる。現用装置20においてフローテーブルが変更されると、それに追従して同期管理サーバ50で上の当該現用装置用のフローテーブルも変更される。
次に、現用装置が故障した時の動作を図10の(B)を用いて説明する。ここでは、現用装置2に故障が発生するものとする。
現用装置2で故障が発生すると(図10の[1])、共用予備装置60は、現用装置2からのハートビート応答がないことから、現用装置2の故障を検出し([2])、同期管理サーバ50に対し、アクセス確認と現用装置2のフローテーブル要求のためのパケットを送信する([3])。同期管理サーバ50は、現用装置2に対応したフローテーブル、すなわちフローテーブル2を共用予備装置60へ送信する([4])。共用予備装置60は、受信したフローテーブル2をメモリ上に全て保存すると、パケット転送網12に対して、RARPパケット等の切替通知パケットを送信する([5])。その結果、対向装置30は現用装置2から予備装置40に切り替わったことを認識して、対向装置30から現用装置2向けのパケットが共用予備装置60に入力されるようになり([6])、共用予備装置60は、現用装置2の処理を引き継いで出力を実行する([7])。
共用予備装置60は、N:m冗長構成において複数の現用装置20の処理を引き継ぐものであるが、これら複数の現用装置20の状態情報をすべて保持するようにすると、共用予備装置60におけるメモリ容量不足が懸念されるところである。本実施例では、記憶容量の大きな同期管理サーバの記憶媒体上で、各現用装置ごとのフローテーブルの同期と保存を行い、現用装置から予備装置への切替時に、該当するフローテーブルのみを共用予備装置がダウンロードするようにすることにより、共用予備装置60でのメモリサイズを抑えたまま、N:mの冗長構成を容易に実現できるようになる。
[実施例3]
冗長構成としてN:mを採用し、同期情報コピー方式として切替後コピー方式を採用し、切替タイミングとしてコピー前切替方式を採用するものとする。また、同期情報として、実施例2と同様にフローテーブルを使用する。フローテーブルは、各現用装置20においてメモリに格納され、参照されるものとする。また、共用予備装置60では、受信パケットを保存する受信パケット保存部が特にバッファ61として設けられているものとする。
図11の(A)は、実施例3の構成を示しており、共用予備装置60内にバッファ61が設けられていること以外は、図10の(A)に示した実施例2の構成と同じである。また、各現用装置20が正常であるときの動作も実施例2の場合と同様である。
現用装置が故障した時の動作を図11の(B)を用いて説明する。ここでは、現用装置2に故障が発生するものとする。
現用装置2での故障の発生(図11の[1])、共用予備装置60における現用装置2の故障の検出([2])、及びアクセス確認及びフローテーブル2要求のパケットの送信([3])までは、図10の(B)に示した実施例2の場合と同様に行われる。同期管理サーバ50は、アクセス確認及びフローテーブル2要求のパケットを受信すると、共用予備装置60へのフローテーブル2の共用予備装置への送信を開始する([4])。共用予備装置60は、フローテーブル2の受信を開始した時点で、パケット転送網12に対して、RARPパケット等の切替通知パケットを送信する([5])。切替通知パケットの送信時点では、共用予備装置60でのフローテーブル2のダウンロードは完了していないが、対向装置30から共用予備装置60に対し、現用装置2向けのパケットが入力されることがあり得る。現用装置2向けのパケットが対向装置30から共用予備装置60に入力されると([6])、この時点ではフローテーブル2のダウンロード中であり、共用予備装置2のメモリ上では、フローのエントリが完備して存在しているわけではない。そこで、存在しないエントリに対応するパケットをバッファ61に蓄積し([7])、フローのエントリがメモリ上に格納された時点で、共用予備装置60は出力をを実行する([8])。
この構成では、実施例2と同様に、共用予備装置におけるメモリサイズを抑えたまま、容易にN:m冗長構成を実現することができる。さらに、共用予備装置にバッファを設け、フローテーブルのダウンロードと並行して、対象のエントリがダウンロード済みのパケットに対する処理を実行して結果を出力できるようにしたことにより、現用装置から共用予備装置への切替後の処理遅延を緩和することができる。
ところで、実施例3において、共用予備装置60に受信パケットを格納するバッファ61が1つしかない場合、図12に示すように、フローのエントリをダウンロードしてメモリ62に格納する際に、ダウンロードの初期にBフローのエントリを受信し、その後、Aフローのエントリはダウンロードの最後になってからでないと受信できないとすると、Aフローのパケットがバッファ61内に格納されている場合には、ダウンロードが完了してAフローのエントリを受信するまで、Aフローのパケット以降に受信したパケットの処理を行えないことになる。図12は最悪ケースを示したものであり、最初にそのエントリを受信したBフローのパケットについても、Aフローのパケットより後にあるかぎり、ダウンロード完了まで処理を行えないことになる。
そこで図13に示すように、共用予備装置60内に複数のバッファ61を設けるとともに、パケットをこれらのバッファに振り分ける振り分け部64を設ける。フローは、あらかじめ、バッファ61の個数と同じ数に分類されており、振り分け部64は、パケットを受信すると、定められた分類に従ってパケットを各バッファ61に振り分ける。また、同期管理サーバ50からのフローテーブルの送信においても上記の分類にしたがってフローテーブルを分割して送信するものとする。送信されるフローテーブルを分割し、バッファ61も分割することにより、フローテーブルのダウンロードのために共用予備装置60内で処理待ちとなるパケットの数を低減することができる。
あるいは、共用予備装置60内での受信パケットの処理待ちを低減するものとして、図14に示すように、同期管理サーバ50に対して問い合わせを行う問い合わせ部63を共用予備装置60内に設けるようにしてもよい。問い合わせ部63は、バッファ61内にバッファリングされたパケットについて、対応するエントリがまだ共用予備装置60にダウンロードされていない場合に、同期管理サーバ50に対して当該エントリの問い合わせを行うものである。同期管理サーバ50がこの問い合わせに対して当該エントリを共用予備装置60に対して回答する。図示したものでは、Aフローのパケットがバッファ61内に格納されたことに応じ、問い合わせ部63が同期管理サーバ50に問い合わせを行っており、その結果、同期管理サーバ50からはAフローのエントリが回答として共用予備装置60に送られている。バッファリングされたパケットのエントリがダウンロードされていない場合に問い合わせ部63によって同期管理サーバに逐次問い合わせを行うことにより、フローのエントリのダウンロードにより待たされる時間を低減することができる。
共用予備装置60において複数のバッファ61を設ける例として、図15では、フローのQoSクラスごとにバッファ61を設け、パケットを受信したときに、振り分け部64によって、そのパケットのフローのQoSクラスに応じてそのパケットをバッファ61に振り分けるようにしたものが示されている。ここでは、QoSクラスとして、High(保証するサービス品質が相対的に高いクラス)、Middle(保証するサービス品質が中程度のクラス)、Low(保証するサービス品質が相対的に低いクラス)及びBE(ベスト・エフォート;サービス品質の保証を行わないクラス)とが設定されているものとする。
図15に示したものでは、Highクラスのフローを記述したフローテーブルは、同期管理サーバ50を介さずに、各現用装置20から共用予備装置60のメモリ62に転送され、これにより、Highクラスのフローについては、各現用装置20と共用予備装置60との間でリアルタイムで状態同期がなされるようにする。Highクラスに属するフローは、フロー全体の中では少数であると考えられるので、複数の現用装置についてHighクラスのフローのエントリを共用予備装置60のメモリ62に格納しても、共用予備装置60のメモリサイズが不足することはない。そして、いずれかの現用装置において故障が発生し、故障した現用装置の処理を共用予備装置60が引き継いで実行する切替が発生した時は、故障した現用装置のHighクラスのフローのエントリ以外は、メモリ62から削除する。
また、Highクラスより下位のQoSクラス(例えば、Middle、Low及びBEの各クラス)のフローについては、図13あるいは図14に示した場合と同様に、優先度の高い順にフローテーブルのダウンロードを行い、また、優先度の高い順に同期管理サーバ50に対する問い合わせを行うようにする。
この構成では、Highクラスのフローについては各現用装置20と共用予備装置60との間でリアルタイムに状態を同期させているため、同期管理サーバ50からのダウンロードを行うことなく、現用装置から共用予備装置への切替後、直ちに、それらのフローのパケット処理を行うことが可能である。また、Highクラスより低位のクラスのパケットについても、優先度の高い方のクラスのパケットが優先的にダウンロードされて、そのクラスのフローの入力に対して出力を実行可能である。
11,12 パケット転送網
20 現用装置
21 同期情報送信部
22 Ack受信部
23,43 生存確認部
30 対向装置
40 予備装置
41,51 同期情報受信部
42,52 Ack送信部
44 同期情報要求部
45 切替通知部
46 受信パケット保存部
50 同期管理サーバ
53 同期情報保存部
54 同期情報要求応答部
60 共用予備装置
61 バッファ
62 メモリ
63 問い合わせ部
64 振り分け部

Claims (9)

  1. 対向装置からの入力に応じて処理を実行して前記対向装置に出力を返す現用装置と、パケット転送網を介して前記現用装置と接続し、前記現用装置に障害が発生した時に前記現用装置から前記処理を引き続いて実行する予備装置と、を有するシステムにおける装置間同期および切替方法であって、
    前記現用装置が、当該現用装置に直接接続した同期管理サーバに、前記対向装置からの入力に基づいて同期情報を送信する段階と、
    前記同期管理サーバが前記同期情報を保持する段階と、
    前記現用装置の障害を検出した前記予備装置が、当該故障を発生した現用装置の同期情報であって当該予備装置において未受信である同期情報を前記パケット転送網を介して前記同期管理サーバに要求する段階と、
    前記予備装置が、前記同期管理サーバから前記パケット転送網を介して受け取った前記同期情報に基づいて、前記故障を発生した現用装置の処理を引き続いて実行する段階と、
    を有する方法。
  2. 複数の前記現用装置が設けられ、
    前記同期情報は、前記対向装置からの入力パケットのフローごとに処理内容を記述したフローリストであって、前記各現用装置は前記フローリストを保持するとともに前記同期管理サーバとの間でフローリストを同期させる、請求項1に記載の方法。
  3. 前記予備装置はバッファを備え、
    前記予備装置において、前記フローリストの前記同期管理サーバからのダウンロードの完了前にも前記対向装置からの入力パケットを受け付けてバッファに格納し、前記同期管理サーバから受信した前記フローリストに従って前記バッファ内の入力パケットを処理する、請求項2に記載の方法。
  4. 前記予備装置はフローの分類の別に応じた複数のバッファを備え、
    前記予備装置において、前記フローリストの前記同期管理サーバからのダウンロードの完了前にも前記対向装置からの入力パケットを受け付けて前記フローの分類の別に基づいて対応するバッファに格納し、前記同期管理サーバから受信した前記フローリストに従って前記バッファ内の入力パケットを処理する、請求項2に記載の方法。
  5. 前記予備装置は、前記フローリストのうち当該パケットのフローに関するエントリを含む部分の受信が完了していない場合には前記同期管理サーバに前記エントリの送信を要求する、請求項2乃至4のいずれか1項に記載の方法。
  6. 前記現用装置は、高い優先度を有するクラスのフローに関し、前記予備装置との間で前記フローリストを直接同期させる、請求項2乃至5のいずれか1項に記載の方法。
  7. 対向装置からの入力に応じて処理を実行して前記対向装置に出力を返す現用装置と、
    パケット転送網を介して前記現用装置と接続し、前記現用装置に障害が発生した時に前記現用装置から前記処理を引き続いて実行する予備装置と、
    前記現用装置に直接接続するとともに、前記パケット転送網を介して前記予備装置にも接続し、前記対向装置から前記現用装置に入力された情報に基づく同期情報を当該現用装置から受け取って保持し、前記予備装置からの要求に応じて前記同期情報を前記予備装置に送信する同期管理サーバと、
    を備え、
    前記予備装置は、前記現用装置の障害を検出したときに、当該故障を発生した現用装置の同期情報であって当該予備装置において未受信である同期情報を前記パケット転送網を介して前記同期管理サーバに要求し、前記同期管理サーバから前記パケット転送網を介して受け取った前記同期情報に基づいて、前記故障を発生した現用装置の処理を引き続いて実行する、装置間切替システム。
  8. 複数の前記現用装置を備え、
    前記同期情報は、前記対向装置からの入力パケットのフローごとに処理内容を記述したフローリストであって、前記各現用装置は前記フローリストを保持するとともに前記同期管理サーバとの間でフローリストを同期させる、請求項7に記載の装置間切替システム。
  9. 前記予備装置は、前記対向装置からの入力パケットをフローの分類に基づいて格納する複数のバッファを有し、前記同期管理サーバから受信した前記フローリストに従って前記バッファ内の入力パケットを処理する、請求項8に記載の装置間切替システム。
JP2012041508A 2012-02-28 2012-02-28 装置間同期および切替方法、並びに装置間切替システム Pending JP2013179430A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012041508A JP2013179430A (ja) 2012-02-28 2012-02-28 装置間同期および切替方法、並びに装置間切替システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012041508A JP2013179430A (ja) 2012-02-28 2012-02-28 装置間同期および切替方法、並びに装置間切替システム

Publications (1)

Publication Number Publication Date
JP2013179430A true JP2013179430A (ja) 2013-09-09

Family

ID=49270707

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012041508A Pending JP2013179430A (ja) 2012-02-28 2012-02-28 装置間同期および切替方法、並びに装置間切替システム

Country Status (1)

Country Link
JP (1) JP2013179430A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016027447A1 (ja) * 2014-08-19 2016-02-25 日本電気株式会社 通信装置、通信システムおよび通信方法
JP2017143440A (ja) * 2016-02-10 2017-08-17 日本電信電話株式会社 通信装置、通信方法及び通信プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016027447A1 (ja) * 2014-08-19 2016-02-25 日本電気株式会社 通信装置、通信システムおよび通信方法
JPWO2016027447A1 (ja) * 2014-08-19 2017-04-27 日本電気株式会社 通信装置、通信システムおよび通信方法
US10536401B2 (en) 2014-08-19 2020-01-14 Nec Corporation Communication device, communication system and communication method
JP2017143440A (ja) * 2016-02-10 2017-08-17 日本電信電話株式会社 通信装置、通信方法及び通信プログラム

Similar Documents

Publication Publication Date Title
US9659075B2 (en) Providing high availability in an active/active appliance cluster
US9032240B2 (en) Method and system for providing high availability SCTP applications
US7974186B2 (en) Connection recovery device, method and computer-readable medium storing therein processing program
JP5828954B2 (ja) サーバ故障中のパケット処理方法及びルータ
US7940650B1 (en) Peer-agnostic TCP socket replication between primary and secondary routing engines
CN110971698B (zh) 一种数据转发系统、方法及装置
JP3932994B2 (ja) サーバ引継システムおよびその方法
US9934242B2 (en) Replication of data between mirrored data sites
JP5593530B2 (ja) フォールトトレラントなタイムトリガ方式のリアルタイム通信のための方法および装置
KR20070027566A (ko) 인접 캐시 테이블 동기화를 위한 장치 및 방법
US20110196837A1 (en) Enhanced data access for information systems
WO2008014696A1 (fr) Méthode et dispositif pour effectuer un transfert de communications
US9723074B2 (en) Method and apparatus for in the middle primary backup replication
TW201517568A (zh) 伺服器操作系統及其操作方法
JP5785608B2 (ja) 通信ノード装置システム、装置、及び方法
Abouzamazem et al. Efficient inter-cloud replication for high-availability services
JP2007133542A (ja) 情報引継ぎシステム、情報引継ぎ方法、現用系ノード及び待機系ノード
JP6571400B2 (ja) ルータ装置、冗長化方法および冗長化プログラム
CN108270593B (zh) 一种双机热备份方法和系统
JP2013179430A (ja) 装置間同期および切替方法、並びに装置間切替システム
US10841040B2 (en) Acknowledgment and packet retransmission for spliced streams
US10848367B2 (en) Splicing concurrent connections into a high availability session
WO2016177211A1 (zh) 地址解析协议arp表项的同步方法及装置
KR20180099143A (ko) Tcp 세션 복구 장치 및 방법
US10536875B2 (en) System and method for seamless TCP connection handoff