JP2014510324A - 仮想アプリケーションデリバリシャーシシステム - Google Patents

仮想アプリケーションデリバリシャーシシステム Download PDF

Info

Publication number
JP2014510324A
JP2014510324A JP2013548629A JP2013548629A JP2014510324A JP 2014510324 A JP2014510324 A JP 2014510324A JP 2013548629 A JP2013548629 A JP 2013548629A JP 2013548629 A JP2013548629 A JP 2013548629A JP 2014510324 A JP2014510324 A JP 2014510324A
Authority
JP
Japan
Prior art keywords
blade
message
master
virtual application
application distribution
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
JP2013548629A
Other languages
English (en)
Other versions
JP5948345B2 (ja
Inventor
ジャラン,ラクマー
オシバ,デニス
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.)
A10 Networks Inc
Original Assignee
A10 Networks Inc
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 A10 Networks Inc filed Critical A10 Networks Inc
Publication of JP2014510324A publication Critical patent/JP2014510324A/ja
Application granted granted Critical
Publication of JP5948345B2 publication Critical patent/JP5948345B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Factory Administration (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Abstract

仮想アプリケーション分配シャーシ(VADC)においてマスターブレードを選択する方法は、各ブレードが他の各ブレードにVADCメッセージを送信するステップと、各ブレードが、VADCメッセージが所定時間内にマスターブレードから受信されたと判断するステップと、これに応じて、各ブレードが他のブレードにブレード優先度を含むマスタークレームメッセージを送信するステップと、各ブレードが、受信したマスタークレームメッセージから取得したブレード優先度が受信したブレードのブレード優先度より高いか判断するステップと、取得したブレード優先度はどれも高くないと判断するとそれに応じて、一受信ブレードのステータスを新しいマスターブレードに設定するステップと、一受信ブレードが他のブレードに、その受信ブレードの新しいマスターブレードのステータスを示す第2のVADCメッセージを送信するステップとを有する。

Description

本発明は、概してデータ通信に関し、より具体的には仮想アプリケーションデリバリシャーシシステムに関する。
ウェブサービスとクラウドコンピューティングは前例のない速さで展開されている。データセンターには毎日、新しいサーバが運ばれ、設置されている。あらゆる方向から、ウェブサービスとコーポレートコンピューティングへの需要がある。消費者向けサービスには、iPhoneアプリ、ロケーションベースサービスなどの携帯アプリ、ナビゲーションサービス、キンドルなどの電子ブックサービス、ユーチューブやHuluなどのビデオアプリケーション、パンドラやiTunesなどの音楽アプリケーション、Netflixなどのインターネットテレビジョンサービス、その他の急速に成長している多数の消費者向けウェブサービスなどがある。企業面では、Google(TM) docs、Microsoft(TM) Office Live、Sharepoint(TM) softwareなどのサービスに基づくクラウドコンピューティング、Salesforce.com(TM)のオンラインソフトウェアサービス、テレプレゼンス、及びウェブ会議サービス、及びその他の多数の企業クラウドコンピューティングサービスがある。
結果として、増大するコンピューティング需要を満たすため、ますます多くのサービスが展開されている。これらのサーバは一般的にはサーバロードバランサ(SLB)又はアプリケーションデリバリコントローラ(ADC)により管理される。ADCはA10ネットワーク社のAXシリーズトラフィックマネージャなどのネットワーク機器である。ADCは、入来するサービス要求に基づき、ロードバランシングと、クライアントホストコンピュータからサーバへのサービスセッションのデリバリとを管理する。より多くのサーバが展開されるにつれ、より多くのADCが適宜展開される。同様に、より多くのサーバがデータセンタ内に集積され(pooled together)、又は複数のデータセンタに分散され、サービスのスケーラブルソリューションを提供するので、ADCがボトルネックになる。
本発明の一実施形態において、仮想アプリケーション分配シャーシにおけるマスターブレードを選択する方法であって、前記仮想アプリケーション分配シャーシは複数のブレードを有し、前記方法は、(a)前記複数のブレードのうちの各ブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信するステップと、(b)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記マスターブレードから受信されたか判断するステップと、(c)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記マスターブレードから受信されなかったとの判断に応じて、各ブレードが、前記仮想アプリケーション分配シャーシの他の各ブレードにマスタークレームメッセージを送信する、各マスタークレームメッセージは送信するブレードのブレード優先度を含む、ステップと、(d)前記マスタークレームメッセージを受信した各ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度が受信したブレードのブレード優先度より高いか判断するステップと、(e)一受信ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度がどれも前記一受信ブレードのブレード優先度より高くない判断するとそれに応じて、前記一受信ブレードの状態を新しいマスターブレードに設定するステップと、(f)前記一受信ブレードが、第2の仮想アプリケーション分配シャーシメッセージを前記仮想アプリケーション分配シャーシの他のブレードに送信する、前記第2の仮想アプリケーション分配シャーシメッセージは前記一受信ブレードの新しいマスターブレードのステータスを示す、ステップとを有する。
本発明の一態様において、前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、前記少なくとも一のスレーブブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信し、前記マスターブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信する。
本発明の一態様において、前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、前記判断するステップ(b)は、さらに、(b1)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記仮想アプリケーション分配シャーシの各スレーブブレードから受信されたか判断するステップと、(b2)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に一スレーブノードから受信しなかったとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを「故障中」とマークするステップと、(b3)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記一スレーブノードから受信したとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを正常に動作しているとマークするステップとを有する。
本発明の一態様において、前記判断するステップ(d)と設定するステップ(e)は、(d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、(e1)前記一受信ブレードのブレード優先度が前記マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、(e2)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを有する。
本発明の一態様において、前記判断するステップ(d)と設定するステップ(e)は、(d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、(e1)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードのスレーブステータスを維持するステップとを有する。
本発明の一態様において、各マスタークレームメッセージはさらに前記受信ブレードのブレード識別を有し、前記比較するステップ(d1)、くり返すステップ(e1)、設定するステップ(e2)は、(d1i)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度が前記受信ブレードのブレード優先度と等しいと判断するステップと、(d1ii)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度と等しいと判断するとそれに応じて、前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に小さいか判断するステップと、(e1i)前記マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に低いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、(e2i)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと、又は等しく数値的には低いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを有する。
本発明の一態様において、前記送信するステップ(f)は、(f1)前記複数のブレードのうちの一スレーブブレードが、第2の仮想アプリケーション分配シャーシメッセージメッセージが第2の所定時間内に受信されたか判断するステップと、(f2)前記一スレーブブレードが、前記第2の仮想アプリケーション分配シャーシメッセージが前記第2の所定時間内に受信されないと判断するとそれに応じて、前記一スレーブブレードのステータスを新しいマスターブレードに設定し、前記一スレーブブレードが前記仮想アプリケーション分配シャーシ中の他のブレードに第2の仮想アプリケーション分配シャーシメッセージを送信するステップとを有する。
本発明の一態様において、前記方法は、(g)新しいブレードを前記仮想アプリケーション分配シャーシに追加するステップと、(h)前記新しいブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに第2のマスタークレームメッセージを送信するステップと、(i)前記新しいブレードから第2のマスタークレームメッセージを受信するとそれに応じて、前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされているか判断するステップと、(j)前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされていると判断するとそれに応じて、前記第2のマスタークレームメッセージを無視し、そうでなければ送信するステップ(c)、判断するステップ(d)、設定するステップ(e)、及び送信するステップ(f)を実行するステップとを有する。
本発明の一態様において、前記複数のブレードは、データネットワーク内の前記仮想アプリケーション分配シャーシとして動作可能に結合され、前記データネットワークはネットワークスイッチを有し、前記方法は、さらに、(g)前記複数のブレードの第1のブレードをアクティブブレードとして仮想アドレスに割り当て、前記複数のブレードの第2のブレードをバックアップブレードとして前記仮想アドレスに割り当て、前記仮想アドレス宛てのサービス要求は前記ネットワークスイッチにより前記第1のブレードに送信される。
本発明の一態様において、前記方法は、(h)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記第1のブレードから受信されなかったと判断するステップと、(i)前記仮想アプリケーション分配シャーシが前記所定時間内に前記第1のブレードから受信されなかったとの判断に応じて、前記第2のブレードのステータスを前記仮想アドレスのアクティブブレードに変更するステップと、(j)前記ネットワークスイッチに仮想アドレス変更メッセージを送信して、前記ネットワークスイッチに前記仮想アドレス宛のサービス要求は前記第2のブレードに送信するように通知するステップとを有する。
上記の方法に対応するシステムとコンピュータプログラム製品もここに説明し特許請求の範囲に記載した。
本発明の一実施形態による、ホストからサーバへのサービスセッションを分配する仮想アプリケーションデリバリシャーシを示す図である。 本発明の一実施形態による、アプリケーションデリバリブレード、ホスト及びサーバのコンポーネントを示す図である。 本発明の一実施形態による仮想アプリケーション分配シャーシ内のアプリケーションデリバリブレードの接続を示す図である。 本発明の一実施形態による仮想アプリケーション分配シャーシ内のブレードの役割を示す図である。 本発明の一実施形態による仮想アプリケーション分配シャーシ内のマスターブレードを選択するプロセスを示す図である。 本発明の一実施形態による仮想アプリケーション分配シャーシを結合するブレードを示す図である。 本発明の一実施形態による、仮想アプリケーション分配シャーシとホストとの間のサービス接続を示す図である。
以下の説明は、当業者が本発明の生産と使用をすることができるように説明するものであり、特許出願とその要件の文脈で説明するものである。当業者には、実施形態の様々な修正が容易に明らかになり、ここに説明する一般的な原理は他の実施形態にも適用できるだろう。このように、本発明は、図示した実施形態に限定されるものではなく、ここに説明する原理と特徴と一致する最も広い範囲を与えられるべきである。
本発明の実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、またはハードウェアとソフトウェアを両方含む実施形態の形式を取ることができる。好ましい一実施形態では、本発明は、ソフトウェアで実施できる。ソフトウェアは、ファームウェア、レジデントソフトウェア、マイクロコードなどを含むが、これらに限定されない。
さらに、本発明は、コンピュータや命令実行システムにより使用されるプログラムコードを提供するコンピュータ利用可能媒体またはコンピュータ読み取り可能媒体からアクセスできるコンピュータプログラム製品の形体を取りうる。本開示の目的では、コンピュータ使用可能またはコンピュータ読み取り可能媒体は、命令実行システム、装置、又はデバイスにより、またはそれらに関して使用される、プログラムを包含、格納、伝達、伝送、搬送できる任意の装置である。
この媒体は、電子的媒体、磁気的媒体、光媒体、光磁気媒体、赤外線媒体、半導体システム(または装置やデバイス)、伝達媒体などである。コンピュータ読み取り可能媒体の例としては、半導体または固体メモリ、磁気テープ、リムーバブルコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、固定磁気ディスク、光ディスクなどがある。光ディスクの例としては、コンパクトディスク−リードオンリメモリ(CD−ROM)、コンパクトディスク−リード/ライト(CD−R/W)、及びDVDなどがある。
プログラムコードを格納及び/又は実行するのに好適なデータ処理システムは、システムバスを通してメモリ要素に直接的または間接的に結合された少なくとも1つのプロセッサを含む。メモリエレメントは、プログラムコードの実行時に使われるローカルメモリと、バルク記憶と、実行時にコードをバルク記憶から読み出さねばならない回数を低減するために、少なくともプログラムコードの一部を一時的に記憶するキャッシュメモリと、を含む。
(キーボード、ディスプレイ、ポインティングデバイスなどを含むがこれに限定されない)入出力すなわちI/Oデバイスを、直接的に、またはI/Oコントローラを介在させて、システムに結合できる。
ネットワークアダプタをシステムに結合して、データ処理システムを、プライベートネットワークやパブリックネットワークを通して、他のデータ処理システムやリモートプリンタや記憶装置に結合することもできる。モデム、ケーブルモデム及びイーサネット(登録商標)カードは、現在利用できるネットワークアダプタの一部である。
ブロック図は、本発明の様々な実施形態によるシステム、方法及びコンピュータプログラム製品のアーキテクチャ、機能及びありうる実装の動作を示す。これに関連して、ブロック図の各ブロックは、モジュール、セグメント、コードの一部分を表す。これは指定されたローカル機能を実装する一又は複数の実行可能命令を含む。留意すべき点として、代替的な実施形態では、ブロックに示した機能は図面に示した順序でない順序で行ってもよい。例えば、順次的に示された2つのブロックは、その機能に応じて、実際には、実質的に同時に実行してもよく、逆の順序で実行してもよい。また、留意点として、ブロック図の各ブロック、及びブロック図のブロックの組合せは、指定された機能や動作を実行する特定目的ハードウェアベースシステムにより、又は特定目的ハードウェアとコンピュータ命令との組合せにより実施できる。
ここで用いる用語は、具体的な実施形態を説明することを目的としており、本発明の限定を意図したものではない。ここで、冠詞「a」、「an」、及び「the」は、明らかに文脈に反しない限り、複数の場合も含む。さらに、言うまでもなく、「有する」との用語は、本明細書で用いるとき、記載した特徴、整数、ステップ、動作、要素及び/又はコンポーネントがあることを示し、その他の特徴、整数、ステップ、動作、要素、コンポーネント及び/またはこれらのグループがあることを排除するものではない。
図1は、本発明の一実施形態による、アプリケーションサービスセッション401をサーバ200からホスト100へデリバリする仮想アプリケーションデリバリシャーシを示す図である。仮想アプリケーションデリバリシャーシ300は、ホスト100とサーバ200との間のアプリケーションサービスセッションのサービス要求403を、ホスト100から受信する。サービス要求403はデータネットワーク153によりデリバリされる。一実施形態では、サービスセッション401はウェブサービスセッションであり、サービス要求403は、例えば、HTTP(Hypertext Transport Protocol)要求、セキュアHTTP要求、FTP(File Transfer Protocol)要求、ファイル転送要求、SIP(Session Initiation Protocol)セッション要求、ウェブ技術に基づく要求、ビデオ又はオーディオストリーミング要求、ウェブ会議セッション要求、又はインターネット又は企業ネットワーク上の任意の要求である。
一実施形態では、サービスセッション401は、リモートアクセスサービス、ファイル及び印刷サービス、ネーム又はディレクトリサービス、エンタープライズアプリケーションサービス、データベースアプリケーションサービス、又はメッセージングサービスなどの非ウェブサービスのセッションである。サービス要求403は、対応するサービスセッション401の要求である。
図2は、本発明の一実施形態による、アプリケーションデリバリブレード、ホスト及びサーバのコンポーネントを示す図である。ホスト100はネットワークアクセス機能を有するコンピューティング装置である。図2に示したように、ホスト100は、プロセッサ103、コンピュータ読み取り可能媒体104、及びネットワークインタフェース105に動作可能に結合している。コンピュータ読み取り可能媒体104は、ここに説明する、プロセッサ103により実行された時、本発明の様々な実施形態を実施するコンピュータ読み取り可能プログラムコードを格納している。ネットワークインタフェース105はデータネットワーク153を接続する。ネットワークインタフェース105の例としては、イーサネット(登録商標)、WiFi、モバイルネットワークインタフェース、ブルートゥース、WiMAX、デジタル加入者線(DSL)、ケーブルインタフェース、T1やT3などのブロードバンドネットワークインタフェース、光ネットワークインタフェース、無線ネットワークインタフェース、その他のデータネットワークインタフェースがある。一実施形態では、ホスト100はワークステーション、デスクトップパーソナルコンピュータ、又はラップトップパーソナルコンピュータである。一実施形態では、ホスト100はパーソナルデータアシスタント(PDA)、スマートホン、タブレットPC又はセルラー電話である。一実施形態では、ホスト100は、セットトップボックス、インターネットメディアビュアー、インターネットメディアプレーヤ、スマートセンサ、スマートメディカルデバイス、ネットトップボックス、ネットワークテレビジョンセット、ネットワークDVR、ネットワークBlu−rayプレーヤ、又はメディアセンターである。
図1において、仮想アプリケーションデリバリシャーシ300は、ブレード310、ブレード312、ブレード314及びブレード316などの複数のブレードを含む。各ブレードは、例えばブレード310は、図2に示したように、プロセッサ303、コンピュータ読み取り可能媒体304及びネットワークインタフェース305に動作可能に結合している。コンピュータ読み取り可能媒体304は、ここに説明する、プロセッサ303により実行された時、本発明の様々な実施形態を実施するコンピュータ読み取り可能プログラムコードを格納している。ある実施形態では、仮想アプリケーションデリバリシャーシ300は、複数のサーバへの負荷を分配する、サーバロードバランサ、アプリケーションデリバリコントローラ、サービスデリバリプラットフォーム、トラフィックマネージャ、セキュリティゲートウェイ、ファイアウォールシステムの一コンポーネント、仮想プライベートネットワーク(VPN)の一コンポーネント、ビデオサーバのロードバランサ、又はサービスゲートウェイとして実装される。ネットワークインタフェース305はデータネットワーク155を接続する。図1において、ブレード310、312、314、316もデータネットワーク151に接続している。ブレード310−312、314、316は、データネットワーク151への接続により、仮想アプリケーションデリバリシャーシ300を形成する。一実施形態では、ネットワークインタフェース305はネットワークインタフェース105の様々な実施形態を含む。一実施形態では、ネットワークインタフェース305は、さらに光ネットワークインタフェースを含む。
図2に示したように、サーバ200は、プロセッサ203、コンピュータ読み取り可能媒体204、及びネットワークインタフェース205に動作可能に結合している。コンピュータ読み取り可能媒体204は、ここに説明する、プロセッサ233により実行された時、本発明の様々な実施形態を実施するコンピュータ読み取り可能プログラムコードを格納している。ある実施形態では、コンピュータ読み取り可能プログラムコードは、サーバ200を、ウェブサーバ、ファイルサーバ、ビデオサーバ、データベースサーバ、メッセージングサーバ、ファイルサーバ、プリンタサーバ、アプリケーションサーバ、ボイスシステム、会議サーバ、メディアゲートウェイ、SIPサーバ、リモートアクセスサーバ、VPNサーバ、又はメディアセンターとして機能するように実施する。ネットワークインタフェース205はデータネットワーク155を接続する。
図1に戻り、一実施形態では、データネットワーク153は、ホスト100と仮想アプリケーションデリバリシャーシ300とを接続する。一実施形態では、データネットワーク153はインターネットプロトコル(IP)ネットワークである。一実施形態では、データネットワーク153は、企業データネットワークやリージョナル企業データネットワークであり、イントラネット、プライベートネットワーククラウド、仮想プライベートネットワーク、又はキャンパスエリアネットワークを含むがこれらに限定されない。一実施形態では、データネットワーク153はインターネットサービスプロバイダネットワークである。一実施形態では、データネットワーク153は、住居データネットワークであり、DSLネットワーク、ケーブルネットワーク、パーソナルエリアネットワークなどのブロードバンドネットワークを含むがこれらに限定されない。一実施形態では、データネットワーク153は、イーサネット(登録商標)などの有線ネットワークを含む。一実施形態では、データネットワーク153は、WiFiネットワーク、セルラーネットワークなどの無線ネットワークを含む。一実施形態では、ネットワークインタフェース205はネットワークインタフェース105とネットワークインタフェース305の様々な実施形態を含む。
データネットワーク151は、仮想アプリケーションデリバリシャーシ300をデータネットワーク153に接続する。一実施形態では、データネットワーク151はデータネットワーク153の様々な実施形態を含む。一実施形態では、データネットワーク151は、データセンターにあり、又は光ネットワークなどのワイドエリアネットワークで複数のデータセンターに跨り、またはキャンパスエリアネットワーク中の複数のビルに広がっている。
データネットワーク155はサーバ200をデータネットワーク151に接続する。一実施形態では、データネットワーク155は、データネットワーク151に含まれるサブネットワークである。一実施形態では、データネットワーク155はデータネットワーク151の様々な実施形態を含む。一実施形態では、データネットワーク151はデータネットワーク155とは異なるネットワークである。
一実施形態では、ホスト100は、サーバ200と、アプリケーションサービスセッション401を開始する。ホスト100は、仮想アプリケーションデリバリシャーシ300にサービス要求403を送る。仮想アプリケーションデリバリシャーシ300は、サービス要求403を受信すると、サーバセッション405を確立し、サービス要求403をサーバ200にリレーする。仮想アプリケーションデリバリシャーシ300は、サーバセッション405を通じてサーバ200から応答を受信する。仮想アプリケーションデリバリシャーシ300は、実質的に、サービス要求403への応答として、サーバセッション405を通じて、その応答をリレーする。
図3は、本発明の一実施形態による仮想アプリケーションデリバリシャーシのブレードの結合を示す図である。好ましい一実施形態では、ブレード310は、他のブレードとは別のハードウェアである。ブレード310は、ブレード312、ブレード314、及びブレード316などの他のブレードに、データネットワーク151により接続されている。一実施形態では、データネットワーク151は、スイッチ414、スイッチ412、及びスイッチ416などの複数のネットワークスイッチを含む。ネットワークスイッチ412やネットワークスイッチ414は、複数のブレードと他のネットワークスイッチを接続するネットワーキングデバイスである。一実施形態では、スイッチ412は、イーサネットスイッチ、IPルータ、光ネットワークスイッチ、WANネットワーク機器、ATMスイッチ、MPLSスイッチ、レイヤ2ネットワークスイッチ/ハブ/ブリッジ、又はレイヤ3ネットワークスイッチ/ルータである。一実施形態では、図3に示したように、スイッチ412はブレード312、ブレード310及びスイッチ416を接続し、スイッチ414はブレード314、ブレード316及びスイッチ416を接続する。この実施形態では、ブレード312は、スイッチ412を用いてブレード310と接続され、スイッチ412、スイッチ416及びスイッチ414を用いてブレード316に接続されている。
一実施形態では、スイッチ412、スイッチ414及びスイッチ416は、データセンターなど、同じ地理的ロケーションにある。一実施形態では、スイッチ412、スイッチ414及びスイッチ416は、2以上のデータセンターなど、異なる地理的ロケーションにある。この実施形態では、ブレード310、312、314及び316は、地理的に、異なるデータセンターにある。
ブレード310は、仮想アプリケーションデリバリシャーシメッセージ(VDS)500を送受信することにより、仮想アプリケーション分配シャーシ300中の他のブレードと通信する。一実施形態では、ブレード310は、イーサネットブロードキャストアドレスなどのブロードキャストネットワークアドレスを用いて、仮想アプリケーションデリバリシャーシメッセージ500を送信する。一実施形態では、仮想アプリケーションデリバリシャーシメッセージ500は、イーサネットマルチキャストアドレス、IPマルチキャストアドレス、またはその他のマルチキャストネットワークアドレスなどのマルチキャストアドレスを用いて送信される。一実施形態では、ブレード310は、ブレード312と通信セッション(図示せず)を確立し、その通信セッションを用いて、ブレード312に、仮想アプリケーションデリバリシャーシメッセージ500を送る。また、ブレード310は、仮想アプリケーション分配シャーシ300中の他のブレードと別の通信セッションを確立し、他のブレードにその通信セッションで仮想アプリケーションデリバリシャーシメッセージ500を送る。通信セッションの例には、UDPセッション、TCPセッション、IPベース通信セッション、ピアツーピア通信セッション、ユニキャスト通信セッション、又はその他の形式のデータ通信セッションがある。一実施形態では、ブレード310は、仮想アプリケーション分配シャーシ300中のブレード312その他のブレードと、ブロードキャストアドレス、マルチキャストアドレス又は通信セッションを用いて、仮想アプリケーションデリバリシャーシメッセージ500を受信する。
図4は、本発明の一実施形態による仮想アプリケーション分配シャーシ内のブレードの役割を示す図である。各ブレードは、仮想アプリケーションデリバリシャーシ300中でマスター又はスレーブいずれかの役割をするように構成され、一ブレードのみがマスターの役割をするように構成されている。例えば、ブレード312がマスターブレードであるとすると、ブレード310、314及び316はスレーブブレードである。スレーブブレード310を含む各スレーブブレードは、仮想アプリケーション分配シャーシ300中の他のブレードに、スレーブレポートメッセージ510を送る。スレーブレポートメッセージ510は、仮想アプリケーションデリバリシャーシメッセージ500の形式である。スレーブブレード310からスレーブレポートメッセージ510を受信することにより、他のブレードには、そのスレーブブレード310が正常に動作していることを示す。任意的に、スレーブレポートメッセージ510は、本発明の範囲外の機能に用いることができる、ブレード310に関するその他の情報を含む。一実施形態では、スレーブブレード310はタイマー320を含む。タイマー320は所定時間を測る。タイマー320が満了すると、スレーブブレード310は、仮想アプリケーション分配シャーシ300中のその他のブレードに、スレーブレポートメッセージ510を送信する。一実施形態では、スレーブブレード310は、メッセージ510を、30秒ごと、5秒ごと、又は3分ごとに、定期的に送信する。一実施形態では、スレーブブレード310は、スレーブブレード310中の情報に変化があった時に、例えばアップデートによるソフトウェアバージョンの変更があった時に、メッセージ510を送信する。一実施形態では、スレーブブレード310は、仮想アプリケーション分配シャーシ300中の他の一ブレードから、対応するスレーブレポートメッセージ又はマスターアドバタイズメントメッセージ504を受信した時に、メッセージ510を送信する。
図4に示した一例では、スレーブブレード314とマスターブレード312は、スレーブブレード310からスレーブレポートメッセージ510を受信する。スレーブレポートメッセージ510内にステータス表示を含めるのとは逆に、スレーブレポートメッセージ510自体の受信により、スレーブブレード314とマスターブレード312には、スレーブブレード310が正常に動作していることが分かる。スレーブブレード314とマスターブレード312は、それぞれ、スレーブブレード310が正常動作状態であると記録(mark)する。一実施形態では、スレーブブレード314はタイマー324を含む。スレーブブレード314は、タイマー324が満了する前にスレーブブレード310からメッセージ510を受信しないと、スレーブブレード310が「故障中(failed)」と、すなわちサービス要求を処理できないと考える。同様に、マスターブレード312は、タイマー322が満了する前にスレーブブレード310からメッセージ510を受信しない場合、スレーブブレード310が「故障中(failed)」と考える。
マスターブレード312は、仮想アプリケーションデリバリシャーシメッセージ500のもう1つの形式であるマスターアドバタイズメントメッセージ504を送出して、仮想アプリケーションデリバリシャーシ300中のスレーブブレードに、マスターブレード312が正常に動作していることを知らせる。一実施形態では、マスターブレード312は、所定時間を測るように構成されたタイマー322を含み、タイマー322が満了した時に、マスターアドバタイズメントメッセージ504を送信する。一実施形態では、マスターブレード312は、マスターアドバタイズメントメッセージ504を定期的に、例えば1/2秒ごとに、5秒ごとに、30秒ごとに、又は1分ごとに送信する。一実施形態では、マスターブレード312は、マスターブレード312中の情報に変化があった時に、例えばアップデートによるソフトウェアバージョンの変更があった時に、メッセージ504を送信する。
一実施形態では、スレーブブレード314を含む各スレーブブレードは、マスターブレード312からマスターアドバタイズメントメッセージ504を受信する。マスターアドバタイズメントメッセージ504内にステータス表示を含めるのとは逆に、マスターアドバタイズメントメッセージ504の受信自体により、スレーブブレードには、マスターブレード312が正常に動作していることが分かる。図4に示した例では、スレーブブレード314は、タイマー324が満了する前にマスターアドバタイズメントメッセージ504を受信した時、マスターブレード312が正常に動作していることを記録(mark)する。一実施形態では、スレーブブレード314は、タイマー324が満了する前にマスターブレード312からマスターアドバタイズメントメッセージ504を受信しない場合、マスターブレード312が「故障中(failed)」であると記録(mark)する。この場合、スレーブブレード310と316は、同様に、自機のタイマー320と326が満了する前にマスターブレード312からマスターアドバタイズメントメッセージ504を受信しない場合、マスターブレード312が「故障中(failed)」であると記録(mark)する。
スレーブブレード310、314及び316は、マスターブレード312の故障を認識した後、新しいマスターブレードを選ぶ。図5は、本発明の一実施形態による仮想アプリケーション分配シャーシ内のマスターブレードを選択するプロセスを示す図である。図5において、スレーブブレード310、314及び316は、それぞれ、自機が新しいマスターブレードになると考える。各ブレード310、314、316は、仮想アプリケーションデリバリシャーシ300中の他のブレードに、マスタークレームメッセージ520、524、516を送信する。マスタークレームメッセージには送信したブレードのブレード優先度が含まれる。ブレード優先度は、予め設定され、シャーシアドミニストレータにより設定可能な要因に基づき、マスターの役割を割り振るブレードの順序を規定する。マスタークレームメッセージは、仮想アプリケーションデリバリシャーシメッセージ500の一形式である。
例えば、図5において、スレーブブレード310は、そのブレード優先度530を含むマスタークレームメッセージ520を送信する。スレーブブレード314は、そのブレード優先度534を含むマスタークレームメッセージ524を送信する。スレーブブレード316は、そのブレード優先度536を含むマスタークレームメッセージ526を送信する。スレーブブレード314は、スレーブブレード310からマスタークレームメッセージ520を受信し、マスタークレームメッセージ520からブレード優先度530を取得する。スレーブブレード314は、自機のブレード優先度534をマスタークレームメッセージ520からのブレード優先度530と比較して、ブレード優先度530がブレード優先度534より高いと判断する。これに応じて、スレーブブレード314はスレーブの役割を維持する。スレーブブレード316は、スレーブブレード310からマスタークレームメッセージ520を受信し、マスタークレームメッセージ520からブレード優先度530を取得する。スレーブブレード316は、自機のブレード優先度536をマスタークレームメッセージ520からのブレード優先度530と比較して、ブレード優先度530がブレード優先度536より高いと判断する。これに応じて、スレーブブレード316はスレーブの役割を維持する。
スレーブブレード310は、スレーブブレード314からマスタークレームメッセージ524を受信し、マスタークレームメッセージ524からブレード優先度534を取得する。スレーブブレード310は、自機のブレード優先度530をマスタークレームメッセージ524からのブレード優先度534と比較して、ブレード優先度530がブレード優先度534より高いと判断する。また、スレーブブレード310は、スレーブブレード316からマスタークレームメッセージ526を受信し、マスタークレームメッセージ526からブレード優先度536を取得する。スレーブブレード310は、自機のブレード優先度530をブレード優先度536と比較して、ブレード優先度530がブレード優先度536より高いと判断する。一実施形態では、これに応じて、スレーブブレード310は自機の役割をマスターブレードに変更する。一実施形態では、スレーブブレード310は、タイマー320を含み、タイマー320が満了する前には、ブレード優先度530より高いブレード優先度を有するマスタークレームメッセージを受信しない。これに応じて、スレーブブレード310は自機の役割をマスターブレードに変更する。新しいマスターブレード310は、仮想アプリケーション分配シャーシ300中の他のブレードに、各ブレードにマスターアドバタイズメントメッセージ515を送信することにより、自機がマスターの役割を果たすことを通知する。
一実施形態では、スレーブブレード310は、ブレード優先度530がブレード優先度534と等しいと判断する。これに応じて、スレーブブレード310は、所定のアービトレーションプロセスを用い、スレーブブレード310とスレーブブレード314のどちらが高い優先度を有するか判断する。例えば、一実施形態では、スレーブブレード310はブレード識別330を割り当てられる。スレーブブレード310は、マスタークレームメッセージ520中のブレード識別330を含める。同様に、スレーブブレード314は、ブレード識別334が割り当てられ、マスタークレームメッセージ524にブレード識別334を含める。スレーブブレード310は、マスタークレームメッセージ524を受信すると、マスタークレームメッセージ524のブレード識別334を自機のブレード識別330と比較して、ブレード識別334がブレード識別330より数値的に小さいと判断する。これに応じて、スレーブブレード310は、自機がブレード314より高い優先度を有すると判断する。スレーブブレード310は、高いブレード優先度を有する他のマスタークレームメッセージ、又は同じブレード優先度と高いブレード識別とを有する他のマスタークレームメッセージを受信しないと、自機の役割をマスターブレードに変更する。一実施形態では、所定のアービトレーションプロセスでは、ブレード識別が数値的に高いものではなく、数値的に低いものを選択していてもよい。所定のアービトレーションプロセスは、本発明の精神と範囲から逸脱することなく、ブレード識別以外の情報を用いてもよい。
ブレード310は、自機の役割をマスターブレードに変更すると、仮想アプリケーション分配シャーシ300中の他の各ブレードに、マスターアドバタイズメントメッセージ515を送信する。ブレード310からマスターアドバタイズメントメッセージ515受信することは、他の各ブレードに対して、ブレード310がマスターブレードであることを示す。例えば、スレーブブレード314は、マスターブレード310からマスターアドバタイズメントメッセージ515を受信すると、マスターブレード310が仮想アプリケーションデリバリシャーシ300のマスターブレードであることを記録する。
一実施形態では、スレーブブレード314は、タイマー324を含み、タイマー324が満了する前にはマスターアドバタイズメントメッセージを受信しない。スレーブブレード314は、マスターブレードが決定されていないと判断する。これに応じて、スレーブブレード314は、自機をマスターブレードとして選択し、仮想アプリケーション分配シャーシ300中の他のブレードにマスターアドバタイズメントメッセージを送信する。
図6は、本発明の一実施形態による仮想アプリケーション分配シャーシにマスターブレードが追加された時のプロセスを示す図である。仮想アプリケーションデリバリシャーシ300は、ブレード312をマスターブレードとして有するが、このシャーシにブレード316が追加される。スレーブブレード316は、追加されると、そのブレード優先度536を含むマスタークレームメッセージ526を送信する。仮想アプリケーションデリバリシャーシ300中の他のブレード310、312、314は、ブレード316からマスタークレームメッセージ526を受信し、それぞれがレポートモードにあると判断し(すなわち、マスターブレード312が正常な動作状態にあるとマークされ)、メッセージ526を無視する。マスターブレード312は、自機のタイマー322(図4)が満了すると、マスターアドバタイズメントメッセージ504を送信する。一実施形態では、マスターアドバタイズメントメッセージ504はマスターブレード312のブレード優先度532を含む。ブレード316は、マスターアドバタイズメントメッセージ504の受信に応じて、自機の役割をスレーブブレードに設定する。ブレード316に対して、マスターアドバタイズメントメッセージ504を受信することは、仮想アプリケーション分配シャーシ300が正常に動作しているマスターブレードをすでに有することを示す。その後、タイマー326(図4)が満了すると、スレーブブレード316は、仮想アプリケーション分配シャーシ300中の他のブレードに、スレーブレポートメッセージ516を送信する。図4を参照して上で説明したように、マスターブレード312を含む他のブレードが、スレーブブレード316からスレーブレポートメッセージ516を受信するということは、ブレード316が仮想アプリケーションデリバリシャーシ300に新しく加入したことを示す。この実施形態では、上記のプロセスは、既存のシャーシ又は新しく構成されたシャーシにブレードを追加するのに用いられる。新しい仮想アプリケーション分配シャーシを構成するとき、そのシャーシに加入する各ブレードはマスタークレームメッセージを送信する。図5を参照して上で説明したように、マスターブレードは未だ無いので、すなわち、タイマーが満了する前にマスターアドバタイズメントメッセージを受信するブレードは無いので、ブレードはマスターブレード選択プロセスに入る。
仮想アプリケーションデリバリシャーシ300とホスト100との間の接続に戻り、図7は、本発明の一実施形態によるホスト100と仮想アプリケーションデリバリシャーシ300との間の接続を示している。この実施形態では、ホスト100は、ネットワークスイッチ418を通じて、仮想アプリケーションデリバリシャーシ300と通信する。ネットワークスイッチ418は、ブレード310とブレード314に接続されている。仮想アプリケーションデリバリシャーシ300は仮想アドレス423を含む。仮想アドレス423は、ホスト100が仮想アプリケーションデリバリシャーシ300と通信するのに用いるネットワークアドレスである。一実施形態では、仮想アドレス423はIPアドレスその他のネットワークアドレスである。ブレード310は仮想アドレス423のアクティブブレードとして指定されている。ブレード314は仮想アドレス423のバックアップブレードとして指定されている。よって、仮想アプリケーション分配シャーシ300中のアクティブブレードとバックアップブレードとは、データネットワーク151の各仮想アドレスに指定されている。ネットワークスイッチ418は、仮想アドレス423宛のデータパケットをアクティブブレード310に配信する。ホスト100は、仮想アドレス423を用いて、仮想アプリケーションデリバリシャーシ300にサービス要求403を送る。ネットワークスイッチ418は、サービス要求403パケットを受信すると、そのパケットを仮想アドレス423のアクティブブレード310に送信する。アクティブブレード310は、サービス要求403を受信して処理する。
一実施形態では、アクティブブレード310は、故障し、タイマー320が満了した時にマスターブレードであれば、スレーブレポートメッセージ510又はマスターアドバタイズメントメッセージを送信しない。バックアップブレード314は、タイマー324が満了する前には、アクティブブレードからスレーブレポートメッセージ510を受信しない。これに応じて、バックアップブレード314はアクティブブレード310が故障したと判断する。バックアップブレード314は、自機の役割を、仮想アドレス423のアクティブブレードに変更する。アクティブブレード314は、仮想アドレス変更メッセージ446を送信して、ネットワークスイッチ418に、今後、仮想アドレス423宛のパケットはアクティブブレード314に送ることを通知する。一実施形態では、仮想アドレス423はIPアドレスであり、ネットワークスイッチ418はイーサネットスイッチである。アクティブブレード314は、APR(Address Resolution Protocol)メッセージを用いてネットワークスイッチ418に通知する。このメッセージは、アクティブブレード314のネットワークインタフェースの仮想アドレス423とMACアドレスとを含む。ネットワークスイッチ418は、仮想アドレス変更メッセージ446を受信すると、今後、仮想アドレス423宛のパケットはアクティブブレード314に送信されるように状態を変更する。
一実施形態では、サービス要求403に基づくホスト100とサーバ200との間のサービスセッションは、アクティブブレード310が故障(fail)すると、切断される(fail)。一実施形態では、ホスト100は、その後、仮想アドレス423を用いて他のサービスセッションのサービス要求407を送信する。ネットワークスイッチ418は、サービス要求407を受信し、仮想アドレス423を含むサービス要求407をアクティブブレード314に送信する。アクティブブレード314は、サービス要求407を処理し、その要求をサーバ200に送信する。
本発明を実施形態を参照して説明したが、本技術分野の当業者には言うまでもなく、これらの実施形態にはバリエーションがあり、これらのバリエーションも本発明の精神と範囲に含まれる。したがって、本技術分野の当業者は、添付した特許請求の範囲の精神と範囲から逸脱せずに、多くの修正をすることができる。

Claims (30)

  1. 仮想アプリケーション分配シャーシにおけるマスターブレードを選択する方法であって、前記仮想アプリケーション分配シャーシは複数のブレードを有し、前記方法は、
    (a)前記複数のブレードのうちの各ブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信するステップと、
    (b)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記マスターブレードから受信されたか判断するステップと、
    (c)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記マスターブレードから受信されなかったとの判断に応じて、各ブレードが、前記仮想アプリケーション分配シャーシの他の各ブレードにマスタークレームメッセージを送信する、各マスタークレームメッセージは送信するブレードのブレード優先度を含む、ステップと、
    (d)前記マスタークレームメッセージを受信した各ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度が受信したブレードのブレード優先度より高いか判断するステップと、
    (e)一受信ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度がどれも前記一受信ブレードのブレード優先度より高くない判断するとそれに応じて、前記一受信ブレードの状態を新しいマスターブレードに設定するステップと、
    (f)前記一受信ブレードが、第2の仮想アプリケーション分配シャーシメッセージを前記仮想アプリケーション分配シャーシの他のブレードに送信する、前記第2の仮想アプリケーション分配シャーシメッセージは前記一受信ブレードの新しいマスターブレードのステータスを示す、ステップとを有する、方法。
  2. 前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、
    前記スレーブブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信し、
    前記マスターブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信する、
    請求項1に記載の方法。
  3. 前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、
    前記判断するステップ(b)は、さらに、
    (b1)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記仮想アプリケーション分配シャーシの各スレーブブレードから受信されたか判断するステップと、
    (b2)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に一スレーブノードから受信しなかったとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを「故障中」とマークするステップと、
    (b3)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記一スレーブノードから受信したとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを正常に動作しているとマークするステップとを有する、
    請求項1に記載の方法。
  4. 前記判断するステップ(d)と設定するステップ(e)は、
    (d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、
    (e1)前記一受信ブレードのブレード優先度が前記マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、
    (e2)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを有する、
    請求項1に記載の方法。
  5. 前記判断するステップ(d)と設定するステップ(e)は、
    (d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、
    (e1)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードのスレーブステータスを維持するステップと、
    請求項1に記載の方法。
  6. 各マスタークレームメッセージはさらに前記受信ブレードのブレード識別を有する、
    前記比較するステップ(d1)、くり返すステップ(e1)、設定するステップ(e2)は、
    (d1i)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度が前記受信ブレードのブレード優先度と等しいと判断するステップと、
    (d1ii)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度と等しいと判断するとそれに応じて、前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に小さいか判断するステップと、
    (e1i)前記マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に低いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、
    (e2i)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと、又は等しく数値的には低いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを有する、
    請求項4に記載の方法。
  7. 前記送信するステップ(f)は、
    (f1)前記複数のブレードのうちの一スレーブブレードが、第2の仮想アプリケーション分配シャーシメッセージメッセージが第2の所定時間内に受信されたか判断するステップと、
    (f2)前記一スレーブブレードが、前記第2の仮想アプリケーション分配シャーシメッセージが前記第2の所定時間内に受信されないと判断するとそれに応じて、前記一スレーブブレードのステータスを新しいマスターブレードに設定し、前記一スレーブブレードが前記仮想アプリケーション分配シャーシ中の他のブレードに第2の仮想アプリケーション分配シャーシメッセージを送信するステップとを有する、
    請求項1に記載の方法。
  8. さらに、
    (g)新しいブレードを前記仮想アプリケーション分配シャーシに追加するステップと、
    (h)前記新しいブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに第2のマスタークレームメッセージを送信するステップと、
    (i)前記新しいブレードから第2のマスタークレームメッセージを受信するとそれに応じて、前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされているか判断するステップと、
    (j)前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされていると判断するとそれに応じて、前記第2のマスタークレームメッセージを無視し、そうでなければ送信するステップ(c)、判断するステップ(d)、設定するステップ(e)、及び送信するステップ(f)を実行するステップとを有する、
    請求項1に記載の方法。
  9. 前記複数のブレードは、データネットワーク内の前記仮想アプリケーション分配シャーシとして動作可能に結合され、前記データネットワークはネットワークスイッチを有し、
    前記方法は、さらに、
    (g)前記複数のブレードの第1のブレードをアクティブブレードとして仮想アドレスに割り当て、前記複数のブレードの第2のブレードをバックアップブレードとして前記仮想アドレスに割り当て、前記仮想アドレス宛てのサービス要求は前記ネットワークスイッチにより前記第1のブレードに送信される、
    請求項1に記載の方法。
  10. さらに、
    (h)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記第1のブレードから受信されなかったと判断するステップと、
    (i)前記仮想アプリケーション分配シャーシが前記所定時間内に前記第1のブレードから受信されなかったとの判断に応じて、前記第2のブレードのステータスを前記仮想アドレスのアクティブブレードに変更するステップと、
    (j)前記ネットワークスイッチに仮想アドレス変更メッセージを送信して、前記ネットワークスイッチに前記仮想アドレス宛のサービス要求は前記第2のブレードに送信するように通知するステップとを有する、
    請求項9に記載の方法。
  11. コンピュータ読み取り可能プログラムを有するコンピュータ読み取り可能記憶媒体を含むコンピュータプログラム製品であって、
    前記コンピュータ読み取り可能プログラムは、一又は複数のコンピュータに実行されると、前記コンピュータに、
    (a)仮想アプリケーション分配シャーシの複数のブレードのうちの各ブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信するステップと、
    (b)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記マスターブレードから受信されたか判断するステップと、
    (c)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記マスターブレードから受信されなかったとの判断に応じて、各ブレードが、前記仮想アプリケーション分配シャーシの他の各ブレードにマスタークレームメッセージを送信する、各マスタークレームメッセージは送信するブレードのブレード優先度を含む、ステップと、
    (d)前記マスタークレームメッセージを受信した各ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度が受信したブレードのブレード優先度より高いか判断するステップと、
    (e)一受信ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度がどれも前記一受信ブレードのブレード優先度より高くない判断するとそれに応じて、前記一受信ブレードの状態を新しいマスターブレードに設定するステップと、
    (f)前記一受信ブレードが、第2の仮想アプリケーション分配シャーシメッセージを前記仮想アプリケーション分配シャーシの他のブレードに送信する、前記第2の仮想アプリケーション分配シャーシメッセージは前記一受信ブレードの新しいマスターブレードのステータスを示す、ステップとを実行させる、製品。
  12. 前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、
    前記スレーブブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信し、
    前記マスターブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信する、
    請求項11に記載のコンピュータプログラム製品。
  13. 前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、
    前記判断するステップ(b)は、さらに、
    (b1)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記仮想アプリケーション分配シャーシの各スレーブブレードから受信されたか判断するステップと、
    (b2)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に一スレーブノードから受信しなかったとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを「故障中」とマークするステップと、
    (b3)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記一スレーブノードから受信したとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを正常に動作しているとマークするステップとを実行させる、
    請求項14に記載のコンピュータプログラム製品。
  14. 前記判断するステップ(d)と設定するステップ(e)は、
    (d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、
    (e1)前記一受信ブレードのブレード優先度が前記マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、
    (e2)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを実行させる、
    請求項11に記載のコンピュータプログラム製品。
  15. 前記判断するステップ(d)と設定するステップ(e)は、
    (d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、
    (e1)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードのスレーブステータスを維持するステップとを実行させる、
    請求項14に記載のコンピュータプログラム製品。
  16. 各マスタークレームメッセージはさらに前記受信ブレードのブレード識別を有し、
    前記比較するステップ(d1)、くり返すステップ(e1)、設定するステップ(e2)は、
    (d1i)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度が前記受信ブレードのブレード優先度と等しいと判断するステップと、
    (d1ii)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度と等しいと判断するとそれに応じて、前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に小さいか判断するステップと、
    (e1i)前記マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に低いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、
    (e2i)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと、又は等しく数値的には低いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを有する、
    請求項15に記載のコンピュータプログラム製品。
  17. 前記送信するステップ(f)は、
    (f1)前記複数のブレードのうちの一スレーブブレードが、第2の仮想アプリケーション分配シャーシメッセージメッセージが第2の所定時間内に受信されたか判断するステップと、
    (f2)前記一スレーブブレードが、前記第2の仮想アプリケーション分配シャーシメッセージが前記第2の所定時間内に受信されないと判断するとそれに応じて、前記一スレーブブレードのステータスを新しいマスターブレードに設定し、前記一スレーブブレードが前記仮想アプリケーション分配シャーシ中の他のブレードに第2の仮想アプリケーション分配シャーシメッセージを送信するステップとを有する、
    請求項11に記載のコンピュータプログラム製品。
  18. さらに、
    (g)新しいブレードを前記仮想アプリケーション分配シャーシに追加するステップと、
    (h)前記新しいブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに第2のマスタークレームメッセージを送信するステップと、
    (i)前記新しいブレードから第2のマスタークレームメッセージを受信するとそれに応じて、前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされているか判断するステップと、
    (j)前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされていると判断するとそれに応じて、前記第2のマスタークレームメッセージを無視し、そうでなければ送信するステップ(c)、判断するステップ(d)、設定するステップ(e)、及び送信するステップ(f)を実行するステップとを有する、
    請求項11に記載のコンピュータプログラム製品。
  19. 前記複数のブレードは、データネットワーク内の前記仮想アプリケーション分配シャーシとして動作可能に結合され、前記データネットワークはネットワークスイッチを有し、
    前記コンピュータプログラム製品は、さらに、
    (g)前記複数のブレードの第1のブレードをアクティブブレードとして仮想アドレスに割り当て、前記複数のブレードの第2のブレードをバックアップブレードとして前記仮想アドレスに割り当て、前記仮想アドレス宛てのサービス要求は前記ネットワークスイッチにより前記第1のブレードに送信される、ステップを有する、
    請求項14に記載のコンピュータプログラム製品。
  20. さらに、
    (h)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記第1のブレードから受信されなかったと判断するステップと、
    (i)前記仮想アプリケーション分配シャーシが前記所定時間内に前記第1のブレードから受信されなかったとの判断に応じて、前記第2のブレードのステータスを前記仮想アドレスのアクティブブレードに変更するステップと、
    (j)前記ネットワークスイッチに仮想アドレス変更メッセージを送信して、前記ネットワークスイッチに前記仮想アドレス宛のサービス要求は前記第2のブレードに送信するように通知するステップとを有する、
    請求項19に記載のコンピュータプログラム製品。
  21. システムであって、
    データネットワーク内で仮想アプリケーション分配シャーシとして動作可能に結合した複数のブレードを有し、
    各ブレードは、プロセッサと、コンピュータ読み取り可能プログラムを有するコンピュータ読み取り可能記憶媒体とを有し、前記コンピュータ読み取り可能プログラムは、前記プロセッサにより実行されると、前記複数のブレードに、
    (a)各ブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信するステップと、
    (b)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記マスターブレードから受信されたか判断するステップと、
    (c)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記マスターブレードから受信されなかったとの判断に応じて、各ブレードが、前記仮想アプリケーション分配シャーシの他の各ブレードにマスタークレームメッセージを送信する、各マスタークレームメッセージは送信するブレードのブレード優先度を含む、ステップと、
    (d)前記マスタークレームメッセージを受信した各ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度が受信したブレードのブレード優先度より高いか判断するステップと、
    (e)一受信ブレードが、前記受信したマスタークレームメッセージから取得したブレード優先度がどれも前記一受信ブレードのブレード優先度より高くない判断するとそれに応じて、前記一受信ブレードの状態を新しいマスターブレードに設定するステップと、
    (f)前記一受信ブレードが、第2の仮想アプリケーション分配シャーシメッセージを前記仮想アプリケーション分配シャーシの他のブレードに送信する、前記第2の仮想アプリケーション分配シャーシメッセージは前記一受信ブレードの新しいマスターブレードのステータスを示す、ステップとを有する、システム。
  22. 前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、
    前記スレーブブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信し、
    前記マスターブレードは、正常に動作しているとき、前記仮想アプリケーション分配シャーシ中の他の各ブレードに仮想アプリケーション分配シャーシメッセージを送信する、
    請求項21に記載のシステム。
  23. 前記複数のブレードはマスターブレードと一又は複数のスレーブブレードを有し、
    前記判断するステップ(b)は、さらに、
    (b1)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記仮想アプリケーション分配シャーシの各スレーブブレードから受信されたか判断するステップと、
    (b2)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に一スレーブノードから受信しなかったとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを「故障中」とマークするステップと、
    (b3)前記仮想アプリケーション分配シャーシメッセージが前記所定時間内に前記一スレーブノードから受信したとの判断に応じて、前記仮想アプリケーション分配シャーシメッセージを受信した各ブレードが、前記一スレーブブレードを正常に動作しているとマークするステップとを実行させる、
    請求項21に記載のシステム。
  24. 前記判断するステップ(d)と設定するステップ(e)は、
    (d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、
    (e1)前記一受信ブレードのブレード優先度が前記マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、
    (e2)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを実行させる、
    請求項21に記載のシステム。
  25. 前記判断するステップ(d)と設定するステップ(e)は、
    (d1)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度を前記受信ブレードのブレード優先度と比較するステップと、
    (e1)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より高いと判断するとそれに応じて、前記一受信ブレードのスレーブステータスを維持するステップと、
    請求項24に記載のシステム。
  26. 各マスタークレームメッセージはさらに前記受信ブレードのブレード識別を有し、
    前記比較するステップ(d1)、くり返すステップ(e1)、設定するステップ(e2)は、
    (d1i)前記一受信ブレードが、一マスタークレームメッセージから取得したブレード優先度が前記受信ブレードのブレード優先度と等しいと判断するステップと、
    (d1ii)前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度と等しいと判断するとそれに応じて、前記一マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に小さいか判断するステップと、
    (e1i)前記マスタークレームメッセージから取得したブレード優先度が前記一受信ブレードのブレード優先度より数値的に低いと判断するとそれに応じて、他の受信したマスタークレームメッセージと比較するステップ(d1)をくり返すステップと、
    (e2i)前記一受信ブレードのブレード優先度が前記受信した他の受信した各マスタークレームメッセージから取得したブレード優先度より高いと、又は等しく数値的には低いと判断するとそれに応じて、前記一受信ブレードを新しいマスターブレードに設定するステップとを有する、
    請求項25に記載のシステム。
  27. 前記送信するステップ(f)は、
    (f1)前記複数のブレードのうちの一スレーブブレードが、第2の仮想アプリケーション分配シャーシメッセージメッセージが第2の所定時間内に受信されたか判断するステップと、
    (f2)前記一スレーブブレードが、前記第2の仮想アプリケーション分配シャーシメッセージが前記第2の所定時間内に受信されないと判断するとそれに応じて、前記一スレーブブレードのステータスを新しいマスターブレードに設定し、前記一スレーブブレードが前記仮想アプリケーション分配シャーシ中の他のブレードに第2の仮想アプリケーション分配シャーシメッセージを送信するステップとを有する、
    請求項21に記載のシステム。
  28. さらに、
    (g)新しいブレードを前記仮想アプリケーション分配シャーシに追加するステップと、
    (h)前記新しいブレードが、前記仮想アプリケーション分配シャーシ中の他の各ブレードに第2のマスタークレームメッセージを送信するステップと、
    (i)前記新しいブレードから第2のマスタークレームメッセージを受信するとそれに応じて、前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされているか判断するステップと、
    (j)前記他の各ブレードが、前記マスターブレードが正常に動作しているとマークされていると判断するとそれに応じて、前記第2のマスタークレームメッセージを無視し、そうでなければ送信するステップ(c)、判断するステップ(d)、設定するステップ(e)、及び送信するステップ(f)を実行するステップとを有する、
    請求項21に記載のシステム。
  29. 前記複数のブレードは、データネットワーク内の前記仮想アプリケーション分配シャーシとして動作可能に結合され、前記データネットワークはネットワークスイッチを有し、
    前記コンピュータプログラム製品は、さらに、
    (g)前記複数のブレードの第1のブレードをアクティブブレードとして仮想アドレスに割り当て、前記複数のブレードの第2のブレードをバックアップブレードとして前記仮想アドレスに割り当て、前記仮想アドレス宛てのサービス要求は前記ネットワークスイッチにより前記第1のブレードに送信される、ステップを有する、
    請求項21に記載のシステム。
  30. さらに、
    (h)各ブレードが、前記仮想アプリケーション分配シャーシメッセージが所定時間内に前記第1のブレードから受信されなかったと判断するステップと、
    (i)前記仮想アプリケーション分配シャーシが前記所定時間内に前記第1のブレードから受信されなかったとの判断に応じて、前記第2のブレードのステータスを前記仮想アドレスのアクティブブレードに変更するステップと、
    (j)前記ネットワークスイッチに仮想アドレス変更メッセージを送信して、前記ネットワークスイッチに前記仮想アドレス宛のサービス要求は前記第2のブレードに送信するように通知するステップとを有する、
    請求項29に記載のシステム。
JP2013548629A 2011-01-11 2012-01-10 仮想アプリケーションデリバリシャーシシステム Active JP5948345B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201113004861A 2011-01-11 2011-01-11
US13/004,861 2011-01-11
PCT/US2012/020847 WO2012097015A2 (en) 2011-01-11 2012-01-10 Virtual application delivery chassis system

Publications (2)

Publication Number Publication Date
JP2014510324A true JP2014510324A (ja) 2014-04-24
JP5948345B2 JP5948345B2 (ja) 2016-07-06

Family

ID=46456090

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013548629A Active JP5948345B2 (ja) 2011-01-11 2012-01-10 仮想アプリケーションデリバリシャーシシステム

Country Status (5)

Country Link
US (5) US8266235B2 (ja)
EP (1) EP2663919B1 (ja)
JP (1) JP5948345B2 (ja)
CN (1) CN102708004B (ja)
WO (1) WO2012097015A2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016192670A (ja) * 2015-03-31 2016-11-10 株式会社メガチップス 受信装置
JP6611995B1 (ja) * 2018-10-29 2019-11-27 三菱電機株式会社 通信システム、通信装置、及びプログラム
CN110716818A (zh) * 2019-09-30 2020-01-21 腾讯科技(深圳)有限公司 一种异常处理方法、装置、硬件保护设备及存储介质

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US9215275B2 (en) 2010-09-30 2015-12-15 A10 Networks, Inc. System and method to balance servers based on server load status
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
EP2663919B1 (en) 2011-01-11 2019-07-03 A10 Networks Inc. Virtual application delivery chassis system
US9154577B2 (en) 2011-06-06 2015-10-06 A10 Networks, Inc. Sychronization of configuration file of virtual application distribution chassis
US9489222B2 (en) * 2011-08-24 2016-11-08 Radware, Ltd. Techniques for workload balancing among a plurality of physical machines
US8897154B2 (en) 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
CN108027805B (zh) 2012-09-25 2021-12-21 A10网络股份有限公司 数据网络中的负载分发
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
JP5956940B2 (ja) * 2013-02-13 2016-07-27 日本電信電話株式会社 冗長化システムおよび現用機決定方法
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
WO2014144837A1 (en) 2013-03-15 2014-09-18 A10 Networks, Inc. Processing data packets using a policy based network path
WO2014179753A2 (en) 2013-05-03 2014-11-06 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
WO2015096043A1 (zh) 2013-12-24 2015-07-02 华为技术有限公司 一种部署增值业务的方法、网络设备及增值业务设备
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US10742559B2 (en) 2014-04-24 2020-08-11 A10 Networks, Inc. Eliminating data traffic redirection in scalable clusters
US9961130B2 (en) 2014-04-24 2018-05-01 A10 Networks, Inc. Distributed high availability processing methods for service sessions
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
WO2016099530A1 (en) * 2014-12-19 2016-06-23 Hewlett Packard Enterprise Development Lp Electronic form to collect a client requirement associated with network traffic management
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
US10318288B2 (en) 2016-01-13 2019-06-11 A10 Networks, Inc. System and method to process a chain of network applications
CN107819628B (zh) * 2017-11-16 2018-07-13 国网山东省电力公司 一种基于互逆环路备份的认证服务器逃生系统和方法
US11082882B2 (en) * 2019-01-18 2021-08-03 Lg Electronics Inc. Method for transmitting quality of service state report by wireless node in wireless communication system and apparatus therefor
US11323507B2 (en) * 2020-04-07 2022-05-03 Supercell Oy Server system and method of managing server system
GB2600089A (en) * 2020-10-07 2022-04-27 Metaswitch Networks Ltd Processing communication sessions

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0644090A (ja) * 1992-07-27 1994-02-18 Toshiba Corp マスタスレーブ計算機システム及びマスタ選定制御方法
JP2002278787A (ja) * 2001-03-22 2002-09-27 Nec Corp マスタ/スレーブ動的構成制御方式
JP2003345640A (ja) * 2002-05-28 2003-12-05 Mitsubishi Electric Corp データベースバックアップシステム
JP2007257023A (ja) * 2006-03-20 2007-10-04 Nec Corp サーバ多重化システムおよびサーバ多重化方法
JP2009003923A (ja) * 2007-05-18 2009-01-08 Nec Infrontia Corp スロットインターフェースアクセス装置、その方法及びそのプログラム並びに主装置の冗長構成及び代替方法

Family Cites Families (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4475192A (en) 1982-02-16 1984-10-02 At&T Bell Laboratories Data packet flow control scheme for switching networks
JPS5948345A (ja) 1982-08-07 1984-03-19 ハインリツヒ・シユネル 帯状連続製品の巻取装置
US5042032A (en) 1989-06-23 1991-08-20 At&T Bell Laboratories Packet route scheduling in a packet cross connect switch system for periodic and statistical packets
US5732041A (en) 1993-08-19 1998-03-24 Mmc Networks, Inc. Memory interface unit, shared memory switch system and associated method
US5822512A (en) * 1995-05-19 1998-10-13 Compaq Computer Corporartion Switching control in a fault tolerant system
US6134217A (en) 1996-04-15 2000-10-17 The Regents Of The University Of California Traffic scheduling system and method for packet-switched networks with fairness and low latency
US5859835A (en) 1996-04-15 1999-01-12 The Regents Of The University Of California Traffic scheduling system and method for packet-switched networks
US5935207A (en) 1996-06-03 1999-08-10 Webtv Networks, Inc. Method and apparatus for providing remote site administrators with user hits on mirrored web sites
US5960174A (en) * 1996-12-20 1999-09-28 Square D Company Arbitration method for a communication network
US5909686A (en) 1997-06-30 1999-06-01 Sun Microsystems, Inc. Hardware-assisted central processing unit access to a forwarding database
US6047000A (en) 1997-07-24 2000-04-04 The Hong Kong University Of Science & Technology Packet scheduling system
US6118768A (en) 1997-09-26 2000-09-12 3Com Corporation Apparatus and methods for use therein for an ISDN LAN modem utilizing browser-based configuration with adaptation of network parameters
US6359861B1 (en) 1997-10-08 2002-03-19 Massachusetts Institute Of Technology Method for scheduling transmissions in a buffered switch
JP3927714B2 (ja) 1997-12-31 2007-06-13 ユーティースターコム コリア リミテッド 予想型/保障型サービスを提供するためのトラフィック制御方法
US6058116A (en) 1998-04-15 2000-05-02 3Com Corporation Interconnected trunk cluster arrangement
US6532213B1 (en) 1998-05-15 2003-03-11 Agere Systems Inc. Guaranteeing data transfer delays in data packet networks using earliest deadline first packet schedulers
US6314501B1 (en) 1998-07-23 2001-11-06 Unisys Corporation Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory
US6594701B1 (en) 1998-08-04 2003-07-15 Microsoft Corporation Credit-based methods and systems for controlling data flow between a sender and a receiver with reduced copying of data
US6580721B1 (en) 1998-08-11 2003-06-17 Nortel Networks Limited Routing and rate control in a universal transfer mode network
CA2245367A1 (en) 1998-08-19 2000-02-19 Newbridge Networks Corporation Two-component bandwidth scheduler having application in multi-class digital communication systems
US6970424B2 (en) 1998-11-10 2005-11-29 Extreme Networks Method and apparatus to minimize congestion in a packet switched network
US6714517B1 (en) 1998-11-10 2004-03-30 Extreme Networks Method and apparatus for interconnection of packet switches with guaranteed bandwidth
US6654374B1 (en) 1998-11-10 2003-11-25 Extreme Networks Method and apparatus to reduce Jitter in packet switched networks
US6560230B1 (en) 1999-02-01 2003-05-06 Redback Networks Inc. Packet scheduling methods and apparatus
US6470016B1 (en) 1999-02-09 2002-10-22 Nortel Networks Limited Servicing output queues dynamically according to bandwidth allocation in a frame environment
US6813268B1 (en) 1999-05-21 2004-11-02 Broadcom Corporation Stacked network switch configuration
JP4078755B2 (ja) 1999-06-02 2008-04-23 株式会社日立製作所 帯域監視方法
US6650641B1 (en) 1999-07-02 2003-11-18 Cisco Technology, Inc. Network address translation using a forwarding agent
US6532501B1 (en) 1999-09-30 2003-03-11 Silicon Graphics, Inc. System and method for distributing output queue space
US6577596B1 (en) 1999-11-30 2003-06-10 Telefonaktiebolaget Ln Ericsson (Publ) Method and apparatus for packet delay reduction using scheduling and header compression
US6735206B1 (en) 2000-01-10 2004-05-11 Sun Microsystems, Inc. Method and apparatus for performing a fast service lookup in cluster networking
US6922408B2 (en) 2000-01-10 2005-07-26 Mellanox Technologies Ltd. Packet communication buffering with dynamic flow control
US6735210B1 (en) 2000-02-18 2004-05-11 3Com Corporation Transmit queue caching
US6674721B1 (en) 2000-03-07 2004-01-06 Cisco Technology, Inc. Method and apparatus for scheduling packets being sent from a component of a packet switching system
US6940861B2 (en) 2000-03-14 2005-09-06 General Instrument Corporation Data rate limiting
US6993587B1 (en) * 2000-04-07 2006-01-31 Network Appliance Inc. Method and apparatus for election of group leaders in a distributed network
JP4484317B2 (ja) 2000-05-17 2010-06-16 株式会社日立製作所 シェーピング装置
US6765915B1 (en) 2000-05-25 2004-07-20 Conexant Systems, Inc. Packet communication scheduling with hierarchical tunnels
JP3640160B2 (ja) 2000-07-26 2005-04-20 日本電気株式会社 ルータ装置及びそれに用いる優先制御方法
US20020075875A1 (en) 2000-09-22 2002-06-20 Narad Networks, Inc. Broadband system with transmission scheduling and flow control
US6888806B1 (en) 2000-11-22 2005-05-03 Motorola, Inc. Method and system for scheduling packets for transmission from a wireless communication platform
US6785232B1 (en) 2000-11-27 2004-08-31 Orckit Communications Ltd. Rate control in transmission of packet data over an ATM network
US7236491B2 (en) 2000-11-30 2007-06-26 Industrial Technology Research Institute Method and apparatus for scheduling for packet-switched networks
JP3526269B2 (ja) 2000-12-11 2004-05-10 株式会社東芝 ネットワーク間中継装置及び該中継装置における転送スケジューリング方法
US20020188718A1 (en) * 2001-05-04 2002-12-12 Rlx Technologies, Inc. Console information storage system and method
TWI233734B (en) 2001-07-10 2005-06-01 Ind Tech Res Inst System and method of stacking network switches
US7139267B2 (en) 2002-03-05 2006-11-21 Industrial Technology Research Institute System and method of stacking network switches
US20030023898A1 (en) 2001-07-16 2003-01-30 Jacobs Dean Bernard Layered architecture for data replication
US6944785B2 (en) * 2001-07-23 2005-09-13 Network Appliance, Inc. High-availability cluster virtual server system
US20030158886A1 (en) 2001-10-09 2003-08-21 Walls Jeffrey J. System and method for configuring a plurality of computers that collectively render a display
US6934864B2 (en) * 2002-01-11 2005-08-23 International Business Machines Corporation System and method for co-operative thermal management of electronic devices within a common housing
US7188160B2 (en) 2002-01-22 2007-03-06 Ericsson Ab Method and apparatus for updating network device configuration information in a network management system
US6892309B2 (en) 2002-02-08 2005-05-10 Enterasys Networks, Inc. Controlling usage of network resources by a user at the user's entry point to a communications network based on an identity of the user
US7421478B1 (en) 2002-03-07 2008-09-02 Cisco Technology, Inc. Method and apparatus for exchanging heartbeat messages and configuration information between nodes operating in a master-slave configuration
TWI231424B (en) * 2002-06-28 2005-04-21 Quanta Comp Inc Management and preparation system of blade server
AU2003254004A1 (en) 2002-07-18 2004-02-09 Koninklijke Philips Electronics N.V. Adaptive dropping of prioritized transmission packets
US7154886B2 (en) * 2002-07-22 2006-12-26 Qlogic Corporation Method and system for primary blade selection in a multi-module fiber channel switch
US8064471B2 (en) 2002-09-06 2011-11-22 Lantiq Deutschland Gmbh Configurable fast ethernet and gigabit ethernet data port
US7765299B2 (en) * 2002-09-16 2010-07-27 Hewlett-Packard Development Company, L.P. Dynamic adaptive server provisioning for blade architectures
CA2404191A1 (en) 2002-09-19 2004-03-19 Alcatel Canada Inc. Methods and apparatus for configuration change management in communications networks
US7523184B2 (en) 2002-12-31 2009-04-21 Time Warner Cable, Inc. System and method for synchronizing the configuration of distributed network management applications
WO2004095304A1 (en) * 2003-04-23 2004-11-04 Dot Hill Systems Corporation Network storage appliance with integrated redundant servers and storage controllers
US7379460B2 (en) 2003-06-06 2008-05-27 Intel Corporation Packet processing system
US7636917B2 (en) 2003-06-30 2009-12-22 Microsoft Corporation Network load balancing with host status information
US7567504B2 (en) 2003-06-30 2009-07-28 Microsoft Corporation Network load balancing with traffic routing
US20060031506A1 (en) 2004-04-30 2006-02-09 Sun Microsystems, Inc. System and method for evaluating policies for network load balancing
US7660824B2 (en) 2004-05-20 2010-02-09 Bea Systems, Inc. System and method for performing batch configuration changes
US7624163B2 (en) 2004-10-21 2009-11-24 Apple Inc. Automatic configuration information generation for distributed computing environment
US20060101372A1 (en) 2004-11-10 2006-05-11 Dell Products L.P. Method, system, and software for determining platform management functionality
US8458467B2 (en) * 2005-06-21 2013-06-04 Cisco Technology, Inc. Method and apparatus for adaptive application message payload content transformation in a network infrastructure element
US7917624B2 (en) 2004-11-18 2011-03-29 Sanjay M. Gidwani Wireless network having control plane segregation
US7725934B2 (en) * 2004-12-07 2010-05-25 Cisco Technology, Inc. Network and application attack protection based on application layer message inspection
US9628393B2 (en) * 2005-01-17 2017-04-18 Singapore Technologies General IP (Singapore) Pte. Ltd Network user priority assignment system
JP4239987B2 (ja) * 2005-02-24 2009-03-18 ブラザー工業株式会社 ネットワークシステム、デバイス、およびプログラム
US7552202B2 (en) 2005-03-10 2009-06-23 International Business Machines Corporation System and method to uniquely identify identically configured branches in a distributed enterprise
TWI277324B (en) 2005-10-19 2007-03-21 Ind Tech Res Inst Network packet storage method and network packet transmitting apparatus using the same
US7797412B2 (en) 2006-10-25 2010-09-14 Oracle America Inc. Method and system for managing server configuration data
US8028193B2 (en) * 2007-12-13 2011-09-27 International Business Machines Corporation Failover of blade servers in a data center
CN101252506B (zh) 2007-12-29 2012-07-04 中国建设银行股份有限公司 一种数据传输系统
US7849178B2 (en) * 2008-04-11 2010-12-07 International Business Machines Corporation Grid computing implementation
US7949893B1 (en) 2008-04-30 2011-05-24 Netapp, Inc. Virtual user interface failover
US20100094962A1 (en) 2008-10-15 2010-04-15 Patentvc Ltd. Internet backbone servers with edge compensation
SG172118A1 (en) * 2008-12-18 2011-07-28 Ericsson Telefon Ab L M Network node and method for controlling resources in a communication network
US20100162036A1 (en) * 2008-12-19 2010-06-24 Watchguard Technologies, Inc. Self-Monitoring Cluster of Network Security Devices
US7738504B1 (en) * 2008-12-22 2010-06-15 The United States Of America As Represented By The Director National Security Agency Method of establishing and updating master node in computer network
EP2371109A1 (en) 2008-12-30 2011-10-05 Thomson Licensing Synchronization of configurations for display systems
US8037364B2 (en) * 2009-01-09 2011-10-11 International Business Machines Corporation Forced management module failover by BMC impeachment consensus
US8108503B2 (en) * 2009-01-14 2012-01-31 International Business Machines Corporation Dynamic load balancing between chassis in a blade center
CN101519078B (zh) 2009-03-13 2011-06-29 国电南瑞科技股份有限公司 综合监控系统多区域数据同步方法
US8122289B2 (en) 2009-04-09 2012-02-21 Telefonaktiebolaget L M Ericsson (Publ) Load balancing and high availability of compute resources
US8825889B2 (en) * 2009-05-11 2014-09-02 Hewlett-Packard Development Company, L.P. Network traffic rate limiting system and method
US9600341B2 (en) 2009-09-14 2017-03-21 Red Hat, Inc. Transaction sticky load balance policies
US20110075571A1 (en) * 2009-09-30 2011-03-31 Fang Hao Distributed virtual home agent for mobile internet protocol
US8862697B2 (en) 2009-12-31 2014-10-14 Aten International Co., Ltd. Intelligent network management platform for IKVM servers
EP2605458B1 (en) 2010-08-11 2016-06-22 Fujitsu Limited Management device, information processing device, control method and control program
EP2663919B1 (en) 2011-01-11 2019-07-03 A10 Networks Inc. Virtual application delivery chassis system
US8743885B2 (en) 2011-05-03 2014-06-03 Cisco Technology, Inc. Mobile service routing in a network environment
US9154577B2 (en) 2011-06-06 2015-10-06 A10 Networks, Inc. Sychronization of configuration file of virtual application distribution chassis
US8897154B2 (en) 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US10951726B2 (en) 2013-07-31 2021-03-16 Citrix Systems, Inc. Systems and methods for performing response based cache redirection
US9614745B2 (en) 2014-01-09 2017-04-04 Citrix Systems, Inc. Systems and methods for cloud-based probing and diagnostics
US9961130B2 (en) 2014-04-24 2018-05-01 A10 Networks, Inc. Distributed high availability processing methods for service sessions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0644090A (ja) * 1992-07-27 1994-02-18 Toshiba Corp マスタスレーブ計算機システム及びマスタ選定制御方法
JP2002278787A (ja) * 2001-03-22 2002-09-27 Nec Corp マスタ/スレーブ動的構成制御方式
JP2003345640A (ja) * 2002-05-28 2003-12-05 Mitsubishi Electric Corp データベースバックアップシステム
JP2007257023A (ja) * 2006-03-20 2007-10-04 Nec Corp サーバ多重化システムおよびサーバ多重化方法
JP2009003923A (ja) * 2007-05-18 2009-01-08 Nec Infrontia Corp スロットインターフェースアクセス装置、その方法及びそのプログラム並びに主装置の冗長構成及び代替方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016192670A (ja) * 2015-03-31 2016-11-10 株式会社メガチップス 受信装置
JP6611995B1 (ja) * 2018-10-29 2019-11-27 三菱電機株式会社 通信システム、通信装置、及びプログラム
WO2020089964A1 (ja) * 2018-10-29 2020-05-07 三菱電機株式会社 通信システム、通信装置、方法、及びプログラム
CN110716818A (zh) * 2019-09-30 2020-01-21 腾讯科技(深圳)有限公司 一种异常处理方法、装置、硬件保护设备及存储介质
CN110716818B (zh) * 2019-09-30 2022-02-11 腾讯科技(深圳)有限公司 一种异常处理方法、装置、硬件保护设备及存储介质

Also Published As

Publication number Publication date
EP2663919A4 (en) 2016-07-27
US10530847B2 (en) 2020-01-07
US8849938B2 (en) 2014-09-30
US20170013051A1 (en) 2017-01-12
US20120297240A1 (en) 2012-11-22
JP5948345B2 (ja) 2016-07-06
CN102708004B (zh) 2017-11-24
EP2663919A2 (en) 2013-11-20
US20180054478A1 (en) 2018-02-22
US9838472B2 (en) 2017-12-05
US20160062855A1 (en) 2016-03-03
EP2663919B1 (en) 2019-07-03
WO2012097015A2 (en) 2012-07-19
US8266235B2 (en) 2012-09-11
CN102708004A (zh) 2012-10-03
US9477563B2 (en) 2016-10-25
US20120179770A1 (en) 2012-07-12
WO2012097015A3 (en) 2012-10-04

Similar Documents

Publication Publication Date Title
JP5948345B2 (ja) 仮想アプリケーションデリバリシャーシシステム
US9912538B2 (en) Synchronization of configuration file of virtual application distribution chassis
US9106561B2 (en) Configuration of a virtual service network
JP5855663B2 (ja) サーバ負荷状態に基づきサーバをバランスさせるシステムと方法
JP5963766B2 (ja) 動的サービス応答時間に基づきサーバにアプリケーショントラフィックを配信するシステムと方法
US7978631B1 (en) Method and apparatus for encoding and mapping of virtual addresses for clusters
CN103139139B (zh) 用户设备间业务迁移的方法和装置
EP2252093B1 (en) Method for enabling mobility of client devices in large scale unified networks
US20130007253A1 (en) Method, system and corresponding device for load balancing
CN103581245A (zh) 一种内容分发网络内容分发的方法及系统
EP3095229B1 (en) Method and nodes for configuring a communication path for a media service
JPWO2010064644A1 (ja) クラスタ制御システム、クラスタ制御方法、及びプログラム
US20120191778A1 (en) Content distribution network for supporting peer-to-peer live streaming
WO2017020790A1 (zh) 多屏控制方法及装置
EP2706737B1 (en) Method, device, and system for obtaining address of sip registration server
WO2014015525A1 (zh) 一种用户在线状态的查询方法和装置
US10637717B2 (en) Fault resilient virtual broadband gateway
JP2012039218A (ja) ランデブーサーバ装置及び通信システム及び通信方法及び通信プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140828

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150915

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151208

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: 20160510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160606

R150 Certificate of patent or registration of utility model

Ref document number: 5948345

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250