JP2007166634A - マルチキャスト通信ネットワークシステム及びこれを用いたデータ送/受信方法 - Google Patents

マルチキャスト通信ネットワークシステム及びこれを用いたデータ送/受信方法 Download PDF

Info

Publication number
JP2007166634A
JP2007166634A JP2006338253A JP2006338253A JP2007166634A JP 2007166634 A JP2007166634 A JP 2007166634A JP 2006338253 A JP2006338253 A JP 2006338253A JP 2006338253 A JP2006338253 A JP 2006338253A JP 2007166634 A JP2007166634 A JP 2007166634A
Authority
JP
Japan
Prior art keywords
address
multicast
server
connection management
client
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.)
Granted
Application number
JP2006338253A
Other languages
English (en)
Other versions
JP4452271B2 (ja
Inventor
Seong Ho Choi
成好 崔
Nanshoku Kin
南植 金
Kyoung Wook Cheon
京旭 千
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.)
NHN Corp
Original Assignee
NHN 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 NHN Corp filed Critical NHN Corp
Publication of JP2007166634A publication Critical patent/JP2007166634A/ja
Application granted granted Critical
Publication of JP4452271B2 publication Critical patent/JP4452271B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/48Message addressing, e.g. address format or anonymous messages, aliases

Abstract

【課題】複数の目的地に伝送されるマルチキャストメッセージ送/受信のためのマルチキャスト通信ネットワークシステム及びこれを用いたデータ送/受信方法を提供する。
【解決手段】本発明の一実施の形態によるマルチキャスト通信ネットワークシステムは、対応するサーバーアドレスを有するサービスサーバーと、対応する自分のサーバーアドレスを有し、接続されたクライアント端末のうちマルチキャストアドレスに加入したクライアント端末のクライアントアドレスをクライアントアドレスリストに保存する接続管理サーバーと、前記クライアントアドレスとは関係なく前記サーバーアドレスのみを利用してメッセージルーティングを処理し、前記マルチキャストアドレスに加入したクライアント端末と接続された接続管理サーバーのサーバーアドレスをサーバーアドレスリストに保存する内部ルータと、を含む。
【選択図】図4

Description

本発明は、通信ネットワークシステム及びこれを用いたデータ送/受信方法に係り、 特に、複数の目的地に伝送されるマルチキャストメッセージ送/受信のためのマルチキャスト通信ネットワークシステム及びこれを用いたデータ送/受信方法に関する。
一般に、ネットワークゲームサービスを提供するゲームサービスシステムは、フロントエンドサーバー(Front End Server)を介してクライアント端末と接続される。
図1は、従来の技術によるゲームサービスシステムのクライアントとサーバーとの間の接続を示す図である。
図1を参照すると、サーバー群のフロントエンドサーバー121,122,123は、メッセージルータ130を介して互いに接続されて相互にデータを交換する。フロントエンドサーバー121,122,123はゲームサーバーであっても良いし、メッセージルータ130を介してログインサーバー、ランキングサーバー、データベースサーバーなどと接続することができる。
クライアント端末111,112,113は、それぞれ所望のサービスを提供するフロントエンドサーバー121,122,123にインターネットなどのネットワークを介して直接接続され、フロントエンドサーバー121,122,123は、それぞれクライアント端末との接続を管理する。
図1に示す従来の技術において、クライアント端末111,112,113は、フロントエンドサーバー121,122,123に接続するためにフロントエンドサーバー121,122,123のIPアドレスを把握している必要がある。よって、フロントエンドサーバー121,122,123のIPアドレスは、クライアント群に露出し、悪意的なユーザーによってパケット分析による情報流出やハッキングなどによる被害を被る恐れがある。また、クライアント端末は、サービスの提供を受けようとするそれぞれのサーバーと別途に接続を設定しなければならないので、接続管理が複雑で且つ煩わしいという不具合があった。すなわち、クライアント端末111,112,113の それぞれが、フロントエンドサーバー121,122,123が提供するサービスをいずれも利用するためには、図1に示すように、それぞれ全フロントエンドサーバー121,122,123と接続を設定しなければならないので、クライアント側からみると、接続設定が煩雑であり、サーバー側からみると、接続管理が複雑であらざるを得なかった。
また、図1に示すシステムは、クライアント端末とサーバーとの間で暗号化された通信を行う場合、全フロントエンドサーバー121,122,123に暗号化と関連したモジュールを追加する必要があり、クライアントとの接続管理プログラムのエラー修正や更新の際に、全フロントエンドサーバー121,122,123に対して修正や更新を行わなければならないという煩雑さがあった。
ネットワークゲームサービスの多様化及びグローバル化に伴い、フロントエンドサーバーの種類及び数が増加しつつあることから、かかる問題は一層重要な課題となっている。
のみならず、図1に示すシステムは、マルチキャストメッセージを伝送する場合、マルチキャストアドレスごとに前記マルチキャストアドレスに含まれるクライアント端末のフルアドレス(full address)をいずれも保存しておく必要があるので、大きな保存空間を必要とし、さらに管理が不便であるという問題点があった。
したがって、クライアント端末とサービスサーバーとの間の接続を単純化し、クライアントとサービスサーバーとの間の接続を効果的に管理し、且つ、マルチキャストアドレスに含まれるネットワークアドレスを保存するための保存空間を分散させてマルチキャストメッセージを効率的に管理することができる新しいマルチキャスト通信ネットワークシステム及びデータ送/受信方法の必要性が切望されている。
本発明は、かかる従来の問題点を解決するために案出されたもので、クライアント端末とサービスサーバーとの間の接続を単純化し、効果的に管理し得るマルチキャスト通信ネットワークシステム及びデータ送/受信方法を提供することを目的とする。
また、本発明は、クライアント側の外部ネットワークとサーバー側の内部ネットワークとを分離し、内部ネットワークではサーバーアドレスのみを利用してメッセージルーティングを処理することでメッセージルーティングを効果的に処理することを目的とする。
また、本発明は、既存にサービスサーバーの役割であるクライアントとの接続管理を接続管理サーバーをして処理させることにより、機能に応じて適切にコンポーネント化されたマルチキャスト通信ネットワークシステムを構築することを目的とする。
また、本発明は、サービスサーバーに対するセキュリティー(保安)を効果的に強化し、セキュリティーイシューが発生する場合に迅速で効果的に対応できるマルチキャスト通信ネットワークシステム及びデータ送/受信方法を提供することを目的とする。
また、本発明は、サーバーアドレスとクライアントアドレスとを分離し、特定マルチキャストアドレスに加入したクライアント端末のクライアントアドレスは接続管理サーバーに保存し、内部ルータには接続管理サーバーのサーバーアドレスのみを保存する分散型システムを構築することにより、マルチキャストメッセージ送/受信及び管理を効率的に行うことを目的とする。
また、本発明は、内部ネットワーク内におけるメッセージ伝送回数を減らしてマルチキャストメッセージを効率的に伝送することを目的とする。
上記目的を達成して従来の技術の問題点を解決するために、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムは、対応するサーバーアドレスを有するサービスサーバーと、対応する自分のサーバーアドレスを有し、接続されたクライアント端末のうちマルチキャストアドレスに加入したクライアント端末のクライアントアドレスをクライアントアドレスリストに保存する接続管理サーバーと、前記クライアントアドレスとは関係なく前記サーバーアドレスのみを利用してメッセージルーティングを処理し、前記マルチキャストアドレスに加入したクライアント端末と接続された接続管理サーバーのサーバーアドレスをサーバーアドレスリストに保存する内部ルータと、を含むことを特徴とする。
このとき、接続管理サーバーは、前記接続されたクライアント端末に、前記自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを割り当てることができる。
このとき、内部ルータは、前記マルチキャストアドレスに伝送されたマルチキャストメッセージが受信されると、サーバーアドレスリストに含まれたサーバーアドレスにマルチキャストメッセージを伝送することができる。
このとき、接続管理サーバーは、マルチキャストメッセージが受信されると、マルチキャストメッセージをクライアントアドレスリストに含まれたクライアントアドレスに伝送し、前記マルチキャストメッセージが接続されたクライアント端末から受信された場合、内部ルータに前記マルチキャストメッセージを伝送することができる。この際、内部ルータは、前記接続管理サーバーのサーバーアドレスを除いたサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送することができる。
このとき、マルチキャスト通信ネットワークシステムでは、前記内部ルータが前記接続管理サーバーをサービスサーバーと対等に認識することができる。すなわち、内部ルータは、サーバーアドレスのみを利用してメッセージルーティングを処理するので、接続管理サーバーを1つのサービスサーバーと認識し、それぞれのクライアント端末ではなく、接続管理サーバーを対象としてメッセージルーティングを行い、接続管理サーバーはそれぞれのクライアント端末に対するルーティングを行うことができる。この際、内部ルータとサービスサーバー及び接続管理サーバーは内部ネットワークを構成し、クライアント端末と接続管理サーバーは一種のサーブネットワークを構成する。
また、本発明の他の実施の形態によるデータ送/受信方法は、クライアント端末から受信されたアドレス割り当て要請に応答し、接続管理サーバーが自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを生成し、それを前記クライアント端末に割り当てる段階と、前記接続管理サーバーが前記クライアント端末からマルチキャストアドレスへの加入要請を受け、前記マルチキャストアドレスに相応するクライアントアドレスリストに前記クライアント端末のクライアントアドレスを登録する段階と、内部ルータが前記マルチキャストアドレスに相応するサーバーアドレスリストに前記接続管理サーバーのサーバーアドレスを登録する段階と、を含むことを特徴とする。
このとき、ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドを含み、前記内部ネットワークの内部ルータは、前記クライアントアドレスフィールドをマスク(masking)してメッセージルーティングを処理することができる。この際、前記接続管理サーバーは、前記クライアントアドレスフィールドを利用してクライアント端末を識別することができる。
このとき、マルチキャストアドレスは、前記サーバーアドレスフィールドに記録されても、前記クライアントアドレスフィールドに記録されても良い。接続管理サーバーは、前記クライアントアドレスフィールドにマルチキャストアドレスが記録されたマルチキャストメッセージを受信すると、前記クライアントアドレスリストに含まれたクライアントアドレスに前記マルチキャストメッセージを伝送し、前記内部ルータに前記マルチキャストメッセージを伝送しないことができる。
また、本発明のまた他の実施の形態によるデータ送/受信方法は、サーバーアドレスのみでメッセージルーティングを処理する内部ルータが、サービスサーバーからマルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、前記内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、前記内部ルータから前記マルチキャストメッセージを受信した接続管理サーバーが、前記マルチキャストアドレスに相応するクライアントアドレスリスト内のクライアントアドレスに前記マルチキャストメッセージを伝送する段階と、を含むことを特徴とする。
本発明のマルチキャスト通信ネットワークシステム及びデータ送/受信方法は、クライアント端末との接続を別途の接続管理サーバーが専担することにより、クライアント端末とサービスサーバーとの間の接続を単純化し、接続管理サーバーがクライアント端末との接続を管理し、内部ルータは内部ネットワーク内の接続管理のみを行うことにより、通信ネットワークシステムを効果的に管理することができる。
また、本発明は、クライアント側の外部ネットワークとサーバー側の内部ネットワークとを分離し、内部ネットワークではサーバーアドレスのみを利用してメッセージルーティングを処理することでメッセージルーティングを効果的に処理することができる。
さらに、本発明は、既存にサービスサーバーの役割であるクライアントとの接続管理を接続管理サーバーをして処理させることにより、機能に応じて適切にコンポーネント化されたマルチキャスト通信ネットワークシステムを構築することができる。
しかも、本発明は、クライアント端末がサービスサーバーと直接TCP/IP接続を設定せずに接続管理サーバーとTCP/IP接続を設定することから、クライアント端末に対して、サービスサーバーのIPアドレスを露出させなく、サーバーアドレスフィールド及びクライアントアドレスフィールドを含む本発明のネットワークアドレスのみを露出させることにより、サービスサーバーに対するセキュリティーを効果的に強化し、セキュリティーイシューが発生する場合にも、サービスサーバーを修正することなく接続管理サーバーを修正すれば済むので、迅速で効果的な対応が可能である。
なお、本発明は、サーバーアドレスとクライアントアドレスとを分離し、特定マルチキャストアドレスに加入したクライアント端末のクライアントアドレスは接続管理サーバーに保存し、内部ルータには接続管理サーバーのサーバーアドレスのみを保存する分散型システムを構築することにより、マルチキャストメッセージ送/受信及び管理を効率的に行うことができる。
また、本発明は、マルチキャストメッセージを伝送するとき、内部ネットワーク内におけるメッセージ伝送回数を減らすことができる。
以下、本発明による好適な実施の形態を添付図を参照して詳細に説明する。
図2は、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。
図2を参照すると、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムは、クライアント端末211,212,213、接続管理サーバー220、内部ルータ230及びサービスサーバー241,242,243を含む。
それぞれのサービスサーバー241,242,243は、それぞれ対応するサーバーアドレスを有する。例えば、図2に示すように、サービスサーバー241のサーバーアドレスは“A001XXX7”であり、サービスサーバー242のサーバーアドレスは“A001XXX8”であり、サービスサーバー243のサーバーアドレスは“A001XXX9”でありうる。
サービスサーバー241,242,243はゲームサーバーでありうる。サービスサーバー241,242,243は、いずれも同じゲームサービスを提供するゲームサーバーであっても良いし、それぞれ互いに異なるゲームサービスを提供するゲームサーバーであっても良い。例えば、サービスサーバー241,242,243は、いずれも“ゴーストップ”ゲームサーバーであっても良いし、それぞれ“ゴーストップ(花札のゲームの一つ)”ゲームサーバー、“あなたはゴルフ王”ゲームサーバー及び“ゴンスト”ゲームサーバーであっても良い。
クライアント端末211,212,213は、インターネットなどのネットワークを介してサービスサーバー241,242,243に接続してオンラインサービスサーバー241,242,243が提供するサービスを提供される。このとき、クライアント端末211,212,213は、いずれも接続管理サーバー220を介してのみサービスサーバー241,242,243に接続することができ、直接サービスサーバー241,242,243に接続することはできない。
接続管理サーバー(Connection Management Server;CMS)220は、クライアント端末211,212,213とのTCP/IP接続を設定する。クライアント端末211,212,213は、直接サービスサーバー241,242,243とのTCP/IP接続を設定しないことから、本発明の通信ネットワークシステムは、クライアント側へのサービスサーバー241,242,243のIPアドレスの露出を防止し、外部のハッキング脅威からサービスサーバー241,242,243を保護することができる。
接続管理サーバー220は、対応する自分のサーバーアドレスを有する。例えば、図2に示すように、接続管理サーバー220のサーバーアドレスは“C001XXX1”でありうる。
内部ルータ230は、サーバーアドレスを利用して接続管理サーバー220及びサービスサーバー241,242,243間のメッセージルーティングを処理する。このとき、内部ルータ230は、複数のブローカー(broker)がフルメッシュ(full mesh)型で相互に接続されたものでありうる。内部ルータ230についての詳細は、2004年12月17日に出願された韓国出願第2004-107496号公報に詳細に開示されている。
内部ルータ230側では、接続管理サーバー220を一種のサービスサーバーと認識し、サービスサーバー241,242,243と対等に認識することができる。このとき、内部ルータ230、接続管理サーバー220及びサービスサーバー241,242,243は、サーバーアドレスのみでアドレスされる内部ネットワークを構成する。
このとき、接続管理サーバー220及びサービスサーバー241,242,243は、それぞれサーバーアドレスによって唯一に識別される。
接続管理サーバー220は、アドレス割り当てを要請したクライアント端末に、自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを割り当てる。すなわち、ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドで構成され得る。上述したように、接続管理サーバー220のサーバーアドレスが“C001XXX1”であれば、接続管理サーバー220にアドレス割り当てを要請したクライアント端末211,212,213にはそれぞれ“C001XXX1001”、“C001XXX1002”、“C001XXX1003”がネットワークアドレスとして割り当てられ得る。この際、“C001XXX1001”におけるC001XXX1”は、接続管理サーバー220のサーバーアドレスであるサーバーアドレスフィールドに該当し、“001”は、クライアント端末211に割り当てされたクライアントアドレスフィールドに該当する。また、“C001XXX1002”における“C001XXX1”は、接続管理サーバー220のサーバーアドレスであるサーバーアドレスフィールドに該当し、“002”は、クライアント端末212に割り当てされたクライアントアドレスフィールドに該当する。同様に、“C001XXX1003”における“C001XXX1”は、接続管理サーバー220のサーバーアドレスであるサーバーアドレスフィールドに該当し、“003”は、クライアント端末213に割り当てされたクライアントアドレスフィールドに該当する。
接続管理サーバー220は、クライアント端末211,212,213とサービスサーバー241,242,243との間のユニキャストメッセージの発信アドレス及び目的地アドレスを変更せずにメッセージをそのまま伝達する。
このように、接続管理サーバー220がアドレス変換なしにユニキャストメッセージを単純にパス転送(path forwarding)することにより、接続管理サーバー220のオーバーヘッド(overhead)を減らすことができ、これにより一台の接続管理サーバー220が管理可能なクライアント端末の数を増やすことができる。
図3は、本発明の図2に示すマルチキャスト通信ネットワークシステムに用いられるネットワークアドレスの一例を示す図である。
図3を参照すると、図2に示すマルチキャスト通信ネットワークシステムに用いられるネットワークアドレスは、キャスト型識別フィールド310、IDC識別フィールド320、サーバーアドレスフィールド330、クライアントアドレスフィールド340及び拡張フィールド350を含み、128ビット(16バイト)で構成できる。
キャストタイプ識別フィールド310は、特定サービスを識別するためにユニキャスト(unicast)、エニキャスト(anycast)、マルチキャスト(multicast)の3種のアドレス類型を示すことができる。
IDC識別フィールド320は、IDCを識別するためのIDC識別子が記録されるフィールドである。例えば、IDC識別子は韓国が“1”、日本が“2”及び“3”、中国が“4”,“5”,“6”及び“7”でありうる。
サーバーアドレスフィールド330は、サーバーアドレスが記録されるフィールドである。例えば、図2に示すように、クライアント端末211及び接続管理サーバー220を指すためにサーバーアドレスフィールド330に“C001XXX1”が記録され、サービスサーバー241を指すためにサーバーアドレスフィールド330に“A001XXX7”が記録され得る。
クライアントアドレスフィールド340は、クライアントアドレスが記録されるフィールドである。例えば、図2に示すように、クライアント端末211を指すためにクライアントアドレスフィールド340に“001”が記録され、クライアント端末212を指すためにクライアントアドレスフィールド340に”002”が記録され得る。
クライアントアドレスフィールド340は、内部ネットワーク内の接続管理サーバー220やサービスサーバー241,242,243を示す場合は、ドント・ケア(don't care)処理される。すなわち、内部ネットワークでは、クライアントアドレスフィールド340に記録されるアドレスとは関係なくサーバーアドレスフィールド330のみを利用してメッセージルーティングを行う。
拡張フィールド350は、必要な場合に備えて残しておいたデータ空間である。
本発明のマルチキャスト通信ネットワークシステムは、接続管理サーバーを介してデータを送/受信するために発信アドレス及び目的地アドレスを指称するとき、IPアドレスではなく図3に示すようなネットワークアドレス体系を用いる。
以下、再び図2を参照して本発明の一実施の形態によるマルチキャスト通信ネットワークシステムのユニキャストメッセージ伝送時の動作を詳しく説明する。
クライアント端末211,212,213は、接続管理サーバー220のIPアドレスにTCP/IP接続してアドレス割り当てを要請する。
接続管理サーバー220は、クライアント端末211,212,213のアドレス割り当て要請に応答し、クライアント端末211,212,213のそれぞれに、自分のサーバーアドレスC001XXX1に所定のクライアントアドレス001,002,003を結合したネットワークアドレスC001XXX1001,C001XXX1002,C001XXX1003を割り当てる。
クライアント端末212は、自分のネットワークアドレスC001XXX1002を発信アドレスとし、目的地アドレスのサーバーアドレスフィールドをサービスサーバー242のサーバーアドレスA001XXX8としてユニキャストメッセージを伝送することができる。このとき、目的地アドレスのクライアントアドレスフィールドには、所定のアドレスを記録しても、何も記録しなくても良い。
接続管理サーバー220は、クライアント端末212からユニキャストメッセージを受信すると、ユニキャストメッセージの発信アドレスC001XXX1002及び目的地アドレスを変更せずにそのまま内部ネットワークの内部ルータ230に伝達する。
内部ルータ230は、伝達されたユニキャストメッセージの目的地アドレスのサーバーアドレスフィールドA001XXX8を利用して該当サービスサーバー242にユニキャストメッセージが伝達するようにメッセージルーティングを処理する。このとき、内部ルータ230は、目的地アドレスのクライアントアドレスフィールドをマスク(masking)してクライアントアドレスフィールドとは関係なくメッセージルーティングを処理することができる。
サービスサーバー242は、伝送されたユニキャストメッセージを処理し、クライアント端末212のネットワークアドレスC001XXX1002を目的地アドレスとし、発信アドレスのサーバーアドレスフィールドを自分のサーバーアドレスA001XXX8としてユニキャストメッセージを伝送する。この際、発信アドレスのクライアントアドレスフィールドには、所定のアドレスを記録しても、何も記録しなくても良い。
内部ルータ230は、伝送されたユニキャストメッセージのクライアントアドレスフィールド002とは関係なくサーバーアドレスフィールドC001XXX1のみを利用してメッセージルーティングを処理し、ユニキャストメッセージを接続管理サーバー220に伝送する。よって、内部ルータ230のルーティングテーブルにはサーバーアドレスフィールドのための空間のみが割り当てられれば良い。すなわち、内部ルータ230のルーティングテーブルには、“A001XXX7”、“A001XXX8”、“A001XXX9”及び“C001XXX1”とこれらに対応するルーティング情報が保存される。このとき、ルーティング情報は、ソケットIDなどの接続(connection)情報を含むことができる。この際、接続情報は、アプリケーション上の一つの接続ごとに唯一値を有しても良いし、接続が切れてから再び接続されるなどの接続変更によってその値が変わることもできる。
内部ルータ230により、目的地アドレスのクライアントアドレスフィールド002とは関係なくサーバーアドレスフィールドC001XXX1のみを利用してルーティングされたユニキャストメッセージは、サーバーアドレスフィールドC001XXX1に該当するサーバーアドレスを有する接続管理サーバー220に伝達される。
接続管理サーバー220は、内部ネットワークから受信されたユニキャストメッセージの目的地アドレスC001XXX1002に含まれたクライアントアドレス002を利用して、ユニキャストメッセージを伝送するクライアント端末を識別し、目的地アドレスC001XXX1002及び発信アドレスを変更せずにユニキャストメッセージをそのまま識別されたクライアント端末に伝送する。このとき、接続管理サーバー220のルーティングテーブルには、クライアントアドレスフィールドのための空間のみが割り当てられれば良い。すなわち、接続管理サーバー220のルーティングテーブルには、“001”、“002”及び“003”とこれに対応するルーティング情報が保存される。このとき、ルーティング情報は、ソケットIDなどの接続(connection)情報を含むことができる。このとき、接続情報は、アプリケーション上の一つの接続(Connection)ごとに唯一値を有しても良いし、接続が切れてから再接続するなどの接続変更によってその値が変わっても良い。特に、接続管理サーバー220は、クライアント端末211,212,213からの接続を管理するので、接続管理サーバー220のルーティングテーブルにクライアント端末211,212,213からの接続についてのソケットIDなどの接続情報が保存される。よって、クライアント端末211,212,213からの接続変更に対する処理は、接続管理サーバー220がいずれも処理でき、内部ネットワークはクライアント端末の接続変更に対する処理を行う必要がない。
図2に示す通信ネットワークシステムはクライアント端末と接続管理サーバーとの間の接続を保持したままサービスサーバー間の移動が可能である。例えば、クライアント端末211が接続管理サーバー220を介してサービスサーバー242に接続されている場合、クライアント端末211と接続管理サーバー220との接続をそのまま保持した状態で、接続管理サーバー220をサービスサーバー242の代りにサービスサーバー243に接続させることができる。このように、クライアント端末と接続管理サーバーとの間の接続を保持したままサービスサーバーを変更し得ることから、接続している特定サービスサーバーとの接続を切った後、他のサービスサーバーに新たに接続して接続及び認証手続きを繰り返さなければならないという煩わしさを解消することができる。
通信ネットワークシステムは実施の形態に基づいて、クライアント端末211,212,213と接続管理サーバー220との間にL4スィッチを備えてロードバランシング(load balancing)を行うこともできる。
図2に示す実施の形態においては、説明の便宜のために、通信ネットワークシステムに接続管理サーバーが一つある場合を一例として説明したが、通信ネットワークシステム内に接続管理サーバーが多数具備されても良い。例えば、通信ネットワークシステム内にクライアント端末約2万台当たり1台程度の接続管理サーバーが具備されても良い。
図4は、本発明の他の実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。
図4を参照すると、マルチキャスト通信ネットワークシステムは、クライアント端末411〜416、接続管理サーバー421,422、内部ルータ430及びサービスサーバー440を含む。
図4に示すように、マルチキャストアドレスM001に対してクライアント端末411,413,415が加入されていると仮定する。
図4に示すクライアント端末411〜416、接続管理サーバー421,422、内部ルータ430及びサービスサーバー440に対して、図2で説明したユニキャストメッセージの伝送時の動作に関する内容がそのまま適用できる。
接続管理サーバー421,422及びサービスサーバー440は、それぞれ対応するサーバーアドレスC001XXX1,C001XXX2,A001XXX7を有する。
接続管理サーバー421は、接続されたクライアント端末411,412,413に、それぞれ自分のサーバーアドレスC001XXX1に所定のクライアントアドレス001,002,003を結合したネットワークアドレスC001XXX1001,C001XXX1002,C001XXX1003を割り当て、クライアント端末411,412,413のうちマルチキャストアドレスM001に加入したクライアント端末411,413のクライアントアドレス001,003をクライアントアドレスリストに保存する。
接続管理サーバー422は、接続されたクライアント端末414,415,416に、それぞれ自分のサーバーアドレスC001XXX2に所定のクライアントアドレス001,002,003を結合したネットワークアドレスC001XXX2001,C001XXX2002,C001XXX2003を割り当て、クライアント端末414,415,416のうちマルチキャストアドレスM001に加入したクライアント端末415のクライアントアドレス002をクライアントアドレスリストに保存する。
内部ルータ430は、クライアントアドレスとは関係なくサーバーアドレスのみを利用してメッセージルーティングを処理し、マルチキャストアドレスM001に加入したクライアント端末411,413,415と接続された接続管理サーバー421,422のサーバーアドレスC001XXX1,C001XXX2をサーバーアドレスリストに保存する。
下記表1ないし表3は、それぞれの接続管理サーバー421のクライアントアドレスリストと、接続管理サーバー422のクライアントアドレスリストと、内部ルータ430のサーバーアドレスリストとを示す。
Figure 2007166634
Figure 2007166634
Figure 2007166634
このように、内部ルータは、マルチキャストアドレスに加入した接続管理サーバーのサーバーアドレスのみを保存し、接続管理サーバーごとに接続されたクライアント端末のうちマルチキャストアドレスに加入したクライアント端末のクライアントアドレスを保存することにより、保存空間を効率的に分散させることができ、内部ネットワークにおけるメッセージ伝送回数を減らしてマルチキャストメッセージを経済的に伝送することができる。
例えば、サービスサーバー440はゲームサーバーでありうる。このとき、ゲームサーバーにはゲームサーバーに接続したユーザー、ユーザーが集まったルーム、ルームが集まったチャンネルに対する情報がありうる。このとき、チャンネル、ルーム、ユーザーは、階層構造を有するクラスに相応するものであっても良いし、特定チャンネル、ルーム、ユーザーは、該当するチャンネルクラス、ルームクラス及びユーザークラスのインスタンス(instance)であっても良い。このとき、それぞれのインスタンスは所定の特徴情報を有することができる。例えば、ルームインスタンスは、上手、中手または下手のレベル情報を有することができる。よって、ゴーストップ1というルームに相応するルームインスタンスのレベル情報は下手であり、ゴーストップ2というルームに相応するルームインスタンスのレベル情報は中手であり、ゴーストップ3というルームに相応するルームインスタンスのレベル情報は上手でありうる。
例えば、ユーザーAが新たにゲームサーバーであるサービスサーバー440に接続すると、サービスサーバー440は、ユーザーAに相応するユーザーインスタンスを生成する。このとき、サービスサーバー440のチャンネルCにルームBがあり、これにより、サービスサーバー440にはチャンネルC及びルームBに相応するチャンネルインスタンス及びルームインスタンスが存在すると仮定する。この場合、ユーザーAかルームBに入ると、ルームBに相応するインスタンスにはユーザーAについての情報がアップデート(更新)される。その後、ユーザーAかルームBから出ると、ルームBに相応するインスタンスからユーザーAについての情報が削除される。同様に、ユーザーAがチャンネルCに入るか、チャンネルCから出る場合にも、チャンネルCに相応するインスタンスにユーザーAについての情報がアップデート(更新)されるか削除される。
サービスサーバー440のそれぞれのチャンネルやルームは、対応するマルチキャストアドレスを有することができる。例えば、チャンネルCに対応するマルチキャストアドレスは“MC001”であり、チャンネルCに属するルームBに対応するマルチキャストアドレスは“MC001R001”でありうる。
サービスサーバー440は、マルチキャストアドレスに加入したクライアント端末またはマルチキャストアドレスに加入したクライアント端末が接続された接続管理サーバーに関する情報を保存し、必要に応じて保存された情報をクライアント端末に提供することができる。以下、サービスサーバー440からマルチキャストメッセージが伝送される場合について詳しく説明する。
例えば、サービスサーバー440はゴーストップゲームサーバーであり、マルチキャストアドレスM001は3人のプレーヤーが一緒にゴーストップゲームをしているルームに相応するものでありうる。すなわち、一緒にゴーストップゲームをしている3人のプレーヤーに該当するクライアント端末は、いずれもマルチキャストアドレスM001に加入し、ゴーストップゲームサービスサーバーは、マルチキャストアドレスM001にマルチキャストメッセージを伝送することにより、ゲーム状況に関するメッセージを簡単に特定ゲームが進行中のルーム内のすべてのプレーヤーに伝送することができる。
サービスサーバー440がマルチキャストアドレスM001にマルチキャストメッセージを伝送し、内部ルータ430がマルチキャストメッセージを受信する。
このとき、マルチキャストアドレスM001は、図3で説明したネットワークアドレスのサーバーアドレスフィールドに記録されうる。
内部ルータ430は、マルチキャストアドレスM001に相応するサーバーアドレスリスト表3に含まれたサーバーアドレスC001XXX1,C001XXX2に、受信されたマルチキャストメッセージを伝送する。
接続管理サーバー421は、対応するサーバーアドレスが“C001XXX1”であるため、内部ルータ430からマルチキャストメッセージを伝送される。マルチキャストメッセージを伝送されると、接続管理サーバー421は、マルチキャストアドレスM001に相応するクライアントアドレスリスト(表1)に含まれたクライアントアドレス001,003に、受信されたマルチキャストメッセージを伝送する。
接続管理サーバー422は、対応するサーバーアドレスが“C001XXX2”であるため、内部ルータ430からマルチキャストメッセージを伝送される。マルチキャストメッセージを伝送されると、接続管理サーバー422は、マルチキャストアドレスM001に相応するクライアントアドレスリスト(表2)に含まれたクライアントアドレスM002に、受信されたマルチキャストメッセージを伝送する。
したがって、サービスサーバー440から伝送されたマルチキャストメッセージが、マルチキャストアドレスに加入したすべてのクライアント端末411,413,415に伝送される。
以下、クライアント端末415からマルチキャストメッセージが伝送される場合について詳述する。
例えば、マルチキャストアドレスM001は、3人のプレーヤーが一緒にゴーストップゲームをしているルームに相応するものでありうる。すなわち、一緒にゴーストップゲームをしている3人のプレーヤーに該当するクライアント端末は、いずれもマルチキャストアドレスM001に加入し、マルチキャストアドレスM001に加入したクライアント端末のそれぞれは、マルチキャストアドレスM001にマルチキャストメッセージを伝送することにより、ゲームをしているプレーヤーに簡単にメッセージを伝送することができる。
クライアント端末415がマルチキャストアドレスM001にマルチキャストメッセージを伝送し、接続管理サーバー422がマルチキャストメッセージを受信する。
このとき、マルチキャストアドレスM001は、図3で説明したネットワークアドレスのサーバーアドレスフィールドに記録され得る。
接続管理サーバー422は、マルチキャストアドレスM001に相応するクライアントアドレスリスト(表2)に含まれたクライアントアドレス002及び内部ルータ430に受信されたマルチキャストメッセージを伝送する。このとき、接続管理サーバー422にマルチキャストメッセージを伝送したクライアントアドレス002には、マルチキャストメッセージを伝送しなくても良い。
内部ルータ430は、伝送されたマルチキャストメッセージを受信し、マルチキャストアドレスM001に相応するサーバーアドレスリスト(表3)に含まれたサーバーアドレスC001XXX1,C001XXX2に、受信されたマルチキャストメッセージを伝送する。このとき、マルチキャストメッセージを伝送したサーバーアドレスC001XXX2には、マルチキャストメッセージを伝送しなくても良い。
接続管理サーバー421は、対応するサーバーアドレスが“C001XXX1”であるため、内部ルータ430からマルチキャストメッセージを伝送される。マルチキャストメッセージを伝送されると、接続管理サーバー421は、マルチキャストアドレスM001に相応するクライアントアドレスリスト(表1)に含まれたクライアントアドレス001,003に、受信されたマルチキャストメッセージを伝送する。
したがって、クライアント端末415から伝送されたマルチキャストメッセージが、マルチキャストアドレスに加入した他のクライアント端末411,413に伝送される。
以下、クライアント端末413からクライアントアドレスフィールドを用いたマルチキャストメッセージが伝送される場合について詳細に説明する。
クライアント端末413がマルチキャストアドレスM001にマルチキャストメッセージを伝送し、接続管理サーバー421がマルチキャストメッセージを受信する。このとき、マルチキャストアドレスM001は、図3で説明したネットワークアドレスのクライアントアドレスフィールドに記録される。
接続管理サーバー421は、マルチキャストアドレスM001に相応するクライアントアドレスリスト(表1)に含まれたクライアントアドレス001,003に、受信されたマルチキャストメッセージを伝送する。このとき、接続管理サーバー421にマルチキャストメッセージを伝送したクライアントアドレス003には、マルチキャストメッセージを伝送しなくても良い。
また、接続管理サーバー421は、クライアントアドレスフィールドにマルチキャストメッセージのクライアントアドレスフィールドにマルチキャストアドレスが記録されているので、マルチキャストメッセージを内部ルータ430に伝送しない。すなわち、接続管理サーバー421は、クライアントアドレスフィールドにマルチキャストアドレスが記録されている場合、接続管理サーバー421でマルチキャストメッセージ送/受信を処理し、それを内部ネットワークに伝達しない。
したがって、クライアント端末413から伝送されたマルチキャストメッセージが、マルチキャストアドレスに加入した他のクライアント端末411にのみ伝送される。
以下、クライアント端末416がさらにマルチキャストアドレスM001に加入する場合について詳述する。
クライアント端末416は、マルチキャストアドレスM001に加入するために接続管理サーバー422に対して、マルチキャストアドレス加入を要請する。このとき、マルチキャストアドレス加入要請は一種のコントロールメッセージである。接続管理サーバー421,422及び内部ルータ430は、通常メッセージの内容を解釈せずにルーティングのみを行うが、コントロールメッセージは解釈する。
接続管理サーバー423は、マルチキャストアドレス加入要請に応答し、マルチキャストアドレスM001に相応するクライアントアドレスリストにクライアント端末416のクライアントアドレス003を登録する。
接続管理サーバー423は、クライアントアドレスリストに新しいクライアントアドレスが登録される場合、それをコントロールメッセージを介して内部ルータ430に通知することができる。このとき、内部ルータ430は、新しいクライアントアドレス登録を通知した接続管理サーバーのサーバーアドレスが当該マルチキャストアドレスに加入されているか否かを確認し、未加入であれば、新しいクライアントアドレス登録を通知した接続管理サーバーのサーバーアドレスを、サーバーアドレスリストに登録する。図4に示すように、接続管理サーバー422のサーバーアドレスC001XXX2は、既に内部ルータ430のサーバーアドレスリストに含まれているので、接続管理サーバー422のサーバーアドレスC001XXX2をさらに登録する必要はない。
実施の形態に基づいて、クライアント端末416がマルチキャストアドレスM001に加入しようとする場合、コントロールメッセージではない一般メッセージをサービスサーバー440に伝送することもできる。
このとき、接続管理サーバー422及び内部ルータ430は、クライアント端末416が伝送したメッセージを解釈せずにサービスサーバー440にルーティングする。
サービスサーバー440は、クライアント端末416から受信されたメッセージを解釈し、マルチキャストアドレスM001に加入しようとすることが確認されると、接続管理サーバー422にコントロールメッセージを伝送し、接続管理サーバー422をして、マルチキャストアドレスM001に相応するクライアントアドレスリストにクライアント端末416のクライアントアドレス003を登録させる。また、サービスサーバー440は、必要に応じて内部ルータ430にコントロールメッセージを伝送し、新たに追加された接続管理サーバーのサーバーアドレスをサーバーアドレスリストに登録させることもできる。
図4に示す実施の形態において、クライアント端末411,412,413及び接続管理サーバー421間の通信及び、クライアント端末414,415,416及び接続管理サーバー422間の通信は、暗号化されたセキュリティー通信でありうる。
また、図4に示すマルチキャスト通信ネットワークシステムは、クライアント端末411,412,413,414,415,416のうちいずれか一つとサービスサーバー440との間で接続生成メッセージ(conection create message)が正常に往復すれば、当該クライアント端末と当該サービスサーバーとの間に仮想接続(virtual connection)を設定することができる。
このとき、マルチキャスト通信ネットワークシステムは、前記仮想接続が設定されたクライアント端末とサービスサーバーとの間で接続終了メッセージ(connection terminate message)が正常に往復すれば、前記仮想接続を終了させることができる。
このとき、マルチキャスト通信ネットワークシステムは、前記仮想接続が設定されたクライアント端末と当該接続管理サーバー間のTCP/IP接続が終了すれば、前記仮想接続をも終了させることができる。
図5A及び図5Bは、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムの耐障害性(fault tolerance)を示すブロック図である。
図5A及び図5Bを参照すると、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムは、クライアント端末510が接続管理サーバー521の以外にも補助接続管理サーバー522に同時に接続される。このとき、クライアント端末510と接続管理サーバー521及び補助接続管理サーバー522間の接続は、TCP/IP接続でありうる。
このとき、接続管理サーバー521と補助接続管理サーバー522を実質的に同じ構成にしても良いし、実施の形態に応じて補助接続管理サーバー522を二つ以上備えても良い。
図5Aを参照すると、接続管理サーバー521が正常に動作する場合、接続管理サーバー521はアクティブ(active)状態であり、補助接続管理サーバー522はスタンバイ(stand by)状態である。このとき、クライアント端末510とサービスサーバー540との間のメッセージ伝送は、接続管理サーバー521及び内部ルータ530によって行われる。接続管理サーバー521及び内部ルータ530の動作についての説明は、図2及び図4で説明したとおりである。
図5Bを参照すると、接続管理サーバー521を介するクライアント端末510とサービスサーバー540間の接続において異常が発生する場合、補助接続管理サーバー522がアクティブ状態になる。例えば、接続管理サーバー521とクライアント端末510と間の接続において異常が発生するか、接続管理サーバー521と内部ルータ530間の接続において異常が発生する場合、補助接続管理サーバー522がアクティブ状態となって、接続管理サーバー521の代わりにクライアント端末510とサービスサーバー540間の接続を保持させることができる。このとき、接続管理サーバー521は、内部ルータ530との接続をさらに試み、成功すればスタンバイ状態になる。
補助接続管理サーバー522がアクティブ状態になると、クライアント端末510とサービスサーバー540間のメッセージ伝送は、補助接続管理サーバー522及び内部ルータ530によって行われる。このとき、接続管理サーバー521は、新しいクライアント端末からの接続要求を拒否する。補助接続管理サーバー522にも、図2及び図4に示す接続管理サーバーの動作に関する説明がその通りに適用できる。
補助接続管理サーバー522がアクティブ状態となって、クライアント端末511が補助接続管理サーバー522を介してメッセージを伝送する場合、クライアント端末511からサービスサーバー540に伝送されるメッセージの発信アドレスのサーバーアドレスフィールドに、補助接続管理サーバー522のサーバーアドレスを記録してメッセージを伝送しても良い。
図6は、図2及び図4に示す接続管理サーバーの一例を示すブロック図である。
図6を参照すると、接続管理サーバーは、イントラネットワーク部610、ディスパッチャー620、ルータ630及びインタネットワーク部640を含む。
イントラネットワーク部610は、クライアント端末との接続を管理する役目を担う。すなわち、イントラネットワーク部610は、クライアント端末からの接続要請に対して待機させるか、接続要請を受諾することができる。また、イントラネットワーク部610は、クライアント端末から接続管理サーバーに伝送されるメッセージの送/受信を管理することができる。また、イントラネットワーク部610は、接続管理サーバーとクライアント端末との間のメッセージ暗号化及び復呼化を行うことができる。
ディスパッチャー(Dispatcher)620は、イントラネットワーク部610やインタネットワーク部640から受信されたメッセージを解釈し、解釈結果に基づいて接続管理サーバーをして必要な動作を行わせる。このとき、ディスパッチャー620は、メッセージ全体を解釈することなく、メッセージのヘッダー部分のみを見て当該メッセージの処理方法を決定することが可能である。ただし、コントロールメッセージの場合にはディスパッチャー620によって解釈できる。
例えば、ディスパッチャー620は、イントラネットワーク部610から受信されたメッセージがサービスサーバーに伝送される必要があると判断した場合、受信されたメッセージをルータ630を介して適切な目的地サービスサーバーに伝送させることができる。
例えば、ディスパッチャー620は、イントラネットワーク部610から受信されたメッセージが接続管理サーバーに接続された他のクライアント端末に伝送される必要があると判断した場合、当該クライアント端末のアドレスを検出してメッセージを伝送させることができる。
例えば、ディスパッチャー620は、インタネットワーク部640から受信されたメッセージがクライアント端末に伝送される必要があると判断した場合、受信されたメッセージに含まれた目的地アドレスのクライアントフィールドを利用してメッセージを伝送するクライアント端末を識別し、ルータ630を介して識別されたクライアント端末にメッセージを伝送させることもできる。
例えば、ディスパッチャー620は、インタネットワーク部640から受信されたメッセージがマルチキャストメッセージである場合、前記マルチキャストメッセージのマルチキャストアドレスに相応するクライアントアドレスリストに含まれたクライアントアドレスに、前記マルチキャストメッセージを伝送させることができる。
例えば、ディスパッチャー620は、イントラネットワーク部640から受信されたメッセージがマルチキャストメッセージである場合、前記マルチキャストメッセージのマルチキャストアドレスに相応するクライアントアドレスリストに含まれたクライアントアドレスに、前記マルチキャストメッセージを伝送し、前記マルチキャストメッセージを接続管理サーバーで処理するか内部ネットワークに伝達するかの可否を判断することができる。このとき、マルチキャストメッセージを接続管理サーバーで処理するか内部ネットワークに伝達するかの可否は、マルチキャストアドレスがネットワークアドレスのクライアントアドレスフィールドに記録されているか否かによって判断することもできる。例えば、ディスパッチャー620は、サーバーアドレスフィールドにマルチキャストアドレスが記録されている場合には、マルチキャストメッセージを内部ネットワークに伝達し、クライアントアドレスフィールドにマルチキャストアドレスが記録されている場合には、マルチキャストメッセージを接続管理サーバーで処理し、内部ネットワークに伝達しないようにすることができる。
ルータ630は、イントラネットワーク部610やインタネットワーク部640から受信されたメッセージを適切な目的地(destination address)にルーティングする。
インタネットワーク部640は、内部ネットワークの内部ルータとのメッセージ送/受信を担当する。すなわち、インタネットワーク部640は、内部ルータとのインターフェースを担当し、内部ルータ側をして接続管理サーバーを一種のサービスサーバーとして認識させる。
図7は、本発明の一実施の形態によるデータ送/受信方法の動作フローチャートである。
図7を参照すると、本発明の一実施の形態によるデータ送/受信方法では、クライアント端末から受信されたアドレス割り当て要請に応答し、接続管理サーバーが自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを生成し、それを前記クライアント端末に割り当てる(S710)。
例えば、接続管理サーバーのサーバーアドレスが“C001XXX1”である場合、本発明の接続管理サーバーは、“C001XXX1001”をクライアント端末のネットワークアドレスに割り当てることができる。このとき、ネットワークアドレス“C001XXX1001”における“C001XXX1”は、サーバーアドレスフィールドに該当し、“001”はクライアントアドレスフィールドに該当する。
また、データ送/受信方法では、前記接続管理サーバーが前記クライアント端末からマルチキャストアドレスへの加入要請を受け、前記マルチキャストアドレスに相応するクライアントアドレスリストに前記クライアント端末のクライアントアドレスを登録する(S720)。
例えば、クライアント端末”C001XXX1003”がマルチキャストアドレス“M001”に加入を要請すると、サーバーアドレスが“C001XXX1”である接続管理サーバーは、マルチキャストアドレス“M001”に対するクライアントアドレスリストに“003”を登録する。
また、データ送/受信方法では、内部ルータが前記マルチキャストアドレスに相応するサーバーアドレスリストに前記接続管理サーバーのサーバーアドレスを登録する(S730)。
例えば、サーバーアドレスが”C001XXX1”である接続管理サーバーに接続されたクライアント端末”C001XXX1003”が、マルチキャストアドレス“M001”に加入を要請した場合、内部ルータは、マルチキャストアドレス“M001”に対するサーバーアドレスリストに“C001XXX1”を登録する。
このとき、図7に示すデータ送/受信方法は、接続管理サーバーが前記クライアント端末から前記マルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、前記接続管理サーバーが、前記クライアントアドレスリスト内のクライアントアドレス及び前記内部ルータに前記マルチキャストメッセージを伝送する段階と、前記内部ルータが、前記接続管理サーバーのサーバーアドレスを除いた前記サーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、をさらに含んでも良い。
図8は、本発明の他の実施の形態によるデータ送/受信方法の動作フローチャートである。
図8を参照すると、本発明の一実施の形態によるデータ送/受信方法では、サーバーアドレスのみでメッセージルーティングを処理する内部ルータが、サービスサーバーからマルチキャストアドレスに送信されたマルチキャストメッセージを受信する(S810)。
また、データ送/受信方法では、内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する(S820)。
また、データ送/受信方法では、内部ルータから前記マルチキャストメッセージを受信した接続管理サーバーが、前記マルチキャストアドレスに相応するクライアントアドレスリスト内のクライアントアドレスに前記マルチキャストメッセージを伝送する(S830)。
図7及び図8で説明した方法と関連して説明しない内容は、上記の通信ネットワークシステムによる実施の形態にそのとおりに適用できるので、以下省略する。
本発明によるデータ送/受信方法は、各種コンピューター手段を介して行われるプログラム命令形態で具現されてコンピューター読取可能媒体に記録され得る。前記コンピューター読取可能媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。前記媒体に記録されるプログラム命令は、本発明のために特別に設計構成されたものであっても良いし、コンピューターソフトウェア当業者に公知されて使用可能なものであっても良い。コンピューター読取可能記録媒体の例としては、ハードディスク、プロッピィーディスク及び磁気テープなどの磁気媒体(magnetic media)、CD−ROM、DVDなどの光記録媒体(optical media)、フロプティカルディスク(floptical disk)などの光磁気媒体(magneto-optical media)、及びROM、RAM、フラッシュメモリーなどのプログラム命令を保存し遂行するように特別に構成されたハードウェア装置が挙げられる。前記媒体は、プログラム命令、データ構造などを指定する信号を伝送する搬送波を含む光または金属線、導波管などの伝送媒体であっても良い。プログラム命令の例としては、コンパイラによって作われる同じ機械語コードはもとより、インタプリターなどを用いてコンピューターによって実行可能な高級言語コードが挙げられる。上記のハードウェア装置は、本発明の動作を行うために一つ以上のソフトウェアモジュールとして作動するように構成でき、その逆も同様である。
図9は、本発明によるデータ送/受信方法に採用される汎用コンピューター装置の内部ブロック図である。
コンピューター装置900は、RAM(Random Access Memory)920とROM(Read Only Memory)930を含む主記憶装置と接続される一つ以上のプロセッサ910を含む。プロセッサ910は、中央処理装置CPUとも言われる。本技術分野で広く知られているように、ROM930は、データと命令(instruction)を単一方向にCPUに伝送する役目をし、RAM920は、通常データと命令を両方向に伝送する役目をする。RAM920及びROM930は、コンピューター読取可能媒体のいかなる適切な形態を含むことができる。大容量記憶装置(Mass Storage)940は、両方向でプロセッサ910と接続されて追加的なデータ保存能力を提供し、上記のコンピューター読取可能記録媒体のいずれかでありうる。大容量記憶装置940は、プログラム、データなどの保存に使用され、通常主記憶装置よりも遅い速度を有するハードディスクのような補助記憶装置である。CD−ROM960などの特定大容量記憶装置を採用しても良い。プロセッサ910は、ビデオモニター、トラックボール、マウス、キーボード、マイクロホン、タッチスクリーン型ディスプレイ、カード読取機、磁気または紙テープ読取機、音声または筆記認識機、ジョイ・スティック、またはその他公知されているコンピューター入出力装置などのうちいずれか1種以上の入出力インターフェース950と接続される。さらに、プロセッサ910は、ネットワークインターフェース970を介して有線または無線通信ネットワークに接続できる。このようなネットワーク接続を介して上述した方法の手続きを行うことができる。上述した装置及び道具はコンピューターハードウェア及びソフトウェア技術分野の当業者にとってはよく知られているものである。一方、上述したハードウェア装置は、本発明の動作を行うために一つ以上のソフトウェアモジュールとして作動するように構成できる。
以上、本発明を好適な実施の形態及び図面を挙げて説明したが、本発明はこの実施の形態に限定されるのではなく、本発明が属する技術分野における当業者にとって各種の修正及び変形が可能である。
したがって、本発明の範囲は、この実施例により全く制限されないということは明らかであり、よって、本発明の実質的な範囲は、特許請求の範囲とその等価物により定義さるべきであろう。
従来の技術によるゲームサービスシステムのクライアントとサーバーとの間の接続を示す図である。 本発明の一実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。 本発明の図2に示すマルチキャスト通信ネットワークシステムに用いられるネットワークアドレスの一例を示す図である。 本発明の他の実施の形態によるマルチキャスト通信ネットワークシステムのブロック図である。 図5A及び図5Bは、本発明の一実施の形態によるマルチキャスト通信ネットワークシステムの障害許容性(fault tolerance)を示すブロック図である。 図2及び図4に示す接続管理サーバーの一例を示すブロック図である。 本発明の一実施の形態によるデータ送/受信方法の動作フローチャートである。 本発明の他の実施の形態によるデータ送/受信方法の動作フローチャートである。 本発明によるデータ送/受信方法に採用される汎用コンピューター装置の内部ブロック図である。
符号の説明
411〜416 クライアント端末
421、422 接続管理サーバー
430 内部ルータ
440 サービスサーバー

Claims (24)

  1. 対応するサーバーアドレスを有するサービスサーバーと、
    対応する自分のサーバーアドレスを有し、接続されたクライアント端末のうちマルチキャストアドレスに加入したクライアント端末のクライアントアドレスをクライアントアドレスリストに保存する接続管理サーバーと、
    前記クライアントアドレスとは関係なく前記サーバーアドレスのみを利用してメッセージルーティングを処理し、前記マルチキャストアドレスに加入したクライアント端末と接続された接続管理サーバーのサーバーアドレスをサーバーアドレスリストに保存する内部ルータと、を含むことを特徴とするマルチキャスト通信ネットワークシステム。
  2. 前記接続管理サーバーは、前記接続されたクライアント端末に、前記自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを割り当てることを特徴とする請求項1記載のマルチキャスト通信ネットワークシステム。
  3. 前記内部ルータは、前記マルチキャストアドレスに伝送されたマルチキャストメッセージが受信されると、前記サーバーアドレスリストに含まれたサーバーアドレスに前記マルチキャストメッセージを伝送することを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  4. 前記接続管理サーバーは、前記マルチキャストメッセージが受信されると、前記マルチキャストメッセージを前記クライアントアドレスリストに含まれたクライアントアドレスに伝送することを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  5. 前記接続管理サーバーは、前記マルチキャストメッセージが前記接続されたクライアント端末から受信された場合、前記内部ルータに前記マルチキャストメッセージを伝送することを特徴とする請求項4に記載のマルチキャスト通信ネットワークシステム。
  6. 前記内部ルータは、前記接続管理サーバーから前記マルチキャストメッセージが受信された場合、前記接続管理サーバーのサーバーアドレスを除いたサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送することを特徴とする請求項5に記載のマルチキャスト通信ネットワークシステム。
  7. 前記マルチキャスト通信ネットワークシステムは、前記内部ルータ側が、前記接続管理サーバーを前記サービスサーバーと対等に認識することを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  8. 前記ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドを含み、前記内部ルータは、前記クライアントアドレスフィールドをマスク(masking)してメッセージルーティングを処理することを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  9. 前記マルチキャストアドレスは、前記サーバーアドレスフィールドに記録されることを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  10. 前記マルチキャストアドレスは前記クライアントアドレスフィールドに記録され、
    前記接続管理サーバーは、前記クライアントアドレスフィールドにマルチキャストアドレスが記録されたマルチキャストメッセージを受信すると、前記クライアントアドレスリストに含まれたクライアントアドレスに前記マルチキャストメッセージを伝送し、前記内部ルータに前記マルチキャストメッセージを伝送しないことを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  11. 前記接続管理サーバーは、前記クライアント端末と暗号化されたセキュリティー通信を行うことを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  12. 前記接続管理サーバーに接続されたクライアント端末は、それぞれ前記接続管理サーバーの以外にも一つ以上の補助接続管理サーバーに同時に接続され,
    前記接続管理サーバーを介する接続において異常が発生する場合、前記接続管理サーバーは、新しいクライアント端末の接続要求を拒否し、前記接続管理サーバーに接続されたクライアント端末は、前記補助接続管理サーバーを介してメッセージを伝送することを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  13. 前記マルチキャスト通信ネットワークシステムは、前記クライアント端末のうちいずれか一つと前記サービスサーバーとの間で接続生成メッセージが正常に往復すれば、前記クライアント端末のいずれか一つと前記サービスサーバーとの間に仮想接続(virtual connection)を設定することを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  14. 前記サービスサーバーは、前記マルチキャストアドレスに加入したクライアント端末または前記マルチキャストアドレスに加入したクライアント端末が接続された接続管理サーバーについての情報を保存し、前記保存された情報を前記クライアント端末に提供することを特徴とする請求項1に記載のマルチキャスト通信ネットワークシステム。
  15. 前記サービスサーバーは、前記マルチキャストアドレスに対する変更が発生する場合、前記接続管理サーバー及び前記内部ルータにコントロールメッセージを伝送し、前記接続管理サーバー及び前記内部ルータが前記マルチキャストアドレスに対する変更を反映して更新(アップデート)することを特徴とする請求項14に記載のマルチキャスト通信ネットワークシステム。
  16. クライアント端末から受信されたアドレス割り当て要請に応答し、接続管理サーバーが、自分のサーバーアドレスに所定のクライアントアドレスを結合したネットワークアドレスを生成し、それを前記クライアント端末に割り当てる段階と、
    前記接続管理サーバーが、前記クライアント端末からマルチキャストアドレスへの加入要請を受け、前記マルチキャストアドレスに相応するクライアントアドレスリストに前記クライアント端末のクライアントアドレスを登録する段階と、
    内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリストに前記接続管理サーバーのサーバーアドレスを登録する段階と、を含むことを特徴とするデータ送/受信方法。
  17. 前記データ送/受信方法は、
    前記接続管理サーバーが、前記クライアント端末から前記マルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、
    前記接続管理サーバーが、前記クライアントアドレスリスト内のクライアントアドレス及び前記内部ルータに前記マルチキャストメッセージを伝送する段階と、
    前記内部ルータが、前記接続管理サーバーのサーバーアドレスを除いた前記サーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、をさらに含むことを特徴とする請求項16に記載のデータ送/受信方法。
  18. 前記ネットワークアドレスは、サーバーアドレスフィールド及びクライアントアドレスフィールドを含み、前記内部ルータは、前記クライアントアドレスフィールドをマスク(masking)してメッセージルーティングを処理することを特徴とする請求項16に記載のデータ送/受信方法。
  19. 前記マルチキャストアドレスは、前記サーバーアドレスフィールドに記録されることを特徴とする請求項16に記載のデータ送/受信方法。
  20. 前記マルチキャストアドレスは前記クライアントアドレスフィールドに記録され、
    前記接続管理サーバーは、前記クライアントアドレスフィールドにマルチキャストアドレスが記録されたマルチキャストメッセージを受信すると、前記クライアントアドレスリストに含まれたクライアントアドレスに前記マルチキャストメッセージを伝送し、前記内部ルータに前記マルチキャストメッセージを伝送しないことを特徴とする請求項16に記載のデータ送/受信方法。
  21. サーバーアドレスのみでメッセージルーティングを処理する内部ルータが、サービスサーバーからマルチキャストアドレスに送信されたマルチキャストメッセージを受信する段階と、
    前記内部ルータが、前記マルチキャストアドレスに相応するサーバーアドレスリスト内のサーバーアドレスに前記マルチキャストメッセージを伝送する段階と、
    前記内部ルータから前記マルチキャストメッセージを受信した接続管理サーバーが、前記マルチキャストアドレスに相応するクライアントアドレスリスト内のクライアントアドレスに前記マルチキャストメッセージを伝送する段階と、を含むことを特徴とするデータ送/受信方法。
  22. 前記データ送/受信方法では、前記接続管理サーバーに接続されたクライアント端末と前記サービスサーバーとの間で接続生成メッセージが正常に往復すれば、前記クライアント端末と前記サービスサーバーとの間に仮想接続(virtual connnection)を設定することを特徴とする請求項16又は12に記載のデータ送/受信方法。
  23. 前記接続管理サーバーに接続されたクライアント端末は、前記接続管理サーバーの以外にも一つ以上の補助接続管理サーバーに同時に接続され、
    前記接続管理サーバーを介する接続において異常が発生する場合、前記接続管理サーバーは、新しいクライアント端末の接続要求を拒否し、前記接続管理サーバーに接続されたクライアント端末は、前記補助接続管理サーバーを介してメッセージを伝送することを特徴とする請求項16又は21に記載のデータ送/受信方法。
  24. 請求項16乃至21のいずれかに記載の方法を行うためのプログラムが記録されていることを特徴とする請求項16乃至21のいずれかに記載のコンピューター読取可能記録媒体。
JP2006338253A 2005-12-15 2006-12-15 マルチキャスト通信ネットワークシステム及びこれを用いたデータ送/受信方法 Active JP4452271B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20050123972A KR100684166B1 (ko) 2005-12-15 2005-12-15 멀티캐스트 통신 네트워크 시스템 및 이를 이용한 데이터송/수신 방법

Publications (2)

Publication Number Publication Date
JP2007166634A true JP2007166634A (ja) 2007-06-28
JP4452271B2 JP4452271B2 (ja) 2010-04-21

Family

ID=38103916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006338253A Active JP4452271B2 (ja) 2005-12-15 2006-12-15 マルチキャスト通信ネットワークシステム及びこれを用いたデータ送/受信方法

Country Status (2)

Country Link
JP (1) JP4452271B2 (ja)
KR (1) KR100684166B1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100941802B1 (ko) 2007-12-28 2010-02-10 엘지노텔 주식회사 사설 교환 시스템 및 그의 데이터 전송 방법
KR101454991B1 (ko) 2013-01-21 2014-11-04 서울대학교산학협력단 무선 네트워크에서 네트워크 가입 방법
CN110769485A (zh) * 2014-09-19 2020-02-07 小米科技有限责任公司 使目标终端接入无线接入点提供的目标无线网络的方法
US10374819B2 (en) 2014-09-19 2019-08-06 Xiaomi Inc. Methods and devices of accessing wireless network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040093656A (ko) * 2002-07-29 2004-11-06 아이피 토크 가부시키가이샤 인터넷 통신 시스템 및 인터넷 통신 방법 및 세션 관리서버 및 무선 통신 장치 및 통신 중계 서버 및 프로그램

Also Published As

Publication number Publication date
JP4452271B2 (ja) 2010-04-21
KR100684166B1 (ko) 2007-02-20

Similar Documents

Publication Publication Date Title
JP5746688B2 (ja) ユニキャストクライアント要求をマルチキャストクライアント要求に変換するためのシステムおよび方法
CN113014562B (zh) 用于建立媒体会话的方法和装置
US7554992B2 (en) Mobile device communications system and method
JP5632068B2 (ja) 予備通信チャネルを確立して利用するための装置及び方法
JP4920038B2 (ja) 複数のグループに属するロケーションサーバを用いたユーザのログ情報管理方法及びシステム
JP5628998B2 (ja) ユーザをオンラインセッションに招待するための装置及び方法
KR101397834B1 (ko) 상이한 서비스 제공자들 사이의 피어-투-피어 접속들을 관리하기 위한 장치 및 방법
US8737210B2 (en) Load balancing SCTP associations using VTAG mediation
JP4833995B2 (ja) モバイルオンラインゲームシステム、及びモバイルゲーム端末間の通信方法
US20170195225A1 (en) Dynamic host configuration protocol relay in a multipod fabric
TWI577164B (zh) 可縮放位址解析之技術
CN104852972A (zh) 基于所发现的nat类型选择主机的方法
JP2022033791A (ja) Brasシステムベースのパケットカプセル化方法および装置
EP4029580A1 (en) Account access method and apparatus, storage medium, and electronic device
US7581010B2 (en) Virtual connectivity with local connection translation
JP2017147733A (ja) DiameterシグナリングルータにおいてDiameterメッセージをルーティングするための方法、システムおよびコンピュータ読取可能媒体
CN107580079A (zh) 一种报文传输方法和装置
KR101083480B1 (ko) 가입 통지 서비스를 구비하는 가상 접속
CN111698346A (zh) 一种专线网络地址转换方法、装置、专线网关及存储介质
JP4452271B2 (ja) マルチキャスト通信ネットワークシステム及びこれを用いたデータ送/受信方法
JP2005509228A (ja) 利用者間通信用モジュール及び処理
CN103503421A (zh) 负荷平衡系统中的sctp关联端点重定位
CN103036863A (zh) 一种解决IPv4地址短缺的方法及装置
KR100684165B1 (ko) 통신 네트워크 시스템 및 이를 이용한 데이터 송/수신 방법
JP2004129159A (ja) パケット変換方法、パケット通信システム、パケット変換装置、パケット変換プログラムおよび記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090818

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090828

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100105

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100129

R150 Certificate of patent or registration of utility model

Ref document number: 4452271

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140205

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250