JPH0316455A - メツセージ・フオーマツト・エラーのレポートを提供する方法とシステム - Google Patents

メツセージ・フオーマツト・エラーのレポートを提供する方法とシステム

Info

Publication number
JPH0316455A
JPH0316455A JP2103247A JP10324790A JPH0316455A JP H0316455 A JPH0316455 A JP H0316455A JP 2103247 A JP2103247 A JP 2103247A JP 10324790 A JP10324790 A JP 10324790A JP H0316455 A JPH0316455 A JP H0316455A
Authority
JP
Japan
Prior art keywords
message
error
format
report
detected
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
JP2103247A
Other languages
English (en)
Inventor
James Currie Ashfield
ジエームズ・カリイ・アシフイールド
Donna Beatty Cybrynski
ドンナ・ベテイ・サイブランスキイ
Christopher Paul Ballard
クリストフアー・ポール・バラード
Jeffrey Alan Raynes
ジエフリイ・アレン・レインズ
Aaron Thomas Sultan
アーロン・トーマス・サルタン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0316455A publication Critical patent/JPH0316455A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Computer And Data Communications (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A,産業上の利用分野 本発明はデータ通信ネットワークに関し,特に、かかる
ネットワークを通して送られるメッセージにフォーマッ
ト・エラーがあるかと゛うかを検査し、検査されたメッ
セージのフォーマットに依存せずにフォーマット・エラ
ーをレポートするシステムに関する. B.従来の技術 通信ネットワークは,説明の便宜を考えれば,一般には
通信リンクを介して相互に接続されたネットワーク・ノ
ードとエンド・ノードの集まりと定義できる.ネットワ
ーク・ノードは,隣接するノードとの間のメッセージ・
ルーティング,2つのノード間で転送されるメッセージ
のルートの選択、接続されたエンド・ノードに対するデ
ィレクトリ・サービスの提供など,ネットワークに特定
の機能を提供する、データ処理システムとみなすことが
できる.ノード間のリンクは,従来のケーブルなどの永
続的な通信リンクや、必要な場合にのみ使用可能な状態
となる一時リンクなどである.ダイアル呼び出し式の電
話線はこのような一時リンクの一例である.エンド・ノ
ードの例には、ルーティング,ルートの選択、ディレク
トリ・サービスなどをネットワーク内の他のノードに提
供することのないディスプレイ端末、インテリジェント
・ワークステーション、プリンタなどの装置がある.ネ
ットワーク・ノード、エンド・ノードおよびノード間の
リンクは、ネットワーク資源と総称される.ネットワー
ク内の各種のノードとリンクの物理的な構成および特性
は、ネットワークのトポロジと呼ばれる。
上記の用語および時々用いられる他の用語については、
一般に入手できる書籍など多くの出版物に詳しく説明さ
れている。たとえば,(1)rシステムズ・ネットワー
ク・アーキテクチャ、概念と製品( Systems 
 Network  ArchitectureCon
cepts and Products) .  I 
B Mパブリケーション( IBM Publicat
ion  G C 3 0 − 3 0 72−3).
1986年、(2)シスデムズ・ネットワーク・アーキ
テクチャ概説書( SystemsNetwork A
rchitecture. Technical Ov
erview) .IBMパブリケーション(IBM 
Publication G C30−3073−2)
.1986年9月,(3)システムズ・ネットワーク・
アーキテクチャ,I5Uタイプ6.2トランザクション
・プログラマーズ解説書( Systems Netw
ork Architecture.Transact
ion Prograa+mer s Referen
ce Manualfor LU Type 6. 2
) .  I BMパブリケーション( IB&I P
ublication G C 3 0 − 3 0 
8 4 − 2 ) .1985年11月、(4)シス
テムズーネットワーク・アーキテクチャ、フォーマット
/プロトコル解説書−−LUタイプ6.2アーキテクチ
ャーロジック(Systems Network Ar
chitectureFormat and Prot
ocol Reference ManualArch
itecture Logic for LU Typ
e 6 . 2 ) . IBMパブリケーション( 
IBM Publication  S C30−32
69−3).1985年12月などがある. 前記の出版物には,以下の説明で用いる用語について詳
しい説明がある.ただし、このような出版物は.本発明
の理解に欠かせないちのではない。
システムズ・ネットワーク・アーキテクチャ(SNA)
に準拠するコンピュータ・ネットワークにおいては、デ
ータは.ノード間をメッセージの形で転送される.各メ
ッセージは通常,lM数のフィールドを含み,各フィー
ルドは特定のタイプのデータを含む.メッセージ内の各
フィールドの定義はそれ自体で決まるのが普通である.
すなわち,フィールドまたはフィールドのグループの前
には、G D S ( Generalized Da
ta Stream ) コードポイントと呼ばれる2
バイトの識別子が置かれる.GDSコードポイントは,
前記のマニュアルなどフォーマット/プロトコル解説書
に記載されている. フィールドやフィールドのグループは.GDSフォーマ
ットにおいては、IlII造と呼ばれる.1造は、認識
されたヘッダ・タイプ(後述)によって識別メッセージ
要素の集まりであり、階層的位置によって分類される.
この方法により、構造の始まりと終わりが決定され,あ
るヘッダ・タイプが構造の識別に用いられる. 階層的位置を考慮した場合,ある構造は,親,子,原子
のいずれかである.親構造は、他の(子の)構造を含む
任意の構造である.子構造は、別の(親)構造に含まれ
る任意の構造である。原子構造は、それ自身のヘッダと
、これに続くデータしか含まない任意の構造である.こ
のような定義から分かるように、ある特定の、原子では
ない構造は,親構造である(これに含まれる1個以上の
子構造に対して)と同時に子構造でもあり得る(これを
含む親構造に対して)。
SNAメッセージに関しては、ある特定の親子関係が定
義されなければならない。この関係は、子構造が必ず親
構造内に現れる順序(存在する場合)に関連し,所定の
親構造内で許容されるタイプが同一かまたは異なる,子
の個散にも関連する。
親横道は、順序つけされた子構造または順序づけされて
いない子構造と定義される.順序づけされた子構造は,
必ず,所定の順序で親構造の中に生じる.順序づけされ
ていない子構造は、任意の順序で親構造の中に生じ得る
. 親構造の中の子構造の個数は、所定の最小値から許容さ
れた最大値にまで及ぶ.所定の親構造内で許容された、
タイプの異なる子構造の最小個数と最大個数は、通常の
方法で指定される.同様に,ある特定の許容できる子横
造の最小数と最大数も、通常の方法で指定される. 構造の始まりと終わりを決定する方法はいくつかある.
構造は,長さが限定されているか、限定された、もしく
は暗示された境界をちつ.長さが限定された構造は通常
、ヘッダと、これに続くデータから横成され、子構造を
含むことがある.ヘッダは、L丁(長さとタイプ)ヘッ
ダまたはLLIO(長さとGDSコードポイント)ヘッ
ダと分類される。LTヘッダは長さが2バイトである.
LLIDは4バイトの長さである.いずれのタイプのヘ
ッダも、長さバイトには、ヘッダ自体の長さと、ヘッダ
に続くデータ(存在する場合)の長さが含まれる.ここ
で注意しておきたいのは.LLIDヘッダのID部はG
DSコードポイントであり.GDSコードポイントは、
コンピュータ・システムにおいては一意の値であるとい
うことである.一方.LTヘッダのT部は、必ず、それ
が生じる親横造内でのみ一意の値をもつ.異なる親構造
内で生じる関連のない子構造には、同じT値を用いるこ
とができる。
長さが限られたLLID横造は,セグメントに分けられ
る場合と分けられない場合がある.セグメントに分けら
れる構造の場合LLバイトの最上位ビットは最後のセグ
メントを示す.セグメントに分けられる構造のIDバイ
トは、最初のセグメントにのみ存在する. 原子構造は常に長さが限定される.親構造は、長さが限
定されているか,境界が定められているか,または暗示
されている.境界が定められている親横造は、長さが限
られた最初と最後の子構造によって決まる始まりと終わ
りとをもった構造である.この最初と最後の子構造は、
それぞれプレフィクス・デリミッタ(接頭句切り文字)
,サフィクス・デリミッタ(接尾句切り文字)と呼ばれ
る.子のデリミッタは、LTヘツタまたはLLIDヘッ
ダだけで構成される. 暗示された親構造は、その境界が、ある子構造の存在と
順序によって暗示されている構造である.暗示された親
構造は,それ自身のヘッダも、子のプレフィクス・デリ
ミッタまたはサフィクス・デリミッタも持たない. 登録されたGDSコードポイントを用いることによって
、各種のメッセージ・フォーマットを無制限に設定する
ことができる.各フ才−マットはそれ自体が、生成可能
な異なるメッセージの個数に関して、かなりの多様性を
示す. コンピュータ・ネットワークにおいて、少なくとも数個
のノードによって実行される機能には、受信されたメッ
セージの構造が正しいかどうか、すむわち,フィールド
が欠けているといったフォーマット・エラー、順序が正
しくないフィールド、長すぎるフィールドなどを判定す
るテストがある. 発見されたエラーをレポートする場合,エラーがメッセ
ージのどの部分で発見されたかをレポートするだけでは
不充分である.メッセージは,ネットワークのオペレー
タが相当な時間と労力をかけて,このような一般的な方
法でレポートされたエラーを見つけなければならないほ
ど、長くもなり複雑にもなる.エラー・レポートをネッ
トワーク・オペレータにとって便利なものにするために
は、ある特定のメッセージの中の特定のフィールドが、
ある特定のフォーマットの仕様にどのように違反してい
るかを、レポート自体が明示しなければならない. フォーマット・エラーをレポートする従来の方法は、エ
ラーのタイプを、関連する特定のフォーマットやフィー
ルドと明確に区別したものではない.これまでのメッセ
ージ・フォーマットは通常,多数の定義済みエラー・コ
ードを含み、ネットワーク・オペレータが各コードを見
て、ある特定のメッセージの中の特定のフィールドを調
べる.代表的なエラーとして、  XXXフィールドが
ありません”、 XXXフィールドが多すぎます一など
がある.普通、定義済みエラー・コードの個数は、フィ
ールドの個数をはるかに上回る.これは、各フィールド
が様々なエラー状態に関係し得るからである.これまで
の方法でエラーのテストとレポートを最適化するために
は、メッセージ内に考えられるフィールドのいずれにつ
いても起こる可能性のあるあらゆるエラー状態に対応す
るエラー・コードが必要になる.定義しなければならな
いエラー状態の数はたちまち管理不能な値に達すること
がわかる. 可能なメッセージ・フォーマットがすべてシステム・デ
ザイナに知らされ,各フォーマットに固有のロジックを
テストするフォーマットを設定する機会がデザイナに与
えられたとしても、ネットワークのノードが更新される
時間は異なることがある.更新されたプログラムが,あ
るノードに与えられて、それまでの1つ以上のメッセー
ジに新しいフィールドが追加された場合、別のノードで
実行される”下位”プログラムは、更新されたノードか
ら受信されたメッセージ内の新しいフィールドを認識で
きないことがある.認識されなかったフィールドを“下
位”ノードがいつもフォーマット・エラーとレポートす
るのは簡単であるが、このような応答が常に望ましいと
は限らない.認識されなかったフィールドは、テストす
る側のノードにとって重要でないかもしれない.かかる
フィールドをどのような場合にもフォーマット・エラー
とレポートすれば、メッセージを必要以上に拒否するこ
とになり、システム性能が落ちる原因になる. C.発明が解決しようとする課題 メッセージのフォーマット・エラーをテストするという
問題に答える際、まず考えられるのは、システム・デザ
イナとユーザが使用できるメッセージを厳密に制限する
ことであろう.この解決法は分かりやすいが,欠点もま
た明らかである.すなわち、その場合,システム・デザ
イナは、所定のタスクを効率よく実行できるようなメッ
セージを自由に設定できなくなってしまう.D.課題を
解決するための手段 本発明のシステムは、ある特定のメッセージ・フォーマ
ットおよびある特定のメッセージの内容に依存しないよ
うに、フォーマット・エラーの検出とレポートを可能に
するものである.本発明は,基本的には3つの要素に分
けられる.(1)フォーマット内のフィールド相互の様
々な関係を制限しながらも、GDS変数を無制限に構成
できる階層的フォーマットの設定規則、(2)任意のフ
ォーマットの仕様を表す形式テーブル方式( form
al tabular technique) .およ
び(3)フォーマットに依存しないエラー・コードと,
ある特定のフォーマット、メッセージ、および関連する
コード化FR造を識別する構造レポートの両方を含む汎
用レポート構造である.エラーのタイプとそのエラーの
階層上の位置が、同じエラー・メッセージの中で個別に
レポートされる.本発明は、データ・メッセージが階層
構造を6つデータ通信ネットワーク内の1個以上のノー
ドにおいて実施される.受信されたメッセージはそれぞ
れ識別される.識別されたメッセージにのみ対応する(
前に格納された)テーブルが検索される.このテーブル
は、メッセージの階層を定義し、メッセージに含まれる
ことがあり,各横造について許容できるパラメータを含
む.メッセージは,汎用パーシング(parsing 
)ロジックと検索されたテーブルとによって解析されて
、メッセージに含まれる各構造が識別され、識別された
構造のパラメータが、検索されたテーブルに示されたフ
ォーマット定義を満足するがどうががrI1定される。
エラーが検出されるとエラー・レポートが生成される.
エラー・レポートは、検出されたエラーのタイプを示す
、フォーマットに依存しないエラー・コードと、エラー
が検出された構造の階層を示す階層レポートとを含む。
E.実施例 第1図は、簡単なデータ通信ネットワークを示す。3個
のネットワーク・ノード10.12、l4は、通信’J
 :/ ’y 1 G、l8、2o、22.24を介し
て相互に接続される.先にも述べたように、ネットワー
ク・ノードは,26、28.30などのエンド・ノード
側のユーザがデータ・メッセージの形で情報を交換でき
るように,各種のサービスを提供する. 第2図は、かなり簡略化したデータ・メッセージである
.このメッセージは1次親横造32である.1次親構造
が、長さを限定された構造である場合、この構造には,
2バイトのLTヘツタまたは4バイトのLLIDヘッダ
34も含まれる.その場合、LLIDヘッダには、該メ
ッセージに対しで登録されたGDSコードポイントが含
まれる.l次親構造には、図のとおり,3個の子構造3
6、38、40が含まれる. 子横造36は、その拡大図からわかるように、3つの子
構造44、46.48から構成される.子横造36には
、1次親構造32と同じく、長さが限られた構造である
場合には、LTまたはLLIDへッダ42が含まれる.
構造36は,1次親購造32の子であり、子構造44、
46、48の親でもある.H4造44は、その拡大図か
らわかるように、原子構造であり,これに他の構造は含
まれない。どのような原子構造も、長さが限定されてお
り、必ず、データ・フィールド52とともにLTまたは
LLIDヘッダ50のいずれかを含む. 本発明を実施する際,親構造と子構造との間には一定の
関係がなければならない.LLIDの親構造の内容は、
すべてLLrDの子かまたはすべてLTの子でなければ
ならない.すなわち、LL■DやLTという兄弟を組み
合わせることはできない.LTの親構造には、LLID
の子構造は含まれない.LT構造では、フォーマット内
にLLIDの先祖がなければならない.暗示された親の
子であって認識されなかった子が許容されるのは、3つ
の条件が成立する場合だけである.第1に、該構造の子
は、中間ノードにおいて変更可能であってはならない.
第2に、子が受信される順序が維持されなければならな
い.第3に、認識されなかった構造は、暗示された親構
造に必要な最後の子の前になければならない. 本発明では、各メッセージ・フォーマットは,第3図に
示したタイプの「フォーマット定義テーブルJに定義す
る必要がある.これはSNAで採用されているディスト
リビューション・トランスポート・メッセージ・ユニッ
ト(ロistributionTransport M
essage Unit)をテーブル上で定義したちの
である.「フォーマット定義テーブル」は、実際にはシ
ステム・ブログ.ラマが使用できるハードコピーすなわ
ち印刷された形式と、ネットワークの各ノードに格納さ
れ,フォーマット・エラー検査機能を実行するソフトコ
ビーすなわち機械可読形式との2形式がある.以下の説
明は,該テーブルの印刷形式を対象にしている.印刷形
式とノードに格納される機械可読形式との間に大きな違
いがある場合は、説明の中で注記する.テーブルの各列
は、第lカラム54の「構造名」によって識別される単
一構造を定義する.テーブル中の各種の構造相互の階層
関係は,様々な「横造名』を字下げすることによって示
している.字下げが同じ「構造名」の子構造は兄弟であ
る.たとえば横造DIST  FLAGS  5  6
が,構造TRANSPORT  COMMAND58の
子であることは、この2つの構造名の字下げが異なるこ
とから分かる.構造56は同時に、数ある中でも特に、
構造60.62、64、66、68.70および72の
兄弟である.テーブルのカラム74は、テーブルを印刷
した場合にそのコピーに記入される「構造参照符号」で
ある.「構造参照符号」は,テーブルに記載された各構
造について詳しい情報を提供するフォーマット/プロト
コル解説書やトランザクション・プログラマーズ解説書
の索引として使用できる.r t* ’A I照符号」
は、システム・ユーザの便宜を考えて追加されるもので
,本発明の理解に欠かせないものではなく,また、ネッ
トワーク・ノードに格納されたテーブルのWaF4可読
バージョンに加える必要もない. テーブルのカラム76は、フォーマット内の各構造の「
横造クラスJを指示する.前述のように、構造は,長さ
が限定されたLLIDm造,長さが限定されたLT構造
、境界が定められたLL10 (Del−ID)構造,
境界が定められたLT (De l−LT)構造、暗示
されたLLID(Imp−ID)構造、および暗示され
たLT(Imp−T)構造とに分類される.テーブル中
、長さが限定された構造が採られるのは.IDまたはT
の値だけが指定された場合である.境界が定められた構
造と暗示された横造だけはそのように明示している. 境界が定められたものと分類された構造には、境界が定
められた構造のプレフィクス(pfx)およびサフィク
ス(sfx)として機能し、長さが限定された子が少な
くとも2個必要である.符号“/ p f x”は,長
さが限定された子構造を指し,この構造はその親である
境界が定められた構造のプレフィクスとして機能する。
符号“/ s fX”は,長さが限定された子構造を示
し、この構造はサフィクスとして機能する. 暗示された構造では、識別された子が、子のシーケンス
の始まりを識別するために用いられる.符号“/ i 
d c”は,長さが限定された構造を示し、この構造は
、その親である暗示された構造の識別子として機能する
. ある特定の構造のセグメント化が可能な場合、「構造ク
ラス」のカラムに符号“/ s e g” カ付けられ
る。
テーブルのカラム78は、ヘッダに現れるID(GDS
コードポイント)またはTcタイプ〕の値を16進数で
表したものである.境界が定められた親構造がそのプレ
フィクスで識別されることを示すために、符号“pfx
“を用いた.また、暗示された構造がその子のうちの1
つによって識別されることを示すために、識別された子
の符号として−idc”を用いた. テーブルのカラム80は、各構造に適した最大長と最小
長を指示する.認識されなかった子を許容する横造では
、最大長の値は、このような未定義の構造の可能性を想
定したものである.カラム82は、定R済みのフォーマ
ットに所定の構造が発生する回政の最大値と最小値を示
す.指示値“l−n”は,構造が少なくとも1回は発生
しなければならないが、 n”回を超えてはいけないこ
とを示す.指示値“0−n“は、構造は全くなくて6よ
いが、存在する場合は“n”回を超えてはならないこと
を示す.指定値“〉n″は単に、構造の最大発生回数が
定義されていないことを示す.カラム82が単数(通常
はl)のとき、構造は,その数だけ発生しなければなら
ない. このフォーマット定義テーブルは親構造とその子の構造
との一定の関係を、複数のサブ力ラムに見出しを付けた
箇所に示すこともできる1認識されなかった子構造を許
容する構造は.”TJnrec”サブ力ラム86に゜゜
Y”と示した.かかる子構造を許容しない構造は“N”
と示した.このような項目のない箇所は、該構造の指定
ができないことを示す.これは原子構造すべてに当ては
まる.この種の構造は定義上,子構造を内包できないか
らである. サブ力ラム88は、親構造にのみ適用できる「順序」カ
ラムである.このサブカラムの値“Y”は、その親の子
構造が定義済みの順序で発生しなければならないことを
示す.値“N“は、子構造が、定義された順序以外の順
序で発生し得ることを示す.いずれの値もない箇所は、
該構造の指定ができないことを示す. サブ力ラム90は,所定の親構造に発生し得る異なる子
構造の最大数と最小数を指示する「個数J  (Num
)カラムである.最大数は、認識された子構造と認識さ
れなかった子構造の両方に対応する.その場合、後者は
親構造内に許容される子構造である. サブカラム92は,2個以上の親構造に共通な子構造を
記述するときに用いられるサブテーブルへのポインタで
ある.テーブルは、サブテーブルを用いることで、冗長
な項目を最小限にして印刷することができる.サブテー
ブルのカラムは、ネットワーク・ノードに格納されたテ
ーブルの機械可読バージョンには追加されないであろう
.先に説明したようなフォーマット定義テーブルの機械
可読バージョンは、ネットワーク・ノードにおいて汎用
パーシング・ロジックと併用される.これによって,受
信されたメッセージが解析され、フォーマット・エラー
の有無が検査される. 第4図は,フォーマット・エラー検査機能を実行する際
にネットワーク・ノードで実行されるステップを比較的
高度なレベルでぶす流れ図である.フォーマット・テス
トを実行するノードは必ず、1次親構造のIDまたはG
DSコードポイントを用いることによって.メッセージ
を受信し識別する(ブロック94).ノードは次に,識
別されたメッセージの磯城可読定義(テーブル)が存在
するかどうかを調べる(ブロック96).該ノードにテ
ーブルが存在しない場合(ブロック98)、“メッセー
ジが識別できない”というエラー・コードが生成される
。このほかのフォーマット検査は実行されない. ブロック96が実行された結果、識別されたメッセージ
に対するテーブルが格納されていることが分かれば、そ
のテーブルがブロック100において検索される.テー
ブル内の情報が次に、汎用パーシングーロジックと併用
されることによって,メッセージの各構造が識別・解析
される(ブロック102).このメッセージ解析の一部
として、メッセージの各構造のパラメータが、テーブル
によって指定された限度内であるかどうかが判定される
(ブロック1043.フォーマット・エラーが検出され
た場合,フォーマット・エラー・レポートが生成される
(ブロックl06)フォーマット・エラー・レポートは
,エラーのタイプを表すエラー・コードを生成する.ま
た、エラーが検出された構造の階層も示す.このほかの
エラー・レポートの内容については後述する.あるメッ
セージについてフォーマット・エラーが検出されレポー
トされれば,フォーマット検査はそれ以上実行されない
.他にフォーマット・エラーが存在するとしても,その
メッセージを正しく使用することはできないからである
. 現在の構造にフォーマット・エラーが検出されなかった
場合は,他にテストすべき構造があるかどうかが調べら
れる(ブロック108).ここでエラーが存在しないと
すると、すべての構造の検査が終わるまで各構造に対し
て上記のステップが繰り返される.その後、フォーマッ
ト・エラー検査ルーチンの実行が終了する. 第5A図、第5B図および第5C図はともに、受信され
たメッセージを解析することによって、個々の構造につ
いてフォーマット・エラー検査が実行できるようにする
汎用パーシング/エラー検査ロジックを示す. パースされる構造は、スタックに積まれ(ブロック11
0).格納されたフォーマット定義テーブルによって構
造のタイプが判定される(ブロック112).該構造が
暗示された構造であれば(したがってヘッダを持たない
場合)、その最初の子構造がスタックに積まれる(ブロ
ックIt4).該構造が境界が定められたものであれば
,フォーマット定義テーブルが調べられ(ブロック11
6).格納されたID/T値が、受信されたメッセージ
のI D/T値と一致するかどうかが判定される.一致
する場合は,境界が定められた構造の最初の子構造がス
タックに積まれる.ブロック116の実行によって,該
構造の実際のT D/T値と定義済みのI D/T値が
一致しないことが分かると、LSA (LAST  S
TRUCTURE  ACTION)変数がNOT  
FOUND状態にセットされる(ブロック118).N
OT  FOUND状態によってフォーマット・エラー
・レポートが生成されるかどうかは、メッセージのテー
ブル上の定義による.その時点でフォーマット・エラー
が検出されていなければ、次の構造を検査するために最
上位の構造がスタックから除外される(ブロック120
).ブロック112の実行によって、現在の構造が長さ
を限定された構造であることが分かると、引き続き,受
信されたI D/T値とテーブルに格納されたI D/
T値が一致するかどうかが検査される.不一致が検出さ
れると、LSA変数がNOT  FOUNDにセットさ
れ(ブロックl24)、プロセスはブロック138に飛
ぶ.このプロセスの終わりの方でフォーマット・エラー
が存在するかどうかが調べられる. ブロック122で一致が検出されると、識別された構造
の長さがテーブルの値と比較され(ブロック123).
指定された長さ限度を超えているかどうかが調べられる
.長さ限度を超えている場合,フォーマットーエラー・
゜レポートが生成され(ブロック125).フォーマッ
ト・エラー検査は終了する.構造の長さが指定限度内で
あれば、現在の構造が原子構造であるかどうかが調べら
れる(ブロック126).現在の構造が原子構造ではな
いことが検出されると,すなわち,少なくとも子構造を
1個含むことが分かると、その構造の残りの長さが現在
の構造の長さだけ差し引かれ(ブロック128).次の
子構造がスタックに積まれる(ブロック130).この
新しい子構造に対して,ブロック112からスタートし
た論理ステップが繰り返される. ブロック126において、現在の構造が原子構造である
ことが分かると、その構造の内容が制御ブロックに移さ
れる(ブロック132).次に,データ・ストリーム・
ポインタがメッセージ内の次の構造に移されCブロック
134).その時点でIl御ブロックに入った原子横造
のLSA変数がFOUND状態にセットされて(ブロッ
ク138),横造が検出されたことが指示される.最上
位の横這は,スタックから除外され(ブロック138)
.その構造のスタックに何か残っているかどうかが検査
される(ブロックl40).何も残っていない場合、フ
ォーマット検査ルーチンの実行は終了する。
構造スタックに何か残っている場合,また,LSAすな
わち「最終構造活動」がOKであることが分かると(ブ
ロック142).最後に検出された子構造の発生回数が
増分され(ブロック144)、残りの構造の長さが最後
の子構造の長さだけ減分される(ブロック146)。
エラー検査ルーチンは、LSA変数がブロック142に
おいてFOUNDにセットされているかどうかとは無関
係に呼び出されて(ブロックl47)、構造に何らかの
フォーマット・エラーがあるかどうかが検査される.エ
ラー検査ルーチンの詳細は後述する.次に、構造内に他
の子が存在し得るかどうかが調べられる(ブロック1 
48).存在する可能性がある場合、次の子構造がスタ
ックに積まれ(ブロック150)ブロック112からス
タートしたステップが繰り返される.ブロック148の
検査で、他の子の存在する可能性がないことが分かると
、子またはヘッダが検出されているかどうかが判定され
る(ブロック152).何も検出されていない場合.L
S’A変数がN O T  F O [J N D状態
にセットされる(ブロック154).LSA変数は、子
またはヘッダが検出されていた場合には、FOUND状
態にセットされ(ブロック156).最上位の横這がス
タックから除外される(ブロック158).第6A図と
第6B図はと6に,ブロック147において呼ばれるエ
ラー検査ルーチン内で実行されるステップの例を示す.
このステップでは、構造パラメータが許容限度内にある
かどうかが検査される.ステップは、各構造について反
復される。
エラー検査ルーチンが反復されるとき,初めに現在のI
#I造が前に検出されたかどうかが調べられる(ブロッ
ク160).前に同じ構造が検出されていなかった場合
、所定の親構造に発生し得る異なる子構造の個数に対し
て何らかの上限がテーブルで指定されているかどうかを
判定する必要がある(ブロック162).上限が存在す
れば、“別の子−カウンタが増分され(ブロックl64
)、その計数が指定限度を超えるかどうかが検査される
(ブロック166).指定限度を超えている場合,フォ
ーマット検査の終了前に、エラー・レポートが生成され
る。
“別の子”のオペレーションが実行されると(l60な
いし1 68).子構造が現在の親構造内である特定の
順序で発生すべきかどうかが判定される(ブロックl8
0)。特定の順序が必要な場合、構造の順序が正しいか
どうかが検査される(ブロック182).現在の構造が
所定の順序に従っていない場合、エラー・レポートが生
成され(ブロック184).フォーマット検査は終了す
る. 順序検査が終了すると、解析済みのメッセージについて
,次に検査される構造が現在の構造の兄弟であるかどう
かが判定される.次の構造が兄弟であれば,ブロック1
60からスタートした処理がその兄弟に対して繰り返さ
れる.兄弟でない場合,次の横造は現在のvA構造とは
異なる親構造であるので、指示子はすべてリセットされ
る(ブロック188). 本発明を実施するシステムにおいて、フォーマット・エ
ラーは、汎用状態レポート・メッセージとしてレポート
される.この汎用状態のレポートによって,検出された
エラーのタイプとエラーが検出された場所とを区別する
ことができる.エラーの場所(エラーが検出された構造
)は、GDSコードポイントのコンテキストで識別され
る.エラーの場所は,ある特定の構造とそれに関係する
先祖のすべてのヘッダを識別することによって,またク
ラス、インスタンスおよび位置情報によって指示される
.エラーの場所の指示については、後述するフォーマッ
ト・エラー・レポートの具体例とあわせて詳述する. フォーマット・エラーのタイブ(まレポート・コードに
よって識別される.以下に,考えられるフォーマット・
エラー・レポート・コードを示す.このようなエラー・
コードは、エラーの場所シ t′)   一 弓.,′ア の・′指示とともに、どのようなフォーマット・エラー
でも正確に指・摘する. 0000 特定のコードが適用されない.000l 必
要な構造が存在しない. 0002 除外された構造が存在する.0003 反復
不可能な構造が何度も発生.0004 反復可能な構造
の発生回数が多すぎる. 0005 除外される場所に認識されなかった構造が存
在する. 0006 長さが指定範囲外.長さ演算が釣り合うとこ
ろで使用された. 0007 長さ例外.長さWi算が釣り合わないところ
で使用された. 0008 必要な構造の組み合わせが存在しない. 0009 除外された構造の組み合わせが存在する. 000A 必要な構造とデータ値の組み合わせが存在し
ない. 000B 除外された構造とデータ値の組み合わせが存
在する. 000C データ値が未知またはサポートされていない
. 000D データ値が対応しない. 000E  除外されたキャラクタが存在する. 000F データ値が範囲外. 0010 除外される場所でセグメント化が行われてい
る. 0011  データ値が除外されている.00l2 横
造は認識されているがサポートされていない. 0013 数個の構造が考えられるが検出されない. 00l4 検出された子構造の順序が正しくない. 第7図は.HOP  COUNT値がDTMU(Dis
Lribution Transport lIess
ag.e Llnit )に存在しないことが検出され
たとき生成されるrSNA状態レポートJである.ホッ
プ・カウントは、DTMUに必要な構造であり,メッセ
ージがソース・ノードと宛先ノードとの間で通過すると
考えられるリンクの個数を示すものである.この言葉の
正確な意味は、本発明の説明では重要ではない. ここで注意しておきたいことは、rSNA状態レポート
」にSNAレポート・コード200と4バイトの16進
数10  0B  00  01が含まれるということ
である.最初の2バイト{100B)は、フォーマット
・エラーを表す主要コードである.残り2バイト(00
  01)は,ある特定のタイプのフォーマット・エラ
ーを表すエラー・サブコードである.前掲のリストから
分かるように,サブコード00 0lは、必要な構造が
存在しないことを示す. 欠けている横造のIDは,構造レポート202によって
確立される.構造レポート202には複数のコンポーネ
ントがある.構造状態204は,構造が存在しないこと
を示す.この場合、状態指示子である204は,レポー
ト・コード200に対して冗長である.他の場合は冗長
性がなくなる.このほか、構造レポート202には,フ
ォーマット・エラーが検出された構造に特有の構造仕様
206が含まれる.この構造仕様は,その親構造内(7
) H O P  C O I N ’r 7 ( −
 ルド17)ID/T値(Of).HOP  COUN
Tフィールドのクラス(長さが限定されたLT). i
5よびHOPCOUNTフィールドの位置を含む. rsNA状態レポート」にはさらに,メッセージ全体の
中のエラーの場所の階層を確立するために,先祖に関す
る情報ユニット208.210が含まれる.ユニット2
08の内容は、HOP  COUNTフィールドの直系
の親構造(TRANSPORT  PREFIX)を、
ソノクラスオヨヒ位置とともに示す情報である.ユニッ
ト210は.DIST  TRANSPORT  Mu
m造をTRANSPORT  PREFIX(7)親構
造と識別する. 第8図は、rSNA状態レポート1の第2例で. D 
T M U ( DiStribution Tran
sport MessageUnij )にフォーマッ
ト・エラーがあった場合に生成される。この例は.OR
’lGIN  DSU横造(認識されなかった子を除外
する)内で発生した,認識されていない子構造を示して
いる,ここで、SNAレポート・コードの下4桁(00
 05)は、認識されていない構造が存在し、かかる構
造はメッセージのフォーマット定義によって除外される
ことを示すものである。
エラー・メッセージのFf4 Sレポート2l4は、フ
ォーマット・エラーが発生した構造を示すユニット21
6、かかるエラーが発生した構造の直系の親構造( O
 R I G I N  D S U )を示すユニッ
ト218、親tR造ORIGIN  DSUの親構造(
D T S’r− COMMAND) を示t.=tニ
ット220.および構造DIST COMMANDの親
構造(D I ST  TRANSPORTMU)を示
すユニット222を含む。
上記の具体例について2点注意しておきたい.第lに、
発生したエラーのタイプは、SNAレボート・コードに
示されるとおり.エラーが発生した場所とは無関係にレ
ポートされる.第2に、エラーの場所は階層的に指示さ
れる.すなわち,エラーが発生した構造は、定義済みフ
ォーマットに対応する該構造と1次親構造との間で直系
であるすべての親構造とともに識別される.F.発明の
効果 本発明により,ある特定のメッセージ・フォーマットの
構成およびある特定のメッセージの内容に依存しない方
沃でフォーマット・エラーの検出とレポートが可能なシ
ステムが提供される.
【図面の簡単な説明】
第1図は、本発明を実施できるデータ通信ネットワーク
の概略ブロック図である. 第2図は、本発明によって処理できるメッセージのタイ
プの一部を示す概略図である.第3図は,ある特定のメ
ッセージをテーブルEで定義した例を示す図である。 第4図は、本発明の実施時に実行されるステップを比較
的高度なレベルで示す流れ図である.第5図は、第5A
図,第5B図および第5C図に分けて、本発明によりメ
ッセージの解析に用いられる汎用パーシング・ロジック
を示す流れ図である。 第6図は、第6A図と第6B図に分けて、本発明により
実行されるフォーマット・エラー検査ステップを示す流
れ図である.

Claims (3)

    【特許請求の範囲】
  1. (1)メッセージが階層構造から構成されるデータ通信
    ネットワークにおいて、前記メッセージを受信する少な
    くとも1個のネットワーク・ノードにて実施され、メッ
    セージ・フォーマット・エラーの詳細レポートを提供す
    る方法であって、前記メッセージを識別するステップと
    、 前記メッセージの階層および前記メッセージに含まれ得
    る構造のそれぞれに許容できるパラメータを定義する(
    事前に格納されている)テーブルを検索するステップと
    、 汎用パーシング・ロジックと検索されたテーブルを用い
    ることによって前記メッセージを解析して、前記メッセ
    ージに含まれる構造をそれぞれ識別し、識別された構造
    がそれぞれ、検索されたテーブルに示された許容可能な
    パラメータを満足するかどうかを判定するステップと、 エラーが検出された場合に、検出されたエラーのタイプ
    を示し、フォーマットに依存しないエラー・コードを含
    むエラー・レポートおよび前記エラーが検出されたメッ
    セージ内の場所の階層を示す階層レポートを生成するス
    テップとを含む、メッセージ・フォーマット・エラーの
    詳細レポートを提供する方法。
  2. (2)メッセージが階層構造から構成されるデータ通信
    ネットワークにおいて、メッセージ・フォーマット・エ
    ラーの詳細レポートを提供するシステムであって、 メッセージを受信する手段と、 前記受信されたメッセージを識別する手段と、 前記受信されたメッセージのIDに応答して、前記メッ
    セージの階層を定義し、前記メッセージに含まれ得る構
    造それぞれに許容できるパラメータを示すフォーマット
    定義テーブルを検索する手段と、 前記メッセージを解析して、前記メッセージに含まれる
    構造をそれぞれ識別する手段と、識別された構造がそれ
    ぞれ、前記識別された構造のそれぞれについて前記フォ
    ーマット定義テーブルに示されたパラメータの範囲内に
    あるパラメータを含むかどうかを判定する手段と、 エラーが検出された場合に、検出されたエラーのタイプ
    を示し且つフォーマットに依存しないエラー・コードお
    よび前記エラーが検出されたメッセージ内の構造の階層
    を示す階層レポートを含むエラー・レポートを生成する
    手段とを含む、メッセージ・フォーマット・エラーの詳
    細レポートを提供するシステム。
  3. (3)階層構造をもつメッセージの形でデータが転送さ
    れるデータ通信ネットワークにおいて、メッセージを受
    信するノードにフォーマット・エラー・レポートを提供
    する方法であって、 前記受信されたメッセージを解析して、前記メッセージ
    に含まれる構造を識別するステップと、 前記識別された構造のパラメータを前記構造に許容でき
    るパラメータと比較するステップと、エラーが検出され
    た場合に、検出されたフォーマット・エラーのタイプを
    示すエラー・コードおよび前記エラーが検出されたメッ
    セージ内の階層を示す構造レポートを含むエラー・レポ
    ートを生成する手段とを含む、フォーマット・エラー・
    レポートを提供する方法。
JP2103247A 1989-04-21 1990-04-20 メツセージ・フオーマツト・エラーのレポートを提供する方法とシステム Pending JPH0316455A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US34134689A 1989-04-21 1989-04-21
US341346 1989-04-21

Publications (1)

Publication Number Publication Date
JPH0316455A true JPH0316455A (ja) 1991-01-24

Family

ID=23337159

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2103247A Pending JPH0316455A (ja) 1989-04-21 1990-04-20 メツセージ・フオーマツト・エラーのレポートを提供する方法とシステム

Country Status (2)

Country Link
EP (1) EP0394174A3 (ja)
JP (1) JPH0316455A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007211580A (ja) * 2006-01-16 2007-08-23 Inax Corp 排水トラップおよび排水トラップを備えた浴室

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56158552A (en) * 1980-05-09 1981-12-07 Nippon Telegr & Teleph Corp <Ntt> Failure detecting system
JPS63296542A (ja) * 1987-05-28 1988-12-02 Mitsubishi Electric Corp プロトコルデ−タ解析装置
JPS63301648A (ja) * 1987-05-30 1988-12-08 Toshiba Corp 複合プロトコル検証装置
JPS6458146A (en) * 1987-08-28 1989-03-06 Nec Corp Line fault analyzer

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5067104A (en) * 1987-05-01 1991-11-19 At&T Bell Laboratories Programmable protocol engine having context free and context dependent processes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56158552A (en) * 1980-05-09 1981-12-07 Nippon Telegr & Teleph Corp <Ntt> Failure detecting system
JPS63296542A (ja) * 1987-05-28 1988-12-02 Mitsubishi Electric Corp プロトコルデ−タ解析装置
JPS63301648A (ja) * 1987-05-30 1988-12-08 Toshiba Corp 複合プロトコル検証装置
JPS6458146A (en) * 1987-08-28 1989-03-06 Nec Corp Line fault analyzer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007211580A (ja) * 2006-01-16 2007-08-23 Inax Corp 排水トラップおよび排水トラップを備えた浴室

Also Published As

Publication number Publication date
EP0394174A2 (en) 1990-10-24
EP0394174A3 (en) 1992-12-23

Similar Documents

Publication Publication Date Title
US4965772A (en) Method and apparatus for communication network alert message construction
US7391735B2 (en) Parsing messages with multiple data formats
US6502112B1 (en) Method in a computing system for comparing XMI-based XML documents for identical contents
US8984535B2 (en) System and method for facilitating the exchange of information among applications
US7243120B2 (en) Transaction-based enterprise application integration (EAI) and development system
US6918059B1 (en) Method and system for handling errors in a distributed computer system
US7080087B2 (en) Automatic aggregation method, automatic aggregation apparatus, and recording medium having automatic aggregation program
US7210096B2 (en) Methods and apparatus for constructing semantic models for document authoring
US4823345A (en) Method and apparatus for communication network alert record identification
US4969093A (en) Method of data stream construct management utilizing format shells and shell fragments
US20050226244A1 (en) System and method for communicating data
US20020035606A1 (en) Method and system for straight through processing
US4800485A (en) On-line documentation facility
US6782400B2 (en) Method and system for transferring data between server systems
EP0620527A2 (en) A method and apparatus for validating labelled, ordered parse trees according to a context-free grammar specification
CN115291967A (zh) 航天数据分析方法、装置和电子设备
CN118132084A (zh) 一种可配置的接口控制动态解析系统
CN107612919B (zh) 协议配置方法及装置
JPH0316455A (ja) メツセージ・フオーマツト・エラーのレポートを提供する方法とシステム
JP5044943B2 (ja) データ文書の高速符号化方法及びシステム
EP1526680A2 (en) Probable cause fields in telecommunications network alarm indication messages
US7321900B1 (en) Reducing memory requirements needed to represent XML entities
WO1997008616A1 (en) System and method for parsing and building data signals
US7804945B2 (en) Enterprise application based multi-billing integration system
Harris SLR (1) and LALR (1) parsing for unrestricted grammars