JPWO2011093492A1 - イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、プログラム - Google Patents

イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、プログラム Download PDF

Info

Publication number
JPWO2011093492A1
JPWO2011093492A1 JP2011551955A JP2011551955A JPWO2011093492A1 JP WO2011093492 A1 JPWO2011093492 A1 JP WO2011093492A1 JP 2011551955 A JP2011551955 A JP 2011551955A JP 2011551955 A JP2011551955 A JP 2011551955A JP WO2011093492 A1 JPWO2011093492 A1 JP WO2011093492A1
Authority
JP
Japan
Prior art keywords
node
event
identifier
partial
distribution
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
JP2011551955A
Other languages
English (en)
Inventor
多賀戸 裕樹
裕樹 多賀戸
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPWO2011093492A1 publication Critical patent/JPWO2011093492A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks

Abstract

転送ノード(10)には、イベント受信ノード(22)のノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されている。イベント受信部(11)は、イベント送信ノード(21)からのイベントを受信する。部分識別子抽出部(12)は、イベント送信元のイベント送信ノード(21)の識別子から、レベル記憶部(15)に記憶された階層レベルまでの部分識別子を抽出する。イベント送信部(13)は、イベント配信先記憶部(14)を検索して、部分識別子抽出部(12)が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、取得した部分識別子と同じノード識別子が設定される転送ノード(10)又は通知ノード(23)にイベントを送信する。

Description

本発明は、イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、コンピュータ読み取り可能な記録媒体に関し、更に詳しくは、イベント送信ノードが送信したイベントをイベント受信ノードに配信するためのイベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、そのためのプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
特許文献1は、センサやRFID(Radio Frequency Identification)などのデバイスから送信されるイベントを配信するシステム(イベント配信システム)が記載された文献である。イベント配信システムは、イベントを配信するための通信ネットワーク内に、複数の処理サーバ(以下、イベント配信ノードとも呼ぶ)を有する。イベント配信ノードは、センサやRFIDなどのデバイス(以下、イベント送信ノードとも呼ぶ)が送信するイベントを、当該イベントを処理するアプリケーション(以下、イベント受信ノードとも呼ぶ)へ配信する。
図9は、特許文献1に記載のイベント配信システムを示している。このイベント配信システムにおけるネッワーク(イベント配信ネットワーク)は、イベント処理分散制御装置201、振り分け器203、及び、複数の処理サーバ204を有する。各処理サーバ204には、イベント受信ノード(アプリケーション)206からの要求に応じて、処理ルール(イベント配信ルール)208が個別に設定されている。処理ルール208は、例えば、「全ての部材のRFIDタグを検出したらイベント受信ノードに通知」といったように、イベントを配信する上の条件が定義されたものである。
イベント送信ノード205(デバイス)は、振り分け器203に対してイベントを送信する。処理サーバ204は、振り分け器203を介してイベントを受信し、処理ルール208に従ってイベントを処理する。処理サーバ204は、処理ルール208で定義される条件が満たされると、イベント処理結果をイベント受信ノード206へ通知する。
イベント処理分散制御装置201は、イベント受信ノード206が要求するイベントの処理ルール208を処理サーバ204に設定する。また、イベント処理分散制御装置201は、振り分け器203が、処理ルール208を実行するために必要なイベントが適切に分配されるように、振り分け器203に対して、振り分けルール207を設定する。振り分け器203は、イベント送信ノード205からのイベントを受信すると、振り分けルール207に従って、当該イベントを処理すべき処理ルール208が設定された処理サーバ204にイベントを送信する。
特許文献1のイベント配信システムは、イベント配信ノードを複数の処理サーバ204で構成し、それら複数台の処理サーバ204に登録される処理ルール208を適切に分配している。このようにすることで、イベント送信ノード205の数の増大や、イベント配信ネットワークに送信されるイベントの数の増大に対して、スケーラビリティを実現できる。
特開2006−309701号公報
ここで、複数のイベント配信ネットワークを設けたイベント配信システムを考える。図10は、複数のイベント配信ネットワークを設けたイベント配信システムを示している。図10の例では、イベント配信システム内に、イベント配信ネットワーク301を2つ設けている。各イベント配信ネットワーク301は、それぞれ、図9の振り分け器203と処理サーバ204とを含む。イベント配信ネットワーク301は、例えば国、地方、都道府県など、地域を分けて設けられる。イベント配信ネットワーク301は、配下のイベント送信ノード302が送信するイベントを、イベント受信ノード303へ配信する。
図10において、イベント送信ノード302が、どのイベント配信ネットワーク301に対してイベントを送信するかは、イベント送信ノード302が存在する場所などに依存して決まる。例えば、イベント送信ノード302が、ユーザが所持する携帯端末装置に付されたRFIDタグであるとした場合、ユーザがある地域から別の地域へ移動すると、それに伴って、イベント送信ノード302が移動する。イベント送信ノード302が移動すると、イベント送信ノード302がイベントを送信するイベント配信ネットワーク301が、移動の前後で変化することがある。
イベント受信ノード303は、イベント配信ネットワーク301からイベントを受信するためには、処理ルールをイベント配信ネットワーク301内のイベント処理分散制御装置201(図9参照)を介して処理サーバ204に設定しておく必要がある。従って、イベント送信ノード302がイベントを送信するイベント配信ネットワーク301が変更になった場合、イベント受信ノード303は、移動先のイベント配信ネットワーク301内のイベント処理分散制御装置201を介して処理サーバ204へ、処理ルールを新たに登録し直す必要がある。
上記した問題を解消するためには、イベント配信システムを構成する全てのイベント配信ネットワーク301に、処理ルールを登録しておけばよい。しかし、その場合、全てのイベント受信ノード303に関する処理ルールが、全てのイベント配信ネットワーク301に登録されるため、イベント配信ネットワーク301の増大に伴い、登録される処理ルールの数が増大するという問題が生じる。
また、上記問題を解消するための構成として、全てのイベント送信ノード302が、全てのイベント配信ネットワーク301にイベントを送信する構成も考えられる。しかし、その場合、膨大なイベント送信に起因して、ネットワークの負荷増大が発生する。また、イベント送信ノード302が全てのイベント配信ネットワーク301にイベントを送信する構成であると、当該イベントを処理すべき処理ルールが設定された処理サーバ204を全く含まないイベント配信ネットワーク301にもイベントが送信されることになる。その場合、振り分け器203は、振り分け先がないにもかかわらず、振り分けルールを参照して振り分け先を調べなければならず、振り分け器203の処理負担が無用に大きくなってしまう。
イベント配信システムが、単一のイベント配信ネットワーク301しか持たないのであれば、上記の問題は生じない。しかし、イベントは必ず振り分け器203を通るため、イベント送信ノード302の数が膨大となると、振り分け器203は、膨大な数のイベントイベントを処理しなければならず、振り分け器203の負荷は増大する。振り分け器203を複数台のサーバで構成すれば、負荷分散を図ることはできる。しかし、全てのイベント送信ノード302からのイベントを振り分け可能にするためには、振り分け器203を構成する複数台のサーバのそれぞれが、全てのイベント送信ノード302からのイベントを振り分けるための振り分けルールを記憶しなければならない。このため、イベント配信システムで管理しなくてはならない振り分けルールの数が増加し、その管理も煩雑となるという問題が生じる。
上記した各問題点を解消するために、イベント配信システムを構成する各ノード(イベント送信ノード、イベント受信ノード、及び、イベント配信ノード)を識別するノード識別子に階層構造を導入したイベント配信システムを考えてみる。図11は、各ノードに階層化構造のノード識別子が付与されたイベント配信システムを示している。イベント配信ノード401、イベント送信ノード402、及び、イベント受信ノード403には、それぞれ、各ノードを一意に識別するための階層化されたノード識別子が付与されている。図11では、ノード識別子の階層の数は、4階層までとしている。また、図11では、各階層のノード識別子は英数字を用いて構成され、階層の区切り文字として、“.”(ピリオド)を用いている。
イベント配信ネットワーク400は、階層化されたイベント送信ノード402のノード識別子に対応したイベント配信ノード401を含む。より詳細には、イベント配信ネットワーク400は、木構造のルートに相当するイベント配信ノード401a(.)、イベント送信ノード402のノード識別子の階層レベル1でのノード識別子が設定されるイベント配信ノード401b〜401d(jp、cn、kr)、階層レベル2までのノード識別子が設定されるイベント配信ノード401e〜401g(jp.co、cn.co、kr.co)、及び、階層レベル3までのノード識別子が設定されるイベント配信ノード401h〜401j(jp.co.ex、cn.co.ex、kr.co.ex)を含む。また、イベント配信ネットワーク400は、階層レベル4までのノード識別子が設定されるイベント配信ノード、つまり、イベント送信ノード402のノード識別子と同一のノード識別子を有するイベント配信ノード401k〜401m(jp.co.ex.src1、cn.co.ex.src1、kr.co.ex.src1)を含む。
イベント配信システムにおける処理は、大きく分けて、イベント受信ノード403がイベント配信ネットワーク400に対して、イベント配信ルールを登録する処理と、イベント配信ネットワーク400が、イベント送信ノード402からのイベントをイベント受信ノード403へ送信する処理とがある。まず、イベントの配信を欲するイベント受信ノード403が、イベント配信ネットワーク400に対してイベント配信ルールを登録する際の処理を説明する。ここでは、イベント受信ノード403a(jp.co.ex.dst1)が、イベント送信ノード402c(kr.co.ex.src1)によりイベント配信ネットワーク400に入力されるイベントの配信を欲するものとする。
イベント受信ノード403a(jp.co.ex.dst1)は、イベント配信ルールを、イベント配信ノード401a(.)へ送信する。このイベント配信ルールは、イベント送信ノード402c(kr.co.ex.src1)がイベントを送信したとき、そのイベントをイベント受信ノード403a(jp.co.ex.dst1)に送信する旨を示す。イベント配信ノード401a(.)は、受信したイベント配信ルールを、イベント配信ルールに含まれるイベント送信ノードのノード識別子に従って、下位の階層のイベント配信ノードへ転送する。イベント受信ノード403a(jp.co.ex.dst1)が送信したイベント配信ルールは、イベント送信ノード402c(kr.co.ex.src1)からのイベントを欲する旨を示すので、イベント配信ノード401a(.)は、イベント配信ルールを、イベント配信ノード401d(kr)へ送信する。
イベント配信ノード401d(kr)は、受信したイベント配信ルールを、イベント配信ノード401g(kr.co)へ送信する。イベント配信ノード401g(kr.co)は、受信したイベント配信ルールを、イベント配信ノード401j(kr.co.ex)に送信する。イベント配信ノード401j(kr.co.ex)は、受信したイベント配信ルールを、イベント配信ノード401m(kr.co.ex.src1)に送信する。イベント配信ノード401m(kr.co.ex.src1)は、イベント送信ノード402c(kr.co.ex.src1)に対応したイベント配信ノードであるため、受信したイベント配信ルールを格納する。以上の流れは、図11中では、破線で示す矢印に対応する。
次いで、イベント送信ノードからイベント受信ノードまでのイベント転送を説明する。イベント送信ノード402c(kr.co.ex.src1)は、イベントをイベント配信ノード401a(.)に送信する。イベント配信ノード401a(.)は、イベント送信元のイベント送信ノードのノード識別子に従って、イベントをイベント配信ノード401d(kr)に送信する。イベント配信ノード401d(kr)は、受信したイベントをイベント配信ノード401g(kr.co)に送信する。イベント配信ノード401g(kr.co)は、受信したイベントをイベント配信ノード401j(kr.co.ex)に送信する。イベント配信ノード401j(kr.co.ex)は、受信したイベントをイベント配信ノード401m(kr.co.ex.src1)に送信する。以上の流れは、図11中では、実線で示す矢印に対応する。
イベント配信ノード401m(kr.co.ex.src1)は、格納されたイベント配信ルールを検査し、イベント配信ルールで指定された条件が満たされるとき、イベント受信ノード403a(jp.co.ex.dst1)に、イベント送信ノード402c(kr.co.ex.src1)からのイベントを送信する。イベント配信ノード401m(kr.co.ex.src1)は、イベント配信ルールを格納するときに、例えば、イベント受信ノード403a(jp.co.ex.dst1)のアドレスを記憶しておき、それを参照して、イベント受信ノード403a(jp.co.ex.dst1)へイベントを送信する。或いは、イベント配信ネットワーク400内に、各イベント受信ノード403のノード識別子に対応したイベント配信ノードを設けておき、そのイベント配信ノードからイベント受信ノード403a(jp.co.ex.dst1)へイベントを送信してもよい。その場合、イベント配信ノード401m(kr.co.ex.src1)は、イベント配信ノード401a(.)にイベントを送信する。イベント配信ネットワーク400では、イベント配信ノード401a(.)からイベント受信ノード403a(jp.co.ex.dst1)に対応したイベント配信ノードまでイベントを順次に転送し、最終的に、イベント受信ノード403a(jp.co.ex.dst1)に対応したイベント配信ノードから、イベント受信ノード403a(jp.co.ex.dst1)へイベントを送信する。
図11のイベント配信システムでは、イベント配信ノード401、イベント送信ノード402、及び、イベント受信ノード403に対して付与するノード識別子を階層化している。イベント配信ノード401は、イベント配信ネットワーク400にイベントが入力されると、そのイベントに含まれる、当該イベントの送信元のイベント送信ノード402のノード識別子に基づいて、イベントを転送する。イベントを、イベント配信ノード401間で転送し、当該イベントの送信元のイベント送信ノード402に対するイベント配信ルールを格納するイベント配信ノード401に転送することで、全てのイベント配信ノード401にイベント配信ルールを格納することなしに、効率的なイベント配信を実現できる。
しかしながら、図11のイベント配信システムでは、あるイベント送信ノードがイベント配信ネットワーク400に入力したイベントは、必ず、当該イベントの送信元のイベント送信ノードに対応するイベント配信ノードを経由して、イベント受信ノードに配信される。このため、あるイベント送信ノードから送信されるイベントの数が膨大である場合や、あるイベント送信ノードから送信されるイベントを欲するイベント受信ノードの数が膨大である場合には、そのイベント送信ノードに対応するイベント配信ノードの負荷が増大するという問題がある。
本発明は、上記の問題点を解消し、特定のイベント配信ノードに負荷が集中することを避けることができるイベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、そのためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
本発明の第1の観点に係るイベント配信システムは、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント送信ノード及びイベント受信ノードと、
前記イベント受信ノードのノード識別子に対応したノード識別子が予め付与されていると共に、特定のイベント送信ノードが送信したイベントを特定のイベント受信ノードに送信する旨を示すイベント配信ルールが登録され、前記イベント送信ノードから送信されたイベントを、前記登録されたイベント配信ルールに従って、対応するノード識別子を有するイベント受信ノードに送信する1以上の通知ノードと、
前記イベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されており、前記イベント送信ノードが送信したイベントを、前記ノード識別子の階層構造に従って前記通知ノードに向けて転送する複数の転送ノードとを備え、
前記転送ノードが、
前記イベント送信ノードからのイベントを受信するイベント受信手段と、
自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する第1の部分識別子抽出手段と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記第1の部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに前記イベントを送信するイベント送信手段とを備える。
本発明の第2の観点に係るイベント配信ノードは、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードであって、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからのイベントを受信するイベント受信手段と、
自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する第1の部分識別子抽出手段と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記第1の部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信するイベント送信手段とを備える。
本発明の第3の観点に係るイベント配信ネットワークは、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント受信ノードのノード識別子に対応したノード識別子が予め付与されていると共に、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント送信ノードのうちの特定のイベント送信ノードが送信したイベントを特定のイベント受信ノードに送信する旨を示すイベント配信ルールが登録され、前記イベント送信ノードから送信されたイベントを、前記登録されたイベント配信ルールに従って、対応するノード識別子を有するイベント受信ノードに送信する1以上の通知ノードと、
前記イベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されており、前記イベント送信ノードが送信したイベントを、前記ノード識別子の階層構造に従って前記通知ノードに向けて転送する複数の転送ノードとを備え、
前記転送ノードが、
前記イベント送信ノードからのイベントを受信するイベント受信手段と、
自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する部分識別子抽出手段と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに前記イベントを送信するイベント送信手段とを備える。
本発明の第4の観点に係るイベント配信方法は、
コンピュータが、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからイベントを受信するステップと、
コンピュータが、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードの前記ノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードの前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照して、イベントの送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出するステップと、
コンピュータが、前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記抽出された部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得するステップと、
コンピュータが、前記取得した部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信するステップとを有する。
本発明の第5の観点に係るコンピュータ読み取り可能な記録媒体は、
コンピュータに、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからイベントを受信する処理と、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードの前記ノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードの前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照して、イベントの送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する処理と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記抽出された部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得する処理と、
前記取得された部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信する処理とを実行させるプログラムを記録している。
本発明によれば、上記従来の問題点を解消し、特定のイベント配信ノードに負荷が集中することを避けることができる。
本発明のイベント配信システムの概要を説明するための図である。 本発明の一実施形態に係るイベント配信システムの構成を示す図である。 イベント配信ノード(転送ノード)の構成を示すブロック図である。 転送ノードによる、イベント配信ルール受信時の動作手順を示すフローチャートである。 転送ノードによる、イベント受信時の動作手順を示すフローチャートである。 実施例のイベント配信システムにおけるイベント配信ルール転送時の様子を示す図である。 実施例のイベント配信システムにおける別のイベント配信ルールを転送する際の様子を示す図である。 実施例のイベント配信システムにおけるイベント送信ノードがイベントを送信した際の様子を示す図である。 特許文献1に記載のイベント配信システムを示す図である。 複数のイベント配信ネットワークを設けたイベント配信システムを示す図である。 各ノードが階層化されたノード識別子を有するイベント配信システムを示す図である。
本発明の実施形態の説明に先立って、本発明の概要を説明する。図1は、本発明のイベント配信システムを示している。本発明のイベント配信システムは、それぞれ1以上のイベント送信ノード21、イベント受信ノード22、及び、通知ノード23を含む。また、本発明のイベント配信システムは、複数の転送ノード10を含む。イベント送信ノード21及びイベント受信ノード22には、それぞれ、階層構造を持ち、各ノードを一意に識別するノード識別子が設定されている。通知ノード23には、イベント受信ノード22のノード識別子に対応したノード識別子が設定される。転送ノード10には、イベント受信ノード22のノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として設定される。
各転送ノード10及び各通知ノード23は、イベント配信ネットワークにおいて、イベント送信ノード21が送信したイベントをイベント受信ノード22まで配信するノード(イベント配信ノード)として機能する。転送ノード10は、イベント送信ノード21が送信したイベントを、ノード識別子の階層構造に従って、通知ノード23に向けて転送する。通知ノード23は、特定のイベント送信ノード21が送信したイベントを特定のイベント受信ノード22に送信する旨を示すイベント配信ルール24を記憶装置などに記憶している。通知ノード23は、イベント配信ルール24に従って、イベント送信ノード21が送信したイベントを、自ノードのノード識別子に対応するノード識別子を有するイベント受信ノード22に送信する。なお、イベント配信ルール24は、通知ノード23から参照可能であればよく、通知ノード23内に記憶されている必要はない。
転送ノード10は、イベント受信部11と、部分識別子抽出部12と、イベント送信部13と、イベント配信先記憶部14と、レベル記憶部15と、を有する。レベル記憶部15は、自転送ノード10に設定されたノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶する。イベント配信先記憶部14は、イベント送信ノード21のノード識別子のうち、レベル記憶部15に記憶された階層レベルまでの部分識別子と、イベント受信ノード22のノード識別子のうち、レベル記憶部15に記憶された階層レベルまでの部分識別子とを対応付けて記憶する。なお、イベント配信先記憶部14及びレベル記憶部15は、転送ノード10の外部に構成されていてもよい。
イベント受信部11は、イベント送信ノード21から送信されたイベントを受信する。部分識別子抽出部(第1の部分識別子抽出手段)12は、レベル記憶部15を参照し、イベント送信元のイベント送信ノード21のノード識別子から、レベル記憶部15に記憶された階層レベルまでの部分識別子を抽出する。イベント送信部13は、イベント配信先記憶部14を検索して、部分識別子抽出部12が抽出した部分識別子と対応付けて記憶されたイベント受信ノード22の部分識別子を取得する。イベント送信部13は、取得した部分識別子と同じノード識別子が設定された、他の転送ノード10又は通知ノード23に、イベントを送信する。
本発明では、イベント送信ノード21、イベント受信ノード22、通知ノード23、及び、転送ノード10のそれぞれに、階層構造を持つノード識別子を導入する。転送ノード10は、イベント送信ノード21から送信されたイベントを受信すると、イベント配信先記憶部14から、イベント送信元のイベント送信ノードの部分識別子と対応付けて記憶されたイベント受信ノード22の部分識別子を取得する。転送ノード10は、受信したイベントを、イベント配信先記憶部14から取得した部分識別子と同じノード識別子が設定された転送ノード10又は通知ノード23に送信する。転送ノード10間でイベントを転送することで、イベントを、そのイベントを処理すべきイベント受信ノード22に対応した通知ノード23まで転送できる。
例えば、同一のイベント送信ノード21が送信するイベントの配信を欲するイベント受信ノード22が複数あるときを考える。当該イベント送信ノード21がイベントを送信すると、イベント配信ネットワークでは、転送ノード10間でノード識別子の階層構造に従ってイベントを送受信する。そして、当該イベントの配信を欲する複数のイベント受信ノード22のそれぞれに対応したノード識別子が設定される通知ノード23までイベントを転送する。仮に、イベントを、イベント送信ノードのノード識別子に対応するイベント配信ノード(通知ノード)へ転送したとすると、その通知ノードにて、複数のイベント受信ノードに対応したイベント配信ルールを検査する必要が生じる。本発明では、イベントの転送先を、イベント受信ノード22のノード識別子に対応した通知ノード23にしているため、あるイベント送信ノード21が送信するイベントを欲するイベント受信ノード22が複数ある場合でも、特定のイベント配信ノード(通知ノード23)に負荷が集中することを避けることができる。
以下、図面を参照しつつ、本発明の実施形態を詳細に説明する。図2は、本発明の一実施形態に係るイベント配信システムを示している。このイベント配信システムは、イベント配信ネットワーク100を含む。イベント配信ネットワーク100は、イベント送信ノード131が送信したイベントを、イベント受信ノード132に配信する。イベント配信ネットワーク100は、階層化された複数のイベント配信ノードを含む。イベント配信ノードは、イベントをイベント受信ノード132に送信する通知ノード102と、イベントを通知ノード102まで転送する転送ノード101とに大別される。イベント配信システムの全体的な構成は、図11に示すイベント配信システムと同様である。
イベント送信ノード131及びイベント受信ノード132には、それぞれ、階層構造を持ち、ノードを一意に識別するノード識別子が設定されている。イベント配信ノードのうち、通知ノード102には、イベント受信ノード132のノード識別子に対応したノード識別子が設定される。また、イベント配信ノードのうち、転送ノード101には、イベント受信ノード132のノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として設定される。イベント受信ノード132の識別子の階層数をnとすれば、イベント配信ノードのうち、階層レベル0〜n−1までの階層のイベント配信ノードが転送ノード101を構成し、階層レベルnのイベント配信ノードが通知ノード102を構成する。各イベント配信ノード(転送ノード101、通知ノード102)は、プログラム制御で動作するコンピュータシステムで構成できる。
通知ノード102には、イベントを処理するためのイベント配信ルールが図示しない記憶装置に記憶されている。イベント配信ルールは、特定のイベント送信ノード131が送信したイベントを特定のイベント受信ノード132に送信する旨を示す。イベント配信ルールは、イベント送信元のイベント送信ノード131のノード識別子と、イベント送信先のイベント受信ノード132のノード識別子とを含む。また、イベント配信ルールは、イベントをイベント受信ノード132に送信する際の条件を含む。各通知ノード101には、自ノードに設定されたノード識別子と同じノード識別子のイベント受信ノード132をイベント送信先とするイベント配信ルールが登録される。
転送ノード101は、イベント送信ノード131が送信したイベントを、ノード識別子の階層構造に従って、そのイベントを処理すべきイベント配信ルールが登録された通知ノード102に向けて転送する。転送ノード101は、ノード識別子の階層構造において、次の階層レベルに位置付けられるノード識別子が設定された転送ノード101又は通知ノード102のアドレスを保持している。通知ノード102は、転送ノード101を介して、イベントを受信する。通知ノード102は、イベントを受信すると、図示しない検査部を用いて、当該イベントに関係するイベント配信ルールを検査する。通知ノード102は、イベント配信ルールで定義される条件が満たされるとき、図示しないイベント送信部を用いて、受信したイベントを、自ノードのノード識別子に対応するノード識別子を有するイベント受信ノード132に送信する。
図3は、転送ノード101の構成を示している。転送ノード101は、送受信部111、処理部112、イベント配信先記憶部113、及び、レベル記憶部114を有する。レベル記憶部114は、自転送ノード101に設定されたノード識別子の階層レベルよりも1つ下位の階層レベルを記憶する。つまり、レベル記憶部114は、自転送ノード101の階層レベルよりも1つ下位の階層レベルが、階層化されたノード識別子の階層において何階層目に位置づけられるかを示す情報を記憶する。イベント配信先記憶部113は、イベント送信ノード131のノード識別子の部分識別子と、1以上のイベント送信先となるイベント配信ノードのノード識別子(識別子リスト)とのペアを1エントリとするイベント配信先テーブルを記憶する。
ここで、部分識別子とは、ノード識別子から、ある階層レベルまでの部分を抽出した識別子である。イベント配信ノードのノード識別子は、イベント受信ノード132の部分識別子で構成されるため、イベント配信先記憶部113は、イベント送信ノード131のノード識別子の部分識別子と、1以上のイベント受信ノード132におけるノード識別子の部分識別子とを対応付けて記憶しているのと等価である。
送受信部111は、イベント受信部115、イベント送信部116、配信ルール受信部117、及び、配信ルール送信部118を含む。イベント受信部115は、イベント送信ノード131から送信されたイベント受信する。或いは、イベント受信部115は、自転送ノード101よりも階層レベルが上位のノード識別子が設定された転送ノード101から送信されたイベントを受信する。イベント受信部115は、イベントを受信すると、受信したイベントを処理部112に渡す。イベント送信部116は、処理部112からの指示に従って、自転送ノード101よりも階層レベルが下位の転送ノード101、又は、通知ノード102にイベントを送信する。
配信ルール受信部117は、イベント受信ノード132から送信されたイベント配信ルールを受信する。或いは、配信ルール受信部117は、自転送ノード101よりも階層レベルが上位のノード識別子が設定された転送ノード101から送信されたイベント配信ルールを受信する。配信ルール受信部117は、イベント配信ルールを受信すると、受信したイベント配信ルールを処理部112に渡す。配信ルール送信部118は、処理部112からの指示に従って、自転送ノード101よりも階層レベルが下位の転送ノード101、又は、通知ノード102に、イベント配信ルールを送信する。
処理部112は、部分識別子抽出部(第1の部分識別子抽出手段)119、転送先検索部120、部分識別子抽出部(第2の部分識別子抽出手段)121、及び、イベント配信先登録部122を含む。部分識別子抽出部121は、送受信部111からイベント配信ルールを受け取る。部分識別子抽出部121は、イベント配信ルールを受け取ると、当該イベント配信ルールに含まれるイベント送信ノード131及びイベント受信ノード132のノード識別子を取り出す。部分識別子抽出部121は、取り出したノード識別子のそれぞれから、レベル記憶部114に記憶されている階層レベルまでの部分識別子を抽出する。なお、レベル記憶部114に記憶される階層レベルが、ノード識別子の最下位の階層レベルを示すとき、抽出される部分識別子は、イベント送信ノード131及びイベント受信ノード132のノード識別子と等しい。本明細書においては、このような場合も、便宜上、部分識別子と呼ぶこととする。
部分識別子抽出部121は、イベント配信ルールから抽出した部分識別子をイベント配信先登録部122に渡す。イベント配信先登録部122は、イベント配信ルールから抽出されたイベント送信ノード131の部分識別子と、イベント受信ノード132の部分識別子とを対応付けてイベント配信先記憶部113に保存する。その際、イベント配信先登録部122は、イベント配信先記憶部113に、イベント送信ノード131のノード識別子から抽出された部分識別子が記憶済みであるか否か、つまり、イベント配信先テーブルに、イベント送信ノード131のノード識別子から抽出された部分識別子が格納されたエントリが既に存在するか否かを調べる。イベント配信先登録部122は、該当するエントリが存在すると判断すると、記録済みのイベント送信ノード131の部分識別子と対応付けて記憶されるイベント受信ノード132の識別子リストに、イベント受信ノード132のノード識別子から抽出された部分識別子を追加する。
部分識別子抽出部121は、イベント配信ルールから抽出したイベント受信ノード132の部分識別子を配信ルール送信部118に渡し、イベント配信ノードの送信を指示する。配信ルール送信部118は、当該指示を受けると、次の階層レベルに位置付けられるノード識別子が設定されたイベント配信ノードのうちで、部分識別子抽出部121から渡された部分識別子に対応するノード識別子が設定された転送ノード101又は通知ノード102に、イベント配信ルールを送信する。
部分識別子抽出部119は、送受信部111からイベントを受け取る。部分識別子抽出部119は、受け取ったイベントのイベント送信元のイベント送信ノード131のノード識別子を調べる。部分識別子抽出部119は、レベル記憶部114を参照し、イベント送信元のイベント送信ノード131のノード識別子から、レベル記憶部114に記憶された階層レベルまでの部分識別子を抽出する。部分識別子抽出部119は、抽出したイベント送信ノード131の部分識別子を転送先検索部120に渡す。
転送先検索部120は、イベント送信ノード131の部分識別子を受け取ると、イベント配信先記憶部113を検索し、受け取った部分識別子と対応付けて記憶されたイベント受信ノード132の部分識別子を取得する。転送先検索部120は、1つのイベント送信ノード131の部分識別子に対して、複数のイベント受信ノード132の部分識別子が記憶されているときは、それら複数のイベント受信ノード132の部分識別子を取得する。転送先検索部120は、取得したイベント受信ノード132の部分識別子をイベント送信部116に渡し、イベントの送信を指示する。イベント送信部116は、指示に従って、受け取った部分識別子と同じノード識別子が設定される転送ノード101又は通知ノード102にイベントを送信する。
図4は、転送ノード101がイベント配信ルールを受信したときの動作手順を示している。配信ルール受信部117は、イベント受信ノード132、又は、上位の階層レベルの転送ノード101から、イベント配信ルールを受信する(ステップA1)。配信ルール受信部117は、受信したイベント配信ルールを部分識別子抽出部121に送る。
部分識別子抽出部121は、イベント配信ルールを受け取ると、そのイベント配信ルールに含まれているイベント送信ノード131、及び、イベント受信ノード132のノード識別子を取り出す(ステップA2)。部分識別子抽出部121は、レベル記憶部114から、階層レベルの値を取得する。部分識別子抽出部121は、ステップA2で取り出したイベント送信ノード131のノード識別子、及び、イベント受信ノード132のノード識別子から、それぞれ、取得した階層レベルまでの部分識別子を抽出する(ステップA3)。
部分識別子抽出部121は、抽出したイベント送信ノード131及びイベント受信ノード132の部分識別子をイベント配信先登録部122に送る。イベント配信先登録部122は、受け取ったイベント送信ノード131の部分識別子を検索キーとして用い、イベント配信先記憶部113が格納するイベント配信先テーブルを検索する(ステップA4)。イベント配信先登録部122は、ステップA3で抽出されたイベント送信ノード131の部分識別子とイベント受信ノード132の部分識別子とのペアに合致するエントリが存在するか否かを判断する(ステップA5)。
イベント配信先登録部122は、イベント配信先テーブルに検索キーに合致するエントリ自体が存在しないときは、ステップA5で合致するエントリが存在しないと判断する。イベント配信先登録部122は、検索キーに合致するエントリが存在するときは、そのエントリの識別子リストの中に、ステップA3で抽出したイベント受信ノード132の部分識別子が含まれる否かを判断する。イベント配信先登録部122は、識別子リストの中に、抽出したイベント受信ノード132の部分識別子が含まれるときは、ステップA5で合致するエントリが存在すると判断し、含まれないときは、合致するエントリが存在しないと判断する。
イベント配信先登録部122は、ステップA5で合致するエントリが存在しないと判断すると(ステップA5;N)、イベント配信先記憶部113に、イベント送信ノード131の部分識別子とイベント受信ノード132の部分識別子とのペアを格納する(ステップA6)。その際、イベント配信先登録部122は、イベント配信先テーブルに、イベント送信ノード131の部分識別子に合致するエントリ自体が存在しないときは、新たなエントリを生成し、そのエントリに、イベント送信ノード131の部分識別子と、イベント受信ノード132の部分識別子とを対応付けて格納する。また、イベント配信先登録部122は、イベント配信先テーブルに、イベント送信ノード131の部分識別子に合致するエントリが存在しているときは、そのエントリの識別子リストに、抽出したイベント受信ノード132の部分識別子を追加する。
ステップA6の処理後、部分識別子抽出部121は、ステップA3で抽出したイベント受信ノード132の部分識別子を配信ルール送信部118に渡し、イベント配信ルールを、次のイベント配信ノードに送信するように指示する。配信ルール送信部118は、指示に従い、イベント配信ルールを、部分識別子抽出部121から受け取った部分識別子と同じノード識別子が設定されたイベント配信ノード(転送ノード101又は通知ノード102)、つまり、次の階層レベルのイベント配信ノードに送信する(ステップA7)。
イベント配信先登録部122は、ステップA5で合致するエントリが存在すると判断したときは(ステップA5;Y)、イベント配信先記憶部113への部分識別子のペアの記憶を行わない。その場合、転送ノード101の処理は、ステップA5からステップA7へ進み、新たなイベント配信先テーブルの記憶を行わずに、配信ルール送信部118から、次の階層レベルのイベント配信ノードにイベント配信ルールを送信する。
イベント配信ネットワーク100では、転送ノード101が、図4に示す手順でイベント配信ルールを次の階層レベルのイベント配信ノードに転送することで、最終的に、通知ノード102にイベント配信ルールが到達する。通知ノード102は、イベント配信ルールを受信すると、図示しない記憶装置などにイベント配信ルールを登録する。イベント配信ルールが通知ノード102に登録されることで、イベント受信ノード132へのイベント送信の準備が整う。
図5は、転送ノード101がイベントを受信したときの動作手順を示している。イベント受信部115は、イベント送信ノード132、又は、上位の階層の転送ノード101から、イベントを受信する(ステップB1)。イベント受信部115は、受信したイベントを部分識別子抽出部119に渡す。
部分識別子抽出部119は、イベントを受け取ると、イベントに含まれているイベント送信ノード131のノード識別子を取り出す(ステップB2)。部分識別子抽出部119は、レベル記憶部114から、階層レベルの値を取得する。部分識別子抽出部119は、ステップB2で取り出したイベント送信ノード131のノード識別子から、取得した階層レベルまでの部分識別子を抽出する(ステップB3)。
部分識別子抽出部119は、抽出したイベント送信ノード131の部分識別子を転送先検索部120に送る。転送先検索部120は、受け取ったイベント送信ノード131の部分識別子をキーとして用い、イベント配信先記憶部113が格納するイベント配信先テーブルを検索する(ステップB4)。転送先検索部120は、検索の結果、ステップB3で抽出したイベント送信ノード131の部分識別子が格納されたエントリが存在するか否かを判断する(ステップB5)。
転送先検索部120は、イベント送信ノード131の部分識別子が格納されたエントリが存在するときは(ステップB5;Y)、そのエントリに格納された識別子リストを取得する。転送先検索部120は、取得した識別子リストに含まれるイベント受信ノード132の部分識別子(イベント配信ノードのノード識別子)を、イベント送信部116に渡し、イベントの送信を指示する。イベント送信部116は、識別子リストに含まれるノード識別子が設定されたイベント配信ノード(転送ノード101又は通知ノード102)に対し、ステップB1で受信されたイベントを送信する(ステップB6)。転送先検索部120は、ステップB5でイベント送信ノード131の部分識別子が格納されたエントリが存在しないと判断したときは(ステップB5;N)、そのまま処理を終了する。
本実施形態では、イベント送信ノード131及びイベント受信ノード132のそれぞれに、階層構造を持つノード識別子を設定する。また、イベント配信ノードのうち、通知ノード102にはイベント受信ノード132のノード識別子に対応したノード識別子を設定し、転送ノード101にはイベント受信ノード132のノード識別子のうちの特定の階層レベルまでの部分識別子から成るノード識別子を設定する。転送ノード101は、イベントを受信すると、イベント送信元のイベント送信ノード131のノード識別子から、自ノードに設定されたノード識別子の階層レベルよりも1つ下位の階層レベルまでの部分識別子を抽出する。転送ノード101は、イベント配信先記憶部113から、抽出した部分識別子と対応付けて記憶された識別子リストを取得し、取得した識別子リストに含まれる識別子のイベント配信ノード(転送ノード101又は通知ノード102)にイベントを送信する。本実施形態では、通知ノード102は、イベント受信ノード132に対応したノードであるため、ある特定のイベント送信ノード131から送信されるイベントの数が膨大である場合や、ある特定のイベント送信ノード131から送信されるイベントを欲するイベント受信ノード132の数が膨大である場合でも、特定のイベント配信ノードの負荷が上昇することを抑制することができる。
本実施形態では、転送ノード101は、通知ノード102に登録されるイベント配信ルールに含まれるイベント送信ノード131のノード識別子、及び、イベント受信ノード132のノード識別子から、それぞれ、自ノードに設定されたノード識別子の階層レベルよりも1つ下位の階層レベルまでの部分識別子を抽出する。転送ノード101は、抽出したイベント送信ノード131の部分識別子と、イベント受信ノード132の部分識別子とを、対応付けてイベント配信先記憶部113に格納する。イベント配信先記憶部113に、このように部分識別子を対応付けて格納することで、イベント送信ノード131がイベントを送信したとき、そのイベントを、当該イベントを処理すべきイベント配信ルールを保持する通知ノード102まで転送することができる。
本実施形態では、転送ノード101は、イベント受信ノード132からのイベント配信ルールを受信すると、イベント受信ノード132のノード識別子から抽出した、自ノードに設定されたノード識別子の階層レベルよりも1つ下位の階層レベルの部分識別子が設定されたイベント配信ノード(転送ノード101又は通知ノード102)に送信する。このようにすることで、イベント配信ルールを、そのイベント配信ルールでイベント送信先となるイベント受信ノード132に対応した通知ノード102まで転送して、その通知ノード102にイベント配信ルールを登録することができる。また、同一のイベント送信ノード131からのイベントを欲するイベント受信ノード132が複数あるとき、各イベント受信ノード132に対応したイベント配信ルールを複数のイベント配信ノードに分散して登録することができる。
以下、実施例を説明する。本実施例では、イベント送信ノード、イベント受信ノード、及び、イベント配信ノードに付与するノード識別子に、英数字で構成される文字列を用いる。また、階層の区切り文字として、“.”(ピリオド)を用いる。各階層におけるノード識別子の具体例を、以下に列挙する。
第0階層:.(ピリオド)
第1階層:jp, cn, krなど
第2階層:jp.co, cn.co, kr.coなど
第3階層:jp.co.ex, cn.co.ex, kr.co.exなど
第4階層:jp.co.ex.src1, jp.co.ex.dst1など
本実施例では、各階層のノード識別子に対応するイベント配信ノードには、自身のノード識別子の階層レベルよりも1つ下の階層のノード識別子に対応するイベント配信ノードのアドレスが設定され、図示しない所定の記憶部に格納されているものとする。例えば、ノード識別子.(ピリオド)に対応するイベント配信ノードは、jp、cn、krなどのノード識別子が付与されたイベント配信ノードのアドレスを保持している。また、ノード識別子jpのイベント配信ノードは、jp.co、jp.ne、jp.adなどのノード識別子が付与されたイベント配信ノードのアドレスを保持し、ノード識別子cnのイベント配信ノードは、cn.co、cn.ne、cn.adなどのノード識別子が付与されたイベント配信ノードのアドレスを保持している。
ノード識別子.(ピリオド)のイベント配信ノードは、全てのイベント受信ノードが送信したイベント配信ルールを受信する。また、ノード識別子.(ピリオド)のイベント配信ノードは、全てのイベント送信ノードが送信したイベントを受信する。各イベント送信ノード及び各イベント受信ノードは、ノード識別子.(ピリオド)のイベント配信サーバのアドレスを保持している。
なお、本実施例では、イベント受信ノードが送信したイベント配信ルール、及び、イベント送信ノードが送信したイベントは、全てノード識別子.(ピリオド)のイベント配信ノードに送信されるため、そのイベント配信ノードの負荷が増大する可能性がある。この問題に対しては、ノード識別子.(ピリオド)に対応するイベント配信ノードを、イベント配信ネットワーク内に複数設置しておけばよい。
イベント配信ネットワークは、各イベント受信ノードに対応するイベント配信ノード(通知ノード)を含んでいる。各通知ノードは、対応するイベント受信ノードのアドレスを図示しない所定の記憶部に格納しているとする。イベント受信ノードの移動に伴い、イベント受信ノードのアドレスが変化したとき、イベント受信ノードは、その旨を対応する通知ノードに通知する。通知を受けた通知ノードは、イベント受信ノードのアドレスを変更する。
図6は、イベント配信ルール転送時の様子を示している。イベント受信ノード132a(jp.co.ex.dst1)は、イベント送信ノード131c(kr.co.ex.src1)が送信するイベントを欲しているとする。イベント受信ノード132a(jp.co.ex.dst1)は、イベント送信ノード131c(kr.co.ex.src1)からのイベントを受信したい旨のイベント配信ルールを、イベント配信ノード(転送ノード)101a(.)に送信する。
転送ノード101a(.)のレベル記憶部114(図3参照)は、階層レベル“1”を記憶している。転送ノード101a(.)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“1”までの部分識別子を抽出する。すなわち、部分識別子抽出部121は、イベント送信ノードのノード識別子kr.co.ex.src1から部分識別子krを抽出し、イベント受信ノードのノード識別子jp.co.ex.dst1から部分識別子jpを抽出する。
イベント配信先登録部122は、イベント送信ノードの部分識別子krをキーに、イベント配信先記憶部113を検索する。イベント配信先登録部122は、イベント送信ノードの部分識別子に、部分識別子krが格納されたエントリが存在しないときは、イベント送信ノードの部分識別子krと、イベント受信ノードの部分識別子jpとのペアを、イベント配信先記憶部113に記憶する。より詳細には、イベント配信先登録部122は、イベント配信先テーブルに新たなエントリを作成し、そのエントリのイベント送信ノードの部分識別子に部分識別子krを格納し、イベント配信ノードのノード識別子(識別子リスト)にイベント受信ノードの部分識別子jpを格納する。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである転送ノード101b(jp)に送信する。
転送ノード101b(jp)のレベル記憶部114は、階層レベル“2”を記憶している。転送ノード101b(jp)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“2”までの部分識別子を抽出する。すなわち、部分識別子抽出部121は、イベント送信ノードのノード識別子kr.co.ex.src1から部分識別子kr.coを抽出し、イベント受信ノードのノード識別子jp.co.ex.dst1から部分識別子jp.coを抽出する。
イベント配信先登録部122は、イベント送信ノードの部分識別子kr.coをキーに、イベント配信先記憶部113を検索する。イベント配信先登録部122は、イベント送信ノードが部分識別子kr.coとなっているエントリが存在しないときは、イベント送信ノードの部分識別子kr.coと、イベント受信ノードの部分識別子jp.coとのペアを、イベント配信先記憶部113に格納する。より詳細には、イベント配信先登録部122は、イベント配信先テーブルに新たなエントリを作成し、そのエントリのイベント送信ノードの部分識別子に部分識別子kr.coを格納し、イベント配信ノードのノード識別子にイベント受信ノードの部分識別子jp.coを格納する。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである転送ノード101e(jp.co)に送信する。
転送ノード101e(jp.co)のレベル記憶部114は、階層レベル“3”を記憶している。転送ノード101e(jp.co)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“3”までの部分識別子を抽出する。すなわち、部分識別子抽出部121は、イベント送信ノードのノード識別子kr.co.ex.src1から部分識別子kr.co.exを抽出し、イベント受信ノードのノード識別子jp.co.ex.dst1から部分識別子jp.co.exを抽出する。
イベント配信先登録部122は、イベント送信ノードの部分識別子kr.co.exをキーに、イベント配信先記憶部113を検索する。イベント配信先登録部122は、イベント送信ノードが部分識別子kr.co.exとなっているエントリが存在しないときは、イベント送信ノードの部分識別子kr.co.exと、イベント受信ノードの部分識別子jp.co.exとのペアを、イベント配信先記憶部113に格納する。より詳細には、イベント配信先登録部122は、イベント配信先テーブルに新たなエントリを作成し、そのエントリのイベント送信ノードの部分識別子に部分識別子kr.co.exを格納し、イベント配信ノードのノード識別子にイベント受信ノードの部分識別子jp.co.exを格納する。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである転送ノード101h(jp.co.ex)に送信する。
転送ノード101h(jp.co.ex)のレベル記憶部114は、階層レベル“4”を記憶している。転送ノード101h(jp.co.ex)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“4”までの部分識別子を抽出する。すなわち、部分識別子抽出部121は、イベント送信ノードのノード識別子kr.co.ex.src1から部分識別子kr.co.ex.src1を抽出し、イベント受信ノードのノード識別子jp.co.ex.dst1から部分識別子jp.co.ex.dst1を抽出する。なお、ノード識別子は4つの階層で構成されるため、ノード識別子と、第4階層まで抽出した部分識別子とは等しいが、このような識別子も便宜上、部分識別子と呼ぶ。
イベント配信先登録部122は、イベント送信ノードの部分識別子kr.co.ex.src1をキーに、イベント配信先記憶部113を検索する。イベント配信先登録部122は、イベント送信ノードが部分識別子kr.co.ex.src1となっているエントリが存在しないときは、イベント送信ノードのノード識別子kr.co.ex.src1と、イベント受信ノードのノード識別子jp.co.ex.dst1とのペアを、イベント配信先記憶部113に格納する。より詳細には、イベント配信先登録部122は、イベント配信先テーブルに新たなエントリを作成し、そのエントリのイベント送信ノードの部分識別子に部分識別子kr.co.ex.src1を格納し、イベント配信ノードのノード識別子にイベント受信ノードの部分識別子jp.co.ex.dst1を格納する。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである通知ノード102a(jp.co.ex.dst1)に送信する。
通知ノード102a(jp.co.ex.dst1)では、図示しない配信ルール受信部が転送ノード101aから、転送ノード101b、転送ノード101e、転送ノード10hを経由して転送されたイベント配信ルールを受信する。図示しないイベント配信ルール登録部は、イベント配信ルールのイベント送信先が、自通知ノードのノード識別子に対応したイベント受信ノードであることを確認した上で、イベント配信ルールを図示しない記憶部に格納する。
図7は、別のイベント配信ルールを転送する際のイベント配信システムの様子を示している。イベント受信ノード132b(cn.co.ex.dst1)が、イベント送信ノード131c(kr.co.ex.src1)が送信するイベントを欲しているとする。イベント受信ノード132b(cn.co.ex.src1)は、イベント送信ノード131c(kr.co.ex.src1)からのイベントを受信したい旨のイベント配信ルールを、転送ノード101a(.)に送信する。
転送ノード101a(.)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“1”までの部分識別子を抽出する。すなわち、部分識別子抽出部121は、イベント送信ノードのノード識別子kr.co.ex.src1から部分識別子krを抽出し、イベント受信ノードのノード識別子cn.co.ex.dst1から部分識別子cnを抽出する。
イベント配信先登録部122は、イベント送信ノードの部分識別子krをキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、既に、イベント受信ノード132a(jp.co.ex.dst1)からのイベント配信ルールを処理した際に、イベント送信ノードの部分識別子krに該当するエントリが格納されている。イベント配信先登録部122は、当該エントリのイベント配信ノードのノード識別子に、イベント受信ノードの部分識別子cnを追加する。イベント配信先登録部122が部分識別子cnを追加することで、イベント配信先テーブルには、イベント送信ノードの部分識別子krと、イベント配信ノードの識別子リスト{jp、cn}とを対応付けて格納される。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである転送ノード101c(cn)に送信する。
転送ノード101c(cn)のレベル記憶部114は、“2”を記憶している。転送ノード101c(cn)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“2”までの部分識別子を抽出する。すなわち、部分識別子抽出部121は、イベント送信ノードのノード識別子kr.co.ex.src1から部分識別子kr.coを抽出し、イベント受信ノードのノード識別子cn.co.ex.dst1から部分識別子cn.coを抽出する。
イベント配信先登録部122は、イベント送信ノードの部分識別子kr.coをキーに、イベント配信先記憶部113を検索する。イベント配信先登録部122は、イベント送信ノードが部分識別子kr.coとなっているエントリが存在しないときは、イベント送信ノードの部分識別子kr.coと、イベント受信ノードの部分識別子cn.coとのペアを、イベント配信先記憶部113に格納する。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである転送ノード101f(cn.co)に送信する。
転送ノード101f(cn.co)のレベル記憶部114は、階層レベル“3”を記憶している。転送ノード101e(cn.co)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“3”までの部分識別子を抽出する。すなわち、部分識別子抽出部121は、イベント送信ノードのノード識別子kr.co.ex.src1から部分識別子kr.co.exを抽出し、イベント受信ノードのノード識別子cn.co.ex.dst1から部分識別子cn.co.exを抽出する。
イベント配信先登録部122は、イベント送信ノードの部分識別子kr.co.exをキーに、イベント配信先記憶部113を検索する。イベント配信先登録部122は、イベント送信ノードが部分識別子kr.co.exとなっているエントリが存在しないときは、イベント送信ノードの部分識別子kr.co.exと、イベント受信ノードの部分識別子cn.co.exとのペアを、イベント配信先記憶部113に格納する。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである転送ノード101i(cn.co.ex)に送信する。
転送ノード101i(cn.co.ex)のレベル記憶部114は、階層レベル“4”を記憶している。転送ノード101i(cn.co.ex)の部分識別子抽出部121は、イベント配信ルールから、イベント送信ノードのノード識別子と、イベント受信ノードのノード識別子とを取り出し、それらノード識別子から階層レベル“4”までの部分識別子を抽出する。ノード識別子は4つの階層で構成されるため、抽出された部分識別子は、イベント送信ノードのノード識別子kr.co.ex.src1、及び、イベント受信ノードのノード識別子cn.co.ex.dst1とそれぞれ等しい。
イベント配信先登録部122は、イベント送信ノードの部分識別子kr.co.ex.src1をキーに、イベント配信先記憶部113を検索する。イベント配信先登録部122は、イベント送信ノードが部分識別子kr.co.ex.src1となっているエントリが存在しないときは、イベント送信ノードのノード識別子kr.co.ex.src1と、イベント受信ノードのノード識別子cn.co.ex.dst1とのペアを、イベント配信先記憶部113に格納する。配信ルール送信部118は、イベント配信ルールを、次のイベント配信ノードである通知ノード102b(cn.co.ex.dst1)に送信する。
通知ノード102b(jp.co.ex.dst1)では、図示しない配信ルール受信部が転送ノード101aから、転送ノード101c、転送ノード101f、転送ノード10iを経由して転送されたイベント配信ルールを受信する。図示しないイベント配信ルール登録部は、イベント配信ルールのイベント送信先が、自通知ノードのノード識別子に対応したイベント受信ノードであることを確認した上で、イベント配信ルールを図示しない記憶装置に登録する。
図8は、イベント送信ノードがイベントを送信した際のイベント配信システムの様子を示している。イベント送信ノード131c(kr.co.ex.src1)は、転送ノード101a(.)に、イベントを送信する。転送ノード101a(.)の部分識別子抽出部119は、イベント送信ノードのノード識別子kr.co.ex.src1から、階層レベル“1”までの部分識別子krを抽出する。
転送ノード101a(.)の転送先検索部120は、抽出された部分識別子krをキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、イベント送信ノードの部分識別子krに対応して、イベント配信ノードのノード識別子{jp、cn}が格納されている(図7参照)。転送先検索部120は、イベントを送信すべきイベント配信ノードが、ノード識別子jpの転送ノード101bと、ノード識別子cnの転送ノード101cとの2つであると認識して、イベント送信部116に対して、それら2つの転送ノードにイベントを送信するように指示する。イベント送信部116は、転送ノード101b(jp)と、転送ノード101c(cn)とに、それぞれイベントを送信する。
転送ノード101b(jp)の部分識別子抽出部119は、イベント送信ノードのノード識別子kr.co.ex.src1から、階層レベル“2”までの部分識別子kr.coを抽出する。転送先検索部120は、部分識別子kr.coをキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、イベント送信ノードの部分識別子kr.coに対応して、イベント配信ノードのノード識別子jp.coが格納されている。転送先検索部120は、イベントを送信すべきイベント配信ノードがノード識別子jp.coの転送ノード101eであると認識して、イベント送信部116に対し、その転送ノードにイベントを送信するように指示する。イベント送信部116は、転送ノード101e(jp.co)にイベントを送信する。
転送ノード101e(jp.co)の部分識別子抽出部119は、イベント送信ノードのノード識別子kr.co.ex.src1から、階層レベル“3”までの部分識別子kr.co.exを抽出する。転送先検索部120は、部分識別子kr.co.exをキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、イベント送信ノードの部分識別子kr.co.exに対応して、イベント配信ノードのノード識別子jp.co.exが格納されている。転送検索部120は、イベントを送信すべきイベント配信ノードがノード識別子jp.co.exの転送ノード101hであると認識して、イベント送信部116に対し、その転送ノードにイベントを送信するように指示する。イベント送信部116は、転送ノード101h(jp.co.ex)にイベントを送信する。
転送ノード101h(jp.co.ex)の部分識別子抽出部119は、イベント送信ノードのノード識別子kr.co.ex.src1から、階層レベル“4”までの部分識別子kr.co.ex.src1を抽出する。転送先検索部120は、部分識別子kr.co.ex.src1をキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、イベント送信ノードの部分識別子kr.co.ex.src1に対応して、イベント配信ノードのノード識別子jp.co.ex.dst1が格納されている。転送先検索部120は、イベントを送信すべきイベント配信ノードがノード識別子jp.co.ex.dst1の通知ノード102aであると認識して、イベント送信部116に対し、その転送ノードにイベントを送信するように指示する。イベント送信部116は、通知ノード102a(jp.co.ex.dst1)にイベントを送信する。
一方、転送ノード101c(cn)の部分識別子抽出部119は、イベント送信ノードのノード識別子kr.co.ex.src1から、階層レベル“2”までの部分識別子kr.coを抽出する。転送先検索部120は、部分識別子kr.coをキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、イベント送信ノードの部分識別子kr.coに対応して、イベント配信ノードのノード識別子cn.coが格納されている。転送先検索部120は、イベントを送信すべきイベント配信ノードがノード識別子cn.coの転送ノード101fであると認識して、イベント送信部116に対し、その転送ノードにイベントを送信するように指示する。イベント送信部116は、転送ノード101f(cn.co)にイベントを送信する。
転送ノード101f(cn.co)の部分識別子抽出部119は、イベント送信ノードのノード識別子kr.co.ex.src1から、階層レベル“3”までの部分識別子kr.co.exを抽出する。転送先検索部120は、部分識別子kr.co.exをキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、イベント送信ノードの部分識別子kr.co.exに対応して、イベント配信ノードのノード識別子cn.co.exが格納されている。転送先検索部120は、イベントを送信すべきイベント配信ノードがノード識別子cn.co.exの転送ノード101iであると認識して、イベント送信部116に対し、その転送ノードにイベントを送信するように指示する。イベント送信部116は、転送ノード101i(cn.co.ex)にイベントを送信する。
転送ノード101i(cn.co.ex)の部分識別子抽出部119は、イベント送信ノードのノード識別子kr.co.ex.src1から、階層レベル“4”までの部分識別子kr.co.ex.src1を抽出する。転送先検索部120は、部分識別子kr.co.ex.src1をキーに、イベント配信先記憶部113を検索する。イベント配信先記憶部113には、イベント送信ノードの部分識別子kr.co.ex.src1に対応して、イベント配信ノードのノード識別子cn.co.ex.dst1が格納されている。転送先検索部120は、イベントを送信すべきイベント配信ノードがノード識別子cn.co.ex.dst1の通知ノード102bであると認識して、イベント送信部116に対し、その通知ノードにイベントを送信するように指示する。イベント送信部116は、通知ノード102b(cn.co.ex.dst1)にイベントを送信する。
イベント配信ネットワーク100は、転送ノード101a(.)から通知ノード102a(jp.co.ex.dst1)までのイベント転送と、転送ノード101a(.)から通知ノード102b(cn.co.ex.dst1)までのイベント転送とを、並行して行う。通知ノード102a(jp.co.ex.dst1)は、受信したイベントを、登録されたイベント配信ルールに従って検査した後、イベント受信ノード132a(jp.co.ex.dst1)に送信する。また、通知ノード102bは、受信したイベントを、登録されたイベント配信ルールに従って検査した後、イベント受信ノード132b(cn.co.ex.dst1)に送信する。
本実施例では、イベント送信ノード131c(kr.co.ex.src1)からのイベントを欲するイベント受信ノードが2つある。図11のイベント配信システムでは、イベント配信ルールは、イベント送信ノード131c(kr.co.ex.src1)に対応するイベント配信ノードに登録されるため、イベント送信ノード131c(kr.co.ex.src1)がイベントを送信すると、対応するイベント配信ノードは、2つのイベント配信ルールを検査する必要があった。
本実施例では、イベント配信ネットワーク100は、イベント受信ノードに対応するイベント配信ノード(通知ノード)へイベント配信ルールを転送する。その際、各イベント配信ノードは、イベント配信先記憶部113(図3参照)に、イベントを転送すべきイベント配信ノードのノード識別子を格納する。イベント配信ネットワーク100は、イベント送信ノードがイベントを送信すると、イベント配信先記憶部113に格納されたイベント配信先のイベント配信ノードへイベントを転送する。本実施例では、同一のイベント送信ノードからのイベントを欲するイベント受信ノードが2つあるときは、2つの通知ノードにイベントが転送され、2つの通知ノードのそれぞれでイベント配信ルールが検査される。このため、負荷分散を図ることができる。
なお、上記実施形態及び実施例では、イベント配信ネットワーク100に、イベント受信ノード132のノード識別子の各階層に対応するノード識別子が設定された転送ノード101を設けたが、かかる構成に限定されることはない。例えば、階層レベルのうちのいくつかは省略することができる。具体的には、図2において、階層レベル“”2”の転送ノード101を省き、階層レベル“1”の各転送ノード101から、階層レベル“3”の転送ノード101へイベント及びイベント配信ルールを転送してもよい。この場合、階層レベル“1”の転送ノード101のレベル記憶部114には、階層レベル“3”を保存しておけばよい。また、全てのノード識別子に対して、1つ下位の階層レベルが同じ階層レベルである必要はない。例えば、レベル記憶部114に、部分識別子jpに対して階層レベル“3”を保存し、部分識別子cnに対して階層レベル“2”を保存していてもよい。その場合、ノード識別子jpの転送ノード101は、階層レベル“3”の転送ノードへイベント及びイベント配信ルールを送信し、ノード識別子cnの転送ノードは、階層レベル“2”の転送ノードへイベント及びイベント配信ルールを転送してもよい。
また、図7などでは、通知ノード102のノード識別子を、イベント受信ノード132のノード識別子と一致させているが、これには限定されない。例えば、イベント受信ノード132のグループを作成しておき、イベント配信ネットワーク100に、グループに対応する通知ノード102を設ける構成も可能である。或いは、例えば、ノード識別子jp.co.exのイベント配信ノードを通知ノード102とし、ノード識別子の階層レベル“3”までの部分識別子がjp.co.exに一致するイベント受信ノード132を、ノード識別子jp.co.exの通知ノード102と対応させてもよい。その場合、ノード識別子jp.co.exの通知ノード102は、ノード識別子jp.co.ex.dst1やjp.co.ex.dst2、jp.co.ex.dst3などのイベント受信ノード132からのイベント配信ルールを登録し、それらイベント受信ノード132に対してイベントを送信すればよい。
上記各実施形態及び実施例では、イベント配信ルールの転送時にイベント配信先記憶部113への部分識別子の記憶を行っているが、イベント配信ルールの転送と、イベント配信先記憶部113への記憶とは、必ずしも同時に行う必要はない。例えば、イベント受信ノード132から、転送ノード101を経由せずに、直接通知ノード102にイベント配信ルールを登録し、その後に、イベント配信先記憶部113への記憶を行ってもよい。その場合、何らかの手段を用いて、通知ノード102に登録される(登録された)配信ルールが、どのイベント送信ノード131からのイベントをどのイベント受信ノード132に送信するかを示しているかを示す情報を、転送ノード101に与えればよい。
上記実施例では、イベント送信ノードのノード識別子の階層レベル数と、イベント受信ノードのノード識別子の階層レベル数とを同じ階層数としているが、必ずしも、全てのノード識別子の階層レベルの数が一致していなくてもよい。例えば、イベント送信ノードのノード識別子に階層レベル数「3」のノード識別子が含まれていてもよい。その場合、部分識別子抽出部119、121(図3参照)は、レベル記憶部114に記憶された階層レベルが、イベント送信ノードのノード識別子よりも下位の階層であるときは、イベント送信ノードの最下位の階層レベルまでのノード識別子を部分識別子として抽出すればよい。
上記の場合において、例えば、イベント配信ルールに、イベント送信ノードのノード識別子com.nec.src1と、イベント受信ノードのノード識別子jp.co.ex.dst1とが含まれていた場合を考える。あるイベント配信ノードのレベル記憶部114に記憶される階層レベルが階層レベル“4”である場合、そのイベント配信ノードの部分識別子抽出部121は、図4のステップA3において、イベント送信ノードのノード識別子から、最下位、すなわち、階層レベル“3”までの識別子com.nec.src1を部分識別子として抽出し、イベント受信ノードのノード識別子から階層レベル“4”までの識別子jp.co.ex.dst1を部分識別子として抽出すればよい。そして、イベント配信先登録部122は、ステップA6において、イベント送信ノードの部分識別子com.nec.src1とイベント受信ノードのノード識別子jp.co.ex.dst1とを対応付けて、イベント配信先記憶部113に登録すればよい。
また、イベント送信ノードcom.nec.src1がイベントを送信した場合を考える。あるイベント配信ノードのレベル記憶部114に記憶される階層レベルが階層レベル“4”である場合、部分識別子抽出部119は、図5のステップB3において、イベント送信元のイベント送信ノードのノード識別子から、最下位、すなわち、階層レベル“3”までの識別子com.nec.src1を部分識別子として抽出すればよい。転送先検索部120は、ステップB4において、抽出された部分識別子com.nec.src1が格納されたエントリを検索する。転送先検索部120は、検索されたエントリの識別子リストに含まれるノード識別子、例えば、jp.co.ex.dst1をノード識別子とするイベント配信ノード(イベント受信ノードjp.co.ex.dst1に対応したイベント配信ノード)を、イベントの送信先として決定すればよい。
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のイベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、コンピュータ読み取り可能な記録媒体は、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
本発明は、センサやRFIDからのイベントを利用したアプリケーション、例えば物流トレーサビリティやSCEM(Supply Chain Event Management)、天候や災害などの環境管理に適用することができる。
(付記1)
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント送信ノード及びイベント受信ノードと、
前記イベント受信ノードのノード識別子に対応したノード識別子が予め付与されていると共に、特定のイベント送信ノードが送信したイベントを特定のイベント受信ノードに送信する旨を示すイベント配信ルールが登録され、前記イベント送信ノードから送信されたイベントを、前記登録されたイベント配信ルールに従って、対応するノード識別子を有するイベント受信ノードに送信する1以上の通知ノードと、
前記イベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されており、前記イベント送信ノードが送信したイベントを、前記ノード識別子の階層構造に従って前記通知ノードに向けて転送する複数の転送ノードとを備え、
前記転送ノードが、
前記イベント送信ノードからのイベントを受信するイベント受信手段と、
自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する第1の部分識別子抽出手段と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記第1の部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに前記イベントを送信するイベント送信手段とを備えるイベント配信システム。
(付記2)
前記転送ノードが、
前記通知ノードに登録されているイベント配信ルールから、当該イベントの送信元として指定されるイベント送信ノードのノード識別子、及び、当該イベントの送信先として指定されるイベント受信ノードのノード識別子をそれぞれ取り出し、取り出したそれぞれのノード識別子から、前記レベル記憶部に記憶される階層レベルまでの部分識別子を抽出する第2の部分識別子抽出手段と、
前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された、前記イベント送信ノードの部分識別子と、前記イベント受信ノードの部分識別子とを対応付けて格納するイベント配信先登録手段とを更に備える、付記1に記載のイベント配信システム。
(付記3)
前記転送ノードが、
前記通知ノードに登録すべきイベント配信ルールを受信する配信ルール受信手段と、
前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに、前記イベント配信ルールを送信する配信ルール送信手段とを更に備える、付記2に記載のイベント配信システム。
(付記4)
前記イベント配信先登録手段は、前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された前記イベント送信ノードの部分識別子が記憶済みであるか否かを調べ、記録済みであるときは、記録済みのイベント送信ノードの部分識別子と対応付けて記憶されるイベント受信ノードの部分識別子に、前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子を追加して格納する、付記2又は3に記載のイベント配信システム。
(付記5)
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードであって、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからのイベントを受信するイベント受信手段と、
自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する第1の部分識別子抽出手段と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記第1の部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信するイベント送信手段とを備えるイベント配信ノード。
(付記6)
前記イベント受信ノードに対してイベントの送信を行うイベント配信ノードに登録されているイベント配信ルールから、当該イベントの送信元として指定されるイベント送信ノードのノード識別子、及び、当該イベントの送信先として指定されるイベント受信ノードのノード識別子をそれぞれ取り出し、取り出したそれぞれのノード識別子から、前記レベル記憶部に記憶される階層レベルまでの部分識別子を抽出する第2の部分識別子抽出手段と、
前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された、前記イベント送信ノードの部分識別子と、前記イベント受信ノードの部分識別子とを対応付けて格納するイベント配信先登録手段とを更に備える、付記5に記載のイベント配信ノード。
(付記7)
前記イベント配信ルールを受信する配信ルール受信手段と、
前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに、前記イベント配信ルールを送信する配信ルール送信手段とを更に備える、付記6に記載のイベント配信ノード。
(付記8)
前記イベント配信先登録手段は、前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された前記イベント送信ノードの部分識別子が記憶済みであるか否かを調べ、記録済みであるときは、記録済みのイベント送信ノードの部分識別子と対応付けて記憶されるイベント受信ノードの部分識別子に、前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子を追加して格納する、付記6に記載のイベント配信ノード。
(付記9)
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント受信ノードのノード識別子に対応したノード識別子が予め付与されていると共に、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント送信ノードのうちの特定のイベント送信ノードが送信したイベントを特定のイベント受信ノードに送信する旨を示すイベント配信ルールが登録され、前記イベント送信ノードから送信されたイベントを、前記登録されたイベント配信ルールに従って、対応するノード識別子を有するイベント受信ノードに送信する1以上の通知ノードと、
前記イベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されており、前記イベント送信ノードが送信したイベントを、前記ノード識別子の階層構造に従って前記通知ノードに向けて転送する複数の転送ノードとを備え、
前記転送ノードが、
前記イベント送信ノードからのイベントを受信するイベント受信手段と、
自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する部分識別子抽出手段と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに前記イベントを送信するイベント送信手段とを備えるイベント配信ネットワーク。
(付記10)
前記転送ノードが、
前記通知ノードに登録されているイベント配信ルールから、当該イベントの送信元として指定されるイベント送信ノードのノード識別子、及び、イベントの送信先として指定されるイベント受信ノードのノード識別子をそれぞれ取り出し、取り出したそれぞれのノード識別子から、前記レベル記憶部に記憶される階層レベルまでの部分識別子を抽出する第2の部分識別子抽出手段と、
前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された、前記イベント送信ノードの部分識別子と、前記イベント受信ノードの部分識別子とを対応付けて記憶するイベント配信先登録手段とを更に備える、付記9に記載のイベント配信ネットワーク。
(付記11)
前記転送ノードが、
前記通知ノードに設定すべきイベント配信ルールを受信する配信ルール受信手段と、
前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに、前記イベント配信ルールを送信する配信ルール送信手段とを更に備える、付記10に記載のイベント配信ネットワーク。
(付記12)
前記イベント配信先登録手段は、前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された前記イベント送信ノードの部分識別子が記憶済みであるか否かを調べ、記録済みであるときは、記録済みのイベント送信ノードの部分識別子と対応付けて記憶されるイベント受信ノードの部分識別子に、前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子を追加して格納する、付記10又は付記11に記載のイベント配信ネットワーク。
(付記13)
コンピュータが、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからイベントを受信するステップと、
コンピュータが、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードの前記ノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードの前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照して、イベントの送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出するステップと、
コンピュータが、前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記抽出された部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得するステップと、
コンピュータが、前記取得した部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信するステップとを有するイベント配信方法。
(付記14)
コンピュータが、前記イベント受信ノードに対してイベントの送信を行うイベント配信ノードに登録されているイベント配信ルールから、当該イベントの送信元として指定されるイベント送信ノードのノード識別子、及び、当該イベントの送信先として指定されるイベント受信ノードのノード識別子をそれぞれ取り出し、取り出したそれぞれのノード識別子から、前記レベル記憶部に記憶される階層レベルまでの部分識別子を抽出するステップと、
コンピュータが、前記抽出された、前記イベント送信ノードの部分識別子と、前記イベント受信ノードの部分識別子とを対応付けて前記イベント配信先記憶部に格納するステップとを更に有する、付記13に記載のイベント配信方法。
(付記15)
コンピュータが、前記イベント配信ルールを受信するステップと、
コンピュータが、前記抽出された前記イベント受信ノードの部分識別子と同じノード識別子が付与されているイベント配信ノードに、前記イベント配信ルールを送信するステップとを更に有する、付記14に記載のイベント配信方法。
(付記16)
前記イベント配信先記憶部に格納するステップでは、コンピュータは、前記イベント配信先記憶部に、前記抽出されたイベント送信ノードの部分識別子が記憶済みであるか否かを調べ、記録済みであるときは、記録済みのイベント送信ノードの部分識別子と対応付けて記憶されるイベント受信ノードの部分識別子に、前記抽出されたイベント受信ノードの部分識別子を追加して記憶する、付記14又は付記15に記載のイベント配信方法。
(付記17)
コンピュータに、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからイベントを受信する処理と、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードの前記ノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードの前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照して、イベントの送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する処理と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記抽出された部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得する処理と、
前記取得された部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信する処理とを実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
(付記18)
付記17に記載のコンピュータ読み取り可能な記録媒体であって、
前記プログラムは、
コンピュータに、
前記イベント受信ノードに対してイベントの送信を行うイベント配信ノードに登録されているイベント配信ルールから、当該イベントの送信元として指定されるイベント送信ノードのノード識別子、及び、当該イベントの送信先として指定されるイベント受信ノードのノード識別子をそれぞれ取り出し、取り出したそれぞれのノード識別子から、前記レベル記憶部に記憶される階層レベルまでの部分識別子を抽出する処理と、
抽出された、前記イベント送信ノードの部分識別子と、前記イベント受信ノードの部分識別子とを対応付けて前記イベント配信先記憶部に格納する処理とを更に実行させる。
(付記19)
付記18に記載のコンピュータ読み取り可能な記録媒体であって、
前記プログラムは、
コンピュータに、
前記イベント配信ルールを受信する処理と、
前記抽出されたイベント受信ノードの部分識別子と同じノード識別子が付与されているイベント配信ノードに、前記イベント配信ルールを送信する処理とを更に実行させる。
(付記20)
付記18又は19に記載のコンピュータ読み取り可能な記録媒体であって、
前記プログラムは、
前記イベント配信先記憶部に格納する処理では、前記イベント配信先記憶部に、前記抽出されたイベント送信ノードの部分識別子が記憶済みであるか否かを調べ、記録済みであるときは、記録済みのイベント送信ノードの部分識別子と対応付けて記憶されるイベント受信ノードの部分識別子に、前記抽出された前記イベント受信ノードの部分識別子を追加して格納する。
本出願は、2010年2月1日に出願された日本国特許出願特願2010−19876号に基づく。本明細書中に、その明細書、特許請求の範囲、図面全体を参照して取り込むものとする。
10:転送ノード
11:イベント受信部
12:部分識別子抽出部
13:イベント送信部
14:イベント配信先記憶部
15:レベル記憶部
21:イベント送信ノード
22:イベント受信ノード
23:通知ノード
24:イベント配信ルール
100:イベント配信ネットワーク
101:転送ノード(イベント配信ノード)
102:通知ノード(イベント配信ノード)
111:送受信部
112:処理部
113:イベント配信先記憶部
114:レベル記憶部
115:イベント受信部
116:イベント送信部
117:配信ルール受信部
118:配信ルール送信部
119、121:部分識別子抽出部
120:転送先検索部
122:イベント配信先登録部
131:イベント送信ノード
132:イベント受信ノード
本発明は、イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、プログラムに関し、更に詳しくは、イベント送信ノードが送信したイベントをイベント受信ノードに配信するためのイベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、そのためのプログラムに関する。
本発明は、上記の問題点を解消し、特定のイベント配信ノードに負荷が集中することを避けることができるイベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、そのためのプログラムを提供することを目的とする。
本発明の第5の観点に係るプログラムは、
コンピュータに、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからイベントを受信する処理と、
階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードの前記ノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードの前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照して、イベントの送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する処理と、
前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記抽出された部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得する処理と、
前記取得された部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信する処理とを実行させる。

Claims (10)

  1. 階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント送信ノード及びイベント受信ノードと、
    前記イベント受信ノードのノード識別子に対応したノード識別子が予め付与されていると共に、特定のイベント送信ノードが送信したイベントを特定のイベント受信ノードに送信する旨を示すイベント配信ルールが登録され、前記イベント送信ノードから送信されたイベントを、前記登録されたイベント配信ルールに従って、対応するノード識別子を有するイベント受信ノードに送信する1以上の通知ノードと、
    前記イベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されており、前記イベント送信ノードが送信したイベントを、前記ノード識別子の階層構造に従って前記通知ノードに向けて転送する複数の転送ノードとを備え、
    前記転送ノードが、
    前記イベント送信ノードからのイベントを受信するイベント受信手段と、
    自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する第1の部分識別子抽出手段と、
    前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記第1の部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに前記イベントを送信するイベント送信手段とを備えるイベント配信システム。
  2. 前記転送ノードが、
    前記通知ノードに登録されているイベント配信ルールから、当該イベントの送信元として指定されるイベント送信ノードのノード識別子、及び、当該イベントの送信先として指定されるイベント受信ノードのノード識別子をそれぞれ取り出し、取り出したそれぞれのノード識別子から、前記レベル記憶部に記憶される階層レベルまでの部分識別子を抽出する第2の部分識別子抽出手段と、
    前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された、前記イベント送信ノードの部分識別子と、前記イベント受信ノードの部分識別子とを対応付けて格納するイベント配信先登録手段とを更に備える、請求項1に記載のイベント配信システム。
  3. 前記転送ノードが、
    前記通知ノードに登録すべきイベント配信ルールを受信する配信ルール受信手段と、
    前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに、前記イベント配信ルールを送信する配信ルール送信手段とを更に備える、請求項2に記載のイベント配信システム。
  4. 前記イベント配信先登録手段は、前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された前記イベント送信ノードの部分識別子が記憶済みであるか否かを調べ、記録済みであるときは、記録済みのイベント送信ノードの部分識別子と対応付けて記憶されるイベント受信ノードの部分識別子に、前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子を追加して格納する、請求項2又は3に記載のイベント配信システム。
  5. 階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードであって、
    階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからのイベントを受信するイベント受信手段と、
    自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する第1の部分識別子抽出手段と、
    前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記第1の部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信するイベント送信手段とを備えるイベント配信ノード。
  6. 前記イベント受信ノードに対してイベントの送信を行うイベント配信ノードに登録されているイベント配信ルールから、当該イベントの送信元として指定されるイベント送信ノードのノード識別子、及び、当該イベントの送信先として指定されるイベント受信ノードのノード識別子をそれぞれ取り出し、取り出したそれぞれのノード識別子から、前記レベル記憶部に記憶される階層レベルまでの部分識別子を抽出する第2の部分識別子抽出手段と、
    前記イベント配信先記憶部に、前記第2の部分識別子抽出手段によって抽出された、前記イベント送信ノードの部分識別子と、前記イベント受信ノードの部分識別子とを対応付けて格納するイベント配信先登録手段とを更に備える、請求項5に記載のイベント配信ノード。
  7. 前記イベント配信ルールを受信する配信ルール受信手段と、
    前記第2の部分識別子抽出手段によって抽出された前記イベント受信ノードの部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに、前記イベント配信ルールを送信する配信ルール送信手段とを更に備える、請求項6に記載のイベント配信ノード。
  8. 階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント受信ノードのノード識別子に対応したノード識別子が予め付与されていると共に、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されている1以上のイベント送信ノードのうちの特定のイベント送信ノードが送信したイベントを特定のイベント受信ノードに送信する旨を示すイベント配信ルールが登録され、前記イベント送信ノードから送信されたイベントを、前記登録されたイベント配信ルールに従って、対応するノード識別子を有するイベント受信ノードに送信する1以上の通知ノードと、
    前記イベント受信ノードのノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されており、前記イベント送信ノードが送信したイベントを、前記ノード識別子の階層構造に従って前記通知ノードに向けて転送する複数の転送ノードとを備え、
    前記転送ノードが、
    前記イベント送信ノードからのイベントを受信するイベント受信手段と、
    自転送ノードに付与された前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照し、イベント送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する部分識別子抽出手段と、
    前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記部分識別子抽出手段が抽出した部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得し、該取得した部分識別子と同じノード識別子が付与されている転送ノード又は通知ノードに前記イベントを送信するイベント送信手段とを備えるイベント配信ネットワーク。
  9. コンピュータが、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからイベントを受信するステップと、
    コンピュータが、階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードの前記ノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードの前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照して、イベントの送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出するステップと、
    コンピュータが、前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記抽出された部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得するステップと、
    コンピュータが、前記取得した部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信するステップとを有するイベント配信方法。
  10. コンピュータに、
    階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント送信ノードからイベントを受信する処理と、
    階層構造を持ち、ノードを一意に識別するノード識別子が予め付与されているイベント受信ノードの前記ノード識別子のうちの特定の階層レベルまでの識別子から成る部分識別子がノード識別子として予め付与されているイベント配信ノードの前記ノード識別子の階層レベルよりも1つ以上下位の階層レベルを記憶するレベル記憶部を参照して、イベントの送信元のイベント送信ノードのノード識別子から、前記レベル記憶部に記憶された階層レベルまでの部分識別子を抽出する処理と、
    前記イベント送信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子と、前記イベント受信ノードのノード識別子のうち前記レベル記憶部に記憶された階層レベルまでの部分識別子とを対応付けて記憶するイベント配信先記憶部を検索して、前記抽出された部分識別子と対応付けて記憶されたイベント受信ノードの部分識別子を取得する処理と、
    前記取得された部分識別子と同じノード識別子が付与されている他のイベント配信ノードに前記イベントを送信する処理とを実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2011551955A 2010-02-01 2011-01-31 イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、プログラム Pending JPWO2011093492A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010019876 2010-02-01
JP2010019876 2010-02-01
PCT/JP2011/051918 WO2011093492A1 (ja) 2010-02-01 2011-01-31 イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、コンピュータ読み取り可能な記録媒体

Publications (1)

Publication Number Publication Date
JPWO2011093492A1 true JPWO2011093492A1 (ja) 2013-06-06

Family

ID=44319469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011551955A Pending JPWO2011093492A1 (ja) 2010-02-01 2011-01-31 イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、プログラム

Country Status (2)

Country Link
JP (1) JPWO2011093492A1 (ja)
WO (1) WO2011093492A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109213883B (zh) * 2018-08-22 2020-08-21 清华大学深圳研究生院 灾害模型群服务链编排方法及装置、终端、存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4161998B2 (ja) * 2005-03-28 2008-10-08 日本電気株式会社 負荷分散振り分けシステム、イベント処理分散制御装置並びにイベント処理分散制御プログラム
US8214530B2 (en) * 2007-02-27 2012-07-03 Nec Corporation Data collection in which data is recompressed without conversion of code into symbol
JP2009146306A (ja) * 2007-12-17 2009-07-02 Sharp Corp サーバ装置、通信端末装置、アクセスシステム、アクセス方法およびアクセスプログラム

Also Published As

Publication number Publication date
WO2011093492A1 (ja) 2011-08-04

Similar Documents

Publication Publication Date Title
US20200288309A1 (en) Data management microservice in a microservice domain
US8527584B2 (en) Method and apparatus for providing service mobility across service deployment boundaries
US20140289366A1 (en) Service providing method and system for instance hosting
CN101123750B (zh) 便于推送内容的后台处理的装置和相关方法
CN111399756B (zh) 一种数据存储方法、数据下载方法及装置
JP5104489B2 (ja) 分散イベント検出システム、分散イベント検出方法、及び分散イベント検出用プログラム
CN103209223A (zh) 分布式应用会话信息共享方法、系统和应用服务器
CN102761581A (zh) 管理信息的动态订阅方法和设备及其分发方法和系统
US8881173B2 (en) Event processing system, distribution controller, event processing method, distribution control method, and program storage medium
CN105471745A (zh) 用于在粗粒度和细粒度的负荷平衡之间进行桥接的技术
US20120246336A1 (en) Method and apparatus for providing context-based boundaries for service management
CN104144215A (zh) 一种物联网泛在设备资源模型的构建方法
JP6540063B2 (ja) 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム
JP2011060180A (ja) データベースシステムの制御方法、インデックスサーバ及びプログラム
CN104284297B (zh) 一种资源迁移的方法、装置
WO2011093492A1 (ja) イベント配信システム、イベント配信ネットワーク、イベント配信ノード、イベント配信方法、及び、コンピュータ読み取り可能な記録媒体
US20210067379A1 (en) Access management apparatus and access management method
KR101997602B1 (ko) 디바이스 양방향 m2m 리소스 관리 방법
US20100042633A1 (en) Messaging tracking system and method
US20090254526A1 (en) Network management information (nmi) distribution
KR101800745B1 (ko) 기기간 연결 방법 및 그 장치
JP6471111B2 (ja) webAPI更新情報管理装置、webAPI更新通知方法及びプログラム
CN103368798A (zh) 数据传输网络中基于内容的寻址的方法和网络部件
JP6549537B2 (ja) サービス提供システムおよびサービス提供方法
JP5394329B2 (ja) センサクライアント装置、アプリケーションクライアント装置、センサ情報転送システム、コマンド情報受信方法、コマンド情報登録方法、センサ情報転送方法