(57)【要約】【課題】本発明は、リフェラル連携を行うＬＤＡＰサーバのネットワーク環境におけるリフェラル関係の整合性の保持に関し、各データベースの変更等に起因する不整合を検出すると、それぞれのサーバが自律的に他のサーバに通知して整合性を修復、維持する手段を提供することを課題とする。【解決手段】参照元および参照先の各エントリには、それぞれ参照元と参照先のエントリ情報を対にして属性に記憶する参照エントリ属性記憶手段１２と、データベースを備える各サーバには該データベースのすべての前記参照エントリ属性記憶手段１２に記憶されている参照元と参照先のエントリ情報を対にして関連づけた同期情報を記憶する同期情報記憶手段１１と、同期情報を参照連携するサーバに送信する同期情報送信手段７と、参照連携するサーバから同期情報を受信する同期情報受信手段２と、を備え、サーバ間で受け渡す前記同期情報に基づき参照連携情報の整合性を保持するように構成する。【選択図】      図１
2005004618.tif 000002
【特許請求の範囲】
【請求項１】
エントリ間の参照関係により連携する分散型ディレクトリデータベースを備える各サーバにおいて、前記ディレクトリデータベース間の参照連携情報の整合性を保持するプログラムであって、コンピュータを、
前記ディレクトリデータベースにおける参照元および参照先の各エントリに、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶する参照エントリ属性記憶手段、
前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連づけた同期情報を記憶する同期情報記憶手段、
参照連携するサーバから同期情報を受信する同期情報受信手段、
前記受信した同期情報に基づき前記同期情報記憶手段を検索して、同期情報を構成する対になったエントリ情報の内少なくとも一方が一致する同期情報を抽出する同期情報抽出手段、
受信した同期情報と、前記抽出された同期情報とに基づいて前記同期情報記憶手段に記憶した同期情報を更新する同期情報更新手段、
前記更新した同期情報に基づき前記参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新する参照エントリ属性更新手段、として機能させることを特徴とするプログラム。
【請求項２】
前記コンピュータを、
同期情報を参照連携するサーバに送信する同期情報送信手段として機能させ、自サーバ内で参照元エントリ情報と同期情報に変更が発生したとき、
前記参照エントリ属性更新手段は該変更された同期情報に基づき参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新し、
前記同期情報更新手段は前記同期情報に基づき前記同期情報記憶手段に記憶する同期情報を変更し、
前記同期情報送信手段は前記同期情報を該同期情報が示す参照連携するサーバに送信するように機能させることを特徴とする請求項１に記載のプログラム。
【請求項３】
前記コンピュータを、
更新する同期情報を蓄積する同期情報蓄積手段、
前記蓄積した同期情報をあらかじめ設定されたスケジュールに基づき順次出力する蓄積同期情報出力手段として機能させ、
前記参照エントリ属性更新手段は前記同期情報蓄積手段から出力された同期情報に基づき参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新し、
前記同期情報更新手段は前記出力された同期情報に基づき前記同期情報記憶手段に記憶する同期情報を更新し、
前記同期情報送信手段は前記更新した同期情報を該同期情報が示す参照連携するサーバに送信するように機能させることを特徴とする請求項２に記載のプログラム。
【請求項４】
エントリ間の参照関係により連携する分散型ディレクトリデータベースを備える各サーバにおいて、前記ディレクトリデータベース間の参照連携情報の整合性を保持するディレクトリデータベース間参照連携情報整合性保持装置であって、
前記ディレクトリデータベースにおける参照元および参照先の各エントリには、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶する参照エントリ属性記憶手段と、
各サーバには前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連づけた同期情報を記憶する同期情報記憶手段と、
参照連携するサーバから同期情報を受信する同期情報受信手段と、
前記受信した同期情報に基づき前記同期情報記憶手段を検索して、同期情報を構成する対になったエントリ情報の内少なくとも一方が一致する同期情報を抽出する同期情報抽出手段と、
前記受信した同期情報と、該同期情報に基づき前記同期情報抽出手段により抽出された同期情報とに基づいて同期情報記憶手段に記憶した同期情報を更新する同期情報更新手段と、
前記更新した同期情報に基づき前記参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新する参照エントリ属性更新手段と、を備えることを特徴とするディレクトリデータベース間参照連携情報整合性保持装置。
【請求項５】
エントリ間の参照関係により連携する分散型ディレクトリデータベースを備える各サーバにおいて、前記ディレクトリデータベース間の参照連携情報の整合性を保持するプログラムを記録した記録媒体であって、コンピュータを、
前記ディレクトリデータベースにおける参照元および参照先の各エントリに、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶する参照エントリ属性記憶手段、
各サーバには前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連づけた同期情報を記憶する同期情報記憶手段、
参照連携するサーバから同期情報を受信する同期情報受信手段、
前記受信した同期情報に基づき前記同期情報記憶手段を検索して、同期情報を構成する対になったエントリ情報の内少なくとも一方が一致する同期情報を抽出する同期情報抽出手段、
前記受信した同期情報と、該同期情報に基づき前記同期情報抽出手段により抽出された同期情報とに基づいて同期情報記憶手段に記憶した同期情報を更新する同期情報更新手段、
前記更新した同期情報に基づき前記参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新する参照エントリ属性更新手段、として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、リフェラル連携を行うＬＤＡＰサーバのネットワーク環境における、リフェラル関係の整合性の保持に関する。
【０００２】
【従来の技術】
オブジェクトとその属性、及びオブジェクト間の関係を有するデータベース（ディレクトリ）、及び事前に定義されたポリシーに基づき、クライアントに対し、指定されたオブジェクトに関する様々なサービスを提供することをディレクトリサービスと呼ぶ。
【０００３】
クライアントからの検索要求に対して、参照元ＤＢ（データベース）内で解決できない場合、他の参照先ＤＢの情報をクライアントに通知する機能をリフェラル機能と呼び、参照元ＤＢからクライアントへ、参照先ＤＢのアドレスなどの情報が格納されたリフェラルと呼ばれる制御情報が送信される。なお、ＬＤＡＰ（Ｌｉｇｈｔｗｅｉｇｈｔ  Ｄｉｒｅｃｔｏｒｙ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）は、ＩＴＵ−Ｔ（国際電気通信連合の電気通信標準化部門）が１９８８年に勧告したＸ．５００規格のディレクトリサービスの簡易版を示す。
【０００４】
ＬＤＡＰ規約（インターネット上で開発されるさまざまな新しい技術の標準化を促進するために設立されたコンソシアムＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）が管理・発行するドキュメントＲＦＣ（Ｒｅｑｕｅｓｔｓ  Ｆｏｒ  Ｃｏｍｍｅｎｔ）２２５１）で定義されるリフェラル機能では、ＬＤＡＰサーバから通知されるリフェラル情報に参照先ＤＢのアドレスが格納されており、ＬＤＡＰクライアント（以下クライアントと記述）は、その情報に従い参照先ＤＢにセションの接続及び検索要求を行って参照先ＤＢへの検索要求を行う。（例えば、非特許文献１参照。）。
【０００５】
また、他のサーバとの連携機能として、同一のディレクトリの内容を複製しておくシャドウイングや、ディレクトリの他の組織の情報を参照するチェイニングがある。シャドウイングはＤＩＳＰ（Ｄｉｒｅｃｔｏｒｙ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｈａｄｏｗｉｎｇ  Ｐｒｏｔｏｃｏｌ）、チェイニングはＤＳＰ（Ｄｉｒｅｃｔｏｒｙ  Ｓｙｓｔｅｍ  Ｐｒｏｔｏｃｏｌ）  というＸ．５００に定義されているプロトコルを使って通信が行われる。
【０００６】
しかし、参照元ＤＢから参照先ＤＢへのリフェラル情報作成後に、参照先サーバのネットワーク環境の変更、及び、ＤＢにおいてデータの更新／移動／削除が行われた場合、クライアントが参照元ＤＢで保持しているリフェラル情報に従って参照先ＤＢにセションの接続要求を行っても、参照先ＤＢへ接続できなくなる場合がある。
【０００７】
このような、参照する側が記憶している参照先の情報の位置情報に基づいて参照したときの参照される側の情報の格納状態の変更による参照不能となる不具合に関する解決の仕組みについては従来にも提案されている。（例えば、特許文献１参照）
特許文献１には、ハイパーテキスト型分散データベースにおける位置情報の一貫性を維持することを目的として、参照される情報が含まれている計算機に、この情報の参照元に記憶した参照先の位置情報（ＵＲＬ等）の存在場所を示すデータを保持する参照情報データベースを備えて、参照される情報の変更を検出すると、この検出した情報の変更状態に基づいて、前記参照情報データベースを検索して、参照元に記憶された参照先の位置情報の存在場所を示すデータに基づいて参照元に記憶された参照先の位置情報を更新することによって情報を同期化する提案が開示されている。
【０００８】
また、参照元と参照先は同じ計算機でも、ネットワークで接続された計算機でもよいとして、ネットワークで接続された計算機には位置情報を更新する情報の送受信を行い、参照元の位置情報の更新は参照元の計算機が行うとしている。
すなわち、実施の形態として説明されているようにワールドワイドウェブ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）  ＷＷＷにおいて参照先ページの削除などが原因で発生するリンク切れを改善することを目的としたものと考えられる。
【０００９】
【特許文献１】
特開平９−２９３０１０号公報（請求項１−請求項８、段落番号０００１−段落番号０００８、段落番号００２３−段落番号００３０、図１−図８）
【００１０】
【非特許文献１】
Ｍ．Ｗａｈｌ、外２  名、「Ｌｉｇｈｔｗｅｉｇｈｔ  Ｄｉｒｅｃｔｏｒｙ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ｖ３）  」、［ｏｎｌｉｎｅ］  、［  平成１５年１月２７日検索］  、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｉｅｔｆ．ｏｒｇ／ｒｆｃ／ｒｆｃ２２５１．ｔｘｔ□ｎｕｍｂｅｒ＝２２５１＞
（注）ここで、□は疑問符、ｑｕｅｓｔｉｏｎ  ｍａｒｋ  を示す。
【００１１】
【発明が解決しようとする課題】
本発明においても前記したリフェラル連携を行うＬＤＡＰサーバのネットワーク環境におけるリフェラル関係の整合性の保持は、先行技術である特許文献１に示されたＷＷＷにおけるＵＲＬによる情報の参照のリンク保持と類似した課題を持つものである。
【００１２】
しかしながら、先行技術における参照される情報の位置に関する変更を参照元に通知する機能は不特定多数の参照元に対しての一方向的な開放型サービスに対しての効果はあるが、リフェラル連携を行うディレクトリサービスはネットワークで接続された複数のサーバが一体となって機能する完結した分散型システムであり、前記特許文献１に記載された発明とは異なり参照先の変更に基づく参照元に保持した情報への反映のみではなく、参照元の変更についても自動的に反映するように、すなわち参照元および参照先が双方向に、また、相互に整合性を保持する機能をを要求される。更に、各サーバが相互に参照連携情報を維持してするための各種のシステム運用、保守機能が必要とされる。
【００１３】
そこで、本発明は、リフェラル関係で示される分散型ディレクトリデータベース間参照連携情報の整合性を、各データベースシステムの変更等に起因する不整合を検知したそれぞれのサーバが自律的に他のサーバに通知して修復、維持する手段を提供することを目的とする。
【００１４】
【課題を解決するための手段】
図１には本発明の構成図を示す。図１はエントリ間の参照関係によって連携する分散型ディレクトリデータベースシステムにおける同様の構成の他サーバ１０との関係を含めて、本発明を構成する各手段を示す。
１２は参照元および参照先の各エントリに備える参照エントリ属性記憶手段であり、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶するものである。
【００１５】
１１は各ディレクトリデータベースを備えるサーバに設けて、それぞれのディレクトリデータベース内のすべての前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連付けた同期情報を記憶する同期情報記憶手段である。これらの同期情報をサーバ間で受け渡し、受け渡された同期情報により参照連携情報の整合性を保持するようにしている。
【００１６】
１は連携するサーバ１０から送信される受信同期情報であり、２はこの受信同期情報１を受信する同期情報受信手段である。
３は与えられた同期情報（ここでは同期情報受信手段２が受信した受信同期情報１）に基づき同期情報記憶手段１１を検索して、同期情報を構成する対になった参照元エントリ情報と参照先エントリ情報の内、少なくとも一方が一致する同期情報を抽出する同期情報抽出手段である。
【００１７】
４は受信同期情報１と、受信同期情報１に基づき同期情報抽出手段３により抽出された同期情報とに基づいて同期情報記憶手段１１に記憶した同期情報を更新する同期情報更新手段である。これにより、受信した相手サーバが参照元エントリである場合、逆に参照先エントリとなっている場合、あるいは新たに参照関係を設定したい場合のいずれの場合にも受信した同期情報と同期情報記憶手段１１に記憶された同期情報とに基づいて同期情報の更新ができるようになっている。
【００１８】
５は更新された同期情報に基づき参照エントリ属性記憶手段１２に記憶された参照元エントリ情報と参照先エントリ情報とを更新する参照エントリ属性更新手段である。
すなわち、受信した同期情報１に基づき同期情報更新手段４により同期情報記憶手段１１に記憶した同期情報を更新するとともに、更新した同期情報に基づき参照エントリ属性記憶手段１２に記憶された参照元エントリ情報と参照先エントリ情報とを更新するようにしている。
【００１９】
また、７は修正したい参照元エントリ情報と参照先エントリ情報との組合せの送信同期情報８を連携するサーバに送信する同期情報送信手段である。
以上の手段を組み合わせて用い、参照元エントリ情報と参照先エントリ情報との組合せからなる自発更新するべき同期情報６に基づき参照エントリ属性更新手段５により参照エントリ属性記憶手段１２に記憶された参照元エントリ情報と参照先エントリ情報とを更新するとき、自発更新同期情報６に基づき同期情報更新手段４を用いて同期情報記憶手段１１に記憶する同期情報を変更するとともに、この変更した同期情報をこの同期情報が示す参照連携するエントリを保持するサーバに同期情報送信手段７によって送信し相手サーバに記憶された同期情報の更新を促すようにしている。
【００２０】
【発明の実施の形態】
本実施の形態においては、パーソナルコンピューター、ワークステーション等の汎用的な目的で使用される計算機上で実行するコンピュータプログラムにより実現する形態を示す。
本発明のディレクトリデータベース間参照連携情報整合性保持装置、プログラムおよび方法は、処理装置、主記憶装置、入出力装置などから構成される計算機上で、コンピュータプログラムとして実行して実現される。また、コンピュータプログラムは、フロッピーディスクやＣＤ−ＲＯＭ等の可搬型媒体やネットワーク接続された他の計算機の主記憶装置や補助記憶装置等に格納されて提供される。
【００２１】
本発明のコンピュータプログラムは、可搬型媒体から直接計算機の主記憶装置にロードされ、または、補助記憶装置を備えた計算機においては可搬型媒体から一旦補助記憶装置にコピーまたはインストール後に、主記憶装置にロードされて実行する。また、ネットワーク接続された他の装置に格納されて提供された場合も、他の装置からネットワークを経由して受信後に、主記憶装置にロードされ、あるいは補助記憶装置を備える計算機においては補助記憶装置にコピー後に、主記憶装置にロードされて実行するものである。
【００２２】
図２に本発明の実施の形態の構成図を示す。本実施の形態では、ネットワークで接続された複数のサーバとディレクトリを検索するクライアントからなる分散型ディレクトリデータベースシステムの運用において、ＬＤＡＰ規約に基づくデータベースの参照元と参照先の参照連携情報、リフェラルの整合性を保持する仕組みを示す。
【００２３】
図２において、２０５は参照連携する複数のサーバの中の一つのサーバである。前記分散型ディレクトリデータベースのシステムは同様な構成のサーバを複数含み、必要に応じて参照連携情報、リフェラルによって参照関係を持つように構成されているが、ここでは、参照関係を持つサーバの一つとして参照先サーバ２００を示している。また、ディレクトリデータベースを参照する一つのクライアントを参照元クライアントとして２０１に示す。
【００２４】
また、前記サーバ２０５はクライアント２０１から参照され、データベース２１３を検索するが、このサーバに格納されたデータベースに含まれるディレクトリのツリー構造の中では検索ができなかったとき、下位の階層のツリー構造のディレクトリを参照するように参照連携するサーバの参照先をクライアントに検索結果として通知するようになっている。図のサーバ２０５は２００を参照先ディレクトリサーバとする参照元ディレクトリサーバ（Ｓ１）として例示している。
【００２５】
ここで具体的な実施の形態の説明の前に、ディレクトリデータベースのエントリおよび参照連携関係、リフェラルについて図３、図４および図５により例示して説明する
図３は一般的なディレクトリデータベースのエントリのツリー構成の例の説明図である。データベースのエントリは識別名ｄｎとして「ｃ（国名）＝ｊｐ」を頂点として、「ｏ（組織名）＝ｒｅｆａｄｍ，ｃ＝ｊｐ」、そして、その下の階層のエントリ「ｏｕ＝ｒｅｆ＿ｄｉｒＢ，ｏ＝ｒｅｆａｄｍ，ｃ＝ｊｐ」があり、その先のエントリがサーバＢにあるとしてリフェラルが設定されている。
【００２６】
このようにディレクトリデータベースはエントリのツリー構造で構成され、クライアントから検索開始するエントリが示されて、順次ツリーをたどって検索されるが、更に下の階層にあるディレクトリは同じデータベースには格納されておらず、他のサーバのディレクトリデータベースにツリーがつながる場合には、分岐点のエントリにリフェラルとしてそのサーバの中のデータベース名（ポート番号）とエントリ識別名がｌｄａｐＵＲＬとして記憶されている。
【００２７】
図４は、図２に示した参照元ディレクトリサーバ（Ｓ１）２０５に格納された参照元ＤＢ（データベース）２１３と参照先サーバ２００で示した参照先ディレクトリサーバ（Ｓ２）の間での参照関係の例示である。
ここに示すように参照元ＤＢはポート番号が「３８９」であるとして同じサーバに格納されている他のＤＢと区別している。そして、図３で説明したようなエントリの一つ、参照元エントリＡを取り上げて示している。ここの識別名は、「ｕｉｄ＝１２３，ｏ＝ｏ１，ｃ＝ｊｐ」である。
【００２８】
そして、このエントリに参照連携する参照先ディレクトリサーバのエントリがこのエントリの属性にリフェラルとして「ｒｅｆ＝ｌｄａｐ：／／Ｓ２：３９０／ｕｉｄ＝４５６，ｏ＝ｏ２，ｃ＝ｊｐ」が記録されており、参照先のＤＢ（ポート番号：３９０）の参照先エントリＢ「ｕｉｄ＝４５６，ｏ＝ｏ２，ｃ＝ｊｐ」にリフェラルが設定された状態を示している。
【００２９】
すなわち、エントリＡに続くツリーのエントリがリフェラルによって示されるので、参照元ディレクトリサーバにおいて検索が完了しなかったときには依頼元のクライアントは改めてリフェラルが示す参照先サーバのエントリを指定して検索の要求を行うことにより下位ツリーの検索という目的を達成することができる。この参照関係は更に次の参照先のサーバへのリフェラルが示されてつながっていく場合もある。
【００３０】
次に、図５に本発明の課題である参照連携関係の整合性保持を行う必要のある場合として、参照先を特定できなくなったリフェラルの例を示す。図４で説明したようにリフェラルで接続されたツリーも、例えば参照先ディレクトリサーバの運用上の都合によりエントリが変更になったりすると、参照元サーバにおいて記憶されていた参照先のエントリの識別名が見つからないことが起こりうる。
【００３１】
図５では、従来参照先として参照元で記憶されていたエントリの識別名が参照先サーバ（Ｓ２）において「ｕｉｄ＝４５６」から「ｕｉｄ＝４５７」に変更になった例を示している。参照先のＤＢにおいて識別名が見つからず、検索が失敗したとしてクライアントに通知されることになる。
すなわち、各分散されたＤＢは，場合によっては別組織の管理者によりその内容が管理される場合もあり、内容の変更を別途関連のＤＢの管理者に連絡される場合でも実際の変更の適用が時間的に遅れたりする場合があるので非同期に利用するクライアントがデータベース検索を使用するときに不整合が発生することになる。
【００３２】
このように不整合が発生したときにその修復を自動的に行えるようにすることを目的として、本発明の実施の形態にはまず二つの仕組みを備えるようにしている。すなわち、図２における参照元ＤＢ２１３に例示する参照元エントリＡの構成、および、２１４で示すリフェラル同期情報ファイルである。
この仕組みは図２に示す参照元ディレクトリサーバと同様に参照先ディレクトリサーバ２００にも同様の構成で備えられる。つまり、複数のディレクトリサーバが参照関係により連携するシステムを構成するものであり、各サーバは参照元であったり、参照先になったりしてネットワークでつながれるので、その内の一つのサーバ、一組のサーバを取り上げて説明しているが、各サーバはそれぞれが同等の機能、構成を持つものであるので、この例示により示す仕組みはシステムのどの部分のサーバについても共通なものである。
【００３３】
そこで、具体的な例示として、同様な構成の参照元および参照先のそれぞれ一つのエントリの構成と各サーバに備えられたリフェラル情報ファイルの構成について図６および、図７を用いて説明する。
図６には、エントリ内のリフェラル情報と、リフェラル情報ファイルのイメージ図（その１）として、図２のポート番号「３８９」のＤＢ２１３における一つの参照元エントリＡの構成と図２の参照元リフェラル同期情報ファイル２１４の構成を例示する。
【００３４】
また、図７には、エントリ内のリフェラル情報とリフェラル情報ファイルのイメージ図（その２）として、図２と同様の構成の参照先ディレクトリサーバ（不図示）における参照先のエントリＢの構成と参照先リフェラル同期情報ファイルの構成を例示している。
まず、図６の参照元エントリＡのツリー上の位置を示す識別名は「ｕｉｄ＝１２３，ｏ＝ｏ１，ｃ＝ｊｐ」である。そして、このエントリの属性として記憶されている情報が「ｒｅｆ＝ｌｄａｐ：・・・」のように示されている。
【００３５】
これは前記説明したようにディレクトリデータベース（ＤＢ）のツリーが次の連携するＤＢ上の指示されたエントリ以下のツリーにつながることを示す情報である。
具体的に見ると、「ｌｄａｐ：／／Ｓ２：３９０／ｕｉｄ＝４５６，ｏ＝ｏ２，ｃ＝ｊｐ」はＬＤＡＰ規約に定められた形式で、参照先はサーバ「Ｓ２」のポート番号が「３９０」であるＤＢ上のエントリ識別名が「ｕｉｄ＝４５６，ｏ＝ｏ２，ｃ＝ｊｐ」であることが分かる。
【００３６】
そして、区切り記号「□□□□」（  ここで、□は疑問符、ｑｕｅｓｔｉｏｎ  ｍａｒｋ  の代替え記号として使用している。以降、同様の表記とする。）  に続いて拡張属性情報が「Ｘ−」で始まる各項目で記されており、本発明の特徴の一つであるエントリの属性情報に記憶したリフェラル整合性同期情報を示す。すなわち、「Ｘ−ｒｅｖ＝｛ｌｄａｐ：／／Ｓ１：３８９／ｕｉｄ＝１２３，ｏ＝ｏ１，ｃ＝ｊｐ｝」により参照元のサーバ名、ＤＢのポート番号、エントリ識別名を記憶するようにしている。
【００３７】
また、エントリがリフェラルの参照元エントリであるか、あるいは他のサーバのディレクトリＤＢから参照先として指定されたエントリである場合には、エントリの属性情報に記憶したものと同様に、参照先エントリに関する情報と参照元エントリに関する情報を対として各サーバに設けたリフェラル同期情報ファイルに記憶するようにしている。
【００３８】
ここではエントリの参照関係を図６に示すものを参照元サーバとして説明するために、参照元エントリ、参照元リフェラル同期情報ファイルと表示しているが、同じサーバの他のエントリが他のサーバから参照される場合には参照先サーバとなり、そのエントリは参照先エントリ、リフェラル同期情報ファイルも参照先同期情報ファイルとして説明することになる。つまり、エントリは参照元、参照先の区別はあるが、リフェラル同期情報ファイルには自サーバから他サーバを参照するリフェラル情報と、逆に他サーバから自サーバが参照されるリフェラル情報が混在することになる。
【００３９】
そしてその区別は対にして記憶されるリフェラル情報が、自サーバのエントリが参照元の場合には情報の先頭が「ｒｅｆ＝・・・」で示され、自サーバのエントリが参照先の場合には、図７で説明するように情報の先頭が「ｒｅｖ＝・・・」で示されることで区別される。
次に、図７に示すエントリ内のリフェラル情報とリフェラル情報ファイルのイメージ図（その２）の内容を説明する。これは、図６で示すサーバ「Ｓ１」から参照されるサーバ「Ｓ２」のポート番号「３９０」のＤＢ上のエントリＢの属性に記憶されたリフェラル情報とこのサーバに設けられたリフェラル同期情報ファイルに対として記憶された相手サーバ（Ｓ１）の参照元エントリに関する情報と自サーバ（Ｓ２）の参照先エントリに関する情報を表している。これらは、図６および図７を比較してみると分かるように参照元と参照先の立場の違いにより項目の順序すなわち、属性情報とＸ−で始まる拡張属性情報のいずれに配置されるかの違いはあるが、参照関係の参照元のエントリの情報は「ｒｅｖ＝・・・」で示し、参照先のエントリの情報は「ｒｅｆ＝・・・」で示して対応させて記憶させている。
【００４０】
ここで、上に述べたように実質同じ情報を各エントリの属性情報として記憶するとともにリフェラル同期情報ファイルにも並行して記憶するそれぞれの用途と効果を示す。なお、これらの仕組みの動作に関しては後述する。
▲１▼各エントリの属性情報に記憶された参照元エントリ情報および参照先エントリ情報
・クライアントの検索要求時に通知するリフェラル情報に参照先および参照元エントリの情報を含めることにより、クライアントから検索できなかったとの応答があったときには参照先のエントリの変更によって発生するリフェラル不整合の修復が可能となる。
【００４１】
・ディレクトリＤＢのバックアップを行い、これを用いて再構成するときのリフェラルの参照連携関係の変更を容易に行うことが可能となる。
▲２▼サーバ毎に設けたリフェラル同期情報ファイルに対にして記憶した参照元エントリ情報および参照先エントリ情報
・参照連携関係にある他のサーバから通知されたリフェラル同期情報に基づき他の変更の自サーバへの反映が可能となる
・自サーバにおける変更を他サーバに反映するように依頼通知することが可能となる
・連携する複数のサーバとの整合性の一括確認と復元ができる
以上説明した各エントリの属性およびリフェラル同期情報ファイルに記憶した参照元および参照先のエントリ情報に基づきリフェラル情報の整合性の保持を行うことができるディレクトリサーバの構成について図２を参照しながら説明する。
【００４２】
参照元クライアント２０１からは２０２に示すようにエントリの更新の要求や２０３に示すようにリフェラル情報確認依頼の要求が送信されてくる。また、図２では参照先サーバ２００との間でリフェラル情報の送受信を行い、これらの通信はＬＤＡＰサーバプロセス２０６を経由して本発明の処理を実行するリフェラル同期プロセス２１５に伝えられる。
【００４３】
リフェラル同期プロセス２１５に備えられた各装置により自サーバ内のディレクトリＤＢ２１３のエントリ属性に記憶されるリフェラル同期情報、リフェラル同期情報ファイル２１４に記憶されるリフェラル同期情報の設定、参照、監視を行い、必要な場合には参照連携する相手サーバ、ここでは参照先サーバ２００に適用するべき同期情報を通知する処理も行うようになっている。
【００４４】
ここで、リフェラル同期プロセスを構成する各装置の機能を説明する。まず、リフェラル情報送受信装置２０８はＬＤＡＰサーバプロセス２０６よりリフェラルに関連するリクエストを受信し、ＬＤＡＰＵＲＬおよびＬＤＡＰＵＲＬ拡張情報からなるリフェラル同期情報をリフェラル情報解析・組立て装置２０９に送信する。
【００４５】
リフェラル情報解析・組立て装置２０９はリフェラルエントリ情報、ＬＤＡＰＵＲＬおよびＬＤＡＰＵＲＬ拡張情報からなるリフェラル同期情報を解析・識別する機能を有する。ここで、ＬＤＡＰＵＲＬおよび拡張ＬＤＡＰＵＲＬの形式と構成について説明する。
形式：
ｒｅｆ（ｒｅｖ）＝ｌｄａｐ：／／＜ホスト名＞：＜ポート＞／＜ベースＤＮ＞□□□□＜拡張情報＞
拡張情報一覧：
Ｘ−ｒｅｖ（ｒｅｆ）＝  ｛ｌｄａｐ：／／  ＜ホスト名＞：＜ポート＞／＜ベースＤＮ＞｝・・・（参照元（参照先）情報）
Ｘ−ｏｐｅ＝｛数値（１〜５）｝                                  ・・・（オペレーション情報）
Ｘ−ｌｅｖｅｌ＝｛数値，  数値，  ・・・｝          ・・・（通知レベル）
Ｘ−ｉｎｔ＝｛数値（０以上）｝                ・・・（スケジューリング情報）
Ｘ−ａｔｔｒ＝  ｛属性名，  属性名，  ・・・｝      ・・・（指定属性情報）
これらの形式については、図４から図７についての前記説明においてリフェラルの同期情報の形式として示した。ここでは、補足として、拡張情報の項目について説明する。
【００４６】
Ｘ−ｏｐｅ  はクライアント、または参照連携するサーバ間で情報をやりとりする時のオペレーションを設定する。値により、リフェラル情報の追加、変更、削除、参照、比較を行うことを示す。
Ｘ−ｌｅｖｅｌ  は参照元エントリが参照先エントリに対して設定する情報で、通知レベルを設定可能であり、設定された参照先サーバは状態変更を監視する。例えば、ドメインの変更、ホスト名の変更、ＩＰアドレスの変更、エントリの追加、変名、削除、属性の追加、変更、削除等である。
【００４７】
Ｘ−ｉｎｔはリフェラル情報の変更をどのタイミングで反映するかを設定する情報であり、スケジュール管理装置はこの値に従って動作する。すなわち、値が０であれば即時実行、０以上であれば設定された秒数後に実行することを意味する
Ｘ−ａｔｔｒは変更を監視する属性を記述する。Ｘ−ｌｅｖｅｌ  で属性の追加、変更、削除が指定されたときに有効となる。
次に、図２のリフェラル情報設定装置２１０はリフェラル情報解析・組立て装置２０９から受け取った情報を使用して、リフェラル情報をその格納資源、すなわち、エントリ属性情報として格納する。
【００４８】
リフェラル情報の設定が成功した場合、リフェラル情報解析・組立て装置２０９はＤＢ間の整合性を保持するための情報として、ｌｄａｐＵＲＬおよびｌｄａｐＵＲＬ拡張情報からなるリフェラル同期情報を自動的に生成する機能を有する。そして、リフェラル情報送受信装置２０８は同期を目的とするディレクトリサーバ２００にリフェラル同期情報を送信する。
【００４９】
図２のスケジュール管理装置２０７はリフェラル情報解析・組立て装置２０９とリフェラル情報送受信装置２０８の中間に位置し、両装置に対してリフェラル同期情報の通知を行うだけでなく、設定スケジュールに従って、情報の蓄積／一括処理等を行う。
リフェラル情報変更監視装置２１２は自ＤＢのデータ構造およびデータの変更を検知すると、設定されている通知レベルに従って、情報をフィルタリングし、リフェラル同期に必要な情報をリフェラル情報解析・組立て装置２０９に通知する。
【００５０】
リフェラル情報解析・組立て装置２０９は、参照元のリフェラル情報取得装置２１１と、必要な装置を経由して参照元と参照先ＤＢのリフェラル情報取得装置に対し、双方のリフェラル情報を取得し、自ＤＢのリフェラル情報の整合性確認を要求し、その結果をマージ・生成する機能を有する。
また、リフェラル情報解析・組立て装置２０９は収集したデータの参照元、参照先、情報取得可否によって、それぞれのリンク関係に対し、リンク一致、リンク不整合、ホスト不在、ＤＢ未起動などの状態を埋め込む機能を有する。
【００５１】
さらに、リフェラル情報解析・組立て装置２０９はＬＤＡＰクライアントがリンク不整合を検出したとき、クライアントから返却する情報を利用して不整合状態を把握する機能を有する。
このように、リフェラル情報解析・組立て装置２０９は不整合が生じている個所において、ＬＤＡＰクライアントやサーバからのリクエストおよびサーバの環境設定により、必要な装置を経由し参照元及び参照先ディレクトリサーバのリフェラルの整合性を自動的に同期・修復することができる。
【００５２】
次に、前記したリフェラル情報解析・組立て装置２０９の参照元及び参照先ディレクトリサーバのリフェラルの整合性を自動的に同期・修復する仕組みを説明するための具体例として、図  ８にリフェラル参照の例の説明図と、これに対応して図  ９にリフェラル参照の同期情報ファイルの例の説明図を用いてデータ構造の説明をしておく。
【００５３】
図８は４つのサーバＡ、Ｂ、Ｃ、ＤのＤＢ上のエントリ間の参照関係を示している。サーバＡには、３つのエントリ、ａ１、ａ２、ａ３があり、エントリａ１、ａ２からはそれぞれ、サーバＢのＤＢ上のエントリｂ１、ｂ２を参照している。エントリａ３はサーバＣのＤＢ上のエントリｃ１を参照している。
サーバＢを見るとｂ１、ｂ２はそれぞれａ１、ａ２から参照されていることが分かる。また、ｂ３はサーバＣのエントリｃ２から参照され、ｂ４はサーバＤのｄ１を参照している。
【００５４】
これから、例えばサーバＢのＤＢ上のエントリはサーバＡ、サーバＣのＤＢから参照され、サーバＤのＤＢを参照しているというように相互に参照連携関係を持ち、これらが一体となって分散型ディレクトリが構成されるようになっていることが分かる。そして、前記説明してきたように、これらの参照連携関係がくずれたとき整合性がとれなくなることになる。
【００５５】
次に、図９により図８のような参照関係に対応して、リフェラル参照連携の同期情報ファイルの内容の説明を行うこととする。表の構成は各サーバに備えられた同期情報ファイルに記憶された各エントリ毎の同期情報に番号をつけて各１行で示している。
各同期情報は、その参照が参照元であったり、参照先であったりするが、いずれの場合にも他サーバのＤＢのエントリと自サーバのＤＢのエントリを対にして記憶するように構成している。また、参照元と参照先の区別は参照先は「ｒｅｆ＝」を、参照元は「ｒｅｖ＝」をもって示すようにしている。
【００５６】
具体的に図８と対比しながら説明する。複数のサーバとの間で参照元になったり参照先になったりするエントリを備えたサーバＢの同期情報ファイルを見ると番号Ｂ１として、他のサーバのＤＢのエントリに、ｒｅｖ＝ａ１、自サーバのＤＢのエントリとして、ｒｅｆ＝ｂ１が記憶されていることが分かる。
この意味するところは図８のサーバＢにあるエントリｂ１はサーバＡのエントリａ１から参照されている参照関係を、サーバＢの同期情報ファイルには同期情報として他サーバのＤＢのエントリは「ｒｅｖ＝ａ１」として参照元はサーバＡであり、自サーバの「ｒｅｆ＝ｂ１」でｂ１が参照されているとして記憶している。ここに、各エントリアドレス「ａ１」とか「ｂ１」は具体的には、前記説明した図６、図７に例示した参照情報に示されるように、ホストアドレス（Ｓ１とかＳ２）、ポート番号（３８９とか３９０）およびＤＮ識別名により示されるものであるので、所在するサーバやエントリの位置が分かり、また、「ｒｅｆ＝」とか「ｒｅｖ＝」で参照先か、参照元か参照関係の方向も分かるようになっている。
【００５７】
同様に番号Ｂ４を見ると、他サーバ欄には「ｒｅｆ＝ｄ１」、自サーバ欄「ｒｅｖ＝ｂ４」により、自サーバのエントリｂ４が参照元であり、他サーバＤのエントリｄ１を参照先とした参照連携関係が記憶されていることが分かる。
なお、同じ参照関係を示す同期情報を相手の他のサーバにおいても記憶しているが、具体的にサーバＤの同期情報ファイルの番号Ｄ１に見るように他サーバのＤＢエントリとして「ｒｅｖ＝ｂ４」、自サーバのＤＢのエントリとして「ｒｅｆ＝ｄ１」が記憶されていて、番号Ｂ４と番号Ｄ１とは当然ながら自他のエントリが逆転している。
【００５８】
また、このような同期情報は前記説明したように各エントリの属性情報にも同じ形式で記憶するようになっている。
このように参照連携関係を各サーバの同期情報ファイルに記憶することにより相手のサーバ上のエントリあるいは自分のサーバ上のエントリに変更があったときにも自他いずれかの同期情報ファイルの連携参照関係に基づいて自動的に参照関係の修復をすることができるようになる。
【００５９】
すなわち、同期情報は整合性のとれた正常な状態では参照関係にある各サーバの同期ファイルには自他の並び方は異なるが、同じ内容の同期情報が記憶されていることになる。
以下に、これらの同期情報を用いた整合性の保持の仕組みを説明する。図１０には同期情報と同期情報ファイルに基づく整合性保持動作の説明図を示す。
【００６０】
図１０には同期情報による整合性確認修復要求内容と整合性保持動作とを対比して示し、参照連携関係の二つのサーバ間でやりとりする同期情報と同期情報ファイルに記憶された同期情報について、そこに含まれる各エントリアドレスの比較を行うことにより、他サーバから送られてきた同期情報の意味と対処動作との対応が決まることを示している。また、自サーバから発生した同期情報の変更を必要とする場合も同様に同期情報の内容の比較で対処方法を決めることができることを示している。
【００６１】
本発明の実施の形態における整合性保持は図２の他サーバ２００との送受信を行うリフェラル情報送受信装置２０８と受信したリフェラル情報（同期情報）をリフェラル情報解析・組立て装置が他の関連の装置群を使ってＤＢ２１３のエントリ、リフェラル同期情報ファイル２１４との情報の設定、参照等を行い処理するものである。
【００６２】
特に、他サーバから送られてきた同期情報による整合性保持の動作については図１０と対応して動作のフローチャートを図１１に示しているのでこれらを参照しながら説明する。
図１１のステップＳ１００は常に他のサーバからの同期情報の受信を監視している。同期情報の受信があるとステップＳ１０１で同期情報を一時記憶する。
【００６３】
ステップＳ１０２では、受信した同期情報に含まれる他サーバＤＢのエントリアドレスと自サーバのＤＢのエントリアドレスの順序を整え同期情報ファイルに記憶されている複数の同期情報を検索し、他サーバのエントリのアドレス、自サーバのエントリアドレスのいずれかが一致するものがないかを調べる。
ステップＳ１０３でいずれかのエントリアドレスが一致したものがなかったときには、ステップＳ１０４に移行する。いずれのエントリアドレスも一致しない場合は、図１０の項目番号７に示した場合に相当し、他サーバから新たにリフェラルの設定が依頼された場合を示している。すなわち、ステップＳ１０４では、他サーバの設定依頼として同期情報を解釈して、受信した同期情報に示された自サーバＤＢのエントリ属性に設定する。つづいて、ステップＳ１０５で受信した同期情報を同期情報ファイルに新規に設定する。このようにして、新たな参照連携のリフェラルがエントリの属性情報として設定されると同時に同期情報ファイルにも同期情報が新たに設定される。
【００６４】
次に、いずれかのエントリアドレスが一致したときはステップＳ１０６に移行し、一致したのは自サーバのエントリアドレスであり他サーバのアドレスは一致しなかった場合を判定してステップＳ１０９に移行する。自サーバのエントリアドレスだけが一致したときは図１０の項目番号５の場合に相当する。この場合は他のサーバのＤＢのエントリ構成が変更された場合に通知されたことを示す。ステップＳ１０９で、通知された同期情報に合わせて同期ファイルを修正する。
【００６５】
ステップＳ１１０では同期情報の自サーバＤＢのエントリの属性情報を同期情報に合わせて修正する。
ステップＳ１１１により受信した同期情報をそのまま他サーバに送信する。これによって、依頼された通り同期情報の修正が完了したことを通知し、また、ステップＳ１００で同期情報の監視に戻る。
【００６６】
ステップＳ１０７では自他ともにエントリアドレスが一致したかを調べその場合には何もせずにステップＳ１００に戻る。両方のエントリアドレスが一致した場合は図１０においては項目番号８の場合であり、他のサーバからの整合性の確認ができたことになる。また、自サーバから他サーバに対して自サーバの変更に基づく修復や設定を依頼したときの修復完了の情報の場合でもある。
【００６７】
最後に、ステップＳ１０７で他サーバＤＢのエントリアドレスだけが一致した場合にはステップＳ１０８に移行する。これは、図１０の項目番号６に相当する場合であり、他サーバから自サーバの整合性の確認を依頼された場合である。このときには、自サーバの同期情報ファイルに保持している同期情報を送信して通知することで他サーバの同期情報ファイルやエントリの属性が修復される。そして、ステップＳ１００に戻り他サーバからの同期情報受信待ちになる。
【００６８】
以上には他サーバから受信した同期情報をきっかけとして整合性の保持をする動作を説明した。すなわち、他サーバが整合性の保持が必要とした、あるいは整合性の確認をしたいという要求があって、自サーバが受動的にどのような動作を行って整合性保持を行ったかを説明したことになる。
今度は逆に、自サーバで検出した整合性保持の必要性に対応する処理について図１０に示した要求元が「自サーバから」とした場合について、整合性保持の動作を説明する。
【００６９】
図１０に示した項目番号１から４のそれぞれについて整合性確認要求の内容を説明する。まず、項目番号１は、分散型ディレクトリの検索要求をしたクライアントに対して、自サーバ内のディレクトリデータベースを検索した結果、自サーバ内では検索が完了せず、設定されたリフェラル情報をクライアントに返したとき、クライアントはリフェラル情報に従い、そこに設定された他サーバのディレクトリＤＢ上の検索開始エントリから検索を依頼することになるが、このとき、リフェラル情報に設定された検索開始エントリが見つからないときには、他サーバは参照先不明としてクライアントに応答する。
【００７０】
そこで、クライアントから、通知したリフェラル情報が参照先不明としてエラーとなったことを自サーバに通知することで、自サーバは整合性修復の必要性を検知することになる。
このような不整合の発生する原因としては、例えば、他サーバで何らかのエントリの変更があった場合、図５で示したような状態になり参照元が通知したリフェラル情報が使えなくなると場合が相当する。
【００７１】
通常このような変更を行ったときには図１０の項目番号２に示すように、他サーバに通知して整合性修復を行うが、時間的な遅れとか、連絡が相手のサーバの状態でうまく受け付けられなかった、などの場合には不整合が発生することになる。
項目番号１のようなときには、整合性保持動作の欄にあるように、他サーバへ同期情報を通知して相手のＤＢの状態を確認依頼する。このとき通知する同期情報は自サーバの同期ファイルに保持していた同期情報である。
【００７２】
これにより、従来、自サーバのＤＢのエントリから他サーバのＤＢのエントリとの間に参照連携関係があったことを示す同期情報が相手に送られるので、受け取った相手サーバはその保持している同期情報ファイルを検索して相手との不整合を検知することになる。
相手サーバの動作は前記説明した他サーバから同期情報を受信したときの動作であり、図１０の項目番号６の場合に相当するものである。すなわち、他サーバはその同期情報ファイルに格納した同期情報ファイルが更新後の正しい同期情報であるとして通知してくる。通知された同期情報は、同期情報ファイルを検索すると、自サーバ側のエントリが一致していて他サーバ側のエントリが不一致という項目番号５に相当する処理を行うことになり、通知された同期情報に合わせて自サーバのＤＢのエントリの属性、同期情報ファイルの更新がなされる。
【００７３】
次に、項目番号２の場合、すなわち、自サーバ側のＤＢのエントリ構成を変更したときには参照関係にある他サーバの同期ファイルやＤＢのエントリの属性についても対応して変更が反映されなければならない。また、項目番号３に示すような、全く新たに参照連携関係を設定するときも、相手のサーバに同様に反映されなければならない。
【００７４】
これらの場合、処理動作は整合性保持動作の欄に示したように、他サーバへ変更した、あるいは新たに設定した参照関係情報を同期情報の形式で通知するようにする。これにより、相手サーバにおいて、項目番号５あるいは７の整合性保持動作がなされることになる。
図１０あるいは図１１においては、前記説明と同様に相手のある参照連携関係の整合性動作を一方のサーバでの動作として説明してきたが、ここで、両方のサーバを通じた動作の例を、エントリ構成を変更する場合についてフローチャートで説明する。
【００７５】
図１２はサーバＡのエントリ変更のサーバＢへの反映動作フローチャートである。ステップＳ１２０で、利用者から例えばエントリａの名前（ｕｉｄ）を変更する要求が発生し、サーバＡにおいてリフェラル元であるエントリａを更新する場合、ステップＳ１２１では、まず、エントリにリフェラル情報が含まれているかを調べる。
【００７６】
エントリには、他のサーバのＤＢとの間で参照連携する関係がある場合にはその属性情報にリフェラル情報が含まれる場合と、単なるエントリであって参照元でもなく参照先でもないエントリである場合とがある。リフェラル情報が含まれないエントリの更新はステップＳ１２２でエントリａの更新のみを行う。
リフェラル情報が設定されているエントリの場合には、ステップＳ１２３において、エントリａの更新に加えて、属性情報として格納されているリフェラル情報を更新する。
【００７７】
そして、ステップＳ１２４において同じ内容でリフェラル同期情報ファイルを検索してそこにある他サーバエントリの一致する同期情報の自サーバエントリａのアドレス（ｕｉｄ）を更新する。
ステップＳ１２５では、この同期情報に記憶された他サーバ側のエントリアドレスから分かるサーバＢに対して更新した同期情報を通知することによりリフェラル情報の更新を要求する。
【００７８】
サーバＢはステップＳ１２６でリフェラル情報更新要求を受信し、ステップＳ１２７で受信したリフェラル同期情報によりリフェラル同期情報ファイルを更新する。ここで受信した同期情報はサーバＡ側のエントリアドレスは変更になっており、同期情報ファイルを検索したときはサーバＢの自サーバ側エントリｂのアドレスが一致する同期情報が見つかり、この同期情報を受信した同期情報で置き換えることで更新できる。
【００７９】
次いで、ステップＳ１２８で、更新した同期情報に含まれる自サーバ、サーバＢのエントリｂの属性情報の更新を行う。これにより、サーバＡ、サーバＢともに同期情報ファイルおよび各エントリの属性情報の更新ができて参照連携関係の整合性が修復できたことになる。
なお、ステップＳ１２９では更新した同期情報をサーバＡに送信して更新完了を相手に通知する。
【００８０】
以上の説明では、一つ一つの同期情報の自サーバ、他サーバへの適用により整合性を確認修復する場合の動作を説明したが、実際のディレクトリＤＢの運用時には、ディレクトリＤＢの大きな変更、例えば、人事情報を管理するディレクトリＤＢの場合に、組織変更があり、組織の分割、新設、名称変更など複数のエントリがまとめて変更、新設される場合がある。
【００８１】
このような場合には、実際の運用としては通常の業務活動が終了した時点にまとめて処理したい場合がある。すなわち、運用管理者が参照連携する多数のサーバのＤＢに影響するエントリの変更を蓄積して、スケジュールした時間帯に自サーバのＤＢを修正すると同時に参照連携する、参照先、参照元の他のサーバに整合性保持動作を要求して、分散型ディレクトリデータベース全体の更新していく必要がある。
【００８２】
この場合には、図２の構成にあるスケジュール管理装置２０７に更新するべきリフェラル同期情報を蓄積し、それぞれに指定された時間帯に処理が実行されるようにすることができるようになっている。
このように、分散型ディレクトリデータベースシステムにおいて、分散された各サーバ上に備えられた多数のデータベースがそれぞれのツリー状のエントリ間を参照する関係を埋め込まれた参照連携情報、リフェラルの整合性を保持する仕組みとして、各サーバの独立した運用操作に基づいても容易に実現できる、自律的システムが実現可能となることがわかる。
【００８３】
（付記１）エントリ間の参照関係により連携する分散型ディレクトリデータベースを備える各サーバにおいて、前記ディレクトリデータベース間の参照連携情報の整合性を保持するプログラムであって、コンピュータを、前記ディレクトリデータベースにおける参照元および参照先の各エントリに、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶する参照エントリ属性記憶手段、前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連づけた同期情報を記憶する同期情報記憶手段、参照連携するサーバから同期情報を受信する同期情報受信手段、前記受信した同期情報に基づき前記同期情報記憶手段を検索して、同期情報を構成する対になったエントリ情報の内少なくとも一方が一致する同期情報を抽出する同期情報抽出手段、受信した同期情報と、前記抽出された同期情報とに基づいて前記同期情報記憶手段に記憶した同期情報を更新する同期情報更新手段、前記更新した同期情報に基づき前記参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新する参照エントリ属性更新手段、として機能させることを特徴とするプログラム。
【００８４】
（付記２）前記コンピュータを、同期情報を参照連携するサーバに送信する同期情報送信手段として機能させ、自サーバ内で参照元エントリ情報と同期情報に変更が発生したとき、前記参照エントリ属性更新手段は該変更された同期情報に基づき参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新し、前記同期情報更新手段は前記同期情報に基づき前記同期情報記憶手段に記憶する同期情報を変更し、前記同期情報送信手段は前記同期情報を該同期情報が示す参照連携するサーバに送信するように機能させることを特徴とする付記１に記載のプログラム。
【００８５】
（付記３）前記コンピュータを、更新する同期情報を蓄積する同期情報蓄積手段、前記蓄積した同期情報をあらかじめ設定されたスケジュールに基づき順次出力する蓄積同期情報出力手段として機能させ、前記参照エントリ属性更新手段は前記同期情報蓄積手段から出力された同期情報に基づき参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新し、前記同期情報更新手段は前記出力された同期情報に基づき前記同期情報記憶手段に記憶する同期情報を更新し、前記同期情報送信手段は前記更新した同期情報を該同期情報が示す参照連携するサーバに送信するように機能させることを特徴とする付記２に記載のプログラム。
【００８６】
（付記４）エントリ間の参照関係により連携する分散型ディレクトリデータベースを備える各サーバにおいて、前記ディレクトリデータベース間の参照連携情報の整合性を保持するディレクトリデータベース間参照連携情報整合性保持装置であって、前記ディレクトリデータベースにおける参照元および参照先の各エントリには、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶する参照エントリ属性記憶手段と、各サーバには前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連づけた同期情報を記憶する同期情報記憶手段と、参照連携するサーバから同期情報を受信する同期情報受信手段と、前記受信した同期情報に基づき前記同期情報記憶手段を検索して、同期情報を構成する対になったエントリ情報の内少なくとも一方が一致する同期情報を抽出する同期情報抽出手段と、前記受信した同期情報と、該同期情報に基づき前記同期情報抽出手段により抽出された同期情報とに基づいて同期情報記憶手段に記憶した同期情報を更新する同期情報更新手段と、前記更新した同期情報に基づき前記参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新する参照エントリ属性更新手段と、を備えることを特徴とするディレクトリデータベース間参照連携情報整合性保持装置。
【００８７】
（付記５）エントリ間の参照関係により連携する分散型ディレクトリデータベースを備える各サーバにおいて、前記ディレクトリデータベース間の参照連携情報の整合性を保持するプログラムを記録した記録媒体であって、コンピュータを、前記ディレクトリデータベースにおける参照元および参照先の各エントリに、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶する参照エントリ属性記憶手段、各サーバには前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連づけた同期情報を記憶する同期情報記憶手段、参照連携するサーバから同期情報を受信する同期情報受信手段、前記受信した同期情報に基づき前記同期情報記憶手段を検索して、同期情報を構成する対になったエントリ情報の内少なくとも一方が一致する同期情報を抽出する同期情報抽出手段、前記受信した同期情報と、該同期情報に基づき前記同期情報抽出手段により抽出された同期情報とに基づいて同期情報記憶手段に記憶した同期情報を更新する同期情報更新手段、前記更新した同期情報に基づき前記参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新する参照エントリ属性更新手段、として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【００８８】
（付記６）エントリ間の参照関係により連携する分散型ディレクトリデータベースと、前記ディレクトリデータベースにおける参照元および参照先の各エントリに、それぞれ参照元エントリ情報と参照先エントリ情報とを対にして属性に記憶する参照エントリ属性記憶手段と、前記参照エントリ属性記憶手段に記憶されている参照元エントリ情報と参照先エントリ情報とを対にして関連づけた同期情報を記憶する同期情報記憶手段とを備える各サーバにおいて、前記ディレクトリデータベース間の参照連携情報の整合性を保持する方法であって、参照連携するサーバから同期情報を受信するステップと、前記受信した同期情報に基づき前記同期情報記憶手段を検索して、同期情報を構成する対になったエントリ情報の内少なくとも一方が一致する同期情報を抽出するステップと、受信した同期情報と、前記抽出された同期情報とに基づいて同期情報記憶手段に記憶した同期情報を更新するステップと、前記更新した同期情報に基づき前記参照エントリ属性記憶手段に記憶された参照元エントリ情報と参照先エントリ情報とを更新するステップと、を有するディレクトリデータベース間参照連携情報整合性保持方法。
【００８９】
【発明の効果】
以上の説明から明らかなように、本発明によれば、リフェラル関係で示される分散型ディレクトリデータベース間参照連携情報の整合性を、それぞれのサーバが自律的に、各ディレクトリデータベースの構成の変更に起因する不整合を修復する同期情報を生成して他のサーバのデータベースシステムに通知して実行することにより維持するので、システムの信頼性の向上、システムの運用操作性の向上が図れるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の構成図
【図２】本発明の実施の形態の構成図
【図３】エントリ（リフェラル情報）のツリー構成の説明図
【図４】リフェラルの例
【図５】参照先を特定できなくなったリフェラルの例
【図６】エントリ内のリフェラル情報とリフェラル情報ファイルのイメージ図（その１）
【図７】エントリ内のリフェラル情報とリフェラル情報ファイルのイメージ図（その２）
【図８】リフェラル参照の例の説明図
【図９】リフェラル参照の同期情報ファイルの例の説明図
【図１０】同期情報と同期情報ファイルに基づく整合性保持動作の説明図
【図１１】他サーバから受信した同期情報による整合性保持動作フローチャート
【図１２】サーバＡのエントリ変更のサーバＢへの反映動作フローチャート
【符号の説明】
１  受信同期情報
２  同期情報受信手段
３  同期情報抽出手段
４  同期情報更新手段
５  参照エントリ属性更新手段
６  自発更新同期情報
７  同期情報送信手段
８  送信同期情報
１０  他サーバ
１１  同期情報記憶手段
１２  参照エントリ属性記憶手段
【図１】
2005004618.tif 000003
【図２】
2005004618.tif 000004
【図３】
2005004618.tif 000005
【図４】
2005004618.tif 000006
【図５】
2005004618.tif 000007
【図６】
2005004618.tif 000008
【図７】
2005004618.tif 000009
【図８】
2005004618.tif 000010
【図９】
2005004618.tif 000011
【図１０】
2005004618.tif 000012
【図１１】
2005004618.tif 000013
【図１２】
2005004618.tif 000014