JP5220920B2 - クライアント・アプリケーション・プログラムがインターネット・プロトコル(ip)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法、装置、及びソフトウェア - Google Patents

クライアント・アプリケーション・プログラムがインターネット・プロトコル(ip)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法、装置、及びソフトウェア Download PDF

Info

Publication number
JP5220920B2
JP5220920B2 JP2011515277A JP2011515277A JP5220920B2 JP 5220920 B2 JP5220920 B2 JP 5220920B2 JP 2011515277 A JP2011515277 A JP 2011515277A JP 2011515277 A JP2011515277 A JP 2011515277A JP 5220920 B2 JP5220920 B2 JP 5220920B2
Authority
JP
Japan
Prior art keywords
application program
address
instance
server application
client application
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.)
Active
Application number
JP2011515277A
Other languages
English (en)
Other versions
JP2011526710A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2011526710A publication Critical patent/JP2011526710A/ja
Application granted granted Critical
Publication of JP5220920B2 publication Critical patent/JP5220920B2/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/1027Persistence of sessions during load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法、装置又はソフトウェアに関する。
クライアント/サーバ・コンピュータ・システムにおいては、サーバ・システムの帯域幅を増大させるために、多くのサーバ・アプリケーション・プログラムのインスタンスが提供される場合がある。サーバ・アプリケーション・プログラムの全てのインスタンスは、同一のIPアドレスを共有し、同一のネットワーク・ポート上で通信出来るように構成される。ネットワーク・ポートは、受信コンピュータ上で稼働する所与のプロセス又はアプリケーションに対して着信するネットワーク・データ・トラフィックを組み合わせるために用いられる識別番号である。すなわち、サーバ・アプリケーション・プログラムのいくつかのインスタンスは、アクティブであり、所与のクライアント・アプリケーション・プログラムにより用いられるIPアドレス及びポート上で待機状態である。クライアント・アプリケーション・プログラムがIPアドレス及びポートに接続するときに、サーバ・インスタンスの一つが選択され、クライアント・アプリケーション・プログラムとの接続が確立される。
クライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラムの選択されたインスタンスとの間におけるその後の対話の際に、データ又は他のオブジェクトが、サーバ・アプリケーション・プログラムの選択されたインスタンスのための永続的ストレージ内に生成される可能性がある。処理における更なるステップが、そのようなデータ又はオブジェクトに依存することがある。従って、そのようなオブジェクトを保存するために、クライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラムの選択されたインスタンスとの間の接続が維持されなければならない。
一つの問題は、接続が解除された又は失われた場合に、クライアント・アプリケーション・プログラムがサーバ・アプリケーション・プログラムの同一のインスタンスに再接続できなくなり、生成されたデータ又はオブジェクトの要素が失われる場合があることである。さらに、接続を維持するには、相当な量のネットワーク及びサーバ・コンピュータ・リソースが必要となる。
本発明の一実施形態は、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法であって、
a)第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのためのIPネットワーク・アスセスを提供するステップと、
b)クライアント・アプリケーション・プログラムからの第1の要求に応答して、第1のIPアドレスを介して、クライアント・アプリケーション・プログラムと複数のサーバ・アプリケーション・プログラム・インスタンスのうちの選択された1つとの接続を可能にするステップと、
c)クライアント・アプリケーション・プログラムとの通信のために、選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを選択されたサーバ・アプリケーション・プログラム・インスタンスに割り当てるステップと、
d)第2のIPアドレスを介して、選択されたサーバ・アプリケーション・プログラム・インスタンスへのIPネットワーク・アクセスを提供するステップと、
e)第2のIPアドレスを介して、クライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラムの選択されたインスタンスとの再接続を可能にするステップと、
を含む方法を提供する。
サーバ・アプリケーション・プログラムの選択されたインスタンスからの要求に応答して、第2のIPアドレスを提供することができる。クライアント・アプリケーション・プログラムからの対応する要求に応答して、サーバ・アプリケーション・プログラムの選択されたインスタンスからの要求を行うことができる。第2のIPアドレスは、所定の未使用IPアドレスのセットから選択することができる。所定の未使用IPアドレスのセットは、1つ又は複数の関連ドメイン・ネーム・サーバ(DNS)から得られる使用済みIPアドレスのセットから決定することができる。
クライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラムの選択されたインスタンスとの間の処理が完了したときには、その後の使用に対して第2のIPアドレスを解放することができる。クライアント・アプリケーション・プログラムからの要求に応答に応答して、第2のIPアドレスを解放することができる。IPネットワーク及びアドレスは、IPバージョン6(IPv6)準拠のものとすることができる。
別の実施形態は、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法であって、
a)第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのうちの選択された1つに接続するステップと、
b)選択されたサーバ・アプリケーション・プログラム・インスタンスから、選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを要求するステップと、
c)第2のIPアドレスの受信に応答して、選択されたサーバ・アプリケーション・プログラム・インスタンスとの接続を閉じるステップと、
d)第2のIPアドレスを介してサーバ・アプリケーション・プログラムの選択されたインスタンスに再接続するステップと、
を含む方法を提供する。
更なる実施形態は、サーバ・アプリケーション・プログラム・インスタンスがインターネット・プロトコル(IP)ネットワーク上でクライアント・アプリケーション・プログラムのための接続を提供する方法であって、
a)サーバ・アプリケーション・プログラムの複数の他のインスタンスと共通の第1のIPアドレスのためのポートを監視するステップと、
b)クライアント・アプリケーション・プログラムからの第1の要求に応答して、第1の接続を提供する第1のIPアドレスを介してクライアント・アプリケーション・プログラムに接続するステップと、
c)クライアント・アプリケーション・プログラムからの第2の要求に応答して、サーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを取得し、第2のIPアドレスをクライアント・アプリケーション・プログラムに通信するステップと、
d)クライアント・アプリケーション・プログラムからの第3の要求に応答して、第1の接続を閉じるステップと、
e)第2のIPアドレスのためのポートを監視するステップと、
f)クライアント・アプリケーション・プログラムからの第4の要求に応答して、第2のIPアドレスを介してクライアント・アプリケーション・プログラムに再接続するステップと、
を含む方法を提供する。
別の実施形態は、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための装置であって、第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのためのIPネットワーク・アクセスを提供し、クライアント・アプリケーション・プログラムからの第1の要求に応答して、第1のIPアドレスを介して、クライアント・アプリケーション・プログラムと複数のサーバ・アプリケーション・プログラム・インスタンスのうちの選択された1つとの接続を可能にし、クライアント・アプリケーション・プログラムとの通信のために、選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを選択されたサーバ・アプリケーション・プログラム・インスタンスに割り当て、第2のIPアドレスを介して、選択されたサーバ・アプリケーション・プログラム・インスタンスへのIPネットワーク・アクセスを提供し、第2のIPアドレスを介して、クライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラムの選択されたインスタンスとの再接続を可能にするように作動可能な装置を提供する。
更なる実施形態は、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための装置であって、第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのうちの選択された1つに接続し、選択されたサーバ・アプリケーション・プログラム・インスタンスから、選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを要求し、第2のIPアドレスの受信に応答して、選択されたサーバ・アプリケーション・プログラム・インスタンスとの接続を閉じ、第2のIPアドレスを介してサーバ・アプリケーション・プログラムの選択されたインスタンスに再接続するように作動可能な装置を提供する。
別の実施形態は、サーバ・アプリケーション・プログラム・インスタンスがインターネット・プロトコル(IP)ネットワーク上でクライアント・アプリケーション・プログラムのための接続を提供する装置であって、サーバ・アプリケーション・プログラムの複数の他のインスタンスと共通の第1のIPアドレスのためのポートを監視し、クライアント・アプリケーション・プログラムからの第1の要求に応答して、第1の接続を提供する第1のIPアドレスを介してクライアント・アプリケーション・プログラムに接続し、クライアント・アプリケーション・プログラムからの第2の要求に応答して、サーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを取得して第2のIPアドレスをクライアント・アプリケーション・プログラムに通信し、クライアント・アプリケーション・プログラムからの第3の要求に応答して、第1の接続を閉じ、第2のIPアドレスのためのポートを監視し、クライアント・アプリケーション・プログラムからの第4の要求に応答して、第2のIPアドレスを介してクライアント・アプリケーション・プログラムに再接続するように作動可能な装置を提供する。
更なる実施形態は、コンピュータ上で稼働したときに、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法を実施するソフトウエア・コード部分を含む、デジタル・コンピュータの内部メモリにロード可能なコンピュータ・プログラムであって、該方法は、
a)第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのためのIPネットワーク・アスセスを提供するステップと、
b)クライアント・アプリケーション・プログラムからの第1の要求に応答して、第1のIPアドレスを介して、クライアント・アプリケーション・プログラムと複数のサーバ・アプリケーション・プログラム・インスタンスのうちの選択された1つとの接続を可能にするステップと、
c)クライアント・アプリケーション・プログラムとの通信のために、選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを選択されたサーバ・アプリケーション・プログラム・インスタンスに割り当てるステップと、
d)第2のIPアドレスを介して、選択されたサーバ・アプリケーション・プログラム・インスタンスへのIPネットワーク・アクセスを提供するステップと、
e)第2のIPアドレスを介して、クライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラムの選択されたインスタンスとの再接続を可能にするステップと、
を含む、コンピュータ・プログラムを提供する。
別の実施形態は、コンピュータ上で稼働したときに、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための装置を提供するソフトウエア・コード部分を含む、デジタル・コンピュータの内部メモリにロード可能なコンピュータ・プログラムであって、該装置は、第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのうちの選択された1つに接続し、選択されたサーバ・アプリケーション・プログラム・インスタンスから、選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを要求し、第2のIPアドレスの受信に応答して、選択されたサーバ・アプリケーション・プログラム・インスタンスとの接続を閉じ、第2のIPアドレスを介してサーバ・アプリケーション・プログラムの選択されたインスタンスに再接続するように作動可能である、コンピュータ・プログラムを提供する。
本発明の好ましい実施形態は、所与のサーバが多数のIPアドレスを持つことができるようにするIPv6プロトコルの特徴を用いる。この特徴は、ソケット/接続をサーバに開放し続けることなくクライアントが特定のサーバ・インスタンスへのアクセスを再確立する能力を提供するために、特定のクライアントのためのサーバ・インスタンスによる固有の一時的なIPアドレスを割り当てるのに用いることができる。従って、そのようなソケット/接続を開放し続けるのに必要なルータ及び他の物理的リソースを、代わりに他のユーザが利用できるようにすることができる。その後に、クライアントは、割り当てられたIPアドレスの使用によって、以前に用いられた特定のサーバ・プログラム・インスタンスとのコンタクトを再開することができる。
ネットワーク化されたコンピュータ・システムの概略図である。 図1のコンピュータ・システムにおけるサーバ・コンピュータのためのソフトウェア・コンポーネントの概略図である。 図1のコンピュータ・システムにおけるクライアント・コンピュータのためのソフトウェア・コンポーネントの概略図である。 図1のコンピュータ・システムにおけるクライアント・コンピュータとサーバ・コンピュータとの間で用いられる命令を示す表である。 図2のサーバ・コンピュータのソフトウェア・コンポーネント間で用いられる命令を示す表である。 図3のクライアント・コンピュータのためのクライアント・アプリケーション・プログラムにより行われる処理を示すフローチャートである。 図3のサーバ・コンピュータのためのサーバ・アプリケーション・プログラムのインスタンスにより行われる処理を示すフローチャートである。 図2のサーバ・コンピュータのためのIPスタック管理プログラムにより行われる処理を示すフローチャートである。
本発明の実施形態は、添付の図面を参照して、単なる例として説明される。
図1を参照すると、コンピュータ・システム101は、広域ネットワーク(WAN)103に接続されたサーバ・コンピュータ102と、クライアント・コンピュータ104と、ドメイン・ネーム・サーバ(DNS)105とを含む。サーバ・コンピュータ102及びクライアント・コンピュータ104は、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)通信プロトコルを用いてネットワーク103上で通信できるように構成されたソフトウェアを用いて構成される。本実施形態においては、TCP/IPバージョン6(IPv6)プロトコルが用いられる。IPv6アドレスは、コロンで分けられた4つの16進数の8つのグループとして書かれており、典型的には、2つの論理部分、すなわち、64ビットのネットワーク・プレフィックス及び64ビットのホスト・パートから成る。ホスト・パートは、通常、サーバ・アプリケーション・プログラムのインスタンスをアドレス指定するのに用いられ、動的に変化することができ、即ち、サーバ・リソースがそのIPv6アドレスを効率的に時々変えることができる。DNS105は、www.ibm.comのようなユニバーサル・リソース・ロケータ(URL)の形式のネットワーク・アドレスを、a129:e4e2:d5c6:b216:1c22:6ff2:57ab:9e12のようなIPv6アドレスに変換することができる。
図2は、サーバ・コンピュータ102のソフトウェア・コンポーネントを更に詳細に示す。サーバ・コンピュータ102では、オペレーティング・システム201が稼働しており、オペレーティング・システム201は、本実施形態においては、インターナショナル・ビジネス・マシーンズ・コーポレーション(IBM)のz/OS(登録商標)オペレーティング・システムである。オペレーティング・システム201には、z/OS通信マネージャの形でIPスタック管理プログラム202が設けられており、オペレーティング・システム201が常駐プログラムにIPネットワーク・アクセスを提供することができるIPネットワーク・インターフェースを提供するように構成される。オペレーティング・システム201上では、サーバ・アプリケーション・プログラムの3つのインスタンス204、205、206が稼働しており、これらのインスタンスは、本実施形態においては、IBM(登録商標)CICS(登録商標)トランザクション・サーバ(CICS)アプリケーション・プログラムのインスタンスである。(IBM、z/OS及びCICSは、米国、他国、又はその両方におけるインターナショナル・ビジネス・マシーンズ・コーポレーションの商標である。) サーバ・アプリケーション・プログラムの各々のインスタンス204、205、206は、共通IPアドレスを有し、サーバ可用性を高めるためにIPスタック管理システム202によって提供される共通ポート上でリスン(listen)するように構成される。従って、サーバ・アプリケーション・プログラムのインスタンス204、205、206にアクセスするためのクライアント・コンピュータ104からの要求に応答して、サーバ・アプリケーション・プログラムの1つのインスタンス204、205、206が無作為に選択され、クライアント・コンピュータ104と接続される。クライアント・コンピュータ104とサーバ・アプリケーション・プログラムの選択されたインスタンス204、205、206との間のその後の処理の際に、生成されることがあるデータ又は他のオブジェクト207、208、209が、サーバ・アプリケーション・プログラムの選択されたインスタンス204、205、206のための永続的ストレージに保存される。このようなデータ207、208、209は、クライアント・コンピュータ104とサーバ・アプリケーション・プログラムの選択されたインスタンス204、205、206との間におけるアフィニティ又は関係性を規定する。
図3は、クライアント・コンピュータ104のソフトウェア・コンポーネントを更に詳細に示す。
クライアント・コンピュータ104では、ウェブ・ブラウザ・アプリケーション・プログラムの形式のクライアント・アプリケーション・プログラム302のためのプラットフォームを提供するオペレーティング・システム301が稼働している。ウェブ・ブラウザ302は、IPネットワーク103を介して、サーバ・アプリケーション・プログラムのインスタンス204、205、206によって提供されるサービスへのユーザ・アクセスを与える。ウェブ・ブラウザ302は、本明細書中でアフィニティ・アドレス(AA)クライアント・プラグイン303と呼ばれるプラグイン・プログラム拡張機能を更に含む。AAクライアント・プラグイン303は、ウェブ・ブラウザ302が接続されるサーバ・アプリケーション・プログラムの所与のインスタンス204、205、206のためのIPアドレスをサーバ・アプリケーション・プログラムの所与のインスタンス204、205、206に固有の新たなIPアドレスに再割り当てする要求のための機能を、ウェブ・ブラウザ302に提供するように構成される。本明細書においては、この新たなIPアドレスはアフィニティ・アドレス(AA)と呼ばれる。好ましくは、所与のサーバが複数のIPv6アドレスを持てるようにするIPv6プロトコルの特徴が活用される。IPv6アドレスは、a:b:c:d:w:x:y:zの形式であり、a,b,c,d,w,x及びyは、0000からFFFFまでの16進文字列エントリである(hex-as-character entries)。実際には、IPv6アドレスのa:b:c:d部分は、ネットワークを通じてアイテムを指し示すルータのために用いられ、w:x:y:z部分は、ルータと通信しているサーバを識別するために用いられる。サーバは、固有の一時的なIPv6アドレスを要求することができる。典型的には、サーバ・アプリケーション・プログラムのアフィニティ・アドレスのa:b:c:d部分は、サーバ・アプリケーション・プログラムの第1のIPアドレスのその部分と同一であり、w:x:y:z部分は、その時点で割り当てられていないアドレスに変更される。
AAクライアント・プラグイン303が要求したアフィニティ・アドレスを受信したときに、サーバ・アプリケーション・プログラムの所与のインスタンス204、205、206への現在の接続を閉じ、受信したアフィニティ・アドレスを介して同一のインスタンスに再接続するように構成される。この再接続によって、クライアント・アプリケーション・プログラム302とサーバ・アプリケーション・プログラムの所与のインスタンス204、205、206との間の接続を常に維持することを必要とせずに、データ207、208、209である関連する処理コンテキストを保存することが可能になる。
図4は、サーバ・アプリケーション・プログラムのインスタンス204、205、206が与えられたアプリケーション・プログラム・インターフェイス(API)によってAAクライアント・プラグイン303が利用可能な要求を示す。第1の要求(プロバイド・アフィニティ・アドレス(Provide_Affinity_Address))は、サーバ・アプリケーション・プログラムのインスタンス204、205、206が新たなアフィニティ・アドレスを提供するためのものであり、上記のように、これにより、AAクライアント・プラグイン303に新たなアフィニティ・アドレスが与えられる。第2の要求(リリース・アフィニティ・アドレス(Release_Affinity_Address))は、サーバ・アプリケーション・プログラムのインスタンス204、205、206が所与のアフィニティ・アドレスを解放するためのものである。これにより、サーバ・アプリケーション・プログラムの所与のインスタンス204、205、206が停止され、アフィニティ・アドレスがIPスタック管理プログラム202によって解放されてさらに使用できるようになる。換言すれば、このように提供されるアフィニティ・アドレスは、サーバ・アプリケーション・プログラムの所与のインスタンス204、205、206に一時的にのみ割り当てることができる。
本実施形態においては、AAクライアント・プラグイン303とサーバ・アプリケーション・プログラム204、205、206との間のAPIは、ハイパーテキスト転送プロトコル(HTTP)バージョン1.1オプション命令の拡張機能によって提供される。オプション命令は、AAクライアント・プラグイン303とサーバ・アプリケーション・プログラムのそれぞれのインスタンス204、205、206との間で、プロバイド要求及び応答とリリース要求及び応答とをHTTPメッセージ・ヘッダとして転送するために用いられる。従って、例えば、アフィニティ・アドレスを要求するために、AAクライアント・プラグイン303は、プロバイド・アフィニティ・アドレスと名付けられたヘッダを含むHTTPメッセージを送信する。サーバ・アプリケーション・プログラムのそれぞれのインスタンス204、205、206からの応答は、ヘッダ名 アフィニティ・アドレス(Affinity_Address):1:2:3:4:5:6:7:8を含むHTTPメッセージであり、1:2:3:4:5:6:7:8は、要求されたアフィニティ・アドレスである。
図2に戻ると、サーバ・アプリケーション・プログラムの各々のインスタンス204、205、206は、本明細書においてはアフィニティ・アドレス(AA)サーバ・プラグイン210、211、212と呼ばれるプラグイン・プログラム拡張機能を更に含む。さらに、通信マネージャ202は、本明細書においてアフィニティ・アドレス(AA)プロバイダ・プラグイン213と呼ばれるプラグイン・プログラム拡張機能を更に含む。AAサーバ・プラグインの各々のインスタンス210、211、212は、AAクライアント・プラグイン303とAAプロバイダ・プラグイン213との間の要求を経路指定するための機能を、サーバ・アプリケーション・プログラムの所与のインスタンス204、205、206に与えるように構成される。AAプロバイダ・プラグイン213は、アフィニティ・アドレスのセット214を識別して管理し、要求に応じて固有のアフィニティ・アドレスを提供するための機能を、通信マネージャ202に与えるように構成される。アフィニティ・アドレスの管理は、DNS105から全ての関連する使用済みIPアドレスのリストを取得することと、利用可能アドレスのセット、すなわち可能なアフィニティ・アドレスのセットを推定することとを含む。さらに、アフィニティ・アドレスを提供する要求又は解放する要求に応答して、AAプロバイダ・プラグイン213は、アフィニティ・アドレスのセット214において、及び、DNS105を用いて、それぞれにアフィニティ・アドレスの利用可能状態を更新するように構成される。
図5は、AAプロバイダ・プラグイン213が与えられたAPIによって、AAサーバ・プラグインの各々のインスタンス210、211、212に提供される要求を示す。第1の要求(ゲット・アフィニティ・アドレス(Get_Affinity_Address))は、AAクライアント・プラグイン303から受信したプロバイド・アフィニティ・アドレス要求に応答して、AAサーバ・プラグイン210、211、212によってAAプロバイダ・プラグイン213に発行される。それに応答して、AAプロバイダ・プラグイン213は、アフィニティ・アドレスを選択し、選択されたアドレスを利用不可として登録し、選択されたアドレスをAAサーバ・プラグイン210、211、212に戻す。次いで、選択されたアフィニティ・アドレスは、要求しているAAクライアント・プラグイン303に渡され、アフィニティ・アドレスを介してクライアント・アプリケーション・プログラム302とサーバ・アプリケーション・プログラムのインスタンス204、205、206との再接続を可能にするように、サーバ・アプリケーション・プログラムの所与のインスタンス204、205、206にも割り当てられる。図5のAPIにおける第2の要求(フリー・アフィニティ・アドレス(Free_Affinity_Address))は、AAクライアント・プラグイン303から受信したリリース・アフィニティ・アドレス要求に応答して、AAサーバ・プラグイン210、211、212によってAAプロバイダ・プラグイン213に発行される。それに応答して、AAプロバイダ・プラグイン213は、解放されたアフィニティ・アドレスを利用可能として登録する。第3及び第4の要求は、AAプロバイダ・プラグイン213のための管理インターフェイスの一部として提供され、それぞれ、所与のサーバによって使用される全てのアフィニティ・アドレスとIPスタックにおける全ての既知のフィニティ・アドレスとを発見することを可能にする。
ここで、図6のフローチャートを参照して、AAクライアント・プラグイン303がクライアント・アプリケーション・プログラム302と共に行う処理を更に詳細に説明する。ステップ601において、クライアント・アプリケーション・プログラム302の初期化に応答してAAクライアント・プラグイン303の処理が開始され、処理はステップ602に移る。ステップ602において、IPネットワーク103上でサーバ・アプリケーション・プログラムの無作為に選択されたインスタンス(図2のサーバ・インスタンス1)204への接続が作られ、クライアントとサーバ・プログラム302、204との間の処理が開始される。次いで、処理はステップ603に移り、ここではアフィニティ・アドレスの提供のための要求がサーバ・アプリケーション・プログラムの選択されたインスタンス204に送信され、処理はステップ604に移る。ステップ604において、要求したアフィニティ・アドレスを待ち、アフィニティ・アドレスを受信すると処理はステップ605に移る。ステップ605において、クライアントとサーバ302、204との間の処理が一時的に保留され、処理はステップ606に移る。ステップ606において、サーバ・アプリケーション・プログラムの選択されたインスタンス204とのその時点の接続が閉じられ、それにより、通信のための全てのリソースが解放され、処理はステップ607に移る。ステップ607において、受信したアフィニティ・アドレスを介して、サーバ・アプリケーション・プログラムの選択された同じインスタンス204への新たな接続が作られ、処理はステップ608に移る。ステップ608において、クライアントとサーバ・プログラム302、204との間の処理が再開され、処理はステップ609に移る。ステップ609において、クライアントとサーバ・プログラム302、204との間の処理の完了を待ち、処理が完了すると、処理はステップ610に移る。ステップ610において、受信したアフィニティ・アドレスを解放する要求がサーバ・アプリケーション・プログラム204に送信され、処理はステップ602に戻り、更なるサーバへの接続の開始を待つ。
従来技術の状況においては、ステップ606において接続を閉じるのではなく、サーバ・アプリケーション・プログラムの選択されたインスタンス205とのその時点の接続は、通信リソースが割り当てられ続けることによって他が使用できない状態で、アクティブに保たれなければならないことに留意されたい。
ここで、図7のフローチャートを参照して、AAサーバ・プラグインのインスタンス210がサーバ・アプリケーション・プログラムの関連するインスタンス204、205、206と共に行う処理を更に詳細に説明する。ステップ701において、サーバ・アプリケーション・プログラムの関連するインスタンス204の初期化に応答してAAサーバ・プラグインのインスタンス210の処理が開始され、処理はステップ702に移る。ステップ702において、クライアント・アプリケーション・プログラム302からの要求された接続が受信されて認められ、処理はステップ703に移る。ステップ703において、クライアントとサーバ・アプリケーション302、204との間の処理が行われ、アフィニティ・アドレス関連要求がクライアント・アプリケーション・プログラム302から受信されるか、又は、処理がステップ704に移った時点で処理が終了するまで続く。ステップ704において、アフィニティ・アドレス関連要求が受信された場合には、処理はステップ705に続く。ステップ705において、要求がアフィニティ・アドレスの提供のための要求として識別された場合には、処理はステップ706に移る。ステップ706において、新たなアフィニティ・アドレスのための要求がAAプロバイダ・プラグイン213に送信され、処理は707に移り、新たなアフィニティ・アドレスの受信を待つ。アフィニティ・アドレスを受信すると、処理はステップ708に移る。ステップ708において、受信されたアフィニティ・アドレスは、要求しているクライアント・アプリケーション・プログラム302に渡され、処理はステップ709に移る。ステップ709において、新たなアフィニティ・アドレスは、サーバ・アプリケーション・プログラムのその時点のインスタンス204に割り当てられ、次いでインスタンス204は、アフィニティ・アドレス上でクライアント・アプリケーション・プログラム302からの再接続要求をリスンし、要求を受信すると処理はステップ710に移り、ステップ710では接続が確立され、クライアントとサーバ・アプリケーション・プログラム302、204との間の処理が再開される。クライアントとサーバ・アプリケーション・プログラム302、204との間の処理が終了したときに、処理は、ステップ711に移り、サーバ・アプリケーション・プログラム204のこのインスタンスについて終わる。ステップ704において、受信した要求が、クライアントとサーバ・アプリケーション・プログラム302、204との間の処理を終了させる要求である場合には、処理は、ステップ711に移り、上記のように終わる。ステップ705において、受信したアフィニティ・アドレス関連要求が、その時点のアフィニティ・アドレスを解放する要求である場合には、処理はステップ712に移り、適切な要求がAAプロバイダ・プラグイン213に送信され、次いで処理はステップ711に移り、上記のように終わる。
ここで、図8のフローチャートを参照して、AAプロバイダ・プラグイン213がIPスタック管理プログラム202と共に行う処理を更に詳細に説明する。ステップ801において、IPスタック管理プログラム202の処理の初期化に応答して、AAプロバイダ・プラグイン213の処理が開始され、処理はステップ802に移る。ステップ802において、その時点における全ての使用済みIPv6アドレスのリストがDNS105から収集され、処理はステップ803に移る。ステップ803において、未使用IPv6アドレスのリストが、その時点における使用済みIPv6アドレスのリストから推定され、処理はステップ804に移る。ステップ804において、未使用IPv6アドレスのリストは、可能なアフィニティ・アドレスのセット214として保存され、処理はステップ805に移る。ステップ805において、処理は、サーバ・アプリケーション・プログラムのインスタンス204からのアフィニティ・アドレス要求を待ち、受信すると、処理はステップ806に移る。ステップ806において、要求が新たなアフィニティ・アドレスを提供するものである場合には、処理はステップ807に移る。ステップ807において、アドレスが、アフィニティ・アドレスのセット214から選択されて使用中であるとして登録され、処理はステップ808に移る。ステップ808において、DNS105は、アフィニティ・アドレスが使用中であることを通知され、処理はステップ809に移る。ステップ809において、選択されたアフィニティ・アドレスは、サーバ・アプリケーション・プログラムの要求しているインスタンス204に戻され、処理はステップ805に移り、更なるアフィニティ・アドレス関連要求の受信を待つ。ステップ806において、要求が使用中のアフィニティ・アドレスの解放のためのものである場合には、処理はステップ810に移る。ステップ810において、DNS105は状況に応じて更新され、処理はステップ811に移る。ステップ811において、解放されたアフィニティ・アドレスは、アフィニティ・アドレスのセット214において利用可能であるとして登録され、処理はステップ805に戻り、上記のように続く。
当業者であれば分かるように、本発明の実施形態はIPv6に関して説明されたが、他の実施形態は、固有のネットワーク・アドレスをアプリケーション・プログラムの所与のインスタンスに動的に割り当てるための適切な機構を備える他のプロトコルを用いることができる。更に、本発明の実施形態はTCPに関して説明されたが、幾つかの実施形態においては、TCPの代わりに、又は、TCPと組み合わせて、他のネットワーク転送プロトコル、例えばユーザ・データグラム・プロトコル(UDT)のような適切なプロトコルを用いることができる。
上記の実施形態においては、要求しているクライアント・アプリケーション・プログラムに接続するためのサーバ・アプリケーション・プログラムのインスタンスの選択は、無作為に行われる。当業者であれば分かるように、例えば、サーバ負荷分散又はフェイルオーバ機構のような他の基準が、サーバ・アプリケーション・プログラムの所与のインスタンスの選択に少なくとも部分的に寄与することができる。
上記の実施形態においては、クライアント・アプリケーション・プログラム及びサーバ・アプリケーション・プログラム並びにIPスタック管理プログラムに、それぞれのプログラム・ファンクション拡張機能又はプラグインを用いて、機能が追加される。当業者であれば分かるように、上述のプラグインのいずれかによって提供される機能は、例えば、元のクライアント・アプリケーション・プログラム若しくはサーバ・アプリケーション・プログラム又はIPスタック管理プログラムのコードに追加する又はそれらを改変することといった他の適切ないずれかの手段によって、代わりに提供することができる。本明細書に記載のサーバ及びプロバイダ・プラグインの機能は、例えば適切なアフィニティ・アドレス・サーバ及びプロバイダ・ルーチンの追加によって、それぞれのシステム内の他の適切なプログラムにより提供されるか、又は、こうしたプログラムに組み込むことができる。
上記の実施形態においては、DNSは、使用済みIPアドレスのリストを提供し、そのリストから、AAプロバイダ・プラグインが、利用可能なアフィニティ・アドレス(AA)のセットを得て、それを管理する。他の実施形態においては、AAのプールの管理は、DNSだけで行うことができる。別の実施形態においては、AAのプールの管理は、DNSとAAプロバイダ・プラグインとが共同で行うことができる。
好ましい実施形態においては、a:b:c:d部分が固定されたa:b:c:d:e:f:g:hの形を持つIPv6アドレスを考えると、非固定部分の要素は、アドレスがアフィニティ・アドレスであることを示すために確保される。この実施形態においては、DNSは、アフィニティ・アドレスの選択又は管理に関与する必要がない。
当業者であれば、本発明の一部又は全部を具体化する装置は、本発明の実施形態の一部又は全部を提供するように構成されたソフトウェアを有する汎用デバイスであってもよいことが分かるであろう。デバイスは、単一のデバイス又はデバイスのグループとすることができ、ソフトウェアは、単一のプログラム又はプログラムのセットとすることができる。更に、本発明を実装するのに用いられるソフトウェアのいずれか又は全ては、ソフトウェアを1つ又は複数のデバイスにロードすることができるように、いずれかの適切な転送手段又はストレージ手段を介して通信することができる。
本発明はその実施形態の説明によって例示され、実施形態はかなり詳細に説明されたが、特許請求の範囲をこうした詳細に限定すること又はいずれかの方法で制限することを意図するものではない。当業者にとってはさらなる利点及び改変が明らかであろう。従って、広範な態様における本発明は、装置及び方法を表す特定に細部、並びに、示され記載された例に限定されるものではない。
疑義を避けるために、用語「含む」は、本明細書及び特許請求の範囲を通して用いられるときには「のみを含む」意味として解釈されるべきではない。

Claims (15)

  1. コンピュータの処理により、インターネット・プロトコル(IP)ネットワーク上でクライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラム・インスタンスとのアクセスを提供するための方法であって、
    a)第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのためのIPネットワーク・アスセスを提供するステップと、
    b)クライアント・アプリケーション・プログラムからの第1の要求に応答して、前記第1のIPアドレスを介して、前記クライアント・アプリケーション・プログラムと前記複数のサーバ・アプリケーション・プログラム・インスタンスのうちの選択されたサーバ・アプリケーション・プログラム・インスタンスとの接続を可能にするステップと、
    c)前記クライアント・アプリケーション・プログラムとの通信のために、前記選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを、前記選択されたサーバ・アプリケーション・プログラム・インスタンスに割り当てるステップと、
    d)前記第2のIPアドレスを介して、前記選択されたサーバ・アプリケーション・プログラム・インスタンスへのIPネットワーク・アクセスを提供するステップと、
    e)前記第2のIPアドレスを介して、前記クライアント・アプリケーション・プログラムと前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスとの再接続を可能にするステップと、
    を含む方法。
  2. 前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスからの要求に応答して、前記第2のIPアドレスが提供される、請求項1に記載の方法。
  3. 前記クライアント・アプリケーション・プログラムからの対応する要求に応答して、前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスからの前記要求が行われる、請求項2に記載の方法。
  4. 前記第2のIPアドレスは、所定の未使用IPアドレスのセットから選択される、請求項1から請求項3のいずれか一つの請求項に記載の方法。
  5. 前記所定の未使用IPアドレスのセットは、1つ又は複数の関連ドメイン・ネーム・サーバ(DNS)から得られる使用済みIPアドレスのセットから決定される、請求項4に記載の方法。
  6. 前記クライアント・アプリケーション・プログラムと前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスとの間の処理が完了したときには、その後の使用に対して前記第2のIPアドレスが解放される、請求項4又は請求項5のいずれかに記載の方法。
  7. コンピュータの処理により、クライアント・アプリケーション・プログラムがインターネット・プロトコル(IP)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法であって、
    a)第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのうちの選択されたサーバ・アプリケーション・プログラム・インスタンスに接続するステップと、
    b)前記選択されたサーバ・アプリケーション・プログラム・インスタンスから、前記選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを要求するステップと、
    c)前記第2のIPアドレスの受信に応答して、前記選択されたサーバ・アプリケーション・プログラム・インスタンスとの接続を閉じるステップと、
    d)前記第2のIPアドレスを介して前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスに再接続するステップと、
    を含む方法。
  8. コンピュータの処理により、サーバ・アプリケーション・プログラム・インスタンスがインターネット・プロトコル(IP)ネットワーク上でクライアント・アプリケーション・プログラムのための接続を提供する方法であって、
    a)サーバ・アプリケーション・プログラムの複数の他のインスタンスと共通の第1のIPアドレスのためのポートを監視するステップと、
    b)クライアント・アプリケーション・プログラムからの第1の要求に応答して、第1の接続を提供する前記第1のIPアドレスを介して前記クライアント・アプリケーション・プログラムに接続するステップと、
    c)前記クライアント・アプリケーション・プログラムからの第2の要求に応答して、前記サーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを取得し、前記第2のIPアドレスを前記クライアント・アプリケーション・プログラムに通信するステップと、
    d)前記クライアント・アプリケーション・プログラムからの第3の要求に応答して、前記第1の接続を閉じるステップと、
    e)前記第2のIPアドレスのためのポートを監視するステップと、
    f)前記クライアント・アプリケーション・プログラムからの第4の要求に応答して、前記第2のIPアドレスを介して前記クライアント・アプリケーション・プログラムに再接続するステップと、
    を含む方法。
  9. インターネット・プロトコル(IP)ネットワーク上でクライアント・アプリケーション・プログラムとサーバ・アプリケーション・プログラム・インスタンスとのアクセスを提供するための装置であって、
    第1のIPアドレスのための共通ポートを介してサーバ・アプリケーション・プログラムの複数のインスタンスのためのIPネットワーク・アクセスを提供し、
    クライアント・アプリケーション・プログラムからの第1の要求に応答して、前記第1のIPアドレスを介して、前記クライアント・アプリケーション・プログラムと前記複数のサーバ・アプリケーション・プログラム・インスタンスのうちの選択されたサーバ・アプリケーション・プログラム・インスタンスとの接続を可能にし、
    前記クライアント・アプリケーション・プログラムとの通信のために、前記選択されたサーバ・アプリケーション・プログラム・インスタンス専用の第2のIPアドレスを前記選択されたサーバ・アプリケーション・プログラム・インスタンスに割り当て、
    前記第2のIPアドレスを介して、前記選択されたサーバ・アプリケーション・プログラム・インスタンスへのIPネットワーク・アクセスを提供し、
    前記第2のIPアドレスを介して、前記クライアント・アプリケーション・プログラムと前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスとの再接続を可能にする、
    ように作動可能な装置。
  10. 前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスからの要求に応答して、前記第2のIPアドレスが提供される、請求項9に記載の装置。
  11. 前記クライアント・アプリケーション・プログラムからの対応する要求に応答して、前記サーバ・アプリケーション・プログラムの前記選択されたインスタンスからの前記要求が行われる、請求項10に記載の装置。
  12. 前記第2のIPアドレスは、所定の未使用IPアドレスのセットから選択される、請求項9から請求項11のいずれか一つの請求項に記載の装置。
  13. 前記所定の未使用IPアドレスのセットは、1つ又は複数の関連ドメイン・ネーム・サーバ(DNS)から得られる使用済みIPアドレスのセットから決定される、請求項12に記載の装置。
  14. コンピュータ上で稼働したときに、請求項1から請求項6のいずれか一つの請求項に記載の方法の各ステップを、コンピュータに実行させる、コンピュータ・プログラムを記録した、コンピュータ可読媒体。
  15. コンピュータ上で稼働したときに、請求項1から請求項6のいずれか一つの請求項に記載の方法の各ステップを、コンピュータに実行させる、コンピュータ・プログラム。
JP2011515277A 2008-06-25 2009-06-03 クライアント・アプリケーション・プログラムがインターネット・プロトコル(ip)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法、装置、及びソフトウェア Active JP5220920B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP08159010 2008-06-25
EP08159010.1 2008-06-25
PCT/EP2009/056816 WO2009156255A1 (en) 2008-06-25 2009-06-03 Providing access over an ip network to a server application program

Publications (2)

Publication Number Publication Date
JP2011526710A JP2011526710A (ja) 2011-10-13
JP5220920B2 true JP5220920B2 (ja) 2013-06-26

Family

ID=41217531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011515277A Active JP5220920B2 (ja) 2008-06-25 2009-06-03 クライアント・アプリケーション・プログラムがインターネット・プロトコル(ip)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法、装置、及びソフトウェア

Country Status (6)

Country Link
US (1) US8495190B2 (ja)
EP (1) EP2291982B1 (ja)
JP (1) JP5220920B2 (ja)
KR (1) KR20110036573A (ja)
CN (1) CN102027732B (ja)
WO (1) WO2009156255A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2502465B (en) * 2008-11-24 2014-01-08 Ericsson Telefon Ab L M Methods and arrangements in a communication network
US8621046B2 (en) * 2009-12-26 2013-12-31 Intel Corporation Offline advertising services
WO2012169945A1 (en) * 2011-06-08 2012-12-13 Telefonaktiebolaget L M Ericsson (Publ) Subscription information managing apparatus and control method therefor
AU2012203903B2 (en) * 2011-07-12 2015-03-12 Apple Inc. System and method for linking pre-installed software to a user account on an online store
US10082574B2 (en) 2011-08-25 2018-09-25 Intel Corporation System, method and computer program product for human presence detection based on audio
US20130054817A1 (en) * 2011-08-29 2013-02-28 Cisco Technology, Inc. Disaggregated server load balancing
EP2740253B1 (en) * 2011-09-20 2015-06-17 Siemens Schweiz AG Method and system for domain name system based discovery of devices and objects
WO2013121255A1 (en) * 2012-02-14 2013-08-22 International Business Machines Corporation Method for controlling access of clients to a service in a cluster environment
DE102012217136A1 (de) * 2012-09-24 2014-03-27 Robert Bosch Gmbh Überwachungssystem mit Nachrichtenweiterleitung, Verfahren sowie Computerprogramm
CN103002064A (zh) * 2012-11-20 2013-03-27 中兴通讯股份有限公司 一种释放地址的方法、用户节点及远程接入服务器
EP2926308B1 (en) 2012-11-28 2019-07-17 Telefónica Germany GmbH & Co. OHG Method for anonymisation by transmitting data set between different entities
US10855587B2 (en) 2018-10-19 2020-12-01 Oracle International Corporation Client connection failover
JP2020188380A (ja) * 2019-05-15 2020-11-19 京セラドキュメントソリューションズ株式会社 情報処理システム、ユーザ端末及び電子機器

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6957276B1 (en) * 2000-10-23 2005-10-18 Microsoft Corporation System and method of assigning and reclaiming static addresses through the dynamic host configuration protocol
US20020143953A1 (en) * 2001-04-03 2002-10-03 International Business Machines Corporation Automatic affinity within networks performing workload balancing
US7054944B2 (en) * 2001-12-19 2006-05-30 Intel Corporation Access control management system utilizing network and application layer access control lists
JP2004075036A (ja) 2002-08-20 2004-03-11 Yasuhiro Mizuta タイヤホイール脱輪防止金具
US7380021B2 (en) 2002-12-18 2008-05-27 International Business Machines Corporation Method for designating internet protocol addresses
US7454489B2 (en) * 2003-07-01 2008-11-18 International Business Machines Corporation System and method for accessing clusters of servers from the internet network
JP4402975B2 (ja) 2004-02-09 2010-01-20 パナソニック株式会社 カラープラズマディスプレイパネル及びその製造方法
US7403535B2 (en) 2004-12-14 2008-07-22 Hewlett-Packard Development Company, L.P. Aggregation of network resources providing offloaded connections between applications over a network
JP2006262141A (ja) 2005-03-17 2006-09-28 Fujitsu Ltd Ipアドレス適用方法、vlan変更装置、vlan変更システム、および検疫処理システム
US8782278B2 (en) * 2008-03-21 2014-07-15 Qualcomm Incorporated Address redirection for nodes with multiple internet protocol addresses in a wireless network

Also Published As

Publication number Publication date
JP2011526710A (ja) 2011-10-13
EP2291982A1 (en) 2011-03-09
US20090327486A1 (en) 2009-12-31
CN102027732B (zh) 2013-10-30
KR20110036573A (ko) 2011-04-07
EP2291982B1 (en) 2016-12-21
WO2009156255A1 (en) 2009-12-30
US8495190B2 (en) 2013-07-23
CN102027732A (zh) 2011-04-20

Similar Documents

Publication Publication Date Title
JP5220920B2 (ja) クライアント・アプリケーション・プログラムがインターネット・プロトコル(ip)ネットワーク上でサーバ・アプリケーション・プログラム・インスタンスにアクセスするための方法、装置、及びソフトウェア
CN108449282B (zh) 一种负载均衡方法及其装置
US8429304B2 (en) Information processing apparatus and communication control method
US7930427B2 (en) Client-side load balancing
US7971045B1 (en) System and method for selecting a network boot device using a hardware class identifier
EP2692095B1 (en) Method, apparatus and computer program product for updating load balancer configuration data
TWI577164B (zh) 可縮放位址解析之技術
JP2008028914A (ja) 通信負荷低減装置、通信負荷低減方法、及びプログラム
WO2013097484A1 (zh) 虚拟机集群的负载均衡方法、服务器及系统
CN112583618B (zh) 为业务提供网络服务的方法、装置和计算设备
JP5753172B2 (ja) ネットワークアドレス変換のための管理方法および管理デバイス
JP7207827B2 (ja) リソース取得方法および装置
US11757766B2 (en) Reflection route for link local packet processing
JP5749812B2 (ja) マルチコアプラットフォーム用のdnsプロキシサービス
US8943123B2 (en) Server apparatus, network access method, and computer program
CN111614792B (zh) 透传方法、系统、服务器、电子设备及存储介质
US20110235641A1 (en) Communication apparatus, method of controlling the communication apparatus,and program
WO2023007248A1 (en) System and method for independent binding of virtual networks overlay using a physical network topology
US11258848B1 (en) Load balancing requests such that target resources serve a single client
JP2005064570A (ja) ネットワークシステム及びインターネットワーク装置
JP2010183242A (ja) 通信装置およびdnsプロキシサーバ
JP6665620B2 (ja) サーバ装置、端末装置、クライアントサーバシステム、通知方法、および情報取得方法、並びにコンピュータ・プログラム
CN108243078B (zh) 地址分配方法和装置
JP2005157639A (ja) プロキシ通信システムおよびそのためのプログラム
Sehrawat et al. Reverse Address Resolution Protocol (RARP)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130117

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130306

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

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5220920

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150