JP2003526223A - 通信システム用開発およびテストツール - Google Patents

通信システム用開発およびテストツール

Info

Publication number
JP2003526223A
JP2003526223A JP2000512312A JP2000512312A JP2003526223A JP 2003526223 A JP2003526223 A JP 2003526223A JP 2000512312 A JP2000512312 A JP 2000512312A JP 2000512312 A JP2000512312 A JP 2000512312A JP 2003526223 A JP2003526223 A JP 2003526223A
Authority
JP
Japan
Prior art keywords
network
message
opb
control
interface
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
Application number
JP2000512312A
Other languages
English (en)
Inventor
マークス ジョアンヌズ スクミドット
Original Assignee
コミュニケイション アンド コントロール エレクトロニクス リミテッド
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 GBGB9719403.9A external-priority patent/GB9719403D0/en
Priority claimed from GBGB9719412.0A external-priority patent/GB9719412D0/en
Application filed by コミュニケイション アンド コントロール エレクトロニクス リミテッド filed Critical コミュニケイション アンド コントロール エレクトロニクス リミテッド
Publication of JP2003526223A publication Critical patent/JP2003526223A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 開発システムは、機能しているネットワークでデバイスをエミュレートするために、ハードウェアネットワークインタフェースとともに使用される再使用可能なコンピュータに実装された構成要素を含む。この構成要素は、ネットワークトラフィックのシミュレートと分析および適合検証するためのツールを提供することができる。これらの構成要素は、クライアントプログラムとネットワークインタフェースハードウェアの間のインタフェースを提供する。これらは、CDチェンジャやアンプ、音声−画像制御装置等のデバイスに特有のアプリケーションレベルのプロトコルを規定する、プロトコルデータベースを含む。提案するツールは、ユーザ(クライアントプログラム)から命令されたコマンドを、それらがエミュレートされたデバイスの特定の型について規定されたプロトコルと矛盾する場合に、フィルタリングする機構を提供する。これらの構成要素は、ネットワーク管理やソースデータの接続経路指定等の、標準的な挙動を自動的に実装するプログラムモジュールを含む。特定のプロトコルを利用する全てのネットワーク構成に汎用なアプリケーションプロトコルに加えて、ツールは、正常コマンドの範囲をさらに限定するために、ネットワーク上に存在するまたはエミュレートされるデバイスの特定の数および型を規定するネットワークシステムの記述を記憶する。

Description

【発明の詳細な説明】
【0001】 本発明は、ローカル通信システム中で使用され、開発およびテスト用装置で使
用するハードウェアまたはソフトウェアに実装される開発ツールに関する。本発
明は特に、例えば消費者の音声/ビデオネットワーク中で、低レベルの通信プロ
トコルだけでなく、より高レベルなアプリケーションプロトコルにも実装される
製品の開発に関する。
【0002】 低コストのファイバネットワーク中でソースデータ(CD音声やMPEGビデ
オ、電話音声など)を制御メッセージと結合するローカル通信システムは、D2
B Opticalの形式で提案されている。詳細については、例えばComm
unication & Control Electronics Limi
ted、2 Occam Court、Occam Road、The Sur
rey Research Park、Guildford、Surrey、G
U2 5YQ(http://www.candc.co.uk)から入手可能
な、「Conan Technology Brochure」および「Con
an IC Data Sheet」を参照されたい。また、Becker G
mbHのヨーロッパ特許出願EP−A−0725516(95P03)、EP−
A−0725518(95P04)、EP−A−07225515(95P05
)、EP−A−0725520(95P06)、EP−A−0725521(9
5P07)、EP−A−0725522(95P08)、EP−A−07255
17(95P09)、およびEP−A−0725519(95P10)も参照さ
れたい。「Conan」はCommunication & Control
Electronics Limitedの登録商標である。本記述はさらに、
本発明者等の同時係属の出願PCT/GB98/00349(62793WO)
に記載の、倍速インタフェース(double speed interfac
e)も参照する。
【0003】 通常はソフトウェアとインタフェースハードウェアの組合せを含むツールとし
ては、一般にパーソナルコンピュータ(PC)または、このようなネットワーク
中で使用するために開発中の製品をエミュレートすることができ、既に開発され
ている現実の製品を検証/テストすることができるその他のデバイスが知られい
る。本発明は、このような開発ツールの有用性を改善することを目的とするもの
である。適用分野としては、ユーザインタフェースおよび高レベル制御機構も含
めた新製品の製造前のシミュレーション、および現実の製品の検証/互換性テス
トがある。開発中のシステムの性質として、異なるタイプのいくつかのユニット
が同時に開発されることがあり、またそれらの機能要件の定義およびデバッギン
グが非常に複雑になる。特に、ネットワーク中のあるデバイスの故障が、別のデ
バイスで望ましくないふるまいとして現れ、診断を困難にすることがある。
【0004】 本発明は、第1の態様で、添付の請求項1で規定するシステムを提供する。別
の態様では、本発明は、ハードウェアネットワークインタフェースとともに使用
されるコンピュータに実装された構成要素を含むツールを提供し、前記ツールの
構成要素は、ユーザまたはクライアントプログラムとネットワークインタフェー
スとの間のインタフェースを規定する。このツールは、少なくとも1つのアプリ
ケーションプログラムインタフェース(API)と、プロトコルデータベースお
よび/またはシステムモデルと、このデータベース/モデルを参照することによ
ってユーザまたはクライアントプログラムからのメッセージおよびイベントを処
理する構成要素とを組み込む。ネットワークに送信されたまたはネットワークか
ら受信した違法メッセージを検出するためである。
【0005】 特に、CDチェンジャ、アンプ、音声/ビデオ制御装置などのデバイスに特有
のアプリケーションレベルのプロトコルは、D2B Opticalシステムと
して定義されている。提案するツールは、ユーザ(クライアントプログラム)か
ら命令されたコマンドを、フィルタリングする機構を提供する。ここではエミュ
レートされた特定タイプのデバイスについて規定されたプロトコルと矛盾する場
合である。一般に、アプリケーションプロトコルは、単なる通信管理またはネッ
トワーク管理のタスクと関係するのではなく、ネットワークに接続されたデバイ
スの本質的な機能と関係するプロトコルである。
【0006】 一般に、プロトコルは、特定の製品設計者の必要に応じて、彼または彼女自身
の設計した挙動を達成するために個別のメッセージおよび応答のフォーマットを
規定することができるが、プロトコルには挙動のシーケンスを規定する領域が存
在し、特にネットワーク中の複数のステーション間の拡張された協調動作が必要
な場合に、設計結果を達成する必要がある。例としては、ネットワーク管理(初
期化)、および少なくともD2B Opticalにおいて、ソースデータの接
続管理がある。このツールは、これらの標準的な挙動を自動的に実施するための
プログラムモジュールを含むことができるために、ツールのユーザが自分のアプ
リケーションの標準部分を明示的にコーディングする必要はない。
【0007】 本明細書に与える実施形態では、このツールを含むプログラムモジュールは、
所定の規則に従って互いにメッセージを交換するオブジェクトの形をとる。いく
つかのオブジェクトは、同一コンピュータハードウェアの中で動作している異な
るアプリケーション間で共用することができ、その他のオブジェクトは単一の動
作中のアプリケーションのために予約される。したがって、開発システムは、異
なるクライアントアプリケーションを提供する、予約された各オブジェクトクラ
スのいくつかのインスタンスを含むことができる。共用されるオブジェクトは、
特に、ツールシステム(ハードウェアドライバ)の特定のインタフェースハード
ウェアに対するインタフェースを提供するオブジェクトを含むことができる。特
定の「システムインスタンス」に確保されるオブジェクトは、複数のネットワー
クデバイスを単一のコンピュータで、完全に独立してエミュレート、テスト、ま
たは制御することができる。
【0008】 特定のプロトコルを利用する全てのネットワーク構成に汎用なアプリケーショ
ンプロトコルに加えて、ツールは、特定の数およびネットワーク上のまたはエミ
ュレートされるデバイスのタイプを規定するネットワークシステムの記述を記憶
し、正常コマンドの範囲をさらに限定することができる。
【0009】 本発明はさらに、添付の図面に関連しておよそ本明細書に記述する、製品をエ
ミュレートおよびテストする方法も提供する。このシステムのプログラムおよび
ハードウェア構成要素は、合わせて提供することも別々に提供することもでき、
また既存の汎用コンピュータとともに使用される構成要素として提供することも
できることを理解されたい。
【0010】 (好適実施形態の詳細な説明) (D2B Opticalシステムの概要) 例示のみを目的として、D2B Opticalネットワークに適用する本発
明の様々な態様について説明する。背景として、このネットワークの性質および
動作について最初に簡単に述べる。
【0011】 図1に示すシステムは、ローカルエリアネットワーク(LAN)のステーショ
ン(またはノード)として接続された、音声または画像と関連する9個の装置1
01〜109を含む。言うまでもなく、9個より多いまたは少ないステーション
を収容することもできる。この例のシステムでは、これらの装置は、制御および
表示ユニット101、コンパクトディスクメモリ(CD−ROM)読取り装置1
02、ラジオチューナ103、CDチェンジャユニット104、オーディオパワ
ーアンプ105、ファクシミリ送受信ユニット(FAX)106、画像記録シス
テム(VCR/CAMCORDER)107、ビデオチューナ108、および電
話109である。制御および表示ユニット101の表示機能は、例えば、CD−
ROMによるメモリデバイスから読取った情報の表示、および/あるいはチュー
ナ108またはVCR107からのビデオ信号の表示を行うことができる。
【0012】 既知のシステム中のLANの相互接続は、9本の一方向性ポイントツーポイン
ト光ファイバリンク111、112など、および連結インタフェースモジュール
121などを含み、これらはそれぞれ構造的にほぼ同じであるので、全てのノー
ドが環状に接続されるようになっている。各光ファイバリンクは、以下で詳細に
述べるフレーム構造に従って、デジタル音声/画像信号、CD−ROMデータ、
および制御メッセージの組合せを搬送する。制御/表示ユニット101など、指
定されたステーション(以下システムマスタと呼ぶ)は、20〜50kHz(C
Dの標本化の場合は通常44.1kHz)のフレームサンプリングレートで連続
的にフレーム構造を生成する。スタートアップ時にネットワーク上のあるステー
ションがシステムマスタとして動作するように指定されるが、システムマスタの
役割は、その後、例えば後述のような障害状態にあるときに、別のステーション
に再割当することができる。
【0013】 ステーションの光ファイバリングとのインタフェースの実施態様を、図2に概
略的に示す。リング119〜111から、メディアアクセス制御(MAC)/物
理層300が、制御メッセージのための通信管理層302とともにインタフェー
スモジュール121中に設けられる。通信管理層302は、アドレスの初期化お
よび検証を管理し、規定されたタイミング規則に従って再送することによって、
信頼性の高いメッセージの送達を保証する。ソースデータ304のデータ処理お
よび制御メッセージ306は、アプリケーションプロトコルとともにステーショ
ンレベル101で提供される。このアプリケーションプロトコルは、通常は、そ
のステーションのデバイス/サブデバイスのグループ化および制御階層と、製品
間で交換される情報のフォーマットと、デバイス/サブデバイスの挙動と、アプ
リケーションレベルのタイミングとを規定する。インタフェースモジュール12
1は、例えばConan集積回路、または同様のネットワークトランシーバおよ
びそれと関連する制御ソフトウェアの形で、物理的にステーション内に存在する
ことができることは容易に理解されるであろう。
【0014】 図3に示すように、同様のインタフェースモジュール123は、ラジオカセッ
トプレーヤー103の中の1つの機能として提供され、アンプ310、チューナ
312、テープ再生デッキ314、音声/画像制御装置(AVC)316、およ
びユーザI/O318の機能も有する。これらの機能およびそれらの相互接続は
本発明とは直接の関係がなく、図示していない。それらの実施態様は、当業者に
は容易に分かるであろう。
【0015】 図4は、ステーションを既知の光ファイバリングに連結するインタフェースモ
ジュール121(この場合にはノード121)を示す概略図である。LANに接
続された全てのステーションは、ソースデータ(3つ以下のチャネルSD0〜S
D2)および制御データ(CTRL)を生成し、かつ/または受信することがで
きる。制御データは小容量であり、バースト的に到着し、かつユーザ/イベント
駆動(例えばユーザ命令や状態変化など)であるが、ソースデータは連続した大
容量のストリーム(例えば音声や圧縮画像、CD−ROMデータなど)である。
【0016】 D2B Opticalシステムでは、ソースデータおよび制御メッセージは
、システムマスタとして指定されたステーションが生成したフレームで、ネット
ワーク上でノードからノードに伝達される。フレームは、音声標本化周波数、通
常はfs=44.1kHzと同じ速度で循環する。フレームは、48個のフレー
ムからなるブロックにグループ化される。
【0017】 図5は、各ネットワークフレームがどのようにして2つのサブフレーム(「左
側」および「右側」)に分割されるかを示す図である。fs=44.1kHzで
は、毎秒88,200個のサブフレームが存在することになる。左側のサブフレ
ームは、常にネットワーク上を伝送される対の先頭となる。物理レベルでは、ビ
ットは2相符号化されて伝達される。ブロック、フレーム、サブフレーム、およ
び制御フレームの間の関係を図5に示す。
【0018】 図6は、各サブフレームが、トランシーバ内で8バイトフィールドとして処理
される64個のビットを、どのように含むかを示す図である。フィールドは、プ
リアンブルと、透過チャネルと、6バイトのソースデータと、制御フレームおよ
びSPDIF状態ビットを構成する8ビットの制御/状態ビットとを含む。次に
、様々なフィールドの意味について詳細に述べる。
【0019】 図6のサブフレーム構造のフィールドは下記の通りである。 ・プリアンブル:プリアンブルは、ネットワークでの受信の同期をとる。プリ
アンブルには3つのタイプがあり、IEC−958(SPDIF)仕様で規定さ
れたものと同様である。これらは、受信器が識別できる2相の符号則違反を含む
。3つの一意的なプリアンブルは、左側サブフレーム、右側サブフレーム、およ
びサブフレームのブロックを識別する。左側プリアンブルはフレームの開始を識
別し、ブロックプリアンブルはブロックの開始を識別する。ブロックプリアンブ
ルは、左側プリアンブルが48番目になるたびにこれと置き換わる。これにより
、制御フレームデータが同期するブロック構造がもたらされる。
【0020】 ・ソースデータバイト:ソースデータバイトは、大容量の実時間デジタルソー
スデータを搬送する。これらのバイトはフレキシブルに割り振ることができ、シ
ステム中のデバイスが、そのシステムにとって最も効率的な方法でソースデータ
バイトを使用することができる(EP−A−0725520およびEP−A−0
725521を参照されたい)。
【0021】 ・制御ビット:制御ビットCF0およびCF1は、(デバイスを制御し、状態
情報を送信するための)制御メッセージを搬送する。サブフレームごとに2つの
CFビットが存在し、制御フレームは192ビットの長さであり、従って、完全
な制御フレームを構築するためには96個(左側48個+右側48個)のサブフ
レームが必要となる。制御フレームは、図7に示してある。
【0022】 図5に示すように、制御フレームは、96個のサブフレームのブロックから組
み立てられ、これと位置合わせされる。すなわち、新しい制御フレームの最初の
2ビットは、ブロックプリアンブルを有するサブフレームからとり、後続のビッ
ト対は後続のサブフレームからとって、制御フレームを構築する。制御フレーム
のフィールドは、下記の通りとなる。
【0023】 ・調停(arbitration)ビット:これらは、制御フレームが空いて
いるか占有されているかを示す。送信器は、これらのビットを自動的に処理する
【0024】 ・送信先アドレス:これは、′000′Hから′FFF′Hの範囲の、メッセ
ージの宛先の12ビットアドレスである。送信側デバイスは、これを送信バッフ
ァから伝達されるメッセージ中に書き込む。いくつかのアドレスおよびアドレス
範囲は特殊な意味を有し、リング位置、またはアプリケーションと関連する「デ
バイスアドレス」によって、ステーションのアドレス付けをすることができる。
ブロードキャストおよび「グループキャスト」も提供される。
【0025】 ・送信元アドレス:これは、′000′Hから′FFF′Hの範囲の、メッセ
ージの送信側の12ビットアドレスである。受信側デバイスは、受信バッファに
受信した、そのメッセージからこれを読取ることができる。
【0026】 ・メッセージのタイプおよび長さ:メッセージのタイプ/長さを示すために通
常使用される、2つの4ビットフィールドである。メッセージのタイプは、コマ
ンド、状態通知、および状態通知要求を含む。
【0027】 ・データ0から15:メッセージデータである。すべての16バイトが、常に
伝達される。メッセージの長さは、通常は、16バイトのうちのどの程度が実際
にそのメッセージで有効であるかを示す。送信側デバイスは、これを送信バッフ
ァから伝達されるメッセージ中に書き込む。受信側デバイスは、受信バッファに
受信した、そのメッセージからこれを読取ることができる。メッセージは、通常
は、演算コードおよび1つまたは複数のオペランドを含む。
【0028】 ・CRC:制御フレームがエラーなしで伝達されていることを検証するために
使用される、16ビットの巡回冗長検査の値である。CRCは、メッセージ伝送
時にインタフェースモジュールによって自動的に生成され、メッセージ受信時に
自動的に検査される。
【0029】 ・ACK/NAK:肯定応答および否定応答(それぞれ2ビット)は、メッセ
ージの伝達が成功したことを示す。本発明者等の出願GB−A−2302243
に記載されているように、別個のACKフラグおよびNAKフラグを使用するこ
とにより、信頼性の高いポイントツーポイントおよびブロードキャストのメッセ
ージ伝達が可能となる。これらのフラグは、送信先デバイス(存在する場合)に
よって自動的に満たされ、送信側デバイスによって読取られる。
【0030】 ・予約:10ビットが、将来的に規定されるために予約されている。
【0031】 (製品開発システムの概要) 本明細書に記載の新しい製品開発環境は、個々の製造業者またはシステムイン
テグレータが、製品および/または自社または他社の製品とともに動作できる完
全なネットワークシステムの、開発ならびにテストを補助するために使用するこ
とができる。特に重要なものは、図7の制御フレーム機構を介して制御メッセー
ジおよびデータを交換するためのプロトコルの適切な実装である。D2B Op
ticalの仕様は、メディアアクセス層からアプリケーション層のいくつかの
プロトコルを(ISO/OSIネットワークモデルの用語を使用して)規定する
。換言すれば、ネットワークを初期化し、制御フレームメッセージ(以下D2B
メッセージと呼ぶ)を交換するための機構が規定されるだけでなく、目的の範囲
においてメッセージの特定の内容および意味も規定される。
【0032】 例えば、ネットワーク管理レベルでは、各ステーションがD2Bメッセージを
受信するための一意的なアドレスを獲得できるように、手続きおよびメッセージ
のフォーマットが規定される。アプリケーションレベルでは、メッセージは、ネ
ットワークに接続されたアンプのボリューム設定を増加させたり、または各ネッ
トワークフレーム(図5)中のソースデータフィールドのいくつかのバイトで搬
送される音声データストリームを再生するように切り替えることができるように
規定される。同時に、最大限の自由が意図され、どのような種類の製品がネット
ワークに接続されても、製造業者が独自の好ましい機能を実装することができる
【0033】 図8は、新しい製品開発システムの概要を与える図あり、これは特に、PC上
で動作する様々なソフトウェア構成要素を含むソフトウェアエンジン800と、
一または複数の異なる種類のインタフェースボード(「Optical Pow
er Board」(OPB)804および「Advanced OPB」(A
OPB)806)を載架するインタフェースボードラックシステム802とを含
む。各インタフェースボードは、上述のConanチップなど、1つまたは複数
のネットワークトランシーバの集積回路を含む。開発システムエンジン800は
、以下でさらに詳細に述べる、様々なプログラムモジュールおよびデータベース
モジュール812から836を含む。システム制御モジュール832は、クライ
アントアプリケーションプログラム810に、アプリケーションプログラムイン
タフェース(API)を提供する。クライアントアプリケーション810は、こ
の開発システムを備えた標準アプリケーションにすることも、開発中の所与の製
品をエミュレートするために特別に開発することもできる。
【0034】 この実施形態の開発システムエンジン800は、低レベルおよび高レベルのD
2B Opticalの標準速または倍速の通信、ならびにConan製品のこ
れらICの制御の両方とも提供する汎用サーバである。
【0035】 開発システムエンジンは、実際には、ActiveXなど、高度な最新のソフ
トウェア設計技術を使用した、プログラマブルソフトウェア構成要素の組合せで
ある。これにより最大限のフレキシビリティがもたらされ、明確に定義されたア
プリケーションプログラムインタフェース(API)を介してアクセスされる、
全てのプログラムおよびアプリケーションについて高度の機能的信頼性を保持さ
れる。エンジン800は、D2B Opticalアプリケーションを書き込む
ことをきわめて容易にする設計システムである。これは、トランシーバICを操
作し、D2B Optical制御メッセージで通信するための汎用機能を提供
する。これは、Visual Basic、Visual C++、Borla
nd Delphiなど、ActiveXをサポートする任意の環境を使用して
プログラムすることができる。
【0036】 このエンジンは、例えばD2B Opticalデバイスをエミュレートし、
または現実のD2B Optical製品をテスト/検証するために使用するこ
とができ、また、言うまでもなくその他のプロトコルに適合させることもできる
。エミュレーションだけでなく、この開発システムを形成する同じ構成要素で、
ネットワークトラフィックをシミュレートおよび/または解析し、製品が標準プ
ロトコルを遵守しているかを検証するための、共通のフレームワークを提供する
ことができる。
【0037】 ネットワーク上の現実の製品と同様に、ソフトウェア構成要素とともに使用さ
れる各インタフェースボードは、1つまたは複数のネットワークトランシーバの
集積回路を載架する。Advanced OPB806は、いくつかのネットワ
ークインタフェースボードが、「デイジーチェーン」配列でラックシステム80
2を介して接続するため、1つのネットワーク中の複数のデバイスまたは複数の
別個のネットワークを、同一PCからシミュレートまたはテストすることができ
る機構を提供する。以下で、ソフトウェアツールのアーキテクチャについて、い
くらか詳細に述べる。理解の助けとなるように、使用中のシステムを示す2つの
図を最初に与える。
【0038】 図9の例では、開発システムソフトウェアは、RS−232シリアルケーブル
910によって、1つまたは複数のネットワークトランシーバの集積回路である
インタフェースボード920に接続された、ポータブルPC900上で動作して
いる。このセットアップは、例えば、開発中のD2B Optical電話をシ
ミュレートするために使用することができる。デバイスの製造業者は、現実の製
品の完全な挙動モデルを例えば「C」プログラムで実装することができ、概念/
設計を検証した後で、同じコードを現実の製品中の組込み型マイクロコントロー
ラに転送することができる。図1の大規模ネットワーク中の構成要素に関して言
うと、製品101(ヘッドユニット)、104(CDチェンジャ)、および10
5(アンプ)が存在しており、開発システムは電話製品109のエミュレーショ
ン109′を提供する。
【0039】 図10では、システムソフトウェアは、RS−232リンク1010を使用し
てOPBラックシステム1002に接続された、異なるPC1000上で動作し
ている。OPBラックシステム自体は、ラック内で「デイジーチェーン」となっ
た5個のOPBのホストとなる。このシステムは、D2B Opticalイン
タフェースを含む製品の、その製品が合意された互換性レベルを確実に満たすた
めの、所定の基準セット(プロトコルおよび基本機能の挙動の検証(再生や停止
など)など)に対する適合性をテストすることができる。これは、製品サイクル
のどの段階でも、システムインテグレータまたは製品開発エンジニアを補助する
ために使用することができ、低レベルおよびアプリケーションプロトコルレベル
の両方で、D2B Opticalまたはその他の適用可能な仕様に対する製品
の適合性を高い確度で識別することによる。図1の参照番号を使用して、テスト
中の5個のCDチェンジャ製品104−1〜104−5を示す。
【0040】 このようなシステムの利点は下記の通りである。 ・テストおよびテストシーケンスの両方、ならびにテストに対する応答および
不整合性の報告が予め決められているので、品質検査および妥当性検査の確度お
よび再現性が改善される。
【0041】 ・自動テスト能力によって製品開発サイクルが短縮される。開発された製品が
システム中で正しく機能するか否か、またD2B Opticalまたは他の要
求されたプロトコルが、所定のレベルまで機能するか否かを、機器が専門のテス
トエンジニアより正確にかつはるかに速く検査することができるからである。
【0042】 ・生産ライン上および/または生産された製品のサンプルまたは全てについて
、所定のテストサイクルに基づいて製品を検査することができる。
【0043】 ・テストエンジニアが、以前に検査したデバイスが修理され、「修理」サイク
ルの後で、合意された標準に合わせて機能するかどうかを識別することができる
【0044】 (開発システムのソフトウェア構造:導入) インタフェースボードに加えて、開示のツールは、クライアントアプリケーシ
ョンにサービスを提供するために統合され、相互に影響する、ソフトウェア構成
要素のシステムを含み、それらのアプリケーションが、Microsoft W
indowsオペレーティングシステムから、D2B Optical ネット
ワーク内で動作し、これを使用し、制御することができるようにする。
【0045】 以下で、このツールシステムのためのソフトウェアアーキテクチャについて述
べる。システムはオブジェクト指向法で設計されるので、オブジェクトの一般的
な設計、それらの目的、および全体的なシステムの他の部分との対話について議
論することには意味がある。詳細な設計は、設計ツールRational Ro
seで実行されるが、代替ツールも同様に適している。
【0046】 (設計目標) 設計は、下記のことを念頭に置いて実行される。 ・その最終目標が、D2B Opticalおよびそれと同様の技術を利用す
るためのソフトウェアおよび/またはファームウェアの開発を容易にすることで
ある、ソフトウェア構成要素のファミリを生成すること。
【0047】 ・低レベル制御(例えばハードウェアと直接対話する)から非常に高レベルな
制御(例えば自動化されたデバイスの挙動)まで、様々なレベルの制御をユーザ
に与えるようなかたちで、その範囲の構成要素を設計すること。
【0048】 ・構成要素を階層的に設計し、より高レベルな構成要素が、その下にあるより
低レベルの構成要素のサービスを利用するようにすること。これにより、構成要
素およびソフトウェアを最大限に再利用することが可能となる。
【0049】 ・構成要素自体を拡張可能かつ柔軟にし、新たな要件が将来発生した場合に、
それらの新しい変更形態を容易に作成できるようにすること。
【0050】 ・構成要素のエンドユーザをハードウェアから抽象化すること。これにより、
ユーザは、その基礎となるハードウェアについて心配することなく、またいつそ
のソフトウェアを書き込むかを考慮する必要なく、ソフトウェアを書き込むこと
が可能となる。
【0051】 ・構成要素を利用するための簡単かつ分かりやすいインタフェースをユーザに
提供すること。
【0052】 ・その他のエミュレータ、コンプライアンスチェッカ、およびユーザ定義(専
有の)エミュレータに、その基礎となる信頼できるアーキテクチャを提供するこ
と。
【0053】 ・以下で説明する、自動応答システムを提供すること。
【0054】 (クラス設計) 以下のセクションでは、この設計のオブジェクトについて論じる。この考察は
一般的なものであるが、必要な箇所は具体的にしてある。当業者には周知のオブ
ジェクト指向アーキテクチャの用語では、「オブジェクト」の様々な「クラス」
が定義される。各クラスの1つまたは複数の「インスタンス」は、明確に定義さ
れた方法で別個の「オブジェクト」として互いに作用し、対話することができる
。図8は、階層的なクラスを示しており、「低レベル」構成要素は最下部に、よ
り高レベルな構成要素は最上部にある。これらの構成要素または「オブジェクト
」は、メッセージの交換によって対話することができる。矢印は、システム内の
通信の主な流れを説明している。
【0055】 (OPBドライバ812) OPBドライバ812のオブジェクトは、実際のネットワークトランシーバの
ハードウェアとの最低レベルのインタフェースを提供する。各オブジェクトは、
特定のインタフェースボードの型、例えば並列、直列構成、A−OPB等とのA
PI(アプリケーションプログラムインタフェース)を提供する。OPBドライ
バクラスは、低レベル通信および制御機構の知識をカプセル化し、それらの機能
にアクセスするためのオブジェクト指向インタフェースを提供する。さらに、各
クラスが、それがカプセル化したドライバ中のエクスポート関数それぞれについ
てメンバ関数を提供すれば、既存のアプリケーションを将来的にクラスを使用す
るために改変することができる。
【0056】 任意の新しいインタフェースボード(例えばUSBまたはPCIインタフェー
スを備えた)が開発されると、その新しいインタフェースボードを実際に制御す
るドライバについて、新しいOPBドライバのクラスも再度設計しなければなら
なくなる。
【0057】 (OPB814) OPBクラスは、エンドユーザのアプリケーションおよび開発システム自体が
、Optical Power Boardファミリィの中のハードウェアボー
ドを制御するために使用するクラスである。従って、ユーザが利用できる機能は
、OPBクラスがそのAPIの中で表明する(expose)機能に制限される
。OPBオブジェクトはそれぞれ、関連する型のOPBドライバオブジェクトに
接続される。OPBオブジェクトは、ドライバオブジェクトを使用して、OPB
ファームウェアとの実際の通信を実行する。OPBオブジェクトは、ディレクタ
構成要素(以下参照)によって、OPBドライバへのアクセスを与えられる。デ
ィレクタ構成要素は、全てのOPBオブジェクトを作成し、最終的に破棄するオ
ブジェクトである。
【0058】 OPBクラスの主な目的は、OPBハードウェアとエンドユーザの間に抽象化
の階層を提供することである。これにより、ユーザは、汎用ソフトウェア機構を
使用して、任意の構成におけるOPBの任意の型を制御することが可能となる。
その結果として、ユーザソフトウェアの複雑さが軽減される。この抽象化は、全
てのOPBクラスが関数の共通のインタフェースを実装することを保証すること
によって実現される。この場合、ユーザは、プログラムでこのインタフェースを
使用して、OPBオブジェクトを制御する。ユーザは、OPBを制御するために
OPBの型またはその構成を知っている必要はない。
【0059】 抽象化のその他の大きな利点は、インタフェースボード(例えばUSB、PC
(PCMCIA)、PCI、またはISAバスを介して)と通話するために新し
い通信機構が開発する場合に、この新しい構成中のOPBと通話するために、O
PBクラスのソフトウェアをいかなる形でも改変する必要がないことである。そ
れよりむしろ、どのようにしてこの新しい機構を使用して通信するかについての
必要な知識をカプセル化する、新しいOPBドライバクラスを単に使用すること
になる。
【0060】 OPBクラスは、現実の物理的インタフェースボードをソフトウェアの形で表
そうと試みる。物理的OPBは、ネットワークトランシーバや音声コーデックI
C、マイクロコントローラファームウェアなどの構成要素を含む。これらは、D
2B Opticalの開発者が、操作および制御したいと望む構成要素である
。従って、OPBクラスは、対応するハードウェア構成要素を表す補助的なソフ
トウェア構成要素も含む。これらのソフトウェア構成要素は、本質的にクラスで
ある。このシステムでは、このような4つのクラスを定義する(以下でより詳細
に述べる)。 ・ネットワークトランシーバ816 ・コーデック818 ・ネットワーク管理820 ・インタフェースファームウェア822
【0061】 OPBオブジェクト814は、補助的な構成要素オブジェクトを作成し、これ
は、インタフェースボードの型およびどのハードウェアが実際のOPB上にある
かに依存している。これは、OPBオブジェクトのユーザに、そのAPI中の機
能を介したこれら他の構成要素オブジェクトを与える。ユーザは、適当な構成要
素オブジェクトを使用して、物理的インタフェースボード上のハードウェア構成
要素の機能にアクセスすることができる。
【0062】 一例として、インタフェースボードにおけるOPBの型は、音声コーデックC
S4225ICおよびネットワークトランシーバOCC8001ICの上に有る
。OPBオブジェクト814が作成されたときに、ネットワークトランシーバオ
ブジェクト816およびコーデックオブジェクト818を作成する。OPBクラ
スは、これらのオブジェクトへのアクセスを可能にするために、そのAPI中の
関数GetComponent(“Network Tranceiver”,
0)、およびGetComponent(“Codec”,0)を表明する。ネ
ットワークトランシーバおよびコーデックのクラスはAPIを表明し、ユーザが
物理的インタフェースボード上の対応するハードウェアを制御することができる
ようにする。インデックス(ここでは‘0’)は、ボード上の構成要素の数を示
す。これにより、1つのボード上で複数の同一の構成要素を許容する(例えば2
つのトランシーバICを備え、その第2は、GetComponent(“Ne
twork Tranceiver”、1)でアクセスされる)。
【0063】 この手法は以下のいくつかの利点を与える。 ・モジュラ分解。OPBクラスの機能性をいくつかの別個のソフトウェアモジ
ュールに分割する。従って、OPBの複雑さをより単純な構成部分に分割するこ
とができる。これにより、ソフトウェアがより単純になり、保守もより容易にな
る。
【0064】 ・構成部品の再利用。構成要素が別個のモジュールであるので、その他のソフ
トウェアモジュールの間でこれらを容易に共用することができる。例えば、ネッ
トワークトランシーバおよびコーデックのクラスは、同等のICがボードの両方
の型に存在することから、OPBおよびAOPBのクラス双方によって使用され
る。構成要素のためのコードは集中化され、構成要素の変更は一箇所で行うだけ
でよい。
【0065】 ・拡張性。上記の点の結果として、ハードウェアの新しい要素が、OPB(例
えばDSP IC)に追加された場合には、単にそのための新しい構成要素クラ
スを開発し、これをOPBクラスに「差し込む」だけとなる。このプロセスは、
OPBクラス自体をほとんど変更せずに実行することができる。
【0066】 OPBによって作成された構成要素オブジェクトはそれぞれ、最終的にインタ
フェースボードファームウェアと通話して、所望の動作をハードウェア上で実行
しなければならない。このファームウェアとの全ての通信は、OPBドライバオ
ブジェクトを介して行われなければならないので、各構成要素が関連するOPB
ドライバオブジェクト812にアクセスできることが必要と考えられる。しかし
ながら、これは、OPBクラスを第1に有するという利点を損なうことになる(
ファームウェアとの通信機構を抽象化するために)。各構成要素は、任意の構成
であらゆる型のOPBと通話するために、固有のコードを実施しなければならな
くなる。
【0067】 この問題を軽減するために、OPBの構成要素オブジェクト816、818の
一方から実際のインタフェースボードへの全ての通信は、OPBオブジェクト8
14自体を介して行われる。これはつまり、構成要素オブジェクトが、OPBの
特定の知識および通信機構をそれらのコードに埋め込む必要がないということで
ある(これがOPBオブジェクト中にあるため)。しかしながら、OPBクラス
が、ファームウェアと通話するためには、これらの構成要素オブジェクトについ
て厳密に定義された(ただし多様な)インタフェースを表明しなければならない
ことを意味する。構成要素オブジェクトは、OPBクラスのどの型にそれらが接
続されるかについて仮定を立てることができない。様々な型のOPBオブジェク
トに接続される可能性があるからである(上述した構成要素の再利用の点を参照
のこと)。しかし、構成要素オブジェクトは、それらが接続される任意の型のO
PBクラスとどのようにして通話するかを知らなければならない。これはつまり
、全てのOPBクラスのオブジェクトが、それらの構成要素について定義された
インタフェースを提供しなければならないということである。
【0068】 従って、このシステム中のOPBクラスは、インタフェースボード上の特定の
機能にアクセスするために、他の構成要素のいくつかのインタフェースを表明す
る。OPBクラスは、実際には、4つの異なるインタフェースを実装する。
【0069】 ・クライアントインタフェース。これは、エンドユーザのアプリケーションに
対して表明される主要インタフェースであり、これを介して、それらのアプリケ
ーションはOPBの全ての機能(より正確にはOPBがエンドユーザにアクセス
を許す全ての機能)にアクセスすることができる。
【0070】 ・レジスタインタフェース。このインタフェースは特に、ネットワークトラン
シーバおよびコーデックオブジェクトが、ネットワークトランシーバIC中でレ
ジスタの読取り/書込みを実行するために使用する。
【0071】 ・トランシーバサポートインタフェース。このインタフェースは、ネットワー
クトランシーバオブジェクト816が、D2Bメッセージを送信し、OPBオブ
ジェクトから取出し、そのD2Bアドレスを設定するために独占的に使用する。
【0072】 ・制御インタフェース。これは、ディレクタ824が、OPBオブジェクトを
初期化し、操作するために独占的に使用する。
【0073】 OPBの何らかの特定の機能にアクセスするためには、クライアント(ユーザ
)は、それを提供する適当な構成要素オブジェクトを経由せざるを得ず、クライ
アントインタフェースを経由することはできない。換言すれば、OPB上のトラ
ンシーバICへのレジスタ書込みを実行するためには、ユーザはネットワークト
ランシーバオブジェクト816を使用しなければならない。主要なOPBクライ
アントインタフェースは、トランシーバレジスタへの書込みを直接行うための機
能を表明しない。この考えを実施することにより、特定の一意的な動作を実行す
るための方法がただ1つとなることが保証される。これは一般にソフトウェアを
単純化し、保守をより容易にする。
【0074】 この開発システムのもう1つの重要な側面は、それが、インタフェースボード
上およびより広域ネットワーク中で発生したイベントを、エンドユーザのアプリ
ケーションに通告することである。これらのイベントは、OPBファームウェア
によってOPBドライバオブジェクト812に渡され、次いでこれがそれらのイ
ベントをOPBオブジェクト814に渡す。OPBオブジェクトはこれらのメッ
セージを復号し、開発システムの残りの部分で認識されるフォーマットに変換す
る。OPBクラスだけが、OPBドライバから渡されたメッセージの意味を理解
する。従って、特定の型のインタフェースボードのOPBドライバが、これらの
メッセージについて同一のフォーマットを使用することが重要である。これは、
OPBドライバクラスからOPBクラスへの抽象化を維持するために重要である
【0075】 OPBはメッセージを復号し、これをネットワークトランシーバオブジェクト
816に渡し、そこからメッセージは最終的にエンドユーザのアプリケーション
に伝達されることになる。
【0076】 (ネットワークトランシーバ816) ネットワークトランシーバクラスは、インタフェースボード上の実際のネット
ワークトランシーバICを制御し、ネットワークトランシーバに関する情報を取
出すためのAPIをもたらす。例えば、ConanトランシーバIC、型番OC
C8001の知識をカプセル化するネットワークトランシーバクラスがある。
【0077】 ネットワークトランシーバクラスの主な目的は、エンドユーザとOPB上のト
ランシーバICとの間に、抽象化した階層を提供することである。この考えは、
ユーザが、任意タイプのネットワークトランシーバの機能にアクセスするために
汎用ソフトウェアを使用できるようにする点で、この前のセクションで詳述した
OPBクラスの抽象化の考えとほぼ全く同じである。その結果として、ユーザは
、単一のソフトウェアを書き込めば、任意のネットワークトランシーバクラスの
機能にアクセスすることができる。この抽象化は、全てのネットワークトランシ
ーバクラスが、諸機能の共通のインタフェースを実装することを保証することに
よって実現される。この場合ユーザは、ネットワークトランシーバオブジェクト
を制御するためのプログラミングによってこのインタフェースを使用する。ユー
ザは、ネットワークトランシーバオブジェクトを使用するために、そのいかなる
特定の知識も有する必要がない。
【0078】 ネットワークトランシーバクラスは、4つの主な機能領域へのアクセスを提供
する。 ・レジスタの読取りおよび書込み。 ・レジスタについての情報(例えばそれらの名前など)の取出し。 ・ネットワークトランシーバについての情報(例えばその型や、多くのレジスタ
をどのようにして有するかなど)の取出し。 ・D2Bメッセージの送信および取出し。
【0079】 最初の3つの機能領域は、全てのネットワークトランシーバクラスに共通の、
主要な汎用インタフェースに含まれる。これは、クライアントアプリケーション
810に表明されたAPIである。他の1つのAPIが、D2Bメッセージの送
信/取出しのために設けられる。このAPIは、クライアントが直接使用するこ
とができず、開発システムのその他の構成要素(すなわちメッセージ制御構成要
素)によって内部で使用されるだけである。
【0080】 その理由は、やはり抽象化と関係がある。現在、トランシーバICは、D2B Opticalの制御フレームフォーマットを使用している。将来、異なるプ
ラットフォームに適合するように制御フレームフォーマットが変更された場合に
は、そのD2Bメッセージの送信/取出しのためのAPIは、その他のネットワ
ークトランシーバオブジェクトと異なることになる。これは、APIを抽象化す
ることができないことを意味する(メッセージを送信する機能は、ネットワーク
トランシーバごとに異なるので)。その代わりにD2Bメッセージの概念を抽象
化することができ、ネットワークトランシーバクラスはそれらを送信するための
共通のAPIを実装することになる。しかし、そのためには、ネットワークトラ
ンシーバクラスがD2Bメッセージの概念を理解する必要があり、これはネット
ワークトランシーバクラスのさらに高いレベルの概念であると判断されている。
さらに、D2Bメッセージを送信するために余分な制御コードが必要となり、こ
れをあらゆるユーザが書き込むことは期待できない。従って、D2B Opti
calメッセージへのアクセスのAPIは、エンドユーザに与えられない。その
代わりに、アプリケーションは、D2Bメッセージの送受信のために、システム
制御構成要素のAPIを経由しなければならない。
【0081】 ネットワークトランシーバオブジェクト816は、開発システム環境中のOP
Bオブジェクトによって作成され、破壊され、所有される。ネットワークトラン
シーバオブジェクトは、OPBオブジェクトのレジスタインタフェースおよびト
ランシーバサポートインタフェースとの接続を維持し、それを介してOPBファ
ームウェア822にアクセスする。クライアント810は、書き込まれたレジス
タ、およびそれに書き込まれた値を通知される。OPBオブジェクト814は、
イベントをネットワークトランシーバオブジェクトに渡すこともできる。これを
行うために、ネットワークトランシーバクラスは、OPBが使用するための共通
の汎用APIを提供する。このAPIは(抽象化のために)汎用でなければなら
ず、従ってOPBオブジェクトはそれらのトランシーバを透過的に取り扱うこと
ができる(すなわち、それらは同じ機構/コードを使用して、任意の型のトラン
シーバにイベントを通知することができる)。
【0082】 OPBオブジェクト814からのイベントは、最終的にクライアントアプリケ
ーション810に達しなければならないので、ネットワークトランシーバオブジ
ェクト816は、何らかの方法でメッセージをアプリケーションまで伝達させな
ければならない。ネットワークトランシーバオブジェクトは、メッセージ制御オ
ブジェクトを介してこれを行う。メッセージ制御オブジェクトは、OPBハード
ウェアを表す構成要素(OPB、トランシーバ、コーデックの諸構成要素)と、
「システムインスタンス」構成要素(メッセージ制御、自動応答システム(AR
S)、デバイスの諸構成要素)との間の「ブリッジ」である。「システムインス
タンス」構成要素は、この開発システムで使用する各アプリケーションに一意的
である。各アプリケーションは、メッセージ制御、ARS、デバイス、およびシ
ステム制御の諸構成要素の、それ自体一意的なインスタンスを有することになる
。これは、開発システムのアプリケーション間で共用される「ハードウェア構成
要素」(OPB、トランシーバ、コーデックなど)とは対照的である。これらハ
ードウェアオブジェクトの各々のインスタンスの1つが、現実のハードウェアに
対応してそれぞれ存在する。
【0083】 従って、メッセージ制御オブジェクト826は、ハードウェア構成要素と開発
システムの構成要素間のブリッジを提供する。ネットワークトランシーバオブジ
ェクトは、メッセージ制御オブジェクトに接続し、および切断する能力を有する
。これを行う機能は、ネットワークトランシーバオブジェクト上の、D2Bメッ
セージ機能と同じインタフェース中にある。「接続」を確立するプロセスでは、
ネットワークトランシーバオブジェクトは、受信したOPBイベントおよびD2
Bメッセージのメッセージ制御オブジェクトに、トランシーバが通知するために
使用する、メッセージ制御オブジェクト上のインタフェースの参照を獲得する。
接続が確立された後で、クライアントアプリケーションは、D2Bメッセージを
インタフェースボードハードウェアへ送信し、および受信することができる。接
続を行うためのネットワークトランシーバクラス上のAPIは、やはり汎用でな
ければならず、従って、メッセージ制御オブジェクトは、それが接続しようとす
るトランシーバの型について気にする必要なく、あるいはそれを知る必要もなく
、任意の型のネットワークトランシーバオブジェクトに接続することができる。
【0084】 ネットワークトランシーバクラスの1つの最終的なサービスは、開発システム
のネットワークトランシーバオブジェクトを使用して、レジスタ書込みがトラン
シーバIC上で実行されたときに、クライアントアプリケーションに通知するこ
とである。これが起こると、ネットワークトランシーバオブジェクトがメッセー
ジを生成し、これをメッセージ制御構成要素826に渡し、最終的にクライアン
トアプリケーションに渡す。このメッセージは、書き込まれたレジスタ、および
それに書き込まれた実際の値を示す情報を含む。
【0085】 (コーデック818) ネットワークで記述される型は、制御メッセージおよびデータメッセージに加
えてソースデータストリームも生成するので、コーデッククラスは、インタフェ
ースボード上の音声または画像コーデックICを制御し、コーデックに関する情
報を取出すためのAPIを提供する。例えば、Codec CS−4225 I
Cの知識をカプセル化するコーデッククラスがある。
【0086】 ネットワークトランシーバクラスの場合と同様に、コーデッククラスの主な目
的は、開発システムのアプリケーションとOPB上に存在することがある様々な
タイプのコーデックICとの間に、抽象化の階層を提供することである。コーデ
ックは、以下の機能領域を有する。 ・コーデックのプロパティの設定/取出し。 ・レジスタの読取りおよび書込み。 ・レジスタについての情報(名前など)の取出し。 ・コーデックについての情報(そのタイプや、どの位のレジスタを有するかなど
)の取出し。
【0087】 この実施形態のコーデックオブジェクト818は4つのプロパティを有する。
・ミュート(mute) ・ボリューム ・バランス ・フェード これらのプロパティは、コーデックIC自体の属性ではなく、開発システムが
与える概念である。これは、いくつかのコーデックICレジスタ(すなわち出力
減衰レジスタ)の意味を、ユーザに対して意味をなすレベルまで抽象化するもの
である。換言すれば、コーデックICの出力減衰レジスタが全てゼロであるなら
ば、これはエンドユーザに対して意味をなさない。そうではなく、コーデックI
Cのボリュームが100%であると言えば、これはユーザに対して関連した意味
をなす。このように、ボリュームとは減衰レジスタの抽象表現であり、ユーザに
対して意味をなす。これらのプロパティは、コーデックオブジェクトの主要なク
ライアントAPIを介して設定し、取出すことができる。
【0088】 コーデック構成要素は、常に、そのOPBオブジェクトに生成され、ネットワ
ークトランシーバオブジェクトときわめてよく似た方法で、OPBオブジェクト
によって接続される。コーデックオブジェクト818は、OPBオブジェクトの
レジスタインタフェースを使用してOPBファームウェアと通話し、レジスタ書
込みを実行する。コーデックオブジェクト818を使用してコーデックICに対
してレジスタ書込みが行われると必ず、コーデックオブジェクトは、書き込まれ
たレジスタ、およびそれらに書き込まれた値をクライアントアプリケーションに
通知する。コーデックオブジェクトは、OPBオブジェクトのレジスタインタフ
ェース中の、別の機能を呼び出すことによってこれを行う。コーデックオブジェ
クトは、OPBオブジェクトによってイベントを通告されることはない。
【0089】 (ディレクタ824) ディレクタオブジェクト824は、本質的に、インタフェースボードマネージ
ャ構成要素である。1つだけのディレクタのインスタンスが、いつでも実行/存
在することになる点で一意的である。これにより、集中化されたインタフェース
ボードの管理がもたらされる。ディレクタは、実行中の任意のOPBオブジェク
トにクライアントがアクセスできるようにする機能を含む、単一のAPIを表明
する。これを行うことができるようにするために、ディレクタは、その環境中に
存在する全てのOPBオブジェクトについて知っている。ディレクタは、全ての
OPBオブジェクトを実際に作成する(かつ最終的に破壊する)のがディレクタ
オブジェクト自体であるという事実の効能により、この知識を有する。これはま
た、ディレクタがOPBクラスの全ての型、およびそれらを作成する方法につい
ての特定の知識を有することも意味する。
【0090】 ディレクタが作成されたときに最初に行うことは、どのインタフェースボード
がPCに取り付けられたかを決定することである。ディレクタは、可能なあらゆ
る型のOPBドライバオブジェクトのインスタンスを作成し、それらを使用して
実際のOPBを検出することによってこれを行う。Optical Power
Boardが検出された場合には、ディレクタは適当なOPBオブジェクトを
作成し、そのOPBオブジェクトをOPBドライバオブジェクト812にリンク
する。その後、OPBオブジェクトは、OPBドライバを介して自由にOPBと
通信することができる。ディレクタは、それらを検出することができなくなるま
で、指定された各型のドライバおよびOPBオブジェクトを作成し続ける。
【0091】 例えば、ディレクタが作成されたときに、並列OPBドライバオブジェクトを
作成する。次いで、ディレクタはそのオブジェクト中のOPB検出機能を呼び出
す。この機能は、PCに並列に取り付けられたOPBが存在しないことを意味す
る「False」を返し、従ってディレクタは並列OPBドライバオブジェクト
を破棄する。次いで、直列OPBドライバオブジェクトを作成し、そのOPB検
出機能を呼び出す。この機能は、シリアルRS−232で接続されたOptic
al Power BoardをPCが有することを意味する「true」を返
す。従って、ディレクタはOPBオブジェクト814のインスタンスを生成し(
instantiates)、これに直列OPBドライバオブジェクトへの参照
を渡す。ディレクタは、複数存在することはないという明示的な知識を有するの
で、それ以上の直列OPBの検出を試みようとはしない。最後に、ディレクタは
、Advanced OPB(AOPB)ドライバオブジェクトを作成し、これ
を用いてAOPBを検出する。AOPBの構成要素オブジェクトが作成され、A
OPBドライバオブジェクトに結合される。Advanced OPBは、図1
0のセットアップで説明したデイジーチェーン機構を提供する。ディレクタは、
その他のAOPB(例を図10に示す)が存在することがあることを知っている
ので、別のAOPBドライバ構成要素を作成し、別のAOPBの検出を試行する
。ディレクタは、PCに取り付けられた全てのインタフェースボードを検出する
まで、引き続きこれを行う。
【0092】 ディレクタは、インタフェースボードの検出に成功した、全てのOPBオブジ
ェクトへの参照を記憶する。そして、ディレクタは、任意の要求側クライアント
にこれらの参照を提供することができる。
【0093】 ディレクタがオプションとして有するよう構想された唯一のその他の機能領域
は、OPBオブジェクトと同様にデバイスオブジェクト830等を指図すること
である。これにより、アプリケーションが、実行中のその他の開発システムを「
スパイ」することが可能となる(デバイスのセクションで述べる)。これを行う
ために、ディレクタオブジェクトは、通常、デバイスオブジェクトがディレクタ
にそれら自体を登録および登録解除することができるようにする機能と、登録さ
れたデバイスオブジェクトへの参照をアプリケーションが取出すための機能とを
備えた、もう1つのAPIを表明することになる。
【0094】 (メッセージ制御826) メッセージ制御構成要素クラスは5つの主要な機能カテゴリを提供する。 ・D2Bメッセージのキューイングおよび送信。 ・D2B制御フレームの受信および変換。 ・OPBイベントの受信および伝達。 ・長いD2B Opticalメッセージの管理。 ・トランシーバオブジェクトおよびARSオブジェクトへの接続の生成および破
棄。
【0095】 メッセージ制御クラスの主な機能は、D2Bメッセージのキューイングおよび
クライアントアプリケーションへの送信サービスを提供することである。メッセ
ージを送信できるようにするためには、最初に、メッセージ制御オブジェクトを
ネットワークトランシーバオブジェクト816に接続しなければならない(かつ
それにより間接的に物理的インタフェースボード804/806などに)。メッ
セージ制御クラスは、それをネットワークトランシーバオブジェクトに接続する
機能およびそこから切断する機能を備えたインタフェースを表明する。メッセー
ジ制御オブジェクトには、ネットワークトランシーバオブジェクトのインタフェ
ースへの参照が与えられ、これを介して、メッセージ制御オブジェクトは接続さ
れているネットワークトランシーバオブジェクトの型を決定する。そして、メッ
セージ制御は、ネットワークトランシーバオブジェクトに、そのインタフェース
のうちの1つへの参照を与える。このインタフェースは、そのネットワークトラ
ンシーバオブジェクトが後に、イベントおよびD2Bメッセージをメッセージ制
御オブジェクトに渡すために使用するインタフェースである。メッセージ制御オ
ブジェクトは、いくつかの異なるこのような「通告」インタフェースを表明する
ことができる。これにより、下記のように、将来の拡張性および柔軟性をもたら
すことができる。
【0096】 新しい開発システムは、拡張可能かつ「将来に備えた(future pro
of)」ものとなるように意図されている。メッセージ制御クラスの意義の1つ
は、D2B制御フレーム構造(図7)が将来変化することができること(おそら
くは例えば新しい型のトランシーバICのために)、または同じプロトコルが異
なる型のネットワーク上で完全に実装されることになることである。従って、メ
ッセージ制御クラスは、様々な制御フレームフォーマットを使用していることが
ある、様々なネットワークトランシーバオブジェクトと対話することができなけ
ればならない。しかし、開発システムの構成要素およびクライアントアプリケー
ションは、制御フレームではなくD2Bアプリケーションプロトコルのメッセー
ジの概念を扱う。D2Bアプリケーションプロトコルメッセージは、メッセージ
の現実のセマンティクス(意味)を含むが、制御フレーム構造は、トランシーバ
ハードウェアによってアプリケーションプロトコルメッセージに付与された単な
る通信フォーマットである。開発システムのエンドユーザは、D2Bメッセージ
を送信することに関心を持つが、D2B光ネットワークを介してこれらのメッセ
ージを送信するための実際のフォーマットを覚えていない。D2Bメッセージは
、それを通信する際に基礎となった物理フォーマットからメッセージの意味を分
離(abstract)するものとして考えることができる。
【0097】 従って、クライアントアプリケーションおよび開発システムの構成要素はD2
Bメッセージの概念を使用するが、同じフレームフォーマットがアプリケーショ
ン中でその他の型のネットワークまたはその他のプロトコルに適用されることは
ない。「ハードウェア」構成要素(トランシーバおよびOPBクラス)は、制御
フレームを扱う。開発システムのフレームワーク中のどこかで、D2Bメッセー
ジを制御フレームに、またその逆に翻訳しなければならず、これはメッセージ制
御クラスの仕事である。メッセージ制御オブジェクト826は、全ての制御フレ
ームフォーマットを知っている。メッセージ制御オブジェクト826は、最初に
ネットワークトランシーバオブジェクト816に接続されたときに、トランシー
バの型を決定し、それによりその制御フレームフォーマットを決定する。後にD
2Bメッセージが送信されたときに、メッセージ制御はこのD2Bメッセージを
、トランシーバが期待する適当な制御フレーム構造に変換することができる。様
々なネットワークトランシーバクラスが、様々な制御フレームの型を送信するた
めの様々なAPIを表明することになる(従ってこのAPIは抽象化することが
できない)。これが、エンドユーザのアプリケーションが、この実施形態で、ネ
ットワークトランシーバクラスのAPIへ送信するメッセージへのアクセスを与
えられない理由である。
【0098】 制御フレームが受信されると、ネットワークトランシーバオブジェクト816
は、これをメッセージ制御オブジェクト826に渡す。様々なタイプのトランシ
ーバが様々な制御フレームを使用するので、メッセージ制御オブジェクトは、存
在する制御フレームの型それぞれについてAPIを提供する。メッセージ制御が
ネットワークトランシーバオブジェクトに接続されたときに、適当なメッセージ
制御の通告インタフェースへの参照をこのトランシーバに与え、トランシーバは
、これを介してその特定の制御フレームの型をメッセージ制御に渡すことができ
る。この最終的な結果として、メッセージ制御構成要素は、任意タイプのトラン
シーバICを介してD2Bメッセージを送受信することができる。同時に、開発
システムの構成要素およびエンドユーザのアプリケーションは、D2Bメッセー
ジの考えを引き続き使用することができ、将来新しい型のトランシーバを利用す
るためにソフトウェアを改変する必要はない。
【0099】 アプリケーション810がD2Bメッセージを送信すると、メッセージ制御オ
ブジェクト826は、このメッセージを直ちに伝送しようとはせずに、バッファ
に入れる。メッセージ制御オブジェクトが接続されたネットワークトランシーバ
オブジェクト816は、定期的にメッセージ制御オブジェクトに信号を送り、そ
れが進行することができ、望むならD2Bメッセージの送信を開始することがで
きることを示す。そして、メッセージ制御オブジェクト826は、そのバッファ
から自由にD2Bメッセージを取出し、送信する。これは次いで、送信結果を取
出し、クライアントアプリケーションに通知する。メッセージをバッファ中に置
くことで、開発システムは、追加の通信管理を実行し(例えば以下の長メッセー
ジを参照されたい)、アプリケーションがそれ自体でバッファリングを実装する
実施する必要を防ぐ。
【0100】 ネットワークトランシーバオブジェクト816は、着信する制御フレームを受
信すると、これをメッセージ制御オブジェクト826に渡す。メッセージ制御オ
ブジェクト826は、制御フレームをD2Bメッセージに変換し、それをクライ
アントアプリケーション810に渡す。
【0101】 従って、メッセージ制御オブジェクト826は、以下の3つのことを開発シス
テムのクライアントアプリケーションに通知する役割を担う。 ・D2B Opticalメッセージの受信。 ・送信されたD2B Opticalメッセージの送信結果。 ・基礎となる開発システムのハードウェア構成要素から受信したイベント。
【0102】 これを達成するために、メッセージ制御オブジェクトは、ネットワークトラン
シーバをメッセージ制御オブジェクトに接続したのと同様に、ARSオブジェク
ト(828、後述)に接続することができる。これを行う機能も、ネットワーク
トランシーバオブジェクトがメッセージ制御オブジェクトに接続するために使用
したのと同じAPI中にある。
【0103】 従って、メッセージ制御オブジェクト826は、以下2つのAPIを有する。 ・クライアント/制御インタフェース。 ・メッセージ制御をネットワークトランシーバオブジェクトに接続。 ・メッセージ制御をARSオブジェクトに接続。 ・D2Bメッセージを送信。
【0104】 ・接続されたトランシーバが使用する通告インタフェース。 ・受信した制御フレームをメッセージ制御オブジェクトに渡すこと。 ・ハードウェア構成要素メッセージをメッセージ制御に渡すこと。 ・それが自由にD2Bメッセージを送信できることをメッセージ制御に通知
すること。
【0105】 この例でメッセージ制御クラスが提供する最後のサービスは、長いD2Bメッ
セージに関する。長いD2Bメッセージは、単一の制御フレームで伝送すること
ができず、従って長いD2Bメッセージを複数の制御フレームにパッケージ化し
、伝送するために、余分な管理コードが必要となる。同様の管理コードが、長い
D2Bメッセージの中に制御フレームを蓄積しパッケージ化するために、長いメ
ッセージを受信する側でも必要となる。さらに、制御フレームの送受信において
、いくつかのプロトコル(例えばフロー制御を補助するためのプロトコル)が必
要となることもある。
【0106】 全ての長メッセージの論理は、長メッセージを扱おうとするあらゆる開発シス
テムのアプリケーションによって実装されなければならないので、その代わりに
メッセージ制御クラスがこれを実装する。メッセージ制御クラスは、long
message protocol(LMP)クラスのオブジェクトを使用して
、これを内部で行う。このオブジェクトは、長メッセージの送受信に必要な全て
の知識を含む。このクラスは、将来開発される任意の新しい長メッセージプロト
コルを使用するために更新することができる。現在の実装は、制御フレームをD
2Bメッセージに(またその逆に)パッケージ化/パッケージ解除するための論
理を含み、またフロー制御プロトコル論理を含むように適合させることもできる
。最終的な結果として、常に、ユーザは長メッセージプロトコルから防護され、
比較的容易にかつ余分なコーディングを行わずに、それらが長メッセージを送受
信することができるようにする。特定のlong message proto
colを使用する、または長メッセージの処理を完全に止める命令を、メッセー
ジ制御オブジェクトにするための手段が存在することもできる。
【0107】 メッセージ制御オブジェクトは、長メッセージを受信したときには、さらに処
理するためにこれをLMPオブジェクトに渡す。LMPオブジェクトは、必要な
任意の動作を実行し、制御フレームから完全なメッセージを構築する。メッセー
ジが完成すると、通常の方法によってARSオブジェクト828に渡される。長
メッセージの送信中には、LMPオブジェクトは、D2Bメッセージオブジェク
ト自体といっしょに、このメッセージを管理し、メッセージを送信するための制
御フレームにパッケージ化する。全ての制御フレームが送信された後で、クライ
アントアプリケーションにその送信結果が通知される。
【0108】 (ARS(自動応答システム)828) ARSクラスは、開発システムのクライアントアプリケーションに知的自動応
答を付加するための基礎を提供する。このクラスは以下の機能領域を提供する。
・システムおよびデバイスの仕様。 ・D2Bメッセージの妥当性検査。 ・D2Bメッセージの翻訳。 ・自動デバイスの挙動/応答。
【0109】 本開発システムの背景にある動機の1つは、D2B Opticalの製品の
各設計者/製造業者が、最初に独自のD2Bネットワークシステムを開発すると
いう事実である。このシステムは、D2B Opticalのプロトコルの指定
されたサブセットを使用して通信する、指定されたD2B Opticalデバ
イスを含むことになる。D2Bシステムインテグレータは、システム中のデバイ
スがプロトコルおよびシステム仕様に適合すること(例えば、それらがそのシス
テムの実際の構成では無効なD2Bメッセージを送信しないこと)をテストでき
ることを望む。D2Bシステムインテグレータはまた、デバイスエミュレータ、
および自分のD2B OpticalシステムまたはD2B Opticalデ
バイス/製品のテストを自動化するためのテストアプリケーションを構築するこ
とも望むことがある。
【0110】 開発システムでこの考えをサポートするための中核となるのは、システム記述
ファイル(SDF)838中でカプセル化されたプロトコルデータベースの概念
である。SDFは、以下のことを行う。 ・特定のD2B Opticalバージョンについて全てのアプリケーションプ
ロトコルを含む。 ・その特定のシステムで有効なプロトコルのサブセットを指定する。 ・そのシステムで有効なデバイスを指定する。 ・デバイス中の有効なサブデバイス、およびそれらサブデバイスのソースデータ
の型を指定する。
【0111】 このように、SDFは、デバイス(CDチェンジャや電話など)が実際にその
中に存在する、任意の特定のD2B Opticalシステムの仕様をカプセル
化するために作成することができる。ARSに、それが表明するAPI中の機能
を介して、特定のSDFを使用するよう命令することができる。そして、ARS
はSDF中の知識を利用することができ、またその他の開発システムの構成要素
がその同じ情報にアクセスできるようにするための、もう1つの別個のインタフ
ェースも表明する。
【0112】 図8から分かるように、クライアントアプリケーション810との全てのD2
Bメッセージ通信は、ARSオブジェクト828を通過しなければならない。従
って、ARSオブジェクトは、送信または受信されるあらゆるメッセージを検査
することができ、プロトコルおよび(この特定のシステムでは)SDF中に記述
されたシステムの仕様にそのメッセージが適合するかどうかをテストする。クラ
イアントアプリケーションが無効メッセージを送信しようとした場合には、AR
Sは、このメッセージを拒絶する(送信しない)ことも、単にアプリケーション
に警告することもできる。無効メッセージが受信された場合には、ARSはそれ
が無効であるとクライアントアプリケーションに警告することができる。無効メ
ッセージに応答したARSオブジェクト828の挙動は、ARSのAPI中の機
能を介して構成することができる。従って、SDFを使用することにより、AR
Sは、自動化されたD2Bメッセージの妥当性検査サービスをクライアントアプ
リケーション810に提供することができ、クライアントはいかなる作業も実行
する必要がない。
【0113】 ARSのもう1つの特徴は、メッセージの記号翻訳(symbolic tr
anslation)である。各D2Bアプリケーションプロトコルメッセージ
は、例えば、演算コードおよびいくつかのオペランドとして指定される。これは
複雑なために、エンドユーザにとっては非常に分かりにくい表現であり、また数
字列の意味を覚えることは困難である。これを多少とも解消するために、新しい
開発システムは、D2Bメッセージを人が読めるテキスト表現に、またその逆に
翻訳することができる。このサービスは、ARSオブジェクト828によって提
供される。従って、クライアントアプリケーション810は、送信すべきD2B
Opticalメッセージをテキストで指定することができ、ARSオブジェ
クトは、このテキストを対応するD2B Opticalメッセージに変換する
ことになる。同様に、ARSオブジェクトが受信したD2Bメッセージは、クラ
イアントアプリケーションに伝達される前にテキストに変換することができる。
ARS中のテキスト翻訳は、そのAPI中の機能によってオンまたはオフにする
ことができる。
【0114】 ARSオブジェクト828は、メッセージ制御オブジェクト826およびネッ
トワークトランシーバオブジェクト816と同様に、その他の開発システムの構
成要素に接続される。ARSオブジェクト828は、メッセージ制御オブジェク
ト826に接続され、そこから通告(D2Bメッセージ、送信結果、およびイベ
ント)を受信する。処理の後に、ARSオブジェクトは、受信した全ての通告を
デバイスオブジェクト830(以下参照)に伝達する。従って、ARSオブジェ
クトは、メッセージ制御オブジェクトおよびデバイスオブジェクトとの接続を確
立する機能と、最終的にそれらの接続を破棄する機能を提供する。これらの機能
は、専用のAPI中に設けられる。
【0115】 ARSクラスは、現在、以下のことを行う4つのAPIを提供する。 ・ARSの属性(例えばどのSDFを使用するか、テキスト翻訳を使用するかど
うか、など)を設定すること。 ・ARSをその他の開発システムの構成要素に接続すること。 ・接続されたメッセージ制御オブジェクトから通告を受信すること。 ・SDFのシステム仕様へのアクセスを提供すること。
【0116】 (デバイス830) デバイス構成要素は、構成要素マネージャであると考えることができ、システ
ムインスタンスの中心となる構成要素である。システムインスタンスの概念につ
いては既に述べたが、分かりやすくするためにここでさらに詳細に述べる。
【0117】 クライアントアプリケーション810が開発システムを使用するときには、シ
ステム制御オブジェクト832、デバイスオブジェクト830、ARSオブジェ
クト828、メッセージ制御オブジェクト826、および(任意選択で)スイッ
チボックスオブジェクト834が作成される。これらのオブジェクト(以下で詳
述する)は、事実上アプリケーションに属し、ともにアプリケーションのシステ
ムインスタンスを形成する。これらのオブジェクトはアプリケーション810に
固有のものであり、その他のアプリケーションがアクセスすることはできない。
これは、OPBオブジェクトやネットワークトランシーバオブジェクト、コーデ
ックオブジェクト、ディレクタオブジェクト(後述)など、その他の開発システ
ムの構成要素とは対照的である。これらは共用される構成要素であり、複数のア
プリケーションがアクセスし、使用することができる。クライアントアプリケー
ションは、いくつかのAPIを介してその開発システムの属性および挙動を制御
することができる。
【0118】 クライアントアプリケーションは、OPBを制御してこの開発システムを使用
するときには、ネットワーク中の特殊な状態およびアプリケーションプロトコル
を有する、D2Bデバイスとして事実上動作する。このD2Bデバイスは、D2
Bアドレス(その物理的なリング位置とは異なる)や、それがD2Bシステムマ
スタであるかどうかなどの属性を有する。開発システムのデバイス構成要素83
0は、クライアントアプリケーションがこれらの属性を設定し、取出すことがで
きるようにするオブジェクトである。さらに、開発システムは全体として、例え
ば、それがD2Bメッセージのテキスト翻訳を実行するかどうか、またはスイッ
チボックス構成要素を使用するかどうかなどの属性を有する。第1の属性は、事
実上ARS828の属性であり、第2の属性は、開発システム全体としての属性
であるが、アプリケーションが使用している完全な開発システムについてのこの
情報をカプセル化するのはデバイス構成要素830である。これは、様々な属性
を設定し、取出すことができるようにするAPIを表明する。
【0119】 クライアントアプリケーションは、開発システムを使用するときには、システ
ム制御オブジェクト832を作成する。このオブジェクトが最初に行うのは、デ
バイスオブジェクトを作成することである。次いで、デバイスオブジェクト83
0が、開発システムのその他の構成要素(すなわちメッセージ制御、ARS、お
よびスイッチボックス)の作成を開始し、これらを互いに接続する。次いで、広
域ディレクタオブジェクト824(必要なら作成する)にアクセスし、空いてい
るOPBオブジェクト814を取出す。最後に、そのOPBのネットワークトラ
ンシーバ816にアクセスし、それ自体のメッセージ制御826とネットワーク
トランシーバオブジェクト816を互いにリンクする。これにより、OPBドラ
イバ構成要素812からデバイスオブジェクト830までの、全体の経路がもた
らされる。クライアントアプリケーションが終了したときに、デバイスオブジェ
クトは、それが接続する全ての構成要素のリンクを破棄し、そのシステムインス
タンス中のオブジェクトを破壊する。
【0120】 デバイスオブジェクト830は、最初にどのOPBオブジェクト(従ってどの
物理的OPB)をクライアントアプリケーションのシステムインスタンスが使用
するかを決定する。デバイス830は、クライアントが、OPBオブジェクト、
そのトランシーバオブジェクト、およびコーデックオブジェクト(以下参照)に
アクセスすることができるようにするAPIを表明する。しかし、PCに取り付
けられたOPBは複数存在することもあり、エンドユーザが特定のOPBを選択
して使用したいと望むこともある。クライアントアプリケーションは、ディレク
タ構成要素824を介して、PCに接続されたOPBを指図し、1つを選択し、
そのシステムインスタンスにそれを使用するよう命令することができる。デバイ
スのAPIがこれを行うための機能を提供し、デバイスオブジェクトは、新たに
指定されたハードウェア構成要素を、それ自体のシステム構成要素への接続を行
う。
【0121】 デバイスオブジェクトは、その他の構成要素と同様に、接続されたハードウェ
ア構成要素(802、804)からクライアントアプリケーション810に、イ
ベントを渡す役割を果たさなければならない。デバイスオブジェクトは、自動応
答サーバ(ARS)オブジェクト832を作成して、デバイスオブジェクト自体
に接続し、それによりARSがイベントをメッセージ制御826からデバイスオ
ブジェクト自体に渡すことができるようにする。ただし、デバイスオブジェクト
は一意的であり、その他の構成要素がそれら自体をデバイスオブジェクトに接続
し、そこから通告を受信することができるようにするために、明確に定義された
標準APIを表明する。図8から分かるように、デバイスは、システム制御オブ
ジェクト832およびスイッチボックスオブジェクト834の両方に接続される
。システム制御オブジェクトは、デバイスオブジェクトを作成した後、標準AP
Iを使用してそれと結合する。同様に、デバイスオブジェクトがスイッチボック
スオブジェクトを作成した後、スイッチボックスオブジェクトは同じAPIを使
用して、それ自体をデバイスオブジェクトに結合する。その後、デバイスオブジ
ェクトが受信した全ての通告は、自動的にシステム制御オブジェクトおよびスイ
ッチボックスオブジェクトに伝達される。
【0122】 この標準機構は、任意の構成要素が、デバイスオブジェクトと結合するために
使用することができる。例えば、特定のデバイス構成要素と結合することによっ
てクライアントアプリケーションを「スパイ」することができるGUIアプリケ
ーションを構築することもできる。これを行おうとする構成要素には、以下の2
つの条件がある。 ・この構成要素は、デバイスオブジェクトがその構成要素に通告を渡すための特
定のAPIを実装しなければならない。 ・この構成要素は最初に、デバイスオブジェクトに接続するためにそのデバイス
オブジェクトへの何らかの参照を有さなければならない。
【0123】 これは、そのデバイスオブジェクトへの参照を既に有しているその他の開発シ
ステムの構成要素が、その参照を供給し、または外部エージェント(ディレクタ
構成要素824など)がそれを供給することを意味する(これは、ディレクタが
実行中の全てのデバイスオブジェクトを認識しているようにするための機構が、
存在しなければならないことになることを意味する)。
【0124】 (システム制御832) システム制御オブジェクト832は、クライアントの、開発システム環境との
インタフェースである。開発システムを使用したいと望むあらゆるクライアント
アプリケーション810は、そのアプリケーション中でシステム制御オブジェク
トをインスタンス化しなければならない。そして、このオブジェクトが、開発シ
ステムを制御するためのそのアプリケーションの「ブリッジ」またはインタフェ
ースとして働く。システム制御オブジェクト832は、クライアントアプリケー
ションに対して単一のAPIを表明し、またシステム制御オブジェクトが、その
アプリケーションに通告を渡すことができるようにするための、定義されたAP
Iを表明するようそのアプリケーションに求める。
【0125】 システム制御オブジェクト832が作成されると、デバイスオブジェクト83
0をインスタンス化し、これがその後、対応するアプリケーション810に特有
の開発システムの残りの部分の構築を開始する(上記ではシステムインスタンス
と呼ぶ)。システム制御オブジェクト832自体は、機能性を実質上含まず、単
にその全てのAPI呼出しを接続されたデバイスオブジェクトに委任するだけで
ある。システム制御オブジェクトの主な仕事は、アプリケーションからAPI機
能呼出し中に渡されたデータを、開発システム内部で使用される適当なフォーマ
ットに翻訳すること、およびその逆の翻訳をすることである。
【0126】 システム制御オブジェクト832は、デバイスオブジェクト830を作成した
後は、そのデバイスの標準機構を使用してそれと結合し、これによりシステム制
御オブジェクトは、デバイスオブジェクトから通告を受信することができる。従
って、システム制御オブジェクトは以下の2つのインタフェースを表明する。 ・開発システムを制御するアプリケーション810のためのクライアントアプリ
ケーションインタフェース。 ・システム制御オブジェクトにイベントを通告するためのデバイスオブジェクト
によって使用される通告インタフェース。
【0127】 クライアントアプリケーション810が最終的に終了したときに、システム制
御オブジェクト832は、そのデバイスオブジェクト830との接続を切断し、
次いでデバイスオブジェクトを破棄する。デバイスオブジェクトは、それ自体が
破棄される間に残りのシステムインスタンスを破棄し、「クリーンアップ」する
【0128】 単一のアプリケーションが、1以上のシステム制御オブジェクト832をイン
スタンス化することも可能である。この場合には、作成されるそれぞれが、その
他のシステム制御オブジェクトのインスタンスとは別個の、それ自体の完全に一
意的なシステムインスタンスを構築することになる。異なるシステム制御オブジ
ェクトはそれぞれ、別個のインタフェースボード(OPB814)を制御するた
めに使用することができる。
【0129】 (スイッチボックス834) D2B Optical技術の最も重要な利点の1つは、単一の光ファイバを
介して複数チャネルのソースデータを伝達できることである。ソースデータの送
信を管理制御するために、D2BソースデータプロトコルおよびD2Bスイッチ
ボックスサブデバイスが規定されている。あらゆるD2Bデバイスは、スイッチ
ボックスおよびそれと関連するソースデータプロトコルをサポートするためのソ
フトウェアを実装しなければならない。これは、この開発システムを介してOP
Bを制御する任意のクライアントアプリケーションも、D2B Optical
ネットワーク中で相互動作する「開発システムデバイス」(図9の電話エミュレ
ーション109′など)のための、このソフトウェアを実装しなければならない
ことを意味する。いうまでもなく、これは全ての開発システムのアプリケーショ
ンにとって望ましくない負担である。
【0130】 この問題を多少とも解消するために、この開発システムは、スイッチボックス
クラスのオブジェクトを有する。スイッチボックスオブジェクト834は、開発
システムを使用するクライアントアプリケーションの代わりに、D2Bスイッチ
ボックスおよびソースデータ接続プロトコル論理を効果的にカプセル化し、実装
する。D2Bメッセージを受信すると、デバイスオブジェクト830はこれをス
イッチボックスオブジェクト834に渡し、次いで、そのメッセージがスイッチ
ボックスメッセージであるかどうかを調べる。スイッチボックスメッセージであ
る場合には、スイッチボックスオブジェクト834はこのメッセージを処理し、
必要な任意の動作を実行する、すなわち新しいスイッチボックスメッセージを光
ネットワーク上に伝達し、それ自体のネットワークトランシーバにあるソースデ
ータの経路指定を制御する。
【0131】 デバイスオブジェクトは、スイッチボックスオブジェクトを作成したときに、
システムインスタンスが使用しているネットワークトランシーバオブジェクト8
16へのアクセスをスイッチボックスに与える。そして、スイッチボックスオブ
ジェクトは、D2Bスイッチボックスメッセージに応答して、トランシーバの経
路指定情報テーブル(routing information table)
(RIT)または等価な経路指定制御を自由に改変することができる。クライア
ントアプリケーション810が、そのシステムインスタンスに異なるOPBを使
用するよう命令した場合には、デバイスオブジェクト830は、スイッチボック
スオブジェクトが常に正しいネットワークトランシーバオブジェクトへのアクセ
スを備え、それを操作することを保証する。
【0132】 様々なトランシーバICのRITは、様々(ポート数、ポートサイズ、構成)
であり、スイッチボックスは様々なトランシーバタイプのいずれにも接続するこ
とができるので、スイッチボックスオブジェクトは各トランシーバの型について
の特有の知識をカプセル化する。理想的には、スイッチボックスは一般的な挙動
のみを含むべきであり、各ネットワークトランシーバクラスは、スイッチボック
スがそのトランシーバのRITに関する特定の知識にアクセスできるようにする
APIを表明すべきである。その場合には、スイッチボックスオブジェクトは、
この知識を動的に使用して、そのトランシーバにとって正しいRIT操作を実行
するはずである。しかし、現在のトランシーバおよびスイッチボックスの設計は
この考えをサポートしていない。
【0133】 クライアントアプリケーション810は、図4に示すように、現実のデバイス
をエミュレートするために、ソースデータを光ネットワーク上に、または光ネッ
トワーク外で経路指定しようとすることがある。このソースデータは、トランシ
ーバIC上の特定のポートを介して経路指定されることになり、論理的にD2B
サブデバイスと関連することになる。スイッチボックスオブジェクト834は、
この情報自体を決定することができ、従って、クライアントアプリケーションか
らこれを通知される。この目的のために、スイッチボックスオブジェクトは、そ
れを構成することができるようにするインタフェースを表明する。ユーザは、デ
バイスオブジェクト830を介してこのAPIにアクセスすることができる。こ
のAPIにより、ユーザは、どのD2Bサブデバイスが論理的にトランシーバI
Cに接続されるかを、それらが接続されるトランシーバ上の実際の入出力ポート
と同様に指定することができる。スイッチボックスオブジェクトは、ARSオブ
ジェクトを使用してSDFのシステム仕様にアクセスし、特定のサブデバイスと
関連するソースデータタイプを決定する。このように、スイッチボックスオブジ
ェクトは、トランシーバのポートおよびそのポートと関連するデータのフォーマ
ットについての知識を有するので、ソースデータをサブデバイスから、またはサ
ブデバイスに経路指定する必要があるときに、どのRITチャネルを操作すべき
かを知っている。
【0134】 ソースデータ接続の構築で、スイッチボックスが使用されるときには、スイッ
チボックスは、クライアントアプリケーションに通告を送信することによって通
知する。これらの通告は、接続が設定/破棄されたかどうか、その接続のID、
およびその接続の影響を受けるサブデバイスなどの情報を含む。さらに、その接
続と関連するチャネル情報(すなわちソースデータフィールド(図5)内のどの
チャネルをその接続が使用しているか)も与えられる。スイッチボックスオブジ
ェクト834は、これらの通告を、それが接続されたデバイスオブジェクト83
0に渡す。デバイスオブジェクト830は、通告を受信するために、既にARS
オブジェクト828に対してAPIを表明している。スイッチボックスオブジェ
クトはこれと全く同じAPIを使用する。
【0135】 スイッチボックス自体は以下の3つのインタフェースを表明する。 ・スイッチボックスを構成するためのクライアントインタフェース。 ・初期化とスイッチボックスオブジェクトをネットワークトランシーバオブジェ
クトに接続するために、デバイスオブジェクトが使用する制御インタフェース。
・デバイスオブジェクトが通告をスイッチボックスに渡すための通告インタフェ
ース。
【0136】 ここまでは、クライアントアプリケーション810が常にスイッチボックス構
成要素のサービスを使用することを望むものと仮定している。しかし、ユーザが
それ自体のスイッチボックスの論理および動作を実装することを望むこともある
ことから、そのようにならないこともある。これをサポートするために、その主
要なAPI中のデバイスオブジェクト830は、スイッチボックス構成要素の使
用を切替えるための機能を設ける。この属性がオフである場合には、デバイスオ
ブジェクトはスイッチボックス構成要素を作成しない(それが存在すれば破棄す
る)。その後、属性がオンに切り替わった場合に、スイッチボックスオブジェク
トを作成することになる。オフに切り替わった場合には、クライアントアプリケ
ーションは、トランシーバのレジスタを操作し、D2Bメッセージを適切に取り
扱うことによって、そのアプリケーション中でスイッチボックスの挙動を実装す
る役割を全面的に担う。
【0137】 (デバイスデータベース836) プロトコルおよび機能が、ある範囲の特定の製品が事前に配列したフォーマッ
トで符号化されることによって、実際に実装するところのデバイスデータベース
836を設けることもできる。ユーザがエミュレートのための専用アプリケーシ
ョンをプログラミングすることなく、デバイスの記述である「ライブラリ」を、
ARSオブジェクト828とともに使用して、選択された製品を開発システム内
でエミュレートすることができる。製造業者は、このデバイスの記述であるライ
ブラリを共用し、新製品を開発するにつれて拡張し、互換性のある製品の開発を
大きく促進することができる。
【0138】 (クライアントイベント) システムインスタンスは、クライアントアプリケーションからのコマンドに応
答する単なる受動システムではない。システムインスタンスは、任意の時間に起
こるイベントを、システム制御オブジェクト832を介して非同期にクライアン
トに通知することができる。これらのイベントは、外部のD2B Optica
lネットワーク上、インタフェースファームウェア822中、およびシステムイ
ンスタンス自体の中で起こった事態から、発生させることができる。この例では
、システムインスタンス中のイベントを、以下のカテゴリに一般化することがで
きる。 ・受信されたD2Bメッセージ。 ・クライアントアプリケーションから送信されたメッセージについてのD2Bメ
ッセージの送信結果。 ・ネットワーク管理状態の変化およびその変化の原因。多くの様々なイベントが
このカテゴリに入る。多くの様々な事柄が、状態の変化、例えばロックはずれ/
確立、タイムアウト、ネットワークエラーなどを引き起こすからである。 ・ネットワークトランシーバのレジスタの書込み。これらは、任意のネットワー
クトランシーバのレジスタがうまく書き込まれたときに発生する。 ・内部エラー。例えば、クライアントアプリケーションが、何らかのシステムイ
ンスタンスのプロパティに無効値を設定しようとした場合、または内部システム
のフレームワークにエラーが発生した場合など。
【0139】 以下の表は、システムがクライアントアプリケーションに信号を送ることがで
きるイベントの一部を定義したものである。
【0140】
【表1】
【0141】
【表2】
【0142】
【表3】
【0143】 (開発システムの初期化例) 図11は、初期化中の開発システムの、様々な構成要素モジュール間の動作お
よび通信のシーケンスを示している。各構成要素の動作は、それぞれの時間線上
に表し、図8と同じ参照符で表示してある。
【0144】 ステップ1100で、クライアントアプリケーション810は、運用を開始す
るために、システム制御オブジェクト832のインスタンスを作成する。110
2で、システム制御オブジェクトが、デバイスオブジェクト830を作成し、1
104でデバイスオブジェクトが、ディレクタオブジェクト824を作成する。
【0145】 1106で、ディレクタオブジェクト824が、OPBオブジェクト814を
作成する。1108から1114で、OPBオブジェクトは、ネットワークトラ
ンシーバオブジェクト816、コーデックオブジェクト818を作成し、インタ
フェースボードのファームウェアエレメント822およびネットワーク管理エレ
メント820を初期化する。
【0146】 1116および1118で、デバイスオブジェクト830はさらに、ARSオ
ブジェクト828およびメッセージ制御826をそれぞれ作成する。1120で
、ARSオブジェクト828は、対応するメッセージ制御オブジェクト826と
のリンクを確立する。
【0147】 1124で、デバイスオブジェクト830は、コマンドGetCompone
nt(“OPB”,“0”)をディレクタ824に送信し、1126で、ディレ
クタは、予約されたOPB814の識別をこのアプリケーションに戻す。112
8で、デバイスオブジェクト830は、OPB814にそれが空いていることを
確認するよう要求し、ステップ1130で確認を受信する。1132で、デバイ
スオブジェクト830は、開発システムのこのインスタンスの運用の準備ができ
ていることをシステム制御832に通知する。
【0148】 (開発システムの動作例) 図12は、ネットワーク上へのD2Bメッセージの送信を示している。120
0で、クライアントアプリケーションは、システム制御832に対して機能呼出
しを行い、送信したいと望む、「CDチェンジャ」にアドレス指定された「pl
ay」「FORWARD」などのD2Bメッセージを、テキスト表現で提供する
。1202で、システム制御832は、この呼出しをデバイスオブジェクト83
0に渡し、デバイスオブジェクトが1204でこれをARSオブジェクト828
に渡す。ARSオブジェクト828は、設定されている警告レベルに従って、ま
たシステム記述ファイル838中のプロトコルおよびシステム記述に従ってこの
メッセージを検査する。このメッセージは受諾または拒絶される。
【0149】 エラーが拒絶された場合には、1206で、ARS828はデバイスオブジェ
クト830にエラーコードを送信し、1208でデバイスオブジェクトは同じエ
ラーコードをシステム制御オブジェクトに渡す。1210で、関連するエラーコ
ードを含むイベントが、クライアントアプリケーション810に通信される。
【0150】 メッセージが警告レベルおよびシステム記述ファイルに従うテストに合格した
と仮定すると、ARS828はテキストフォーマットのメッセージを16進数に
翻訳し、1212でこれをメッセージ制御826に渡す。上記のメッセージの例
について16進数フォーマットは、0x1c8、0x190、0x0e、0x4
2、0x90、0xc3、0x75となり、ここで、最初の2つのコードは送信
元アドレスおよび送信先アドレスである。1214で、メッセージ制御オブジェ
クト826は、メッセージをネットワークトランシーバオブジェクト816に渡
し、1216でネットワークトランシーバオブジェクトがこれをOPBオブジェ
クト814に渡す。ここで、OPBオブジェクト814がOPBドライバを使用
してメッセージをインタフェースボードおよびD2B Opticalネットワ
ークに送信する。
【0151】 1218で、送信結果が、ネットワークトランシーバオブジェクトからメッセ
ージ制御オブジェクト826に戻される。ここから、送信結果は、ステップ12
20から1224で、ARS828およびデバイスオブジェクト830を介して
、システム制御832に渡される。最後に、1226で、システム制御オブジェ
クト832が、伝送情報および完全なメッセージの表現を含むイベントをクライ
アントアプリケーション810に送信する。
【0152】 当業者ならば、本発明の趣旨および範囲内で、上記実施形態の多くの変更形態
が可能であることを容易に理解するであろう。さらに、記載した開発システムお
よびその重要な任意の機能を、D2B Opticalシステム以外のプロトコ
ルで使用するために、またConan製品の範囲外のトランシーバ構成要素に合
わせて、適合させることもできる。
【図面の簡単な説明】
次に、添付の図面に関連して、例示のみを目的として本発明の実施形態につい
て述べる。
【図1】 様々なデバイスが環状ネットワーク中で通信する範囲を含むローカル通信シス
テムを示すブロック概略図である。
【図2】 図1のシステム中で使用される、制御およびソースデータアーキテクチャを示
す図である。
【図3】 統合インタフェースを備えたステーションを示す図である。
【図4】 図1のインタフェースモジュールの1つを示す概略図である。
【図5】 既知のD2B Opticalフォーマットに従って伝送される、デジタル信
号のフレーム構造を示す図である。
【図6】 図1のシステム中の装置間で伝送される、デジタル信号のフレーム構造を示す
図である。
【図7】 図6のフレーム構造内で伝達される制御フレームの構造を示す図である。
【図8】 図1のネットワークと互換性のある装置を開発する際に使用される、製品開発
およびテストツールの、ソフトウェアおよびハードウェアエレメントを示す図で
ある。
【図9】 開発中の製品のエミュレーションにおいて、開発ツールの使用を示す図である
【図10】 図1のネットワークとの互換性を検証するために、いくつかのデバイスをテス
トする際に、製品開発ツールの使用を示す図である。
【図11】 開発システムを初期化する際の様々な構成要素モジュールの動作を示す図であ
る。
【図12】 製品のエミュレーションの一部として、メッセージを送信する際の構成要素モ
ジュールの動作を示す図である。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),DE,GB,J P,US (71)出願人 Stirling House, Sti rling Road The Surr ey Research Park Gu ildford, Surrey GU2 5RF England (72)発明者 スクミドット マークス ジョアンヌズ イギリス ケイティー6 4ビーエックス サリー サービション グローブ ロー ド 15 Fターム(参考) 5B014 EA06 EB03 FA05 FB03 GD05 GD22 GD23 GD49 HC05 5B042 GA12 GB09 GC08 GC12 HH07 HH12 5B089 GA21 JB03 JB05 JB07 KA12 KB09 KC15 KC28 KC47 KF04 MC15 5K034 CC02 CC05 DD03 KK27 TT02 5K035 BB03 EE13 HH02 HH07 【要約の続き】 ケーションプロトコルに加えて、ツールは、正常コマン ドの範囲をさらに限定するために、ネットワーク上に存 在するまたはエミュレートされるデバイスの特定の数お よび型を規定するネットワークシステムの記述を記憶す る。

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 開発中の特定の製品をエミュレートするために機能している
    通信ネットワークに接続されたハードウェアネットワークインタフェースととも
    に使用されるコンピュータに実装された構成要素を含むシステムであって、前記
    構成要素が、クライアントプログラムとネットワーク上の他のデバイスにメッセ
    ージを送信するためのネットワークインタフェースとの間のインタフェースを提
    供し、プロトコルデータベースを含み、ネットワーク上に送信するよう命令され
    ている違法メッセージを検出するために、前記構成要素のうちの少なくとも1つ
    がクライアントプログラムから命令されたメッセージをプロトコルデータベース
    を参照することによって処理することを特徴とするシステム。
  2. 【請求項2】 請求項1に記載のシステムであって、前記プロトコルデータ
    ベースにより、ネットワーク中のデバイスの機能に特有のアプリケーションレベ
    ルのプロトコルを規定し検査することを特徴とするシステム。
  3. 【請求項3】 請求項2に記載のシステムであって、前記プロトコルデータ
    ベースにより、エミュレートされているデバイスの特定の型と矛盾するためにネ
    ットワーク中の様々なデバイスの様々な機能に特有の様々なアプリケーションレ
    ベルのプロトコルを規定し検査することを特徴とするシステム。
  4. 【請求項4】 請求項3に記載のシステムであって、完成した製品としてま
    たはエミュレーションによってネットワーク中に存在する他のデバイスの型また
    は機能を特定するシステム記述をさらに含み、ネットワーク上に送信するよう命
    令されている不適切なメッセージを検出するために前記構成要素の少なくとも1
    つがクライアントから命令されたメッセージを前記システム記述を参照して処理
    することを特徴とするシステム。
  5. 【請求項5】 請求項1ないし4のいずれかに記載のシステムであって、ネ
    ットワーク中の複数のステーション間の拡張された協調動作が所望の結果を達成
    するために必要である場合に、プロトコルが少なくとも1つの挙動のシーケンス
    を規定することを特徴とするシステム。
  6. 【請求項6】 請求項5に記載のシステムであって、特定のデバイスの機能
    とは無関係に、前記シーケンスが、ネットワーク管理のための少なくとも1つの
    シーケンスを含むことを特徴とするシステム。
  7. 【請求項7】 請求項5または6に記載のシステムであって、前記シーケン
    スが、前記メッセージに加えてネットワークを介して伝達されるデータストリー
    ムの経路指定を確立するための少なくとも1つの挙動シーケンスを含むことを特
    徴とするシステム。
  8. 【請求項8】 請求項5、6、または7に記載のシステムであって、クライ
    アントプログラムとの関与なしに、前記挙動シーケンスを自動的に実装する特定
    の構成要素を含むことを特徴とするシステム。
  9. 【請求項9】 請求項8に記載のシステムであって、ネットワークから受信
    した全てのメッセージが各特定の構成要素に渡され、さらにその特定の構成要素
    により実装される挙動シーケンスと関連がない場合にはクライアントプログラム
    に渡されることを特徴とするシステム。
  10. 【請求項10】 請求項1ないし9のいずれかに記載のシステムであって、
    前記構成要素が、所定の規則に従って互いにメッセージを交換する、プログラミ
    ングオブジェクトの形式であることを特徴とするシステム。
  11. 【請求項11】 請求項1ないし10のいずれかに記載のシステムであって
    、ある構成要素が同一のコンピュータハードウェア内で動作する様々なアプリケ
    ーションの間で共用することができ、他の構成要素がひとつの動作するアプリケ
    ーションによって予約されることを特徴とするシステム。
  12. 【請求項12】 請求項11に記載のシステムであって、共用される構成要
    素が、特定のネットワークインタフェースハードウェアとのインタフェースを提
    供する構成要素を含むことができることを特徴とするシステム。
  13. 【請求項13】 請求項1ないし12のいずれかに記載のシステムであって
    、検出された違法メッセージを送信するか阻止するかを決定するために動作レベ
    ルを設定することができることを特徴とするシステム。
  14. 【請求項14】 請求項1ないし13のいずれかに記載のシステムであって
    、検出された違法メッセージを報告するか否か、例えばクライアントプログラム
    に報告するか否か、決定するために報告レベルを設定することができることを特
    徴とするシステム。
JP2000512312A 1997-09-12 1998-09-14 通信システム用開発およびテストツール Pending JP2003526223A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GBGB9719403.9A GB9719403D0 (en) 1997-09-12 1997-09-12 Development tools for communication system
GB9719403.9 1997-09-12
GB9719412.0 1997-09-12
GBGB9719412.0A GB9719412D0 (en) 1997-09-12 1997-09-12 Development Tools for Communication System
PCT/GB1998/002721 WO1999014891A2 (en) 1997-09-12 1998-09-14 Development and test tools for communication system

Publications (1)

Publication Number Publication Date
JP2003526223A true JP2003526223A (ja) 2003-09-02

Family

ID=26312233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000512312A Pending JP2003526223A (ja) 1997-09-12 1998-09-14 通信システム用開発およびテストツール

Country Status (3)

Country Link
EP (1) EP1013033A2 (ja)
JP (1) JP2003526223A (ja)
WO (1) WO1999014891A2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007502058A (ja) * 2003-08-08 2007-02-01 クリプサル インテグレイテッド システムズ ピーティーワイ リミテッド 無線ネットワーク通信システム及びプロトコル
JP2012157056A (ja) * 2004-06-04 2012-08-16 Ixia プロトコルエミュレータ
JP2012181734A (ja) * 2011-03-02 2012-09-20 Ricoh Co Ltd プロセッサ装置のためのデバッグ回路、プロセッサ装置及びデバッグシステム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651191B1 (en) * 2000-09-12 2003-11-18 Hewlett-Packard Development Company, L.P. Testing of policy prior to deployment in a policy-based network management system
US7054802B2 (en) * 2000-10-20 2006-05-30 Quickturn Design Systems, Inc. Hardware-assisted design verification system using a packet-based protocol logic synthesized for efficient data loading and unloading
EP1265415A1 (de) * 2001-06-07 2002-12-11 Abb Research Ltd. Überwachungsmonitor für ein Netzwerk und Verfahren zum Netzwerkmonitoring
US6826608B1 (en) 2002-03-01 2004-11-30 Networks Associates Technology, Inc. System, method and computer program product for translating SNMP (ASN.1) protocol decodes
DE10351019A1 (de) * 2003-10-31 2005-06-30 P21 - Power For The 21St Century Gmbh Verfahren zum Steuern und/oder Regeln wenigstens eines Aggregats in einem technischen System sowie technisches System
US7158613B2 (en) * 2004-01-16 2007-01-02 Futurewei Technologies, Inc. Method and system for enabling circuit testing services on a multi-service provisioning platform
US7467078B2 (en) 2004-07-16 2008-12-16 Agilent Technologies Inc. Portable distributed application framework
US8792358B2 (en) 2006-04-27 2014-07-29 Futurewei Technologies, Inc. Content aware transport layer multicast

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793954A (en) * 1995-12-20 1998-08-11 Nb Networks System and method for general purpose network analysis
US5822520A (en) * 1995-12-26 1998-10-13 Sun Microsystems, Inc. Method and apparatus for building network test packets

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007502058A (ja) * 2003-08-08 2007-02-01 クリプサル インテグレイテッド システムズ ピーティーワイ リミテッド 無線ネットワーク通信システム及びプロトコル
US8000307B2 (en) 2003-08-08 2011-08-16 Clipsal Integrated Systems Pty Ltd Radio network communication system and protocol
US8724614B2 (en) 2003-08-08 2014-05-13 Clipsal Integrated Systems Pty Ltd Radio network communication system and protocol
JP2012157056A (ja) * 2004-06-04 2012-08-16 Ixia プロトコルエミュレータ
JP2012181734A (ja) * 2011-03-02 2012-09-20 Ricoh Co Ltd プロセッサ装置のためのデバッグ回路、プロセッサ装置及びデバッグシステム

Also Published As

Publication number Publication date
WO1999014891A2 (en) 1999-03-25
EP1013033A2 (en) 2000-06-28
WO1999014891A3 (en) 1999-07-08

Similar Documents

Publication Publication Date Title
US6775283B1 (en) Passing vlan information through descriptors
US6272551B1 (en) Network adapter for transmitting network packets between a host device and a power line network
US6522654B1 (en) Method for hosting the internet protocol suite on the IEEE-1394 high speed serial bus
US6373822B1 (en) Data network protocol conformance test system
CA2208135C (en) Method, computer program product, and data structure for validating creation of and routing messages to file objects
JP3706145B2 (ja) Unix開放型システム間相互接続層のテスト
US5847955A (en) System and method for controlling an instrumentation system
US6643714B1 (en) Modification and use of configuration memory used during operation of a serial bus
JP7041285B2 (ja) Fpgaと通信するホスト、fpgaと通信する方法、および通信システム
US20060037008A1 (en) Implementation of packet-based communications in a reconfigurable hardware element
JP2003526223A (ja) 通信システム用開発およびテストツール
CN114089713A (zh) 一种基于uds的通信方法、ecu及上位机
US20010015984A1 (en) Creation of a protocol stack
US6823408B2 (en) Electronic equipment, and method for controlling state of physical layer circuit therefor
US5812767A (en) System for user registering an address resolution routine to provide address resolution procedure which is used by data link provider interface for resolving address conflicts
KR101725155B1 (ko) 네트워크 데이터베이스로부터 분석한 정보를 소프트웨어 구조 설계로 변환하는 방법
Cisco Configuring CSNA and CMPC
JPH07297884A (ja) 通信管理方法
JP2568374B2 (ja) ネットワーキングコード用シミュレーション装置
EP1234235B1 (en) Method and apparatus for remotely debugging computer software over a serial bus
JP2002198990A (ja) データ通信方式およびデータ通信用ic
JPH06332981A (ja) 集積回路の構成を決定するための方法および装置
Poutiainen Protocol Inspection Toolkit Design for Serial Communication Protocols
US7756941B2 (en) Communication system having dominating node and dominated node
CN117319255A (zh) 网卡带外管理功能的测试方法、装置、介质以及终端