JP2010511222A - Peer management server and peer management method in P2P system - Google Patents
Peer management server and peer management method in P2P system Download PDFInfo
- Publication number
- JP2010511222A JP2010511222A JP2009538314A JP2009538314A JP2010511222A JP 2010511222 A JP2010511222 A JP 2010511222A JP 2009538314 A JP2009538314 A JP 2009538314A JP 2009538314 A JP2009538314 A JP 2009538314A JP 2010511222 A JP2010511222 A JP 2010511222A
- Authority
- JP
- Japan
- Prior art keywords
- peer
- request message
- content
- information
- message
- 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
Links
- 238000007726 management method Methods 0.000 title claims description 76
- 238000000034 method Methods 0.000 claims abstract description 138
- 230000008569 process Effects 0.000 claims abstract description 116
- 238000012545 processing Methods 0.000 claims abstract description 114
- 238000013507 mapping Methods 0.000 claims abstract description 21
- 239000000284 extract Substances 0.000 claims abstract description 6
- 238000004891 communication Methods 0.000 claims description 11
- 238000012546 transfer Methods 0.000 claims description 10
- 230000008034 disappearance Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000013468 resource allocation Methods 0.000 claims description 2
- 230000000717 retained effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
- G06F16/1837—Management specially adapted to peer-to-peer storage networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/108—Transfer of content, software, digital rights or licenses
- G06F21/1085—Content sharing, e.g. peer-to-peer [P2P]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本発明は、P2Pシステムにおけるピア管理サーバーに関する。本発明のピア管理サーバーは、P2Pシステムに接続したピアとのコネクションを設定して前記ピアからメッセージを受信し、メッセージ処理のために前記受信したメッセージに相応するクエリ名及びパラメーターを生成するフロントエンドプロセス処理部、前記クエリ名及びパラメーターをクエリ文にマッピングするためのマッピング情報を含み、前記フロントエンドプロセス処理部から受信した前記クエリ名及びパラメーターに相応するクエリ文を出力するSQLマッププロセス処理部、及びアクティブピアとして動作するピア情報及び各ピアが保有するコンテンツ情報を保持し、前記SQLマッププロセス処理部から出力される前記クエリ文によってデータを更新、または抽出するピアデータベースを含む。The present invention relates to a peer management server in a P2P system. The peer management server of the present invention sets up a connection with a peer connected to a P2P system, receives a message from the peer, and generates a query name and parameters corresponding to the received message for message processing. An SQL map process processing unit for outputting a query statement corresponding to the query name and parameters received from the front end process processing unit, including mapping information for mapping the query name and parameters to a query statement; And a peer database that holds peer information that operates as an active peer and content information that each peer holds, and that updates or extracts data according to the query statement output from the SQL map process processing unit.
Description
本発明は、P2Pシステムのピア管理サーバーに関し、より詳しくは、ピアの間のファイルの送受信のためにピア情報を提供するピア管理サーバー及びピア管理方法に関する。 The present invention relates to a peer management server of a P2P system, and more particularly, to a peer management server and a peer management method for providing peer information for sending and receiving files between peers.
P2Pシステムは、既存のクライアントサーバーの概念から離れて、パソコン(ピア)同士で直接連結かつ検索することで、全ての参加者が供給者及び需要者となる形態の通信システムである。 The P2P system is a communication system in which all participants become suppliers and consumers by directly connecting and searching between personal computers (peers) apart from the existing client server concept.
このようなP2Pシステムは、アメリカの「ナップスター(Napster)」、韓国内の「ソリバダ(Soribada)」等のようなサービスによって、音楽ファイルの共有のために初めて試されたものであり、近来は単なる音楽ファイルの共有ではなく、様々なサービスから利用されている。 Such a P2P system was first tested for sharing music files by services such as “Napster” in the US and “Soribada” in Korea. It is used by various services rather than sharing music files.
例えば、P2Pシステムは、ゲームシステムにおいて、クライアントの間のゲームパケットの交換に使われていると共に、コンテンツ提供業者がサーバーの負担を減らすための手段としても活用されている。 For example, the P2P system is used for exchanging game packets between clients in a game system, and is also used as a means for a content provider to reduce the load on the server.
このようなP2Pシステムは、個人クライアント同士を連結するためにピア情報を提供すべきであり、P2Pサービスプロバイダーは、ピア管理サーバーを用いてP2Pシステムに接続したピア情報を管理する。 Such a P2P system should provide peer information in order to connect individual clients, and a P2P service provider manages peer information connected to the P2P system using a peer management server.
従来の場合、P2Pシステムに接続したピア情報は、ツリー構造(Tree Strucutre)のデータ構造(Data Structure)によって管理されることが一般的であった。図1は、従来のピア情報を管理するツリー構造のデータ構造を示した図である。 In the conventional case, peer information connected to the P2P system is generally managed by a data structure of a tree structure (Data Structure). FIG. 1 is a diagram showing a data structure of a tree structure for managing conventional peer information.
図1に示すように、従来は親ノードと子ノードが有機的に連結されたツリー構造リストによって接続したピア情報が管理され、ピアの接続及び解除を処理するアルゴリズムによってピア情報が更新されていた。 As shown in FIG. 1, conventionally, peer information connected by a tree structure list in which a parent node and a child node are organically linked is managed, and the peer information is updated by an algorithm for processing connection and release of peers. .
このように、データ構造によって接続したピア情報が管理される場合、接続したピア情報の一部が失われる問題があり、ピア情報をデータベースではなくデータ構造によって管理することで、サーバーのメモリー空間を占めすぎるという問題があった。 In this way, when the connected peer information is managed by the data structure, there is a problem that a part of the connected peer information is lost. By managing the peer information by the data structure instead of the database, the memory space of the server is reduced. There was a problem of occupying too much.
特に、管理すべきピア情報が増えていく場合、サーバーのメモリー空間には限界があるものであるため、データ構造によってピア情報を管理することは有効ではなかった。 In particular, when the peer information to be managed increases, the memory space of the server is limited, so it is not effective to manage the peer information by the data structure.
また、従来はユーザのIDと個人情報のように、静的な情報のみがデータベースによって管理されていたが、ピア情報をより効率良く処理するために、データベースにおけるピア情報管理及びデータベースにおける有効なピア情報管理のためのサーバープロセスが求められている。 Conventionally, only static information such as user IDs and personal information is managed by the database. However, in order to process peer information more efficiently, peer information management in the database and effective peers in the database are performed. A server process for information management is required.
本発明では、前記のような従来技術の問題点を解決するため、P2Pシステムに接続したピア情報をデータベースによって効率良く管理できるP2Pシステムにおけるピア管理サーバー及びその方法を提案する。 The present invention proposes a peer management server and method in a P2P system that can efficiently manage peer information connected to the P2P system using a database in order to solve the above-described problems of the prior art.
本発明の他の目的は、ピア管理サーバーの状態によってフロントエンドプロセス及びSQLマッププロセスの生成と消滅が制御できるP2Pシステムにおけるピア管理サーバー及びその方法を提案することである。 Another object of the present invention is to propose a peer management server and a method thereof in a P2P system in which generation and disappearance of a front-end process and an SQL map process can be controlled according to the state of the peer management server.
本発明の他の目的は、データベースの管理とクライアントのメッセージ処理を2元化できるP2Pシステムにおけるピア管理サーバー及びその方法を提案することである。 Another object of the present invention is to propose a peer management server and its method in a P2P system capable of dualizing database management and client message processing.
本発明の他の目的は、コンテンツダウンロード時のみにピアがアクティブピアとして動作されるようにするP2Pシステムにおけるピア管理サーバー及びその方法を提案することである。 Another object of the present invention is to propose a peer management server and method in a P2P system that allows a peer to operate as an active peer only when content is downloaded.
前記のような目的を達成するために、本発明の一側面によると、P2Pシステムに接続したピアとのコネクションを設定して前記ピアからメッセージを受信し、メッセージ処理のために前記受信したメッセージに相応するクエリ名及びパラメーターを生成するフロントエンドプロセス処理部、前記クエリ名及びパラメーターをクエリ文にマッピングするためのマッピング情報を含み、前記フロントエンドプロセス処理部から受信した前記クエリ名及びパラメーターに相応するクエリ文を出力するSQLマッププロセス処理部、及びアクティブピアとして動作するピア情報及び各ピアが保有するコンテンツ情報を保持し、前記SQLマッププロセス処理部から出力される前記クエリ文によってデータを更新、または抽出するピアデータベースを含むことを特徴とするP2Pシステムにおけるピーア管理サーバーが提供される。 In order to achieve the above object, according to one aspect of the present invention, a connection is established with a peer connected to a P2P system, a message is received from the peer, and the received message is processed for message processing. A front-end process processing unit for generating a corresponding query name and parameter, mapping information for mapping the query name and parameter to a query statement, and corresponding to the query name and parameter received from the front-end process processing unit An SQL map process processing unit that outputs a query statement, and holds peer information that operates as an active peer and content information held by each peer, and updates data by the query statement output from the SQL map process processing unit, or The peer database to be extracted Pia management server in a P2P system according to claim Mukoto is provided.
なお、前記ピア管理サーバーは、前記ピア接続及びメッセージ処理状態と、前記クエリ文生成状態と、をチェックする状態判断部、及び前記状態判断部の判断結果に相応して前記フロントエンドプロセス処理部及び前記SQLマッププロセス処理部の生成と消滅を制御する制御部をさらに含むことができる。 The peer management server includes a state determination unit that checks the peer connection and message processing state and the query statement generation state, and the front-end process processing unit and the state corresponding to a determination result of the state determination unit. The apparatus may further include a control unit that controls generation and disappearance of the SQL map process processing unit.
ここで、前記ピアから受信されるメッセージは、ピア登録要求メッセージ、ピア登録解除要求メッセージ、及びコンテンツ登録要求メッセージのうち、少なくとも一つを含む。ピア登録要求メッセージは、前記ピアがダウンロード状態の場合、前記ピアをアクティブピアに登録するためのメッセージであり、前記ピア登録解除要求メッセージは、前記ピアがダウンロード完了状態の場合、前記ピアをアクティブピアから解除するためのメッセージである。 Here, the message received from the peer includes at least one of a peer registration request message, a peer deregistration request message, and a content registration request message. The peer registration request message is a message for registering the peer as an active peer when the peer is in a download state, and the peer deregistration request message is a message indicating that the peer is an active peer when the peer is in a download complete state. It is a message for releasing from.
この際、ピア登録要求メッセージは、ユーザID、アドレス、及び保有コンテンツ情報を含み、前記フロントエンドプロセス処理部は、前記ピア登録要求メッセージに相応する予め設定されたクエリ名と、前記ユーザID、アドレス、及び保有コンテンツ情報に相応するパラメーターと、を生成し、前記SQLマッププロセス処理部は、前記クエリ名及びパラメーターを分析することで、前記クエリ文を生成して前記ピアデータベースからピア情報を抽出する。 At this time, the peer registration request message includes a user ID, an address, and retained content information, and the front-end process processing unit includes a query name set in advance corresponding to the peer registration request message, the user ID, and the address. And a parameter corresponding to the stored content information, and the SQL map process processing unit generates the query sentence by analyzing the query name and parameter, and extracts peer information from the peer database. .
なお、前記SQLマッププロセス処理部は、前記マッピング情報をXML文書の形態にて格納する。 Note that the SQL map process processing unit stores the mapping information in the form of an XML document.
本発明の他の側面によると、P2Pシステムでピア情報を管理する方法は、P2Pシステムに接続したピアからピア登録要求メッセージを受信するステップ、前記ピア登録要求メッセージに相応するクエリ名及びパラメーターを生成するステップ、前記クエリ名及びパラメーターをクエリ文にマッピングするためのマッピング情報を用いて、前記ピア登録要求メッセージに相応するクエリ文を生成するステップ、及び前記クエリ文を用いてピア情報データベースに前記ピアをアクティブピアに登録するステップを含むことを特徴とするピア情報管理方法が提供される。 According to another aspect of the present invention, a method for managing peer information in a P2P system includes receiving a peer registration request message from a peer connected to the P2P system, and generating a query name and parameters corresponding to the peer registration request message. Generating a query statement corresponding to the peer registration request message using mapping information for mapping the query name and parameters to the query statement, and using the query statement in the peer information database. Is registered with the active peer, and a peer information management method is provided.
前記ピア登録要求メッセージ受信ステップにおいて、前記ピア登録要求メッセージは、前記ピアがダウンロード状態の場合、前記ピアをアクティブピアに登録するために前記ピアから受信される。 In the peer registration request message receiving step, the peer registration request message is received from the peer to register the peer with an active peer when the peer is in a download state.
また、前記ピア管理方法は、前記ピアからコンテンツ要求メッセージを受信するステップ、前記コンテンツ要求メッセージに相応するクエリ名及び前記コンテンツ要求メッセージに含まれたコンテンツIDに対するパラメーターを生成するステップ、前記マッピング情報を用いて前記コンテンツ要求メッセージに相応するクエリ名及び前記パラメーターに相応するピア選択クエリ文を生成するステップ、及び前記ピア選択クエリ文によって前記ピアデータベースから前記コンテンツIDと関連したコンテンツを保有するピア情報を抽出して前記ピアに提供するステップをさらに含む。 The peer management method may further include receiving a content request message from the peer, generating a query name corresponding to the content request message and a parameter for the content ID included in the content request message, and mapping information. Using a query name corresponding to the content request message and a peer selection query statement corresponding to the parameter, and peer information holding content associated with the content ID from the peer database by the peer selection query statement. The method further includes extracting and providing to the peer.
この際、前記クエリ名及びパラメーター生成ステップと、前記クエリ文生成ステップは、別途のプロセスによって処理され、前記ピア管理方法は、前記クエリ名及びパラメーター生成ステップと、前記クエリ文生成ステップとの処理のために、前記P2Pシステムの資源割り当て状態を調節するステップをさらに含む。 At this time, the query name and parameter generation step and the query statement generation step are processed by a separate process, and the peer management method includes processing of the query name and parameter generation step and the query statement generation step. For this purpose, the method further comprises adjusting a resource allocation state of the P2P system.
本発明の他の側面によると、前述の方法を実行するコマンドが具現されたプログラムであり、デジタルデータ処理装置に設けられて、前記デジタルデータ処理装置によって読み取り可能なプログラムを記録した記録媒体が提供される。 According to another aspect of the present invention, there is provided a recording medium on which a program for executing the above-described method is embodied and recorded in the digital data processing apparatus and readable by the digital data processing apparatus Is done.
本発明の他の側面によると、P2Pシステムに接続されるピアに組み込まれ、前記ピアがP2Pサービスの提供を受けるようにするエージェントプログラムが記録された記録媒体であって、前記ピアと前記P2Pシステムとの間の連結を設定する連結設定モジュール、前記P2Pシステムにコンテンツ要求メッセージを生成して転送し、前記P2Pシステムから前記コンテンツを含んでいる他のピア情報を受信するピア情報受信モジュール、前記ピア情報受信モジュールによって受信された前記他のピア情報を基にして前記他のピアとの連結を設定することで、前記他のピアから前記コンテンツをダウンロードするピア連結設定モジュール、前記ピアが前記コンテンツをダウンロードしているか否かをチェックするダウンロードチェックモジュール、前記ダウンロードチェックモジュールによるチェック結果によって、ピア登録要求メッセージやピア登録解除要求メッセージを生成し、前記P2Pシステムに転送するピア登録/解除モジュールを含むことを特徴とするエージェントプログラムが記録された記録媒体が提供される。 According to another aspect of the present invention, there is provided a recording medium recorded with an agent program incorporated in a peer connected to a P2P system so that the peer receives provision of a P2P service, the peer and the P2P system A connection setting module for setting a connection between the P2P system, a peer information receiving module for generating and transferring a content request message to the P2P system, and receiving other peer information including the content from the P2P system, the peer A peer connection setting module that downloads the content from the other peer by setting the connection with the other peer based on the other peer information received by the information receiving module; Download check module to check whether it is downloaded And an agent program including a peer registration / cancellation module that generates a peer registration request message and a peer registration cancellation request message according to the check result of the download check module and forwards them to the P2P system. A recording medium is provided.
以下、添付の図を参照して、本発明によるピア管理サーバーの実施の形態を詳細に説明する。 Hereinafter, embodiments of a peer management server according to the present invention will be described in detail with reference to the accompanying drawings.
図2は、本発明の一実施の形態に係るピア管理サーバーが適用されるP2Pシステムの構成を示した図である。同図に示すように、本発明の一実施の形態に係るP2Pシステムは、複数のユーザクライアント及びピア管理サーバー200を含み、各々のユーザクライアントにはP2Pエージェントプログラムが設置される。
FIG. 2 is a diagram illustrating a configuration of a P2P system to which a peer management server according to an embodiment of the present invention is applied. As shown in the figure, the P2P system according to an embodiment of the present invention includes a plurality of user clients and a
本発明が適用されるP2Pシステムは、様々な形態のP2Pサービスに適用可能である。本発明のP2Pシステムは、一般の音楽や動画ファイルを共有するためのファイル共有サービスに適用可能である。ファイル共有サービスは、ユーザが有しているファイルリストをP2Pサービスシステムに接続したユーザが確認でき、特定のファイルを特定のピアからダウンロード可能にしたサービスである。 The P2P system to which the present invention is applied can be applied to various forms of P2P services. The P2P system of the present invention is applicable to a file sharing service for sharing general music and video files. The file sharing service is a service that allows a user connected to the P2P service system to check a file list owned by the user and download a specific file from a specific peer.
このような一般的なファイル共有サービス以外にも、本発明は、P2Pを用いたコンテンツ転送サービスにも利用できる。通常、コンテンツプロバイダにおけるコンテンツ提供は、CDN(Contents Delivery Network)を用いてなされるが、本発明によるP2Pシステムを用いて所定の費用がかかるCDNを用いずにコンテンツを提供することが可能である。この場合、ユーザがサービスプロバイダから提供を受けようとするコンテンツを格納しているピアリストがコンテンツを要求したユーザに提供され、ユーザはピアリストに含まれたピアのうち、特定のピアからコンテンツをダウンロードすることで、CDNを用いずにコンテンツを提供することが可能である。 In addition to such a general file sharing service, the present invention can also be used for a content transfer service using P2P. Normally, content provision in a content provider is performed using a CDN (Contents Delivery Network), but it is possible to provide content using a P2P system according to the present invention without using a CDN that requires a predetermined cost. In this case, a peer list storing content that the user wants to receive from the service provider is provided to the user who requested the content, and the user can receive content from a specific peer among the peers included in the peer list. By downloading, it is possible to provide content without using a CDN.
前述のサービス以外にも、本発明は、P2Pを用いて提供できる様々なサービスに適用可能である。 In addition to the services described above, the present invention can be applied to various services that can be provided using P2P.
以下、P2Pを用いてコンテンツプロバイダがユーザによって要求されたコンテンツを提供する場合を主な例にして本発明を説明する。 Hereinafter, the present invention will be described mainly using a case where a content provider provides content requested by a user using P2P.
ユーザクライアントは、ネットワークを介して通信可能であり、P2Pエージェントプログラムが駆動可能な如何なる種類の装置も含むことができる。ユーザクライアントとしては、一般のPCは勿論、ノート・パンコン、PDA及び移動通信端末のような装置が使われることができる。 User clients can include any type of device that can communicate over a network and can be driven by a P2P agent program. As a user client, devices such as a notebook computer, a PDA, and a mobile communication terminal can be used as well as a general PC.
P2Pシステムに接続した各々のユーザクライアントは一つのピアとして動作し、本明細書において、ピアとユーザクライアントという用語を併用するようにする。 Each user client connected to the P2P system operates as one peer, and the terms peer and user client are used together herein.
ピア管理サーバー200は、ユーザから特定のコンテンツが要求される場合、要求されたコンテンツが提供可能なピア情報を提供する。例えば、ユーザから『ムーランルージュ』という映画が要求された場合、ピア管理サーバー200は、『ムーランルージュ』という映画ファイルが提供可能なピア情報を抽出して当該クライアントに提供する。
When specific content is requested from a user, the
ピア管理サーバー200は、ユーザから要求されたコンテンツが提供可能なピア情報を提供するために、P2Pシステムに接続し、コンテンツ提供ができるピアリスト及び各ピアが格納しているコンテンツ情報を管理する。
The
前述のように、従来の場合、ピア管理サーバーはP2Pシステムに接続したピアリスト及び各ピアが格納しているコンテンツ情報をデータ構造(Data Structure)の形態として管理していた。従来の場合、ピアリスト及び各ピアが格納しているコンテンツをデータ構造の形態としてメモリーで管理し、ユーザIDのように変わらない静的な情報のみをデータベースで管理することが一般的であった。また、ユーザからピア情報の要求のような要求メッセージが受信される場合、ピア管理サーバーは、データ構造に対して予め設定されたアルゴリズムを実行し、ユーザの要求情報を処理していた。 As described above, in the conventional case, the peer management server manages the peer list connected to the P2P system and the content information stored in each peer in the form of a data structure (Data Structure). In the past, it was common to manage the peer list and the content stored in each peer in the form of a data structure in the memory, and manage only static information that does not change like the user ID in the database. . Also, when a request message such as a request for peer information is received from a user, the peer management server has executed a preset algorithm for the data structure to process the user request information.
しかし、本発明の一実施の形態に係るピア管理サーバーは、P2Pシステムに接続したピアリスト及び各ピアが格納しているコンテンツ情報をデータベースで管理するようにする。 However, the peer management server according to an embodiment of the present invention manages the peer list connected to the P2P system and the content information stored in each peer in a database.
本発明の一実施の形態に係ると、ピア情報をデータベースで管理することによって、管理すべきピア用量が増えていく場合、多数のデータベースでピア情報を管理することも可能である。 According to an embodiment of the present invention, when the peer dose to be managed increases by managing the peer information in the database, the peer information can be managed in a large number of databases.
また、本発明の一実施の形態に係るピア管理サーバーは、接続したピア情報をデータベースで管理するために、クライアントの接続及びクライアントから受信したメッセージを処理するプロセスと、データベースのクエリ文を生成するプロセスと、を独立的に運営する。 In addition, the peer management server according to an embodiment of the present invention generates a process for processing a client connection and a message received from the client, and a database query statement in order to manage the connected peer information in the database. Operate the process independently.
ピア情報を、データ構造を用いて管理していた従来の場合、クライアントの接続及びメッセージ処理と、データ構造にデータを挿入、抽出及び更新するアルゴリズムは、一つのプロセスによって実行されるしかなかった。さらに、従来の場合、静的な情報はデータベースで管理されていたが、データベースに対するクエリ文も同一な単一のプロセスによって生成されていた。しかし、本発明によると、一つのプロセスによって行なわれていた機能が別個のプロセスによって行なわれる。 In the conventional case where peer information is managed using a data structure, client connection and message processing, and an algorithm for inserting, extracting and updating data in the data structure can only be executed by one process. Furthermore, in the past, static information was managed in a database, but a query statement for the database was also generated by the same single process. However, according to the present invention, the function performed by one process is performed by a separate process.
クライアントの接続とメッセージ処理及びデータベースクエリ文の生成を別個のプロセスによって処理する方法、及びこれによる利点に対する詳細な説明は、他の図を参照して行う。 A detailed description of how client connections and message processing and database query statement generation are handled by separate processes, and the advantages thereof, will be given with reference to other figures.
各ユーザクライアントに設置されるエージェントプログラムは、ユーザクライアントがP2Pネットワークにおいてピアとして動作するように、ピア管理サーバーとの通信を介してピア登録を行う。 The agent program installed in each user client performs peer registration through communication with the peer management server so that the user client operates as a peer in the P2P network.
本発明の一実施の形態に係ると、エージェントプログラムは、ユーザクライアントが他のピアからコンテンツをダウンロードしている場合のみにピアとして動作するように、ピア登録及びピア登録解除を行う。 According to an embodiment of the present invention, the agent program performs peer registration and peer deregistration so that the user program operates as a peer only when a user client is downloading content from another peer.
従来の場合、P2Pのためにユーザクライアントに設けられるエージェントプログラムは、ユーザクライアントの動作のうち、ユーザクライアントが常にコンテンツを提供するピアとして動作するように制御することが一般的であった。 Conventionally, an agent program provided in a user client for P2P is generally controlled so that the user client always operates as a peer that provides content, among the operations of the user client.
しかし、このようにユーザクライアントが常にピアとして動作するように設定される場合、ユーザクライアントのリソースがP2P通信によって無駄に使われてしまう問題があった。例えば、P2Pコネクションの処理によって、ユーザが行う他の作業処理が遅延したり、CPUに過度な負荷が生じたりする問題などが発生した。 However, when the user client is set to always operate as a peer as described above, there is a problem that the resource of the user client is wasted by P2P communication. For example, the processing of the P2P connection causes a problem that other work processing performed by the user is delayed or an excessive load is generated on the CPU.
本発明では、このような従来の問題点を解決するために、ユーザクライアントが他のピアからコンテンツをダウンロードしている場合のみに、他のクライアントにコンテンツを提供するピアとして動作するようにする。 In the present invention, in order to solve such a conventional problem, only when a user client downloads content from another peer, the user client operates as a peer that provides content to the other client.
前述のピア登録動作以外にも、エージェントプログラムは、ピア管理サーバーからユーザが要求したコンテンツを保有するピア情報を受信し、当該ピアとの連結を設定してコンテンツをダウンロードする機能を行う。 In addition to the above-described peer registration operation, the agent program performs a function of receiving the peer information holding the content requested by the user from the peer management server, setting the connection with the peer, and downloading the content.
図3は、本発明の好ましい一実施の形態に係るピア管理サーバーの構成を示したブロック図である。同図に示すように、ピア管理サーバー200は、状態判断部300、制御部302、フロントエンドプロセス処理部304、SQLマッププロセス処理部306及びピアデータベース308を含むことができる。
FIG. 3 is a block diagram showing a configuration of a peer management server according to a preferred embodiment of the present invention. As shown in the figure, the
図3において、フロントエンドプロセス処理部304は、各ピアに設置されるエージェントプログラムとの通信を担当することで、フロントエンドプロセス機能を行う。ここで、フロントエンドプロセス機能とは、ユーザクライアントとの連結設定機能と、ユーザクライアントから受信される要求メッセージの処理機能と、を含む。
In FIG. 3, a front-end
ユーザクライアントとの連結設定のために、フロントエンド処理部304は、ユーザクライアントから連結設定が要求される場合、ユーザクライアントとのコネクションを保持するが、ここでコネクションはTCPコネクション、またはUDPコネクションである。
For the connection setting with the user client, the front
フロントエンド処理部304がユーザクライアントから受信して処理する要求メッセージは、ピア登録要求メッセージ、ピア登録解除要求メッセージ及びコンテンツ要求メッセージを含むことができる。
The request messages received and processed by the front-
ピア登録要求メッセージは、ピアが、自分をコンテンツ提供ができるアクティブピアとして登録するように要求するメッセージである。前述のように、本発明の一実施の形態によると、エージェントプログラムは、他のピアからのコンテンツダウンロードが感知されると、ピア登録要求メッセージを生成してフロントエンド処理部304に転送する。
The peer registration request message is a message requesting that the peer register as an active peer that can provide content. As described above, according to an embodiment of the present invention, when a content download from another peer is detected, the agent program generates a peer registration request message and transfers it to the front
ピア登録解除要求メッセージは、アクティブピアとして登録されているピアの登録解除を要求するメッセージである。本発明の一実施の形態によると、エージェントプログラムは、他のピアからコンテンツのダウンロードが完了する場合、ピア登録解除要求メッセージを生成して、フロントエンド処理部304に転送する。
The peer deregistration request message is a message requesting deregistration of a peer registered as an active peer. According to an embodiment of the present invention, the agent program generates a peer deregistration request message and transfers it to the front-
コンテンツ要求メッセージは、特定のコンテンツを格納しているピア情報を要求するメッセージである。ユーザが特定のコンテンツのダウンロードを要求する場合、エージェントプログラムは、当該コンテンツのID情報を含むコンテンツ要求メッセージを生成して、フロントエンド処理部304に転送する。
The content request message is a message for requesting peer information storing specific content. When the user requests download of specific content, the agent program generates a content request message including ID information of the content and transfers it to the front
前述のメッセージ以外にも、様々な種類のメッセージがピアからフロントエンド処理部304に伝達でき、フロントエンド処理部304は、エージェントプログラムによって生成されたメッセージを受信し、これに相応するクエリ名/パラメーターを生成する機能を有する。
In addition to the messages described above, various types of messages can be transmitted from the peer to the front-
従来の場合、ピア管理サーバーは、ピアから前述の要求メッセージを受信する場合、要求に相応するアルゴリズムを実行してデータ構造のデータにピアを登録、またはデータ構造のデータからピアを選択する機能を行っていた。さらに、データベースとの通信が必要な場合、ユーザの要求メッセージを分析して、一つのプロセスでクエリ文を生成していた。 In the conventional case, when receiving the above request message from the peer, the peer management server executes a function corresponding to the request to register the peer in the data of the data structure, or select the peer from the data of the data structure. I was going. Further, when communication with the database is required, a user request message is analyzed and a query statement is generated in one process.
しかし、本発明の好ましい実施の形態に係るフロントエンド処理部304は、要求メッセージを受信する場合、直接クエリ文を生成することなく、要求メッセージに相応するクエリ名及びパラメーターのみを生成して、SQLマップ処理部306に提供する。
However, when receiving the request message, the front-
ここで、クエリ名はフロントエンド処理部304及びSQLマッププロセス処理部306の間に任意に定められたクエリ名であり、パラメーターは、コンテンツID、ユーザIDなどのように、クエリ文の生成に必要な情報を意味する。
Here, the query name is a query name arbitrarily determined between the front-
このようなフロントエンドプロセス処理部のモジュール構成に対する一実施の形態が図4に示されてある。図4に示すように、本発明の一実施の形態に係るフロントエンドプロセス処理部304は、認証モジュール500、連結設定モジュール502、エージェント通信モジュール504、ランダムID割り当てモジュール506、クエリ名/パラメーター生成モジュール508、及びランダム範囲設定モジュール510を含むことができる。
One embodiment for the module configuration of such a front-end process processor is shown in FIG. As shown in FIG. 4, the front-end
認証モジュール500は、連結設定を要求するユーザが、認証されたユーザか否かを判断する機能を有する。一例として、認証モジュール500は、ユーザID及びパスワード情報を用いて、認証されたユーザか否かを判断することができる。勿論、この他にも、認証書を利用した認証方式のように、公知の様々な認証方式が利用されることができる。認証モジュール500は、別途の認証サーバーと連動して、ユーザ認証を処理することができる。
The
連結設定モジュール502は、P2Pネットワークに接続しようとするユーザクライアントとの連結設定を行う。連結設定は、エージェントプログラムによって制御されるユーザクライアントがTCP接続要求メッセージを転送し、連結設定モジュール502がこれを受諾する方式で行われることができる。勿論、必要に応じてUDPコネクションが設定されることもできる。
The
エージェント通信モジュール504は、エージェントプログラムが生成する要求メッセージを受信し、これに対する回答メッセージをユーザクライアントに転送する機能を有する。前述のように、要求メッセージは、ピア登録要求メッセージ、ピア登録解除要求メッセージ、及びコンテンツ要求メッセージを含むことができ、エージェント通信モジュール504は、前述のメッセージに対する回答メッセージを当該ユーザクライアントに転送する。
The
ランダムID割り当てモジュール506は、ピア登録要求メッセージを受信する場合、各ピアにランダムIDを割り当てる機能を有する。ランダムID割り当ては、ピア情報をクライアントに提供する時に、ランダムにピア情報を提供するために行われる作業である。本発明の実施の形態によって動的に変わるピア情報がデータベースに格納される場合、データベースクエリ文を通じてユーザの要求に相応するピア情報をランダムに抽出することができない。ランダムID割り当てモジュール506は、このような問題を解決するための作業である。
The random
ランダム範囲設定モジュール510は、コンテンツ要求メッセージのように、ピア選択を要求するメッセージが受信される場合、ピア選択のための番号範囲をランダムに設定する機能を有する。ランダムに設定された範囲はパラメーターに出力され、SQLマッププロセス処理部306は、ピアを選択する時に、ランダム範囲設定モジュールから設定した範囲を用いてピア選択クエリ文を生成する。
The random
前述の実施の形態においては、各ピアの番号もランダムに付与し、ピアを選択するための範囲もランダムに設定すると記載した。しかし、ピアの番号は順次に付与するが、範囲をランダムに設定したり、ピアの番号はランダムに付与するが、範囲は固定的に設定したりすると、ピアのランダム選択が可能となるはずである。ピアのランダム選択のためのより詳細な方法は、別途の図を通じて説明する。 In the above-described embodiment, it has been described that the number of each peer is also assigned at random, and the range for selecting the peer is also set at random. However, peer numbers are assigned sequentially, but if the range is set at random or the peer number is assigned at random, but the range is set fixedly, it should be possible to select peers randomly. is there. A more detailed method for random selection of peers will be described through a separate figure.
クエリ名/パラメーター生成モジュール508は、エージェント通信モジュール504が受信したメッセージ処理のためのクエリ名及びパラメーターを生成する。前述のように、フロントエンドプロセス処理部304は、メッセージ処理のためのクエリ文を直接生成することなく、受信したメッセージに相応するクエリ名及びパラメーターのみを生成して、SQLマッププロセス処理部306に伝達する。
The query name /
例えば、ピア登録要求メッセージを受信した場合、クエリ名/パラメーター生成モジュール508は、RegisterPeerという予め設定されたクエリ名とピア登録要求メッセージに含まれたユーザID、アドレス及びコンテンツ情報に相応するパラメーターを生成して、SQLマッププロセス処理部306に伝達する。
For example, when a peer registration request message is received, the query name /
また、図3を参照すると、SQLマッププロセス処理部306は、SQLマッププロセスを処理する機能を行うものであって、ここで、SQLマッププロセスとは、フロントエンドプロセス処理部304からクエリ名/パラメーターを受信して、クエリ名/パラメーターに相応するクエリ文を生成する機能を含む。生成されたクエリ文は、ピアデータベース308から認識できる言語として、ピアデータベース308に提供される。
Referring to FIG. 3, the SQL map
このようなSQLマッププロセス処理部306の動作構造を、図5を参照して具体的に説明する。同図に示すように、SQLマッププロセス処理部306は、フロントエンドプロセス処理部304からクエリ名及びパラメーターを受信する。図5には、クエリ名「GetUserInfo」と、パラメーター「foo」をフロントエンドプロセス処理部304から受信することが示されている。
The operation structure of the SQL map
SQLマッププロセス処理部306は、クエリ名及びパラメーターをSQL文にマッピングするための情報を有し、クエリ名及びパラメーターを受信したSQLマッププロセス処理部306は、前記マッピング情報を用いてデータベースランゲージであるクエリ文を出力する。
The SQL map
このようなクエリ文は、データベースのスキーマ、または客体の間の関係を定義するデータベース定義文、データベースデータの挿入/削除/更新のような操作のためのデータベース操作文、データベースのデータを正しく保持し、無欠性を確保するためのデータベース制御文を全て含むことができる。 Such query statements correctly maintain database schema, database definition statements that define relationships between objects, database manipulation statements for operations such as inserting / deleting / updating database data, and database data. All database control statements for ensuring integrity can be included.
本発明の一実施の形態によると、マッピング情報は、XML形態の文書にて格納することができる。具体的に、クエリ名「GetUserInfo」に対するマッピングのためのXML文書は、図5の左側のボックスに示されたように定義することができる。 According to one embodiment of the present invention, the mapping information can be stored in a document in XML format. Specifically, an XML document for mapping to the query name “GetUserInfo” can be defined as shown in the left box of FIG.
SQLマッププロセス処理部306は、前述のようなXMLマッピング情報を用いて、図5に示すように、SELECT...WHERE ID=:id、:id=「foo」というクエリ文を生成してピアデータベース308に提供し、ピアデータベースは、このようなクエリ文を受信してfooというユーザのユーザ情報を抽出する。
The SQL map
このように、ユーザから受信される要求メッセージを処理するプロセス(フロントエンドプロセス)と、ユーザの要求メッセージに相応するクエリ文を生成するプロセス(SQLマッププロセス)と、を分離する本発明の実施の形態は様々な利点を有している。 As described above, the process of processing the request message received from the user (front-end process) and the process of generating a query statement corresponding to the user's request message (SQL map process) are separated from each other. The form has various advantages.
まず、メッセージ及びコネクション処理プロセスとクエリ文生成プロセスを分離することで、ピア管理サーバーの状態によって行うプロセスを有効に調節することができる。例えば、コネクション処理及びメッセージ処理要求がクエリ文生成要求に比べて多い場合、ピア管理サーバーはより多い数のフロントエンドプロセス処理部304を生成して運用することができる。また、メッセージ処理に比べて、クエリ文の生成により多いリソースがかかる場合、ピア管理サーバーは、より多い数のSQLマッププロセス処理部406を生成して運用することができる。つまり、ピア管理サーバーの状態によって、フロントエンドプロセス処理部304及びSQLマッププロセス処理部306を適宜生成することで、制限されたリソースを有効に活用することができる。
First, by separating the message and connection processing process and the query statement generation process, it is possible to effectively adjust the process to be performed according to the state of the peer management server. For example, when there are more connection processing and message processing requests than query statement generation requests, the peer management server can generate and operate a larger number of front-end
さらに、データベースが変更されても、SQLマッププロセスのみが更新されるだけであり、フロントエンドプロセスは更新される必要がないため、データベースのアップデート時にかかる時間及び費用を減らすことができ、多数のデータベースが使われる場合、これらに対する中央集中的な管理が容易になる。 Furthermore, even if the database is changed, only the SQL map process is updated, and the front-end process does not need to be updated. Therefore, the time and cost when updating the database can be reduced. Centralized management of these becomes easier.
ピアデータベース308には、SQLマッププロセス処理部306によって生成されたクエリ文に従って接続したピア情報が追加/削除/更新される。本発明の一実施の形態によると、ピアデータベース308には、登録されたピアのユーザID、ピアアドレス、ピアが格納しているコンテンツ情報が格納されることができる。また、ピアデータベース308には、各ピア別に後述するランダムID情報が格納される。
In the
また図3を参照すると、状態判断部300は、ピア管理サーバー200の状態を判断する機能を有し、ここで状態判断は、メッセージ及びコネクション処理のためにサーバーリソースが多くかかるか否か、または、クエリ文の生成のためにサーバーリソースが多くかかるか否か、を判断する。
Referring to FIG. 3, the
制御部302は、状態判断部300の判断結果によって、フロントエンドプロセス処理部304、またはSQLマッププロセス処理部306を生成や消滅させる機能を有する。
The
図3には、ピア管理サーバーがフロントエンドプロセス処理部304及びSQLマッププロセス処理部306を両方含むと示されてあるが、変形された実施の形態においては、フロントエンドプロセス処理部304及びSQLマッププロセス処理部306が、別個のサーバーに含まれることもできるということは、当業者にとって自明なことである。
Although FIG. 3 shows that the peer management server includes both the front-end
図6は、本発明の一実施の形態に係るSQLマッププロセス処理部とピアデータベースとの連結構造を示した図である。同図に示すように、SQLマッププロセス処理部306は、フロントエンドプロセス処理部304とは独立的に多数のピアデータベース308と連結されることができる。また、ピアデータベース308が追加されても、フロントエンドプロセス処理部304及びクライアントのエージェントプログラムのコードは変更される必要がなく、SQLマッププロセス処理部306のコードのみが変更される。
FIG. 6 is a diagram showing a connection structure between the SQL map process processing unit and the peer database according to the embodiment of the present invention. As shown in the figure, the SQL map
さらに、コード及びSQLが混ざることがなく、SQLがSQLマッププロセス処理部306で管理されるため、SQLに対する中央集中的な管理が可能となる。特に、モニタリング及び統計情報を算出することが容易であり、遂行時間の長い非正常なクエリ文も容易に検出することができる。
Furthermore, since codes and SQL are not mixed and SQL is managed by the SQL map
図7は、本発明の一実施の形態に係るエージェントプログラムのモジュール構成を示したブロック図である。このようなエージェントプログラムは、ユーザクライアントに組み込まれ、ユーザクライアントが本発明に係るピア管理サーバーに接続できるようにする。同図に示すように、エージェントプログラムは、ダウンロードチェックモジュール400、連結設定モジュール402、ピア登録/解除モジュール404、ピア情報受信モジュール406、ピア連結設定モジュール408、及びコンテンツ格納モジュール410を含むことができる。
FIG. 7 is a block diagram showing a module configuration of the agent program according to the embodiment of the present invention. Such an agent program is incorporated in the user client and enables the user client to connect to the peer management server according to the present invention. As shown in the figure, the agent program may include a download check module 400, a
ダウンロードチェックモジュール400は、エージェントプログラムが他のピアからコンテンツをダウンロードしているか否かをチェックする機能を有する。前述のように、本発明の一実施の形態によると、ダウンロードしているか否かによって、ピアがアクティブまたはインアクティブ状態に登録されるところ、ダウンロードチェックモジュール400は、エージェントプログラムがダウンロードしているか否かを持続的にチェックする。 The download check module 400 has a function of checking whether the agent program is downloading content from another peer. As described above, according to one embodiment of the present invention, the download check module 400 determines whether the agent program is downloading when the peer is registered in the active or inactive state depending on whether or not it is downloaded. Check continuously.
連結設定モジュール402は、ピア管理サーバー200との連結を設定する機能を有する。通常、P2Pエージェントプログラムは、連結設定の時にピア登録要求メッセージを転送するが、本発明の一実施の形態によると、連結設定モジュール402は、ピア管理サーバー200との連結設定のみを行い、連結設定の時にピア登録要求メッセージを転送することはない。前述のように、連結設定モジュール402は、ピア管理サーバー200とTCP連結設定を行うことができ、必要に応じてUDPコネクションを設定することもできる。
The
ピア登録/解除モジュール404は、ダウンロードチェックモジュール400のダウンロードチェック結果によって、ピア登録要求メッセージまたはピア登録解除要求メッセージを生成して転送する機能を有する。 The peer registration / cancellation module 404 has a function of generating and transferring a peer registration request message or a peer registration cancellation request message according to the download check result of the download check module 400.
ダウンロードチェックモジュール400からダウンロード状態が感知された場合、ピア登録/解除モジュール404は、ピア登録要求メッセージをピア管理サーバー200に転送し、ピア管理サーバー200は、ピア登録手続きを行う。ピア登録要求の時、クライアントに格納されたコンテンツ情報がピア登録要求メッセージに含まれる。
If a download state is detected from the download check module 400, the peer registration / cancellation module 404 transfers a peer registration request message to the
ダウンロードチェックモジュール400からダウンロード完了状態が感知された場合、ピア登録/解除モジュール404は、ピア登録解除要求メッセージをピア管理サーバー200に転送し、ピア管理サーバー200はピア登録解除手続きを行う。
When the download completion state is detected from the download check module 400, the peer registration / cancellation module 404 transfers a peer registration cancellation request message to the
ピア情報受信モジュール406は、ピア管理サーバー200にコンテンツを要求し、ピア管理サーバー200からピア情報を受信する機能を有する。ピア情報受信モジュール406は、コンテンツ要求メッセージを生成してピア管理サーバー200に転送し、コンテンツ要求メッセージには、コンテンツを識別することができるコンテンツID情報が含まれる。ピア情報受信モジュール406は、コンテンツ要求メッセージに応答するピア情報をピア管理サーバー200から受信する。ここで、ピア情報は、一つのピアのみを含むこともでき、複数のピアリストを含むこともできる。
The peer information receiving module 406 has a function of requesting content from the
ピア連結設定モジュール408は、ピア情報受信モジュール406が受信したピア情報を基にしてコンテンツを受信するピアとの連結を設定して、コンテンツをダウンロードする機能を有する。ピアとの連結を設定してコンテンツをダウンロードすることは一般的なP2P技術に過ぎないため、これに対する詳細な説明は省略する。
The peer
コンテンツ格納モジュール410は、他のピアから受信するコンテンツ情報を予め設定された領域に格納する機能を有する。ユーザが受信したコンテンツが不法的に用いられることを防ぐために、コンテンツ格納モジュール410は、受信したコンテンツを暗号化して格納した方が望ましい。 The content storage module 410 has a function of storing content information received from other peers in a preset area. In order to prevent the content received by the user from being illegally used, the content storage module 410 desirably stores the received content encrypted.
図8は、本発明の一実施の形態に係るユーザクライアントが、ピア登録及びピア登録解除を要求する動作を示したフローチャートである。 FIG. 8 is a flowchart showing an operation in which a user client according to an embodiment of the present invention requests peer registration and peer registration cancellation.
図8を参照すると、まず、ユーザクライアントは、エージェントプログラムを通じて特定のコンテンツを要求するコンテンツ要求メッセージをピア管理サーバーに転送する(S600)。 Referring to FIG. 8, first, the user client transmits a content request message for requesting specific content through the agent program to the peer management server (S600).
ユーザクライアントは、コンテンツ要求メッセージに相応してピア管理サーバー200から転送されるピア情報を受信する(S602)。本発明の一実施の形態によると、ピア管理サーバー200は、特定のコンテンツを格納しているピア情報がユーザクライアントに均等に提供されるようにピアをランダムに選択するが、これに対する詳細な説明は後述する。
The user client receives the peer information transferred from the
ピア情報を受信したユーザクライアントは、エージェントプログラムによってピア情報に含まれたアドレス情報を用いて、当該ピアとの連結を設定する(S604)。当該ピアとの連結が設定されると、ユーザクライアントは連結が設定されたピアからコンテンツをダウンロードする(S606)。 The user client that has received the peer information sets up a connection with the peer using the address information included in the peer information by the agent program (S604). When the connection with the peer is set, the user client downloads content from the peer set with the connection (S606).
他のピアからダウンロードを開始するのが感知されると、エージェントプログラムはユーザクライアントがアクティブピアに登録されるようにピア登録要求メッセージをピア管理サーバー200に転送することで、ピア登録手続きを行う(S608)。
When it is detected that the download is started from another peer, the agent program performs a peer registration procedure by transferring a peer registration request message to the
このようなピア登録手続きを通じて、当該ピアがアクティブピアに登録されると、他のユーザクライアントがコンテンツを要求するようになり、これを通じて当該ピアは他のユーザクライアントのコンテンツ要求に応答してコンテンツを転送するようになる。 Through this peer registration procedure, when the peer is registered as an active peer, other user clients will request content, through which the peer will respond to content requests from other user clients. To transfer.
以後、エージェントプログラムは、ユーザクライアントのダウンロードが完了したか否かをモニタリングする(S612)。 Thereafter, the agent program monitors whether the downloading of the user client is completed (S612).
ダウンロードが完了すると、エージェントプログラムは、ピア登録解除要求メッセージをピア管理サーバー200に伝達し、ピア登録解除手続きを行うことで、当該ピアのアクティブ状態を解除する(S614)。
When the download is completed, the agent program transmits a peer deregistration request message to the
図9は、本発明の一実施の形態に係るピア登録過程を示したフローチャートである。 FIG. 9 is a flowchart illustrating a peer registration process according to an embodiment of the present invention.
図9を参照すると、ユーザクライアントに設置されたエージェントプログラムは、ユーザクライアントが他のピアからコンテンツをダウンロードしているか否かをモニタリングする(S900)。 Referring to FIG. 9, the agent program installed in the user client monitors whether the user client is downloading content from another peer (S900).
コンテンツダウンロードが感知された場合、エージェントプログラムは、ピア登録要求メッセージを生成する(S902)。このようなピア登録要求メッセージのフィールド構成に対する一実施の形態が図12に示されてある。同図に示すように、ピア登録要求メッセージは、識別子フィールド1200、ユーザIDフィールド1202、アドレスフィールド1204及びコンテンツIDフィールド1206のうち、少なくとも一つを含む。
When the content download is detected, the agent program generates a peer registration request message (S902). An embodiment for the field structure of such a peer registration request message is shown in FIG. As shown in the figure, the peer registration request message includes at least one of an
識別者フィールド1200には、ピア登録要求メッセージであることを識別するための識別子が予め設定されたコード形態に記録される。
In the
ユーザIDフィールド1202には、ピア登録を要求するユーザのID情報が記録され、アドレス1204フィールドにはユーザクライアントのIPアドレス及びポート番号が記録される。コンテンツID1206フィールドには、ユーザクライアントが保有しているコンテンツを識別することができるID情報が記録される。ここで、コンテンツIDに相応するコンテンツは、サービス提供者によって提供されるコンテンツは勿論、ユーザによって製作されたコンテンツ(User Created Contents:UCC)も含むことができる。
The
生成されたピア登録要求メッセージは、フロントエンドプロセス処理部304から受信され(S904)、フロントエンドプロセス処理部304は、ピア登録要求メッセージに相応するクエリ名及びピア登録要求メッセージに含まれたユーザID、アドレス及びコンテンツIDに対するパラメーターを生成する(S906)。
The generated peer registration request message is received from the front end process processing unit 304 (S904), and the front end
生成されたクエリ名及びパラメーターは、SQLマッププロセス処理部306に伝達され、SQLマッププロセス処理部306は、マッピング情報を用いて伝達されたクエリ名及びパラメーターに相応するクエリ文を生成する(S910)。この時、生成されたクエリ文は新しいピア情報(ユーザID、アドレス、コンテンツID)をデータベースに挿入するためのクエリ文である。
The generated query name and parameters are transmitted to the SQL map
図10は、本発明の一実施の形態に係るピア管理サーバーからピア情報を提供する過程を示したフローチャートである。 FIG. 10 is a flowchart illustrating a process of providing peer information from a peer management server according to an embodiment of the present invention.
図10を参照すると、ユーザクライアントから特定のコンテンツのID情報を含むコンテンツ要求メッセージがフロントエンドプロセス処理部304に転送される(S1000)。 Referring to FIG. 10, a content request message including ID information of a specific content is transferred from the user client to the front end process processing unit 304 (S1000).
フロントエンドプロセス処理部304は、コンテンツ要求メッセージに相応するクエリ名及びコンテンツ要求メッセージに含まれたコンテンツIDに対するパラメーターを生成する(S1002)。
The front-end
生成されたクエリ名及びパラメーターは、SQLマッププロセス処理部306に伝達され、SQLマッププロセス306は、パラメーター及びクエリ名を利用して要求されたコンテンツを保有しているピアをランダムに選択するためのクエリ文を生成する(S1006)。ランダム選択のためのクエリ文は、図11を参照して後述する。
The generated query name and parameter are transmitted to the SQL map
SQLマッププロセス処理部306は、生成されたクエリ文に相応するピア情報をピアデータベース308から受信し(1008)、受信されたピア情報をフロントエンドプロセス処理部304に提供する(S1010)。
The SQL map
フロントエンドプロセス処理部304は、ピア情報をユーザクライアントに転送する(S1012)。このような過程を通じてピア情報を受信したユーザクライアントは、提供されたピア情報を用いて当該ピアとの連結を設定し、コンテンツをダウンロードする。
The front-end
図11は、本発明の一実施の形態によってユーザが要求したコンテンツを保有するピアをランダムに選択するための過程を示したフローチャートである。 FIG. 11 is a flowchart illustrating a process for randomly selecting a peer having content requested by a user according to an embodiment of the present invention.
前述のように、本発明のように動的に変わり続けるピア情報がピアデータベースによって管理される場合、各ピアに対するコネクションが均一に保持されるようにピアをランダムに選択しにくい。これは、データベースが特定の条件に当たるデータを抽出するように構成され、ランダム選択のためのデータベースクエリ文が提供されないためである。 As described above, when peer information that is dynamically changing is managed by the peer database as in the present invention, it is difficult to randomly select a peer so that connections to each peer are uniformly maintained. This is because the database is configured to extract data that meets a specific condition, and a database query statement for random selection is not provided.
このために、本発明の一実施の形態によると、フロントエンドプロセス処理部304は、ユーザクライアントからピア登録が要求されると、各ユーザクライアントにランダムに番号形態のIDを割り当てる(S1100)。フロントエンドプロセス処理部304は、データベース及びクエリ文とは関係無いプロセスであるため、一般的なランダム関数を用いて各ピアにランダムIDを付与するのが可能である。
To this end, according to an embodiment of the present invention, when peer registration is requested from a user client, the front-end
ランダムIDが付与されると、SQLマッププロセス処理部306は、ランダムIDがピア情報に含まれたユーザID、アドレス及びコンテンツ情報と共に、ピアデータベース308に格納されるようにする(S1102)。
When the random ID is assigned, the SQL map
特定のコンテンツを格納しているピア情報が要求される場合(S1104)、フロントエンドプロセス処理部304は、ランダムにピアを選択するための範囲を設定し、ランダムに設定された範囲を指定するパラメーターを出力し、SQLマッププロセス処理部306は、前記パラメーターを用いて指定された範囲にあるピアを選択するためのクエリ文を生成する(S1106)。
When peer information storing specific content is requested (S1104), the front-end
このようなクエリ文は、一般的なSELECT構文及びSELECT構文から提供される範囲指定(<=、>=、between)方式を用いて生成することができる。例えば、ランダムID10〜20のピアを選択するためのクエリ文が生成されることができ、ランダムID5以下のピアを選択するためのクエリ文が生成されることもできる。 Such a query statement can be generated using a general SELECT syntax and a range specification (<=,> =, between) method provided from the SELECT syntax. For example, a query statement for selecting a peer with a random ID of 10 to 20 can be generated, and a query statement for selecting a peer with a random ID of 5 or less can be generated.
ピアデータベース308は、SELECT構文に相応するピアを選択し、SQLマッププロセス処理部306に提供する(S1108)。
The
前述のように、ピアをランダムに選択することは、ランダムID付与及びランダム範囲設定の中、いずれか一つのみをランダムに処理することで行われることもある。例えば、番号IDは、ランダムにではなく順次に付与するが、ピア選択のための番号範囲をランダムに設定することで、ピアに対するランダム選択ができるはずである。 As described above, randomly selecting a peer may be performed by randomly processing only one of random ID assignment and random range setting. For example, number IDs are given sequentially rather than randomly, but by selecting a number range for peer selection at random, it should be possible to perform random selection for peers.
また、他の例として、各ピアにはランダムに番号IDを付与するが、ピア選択のための範囲は固定的に設定することで、ピアに対するランダム選択ができるはずである。 As another example, a number ID is randomly assigned to each peer, but by selecting a fixed range for peer selection, a random selection for the peer should be possible.
このように、各ピアにランダムIDを付与し、付与されたランダムIDがデータベースで共に管理されるようにすることで、コンテンツを保有したピアに対するランダム選択が可能であり、これによって、ピアの間のコネクション設定の時、特定のピアにコネクションが偏重されることなく、コネクションが均一に分布されるように制御することができる。 In this way, by assigning a random ID to each peer and managing the given random ID together in the database, it is possible to make a random selection for the peer that possesses the content. When setting the connection, it is possible to control the connections so that the connections are evenly distributed without the connections being concentrated on specific peers.
以上で説明したように、本発明によると、P2Pシステムに接続したピア情報をデータベースによって有効に管理することができるという利点がある。 As described above, according to the present invention, there is an advantage that peer information connected to the P2P system can be effectively managed by the database.
また、本発明によると、フロントエンドプロセス及びSQLマッププロセスをサーバー状態によって生成することで、サーバーリソースをより有効に活用することができるという利点がある。 In addition, according to the present invention, there is an advantage that server resources can be used more effectively by generating the front-end process and the SQL map process according to the server state.
さらに、本発明によると、データベースの管理とクライアントのメッセージ処理を2元化することで、データベースの拡張及びシステムアップグレードの時、最小限の修正によって拡張及びアップグレードができるという利点がある。 Furthermore, according to the present invention, the database management and the message processing of the client are unified, so that there is an advantage that the database can be expanded and upgraded with a minimum correction at the time of database expansion and system upgrade.
さらに、本発明によると、ダウンロード時のみにユーザクライアントがアクティブピアとして動作するようにすることで、P2Pシステムの利用時、ユーザクライアントの負荷を最小化することができるという利点がある。 Furthermore, according to the present invention, it is possible to minimize the load on the user client when using the P2P system by allowing the user client to operate as an active peer only at the time of download.
Claims (16)
前記クエリ名及びパラメーターをクエリ文にマッピングするためのマッピング情報を含み、前記フロントエンドプロセス処理部から受信した前記クエリ名及びパラメーターに相応するクエリ文を出力するSQLマッププロセス処理部、及び
アクティブピアとして動作するピアの情報及び各ピアが保有するコンテンツ情報を保持し、前記SQLマッププロセス処理部から出力される前記クエリ文によってデータを更新、または抽出するピアデータベースを含むことを特徴とするP2Pシステムにおけるピア管理サーバー。 A front-end process processing unit that establishes a connection with a peer connected to the P2P system, receives a message from the peer, and generates a query name and parameters corresponding to the received message for message processing;
An SQL map process processing unit that includes mapping information for mapping the query name and parameter to a query statement, and outputs a query statement corresponding to the query name and parameter received from the front-end process processing unit, and an active peer In a P2P system, including a peer database that holds information on operating peers and content information held by each peer, and updates or extracts data according to the query statement output from the SQL map process processing unit Peer management server.
前記状態判断部の判断結果に相応して前記フロントエンドプロセス処理部及び前記SQLマッププロセス処理部の生成と消滅を制御する制御部をさらに含むことを特徴とする、請求項1に記載のP2Pシステムにおけるピア管理サーバー。 A state determination unit that checks the connection state and message processing state of the peer and the generation state of the query statement, and the front-end process processing unit and the SQL map process processing unit according to the determination result of the state determination unit The peer management server in the P2P system according to claim 1, further comprising a control unit that controls generation and disappearance of the P2P system.
前記P2Pシステムに連結される前記ピアが認証されたピアか否かを判断する認証モジュール、
前記ピアが認証されたピアである場合、前記ピアと前記P2Pシステムの間の連結を設定する連結設定モジュール、
前記ピアから前記メッセージを受信し、前記メッセージに相応する応答メッセージを前記ピアに転送するエージェント通信モジュール、
前記ピアから前記ピアの登録要求メッセージが受信される場合、前記登録要求されたピアにランダムIDを割り当てするランダムID割り当てモジュール、
前記ピアからコンテンツ要求メッセージが受信される場合、要求されたコンテンツを含んでいる他のピアの選択のための選択範囲をランダムに設定するランダム範囲設定モジュール、及び
前記エージェント通信モジュールによって受信されたメッセージの処理のためのクエリ名及びパラメーターを生成するクエリ名/パラメートル生成モジュールを含むことを特徴とする、請求項1に記載のP2Pシステムにおけるピア管理サーバー。 The front-end process processing unit
An authentication module for determining whether the peer coupled to the P2P system is an authenticated peer;
A connection setup module for setting up a connection between the peer and the P2P system if the peer is an authenticated peer;
An agent communication module that receives the message from the peer and forwards a response message corresponding to the message to the peer;
A random ID assignment module for assigning a random ID to the peer requested to register when the peer registration request message is received from the peer;
When a content request message is received from the peer, a random range setting module that randomly sets a selection range for selection of another peer including the requested content, and a message received by the agent communication module The peer management server in the P2P system according to claim 1, further comprising a query name / parameter generation module for generating a query name and a parameter for the processing.
P2Pシステムに接続したピアからピア登録要求メッセージを受信するステップ、
前記ピア登録要求メッセージに相応するクエリ名及びパラメーターを生成するステップ、
前記クエリ名及びパラメーターをクエリ文にマッピングするためのマッピング情報を用いて、前記ピア登録要求メッセージに相応するクエリ文を生成するステップ、及び
前記クエリ文を用いてピア情報データベースに前記ピアをアクティブピアに登録するステップを含むことを特徴とするピア情報管理方法。 A method for managing peer information in a P2P system,
Receiving a peer registration request message from a peer connected to the P2P system;
Generating a query name and parameters corresponding to the peer registration request message;
Generating a query statement corresponding to the peer registration request message using mapping information for mapping the query name and parameters to a query statement; and using the query statement to assign the peer to a peer information database as an active peer A peer information management method comprising the step of:
前記ピア登録要求メッセージは、前記ピアがダウンロード状態の場合、前記ピアをアクティブピアに登録するために前記ピアから受信されることを特徴とする、請求項8に記載のピア情報管理方法。 In the peer registration request message receiving step,
The method of claim 8, wherein the peer registration request message is received from the peer to register the peer with an active peer when the peer is in a download state.
前記コンテンツ要求メッセージに相応するクエリ名及び前記コンテンツ要求メッセージに含まれたコンテンツIDに対するパラメーターを生成するステップ、
前記マッピング情報を用いて前記コンテンツ要求メッセージに相応するクエリ名及び前記パラメーターに相応するピア選択クエリ文を生成するステップ、及び
前記ピア選択クエリ文によって前記ピアデータベースから前記コンテンツIDと関連したコンテンツを保有するピア情報を抽出して前記ピアに提供するステップをさらに含むことを特徴とする、請求項8に記載のピア情報管理方法。 Receiving a content request message from the peer;
Generating a query name corresponding to the content request message and a parameter for the content ID included in the content request message;
Generating a query name corresponding to the content request message using the mapping information and a peer selection query statement corresponding to the parameter; and storing content associated with the content ID from the peer database by the peer selection query statement The method of claim 8, further comprising: extracting peer information to be provided and providing the peer information to the peer.
前記ピアと前記P2Pシステムとの間の連結を設定する連結設定モジュール、
前記P2Pシステムにコンテンツ要求メッセージを生成して転送し、前記P2Pシステムから前記コンテンツを含んでいる他のピア情報を受信するピア情報受信モジュール、
前記ピア情報受信モジュールによって受信された前記他のピア情報を基にして前記他のピアとの連結を設定することで、前記他のピアから前記コンテンツをダウンロードするピア連結設定モジュール、
前記ピアが前記コンテンツをダウンロードしているか否かをチェックするダウンロードチェックモジュール、
前記ダウンロードチェックモジュールによるチェック結果によって、ピア登録要求メッセージやピア登録解除要求メッセージを生成し、前記P2Pシステムに転送するピア登録/解除モジュールを含むことを特徴とするエージェントプログラムが記録された記録媒体。 A recording medium in which an agent program is installed, which is incorporated in a peer connected to a P2P system and allows the peer to receive a P2P service,
A connection setting module for setting a connection between the peer and the P2P system;
A peer information receiving module for generating and transferring a content request message to the P2P system and receiving other peer information including the content from the P2P system;
A peer connection setting module for downloading the content from the other peer by setting the connection with the other peer based on the other peer information received by the peer information receiving module;
A download check module for checking whether the peer is downloading the content;
A recording medium on which an agent program is recorded, comprising a peer registration / release module that generates a peer registration request message and a peer registration release request message according to a check result by the download check module and transfers the message to the P2P system.
前記ダウンロードチェックモジュールによって、前記ピアが前記コンテンツをダウンロードしていると判断された場合、前記ピア登録要求メッセージを生成して転送し、前記ダウンロードチェックモジュールによって前記ピアが前記コンテンツのダウンロードを完了したと判断される場合、前記ピア登録解除要求メッセージを生成して転送することを特徴とする、請求項15に記載のエージェントプログラムが記録された記録媒体。 The peer registration / cancellation module
If the download check module determines that the peer is downloading the content, it generates and forwards the peer registration request message, and the download check module indicates that the peer has completed downloading the content. 16. The recording medium having an agent program recorded thereon according to claim 15, wherein if judged, the peer deregistration request message is generated and transferred.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060117170A KR100836619B1 (en) | 2006-11-24 | 2006-11-24 | Peer Management Server in P2P System and Peer Management Method |
KR10-2006-0117170 | 2006-11-24 | ||
PCT/KR2007/005660 WO2008062961A1 (en) | 2006-11-24 | 2007-11-12 | Peer management server in p2p system and peer management method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010511222A true JP2010511222A (en) | 2010-04-08 |
JP5178734B2 JP5178734B2 (en) | 2013-04-10 |
Family
ID=39429868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009538314A Active JP5178734B2 (en) | 2006-11-24 | 2007-11-12 | Peer management server and peer management method in P2P system |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP5178734B2 (en) |
KR (1) | KR100836619B1 (en) |
WO (1) | WO2008062961A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6887746B2 (en) * | 2015-01-19 | 2021-06-16 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Terminal management system, terminal control device, terminal management method and communication control program |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1040146A (en) * | 1996-07-22 | 1998-02-13 | Hitachi Ltd | Parallel database system communication frequency decreasing method |
US20030233455A1 (en) * | 2002-06-14 | 2003-12-18 | Mike Leber | Distributed file sharing system |
JP2004355651A (en) * | 2004-07-26 | 2004-12-16 | Hitachi Ltd | Data storage method and data management system |
WO2005043413A1 (en) * | 2003-10-22 | 2005-05-12 | Conformative Systems, Inc. | System for data format conversion for use in data centers |
JP2006079606A (en) * | 2004-09-03 | 2006-03-23 | Microsoft Corp | Receiver-driven system and method for peer-to-peer network |
WO2006080083A1 (en) * | 2005-01-28 | 2006-08-03 | Argo-Notes, Inc. | METHOD FOR DOWNLOADING FILE BY BitTorrent PROTOCOL |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7451217B2 (en) * | 2002-12-19 | 2008-11-11 | International Business Machines Corporation | Method and system for peer-to-peer authorization |
KR100475668B1 (en) * | 2002-12-23 | 2005-03-10 | 한국과학기술정보연구원 | Apparatus and method of providing information for grid resources in grid network and computer readable recording medium of recording process thereof |
US7895338B2 (en) | 2003-03-18 | 2011-02-22 | Siemens Corporation | Meta-search web service-based architecture for peer-to-peer collaboration and voice-over-IP |
KR101094586B1 (en) * | 2005-01-21 | 2011-12-15 | 에스케이 텔레콤주식회사 | System of monitoring status of terminal peer and method thereof |
-
2006
- 2006-11-24 KR KR1020060117170A patent/KR100836619B1/en active IP Right Grant
-
2007
- 2007-11-12 JP JP2009538314A patent/JP5178734B2/en active Active
- 2007-11-12 WO PCT/KR2007/005660 patent/WO2008062961A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1040146A (en) * | 1996-07-22 | 1998-02-13 | Hitachi Ltd | Parallel database system communication frequency decreasing method |
US20030233455A1 (en) * | 2002-06-14 | 2003-12-18 | Mike Leber | Distributed file sharing system |
WO2005043413A1 (en) * | 2003-10-22 | 2005-05-12 | Conformative Systems, Inc. | System for data format conversion for use in data centers |
JP2004355651A (en) * | 2004-07-26 | 2004-12-16 | Hitachi Ltd | Data storage method and data management system |
JP2006079606A (en) * | 2004-09-03 | 2006-03-23 | Microsoft Corp | Receiver-driven system and method for peer-to-peer network |
WO2006080083A1 (en) * | 2005-01-28 | 2006-08-03 | Argo-Notes, Inc. | METHOD FOR DOWNLOADING FILE BY BitTorrent PROTOCOL |
Non-Patent Citations (4)
Title |
---|
CSNG200501389001; 劉 歓慶: 'P2Pネットワークにおけるコンテンツ配信高速化手法の提案' 電子情報通信学会技術研究報告 Vol.104 No.513, 20041209, p.1-6, 社団法人電子情報通信学会 * |
CSNG200600683018; 石川 佳治: 'P2Pデータ流通における注釈を用いたトレーサビリティの実現手法の検討' 情報処理学会研究報告 Vol.2006 No.9, 20060127, p.117-124, 社団法人情報処理学会 * |
JPN6012042954; 石川 佳治: 'P2Pデータ流通における注釈を用いたトレーサビリティの実現手法の検討' 情報処理学会研究報告 Vol.2006 No.9, 20060127, p.117-124, 社団法人情報処理学会 * |
JPN6012042957; 劉 歓慶: 'P2Pネットワークにおけるコンテンツ配信高速化手法の提案' 電子情報通信学会技術研究報告 Vol.104 No.513, 20041209, p.1-6, 社団法人電子情報通信学会 * |
Also Published As
Publication number | Publication date |
---|---|
JP5178734B2 (en) | 2013-04-10 |
WO2008062961A1 (en) | 2008-05-29 |
KR20080047161A (en) | 2008-05-28 |
KR100836619B1 (en) | 2008-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3967806B2 (en) | Computerized method and resource nomination mechanism for nominating a resource location | |
US8117297B2 (en) | System and method of device-to-server registration | |
US8108455B2 (en) | Mobile agents in peer-to-peer networks | |
US7213047B2 (en) | Peer trust evaluation using mobile agents in peer-to-peer networks | |
US7853674B2 (en) | System and method for provisioning component applications | |
US8037202B2 (en) | Presence detection using mobile agents in peer-to-peer networks | |
US7328243B2 (en) | Collaborative content coherence using mobile agents in peer-to-peer networks | |
US7254608B2 (en) | Managing distribution of content using mobile agents in peer-topeer networks | |
US7903656B2 (en) | Method and system for message routing based on privacy policies | |
US20050144591A1 (en) | Method and system for change management of interfaces in distributed computer systems | |
KR20080068647A (en) | Method and system for establishing a service application execution environment in a heterogeneous, distributed computing system and a user friendly data transfer service application executing within the service application execution environment | |
US20060248181A1 (en) | Formatted and/or tunable QOS data publication, subscription, and/or distribution servers and clients | |
US20060248182A1 (en) | Formatted and/or tunable QoS data publication, subscription, and/or distribution including dynamic network formation | |
US9251317B2 (en) | Network video messaging | |
CN102185900A (en) | Application service platform system and method for developing application services | |
JP2004533687A (en) | Dynamic deployment of services in computer networks | |
US7237235B2 (en) | Application distribution system, and distribution server and distribution method thereof | |
WO2021051747A1 (en) | Data update method, system and device, electronic device, and computer storage medium | |
JP3899076B2 (en) | Temporary network | |
US8391845B2 (en) | System and method of presenting entities of standard applications in wireless devices | |
JP2008027202A (en) | Session management method, server used for the same, session management program, and recording medium with recorded program | |
JP5178734B2 (en) | Peer management server and peer management method in P2P system | |
KR101305397B1 (en) | Peer Management Server in P2P System and Peer Management Method | |
JP2008065814A (en) | Information access control method | |
JP2003330886A (en) | Network processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101110 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20101110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120809 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120821 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121113 |
|
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: 20121211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130108 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5178734 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
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 |