JP5128117B2 - Tcp/ipリンクおよびトラフィックを選択的に起動する方法、コンピュータ・ネットワーク・システム、およびプログラム記憶デバイス - Google Patents

Tcp/ipリンクおよびトラフィックを選択的に起動する方法、コンピュータ・ネットワーク・システム、およびプログラム記憶デバイス Download PDF

Info

Publication number
JP5128117B2
JP5128117B2 JP2006329359A JP2006329359A JP5128117B2 JP 5128117 B2 JP5128117 B2 JP 5128117B2 JP 2006329359 A JP2006329359 A JP 2006329359A JP 2006329359 A JP2006329359 A JP 2006329359A JP 5128117 B2 JP5128117 B2 JP 5128117B2
Authority
JP
Japan
Prior art keywords
server
applications
application
state
computer
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.)
Expired - Fee Related
Application number
JP2006329359A
Other languages
English (en)
Other versions
JP2007157160A (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 JP2007157160A publication Critical patent/JP2007157160A/ja
Application granted granted Critical
Publication of JP5128117B2 publication Critical patent/JP5128117B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、全般的にはコンピュータ・ネットワークに関し、特に、1つまたは複数のサーバ・アプリケーションを含むコンピュータ・ネットワークに関する。具体的には、本発明は、このようなサーバ・アプリケーションをいつ起動できるかを決定する手順に関する。
コンピュータ・ネットワークは非常に広く普及しており、企業、大学、および政府を含む多くの組織にとってますます重要になってきた。一般に、コンピュータ・ネットワークは、通信施設によって接続される2つ以上のコンピュータ(あるいはコンピュータに関連付けられたデバイス)を含む。クライアント/サーバ・ネットワークはコンピュータ・ネットワークの一種であり、サーバおよびクライアントを含む。クライアント/サーバ・ネットワークにおいて、サーバとは、ネットワークのユーザに共有リソースを提供するコンピュータまたはプロセスであり、クライアントとは、サーバから通信施設を介して提供される共有ネットワーク・リソースにアクセスするコンピュータまたはプロセスである。
一般に、クライアント/サーバ・ネットワークにおいて、クライアントはサーバに要求を送信することによってサーバから情報を得る。サーバにおいて要求が受け取られると、サーバ上のサーバ・アプリケーションは要求された情報を取得し、取得した情報をネットワーク経由でクライアントに送信することによってクライアントの要求を満たす。インターネット(ワールド・ワイド・ウェブ(WWW:World Wide Web)を介する)はクライアント/サーバ・ネットワークの一例である。インターネットはクライアントがデータを要求したり受け取ったりすることを可能にするパブリックWAN(Wide−area Netword)環境である。
サーバ・コンピュータは、ネットワーク上のサーバ・コンピュータとクライアント・コンピュータとの間でパケット・データを物理的に送受信するためのネットワーク・アダプタ・カードを含む。サーバ・コンピュータはまた、データを処理するためのソフトウェアであるサーバ・アプリケーションを含む。サーバ・アプリケーションには、例えば、データベース・サービング、ファイル・サービング、およびトランザクション処理が含まれる場合もある。個々のサーバ・アプリケーションはネットワーク・アダプタ・カードを介してネットワークにアクセスすることができる。つまり、1つまたは複数のスレッドを含むアプリケーション・プロセスは、ソケットを介してネットワーク・アダプタ・カードに接続される。このソフトウェア・オブジェクトであるソケットによって、サーバ・アプリケーションのスレッドはネットワーク・アダプタ・カードのバーチャル・ポートと通信することができる。
多くのサーバにおいて、サーバ・アプリケーションの側面のいくつかは、スタックと呼ばれる機構によって管理される。スタックとは、所与のプロトコルの階層構造である。これらのプロトコルは、特定のアプリケーションを始動するために満たされていなくてはならない条件を規定し、リソースを競合する複数のアプリケーションの優先順位を決定することもできる。インターネットに接続しているサーバ上では、これらのプロトコル・スタックをTCP/IP(Transmission Control Protocol/Internet Protocol:伝送制御プロトコル/インターネット・プロトコル)スタックと呼ぶ。
例えば、システムの初期化中には、使用できるシステム・リソースおよびサービスは限られるため、TCP/IPソケット・アプリケーションはシステムの初期化が完了するまで起動できない。プラットフォームの殆どにおいては、全てのソケット・アプリケーションは、システムが初期化され、ネットワークが始動されたときにのみ起動することができる。アプリケーションに必要な構成データを遠隔地のシステムからはじめにアップロードしておかなければ正しく起動しないアプリケーションもある。このような構成データの例として、航空運賃の規則および経常在庫/価格データが挙げられる。また、アプリケーションを起動する前にデータをオペレータによって手動でアップロードする手順は、エラーが発生しやすいことがわかっている。したがって、システムの初期化プロセス中にも、遠隔地のプラットフォームと対話するシステム・サービスを起動できることが要求されている。また例えば、構成データをアップロードすることに加えて、遠隔地にいるオペレータがシステムの初期化プロセス中にサーバにアクセスできることも要求されている。
したがって、本発明の目的は、コンピュータ・ネットワーク・システムにおいて、所定のソケット・アプリケーションをいつ起動させるかをサーバのシステム管理者が指定できるようにすることである。
本発明の別の目的は、コンピュータ・ネットワーク・システムにおいて、システム管理者が、いくつかのシステム状態を定義し、所定のソケット・アプリケーションをサーバ上でいつ起動できるかを指定できるようにすることである。
本発明の更に別の目的は、コンピュータ・ネットワーク・システムのサーバがソケット・アプリケーションのサブセットをシステムの初期化中に起動することを可能にする機能を提供することである。
本発明の更に別の目的は、コンピュータ・ネットワーク・システムにおいて、システム構成データおよびアプリケーション・データなどのアクションを、遠隔地のシステムからアップロードすることを可能にし、さらに、遠隔地の管理者がシステムの初期化中にサーバにアクセスし、システムの初期化を完了するために必要なアクションを実行することを可能にする機能を提供することである。
上記の目的は、コンピュータ・ネットワーク・システムにおいて、サーバ・アプリケーションを選択的に起動する方法によって達成される。このコンピュータ・ネットワーク・システムはサーバ・コンピュータ、複数のクライアント・コンピュータ、サーバ・コンピュータにロードされたサーバ・アプリケーションのセット、および、該サーバ・アプリケーションの起動を管理するための所定のプロトコル・スタックを含む。この方法は、コンピュータ・ネットワーク・システムについて複数の状態をシステム管理者が定義するステップと、該サーバ・アプリケーションの各々を該状態の各々において起動できるか否かを判別するための条件をシステム管理者が指定するステップとを含む。所定のプロトコル・スタックは、指定された条件に従ってサーバ・アプリケーションの起動を管理する。
本発明の好適な実施形態によれば、以下に説明するように、システムの管理者は、いくつかのシステム状態を定義することができ、また、所定の状態において所定のソケット・アプリケーションをいつ起動できるかを指定することができる。TCP/IPスタックは、システムが定義された最小の状態に達するまではアプリケーションの起動を許可しない。本発明はインターネット・デーモン(INETD)に統合することができ、アプリケーションは、システムがそのアプリケーションの起動に必要な最小限の状態に達したときにINETDによって自動的に起動される。この必要最小限のシステム状態に達した後は、アプリケーションを手動で起動することもでき、あるいは他の方法で起動することもできる。
例えば、アプリケーションが起動する前にFTP(File Transfer Protocol:ファイル転送プロトコル)を介して或るアプリケーション用の構成ファイルをアップロードするために、この構成ファイルを必要とするアプリケーションの起動が許可される前のシステム状態においてFTPを起動することができる。また例えば、本発明を適用して、オーバーロード状態に対処したり、トラフィックを優先順位の高いアプリケーションのみに限定したりする。例えば、サーバはシステム状態を、(最小限の状態から最大限の状態へと順に)制限状態(RESTRICTED)、高優先順位状態(HIGH_PRIORITY_ONLY)、限定トラフィック状態(LIMITED_TRAFFIC)、および通常状態(NORMAL)とすることもできる。
具体的には、システムの初期化中は、システムは制限状態にあり、所定のアプリケーション(例えば、FTPおよび遠隔オペレータ・コマンド機能)のみ実行することができる。初期化完了後、システムは通常状態に入る。この通常状態では、全てのアプリケーションを実行することができる。システムが通常状態にあるときに、(CPUの使用量、メモリの使用量、またはその他のユーザ定義型の基準に基づく)所定のリソース閾値に達した場合、システムは限定トラフィック状態に落ちる。システムがこの状態にあるときは、いくつかのアプリケーションの実行が阻止される。リソースがさらに枯渇すると、システムは高優先順位状態に落ちる。この状態では、優先順位が最も高いアプリケーションのみ実行できるようにトラフィックが限定される。
以下の詳細な説明は、本発明の好ましい実施形態について記載または例示している。本発明の利点および長所は、この詳細な説明を添付の図面と併せて読むことによって最も良く理解されよう。
図1を参照すると、コンピュータのネットワークである分散データ処理システム100が例示されている。本発明は、この分散型データ処理システム100によって実現するとよい。分散データ処理システム100にはネットワーク102が含まれており、これは分散データ処理システム100内で接続される様々なデバイスおよびコンピュータ間に通信リンクを提供するための媒体である。ネットワーク102は、ワイヤまたは光ファイバ・ケーブル等を用いる永久接続、または電話接続を利用する一時接続を含んでいてもよい。分散データ処理システム100内の接続は、ポートとして知られる、コンピュータにデータを入力または出力する経路を介して行われる。図示の例では、サーバ104は、記憶装置106とともにネットワーク102に接続される。さらに、クライアント108、110、および112はネットワーク102に接続される。これらのクライアント108、110、および112は、例えばパーソナル・コンピュータまたはネットワーク・コンピュータであってもよい。
ネットワーク・コンピュータとは、ネットワークに接続する任意のコンピュータであり、同じネットワークに接続する別のコンピュータからプログラムまたは他のアプリケーションを受信するものである。図示の例では、サーバ104は、ブート・ファイル、オペレーティング・システム・イメージ、およびアプリケーション等のデータをクライアント108,110、および112に提供する。クライアント108、110、および112は、サーバ104のクライアントである。分散データ処理システム100は、図示されていないが、追加のサーバ、クライアント、およびその他のデバイスを含む場合もある。分散データ処理システム100はまた、プリンタ114、116、および118を含んでいる。例えば、クライアント110はプリンタ114に直接印刷を行うこともできる。例えば、クライアント108およびクライアント112はプリンタに直接接続されていないが、サーバ104に接続されるプリンタ116、またはプリンタ118を用いて印刷を行うこともできる。プリンタ118は印刷を実行するためにコンピュータに接続する必要のないネットワークプリンタである。またあるいは、クライアント110は、プリンタの種類および文書の要件に基づいて、プリンタ116またはプリンタ118を用いて印刷を行う場合もある。
図示の例では、分散データ処理システム100はインターネットであり、ネットワーク102は、TCP/IPプロトコル一式を使用して互いに通信するネットワークおよびゲートウェイの世界的な集合体を表す。インターネットの中心部には、主要ノード間またはホスト・コンピュータ間を繋ぐ高速データ通信回線の中枢がある。この主要ノードまたはホスト・コンピュータには、データおよびメッセージをルーティングする数千の商業用、政府用、教育用、および他用途のコンピュータ・システムが含まれる。勿論、分散データ処理システム100は、例えばイントラネット、ローカル・エリア・ネットワーク等の、多数の異なるタイプのネットワークとしても実現され得る。
なお、図1に示す分散データ処理システム100は単に例として示され、本発明のプロセスをアーキテクチュア面で限定することを意図するものではない。
図2は、本発明に係るデータ処理システム200を説明するための簡略ブロック図である。本発明において、データ処理システム200は、図1に示されるサーバ104等のサーバとして実現すればよい。図2に示されるように、データ処理システム(サーバ)200は、サーバ・アプリケーション202、INETD(インターネット・デーモン)204、リソース・モニタ206、CPU210、メモリ212、TCP/IPスタック214、およびネットワーク・アダプタ216を含んでいる。リソース・モニタはCPU210、メモリ212、およびサーバ内の他のリソースをチェックする。遠隔地のクライアントからのメッセージは、ネットワーク・アダプタ216を経由してサーバにフローされ、その後TCP/IPスタック214に送られる。TCP/IPスタック214は、リソース・モニタ206とインターフェースし、サーバ・アプリケーション202またはソケットに割り当てられた優先順位に基づいて、フローされたメッセージをサーバ・アプリケーション202に受け渡すために十分なリソースが利用可能であるか否かを判断する。利用可能と判断された場合、メッセージはサーバ・アプリケーション202に受け渡され、処理される。利用可能ではないと判断された場合、メッセージは、必要なリソースが利用可能となるまでTCP/IPスタック214内部のキューに入れられる(TCP/IPスタック214はまた、そのメッセージより低い優先順位が割り当てられた「低優先順位」メッセージを破棄するオプションも有する)。つまり、サーバが通常状態にないとき、TCP/IPスタック214は、サーバ・アプリケーション202から見て、あたかもネットワークからデータが届いていないような状態をつくる。
当業者にとって明らかなように、データ処理システム200は、図2に示される要素以外にも、追加の、または代替の要素を含んでいてもよい。例えば、光ディスクドライブ等の周辺デバイスを、図示のハードウェアに追加したり、図示のハードウェアの代わりに使用したりすることもできる。したがって図示の例は、アーキテクチュア面で本発明を限定するものではない。
図2に示すデータ処理システムは、例えば、アドバンスト・インタラクティブ・エグゼクティブ(AIX:Advanced Interactive Executive)オペレーティング・システムを実行する、ニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーション(IBM)の製品であるIBM RS/6000とすればよい。
サーバ・アプリケーション202は、データベース・サービング、ファイル・サービング、データベース・サービング、およびトランザクション処理を含んでいてもよい。TCP/IPスタック214はこのサーバ・アプリケーション202の所定の側面を管理するために備えられる。例えば、TCP/IPスタック214は、特定のサーバ・アプリケーション202が起動されるために満たされていなければならない最低条件を判別または識別したり、サーバ・アプリケーション202に接続するソケットを決定したりすることもできる。
本発明の一実施形態によれば、分散データ処理システム100の管理者は、所定のサーバ・ソケット・アプリケーションをいつ起動できるか(例えば、システム初期化中または初期化完了後のみ)を指定する権限を付与される。したがって、図3を参照すると、管理者は、ステップ302でいくつかのシステム状態を定義し、ステップ304で所定のサーバ・ソケット・アプリケーションを、定義されたシステム状態のうちのどの状態において起動できるかを指定する。TCP/IPスタック214は、システムがアプリケーションについて定義された最小限の状態に達する前にそのアプリケーションを起動することはできない。
例えば、アプリケーションが起動する前にFTP(File Transfer Protocol:ファイル転送プロトコル)を介して或るアプリケーション用の構成ファイルをアップロードするために、この構成ファイルを必要とするアプリケーションの起動が許可される前のシステム状態においてFTPを起動することができる。また例えば、本発明を適用して、オーバーロード状態に対処したり、トラフィックを優先順位の高いアプリケーションのみに限定したりする。例えば、サーバはシステム状態を、(最小限の状態から最大限の状態へと順に)制限状態(RESTRICTED)、高優先順位状態(HIGH_PRIORITY_ONLY)、限定トラフィック状態(LIMITED_TRAFFIC)、および通常状態(NORMAL)とすることもできる。
具体的には、システムの初期化中は、システムは制限状態にあり、所定のアプリケーション(例えば、FTPおよび遠隔オペレータ・コマンド機能)のみ実行することができる。初期化完了後、システムは通常状態に入る。この通常状態では、全てのアプリケーションを実行することができる。システムが通常状態にあるときに、所定のリソース閾値に達した場合、システムは限定トラフィック状態に落ちる。システムがこの状態にあるときは、入力されたメッセージがTCP/IPスタックから低優先順位アプリケーションへ送られるのが阻止される。リソースがさらに枯渇すると、システムは高優先順位状態に落ちる。この状態では、優先順位が最も高いアプリケーションのみ実行できるようにトラフィックが限定される。
本発明の好適な実施形態において重要な特徴は、優先順位がアプリケーションレベルにとどまらないということである。具体的には、例えば、アプリケーションXに接続する全てのクライアントに高優先順位を割り当てずに、クライアントのうちのいくつかは優先順位が高く、その他のクライアントは優先順位が低くなるように、クライアント毎に異なる優先順位を割り当てることができる。1つのサーバ・アプリケーションは多数のビジネス・パートナーとの接続を担うこともあり、その中には常に通信処理を必要とする主要なパートナーも存在するため、この特徴は重要である。優先順位の値は、サーバ(サーバ・システム管理者またはサーバ・アプリケーション)によって割り当てられるのであって、クライアント・ノード/アプリケーションからは割り当てられない。つまり、優先順位の値はメッセージの一部としてフローされない。この例において優先順位とは、メッセージをサーバ・ノードによって処理することのできる優先順位を意味する。この例において優先順位値はネットワーク上の優先順位値ではない。つまり、サーバによって割り当てられる優先順位値は、ネットワーク上のメッセージ・フローに影響を与えるものではない。上記の他にも、Differentiated Services等、ネットワーク上をフローしているメッセージに異なる優先順位を割り当てるのに用いられる方法/プロトコルがある。
本発明はインターネット・デーモン(INETD)に統合することができ、アプリケーションは、システムがそのアプリケーションの起動に必要な最小限の状態に達したときにINETDによって自動的に起動される。この必要最小限のシステム状態に達した後は、アプリケーションは手動で起動することもでき、あるいは他の方法で起動することもできる。
本発明の好適な実施形態は多くの重要な利点を提供する。例えば、本発明によれば、サーバには、システムの初期化中にソケット・アプリケーションのサブセットを起動する能力が付与される。この能力によって、システム構成データおよびアプリケーション・データのようなアクションを遠隔地のシステムからアップロードすることができる。また、管理者はシステムの初期化プロセス中にサーバにアクセスし、初期化を完了するために必要なアクションを実行することができる。
本発明によれば、サーバのリソースが低い場合であっても、トラフィックをネットワークから読み込むことができ、これが本発明と他のプラットフォーム実装との主に異なる点である。殆どのシステムにおいて、サーバのリソースが低い場合、サーバは新たなトラフィックの着信を阻止する−すなわち、ネットワーク・アダプタからの読み取りを停止する。一方、本発明によれば、サーバが低リソース状態にあっても、トラフィックは読み込まれ、優先順位の高いメッセージが引き続き処理される。これらの高優先順位のメッセージによって、アプリケーションがリソースを解放することもできる。これらの高優先順位メッセージはまた、行き詰まったデバイスを調整する遠隔オペレータ・コマンドとして機能し、これによってリソースを解放し、サーバを通常状態に戻すこともできる。
本発明の別の重要な側面は、本発明を効果的に使用することによってメッセージの紛失を低減し、エラー回復処理(例えば、メッセージの再送信)を向上することもできることである。従来のサーバでは、サーバがネットワークからの読み込みを停止した場合、そのサーバを宛先とするパケットは破棄される。このことによって遠隔地のクライアントはタイムアウト状態となるので、そのクライアントからのメッセージの再送信がトリガされる。その結果、ネットワークのトラフィックが増加してしまう。また、その結果エンド・ユーザ(クライアント)への応答時間に遅れが生じてしまう。例えば、時間「0」において、サーバは低リソースとなり、ネットワーク・アダプタからの読み取りを停止する。時間「0.1秒」において、クライアントから送信されたメッセージがサーバのネットワーク・アダプタに届くが、アダプタのバッファが一杯であるためメッセージは破棄される。時間「0.3秒」において、リソースは利用可能となり、サーバはネットワーク・アダプタからの読み取りを再開する。クライアントのメッセージはサーバに応答されずにいるので、時間「1.5秒」になってはじめてクライアントはタイムアウトし、メッセージを再送信する。時間「1.6秒」において再送信されたメッセージがサーバに届き、時間「1.7秒」において応答メッセージがクライアントに届いたところでこのトランザクションが完了する。
一方、本発明によれば、上記の例の場合、トランザクションの完了が大幅に早くなる。上記の例を用いて具体的に説明すると、時間「0.1秒」において、クライアントから送信されたメッセージはネットワーク・アダプタに届き、サーバに読み取られる。このメッセージは低優先順位のアプリケーション/ソケット用である。したがって、サーバはこのメッセージを内部のキューに入れる。時間「0.3秒」において、リソースが再び利用可能になり、サーバはキューに入れられたメッセージの処理を開始する。サーバ・アプリケーションは応答メッセージを送信し、時間「0.4秒」において応答メッセージがクライアントに届いたところでトランザクションが完了する。上述の従来モデルでは、トランザクションを完了するのに1.7秒かかる(メッセージは二度送信される必要がある)。一方、本発明によると、トランザクションを完了するのに0.4秒しかかからない(メッセージの送信は1度のみである)。
当業者にとって明らかであるように、本発明はハードウェアまたはソフトウェアとしても、あるいはハードウェアおよびソフトウェアの組み合わせとしても実現できる。あらゆる種類の1つまたは複数のコンピュータ/サーバ・システム−あるいは、本実施形態で説明される方法を実行するために採用される他の機器−が本発明を実現するのに適格である。ハードウェアとソフトウェアとの組み合わせの典型例として、コンピュータ・プログラムを有する汎用コンピュータ・システムが挙げられよう。この場合、コンピュータ・プログラムはロードされ実行されることによって本実施形態に説明される方法の各々を実行する。あるいは、本発明の1つまたは複数機能タスクを実行するための専用ハードウェアを備えた特別用途コンピュータを利用することもできる。
本発明はまた、コンピュータ・プログラム製品によって具体化することができる。この場合、該コンピュータ・プログラム製品は、本実施形態に説明される方法を実現できる個々の機能を全て含み、コンピュータ・システムにロードされることによって該方法を実行することができる。本明細書において、コンピュータ・プログラム、ソフトウェア・プログラム、プログラム、またはソフトウェアとは、任意の言語、コード、または表記によって任意に表現される命令群を意味する。この命令群は、情報処理能力を有するシステムによって特定の機能を直接実行するか、または(a)他の言語、コード、または表記への変換、(b)他の媒体への複製、のいずれか一方もしくは双方が行われた後に実行することを意図するものである。
開示された本発明は前述の目的を達成するために好適であると考えられるが、当業者によって多数の変更および他の実施形態が想起され得ることが理解されるであろう。したがって、本発明の特許請求の範囲の記載はそのような変更および実施形態を全て本発明の精神および範囲内に含有するものとして解釈されるべきである。
本発明を適用し得るコンピュータ・ネットワーク・システムの構成を示す図である。 図1に示すコンピュータ・ネットワーク・システムのサーバを本発明に適用する例を示す簡略ブロック図である。 本発明に係る選択的起動方法を表す図である。
符号の説明
100 分散データ処理システム
102 ネットワーク
104 サーバ
106 記憶装置
108、110、112 クライアント
114、116、118 プリンタ

Claims (14)

  1. サーバ・コンピュータと、複数のクライアント・コンピュータと、前記サーバ・コンピュータにロードされたサーバ・アプリケーションのセットと、前記サーバ・アプリケーションの起動を管理する所定のプロトコル・スタックとを含むコンピュータ・ネットワーク・システムにおいてサーバ・アプリケーションを選択的に起動する方法であって、
    (a)前記コンピュータ・ネットワーク・システムについて複数の状態をシステム管理者が定義するステップと、
    (b)前記サーバ・アプリケーションの各々を前記状態の各々において起動できるか否かを判別するための条件を前記システム管理者が指定するステップと、
    (c)前記指定された条件に従って、前記所定のプロトコル・スタックが前記サーバ・アプリケーションの起動を管理するステップと、
    (d)優先順位を前記サーバ・アプリケーションに割り当てるステップと、
    (e)前記サーバ・コンピュータが、クライアント・コンピュータから送られたメッセージを受け取るステップと、
    (f)プロトコル・スタックは、前記メッセージを受け取り、サーバ・アプリケーションに割り当てられた優先順位に基づいて、フローされたメッセージをサーバ・アプリケーションに受け渡すために十分なリソースが利用可能であるか否かを判断するステップと
    を含む方法。
  2. 前記コンピュータ・ネットワーク・システムは定期的に初期化され、
    ステップ(b)は、前記サーバ・アプリケーションのサブセットを、前記システムの初期化中に起動できるアプリケーションとして指定するステップを含む、請求項1に記載の方法。
  3. 前記指定された条件は、前記サーバ・アプリケーションの少なくともいくつかのそれぞれを前記状態のうち少なくとも1つにおいて起動することができるよう事前に満たされていなくてはならない最低条件を含む、請求項1に記載の方法。
  4. 定義された最小限のシステム状態に達するまでは、前記所定のプロトコル・スタック、アプリケーションの起動を阻止する、請求項3に記載の方法。
  5. 前記状態は、制限状態、限定トラフィック状態、および通常状態を含み、
    前記制限状態では、所定のアプリケーションのみ実行することができ、
    前記限定トラフィック状態では、入力されたメッセージが低優先順位アプリケーションへ送られるのを前記所定のプロトコル・スタックが阻止し、
    前記通常状態では、前記アプリケーションを全て実行することができる、請求項1に記載の方法。
  6. 前記通常状態から前記限定トラフィック状態に移行するとき、前記サーバ・コンピュータはアプリケーションを停止せず、代わりに前記プロトコル・スタックが、メッセージを低優先順位アプリケーションへ送らないようにする、請求項5に記載の方法。
  7. ステップ(b)は前記アプリケーションのサブセットを最高優先順位アプリケーションとして指定するステップを含み、
    前記状態は、前記最高優先順位アプリケーションのみ実行することができる高優先順位状態をさらに含む、請求項5に記載の方法。
  8. コンピュータ・ネットワーク・システムであって、該システムは、
    サーバ・コンピュータと、
    複数のクライアント・コンピュータと、
    前記サーバ・コンピュータにロードされたサーバ・アプリケーションのセットと、
    前記サーバ・アプリケーションの起動を管理する所定のプロトコル・スタックと、
    前記サーバ・アプリケーションを選択的に起動することができる手段とを含み、該手段は、
    a.前記コンピュータ・ネットワーク・システムについて複数の状態を定義するための入力をシステム管理者から受け取る手段と、
    b.前記サーバ・アプリケーションの各々を前記状態の各々において起動できるか否かを判別する条件を指定するための入力を前記システム管理者から受け取る手段と、
    を含み、
    前記所定のプロトコル・スタックは、前記指定された条件に従って前記サーバ・アプリケーションの起動を管理し、 優先順位が前記サーバ・アプリケーションに割り当てられ、前記サーバ・コンピュータは、クライアント・コンピュータから送られたメッセージを受け取り、プロトコル・スタックは、前記メッセージを受け取り、サーバ・アプリケーションに割り当てられた優先順位に基づいて、フローされたメッセージをサーバ・アプリケーションに受け渡すために十分なリソースが利用可能であるか否かを判断する、コンピュータ・ネットワーク・システム。
  9. 前記コンピュータ・ネットワーク・システムは定期的に初期化され、
    前記条件を指定するための入力を前記システム管理者から受け取る前記手段は、前記サーバ・アプリケーションのサブセットを、前記システムの初期化中に起動できるアプリケーションとして指定する入力を、前記システム管理者から受け取る手段を含む、請求項8に記載のコンピュータ・ネットワーク・システム。
  10. 前記指定された条件は、前記サーバ・アプリケーションの少なくともいくつかのそれぞれを前記状態のうち少なくとも1つにおいて起動することができるよう事前に満たされていなくてはならない最低条件を含む、請求項8に記載のコンピュータ・ネットワーク・システム。
  11. 定義された最小限のシステム状態に達するまで、前記所定のプロトコル・スタックはアプリケーションを起動させない、請求項10に記載のコンピュータ・ネットワーク・システム。
  12. 前記状態は、制限状態、限定トラフィック状態、および通常状態を含み、
    前記制限状態では、所定のアプリケーションのみ実行することができ、
    前記限定トラフィック状態では、入力されたメッセージが低優先順位アプリケーションへ送られるのを、前記所定のプロトコル・スタックが阻止し、
    前記通常状態では、前記アプリケーションを全て実行することができる、請求項8に記載のコンピュータ・ネットワーク・システム。
  13. 前記条件を指定するための入力を前記システム管理者から受け取る前記手段は、前記サーバ・アプリケーションのサブセットを、最高優先順位アプリケーションとして指定する入力を、前記システム管理者から受け取る手段を含み、
    前記状態は、前記最高優先順位アプリケーションのみ実行することができる高優先順位状態をさらに含む、請求項12に記載のコンピュータ・ネットワーク・システム。
  14. 請求項1乃至7のいずれか1項に記載の方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラム。
JP2006329359A 2005-12-07 2006-12-06 Tcp/ipリンクおよびトラフィックを選択的に起動する方法、コンピュータ・ネットワーク・システム、およびプログラム記憶デバイス Expired - Fee Related JP5128117B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/296,624 US7664841B2 (en) 2005-12-07 2005-12-07 Selective activation of TCP/IP link and traffic
US11/296624 2005-12-07

Publications (2)

Publication Number Publication Date
JP2007157160A JP2007157160A (ja) 2007-06-21
JP5128117B2 true JP5128117B2 (ja) 2013-01-23

Family

ID=38120072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006329359A Expired - Fee Related JP5128117B2 (ja) 2005-12-07 2006-12-06 Tcp/ipリンクおよびトラフィックを選択的に起動する方法、コンピュータ・ネットワーク・システム、およびプログラム記憶デバイス

Country Status (4)

Country Link
US (1) US7664841B2 (ja)
JP (1) JP5128117B2 (ja)
KR (1) KR100974159B1 (ja)
CN (1) CN1980239B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100241760A1 (en) * 2009-03-18 2010-09-23 Microsoft Corporation Web Front-End Throttling
US20110208854A1 (en) * 2010-02-19 2011-08-25 Microsoft Corporation Dynamic traffic control using feedback loop
CN113225344B (zh) * 2021-05-10 2022-09-30 深信服科技股份有限公司 一种访问控制方法、装置、设备及可读存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5261104A (en) * 1990-03-22 1993-11-09 International Business Machines Flexible computer initialization
US5249270A (en) * 1991-03-29 1993-09-28 Echelon Corporation Development system protocol
JPH0744276A (ja) 1993-07-26 1995-02-14 Canon Inc 情報処理装置
US5692129B1 (en) * 1995-07-07 1999-08-17 Novell Inc Managing application programs in a computer network by using a database of application objects
DE19734515A1 (de) * 1997-08-08 1999-02-11 Siemens Ag Verfahren zur Einrichtung und/oder Bearbeitung eines Dienstes eines intelligenten Netzes
US7024450B1 (en) * 1997-10-06 2006-04-04 Mci, Inc. Method and apparatus for deploying service modules among service nodes distributed in an intelligent network
US6279032B1 (en) * 1997-11-03 2001-08-21 Microsoft Corporation Method and system for quorum resource arbitration in a server cluster
US6272544B1 (en) * 1998-09-08 2001-08-07 Avaya Technology Corp Dynamically assigning priorities for the allocation of server resources to completing classes of work based upon achievement of server level goals
US7137119B1 (en) * 2000-05-02 2006-11-14 Microsoft Corporation Resource manager architecture with resource allocation utilizing priority-based preemption
GB2362776B (en) * 2000-05-23 2002-07-31 3Com Corp Allocation of asymmetric priority to traffic flow in network switches
US6763378B1 (en) * 2000-10-12 2004-07-13 International Business Machines Corporation Synchronous TCP/IP port monitor for enhanced computer system security
US6934952B2 (en) * 2001-04-09 2005-08-23 International Business Machines Corporation Method and apparatus for managing multiple instances of server code on a machine
US6944678B2 (en) * 2001-06-18 2005-09-13 Transtech Networks Usa, Inc. Content-aware application switch and methods thereof
US6922727B2 (en) * 2001-06-26 2005-07-26 International Business Machines Corporation Method and system for managing parallel data transfer through multiple sockets to provide scalability to a computer network
US20030074421A1 (en) * 2001-08-14 2003-04-17 Mieko Kusano Internet access via specific server and via proprietary application for selecting and controlling content: remote and local
DE10229676B4 (de) * 2002-06-27 2013-05-29 Robert Bosch Gmbh Verfahren zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms
KR20050000445A (ko) * 2003-06-24 2005-01-05 (주)엠타이드 터미널 서비스 기반 컴퓨팅 환경에서의 어플리케이션 배포시스템 및 방법
US8213422B2 (en) * 2004-06-04 2012-07-03 Rockstar Bidco, LP Selective internet priority service
US7711835B2 (en) 2004-09-30 2010-05-04 Citrix Systems, Inc. Method and apparatus for reducing disclosure of proprietary data in a networked environment
US7752624B2 (en) * 2004-12-21 2010-07-06 Hewlett-Packard Development Company, L.P. System and method for associating workload management definitions with computing containers

Also Published As

Publication number Publication date
US20070130307A1 (en) 2007-06-07
CN1980239B (zh) 2014-06-18
KR20070059956A (ko) 2007-06-12
US7664841B2 (en) 2010-02-16
JP2007157160A (ja) 2007-06-21
KR100974159B1 (ko) 2010-08-04
CN1980239A (zh) 2007-06-13

Similar Documents

Publication Publication Date Title
RU2363040C2 (ru) Доставка сообщений между двумя конечными пунктами с конфигурируемыми гарантиями и признаками
EP1303096B1 (en) Virtual network with adaptive dispatcher
EP1462941B1 (en) Improving availability and scalability in a messaging system in a manner transparent to the application
US8331366B2 (en) System and method for deployment of a software image to a plurality of target devices
US6345296B1 (en) Method system and computer program product for providing pull model data communication
US8001176B2 (en) Web service with multiple listening endpoints
US20090316581A1 (en) Methods, Systems and Computer Program Products for Dynamic Selection and Switching of TCP Congestion Control Algorithms Over a TCP Connection
KR20130126630A (ko) 파일 시스템 세션 내 다중채널 연결
TWI239732B (en) A method, computer readable medium and system for providing QoS for an iSCSI environment
US20060277284A1 (en) Distributed kernel operating system
JP2006338666A (ja) 分散カーネルオペレーティングシステム
WO2016099528A1 (en) Multicast advertisement message for a network switch in a storage area network
US8959171B2 (en) Method and apparatus for acknowledging a request for data transfer
US6088729A (en) Method, system, and computer program product for establishing dialogs in an intraconnect data communication
JP5128117B2 (ja) Tcp/ipリンクおよびトラフィックを選択的に起動する方法、コンピュータ・ネットワーク・システム、およびプログラム記憶デバイス
JP3469501B2 (ja) ネットワーク機器制御装置及び通信システム
US6697895B1 (en) Network attached tape storage system
US8423827B2 (en) Topology based correlation of threshold crossing alarms
JP4415391B2 (ja) データをネットワークに送信する方法及び装置並びにデータをネットワークから受信する方法及び装置
US20240251016A1 (en) Communication protocol, and a method thereof for accelerating artificial intelligence processing tasks
JP3229265B2 (ja) アドレス変換装置及びアドレス変換プログラムを記録した記録媒体
EP0958688B1 (en) Method and system for data communication using an intraconnect architecture
JPH11328130A (ja) ネットワークジョブ実行システム
JP2002244873A (ja) 通信処理方法ならびに通信処理プログラムが記録される記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120921

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121031

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees