JP2006215635A - 中継プログラム、中継方法および中継装置 - Google Patents

中継プログラム、中継方法および中継装置 Download PDF

Info

Publication number
JP2006215635A
JP2006215635A JP2005025204A JP2005025204A JP2006215635A JP 2006215635 A JP2006215635 A JP 2006215635A JP 2005025204 A JP2005025204 A JP 2005025204A JP 2005025204 A JP2005025204 A JP 2005025204A JP 2006215635 A JP2006215635 A JP 2006215635A
Authority
JP
Japan
Prior art keywords
connection
server
message
relay
client
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.)
Granted
Application number
JP2005025204A
Other languages
English (en)
Other versions
JP4516439B2 (ja
Inventor
Takeshi Yamazaki
毅 山崎
Toshio Ishitobi
登志雄 石飛
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005025204A priority Critical patent/JP4516439B2/ja
Priority to US11/158,687 priority patent/US8326916B2/en
Publication of JP2006215635A publication Critical patent/JP2006215635A/ja
Application granted granted Critical
Publication of JP4516439B2 publication Critical patent/JP4516439B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2871Implementation details of single intermediate entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】クライアント−サーバシステムにおいて現用サーバに障害が発生して待機サーバへ切り替える際に、アプリケーションに依存することなく適切にTCPセションの継続または切断を行うこと。
【解決手段】中継装置100のコネクション制御部150が、ユーザ設定ポリシーテーブル120に記憶されたポリシーに基づいて電文の先頭を含む電文パケット200から電文長231および電文ID232を取り出してコネクション管理テーブル130に記録し、現用サーバに障害が発生すると、中継した電文の長さとコネクション管理テーブル130に記録した電文長231から、一つの電文の中継途中であるか否かを判定し、一つの電文の中継途中である場合にはセション切断処理を行うようにセション切断処理部160に指示し、一つの電文の中継途中でない場合にはセション継続処理を行うようにセション継続処理部170に指示するよう構成する。
【選択図】 図2

Description

この発明は、クライアントとサーバとの間の通信を中継する中継プログラム、中継方法および中継装置に関し、特に、現用サーバに障害が発生して待機サーバへ切り替える障害復旧処理をアプリケーションに依存することなく行うとともに、中継処理負荷を低減することができる中継プログラム、中継方法および中継装置に関するものである。
従来、ネットワークを介してサーバがクライアントにサービスを提供するクライアント−サーバシステムでは、信頼性向上のために、サービスを提供しているサーバである現用サーバと、現用サーバに障害が発生した際に現用サーバの代替機として動作する待機サーバと、サーバとクライアントとの間の通信を中継する中継装置とからサーバシステムを構成してきた。
ここで、中継装置は、現用サーバに障害が発生すると現用サーバから待機サーバに切り替える障害復旧処理を行うことによって、サーバシステム全体としてサービス提供の継続を可能としている(例えば、特許文献1参照。)。
特開2003−256297号公報
しかしながら、かかる中継装置は、アプリケーション層でクライアントとサーバとの間の中継を行うことから、待機サーバへ切り替える際のアプリケーション層でのコネクションの継続可否の判定がアプリケーションに依存し、アプリケーションから独立した汎用的な障害復旧を行うことができない。
したがって、従来の中継装置には、アプリケーションごとに中継装置が行う障害復旧処理を開発する必要があるという問題があった。また、アプリケーション層でクライアントとサーバとの間の中継を行うことから、TCP層での中継に比べて中継処理負荷がかかるという問題もあった。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、現用サーバに障害が発生して待機サーバへ切り替える障害復旧処理をアプリケーションに依存することなく行うとともに、中継処理負荷を低減することができる中継プログラム、中継方法および中継装置を提供することを目的とする。
上述した課題を解決し、目的を達成するため、請求項1の発明に係る中継プログラムは、クライアントとサーバとの間の通信を中継する中継プログラムであって、前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手順と、前記継続可否判定手順によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手順と、をコンピュータに実行させることを特徴とする。
この請求項1の発明によれば、サーバに障害が発生して代替のサーバに切り替える際に、障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定し、アプリケーション層でのコネクションの継続が可能であると判定した場合にはそのコネクションを継続するコネクション継続処理を行い、コネクションの継続が可能でないと判定した場合にはそのコネクションを切断するコネクション切断処理を行うよう構成したので、アプリケーションに依存しない汎用的な障害復旧処理を行うことができる。
また、請求項2の発明に係る中継プログラムは、請求項1の発明において、前記継続可否判定手順は、アプリケーションごとにユーザが継続可否判定に関する情報として指定するポリシーに基づいて、前記コネクションの継続が可能であるか否かをTCP層で判定することを特徴とする。
この請求項2の発明によれば、アプリケーションごとにユーザが継続可否判定に関する情報として指定するポリシーに基づいて、コネクションの継続が可能であるか否かをTCP層で判定するよう構成したので、異なるポリシーを用いることによって異なるアプリケーションのコネクションの継続可否の判定をTCP層で行うことができる。
また、請求項3の発明に係る中継プログラムは、請求項2の発明において、前記ポリシーは、電文の長さを示す電文長と電文を識別する電文識別子とに関する情報であることを特徴とする。
この請求項3の発明によれば、電文の長さを示す電文長と電文を識別する電文識別子とに関する情報をポリシーとするので、TCP層でコネクションの継続可否の判定を行うことができる。
また、請求項4の発明に係る中継方法は、クライアントとサーバとの間の通信を中継する中継方法であって、前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定工程と、前記継続可否判定工程によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理工程と、を含んだことを特徴とする。
この請求項4の発明によれば、サーバに障害が発生して代替のサーバに切り替える際に、障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定し、アプリケーション層でのコネクションの継続が可能であると判定した場合にはそのコネクションを継続するコネクション継続処理を行い、コネクションの継続が可能でないと判定した場合にはそのコネクションを切断するコネクション切断処理を行うよう構成したので、アプリケーションに依存しない汎用的な障害復旧処理を行うことができる。
また、請求項5の発明に係る中継装置は、クライアントとサーバとの間の通信を中継する中継装置であって、前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手段と、前記継続可否判定手段によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手段と、を備えたことを特徴とする。
この請求項5の発明によれば、サーバに障害が発生して代替のサーバに切り替える際に、障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定し、アプリケーション層でのコネクションの継続が可能であると判定した場合にはそのコネクションを継続するコネクション継続処理を行い、コネクションの継続が可能でないと判定した場合にはそのコネクションを切断するコネクション切断処理を行うよう構成したので、アプリケーションに依存しない汎用的な障害復旧処理を行うことができる。
請求項1、4および5の発明によれば、アプリケーションに依存しない汎用的な障害復旧処理を行うので、アプリケーションごとの障害復旧処理の開発を不要とすることができるという効果を奏する。
また、請求項2の発明によれば、異なるポリシーを用いることによって異なるアプリケーションのコネクションの継続可否の判定をTCP層で行うので、アプリケーションごとの障害復旧処理の開発を不要とすることができるという効果を奏する。
また、請求項3の発明によれば、TCP層でコネクションの継続可否の判定を行うので、アプリケーションに依存することなくコネクションの継続可否の判定を行うことができるという効果を奏する。
以下に添付図面を参照して、この発明に係る中継プログラム、中継方法および中継装置の好適な実施例を詳細に説明する。
まず、本実施例に係る中継装置による障害復旧処理の概念について説明する。図1は、本実施例に係る中継装置による障害復旧処理の概念を説明するための説明図である。同図に示すように、このサーバシステムは、現用サーバ「SV#1」と待機サーバ「SV#2」とが「LAN2」を介して中継装置100に接続され、中継装置100が「LAN1」を介してルータに接続されて構成される。また、中継装置100、現用サーバおよび待機サーバは「LAN3」を介して運用管理端末に接続される。
ここで、「LAN1」、「LAN2」および「LAN3」はLAN(ローカルエリアネットワーク)であり、運用管理端末は現用サーバに発生した障害を検知して中継装置100に待機サーバへの切り替え指示を行う装置である。また、ルータはWANを介してクライアントに接続される。
中継装置100は、クライアント(CL)とサーバ(SV)間のパケットをNAT(Network Address Translation)して中継する。このとき、中継装置100は、アプリケーション層での接続であるTCPセションごとにクライアント−サーバ間のパケットを監視し、電文を含むパケットである電文パケットから電文の長さである電文長、電文を識別する電文IDおよびTCPシーケンス番号を取り出して記録する。
そして、現用サーバにソフト/ハード障害が発生した場合に、運用管理端末から待機サーバへの切り替えを指示されると、TCPセションを継続して待機サーバへの切り替えが可能であるか否かを電文長に基づいて判定する。すなわち、電文パケットに含まれる電文長と実際に送受信された電文の長さから、TCPセションを継続して待機サーバへの切り替えが可能であるか否かを判定する。
その結果、TCPセションを継続して待機サーバへの切り替えが可能であると判定した場合には、待機サーバとの間でTCPセションを張り、クライアント−サーバ間のTCPセションを維持するセション継続処理を行う。一方、TCPセションを継続して待機サーバへの切り替えが可能でないと判定した場合には、クライアントにRST(reset)パケットを送信してクライアントからの再接続を促すセション切断処理を行う。
このように、本実施例に係る中継装置100は、クライアント−サーバ間のパケットを監視してTCPセションごとに電文長などを記録し、運用管理端末から待機サーバへの切り替えを指示されると、TCPセションを継続して待機サーバへの切り替えが可能であるか否かを電文長に基づいて判定することによって、アプリケーションに依存することなく適切にTCPセションの継続または切断を行ってサーバ切り替えを行うことができる。
次に、本実施例に係る中継装置100の構成について説明する。図2は、本実施例に係る中継装置100の構成を示す機能ブロック図である。同図に示すように、この中継装置100は、通信部110と、ユーザ設定ポリシーテーブル120と、コネクション管理テーブル130と、要求受付部140と、コネクション制御部150と、セション切断処理部160と、セション継続処理部170と、ポリシー編集部180とを有する。
通信部110は、LANを介してサーバ、クライアント、運用管理端末などと通信する処理部であり、電文パケットなどのパケットの送受信やTCPセション確立要求の受信などを行う。
図3−1および図3−2は、通信部110が送受信する電文パケットのフォーマットを示す図である。図3−1は電文の先頭を含む電文パケットのフォーマットを示し、図3−2は電文の継続部分を含む電文パケットのフォーマットを示す。
図3−1に示すように、電文の先頭を含む電文パケット200は、IPヘッダ210と、TCPヘッダ220と、L7ヘッダ230と、電文とを有する。IPヘッダ210は、IP層でのヘッダであり、TCPヘッダ220は、TCP層でのヘッダである。
L7ヘッダ230は、アプリケーション層でのヘッダであり、電文長231および電文ID232を有する。電文長231は、複数の電文パケット200に分割されて転送されることがある電文の長さを示し、電文ID232は、電文を識別する識別子である。
また、図3−2に示すように、電文の継続部分を含む電文パケット200は、IPヘッダ210と、TCPヘッダ230と、電文とを有する。
ユーザ設定ポリシーテーブル120は、電文の識別やパケットの監視に使用する情報であるポリシーなどユーザが指定する情報を記憶するテーブルであり、インタフェース構成を記憶する構成定義設定テーブル310と、パケットの振り分けに関する情報を記憶する振り分け設定テーブル320と、ポリシーを記憶する電文識別テーブル330から構成される。
図4−1は、構成定義設定テーブル310の一例を示す図である。同図に示すように、この構成定義設定テーブル310は、中継装置100が有するインタフェースとIPアドレス/マスク長とを対応させて記憶する。
図4−2は、振り分け設定テーブル320の一例を示す図である。同図に示すように、この振り分け設定テーブル320には、代表IPアドレス/マスク長、代表ポート番号、電文識別ポリシー名、SV側ゲートウェイアドレス/マスク長、ホスト名、SV IPアドレス、SVポート番号および現用/待機が含まれる。
代表IPアドレス/マスク長は、クライアントがサーバと通信する際に使用するIPアドレスおよびマスク長であり、代表ポート番号は中継装置100が使用するポートの番号である。電文識別ポリシー名は、電文の識別に使用するポリシーの番号であり、SV側ゲートウェイアドレス/マスク長は、サーバとの接続に用いるIPアドレスおよびマスク長である。ホスト名は、現用サーバおよび待機サーバとして使用されるサーバの名前であり、SV IPアドレスは、サーバの実IPアドレスである。SVポート番号は、サーバのアプリケーションが実際に使用するポートの番号であり、現用/待機は、サーバが現用サーバであるか待機サーバであるかを示す情報である。
図4−3は、電文識別テーブル330の一例を示す図である。同図に示すように、この電文識別テーブル330には、電文識別ポリシー名、電文長フィールド種別、電文長先頭識別、電文長末端識別、電文長値フィールド種別、電文IDフィールド種別、電文ID先頭識別、電文ID末端識別、電文IDチェック方法、送達確認、パケットチェック方向、対処およびログ採取レベルが含まれる。
電文長フィールド種別は、電文パケット200に含まれる電文長231のフィールドが固定であるか可変であるかを示す情報である。電文長先頭識別は、電文長231の先頭を識別する仕方を示す情報であり、例えば、「電文offset:1byte」はL7ヘッダ230の先頭から2バイト目が電文長231の先頭であることを示し、「文字列:"Length:"」は「Length:」という文字列に続くバイトが電文長231の先頭であることを示す。
電文長末端識別は、電文長231の末端を識別する仕方を示す情報であり、例えば、「電文offset:5byte」はL7ヘッダ230の先頭から5バイト目が電文長231の末端であることを示し、「文字列:"\r\n"」は「\r\n」という文字列の前が電文長231の末端であることを示す。
電文長値フィールド種別は、電文長231のデータ型を示す情報であり、例えば、「unsigned int」は符号無し整数型であることを示し、「文字列」は文字列型であることを示す。
電文IDフィールド種別は、電文パケット200に含まれる電文ID232のフィールドが固定であるか可変であるかを示す情報である。電文ID先頭識別は、電文ID232の先頭を識別する仕方を示す情報であり、例えば、「電文offset:6byte」はL7ヘッダ230の先頭から6バイト目が電文ID232の先頭であることを示し、「文字列:"ID:"」は「ID:」という文字列に続くバイトが電文ID232の先頭であることを示す。
電文ID末端識別は、電文ID232の末端を識別する仕方を示す情報であり、例えば、「電文offset:7byte」はL7ヘッダ230の先頭から7バイト目が電文ID232の末端であることを示し、「文字列:"\r\n"」は「\r\n」という文字列の前が電文ID232の末端であることを示す。
電文IDチェック方法は、電文パケットが正しい順番で送られてきたか否かをチェックする方法を示す情報であり、例えば、「正規表現文字列"xml.+"に一致」は電文ID232がXMLの正規表現文字列の形式であることを示す。
送達確認は、パケットの受信確認行うか否かを示す情報であり、例えば、「する」は送達確認としてackを返すことを示す。パケットチェック方向は、サーバとクライアント間で送受信されるパケットのうちどちらの方向のパケットをチェックするかを示す情報であり、例えば、「両方向」はクライアントからサーバに送られるパケットおよびサーバからクライアントに送られるパケットの両方をチェックすることを示す。
対処は、受信した電文パケット200に異常があった場合の処置を示す情報であり、例えば、「通過」は、異常を見つけた場合でも電文パケットをそのまま中継することを示す。ログ採取レベルは、ログを採取するレベルを示す情報であり、例えば、「詳細」は詳細なログを採取することを示す。
この電文識別テーブル330に電文パケット200の中から電文長231や電文ID232を取り出すために必要な情報や電文ID232のチェックに必要な情報などをアプリケーションごとにポリシーとして記憶することによって、中継装置100は、異なるアプリケーションに対してTCPセションの継続可否を適切に判断することができる。
図2に戻って、コネクション管理テーブル130は、TCPセションが確立されているクライアント−サーバ間のコネクションに関する情報をTCPセションごとに記憶するテーブルである。
図5は、コネクション管理テーブル130の一例を示す図である。同図に示すように、このコネクション管理テーブル130は、クライアント側(CL側)に関する情報とサーバ側(SV側)に関する情報とを対応させてTCPセションごとに記憶する。
具体的には、クライアント側に関する情報として、IPアドレス、ポート番号、代表IPアドレス、代表ポート番号、シーケンス番号、送信/受信済電文長、電文長231および電文ID232を記憶し、サーバに関する情報としてIPアドレス、ポート番号、シーケンス番号offset、送信/受信済電文長、電文長231および電文ID232を記憶する。
ここで、シーケンス番号は、パケットに付加される一連番号であり、送信/受信済電文長は、電文のうち送受信が済んだ電文の長さである。この送信/受信済電文長と先頭の電文パケット230で指定された電文長231とを比較することによって、中継装置100は、各TCPセションで電文が送受信中であるか否かを判定することができる。
シーケンス番号offsetは、現用サーバに障害が発生して待機サーバへの切り換えが行われた際に、待機サーバが送信するパケットのシーケンス番号から現用サーバが送信したパケットのシーケンス番号を引いた差である。現用サーバに障害が発生して待機サーバへの切り替えが行われた場合に、クライアントが受信するパケットはシーケンス番号が連続している必要がある。そこで、中継装置100は、TCPセションごとにシーケンス番号offsetを記憶し、待機サーバが送信するパケットのシーケンス番号にこのシーケンス番号offsetを加えた値をシーケンス番号としてクライアントに送信する。
図2に戻って、要求受付部140は、クライアントからTCPセション確立要求を受け取り、クライアントと中継装置100との間および中継装置100とサーバとの間でTCPセションを確立する処理部である。また、この要求受付部140は、確立したTCPセションについて、クライアントおよびサーバのIPアドレス、ポート番号、シーケンス番号などの情報をコネクション管理テーブル130に登録する。
コネクション制御部150は、通信部110を介してクライアントおよびサーバからパケットを受け取って中継を行う処理部である。また、このコネクション制御部150は、電文パケット200を受信すると、電文パケット200が電文の先頭を含む場合には、電文パケット200から電文長231および電文ID232を電文識別テーブル330に記憶されたポリシーに基づいて取り出してコネクション管理テーブル130に格納する。
また、このコネクション制御部150は、電文パケット200を受信すると、その電文パケット200に含まれる電文の長さを用いてコネクション管理テーブル130の送信/受信済電文長を更新する。
そして、このコネクション制御部150は、現用サーバに障害が発生すると、運用管理端末から通信部110を介して待機サーバへの切り替え通知を受信し、確立中の各TCPセションについて、一つの電文の中継途中であるか否かを判定し、一つの電文の中継途中であるTCPセションについてはセション切断処理部160に対してセション切断処理の実行を指示し、一つの電文の中継途中でないTCPセションについてはセション継続処理部170に対してセション継続処理の実行を指示する。
ここで、このコネクション制御部150は、一つの電文の中継途中であるか否かの判定を、コネクション管理テーブル130に格納した送信/受信済電文長と電文長231を比較することによって行う。
このコネクション制御部150が待機サーバへの切り替え通知を運用管理端末から受信した際に、確立中の各TCPセションについて電文長231を用いて一つの電文の中継途中であるか否かを判定し、一つの電文の中継途中であるTCPセションについてはセション切断処理を指示し、一つの電文の中継途中でないTCPセションについてはセション継続処理を指示することによって、様々なアプリケーションに対してTCPセションの継続または切断を適切に行うことができる。
セション切断処理部160は、現用サーバに障害が発生して待機サーバへ切り替える際にコネクション制御部150の指示に基づいてセション切断処理を行う処理部であり、具体的には、現用サーバおよびクライアントにRSTパケットを送信してTCPセションを切断する。
セション継続処理部170は、現用サーバに障害が発生して待機サーバへ切り替える際にコネクション制御部150の指示に基づいてセション継続処理を行う処理部であり、具体的には、現用サーバにRSTパケットを送信し、待機サーバとの間でTCPセションを確立する。
ポリシー編集部180は、ユーザの指示に基づいてユーザ設定ポリシーテーブル120を編集する処理部である。ユーザは、このポリシー編集部180に対してアプリケーションごとに電文識別テーブル330に記憶するポリシーなどを指定することによって、様々なアプリケーションに対して中継装置100を対応させることができる。
次に、本実施例に係る中継装置100による中継処理の処理手順について説明する。図6は、本実施例に係る中継装置100による中継処理の処理手順を示すフローチャートである。なお、ここでは、クライアントからサーバに要求電文を送る場合について説明する。
同図に示すように、この中継装置100は、クライアント(CL)からサーバ(SV)へのTCPセション確立要求を受け付けると(ステップS101)、要求受付部140が、クライアントおよびサーバのIPアドレス、ポート番号、シーケンス番号などをコネクション管理テーブル130に記録し(ステップS102)、クライアントとの間および現用サーバとの間でそれぞれTCPセションを確立する(ステップS103)。
そして、コネクション制御部150が、現用サーバから待機サーバへの切り替えを指示するSV現待切り替え通知または要求電文の電文パケット200を待ち、この時点でSV現待切り替え通知を運用管理端末から受信すると(ステップS104、SV現待切り替え通知)、一つの電文の中継途中ではないと判断し、セション継続処理部170に指示してセション継続処理を行う。
具体的には、セション継続処理部170は、故障した現用サーバへRSTパケットを送付し(ステップS105)、待機サーバとの間でTCPセションを確立する(ステップS106)。また、待機サーバから送られてくるシーケンス番号からシーケンス番号のオフセット値を算出してシーケンス番号offsetとしてコネクション管理テーブル130に記録する(ステップS107)。このシーケンス番号offsetは、これ以降クライアントに転送されるパケットのシーケンス番号に反映される。
一方、コネクション制御部150は、クライアントから要求電文の電文パケット200を受信すると(ステップS104、要求電文受信)、電文ID232が正しいか否かを電文識別テーブル330に記憶された電文IDチェック方法を用いて判定し(ステップS108)、電文ID232が正しい場合には、電文長231および電文ID232をコネクション管理テーブル130に記録し、シーケンス番号の記録更新を行って現用サーバへ電文パケット200を転送する(ステップS109)。
そして、クライアントからのパケットまたは運用管理端末からのSV現待切り替え通知を待ち、パケットを受信すると(ステップS110、パケット受信)、シーケンス番号の記録更新を行い(ステップS111)、電文パケット200であるか否かを判定する(ステップS112)。
その結果、電文パケット200である場合には、現用サーバへパケットを転送し(ステップS113)、中継した電文の長さを算出してコネクション管理テーブル130の送信/受信済電文長を更新する。そして、コネクション管理テーブル13に記録された電文長231に送信/受信済電文長が達したか否かを判定し(ステップS114)、電文長231に達しない場合にはステップS110に戻って次の電文パケット200を待ち、電文長231に達した場合には、一つの要求電文の中継が完了したのでステップS104に戻る。
一方、電文パケット200でない場合には、FINパケットか否かを判定し(ステップS115)、FINパケットであれば現用サーバへ転送し、現用サーバからのFIN/ACKパケットを待ってクライアントに転送する(ステップS116)。そして、このTCPセションで使用したメモリ領域を開放してTCPセションを完了する(ステップS117)。
また、FINパケットでなければ、RSTパケットであるか否かを判定し(ステップS118)、RSTパケットであれば現用サーバへRSTパケットを発行し(ステップS119)、このTCPセションで使用したメモリ領域を開放してTCPセションを切断する(ステップS117)。
また、RSTパケットでなければ異常パケットなので、セション切断処理部160に指示してセション切断処理を行う。すなわち、セション切断処理部160は、クライアントと現用サーバにRSTパケットを発行し(ステップS120、ステップS119)、このTCPセションで使用したメモリ領域を開放してTCPセションを切断する(ステップS117)。
また、ステップS110においてSV現待切り替え通知を受信すると、この時点では、コネクション制御部150は、一つの電文の中継途中であると判断し、セション切断処理部160に指示してセション切断処理を行う。
また、ステップS108の判定で電文ID232が正しくない場合にも、異常パケットなので、セション切断処理部160に指示してセション切断処理を行う。
このように、コネクション制御部150が、SV現待切り替え通知を受信した時点で一つの電文の中継途中であるか否かを判定し、一つの電文の中継途中でない場合にはセション継続処理部170に指示してセション継続処理を行い、一つの電文の中継途中である場合にはセション切断処理部160に指示してセション切断処理を行うので、TCPセションの継続または切断を適切に行って待機サーバへ切り替えることができる。
なお、ここでは、クライアントから要求電文を受信する場合の処理について説明したが、サーバからの応答電文については、ステップS104でサーバからの応答電文を受信し、ステップS108〜ステップS120の処理でクライアントと現用サーバを入れ替えた処理を行う。
次に、正常時およびサーバ異常発生時のクライアント−サーバ(CL−SV)間通信処理シーケンスについて図7〜図9を用いて説明する。図7は、CL−SV間通信処理シーケンス(正常時)を示すシーケンス図である。
同図に示すように、まず、クライアントがTCPセションの確立を要求する(ステップS201)。具体的には、クライアントがシーケンス番号「2000」のsynパケットを現用サーバ「SV#1]に送信し、現用サーバがシーケンス番号「8000」のsynパケットと確認応答番号「2001」のackパケットをクライアントに送信すると、クライアントが確認応答番号「8001」のackパケットを現用サーバに送信してTCPセションが確立される。このとき、中継装置100は、クライアントおよび現用サーバが送信するパケットのシーケンス番号を記録する。
そして、クライアントが電文「要求電文1」をサーバに送信する(ステップS202)。具体的には、クライアントがシーケンス番号「2001」で長さが53バイトのdataパケットとシーケンス番号「2054」で長さが18バイトのdataパケットをサーバに送信し、それぞれに対してサーバが確認応答番号が「2054」および「2072」のackパケットをクライアントに応答する。ここで、dataパケットは電文パケット200であり、この「要求電文1」は二つの電文パケット200から構成される。
なお、中継装置100は、最初の電文パケット200を中継するときに、電文長231および電文ID232をコネクション管理テーブル130に記録するとともに、電文ID232のチェックを行う。また、中継装置100は、2番目の電文パケット200を中継するときに電文長232をチェックすることによって、「要求電文1」の中継が完了したことを認識する。
そして、サーバが電文「応答電文1」をクライアントに送信する(ステップS203)。具体的には、サーバは四つのdataパケットを用いて「応答電文1」を送信する。中継装置100は、4番目の電文パケット200を中継するときに「応答電文1」の電文長232をチェックすることによって、「応答電文1」の中継が完了したことを認識する。
以下同様に、クライアントからの要求電文の送信とサーバからの応答電文の送信が繰り返される。そして、最後にFINパケットがクライアントからサーバに送信され、ackパケットをサーバが応答するとTCPセションが終了する。
図8は、CL−SV間通信処理シーケンス(セション継続可能時)を示すシーケンス図である。なお、ここでは、セションの確立が行われた後のシーケンスを示す。同図に示すように、クライアントが電文「要求電文1」をサーバに送信し(ステップS301)、サーバが電文「応答電文1」をクライアントに送信する(ステップS302)。
そして、クライアントから次の「要求電文2」が送信される前に、現用サーバが故障すると、中継装置100は、「応答電文1」と「要求電文2」の間での待機サーバへの切り替えであるので、TCPセションの継続が可能であると判定し、セション継続処理を行う。
すなわち、中継装置100は、現用サーバにRSTパケット(rst:2072)を送信し、待機サーバとの間でTCPセションを確立する(ステップS303)。このとき、中継装置100は、クライアントから現用サーバへの確認応答番号「9945」から待機サーバへの確認応答番号「5026」を引いてシーケンス番号のオフセット値を算出し、コネクション管理テーブル130にシーケンス番号offsetとして記録する。
そして、中継装置100は、待機サーバからクライアントに送信されるパケットに対しては、このシーケンス番号のオフセット値をシーケンス番号に加算してクライアントに送信し、クライアントから待機サーバに送信される応答パケットに対しては、このシーケンス番号のオフセット値をシーケンス番号から引いて待機サーバに送信する。
このように、中継した電文の長さに基づいて中継装置100が要求電文と応答電文との間での待機サーバへの切り替えであると判定することによって、TCPセションの継続が可能であるとの判定をアプリケーションに依存することなく適切に行うことができる。
また、中継装置100が待機サーバとの間でTCPセションを確立した際にシーケンス番号のオフセット値を算出し、待機サーバからクライアントに送信される電文に関して中継するパケットについては、オフセット値を用いてシーケンス番号を補正することによって、クライアントは、待機サーバへの切り替え後も連続したシーケンス番号を有する応答電文を受信することができる。
図9は、CL−SV間通信処理シーケンス(セション継続不可時)を示すシーケンス図である。なお、ここでも、図8と同様に、セションの確立が行われた後のシーケンスを示す。図9に示すように、クライアントが電文「要求電文1」をサーバに送信し(ステップS401)、サーバが電文「応答電文1」をクライアントに送信する(ステップS402)。
ただし、ここでは、中継装置100が4番目のdataパケットを中継する前に現用サーバが故障する。すると、中継装置100は、中継した電文の長さから「応答電文1」の中継途中での待機サーバへの切り替えであると判定し、セション切断処理を行う(ステップS403)。
すなわち、中継装置100は、現用サーバとクライアントにRSTパケットを送信してTCPセションを切断する。その後、クライアントがサーバに対して新たなTCPセションの確立を要求すると、中継装置100は、待機サーバとの間でTCPセションの確立を行う(ステップS404)。そして、TCPセションが確立すると、クライアントは、次の電文「要求電文2」をサーバに送信する(ステップS405)。
このように、中継した電文の長さから中継装置100が応答電文の中継途中での待機サーバへの切り替えであると判定することによって、TCPセションの継続が不可能であるとの判定をアプリケーションに依存することなく適切に行うことができる。
上述してきたように、本実施例では、中継装置100のコネクション制御部150が、ユーザ設定ポリシーテーブル120に記憶されたポリシーに基づいて電文の先頭を含む電文パケット200から電文長231および電文ID232を取り出してコネクション管理テーブル130に記録し、現用サーバに障害が発生すると、中継した電文の長さとコネクション管理テーブル130に記録した電文長231から、一つの電文の中継途中であるか否かを判定し、一つの電文の中継途中である場合にはセション切断処理を行うようにセション切断処理部160に指示し、一つの電文の中継途中でない場合にはセション継続処理を行うようにセション継続処理部170に指示することとしたので、TCPセションの継続または切断をアプリケーションに依存することなく適切に行って待機サーバへの切り替えを行うことができる。
また、本実施例では、コネクション制御部150が、コネクション管理テーブル130に記録した電文ID232に基づいて、中継するパケットが異常パケットであるか否かを判定し、異常パケットである場合にはセション切断処理を行うようにセション切断処理部160に指示することとしたので、アプリケーションに依存することなくTCP層レベルでクライアント−サーバ間の通信の異常を検知し、適切な障害復旧処理を行うことができる。
また、本実施例では、アプリケーション層レベルの代わりにTCP層レベルでクライアントとサーバとの間の通信を中継することとしたので、アプリケーション層レベルでの中継と比較して中継処理負荷を低減することができる。
なお、本実施例では、中継装置100について説明したが、この中継装置100が有する構成をソフトウェアによって実現することで、同様の機能を有する中継プログラムを得ることができる。そこで、この中継プログラムを実行するコンピュータについて説明する。
図10は、本実施例に係る中継プログラムを実行するコンピュータの構成を示す機能ブロック図である。同図に示すように、このコンピュータ500は、HDD510と、RAM520と、CPU530と、DVDドライブ540と、LANインタフェース550〜570とを有する。
HDD510は、中継プログラム511などを記憶するディスク装置であり、RAM520は、HDD510からCPU530によって読み出された中継プログラム511やその実行途中結果などを記憶するメモリである。
CPU530は、HDD510からRAM520にプログラムを読み出して実行する中央処理装置であり、DVDドライブ540は、DVDの読み書きを行う装置である。LANインタフェース550〜570は、コンピュータ500をそれぞれ「LAN1」、「LAN2」および「LAN3」に接続するためのインタフェースである。
そして、このコンピュータ500において実行される中継プログラム511は、DVDに記憶され、DVDドライブ540によってDVDから読み出されてコンピュータ500にインストールされる。
あるいは、この中継プログラム511は、LANインタフェース550〜570を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ500にインストールされる。
そして、インストールされた中継プログラム511は、HDD510に記憶され、RAM520に読み出されてCPU530によって中継プロセス531として実行される。
また、本実施例では、サーバが故障した場合について説明したが、本発明はこれに限定されるものではなく、現用中継装置が故障して待機中継装置に切り替える場合にも同様に適用することができる。
すなわち、現用中継装置が故障した場合には、待機中継装置が各TCPセションについて一つの電文の中継途中であるか否かを判定し、一つの電文の中継途中である場合には、そのTCPセションに対してセション切断処理を行い、一つの電文の中継途中でない場合には、そのTCPセションに対してセション継続処理を行う。
(付記1)クライアントとサーバとの間の通信を中継する中継プログラムであって、
前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手順と、
前記継続可否判定手順によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手順と、
をコンピュータに実行させることを特徴とする中継プログラム。
(付記2)前記継続可否判定手順は、アプリケーションごとにユーザが継続可否判定に関する情報として指定するポリシーに基づいて、前記コネクションの継続が可能であるか否かをTCP層で判定することを特徴とする付記1に記載の中継プログラム。
(付記3)前記ポリシーは、電文の長さを示す電文長と電文を識別する電文識別子とに関する情報であることを特徴とする付記2に記載の中継プログラム。
(付記4)前記継続可否判定手順は、一つの電文の中継途中で障害が発生したか否かを電文長を用いて判定し、一つの電文の中継途中で障害が発生した場合にはアプリケーション層でのコネクションの継続が可能でないと判定し、ある電文の中継と次の電文の中継の間で障害が発生した場合にはアプリケーション層でのコネクションの継続が可能であると判定することを特徴とする付記3に記載の中継プログラム。
(付記5)前記ポリシーを編集するポリシー編集手順をさらにコンピュータに実行させることを特徴とする付記2、3または4に記載の中継プログラム。
(付記6)前記障害処理手順が行うコネクション継続処理には、サーバから送信されるパケットのシーケンス番号が障害前後で連続することを保証する処理が含まれることを特徴とする付記1〜5のいずれか一つに記載の中継プログラム。
(付記7)クライアントとサーバとの間の通信を中継する中継プログラムを実行する現用中継コンピュータに障害が発生した場合に代替コンピュータとして動作する待機中継コンピュータで実行され、クライアントとサーバとの間の通信を中継する中継プログラムであって、
前記現用中継コンピュータに障害が発生した際に、サーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手順と、
前記継続可否判定手順によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手順と、
を待機中継コンピュータに実行させることを特徴とする中継プログラム。
(付記8)クライアントとサーバとの間の通信を中継する中継プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手順と、
前記継続可否判定手順によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手順と、
をコンピュータに実行させる中継プログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
(付記9)クライアントとサーバとの間の通信を中継する中継方法であって、
前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定工程と、
前記継続可否判定工程によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理工程と、
を含んだことを特徴とする中継方法。
(付記10)クライアントとサーバとの間の通信を中継する中継装置であって、
前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手段と、
前記継続可否判定手段によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手段と、
を備えたことを特徴とする中継装置。
以上のように、本発明に係る中継プログラム、中継方法および中継装置は、クライアントにサービスを提供するサーバシステムに有用であり、特に、信頼性の高いサーバシステムを構築する場合に適している。
本実施例に係る中継装置による障害復旧処理の概念を説明するための説明図である。 本実施例に係る中継装置の構成を示す機能ブロック図である。 電文パケット(先頭)のフォーマットを示す図である。 電文パケット(2番目以降)のフォーマットを示す図である。 構成定義設定テーブルの一例を示す図である。 振り分け設定テーブルの一例を示す図である。 電文識別テーブルの一例を示す図である。 コネクション管理テーブルの一例を示す図である。 本実施例に係る中継装置による中継処理の処理手順を示すフローチャートである。 CL−SV間通信処理シーケンス(正常時)を示すシーケンス図である。 CL−SV間通信処理シーケンス(セション継続可能時)を示すシーケンス図である。 CL−SV間通信処理シーケンス(セション継続不可時)を示すシーケンス図である。 本実施例に係る中継プログラムを実行するコンピュータの構成を示す機能ブロック図である。
符号の説明
100 中継装置
110 通信部
120 ユーザ設定ポリシーテーブル
130 コネクション管理テーブル
140 要求受付部
150 コネクション制御部
160 セション切断処理部
170 セション継続処理部
180 ポリシー編集部
200 電文パケット
210 IPヘッダ
220 TCPヘッダ
230 L7ヘッダ
231 電文長
232 電文ID
310 構成定義設定テーブル
320 振り分け設定テーブル
330 電文識別テーブル
500 コンピュータ
510 HDD
511 中継プログラム
520 RAM
530 CPU
531 中継プロセス
540 DVDドライブ
550,560,570 LANインタフェース

Claims (5)

  1. クライアントとサーバとの間の通信を中継する中継プログラムであって、
    前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手順と、
    前記継続可否判定手順によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手順と、
    をコンピュータに実行させることを特徴とする中継プログラム。
  2. 前記継続可否判定手順は、アプリケーションごとにユーザが継続可否判定に関する情報として指定するポリシーに基づいて、前記コネクションの継続が可能であるか否かをTCP層で判定することを特徴とする請求項1に記載の中継プログラム。
  3. 前記ポリシーは、電文の長さを示す電文長と電文を識別する電文識別子とに関する情報であることを特徴とする請求項2に記載の中継プログラム。
  4. クライアントとサーバとの間の通信を中継する中継方法であって、
    前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定工程と、
    前記継続可否判定工程によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理工程と、
    を含んだことを特徴とする中継方法。
  5. クライアントとサーバとの間の通信を中継する中継装置であって、
    前記サーバに障害が発生して代替のサーバに切り替える際に、該障害が発生したサーバとクライアントとの間で確立されているアプリケーション層でのコネクションの継続が可能であるか否かをアプリケーションに依存することなく判定する継続可否判定手段と、
    前記継続可否判定手段によりアプリケーション層でのコネクションの継続が可能であると判定された場合には該コネクションを継続するコネクション継続処理を行い、前記継続可否判定手順によりコネクションの継続が可能でないと判定された場合には該コネクションを切断するコネクション切断処理を行う障害処理手段と、
    を備えたことを特徴とする中継装置。
JP2005025204A 2005-02-01 2005-02-01 中継プログラム、中継方法および中継装置 Expired - Fee Related JP4516439B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005025204A JP4516439B2 (ja) 2005-02-01 2005-02-01 中継プログラム、中継方法および中継装置
US11/158,687 US8326916B2 (en) 2005-02-01 2005-06-22 Relay method, relay apparatus, and computer product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005025204A JP4516439B2 (ja) 2005-02-01 2005-02-01 中継プログラム、中継方法および中継装置

Publications (2)

Publication Number Publication Date
JP2006215635A true JP2006215635A (ja) 2006-08-17
JP4516439B2 JP4516439B2 (ja) 2010-08-04

Family

ID=36757981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005025204A Expired - Fee Related JP4516439B2 (ja) 2005-02-01 2005-02-01 中継プログラム、中継方法および中継装置

Country Status (2)

Country Link
US (1) US8326916B2 (ja)
JP (1) JP4516439B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009017344A (ja) * 2007-07-06 2009-01-22 Nippon Telegr & Teleph Corp <Ntt> Tcpセッション切替装置および方法、プログラムおよび記録媒体
WO2009093378A1 (ja) * 2008-01-21 2009-07-30 Nec Corporation 通信装置及び通信装置の冗長化方法
WO2010090325A1 (ja) * 2009-02-09 2010-08-12 日本電気株式会社 通信システム、通信装置、制御装置、制御方法及びプログラム
JP2011053918A (ja) * 2009-09-02 2011-03-17 Alaxala Networks Corp ネットワークシステム、ネットワーク中継装置、それらの制御方法
JP2011518486A (ja) * 2008-04-02 2011-06-23 インターナショナル・ビジネス・マシーンズ・コーポレーション サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法
JP2012185830A (ja) * 2012-04-10 2012-09-27 Seiko Epson Corp アプリケーション実行装置およびアプリケーション実行システム
JP2012205185A (ja) * 2011-03-28 2012-10-22 Fujitsu Ltd 通信二重化装置及び通信二重化方法
JP2017049819A (ja) * 2015-09-02 2017-03-09 富士通株式会社 セッション制御方法およびセッション制御プログラム
JP2017098606A (ja) * 2015-11-18 2017-06-01 富士通株式会社 ネットワーク制御装置、クラスタシステムおよび制御プログラム
US10397029B2 (en) 2015-07-08 2019-08-27 Toshiba Memory Corporation Relay apparatus

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101207631A (zh) * 2006-12-20 2008-06-25 华为技术有限公司 一种控制传输层连接的方法和通信装置
US8213315B2 (en) * 2009-11-19 2012-07-03 Mellanox Technologies Ltd. Dynamically-connected transport service
EP2548388A4 (en) * 2010-03-15 2017-08-02 Tekelec, Inc. Methods, systems, and computer readable media for communicating policy information between a policy charging and rules function and a service node
US9319318B2 (en) 2010-03-15 2016-04-19 Tekelec, Inc. Methods, systems, and computer readable media for performing PCRF-based user information pass through
US11025752B1 (en) * 2015-07-20 2021-06-01 Chelsio Communications, Inc. Method to integrate co-processors with a protocol processing pipeline
CN111371680B (zh) * 2020-03-04 2022-04-29 深信服科技股份有限公司 双机热备的路由管理方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002261792A (ja) * 2000-12-28 2002-09-13 Nec Corp 通信システムとそのパケット交換方法、及び交換プログラムを記録した記録媒体
JP2003228527A (ja) * 2002-02-01 2003-08-15 Oki Electric Ind Co Ltd 冗長機能付きサーバシステムおよびそのサーバシステムの運用制御方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH088572B2 (ja) * 1987-03-09 1996-01-29 株式会社日立製作所 通信システムにおけるノード装置
CA1309519C (en) * 1987-03-17 1992-10-27 Antonio Cantoni Transfer of messages in a multiplexed system
US6182139B1 (en) * 1996-08-05 2001-01-30 Resonate Inc. Client-side resource-based load-balancing with delayed-resource-binding using TCP state migration to WWW server farm
US6854072B1 (en) * 2000-10-17 2005-02-08 Continuous Computing Corporation High availability file server for providing transparent access to all data before and after component failover
US7657628B1 (en) * 2000-11-28 2010-02-02 Verizon Business Global Llc External processor for a distributed network access system
US7519048B2 (en) 2000-12-28 2009-04-14 Nec Corporation Communication system and packet switching method thereof
US7082464B2 (en) * 2001-07-06 2006-07-25 Juniper Networks, Inc. Network management system
JP2003256297A (ja) 2002-03-05 2003-09-10 Nippon Yunishisu Kk アプリケーションゲートウエイ構成方法およびシステム
US7216164B1 (en) * 2002-10-09 2007-05-08 Cisco Technology, Inc. Methods and apparatus for determining the performance of a server
JP4167089B2 (ja) 2003-01-17 2008-10-15 日本電信電話株式会社 サーバシステム及びクライアントサーバ型システムにおける誤り隠蔽方法
US8244853B1 (en) * 2003-03-03 2012-08-14 Vmware, Inc. Method and system for non intrusive application interaction and dependency mapping
WO2005026912A2 (en) * 2003-09-10 2005-03-24 Hyperdata Technologies, Inc. Internet protocol optimizer
JP4462024B2 (ja) * 2004-12-09 2010-05-12 株式会社日立製作所 ディスク引き継ぎによるフェイルオーバ方法
US7653722B1 (en) * 2005-12-05 2010-01-26 Netapp, Inc. Server monitoring framework

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002261792A (ja) * 2000-12-28 2002-09-13 Nec Corp 通信システムとそのパケット交換方法、及び交換プログラムを記録した記録媒体
JP2003228527A (ja) * 2002-02-01 2003-08-15 Oki Electric Ind Co Ltd 冗長機能付きサーバシステムおよびそのサーバシステムの運用制御方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009017344A (ja) * 2007-07-06 2009-01-22 Nippon Telegr & Teleph Corp <Ntt> Tcpセッション切替装置および方法、プログラムおよび記録媒体
JP4550867B2 (ja) * 2007-07-06 2010-09-22 日本電信電話株式会社 Tcpセッション切替装置および方法、プログラムおよび記録媒体
WO2009093378A1 (ja) * 2008-01-21 2009-07-30 Nec Corporation 通信装置及び通信装置の冗長化方法
JP2011518486A (ja) * 2008-04-02 2011-06-23 インターナショナル・ビジネス・マシーンズ・コーポレーション サーバ故障時におけるクライアント・アプリケーションのより速い回復を可能にするための方法
JP5630269B2 (ja) * 2009-02-09 2014-11-26 日本電気株式会社 通信システム、通信装置、制御装置、制御方法及びプログラム
US8713353B2 (en) 2009-02-09 2014-04-29 Nec Corporation Communication system including a switching section for switching a network route, controlling method and storage medium
WO2010090325A1 (ja) * 2009-02-09 2010-08-12 日本電気株式会社 通信システム、通信装置、制御装置、制御方法及びプログラム
JP2011053918A (ja) * 2009-09-02 2011-03-17 Alaxala Networks Corp ネットワークシステム、ネットワーク中継装置、それらの制御方法
JP2012205185A (ja) * 2011-03-28 2012-10-22 Fujitsu Ltd 通信二重化装置及び通信二重化方法
JP2012185830A (ja) * 2012-04-10 2012-09-27 Seiko Epson Corp アプリケーション実行装置およびアプリケーション実行システム
US10397029B2 (en) 2015-07-08 2019-08-27 Toshiba Memory Corporation Relay apparatus
JP2017049819A (ja) * 2015-09-02 2017-03-09 富士通株式会社 セッション制御方法およびセッション制御プログラム
JP2017098606A (ja) * 2015-11-18 2017-06-01 富士通株式会社 ネットワーク制御装置、クラスタシステムおよび制御プログラム
US10122635B2 (en) 2015-11-18 2018-11-06 Fujitsu Limited Network controller, cluster system, and non-transitory computer-readable recording medium having stored therein control program

Also Published As

Publication number Publication date
JP4516439B2 (ja) 2010-08-04
US8326916B2 (en) 2012-12-04
US20060174012A1 (en) 2006-08-03

Similar Documents

Publication Publication Date Title
JP4516439B2 (ja) 中継プログラム、中継方法および中継装置
CN112866004B (zh) 控制面设备的切换方法、装置及转控分离系统
KR101706439B1 (ko) 리던던트 네트워크 접속
US9124517B2 (en) Network system and network redundancy method
US20010056503A1 (en) Network interface device having primary and backup interfaces for automatic dial backup upon loss of a primary connection and method of using same
JP2006013827A (ja) パケット転送装置
KR20140072343A (ko) Sdn 망의 장애 대처 방법
CN110891018B (zh) 网络流量恢复方法、装置、sdn控制器及存储介质
US20080170494A1 (en) Communication control apparatus, method and program thereof
US20230111966A1 (en) Ethernet storage system, and information notification method and related apparatus thereof
CN102404155A (zh) 一种诊断网络故障的方法及装置
WO2011157146A2 (zh) 通信设备间的主备倒换方法、通信设备和系统及服务请求设备
CN111049668A (zh) 一种三网冗余高可用网络系统
WO2012079405A2 (zh) 链路的跟踪处理方法及系统
CN115333994B (zh) 实现vpn路由快速收敛的方法、装置以及电子设备
EP1575236B1 (en) Connectivity confirmation method for network storage device and host computer
EP2981025A1 (en) Method, network and system for protection switching
JP4498406B2 (ja) ネットワーク仮想化システム、中継装置、およびプログラム
JP4133738B2 (ja) 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム
KR20150050447A (ko) Bgp 라우팅에 대한 장애 처리 방법
JP6718739B2 (ja) 通信装置および通信方法
JP2012191329A (ja) 冗長ネットワークシステム、終端装置及び中継点隣接装置
US7623464B2 (en) Rapid protocol failure detection
WO2018223991A1 (zh) 一种切换主宽带网络网关bng和备bng的方法、系统和bng
CN115529220B (zh) 通信网关容灾系统及方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100405

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100511

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100514

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130521

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130521

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees