JPH11328066A - ネットワ―ク管理演算のトランザクション支援のための装置、方法及びコンピュ―タプログラム製品 - Google Patents
ネットワ―ク管理演算のトランザクション支援のための装置、方法及びコンピュ―タプログラム製品Info
- Publication number
- JPH11328066A JPH11328066A JP11074138A JP7413899A JPH11328066A JP H11328066 A JPH11328066 A JP H11328066A JP 11074138 A JP11074138 A JP 11074138A JP 7413899 A JP7413899 A JP 7413899A JP H11328066 A JPH11328066 A JP H11328066A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- application
- computer
- record
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/046—Network management architectures or arrangements comprising network management agents or mobile agents therefor
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
(57)【要約】
【課題】 ユーザーが勝手な一連の異種管理要求の周り
にトランザクション境界を規定することが可能となる。 【解決手段】 アプリケーショントランザクション(A
T)サーバーが、多数のユーザー定義アプリケーション
演算を単一アプリケーショントランザクションとして処
理するため集結し、データベースで実行中の各トランザ
クションについての重要情報を記録する。前記記録によ
り、特定のアプリケーショントランザクションにより目
標とされたオブジェクトのトランザクションの完了前の
値が、アプリケーショントランザクションの失敗した演
算の場合に復元可能になる。
にトランザクション境界を規定することが可能となる。 【解決手段】 アプリケーショントランザクション(A
T)サーバーが、多数のユーザー定義アプリケーション
演算を単一アプリケーショントランザクションとして処
理するため集結し、データベースで実行中の各トランザ
クションについての重要情報を記録する。前記記録によ
り、特定のアプリケーショントランザクションにより目
標とされたオブジェクトのトランザクションの完了前の
値が、アプリケーショントランザクションの失敗した演
算の場合に復元可能になる。
Description
【0001】
【発明の属する技術分野】本出願の分野は、ネットワー
ク管理演算に関する装置、方法及びコンピュータプログ
ラム製品に関し、詳細にはネットワーク管理演算のため
トランザクション支援を提供するための装置、方法及び
コンピュータプログラム製品に関する。
ク管理演算に関する装置、方法及びコンピュータプログ
ラム製品に関し、詳細にはネットワーク管理演算のため
トランザクション支援を提供するための装置、方法及び
コンピュータプログラム製品に関する。
【0002】
【従来の技術】現在の特定のネットワーク管理アプリケ
ーションは、個々のネットワーク管理演算を一度に一つ
だけ取得されるリモートネットワークオブジェクト上で
実行する。リモートネットワークオブジェクトは、従っ
て飛び飛びの別々の時間にのみ個々の注目を受ける。目
標ネットワークオブジェクトは、しかし、多数で、複雑
で、相互に関連している。ネットワークオブジェクトを
一度に一つだけ扱うことは、残念ながら遅くて効率の悪
いことが多い。多くの場合に、目標オブジェクトを個々
に他の目標オブジェクトから隔離してアドレスするので
は、所望のオブジェクト間相互作用を共同作用に導くこ
とはできない。この技術的問題を克服するため、目標オ
ブジェクトは、相互関連し相互依存する多様なリモート
ネットワークオブジェクト上でリアルタイム調整をおこ
なって、一層包括的にアドレスする必要がある。
ーションは、個々のネットワーク管理演算を一度に一つ
だけ取得されるリモートネットワークオブジェクト上で
実行する。リモートネットワークオブジェクトは、従っ
て飛び飛びの別々の時間にのみ個々の注目を受ける。目
標ネットワークオブジェクトは、しかし、多数で、複雑
で、相互に関連している。ネットワークオブジェクトを
一度に一つだけ扱うことは、残念ながら遅くて効率の悪
いことが多い。多くの場合に、目標オブジェクトを個々
に他の目標オブジェクトから隔離してアドレスするので
は、所望のオブジェクト間相互作用を共同作用に導くこ
とはできない。この技術的問題を克服するため、目標オ
ブジェクトは、相互関連し相互依存する多様なリモート
ネットワークオブジェクト上でリアルタイム調整をおこ
なって、一層包括的にアドレスする必要がある。
【0003】
【発明が解決しようとする課題】現在、ネットワーク管
理アプリケーションは、ネットワーク管理演算を一度に
一つの演算づつ構築してネットワークオブジェクトに送
る。現在の特定のネットワーク管理プロトコルは、管理
される多数のオブジェクトに向かって一連の異種のネッ
トワーク管理を実施する能力に欠けているので、この一
連の演算は、原子的にコミットされるか又は全くコミッ
トされないかのいずれかである。従って、一連の異種の
ネットワーク管理の周りにトランザクションの統合性を
作ろうと試みることはネットワーク管理プラットホーム
の役割となる。しかし、公知のネットワーク管理プロト
コルも、プラットホームも、製品も、単一トランザクシ
ョンのコンテキスト内で勝手な一連のネットワーク管理
演算の原子的実行に備えた組み込み機構は持っていな
い。
理アプリケーションは、ネットワーク管理演算を一度に
一つの演算づつ構築してネットワークオブジェクトに送
る。現在の特定のネットワーク管理プロトコルは、管理
される多数のオブジェクトに向かって一連の異種のネッ
トワーク管理を実施する能力に欠けているので、この一
連の演算は、原子的にコミットされるか又は全くコミッ
トされないかのいずれかである。従って、一連の異種の
ネットワーク管理の周りにトランザクションの統合性を
作ろうと試みることはネットワーク管理プラットホーム
の役割となる。しかし、公知のネットワーク管理プロト
コルも、プラットホームも、製品も、単一トランザクシ
ョンのコンテキスト内で勝手な一連のネットワーク管理
演算の原子的実行に備えた組み込み機構は持っていな
い。
【0004】
【課題を解決するための手段】本発明によれば、アプリ
ケーショントランザクションは、単一の原子的にコミッ
トされたトランザクションにまとめて結束されたネット
ワーク管理要求演算のグループとして実装される。アプ
リケーショントランザクションはこのように、幾つかの
メッセージ要求演算を結束して、原子的にコミットされ
る。結合されたトランザクションはさらに、ネットワー
ク管理アプリケーションの要求に際し、本発明によれば
原子的にアボートされる。一実施例によるアプリケーシ
ョントランザクションは、複数のネットワーク管理要求
を、セマンティック開始命令及びコミット又はロールバ
ックいずれかの命令により境界を定められた単一の包括
的結束アプリケーショントランザクションに結合し、こ
れが、これらのアプリケーションに関連する複数のネッ
トワーク管理要求及び単一アプリケーショントランザク
ションに結束されたメッセージ演算を含んで、多重ユー
ザー・アプリケーションのトランザクション統合性を維
持する。
ケーショントランザクションは、単一の原子的にコミッ
トされたトランザクションにまとめて結束されたネット
ワーク管理要求演算のグループとして実装される。アプ
リケーショントランザクションはこのように、幾つかの
メッセージ要求演算を結束して、原子的にコミットされ
る。結合されたトランザクションはさらに、ネットワー
ク管理アプリケーションの要求に際し、本発明によれば
原子的にアボートされる。一実施例によるアプリケーシ
ョントランザクションは、複数のネットワーク管理要求
を、セマンティック開始命令及びコミット又はロールバ
ックいずれかの命令により境界を定められた単一の包括
的結束アプリケーショントランザクションに結合し、こ
れが、これらのアプリケーションに関連する複数のネッ
トワーク管理要求及び単一アプリケーショントランザク
ションに結束されたメッセージ演算を含んで、多重ユー
ザー・アプリケーションのトランザクション統合性を維
持する。
【0005】本発明によれば、ネットワーク管理プラッ
トホーム用の機構により、ユーザーは勝手な一連の異種
管理要求の周りにトランザクション境界を規定すること
ができる。本発明に従うプラットホームは、これらの要
求が原子的にコミットされることを保証する(つまり全
部まとめてコミットするか又はコミットしないか)。
トホーム用の機構により、ユーザーは勝手な一連の異種
管理要求の周りにトランザクション境界を規定すること
ができる。本発明に従うプラットホームは、これらの要
求が原子的にコミットされることを保証する(つまり全
部まとめてコミットするか又はコミットしないか)。
【0006】
【発明の実施の形態】図1は、本発明に従うネットワー
ク管理プラットホームと通信する選択されたユーザー・
アプリケーションのブロック図である。詳説すると、図
1は、選択されたユーザーアプリケーション100が、
その各種演算に基づいて多様な要求メッセージをネット
ワーク管理プラットホーム(NMP)102に送るのを示
す。メッセージは、選択されたアプリケーショントラン
ザクション演算の、選択された目標オブジェクト、例え
ば104〜114、に向けられた所定の作業を要求す
る。NMP102 は、アプリケーショントランザクシ
ョン(AT)103を実行するための処理実体(ソフトウ
エア、ハードウエア、ファームウエア又はそれらの複
合)を含む。アプリケーショントランザクション103
は、本発明に従う機構であり、「アプリケーショントラ
ンザクション(AT)開始:」メッセージを後述のように
構築することにより組み立てられる。組み立てられたA
Tメッセージは次いで、本発明に従う取り扱いのため組
み立てられたネットワーク管理プラットホーム(NMP)
102に送られる。NMP102 は、多様な要求メッ
セージを多数のアプリケーションから本発明の一実施例
に従って受領する。NMP102は、多様なメッセージ
が定義する演算をまとめて、本発明に従う単一ATに結
束し、これをアプリケーショントランザクションコミッ
トメッセージを受け取るまで続ける。コミットメッセー
ジは、受信したメッセージ演算の同期結合コミットメン
トを生じさせる。「ATロールバック」メッセージを受
け取った場合は、演算相互の結束及びメッセージ演算自
体をアボートする。ユーザーには、本発明の一実施例に
従って、例えば、「AT開始」、「ATコミット」、及
び「ATロールバック」のようなAT情況メッセージが
提供される。処理実体103は、本発明の一実施例に従
ってデータベース105との通信環境にある。ユーザー
アプリケーション101は要求メッセージを、下記の例
に従ってNMP102に送る。
ク管理プラットホームと通信する選択されたユーザー・
アプリケーションのブロック図である。詳説すると、図
1は、選択されたユーザーアプリケーション100が、
その各種演算に基づいて多様な要求メッセージをネット
ワーク管理プラットホーム(NMP)102に送るのを示
す。メッセージは、選択されたアプリケーショントラン
ザクション演算の、選択された目標オブジェクト、例え
ば104〜114、に向けられた所定の作業を要求す
る。NMP102 は、アプリケーショントランザクシ
ョン(AT)103を実行するための処理実体(ソフトウ
エア、ハードウエア、ファームウエア又はそれらの複
合)を含む。アプリケーショントランザクション103
は、本発明に従う機構であり、「アプリケーショントラ
ンザクション(AT)開始:」メッセージを後述のように
構築することにより組み立てられる。組み立てられたA
Tメッセージは次いで、本発明に従う取り扱いのため組
み立てられたネットワーク管理プラットホーム(NMP)
102に送られる。NMP102 は、多様な要求メッ
セージを多数のアプリケーションから本発明の一実施例
に従って受領する。NMP102は、多様なメッセージ
が定義する演算をまとめて、本発明に従う単一ATに結
束し、これをアプリケーショントランザクションコミッ
トメッセージを受け取るまで続ける。コミットメッセー
ジは、受信したメッセージ演算の同期結合コミットメン
トを生じさせる。「ATロールバック」メッセージを受
け取った場合は、演算相互の結束及びメッセージ演算自
体をアボートする。ユーザーには、本発明の一実施例に
従って、例えば、「AT開始」、「ATコミット」、及
び「ATロールバック」のようなAT情況メッセージが
提供される。処理実体103は、本発明の一実施例に従
ってデータベース105との通信環境にある。ユーザー
アプリケーション101は要求メッセージを、下記の例
に従ってNMP102に送る。
【0007】例 //アプリケーショントランザクション開始 ・・・ //オブジェクトA、属性a1のセット ・・・ //オブジェクトC、属性c1のセット ・・・ //アプリケーショントランザクションコミット
【0008】こうして、本発明に従って、複数の要求が
構築され(つまり結合され)原子的な単一アプリケーシ
ョントランザクションとして送られる。原子的であるこ
とは、トランザクションをコミットするときも失敗する
ときも、単一原子的トランザクションに結合されたすべ
てのその演算が一斉にコミットまたは失敗することを意
味する。トランザクションは、個々に規定されていても
間接的に参照されていても、すべての演算可能オブジェ
クトに結束される。
構築され(つまり結合され)原子的な単一アプリケーシ
ョントランザクションとして送られる。原子的であるこ
とは、トランザクションをコミットするときも失敗する
ときも、単一原子的トランザクションに結合されたすべ
てのその演算が一斉にコミットまたは失敗することを意
味する。トランザクションは、個々に規定されていても
間接的に参照されていても、すべての演算可能オブジェ
クトに結束される。
【0009】図2は、本発明の実施例を実装するための
コンピュータシステムのブロック図であって、ここで
は、各サーバー及びアプリケーションは、結合的に又は
別々に一つ以上のコンピュータシステム上に実装され
る。コンピュータシステム160は、詳説すると、ラン
ダムアクセス・メモリ(RAM)170、リードオンリー
・メモリ(ROM)171、RAM170及びROM17
1に接続されたメモリ・バス172、メモリ・バス17
2に接続されたマイクロプロセッサ173、モニタ17
6、プリンタ177、ディスク駆動装置178、コンパ
クト・ディスク・リードオンリー・メモリ(CD−RO
M)駆動装置179、モニタ176、プリンタ177、
ディスク駆動装置178並びにCD−ROM駆動装置1
79に接続された周辺機器バス180、固定ディスク駆
動装置181、及びネットワーク・インターフェイスを
含み、図2に示すようにそれぞれが周辺機器バス180
に接続されている。ディスク駆動装置178及びCD−
ROM駆動装置179は、それぞれ磁気的又は光学的デ
ィスク又はフロッピー178'及びCD−ROM媒体1
79'などの媒体上に埋め込むことのできるコンピュー
タプログラム製品(図示せず)を含めた情報を、それぞれ
読み取る能力がある。選択された装置及び媒体に従っ
て、選択された媒体上への書込が読取と同様に達成され
る。
コンピュータシステムのブロック図であって、ここで
は、各サーバー及びアプリケーションは、結合的に又は
別々に一つ以上のコンピュータシステム上に実装され
る。コンピュータシステム160は、詳説すると、ラン
ダムアクセス・メモリ(RAM)170、リードオンリー
・メモリ(ROM)171、RAM170及びROM17
1に接続されたメモリ・バス172、メモリ・バス17
2に接続されたマイクロプロセッサ173、モニタ17
6、プリンタ177、ディスク駆動装置178、コンパ
クト・ディスク・リードオンリー・メモリ(CD−RO
M)駆動装置179、モニタ176、プリンタ177、
ディスク駆動装置178並びにCD−ROM駆動装置1
79に接続された周辺機器バス180、固定ディスク駆
動装置181、及びネットワーク・インターフェイスを
含み、図2に示すようにそれぞれが周辺機器バス180
に接続されている。ディスク駆動装置178及びCD−
ROM駆動装置179は、それぞれ磁気的又は光学的デ
ィスク又はフロッピー178'及びCD−ROM媒体1
79'などの媒体上に埋め込むことのできるコンピュー
タプログラム製品(図示せず)を含めた情報を、それぞれ
読み取る能力がある。選択された装置及び媒体に従っ
て、選択された媒体上への書込が読取と同様に達成され
る。
【0010】図3は、本発明に従うネットワーク管理プ
ラットホーム(NMP)のブロック図である。詳説する
と、図3は、上述のような処理実体103を一つ以上の
アプリケーショントランザクションのため含むNMP1
02を示す。処理実体103は、他方で本発明に従うア
プリケーショントランザクションマネージャ110(A
TM)を含む。本発明に従うATM110は、図7との
関連で後述する取消ログに連結されている。取消ログ
は、例えばDB105などの選択されたデータベース
(DB)に記憶されている。取消ログのデータにより、不
完了又は失敗アプリケーショントランザクションの一部
を取り消しできる。例えば、処理された失敗ATは、例
えば、トランザクションで影響を受けた目標オブジェク
ト、例えば104〜114、の元の値へのロールバック
により取り消される。ATM110は、取消ログのロー
ド及びロールバック演算において以前の目標オブジェク
ト値に復元するための記入値を制御する。NMP102
は、所定のネットワーク配置に従ってネットワーク管理
任務及び機能を課せられたサーバー又はコンピュータで
ある。
ラットホーム(NMP)のブロック図である。詳説する
と、図3は、上述のような処理実体103を一つ以上の
アプリケーショントランザクションのため含むNMP1
02を示す。処理実体103は、他方で本発明に従うア
プリケーショントランザクションマネージャ110(A
TM)を含む。本発明に従うATM110は、図7との
関連で後述する取消ログに連結されている。取消ログ
は、例えばDB105などの選択されたデータベース
(DB)に記憶されている。取消ログのデータにより、不
完了又は失敗アプリケーショントランザクションの一部
を取り消しできる。例えば、処理された失敗ATは、例
えば、トランザクションで影響を受けた目標オブジェク
ト、例えば104〜114、の元の値へのロールバック
により取り消される。ATM110は、取消ログのロー
ド及びロールバック演算において以前の目標オブジェク
ト値に復元するための記入値を制御する。NMP102
は、所定のネットワーク配置に従ってネットワーク管理
任務及び機能を課せられたサーバー又はコンピュータで
ある。
【0011】図4は、本発明に従うアプリケーショント
ランザクションマネージャ(ATM)110の図である。
詳説すると、図4は、それぞれ121から123の、一
番から三番(符号121〜123)までの一連の演算をリ
ンク又はスレッドするATM110を示し、これらの演
算は、複合アプリケーショントランザクションとしてま
とめてリンクされており、集合的に目標オブジェクト1
04としてあらわされた一つ以上の目標オブジェクトの
上で働く。目標オブジェクト104は、ユーザー又はそ
の代理が構成又は選択するものとして、ATM110と
同じ競合プラットホーム(つまりコンピュータシステ
ム)の上又は別のプラットホームかシステムの上で、定
在するか又は呼び出される。
ランザクションマネージャ(ATM)110の図である。
詳説すると、図4は、それぞれ121から123の、一
番から三番(符号121〜123)までの一連の演算をリ
ンク又はスレッドするATM110を示し、これらの演
算は、複合アプリケーショントランザクションとしてま
とめてリンクされており、集合的に目標オブジェクト1
04としてあらわされた一つ以上の目標オブジェクトの
上で働く。目標オブジェクト104は、ユーザー又はそ
の代理が構成又は選択するものとして、ATM110と
同じ競合プラットホーム(つまりコンピュータシステ
ム)の上又は別のプラットホームかシステムの上で、定
在するか又は呼び出される。
【0012】図5は、エージェントX及びY(それぞれ
符号150及び151)のような、異なるエージェント
に定在する目標オブジェクト(TOA、TOB、TOI)
の周りに、ATM110がトランザクションセマンティ
ックを作る方法を示す図である。エージェント150、
151自体が特定のトランザクションを支援するか否か
に関わりなく、目標オブジェクトTOA及びTOBはエ
ージェントXに定在し、TOIはエージェントYに定在
する。ネットワーク管理トランザクション演算をここで
は「アプリケーショントランザクション」又は「AT」
と称する。これらが、図5に参照したアプリケーション
及び演算100のような一つ以上のネットワーク管理ア
プリケーションを呼び出す。サービス・プロバイダ又は
エージェント150、151の中のアプリケーショント
ランザクション実行実体103は、ATトランザクショ
ンの手順を扱う。この実体103は、「アプリケーショ
ントランザクションマネージャ」すなわち「ATマネー
ジャ」110を含み、ATトランザクションサービスを
必要とする管理実体にそれを提供するために、独立の計
算手順として実装される。しかし、本発明の一般的応用
性は上述の実用のみに限られない。本発明の一実施例に
よると、ユーザーは「AT開始」メッセージをAT実行
実体103に構築してこのメッセージをAT実行実体1
03及びサービス・プロバイダ又はエージェントX及び
Yに送る。このメッセージを受け取ると、サービス・プ
ロバイダはその要求をATマネージャ110に連絡し
て、継続の管理演算すべてをまとめて連結することによ
って結束を作る。この作用は、本発明の一実施例に従っ
て、何のユーザー知識も無しで起こる。ユーザーは次い
で、他のすべての管理演算を構築し続けてサービス・プ
ロバイダに送る。サービス・プロバイダはこのとき、そ
れらを実体103のATマネージャ110に向ける。こ
の手順は、ATマネージャ110が「ATコミット」メ
ッセージ又は「ATアボート」メッセージを受けるまで
続く。「ATコミット」メッセージを受け取った場合、
サービス・プロバイダは、ATマネージャと協力してこ
のトランザクションに含まれるすべての演算の同時コミ
ットを起こす。「ATアボート」メッセージを受けた場
合は、結束AT及びメンバー演算をアボートするか、又
はアボート要求以前に実行した演算の「取消」と同様の
方法で完全にロールバックする。すべての演算は、演算
に失敗するか若しくは上記の命令を受領したとき、単一
トランザクションとして一括してコミットされるか又は
一括してアボートされる。
符号150及び151)のような、異なるエージェント
に定在する目標オブジェクト(TOA、TOB、TOI)
の周りに、ATM110がトランザクションセマンティ
ックを作る方法を示す図である。エージェント150、
151自体が特定のトランザクションを支援するか否か
に関わりなく、目標オブジェクトTOA及びTOBはエ
ージェントXに定在し、TOIはエージェントYに定在
する。ネットワーク管理トランザクション演算をここで
は「アプリケーショントランザクション」又は「AT」
と称する。これらが、図5に参照したアプリケーション
及び演算100のような一つ以上のネットワーク管理ア
プリケーションを呼び出す。サービス・プロバイダ又は
エージェント150、151の中のアプリケーショント
ランザクション実行実体103は、ATトランザクショ
ンの手順を扱う。この実体103は、「アプリケーショ
ントランザクションマネージャ」すなわち「ATマネー
ジャ」110を含み、ATトランザクションサービスを
必要とする管理実体にそれを提供するために、独立の計
算手順として実装される。しかし、本発明の一般的応用
性は上述の実用のみに限られない。本発明の一実施例に
よると、ユーザーは「AT開始」メッセージをAT実行
実体103に構築してこのメッセージをAT実行実体1
03及びサービス・プロバイダ又はエージェントX及び
Yに送る。このメッセージを受け取ると、サービス・プ
ロバイダはその要求をATマネージャ110に連絡し
て、継続の管理演算すべてをまとめて連結することによ
って結束を作る。この作用は、本発明の一実施例に従っ
て、何のユーザー知識も無しで起こる。ユーザーは次い
で、他のすべての管理演算を構築し続けてサービス・プ
ロバイダに送る。サービス・プロバイダはこのとき、そ
れらを実体103のATマネージャ110に向ける。こ
の手順は、ATマネージャ110が「ATコミット」メ
ッセージ又は「ATアボート」メッセージを受けるまで
続く。「ATコミット」メッセージを受け取った場合、
サービス・プロバイダは、ATマネージャと協力してこ
のトランザクションに含まれるすべての演算の同時コミ
ットを起こす。「ATアボート」メッセージを受けた場
合は、結束AT及びメンバー演算をアボートするか、又
はアボート要求以前に実行した演算の「取消」と同様の
方法で完全にロールバックする。すべての演算は、演算
に失敗するか若しくは上記の命令を受領したとき、単一
トランザクションとして一括してコミットされるか又は
一括してアボートされる。
【0013】図6は、本発明に従ってユーザーが選択さ
れたアプリケーショントランザクションを行う方法の流
れ図である。詳説すると、図6は、ユーザーが400で
アプリケーショントランザクション開始メッセージを構
築することを示す。次に、アプリケーショントランザク
ションを開始する要求が401でネットワーク管理プラ
ットホーム(NMP)に送られる。その後、ネットワーク
管理プラットホームが402で、そのメッセージを受け
取って結束処理を開始し、NMPがアプリケーショント
ランザクションコミットメッセージ又はアプリケーショ
ンロールバックメッセージを受け取るまで、継続の演算
すべてをまとめてリンクする。このとき、アプリケーシ
ョントランザクションコミットメッセージを受け取る
と、NMPは406でアプリケーショントランザクショ
ン実行実体を探し、それにすべての演算をアプリケーシ
ョントランザクションコミットメッセージとともに渡し
て、全スレッド演算の同時コミットを起こす。一方、ア
プリケーションロールバックメッセージを受け取ると、
演算の結束又はスレッド化及びトランザクションはアボ
ートされる。
れたアプリケーショントランザクションを行う方法の流
れ図である。詳説すると、図6は、ユーザーが400で
アプリケーショントランザクション開始メッセージを構
築することを示す。次に、アプリケーショントランザク
ションを開始する要求が401でネットワーク管理プラ
ットホーム(NMP)に送られる。その後、ネットワーク
管理プラットホームが402で、そのメッセージを受け
取って結束処理を開始し、NMPがアプリケーショント
ランザクションコミットメッセージ又はアプリケーショ
ンロールバックメッセージを受け取るまで、継続の演算
すべてをまとめてリンクする。このとき、アプリケーシ
ョントランザクションコミットメッセージを受け取る
と、NMPは406でアプリケーショントランザクショ
ン実行実体を探し、それにすべての演算をアプリケーシ
ョントランザクションコミットメッセージとともに渡し
て、全スレッド演算の同時コミットを起こす。一方、ア
プリケーションロールバックメッセージを受け取ると、
演算の結束又はスレッド化及びトランザクションはアボ
ートされる。
【0014】図7は、本発明に従ってアプリケーション
トランザクションマネージャ(ATM)がアプリケーショ
ンから要求メッセージを受け取る方法の流れ図である。
詳説すると、図7は、アプリケーショントランザクショ
ンマネージャが500でアプリケーションから、実行を
要する特定の演算に関する要求メッセージを、アプリケ
ーショントランザクションサーバーとネットワーク管理
プラットホームとの間のアプリケーショントランザクシ
ョンヘルパー装置内の配送機構を通して、受け取ること
を示す。本発明に従ってアプリケーショントランザクシ
ョンマネージャ(ATM)は501で、要求メッセージか
ら導出メッセージを作る。アプリケーショントランザク
ションマネージャ(ATM)はさらに、502でネットワ
ーク管理プラットホーム(NMP)から回答を受け取っ
て、その回答を、影響を受けたオブジェクトのスナップ
ショットとして恒久的取消ログ内に記憶するためにリン
クして、コミットできない特定のトランザクションをそ
の際にロールバックして目標オブジェクトをトランザク
ション手順が始まる前に保持していた値に再設定できる
ようにし、そして元の要求を実行のためネットワーク管
理プラットホームに送り返す。アプリケーショントラン
ザクションマネージャ(NMP)は次に、503で、個々
の各導出演算がそのまま全体として原子的にうまく完遂
されたか否かについて、ネットワーク管理プラットホー
ムからOK及び非OKの回答を受け取る。ATMはここ
で、OK回答を送ってアプリケーショントランザクショ
ンを許し、また非OKトランザクションをアボートして
関連する取消ログを逆順でやり直し、以前にコミットし
た演算をロールバックして目標オブジェクト内に元のオ
ブジェクト値を復元する。
トランザクションマネージャ(ATM)がアプリケーショ
ンから要求メッセージを受け取る方法の流れ図である。
詳説すると、図7は、アプリケーショントランザクショ
ンマネージャが500でアプリケーションから、実行を
要する特定の演算に関する要求メッセージを、アプリケ
ーショントランザクションサーバーとネットワーク管理
プラットホームとの間のアプリケーショントランザクシ
ョンヘルパー装置内の配送機構を通して、受け取ること
を示す。本発明に従ってアプリケーショントランザクシ
ョンマネージャ(ATM)は501で、要求メッセージか
ら導出メッセージを作る。アプリケーショントランザク
ションマネージャ(ATM)はさらに、502でネットワ
ーク管理プラットホーム(NMP)から回答を受け取っ
て、その回答を、影響を受けたオブジェクトのスナップ
ショットとして恒久的取消ログ内に記憶するためにリン
クして、コミットできない特定のトランザクションをそ
の際にロールバックして目標オブジェクトをトランザク
ション手順が始まる前に保持していた値に再設定できる
ようにし、そして元の要求を実行のためネットワーク管
理プラットホームに送り返す。アプリケーショントラン
ザクションマネージャ(NMP)は次に、503で、個々
の各導出演算がそのまま全体として原子的にうまく完遂
されたか否かについて、ネットワーク管理プラットホー
ムからOK及び非OKの回答を受け取る。ATMはここ
で、OK回答を送ってアプリケーショントランザクショ
ンを許し、また非OKトランザクションをアボートして
関連する取消ログを逆順でやり直し、以前にコミットし
た演算をロールバックして目標オブジェクト内に元のオ
ブジェクト値を復元する。
【0015】図9〜図11は、CMIPプロトコル用に
X.711で規定された行動に合致するオブジェクトを
扱うATアプリケーションのため取消ログを構築する方
法を示す図である。M-SETメッセージフローの部分
で、アプリケーションが目標オブジェクトXに対する設
定要求をネットワーク管理プラットホーム(NMP)10
2に送る。これはプログラミング・インターフェイスに
おいて、CMIP M-SETプロトコル・データ・ユニ
ット(PDU)を抽出する関数「CmipSetReq」を経由して
なされる。NMP132において、AT実行実体がこの
要求をバッファし、トランザクションがアボートされた
場合のM-SET要求用に取消記録を構築するため、多
数のM-GETメッセージを目標オブジェクトXに先ず
送出する。この取消記録は基本的に、同一だが元の値が
ついている目標オブジェクトに対する別のM-SET要
求である。これは変更された目標オブジェクトを、現在
要求されている変更を前日付にする元の値に、復元する
ことができる。取消記録が構築された後、NMPは目標
オブジェクトにM-SET要求を送る。M-SET要求が
成功すると、AT実行実体はその対応取消記録を取消ロ
グ内にセーブし、次いでトランザクションの中の次の要
求に進む。そうでないときは、現在の取消記録を移動し
て、取消ログを逆順で実行することにより特定のトラン
ザクションをアボートする。図9〜図11はさらに、N
MP102によりM-CREATE要求が扱われる方法
の一例を示す。これは、M-CREATEメッセージフ
ローに関連する。特定のアプリケーション実体は、関数
「CmiCreReq」を送出してCMIP M-SETプロトコ
ル・データ・ユニット(PDU)を抽出する。詳説する
と、M-CREATE要求毎に取消記録が構築される。
トランザクションアボートの場合に先行のM-CREA
TE要求を除去又は取消するのは、実質的にM-DEL
ETE要求である。最後に、M-DELETE要求を扱
う方法の一例を、M-DELETEメッセージフローの
部分で示す。この場合、アプリケーション実体は、「Cm
ipDelReq」関数を送出し、これがCMIP M-DELE
TEプロトコル・データ・ユニット(PDU)を抽出す
る。次にNMP中のAT実行実体は、多数のGET要求
を目標オブジェクトに送出し、回答を得て、それらをM
-DELETE要求の取消記録に構築する。この取消記
録は、例えば抹消前に持っていたのと同一または類似の
組の属性値を持つ、まさに同一のオブジェクトを再生す
るM-CREATE要求である。
X.711で規定された行動に合致するオブジェクトを
扱うATアプリケーションのため取消ログを構築する方
法を示す図である。M-SETメッセージフローの部分
で、アプリケーションが目標オブジェクトXに対する設
定要求をネットワーク管理プラットホーム(NMP)10
2に送る。これはプログラミング・インターフェイスに
おいて、CMIP M-SETプロトコル・データ・ユニ
ット(PDU)を抽出する関数「CmipSetReq」を経由して
なされる。NMP132において、AT実行実体がこの
要求をバッファし、トランザクションがアボートされた
場合のM-SET要求用に取消記録を構築するため、多
数のM-GETメッセージを目標オブジェクトXに先ず
送出する。この取消記録は基本的に、同一だが元の値が
ついている目標オブジェクトに対する別のM-SET要
求である。これは変更された目標オブジェクトを、現在
要求されている変更を前日付にする元の値に、復元する
ことができる。取消記録が構築された後、NMPは目標
オブジェクトにM-SET要求を送る。M-SET要求が
成功すると、AT実行実体はその対応取消記録を取消ロ
グ内にセーブし、次いでトランザクションの中の次の要
求に進む。そうでないときは、現在の取消記録を移動し
て、取消ログを逆順で実行することにより特定のトラン
ザクションをアボートする。図9〜図11はさらに、N
MP102によりM-CREATE要求が扱われる方法
の一例を示す。これは、M-CREATEメッセージフ
ローに関連する。特定のアプリケーション実体は、関数
「CmiCreReq」を送出してCMIP M-SETプロトコ
ル・データ・ユニット(PDU)を抽出する。詳説する
と、M-CREATE要求毎に取消記録が構築される。
トランザクションアボートの場合に先行のM-CREA
TE要求を除去又は取消するのは、実質的にM-DEL
ETE要求である。最後に、M-DELETE要求を扱
う方法の一例を、M-DELETEメッセージフローの
部分で示す。この場合、アプリケーション実体は、「Cm
ipDelReq」関数を送出し、これがCMIP M-DELE
TEプロトコル・データ・ユニット(PDU)を抽出す
る。次にNMP中のAT実行実体は、多数のGET要求
を目標オブジェクトに送出し、回答を得て、それらをM
-DELETE要求の取消記録に構築する。この取消記
録は、例えば抹消前に持っていたのと同一または類似の
組の属性値を持つ、まさに同一のオブジェクトを再生す
るM-CREATE要求である。
【0016】図12〜図13は、取消ログを使用して特
定のトランザクションをアボートする方法の図面であ
る。ここでは、取消ログは逆順で実行され、回答はすべ
て非OKで返され、アボート回答が返される。「アボー
トメッセージ」を処理するためのステップは、本発明の
一実施例に従って、(i)アプリケーションから明示的な
アボート要求を受けた、(ii)ATサーバーが内部アボー
ト条件を認識した、のいずれかの場合に、同一トランザ
クション内でそのサーバーが処理した先行のM-SE
T、M-CREATE、又はM-DELETE要求のいず
れかの失敗を原因として、実行されることに注意しなけ
ればならない。本発明の一実施例に従って、CMIP
M-SET、CMIP M-CREATE、CMIP M-
DELETE又はSNAP GET要求にはロールバッ
クがないことにもまた言及しなければならない。これら
の要求は、本発明の一実施例に従うと、ATサーバーに
より透過的に通過して、これらの要求を処理するための
取消ログ内の記録は作られない。
定のトランザクションをアボートする方法の図面であ
る。ここでは、取消ログは逆順で実行され、回答はすべ
て非OKで返され、アボート回答が返される。「アボー
トメッセージ」を処理するためのステップは、本発明の
一実施例に従って、(i)アプリケーションから明示的な
アボート要求を受けた、(ii)ATサーバーが内部アボー
ト条件を認識した、のいずれかの場合に、同一トランザ
クション内でそのサーバーが処理した先行のM-SE
T、M-CREATE、又はM-DELETE要求のいず
れかの失敗を原因として、実行されることに注意しなけ
ればならない。本発明の一実施例に従って、CMIP
M-SET、CMIP M-CREATE、CMIP M-
DELETE又はSNAP GET要求にはロールバッ
クがないことにもまた言及しなければならない。これら
の要求は、本発明の一実施例に従うと、ATサーバーに
より透過的に通過して、これらの要求を処理するための
取消ログ内の記録は作られない。
【0017】図14〜図15は、所定の動作および S
NMPプロトコルに合致するオブジェクトを扱うATア
プリケーションのために、取消ログをATアプリケーシ
ョン用に構築する方法の図面である。SNAP-SET
のメッセージフローの部分で、アプリケーション実体
は、プログラミング関数「SnmpSetSimple」要求をNM
P102に送出する。この関数はSNAP-SETプロ
トコル・データ・ユニット(PDU)を抽出する。NMP
102において、AT実行実体は多数のSNMP -SE
T要求を目標オブジェクトに送出し、回答を得て、それ
らを取消記録に構築する。続いて、AT実行実体は実際
のSNMP-SET PDUを構築して目標オブジェクト
に送る。要求が成功したときは、その対応取消記録を取
消ログ内にセーブし、次いでトランザクション中の次の
要求に進む。それ以外の場合、現在の取消記録を削除
し、取消記録を逆順で実行することによりトランザクシ
ョンをアボートする。次に、アプリケーション実体中の
SNMP-CREATE-ROW-OBJECTメッセー
ジフローが「SnmpSetCreateRow」関数を送出してSNA
P-SETプロトコル・データ・ユニット(PDU)を抽
出し、これが列オブジェクト全体の作成に用いられる。
この場合、取消記録が上述の要求用に作られる。特定の
トランザクションがアボートされたとき、create
演算の逆が実行できるよう前記列オブジェクト全体を抹
消できるのは、SNAP-SET PDUにマップできる
「DelReq」である。最後に、図面の最終部分のSNMP
-DELETE-ROW-OBJECTメッセージフロー
の下で、アプリケーション実体はプログラミング関数
「SnmpSetDestroyRow」を送出する。この関数は列オブ
ジェクト全体の抹消に用いられる。従って、多数のSN
MP-GET要求が目標オブジェクトに送出されて、列
オブジェクトの全行の値を復旧する。これらの値は、S
NMP-SET PDUにマップできる「CreReq」を構築
するのに用いられ、これが一方で全列オブジェクトを、
トランザクションアボートの場合にdeleteオペレ
ーションの逆が実行できるよう再生する。
NMPプロトコルに合致するオブジェクトを扱うATア
プリケーションのために、取消ログをATアプリケーシ
ョン用に構築する方法の図面である。SNAP-SET
のメッセージフローの部分で、アプリケーション実体
は、プログラミング関数「SnmpSetSimple」要求をNM
P102に送出する。この関数はSNAP-SETプロ
トコル・データ・ユニット(PDU)を抽出する。NMP
102において、AT実行実体は多数のSNMP -SE
T要求を目標オブジェクトに送出し、回答を得て、それ
らを取消記録に構築する。続いて、AT実行実体は実際
のSNMP-SET PDUを構築して目標オブジェクト
に送る。要求が成功したときは、その対応取消記録を取
消ログ内にセーブし、次いでトランザクション中の次の
要求に進む。それ以外の場合、現在の取消記録を削除
し、取消記録を逆順で実行することによりトランザクシ
ョンをアボートする。次に、アプリケーション実体中の
SNMP-CREATE-ROW-OBJECTメッセー
ジフローが「SnmpSetCreateRow」関数を送出してSNA
P-SETプロトコル・データ・ユニット(PDU)を抽
出し、これが列オブジェクト全体の作成に用いられる。
この場合、取消記録が上述の要求用に作られる。特定の
トランザクションがアボートされたとき、create
演算の逆が実行できるよう前記列オブジェクト全体を抹
消できるのは、SNAP-SET PDUにマップできる
「DelReq」である。最後に、図面の最終部分のSNMP
-DELETE-ROW-OBJECTメッセージフロー
の下で、アプリケーション実体はプログラミング関数
「SnmpSetDestroyRow」を送出する。この関数は列オブ
ジェクト全体の抹消に用いられる。従って、多数のSN
MP-GET要求が目標オブジェクトに送出されて、列
オブジェクトの全行の値を復旧する。これらの値は、S
NMP-SET PDUにマップできる「CreReq」を構築
するのに用いられ、これが一方で全列オブジェクトを、
トランザクションアボートの場合にdeleteオペレ
ーションの逆が実行できるよう再生する。
【0018】
【実施例】以下、本発明の実施例を、付属書A〜Cに従
って、説明する。
って、説明する。
【0019】[付属書A]ATサーバーは同時並行的に走
る多数のトランザクションを持つことがある。メッセー
ジが所属する特定のトランザクションを識別するため、
特定のトークン情報がユーザー・メッセージとともに渡
されてそのトランザクションを一義的に識別する。この
情報は、トランザクショントークン情報として知られて
いる。本発明の特定の具体例に従ってこのトークンに関
し三つの表現がある。
る多数のトランザクションを持つことがある。メッセー
ジが所属する特定のトランザクションを識別するため、
特定のトークン情報がユーザー・メッセージとともに渡
されてそのトランザクションを一義的に識別する。この
情報は、トランザクショントークン情報として知られて
いる。本発明の特定の具体例に従ってこのトークンに関
し三つの表現がある。
【0020】本発明に従う一つのトークン表現は、全面
的なトランザクション情報を必要とする。詳説すると、
このトークンは、新たなトランザクションを作るため又
は既存のトランザクションに関連させるためトランザク
ションを広域的に一義的に識別する情報を含む。
的なトランザクション情報を必要とする。詳説すると、
このトークンは、新たなトランザクションを作るため又
は既存のトランザクションに関連させるためトランザク
ションを広域的に一義的に識別する情報を含む。
【0021】本発明に従う別のトークン表現は、広域的
トランザクション識別子を必要とする。詳説すると、全
トランザクション情報にマップできる導出識別子を作
る。この広域的トランザクション処理識別子は、要求/
回答メッセージ中で同一トランザクションの反復参照の
ため、全トランザクション情報の代わりに使える。この
識別子は、広域的に唯一であって、NMPのものような
良く知られた実体を通じて、全トランザクション情報へ
又は該情報から広域的に翻訳でき、広域的トランザクシ
ョン処理マッピング機能へのアクセスを提供するか又は
この情報自体を供給する。
トランザクション識別子を必要とする。詳説すると、全
トランザクション情報にマップできる導出識別子を作
る。この広域的トランザクション処理識別子は、要求/
回答メッセージ中で同一トランザクションの反復参照の
ため、全トランザクション情報の代わりに使える。この
識別子は、広域的に唯一であって、NMPのものような
良く知られた実体を通じて、全トランザクション情報へ
又は該情報から広域的に翻訳でき、広域的トランザクシ
ョン処理マッピング機能へのアクセスを提供するか又は
この情報自体を供給する。
【0022】本発明に従う別のトークン表現は、トラン
ザクション識別子を必要とする。詳説すると、導出識別
子を用いて、ATマネージャの領域内で局所的に唯一の
トランザクションを識別する。本発明にしたがえば、ト
ランザクショントークン情報は下記のASN.1文法に
従って表現される。
ザクション識別子を必要とする。詳説すると、導出識別
子を用いて、ATマネージャの領域内で局所的に唯一の
トランザクションを識別する。本発明にしたがえば、ト
ランザクショントークン情報は下記のASN.1文法に
従って表現される。
【0023】 CHOICE { transInfo [1] TransactionInfo, grobalTransId [2] Integer, localTransId [3] Integer } TransactionInfo ::= SEQUENCE { userName GraphicString, applicationId INTEGER (0..MAX), misId AET, threadId [0] INTEGER OPTIONAL, enclosingTransaction [1] TransactionInfo OPTIONAL }
【0024】本発明の一実施例によれば、選択されたト
ランザクション情報は、AT開始(BeginAT)コンテキス
ト・メッセージ中で渡される。ATサーバーが、局所的
トランザクション識別子又は広域的トランザクション識
別子のいずれを返すか選択し、それをアプリケーション
がATサーバーと通信するため続いて使用する。
ランザクション情報は、AT開始(BeginAT)コンテキス
ト・メッセージ中で渡される。ATサーバーが、局所的
トランザクション識別子又は広域的トランザクション識
別子のいずれを返すか選択し、それをアプリケーション
がATサーバーと通信するため続いて使用する。
【0025】[付属書B] アプリケーショントランザクションAPIの明細 「AppTrans」−ATヘルパーオブジェクト
【0026】AppTransは、アプリケーショントランザク
ションをサポートするC++オブジェクト・クラスであ
る。AppTransのコンストラクタは、選択されたAppTrans
変数を特定のPlatform変数に次のように関連付ける。
ションをサポートするC++オブジェクト・クラスであ
る。AppTransのコンストラクタは、選択されたAppTrans
変数を特定のPlatform変数に次のように関連付ける。
【0027】AppTrans(Platform& <plat> = Platfor
m::def_platform);
m::def_platform);
【0028】ATの非同期限定モードをEM中でサポー
トするため、次のメソッドが本発明の一実施例に従って
実装される。 ・ Begin ATメソッド(同期バージョン) ・ Commit ATメソッド(同期バージョンのみ) ・ Abort ATメソッド(同期バージョンのみ) ・ Get Result メソッド ・ Get Result Stringメソッド
トするため、次のメソッドが本発明の一実施例に従って
実装される。 ・ Begin ATメソッド(同期バージョン) ・ Commit ATメソッド(同期バージョンのみ) ・ Abort ATメソッド(同期バージョンのみ) ・ Get Result メソッド ・ Get Result Stringメソッド
【0029】次のメソッドは、本発明の範囲内のもので
ある。
ある。
【0030】アプリケーショントランザクション開始 Result AppTrans::begin_trans( CDU <atm_name>); //ATマネージャ名
【0031】このメソッドは、新たなトランザクション
のため開始境界を規定する。このメッセージに続くすべ
てのメッセージは、トランザクション終了又はトランザ
クションアボートを指示するメッセージまで、このトラ
ンザクションに拘束される。このメソッドは、同期モー
ドで走りトランザクション開始要求の処理結果を返す。
結果がNOT_OKであるとき呼び出し人は、本発明に従って
get_result()又はget_result_string()メソッドを呼び
出し本発明に従ってさらに詳しいエラーを受け取ること
ができる。
のため開始境界を規定する。このメッセージに続くすべ
てのメッセージは、トランザクション終了又はトランザ
クションアボートを指示するメッセージまで、このトラ
ンザクションに拘束される。このメソッドは、同期モー
ドで走りトランザクション開始要求の処理結果を返す。
結果がNOT_OKであるとき呼び出し人は、本発明に従って
get_result()又はget_result_string()メソッドを呼び
出し本発明に従ってさらに詳しいエラーを受け取ること
ができる。
【0032】アプリケーショントランザクション終了 Result AppTrans::commit_trans();
【0033】本発明に従うこのメソッドは、現在アクテ
ィブなトランザクションの終了を意味し、そのトランザ
クションのコミット処理を要求する。このメソッドは、
同期モードで走り、トランザクション終了要求処理の最
終結果を返す。メソッドがNOT_OKと返されたとき呼び出
し人は、get_result()又はget_result_string()メソッ
ドを呼び出して、さらに詳しいエラーを受け取ることが
できる。他の場合、現在アクティブなトランザクション
の状態がAT_SUCCESSに変更される。
ィブなトランザクションの終了を意味し、そのトランザ
クションのコミット処理を要求する。このメソッドは、
同期モードで走り、トランザクション終了要求処理の最
終結果を返す。メソッドがNOT_OKと返されたとき呼び出
し人は、get_result()又はget_result_string()メソッ
ドを呼び出して、さらに詳しいエラーを受け取ることが
できる。他の場合、現在アクティブなトランザクション
の状態がAT_SUCCESSに変更される。
【0034】アプリケーショントランザクションアボー
ト Result AppTrans::abort_trans();
ト Result AppTrans::abort_trans();
【0035】本発明に従うこのメソッドは、現在アクテ
ィブなトランザクションに関し、トランザクションアボ
ートの開始を要求する。このメソッドは、同期モードで
走り、トランザクションアボート要求処理の最終結果を
返す。メソッドがNOT_OKと返されたとき呼び出し人は、
get_result()又はget_result_string()メソッドを呼び
出して、さらに詳しいエラーを受け取ることができる。
他の場合、現在アクティブなトランザクションの状態が
AT_ABORTEDに変更される。
ィブなトランザクションに関し、トランザクションアボ
ートの開始を要求する。このメソッドは、同期モードで
走り、トランザクションアボート要求処理の最終結果を
返す。メソッドがNOT_OKと返されたとき呼び出し人は、
get_result()又はget_result_string()メソッドを呼び
出して、さらに詳しいエラーを受け取ることができる。
他の場合、現在アクティブなトランザクションの状態が
AT_ABORTEDに変更される。
【0036】アプリケーショントランザクション取得及
びエラー文字列 AT_Result AppTrans::get_result() Char *AppTrans::get_result_string(void)
びエラー文字列 AT_Result AppTrans::get_result() Char *AppTrans::get_result_string(void)
【0037】これらの関数は現在アクティブなトランザ
クションの状態及びこのトランザクションに関連した状
態文字列を返す。状態の型及びその文字列を下表に示
す。
クションの状態及びこのトランザクションに関連した状
態文字列を返す。状態の型及びその文字列を下表に示
す。
【0038】
【表1】
【0039】本発明の一実施例に従う典型的ネットワー
ク管理演算順序は下記の通りである。 DELETE router1; DELETE router2; DELETE circuit1; SET alarm.status = "historical" WHERE alarm.origi
nator = router1; SET alarm.status = "historical" WHERE alarm.origi
nator = router2;
ク管理演算順序は下記の通りである。 DELETE router1; DELETE router2; DELETE circuit1; SET alarm.status = "historical" WHERE alarm.origi
nator = router1; SET alarm.status = "historical" WHERE alarm.origi
nator = router2;
【0040】このような実施例の制約は下記の通りであ
る。 1.router1又はrouter2のいずれかのDELETEに成功した
ときは、circuit1のDELETEに必ず成功する。そうでなけ
れば、「懸垂回路(dangling circuit)」を生じる。 2.いずれかのrouterのDELETEに失敗したときは、他の
router及びcircuitのDELETEを処理することはできな
い。そうでなければ、ネットワークが矛盾する状態(つ
まり誤配置の形態)になるからである。 3.任意のrouterのDELETEに成功したときは、そのalar
m状態の "historical"へのSETに必ず成功する。そうで
なければ、システム内に矛盾するアラームが生じる(つ
まり、アラームを発する装置がもはや存在しない時アラ
ームが作動する)。 4.任意のrouterのDELETEに失敗したときは、そのalar
m状態の "historical"へのSETを進めることはできな
い。未だネットワーク内でアクティブで固定を要する装
置が発するアラームをアーカイブに保管するのは望まし
くないからである。router1及びrouter2が異なるネット
ワーク管理エージェントにより制御されているときは、
一つのエージェントがダウンしている間に、他のエージ
ェントが起動していることがある。従って、一つのrout
erのDELETEには成功し別のものには失敗する。
る。 1.router1又はrouter2のいずれかのDELETEに成功した
ときは、circuit1のDELETEに必ず成功する。そうでなけ
れば、「懸垂回路(dangling circuit)」を生じる。 2.いずれかのrouterのDELETEに失敗したときは、他の
router及びcircuitのDELETEを処理することはできな
い。そうでなければ、ネットワークが矛盾する状態(つ
まり誤配置の形態)になるからである。 3.任意のrouterのDELETEに成功したときは、そのalar
m状態の "historical"へのSETに必ず成功する。そうで
なければ、システム内に矛盾するアラームが生じる(つ
まり、アラームを発する装置がもはや存在しない時アラ
ームが作動する)。 4.任意のrouterのDELETEに失敗したときは、そのalar
m状態の "historical"へのSETを進めることはできな
い。未だネットワーク内でアクティブで固定を要する装
置が発するアラームをアーカイブに保管するのは望まし
くないからである。router1及びrouter2が異なるネット
ワーク管理エージェントにより制御されているときは、
一つのエージェントがダウンしている間に、他のエージ
ェントが起動していることがある。従って、一つのrout
erのDELETEには成功し別のものには失敗する。
【0041】本発明に従うと、次の要求は、それゆえ、
原子的に実行される。 BEGIN TRANSACTION; DELETE router1; DELETE router2; DELETE circuit1; SET alarm.status = "historical" WHERE alarm.origi
nator = router1; SET alarm.status = "historical" WHERE alarm.origi
nator = router2; COMMIT TRANSACTION;
原子的に実行される。 BEGIN TRANSACTION; DELETE router1; DELETE router2; DELETE circuit1; SET alarm.status = "historical" WHERE alarm.origi
nator = router1; SET alarm.status = "historical" WHERE alarm.origi
nator = router2; COMMIT TRANSACTION;
【0042】このとき、トランザクションの原子的実行
は本発明の下で保証される。下記は、アプリケーション
トランザクションの一例である。
は本発明の下で保証される。下記は、アプリケーション
トランザクションの一例である。
【0043】 #include <pmi/app_trans.hh> main (int argc, char **argv) { Platform Plat (duEM); // MIS.への接続を設定// Plat = Platform(duEM); If (plat.get_error_type() != PMI_SUCCESS) { cout << plat.get_error_string() << endl; } // トランザクションの前に全てのimageを局所的に準備 // アプリケーション側でrouter1、router2、cicuit1 image をブート Image router1 = Image (router1_dn, router1_class); If (!router1.boot()) { exit(1); } Image router2 = Image (router2_dn, router2_class); If (!router2.boot()) { exit(1); } Image circuit1 = Image (circuit1_dn, circuit1_class); If (!dircuit1.boot()) { exit(1); } //発信場所がrouter1又はrouter2のいずれかである場合は //すべてのアラームをブート Album the_alarms = Album("The_Alarms"); Timeout to; the_alarms.set.derivation ("/synstemId = \"sys\"/ log = \"AlarmLog\" /LV(1) /CMISFilter(or:{item:equality:(routerId, \"router1\"}, {item:equality;(routerId, \"router2\"}) "); if (!the_arams.all_boot(to)) { // ブートは失敗? cout << "all_boot():を使ったimageのブート失敗)"; exit (2); } //アプリケーショントランザクション要求を構築して呼び出す// AppTrans at(plat); //同期 アプリケーショントランザクション開始 if (!at.begin_trans("/systemId=\"sys\"/subsystemId=\"aux\"")) { cout << "AT開始トランザクション失敗! 原因 = " << at.get_error_string() <<endl; exit(7); } //非同期 router1、router2、circuit1を破棄 if (!router1.start_destroy()) { cout << "router1の破棄失敗" << router1.get_error_string() <<endl; exit (7); } if (!router2.start_destroy()) { cout << "router2の破棄失敗" << router2.get_error_string() <<endl; exit (7); } if (!circuit1.start_destroy()) { cout << "circuit1の破棄失敗" << circuit1.get_error_string() <<endl; exit (7); } //非同期 全アラームを"historical"に設定 if (!the_alarn.all_set("status","historical")) { cout << "セット失敗! 原因 = " << the_alarm.get_error_string() << endl; exit (7) ; } if (!the_alarn.all_start_store()) { cout << "セット失敗! 原因 = " << the_alarm.get_error_string() <<endl; exit (7) ; } //同期 アプリケーショントランザクションをコミット AT_Result = at.commit_tarans(); //トランザクションの結果を点検// if (result != AT _SUCCESS) { cout << "AT終了トランザクション失敗! 原因 = " << at.get_result_string() <<endl; exit (7); } exit(0); }
【0044】[付属書C]本発明の一実施例に従って、ネ
ットワーク管理のためのOSIトランザクション処理サ
ービス(OSI Transaction Processing service for Netw
ork Management)のプリミティブをネットワーク管理ア
プリケーションとアプリケーション・サーバーとの間の
ダイアログ実行のため用いる。
ットワーク管理のためのOSIトランザクション処理サ
ービス(OSI Transaction Processing service for Netw
ork Management)のプリミティブをネットワーク管理ア
プリケーションとアプリケーション・サーバーとの間の
ダイアログ実行のため用いる。
【0045】TMNネットワーク管理のためのOSIト
ランザクション処理サービス利用は、下記の国際基準で
サポートされている。 ITU 勧告 X.702: Information Technology−Open Sys
tems Interconnection−Application Context for Syst
ems Management with Transaction Processing(情報技
術−オープンシステム相互接続−トランザクションプロ
セスを伴うシステム管理のためのアプリケーションコン
テキスト)[ISO/IEC 11587も]。
ランザクション処理サービス利用は、下記の国際基準で
サポートされている。 ITU 勧告 X.702: Information Technology−Open Sys
tems Interconnection−Application Context for Syst
ems Management with Transaction Processing(情報技
術−オープンシステム相互接続−トランザクションプロ
セスを伴うシステム管理のためのアプリケーションコン
テキスト)[ISO/IEC 11587も]。
【0046】ネットワーク管理のためのOSIトランザ
クション処理サービス自体は、下記の国際基準でサポー
トされている。 ITU 勧告 X.860: Open Systems Interconnection−Di
stributed Transaction Processing: Mode1(オープン
システム相互接続−分散トランザクションプロセス:モ
ード1) ITU 勧告 X.861: Open Systems Interconnection−Di
stributed Transaction Processing:Servece Definiti
on(オープンシステム相互接続−分散トランザクション
プロセス:サービス定義) ITU 勧告 X.862: Open Systems Interconnection−Di
stributed Transaction Processing:Protcol specific
ation(オープンシステム相互接続−分散トランザクシ
ョンプロセス:プロトコル仕様書)
クション処理サービス自体は、下記の国際基準でサポー
トされている。 ITU 勧告 X.860: Open Systems Interconnection−Di
stributed Transaction Processing: Mode1(オープン
システム相互接続−分散トランザクションプロセス:モ
ード1) ITU 勧告 X.861: Open Systems Interconnection−Di
stributed Transaction Processing:Servece Definiti
on(オープンシステム相互接続−分散トランザクション
プロセス:サービス定義) ITU 勧告 X.862: Open Systems Interconnection−Di
stributed Transaction Processing:Protcol specific
ation(オープンシステム相互接続−分散トランザクシ
ョンプロセス:プロトコル仕様書)
【0047】コミットメント、一貫性及び復旧に関する
関連国際基準は、 ITU 勧告 X.851: Information Technology−Open Sys
tems Interconnection−Service Definition for Commi
tment, Concurrency and Recovery Service Element
(情報技術−オープンシステム相互接続−コミットメン
ト、一貫性及び復旧サービス要素に関するサービス定
義)[ISO/IEC IS 9804 も]。
関連国際基準は、 ITU 勧告 X.851: Information Technology−Open Sys
tems Interconnection−Service Definition for Commi
tment, Concurrency and Recovery Service Element
(情報技術−オープンシステム相互接続−コミットメン
ト、一貫性及び復旧サービス要素に関するサービス定
義)[ISO/IEC IS 9804 も]。
【0048】上記基準のすべてが、アプリケーションと
トランザクション処理サービスプロバイダ(TPSP、
本実施例においては アプリケーショントランザクショ
ンサーバー)との間で、トランザクションセマンティッ
ク実行のため、交換しなければならないメッセージ・セ
ットを規定するけれども、矛盾のない状態でトランザク
ションの結束データを捕捉することにより、TPSPが
トランザクションに関して内部的に原子的性格をそれに
より保証できる機構を上述の基準のどれも示唆又は規定
していないことに言及しておく。本明細書において記述
したのは、正にこの機構であり、これが本発明の請求項
の一つを構成する。
トランザクション処理サービスプロバイダ(TPSP、
本実施例においては アプリケーショントランザクショ
ンサーバー)との間で、トランザクションセマンティッ
ク実行のため、交換しなければならないメッセージ・セ
ットを規定するけれども、矛盾のない状態でトランザク
ションの結束データを捕捉することにより、TPSPが
トランザクションに関して内部的に原子的性格をそれに
より保証できる機構を上述の基準のどれも示唆又は規定
していないことに言及しておく。本明細書において記述
したのは、正にこの機構であり、これが本発明の請求項
の一つを構成する。
【0049】ここに記述された実施例は単に、アプリケ
ーショントランザクションサーバー内のこの機構が、
X.711 CMIP TMN管理プロトコルのX.702
基準により規定されたX.860/X.861/X.862
トランザクション処理サービスへのマッピングに定義さ
れた通りの、ネットワーク管理トランザクション手順メ
ッセージ・セットを用いて、外部アプリケーションによ
り働かされる方法を説明するのみである。
ーショントランザクションサーバー内のこの機構が、
X.711 CMIP TMN管理プロトコルのX.702
基準により規定されたX.860/X.861/X.862
トランザクション処理サービスへのマッピングに定義さ
れた通りの、ネットワーク管理トランザクション手順メ
ッセージ・セットを用いて、外部アプリケーションによ
り働かされる方法を説明するのみである。
【0050】本発明のX.702に合致する実施例にお
いては、ネットワーク管理アプリケーション及びアプリ
ケーショントランザクションサーバ双方が、X.860/
X.861/X.862に合致するトランザクション処理
サービスユーザ発動(TPSUI)である。これはそれら
の間で交換されるすべてのCMISE、SMASE、及
びROSE PDUが、X.861 TP サービスにより
定義された通りのTP-DATAプリミティブ内に包括
されることを意味する。
いては、ネットワーク管理アプリケーション及びアプリ
ケーショントランザクションサーバ双方が、X.860/
X.861/X.862に合致するトランザクション処理
サービスユーザ発動(TPSUI)である。これはそれら
の間で交換されるすべてのCMISE、SMASE、及
びROSE PDUが、X.861 TP サービスにより
定義された通りのTP-DATAプリミティブ内に包括
されることを意味する。
【0051】非X.702処理にサービスする能力もあ
るX.702に合致するTPサーバーを持つことが可能
であることに言及しておく。例えば、本発明のX.70
2に合致する実施例は、前述した本発明の他の実施例
(非X.702に合致)と同一の物理的コンピュータシ
ステム及び同一のソフトウエア・プロセス内に共存でき
る。これは、非X.702に基づくネットワーク管理ト
ランザクションが、X.860/X.861/X.862に
基づくTPSPにより扱われるTP結合のプールの中に
ない結合の上で実行されるとき可能である。
るX.702に合致するTPサーバーを持つことが可能
であることに言及しておく。例えば、本発明のX.70
2に合致する実施例は、前述した本発明の他の実施例
(非X.702に合致)と同一の物理的コンピュータシ
ステム及び同一のソフトウエア・プロセス内に共存でき
る。これは、非X.702に基づくネットワーク管理ト
ランザクションが、X.860/X.861/X.862に
基づくTPSPにより扱われるTP結合のプールの中に
ない結合の上で実行されるとき可能である。
【0052】この実施例において、ネットワーク管理ア
プリケーション及びアプリケーショントランザクション
サーバーの双方が、TPSUIであり、TSPU-Titleを持
つ。アプリケーションは、ネットワーク管理プラットホ
ームがトランザクションにサービスするため別個のアプ
リケーショントランザクションサーバー・プロセスを持
つか否かを必ずしも知る必要はないので、アプリケーシ
ョントランザクションサーバーのTSPU-Titleは、ネット
ワーク管理プラットホーム全体のTSPU-Titleと見なされ
る、つまり、全体としてのプラットホームがTPサーバ
ーと見なされる。しかし、このTSPU-Titleに向けられた
メッセージは、アプリケーショントランザクションサー
バーに直接送り出される。
プリケーション及びアプリケーショントランザクション
サーバーの双方が、TPSUIであり、TSPU-Titleを持
つ。アプリケーションは、ネットワーク管理プラットホ
ームがトランザクションにサービスするため別個のアプ
リケーショントランザクションサーバー・プロセスを持
つか否かを必ずしも知る必要はないので、アプリケーシ
ョントランザクションサーバーのTSPU-Titleは、ネット
ワーク管理プラットホーム全体のTSPU-Titleと見なされ
る、つまり、全体としてのプラットホームがTPサーバ
ーと見なされる。しかし、このTSPU-Titleに向けられた
メッセージは、アプリケーショントランザクションサー
バーに直接送り出される。
【0053】アプリケーションがBegin-Transactionプ
リミティブにより境界を決められたトランザクションを
開始するときは、APIライブラリ(PMI)が点検し
て、ACSEアプリケーションの関連付けが、X.70
2に合致するするアプリケーショントランザクションサ
ーバーとともに確立されているか否かを検査し、そうで
ないときは、このような関係づけを確立する。次に、こ
れはTPダイアログがX.702に合致するアプリケー
ショントランザクションサーバーとともに確立されてい
るか否かを検査し、そうでないときは、TP-BEGIN-DIALO
GUEをアプリケーション・サーバーに発行する。最後
に、これはTP-BEGIN-TRANSACTION を発行してトランザ
クションの始点の境界を定める。
リミティブにより境界を決められたトランザクションを
開始するときは、APIライブラリ(PMI)が点検し
て、ACSEアプリケーションの関連付けが、X.70
2に合致するするアプリケーショントランザクションサ
ーバーとともに確立されているか否かを検査し、そうで
ないときは、このような関係づけを確立する。次に、こ
れはTPダイアログがX.702に合致するアプリケー
ショントランザクションサーバーとともに確立されてい
るか否かを検査し、そうでないときは、TP-BEGIN-DIALO
GUEをアプリケーション・サーバーに発行する。最後
に、これはTP-BEGIN-TRANSACTION を発行してトランザ
クションの始点の境界を定める。
【0054】TPダイアログがネットワーク管理アプリ
ケーションとX.702に合致するアプリケーショント
ランザクションサーバーとの間に確立している場合は、
TPダイアログの一部として下記の機能単位が選択され
る。 −そのダイアログのため「コミットメント」の整合水準
を選び、ネットワーク管理アプリケーションをそれによ
り結束データ自体のコミットを整合することから解放す
る。 −コミット機能単位(Commit Functional Unit)及び非連
鎖トランザクション機能単位(Unchained Transactons F
unctional Unit)が選ばれる。 −ハンドシェイク機能単位(Handshake Functional Uni
t)は選ばれることも選ばれないこともある。
ケーションとX.702に合致するアプリケーショント
ランザクションサーバーとの間に確立している場合は、
TPダイアログの一部として下記の機能単位が選択され
る。 −そのダイアログのため「コミットメント」の整合水準
を選び、ネットワーク管理アプリケーションをそれによ
り結束データ自体のコミットを整合することから解放す
る。 −コミット機能単位(Commit Functional Unit)及び非連
鎖トランザクション機能単位(Unchained Transactons F
unctional Unit)が選ばれる。 −ハンドシェイク機能単位(Handshake Functional Uni
t)は選ばれることも選ばれないこともある。
【0055】この実施例においては、トランザクション
の境界を定めるためアプリケーションが呼び出した手順
呼出と同時に、アプリケーションが呼び出したネットワ
ーク管理演算が、X.702 基準に規定の通りX.86
0/X.861/X.862TPサービスプリミティブへの
下記のマッピングを用いてX.702に合致するアプリ
ケーショントランザクションサーバーに送られる。
の境界を定めるためアプリケーションが呼び出した手順
呼出と同時に、アプリケーションが呼び出したネットワ
ーク管理演算が、X.702 基準に規定の通りX.86
0/X.861/X.862TPサービスプリミティブへの
下記のマッピングを用いてX.702に合致するアプリ
ケーショントランザクションサーバーに送られる。
【0056】 Begin Transaction A-ASSOCIATE (必要あれば) TP-BEGIN-DIALOGUE (必要あれば) TP-BEGIN-TRANSACTION M-CREATE TP-DATA wrapping CMISE/ROSE M-CRATE PDU M-DELETE TP-DATA wrapping CMISE/ROSE M-DELETE PDU M-CANCEL-GET TP-DATA wrapping CMISE/ROSE M-CANCEL-GET PDU M-GET TP-DATA wrapping CMISE/ROSE M-GET PDU M-SET TP-DATA wrapping CMISE/ROSE M-SET PDU Commit Transaction TP-COMIT Abort Transaction TP-ROLLBACK END TRANSACTION TP-COMIT (先行するTP-COMMITの発送がない場合) TP-END-TRANSACTION
【0057】ハンドシェイク機能単位が選ばれていると
きは、ネットワーク管理アプリケーションが送出するプ
リミティブTP-HANDSHAKEが、TP-COMMITプリミティブの
等価物と見なされる。
きは、ネットワーク管理アプリケーションが送出するプ
リミティブTP-HANDSHAKEが、TP-COMMITプリミティブの
等価物と見なされる。
【0058】本発明の一実施例に従うと、X.702に
合致するアプリケーショントランザクションサーバー
は、いずれかのTP-COMMIT指示が成功裡に完全にサービ
スされたとき、TP-COMMIT-COMPLETEプリミティブを、ネ
ットワーク管理アプリケーションに発行する。これは、
またTP-ROLLBACK指示が成功裡に完全にサービスされた
とき、TP-ROLLBACK-COMPLETEプリミティブを、ネットワ
ーク管理アプリケーションに送出する。
合致するアプリケーショントランザクションサーバー
は、いずれかのTP-COMMIT指示が成功裡に完全にサービ
スされたとき、TP-COMMIT-COMPLETEプリミティブを、ネ
ットワーク管理アプリケーションに発行する。これは、
またTP-ROLLBACK指示が成功裡に完全にサービスされた
とき、TP-ROLLBACK-COMPLETEプリミティブを、ネットワ
ーク管理アプリケーションに送出する。
【0059】本発明の一実施例に従うと、X.702に
合致するアプリケーショントランザクションサーバーは
これらのメッセージ・セットを、外界(ネットワーク管
理アプリケーション)と相互作用するための外部通信機
構として用いる。これはまた、続いて取消ログ機構を利
用して、必要なときロールバックできるようトランザク
ションの初期状態についての適切なデータの捕捉を実行
することをそのトランザクションに保証する。
合致するアプリケーショントランザクションサーバーは
これらのメッセージ・セットを、外界(ネットワーク管
理アプリケーション)と相互作用するための外部通信機
構として用いる。これはまた、続いて取消ログ機構を利
用して、必要なときロールバックできるようトランザク
ションの初期状態についての適切なデータの捕捉を実行
することをそのトランザクションに保証する。
【0060】以上、本発明の一実施形態を図面に沿って
説明した。しかしながら本発明は上記実施形態に示した
事項に限定されず、特許請求の範囲の記載に基いてその
変更、改良等が可能であることは明らかである。また、
本明細書の一部には、著作権法の制約を受ける文書が含
まれる。著作権者は、それが特許庁の書類又は記録にあ
らわれるときは、その複写に反対しないが、それ以外の
場合は、これに関連する全権を保有する。
説明した。しかしながら本発明は上記実施形態に示した
事項に限定されず、特許請求の範囲の記載に基いてその
変更、改良等が可能であることは明らかである。また、
本明細書の一部には、著作権法の制約を受ける文書が含
まれる。著作権者は、それが特許庁の書類又は記録にあ
らわれるときは、その複写に反対しないが、それ以外の
場合は、これに関連する全権を保有する。
【0061】
【発明の効果】以上の如く本発明によれば、ネットワー
ク管理プラットホーム用の機構により、ユーザーは勝手
な一連の異種管理要求の周りにトランザクション境界を
規定することができる。本発明に従うプラットホーム
は、これらの要求が原子的にコミットされることを保証
する。
ク管理プラットホーム用の機構により、ユーザーは勝手
な一連の異種管理要求の周りにトランザクション境界を
規定することができる。本発明に従うプラットホーム
は、これらの要求が原子的にコミットされることを保証
する。
【図1】本発明に従うネットワーク管理プラットホーム
と通信する選択されたアプリケーションのブロック図で
ある。
と通信する選択されたアプリケーションのブロック図で
ある。
【図2】本発明の実施例を実装するためのコンピュータ
システムのブロック図である。
システムのブロック図である。
【図3】本発明に従うネットワーク管理プラットホーム
のブロック図である。
のブロック図である。
【図4】本発明に従うアプリケーショントランザクショ
ンマネージャの図である。
ンマネージャの図である。
【図5】特定のエージェント自体が特定のトランザクシ
ョンを支援するか否かに関わりなく、異なるエージェン
トに定在する(例えば、目標オブジェクトTOAおよび
TOBはエージェントXに定在し、目標オブジェクトT
OIはエージェントYに定在する)特定の目標オブジェ
クト(例えばTOA、TOB、TOI)の周りに、アプリ
ケーショントランザクションマネージャが本発明に従っ
て、トランザクションセマンティックを作る方法を示す
図である。
ョンを支援するか否かに関わりなく、異なるエージェン
トに定在する(例えば、目標オブジェクトTOAおよび
TOBはエージェントXに定在し、目標オブジェクトT
OIはエージェントYに定在する)特定の目標オブジェ
クト(例えばTOA、TOB、TOI)の周りに、アプリ
ケーショントランザクションマネージャが本発明に従っ
て、トランザクションセマンティックを作る方法を示す
図である。
【図6】本発明に従ってユーザーが選択されたアプリケ
ーションを実装する方法を示す流れ図である。
ーションを実装する方法を示す流れ図である。
【図7】本発明に従ってアプリケーショントランザクシ
ョンマネージャがアプリケーションから要求メッセージ
を受け取る方法を示す流れ図である。
ョンマネージャがアプリケーションから要求メッセージ
を受け取る方法を示す流れ図である。
【図8】分割された図9〜図15の相互の配置関係を示
す図である。
す図である。
【図9】X.711 CMIPプロトコルに合致するオブ
ジェクトを扱う典型的ネットワーク管理アプリケーショ
ンのため、取消ログをアプリケーショントランザクショ
ン用に構築する方法を示す分割された一部の図である。
ジェクトを扱う典型的ネットワーク管理アプリケーショ
ンのため、取消ログをアプリケーショントランザクショ
ン用に構築する方法を示す分割された一部の図である。
【図10】X.711 CMIPプロトコルに合致するオ
ブジェクトを扱う典型的ネットワーク管理アプリケーシ
ョンのため、取消ログをアプリケーショントランザクシ
ョン用に構築する方法を示す分割された一部の図であ
る。
ブジェクトを扱う典型的ネットワーク管理アプリケーシ
ョンのため、取消ログをアプリケーショントランザクシ
ョン用に構築する方法を示す分割された一部の図であ
る。
【図11】X.711 CMIPプロトコルに合致するオ
ブジェクトを扱う典型的ネットワーク管理アプリケーシ
ョンのため、取消ログをアプリケーショントランザクシ
ョン用に構築する方法を示す分割された一部の図であ
る。
ブジェクトを扱う典型的ネットワーク管理アプリケーシ
ョンのため、取消ログをアプリケーショントランザクシ
ョン用に構築する方法を示す分割された一部の図であ
る。
【図12】トランザクションがアボートされた場合に取
消ログを使用する方法を示す分割された一部の図であ
る。
消ログを使用する方法を示す分割された一部の図であ
る。
【図13】処理がアボートされた場合に取消ログを使用
する方法を示す分割された一部の図である。
する方法を示す分割された一部の図である。
【図14】RFC1157 SNMPプロトコルに合致
するオブジェクトを扱う典型的ネットワーク管理アプリ
ケーションのため、取消ログをアプリケーショントラン
ザクション用に構築する方法を示す分割された一部の図
である。
するオブジェクトを扱う典型的ネットワーク管理アプリ
ケーションのため、取消ログをアプリケーショントラン
ザクション用に構築する方法を示す分割された一部の図
である。
【図15】RFC1157 SNMPプロトコルに合致
するオブジェクトを扱う典型的ネットワーク管理アプリ
ケーションのため、取消ログをアプリケーショントラン
ザクション用に構築する方法を示す分割された一部の図
である。
するオブジェクトを扱う典型的ネットワーク管理アプリ
ケーションのため、取消ログをアプリケーショントラン
ザクション用に構築する方法を示す分割された一部の図
である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スボド・バパット アメリカ合衆国 94303 カリフォルニア 州 パロアルト ヒルバーレーン 546 (72)発明者 ジェラルド・ホラン アメリカ合衆国 94070 カリフォルニア 州 サンカルロス セントフランシスウェ イ 2315
Claims (31)
- 【請求項1】 アプリケーショントランザクションサー
バー及びネットワーク管理プラットホームを含むコンピ
ュータシステムにおいて、特定のアプリケーションが要
求し、少なくとも一つの所定の単独目標オブジェクトを
指すアプリケーショントランザクションの取扱いに関す
るコンピュータに実装した方法であって、 特定の初期オブジェクト値を有する少なくとも単独のオ
ブジェクトを目標とする所望のアプリケーション演算を
規定する少なくとも単独の要求メッセージの実行のため
の要求を受領するステップ、 受領したアプリケーション演算要求を組み合わせて一つ
のアプリケーショントランザクションを構築するステッ
プ、及びアプリケーショントランザクション処理が失敗
したときオブジェクト値の初期設定への復元を可能にす
るために、目標オブジェクト毎に現在のオブジェクト値
を記憶するステップ、の各ステップを含むコンピュータ
に実装した方法。 - 【請求項2】 アプリケーショントランザクション処理
の所在位置を判定するステップ、をさらに含む請求項1
記載のコンピュータに実装した方法。 - 【請求項3】 アプリケーショントランザクション処理
を、選択されたネットワーク管理プラットホームにおい
て行う請求項1記載のコンピュータに実装した方法。 - 【請求項4】 アプリケーショントランザクション処理
を、選択されたアプリケーショントランザクションサー
バーにおいて行う請求項1記載のコンピュータに実装し
た方法。 - 【請求項5】 前記記憶するステップが、選択されたデ
ータベースにおいてなされる請求項1記載のコンピュー
タに実装した方法。 - 【請求項6】 コンピュータ読取可能なコード手段を有
するコンピュータ使用可能な媒体内に具体化されたアプ
リケーショントランザクション管理のためのコンピュー
タプログラム製品であって、 少なくとも一つの目標オブジェクトに関する所望のアプ
リケーション演算を規定する要求メッセージを受領する
よう構成された第一コンピュータ読取可能コード構成
体、 ユーザーのアプリケーション要求メッセージが規定する
アプリケーション演算を、単一アプリケーショントラン
ザクションに結合するよう構成された第二コンピュータ
読取可能コード構成体、及びアプリケーショントランザ
クションを局所的に実行するか否か、又は構築されたア
プリケーショントランザクションを実行するのに特定の
アプリケーショントランザクションサーバーを選定する
か否かを判定するよう構成された第三コンピュータ読取
可能コード構成体、を含むコンピュータプログラム製
品。 - 【請求項7】 ネットワーク管理プラットホーム(NM
P)及び前記NMPに関連付けられたアプリケーション
トランザクション(AT)サーバーを含むコンピュータシ
ステム内でアプリケーショントランザクションを支援す
るコンピュータに実装した方法であって、 選択されたアプリケーションを実行するユーザーからの
第一メッセージを用いて第一アプリケーショントランザ
クションの開始を確立するステップ、 前記第一アプリケーショントランザクション内で、前記
第一メッセージに続く少なくとも第二の選択メッセージ
を前記第一メッセージに結合するステップ、及び前記第
一トランザクションへのメッセージの追加結合を停止す
る終了メッセージを受領するステップ、を含むコンピュ
ータに実装した方法。 - 【請求項8】 特定のアプリケーショントランザクショ
ン演算を前記NMPと接続して実行するか又はATサー
バーと接続して実行するかを選択するステップをさらに
含む請求項7記載のコンピュータに実装した方法。 - 【請求項9】 第一アプリケーショントランザクション
の試行を失敗するステップを含む請求項7記載のコンピ
ュータに実装した方法。 - 【請求項10】 前記第一トランザクションがその従属
演算の全部を完全に完了しなかったとき、第一トランザ
クションの実行済演算をロールバックするステップを含
む請求項7記載のコンピュータに実装した方法。 - 【請求項11】 アプリケーショントランザクションの
受領に応答してアプリケーショントランザクションマネ
ージャを作動させるよう構成されたアプリケーショント
ランザクションサーバー(ATS)、及び前記アプリケー
ショントランザクションサーバーが実行したアプリケー
ショントランザクションの逆実行を可能にする取消ログ
を記憶するためATSに結合されたデータベース、を含
むコンピュータシステム。 - 【請求項12】 選択されたサーバーで処理するため
に、特定のアプリケーショントランザクション演算を選
択的に配送する配送機構を備えて構成されたデータ処理
システム、をさらに含む請求項11記載のコンピュータ
システム。 - 【請求項13】 ネットワーク管理に関しコンピュータ
に実装した方法であって、 対応するメッセージ要求演算の実行のための複数の要求
メッセージを、複合アプリケーショントランザクション
に結合するステップ、及び前記複合アプリケーショント
ランザクションを実行するステップ、を含むコンピュー
タに実装した方法。 - 【請求項14】 所定の初期値を有する選択されたオブ
ジェクト上で、所定の要求演算を個々に実行するステッ
プを含む請求項13記載のコンピュータに実装した方
法。 - 【請求項15】 前記選択されたオブジェクトの前記初
期値を記録するステップを含む請求項14記載のコンピ
ュータに実装した方法。 - 【請求項16】 前記初期値の記録が選択されたデータ
ベース内に記憶されるものである請求項15記載のコン
ピュータに実装した方法。 - 【請求項17】 アプリケーショントランザクション内
に結合されたメッセージ要求演算の一部のみがそれを完
了する能力があるものである請求項13記載のコンピュ
ータに実装した方法。 - 【請求項18】 アプリケーショントランザクション全
体の原子的実行の失敗に応答して、トランザクションが
変更したオブジェクト値を初期状態に復元するステップ
を含む請求項17記載のコンピュータに実装した方法。 - 【請求項19】 選択されたオブジェクトのためのトラ
ンザクションセマンティックを、それらのエージェント
が特定のトランザクション能力を有するか否かに関係な
く提供するステップを含む請求項18記載のコンピュー
タに実装した方法。 - 【請求項20】 選択されたオブジェクトのためのトラ
ンザクションサービスをそれらのエージェントを通じて
提供するステップを含み、このサービスがエージェント
の位置に関し透過的である請求項19記載のコンピュー
タに実装した方法。 - 【請求項21】 ATサーバーによりATメッセージ及
びAT演算を、それらのメッセージ及び演算にマッピン
グするステップであって、それらのメッセージ及び演算
が、それぞれによって規定される行動を具現しそれに合
致するオブジェクトのためのX.702/X.860/X.
861/X.862プロトコルに文書化されたものとし
て、OSIトランザクションプロトコルに規定されたも
のを含む請求項20記載のコンピュータに実装した方
法。 - 【請求項22】 ATサーバーによりATメッセージ及
びAT演算を、メッセージ及び演算にマッピングするス
テップであって、それらのメッセージ及び演算が、それ
によって規定される行動を具現しそれに合致するオブジ
ェクトのためのXAプロトコルで規定されたものである
請求項21記載のコンピュータに実装した方法。 - 【請求項23】 ATサーバーによりATメッセージ及
びAT演算を、メッセージ及び演算にマッピングするス
テップであって、それらのメッセージ及び演算が、それ
によって規定される行動を具現しそれに合致するオブジ
ェクトのための選択されたトランザクションプロトコル
で規定されたものを含む請求項22記載のコンピュータ
に実装した方法。 - 【請求項24】 管理演算のための取消記録を構築する
ステップであって、該演算が、選択されたCMIPプロ
トコルのためのX.711に規定された行動を具現しそ
れに合致するオブジェクトのためのCMIPプロトコル
におけるM-SET、M-CREATE、及びM-DEL
ETE演算に等価のものを含む請求項23記載のコンピ
ュータに実装した方法。 - 【請求項25】 M-SET演算に等価の、管理された
演算用の取消記録を準備するため、及び前記演算を取り
込んだトランザクションがアボートされた場合に前記演
算の効果をロールバックするためのステップ群であっ
て、 実際のM-SETが上書きするオブジェクト及び属性の
元の値を得るために、別のM-GET要求を呼び出すス
テップ、 前記要求の結果を取消ログ内のM-SET記録に記憶し
て、実際のM-SET演算が成功したときこの記録をコ
ミットするステップ、及びアボートの場合に、実際の演
算の効果をロールバックするために前記取消記録を呼び
出すステップ、の各ステップをさらに含む請求項24記
載の方法。 - 【請求項26】 M-CREATE演算に等価の、管理
された演算用の取消記録を準備するため、及び前記演算
を取り込んだトランザクションがアボートされた場合に
前記演算の効果をロールバックするためのステップ群で
あって、 新しいM-DELETE記録を目標オブジェクトのため
に前記取消ログ内に作成し、実際のM-CREATE演
算が成功したときその記録をコミットするステップ、及
びアボートの場合に、実際の演算の効果をロールバック
するために前記取消記録を呼び出すステップ、の各ステ
ップをさらに含む請求項24記載の方法。 - 【請求項27】 M-DELETE演算に等価の、管理
演算用の取消記録を準備するため、及び前記演算を取り
込んだトランザクションがアボートされた場合に前記演
算の効果をロールバックするためのステップ群であっ
て、 実際のM-DELETEによって除去可能なオブジェク
ト及び属性の元の値を得るために別のM-GET要求を
呼び出すステップ、 前記要求の結果を取消ログ内のM-CREATE記録に
記憶し、特定のM-SET演算が成功したときこの記録
をコミットするステップ、及びアボートの場合に、実際
の演算の効果をロールバックするために取消記録を呼び
出すステップ、の各ステップをさらに含む請求項24記
載の方法。 - 【請求項28】 管理演算用の取消記録を構築するステ
ップであって、該演算が、SNMP(RFC1157及
び関連RFC)及びSNMP V2(RFC 1905及び
関連RFC)に規定された通りの行動を具現しそれに合
致するオブジェクトのための、SNMP-SET PD
U、列オブジェクトを作成するための単純オブジェクト
インスタンス演算用SNMP-SET演算、列オブジェ
クトを抹消するためのSNMP-SET演算に等価のも
のを含む請求項24記載のコンピュータに実装した方
法。 - 【請求項29】 単純オブジェクトインスタンスのため
のSNMP-SET演算に等価の管理演算用の取消記録
を準備するため、及び前記演算を取り込んだトランザク
ションがアボートされた場合に前記演算の効果をロール
バックするためのステップ群であって、 実際のSNMP-SETが上書き可能なオブジェクト及
び属性の元の値を得るために、別のSMNP-GET要
求を呼び出すステップ、 前記要求の結果を前記取消ログ内のSNMP-SET記
録に記憶し、実際のSNMP-SET演算が成功したと
きこの記録をコミットするステップ、及びアボートの場
合に、取消記録を呼び出して実際の演算の効果をロール
バックするステップ、の各ステップをさらに含む請求項
28記載の方法。 - 【請求項30】 列オブジェクトを作るためのSNMP
-SET演算に等価の管理演算用の取消記録を準備する
ため、及び前記演算を取り込んだトランザクションがア
ボートされた場合に前記演算の効果をロールバックする
ためのステップ群であって、 新しいSnmpDelReq記録を目標列オブジェクト用に前記取
消ログ内に作り、列オブジェクトを作る実際のSNMP
-SET演算が成功したときこの記録をコミットするス
テップ、及びアボートの場合に、前記取消記録を呼び出
して実際の演算の効果をロールバックするステップ、の
各ステップをさらに含む請求項28記載の方法。 - 【請求項31】 列オブジェクトを抹消するためのSN
MP-SET演算に等価の管理演算用の取消記録を準備
するため、及び前記演算を取り込んだトランザクション
がアボートされた場合に前記演算の効果をロールバック
するためのステップ群であって、 実際のSNMP-SET演算が成功したとき抹消される
列オブジェクトの行の元の値を得るために、別のSNM
P-GET要求を呼び出すステップ、 前記要求の結果を、前記取消ログ内の目標列オブジェク
ト用SnmpCreReq記録に記憶し、新オブジェクトを抹消す
る実際のSNMP-SET演算が成功したときこの記録
をコミットするステップ、及びアボートの場合に、前記
取消記録を呼び出して実際の演算の効果をロールバック
するステップ、の各ステップをさらに含む請求項28記
載の方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US09/045491 | 1998-03-20 | ||
| US09/045,491 US6785722B2 (en) | 1998-03-20 | 1998-03-20 | Apparatus, methods, and computer program products for transactional support of network management operations |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11328066A true JPH11328066A (ja) | 1999-11-30 |
Family
ID=21938194
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11074138A Pending JPH11328066A (ja) | 1998-03-20 | 1999-03-18 | ネットワ―ク管理演算のトランザクション支援のための装置、方法及びコンピュ―タプログラム製品 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US6785722B2 (ja) |
| EP (1) | EP0944204A2 (ja) |
| JP (1) | JPH11328066A (ja) |
Families Citing this family (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6430578B1 (en) * | 1998-12-04 | 2002-08-06 | Sun Microsystems, Inc. | Name service for network management architecture |
| US8321457B2 (en) | 2000-09-08 | 2012-11-27 | Oracle International Corporation | Techniques for automatically developing a web site |
| US6971096B1 (en) | 2000-05-19 | 2005-11-29 | Sun Microsystems, Inc. | Transaction data structure for process communications among network-distributed applications |
| US20020116205A1 (en) * | 2000-05-19 | 2002-08-22 | Ankireddipally Lakshmi Narasimha | Distributed transaction processing system |
| US7177945B2 (en) * | 2000-08-04 | 2007-02-13 | Avaya Technology Corp. | Non-intrusive multiplexed transaction persistency in secure commerce environments |
| US6671686B2 (en) * | 2000-11-02 | 2003-12-30 | Guy Pardon | Decentralized, distributed internet data management |
| US7406523B1 (en) * | 2000-11-21 | 2008-07-29 | Microsoft Corporation | Client-server communications system and method using a semi-connectionless protocol |
| US7373349B2 (en) * | 2001-04-18 | 2008-05-13 | International Business Machines Corporation | Process for data driven application integration for B2B |
| US7043727B2 (en) * | 2001-06-08 | 2006-05-09 | Micromuse Ltd. | Method and system for efficient distribution of network event data |
| US20030212768A1 (en) * | 2002-05-09 | 2003-11-13 | Gateway, Inc. | System and method for centralizing and synchronizing network configuration data |
| US7103597B2 (en) * | 2002-10-03 | 2006-09-05 | Mcgoveran David O | Adaptive transaction manager for complex transactions and business process |
| US7346905B2 (en) | 2003-06-10 | 2008-03-18 | International Business Machines Corporation | Apparatus and method for maintaining resource integrity without a unified transaction manager in a software environment |
| US20040267823A1 (en) * | 2003-06-24 | 2004-12-30 | Microsoft Corporation | Reconcilable and undoable file system |
| US7801851B2 (en) * | 2003-06-30 | 2010-09-21 | Gravic, Inc. | Method for ensuring referential integrity in multi-threaded replication engines |
| US7519719B2 (en) * | 2004-04-15 | 2009-04-14 | Agilent Technologies, Inc. | Automatic creation of protocol dependent control path for instrument application |
| US8090806B1 (en) * | 2004-06-10 | 2012-01-03 | Cisco Technology, Inc. | Two-stage network device configuration process |
| US7844615B2 (en) * | 2005-12-19 | 2010-11-30 | Sap Ag | Systems and methods for an enterprise services framework using a state model |
| JP4630259B2 (ja) | 2006-07-05 | 2011-02-09 | 株式会社パイオラックス | クリップ |
| TW201032535A (en) * | 2008-10-14 | 2010-09-01 | Ibm | A method of handling a message |
| US8484166B2 (en) * | 2011-11-03 | 2013-07-09 | Oracle International Corporation | Oracle rewind: metadata-driven undo |
| US20130283293A1 (en) * | 2012-04-20 | 2013-10-24 | Tibco Software Inc. | System and method for Intelligently distributing a plurality of transactions for parallel processing |
| US9703637B2 (en) * | 2013-07-30 | 2017-07-11 | Apple Inc. | Undo system |
| US11086842B1 (en) * | 2016-06-30 | 2021-08-10 | EMC IP Holding Company LLC | Highly scalable and consistent pluggable messaging system |
| US10909106B2 (en) * | 2016-11-11 | 2021-02-02 | Walmart Apollo, Llc | Systems and methods for creating and maintaining referential integrity of data across multiple server systems |
| US10942823B2 (en) | 2018-01-29 | 2021-03-09 | Guy Pardon | Transaction processing system, recovery subsystem and method for operating a recovery subsystem |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CA1337132C (en) * | 1988-07-15 | 1995-09-26 | Robert Filepp | Reception system for an interactive computer network and method of operation |
| US5063500A (en) * | 1988-09-29 | 1991-11-05 | Ibm Corp. | System for executing segments of application program concurrently/serially on different/same virtual machine |
| US5133075A (en) * | 1988-12-19 | 1992-07-21 | Hewlett-Packard Company | Method of monitoring changes in attribute values of object in an object-oriented database |
| AU9030391A (en) * | 1990-10-16 | 1992-05-20 | Consilium, Inc. | Object-oriented architecture for factory floor management |
| US5295256A (en) | 1990-12-14 | 1994-03-15 | Racal-Datacom, Inc. | Automatic storage of persistent objects in a relational schema |
| US5317742A (en) | 1991-06-21 | 1994-05-31 | Racal-Datacom, Inc. | Dynamic translation of network management primitives to queries to a database |
| US5548724A (en) * | 1993-03-22 | 1996-08-20 | Hitachi, Ltd. | File server system and file access control method of the same |
| US5781743A (en) * | 1994-02-18 | 1998-07-14 | Hitachi, Ltd. | System and method for distributed data processing using different server system specifications |
| JPH08242286A (ja) * | 1995-03-03 | 1996-09-17 | Fujitsu Ltd | 通信網管理制御方式 |
| JP3547840B2 (ja) * | 1995-03-16 | 2004-07-28 | 株式会社東芝 | マルチメディアサーバ |
| US5644720A (en) * | 1995-07-31 | 1997-07-01 | West Publishing Company | Interprocess communications interface for managing transaction requests |
| CN1166115C (zh) * | 1996-02-15 | 2004-09-08 | 爱立信电话公司 | 一种管理互配单元及生产该单元的方法 |
| US5919247A (en) * | 1996-07-24 | 1999-07-06 | Marimba, Inc. | Method for the distribution of code and data updates |
| JPH10177560A (ja) * | 1996-12-17 | 1998-06-30 | Ricoh Co Ltd | 記憶装置 |
| US5832516A (en) * | 1997-01-21 | 1998-11-03 | Oracle Corporation | Caching data in recoverable objects |
| US5958004A (en) * | 1997-10-28 | 1999-09-28 | Microsoft Corporation | Disabling and enabling transaction committal in transactional application components |
| US6014666A (en) * | 1997-10-28 | 2000-01-11 | Microsoft Corporation | Declarative and programmatic access control of component-based server applications using roles |
-
1998
- 1998-03-20 US US09/045,491 patent/US6785722B2/en not_active Expired - Lifetime
-
1999
- 1999-03-05 EP EP99103914A patent/EP0944204A2/en not_active Withdrawn
- 1999-03-18 JP JP11074138A patent/JPH11328066A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| US20020013846A1 (en) | 2002-01-31 |
| US6785722B2 (en) | 2004-08-31 |
| EP0944204A2 (en) | 1999-09-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH11328066A (ja) | ネットワ―ク管理演算のトランザクション支援のための装置、方法及びコンピュ―タプログラム製品 | |
| US7673307B2 (en) | Managing transactions in a messaging system | |
| US6266698B1 (en) | Logging of transaction branch information for implementing presumed nothing and other protocols | |
| TWI244617B (en) | A client/server-based data processing system for performing transactions between clients and a server and a method of performing the transactions | |
| US7925764B2 (en) | Method, apparatus and computer program product for integrating heterogeneous systems | |
| US7660824B2 (en) | System and method for performing batch configuration changes | |
| JP4550411B2 (ja) | 同期されたコールバック処理特徴をもったトランザクション処理システム及び方法 | |
| US8433676B2 (en) | Solution method of in-doubt state in two-phase commit protocol of distributed transaction | |
| JP5841177B2 (ja) | マルチサーバ予約システムにおける同期化メカニズムのための方法及びシステム | |
| US20020161840A1 (en) | Adapter for interfacing with a workflow engine | |
| US20070156884A1 (en) | High availability for event forwarding | |
| JP2003501726A (ja) | サーバ・エージェント・システム | |
| JP4205323B2 (ja) | 配信システム、配信サーバとその配信方法、配信プログラム | |
| US7529818B2 (en) | System and method for performing validation of a configuration | |
| JP2005523486A (ja) | 委任コミット特徴によるトランザクション処理システム及び方法 | |
| JPH086840A (ja) | サーバ回復のためのディレクトリ操作の完了を判定する機構 | |
| CN108153598A (zh) | 基于微服务架构的数据一致性方法以及装置 | |
| CN114629904B (zh) | 一种分布式事件的处理方法、系统、设备及介质 | |
| US6141679A (en) | High performance distributed transaction processing methods and apparatus | |
| JPH10149286A (ja) | 効率的な共通オブジェクトリクエストブローカアーキテクチャトランザクションを実行するための方法および装置 | |
| US20040122720A1 (en) | Meta-coordination of distributed computations | |
| US7877695B2 (en) | Tailored object | |
| US20040008678A1 (en) | System and method for managing transactions in a messaging system | |
| US8006248B2 (en) | Method, apparatus and computer program for facilitating communication between a client application and a server application | |
| US20080082534A1 (en) | Method and system for providing locking behavior |