(57)【要約】本方法は、メッセージ伝送のためのデータ線（１０４）を介して接続可能な少なくとも２つのノード（１０１、１０２、１０３）を含むデータ処理システムを駆動するための方法及び装置であって、メッセージは、送信すべきメッセージを調停するための識別子を有し、識別子は、優先度についての情報を含み、優先度によって伝送待ちのメッセージの処理順序が決定され、識別子は、ネットワークノードについての情報であって、メッセージの送信者がそれにより一意に決定される上記情報と、サービスについての情報であって、サービスがそれにより決定される上記情報と、を含む、上記方法及び装置に関する。【選択図】図１
2018526924.tif 000002
【特許請求の範囲】
【請求項１】
メッセージ伝送のためのデータ線（１０４）を介して接続可能な少なくとも２つのノード（１０１、１０２、１０３）を含むデータ処理システムを駆動する方法であって、メッセージは、送信すべきメッセージを調停するための識別子（２００）を有し、
前記識別子（２００）は、
‐優先度についての情報（２０１）を含み、前記優先度によって伝送待ちのメッセージの処理順序が決定される、前記方法において、
前記識別子（２００）は、
‐ネットワークノードについての情報（２０３）であって、前記メッセージの送信者がそれにより一意に決定される前記情報（２０３）と、
‐サービスについての情報（２０２）であって、サービスがそれにより決定される前記情報（２０２）と、
を含むことを特徴とする、方法。
【請求項２】
前記少なくとも２つのノード（１０１、１０２、１０３）のうちの１つのノード（１０１、１０２、１０３）に到着したメッセージは、前記サービスについての前記情報（２０２）又は前記ネットワークノードについての前記情報（２０３）により、当該１つのノード（１０１、１０２、１０３）が受信者として決定される場合にのみ、当該１つのノード（１０１、１０２、１０３）のメモリに収容されることを特徴とする、請求項１に記載の方法。
【請求項３】
前記少なくとも２つのノード（１０１、１０２、１０３）のうちの１つのノード（１０１、１０２、１０３）に到着したメッセージは、前記サービスについての前記情報（２０２）及び前記ネットワークノードについての前記情報（２０３）により、当該１つのノード（１０１、１０２、１０３）が受信者として決定される場合にのみ、当該１つのノード（１０１、１０２、１０３）のメモリに収容されることを特徴とする、請求項１に記載の方法。
【請求項４】
ノード（１０１、１０２、１０３）に到着したメッセージは、前記識別子（２００）に依存してフィルタに掛けられることを特徴とする、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
所定の識別子と前記識別子（２００）が一致するメッセージのみが、通信スタックに転送されることを特徴とする、請求項４に記載の方法。
【請求項６】
前記少なくとも２つのノード（１０１、１０２、１０３）の少なくとも１つのノード（１０１、１０２、１０３）には、前記ネットワークノードについての前記情報（２０３）に対して受信者（１０１、１０２、１０３）を対応付け又は前記サービスについての前記情報（２０２）に対して受信者（１０１、１０２、１０３）を対応付けるリストが設けられることを特徴とする、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記ネットワークノードについての情報（２０３）又は前記サービスについての情報（２０２）が、前記少なくとも２つのノード（１０１、１０２、１０３）のうちの少なくとも１つのノード（１０１、１０２、１０３）に送信されることを特徴とする、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記データ処理システム（１００）への前記少なくとも２つのノード（１０１、１０２、１０３）のうちの少なくとも１つのノード（１０１、１０２、１０３）の追加又は削除の検出によって、前記ネットワークノードについての前記情報（２０３）又は前記サービスについての前記情報（２０２）の送信が引き起こされることを特徴とする、請求項７に記載の方法。
【請求項９】
或るノード（１０１、１０２、１０３）での所定の状態の検出によって、前記ネットワークノードについての前記情報（２０３）又は前記サービスについての前記情報（２０２）の送信が引き起こされることを特徴とする、請求項７又は８のいずれか１項に記載の方法。
【請求項１０】
前記ネットワークノードについての前記情報（２０３）又は前記サービスについての前記情報（２０２）は常に、特定のノード（１０１、１０２、１０３）にのみ対応付けられることを特徴とする、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
前記サービスについての前記情報（２０２）には、所定のプロトコルに準拠した前記サービスの記述が一意に対応付けられることを特徴とする、請求項１〜１０のいずれか１項に記載の方法。
【請求項１２】
前記伝送待ちのメッセージの前記処理順序は、前記優先度についての前記情報（２０１）に従って決定されることを特徴とする、請求項１〜１１のいずれか１項に記載の方法。
【請求項１３】
前記処理順序は、所定の優先度又は所定の優先度クラスとの前記優先度についての前記情報（２０１）の対応付けに従って定められることを特徴とする、請求項１２に記載の方法。
【請求項１４】
同じ優先度の前記伝送待ちのメッセージの前記処理順序は、前記サービスについての前記情報（２０２）に従って決定されることを特徴とする、請求項１〜１３のいずれか１項に記載の方法。
【請求項１５】
前記処理順序は、所定の優先度又は所定の優先度クラスに対する前記サービスについての前記情報（２０２）の対応付けに依存して定められることを特徴とする、請求項１４に記載の方法。
【請求項１６】
前記識別子（２００）は、メッセージタイプについての情報（２０４）を含み、優先度が同じ前記伝送待ちのメッセージ又は前記サービスについての前記情報が同じ前記伝送待ちのメッセージの前記処理順序は、前記メッセージタイプについての前記情報（２０４）に従って決定されることを特徴とする、請求項１〜１５のいずれか１項に記載の方法。
【請求項１７】
メッセージ伝送のためのデータ線（１０４）を介して接続可能な少なくとも２つのノード（１０１、１０２、１０３）を含むデータ処理システムを駆動する装置であって、
前記装置は、請求項１〜１６のいずれか１項に記載の方法を実行するよう構成されることを特徴とする、装置。
【請求項１８】
請求項１〜１６のいずれか１項に記載の方法の工程を実行するよう構成されたコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理システムを駆動するための方法、装置、及びコンピュータプログラムに関する。
【発明の概要】
【課題を解決するための手段】
【０００２】
独立請求項１の特徴を備えた方法は、データ線を介して送信され、個々のメッセージに含まれる識別子により調停が行われるメッセージの場合の、データ処理システムでのサービス指向通信の利用を技術的措置によって可能とする。
【０００３】
データ処理システムのノードに到着したメッセージが、識別子に含まれるサービスについての情報又はネットワークノードについての情報により、当該ノードが受信者として決定される場合にのみ当該ノードのメモリに収容される場合には、特に有利である。これにより、特定の到着したメッセージのみが受信される。これにより、データ処理システム上でメッセージが一斉送信（Ｂｒｏａｄｃａｓｔ）により送信された場合に特に、個々のノードによるメッセージの選択的受信が可能となる。
【０００４】
これにより、サービスがそこで提供されるノード又はサービスを利用するノードが、当該サービスに関連するメッセージを受信する。
【０００５】
このメッセージは、複数のネットワークノードが同じサービスを提供する場合又は複数のネットワークノードがそのサービスを照会する場合には、送信者に依存せずに検出されて受信されうる。
【０００６】
これにより、特定のネットワークノードからのメッセージを待ち望むノードが、当該ネットワークノードから送信されるメッセージを受信する。これにより、複数の送信者の区別が、ネットワークノードについての情報により可能である。
【０００７】
データ処理システムのノードに到着したメッセージが、サービスについての情報及び識別子に含まれるネットワークノードについての情報により、当該ノードが受信者として決定された場合にのみ当該ノードのメモリに収容される場合には、特に有利である。これにより、同じサービスの提供者の区別が、送信ノードによって可能である。このことは、冗長的なサービス指向機能が実行されるデータ処理システムでは特に有利である。
【０００８】
更なる別の有利な発展形態は従属請求項及び以下に記載される実施例から明らかとなろう。
【図面の簡単な説明】
【０００９】
【図１】データ処理システムの一部を概略的に示している。
【図２】メッセージの一部を概略的に示している。
【図３】第１の信号フローチャートを概略的に示している。
【図４】第２の信号フローチャートを概略的に示している。
【図５】第３の信号フローチャートを概略的に示している。
【発明を実施するための形態】
【００１０】
以下では、図１に概略的に示すデータ処理システム１００について説明する。図１には、第１のノード１０１、第２のノード１０２、及び、第３のノード１０３が示されている。これらのノードは、データ線１０４を介して接続されている。即ち、データ処理システムは、メッセージ伝送のためにデータ線１０４を介して接続可能な少なくとも２つのノードを含んでいる。３つより多く又は３つより少ないノードが存在してもよい。第３のノード１０３は、本例では任意のゲートウェイ（Ｇａｔｅｗａｙ）であり、データ処理システム１００がそれに従って動作する第１のプロトコルに準拠したメッセージを、第２のプロトコルに準拠したメッセージに変換することが可能である。例えば、データ処理システム１００は、ゲートウェイを介して、図１には示されない更なる別のデータネットワークに接続可能である。
【００１１】
本例では、第１のノード１０１は制御装置Ａであり、制御装置Ａでは、サービス指向機能の利用者側が進行する。第２のノード１０２は、本例では制御装置Ｂであり、制御装置Ｂでは、サービス指向機能の提供者側が進行する。サービス指向機能によって行われるサービス、即ち提供され又は利用されるサービスは、ここでは任意である。サービスは、特定のプロトコルに従ったサービス記述によって記述され、例えばテキスト（Ｔｅｘｔ）によって又はＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）によって記述される。上記記述に対して、本例ではサービスについての情報が一意に対応付けられている。サービスについての情報は、例えば、２進値により、数値により、又は英数値により表現されたものであり、以下ではＳｈｏｒｔＩＤと呼ばれる。このＳｈｏｒｔＩＤは、好適に、特定のノードで実行される特定のサービスに対して一意に対応付けられる。
【００１２】
データ線１０４を介して送信可能なメッセージは、送信すべきメッセージを調停するための識別子を有している。識別子は、優先度についての情報を含み、優先度によって伝送待ちのメッセージの処理順序が決定されている。識別子は、さらに、ネットワークノードについての情報を含み、このネットワークノードについての情報によって、メッセージの送信者が一意に決定されている。本例では、ノード識別子ＭＡＣが利用される。追加的に、識別子は、サービスについての情報、例えばＳｈｏｒｔＩＤを含み、このサービスについての情報によって、サービスが決定されている。即ち、メッセージは、メッセージの背後に隠れている機能、特にサービス提供者又はサービス利用者についての情報を含んでいる。
【００１３】
例示的な識別子２００が、図２に概略的に示されている。
【００１４】
ここでは、識別子２００は、メッセージのフレームのヘッダ部分に配置されたビット列である。さらに、フレームは、図２には示されないデータ部分のビット列も含む。さらに、フレームは、エラー訂正ビットを含む更なる別の部分を含みうる。
【００１５】
優先度についての情報は、例えば第１のデータフィールド２０１に配置される。サービスについての情報は、例えば第２のデータフィールド２０２に配置される。ネットワークノードについての情報、即ち本例ではノード識別子ＭＡＣは、例えば第３のデータフィールド２０３に配置される。第４の任意のデータフィールド２０４は、例えば、メッセージタイプについての情報を含む。好適に、この順番で、識別子２００のデータフィールドは配置されている。他の順序も同様に可能である。データフィールドにおけるビット列の長さは、様々であってもよく又は同じであってもよい。
【００１６】
データ処理システムは、好適に、ＣＡＮとして知られるコントロールエリアネットワーク（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の枠組みにおいて実現される。ＣＡＮは、ＩＳＯ１１８９８として規格化され、キャリア検知多重アクセス（Ｃａｒｒｉｅｒ  Ｓｅｎｓｅ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ）／衝突解決（Ｃｏｌｌｉｓｉｏｎ  Ｒｅｓｏｌｕｔｉｏｎ）方式に従って機能する。ここでは、バスアクセス時の衝突が、ＣＡＮ固有の識別子に依存した調停によって解消される。この識別子は、例えば所定の長さを有し、特に、「基本フレームフォーマット」では１１ビット、又は「拡張フレームフォーマット」では２９ビットを有する。
【００１７】
好適に、優先度を示すビット列の長さと、サービスについての情報、即ちＳｈｏｒｔＩＤを表すビット列の長さと、ネットワークノードについての情報、即ち本例ではノード識別子ＭＡＣを表すビット列の長さと、場合によっては、メッセージタイプを表すビット列の長さとは、全て合わせて合計１１ビット又は２９ビットの識別子２００の長さが得られるように、選択される。
【００１８】
好適に、ネットワークノードについての情報、即ち本例ではノード識別子ＭＡＣによって、送信者が一意に同定される。オブジェクト識別子を用いて装置識別子ではなくメッセージの内容が対応付けられるこれまで定義された通信マトリクスとは異なって、これにより自動的に、データ処理システム１００の変更された構造に対する動的な適合が可能である。静的な通信マトリクスは、以前に静的に定義された全ての送信者及び予期される全てのメッセージが分かった上で定められる必要がある。さらに、ネットワークの全てのノードが、到着したメッセージを有効に検知しうるために、通信マトリクスが完全に分かっており又は少なくとも通信マトリクスの自身に関連する部分が分かっている必要がある。
【００１９】
以下に、動的な変更の際にも信頼性が高いサービス指向通信を可能とする、データ処理システム１００を駆動する方法の部分を記載する。
【００２０】
以下に記載するメッセージは、本例では一斉送信としてデータ線１０４を介して送信される。即ち、送信されたメッセージは、データ処理システム１００の、データ線１０４により接続された全てのノードによって受信されうる。
【００２１】
伝送待ちのメッセージの処理順序は、好適に優先度に従って決定されている。その際に、処理順序は、例えば、所定の優先度又は所定の優先度クラスとの優先度についての情報の対応付けに従って定められる。
【００２２】
優先度が同じ伝送待ちのメッセージの処理順序は、好適にサービスについての情報に従って、即ち本例ではＳｈｏｒｔＩＤに従って決定されている。このために、上記処理順序は、例えば、所定の優先度又は所定の優先度クラスに対するサービスについての情報の対応付けに従って、本例ではＳｈｏｒｔＩＤに従って定められる。
【００２３】
識別子２００が、メッセージタイプについての情報を含む限りにおいて、優先度が同じ伝送待ちのメッセージ、又は、サービスについての情報が同じ伝送待ちのメッセージの処理順序は、メッセージタイプに従っても決定されうる。このために、所定の優先度又は所定の優先度クラスに対する所定のメッセージタイプの対応付けが定められる。
【００２４】
各優先度に対する上記対応付けは、好適にノード内の、例えばリストに格納されている。ノードは、メッセージを当該メッセージに対応付けられた優先度に従ってデータ線１０４上で送信するよう構成される。好適に、リストは、データ処理システム１００の各ノードに格納されている。好適に、データ処理システム１００の各ノードは、各メッセージを当該メッセージに対応付けられた優先度に従って送信する。
【００２５】
好適に、メッセージに含まれる優先度についての情報として、ＣＡＮプロトコルに準拠した優先度が利用される。これにより好適に、データ線１０４へのアクセスはＣＡＮプロトコルに従って定められる。
【００２６】
図３は、サービスについての情報の付与又は照会のための処理の部分に従った第１の信号フローチャートを概略的に示している。本例では、ＳｈｏｒｔＩＤが付与され又は照会される。
【００２７】
サービス指向機能を登録するために、サービス指向機能の提供者側がメッセージ３０１、Ｒｅｇｉｓｔｅｒを送信する。
【００２８】
図３の例では、サービス指向機能の提供者側が、第２のノード１０２で実行される。本例では、メッセージ３０１が第２のノード１０２によって送信される。
【００２９】
サービス指向機能を登録するために、メッセージ３０１、Ｒｅｇｉｓｔｅｒが少なくとも１つのノードによって受信される。
【００３０】
図３の例では、サービスは、データ処理システム１００の第３のノード１０３で中央管理される。管理のための機能は、本例では第３のノード１０３で実行される。分散化された管理部も設けられてよい。この場合には、データ処理システム１００の各ノード又は複数のノードで管理が行われる。
【００３１】
データ処理システム１００で利用可能なサービスについての情報を管理するために、例えば、サービスについての情報がサービスの記述に対して対応付けられたリスト、表、データバンク等が設けられる。上記対応付けは、本例では第３のノード１０３に格納されている。本例では、特定のＳｈｏｒｔＩＤが、サービスの記述に一意に対応付けられている。例えば、サービスの記述のために所定のプロトコルが利用される。本例では、ソース言語、例えばテキスト（Ｔｅｘｔ）又はＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）が利用される。
【００３２】
他の形態によるサービスの記述も可能であり、例えば、伝送制御プロトコル（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）／インタネットプロトコル（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）（ＴＣＰ／ＩＰ）に準拠したソケット（Ｓｏｃｋｅｔ）の仕様（Ａｎｇａｂｅ）も同様に可能である。サービスについての情報は、例えば、ＩＰベースのプロトコルのサービス記述（ＬｏｎｇＩＤ）にも対応しうる。ＳｈｏｒｔＩＤの長さ、特に、識別子２００でＳｈｏｒｔＩＤに相当するビット列の長さは、好適に、サービス記述（ＬｏｎｇＩＤ）の長さよりも短い。さらに、第３のノード１０３のゲートウェイを介して、データ処理システム１００の外部のサービスのサービス記述（ＬｏｎｇＩＤ）を取得することも可能である。このためにゲートウェイは、場合によっては、外部のメッセージをメッセージ３０１に変換する。
【００３３】
本例では、サービスの記述を、好適にメッセージ３０１、Ｒｅｇｉｓｔｅｒのデータ部分で送信することが構想される。代替的又は追加的に、サービスの記述を、別のメッセージ又は複数の別のメッセージ（図示せず）で送信することが構想されうる。
【００３４】
メッセージ３０１、Ｒｅｇｉｓｔｅｒが受信された際には、サービスの記述に対して、サービスについての情報が対応付けられる。本例では、ＳｈｏｒｔＩＤが生成されて上記記述に対応付けられる。受信された上記記述について、或るＳｈｏｒｔＩＤに対する対応付けが既に存在するのであれば、そのＳｈｏｒｔＩＤが利用される。好適に、ＳｈｏｒｔＩＤとして、所定の長さのビット列、例えば４ビット又は２ビット、好適に８ビットのビット列が利用される。
【００３５】
メッセージ３０２、ＲｅｇｉｓｔｅｒＡＣＫにより、サービスについての情報、即ち本例ではＳｈｏｒｔＩＤが、好適にメッセージ３０２のデータ部分で送信される。メッセージ３０２、ＲｅｇｉｓｔｅｒＡＣＫによって、登録の成功が確認される。本例では、第３のノード１０３が、メッセージ３０２を送信する。第２のノード１０２は、メッセージ３０２を受信する。
【００３６】
サービス指向機能の照会のために、サービスの利用者は、メッセージ３０３、Ｗｈｏｌｓを送信する。本例では、サービスについての情報、例えばＳｈｏｒｔＩＤを、メッセージ３０３、Ｗｈｏｌｓにより、好適にメッセージ３０３のデータ部分で送信することが構想される。例えば、或るサービスの記述を必要とするノードが、当該サービスの記述を受信するために、メッセージ、Ｗｈｏｌｓを送信する。
【００３７】
図３の例では、サービス指向機能の利用者側は、第１のノード１０１で進行する。本例では、メッセージ３０３が、第１のノード１０１によって送信される。
【００３８】
好適に、サービス指向機能の利用者側が進行する第１のノード１０１は、上記ＳｈｏｒｔＩＤを、第１のノード１０１に到着したメッセージの識別子２００から確認する。当該ＳｈｏｒｔＩＤが未知である限りにおいてメッセージ３０３が送信される。
【００３９】
サービス指向機能の照会のために、メッセージ３０３、Ｗｈｏｌｓが少なくとも１つのノードによって受信される。
【００４０】
図３の例では、サービスは、データ処理システム１００内の第３のノード１０３で中央管理される。管理のための機能は、本例では第３のノード１０３で実行される。この場合には、第３のノード１０３が、メッセージ３０３、Ｗｈｏｌｓを受信する。
【００４１】
分散化された管理も構想されうる。この場合には、データ処理システム１００の、メッセージ３０３、Ｗｈｏｌｓを受信するノードのうちの各ノード又は複数のノードで上記管理が行われる。
【００４２】
メッセージ、Ｗｈｏｌｓが獲得された際には、メッセージ３０３、Ｗｈｏｌｓが含むサービスについての情報と合うサービスの記述が、上記対応付けから確認される。本例では、ＳｈｏｒｔＩＤが、メッセージ３０３、Ｗｈｏｌｓから確認される。その後で、ＳｈｏｒｔＩＤに対応付けられた上記記述が確認される。
確認された上記記述は、メッセージ３０４、ＷｈｏｉｓＡＣＫで送信される。本例では、サービスの記述は、所定のプロトコルに従って伝達される。例えば、ソース言語、即ち例えばテキスト（Ｔｅｘｔ）又はＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）が利用される。伝送制御プロトコル（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）／インタネットプロトコル（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）（ＴＣＰ／ＩＰ）に準拠したソケット（Ｓｏｃｋｅｔ）、又は、ＩＰペースのプロトコルのサービス記述（ＬｏｎｇＩＤ）も利用されうる。
【００４３】
サービスの記述を、メッセージ３０４、Ｒｅｇｉｓｔｅｒにより、好適にメッセージ３０４のデータ部分で送信することが構想されうる。代替的に又は追加的に、サービスの記述を、好適に別のメッセージ又は複数の別のメッセージ（図示せず）のデータ部分で送信することが構想されうる。
【００４４】
本例では、第３のノード１０３が、メッセージ３０４を送信する。第１のノード１０１はメッセージ３０４を受信する。ゲートウェイを介してメッセージ３０２、３０３、及び３０４を外部のノードと交換することも構想されうる。このために、ゲートウェイは、各メッセージを対応して変換する。
【００４５】
好適に、ＳｈｏｒｔＩＤは二重に付与されていない。この場合ノードは、ＳｈｏｒｔＩＤに対応付けられたサービスの特定の提供者の完全なサービス記述を、常に一意に照会することが可能である。
【００４６】
図４は、サービス指向通信パターンＰｕｂｌｉｓｈ／Ｓｕｂｓｃｒｉｂｅ、Ｒｅｑｕｅｓｔ／Ｒｅｓｐｏｎｓｅ、又は、ディスカバリ（Ｄｉｓｃｏｖｅｒｙ）、即ちＦｉｎｄ／Ｏｆｆｅｒを概略的に示す第２の信号フローチャートを示している。
【００４７】
サービス指向通信パターンの導入によって、サービス指向機能がデータ処理システム１００上で簡単に提示されうる。
【００４８】
Ｒｅｑｕｅｓｔ／Ｒｅｓｐｏｎｓｅ方式は、遠隔手続き呼出し（Ｒｅｍｏｔｅ−Ｐｒｏｃｅｄｕｒｅ−Ｃａｌｌ）という意味において、一回でのデータ照会又は要求のために優先的に役立つ。
【００４９】
Ｐｕｂｌｉｓｈ／Ｓｕｂｓｃｒｉｂｅ方式は、１：ｎの状況（Ｓｚｅｎａｒｉｏ）の範囲内で、及び、特定のデータが継続的に購読される際に利用される。１つのノードが複数の受信者のためにメッセージを送信する場合が１：ｎの状況である。Ｐｕｂｌｉｓｈ／Ｓｕｂｓｃｒｉｂｅ方式のためにメッセージタイプ、即ちＲｅｑｕｅｓｔ、Ｒｅｓｐｏｎｓｅ、Ｓｕｂｓｃｒｉｂｅ、Ｐｕｂｌｉｓｈ、Ｕｎｓｕｂｓｃｒｉｂｅが設けられる。これらは、メッセージタイプとして、例えば対応して符号化されたビット列として、メッセージの種類に従って識別子の第４のフィールド内のメッセージに付け加えられる。動的な通信経路を提示するために必要なサービスディスカバリ（Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ）であって、サービスの検出及び提供を可能とする上記サービスディスカバリは、定義されたメッセージタイプＦｉｎｄ／Ｏｆｆｅｒの形態により同じように実現される。
【００５０】
第４の例では、第２のノード１０２において、サービス指向機能の提供者側が進行する。第１のノード１０１は、サービスの利用者である。この場合には、第１のノード１０１が、メッセージ４０１を第２のノード１０２に送信する。メッセージ４０１は、例えば、サービス指向機能の利用者側によって生成される。例えば、メッセージタイプがＲｅｑｕｅｓｔ、Ｓｕｂｓｃｒｉｂｅ、Ｕｎｓｕｂｓｃｒｉｂｅ、又はＦｉｎｄのメッセージ４０１が生成される。
【００５１】
第１のノード１０１、即ち特にサービス指向機能の利用者側は、メッセージ４０１のメッセージタイプを、所望のサービスに対応して設定するよう構成される。好適に、メッセージタイプとして、所定の長さのビット列、例えば４ビット又は２ビット、好適には８ビットのビット列が利用される。先に挙げたメッセージタイプは例えばそれぞれ、上記ビット列のうちの１つに一意に対応付けられている。
【００５２】
第２のノード１０２は、メッセージタイプに対応して、受信されたメッセージ４０１からの所望のサービスを確認するよう構成される。
【００５３】
メッセージ４０１が受信された際には、例えば、サービスについて照会されていることが、サービス指向機能の提供者側に報知される。
【００５４】
サービスについての回答は、所望のサービスに従って、サービス指向機能の提供者側によって生成される。本例では、メッセージタイプがＲｅｓｐｏｎｓｅ、Ｐｕｂｌｉｓｈ、又はＯｆｆｅｒのメッセージが生成される。
【００５５】
図４の例では、第２のノード１０２が、回答としてメッセージ４０２を第１のノード１０１に送信する。メッセージ４０２は、例えば、メッセージタイプがＲｅｓｐｏｎｓｅ、Ｐｕｂｌｉｓｈ、又はＯｆｆｅｒのメッセージである。好適に、メッセージタイプとして、所定の長さのビット列、例えば４ビット又は２ビット、好適に８ビットのビット列が利用される。先に挙げたメッセージタイプは例えばそれぞれ、上記ビット列のうちの１つに一意に対応付けられている。
【００５６】
メッセージ４０２が受信された際には、例えば、サービスが利用可能であることがサービス指向機能の利用者側に報知される。
【００５７】
好適に、少なくとも２つのノードのうちの少なくとも１つのノードの追加又は削除の検出によって、サービスについての情報、特にＳｈｏｒｔＩＤの送信が引き起こされる。これにより、データ処理システム１００では、自動化されたサービスディスカバリ（Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ）が実行される。
【００５８】
代替的又は追加的に、或るノードでの所定の状態の検出によって、サービスについての情報の送信が引き起こされる。例えば、サービスの上記状態が、着信したメッセージ又は発信されたメッセージのデータタイプによって検出される。特に、データタイプがＰｕｂｌｉｓｈ、Ｓｕｂｓｃｒｉｂｅ、Ｕｎｓｕｂｓｃｒｉｂｅ、Ｒｅｑｕｅｓｔ、Ｒｅｓｐｏｎｓｅ、Ｆｉｎｄ、又はＯｆｆｅｒが、状態を確認するために評価されうる。好適に、このようにして、開始又は終了すべきサービスが検出される。
【００５９】
図５は、ノードに対してネットワークノードについての情報が対応付けられる処理の部分の第３の信号フローチャートを概略的に示している。本例では、第１のノード１０１にネットワーク識別子ＭＡＣが対応付けられる。
【００６０】
これによりこのノードは、識別子２００に含まれたネットワークノードについての情報で、データ処理システム１００ではメッセージの送信者として受信者側では検出されうる。
【００６１】
即ち、送信者が対応付けられているネットワークノードについての情報が、少なくとも２つのノードのうちの少なくとも１つノードへと送信される。本例では、ノード識別子ＭＡＣがこのために利用される。ネットワークノードについての情報、特にノード識別子ＭＡＣは、例えば、疑似ランダム的に生成するビット列であり、又は、ビット列の所定のリストから得られる。好適に、所定の長さのビット列、例えば４ビット又は２ビット、好適に８ビットのビット列が利用される。例えば、ノード識別子Ｂｕｌｌｙ  Ａｌｇｏｒｉｔｈｍｕｓ（ブリーアルゴリズム）が、ＣＡＮプロトコルに準拠した一斉送信を利用して実装される。
【００６２】
本例では、第１のノード１０１が、メッセージ５０１、ＲｅｑｕｅｓｔＭＡＣを送信する。メッセージ５０１は好適に一斉送信で送信される。ネットワークノードについての情報、本例ではノード識別子ＭＡＣはメッセージ５０１で送信される。
【００６３】
第２のノード１０２及び第３のノード１０３が、メッセージ５０１を受信する。第２のノード１０２及び第３のノード１０３は、メッセージ５０１を解析して、ネットワークノードについての情報、特にノード識別子ＭＡＣを確認する。
【００６４】
上記ノード識別子ＭＡＣを既に利用しているノードは、二重の利用を検出して、メッセージ５０２、ＤｅｎｙＭＡＣで応答する。
【００６５】
代替的又は追加的に、或るノードで、複数のネットワークノードについての情報の管理が設けられうる。例えば、現在付与されているノード識別子ＭＡＣのリストが、或るノードに格納されている。この場合、上記ノードは二重の利用を検出し、メッセージ５０２、ＤｅｎｙＭＡＣを送信する。このことが、第１のノード１０１に、他のノード識別子ＭＡＣを選択させる。これにより、１つのノードに対して、一意のノード識別子ＭＡＣが中央管理により又は分散された管理により割り当てられる。
【００６６】
ネットワークノードについての情報の二重の利用が検出された限りにおいて、好適に、上記確認及び上記対応付けのための工程を繰り返すことが、当該対応付けに成功するまで設けられる。このことは、例えば所定時間が経過した後に行われる。上記時間の長さは、例えば０〜１ｍｉｎ、０ｍｓ〜１００ｍｓ、０ｍｓ〜１０ｍｓ、０〜５ｍｓであり、好適に１００ｍｓよりも短く、１０ｍｓよりも短く、又は５ｍｓよりも短い。
【００６７】
本例では、他のノード識別子ＭＡＣを有する別のメッセージ５０３、ＲｅｑｕｅｓｔＭＡＣが送信される。
【００６８】
好適に、少なくとも２つのノードのうちの少なくとも１つの追加又は削除の検出によって、ネットワークノードについての情報、特にノード識別子ＭＡＣの送信が引き起こされる。これにより、データ処理システム１００は、動的な通信経路に対して自動的に適合される。ノードは例えば、作動された際にメッセージ５０１を生成するよう構成される。ノードは例えば、停止される際に、自身のノード識別子ＭＡＣを開放するためのメッセージを送信するよう構成される。
【００６９】
代替的又は追加的に、或るノードでの所定の状態の検出によって、ネットワークノードについての情報、特にノード識別子ＭＡＣの送信が引き起こされる。
【００７０】
メッセージ３０１〜３０４、４０１、４０２、及び５０１〜５０３は、ＣＡＮプロトコルのメッセージであってもよい。この場合には、ＣＡＮプロトコルによって予め定められた、調停のための識別子が設けられている。この場合、上記の追加的なビット列は、ＣＡＮプロトコルに準拠したメッセージのデータ部分に含まれている。
【００７１】
以下では、到着したメッセージの処理について一例を挙げて記載する。到着したメッセージは、識別子２００を含んでいる。データ処理システム１００の１のノードは、上記識別子２００を含むメッセージを生成するよう構成される。他のノードは、上記識別子２００を含むメッセージを検出するよう構成される。このようなメッセージは、特に、データ処理システム１００でサービス指向機能が実行される際に、サービス指向機能の各提供者側と各利用者側との間で交換される。サービス指向機能のユーザデータは、例えば、交換されるメッセージのデータ部分に含まれている。上記ユーザデータは、上記の機能に依存しており、任意のビット列を含みうる。交換されるメッセージは、特に識別子２００に至るまで、正にＣＡＮプロトコルに準拠したメッセージのように構成されうる。メッセージ交換は好適に、識別子２００に起因する固有の相違点に至るまで、ＣＡＮプロトコルに従ったメッセージ交換のように行われる。
【００７２】
検出された識別子２００は、データフィールド２０１、２０２、２０３、及び２０４に対応して解析される。第２のデータフィールド２０２のビット列に従って、即ちサービスについての情報に従って、上記検出したノードがメッセージの受信者であるかが定められる。
【００７３】
追加的に、サービスについての利用される情報、本例ではＳｈｏｒｔＩＤによってノードが一意に同定される場合には、特に有利である。この場合には、サービスについての情報を用いて調停が容易に可能である。
【００７４】
上記検出したノードがメッセージの受信者として検知される限りにおいて、到着したメッセージ、特にメッセージのデータ部分が、上記検出したノードのメモリに収容される。
【００７５】
本例では、解析のために、サービスについての情報を含むリストが設けられており、当該情報の受信者は各ノードである。即ち、サービスについての情報が、受信者についての情報と対応付けられている。
【００７６】
本例では、上記対応付け、特にリストが各ノードに格納されている。即ち、サービスについての情報に受信者を対応付けるリストが、少なくとも２つのノードのうちの少なくとも１つのノードに設けられている。
【００７７】
好適に、ノードに到着したこのようなメッセージは、サービスについての情報により当該ノードが受信者として決定される場合には、当該ノードのメモリに収容される。これにより、サービス指向メッセージの選択的な受信が可能となる。
【００７８】
さらに、ノードは、メッセージの送信者には依存せずに、当該ノードが到着したメッセージを受信すべきか否かを検知することが可能である。このことによって、複数の送信者又は未知の送信者からの、特定のサービスに関するメッセージの受信が可能となる。
【００７９】
これにより、サービスについての情報によって、ノードが受信者として検知されうる。従って、送信者には依存せずに、受信者として検知されたノードで実行されるサービスのために決定された到着したメッセージが受信されうる。
【００８０】
検出された識別子２００は、好適に第３のデータフィールドのビット列に従って、即ちネットワークノードについての情報に従って解析される。これにより、上記検出したノードがメッセージの受信者であるかどうかが定められる。
【００８１】
上記検出したノードがメッセージの受信者として検知される限りにおいて、到着したメッセージ、特にメッセージのデータ部分が、上記検出したノードのメモリに収容される。
【００８２】
本例では、解析のために、ネットワークについての情報を含むリストが設けられており、当該情報の受信者は各ノードである。即ち、ネットワークノードについての情報が、受信者についての情報に対応付けられている。
【００８３】
本例では、上記対応付け、特にリストが各ノードに格納されている。即ち、ネットワークノードについての情報に受信者を対応付けるリストが、少なくとも２つのノードのうちの少なくとも１つのノードに設けられている。
【００８４】
本例では、上記対応付けは、到着したメッセージのノード識別子ＭＡＣに従って確認される。
【００８５】
ノードのうちの１つに到着したメッセージは、ネットワークノードについての情報、即ち本例ではＭＡＣによって当該ノードが受信者として決定される場合に当該ノードのメモリに収容される場合には、特に有利である。
【００８６】
即ち、ノードに到着したメッセージは、ネットワークノードについての情報によって当該ノードが受信者として決定される場合には、当該ノードのメモリに収容される。これにより、送信者に依存した選択的なメッセージ受信が可能となる。
【００８７】
サービスについての情報が多義的である限りにおいて、受信ノードは、サービスの特定の提供者からのメッセージを選択的に受信することが可能である。このことは、冗長に設計されたサービス指向機能であって、データ処理システム１００の複数のノードがサービス指向機能の同一の提供者側を実行する上記サービス指向機能のためには、特に有効である。
【００８８】
好適に、ノードに到着したメッセージは、識別子２００に依存してフィルタに掛けられる。特に好適には、その識別子２００が所定の識別子と一致するメッセージのみが、通信スタックに転送される。これにより、個々のノードへの負荷が効果的に低減されうる。
【００８９】
特に好適に、ネットワークノードについての情報、本例ではノード識別子ＭＡＣ、又は、サービスについての情報、本例ではＳｈｏｒｔＩＤは、特定のノードにのみ常に対応付けられている。
【００９０】
少なくとも２つのノードのうちの少なくとも１つのノードに到着したメッセージが、サービスについての情報、本例ではＳｈｏｒｔＩＤと、ネットワークについての情報、本例ではＭＡＣと、によって当該ノードが受信者として決定される場合に当該ノードのメモリに収容される場合には、特に有利である。これにより、サービスについての情報が多義的である際にも、即ち、複数のノードがデータ処理システム１００内で同一のサービスを提供する際にも、ネットワークノードについての情報を用いて調停が一意に可能である。
【００９１】
上記メッセージの伝送のためのデータ線１０４を介して接続可能な少なくとも２つのノード１０１、１０２、１０３を含むデータ処理システム１００を駆動する装置は、上記の方法を実行するために協働するよう構成されたプロセッサ、メモリ、及び通信インタフェースを備える。本装置は、例えば、データバスを介して接続された１つ又は複数の制御装置で構成される。上記の相違点に至るまで、本装置は、好適にＣＡＮ仕様書に準拠して構成される。
【００９２】
ノード１０１、１０２、及び１０３又は本装置では、好適に、上記方法の工程を実行するよう構成されたコンピュータプログラムが実行される。好適に、様々なノードで複数の部分プログラムが実行され、このために様々なノードが協働する。
【図１】
2018526924.tif 000003
【図２】
2018526924.tif 000004
【図３】
2018526924.tif 000005
【図４】
2018526924.tif 000006
【図５】
2018526924.tif 000007
【手続補正書】
【提出日】平成30年4月26日(2018.4.26)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００４３
【補正方法】変更
【補正の内容】
【００４３】
サービスの記述を、メッセージ３０４、ＷｈｏｉｓＡＣＫにより、好適にメッセージ３０４のデータ部分で送信することが構想されうる。代替的に又は追加的に、サービスの記述を、好適に別のメッセージ又は複数の別のメッセージ（図示せず）のデータ部分で送信することが構想されうる。
【国際調査報告】
2018526924.tif 000008
2018526924.tif 000009
2018526924.tif 000010
2018526924.tif 000011