JP4745287B2 - データ伝送方法及びトランザクション調整方法並びに記録媒体 - Google Patents

データ伝送方法及びトランザクション調整方法並びに記録媒体 Download PDF

Info

Publication number
JP4745287B2
JP4745287B2 JP2007141158A JP2007141158A JP4745287B2 JP 4745287 B2 JP4745287 B2 JP 4745287B2 JP 2007141158 A JP2007141158 A JP 2007141158A JP 2007141158 A JP2007141158 A JP 2007141158A JP 4745287 B2 JP4745287 B2 JP 4745287B2
Authority
JP
Japan
Prior art keywords
node
time
memory
time contract
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
JP2007141158A
Other languages
English (en)
Other versions
JP2007213622A (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.)
Microsoft Corp
Original Assignee
Microsoft 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
Priority claimed from US10/007,060 external-priority patent/US6976074B2/en
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2007213622A publication Critical patent/JP2007213622A/ja
Application granted granted Critical
Publication of JP4745287B2 publication Critical patent/JP4745287B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/24Negotiation of communication capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • 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/28Timers or timing mechanisms used in protocols
    • 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/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Traffic Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Medicines Containing Material From Animals Or Micro-Organisms (AREA)
  • Acyclic And Carbocyclic Compounds In Medicinal Compositions (AREA)
  • Developing Agents For Electrophotography (AREA)

Description

本発明は、分散コンピューティングシステムの分野に関する。より詳細には、本発明は、分散コンピューティングシステムのノード間においてトランザクションを調整するための方法および装置を提供する。
分散コンピューティングシステムは、通常、トランザクション処理モニタを利用してシステムのノードの状態を監視する。トランザクションに関与するノードが応答する状態にあるか、応答しない状態にあるかを判定するのに固定「タイムアウト」期間が、トランザクション処理モニタによって使用されてきた。詳細には、ノードが、タイムアウト値を超える期間、トランザクション処理モニタと通信しない場合、そのノードは、応答しない状態にあると見なされ、トランザクションが打ち切られることが可能である。
いくつかの文献に上述のような従来の技術に関連した技術内容が開示されている(例えば、特許文献1、2参照)。
米国特許第6,532,213号明細書 米国特許第6,724,726号明細書
固定タイムアウト値は、分散コンピューティングシステムの柔軟性および効率を制限する。例えば、1組のノードが、データを処理する、またはその他の機能を行うのに長い接続解除時間を有することを望むが、それでも、トランザクションが打ち切られるのを回避するため、固定タイムアウト期間内に応答しなければならない。これは、コンピュータ装置が、ある期間、すべての通信インフラストラクチャから接続解除する、接続解除されたコンピューティング環境では特に問題である。また、固定タイムアウト値を利用するコンピュータシステムは、ノード間で存在する可能性がある待ち時間の大幅な変動に効果的に対処しない。
したがって、分散コンピューティングシステムのノードの応答状態を判定することに関してより高い柔軟性を提供するシステムおよび方法に対する当分野における必要性が存在する。
本発明は、このような問題に鑑みてなされたもので、その目的とするところは、分散コンピューティングシステムにより高い柔軟性を与えるデータ伝送方法及びトランザクション調整方法並びに記録媒体を提供することにある。
本発明は、分散コンピューティングシステムにおけるノード間のトランザクションを調整するための方法、システム、およびコンピュータ実行可能構成要素を提供することによって従来技術の限界の1つまたは複数を克服する。この分散コンピューティングシステムにおけるノードは、時間契約値を交渉することができる。ノードは、その時間契約の中で特定される所定の期間内に別のノードまたはトランザクションコーディネータと通信しないとき、応答しない状態にあると判定される。ノードが時間契約を交渉できるようにすることにより、より高い柔軟性が提供され、ノードが、自らのパフォーマンスを最適化できるようになる。
本発明によれば、分散コンピューティングシステムにより高い柔軟性が提供され、ノードが、自らのパフォーマンスを最適化できるようになる。
以下、図面を参照して本発明の実施形態を詳細に説明する。なお、各図面において同様の機能を有する箇所には同一の符号を付し、説明の重複は省略する。本発明は例示を目的として説明されるが、添付の図面に限定されるものではない。
本発明の態様は、パーソナルコンピュータ、パーソナルデジタルアシスタント、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの家庭用電化製品またはプログラマブル家庭用電化製品、ネットワークPCS(Personal Communications Services)、ミニコンピュータ、メインフレームコンピュータなどのコンピュータ装置を使用して実施することができる。詳細には、2つ以上のコンピュータ装置が、分散コンピューティングシステムにおいてトランザクションを処理するノードを形成することが可能である。必須ではないが、本発明は、コンピュータ装置によって実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的状況で説明する。一般に、プログラムモジュールは、特定のタスクを行う、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、構成要素、データ構造等を含む。分散コンピューティングシステムでは、通信ネットワークを介してリンクされたリモートコンピュータ装置によってタスクが実行されることが可能である。分散コンピューティング環境では、ローカルのメモリ記憶デバイスとリモートのメモリ記憶デバイスの両方の中にプログラムモジュールを配置することが可能である。
図1は、本発明の様々な態様を実施するのに使用することができる従来の汎用的なデジタルコンピューティング環境を示す概略図である。コンピュータ100が、プロセッサ110と、システムメモリ120と、システムメモリからプロセッサ110まで含む様々なシステム構成要素を結合するシステムバス1330とを含む。システムバス130は、様々なバスアーキテクチャのどれかを使用する、メモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含むいくつかのタイプのバス構造のどれであることも可能である。システムメモリ120は、読取り専用メモリ(ROM)120−1およびランダムアクセスメモリ(RAM)120−2を含む。
スタートアップ中などにコンピュータ100内部の要素間で情報の転送を助ける基本ルーチンを含むBIOS(Basic Input/Output System)160が、ROM120−1の中に格納されている。また、コンピュータ100は、ハードディスク(図示せず)に対して読取りおよび書込みを行うためのハードディスクドライブ170と、リムーバル磁気ディスク190に対して読取りおよび書込みを行うための磁気ディスクドライブ180と、CD−ROMまたはその他の光媒体などのリムーバル光ディスク192に対して読取りおよび書込みを行うための光ディスクドライブ191とを含む。ハードディスクドライブ170、磁気ディスクドライブ180、および光ディスクドライブ191はそれぞれ、ハードディスクドライブインタフェース192、磁気ディスクドライブインタフェース193、および光ディスクドライブインタフェース194でシステムバス130に接続されている。これらのドライブおよび関連するコンピュータ可読媒体が、パーソナルコンピュータ100のためのコンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性ストレージを提供する。磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)などのコンピュータによってアクセス可能であるデータを記憶することができるその他のタイプのコンピュータ可読媒体も、例としての動作環境で使用できることが、当業者には理解されよう。
オペレーティングシステム195a、195b、1つまたは複数のアプリケーションプログラム196a、196b、その他のプログラムモジュール197a、197b、およびプログラムデータ198a、198bを含め、いくつかのプログラムモジュールをハードディスク上、磁気ディスク190上、ROM120−1上、またはRAM120−2上に記憶することができる。ユーザは、キーボード101およびポインティングデバイス102などの入力デバイスを介してコンピュータ100にコマンドおよび情報を入力することができる。その他の入力デバイス(図示せず)には、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナ等が含まれることが可能である。以上およびその他の入力デバイスは、しばしば、システムバスに結合されたシリアルポートインタフェース106を介してプロセッサ110に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス(USB)などのその他のインタフェースで、またはPCIボードを介してプロセッサ110に接続することも可能である。モニタ107、またはその他のタイプの表示装置も、ビデオアダプタ108などのインタフェースを介してシステムバス130に接続される。モニタに加えて、パーソナルコンピュータは、通常、スピーカおよびプリンタなどのその他の周辺出力装置(図示せず)を含む。
コンピュータ100は、リモートコンピュータ109などの1つまたは複数のリモートコンピュータに対する論理接続を使用してネットワーク化された環境で動作することが可能である。リモートコンピュータ109は、サーバ、ルータ、ネットワークPC、ピアデバイス、またはその他の共通ネットワークノードであることが可能であり、また通常、コンピュータ100に関連して説明した要素の多く、またはすべてを含む。ただし、メモリ記憶デバイス111だけを図1に示している。図1に描いた論理接続には、ローカルエリアネットワーク(LAN)112、およびワイドエリアネットワーク(WAN)113が含まれる。そのようなネットワーク環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、およびインターネットで一般的である。
LANネットワーキング環境で使用される場合、コンピュータ100は、ネットワークインタフェースまたはアダプタ114を介してローカルエリアネットワーク112に接続される。WANネットワーキング環境で使用される場合、パーソナルコンピュータ100は、通常、インターネットなどのワイドエリアネットワーク113を介して通信を確立するため、モデム115、またはその他の手段を含む。内部または外部にあることが可能なモデム115は、シリアルポートインタフェース106を介してシステムバス130に接続される。ネットワーク化された環境において、パーソナルコンピュータ100に関連して述べたプログラムモジュール、またはその部分は、リモートメモリ記憶デバイスの中に記憶することができる。
図示したネットワーク接続は、例としてのものであり、コンピュータ間で通信リンクを確立するその他のやり方を使用するのも可能であることが理解されよう。TCP/IP(Transmission Control Protocol/Internet Protocol)、イーサネット(登録商標)、FTP(file transfer protocol)、HTTP(HyperText Transport Protocol)などの様々な周知のプロトコルのどれも存在が想定され、システムをクライアント-サーバ構成で動作させて、ユーザが、WebベースのサーバからWebページを取得することができるようにすることが可能である。様々な従来のWebブラウザのどれかを使用してWebページ上のデータを表示し、操作することができる。
図2は、本発明の実施形態による分散コンピューティングシステムを示している。トランザクションに関与する一群のノード202、204、および206が、トランザクションコーディネータ208と通信する。ノード202、204、および206の1つまたは複数をコンピュータ装置、ルーティングデバイス、端末、アプリケーション、または何らかの他のハードウェア構成要素またはソフトウェア構成要素を使用して実装することができる。本発明の一態様では、ノード202、204、および206は、分散コンピューティング環境の構成要素である。さらに、ノード202、204、および206のすべて、またはいくつかを単一のコンピュータ装置、単一のルーティングデバイス、単一の端末、単一のアプリケーション、または単一のその他のハードウェア構成要素またはソフトウェア構成要素を使用して実行することも可能である。ノード202、204、および206は、ローカルエリアネットワーク、ワイドエリアネットワーク、無線ネットワーク、またはシステムバスを含むことが可能な様々な通信チャネルを介して、トランザクションコーディネータ208に、かつ/または互いに結合することができる。
トランザクションコーディネータ208は、データを受信し、ステータスメッセージをノード202、204、および206に伝送するためのインタフェースモジュール210を含むことが可能である。時間契約メモリ212を使用して、トランザクションコーディネータ208に結合されたノード間で合意された時間契約値を記憶することができる。最終コンタクトメモリ214は、トランザクションコーディネータ208に結合されたノードによって行われた最終コンタクトを特定する情報を記憶することが可能である。比較モジュール216を利用してノードの応答状態を判定することができる。詳細には、比較モジュール216は、最終コンタクトメモリ214の中に記憶された最終コンタクトデータ、および現在時刻を利用して、特定のノードからの最終コンタクト以来、経過した時間を判定する。次に、比較モジュール216は、経過時間値をメモリ212の中に記憶された時間契約値と比較することができる。経過時間がその時間契約値を超えたとき、比較モジュール216は、その特定のノードが応答しない状態にあると判定する。
また、トランザクションコーディネータ208は、提案の時間契約を生成するのに使用することが可能な時間契約生成モジュール218も含むことが可能である。以下に、時間契約を生成する例としての方法を詳細に説明する。本発明のいくつかの実施形態では、提案の時間契約は、特定のノードの待ち時間を考慮に入れる。一対のノード間の待ち時間は、いくつかの要因との関係にある可能性があり、その要因の1つは、ノードの負荷条件である可能性がある。ノード、またはネットワークの部分のパフォーマンスを監視するため、ネットワークパフォーマンス監視モジュール220を含めることが可能である。時間契約生成モジュール218は、提案の時間契約を生成する際、ネットワークパフォーマンス監視モジュール220によって獲得された情報を利用することができる。例えば、所与のノードが2ミリ秒以内にあるタスクを行うことができるべきであると時間契約生成モジュールが判定し、かつそのノードと別のノードの間の待ち時間がおよそ1ミリ秒であるとネットワークパフォーマンス監視モジュール220が判定した場合、時間契約生成モジュール218は、例えば、3ミリ秒の時間契約を提案することができる。
図3は、本発明の実施形態によるノードによって使用されることが可能な分散コンピューティングシステムにおいてデータを伝送する方法を示している。まず、ステップ302で、第1のノードが、トランザクションコーディネータに登録することが可能である。この登録ステップは、第1のノード、および第1のノードが通信することを望む1つまたは複数の他のノードを特定することを含むことが可能である。次に、ステップ304で、第1のノードが、第2のノードとの提案の時間契約をトランザクションコーディネータ208に伝送することが可能である。提案の時間契約は、応答しない状態にあると見なされることなく、ネットワークノードがトランザクションコーディネータ208と通信しないことが可能な最大期間を特定することが可能である。
ステップ306で、トランザクションコーディネータ208は、その提案の時間契約を承認または拒否することが可能である。トランザクションコーディネータ208は、判定を行う際、トランザクションに関与するその他のノードに問い合わせる、ネットワークパフォーマンス監視モジュール220によって生成された待ち時間データを考慮する、またはノードの過去のパフォーマンス履歴などのその他の情報を考慮することができる。一実施形態では、トランザクションコーディネータ208は、トランザクションに関与するノードに対する関係のある待ち時間を超える期間を含む、すべての提案の時間契約を拒否する。
時間契約がトランザクションコーディネータ208によって拒否されたとき、トランザクションコーディネータ208は、時間契約生成モジュール218を利用して新しい時間契約を提案することができる。例えば、時間がノードのどれかの待ち時間を超えるために提案の時間契約が拒否されたとき、トランザクションコーディネータ208は、トランザクションに関与するノードのその待ち時間を考慮に入れた新しい時間契約を生成することができる。
図3に戻ると、トランザクションコーディネータが時間契約を拒否した後、次にステップ308で、第1のノードは、トランザクションコーディネータ208が新しい時間契約を提案したか否かを判定する。トランザクションコーディネータ208は、拒否を伝送するのと同時に提案の新しい時間契約を伝送することができる。トランザクションコーディネータ208によって時間契約が全く提案されない場合、ステップ304で、第1のノードは、新しい提案の時間契約をトランザクションコーディネータ208に伝送することができる。トランザクションコーディネータ208が、新しい時間契約を提案した場合、ステップ310で、第1のノードは、その提案の時間契約が受入れ可能であるかどうかを判定することができる。もちろん、この提案の新しい時間契約が受入れ可能であるか否かを判定する際に第1のノードによって使用されることが可能な多数の要因が存在する。提案の新しい時間契約が受入れ可能でない場合、ステップ312で、第1のノードは、拒否をトランザクションコーディネータ208に伝送し、ステップ304で、さらに別の時間契約を提案することができる。ステップ312とステップ304を単一のステップに結合することも可能である。提案の新しい時間契約が受入れ可能である場合、ステップ314で、第1のノードは、その時間契約の承認をトランザクションコーディネータ208に伝送することができる。
ステップ316で、第1のノードは、データを第2のノードに送信する準備をする。このステップは、ステータス情報クエリをトランザクションコーディネータ208に送信することを含むことが可能である。次に、ステップ318で、第1のノードは、トランザクションコーディネータ208からステータス情報を受信する。このステータス情報は、第2のノードのステータス、例えば、第2のノードが応答する状態にあるかどうかを含むことが可能である。このステータス情報に基づき、ステップ320で、第1のノードは、第2のノードが応答する状態にあるかどうかを判定することができる。第2のノードが応答しない状態にある場合、ステップ322でトランザクションを打ち切ることが可能である。第2のノードが応答する状態にあると判定された場合、ステップ324で、データを第2のノードに伝送することができる。
図3は、例示だけを目的として、2つのノードが関与するトランザクションを示している。本発明の態様は、任意の数のノードが関与するトランザクションに関連して使用するのが可能であることが、当業者には理解されよう。3つ以上のノード間のトランザクションに関わる実施形態では、ノードおよび/またはトランザクションコーディネータ208は、処理遅延問合せを要求し、またそれに応答するように構成することができる。例えば、第1のステップでノード206がデータをノード204に伝送し、次に第2のステップでノード204がデータをノード202に伝送する2ステップトランザクションにノード202、204、および206(図2に示す)が関与していることが可能である。第1のステップ中、ノード202は、処理遅延問合せをノード204またはトランザクションコーディネータ208に送信することができる。ノード204とノード206の間における契約の中の期間を超過していない場合、ノード204またはトランザクションコーディネータ208は、その時間契約の中の期間を超過することなくノード206が応答するのに有する残りの時間を示すメッセージをノード202に伝送することができる。
トランザクションに関与するノードは、複数の時間契約を有することが可能である。各時間契約が、異なるカテゴリのトランザクションに対応することが可能である。例えば、株式の売り買いに関わるトランザクションは、それほど時間にセンシティブ(sensitive)でない、またはそれほど重要でないと考えられるトランザクションと比べたとき、比較的短い期間を有する時間契約を有することが可能である。さらに、代替の実施形態では、トランザクションコーディネータ208によって行われる機能の1つまたは複数は、トランザクションに関与するノードのどれかによって行われることも可能である。
また、本発明の態様は、ピアツーピア分散コンピューティングシステムにおいても実施することができる。図4は、ノード402〜404がピアツーピア構成に配置された実施形態を示している。ノード402〜404はそれぞれ、時間契約情報を記憶するのに使用することができるメモリ406〜408を含んでいる。詳細には、メモリ406-408の各々は、その他のノードの識別、時間契約値、ならびにノードのそれぞれとの最終コンタクトの時刻を含むことが可能である。メモリ406は、例えば、ノード402がノード403との時間契約を有すること、およびその時間契約値が4秒であることを示す情報を含む。さらに、ノード403との最終コンタクトは、10:04:21に行われている。ノード402〜404のそれぞれは、自らのそれぞれのメモリの中に記憶された情報を利用してその他のノードの応答状態を判定することができる。一実施形態では、メモリ406〜408は、ノードがリスタートされる際に記憶された情報が失われないように不揮発性デバイスを使用して実装される。
図5は、本発明の実施形態によるピアツーピア構成に配置されたノード間においてデータを伝送する方法を示している。まず、ステップ502で、ノードは、受信側ノードとの時間契約を交渉することができる。このステップは、提案の契約値を送信すること、受信すること、および分析することを含むことが可能である。データを伝送する前に、ステップ504で、ノードは、受信側ノードからの最終コンタクト以来、経過した時間を確認する。この経過時間は、現在時刻から最終コンタクトの時刻を引くことによって判定することができる。例えば、現在時刻が10:06:21である場合、ノード402(図4に示す)は、ノード403との最終コンタクト以来、経過した時間が2秒であると判定することができる。いくつかの実施形態では、トランザクションに関与するノードのそれぞれの現在時刻を同期させることが望ましい可能性がある。ネットワークタイムプロトコル(NTP)、またはその他の機構を使用してノードのそれぞれの現在時刻を同期させることができる。
ステップ506で、最終コンタクト以来、経過した時間が、その時間契約の中の期間と比較される。ノード402を含む上記に提示した例では、2秒の経過時間が、4秒の時間契約値と比較されることになる。最後に、経過時間が時間契約の中の期間を超過していない場合、ステップ508で、ノードは、データを受信側ノードに伝送することができる。
本発明は、本明細書で、本発明の特定の例としての実施形態に関連して説明してきた。本発明を理解する人は、頭記の特許請求の範囲に記載する本発明のより広い趣旨および範囲を逸脱することなく、本発明の原理を利用する変更形態、またはその他の実施形態、または変形形態を構想できることが、当業者には明白であろう。それらすべては、本発明の領域、趣旨、および範囲の中に入るものと見なされる。したがって、本明細書および図面は、限定するものではなく、例示するものと見なされるべきである。したがって、本発明は、頭記の特許請求の範囲に関して必要とされる可能性がある以外の限定は受けないものとする。
本発明と関連して使用することができる汎用コンピュータシステムを示すブロック図である。 本発明の実施形態によるトランザクションコーディネータを含む分散コンピューティングシステムを示す図である。 本発明の実施形態による分散コンピューティングシステムにおける情報を配信する方法を示す図である。 本発明の実施形態による分散コンピューティングシステムにおいてトランザクションを調整するためのピアツーピアシステムを示す図である。 本発明の実施形態によるピアツーピア分散コンピューティングシステムにおいてトランザクションを調整する方法を示す図である。
符号の説明
109 リモートコンピュータ
110 プロセッサ
120−1 ROM
120−2 RAM
170 ハードディスクドライブ
202、204、206、402、403、404 ノード
208 トランザクションコーディネータ
210 インタフェースモジュール
212 時間契約メモリ
214 最終コンタクトメモリ
216 比較モジュール
218 時間契約生成モジュール
220 ネットワークパフォーマンス監視モジュール

Claims (2)

  1. 分散コンピューティングシステムにおけるノード間のトランザクション調整方法であって、前記分散コンピューティングシステムは少なくとも1つのコンピュータを有し、該コンピュータはメモリ、該メモリに接続されたプロセッサ及び前記メモリに格納され前記プロセッサ上で実行可能なプログラムを含み、前記プロセッサが前記メモリから前記プログラムを読み出して実行するときに、該プロセッサが実行する前記方法は、
    前記分散コンピューティングシステムの少なくとも第1のノードと第2のノードとの間における交渉された時間契約値を前記メモリの中に記憶するステップと、
    前記時間契約値が前記第2のノードの待ち時間を超えるために拒否される場合に、前記第2のノードの待ち時間に基づいて代替の時間契約値を生成するステップであって、該代替の時間契約値は、前記時間契約値に、前記第1のノードと前記第2のノードとの間の待ち時間値を足したものに等しく、該代替の時間契約値は、前記第1のノードに送信されて、該第1のノードによって受け入れられるか否かを判定される、ステップと、
    前記第1のノードから前記第2のノードのステータスの要求を受信するステップと、
    前記第2のノードからの最後の通信以来の経過時間を前記メモリ内の所定の期間と比較するステップであって、該所定の期間は、前記第1のノードによって受け入れられた前記代替の時間契約値に相当する、ステップと、
    前記経過時間が前記所定の期間を超過している場合、前記第2のノードが応答しない状態にあると判定するステップと
    内容が前記比較するステップに関係するステータスメッセージを前記第1のノードに伝送するステップと
    を含むことを特徴とする方法。
  2. コンピュータ装置に行わせるためのコンピュータ実行可能命令を含むコンピュータ読み取り可能な記録媒体であって、前記コンピュータ装置はメモリ及び該メモリに接続されたプロセッサを含み、前記命令は前記メモリにロードされ前記プロセッサ上で実行可能であり、前記プロセッサが前記メモリから前記命令を読み出して実行するときに、前記命令は、前記コンピュータ装置に、
    分散コンピューティングシステムの少なくとも第1のノードと第2のノードとの間における交渉された時間契約値を前記メモリの中に記憶するステップと、
    前記時間契約値が前記第2のノードの待ち時間を超えるために拒否される場合に、前記第2のノードの待ち時間に基づいて代替の時間契約値を生成するステップであって、該代替の時間契約値は、前記時間契約値に、前記第1のノードと前記第2のノードとの間の待ち時間値を足したものに等しく、該代替の時間契約値は、前記第1のノードに送信されて、該第1のノードによって受け入れられるか否かを判定される、ステップと、
    前記第1のノードから前記第2のノードのステータスの要求を受信するステップと、
    前記第2のノードからの最後の通信以来の経過時間を前記メモリ内の所定の期間と比較するステップであって、該所定の期間は、前記第1のノードによって受け入れられた前記代替の時間契約値に相当し、前記経過時間が前記所定の期間を超過している場合、前記第2のノードが応答しない状態にあると判定される、ステップと、
    内容が前記比較するステップに関係するステータスメッセージを前記第1のノードに伝送するステップと
    を含むことを実行させることを特徴とするコンピュータ読み取り可能な記録媒体。
JP2007141158A 2001-10-16 2007-05-28 データ伝送方法及びトランザクション調整方法並びに記録媒体 Expired - Fee Related JP4745287B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US32979601P 2001-10-16 2001-10-16
US60/329,796 2001-10-16
US34637001P 2001-10-19 2001-10-19
US60/346,370 2001-10-19
US10/007,060 2001-11-06
US10/007,060 US6976074B2 (en) 2001-10-16 2001-11-06 Systems and methods for negotiating transactions between nodes

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002302250A Division JP4057881B2 (ja) 2001-10-16 2002-10-16 データ伝送方法

Publications (2)

Publication Number Publication Date
JP2007213622A JP2007213622A (ja) 2007-08-23
JP4745287B2 true JP4745287B2 (ja) 2011-08-10

Family

ID=27358256

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2002302250A Expired - Fee Related JP4057881B2 (ja) 2001-10-16 2002-10-16 データ伝送方法
JP2007141158A Expired - Fee Related JP4745287B2 (ja) 2001-10-16 2007-05-28 データ伝送方法及びトランザクション調整方法並びに記録媒体

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2002302250A Expired - Fee Related JP4057881B2 (ja) 2001-10-16 2002-10-16 データ伝送方法

Country Status (5)

Country Link
EP (1) EP1333645B1 (ja)
JP (2) JP4057881B2 (ja)
AT (1) ATE507655T1 (ja)
DE (1) DE60239852D1 (ja)
HK (1) HK1057296A1 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02114348A (ja) * 1988-10-24 1990-04-26 Nec Corp 無通信時間監視方式
US6111886A (en) 1997-03-07 2000-08-29 Advanced Micro Devices, Inc. Apparatus for and method of communicating among devices interconnected on a bus
US6178449B1 (en) 1997-11-26 2001-01-23 International Business Machines Corporation Apparatus and method for measuring transaction time in a computer system
JPH11338802A (ja) * 1998-05-27 1999-12-10 Nec Corp コネクション自動切断機能付きロードバランス装置

Also Published As

Publication number Publication date
JP4057881B2 (ja) 2008-03-05
EP1333645B1 (en) 2011-04-27
EP1333645A3 (en) 2005-07-20
JP2003186834A (ja) 2003-07-04
JP2007213622A (ja) 2007-08-23
EP1333645A2 (en) 2003-08-06
DE60239852D1 (de) 2011-06-09
ATE507655T1 (de) 2011-05-15
HK1057296A1 (en) 2004-03-19

Similar Documents

Publication Publication Date Title
US9009326B2 (en) System and method for managing connections between a client and a server
US6976074B2 (en) Systems and methods for negotiating transactions between nodes
US7398546B2 (en) Network communication with client-forced authentication
TW201240413A (en) Lightweight input/output protocol
US8862773B2 (en) Scalable network apparatus for content based switching or validation acceleration
US6963996B2 (en) Session error recovery
US7835309B2 (en) Multiplexed communication for duplex applications
US7185114B1 (en) Virtual memory systems and methods
US8015110B2 (en) System and method of aggregating multiple transactions over network-based electronic payment transaction processing system
US8352623B2 (en) System for energy efficient computer management environment via tightly integrated target status and directed work sessions
US20050262211A1 (en) Communication device
JP4745287B2 (ja) データ伝送方法及びトランザクション調整方法並びに記録媒体
US20030212753A1 (en) Method and system of data synchronization using HTTP
JP2001167059A (ja) サービス要求装置およびデータ変換方法およびクライアントオブジェクトを有する計算機
JP3408435B2 (ja) Ftpサーバにおけるコード変換装置および変換方法およびコード変換プログラムを記録した記録媒体
JP2004139565A (ja) 通信方法
JP3994569B2 (ja) 画像処理装置
JP2812274B2 (ja) 疎結合多重計算機システムにおけるトランザクション負荷分散システム
JP2009118058A (ja) 通信管理システムおよび通信管理プログラム
JP2002163181A (ja) ファイル転送システム及びファイル転送方法
JP2007140831A (ja) 企業間業務データ交換装置、方法及びプログラム並びに企業間業務データ送受信システム
JP2008083842A (ja) データ転送装置及びデータ転送方法
JP2004139567A (ja) 通信システム及び通信システムの制御方法
JP2004140803A (ja) 通信クライアント、通信クライアントの制御方法、プログラム及び記録媒体
WO2001067272A1 (en) Virtual memory systems and methods

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070611

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100917

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110325

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

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

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

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4745287

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees