KR101055265B1 - Apparatus and method for providing P2P services, and a recording medium for causing a computer to execute a method for exchanging data in a peer node constituting a P2P network - Google Patents
Apparatus and method for providing P2P services, and a recording medium for causing a computer to execute a method for exchanging data in a peer node constituting a P2P network Download PDFInfo
- Publication number
- KR101055265B1 KR101055265B1 KR1020080120513A KR20080120513A KR101055265B1 KR 101055265 B1 KR101055265 B1 KR 101055265B1 KR 1020080120513 A KR1020080120513 A KR 1020080120513A KR 20080120513 A KR20080120513 A KR 20080120513A KR 101055265 B1 KR101055265 B1 KR 101055265B1
- Authority
- KR
- South Korea
- Prior art keywords
- node
- peer
- data
- group
- information
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
- H04W4/08—User group management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
P2P 서비스 제공장치 및 방법, 그리고 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체가 개시된다. 노드정보저장부에는 P2P 네트워크를 구성하는 복수의 피어노드로부터 제공받은 상기 각각의 피어노드가 보유하고 있는 수신대상데이터에 관한 정보가 상기 각각의 피어노드의 식별번호에 대응되어 피어노드 정보테이블로 저장된다. 노드그룹형성부는 상기 각각의 피어노드가 보유하는 수신대상데이터의 데이터량을 기초로 상기 피어노드들을 분류하여 노드그룹을 형성한다. 그룹정보제공부는 상기 각각의 피어노드에 다른 피어노드들이 속하는 상기 노드그룹에 관한 그룹정보를 제공한다. P2P 네트워크를 구성하는 각각의 피어노드는 형성된 노드그룹을 기초로 하여 동일 노드그룹 및 상이한 노드그룹에 속하는 피어노드와 데이터 교환을 수행한다. 본 발명에 따르면, P2P 네트워크를 구성하는 피어노드들 사이에서 데이터 교환과 동시에 VOD 서비스와 같이 실시간으로 전송받은 데이터를 실행시킬 때 데이터의 끊김 없이 실행시킬 수 있고, 피어노드들 간의 데이터 교환이 효율적으로 이루어지도록 할 수 있다.An apparatus and method for providing a P2P service and a method of exchanging data in a peer node constituting a P2P network in a computer are disclosed. The node information storage unit stores information on the reception target data held by each peer node provided from a plurality of peer nodes constituting a peer-to-peer network, corresponding to the identification number of each peer node, and stored in the peer node information table. do. The node group forming unit classifies the peer nodes based on the amount of data of the reception target data held by each peer node to form a node group. The group information providing unit provides group information about the node group to which other peer nodes belong to each peer node. Each peer node constituting the P2P network exchanges data with peer nodes belonging to the same node group and different node groups based on the formed node group. According to the present invention, the data exchanged between peer nodes constituting the P2P network can be executed without interruption of data when the data received in real time, such as a VOD service, is executed in real time, and data exchange between peer nodes can be efficiently performed. Can be done.
P2P, 노드그룹 P2P, Node Group
Description
본 발명은 P2P 서비스 제공장치 및 방법, 그리고 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체에 관한 것으로, 보다 상세하게는, 서로 데이터를 요청하고 수신하는 복수의 피어노드들로 구성되는 P2P 서비스 제공장치 및 방법, 그리고 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체에 관한 것이다.The present invention relates to an apparatus and method for providing a P2P service, and a recording medium for executing a data exchange method in a peer node constituting a P2P network in a computer, and more particularly, to a plurality of peers requesting and receiving data from each other. An apparatus and method for providing a P2P service composed of nodes and a method of exchanging data in a peer node constituting a P2P network in a computer are provided.
P2P(Peer to peer)란 중간에 서버 컴퓨터를 거치지 않고 정보를 찾는 사람과 정보를 가지고 있는 사람의 PC를 직접 연결시켜 데이터를 공유할 수 있게 해주는 기술 또는 서비스를 말한다. 인터넷상의 정보를 검색엔진을 거쳐 찾아야 하는 기존 방식과는 달리 P2P 기술을 이용하면 인터넷에 연결된 모든 개인 컴퓨터로부터 직접 정보를 제공받고, 검색은 물론 다운로드까지 가능하다.Peer-to-peer (P2P) is a technology or service that allows users to share data by directly connecting the person looking for information with the person's PC without going through a server computer. Unlike traditional methods of searching for information on the Internet through search engines, P2P technology allows users to receive information directly from all personal computers connected to the Internet, search and download.
이 기술은 근거리통신망을 인터넷으로 확대한 개념으로, 이 기술을 활용하면 PC 사용자가 별도의 서버나 고정IP(전용선) 없이도 인터넷을 통해 서로의 컴퓨터를 자유롭게 드나들며 필요한 자료를 주고받을 수 있다. 따라서 일반 PC 사용자는 MP3 파일이나 다른 컴퓨터 파일을 중간 매개자 없이 직접 주고받을 수 있으며, 이를 인터넷 비즈니스에 접목하면 여러 응용 분야에 폭넓게 적용할 수 있다.This technology is a concept of extending local area network to the Internet. By using this technology, PC users can freely pass each other's computers through the Internet and exchange necessary data without a separate server or a fixed IP (dedicated line). Thus, ordinary PC users can send and receive MP3 files or other computer files directly without any intermediary, and when applied to the Internet business, they can be widely applied to various applications.
P2P 네트워크는 중앙 제어 노드 없이 흩어져 있는 노드들끼리 서로 통신하는 애드 혹(ad-hoc) 구조이고, 참여하는 각 노드들이 라우터, 서버의 역할을 모두 수행할 수 있으며, 지속적인 연결이 필요없는 환경에 적용된다. 그리고 P2P 네트워크에 참여하는 모든 노드는 자신의 자원에 대한 접근을 다른 노드에 허가함으로써 P2P 네트워크에 참여한다. 각 노드는 별도의 중앙관리체계 없이 구성원간 협업 서비스를 제공한다.P2P network is an ad-hoc structure in which scattered nodes communicate with each other without a central control node, and each participating node can play the role of a router and a server, and is applied to an environment that does not require continuous connection. do. All nodes participating in the P2P network participate in the P2P network by granting other nodes access to their resources. Each node provides a cooperative service among members without a separate central management system.
파일 공유는 대표적인 P2P 응용 서비스로서, P2P 환경에서 파일을 다운로드한 클라이언트 노드는 다른 노드에게도 해당 파일을 제공함으로써 서버의 역할을 겸하게 된다. P2P 기반 자율 구성 조직 내에서 노드 및 데이터의 존재여부 정보(presence information) 제공은 P2P의 기본 기능이다. 이를 통해 다른 노드와 직접 연락하고 필요한 데이터에 대해 문의할 수 있다.File sharing is a representative P2P application service. A client node that downloads a file in a P2P environment serves as a server by providing the file to other nodes. P2P-based autonomous organization Providing presence information of nodes and data in an organization is a basic function of P2P. This allows you to contact other nodes directly and inquire about the required data.
그런데 이러한 P2P 알고리즘은 특정 서비스를 대상으로 하는 데이터 전송 방법이 아니기 때문에 VoD와 같은 데이터 전송의 경우에 사용자가 요구하는 데이터의 순서와 관계없이 데이터를 전송하게 된다. 이러한 경우 모든 데이터가 전송되어야 해당 데이터를 열람할 수 있으므로 실시간 스트리밍 서비스가 불가능하게 된다는 문제가 있다. 따라서 이러한 문제를 해결할 수 있는 P2P 알고리즘의 필요성이 제기 되고 있다.However, since the P2P algorithm is not a data transmission method for a specific service, data is transmitted regardless of the order of data required by the user in the case of data transmission such as VoD. In this case, since all the data must be transmitted to read the data, there is a problem that the real-time streaming service is impossible. Therefore, there is a need for a P2P algorithm that can solve this problem.
본 발명이 이루고자 하는 기술적 과제는, P2P 네트워크를 구성하는 피어노드들 사이에서 데이터 교환과 동시에 VOD 서비스와 같이 실시간으로 전송받은 데이터를 실행시킬 때 데이터의 끊김 없이 실행시킬 수 있고, 피어노드들 간의 데이터 교환이 효율적으로 이루어지도록 할 수 있는 P2P 서비스 제공장치 및 방법을 제공하는 데 있다.The technical problem to be achieved by the present invention, when the data exchanged between the peer nodes constituting the P2P network and the data received in real time, such as a VOD service can be executed without interruption of the data, the data between the peer nodes An object of the present invention is to provide an apparatus and method for providing a P2P service that can be efficiently exchanged.
본 발명이 이루고자 하는 다른 기술적 과제는, P2P 네트워크를 구성하는 피어노드들 사이에서 데이터 교환과 동시에 VOD 서비스와 같이 실시간으로 전송받은 데이터를 실행시킬 때 데이터의 끊김 없이 실행시킬 수 있고, 피어노드들 간의 데이터 교환이 효율적으로 이루어지도록 할 수 있는 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체를 제공하는 데 있다.Another technical problem to be achieved by the present invention is to exchange data between peer nodes constituting the P2P network and execute data received in real time such as a VOD service in real time. The present invention provides a recording medium for causing a computer to execute a method of exchanging data in a peer node constituting a P2P network capable of efficiently exchanging data.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 P2P 서비스 제공장치는, P2P 네트워크를 구성하는 복수의 피어노드로부터 제공받은 상기 각각의 피어노드가 보유하고 있는 수신대상데이터에 관한 정보가 상기 각각의 피어노드의 식별번호에 대응되어 피어노드 정보테이블로 저장되는 노드정보저장부; 상기 각각의 피어노드가 보유하는 수신대상데이터의 데이터량을 기초로 상기 피어노드들을 분류하여 노드그룹을 형성하는 노드그룹형성부; 및 상기 각각의 피어노드에 다른 피어노드들 이 속하는 상기 노드그룹에 관한 그룹정보를 제공하는 그룹정보제공부;를 구비한다.In order to achieve the above technical problem, the P2P service providing apparatus according to the present invention includes information on reception target data held by each peer node provided from a plurality of peer nodes constituting a P2P network. A node information storage unit corresponding to the identification number of the peer node and stored in the peer node information table; A node group forming unit which forms a node group by classifying the peer nodes based on the amount of data of the reception target data held by each peer node; And a group information provider for providing group information about the node group to which each other peer node belongs to each peer node.
상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 P2P 서비스 제공방법은, P2P 네트워크를 구성하는 복수의 피어노드로부터 제공받은 상기 각각의 피어노드가 보유하고 있는 수신대상데이터에 관한 정보가 상기 각각의 피어노드의 식별번호에 대응되어 피어노드 정보테이블로 저장되는 노드정보저장단계; 상기 각각의 피어노드가 보유하는 수신대상데이터의 데이터량을 기초로 상기 피어노드들을 분류하여 노드그룹을 형성하는 노드그룹형성단계; 및 상기 각각의 피어노드에 다른 피어노드들이 속하는 상기 노드그룹에 관한 그룹정보를 제공하는 그룹정보제공단계;를 갖는다.P2P service providing method according to the present invention for achieving the above-mentioned other technical problem, the information on the reception target data held by each of the peer nodes provided from a plurality of peer nodes constituting a P2P network is A node information storage step corresponding to an identification number of the peer node of the node information stored in the peer node information table; A node group forming step of forming a node group by classifying the peer nodes based on the amount of data of the reception target data held by each peer node; And a group information providing step of providing group information about the node group to which each other peer node belongs to each peer node.
상기의 또 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체는, 사용자가 요청한 수신대상데이터의 식별정보 및 자신이 보유하고 있는 상기 수신대상데이터의 데이터량을 포함하는 데이터 정보를 P2P 서버에 제공하는 단계; 상기 P2P 서버로부터 상기 수신대상데이터의 데이터량을 기준으로 분류된 P2P 네트워크 내의 피어노드들이 속하는 노드그룹의 그룹정보를 수신하는 단계; 상기 노드그룹의 그룹정보를 기초로 자신과 동일한 그룹에 속하는 피어노드들에게 상기 수신대상데이터의 종료지점에 연속하는 데이터조각의 제공을 요청하는 단계; 및 상기 수신대상데이터의 제공 요청에 응답한 상기 피어노드로부터 상기 데이터조각을 수신하는 단계;를 갖는다.In order to achieve the above another technical problem, a recording medium for executing a data exchange method at a computer in a peer node constituting a P2P network according to the present invention includes identification information of a target object data requested by a user and a user. Providing data information including a data amount of the reception target data to a P2P server; Receiving group information of a node group to which peer nodes in a P2P network classified based on the data amount of the data to be received are received from the P2P server; Requesting the peer nodes belonging to the same group as the node group based on the group information of the node group to provide data fragments consecutive to an end point of the reception target data; And receiving the pieces of data from the peer node in response to the request for providing the target data.
본 발명에 따른 P2P 서비스 제공장치 및 방법에 의하면, P2P 네트워크를 구성하는 피어노드들을 복수의 노드그룹으로 분류하여 먼저 동일 노드그룹에 속하는 피어노드들 간에 데이터 교환이 이루어지고, 그 다음으로 다른 노드그룹에 속하는 피어노드와 데이터를 송수신할 수 있도록 함으로써, 필요로 하는 데이터를 빠르게 획득하여 효율적인 데이터 교환이 이루어지도록 할 수 있다. 또한 본 발명에 따른 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체에 의하면, 데이터를 전송받을 때 현재 보유하고 있는 데이터에 시간적으로 연속하는 데이터 부분을 요청하여 수신함으로써, VOD 서비스에서와 같이 실시간으로 데이터를 실행시키는 경우에 끊김 없는 서비스의 제공이 가능하게 된다.According to the P2P service providing apparatus and method according to the present invention, the peer nodes constituting the P2P network are classified into a plurality of node groups, and data is exchanged between peer nodes belonging to the same node group first, and then another node group. By enabling data to be transmitted and received with the peer node belonging to, it is possible to quickly obtain the required data to achieve efficient data exchange. In addition, according to the recording medium for executing the data exchange method in the peer node constituting the P2P network according to the present invention, by receiving and requesting the data portion that is continuous in time to the data currently held when receiving data In the case of executing data in real time as in VOD service, seamless service can be provided.
이하에서 첨부된 도면들을 참조하여 본 발명에 따른 P2P 서비스 제공장치 및 방법, 그리고 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체의 바람직한 실시예에 대해 상세하게 설명한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a preferred embodiment of a recording medium for executing a P2P service providing apparatus and method and a data exchange method in a peer node constituting a P2P network in a computer will be described in detail with reference to the accompanying drawings. .
도 1은 본 발명에 따른 P2P 서비스 제공장치에 대한 바람직한 실시예의 구성을 도시한 블록도이다.1 is a block diagram showing the configuration of a preferred embodiment of a P2P service providing apparatus according to the present invention.
도 1을 참조하면, 본 발명에 따른 P2P 서비스 제공장치(100)는, 노드정보저장부(110), 노드그룹형성부(120) 및 그룹정보제공부(130)를 구비한다.Referring to FIG. 1, a P2P
노드정보저장부(110)에는 P2P 네트워크를 구성하는 복수의 피어노드로부터 제공받은 각각의 피어노드가 보유하고 있는 수신대상데이터에 관한 정보가 각각의 피어노드의 식별번호에 대응되어 피어노드 정보테이블로 저장된다. 여기서 피어노드는 P2P 네트워크를 통해 다른 단말장치와 통신하여 서로 데이터를 주고받을 수 있는 단말장치를 말하는 것으로, 예를 들면, PC, 휴대용 통신단말기 및 노트북 등이 P2P 네트워크에서 피어노드로 기능할 수 있는 단말장치에 해당한다. 또한 수신대상데이터는 각각의 피어노드, 즉 단말장치에서 실시간으로 재생 가능한 동영상 파일과 같은 멀티미디어 파일을 의미한다. P2P 네트워크 내의 피어노드들은 수신대상데이터의 전부 또는 일부를 보유하고 있으므로 각각 보유하고 있는 수신대상데이터의 데이터량이 상이하다.In the node
P2P 네트워크를 구성하는 피어노드들 사이에서 데이터를 교환할 때 종래의 방식은 데이터의 시간적 순서에 무관하게 상대방 피어노드가 보유하고 있는 데이터를 전송받는 방식이었다. 도 2는 P2P 네트워크에서 상대방 피어노드가 보유하고 있는 데이터를 수신할 때 사용되는 기존 방식을 도시한 도면이다. 도 2를 참조하면, 피어노드 A는 12조각으로 나뉘어진 전체 데이터 중 5개의 데이터조각만을 보유하고 있으며, 피어노드 B 내지 D로부터 제1채널을 통해 나머지 7개의 데이터조각을 수신한다. 이때 피어노드 B 내지 D로부터 각각 다른 부분에 해당하는 데이터조각을 수신하게 되며, 데이터의 시간적 순서는 데이터가 수신되는 순서에 영향을 미치지 않는다. 즉, 피어노드 B 내지 D로부터 동시에 데이터를 수신할 수도 있고, 각각의 피어노드로부터 순차적으로 데이터를 수신할 수도 있다. 일 예로, 한 번에 하나의 피어노드로부터만 데이터를 수신하는 경우에는 피어노드 B에서 먼저 데이터를 수신하 고, 순차적으로 피어노드 C 및 D로부터 데이터를 수신할 수 있다. 이러한 방식으로 피어노드 A가 데이터를 수신할 때 데이터가 수신되는 순서가 도 2에 숫자로 표시되어 있다.When exchanging data between peer nodes constituting the P2P network, the conventional method is a method of receiving data held by the peer peer node regardless of the time order of the data. FIG. 2 is a diagram illustrating a conventional method used when receiving data held by a peer peer node in a P2P network. Referring to FIG. 2, the peer node A has only five pieces of data among all data divided into 12 pieces, and receives the remaining seven pieces of data from the peer nodes B through D through the first channel. In this case, data pieces corresponding to different portions are received from the peer nodes B to D, and the temporal order of the data does not affect the order in which the data is received. That is, data may be simultaneously received from peer nodes B to D, and data may be sequentially received from each peer node. For example, when receiving data from only one peer node at a time, the peer node B may receive data first, and then sequentially receive data from peer nodes C and D. In this manner, when peer node A receives data, the order in which the data is received is indicated by numbers in FIG.
그러나 이러한 방식은 VOD 서비스와 같이 데이터 전송과 동시에 사용자단말에서 데이터를 실행시켜야 하는 경우에는 적절하지 않다. 즉, 피어노드 A가 2번 데이터조각까지 수신한 후에 5번 데이터조각이 수신되기 전까지는 데이터를 실행시킬 수 없으므로 데이터의 실시간 재생이 불가능하게 된다. 따라서 이러한 문제를 해결하기 위해 각각의 피어노드는 다른 피어노드로부터 데이터를 전송받을 때 자신이 보유한 데이터에 시간적으로 연속하는 부분에 해당하는 데이터를 전송받도록 하는 것이 바람직하다. 그렇게 함으로써 실시간 VOD 서비스의 경우에도 끊김 없이 데이터를 실행시킬 수 있다.However, this method is not suitable when data must be executed in a user terminal at the same time as data transmission such as a VOD service. That is, since peer node A receives up to two pieces of data and cannot receive data until five pieces of data are received, the data cannot be reproduced in real time. Therefore, in order to solve such a problem, it is preferable that each peer node receives data corresponding to a portion that is contiguous in time with its own data when receiving data from another peer node. By doing so, data can be executed seamlessly even in a real-time VOD service.
이와 같은 데이터 전송을 효율적으로 수행하기 위해서 P2P 네트워크를 구성하는 복수의 피어노드들은 자신이 보유한 파일 또는 다른 피어노드와 공유하도록 설정된 파일의 데이터량에 기초하여 복수 개의 노드그룹으로 분류된다. 본 발명에 따른 서비스 제공장치(100)에서 이러한 데이터량을 기준으로 노드그룹을 형성하기 위해서는 각각의 피어노드가 보유하고 있는 수신대상데이터의 데이터량에 관한 정보를 필요로 한다. 따라서 P2P 네트워크를 구성하는 피어노드들은 자신이 보유하고 있는 수신대상데이터에 관한 정보를 서버장치(100)에 구비된 노드정보저장부(110)에 일정한 시간 간격으로, 또는 보유하고 있는 데이터량의 변화 정도, 예를 들면 데이터량의 증가량이 10MB가 될 때마다 제공한다. 노드정보저장부(110)에는 이렇게 제공받은 피어노드들의 데이터에 관한 정보가 각각의 피어노드의 식별번호에 대응되어 피어노드 정보테이블의 형태로 저장된다. 이때 노드그룹형성부(120)에 의한 노드그룹의 형성을 용이하게 하기 위해 피어노드 정보테이블에 포함되는 피어노드들의 식별번호는 각각의 피어노드가 보유하고 있는 데이터량에 따라 순차적으로 정렬되어 저장되도록 하는 것이 바람직하다. 이와 같이 보유하고 있는 데이터량 순으로 피어노드의 식별번호가 정렬되어 있는 피어노드 정보테이블의 일 예가 다음의 표 1에 나타나 있다.In order to efficiently perform such data transmission, a plurality of peer nodes constituting the P2P network are classified into a plurality of node groups based on the amount of data of a file owned or a file set to be shared with other peer nodes. In the
또한 P2P 네트워크를 구성하는 모든 피어노드들이 수신대상데이터를 보유하고 있는 것은 아니며, 하나의 피어노드가 수신대상데이터 외에 다양한 데이터를 보유하고 있는 경우도 있다. 따라서 동일한 수신대상데이터를 보유하고 있는 피어노드들에 관한 정보만 동일한 피어노드 정보테이블에 포함될 수 있도록 할 필요가 있다. 따라서 노드정보저장부(110)는 피어노드들로부터 보유하고 있는 데이터의 데이터명 등 식별정보를 제공받을 수 있다.In addition, not all peer nodes constituting the P2P network have the destination data, and one peer node may have various data in addition to the destination data. Therefore, it is necessary to ensure that only information about peer nodes having the same target data is included in the same peer node information table. Accordingly, the node
다음으로 노드그룹형성부(120)는 노드정보저장부(110)의 피어노드 정보테이블에 저장되어 있는 각각의 피어노드의 데이터량을 기초로 피어노드들을 분류하여 노드그룹을 형성한다. 이때 노드그룹 형성의 기준이 되는 데이터량은 각각의 피어노드가 보유하는 전체 데이터량이 아닌 수신대상데이터의 시작지점부터 연속하는 데이터의 종료지점까지의 범위에 해당하는 데이터량이다. VOD 서비스를 이용하여 실시간으로 데이터를 제공하기 위해서는 시간적으로 연속하는 데이터의 범위만 의미를 가지기 때문이다.Next, the node
피어노드의 데이터량을 기초로 노드그룹을 형성하게 되면 보유하고 있는 데이터량이 비슷한 피어노드들이 동일한 노드그룹에 속하게 된다. 노드정보저장부(110)의 피어노드 정보테이블에는 위 표 1과 같이 각각의 피어노드가 보유하는 데이터량을 기준으로 하여 P2P 네트워크 내의 피어노드들의 식별번호가 순차적으로 나열되어 저장되어 있다. 따라서 노드그룹형성부(120)는 이를 참조하여 보유하고 있는 데이터량이 동일한 범위에 속하는 피어노드들이 동일한 노드그룹에 속하게 되도록 노드그룹을 형성한다. 예를 들면, 노드그룹 형성의 기준이 되는 데이터량의 범위를 100MB 단위로 설정하여 보유하고 있는 데이터량이 100MB 이하인 피어노드들을 제1노드그룹, 100MB 내지 200MB인 피어노드들을 제2노드그룹 등으로 할 수 있다. 이에 따르면 표 1에서 피어노드 B,E,D,G 및 A는 데이터량이 100MB 이하인 제1노드그룹에 속하게 되고, 피어노드 I,F,C 및 H는 데이터량이 100MB 내지 200MB인 범위에 속하므로 제2노드그룹에 해당하게 된다. 이렇게 보유하고 있는 데이터량이 비슷한 피어노드들이 동일한 노드그룹에 속하도록 하는 것은 동일한 노드그룹 내의 피어노드들이 보유하고 있는 데이터의 범위와 필요로 하는 데이터의 범위가 유사하여 데이터를 주고받을 때 효율성을 높이기 위함이다.If the node group is formed based on the data amount of the peer node, the peer nodes having the same amount of data belong to the same node group. In the peer node information table of the node
노드그룹형성부(120)는 노드그룹을 형성할 때 위와 같이 피어노드가 보유하고 있는 데이터량 뿐만 아니라 각각의 노드그룹을 구성하는 피어노드의 개수를 기초로 하여 노드그룹을 형성할 수 있다. 즉, 피어노드가 보유하고 있는 데이터량을 기초로 피어노드들을 분류하여 노드그룹을 형성한 후, 노드그룹에 속하는 피어노드의 개수가 기준개수를 초과하는 경우에는 형성된 노드그룹을 분할하여 복수의 노드그룹으로 재형성할 수 있다. 한 개의 노드그룹 내에 지나치게 많은 피어노드가 속하게 되면 동일 노드그룹 내의 다른 피어노드로부터 받을 수 있는 데이터의 범위가 오히려 좁아지게 되어 효율적이지 못하기 때문이다. 이때 노드그룹 형성의 기준이 되는 기준개수는 P2P 네트워크의 크기, 즉 P2P 네트워크를 구성하는 피어노드들의 개수 및 피어노드들 간의 통신환경 등에 따라 다르게 설정될 수 있다.When forming a node group, the node
이와 같이 노드그룹형성부(120)에 의해 노드그룹이 형성된 후에 노드정보저장부(110)의 피어노드 정보테이블에는 각각의 피어노드의 식별번호에 대응하여 해당 피어노드가 속하는 노드그룹에 관한 정보가 추가적으로 저장될 수 있다. 또는 노드그룹형성부(120)가 각각의 노드그룹에 속하는 피어노드들에 관한 정보를 그룹정보제공부(130)에 제공하여 후에 설명하게 될 내용과 같이 그룹정보제공부(130)가 피어노드들에게 노드그룹 형성에 관한 정보를 제공하도록 할 수도 있다.After the node group is formed by the node
노드그룹형성부(120)에 의해 현재 P2P 네트워크를 구성하는 피어노드들의 정보를 기초로 노드그룹이 형성되더라도, 기존의 피어노드가 P2P 네트워크로부터 이탈하거나 새로운 피어노드가 P2P 네트워크로 진입하는 등의 원인으로 인하여 노드그룹에 속하는 피어노드들의 구성에 변화가 생길 수 있다. 따라서 이와 같이 피어노드들의 구성에 변화가 생기면, 노드그룹에 속하는 피어노드들에 관한 정보를 갱신하거나, 경우에 따라서는 노드그룹을 재형성할 필요성이 있다.Although the node group is formed by the node
먼저 피어노드가 P2P 네트워크로부터 이탈하는 경우, 이탈한 피어노드는 자동적으로 노드그룹으로부터 제외되며, 노드정보저장부(110)는 피어노드로부터 보유하고 있는 수신대상데이터에 관한 정보제공이 중단되는 등의 상황을 통하여 피어노드의 이탈이 확인되면, 피어노드 정보테이블에 저장된 정보 중에서 이탈한 피어노드에 관한 정보, 즉 이탈한 피어노드의 식별번호 및 보유하고 있던 데이터에 관한 정보를 삭제한다. 또한 새로운 피어노드가 P2P 네트워크에 진입하면, 새로 진입한 피어노드는 자신이 보유하고 있는 데이터에 관한 정보를 노드정보저장부(110)에 제공하게 된다. 이를 통하여 노드정보저장부(110)는 새로운 피어노드의 진입을 확인하고, 제공받은 데이터에 관한 정보를 기초로 하여 피어노드들이 데이터량 순으로 정렬되어 있는 피어노드 정보테이블에 새로 진입한 피어노드에 관한 정보를 추가하여 등록한다. 새로 진입한 피어노드는 어떠한 노드그룹에도 속하지 않으므로, 노드그룹형성부(120)는 노드정보저장부(110)에 의해 피어노드의 목록에 추가된 정보를 기초로 하여 새로 진입한 피어노드를 기존에 존재하던 노드그룹 중의 하나에 포함시킨다. 따라서 새로 진입한 피어노드는 자신이 보유하고 있는 데이터량과 비슷한 데이터량을 보유하는 피어노드들이 속한 노드그룹으로 포함된다.First, when the peer node leaves the peer-to-peer network, the detached peer node is automatically excluded from the node group, and the node
피어노드가 P2P 네트워크로부터 이탈한 후 기존 노드그룹에 피어노드가 한 개만 남아있게 되는 등 피어노드의 개수가 지나치게 감소하거나 기존의 노드그룹에 새로운 피어노드가 포함되어 노드그룹에 속하는 피어노드의 개수가 기준개수보다 커지게 되면 노드그룹 내의 피어노드들 간의 데이터 교환이 용이하지 않다. 따라서 이러한 경우에 노드그룹형성부(120)는 피어노드들의 구성에 변화가 생긴 이후에 노드정보저장부(110)에 저장되어 있는 피어노드 정보테이블을 기초로 노드그룹을 재형성한다. 피어노드가 이탈하여 기존 노드그룹에 지나치게 적은 피어노드가 남아있는 경우에는 피어노드 정보테이블 상에서 기존 노드그룹에 남아있는 피어노드와 인접한 피어노드가 속한 노드그룹에 포함되도록 할 수 있다. 또한 새로운 피어노드의 진입으로 인해 노드그룹 내의 피어노드의 개수가 기준개수를 초과하게 된 경우에는 위에서 설명한 바와 같이 노드그룹을 분할하여 복수 개의 노드그룹으로 재형성할 수 있다.After the peer node leaves the P2P network, only one peer node remains in the existing nodegroup, such that the number of peer nodes is excessively reduced, or the number of peer nodes belonging to the nodegroup is increased because the new node is included in the existing nodegroup. If the number becomes larger than the reference number, data exchange between peer nodes in the node group is not easy. Therefore, in this case, the node
노드그룹형성부(120)에 의해 P2P 네트워크 내의 모든 피어노드가 특정 노드그룹에 속하게 되면, 그룹정보제공부(130)는 각각의 피어노드에 다른 피어노드들이 속하는 노드그룹에 관한 그룹정보를 제공한다. 각각의 피어노드는 수신대상데이터의 전송 및 수신이 이루어질 때 다른 피어노드가 속하는 노드그룹에 관한 정보를 필요로 한다. 효율적인 데이터 교환을 위해 각각의 피어노드는 P2P 네트워크 내의 모든 피어노드가 아닌 자신과 동일한 노드그룹에 속하는 피어노드와 우선적으로 데이터를 교환하기 때문이다. 이하에서는 P2P 네트워크를 구성하는 각각의 피어노드가 다른 피어노드와 데이터를 교환하는 과정에 관하여 상세하게 설명한다.When all the peer nodes in the P2P network belong to a specific node group by the node
도 3은 본 발명에 따른 서비스 제공장치(100)의 노드그룹형성부(120)에 의해 노드그룹을 형성하고, 서로 데이터를 교환하는 복수의 피어노드로 구성되는 P2P 네트워크에 대한 일 예를 도시한 도면이다.3 illustrates an example of a P2P network including a plurality of peer nodes that form a node group by the node
도 3을 참조하면, P2P 네트워크를 구성하는 복수의 피어노드들(200,210,212,214,220,222,224,226)은 보유하고 있는 수신대상데이터의 데이터량을 기초로 하여 두 개의 노드그룹, 즉 제1노드그룹과 제2노드그룹으로 분류된다. 수신대상데이터를 필요로 하는 피어노드(200)는 동일한 노드그룹에 속하는 피어노드들(210,212,214) 또는 다른 노드그룹에 속하는 피어노드들(220,222,224,226)과 서로 데이터를 교환할 수 있다. 이를 위해서 수신대상데이터를 필요로 하는 피어노드(200)는 본 발명에 따른 서비스 제공장치(100)에 구비된 그룹정보제공부(130)로부터 다른 피어노드들(210,212,214,220,222,224,226)이 속하는 노드그룹에 관한 정보를 제공받는다.Referring to FIG. 3, a plurality of
이때 피어노드(200)는 다른 피어노드와의 데이터 교환을 위해 복수의 송수신채널을 가진다. 먼저 제1채널은 동일한 노드그룹인 제1노드그룹에 속하는 피어노드들(210,212,214)과의 데이터 교환을 위한 채널이다. 제1채널을 통하여 피어노드(200)로 수신되는 데이터는 해당 피어노드(200)가 보유하는 수신대상데이터의 종료지점에 시간적으로 연속하는 데이터이다. 이는 앞에서도 언급한 바와 같이 실시간 VOD 서비스에서 끊김 없이 데이터를 실행시킬 수 있도록 하기 위함이다. 도 4에는 제1채널을 통하여 동일한 노드그룹에 속하는 다른 피어노드들로부터 데이터를 수신하는 일 예가 도시되어 있다.At this time, the
도 4를 참조하면, 피어노드 A 내지 D는 모두 동일한 노드그룹에 속하는 피어노드들이며, 데이터 교환 이전에 피어노드 A 내지 D가 보유하고 있는 수신대상데이터의 데이터량은 도 2에서와 동일하다. 피어노드 A는 제1채널을 통해서 피어노드 B 내지 D로부터 현재 보유하고 있는 수신대상데이터의 종료지점에 시간적으로 연속하는 데이터를 수신한다. 이때 도 2에서 도시한 방식과 다른 점은 데이터의 시간적 순서와 무관하게 피어노드 B 내지 D로부터 동시에 데이터를 수신하거나 각각의 피어노드로부터 순차적으로 데이터를 수신할 수 없다는 것이다. 즉, 피어노드 A가 현재 보유하고 있는 5개의 데이터조각의 종료지점에 연속하는 데이터는 피어노드 C 및 D가 보유하고 있다. 따라서 피어노드 A는 제1채널을 통해 피어노드 C 또는 D로부터 1번 데이터조각을 수신한다. 다음으로 1번 데이터조각에 연속하는 데이터는 피어노드 D가 보유하고 있으므로 피어노드 A는 2번 데이터조각 및 3번 데이터조각을 피어노드 D로부터 순차적으로 수신한다. 이러한 방법으로 4번 데이터조각은 피어노드 B로부터, 5번 데이터조각은 피어노드 D로부터, 그리고 6번 및 7번 데이터조각은 피어노드 C로부터 순차적으로 수신하게 된다.Referring to FIG. 4, peer nodes A to D are all peer nodes belonging to the same nodegroup, and the data amount of the reception target data held by peer nodes A to D before data exchange is the same as in FIG. 2. The peer node A receives data continuously in time from the peer nodes B to D through the first channel to the end point of the reception target data currently held. In this case, the difference from the scheme shown in FIG. 2 is that data cannot be simultaneously received from peer nodes B to D or data cannot be sequentially received from each peer node regardless of the temporal order of data. In other words, the data consecutive to the end points of the five pieces of data currently held by peer node A are held by peer nodes C and D. Accordingly, peer node A receives
동일 노드그룹에 속하는 피어노드들(210,212,214)로부터 데이터를 모두 수신하여도 전체 데이터를 보유하지 못하는 경우에는 다른 노드그룹에 속하는 피어노드들(220,222,224,226)에게 데이터를 요청할 필요성이 있다. 따라서 피어노드(200)는 다른 노드그룹에 속하는 피어노드들(220,222,224,226)과의 데이터 교환을 위한 채널로서 제2채널을 구비한다. 제1채널을 통한 데이터 교환의 경우와 마찬가지로, 제2채널을 통하여 피어노드(200)로 수신되는 데이터도 해당 피어노드(200)가 보유하는 데이터에 시간적으로 연속하는 데이터에 해당한다. 또한 제2채널을 통한 데이터 요청시 피어노드(200)는 자신이 필요로 하는 데이터 부분 뿐만 아니라 동일한 노드그룹 내의 다른 피어노드(210,212,214)가 필요로 하는 데이터 부분까지 다른 노드그룹에 속하는 피어노드들(220,222,224,226)에 요청할 수 있다. 피어노드(200)는 동일한 노드그룹에 속하는 피어노드(210,212,214)가 필요로 하는 데이터 부분을 제2채널을 통해 전송받은 후 데이터 부분을 필요로 하는 피어노드(210,212,214)에게 제1채널을 통해 전송한다. 이렇게 제2채널을 통한 데이터 교환에 의해 해당 피어노드(200) 및 동일한 노드그룹에 속하는 피어노드들(210,212,214)은 필요로 하는 데이터를 빠르게 획득할 수 있다.If all data is received from
P2P 네트워크 내에서 피어노드들 간의 데이터 교환은 다른 피어노드들에게 제공하는 데이터량만큼을 다른 피어노드로부터 제공받는 방식(tit for tat 방식)으로 이루어진다. 따라서 각각의 피어노드들은 더 많은 데이터를 제공받기 위해서 다른 피어노드가 요청하는 데이터를 더 많이 제공할 수 있도록 자신이 보유하고 있는 데이터의 양을 늘려야 할 필요성이 있다. 이를 위해 각각의 피어노드는 추가적인 송수신 채널로서 제3채널을 더 가질 수 있다. 도 2를 참조하여 설명하면, 제3채널은 피어노드(200)가 보유하고 있는 수신대상데이터의 종료지점에 연속하는 데이터가 아니더라도 위와 같은 데이터 교환의 경우를 대비하여 P2P 네트워크의 모든 피어노드들(210,212,214,220,222,224,226) 또는 슈퍼노드(미도시)로부터 데이터를 수신할 때 이용하는 채널이다. 이때 슈퍼노드(미도시)는 사용자가 요청한 파일, 즉 수신대상데이터를 일방적으로 순서에 관계없이 제공하는 노드로서, P2P 서버의 운영업체에 구비된 파일제공서버가 이에 해당될 수 있다. 따라서 피어노드(200)가 슈퍼노드(미도시)로부터 데이터를 수신할 때는 위에서 설명한 tit for tat 방식을 따르지 않고 일방적으로 데이터를 수신하는 것이 가능하다. 제3채널을 통하여 수신한 데이터는 제1채널 또는 제2채널을 통하여 자신이 필요로 하는 데이터를 요청하기 위해 다른 피어노드들(210,212,214,220,222,224,226)에게 데이터를 전송할 때 이용된다.The exchange of data between peer nodes in a P2P network is performed in a manner for receiving a quantity of data provided to other peer nodes from another peer node (tit for tat method). Therefore, each peer node needs to increase the amount of data it owns so that it can provide more data requested by another peer node in order to receive more data. To this end, each peer node may further have a third channel as an additional transmission / reception channel. Referring to FIG. 2, even though the third channel is not data that is continuous at the end point of the reception target data held by the
도 5는 본 발명에 따른 P2P 서비스 제공방법의 바람직한 실시예의 수행과정을 도시한 흐름도이다.5 is a flowchart illustrating a process of performing a preferred embodiment of a P2P service providing method according to the present invention.
도 5를 참조하면, 먼저 노드정보저장부(110)에는 P2P 네트워크를 구성하는 복수의 피어노드로부터 제공받은 각각의 피어노드가 보유하고 있는 수신대상데이터에 관한 정보가 각각의 피어노드의 식별번호에 대응되어 피어노드 정보테이블로 저장된다(S510). 이때 피어노드 정보테이블에는 피어노드들의 식별번호가 보유하고 있는 수신대상데이터의 데이터량을 기준으로 순차적으로 정렬될 수 있다. 다음으로 노드그룹형성부(120)는 각각의 피어노드가 보유하는 수신대상데이터의 데이터량을 기초로 피어노드들을 분류하여 노드그룹을 형성한다(S520). 피어노드 정보테이블에는 피어노드들의 식별번호가 데이터량 순으로 정렬되어 있으므로, 노드그룹을 형성할 때 피어노드 정보테이블을 참고하게 된다. 또한 노드그룹의 형성기준으로 피어노드가 보유하고 있는 데이터량 뿐만 아니라 형성된 노드그룹에 포함되는 피어노드들의 개수를 고려하여 노드그룹을 형성할 수도 있다. 즉, 노드그룹형성부(120)는 각각의 노드그룹을 구성하는 피어노드의 개수가 사전에 설정된 기준개수 이하가 되도록 노드그룹을 형성할 수 있다. 또한 피어노드의 이탈 또는 새로운 피어노드의 진입 등으로 인해 피어노드들의 구성에 변화가 생길 경우, 노드정보저장부(110)는 피어노드 정보테이블을 갱신하고, 노드그룹형성부(120)는 필요에 따라 노드그룹을 재형성할 수 있다. 마지막으로 그룹정보제공부(130)는 각각의 피어노드에 다른 피어노드들이 속하는 노드그룹의 그룹정보를 제공한다(S530). 각각의 피어노드에 제공된 그룹정보는 다른 피어노드들에게 데이터를 요청하고 수신할 때 사용된다.Referring to FIG. 5, first, in the node
도 6은 본 발명에 따른 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체의 바람직한 실시예의 수행과정을 도시한 흐름도이다.6 is a flowchart illustrating a process of performing a preferred embodiment of a recording medium for executing a data exchange method in a computer in a peer node constituting a P2P network according to the present invention.
도 6을 참조하면, 먼저 P2P 네트워크 내의 피어노드는 사용자가 요청한 수신대상데이터의 식별정보 및 자신이 보유하고 있는 수신대상데이터의 데이터량을 포함하는 데이터 정보를 P2P 서버, 즉 본 발명에 따른 P2P 서비스 제공장치(100)에 제공한다(S610). P2P 서비스 제공장치(100)의 노드정보저장부(110)에는 이와 같이 제공된 데이터 정보를 기초로 피어노드 정보테이블이 생성된다. 다음으로 피어노드는 P2P 서버로부터 수신대상데이터의 데이터량을 기준으로 분류된 P2P 네트워크 내의 피어노드들이 속하는 노드그룹의 그룹정보를 수신한다. 이러한 그룹정보의 제공은 본 발명에 따른 P2P 서비스 제공장치(100)에 구비된 그룹정보제공부(130)에 의해 수행된다.Referring to FIG. 6, first, a peer node in a P2P network includes data information including identification information of a reception target data requested by a user and a data amount of a reception target data held by the user, that is, a P2P service according to the present invention. Provided to the providing device 100 (S610). The node
피어노드는 데이터 교환을 위해 노드그룹의 그룹정보를 기초로 자신과 동일한 노드그룹에 속하는 피어노드들에게 현재 보유하고 있는 수신대상데이터의 종료지점에 연속하는 데이터조각의 제공을 요청한다(S630). 다음으로 수신대상데이터의 제공 요청에 응답한 피어노드로부터 데이터조각을 수신한다(S640). 이와 같이 동일한 노드그룹에 속하는 피어노드들로부터 데이터조각을 수신하는 과정은 제1채널을 통해 이루어진다. 또한 피어노드는 동일한 노드그룹에 속하는 피어노드들과의 데이터 교환을 통해 전체 수신대상데이터를 확보하지 못할 경우를 대비하여 제2채널을 더 구비하고, 이를 통해 다른 노드그룹에 속하는 피어노드들과 데이터를 교환할 수 있다. 그리고 필요로 하는 데이터를 요청하려면 다른 피어노드들에게 데이터를 전송하여야 하므로 이를 위한 데이터를 확보하기 위해 제3채널을 더 구비하여 P2P 네트워크를 구성하는 모든 피어노드들에게 수신대상데이터의 종료지점 이후의 데이터조각의 제공을 요청할 수 있다.The peer node requests the peer nodes belonging to the same node group as the node group to provide continuous data fragments to the end point of the current reception target data based on the group information of the node group for data exchange (S630). Next, a piece of data is received from the peer node in response to the request for providing the target data (S640). As such, the process of receiving data fragments from peer nodes belonging to the same node group is performed through the first channel. In addition, the peer node further includes a second channel in case that the entire receiving target data cannot be obtained through data exchange with peer nodes belonging to the same node group, and through this, the peer node and data belonging to another node group are provided. Can be exchanged. In order to request the required data, data must be transmitted to other peer nodes. Therefore, a third channel is further provided to secure data for this purpose. You can request the provision of a piece of data.
이와 같이 동일 노드그룹 내의 피어노드들끼리의 데이터 교환 및 다른 노드그룹에 속하는 피어노드와의 데이터 교환을 통해서 각각의 피어노드들은 원하는 데이터를 빠르게 획득할 수 있고, 보유하고 있는 데이터의 종료지점에 연속하는 데이터를 요청하여 수신함으로써, 수신된 데이터가 VOD 서비스에 이용되는 경우에는 끊김 없이 데이터를 실행시킬 수 있다.In this way, through exchange of data between peer nodes in the same node group and data with peer nodes belonging to another node group, each peer node can acquire desired data quickly and continuously at the end point of the held data. By requesting and receiving data, the data can be executed without interruption when the received data is used for the VOD service.
본 발명에 따른 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터로 실행시키기 위한 기록매체는 위에서 설명한 바와 같은 방법을 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현한 것이다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.A recording medium for executing a data exchange method in a peer node constituting a P2P network according to the present invention by a computer implements the above-described method as a computer-readable code on a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and may be implemented in the form of a carrier wave (for example, transmission via the Internet) . The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.Although the preferred embodiments of the present invention have been shown and described above, the present invention is not limited to the specific preferred embodiments described above, and the present invention belongs to the present invention without departing from the gist of the present invention as claimed in the claims. Various modifications can be made by those skilled in the art, and such changes are within the scope of the claims.
도 1은 본 발명에 따른 P2P 네트워크의 서버장치에 대한 바람직한 실시예의 구성을 도시한 블록도,1 is a block diagram showing the configuration of a preferred embodiment of a server device of a P2P network according to the present invention;
도 2는 P2P 네트워크에서 상대방 피어노드가 보유하고 있는 데이터를 수신할 때 사용되는 기존 방식을 도시한 도면,2 is a diagram illustrating an existing scheme used when receiving data held by a peer peer node in a P2P network;
도 3은 본 발명에 따른 서비스 제공장치의 노드그룹형성부에 의해 노드그룹을 형성하고, 서로 데이터를 교환하는 복수의 피어노드로 구성되는 P2P 네트워크에 대한 일 예를 도시한 도면,FIG. 3 is a diagram illustrating an example of a P2P network including a plurality of peer nodes that form a node group by a node group forming unit of a service providing apparatus according to the present invention and exchange data with each other; FIG.
도 4는 제1채널을 통하여 동일한 노드그룹에 속하는 다른 피어노드들로부터 데이터를 수신하는 일 예를 도시한 도면,4 illustrates an example of receiving data from other peer nodes belonging to the same node group through a first channel;
도 5는 본 발명에 따른 P2P 서비스 제공방법의 바람직한 실시예의 수행과정을 도시한 흐름도, 그리고,5 is a flowchart illustrating a process of performing a preferred embodiment of a P2P service providing method according to the present invention;
도 6은 본 발명에 따른 P2P 네트워크를 구성하는 피어노드에서의 데이터 교환방법을 컴퓨터에서 실행시키기 위한 기록매체의 바람직한 실시예의 수행과정을 도시한 흐름도이다.6 is a flowchart illustrating a process of performing a preferred embodiment of a recording medium for executing a data exchange method in a computer in a peer node constituting a P2P network according to the present invention.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080120513A KR101055265B1 (en) | 2008-12-01 | 2008-12-01 | Apparatus and method for providing P2P services, and a recording medium for causing a computer to execute a method for exchanging data in a peer node constituting a P2P network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080120513A KR101055265B1 (en) | 2008-12-01 | 2008-12-01 | Apparatus and method for providing P2P services, and a recording medium for causing a computer to execute a method for exchanging data in a peer node constituting a P2P network |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100062082A KR20100062082A (en) | 2010-06-10 |
KR101055265B1 true KR101055265B1 (en) | 2011-08-09 |
Family
ID=42362421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080120513A KR101055265B1 (en) | 2008-12-01 | 2008-12-01 | Apparatus and method for providing P2P services, and a recording medium for causing a computer to execute a method for exchanging data in a peer node constituting a P2P network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101055265B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101144331B1 (en) * | 2010-06-28 | 2012-05-11 | 강원대학교산학협력단 | Time Driven Mesh Overlay Network System and Method for Constructing Time Driven Mesh Overlay Network Using the Same |
KR101223207B1 (en) * | 2010-10-28 | 2013-01-17 | 광주과학기술원 | Tracker node, peer node and method for multi-swam collaboration in bittorrent network |
WO2012154287A2 (en) | 2011-02-28 | 2012-11-15 | Bittorrent, Inc. | Peer-to-peer live streaming |
KR101525471B1 (en) * | 2013-10-30 | 2015-06-03 | 주식회사 마블루스 | Method and system for providing video |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007095309A2 (en) * | 2006-02-13 | 2007-08-23 | Tvu Networks Corporation | Methods, apparatus, and systems for providing media content over a communications network |
KR20080048835A (en) * | 2006-11-29 | 2008-06-03 | 삼성네트웍스 주식회사 | System for real time internet broadcast service and management method thereof |
KR20080064380A (en) * | 2007-01-05 | 2008-07-09 | 엠피에스리서치(주) | Methods and system for p2p-based scalable real-time mobile group communication service management in wireless networks |
KR20080079935A (en) * | 2007-02-28 | 2008-09-02 | 삼성전자주식회사 | System and method of providing contents with qos in p2p networks |
-
2008
- 2008-12-01 KR KR1020080120513A patent/KR101055265B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007095309A2 (en) * | 2006-02-13 | 2007-08-23 | Tvu Networks Corporation | Methods, apparatus, and systems for providing media content over a communications network |
KR20080048835A (en) * | 2006-11-29 | 2008-06-03 | 삼성네트웍스 주식회사 | System for real time internet broadcast service and management method thereof |
KR20080064380A (en) * | 2007-01-05 | 2008-07-09 | 엠피에스리서치(주) | Methods and system for p2p-based scalable real-time mobile group communication service management in wireless networks |
KR20080079935A (en) * | 2007-02-28 | 2008-09-02 | 삼성전자주식회사 | System and method of providing contents with qos in p2p networks |
Also Published As
Publication number | Publication date |
---|---|
KR20100062082A (en) | 2010-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5479683B2 (en) | High quality content providing system and method through P2P networking | |
RU2343536C2 (en) | Mechanism of peer broadcasting of information content | |
JP6937918B2 (en) | Video live broadcasting method and equipment | |
US7613770B2 (en) | On-demand file transfers for mass P2P file sharing | |
US7558797B2 (en) | Metadata structures for mass P2P file sharing | |
US8224968B1 (en) | Method and system for scalable content storage and delivery | |
US8554827B2 (en) | Virtual peer for a content sharing system | |
CN101636967B (en) | Remote data access techniques for portable set | |
JP4473942B2 (en) | Content distribution apparatus, content distribution method, and content distribution program | |
US11102290B2 (en) | Peer-to-peer network prioritizing propagation of objects through the network | |
EP2288085B1 (en) | P2p based method, device and system for playing media | |
US20080133767A1 (en) | Real-time multicast peer-to-peer video streaming platform | |
US10200465B2 (en) | Method and system for content delivery of mobile terminal applications | |
JP4861472B2 (en) | Content distribution apparatus, content distribution method, and content distribution program | |
CN101390395A (en) | A device and a method for sharing resources in a network of peers | |
JP2011198023A (en) | Communication terminal device, computer program, and content search method | |
Yu et al. | Integrated buffering schemes for P2P VoD services | |
KR101055265B1 (en) | Apparatus and method for providing P2P services, and a recording medium for causing a computer to execute a method for exchanging data in a peer node constituting a P2P network | |
EP2171969B1 (en) | Method and system for data management in communication networks | |
JP4506387B2 (en) | Information communication system, node device, overlay network forming method, etc. | |
US20090192999A1 (en) | Search service providing system and search service providing method | |
CN102947821A (en) | Indexing server and method therefor | |
KR101041092B1 (en) | Effective p2p system by using web folder | |
US20080288447A1 (en) | Methods and apparatus for improving peer efficiency | |
JP2009230686A (en) | Content management server and content management program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20140630 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20151102 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |