(57)【要約】  本発明は、同一マルチキャストグループ内に属するメンバーサーバ間の信頼性ある通信を保証するための方法及びシステムを開示する。信頼性ある通信を提供する方法は、マルチキャストグループに属する第１メンバーサーバのサーバシーケンス保存部に第１メンバーサーバに対応する第１サーバシーケンス及び第１メンバーサーバと同じマルチキャストグループに属する他のメンバーサーバそれぞれに対応して保存されたサーバシーケンスを保持する段階と、マルチキャストグループに属する他のメンバーサーバに第１メンバーサーバを識別する第１サーバ識別子及び第１サーバシーケンスを含むマルチキャストメッセージを送信する段階と、マルチキャストメッセージを送信する度に、サーバシーケンス保存部に保持されている第１サーバシーケンスを所定の値だけ増加させる段階と、メンバーサーバと同じマルチキャストグループに属する第２メンバーサーバから第２メンバーサーバの第２サーバ識別子及び第２メンバーサーバに対応する第２サーバシーケンスを含む最終シーケンス通知メッセージを受信する段階と、最終シーケンス通知メッセージに含まれた第２サーバ識別子を参照して、サーバシーケンス保存部に保存されている第２サーバ識別子に対応する第の２保存されたサーバシーケンスを識別する段階と、第２サーバシーケンスが第２の保存されたサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合に、第２メンバーサーバに第２保存されたサーバシーケンスに所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する段階とを含む。【選択図】図１１
2008544685.tif 000002
【特許請求の範囲】
【請求項１】
同一マルチキャストグループに属するメンバーサーバ間の信頼性ある通信を提供するための方法であって、
前記マルチキャストグループに属する第１メンバーサーバのサーバシーケンス保存部に、前記第１メンバーサーバに対応する第１サーバシーケンス及び前記第１メンバーサーバと同じマルチキャストグループに属する他のメンバーサーバそれぞれに対応して保存されたサーバシーケンスを保持する段階と、
前記第１メンバーサーバを識別する第１サーバ識別子及び前記第１サーバシーケンスを含んだマルチキャストメッセージを前記マルチキャストグループに属する前記他のメンバーサーバに送信する段階と、
前記マルチキャストメッセージを送信する度に、前記サーバシーケンス保存部に保持された前記第１サーバシーケンスを所定の値だけ増加させる段階と、
前記メンバーサーバと同じマルチキャストグループに属する第２メンバーサーバから、前記第２メンバーサーバの第２サーバ識別子及び前記第２メンバーサーバに対応する第２サーバシーケンスを含む最終シーケンス通知メッセージ知メッセージを受信する段階と、
前記最終シーケンス通知メッセージに含まれた第２サーバ識別子を参照して、前記サーバシーケンス保存部に保存された前記第２サーバ識別子に対応する第２の保存されたサーバシーケンスを識別する段階と、
前記第２サーバシーケンスが前記第２の保存されたサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合に、前記第２メンバーサーバに前記第２の保存されたサーバシーケンスに前記所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する段階と、
を含むことを特徴とする信頼性ある通信提供方法。
【請求項２】
前記第１メンバーサーバを識別する第１サーバ識別子及び前記サーバシーケンス保存部に保存された第１サーバシーケンスを含む最終シーケンス通知メッセージを前記メンバーサーバと同じマルチキャストグループに属する前記他のメンバーサーバに一定の時間間隔で送信する段階と、
をさらに含むことを特徴とする請求項１に記載の信頼性ある通信提供方法。
【請求項３】
前記第１メンバーサーバと同じマルチキャストグループに属する第２メンバーサーバから前記第２メンバーサーバの第２サーバ識別子及び前記第２メンバーサーバに対応する第２サーバシーケンスを含む第２マルチキャストメッセージを受信する段階と、
前記第２マルチキャストメッセージに含まれた第２サーバ識別子を参照して、前記サーバシーケンス保存部に保存された前記第２サーバ識別子に対応する第２の保存されたサーバシーケンスを識別する段階と、
前記第２サーバシーケンスが前記第２の保存されたサーバシーケンスに所定の値を合算したものよりも大きい場合に、前記第２メンバーサーバに前記第２の保存されたサーバシーケンスに前記所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する段階と、
をさらに含むことを特徴とする請求項１に記載の信頼性ある通信提供方法。
【請求項４】
前記第１メンバーサーバと同じマルチキャストグループに属する第２メンバーサーバから再送信しなければならないマルチキャストメッセージに対する第２サーバシーケンスを含む再送信要求メッセージを受信する段階と、
前記メンバーサーバから伝送された前記マルチキャストメッセージを保存するメッセージバッファから前記第２サーバシーケンスに対応するマルチキャストメッセージを検索して前記第２メンバーサーバに送信する段階と、
をさらに含むことを特徴とする請求項１に記載の信頼性ある通信提供方法。
【請求項５】
１つのグループに属するメンバーサーバ間の信頼性ある通信を提供するための方法であって、
前記グループに属する第１メンバーサーバのサーバシーケンス保存部に、前記第１メンバーサーバに対応する第１サーバシーケンス及び前記他のメンバーサーバそれぞれに対応して保存されたサーバシーケンスを保持する段階と、
前記第１メンバーサーバを識別する第１サーバ識別子及び前記第１サーバシーケンスを含むメッセージを前記グループに属する前記他のメンバーサーバにメッセージを送信する段階と、
前記メッセージを送信する度に、前記サーバシーケンス保存部に保持された前記第１サーバシーケンスを所定の値だけ増加させる段階と、
前記第１メンバーサーバを識別する第１サーバ識別子及び前記サーバシーケンス保存部に保存された第１サーバシーケンスを含む最終シーケンス通知メッセージを前記他のメンバーサーバに一定の時間間隔で送信する段階と、
を含むことを特徴とする信頼性ある通信提供方法。
【請求項６】
前記他のメンバーサーバのうちの１つである第２メンバーサーバから前記第２メンバーサーバの第２サーバ識別子及び前記第２メンバーサーバに対応する第２サーバシーケンスを含む最終シーケンス通知メッセージを受信する段階と、
前記最終シーケンス通知メッセージに含まれた第２サーバ識別子を参照して、前記サーバシーケンス保存部に保存された前記第２サーバ識別子に対応する第２の保存されたサーバシーケンスを識別する段階と、
前記第２サーバシーケンスが前記第２の保存されたサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合に、前記第２メンバーサーバに前記第２の保存されたサーバシーケンスに前記所定の値を合算したサーバシーケンスに対応するメッセージの再送信を要求する段階と、
をさらに含むことを特徴とする請求項５に記載の信頼性ある通信提供方法。
【請求項７】
前記他のメンバーサーバのうちの１つである第２メンバーサーバから、前記第２メンバーサーバの第２サーバ識別子及び前記第２メンバーサーバに対応する第２サーバシーケンスを含む第２メッセージを受信する段階と、
前記第２メッセージに含まれた第２サーバ識別子を参照して、前記サーバシーケンス保存部に保存された前記第２サーバ識別子に対応する第２の保存されたサーバシーケンスを識別する段階と、
前記第２サーバシーケンスが前記第２保存されたサーバシーケンスに所定の値を合算したものよりも大きい場合に、前記第２メンバーサーバに前記第２の保存されたサーバシーケンスに前記所定の値を合算したサーバシーケンスに対応するメッセージの再送信を要求する段階と、
をさらに含むことを特徴とする請求項５に記載の信頼性ある通信提供方法。
【請求項８】
前記他のメンバーサーバのうちの１つである第２メンバーサーバから再送信しなければならないメッセージに対する第２サーバシーケンスを含む再送信要求メッセージを受信する段階と、
前記メンバーサーバから伝送されたメッセージを保存するメッセージバッファから前記第２サーバシーケンスに対応するメッセージを検索して前記第２メンバーサーバに送信する段階と、
をさらに含むことを特徴とする請求項５に記載の信頼性ある通信提供方法。
【請求項９】
請求項１から９のいずれか一項に記載の信頼性のある通信提供方法を実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体。
【請求項１０】
１つのグループに属する他のメンバーサーバとの信頼性ある通信を提供するための第１メンバーサーバであって、
前記第１メンバーサーバに対応する第１サーバシーケンス及び前記他のメンバーサーバそれぞれに対応して保存されたサーバシーケンスを保存するサーバシーケンス保存部と、
前記第１メンバーサーバを識別する第１サーバ識別子及び前記第１サーバシーケンスを含むメッセージを前記グループに属する前記他のメンバーサーバに送信するメッセージ送信部と、
前記メッセージを送信する度に、前記サーバシーケンス保存部に保持された前記第１サーバシーケンスを所定の値だけ増加させるサーバシーケンス管理部と、
を含むことを特徴とする信頼性ある通信を提供するサーバ。
【請求項１１】
前記他のメンバーサーバのうちの１つである第２メンバーサーバから、前記第２メンバーサーバの第２サーバ識別子及び前記第２メンバーサーバに対応する第２サーバシーケンスを含む最終シーケンス通知メッセージを受信するメッセージ受信部と、
前記最終シーケンス通知メッセージに含まれた第２サーバ識別子を参照して、前記サーバシーケンス保存部に保存された前記第２サーバ識別子に対応する第２の保存されたサーバシーケンスを識別するサーバシーケンス検索部と、
前記第２サーバシーケンスが前記第２の保存されたサーバシーケンスに所定の値段を合算したものよりも大きいか同じである場合に、前記第２メンバーサーバに前記第２の保存されたサーバシーケンスに前記所定の値を合算したサーバシーケンスに対応するメッセージの再送信を要求する再送信要請部と、
をさらに含むことを特徴とする請求項１０に記載の信頼性ある通信を提供するサーバ。
【請求項１２】
前記メッセージ送信部は、前記第１メンバーサーバを識別する第１サーバ識別子及び前記サーバシーケンス保存部に保存された第１サーバシーケンスを含む最終シーケンス通知メッセージを前記他のメンバーサーバに一定の時間間隔で送信することを特徴とする請求項１０に記載の信頼性ある通信を提供するサーバ。
【請求項１３】
前記他のメンバーサーバのうちの１つである第２メンバーサーバから、前記第２メンバーサーバの第２サーバ識別子及び前記第２メンバーサーバに対応する第２サーバシーケンスを含む第２メッセージを受信するメッセージ受信部と、
前記第２メッセージに含まれた第２サーバ識別子を参照して、前記サーバシーケンス保存部に保存された前記第２サーバ識別子に対応する第２の保存されたサーバシーケンスを識別するサーバシーケンス検索部と、
前記第２サーバシーケンスが前記第２の保存されたサーバシーケンスに所定の値を合算したものよりも大きい場合に、前記第２メンバーサーバに前記第２保存されたサーバシーケンスに前記所定の値を合算したサーバシーケンスに対応するメッセージの再送信を要求する再送信要請部と、
を含むことを特徴とする請求項１０に記載の信頼性ある通信を提供するサーバ。
【請求項１４】
前記他のメンバーサーバのうちの１つである第２メンバーサーバから、再送信しなければならないメッセージに対する第２サーバシーケンスを含む再送信要求メッセージを受信するメッセージ受信部と、
前記メンバーサーバから伝送されたメッセージを保存するメッセージバッファから前記第２サーバシーケンスに対応するメッセージを検索するメッセージ検索部と、をさらに含み、
前記メッセージ送信部は、前記検索されたメッセージを前記第２メンバーサーバに送信することを特徴とする請求項１０に記載の信頼性ある通信を提供するサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同一マルチキャストグループ内に属するメンバーサーバ間の信頼性ある通信を保障するための通信提供方法及び装置に関する。
【背景技術】
【０００２】
図１は、従来の複数のサービスサーバに接続するユーザ端末機のネットワーク構成を示した図である。
【０００３】
図１において、ユーザ端末機１０１、１０２を用いるユーザは、インターネット１０３を通じて、プレイしたいオンラインゲームを提供するゲームサーバ１０４、１０５、１０６に接続する。例えば、ゲームサーバ１０４、１０５はゴーストップゲームサービスを提供し、ゲームサーバ１０６はフーラゲームサービスを提供する。このとき、ユーザのログイン／ログアウトは、各ゲームサーバ１０４、１０５、１０６において個別に各々実行されるとともに、ユーザのログイン／ログアウト情報も各ゲームサーバ１０４、１０５、１０６にて個別に管理されていた。したがって、従来は、１つのゲームサーバにログインしたユーザは、他のゲームサーバにログインしたユーザの現在状態（例えば、ログインしたのかログアウトしたのか、又はどのようなゲームをしているのか）について全く知ることができなかった。
【０００４】
図２は、従来のユーザのロケーション情報を管理するためのロケーションサーバとサービスサーバとのネットワーク構成を示した図である。
【０００５】
図１に示した構成の問題点を解決するために、すべてのゲームサーバ２０４、２０５、２０６におけるユーザのログイン／ログアウト情報を集中的に管理するロケーションサーバ（Ｌｏｃａｔｉｏｎ  Ｓｅｒｖｅｒ）２０７が設けられている。ユーザがユーザ端末機２０１、２０２及びインターネット１０３を通じて、プレイしたいオンラインゲームを提供するゲームサーバ２０４、２０５、２０６に接続すると、ゲームサーバ２０４、２０５、２０６は、ユーザの各ログイン／ログアウト情報をロケーションサーバ２０７に送信する。その後、ロケーションサーバ２０７は、すべてのゲームサーバ２０４、２０５、２０６におけるユーザのログイン／ログアウト情報を集中的に管理するため、特定のサーバにログインしたユーザの最新の状態をユーザに提供することが可能となる。また、ロケーションサーバ２０７は、ユーザの位置を検出してユーザの重複ログインを防止することができる。
【０００６】
しかしながら、現在提供されているオンラインゲームは、数百台のゲームサーバによって提供されており、このようなゲームサーバそれぞれで管理されていたログイン／ログアウト情報の管理を１つのロケーションサーバで管理するとなれば、ロケーションサーバに対するシステムの負荷（ｌｏａｄ）が極めて大きくなるという問題点が発生する。
【０００７】
したがって、このようなロケーションサーバに集中するシステム負荷の問題を解決するために、ロケーションサーバをマルチキャストグループ（ｍｕｌｔｉｃａｓｔ  ｇｒｏｕｐ）で構成する方式が提案された。図３は、本発明におけるマルチキャストグループで構成された複数のロケーションサーバとサービスサーバ及びユーザ端末機のネットワーク構成を示した図である。マルチキャストグループに属するロケーションサーバは、ユーザのログイン／ログアウト状態に関して同じ状態情報を有さなければならない。
【０００８】
したがって、マルチキャストグループに属するロケーションサーバは、ユーザのログイン／ログアウト状態に関して同じ状態情報を有するため、マルチキャストグループに属する１つのロケーションサーバがユーザのログイン／ログアウトメッセージを受信すると、ログイン／ログアウトメッセージ受信に応答してマルチキャストメッセージを生成し、同一グループに属する他のロケーションサーバに送信することになる。
【０００９】
しかしながら、メッセージの送受信にＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）通信のような信頼性が保証されない通信環境が用いられる場合には、メッセージの交換過程において当該メッセージが損失する場合が発生する。ロケーションサーバ間の信頼性ある通信は極めて重要であるため、メッセージ送信に用いられる媒体及び通信手段が信頼性ある通信を保証しない場合にも、ロケーションサーバ間では信頼性ある通信を提供するための方法及び装置開発の必要性が切に求められている。
【００１０】
図４は、従来技術に係る通信提供方法の一実施形態を示した図である。図４に示すように、第１サーバ４０１は、第２サーバ４０２とネットワーク連結しており、所定のメッセージを送受信することができる。しかしながら、従来のＵＤＰ通信環境においては、送受信過程においてメッセージが損失する恐れがあるという問題があった。
【００１１】
例えば、第１サーバ４０１からメッセージ１、メッセージ２、メッセージ３を第２サーバ４０２に順に送信して最後にメッセージ４を送信したものの、メッセージ４が送信過程において損失し、第２サーバ４０２に伝送されないという問題が生じる場合がある。
【００１２】
このような場合に、第１サーバ４０１がメッセージ５を第２サーバに送信することで、第２サーバはメッセージ４が損失したことを判断し、第１サーバ４０１に再送信を要請することができ、第１サーバ４０１は、再送信要請に応じてメッセージ４を第２サーバ４０２に再送信する。しかしながら、このような損失メッセージの再送信は、２台のサーバ間でメッセージを交換する際には適用できるが、上述したように同一グループに属するサーバが複数であり、複数のサーバ間で交換されるメッセージの一部が損失する場合には適用することができないという問題点がある。
【００１３】
また、図４の従来例では、損失したメッセージが一連のシーケンス番号を有するメッセージのうちの中間のメッセージ、すなわち、メッセージ３とメッセージ５の間のメッセージ４が損失された場合にその損失の可否を判別して再送信を要求しているが、一連のシーケンス番号を有するメッセージのうちの最後のメッセージが損失した場合、このような方式では処理することができないという問題点がある。
【００１４】
図５は、従来技術に係る通信提供方法の他の実施形態を示した図である。図５に示すように、第１サーバ５０１は、第２サーバ５０２とネットワーク連結されており、所定のメッセージを送受信することができる。しかしながら、従来技術のＵＤＰ通信環境においては、第１サーバ５０１から第２サーバ５０２に送信した最後のメッセージが損失している場合、第２サーバにおいて損失を判別することができず、第１サーバに再送信を要請することができないという問題点があった。
【００１５】
例えば、第１サーバ５０１からメッセージ１、メッセージ２、メッセージ３を第２サーバ５０２に順に送信して最後にメッセージ４を送信したが、メッセージ４が送信過程において損失し、第２サーバ５０２に伝達されないという問題が生じる場合がある。
【００１６】
このような場合に、第２サーバ５０２は、メッセージ４が損失したことを認識できなかったり、相当な時間が経過した後に他のメッセージが受信されたことによって損失を認識したりするため、第１サーバ５０１及び第２サーバ５０２間のデータ及び状態が一致しなくなるという問題がある。
【００１７】
したがって、このように信頼性のない通信環境を改善し、サーバ間のメッセージの送受信を信頼性あるように具現し、同一グループに属したロケーションサーバ間のデータ及び状態が同じように保持されるようにする信頼性のある通信提供方法又は装置開発の必要性が切に求められている。
【発明の開示】
【発明が解決しようとする課題】
【００１８】
本発明は、サーバ間のメッセージの送受信を信頼性あるように具現し、同一マルチキャストグループに属するロケーションサーバ間のデータ及び状態が同じように保持されるようにする通信提供方法又は装置を提供することを目的とする。
【００１９】
また、本発明は、同一マルチキャストグループに属するメンバーサーバのうち、マルチキャストメッセージを他のメンバーサーバに送信した第１メンバーサーバが、マルチキャストメッセージの受信を確認する最終シーケンス通知メッセージを他のメンバーサーバに送信することで、他のメンバーサーバが損失したマルチキャストメッセージがあるか否かを確認し、損失している場合には再送信要請するようにし、同一マルチキャストグループに属するメンバーサーバが相互間のメッセージを送受信する際に、損失したメッセージを判別して再送信要請することで、信頼性ある通信を提供することを他の目的とする。
【００２０】
また、本発明は、マルチキャストメッセージを送信した第１サーバが、一定の時間間隔で、第１サーバ識別子及び第１サーバシーケンスを含む最終シーケンス通知メッセージを他のメンバーサーバに送信することで、第１サーバがマルチキャストメッセージを送信してから所定の期間内に他のマルチキャストメッセージを他のサーバに送信しなくても、他のサーバが第１サーバシーケンスに該当するメッセージが損失していることを判断して再送信を要請し、信頼性ある通信を提供することをさらに他の目的とする。
【００２１】
また、本発明は、送信されたメッセージのシーケンスを判別してメッセージが損失しているか否かを判断し、再送信を要請して受信することで、損失したメッセージによるエラーを防止し、同一グループに属するメンバーサーバ間で信頼性ある通信方法を用いてメッセージを送受信できるようにすることをさらに他の目的とする。
【００２２】
また、本発明は、同一グループに属する１つのメンバーサーバが最後に送信したメッセージが損失していても、他のメンバーサーバでこれを判断して再送信を要請することで、信頼性ある通信を提供することをさらに他の目的とする。
【課題を解決するための手段】
【００２３】
前記の目的を達成し、上述した従来技術の問題点を解決するために、本発明の一実施形態に係る同一マルチキャストグループに属するメンバーサーバ間に信頼性ある通信を提供するための方法は、上記マルチキャストグループに属する第１メンバーサーバのサーバシーケンス保存部に上記第１メンバーサーバに対応する第１サーバシーケンス及び上記第１メンバーサーバと同じマルチキャストグループに属する他のメンバーサーバそれぞれに対応して保存されたサーバシーケンスを保持する段階と、上記マルチキャストグループに属する上記他のメンバーサーバに、上記第１メンバーサーバを識別する第１サーバ識別子及び上記第１サーバシーケンスを含むマルチキャストメッセージを送信する段階と、上記マルチキャストメッセージを送信する度に、上記サーバシーケンス保存部に保持された上記第１サーバシーケンスを所定の値だけ増加させる段階と、上記メンバーサーバと同じマルチキャストグループに属する第２メンバーサーバから最終シーケンス通知メッセージ（当該最終シーケンス通知メッセージは、上記第２メンバーサーバの第２サーバ識別子及び上記第２メンバーサーバに対応する第２サーバシーケンスを含む）を受信する段階と、上記最終シーケンス通知メッセージに含まれた第２サーバ識別子を参照して、上記サーバシーケンス保存部に保存された上記第２サーバ識別子に対応する第２の保存されたサーバシーケンスを識別する段階と、上記第２サーバシーケンスが上記第２保存されたサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合に、上記第２メンバーサーバに上記第２の保存されたサーバシーケンスに上記所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する段階と、を含むこと特徴とする。
【００２４】
また、本発明の他の実施形態に係る１つのグループに属するメンバーサーバ間に信頼性ある通信を提供するための方法は、上記グループに属する第１メンバーサーバのサーバシーケンス保存部に上記第１メンバーサーバに対応する第１サーバシーケンス及び上記他のメンバーサーバそれぞれに対応して保存されたサーバシーケンスを保持する段階と、上記グループに属する上記他のメンバーサーバに上記第１メンバーサーバを識別する第１サーバ識別子及び上記第１サーバシーケンスを含むメッセージを送信する段階と、上記メッセージを送信する度に、上記サーバシーケンス保存部に保持された上記第１サーバシーケンスを所定の値だけ増加させる段階と、上記第１メンバーサーバを識別する第１サーバ識別子及び上記サーバシーケンス保存部に保存された第１サーバシーケンスを含む最終シーケンス通知メッセージを一定の時間間隔で上記他のメンバーサーバに送信する段階と、を含むことを特徴とする。
【００２５】
また、本発明のさらに他の実施形態に係る１つのグループに属する他のメンバーサーバとの信頼性ある通信を提供するための第１メンバーサーバは、上記第１メンバーサーバに対応する第１サーバシーケンス及び上記他のメンバーサーバそれぞれに対応して保存されたサーバシーケンスを保存するサーバシーケンス保存部と、上記グループに属する上記他のメンバーサーバに上記第１メンバーサーバを識別する第１サーバ識別子及び上記第１サーバシーケンスを含むメッセージを送信するメッセージ送信部と、上記メッセージを送信する度に、上記サーバシーケンス保存部に保持された上記第１サーバシーケンスを所定の値だけ増加させるサーバシーケンス管理部と、を含むことを特徴とする。
【発明の効果】
【００２６】
本発明によれば、信頼性のあるサーバ間でのメッセージ送受信を提供することで、同一マルチキャストグループに属したロケーションサーバ間のデータ及び状態を同じように保持することが可能な通信提供方法又は装置を提供することができる。
【００２７】
また、本発明は、同一マルチキャストグループに属するメンバーサーバのうち、マルチキャストメッセージを他のメンバーサーバに送信した第１メンバーサーバが、マルチキャストメッセージの受信を確認する最終シーケンス通知メッセージを他のメンバーサーバに送信することで、他のメンバーサーバが損失しているマルチキャストメッセージの有無を確認することができ、メッセージが損失している場合には、再送信を要請する。したがって、同一マルチキャストグループに属するメンバーサーバが相互間のメッセージを送受信する際の損失しているメッセージの判別及び再送信要請が実現され、信頼性ある通信を提供することができる。
【００２８】
また、本発明は、マルチキャストメッセージを送信した第１サーバが、第１サーバ識別子及び第１サーバシーケンスを含む最終シーケンス通知メッセージを一定の時間間隔で他のメンバーサーバに送信することで、第１サーバがマルチキャストメッセージを送信した後、所定の期間内に他のマルチキャストメッセージを他のサーバに送信しなくても、他のサーバが第１サーバシーケンスに該当するメッセージが損失していることを判断して再送信を要請することができ、信頼性ある通信を提供することができる。
【００２９】
また、本発明は、送信されたメッセージのシーケンスを判別してメッセージの損失の可否を判断し、再送信要請して受信することで、損失したメッセージによるエラーを防止し、同一グループに属するメンバーサーバ間で信頼性ある通信方法を用いてメッセージを送受信できる。
【００３０】
また、本発明は、同一グループに属する１つのメンバーサーバが最後に送信したメッセージが損失していても、他のメンバーサーバでこれを判断して再送信を要請することができ、信頼性ある通信を提供することができる。
【発明を実施するための最良の形態】
【００３１】
以下、添付の図面を参照して、本発明に係る信頼性ある通信提供方法及び装置について詳しく説明する。
【００３２】
図６は、本発明の同一マルチキャストグループに含まれた複数のロケーションサーバのネットワーク連結を示した図である。図６に示すように、第１サーバ６００、第２サーバ６１０、第３サーバ６２０、第４サーバ６３０は、同一マルチキャストグループに含まれており、ネットワークを通じて連結している。同一マルチキャストグループに含まれたメンバーサーバは、各メンバーサーバのサーバシーケンス保存部に自身のサーバシーケンス及び同一マルチキャストグループに含まれている他のメンバーサーバのサーバシーケンスを保存及び保持する。一例として、同一マルチキャストグループに含まれたメンバーサーバのうち、第１メンバーサーバである第１サーバ６００は、符号６００のように、サーバシーケンス保存部に第１サーバ及び同一マルチキャストグループに属する他のメンバーサーバ６１０、６２０、６３０それぞれに対応するサーバシーケンスを保存する。
【００３３】
例えば、第１サーバ６００は、サーバシーケンス保存部６０１に、第１サーバ６００のシーケンス「１５」、第２サーバ６１０のシーケンス「１５」、第３サーバ６２０のシーケンス「１５」、及び第４サーバ６３０のシーケンス「１５」を保存及び保持している。サーバシーケンスとは、同一マルチキャストグループに含まれたメンバーサーバ間のメッセージ送受信と関連するシーケンス（ｓｅｑｕｅｎｃｅ）である。
【００３４】
同一マルチキャストグループに属するメンバーサーバのうちの１つである第１サーバ６００は、マルチキャストグループに属する他のメンバーサーバ６１０、６２０、６３０にマルチキャストメッセージを送信する際に、マルチキャストメッセージに第１サーバ６００を識別する第１サーバ識別子及び第１サーバシーケンスを含ませて送信する。
【００３５】
同一マルチキャストグループに属するメンバーサーバは、サーバに保存されたデータを同期化するために、１つのメンバーサーバが外部サーバから所定のメッセージを受信すると、これをマルチキャストメッセージとして生成して他のメンバーサーバに送信し、他のメンバーサーバは、当該マルチキャストメッセージを受信してデータを同期化する。
【００３６】
第１サーバ６００は、このようなマルチキャストメッセージを同一マルチキャストグループに属する他のメンバーサーバ６１０、６２０、６３０に送信する際に、マルチキャストメッセージに第１サーバ識別子及び第１サーバシーケンスを含ませて送信する。
【００３７】
そして、第１サーバ６００は、マルチキャストメッセージを送信する度に、サーバシーケンス保存部６０１に保持されている第１サーバシーケンスを所定の値だけ増加させ、所定の値だけ増加した第１サーバシーケンスをマルチキャストメッセージ６０２に含ませて送信する。一例として、第１サーバ６００は、マルチキャストメッセージを送信する度に、シーケンス保存部６０１に保持されている第１サーバシーケンスを「１」ずつ増加させ、符号６０２のように、マルチキャストメッセージに第１サーバ識別子「ＬＣＳ１」及び増加した第１サーバシーケンスである「１６」を含んで他のメンバーサーバ６１０、６２０、６３０に送信する。増加させる値は、実施形態に応じて多様な設定が可能である。
【００３８】
また、本実施形態では、第１サーバ６００は、サーバシーケンス保存部６０１に保持されている第１サーバシーケンスをマルチキャストメッセージに含ませて送信し、第１サーバシーケンスを所定の値だけ増加させることもできる。例えば、符号６０３で示すように、第１サーバがマルチキャストメッセージを送信することによって、サーバシーケンス保存部６０１に保持されていた第１サーバシーケンス「１５」を「１６」に「１」だけ増加させる。
【００３９】
このように、第１サーバは、第１サーバシーケンスを含んだマルチキャストメッセージを送信して第１サーバシーケンスを所定の値だけ増加させたり、第１サーバシーケンスを所定の値だけ増加させた後に第１サーバシーケンスを含んだマルチキャストメッセージを送信したりする。これら２つすべての場合は、マルチキャストメッセージを送信する度に第１サーバシーケンスを所定の値だけ増加させるという点において等しく、実施形態すべてが本発明に属し均等な範囲内であると言える。なお、前者の場合（第１サーバが第１サーバシーケンスを含んだマルチキャストメッセージを送信して第１サーバシーケンスを所定の値だけ増加させる場合）には、後述する最終シーケンス通知メッセージに含まれるサーバシーケンスは、第１サーバ６００のサーバシーケンス保存部に保存されている第１サーバシーケンスから所定の値を減少させた値となる。同じように、後者の場合（第１サーバが第１サーバシーケンスを所定の値だけ増加させた後に第１サーバシーケンスを含んだマルチキャストメッセージを送信する場合）には、後述する最終シーケンス通知メッセージに含まれるサーバシーケンスは、第１サーバ６００のサーバシーケンス保存部に保存されている第１サーバシーケンスとなる。
【００４０】
マルチキャストメッセージを送信した第１サーバ６００は、第１サーバを識別する第１サーバ識別子及びサーバシーケンス保存部に保存されている第１サーバシーケンスを含む最終シーケンス通知メッセージを、メンバーサーバと同じマルチキャストグループに属する他のメンバーサーバ６１０、６２０、６３０に一定の時間間隔で送信する。一定の時間間隔も、実施形態に応じて多様な値に変更が可能である。
【００４１】
例えば、第１サーバ６００が第１サーバシーケンスを所定の値だけ増加させた後に第１サーバシーケンスを含んだマルチキャストメッセージを送信する場合に、第１サーバ６００は、第１サーバ識別子「ＬＣＳ１」及びサーバシーケンス保存部６０３に保存されている第１サーバシーケンス「１６」を含む最終シーケンス通知メッセージ６０４を、同一マルチキャストグループに属する他のメンバーサーバ６１０、６２０、６３０に「５秒」間隔で送信する。
【００４２】
一方、第１サーバ６００がサーバシーケンス保存部６０３に保存されている第１サーバシーケンス「１５」を含んだマルチキャストメッセージを送信した後に、保存されている第１サーバシーケンスを所定の値だけ増加させて「１６」と記録する場合に、第１サーバ６００は、最終シーケンス通知メッセージ６０４に保存されている第１サーバシーケンス「１６」から所定の値を減少させたサーバシーケンスである「１５」を含んだ同一マルチキャストグループに属する他のメンバーサーバ６１０、６２０、６３０に送信する。このような場合も、第１サーバ６００から他のメンバーサーバ６１０、６２０、６３０に送信したマルチキャストメッセージに含まれたサーバシーケンス及びサーバ識別子を含んだ最終シーケンス通知メッセージを送信することに変わりない。
【００４３】
マルチキャストグループに属する他のメンバーサーバ６１０、６２０、６３０が最終シーケンス通知メッセージを受信すると、最終シーケンス通知メッセージに含まれた第１サーバ識別子を参照して、それぞれのメンバーサーバのサーバシーケンス保存部に保存されていた第１サーバ識別子に対応する第１保存されたサーバシーケンスを識別する。既に説明したように、マルチキャストグループに属するメンバーサーバは、それぞれサーバシーケンス保存部を含んでいる。サーバシーケンス保存部には、マルチキャストグループに属する各メンバーサーバのサーバ識別子及びサーバシーケンスが保持されている。
【００４４】
識別した結果、メンバーサーバに保存された第１サーバシーケンスが第１保存されていたサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合には、第１メンバーサーバに第１の保存されたサーバシーケンスに所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する。このような過程については、図７を参照して詳しく説明する。
【００４５】
図７は、本発明に係るメンバーサーバで最終シーケンス通知メッセージを受信して処理する過程を示した図である。図７に示すように、第１サーバ７００、第２サーバ７１０、第３サーバ７２０、第４サーバ７３０は、同一マルチキャストグループに含まれてデータを同期化する。
【００４６】
同一マルチキャストグループに属するメンバーサーバのうちの第１メンバーサーバである第１サーバ７００は、同一マルチキャストグループに属する第２メンバーサーバ７１０、７２０、７３０のうちの１つから最終シーケンス通知メッセージを受信する。第２メンバーサーバが最終シーケンス通知メッセージを送信する過程は、図６を参照して説明した通りである。
【００４７】
最終シーケンス通知メッセージは、第２メンバーサーバのサーバ識別子及び第２メンバーサーバに対応する第２サーバシーケンスを含んでいる。例えば、図７において、第４サーバ７３０は、第１サーバ７００に最終シーケンス通知メッセージ７０２を送信する。最終シーケンス通知メッセージ７０２は、第４サーバ７３０のサーバ識別子「ＬＣＳ４」及び第４サーバ７３０に対応するサーバシーケンス「１６」を含んでいる。
【００４８】
第１サーバ７００は、受信した最終シーケンス通知メッセージ７０２に含まれているサーバ識別子ＬＣＳ４を参照して、サーバシーケンス保存部７０１に保存されているサーバ識別子「ＬＣＳ４」に対応するサーバシーケンスを識別する。例えば、保存されているサーバシーケンスは「１５」である。
【００４９】
第１サーバ７００は、最終シーケンス通知メッセージ７０２に含まれたサーバシーケンスがサーバシーケンス保存部７０１に保存されているサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合に、第４サーバに保存されているサーバシーケンスに所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する。
【００５０】
例えば、第１サーバ７００から受信した最終シーケンス通知メッセージ７０２に含まれているサーバシーケンス「１６」が、サーバシーケンス保存部７０１に保存されているサーバシーケンス「１５」に所定の値である「１」を合算した値である場合に、第１サーバ７００は、第４サーバ７３０に保存された「１５」に所定の値である「１」を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求するメッセージ７０３を送信する。
【００５１】
したがって、本発明によれば、同一マルチキャストグループに属するメンバーサーバのうちでマルチキャストメッセージを他のメンバーサーバに送信したサーバは、マルチキャストメッセージの受信を確認する最終シーケンス通知メッセージを他のメンバーサーバに送信することで、他のメンバーサーバが損失したマルチキャストメッセージの有無を確認し、損失している場合には再送信を要請するようになる。
【００５２】
したがって、本発明によれば、同一マルチキャストグループに属するメンバーサーバが相互間でメッセージを送受信する際に、損失したメッセージを判別して再送信を要請することで、信頼性ある通信を提供することができるという効果がある。
【００５３】
特に、マルチキャストメッセージを送信した第１サーバは、第１サーバ識別子及び第１サーバシーケンスを含む最終シーケンス通知メッセージを一定の時間間隔で他のメンバーサーバに送信することで、第１サーバがマルチキャストメッセージを送信した後、所定の期間内に他のマルチキャストメッセージを他のサーバに送信しなくても、他のサーバが第１サーバシーケンスに該当するメッセージが損失していることを判断して再送信を要請できるようになるという効果がある。このような効果については、図１０を参照して詳しく後述する。
【００５４】
図８は、本発明に係るメンバーサーバにおいてマルチキャストメッセージを受信して処理する過程を示した図である。
【００５５】
図８に示すように、第１サーバ８００、第２サーバ８１０、第３サーバ８２０、第４サーバ８３０は、同一マルチキャストグループに含まれてデータを同期化する。
【００５６】
同一マルチキャストグループに属するメンバーサーバのうち、第１メンバーサーバである第１サーバ８００は、同一マルチキャストグループに属する第２メンバーサーバ８１０、８２０、８３０のうちの１つから第２マルチキャストメッセージを受信する。第２メンバーサーバのうちの１つであるサーバが同一マルチキャストグループに属する残りのメンバーサーバに送信するメッセージとして、例えば、第２マルチキャストメッセージは、第２メンバーサーバ８１０、８２０、８３０のうちの１つが外部サーバから受信したメッセージを加工したメッセージである。
【００５７】
例えば、マルチキャストグループに属するメンバーサーバが外部サービスサーバのユーザログイン／ログアウト情報を管理する場合にも、メンバーサーバは、ユーザに対するログイン／ログアウト状態を同期化して等しく保持しなければならない。したがって、１つのメンバーサーバは、ユーザに対するログイン／ログアウトメッセージを外部サービスサーバから受信して同一グループに属する残りのメンバーサーバに送信するためのマルチキャストメッセージを生成する。
【００５８】
第１サーバ８００は、第４サーバ８３０からマルチキャストメッセージ８０２を受信する。マルチキャストメッセージ８０２は、第２メンバーサーバである第４サーバ８３０のサーバ識別子及び前記第４サーバに対応するサーバシーケンスを含んでいる。すなわち、マルチキャストメッセージ８０２は、第４サーバ８３０のサーバ識別子「ＬＣＳ４」及び第４サーバに対応するサーバシーケンス「１７」を含む。
【００５９】
第１サーバ８００は、マルチキャストメッセージ８０２に含まれた第２サーバ識別子を参照して、サーバシーケンス保存部に保存されている第２サーバ識別子に対応する第２保存されたサーバシーケンスを識別する。例えば、第１サーバ８００は、マルチキャストメッセージ８０２に含まれた第４サーバ８３０のサーバ識別子「ＬＣＳ４」を参照し、サーバシーケンス保存部８０１に保存されている第４サーバ識別子「ＬＣＳ４」に対応して保存されているサーバシーケンス「１５」を識別する。
【００６０】
第１サーバ８００は、マルチキャストメッセージに含まれている第２サーバシーケンスが第２の保存されているサーバシーケンスに所定の値を合算したものよりも大きい場合に、第２メンバーサーバに第２保存されたサーバシーケンスに所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する。例えば、第１サーバ８００は、受信したマルチキャストメッセージ８０２に含まれている第４サーバのサーバシーケンス「１７」がサーバシーケンス保存部８０１に保存されている第４サーバのサーバシーケンス「１５」に所定の値を合算したものよりも大きい場合に、第４サーバ８３０に第４サーバのサーバシーケンスに所定の値を合算したサーバシーケンスに対応するマルチキャストメッセージの再送信を要求する。一例として、所定の値は「１」である。第１サーバ８００は、マルチキャストメッセージに含まれた第４サーバのサーバシーケンス「１７」が、保存されている第４サーバのサーバシーケンス「１５」に「１」を合算した値である「１６」よりも大きい場合に、サーバシーケンス「１６」に対応するマルチキャストメッセージの再送信要求メッセージ８０３を第４サーバ８３０に送信する。
【００６１】
再送信要求メッセージ８０３は、第４サーバが再送信しなければならないマルチキャストメッセージに対するサーバシーケンスを含んでいる。上述の例の場合、再送信要求メッセージは、第４サーバが再送信しなければならないマルチキャストメッセージに対するサーバシーケンス「１６」を含んでいる。
【００６２】
第４サーバ８３０は、第１サーバから再送信要求メッセージ８０３を受信し、メンバーサーバ８００、８１０、８２０に送信したマルチキャストメッセージを保存しているメッセージバッファ８０４から第２サーバシーケンスに対応するマルチキャストメッセージを検索して第１サーバに送信する。
【００６３】
メッセージバッファ８０４とは、同一マルチキャストグループに属するメンバーサーバのうちの１つのサーバが残りのメンバーサーバに送信したマルチキャストメッセージを保存する保存手段であり、所定のデータを保存する保存手段である。マルチキャストメッセージは、送信するサーバ識別子及びサーバシーケンスを含んでいるため、第４サーバ８３０は、再送信要求メッセージ８０３の受信に応答し、再送信要求メッセージ８０３に含まれているサーバシーケンス「１６」に対応するマルチキャストメッセージ８０５をメッセージバッファ８０４から検索して、これを第１サーバ８１０に送信する。
【００６４】
したがって、本発明によれば、同一マルチキャストグループに属するメンバーサーバから同一マルチキャストグループに属する他のメンバーサーバに連続したシーケンスを有するマルチキャストメッセージを送信する際に、マルチキャストメッセージを受信するメンバーサーバにおいて、マルチキャストメッセージのうちから損失して送信されないマルチキャストメッセージを判別し、これに対して再送信要請することができるため、信頼性ある通信環境を構築できるという効果がある。
【００６５】
特に、複数のメンバーサーバが同一マルチキャストグループに含まれており、所定の情報を同期化して情報を分散処理する場合に、複数のメンバーサーバは、同じ状態及びデータを保持して正確に同期化される必要がある。したがって、本発明によれば、複数のメンバーサーバのマルチキャスト受信の可否を正確に判別し、一部でも損失している場合には再送信要請して再送信を受けることができるため、同一グループに属した複数のメンバーサーバが同じ状態及びデータを保持できるようになる。
【００６６】
もし、同一マルチキャストグループに含まれたメンバーサーバがユーザのログイン／ログアウト情報を管理する場合に、メンバーサーバは、１つのメンバーサーバで受信したログイン／ログアウトメッセージをマルチキャストメッセージとして受信し、同一状態を保持してユーザのログイン／ログアウト情報を分散処理することができる。ここで、１つのメンバーサーバから他のメンバーサーバに送信したマルチキャストメッセージが損失している場合には、他のメンバーサーバが損失しているマルチキャストサーバシーケンスを判別してマルチキャストメッセージを送信したサーバに再要請することができるため、同一マルチキャストグループに属するメンバーサーバのデータ及び状態が一致しないことによって発生し得るエラーを防ぐことができるとう効果がある。
【００６７】
また、本発明に係る信頼性ある通信提供方法は、このようなマルチキャストグループに属するメンバーサーバだけでなく、複数のサーバを含んだあらゆるグループのサーバ間の通信において適用が可能である。このとき、サーバは、他のメンバーサーバにマルチキャストメッセージではない所定の情報を含んだ一般メッセージを送信し、最終通知メッセージを一定の時間間隔で送信してメッセージ損失の可否を判断することもできるし、送信されたメッセージのシーケンスを判別してメッセージ損失の可否を判断し、再送信要請して受信することで損失したメッセージによるエラーを防止し、メンバーサーバ間の信頼性ある通信方法を用いてメッセージを送受信できるようになるという効果がある。
【００６８】
図９は、本発明によって、メンバーサーバ間の信頼性ある通信方法を提供する一実施形態を示した図である。
【００６９】
図９に示すように、本発明に係るメンバーサーバのうちの第１サーバ９０１は、同一グループに属する他のメンバーサーバである第２サーバ９０２にメッセージ１、メッセージ２、メッセージ３、及びメッセージ４を順に送信する。このとき、メッセージ４が通信過程において損失する場合がある。第２サーバ９０２は、メッセージ１、メッセージ２、メッセージ３を受信した後、メッセージを送信した第１サーバ識別子及び当該メッセージに対するサーバシーケンスをサーバシーケンス保存部に保存する。
【００７０】
第１サーバ９０１はメッセージ５を第２サーバ９０２に送信し、第２サーバ９０２はメッセージ５を受信して保存する。第２サーバ９０２は、サーバシーケンス保存部に保存されているサーバシーケンスとメッセージ５のサーバシーケンスを比較し、メッセージ５のサーバシーケンスが保存されているサーバシーケンスに所定の値を合算したよりも大きい場合には、保存されているシーケンスに所定の値を合算したサーバシーケンスに対応するメッセージであるメッセージ４の再送信を要請する再送信要請メッセージを第１サーバ９０１に送信する。
【００７１】
第１サーバ９０１は、再送信要請メッセージを受信した後、再送信しなければならないメッセージに対するサーバシーケンスに対応するメッセージ４をメッセージバッファから検索した後、第２サーバに再送信する。
【００７２】
このような損失メッセージの再送信は、同一グループに属した他のメンバーサーバから受信したすべてのメッセージに適用が可能であり、本発明に係るメンバーサーバは、１つのグループに属した他のメンバーサーバから受信したメッセージ損失の可否を判断して再送信を要請することができるため、信頼性ある通信環境でメッセージを送受信できるようになるという効果がある。
【００７３】
図１０は、本発明のメンバーサーバ間の信頼性ある通信方法を提供する他の実施形態を示した図である。
【００７４】
図１０に示すように、第１サーバ１００１及び第２サーバ１００２は、同一グループに属したメンバーサーバである。
【００７５】
本発明に係るメンバーサーバのうちの第１サーバ１００１は、同一グループに属する他のメンバーサーバである第２サーバ１００２にメッセージ１、メッセージ２、メッセージ３、及びメッセージ４を順に送信する。このとき、メッセージ４は、送信過程において損失する場合がある。
【００７６】
第１サーバ１００１は、メッセージを送信する度に、サーバシーケンス保存部に保持されている第１サーバシーケンスを所定の値だけ増加させ、第１サーバ１００１を識別する第１サーバ識別子及びサーバシーケンス保存部に保存されている第１サーバシーケンスを含む最終シーケンス通知メッセージを一定の時間間隔で第２サーバ１００２に送信する。
【００７７】
第２サーバ１００２は、第１サーバ１００１から最終シーケンス通知メッセージを受信すると、最終シーケンス通知メッセージに含まれた第１サーバ識別子を参照して保存されているサーバシーケンスを識別し、最終シーケンス通知メッセージに含まれている第１サーバシーケンスが保存されているサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合には、第１サーバ１００１に所定の値を合算したサーバシーケンスに対応するメッセージの再送信を要求する再送信メッセージを送信する。
【００７８】
すなわち、第１サーバ１００１は、最終シーケンス通知メッセージにメッセージ４に該当するシーケンスである「４」を含んで第２サーバに送信するが、第２サーバ１００２には最後に受信したメッセージ３に該当するシーケンスである「３」が保存されているため、第２サーバ１００２は、メッセージ４の再送信を要求する再送信要請メッセージを第１サーバ１００１に送信する。
【００７９】
第１サーバ１００１は、メッセージバッファからメッセージ４を検索し、これを第２サーバ１００２に再送信する。
【００８０】
したがって、本発明によれば、メッセージを送信した第１サーバは、第１サーバ識別子及び第１サーバシーケンスを含む最終シーケンス通知メッセージを一定の時間間隔で他のメンバーサーバに送信することで、第１サーバがマルチキャストメッセージを送信した後、所定の期間内に他のメッセージを他のサーバに送信しなくても、他のサーバが第１サーバシーケンスに該当するメッセージが損失していることを判断して再送信を要請できるようになるという効果がある。
【００８１】
本発明は、同一グループに属する１つのメンバーサーバが最後に送信したメッセージに損失があっても、他のメンバーサーバでこれを判断して再送信を要請することによって、信頼性ある通信を提供できるようになるという効果がある。このような効果は、図５で説明した従来技術の問題点を明確に解決できるものであると言える。
【００８２】
本発明に係る通信提供方法は、コンピュータにより具現される多様な動作を実行するためのプログラム命令を含むコンピュータ読み取り可能な媒体を含む。記録媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含むこともできる。また、記録媒体及びプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知であり使用可能なものであってもよい。また、コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置等が含まれる。また、記録媒体は、プログラム命令、データ構造などを保存する信号を送信する搬送波を含む光または金属線、導波管などの送信媒体でもあってもよい。プログラム命令の例としては、コンパイラによって生成されるもののような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含むことができる。また、上記ハードウェア要素は、本発明の動作を実行するために一以上のソフトウェアモジュールとして作動するように構成することができ、その逆もできる。
【００８３】
図１１は、本発明の一実施形態に係る信頼性ある通信を提供するためのメンバーサーバの構成を示したブロック図である。図１１に示すように、本発明の１つのグループに属する他のメンバーサーバとの信頼性ある通信を提供するための第１メンバーサーバは、サーバシーケンス保存部１１０１と、メッセージ送信部１１０２と、サーバシーケンス管理部１１０３と、メッセージ受信部１１０４と、サーバシーケンス検索部１１０４と、再送信要請部１１０５とを含む。
【００８４】
サーバシーケンス保存部１１０１は、第１メンバーサーバに対応する第１サーバシーケンス及び他のメンバーサーバそれぞれに対応して保存されるサーバシーケンスを保存する。サーバシーケンス保存部１１０１の一実施形態は、図６の符号６０１を参照して説明した通りである。
【００８５】
メッセージ送信部１１０２は、グループに属する他のメンバーサーバにメッセージを送信する際に、メッセージに第１メンバーサーバを識別する第１サーバ識別子及び第１サーバシーケンスを含んで送信する。
【００８６】
サーバシーケンス管理部１１０３は、メッセージを送信する度に、サーバシーケンス保存部に保持されている第１サーバシーケンスを所定の値だけ増加させる。上述した通り、所定の値は、実施形態に応じて多様に設定が可能である。
【００８７】
メッセージ受信部１１０４は、他のメンバーサーバのうちの１つである第２メンバーサーバから最終シーケンス通知メッセージを受信する。最終シーケンス通知メッセージは、第２メンバーサーバの第２サーバ識別子及び第２メンバーサーバに対応する第２サーバシーケンスを含んでいる。
【００８８】
シーケンス検索部１１０５は、最終シーケンス通知メッセージに含まれている第２サーバ識別子を参照して、サーバシーケンス保存部に保存されている第２サーバ識別子に対応する第２保存されたサーバシーケンスを識別する。
【００８９】
再送信要請部１１０６は、第２サーバシーケンスが第２保存されたサーバシーケンスに所定の値を合算したものよりも大きいか同じである場合に、第２メンバーサーバに第２保存されたサーバシーケンスに所定の値を合算したサーバシーケンスに対応するメッセージの再送信を要求する。
【００９０】
このように、メンバーサーバの再送信要請部１１０６は、所定の値を合算したサーバシーケンスに対応するメッセージの再送信をメンバーサーバに要求することで、損失したメッセージを判別して再送信要請できるようになるとう効果がある。
【００９１】
また、メッセージ送信部１１０２は、第１メンバーサーバを識別する第１サーバ識別子及びサーバシーケンス保存部に保存されている第１サーバシーケンスを含む最終シーケンス通知メッセージを一定の時間間隔で他のメンバーサーバに送信する。
【００９２】
メッセージ送信部１１０２は、このように最終シーケンス通知メッセージを他のメンバーサーバに送信することで、他のメンバーサーバがメンバーサーバから最終的に受信したメッセージのシーケンスを確認できるようになるという効果がある。
【００９３】
メッセージ受信部１１０４は、他のメンバーサーバのうちの１つである第２メンバーサーバから第２メッセージを受信する。第２メッセージは、第２メンバーサーバの第２サーバ識別子及び第２メンバーサーバに対応する第２サーバシーケンスを含んでいる。
【００９４】
サーバシーケンス検索部１１０５は、第２メッセージに含まれている第２サーバ識別子を参照して、サーバシーケンス保存部に保存されている第２サーバ識別子に対応する第２保存されたサーバシーケンスを識別する。
【００９５】
再送信要請部１１０６は、第２サーバシーケンスが第２保存されたサーバシーケンスに所定の値を合算したものよりも大きい場合に、第２メンバーサーバに第２保存されたサーバシーケンスに所定の値を合算したサーバシーケンスに対応するメッセージの再送信を要求する。
【００９６】
また、メッセージ受信部１１０４は、他のメンバーサーバのうちの１つである第２メンバーサーバから再送信要求メッセージを受信することができる。再送信要求メッセージは、再送信しなければならないメッセージに対する第２サーバシーケンスを含んでいる。
【００９７】
メッセージ検索部１１０７は、メンバーサーバにおいて送信したメッセージを保存するメッセージバッファから第２サーバシーケンスに対応するメッセージを検索し、メッセージ送信部１１０２は、検索されたメッセージを第２メンバーサーバに送信する。
【００９８】
上述したように、本発明を好ましい実施形態に則して説明したが、本発明の技術分野において熟練した当業者にとっては、特許請求の範囲に記載された本発明の技術的思想及びその領域から逸脱しない範囲内で、本発明を多様に修正および変更させることができることを理解することができるであろう。すなわち、本発明の技術的範囲は、特許請求の範囲に基づいて定められ、発明を実施するための最良の形態により制限されるものではない。
【図面の簡単な説明】
【００９９】
【図１】従来の複数のサービスサーバに接続するユーザ端末機のネットワーク接続を示した図である。
【図２】従来のユーザのロケーション情報を管理するためのロケーションサーバとサービスサーバとのネットワーク接続を示した図である。
【図３】本発明のマルチキャストグループで構成された複数のロケーションサーバとサービスサーバ及びユーザ端末機のネットワーク連結を示した図である。
【図４】従来技術に係る通信提供方法の一実施形態を示した図である。
【図５】従来技術に係る通信提供方法の他の実施形態を示した図である。
【図６】本発明の同一マルチキャストグループに含まれた複数のロケーションサーバのネットワーク連結を示した図である。
【図７】本発明に係るメンバーサーバにおいて最終シーケンス通知メッセージを受信して処理する過程を示した図である。
【図８】本発明に係るメンバーサーバにおいてマルチキャストメッセージを受信して処理する過程を示した図である。
【図９】本発明のメンバーサーバ間の信頼性ある通信方法を提供する一実施形態を示した図である。
【図１０】本発明のメンバーサーバ間の信頼性ある通信方法を提供する他の実施形態を示した図である。
【図１１】本発明の一実施形態に係る信頼性ある通信を提供するためのメンバーサーバの構成を示したブロック図である。
【図１】
2008544685.tif 000003
【図２】
2008544685.tif 000004
【図３】
2008544685.tif 000005
【図４】
2008544685.tif 000006
【図５】
2008544685.tif 000007
【図６】
2008544685.tif 000008
【図７】
2008544685.tif 000009
【図８】
2008544685.tif 000010
【図９】
2008544685.tif 000011
【図１０】
2008544685.tif 000012
【図１１】
2008544685.tif 000013
【国際調査報告】
2008544685.tif 000014
2008544685.tif 000015