(57)【特許請求の範囲】
【請求項１】
対応するサーバーアドレスを有するサービスサーバーと、
対応する自分のサーバーアドレスを有し、接続されたクライアント端末のうちマルチキャストアドレスに加入したクライアント端末のクライアントアドレスをクライアントアドレスリストに保存する接続管理サーバーと、
前記クライアントアドレスとは関係なく前記サーバーアドレスのみを利用してメッセージルーティングを処理し、前記マルチキャストアドレスに加入したクライアント端末と接続された接続管理サーバーのサーバーアドレスをサーバーアドレスリストに保存する内部ルータと、を含むことを特徴とするマルチキャスト通信ネットワークシステム。
【請求項２】
前記接続管理サーバーは、前記接続されたクライアント端末に、前記自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを割り当てることを特徴とする請求項１記載のマルチキャスト通信ネットワークシステム。
【請求項３】
前記内部ルータは、前記マルチキャストアドレスに伝送されたマルチキャストメッセージが受信されると、前記サーバーアドレスリストに含まれたサーバーアドレスに前記マルチキャストメッセージを伝送することを特徴とする請求項１に記載のマルチキャスト通信ネットワークシステム。
【請求項４】
前記接続管理サーバーは、前記マルチキャストメッセージが受信されると、前記マルチキャストメッセージを前記クライアントアドレスリストに含まれたクライアントアドレスに伝送することを特徴とする請求項３に記載のマルチキャスト通信ネットワークシステム。
【請求項５】
前記接続管理サーバーは、前記マルチキャストメッセージが前記接続されたクライアント端末から受信された場合、前記内部ルータに前記マルチキャストメッセージを伝送することを特徴とする請求項４に記載のマルチキャスト通信ネットワークシステム。
【請求項６】
前記内部ルータは、前記接続管理サーバーから前記マルチキャストメッセージが受信された場合、前記接続管理サーバーのサーバーアドレスを除いたサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送することを特徴とする請求項５に記載のマルチキャスト通信ネットワークシステム。
【請求項７】
前記マルチキャスト通信ネットワークシステムは、前記内部ルータ側が、前記接続管理サーバーを前記サービスサーバーと対等に認識することを特徴とする請求項１に記載のマルチキャスト通信ネットワークシステム。
【請求項８】
前記ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドを含み、前記内部ルータは、前記クライアントアドレスフィールドをマスク(masking)してメッセージルーティングを処理することを特徴とする請求項２に記載のマルチキャスト通信ネットワークシステム。
【請求項９】
前記マルチキャストアドレスは、前記サーバーアドレスフィールドに記録されることを特徴とする請求項８に記載のマルチキャスト通信ネットワークシステム。
【請求項１０】
前記マルチキャストアドレスは前記クライアントアドレスフィールドに記録され、
前記接続管理サーバーは、前記クライアントアドレスフィールドにマルチキャストアドレスが記録されたマルチキャストメッセージを受信すると、前記クライアントアドレスリストに含まれたクライアントアドレスに前記マルチキャストメッセージを伝送し、前記内部ルータに前記マルチキャストメッセージを伝送しないことを特徴とする請求項８に記載のマルチキャスト通信ネットワークシステム。
【請求項１１】
前記接続管理サーバーは、前記クライアント端末と暗号化されたセキュリティー通信を行うことを特徴とする請求項１に記載のマルチキャスト通信ネットワークシステム。
【請求項１２】
前記接続管理サーバーに接続されたクライアント端末は、それぞれ前記接続管理サーバーの以外にも一つ以上の補助接続管理サーバーに同時に接続され,
前記接続管理サーバーを介する接続において異常が発生する場合、前記接続管理サーバーは、新しいクライアント端末の接続要求を拒否し、前記接続管理サーバーに接続されたクライアント端末は、前記補助接続管理サーバーを介してメッセージを伝送することを特徴とする請求項１に記載のマルチキャスト通信ネットワークシステム。
【請求項１３】
前記マルチキャスト通信ネットワークシステムは、前記クライアント端末のうちいずれか一つと前記サービスサーバーとの間で接続生成メッセージが正常に往復すれば、前記クライアント端末のいずれか一つと前記サービスサーバーとの間に仮想接続(virtual connection)を設定することを特徴とする請求項１に記載のマルチキャスト通信ネットワークシステム。
【請求項１４】
前記サービスサーバーは、前記マルチキャストアドレスに加入したクライアント端末または前記マルチキャストアドレスに加入したクライアント端末が接続された接続管理サーバーについての情報を保存し、前記保存された情報を前記クライアント端末に提供することを特徴とする請求項１に記載のマルチキャスト通信ネットワークシステム。
【請求項１５】
前記サービスサーバーは、前記マルチキャストアドレスに対する変更が発生する場合、前記接続管理サーバー及び前記内部ルータにコントロールメッセージを伝送し、前記接続管理サーバー及び前記内部ルータが前記マルチキャストアドレスに対する変更を反映して更新(アップデート)することを特徴とする請求項１４に記載のマルチキャスト通信ネットワークシステム。
【請求項１６】
クライアント端末から受信されたアドレス割り当て要請に応答し、接続管理サーバーが、自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを生成し、それを前記クライアント端末に割り当てる段階と、
前記接続管理サーバーが、前記クライアント端末からマルチキャストアドレスへの加入要請を受け、前記マルチキャストアドレスに相応するクライアントアドレスリストに前記クライアント端末のクライアントアドレスを登録する段階と、
内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリストに前記接続管理サーバーのサーバーアドレスを登録する段階と、を含むことを特徴とするデータ送／受信方法。
【請求項１７】
前記データ送／受信方法は、
前記接続管理サーバーが、前記クライアント端末から前記マルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、
前記接続管理サーバーが、前記クライアントアドレスリスト内のクライアントアドレス及び前記内部ルータに前記マルチキャストメッセージを伝送する段階と、
前記内部ルータが、前記接続管理サーバーのサーバーアドレスを除いた前記サーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、をさらに含むことを特徴とする請求項１６に記載のデータ送／受信方法。
【請求項１８】
前記ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドを含み、前記内部ルータは、前記クライアントアドレスフィールドをマスク(masking)してメッセージルーティングを処理することを特徴とする請求項１６に記載のデータ送／受信方法。
【請求項１９】
前記マルチキャストアドレスは、前記サーバーアドレスフィールドに記録されることを特徴とする請求項１６に記載のデータ送／受信方法。
【請求項２０】
前記マルチキャストアドレスは前記クライアントアドレスフィールドに記録され、
前記接続管理サーバーは、前記クライアントアドレスフィールドにマルチキャストアドレスが記録されたマルチキャストメッセージを受信すると、前記クライアントアドレスリストに含まれたクライアントアドレスに前記マルチキャストメッセージを伝送し、前記内部ルータに前記マルチキャストメッセージを伝送しないことを特徴とする請求項１６に記載のデータ送／受信方法。
【請求項２１】
サーバーアドレスのみでメッセージルーティングを処理する内部ルータが、サービスサーバーからマルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、
前記内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、
前記内部ルータから前記マルチキャストメッセージを受信した接続管理サーバーが、前記マルチキャストアドレスに相応するクライアントアドレスリスト内のクライアントアドレスに前記マルチキャストメッセージを伝送する段階と、を含むことを特徴とするデータ送／受信方法。
【請求項２２】
前記データ送／受信方法では、前記接続管理サーバーに接続されたクライアント端末と前記サービスサーバーとの間で接続生成メッセージが正常に往復すれば、前記クライアント端末と前記サービスサーバーとの間に仮想接続(virtual connnection)を設定することを特徴とする請求項１６又は２１に記載のデータ送／受信方法。
【請求項２３】
前記接続管理サーバーに接続されたクライアント端末は、前記接続管理サーバーの以外にも一つ以上の補助接続管理サーバーに同時に接続され、
前記接続管理サーバーを介する接続において異常が発生する場合、前記接続管理サーバーは、新しいクライアント端末の接続要求を拒否し、前記接続管理サーバーに接続されたクライアント端末は、前記補助接続管理サーバーを介してメッセージを伝送することを特徴とする請求項１６又は２１に記載のデータ送／受信方法。
【請求項２４】
請求項１６乃至２１のいずれかに記載の方法を行うためのプログラムが記録されていることを特徴とする請求項１６乃至２１のいずれかに記載のコンピューター読取可能記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークシステム及びこれを用いたデータ送／受信方法に係り、 特に、複数の目的地に伝送されるマルチキャストメッセージ送／受信のためのマルチキャスト通信ネットワークシステム及びこれを用いたデータ送／受信方法に関する。
【背景技術】
【０００２】
一般に、ネットワークゲームサービスを提供するゲームサービスシステムは、フロントエンドサーバー(Front End Server)を介してクライアント端末と接続される。
【０００３】
図１は、従来の技術によるゲームサービスシステムのクライアントとサーバーとの間の接続を示す図である。
【０００４】
図１を参照すると、サーバー群のフロントエンドサーバー１２１，１２２，１２３は、メッセージルータ１３０を介して互いに接続されて相互にデータを交換する。フロントエンドサーバー１２１，１２２，１２３はゲームサーバーであっても良いし、メッセージルータ１３０を介してログインサーバー、ランキングサーバー、データベースサーバーなどと接続することができる。
【０００５】
クライアント端末１１１，１１２，１１３は、それぞれ所望のサービスを提供するフロントエンドサーバー１２１，１２２，１２３にインターネットなどのネットワークを介して直接接続され、フロントエンドサーバー１２１，１２２，１２３は、それぞれクライアント端末との接続を管理する。
【０００６】
図１に示す従来の技術において、クライアント端末１１１，１１２，１１３は、フロントエンドサーバー１２１，１２２，１２３に接続するためにフロントエンドサーバー１２１，１２２，１２３のＩＰアドレスを把握している必要がある。よって、フロントエンドサーバー１２１，１２２，１２３のＩＰアドレスは、クライアント群に露出し、悪意的なユーザーによってパケット分析による情報流出やハッキングなどによる被害を被る恐れがある。また、クライアント端末は、サービスの提供を受けようとするそれぞれのサーバーと別途に接続を設定しなければならないので、接続管理が複雑で且つ煩わしいという不具合があった。すなわち、クライアント端末１１１，１１２，１１３の それぞれが、フロントエンドサーバー１２１，１２２，１２３が提供するサービスをいずれも利用するためには、図１に示すように、それぞれ全フロントエンドサーバー１２１，１２２，１２３と接続を設定しなければならないので、クライアント側からみると、接続設定が煩雑であり、サーバー側からみると、接続管理が複雑であらざるを得なかった。
【０００７】
また、図１に示すシステムは、クライアント端末とサーバーとの間で暗号化された通信を行う場合、全フロントエンドサーバー１２１，１２２，１２３に暗号化と関連したモジュールを追加する必要があり、クライアントとの接続管理プログラムのエラー修正や更新の際に、全フロントエンドサーバー１２１，１２２，１２３に対して修正や更新を行わなければならないという煩雑さがあった。
【０００８】
ネットワークゲームサービスの多様化及びグローバル化に伴い、フロントエンドサーバーの種類及び数が増加しつつあることから、かかる問題は一層重要な課題となっている。
【０００９】
のみならず、図１に示すシステムは、マルチキャストメッセージを伝送する場合、マルチキャストアドレスごとに前記マルチキャストアドレスに含まれるクライアント端末のフルアドレス（full address）をいずれも保存しておく必要があるので、大きな保存空間を必要とし、さらに管理が不便であるという問題点があった。
【００１０】
したがって、クライアント端末とサービスサーバーとの間の接続を単純化し、クライアントとサービスサーバーとの間の接続を効果的に管理し、且つ、マルチキャストアドレスに含まれるネットワークアドレスを保存するための保存空間を分散させてマルチキャストメッセージを効率的に管理することができる新しいマルチキャスト通信ネットワークシステム及びデータ送／受信方法の必要性が切望されている。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
本発明は、かかる従来の問題点を解決するために案出されたもので、クライアント端末とサービスサーバーとの間の接続を単純化し、効果的に管理し得るマルチキャスト通信ネットワークシステム及びデータ送／受信方法を提供することを目的とする。
【００１２】
また、本発明は、クライアント側の外部ネットワークとサーバー側の内部ネットワークとを分離し、内部ネットワークではサーバーアドレスのみを利用してメッセージルーティングを処理することでメッセージルーティングを効果的に処理することを目的とする。
【００１３】
また、本発明は、既存にサービスサーバーの役割であるクライアントとの接続管理を接続管理サーバーをして処理させることにより、機能に応じて適切にコンポーネント化されたマルチキャスト通信ネットワークシステムを構築することを目的とする。
【００１４】
また、本発明は、サービスサーバーに対するセキュリティー(保安)を効果的に強化し、セキュリティーイシューが発生する場合に迅速で効果的に対応できるマルチキャスト通信ネットワークシステム及びデータ送／受信方法を提供することを目的とする。
【００１５】
また、本発明は、サーバーアドレスとクライアントアドレスとを分離し、特定マルチキャストアドレスに加入したクライアント端末のクライアントアドレスは接続管理サーバーに保存し、内部ルータには接続管理サーバーのサーバーアドレスのみを保存する分散型システムを構築することにより、マルチキャストメッセージ送／受信及び管理を効率的に行うことを目的とする。
【００１６】
また、本発明は、内部ネットワーク内におけるメッセージ伝送回数を減らしてマルチキャストメッセージを効率的に伝送することを目的とする。
【課題を解決するための手段】
【００１７】
上記目的を達成して従来の技術の問題点を解決するために、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムは、対応するサーバーアドレスを有するサービスサーバーと、対応する自分のサーバーアドレスを有し、接続されたクライアント端末のうちマルチキャストアドレスに加入したクライアント端末のクライアントアドレスをクライアントアドレスリストに保存する接続管理サーバーと、前記クライアントアドレスとは関係なく前記サーバーアドレスのみを利用してメッセージルーティングを処理し、前記マルチキャストアドレスに加入したクライアント端末と接続された接続管理サーバーのサーバーアドレスをサーバーアドレスリストに保存する内部ルータと、を含むことを特徴とする。
【００１８】
このとき、接続管理サーバーは、前記接続されたクライアント端末に、前記自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを割り当てることができる。
【００１９】
このとき、内部ルータは、前記マルチキャストアドレスに伝送されたマルチキャストメッセージが受信されると、サーバーアドレスリストに含まれたサーバーアドレスにマルチキャストメッセージを伝送することができる。
【００２０】
このとき、接続管理サーバーは、マルチキャストメッセージが受信されると、マルチキャストメッセージをクライアントアドレスリストに含まれたクライアントアドレスに伝送し、前記マルチキャストメッセージが接続されたクライアント端末から受信された場合、内部ルータに前記マルチキャストメッセージを伝送することができる。この際、内部ルータは、前記接続管理サーバーのサーバーアドレスを除いたサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送することができる。
【００２１】
このとき、マルチキャスト通信ネットワークシステムでは、前記内部ルータが前記接続管理サーバーをサービスサーバーと対等に認識することができる。すなわち、内部ルータは、サーバーアドレスのみを利用してメッセージルーティングを処理するので、接続管理サーバーを１つのサービスサーバーと認識し、それぞれのクライアント端末ではなく、接続管理サーバーを対象としてメッセージルーティングを行い、接続管理サーバーはそれぞれのクライアント端末に対するルーティングを行うことができる。この際、内部ルータとサービスサーバー及び接続管理サーバーは内部ネットワークを構成し、クライアント端末と接続管理サーバーは一種のサーブネットワークを構成する。
【００２２】
また、本発明の他の実施の形態によるデータ送／受信方法は、クライアント端末から受信されたアドレス割り当て要請に応答し、接続管理サーバーが自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを生成し、それを前記クライアント端末に割り当てる段階と、前記接続管理サーバーが前記クライアント端末からマルチキャストアドレスへの加入要請を受け、前記マルチキャストアドレスに相応するクライアントアドレスリストに前記クライアント端末のクライアントアドレスを登録する段階と、内部ルータが前記マルチキャストアドレスに相応するサーバーアドレスリストに前記接続管理サーバーのサーバーアドレスを登録する段階と、を含むことを特徴とする。
【００２３】
このとき、ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドを含み、前記内部ネットワークの内部ルータは、前記クライアントアドレスフィールドをマスク(masking)してメッセージルーティングを処理することができる。この際、前記接続管理サーバーは、前記クライアントアドレスフィールドを利用してクライアント端末を識別することができる。
【００２４】
このとき、マルチキャストアドレスは、前記サーバーアドレスフィールドに記録されても、前記クライアントアドレスフィールドに記録されても良い。接続管理サーバーは、前記クライアントアドレスフィールドにマルチキャストアドレスが記録されたマルチキャストメッセージを受信すると、前記クライアントアドレスリストに含まれたクライアントアドレスに前記マルチキャストメッセージを伝送し、前記内部ルータに前記マルチキャストメッセージを伝送しないことができる。
【００２５】
また、本発明のまた他の実施の形態によるデータ送／受信方法は、サーバーアドレスのみでメッセージルーティングを処理する内部ルータが、サービスサーバーからマルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、前記内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、前記内部ルータから前記マルチキャストメッセージを受信した接続管理サーバーが、前記マルチキャストアドレスに相応するクライアントアドレスリスト内のクライアントアドレスに前記マルチキャストメッセージを伝送する段階と、を含むことを特徴とする。
【発明の効果】
【００２６】
本発明のマルチキャスト通信ネットワークシステム及びデータ送／受信方法は、クライアント端末との接続を別途の接続管理サーバーが専担することにより、クライアント端末とサービスサーバーとの間の接続を単純化し、接続管理サーバーがクライアント端末との接続を管理し、内部ルータは内部ネットワーク内の接続管理のみを行うことにより、通信ネットワークシステムを効果的に管理することができる。
【００２７】
また、本発明は、クライアント側の外部ネットワークとサーバー側の内部ネットワークとを分離し、内部ネットワークではサーバーアドレスのみを利用してメッセージルーティングを処理することでメッセージルーティングを効果的に処理することができる。
【００２８】
さらに、本発明は、既存にサービスサーバーの役割であるクライアントとの接続管理を接続管理サーバーをして処理させることにより、機能に応じて適切にコンポーネント化されたマルチキャスト通信ネットワークシステムを構築することができる。
【００２９】
しかも、本発明は、クライアント端末がサービスサーバーと直接ＴＣＰ／ＩＰ接続を設定せずに接続管理サーバーとＴＣＰ／ＩＰ接続を設定することから、クライアント端末に対して、サービスサーバーのＩＰアドレスを露出させなく、サーバーアドレスフィールド及びクライアントアドレスフィールドを含む本発明のネットワークアドレスのみを露出させることにより、サービスサーバーに対するセキュリティーを効果的に強化し、セキュリティーイシューが発生する場合にも、サービスサーバーを修正することなく接続管理サーバーを修正すれば済むので、迅速で効果的な対応が可能である。
【００３０】
なお、本発明は、サーバーアドレスとクライアントアドレスとを分離し、特定マルチキャストアドレスに加入したクライアント端末のクライアントアドレスは接続管理サーバーに保存し、内部ルータには接続管理サーバーのサーバーアドレスのみを保存する分散型システムを構築することにより、マルチキャストメッセージ送／受信及び管理を効率的に行うことができる。
【００３１】
また、本発明は、マルチキャストメッセージを伝送するとき、内部ネットワーク内におけるメッセージ伝送回数を減らすことができる。
【発明を実施するための最良の形態】
【００３２】
以下、本発明による好適な実施の形態を添付図を参照して詳細に説明する。
【００３３】
図２は、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。
【００３４】
図２を参照すると、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムは、クライアント端末２１１，２１２，２１３、接続管理サーバー２２０、内部ルータ２３０及びサービスサーバー２４１，２４２，２４３を含む。
【００３５】
それぞれのサービスサーバー２４１，２４２，２４３は、それぞれ対応するサーバーアドレスを有する。例えば、図２に示すように、サービスサーバー２４１のサーバーアドレスは“Ａ００１ＸＸＸ７”であり、サービスサーバー２４２のサーバーアドレスは“Ａ００１ＸＸＸ８”であり、サービスサーバー２４３のサーバーアドレスは“Ａ００１ＸＸＸ９”でありうる。
【００３６】
サービスサーバー２４１，２４２，２４３はゲームサーバーでありうる。サービスサーバー２４１，２４２，２４３は、いずれも同じゲームサービスを提供するゲームサーバーであっても良いし、それぞれ互いに異なるゲームサービスを提供するゲームサーバーであっても良い。例えば、サービスサーバー２４１，２４２，２４３は、いずれも“ゴーストップ”ゲームサーバーであっても良いし、それぞれ“ゴーストップ（花札のゲームの一つ）”ゲームサーバー、“あなたはゴルフ王”ゲームサーバー及び“ゴンスト”ゲームサーバーであっても良い。
【００３７】
クライアント端末２１１，２１２，２１３は、インターネットなどのネットワークを介してサービスサーバー２４１，２４２，２４３に接続してオンラインサービスサーバー２４１，２４２，２４３が提供するサービスを提供される。このとき、クライアント端末２１１，２１２，２１３は、いずれも接続管理サーバー２２０を介してのみサービスサーバー２４１，２４２，２４３に接続することができ、直接サービスサーバー２４１，２４２，２４３に接続することはできない。
【００３８】
接続管理サーバー(Connection Management Server；ＣＭＳ)２２０は、クライアント端末２１１，２１２，２１３とのＴＣＰ／ＩＰ接続を設定する。クライアント端末２１１，２１２，２１３は、直接サービスサーバー２４１，２４２，２４３とのＴＣＰ／ＩＰ接続を設定しないことから、本発明の通信ネットワークシステムは、クライアント側へのサービスサーバー２４１，２４２，２４３のＩＰアドレスの露出を防止し、外部のハッキング脅威からサービスサーバー２４１，２４２，２４３を保護することができる。
【００３９】
接続管理サーバー２２０は、対応する自分のサーバーアドレスを有する。例えば、図２に示すように、接続管理サーバー２２０のサーバーアドレスは“Ｃ００１ＸＸＸ１”でありうる。
【００４０】
内部ルータ２３０は、サーバーアドレスを利用して接続管理サーバー２２０及びサービスサーバー２４１，２４２，２４３間のメッセージルーティングを処理する。このとき、内部ルータ２３０は、複数のブローカー(broker)がフルメッシュ(full mesh)型で相互に接続されたものでありうる。内部ルータ２３０についての詳細は、２００４年１２月１７日に出願された韓国出願第２００４-１０７４９６号公報に詳細に開示されている。
【００４１】
内部ルータ２３０側では、接続管理サーバー２２０を一種のサービスサーバーと認識し、サービスサーバー２４１，２４２，２４３と対等に認識することができる。このとき、内部ルータ２３０、接続管理サーバー２２０及びサービスサーバー２４１，２４２，２４３は、サーバーアドレスのみでアドレスされる内部ネットワークを構成する。
【００４２】
このとき、接続管理サーバー２２０及びサービスサーバー２４１，２４２，２４３は、それぞれサーバーアドレスによって唯一に識別される。
【００４３】
接続管理サーバー２２０は、アドレス割り当てを要請したクライアント端末に、自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを割り当てる。すなわち、ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドで構成され得る。上述したように、接続管理サーバー２２０のサーバーアドレスが“Ｃ００１ＸＸＸ１”であれば、接続管理サーバー２２０にアドレス割り当てを要請したクライアント端末２１１，２１２，２１３にはそれぞれ“Ｃ００１ＸＸＸ１００１”、“Ｃ００１ＸＸＸ１００２”、“Ｃ００１ＸＸＸ１００３”がネットワークアドレスとして割り当てられ得る。この際、“Ｃ００１ＸＸＸ１００１”におけるＣ００１ＸＸＸ１”は、接続管理サーバー２２０のサーバーアドレスであるサーバーアドレスフィールドに該当し、“００１”は、クライアント端末２１１に割り当てされたクライアントアドレスフィールドに該当する。また、“Ｃ００１ＸＸＸ１００２”における“Ｃ００１ＸＸＸ１”は、接続管理サーバー２２０のサーバーアドレスであるサーバーアドレスフィールドに該当し、“００２”は、クライアント端末２１２に割り当てされたクライアントアドレスフィールドに該当する。同様に、“Ｃ００１ＸＸＸ１００３”における“Ｃ００１ＸＸＸ１”は、接続管理サーバー２２０のサーバーアドレスであるサーバーアドレスフィールドに該当し、“００３”は、クライアント端末２１３に割り当てされたクライアントアドレスフィールドに該当する。
【００４４】
接続管理サーバー２２０は、クライアント端末２１１，２１２，２１３とサービスサーバー２４１，２４２，２４３との間のユニキャストメッセージの発信アドレス及び目的地アドレスを変更せずにメッセージをそのまま伝達する。
【００４５】
このように、接続管理サーバー２２０がアドレス変換なしにユニキャストメッセージを単純にパス転送(path forwarding)することにより、接続管理サーバー２２０のオーバーヘッド(overhead)を減らすことができ、これにより一台の接続管理サーバー２２０が管理可能なクライアント端末の数を増やすことができる。
【００４６】
図３は、本発明の図２に示すマルチキャスト通信ネットワークシステムに用いられるネットワークアドレスの一例を示す図である。
【００４７】
図３を参照すると、図２に示すマルチキャスト通信ネットワークシステムに用いられるネットワークアドレスは、キャスト型識別フィールド３１０、ＩＤＣ識別フィールド３２０、サーバーアドレスフィールド３３０、クライアントアドレスフィールド３４０及び拡張フィールド３５０を含み、１２８ビット（１６バイト）で構成できる。
【００４８】
キャストタイプ識別フィールド３１０は、特定サービスを識別するためにユニキャスト(unicast)、エニキャスト(anycast)、マルチキャスト(multicast)の３種のアドレス類型を示すことができる。
【００４９】
ＩＤＣ識別フィールド３２０は、ＩＤＣを識別するためのＩＤＣ識別子が記録されるフィールドである。例えば、ＩＤＣ識別子は韓国が“１”、日本が“２”及び“３”、中国が“４”，“５”，“６”及び“７”でありうる。
【００５０】
サーバーアドレスフィールド３３０は、サーバーアドレスが記録されるフィールドである。例えば、図２に示すように、クライアント端末２１１及び接続管理サーバー２２０を指すためにサーバーアドレスフィールド３３０に“Ｃ００１ＸＸＸ１”が記録され、サービスサーバー２４１を指すためにサーバーアドレスフィールド３３０に“Ａ００１ＸＸＸ７”が記録され得る。
【００５１】
クライアントアドレスフィールド３４０は、クライアントアドレスが記録されるフィールドである。例えば、図２に示すように、クライアント端末２１１を指すためにクライアントアドレスフィールド３４０に“００１”が記録され、クライアント端末２１２を指すためにクライアントアドレスフィールド３４０に”００２”が記録され得る。
【００５２】
クライアントアドレスフィールド３４０は、内部ネットワーク内の接続管理サーバー２２０やサービスサーバー２４１，２４２，２４３を示す場合は、ドント・ケア(don't care)処理される。すなわち、内部ネットワークでは、クライアントアドレスフィールド３４０に記録されるアドレスとは関係なくサーバーアドレスフィールド３３０のみを利用してメッセージルーティングを行う。
【００５３】
拡張フィールド３５０は、必要な場合に備えて残しておいたデータ空間である。
【００５４】
本発明のマルチキャスト通信ネットワークシステムは、接続管理サーバーを介してデータを送／受信するために発信アドレス及び目的地アドレスを指称するとき、ＩＰアドレスではなく図３に示すようなネットワークアドレス体系を用いる。
【００５５】
以下、再び図２を参照して本発明の一実施の形態によるマルチキャスト通信ネットワークシステムのユニキャストメッセージ伝送時の動作を詳しく説明する。
【００５６】
クライアント端末２１１，２１２，２１３は、接続管理サーバー２２０のＩＰアドレスにＴＣＰ／ＩＰ接続してアドレス割り当てを要請する。
【００５７】
接続管理サーバー２２０は、クライアント端末２１１，２１２，２１３のアドレス割り当て要請に応答し、クライアント端末２１１，２１２，２１３のそれぞれに、自分のサーバーアドレスＣ００１ＸＸＸ１に所定のクライアントアドレス００１，００２，００３を結合したネットワークアドレスＣ００１ＸＸＸ１００１，Ｃ００１ＸＸＸ１００２，Ｃ００１ＸＸＸ１００３を割り当てる。
【００５８】
クライアント端末２１２は、自分のネットワークアドレスＣ００１ＸＸＸ１００２を発信アドレスとし、目的地アドレスのサーバーアドレスフィールドをサービスサーバー２４２のサーバーアドレスＡ００１ＸＸＸ８としてユニキャストメッセージを伝送することができる。このとき、目的地アドレスのクライアントアドレスフィールドには、所定のアドレスを記録しても、何も記録しなくても良い。
【００５９】
接続管理サーバー２２０は、クライアント端末２１２からユニキャストメッセージを受信すると、ユニキャストメッセージの発信アドレスＣ００１ＸＸＸ１００２及び目的地アドレスを変更せずにそのまま内部ネットワークの内部ルータ２３０に伝達する。
【００６０】
内部ルータ２３０は、伝達されたユニキャストメッセージの目的地アドレスのサーバーアドレスフィールドＡ００１ＸＸＸ８を利用して該当サービスサーバー２４２にユニキャストメッセージが伝達するようにメッセージルーティングを処理する。このとき、内部ルータ２３０は、目的地アドレスのクライアントアドレスフィールドをマスク(masking)してクライアントアドレスフィールドとは関係なくメッセージルーティングを処理することができる。
【００６１】
サービスサーバー２４２は、伝送されたユニキャストメッセージを処理し、クライアント端末２１２のネットワークアドレスＣ００１ＸＸＸ１００２を目的地アドレスとし、発信アドレスのサーバーアドレスフィールドを自分のサーバーアドレスＡ００１ＸＸＸ８としてユニキャストメッセージを伝送する。この際、発信アドレスのクライアントアドレスフィールドには、所定のアドレスを記録しても、何も記録しなくても良い。
【００６２】
内部ルータ２３０は、伝送されたユニキャストメッセージのクライアントアドレスフィールド００２とは関係なくサーバーアドレスフィールドＣ００１ＸＸＸ１のみを利用してメッセージルーティングを処理し、ユニキャストメッセージを接続管理サーバー２２０に伝送する。よって、内部ルータ２３０のルーティングテーブルにはサーバーアドレスフィールドのための空間のみが割り当てられれば良い。すなわち、内部ルータ２３０のルーティングテーブルには、“Ａ００１ＸＸＸ７”、“Ａ００１ＸＸＸ８”、“Ａ００１ＸＸＸ９”及び“Ｃ００１ＸＸＸ１”とこれらに対応するルーティング情報が保存される。このとき、ルーティング情報は、ソケットＩＤなどの接続(connection)情報を含むことができる。この際、接続情報は、アプリケーション上の一つの接続ごとに唯一値を有しても良いし、接続が切れてから再び接続されるなどの接続変更によってその値が変わることもできる。
【００６３】
内部ルータ２３０により、目的地アドレスのクライアントアドレスフィールド００２とは関係なくサーバーアドレスフィールドＣ００１ＸＸＸ１のみを利用してルーティングされたユニキャストメッセージは、サーバーアドレスフィールドＣ００１ＸＸＸ１に該当するサーバーアドレスを有する接続管理サーバー２２０に伝達される。
【００６４】
接続管理サーバー２２０は、内部ネットワークから受信されたユニキャストメッセージの目的地アドレスＣ００１ＸＸＸ１００２に含まれたクライアントアドレス００２を利用して、ユニキャストメッセージを伝送するクライアント端末を識別し、目的地アドレスＣ００１ＸＸＸ１００２及び発信アドレスを変更せずにユニキャストメッセージをそのまま識別されたクライアント端末に伝送する。このとき、接続管理サーバー２２０のルーティングテーブルには、クライアントアドレスフィールドのための空間のみが割り当てられれば良い。すなわち、接続管理サーバー２２０のルーティングテーブルには、“００１”、“００２”及び“００３”とこれに対応するルーティング情報が保存される。このとき、ルーティング情報は、ソケットＩＤなどの接続(connection)情報を含むことができる。このとき、接続情報は、アプリケーション上の一つの接続(Connection)ごとに唯一値を有しても良いし、接続が切れてから再接続するなどの接続変更によってその値が変わっても良い。特に、接続管理サーバー２２０は、クライアント端末２１１，２１２，２１３からの接続を管理するので、接続管理サーバー２２０のルーティングテーブルにクライアント端末２１１，２１２，２１３からの接続についてのソケットＩＤなどの接続情報が保存される。よって、クライアント端末２１１，２１２，２１３からの接続変更に対する処理は、接続管理サーバー２２０がいずれも処理でき、内部ネットワークはクライアント端末の接続変更に対する処理を行う必要がない。
【００６５】
図２に示す通信ネットワークシステムはクライアント端末と接続管理サーバーとの間の接続を保持したままサービスサーバー間の移動が可能である。例えば、クライアント端末２１１が接続管理サーバー２２０を介してサービスサーバー２４２に接続されている場合、クライアント端末２１１と接続管理サーバー２２０との接続をそのまま保持した状態で、接続管理サーバー２２０をサービスサーバー２４２の代りにサービスサーバー２４３に接続させることができる。このように、クライアント端末と接続管理サーバーとの間の接続を保持したままサービスサーバーを変更し得ることから、接続している特定サービスサーバーとの接続を切った後、他のサービスサーバーに新たに接続して接続及び認証手続きを繰り返さなければならないという煩わしさを解消することができる。
【００６６】
通信ネットワークシステムは実施の形態に基づいて、クライアント端末２１１，２１２，２１３と接続管理サーバー２２０との間にＬ４スィッチを備えてロードバランシング(load balancing)を行うこともできる。
【００６７】
図２に示す実施の形態においては、説明の便宜のために、通信ネットワークシステムに接続管理サーバーが一つある場合を一例として説明したが、通信ネットワークシステム内に接続管理サーバーが多数具備されても良い。例えば、通信ネットワークシステム内にクライアント端末約２万台当たり１台程度の接続管理サーバーが具備されても良い。
【００６８】
図４は、本発明の他の実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。
【００６９】
図４を参照すると、マルチキャスト通信ネットワークシステムは、クライアント端末４１１〜４１６、接続管理サーバー４２１，４２２、内部ルータ４３０及びサービスサーバー４４０を含む。
【００７０】
図４に示すように、マルチキャストアドレスＭ００１に対してクライアント端末４１１，４１３，４１５が加入されていると仮定する。
【００７１】
図４に示すクライアント端末４１１〜４１６、接続管理サーバー４２１，４２２、内部ルータ４３０及びサービスサーバー４４０に対して、図２で説明したユニキャストメッセージの伝送時の動作に関する内容がそのまま適用できる。
【００７２】
接続管理サーバー４２１，４２２及びサービスサーバー４４０は、それぞれ対応するサーバーアドレスＣ００１ＸＸＸ１，Ｃ００１ＸＸＸ２，Ａ００１ＸＸＸ７を有する。
【００７３】
接続管理サーバー４２１は、接続されたクライアント端末４１１，４１２，４１３に、それぞれ自分のサーバーアドレスＣ００１ＸＸＸ１に所定のクライアントアドレス００１，００２，００３を結合したネットワークアドレスＣ００１ＸＸＸ１００１，Ｃ００１ＸＸＸ１００２，Ｃ００１ＸＸＸ１００３を割り当て、クライアント端末４１１，４１２，４１３のうちマルチキャストアドレスＭ００１に加入したクライアント端末４１１，４１３のクライアントアドレス００１，００３をクライアントアドレスリストに保存する。
【００７４】
接続管理サーバー４２２は、接続されたクライアント端末４１４，４１５，４１６に、それぞれ自分のサーバーアドレスＣ００１ＸＸＸ２に所定のクライアントアドレス００１，００２，００３を結合したネットワークアドレスＣ００１ＸＸＸ２００１，Ｃ００１ＸＸＸ２００２，Ｃ００１ＸＸＸ２００３を割り当て、クライアント端末４１４，４１５，４１６のうちマルチキャストアドレスＭ００１に加入したクライアント端末４１５のクライアントアドレス００２をクライアントアドレスリストに保存する。
【００７５】
内部ルータ４３０は、クライアントアドレスとは関係なくサーバーアドレスのみを利用してメッセージルーティングを処理し、マルチキャストアドレスＭ００１に加入したクライアント端末４１１，４１３，４１５と接続された接続管理サーバー４２１，４２２のサーバーアドレスＣ００１ＸＸＸ１，Ｃ００１ＸＸＸ２をサーバーアドレスリストに保存する。
【００７６】
下記表１ないし表３は、それぞれの接続管理サーバー４２１のクライアントアドレスリストと、接続管理サーバー４２２のクライアントアドレスリストと、内部ルータ４３０のサーバーアドレスリストとを示す。
【００７７】
【表１】
0004452271.tif 000002
【００７８】
【表２】
0004452271.tif 000003
【００７９】
【表３】
0004452271.tif 000004
【００８０】
このように、内部ルータは、マルチキャストアドレスに加入した接続管理サーバーのサーバーアドレスのみを保存し、接続管理サーバーごとに接続されたクライアント端末のうちマルチキャストアドレスに加入したクライアント端末のクライアントアドレスを保存することにより、保存空間を効率的に分散させることができ、内部ネットワークにおけるメッセージ伝送回数を減らしてマルチキャストメッセージを経済的に伝送することができる。
【００８１】
例えば、サービスサーバー４４０はゲームサーバーでありうる。このとき、ゲームサーバーにはゲームサーバーに接続したユーザー、ユーザーが集まったルーム、ルームが集まったチャンネルに対する情報がありうる。このとき、チャンネル、ルーム、ユーザーは、階層構造を有するクラスに相応するものであっても良いし、特定チャンネル、ルーム、ユーザーは、該当するチャンネルクラス、ルームクラス及びユーザークラスのインスタンス(instance)であっても良い。このとき、それぞれのインスタンスは所定の特徴情報を有することができる。例えば、ルームインスタンスは、上手、中手または下手のレベル情報を有することができる。よって、ゴーストップ１というルームに相応するルームインスタンスのレベル情報は下手であり、ゴーストップ２というルームに相応するルームインスタンスのレベル情報は中手であり、ゴーストップ３というルームに相応するルームインスタンスのレベル情報は上手でありうる。
【００８２】
例えば、ユーザーＡが新たにゲームサーバーであるサービスサーバー４４０に接続すると、サービスサーバー４４０は、ユーザーＡに相応するユーザーインスタンスを生成する。このとき、サービスサーバー４４０のチャンネルＣにルームＢがあり、これにより、サービスサーバー４４０にはチャンネルＣ及びルームＢに相応するチャンネルインスタンス及びルームインスタンスが存在すると仮定する。この場合、ユーザーＡかルームＢに入ると、ルームＢに相応するインスタンスにはユーザーＡについての情報がアップデート(更新)される。その後、ユーザーＡかルームＢから出ると、ルームＢに相応するインスタンスからユーザーＡについての情報が削除される。同様に、ユーザーＡがチャンネルＣに入るか、チャンネルＣから出る場合にも、チャンネルＣに相応するインスタンスにユーザーＡについての情報がアップデート(更新)されるか削除される。
【００８３】
サービスサーバー４４０のそれぞれのチャンネルやルームは、対応するマルチキャストアドレスを有することができる。例えば、チャンネルＣに対応するマルチキャストアドレスは“ＭＣ００１”であり、チャンネルＣに属するルームＢに対応するマルチキャストアドレスは“ＭＣ００１R００１”でありうる。
【００８４】
サービスサーバー４４０は、マルチキャストアドレスに加入したクライアント端末またはマルチキャストアドレスに加入したクライアント端末が接続された接続管理サーバーに関する情報を保存し、必要に応じて保存された情報をクライアント端末に提供することができる。以下、サービスサーバー４４０からマルチキャストメッセージが伝送される場合について詳しく説明する。
【００８５】
例えば、サービスサーバー４４０はゴーストップゲームサーバーであり、マルチキャストアドレスＭ００１は３人のプレーヤーが一緒にゴーストップゲームをしているルームに相応するものでありうる。すなわち、一緒にゴーストップゲームをしている３人のプレーヤーに該当するクライアント端末は、いずれもマルチキャストアドレスＭ００１に加入し、ゴーストップゲームサービスサーバーは、マルチキャストアドレスＭ００１にマルチキャストメッセージを伝送することにより、ゲーム状況に関するメッセージを簡単に特定ゲームが進行中のルーム内のすべてのプレーヤーに伝送することができる。
【００８６】
サービスサーバー４４０がマルチキャストアドレスＭ００１にマルチキャストメッセージを伝送し、内部ルータ４３０がマルチキャストメッセージを受信する。
【００８７】
このとき、マルチキャストアドレスＭ００１は、図３で説明したネットワークアドレスのサーバーアドレスフィールドに記録されうる。
【００８８】
内部ルータ４３０は、マルチキャストアドレスＭ００１に相応するサーバーアドレスリスト表３に含まれたサーバーアドレスＣ００１ＸＸＸ１，Ｃ００１ＸＸＸ２に、受信されたマルチキャストメッセージを伝送する。
【００８９】
接続管理サーバー４２１は、対応するサーバーアドレスが“Ｃ００１ＸＸＸ１”であるため、内部ルータ４３０からマルチキャストメッセージを伝送される。マルチキャストメッセージを伝送されると、接続管理サーバー４２１は、マルチキャストアドレスＭ００１に相応するクライアントアドレスリスト（表１）に含まれたクライアントアドレス００１，００３に、受信されたマルチキャストメッセージを伝送する。
【００９０】
接続管理サーバー４２２は、対応するサーバーアドレスが“Ｃ００１ＸＸＸ２”であるため、内部ルータ４３０からマルチキャストメッセージを伝送される。マルチキャストメッセージを伝送されると、接続管理サーバー４２２は、マルチキャストアドレスＭ００１に相応するクライアントアドレスリスト（表２）に含まれたクライアントアドレスＭ００２に、受信されたマルチキャストメッセージを伝送する。
【００９１】
したがって、サービスサーバー４４０から伝送されたマルチキャストメッセージが、マルチキャストアドレスに加入したすべてのクライアント端末４１１，４１３，４１５に伝送される。
【００９２】
以下、クライアント端末４１５からマルチキャストメッセージが伝送される場合について詳述する。
【００９３】
例えば、マルチキャストアドレスＭ００１は、３人のプレーヤーが一緒にゴーストップゲームをしているルームに相応するものでありうる。すなわち、一緒にゴーストップゲームをしている３人のプレーヤーに該当するクライアント端末は、いずれもマルチキャストアドレスＭ００１に加入し、マルチキャストアドレスＭ００１に加入したクライアント端末のそれぞれは、マルチキャストアドレスＭ００１にマルチキャストメッセージを伝送することにより、ゲームをしているプレーヤーに簡単にメッセージを伝送することができる。
【００９４】
クライアント端末４１５がマルチキャストアドレスＭ００１にマルチキャストメッセージを伝送し、接続管理サーバー４２２がマルチキャストメッセージを受信する。
【００９５】
このとき、マルチキャストアドレスＭ００１は、図３で説明したネットワークアドレスのサーバーアドレスフィールドに記録され得る。
【００９６】
接続管理サーバー４２２は、マルチキャストアドレスＭ００１に相応するクライアントアドレスリスト（表２）に含まれたクライアントアドレス００２及び内部ルータ４３０に受信されたマルチキャストメッセージを伝送する。このとき、接続管理サーバー４２２にマルチキャストメッセージを伝送したクライアントアドレス００２には、マルチキャストメッセージを伝送しなくても良い。
【００９７】
内部ルータ４３０は、伝送されたマルチキャストメッセージを受信し、マルチキャストアドレスＭ００１に相応するサーバーアドレスリスト（表３）に含まれたサーバーアドレスＣ００１ＸＸＸ１，Ｃ００１ＸＸＸ２に、受信されたマルチキャストメッセージを伝送する。このとき、マルチキャストメッセージを伝送したサーバーアドレスＣ００１ＸＸＸ２には、マルチキャストメッセージを伝送しなくても良い。
【００９８】
接続管理サーバー４２１は、対応するサーバーアドレスが“Ｃ００１ＸＸＸ１”であるため、内部ルータ４３０からマルチキャストメッセージを伝送される。マルチキャストメッセージを伝送されると、接続管理サーバー４２１は、マルチキャストアドレスＭ００１に相応するクライアントアドレスリスト（表１）に含まれたクライアントアドレス００１，００３に、受信されたマルチキャストメッセージを伝送する。
【００９９】
したがって、クライアント端末４１５から伝送されたマルチキャストメッセージが、マルチキャストアドレスに加入した他のクライアント端末４１１，４１３に伝送される。
【０１００】
以下、クライアント端末４１３からクライアントアドレスフィールドを用いたマルチキャストメッセージが伝送される場合について詳細に説明する。
【０１０１】
クライアント端末４１３がマルチキャストアドレスＭ００１にマルチキャストメッセージを伝送し、接続管理サーバー４２１がマルチキャストメッセージを受信する。このとき、マルチキャストアドレスＭ００１は、図３で説明したネットワークアドレスのクライアントアドレスフィールドに記録される。
【０１０２】
接続管理サーバー４２１は、マルチキャストアドレスＭ００１に相応するクライアントアドレスリスト（表１）に含まれたクライアントアドレス００１，００３に、受信されたマルチキャストメッセージを伝送する。このとき、接続管理サーバー４２１にマルチキャストメッセージを伝送したクライアントアドレス００３には、マルチキャストメッセージを伝送しなくても良い。
【０１０３】
また、接続管理サーバー４２１は、クライアントアドレスフィールドにマルチキャストメッセージのクライアントアドレスフィールドにマルチキャストアドレスが記録されているので、マルチキャストメッセージを内部ルータ４３０に伝送しない。すなわち、接続管理サーバー４２１は、クライアントアドレスフィールドにマルチキャストアドレスが記録されている場合、接続管理サーバー４２１でマルチキャストメッセージ送／受信を処理し、それを内部ネットワークに伝達しない。
【０１０４】
したがって、クライアント端末４１３から伝送されたマルチキャストメッセージが、マルチキャストアドレスに加入した他のクライアント端末４１１にのみ伝送される。
【０１０５】
以下、クライアント端末４１６がさらにマルチキャストアドレスＭ００１に加入する場合について詳述する。
【０１０６】
クライアント端末４１６は、マルチキャストアドレスＭ００１に加入するために接続管理サーバー４２２に対して、マルチキャストアドレス加入を要請する。このとき、マルチキャストアドレス加入要請は一種のコントロールメッセージである。接続管理サーバー４２１，４２２及び内部ルータ４３０は、通常メッセージの内容を解釈せずにルーティングのみを行うが、コントロールメッセージは解釈する。
【０１０７】
接続管理サーバー４２３は、マルチキャストアドレス加入要請に応答し、マルチキャストアドレスＭ００１に相応するクライアントアドレスリストにクライアント端末４１６のクライアントアドレス００３を登録する。
【０１０８】
接続管理サーバー４２３は、クライアントアドレスリストに新しいクライアントアドレスが登録される場合、それをコントロールメッセージを介して内部ルータ４３０に通知することができる。このとき、内部ルータ４３０は、新しいクライアントアドレス登録を通知した接続管理サーバーのサーバーアドレスが当該マルチキャストアドレスに加入されているか否かを確認し、未加入であれば、新しいクライアントアドレス登録を通知した接続管理サーバーのサーバーアドレスを、サーバーアドレスリストに登録する。図４に示すように、接続管理サーバー４２２のサーバーアドレスＣ００１ＸＸＸ２は、既に内部ルータ４３０のサーバーアドレスリストに含まれているので、接続管理サーバー４２２のサーバーアドレスＣ００１ＸＸＸ２をさらに登録する必要はない。
【０１０９】
実施の形態に基づいて、クライアント端末４１６がマルチキャストアドレスＭ００１に加入しようとする場合、コントロールメッセージではない一般メッセージをサービスサーバー４４０に伝送することもできる。
【０１１０】
このとき、接続管理サーバー４２２及び内部ルータ４３０は、クライアント端末４１６が伝送したメッセージを解釈せずにサービスサーバー４４０にルーティングする。
【０１１１】
サービスサーバー４４０は、クライアント端末４１６から受信されたメッセージを解釈し、マルチキャストアドレスＭ００１に加入しようとすることが確認されると、接続管理サーバー４２２にコントロールメッセージを伝送し、接続管理サーバー４２２をして、マルチキャストアドレスＭ００１に相応するクライアントアドレスリストにクライアント端末４１６のクライアントアドレス００３を登録させる。また、サービスサーバー４４０は、必要に応じて内部ルータ４３０にコントロールメッセージを伝送し、新たに追加された接続管理サーバーのサーバーアドレスをサーバーアドレスリストに登録させることもできる。
【０１１２】
図４に示す実施の形態において、クライアント端末４１１，４１２，４１３及び接続管理サーバー４２１間の通信及び、クライアント端末４１４，４１５，４１６及び接続管理サーバー４２２間の通信は、暗号化されたセキュリティー通信でありうる。
【０１１３】
また、図４に示すマルチキャスト通信ネットワークシステムは、クライアント端末４１１，４１２，４１３，４１４，４１５，４１６のうちいずれか一つとサービスサーバー４４０との間で接続生成メッセージ(conection create message)が正常に往復すれば、当該クライアント端末と当該サービスサーバーとの間に仮想接続(virtual connection)を設定することができる。
【０１１４】
このとき、マルチキャスト通信ネットワークシステムは、前記仮想接続が設定されたクライアント端末とサービスサーバーとの間で接続終了メッセージ(connection terminate message)が正常に往復すれば、前記仮想接続を終了させることができる。
【０１１５】
このとき、マルチキャスト通信ネットワークシステムは、前記仮想接続が設定されたクライアント端末と当該接続管理サーバー間のＴＣＰ／ＩＰ接続が終了すれば、前記仮想接続をも終了させることができる。
【０１１６】
図５Ａ及び図５Ｂは、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムの耐障害性(fault tolerance)を示すブロック図である。
【０１１７】
図５Ａ及び図５Ｂを参照すると、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムは、クライアント端末５１０が接続管理サーバー５２１の以外にも補助接続管理サーバー５２２に同時に接続される。このとき、クライアント端末５１０と接続管理サーバー５２１及び補助接続管理サーバー５２２間の接続は、ＴＣＰ／ＩＰ接続でありうる。
【０１１８】
このとき、接続管理サーバー５２１と補助接続管理サーバー５２２を実質的に同じ構成にしても良いし、実施の形態に応じて補助接続管理サーバー５２２を二つ以上備えても良い。
【０１１９】
図５Ａを参照すると、接続管理サーバー５２１が正常に動作する場合、接続管理サーバー５２１はアクティブ(active)状態であり、補助接続管理サーバー５２２はスタンバイ(stand by)状態である。このとき、クライアント端末５１０とサービスサーバー５４０との間のメッセージ伝送は、接続管理サーバー５２１及び内部ルータ５３０によって行われる。接続管理サーバー５２１及び内部ルータ５３０の動作についての説明は、図２及び図４で説明したとおりである。
【０１２０】
図５Ｂを参照すると、接続管理サーバー５２１を介するクライアント端末５１０とサービスサーバー５４０間の接続において異常が発生する場合、補助接続管理サーバー５２２がアクティブ状態になる。例えば、接続管理サーバー５２１とクライアント端末５１０と間の接続において異常が発生するか、接続管理サーバー５２１と内部ルータ５３０間の接続において異常が発生する場合、補助接続管理サーバー５２２がアクティブ状態となって、接続管理サーバー５２１の代わりにクライアント端末５１０とサービスサーバー５４０間の接続を保持させることができる。このとき、接続管理サーバー５２１は、内部ルータ５３０との接続をさらに試み、成功すればスタンバイ状態になる。
【０１２１】
補助接続管理サーバー５２２がアクティブ状態になると、クライアント端末５１０とサービスサーバー５４０間のメッセージ伝送は、補助接続管理サーバー５２２及び内部ルータ５３０によって行われる。このとき、接続管理サーバー５２１は、新しいクライアント端末からの接続要求を拒否する。補助接続管理サーバー５２２にも、図２及び図４に示す接続管理サーバーの動作に関する説明がその通りに適用できる。
【０１２２】
補助接続管理サーバー５２２がアクティブ状態となって、クライアント端末５１１が補助接続管理サーバー５２２を介してメッセージを伝送する場合、クライアント端末５１１からサービスサーバー５４０に伝送されるメッセージの発信アドレスのサーバーアドレスフィールドに、補助接続管理サーバー５２２のサーバーアドレスを記録してメッセージを伝送しても良い。
【０１２３】
図６は、図２及び図４に示す接続管理サーバーの一例を示すブロック図である。
【０１２４】
図６を参照すると、接続管理サーバーは、イントラネットワーク部６１０、ディスパッチャー６２０、ルータ６３０及びインタネットワーク部６４０を含む。
【０１２５】
イントラネットワーク部６１０は、クライアント端末との接続を管理する役目を担う。すなわち、イントラネットワーク部６１０は、クライアント端末からの接続要請に対して待機させるか、接続要請を受諾することができる。また、イントラネットワーク部６１０は、クライアント端末から接続管理サーバーに伝送されるメッセージの送／受信を管理することができる。また、イントラネットワーク部６１０は、接続管理サーバーとクライアント端末との間のメッセージ暗号化及び復呼化を行うことができる。
【０１２６】
ディスパッチャー(Dispatcher)６２０は、イントラネットワーク部６１０やインタネットワーク部６４０から受信されたメッセージを解釈し、解釈結果に基づいて接続管理サーバーをして必要な動作を行わせる。このとき、ディスパッチャー６２０は、メッセージ全体を解釈することなく、メッセージのヘッダー部分のみを見て当該メッセージの処理方法を決定することが可能である。ただし、コントロールメッセージの場合にはディスパッチャー６２０によって解釈できる。
【０１２７】
例えば、ディスパッチャー６２０は、イントラネットワーク部６１０から受信されたメッセージがサービスサーバーに伝送される必要があると判断した場合、受信されたメッセージをルータ６３０を介して適切な目的地サービスサーバーに伝送させることができる。
【０１２８】
例えば、ディスパッチャー６２０は、イントラネットワーク部６１０から受信されたメッセージが接続管理サーバーに接続された他のクライアント端末に伝送される必要があると判断した場合、当該クライアント端末のアドレスを検出してメッセージを伝送させることができる。
【０１２９】
例えば、ディスパッチャー６２０は、インタネットワーク部６４０から受信されたメッセージがクライアント端末に伝送される必要があると判断した場合、受信されたメッセージに含まれた目的地アドレスのクライアントフィールドを利用してメッセージを伝送するクライアント端末を識別し、ルータ６３０を介して識別されたクライアント端末にメッセージを伝送させることもできる。
【０１３０】
例えば、ディスパッチャー６２０は、インタネットワーク部６４０から受信されたメッセージがマルチキャストメッセージである場合、前記マルチキャストメッセージのマルチキャストアドレスに相応するクライアントアドレスリストに含まれたクライアントアドレスに、前記マルチキャストメッセージを伝送させることができる。
【０１３１】
例えば、ディスパッチャー６２０は、イントラネットワーク部６４０から受信されたメッセージがマルチキャストメッセージである場合、前記マルチキャストメッセージのマルチキャストアドレスに相応するクライアントアドレスリストに含まれたクライアントアドレスに、前記マルチキャストメッセージを伝送し、前記マルチキャストメッセージを接続管理サーバーで処理するか内部ネットワークに伝達するかの可否を判断することができる。このとき、マルチキャストメッセージを接続管理サーバーで処理するか内部ネットワークに伝達するかの可否は、マルチキャストアドレスがネットワークアドレスのクライアントアドレスフィールドに記録されているか否かによって判断することもできる。例えば、ディスパッチャー６２０は、サーバーアドレスフィールドにマルチキャストアドレスが記録されている場合には、マルチキャストメッセージを内部ネットワークに伝達し、クライアントアドレスフィールドにマルチキャストアドレスが記録されている場合には、マルチキャストメッセージを接続管理サーバーで処理し、内部ネットワークに伝達しないようにすることができる。
【０１３２】
ルータ６３０は、イントラネットワーク部６１０やインタネットワーク部６４０から受信されたメッセージを適切な目的地(destination address)にルーティングする。
【０１３３】
インタネットワーク部６４０は、内部ネットワークの内部ルータとのメッセージ送／受信を担当する。すなわち、インタネットワーク部６４０は、内部ルータとのインターフェースを担当し、内部ルータ側をして接続管理サーバーを一種のサービスサーバーとして認識させる。
【０１３４】
図７は、本発明の一実施の形態によるデータ送／受信方法の動作フローチャートである。
【０１３５】
図７を参照すると、本発明の一実施の形態によるデータ送／受信方法では、クライアント端末から受信されたアドレス割り当て要請に応答し、接続管理サーバーが自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを生成し、それを前記クライアント端末に割り当てる（Ｓ７１０）。
【０１３６】
例えば、接続管理サーバーのサーバーアドレスが“Ｃ００１ＸＸＸ１”である場合、本発明の接続管理サーバーは、“Ｃ００１ＸＸＸ１００１”をクライアント端末のネットワークアドレスに割り当てることができる。このとき、ネットワークアドレス“Ｃ００１ＸＸＸ１００１”における“Ｃ００１ＸＸＸ１”は、サーバーアドレスフィールドに該当し、“００１”はクライアントアドレスフィールドに該当する。
【０１３７】
また、データ送／受信方法では、前記接続管理サーバーが前記クライアント端末からマルチキャストアドレスへの加入要請を受け、前記マルチキャストアドレスに相応するクライアントアドレスリストに前記クライアント端末のクライアントアドレスを登録する（Ｓ７２０）。
【０１３８】
例えば、クライアント端末”Ｃ００１ＸＸＸ１００３”がマルチキャストアドレス“Ｍ００１”に加入を要請すると、サーバーアドレスが“Ｃ００１ＸＸＸ１”である接続管理サーバーは、マルチキャストアドレス“Ｍ００１”に対するクライアントアドレスリストに“００３”を登録する。
【０１３９】
また、データ送／受信方法では、内部ルータが前記マルチキャストアドレスに相応するサーバーアドレスリストに前記接続管理サーバーのサーバーアドレスを登録する（Ｓ７３０）。
【０１４０】
例えば、サーバーアドレスが”Ｃ００１ＸＸＸ１”である接続管理サーバーに接続されたクライアント端末”Ｃ００１ＸＸＸ１００３”が、マルチキャストアドレス“Ｍ００１”に加入を要請した場合、内部ルータは、マルチキャストアドレス“Ｍ００１”に対するサーバーアドレスリストに“Ｃ００１ＸＸＸ１”を登録する。
【０１４１】
このとき、図７に示すデータ送／受信方法は、接続管理サーバーが前記クライアント端末から前記マルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、前記接続管理サーバーが、前記クライアントアドレスリスト内のクライアントアドレス及び前記内部ルータに前記マルチキャストメッセージを伝送する段階と、前記内部ルータが、前記接続管理サーバーのサーバーアドレスを除いた前記サーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、をさらに含んでも良い。
【０１４２】
図８は、本発明の他の実施の形態によるデータ送／受信方法の動作フローチャートである。
【０１４３】
図８を参照すると、本発明の一実施の形態によるデータ送／受信方法では、サーバーアドレスのみでメッセージルーティングを処理する内部ルータが、サービスサーバーからマルチキャストアドレスに送信されたマルチキャストメッセージを受信する（Ｓ８１０）。
【０１４４】
また、データ送／受信方法では、内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する（Ｓ８２０）。
【０１４５】
また、データ送／受信方法では、内部ルータから前記マルチキャストメッセージを受信した接続管理サーバーが、前記マルチキャストアドレスに相応するクライアントアドレスリスト内のクライアントアドレスに前記マルチキャストメッセージを伝送する（Ｓ８３０）。
【０１４６】
図７及び図８で説明した方法と関連して説明しない内容は、上記の通信ネットワークシステムによる実施の形態にそのとおりに適用できるので、以下省略する。
【０１４７】
本発明によるデータ送／受信方法は、各種コンピューター手段を介して行われるプログラム命令形態で具現されてコンピューター読取可能媒体に記録され得る。前記コンピューター読取可能媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。前記媒体に記録されるプログラム命令は、本発明のために特別に設計構成されたものであっても良いし、コンピューターソフトウェア当業者に公知されて使用可能なものであっても良い。コンピューター読取可能記録媒体の例としては、ハードディスク、プロッピィーディスク及び磁気テープなどの磁気媒体(magnetic media)、ＣＤ−ＲＯＭ、ＤＶＤなどの光記録媒体(optical media)、フロプティカルディスク(floptical disk)などの光磁気媒体(magneto-optical media)、及びＲＯＭ、ＲＡＭ、フラッシュメモリーなどのプログラム命令を保存し遂行するように特別に構成されたハードウェア装置が挙げられる。前記媒体は、プログラム命令、データ構造などを指定する信号を伝送する搬送波を含む光または金属線、導波管などの伝送媒体であっても良い。プログラム命令の例としては、コンパイラによって作われる同じ機械語コードはもとより、インタプリターなどを用いてコンピューターによって実行可能な高級言語コードが挙げられる。上記のハードウェア装置は、本発明の動作を行うために一つ以上のソフトウェアモジュールとして作動するように構成でき、その逆も同様である。
【０１４８】
図９は、本発明によるデータ送／受信方法に採用される汎用コンピューター装置の内部ブロック図である。
【０１４９】
コンピューター装置９００は、ＲＡＭ(Random Access Memory)９２０とＲＯＭ(Read Only Memory)９３０を含む主記憶装置と接続される一つ以上のプロセッサ９１０を含む。プロセッサ９１０は、中央処理装置ＣＰＵとも言われる。本技術分野で広く知られているように、ＲＯＭ９３０は、データと命令(instruction)を単一方向にＣＰＵに伝送する役目をし、ＲＡＭ９２０は、通常データと命令を両方向に伝送する役目をする。ＲＡＭ９２０及びＲＯＭ９３０は、コンピューター読取可能媒体のいかなる適切な形態を含むことができる。大容量記憶装置(Mass Storage)９４０は、両方向でプロセッサ９１０と接続されて追加的なデータ保存能力を提供し、上記のコンピューター読取可能記録媒体のいずれかでありうる。大容量記憶装置９４０は、プログラム、データなどの保存に使用され、通常主記憶装置よりも遅い速度を有するハードディスクのような補助記憶装置である。ＣＤ−ＲＯＭ９６０などの特定大容量記憶装置を採用しても良い。プロセッサ９１０は、ビデオモニター、トラックボール、マウス、キーボード、マイクロホン、タッチスクリーン型ディスプレイ、カード読取機、磁気または紙テープ読取機、音声または筆記認識機、ジョイ・スティック、またはその他公知されているコンピューター入出力装置などのうちいずれか１種以上の入出力インターフェース９５０と接続される。さらに、プロセッサ９１０は、ネットワークインターフェース９７０を介して有線または無線通信ネットワークに接続できる。このようなネットワーク接続を介して上述した方法の手続きを行うことができる。上述した装置及び道具はコンピューターハードウェア及びソフトウェア技術分野の当業者にとってはよく知られているものである。一方、上述したハードウェア装置は、本発明の動作を行うために一つ以上のソフトウェアモジュールとして作動するように構成できる。
【０１５０】
以上、本発明を好適な実施の形態及び図面を挙げて説明したが、本発明はこの実施の形態に限定されるのではなく、本発明が属する技術分野における当業者にとって各種の修正及び変形が可能である。
【０１５１】
したがって、本発明の範囲は、この実施例により全く制限されないということは明らかであり、よって、本発明の実質的な範囲は、特許請求の範囲とその等価物により定義さるべきであろう。
【図面の簡単な説明】
【０１５２】
【図１】従来の技術によるゲームサービスシステムのクライアントとサーバーとの間の接続を示す図である。
【図２】本発明の一実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。
【図３】本発明の図２に示すマルチキャスト通信ネットワークシステムに用いられるネットワークアドレスの一例を示す図である。
【図４】本発明の他の実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。
【図５】図５Ａ及び図５Ｂは、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムの障害許容性(fault tolerance)を示すブロック図である。
【図６】図２及び図４に示す接続管理サーバーの一例を示すブロック図である。
【図７】本発明の一実施の形態によるデータ送／受信方法の動作フローチャートである。
【図８】本発明の他の実施の形態によるデータ送／受信方法の動作フローチャートである。
【図９】本発明によるデータ送／受信方法に採用される汎用コンピューター装置の内部ブロック図である。
【符号の説明】
【０１５３】
４１１〜４１６    クライアント端末
４２１、４２２    接続管理サーバー
４３０    内部ルータ
４４０    サービスサーバー
【図１】
0004452271.tif 000005
【図２】
0004452271.tif 000006
【図３】
0004452271.tif 000007
【図４】
0004452271.tif 000008
【図５】
0004452271.tif 000009
【図６】
0004452271.tif 000010
【図７】
0004452271.tif 000011
【図８】
0004452271.tif 000012
【図９】
0004452271.tif 000013