JP2008306714A - ネットワークアプリケーションにおける通信方法、通信装置及びそのためのプログラム - Google Patents
ネットワークアプリケーションにおける通信方法、通信装置及びそのためのプログラム Download PDFInfo
- Publication number
- JP2008306714A JP2008306714A JP2008135886A JP2008135886A JP2008306714A JP 2008306714 A JP2008306714 A JP 2008306714A JP 2008135886 A JP2008135886 A JP 2008135886A JP 2008135886 A JP2008135886 A JP 2008135886A JP 2008306714 A JP2008306714 A JP 2008306714A
- Authority
- JP
- Japan
- Prior art keywords
- communication path
- request
- network application
- communication
- message
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Multi Processors (AREA)
Abstract
【解決手段】ネットワークアプリケーションにおける通信のためのシステム、方法及び製造物。置換可能なトランスポートへの接続又は通信経路が、ネットワークアプリケーションにて起動される(図12)。起動後、ネットワークアプリケーションは、接続又は通信経路を受け付けるために、オブジェクトを生成する。接続又は通信経路が一旦確立すると、ネットワークアプリケーションは、置換可能なトランスポートのためのQoSを、置換可能なトランスポート、及び、接続又は通信経路に対応した少なくとも1つのオブジェクトに提供する。
【選択図】図12
Description
(関連出願)
本発明は、2001年4月9日出願の米国仮出願番号第60/282,163による利益を請求するものであり、その開示内容全体が、ここに一体に組み入れられる。
本発明は、通信ソフトウェアに関し、特に、通信チャネル内のサービス品質に対する共通の抽象化を提供すること、並びに、分散システムにおけるコンピュータプロセッサ及び通信チャネルリソースのスケジューリングを調整することに関する。
通信ハードウェア及びソフトウェアは、共通の通信リソースに関して競合している複数の通信チャネルから選択を行う機構を提供しようとするものである。これらのリソースの性質は、それぞれの通信機構において多種多様である。通信リソースの例としては、帯域幅、メッセージキュー、割込、メモリマッピング、バス優先度、及びDMAプロセッサタイム等がある。ある通信チャネルを他のものに優先させるために、通信アーキテクチャは、選択されたチャネルに、他のチャネルよりも優先させて重要な通信リソースを使用させるための機構、及び、それに関連して、ユーザがこれらの機構を制御する方法を、提供することになる。これらの機構、及び該機構を制御する方法は、通信サービス品質を操作可能とするものであるため、サービス品質すなわちQoSと称される。通信リソースは多種多様であるため、通信アーキテクチャにおける結果としてのQoS特性も多種多様となる。
通例、通信システムには、通信ノード上の通信ハードウェア間にて、データ通信に利用可能な帯域幅、通信ハードウェアの実行に関与する専用プロセッサ、及びあらゆる中継装置(スイッチ、クロスバー、ハブ、ルータ、ブリッジ、ゲートウェイ等)が、含まれる。
本発明による一実施形態は、ネットワークアプリケーションにおける通信方法であって、置換可能なトランスポートに対応した通信経路を、ネットワークアプリケーションにて起動し、前記ネットワークアプリケーションにおける前記通信経路を受け付けるオブジェクトを生成し、前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートのためのサービスレベルを反映した情報を、前記置換可能なトランスポートと、前記通信経路に対応した少なくとも1つのオブジェクトとに提供することを特徴とする通信方法に関する。
添付の図面は、本明細書に組み込まれていて、本明細書の一部を構成するものであり、その記述内容とともに、本発明の特徴及び原理を説明している。
以降の説明を通じて用いられる術語の解説を以下に示す。
これには、ORBの初期化及びオブジェクトリファレンスの取得が、含まれる。
・オブジェクトの識別及び特定
・接続の処理
・データ配信
本発明に従うシステム及び方法により、アプリケーションプログラマは、「プラグイン」モジュールを作成することが可能となる。プラグインモジュールにより、アプリケーションは、上述の問題を解決するために、各通信の優先度及びQoSを動的に選択可能となる。さらに、プログラマは、CPU及びネットワークリソースのスケジューリングを、最適化及び調整可能である。プログラマは、使用されている個々のアプリケーションについて適切な、代替のチャネル選択アルゴリズムを、選択可能である。
リクエストが受信されると、置換可能なトランスポートへの接続又は通信経路が、ネットワークアプリケーション内で起動される。起動後、接続又は通信経路を受け入れるために、オブジェクトが生成される。接続又は通信経路が一旦確立されると、ネットワークアプリケーションは、置換可能なトランスポート用のQoS情報を、置換可能なトランスポートに対して提供するとともに、接続又は通信経路に対応した少なくとも1つのオブジェクトに対しても提供する。QoSは、メッセージの配信、及びサーバがメッセージを処理する優先度に、対応している。そして、ネットワークアプリケーションは、リクエストからの情報に基づいて、接続又は通信経路、及びリクエストに対するサービスの優先度を選択する。
本発明は、独立した構成すなわちスタンドアロン構成又はネットワーク環境にて構成されたコンピュータシステムを用いて実施されうる。このようなシステムには、MS−DOS、Linux、LynxOS、Tornado/VxWorks、Unixの変形例のほとんど、Windows95/98/NT、及びMacintoshオペレーティングシステム等の様々なオペレーティングシステムを実行するパーソナルコンピュータ、並びに、LINUX、UNIX、及びUNIXの変形例のオペレーティングシステムを実行するコンピュータワークステーションが、含まれうる。図1に、典型的なコンピュータ環境を示す。この図には、本発明によるコンピュータワークステーションの標準的なハードウェア構成が示されている。
本発明は、手続き型プログラム言語か、あるいは、オブジェクト指向プログラムモデル及び方法論を用いて、実施可能である。オブジェクト指向プログラムモデル及び方法論を採用した言語の例として、Ada 95、Java、Smallltalk、C、Objective C、及びC++言語等がある。オブジェクト指向プログラミング(OOP)は、ますます、複雑なアプリケーションを開発するための共通の方法となってきている。メッセージインタフェース用のOOPクラス及びオブジェクトの組が提供されるように、これらのOOPの原理が、電子メッセージ処理システムのメッセージ処理インタフェースに適用されることが、要請されている。
ORBが異なると、IDLコンパイラ、リポジトリ、及び種々のオブジェクトアダプタとともに、インプリメンテーションの選択が非常に異なり、また、異なる特性及び特質を有するクライアント及びオブジェクトのインプリメンテーションに対して、サービスの組が提供される。ある構成では、ORBは、単一のコンポーネントとして実装される必要はなく、そのインタフェースによって規定される。適切なインタフェースを提供するORBのあらゆるインプリメンテーションは、本発明の文脈内で許容されうる。インタフェースは、3種類に分類される。
1.全てのORBインプリメンテーションに対して同一のオペレーション。
2.オブジェクトの個々の型に特有なオペレーション。
3.オブジェクト・インプリメンテーションの個々の形式に特有なオペレーション。
ェースの双方から呼び出されうる。クライアントのリクエスト・コンストラクション・インタフェースのいずれの形式によっても、同様の結果がもたらされる。個々のオペレーションに特有のスケルトンを通じてアクセスされるのではなく、オブジェクトのインプリメンテーションには、クライアント側の動的呼出インタフェースと同様にオペレーション名及びパラメータへのアクセスを提供するインタフェースを通じて、到達する。パラメータを特定するために、それらのパラメータの純粋に静的な知識が用いられてもよく、あるいは、動的な知識(おそらく、インタフェース・リポジトリを通じて特定される)が用いられてもよい。
オブジェクト・インプリメンテーションは、どのオブジェクトアダプタ312を用いるかを選択してもよい。この判別は、オブジェクト・インプリメンテーションがどの種類のサービスを必要としているかに基づいてなされる。
オブジェクトリファレンスは、各リクエスト上での認証の手間を減らしつつ、偽造不能とされうる。オペレーティングシステムは、クライアント及びインプリメンテーションの位置及び構造を認識可能なので、様々な最適化がインプリメント可能である。例えば、両者が同一の機器上にある場合にマーシャリングを防止する。
・オブジェクト・リファレンスの生成及び解釈
・メソッドの呼出
・対話のセキュリティ
・オブジェクト及びインプリメンテーションの起動及び停止
・オブジェクト・リファレンスを対応するオブジェクト・インプリメンテーションへマッピングすること
・インプリメンテーションの登録
クライアントが、自身のアドレス空間に対して対象オブジェクトがローカルであるかどうか知らない場合、位置の透明性が、同マシン上の別のプロセス内にインプリメントされるか、あるいは、別のマシン上のプロセス内にインプリメントされる。位置の透明性は、従来から利用可能な技術に対しての、CORBAの利点である。CORBAは、分散アプリケーションを開発及び実行するために、位置及びアクセスの透明性の双方を提供する。
アプリケーションのコンポーネント又はオブジェクトは、複数のプロセスに分散されてもよい。クライアント及びサーバの双方は、CORBAのインフラを利用するのであれば、機器構成、オペレーティングシステム、プログラミング言語、又は位置を考慮せずに、通信可能である。
・IDLオペレーションが、複数の部分に分割されうる。
・複数のスレッドが使用されうる。
・非ブロッキング挙動−クライアントは、クライアントのプロセス全体をブロックすることのないリモート呼出を、実行可能である。これには、同オブジェクト・インプリメンテーション上の同時呼出、及び他のオブジェクト・インプリメンテーション上の同時呼出が、含まれる。
・より望ましい応答時間−サーバは、単一又は複数の並行したクライアントからの複数のリクエストに、同時に応答可能である。各スレッドは、オペレーションのリクエストに対して、その出所にかかわらず、並行して処理及び応答することが可能である。また、並行処理により、短い処理時間で、要求の多い(“starving”)オペレーションからの長いサーバオペレーションを防止する。また、開発者は、任意のオブジェクト・インプリメンテーションのクラスの本体内における追加のスレッドを使用して、より望ましい応答時間又は追加の並行セマンティックを提供してもよい。例えば、図11に、2つの重複したマルチスレッドのクライアント・サーバ相互作用1100を示す。
ほとんどの分散アプリケーションは、ネットワークインタフェースから設計される。この手法での問題点として、分散アプリケーションの設計及び結果としてのインプリメンテーションが、個々のネットワークインタフェースに縛られ、分散アプリケーションが、他の型のトランスポートとともに動作できなくなるということがある。例えば、ソケット・アプリケーションプログラムインタフェース(API)の周りに設計されたアプリケーションは、切換ファブリック(switched fabric)の共有メモリインタフェース上で動作するように変更されることが、容易ではない。複数のトランスポート型に対応可能な汎用トランスポートの抽象化を提供することにより、複数のトランスポート型上で動作するアプリケーションが作成される。各トランスポートの対応は、アプリケーション開発者が自身の置換可能なトランスポートを作成可能となるように、構成される。汎用トランスポート上に、ミドルウェア・インフラを構築することにより、ミドルウェア・インフラで構築された抽象化アプリケーションも、特定のあらゆるトランスポートインタフェースから独立したものとなる。
・アプリケーション開発者は、アプリケーション及びミドルウェアを、ミドルウェアが元々予期していないトランスポート上で、実行可能である。
・アプリケーション開発者は、現行ミドルウェアを、より予測可能なトランスポートプロトコル上で使用可能である。
・アプリケーション開発者は、TCPの貧弱なエラー回復機構の制限に煩わされることがない。
従来のネットワークアプリケーションの問題点は、通信を起動したスレッドの優先度のみに基づいて通信チャネル(従って通信を完結させるのに用いられるQoS)を選択することが、低い優先度のビデオデータのスレッドが、優先度のインヘリタンス又は優先度の上限プロトコルをインプリメントする相互排他ロック(mutexes)の使用を通じてその優先度を一時的に上昇させることがありうるため、ビデオデータを音声通信チャネルを通じて送信しようとすることになりうる、ということである。ビデオデータの速度と比較して、音声通信チャネルは、割り当てられた帯域幅の小部分を有するだけなので、結果としてビデオデータを音声通信チャネル上で送ろうとする試みにより、音声データフローの極度の混乱が引き起こされうる。優先度の継承では、相互排他ロックがロックされて優先度の高いスレッドが待機している場合、優先度の低いスレッドの優先度が、迅速な完結を保証するために上昇し、相互排他ロックが、自動的に高い優先度スレッドに開放される。
・OS内で動作する発送動作により、どのスレッドが次に実行されるかが決定される。
リアルタイム・オペレーティングシステム(RTOS)では、それは完全にプリエンプティブである。例えば、256の優先度があれば、256のキュー、及び低い優先度で実行される不使用のスレッドがある。
・リソースの保護は、次に何が実行されて何がどの準備完了キューにあるかという事項及び制御を保護するためのセマフォである。
1.通信チャネルのうちの1つを選択する。
2.適切な優先度を得るために、リクエストをどの優先度で送信するか。
開発者は、ある通信チャネルを使用するか他のものを使用するか決定するのに、スレッドの優先度、通信のQoS、又は比較的ビジーでない通信チャネル等の様々な事項を利用してもよい。
Claims (47)
- ネットワークアプリケーションにおける通信方法であって、
置換可能なトランスポートに対応した通信経路を、ネットワークアプリケーションにて起動し、
前記ネットワークアプリケーションにおける前記通信経路を受け付けるオブジェクトを生成し、
前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートのためのサービスレベルを反映した情報を、前記置換可能なトランスポートと、前記通信経路に対応した少なくとも1つのオブジェクトとに提供することを特徴とする通信方法。 - 前記のサービスレベルを反映した情報は、サービス品質(QoS)パラメータのリストを含むことを特徴とする請求項1記載の通信方法。
- 前記ネットワークアプリケーションは、前記のサービスレベルを反映した情報を、解釈せずに格納することを特徴とする請求項1記載の通信方法。
- ネットワークアプリケーション内の通信におけるサービスレベルのスケジューリングパラメータを選択することを、さらに含むことを特徴とする請求項1記載の通信方法。
- 前記スケジューリングパラメータは、時間、優先度、待ち時間、及び帯域幅の少なくとも1つであることを特徴とする請求項4記載の通信方法。
- 前記起動はクライアントにて発生し、前記生成はサーバにて発生することを特徴とする請求項1記載の通信方法。
- リクエストを受信してメッセージを送信することを、さらに含み、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含むことを特徴とする請求項1記載の通信方法。
- 前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、前記方法は、
前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択することを、さらに含むことを特徴とする請求項7記載の通信方法。 - 前記起動は、ネットワークからデータを読み出すとともに該ネットワークへデータを書き出すように動作可能なオブジェクトをインスタンス化することを、含むことを特徴とする請求項1記載の通信方法。
- 前記のインスタンス化されたオブジェクトは、障害時に通信経路を遮断するように、さらに動作可能であることを特徴とする請求項9記載の通信方法。
- 前記提供は、前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートへの情報、前記通信経路に対応した第1のオブジェクト、及び前記通信経路に対応した第2のオブジェクトを送信することを、含むことを特徴とする請求項1記載の通信方法。
- 前記第1のオブジェクトは、前記起動を実行するように動作可能なファクトリ・オブジェクトであり、前記第2のオブジェクトは、前記生成を実行するように動作可能なファクトリ・オブジェクトであることを特徴とする請求項11記載の通信方法。
- 前記リストは、コンマで区切られた文字列形式のQoSパラメータのリストであることを特徴とする請求項2記載の通信方法。
- 前記ネットワークアプリケーションは、オブジェクト・リクエスト・ブローカ(ORB)であることを特徴とする請求項1記載の通信方法。
- ネットワークアプリケーションにおける通信方法であって、
置換可能なトランスポートに対応した通信経路を、ネットワークアプリケーションにて起動し、
前記ネットワークアプリケーションにおける前記通信経路を受け付けるオブジェクトを生成し、
前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートのためのサービスレベルを反映した情報を、前記置換可能なトランスポートと、前記通信経路に対応した少なくとも1つのオブジェクトとに提供し、
リクエストを受信してメッセージを送信し、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含み、前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、
前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択することを特徴とする通信方法。 - ネットワークアプリケーションにおける通信方法であって、
リクエストを受信してメッセージを送信し、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含み、前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、
前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択することを特徴とする通信方法。 - ネットワークアプリケーションにおける通信装置であって、
置換可能なトランスポートに対応した通信経路を、ネットワークアプリケーションにて起動し、前記ネットワークアプリケーションにおける前記通信経路を受け付けるオブジェクトを生成し、前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートのためのサービスレベルを反映した情報を、前記置換可能なトランスポートと、前記通信経路に対応した少なくとも1つのオブジェクトとに提供するプログラムを有するメモリと、
前記プログラムを実行するプロセッサとを、
備えたことを特徴とする装置。 - ネットワークアプリケーションにおける通信装置であって、
置換可能なトランスポートに対応した通信経路を、ネットワークアプリケーションにて起動する手段と、
前記ネットワークアプリケーションにおける前記通信経路を受け付けるオブジェクトを生成する手段と、
前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートのためのサービスレベルを反映した情報を、前記置換可能なトランスポートと、前記通信経路に対応した少なくとも1つのオブジェクトとに提供する手段とを、
備えたことを特徴とする装置。 - 前記のサービスレベルを反映した情報は、サービス品質(QoS)パラメータのリストを含むことを特徴とする請求項18記載の装置。
- 前記ネットワークアプリケーションは、前記のサービスレベルを反映した情報を、解釈せずに格納することを特徴とする請求項18記載の装置。
- ネットワークアプリケーション内の通信におけるサービスレベルのスケジューリングパラメータを選択する手段を、さらに備えたことを特徴とする請求項18記載の装置。
- 前記スケジューリングパラメータは、時間、優先度、待ち時間、及び帯域幅の少なくとも1つであることを特徴とする請求項21記載の装置。
- リクエストを受信してメッセージを送信する手段を、さらに備え、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含むことを特徴とする請求項18記載の装置。
- 前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、
前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択する手段を、さらに備えたことを特徴とする請求項23記載の装置。 - 前記の起動する手段は、ネットワークからデータを読み出すとともに該ネットワークへデータを書き出すように動作可能なオブジェクトをインスタンス化する手段を、備えたことを特徴とする請求項18記載の装置。
- 前記のインスタンス化されたオブジェクトは、障害時に通信経路を遮断するように、さらに動作可能であることを特徴とする請求項25記載の装置。
- 前記の提供する手段は、前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートへの情報、前記通信経路に対応した第1のオブジェクト、及び前記通信経路に対応した第2のオブジェクトを送信する手段を、さらに備えたことを特徴とする請求項18記載の装置。
- 前記第1のオブジェクトは、前記起動を実行するように動作可能なファクトリ・オブジェクトであり、前記第2のオブジェクトは、前記生成を実行するように動作可能なファクトリ・オブジェクトであることを特徴とする請求項27記載の装置。
- 前記リストは、コンマで区切られた文字列形式のQoSパラメータのリストであることを特徴とする請求項19記載の装置。
- 前記ネットワークアプリケーションは、オブジェクト・リクエスト・ブローカ(ORB)であることを特徴とする請求項18記載の装置。
- コンピュータに、ネットワークアプリケーションにおける通信方法を実行させるコンピュータ可読媒体であって、前記方法は、
置換可能なトランスポートに対応した通信経路を、ネットワークアプリケーションにて起動し、
前記ネットワークアプリケーションにおける前記通信経路を受け付けるオブジェクトを生成し、
前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、サービス品質(QoS)パラメータのリストを反映した情報を、前記置換可能なトランスポートと、前記通信経路に対応した少なくとも1つのオブジェクトとに提供することを特徴とするコンピュータ可読媒体。 - 前記ネットワークアプリケーションは、前記のサービス品質(QoS)を反映した情報を、解釈せずに格納することを特徴とする請求項31記載のコンピュータ可読媒体。
- ネットワークアプリケーション内の通信におけるサービス品質(QoS)のスケジューリングパラメータを選択することを、さらに含むことを特徴とする請求項31記載のコンピュータ可読媒体。
- 前記スケジューリングパラメータは、時間、優先度、待ち時間、及び帯域幅の少なくとも1つを含むことを特徴とする請求項33記載のコンピュータ可読媒体。
- 前記起動はクライアントにて発生し、前記生成はサーバにて発生することを特徴とする請求項31記載のコンピュータ可読媒体。
- リクエストを受信してメッセージを送信することを、さらに含み、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含むことを特徴とする請求項31記載のコンピュータ可読媒体。
- 前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、
前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択することを、さらに含むことを特徴とする請求項36記載のコンピュータ可読媒体。 - 前記起動は、ネットワークからデータを読み出すとともに該ネットワークへデータを書き出すように動作可能なオブジェクトを起動することを、含むことを特徴とすることを特徴とする請求項31記載のコンピュータ可読媒体。
- 前記のインスタンス化されたオブジェクトは、障害時に通信経路を遮断するように、さらに動作可能であることを特徴とすることを特徴とする請求項38記載のコンピュータ可読媒体。
- 前記提供は、前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートへの情報、前記通信経路に対応した第1のオブジェクト、及び前記通信経路に対応した第2のオブジェクトを送信することを、含むことを特徴とする請求項31記載のコンピュータ可読媒体。
- 前記第1のオブジェクトは、前記起動を実行するように動作可能なファクトリ・オブジェクトであり、前記第2のオブジェクトは、前記生成を実行するように動作可能なファクトリ・オブジェクトであることを特徴とする請求項40記載のコンピュータ可読媒体。
- 前記リストは、コンマで区切られた文字列形式のQoSパラメータのリストであることを特徴とする請求項31記載のコンピュータ可読媒体。
- 前記ネットワークアプリケーションは、オブジェクト・リクエスト・ブローカ(ORB)であることを特徴とする請求項31記載のコンピュータ可読媒体。
- ネットワークアプリケーションにおける通信装置であって、
置換可能なトランスポートに対応した通信経路を、ネットワークアプリケーションにて起動し、前記ネットワークアプリケーションにおける前記通信経路を受け付けるオブジェクトを生成し、前記ネットワークアプリケーションにて前記通信経路が一旦確立されると、前記置換可能なトランスポートのためのサービスレベルを反映した情報を、前記置換可能なトランスポートと、前記通信経路に対応した少なくとも1つのオブジェクトとに提供し、リクエストを受信してメッセージを送信し、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含み、前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択するプログラムを有するメモリと、
前記プログラムを実行するプロセッサとを、
備えたことを特徴とする装置。 - ネットワークアプリケーションにおける通信装置であって、
リクエストを受信してメッセージを送信し、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含み、前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択するプログラムを有するメモリと、
前記プログラムを実行するプロセッサとを、
備えたことを特徴とする装置。 - コンピュータに、ネットワークアプリケーションにおける通信方法を実行させるコンピュータ可読媒体であって、前記方法は、
リクエストを受信してメッセージを送信し、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含み、前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映しており、
前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択することを特徴とするコンピュータ可読媒体。 - ネットワークアプリケーションにおける通信方法のための装置において、
リクエストを受信してメッセージを送信する手段であって、前記リクエストは、選択された通信経路及び選択されたサービスレベルの少なくとも1つを反映した情報を含み、前記の選択されたサービスレベルは、前記メッセージの配信に伴う指定されたサービス品質(QoS)、及びサーバが前記メッセージを処理する優先度の少なくとも1つを反映している手段と、
前記リクエストに伴う情報に基づいて、前記リクエストにサービスするための通信経路及び優先度を選択する手段とを、
備えたことを特徴とする装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US28216301P | 2001-04-09 | 2001-04-09 | |
US60/282,163 | 2001-04-09 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002586543A Division JP2004536382A (ja) | 2001-04-09 | 2002-04-09 | 置換可能なサービス品質機能のあるネットワーク通信チャネルコンポーネントを選択するために、置換可能なコンポーネントを用いるシステム、方法及び製造物 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008306714A true JP2008306714A (ja) | 2008-12-18 |
JP4690437B2 JP4690437B2 (ja) | 2011-06-01 |
Family
ID=23080357
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002586543A Withdrawn JP2004536382A (ja) | 2001-04-09 | 2002-04-09 | 置換可能なサービス品質機能のあるネットワーク通信チャネルコンポーネントを選択するために、置換可能なコンポーネントを用いるシステム、方法及び製造物 |
JP2008135886A Expired - Lifetime JP4690437B2 (ja) | 2001-04-09 | 2008-05-23 | ネットワークアプリケーションにおける通信方法、通信装置及びそのためのプログラム |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002586543A Withdrawn JP2004536382A (ja) | 2001-04-09 | 2002-04-09 | 置換可能なサービス品質機能のあるネットワーク通信チャネルコンポーネントを選択するために、置換可能なコンポーネントを用いるシステム、方法及び製造物 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7424549B2 (ja) |
EP (1) | EP1378081A4 (ja) |
JP (2) | JP2004536382A (ja) |
CA (1) | CA2443839C (ja) |
WO (1) | WO2002089377A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014186473A (ja) * | 2013-03-22 | 2014-10-02 | Fuji Xerox Co Ltd | プログラム及び装置 |
JP2017016707A (ja) * | 2016-10-12 | 2017-01-19 | 富士ゼロックス株式会社 | プログラム及び装置 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7882253B2 (en) | 2001-04-05 | 2011-02-01 | Real-Time Innovations, Inc. | Real-time publish-subscribe system |
US20030120722A1 (en) * | 2001-12-20 | 2003-06-26 | Forkner Damien R. | Persistent process software architecture |
US7113582B1 (en) * | 2003-01-27 | 2006-09-26 | Sprint Spectrum L.P. | System for caller control over call routing paths |
US7363487B2 (en) * | 2003-07-01 | 2008-04-22 | International Business Machines Corporation | Method and system for dynamic client authentication in support of JAAS programming model |
US20050027824A1 (en) * | 2003-07-29 | 2005-02-03 | Charbel Khawand | Interprocessor communication protocol providing guaranteed quality of service and selective broadcasting |
JP2005244525A (ja) * | 2004-02-25 | 2005-09-08 | Fujitsu Ltd | 通信装置 |
US8359349B2 (en) * | 2004-03-18 | 2013-01-22 | Nokia Corporation | System and associated terminal, method and computer program product for uploading content |
US7617497B1 (en) * | 2004-08-30 | 2009-11-10 | Sun Microsystems, Inc. | Method and system for creating and using storage threads |
US7480678B2 (en) * | 2004-10-29 | 2009-01-20 | International Business Machines Corporation | Creating reference objects |
US7827559B1 (en) | 2006-04-24 | 2010-11-02 | Real-Time Innovations, Inc. | Framework for executing multiple threads and sharing resources in a multithreaded computer programming environment |
US8671135B1 (en) * | 2006-04-24 | 2014-03-11 | Real-Time Innovations, Inc. | Flexible mechanism for implementing the middleware of a data distribution system over multiple transport networks |
US7783853B1 (en) | 2006-04-24 | 2010-08-24 | Real-Time Innovations, Inc. | Memory usage techniques in middleware of a real-time data distribution system |
US8443191B2 (en) | 2007-04-09 | 2013-05-14 | Objective Interface Systems, Inc. | System and method for accessing information resources using cryptographic authorization permits |
JP2010027004A (ja) * | 2008-07-24 | 2010-02-04 | Fujitsu Ltd | コンテンツ配信装置、通信システム、コンテンツ配信方法、およびプログラム |
US20100077378A1 (en) * | 2008-09-25 | 2010-03-25 | International Business Machines Corporation | Virtualised Application Libraries |
US9043796B2 (en) * | 2011-04-07 | 2015-05-26 | Microsoft Technology Licensing, Llc | Asynchronous callback driven messaging request completion notification |
US8490107B2 (en) * | 2011-08-08 | 2013-07-16 | Arm Limited | Processing resource allocation within an integrated circuit supporting transaction requests of different priority levels |
JP5853819B2 (ja) * | 2012-03-29 | 2016-02-09 | 富士通株式会社 | 制御プログラム、制御方法、記憶制御装置および情報処理システム |
CN103873391B (zh) * | 2012-12-14 | 2016-09-28 | 中国科学院声学研究所 | 一种二层适配器选择系统及方法 |
US9444746B2 (en) | 2013-06-25 | 2016-09-13 | Qualcomm Incorporated | Selectively transferring high-priority non-audio data over a quality of service channel |
EP3133498B1 (en) * | 2014-04-16 | 2020-08-12 | Clarion Co., Ltd. | Data delivery system, control server, and data delivery method |
CN108270813B (zh) * | 2016-12-30 | 2021-02-12 | 华为技术有限公司 | 一种异构多协议栈方法、装置及系统 |
US10652077B2 (en) * | 2018-08-31 | 2020-05-12 | Subcom, Llc | Techniques for interfacing between web services and interface description language (IDL)-based remote procedure call (RPC) services and an optical communication system implementing same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11507785A (ja) * | 1995-06-09 | 1999-07-06 | ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー | インテリジェント遠隔通信網における資源利用可能性 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0844755B1 (en) * | 1996-08-27 | 2007-10-03 | Nippon Telegraph And Telephone Corporation | Trunk transmission network |
JP3394394B2 (ja) * | 1996-09-06 | 2003-04-07 | 日本電気株式会社 | ネットワーク接続品質制御方式 |
US5982748A (en) * | 1996-10-03 | 1999-11-09 | Nortel Networks Corporation | Method and apparatus for controlling admission of connection requests |
US5974237A (en) * | 1996-12-18 | 1999-10-26 | Northern Telecom Limited | Communications network monitoring |
US5903735A (en) * | 1996-12-24 | 1999-05-11 | Intel Corporation | Method and apparatus for transmitting data having minimal bandwidth requirements |
DE19802599C1 (de) * | 1998-01-23 | 1999-05-27 | Siemens Ag | Verfahren und Ermittlungseinrichtung zur Durchführung des Verfahrens zum Ermitteln eines Verbindungspfads in einem Kommunikationsnetz |
US6154778A (en) * | 1998-05-19 | 2000-11-28 | Hewlett-Packard Company | Utility-based multi-category quality-of-service negotiation in distributed systems |
US6453320B1 (en) * | 1999-02-01 | 2002-09-17 | Iona Technologies, Inc. | Method and system for providing object references in a distributed object environment supporting object migration |
US6907609B1 (en) * | 1999-02-01 | 2005-06-14 | Iona Technologies Plc. | Object request dispatch using matching of a segmented object key |
JP2002016599A (ja) | 1999-12-02 | 2002-01-18 | Hitachi Ltd | ネットワーク計測制御システムとネットワーク計測制御方法 |
US6738819B1 (en) * | 1999-12-27 | 2004-05-18 | Nortel Networks Limited | Dynamic admission control for IP networks |
US6662213B1 (en) * | 2000-01-10 | 2003-12-09 | Sun Microsystems, Inc. | System and method for ensuring delivery of a single communication between nodes |
US6877023B1 (en) * | 2000-01-28 | 2005-04-05 | Softwired, Inc. | Messaging system for delivering data in the form of portable message formats between message clients |
US7254638B2 (en) * | 2000-12-15 | 2007-08-07 | International Business Machines Corporation | Method and apparatus for identifying slow links and for providing application-based responses to slow links in a distributed computer network |
JP3737385B2 (ja) * | 2001-06-07 | 2006-01-18 | 富士通株式会社 | 最適化パス設定方法及びそれを用いた網管理システム |
-
2002
- 2002-04-09 WO PCT/US2002/011073 patent/WO2002089377A1/en active Application Filing
- 2002-04-09 CA CA2443839A patent/CA2443839C/en not_active Expired - Lifetime
- 2002-04-09 US US10/118,157 patent/US7424549B2/en not_active Expired - Lifetime
- 2002-04-09 EP EP02766748A patent/EP1378081A4/en not_active Withdrawn
- 2002-04-09 JP JP2002586543A patent/JP2004536382A/ja not_active Withdrawn
-
2008
- 2008-05-23 JP JP2008135886A patent/JP4690437B2/ja not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11507785A (ja) * | 1995-06-09 | 1999-07-06 | ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー | インテリジェント遠隔通信網における資源利用可能性 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014186473A (ja) * | 2013-03-22 | 2014-10-02 | Fuji Xerox Co Ltd | プログラム及び装置 |
JP2017016707A (ja) * | 2016-10-12 | 2017-01-19 | 富士ゼロックス株式会社 | プログラム及び装置 |
Also Published As
Publication number | Publication date |
---|---|
US20020145924A1 (en) | 2002-10-10 |
CA2443839A1 (en) | 2002-11-07 |
WO2002089377A1 (en) | 2002-11-07 |
US7424549B2 (en) | 2008-09-09 |
EP1378081A1 (en) | 2004-01-07 |
JP4690437B2 (ja) | 2011-06-01 |
EP1378081A4 (en) | 2008-07-02 |
JP2004536382A (ja) | 2004-12-02 |
CA2443839C (en) | 2011-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4690437B2 (ja) | ネットワークアプリケーションにおける通信方法、通信装置及びそのためのプログラム | |
US5675796A (en) | Concurrency management component for use by a computer program during the transfer of a message | |
Arulanthu et al. | The design and performance of a scalable ORB architecture for CORBA asynchronous messaging | |
US6237024B1 (en) | Method and apparatus for the suspension and continuation of remote processes | |
JP5496683B2 (ja) | カスタマイズ方法及びコンピュータシステム | |
JP2000020490A (ja) | 遠隔手続き呼出し機構またはオブジェクトリクエストブローカ機構を有する計算機、データ転送方法、および転送方法記憶媒体 | |
KR20010041297A (ko) | 원격 프로세스의 중단과 연속 방법 및 장치 | |
EP0695993A2 (en) | System and method for interprocess communication | |
EP0704796B1 (en) | Capability engine method and apparatus for a microkernel data processing system | |
US7206843B1 (en) | Thread-safe portable management interface | |
JP2888420B2 (ja) | マルチタスク・アーキテクチャにおけるプロセス間通信方法 | |
EP0689137A2 (en) | Message control structure registration method and apparatus for a microkernel data processing system | |
EP0689138A2 (en) | Temporary data method and apparatus for a microkernel data processing system | |
Au et al. | L4 user manual | |
Ayres et al. | Stage: Python with actors | |
JP2002505478A (ja) | 分散形システムにおけるイベント通知のためのオブジェクトの据置き復元及び遠隔ローディング | |
Pereira et al. | Tactics for Remote Method Invocation. | |
Appavoo et al. | Utilizing Linux kernel components in K42 | |
Aigner | Communication in Microkernel-Based Operating Systems | |
Schmidt et al. | TAO: a High-performance ORB Endsystem Architecture for Real-time CORBA | |
Hauser | The ATLAS level 2 reference software | |
Pava | Design Specification for the Real Time Platform Middleware | |
KR19980086588A (ko) | Tcp/ip 소켓 애플리케이션을 이용한 시스템 자원 저감 툴 | |
Fröhlich | EPOS: Embedded Parallel Operating System | |
Blessing | A String of Ponies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20110118 |
|
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: 20110217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4690437 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140225 Year of fee payment: 3 |
|
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 |
|
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 |
|
EXPY | Cancellation because of completion of term |