KR100872170B1 - Multiple routing method on p2p network - Google Patents

Multiple routing method on p2p network Download PDF

Info

Publication number
KR100872170B1
KR100872170B1 KR1020060123191A KR20060123191A KR100872170B1 KR 100872170 B1 KR100872170 B1 KR 100872170B1 KR 1020060123191 A KR1020060123191 A KR 1020060123191A KR 20060123191 A KR20060123191 A KR 20060123191A KR 100872170 B1 KR100872170 B1 KR 100872170B1
Authority
KR
South Korea
Prior art keywords
node
routing
message
routing message
successor
Prior art date
Application number
KR1020060123191A
Other languages
Korean (ko)
Other versions
KR20080051672A (en
Inventor
고선기
권혁찬
나재훈
장종수
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020060123191A priority Critical patent/KR100872170B1/en
Publication of KR20080051672A publication Critical patent/KR20080051672A/en
Application granted granted Critical
Publication of KR100872170B1 publication Critical patent/KR100872170B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Abstract

본 발명은 P2P 네트워크상에서의 라우팅 방법에 관한 것으로, 특히 DHT 기반의 P2P 오버레이 네트워크 시스템에서 라우팅 경로를 구성하는 노드에 문제가 발생한다 하더라도 특정 파일의 위치 정보를 수집하기 위한 라우팅이 가능하도록 하기 위하여, m-비트 식별자 원형 공간의 제1 노드가 자신의 핑거테이블에서 라우팅 메시지를 전달할 제2 노드를 선택하여, 특정 파일의 위치 정보를 요청하는 라우팅 메시지를 상기 제2 노드에게 송신한 다음, 상기 송신한 라우팅 메시지의 전송이 실패하였는지 여부를 확인하여, 상기 송신한 라우팅 메시지의 전송이 실패한 것으로 확인된 경우에는, 상기 핑거테이블에서 상기 라우팅 메시지를 전달받을 다른 노드를 선택하여 상기 라우팅 메시지를 송신한다. The present invention relates to a routing method on a P2P network. In particular, in order to enable routing to collect location information of a specific file even when a problem occurs in a node configuring a routing path in a DHT-based P2P overlay network system, The first node of the m-bit identifier circular space selects a second node to transmit a routing message in its finger table, transmits a routing message requesting location information of a specific file to the second node, and then transmits the routing message. Check whether the transmission of the routing message has failed, and if it is determined that the transmission of the transmitted routing message has failed, select another node to receive the routing message from the finger table and transmit the routing message.

P2P 오버레이 네트워크, 다중 라우팅, chord, 핑거테이블 P2P overlay network, multi routing, chord, fingertable

Description

P2P 네트워크 다중 라우팅 방법{MULTIPLE ROUTING METHOD ON P2P NETWORK}MULTIPLE ROUTING METHOD ON P2P NETWORK

도 1은 종래의 Chord 시스템에서 특정 파일을 소유하고 있는 노드의 위치 정보를 탐색하기 위한 라우팅이 이루어지는 과정을 설명하기 위한 도면,1 is a view for explaining a process of routing to search for location information of a node owning a specific file in a conventional Chord system;

도 2는 종래의 Chord 시스템에서 특정 파일을 소유하고 있는 노드의 위치 정보를 탐색하기 위한 라우팅이 이루어지는 과정을 설명하기 위한 도면,FIG. 2 is a view for explaining a process of routing for searching location information of a node owning a specific file in a conventional Chord system; FIG.

도 3은 본 발명의 바람직한 일 실시예에 따른 P2P 네트워크 다중 라우팅을 행하는 방법을 설명하기 위한 흐름도,3 is a flowchart illustrating a method for performing P2P network multi-routing according to an embodiment of the present invention;

도 4는 본 발명의 또 다른 실시예에 따른 P2P 네트워크 다중 라우팅을 행하여, 라우팅 메시지 전송을 실패하게 하는 노드를 피하여 다른 라우팅 경로를 통해 목표하는 노드에 도달하는 과정을 나타낸 도면,4 is a diagram illustrating a process of reaching a target node through another routing path by performing a P2P network multi-routing according to another embodiment of the present invention and avoiding a node that fails to transmit a routing message.

도 5는 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 정상적으로 이루어지는 과정을 설명하기 위한 도면, FIG. 5 is a diagram for explaining a process of normally performing P2P network multi-routing according to an embodiment of the present invention in the 5-bit identifier circular space; FIG.

도 6은 상기 5-비트 식별자 원형 공간에서 P2P 네트워크 라우팅이 실패하는 과정을 설명하기 위한 도면,6 is a view for explaining a process that P2P network routing fails in the 5-bit identifier circular space;

도 7은 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 도 6과 같은 실패를 회피하고 정상적으로 이루어지는 과정을 설명하기 위한 도면,7 is a view for explaining a process in which the P2P network multi-routing according to an embodiment of the present invention in the 5-bit identifier circular space avoids the failure as shown in FIG.

도 8은 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 실패를 회피하고 정상적으로 이루어지는 과정을 설명하기 위한 도면,8 is a view for explaining a process in which the P2P network multi-routing according to an embodiment of the present invention in the 5-bit identifier circular space avoids failure and is normally performed;

도 9는 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 두 번째 홉에서 실패하는 경우를 설명하기 위한 도면, 그리고9 is a diagram for explaining a case where P2P network multi-routing according to an embodiment of the present invention in the 5-bit identifier circular space fails on the second hop, and

도 10은 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 도 9와 같은 실패를 회피하고 정상적으로 이루어지는 과정을 설명하기 위한 도면이다. FIG. 10 is a diagram for describing a process in which P2P network multi-routing according to an embodiment of the present invention is normally avoided as shown in FIG. 9 in the 5-bit identifier circular space.

본 발명은 P2P 네트워크상에서의 라우팅 방법에 관한 것으로, 특히 DHT 기반의 P2P 오버레이 네트워크 시스템에서 라우팅 경로를 구성하는 노드에 문제가 발생한다 하더라도 특정 파일의 위치 정보를 수집하기 위한 라우팅이 가능한 방법에 관한 것이다. The present invention relates to a routing method in a P2P network, and more particularly, to a routing method for collecting location information of a specific file even when a problem occurs in a node constituting a routing path in a DHT-based P2P overlay network system. .

P2P시스템은 상기 시스템에 참여하는 노드들의 자원을 공유하는 분산 시스템으로 여기에 참여하는 노드들은 서버와 클라이언트의 역할을 모두 수행한다. 대부분의 P2P시스템에서 가장 핵심이 되는 기능은 데이터를 효율적으로 배치하고 탐색 하는 것이다. 이러한 문제를 해결하기 위하여 P2P 오버레이 네트워크, Chord, Pastry, Tapestry 등이 제안되었다. The P2P system is a distributed system that shares the resources of the nodes participating in the system, and the nodes participating in the role play both the server and the client. At the heart of most P2P systems is the ability to efficiently locate and navigate data. To solve this problem, P2P overlay network, Chord, Pastry, Tapestry, etc. have been proposed.

DHT(Distributed Hash Table)을 사용하는 Chord 시스템은 P2P 응용을 위한 분산처리 자원탐색 프로토콜로, 분산탐색을 지원하며 해쉬함수를 이용하여 데이터의 삽입과 탐색을 수행한다. 즉, 상기 Chord 시스템에서 각 노드는 IP주소를 SHA-1과 같은 해쉬함수로 해쉬하여 m-비트의 값을 할당받고, 그 결과물을 모듈로(modulo) 2k 에 의해 원형 식별자 공간에서 자신의 노드아이디(nodeID)에 해당하는 부분에 위치하게 된다. 이때 원형 식별자 공간에서 N(2m-1)노드 바로 뒤에 N(2m-1+1)노드가 있을때, N(2m-1)노드을 N(2m-1+1)노드의 프리디세서(predecessor) 노드라 하고, N(2m-1+1)노드를 N(2m-1)노드의 석세서(successor) 노드라 한다. Chord system using DHT (Distributed Hash Table) is a distributed resource search protocol for P2P application. It supports distributed search and inserts and searches data using hash function. That is, in the Chord system, each node hashes an IP address with a hash function such as SHA-1, and is assigned a value of m-bits, and the result is modulated by its modulo 2 k to its node in the circular identifier space. It is located in the part corresponding to ID (nodeID). At this time, when the N (2 m-1) node immediately following the N (2 m-1 +1) node in the circular identifier space, N (2 m-1) nodeueul N (2 m-1 +1) of the predicate processor nodes ( The N (2 m-1 +1) node is called a successor node of the N (2 m-1 ) node.

상기 Chord 시스템에서 키를 해쉬한 값을 식별자 공간에 대응시킬 때 원형 식별자 공간에서 해쉬된 키값과 같은 nodeID를 가진 노드에 저장하거나, 같은 nodeID를 가진 노드가 없을 때는 바로 뒤의 successor 노드에 저장한다. 각 노드는 전체 네트워크상의 노드에 대한 정보를 분산된 동적 환경에서 효과적으로 만족시키기 위해 라우팅 테이블인 핑거테이블(finger table)을 유지한다. 상기 핑거테이블은 (자신의 노드에서 지수적으로 증가되는 식별자의 nodeID, 상기 nodeID에 대한 successor nodeID) 쌍 정보를 저장하는데, 데이터를 삽입하거나 키를 관리하는 노드를 찾기 위해 룩업(lookup)메시지를 해당 노드에게 전달하는데 이용된다. 메시지 의 라우팅은 각 노드의 핑거테이블에 따라 범위를 지수적으로 감소시키면서 목적 노드를 찾게 된다. In the chord system, when a hashed key corresponds to an identifier space, the key hash value is stored in a node having the same nodeID as the hashed key value in the circular identifier space, or in a successor node immediately after the node having the same nodeID. Each node maintains a finger table, which is a routing table, to efficiently satisfy information about nodes on the entire network in a distributed dynamic environment. The finger table stores pair information (nodeID of an identifier that is exponentially increased in its own node, successor nodeID for the nodeID), and a lookup message for inserting data or finding a node managing a key. It is used to forward to a node. The routing of messages finds the destination node while exponentially decreasing the range according to each node's finger table.

도 1 및 도 2는 종래의 Chord 시스템에서 특정 파일을 소유하고 있는 노드의 위치 정보를 탐색하기 위한 라우팅이 이루어지는 과정을 설명하기 위한 도면이다. 이때, 상기 파일을 소유하고 있는 노드의 위치 정보(예컨대 아이피 주소)는 상기 파일이름을 해쉬함수로 해쉬하여 얻어진 키값(이하, 'k'라 한다)에 의하여 지정된 Successor(k) 노드에 저장된다. 이때, 상기 Successor(k)는 식별자 원형에서 k번째 이후에 존재하는 노드이다. 이하에서는 k > 2m-1 + 2m-2이라고 가정한다. 1 and 2 are diagrams for explaining a process in which a routing for searching for location information of a node that owns a specific file is performed in the conventional Chord system. At this time, the location information (for example, IP address) of the node that owns the file is stored in a Successor (k) node designated by a key value (hereinafter, referred to as 'k') obtained by hashing the file name as a hash function. In this case, Successor (k) is a node existing after the kth in the identifier prototype. In the following, it is assumed that k> 2 m-1 + 2 m-2 .

도 1을 참조하면, m-비트 식별자 원형공간에서 N(1)노드가 Successor(k)노드를 찾기 위하여, 먼저 N(1)노드의 핑거테이블에서 nodeID가 k에 가장 근접한 N(2m-1)노드에서 d2만큼 떨어진 N(2m-1+d2)노드에게 라우팅 메시지를 보낸다. 상기 라우팅 메시지를 수신한 N(2m-1+d2)노드는 자신의 핑거테이블을 참조하여 다음 노드에게 라우팅 메시지를 전송한다. 이렇게 여러 홉을 거쳐 라우팅 메시지가 Successor(k)노드에게 도달하면, 상기 Successor(k)노드는 파일을 소유한 노드의 위치 정보를 상기 N(1)노드에게 제공한다. Referring to FIG. 1, in order to find the Successor (k) node in the m-bit identifier circular space, N (2 m-1, where nodeID is closest to k in the finger table of the N (1) node, first. ) sent to nodes in the distance d 2 by N (2 m-1 + d 2) node, the routing message. The N (2 m-1 + d 2 ) node receiving the routing message transmits the routing message to the next node with reference to its finger table. When the routing message reaches the Successor (k) node through several hops, the Successor (k) node provides the N (1) node with location information of the node that owns the file.

도 2를 참조하면, 상기 N(1)노드로부터 라우팅 메시지를 전달받은 N(2m-1+d2)노드가 악의적인 노드이거나 손상된 핑거테이블을 가지고 있어서 라우팅 메시지 전 송을 방해한다면 N(1)노드는 원하는 위치 정보를 얻을 수 없게 된다는 문제가 있다. Referring to FIG. 2, if the N (2 m-1 + d 2 ) node that receives the routing message from the N (1) node is a malicious node or has a damaged finger table, the N (1) node may interfere with the routing message transmission. There is a problem that a node cannot obtain desired location information.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, DHT 기반의 P2P 오버레이 네트워크 시스템에서 라우팅 경로를 구성하는 노드에 문제가 발생한다 하더라도 특정 파일의 위치 정보를 수집하기 위한 라우팅을 성공시킬 수 있는 다중 라우팅 방법을 제공하는 것을 목적으로 한다. An object of the present invention for solving the above problems, even if a problem occurs in the node constituting the routing path in the DHT-based P2P overlay network system multiple routing that can succeed in collecting the location information of a specific file It is an object to provide a routing method.

상기와 같은 본 발명의 목적을 달성하기 위하여, P2P 네트워크 다중 라우팅 방법은, In order to achieve the above object of the present invention, P2P network multiple routing method,

(a) m-비트 식별자 원형 공간의 제1 노드가 자신의 핑거테이블에서 라우팅 메시지를 전달할 제2 노드를 선택하는 단계;(a) selecting, by the first node of the m-bit identifier circular space, a second node to which to forward the routing message in its finger table;

(b) 상기 (a)단계를 통하여 제2 노드가 선택되면, 상기 제1 노드가 특정 파일의 위치 정보를 요청하는 라우팅 메시지를 상기 제2 노드에게 송신하는 단계;(b) if the second node is selected through the step (a), transmitting the routing message to the second node by the first node requesting location information of a specific file;

(c) 상기 제1 노드가 상기 (c)단계에서 송신한 라우팅 메시지의 전송이 실패하였는지 여부를 확인하는 단계; 및,(c) checking, by the first node, whether transmission of the routing message transmitted in step (c) has failed; And,

(d) 상기 (c)단계를 통하여 상기 (b)단계에서 송신한 라우팅 메시지의 전송이 실패한 것으로 확인된 경우에는, 상기 핑거테이블에서 상기 라우팅 메시지를 전달받을 다른 노드를 선택하여 상기 라우팅 메시지를 송신하는 단계를 포함하여 구성된다. (d) If it is determined through step (c) that transmission of the routing message transmitted in step (b) has failed, select another node to receive the routing message in the finger table and transmit the routing message. It is configured to include.

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, in describing in detail the operating principle of the preferred embodiment of the present invention, if it is determined that the detailed description of the related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. The same reference numerals are used for parts having similar functions and functions throughout the drawings.

도 3은 본 발명의 바람직한 일 실시예에 따른 P2P 네트워크 다중 라우팅을 행하는 방법을 설명하기 위한 흐름도이다. 3 is a flowchart illustrating a method for performing P2P network multi-routing according to an embodiment of the present invention.

도 3을 참조하면, 먼저 제1 노드가 자신의 핑거테이블에서 라우팅 메시지를 전달할 제2 노드를 선택한다(S101). 이때, 상기 제2 노드를 선택하기 단계는 대상이 되는 파일을 해쉬함수로 해쉬하여 키값을 얻은 다음, 자신의 핑거테이블에서 상기 키값과 동일한 값을 갖는 nodeID 또는 동일한 nodeID가 없으면 상기 키값과 가장 가까운 값에 해당하는 nodeID를 선택하여, 상기 nodeID를 갖는 노드의 Successor노드를 상기 제2 노드로 선택하는 과정을 통하여 수행되는 것이 바람직하다. Referring to FIG. 3, first, a first node selects a second node to transmit a routing message in its finger table (S101). In this case, the selecting of the second node may include obtaining a key value by hashing a target file with a hash function, and then, if there is no nodeID having the same value as the key value or the same nodeID in its finger table, the value closest to the key value. It is preferable to perform a process of selecting a nodeID corresponding to and selecting a Successor node of the node having the nodeID as the second node.

상기 S101단계를 통하여 제2 노드가 선택되면, 상기 제1 노드는 상기 파일의 위치 정보를 요청하는 라우팅 메시지를 상기 제2 노드에게 송신한다(S102). 이때, 상기 S102단계와 관련하여, 상기 제1 노드는 라우팅 메시지를 전달받은 제2 노드가 다시 상기 라우팅 메시지를 다음 노드 제3 노드로 전송하는 경우에 이를 확인하는 메시지를 전달받을 수 있다. When the second node is selected through the step S101, the first node transmits a routing message for requesting location information of the file to the second node (S102). In this case, in relation to step S102, the first node may receive a message confirming this when the second node, which has received the routing message, transmits the routing message to the next node.

본 발명에 적용할 수 있는 바람직한 실시예에서 상기 라우팅 메시지는 상기 대상이 되는 파일이 저장되어 있는 위치 정보를 요청한 노드의 nodeID 및 상기 파일을 해쉬함수로 해쉬한 키값 정보를 포함할 수 있다. In a preferred embodiment applicable to the present invention, the routing message may include the nodeID of the node requesting the location information where the target file is stored and the key value information hashed by the file as a hash function.

다음으로, 제1 노드는 상기 S102단계에서 송신한 라우팅 메시지의 전송이 실패하였는지 여부를 확인한다(S103). 본 발명이 적용할 수 있는 바람직한 실시예에서 라우팅 메시지의 전송이 실패한다는 것은 상기 제2 노드가 악의적인 노드여서 상기 라우팅 메시지 전달을 방해한다거나, 또는 상기 제2 노드의 핑거테이블이 손상되어 더이상의 라우팅 메시지 전달이 불가능한 경우를 의미한다. Next, the first node checks whether the transmission of the routing message transmitted in step S102 has failed (S103). In a preferred embodiment to which the present invention can be applied, the failure of the routing message to be transmitted means that the second node is a malicious node, which prevents the routing message from being transmitted, or the finger table of the second node is damaged so that further routing is not possible. It means that message delivery is impossible.

상기 S103단계에서 상기 제1 노드가 라우팅 메시지의 전송이 실패하였는지 여부를 확인하는 방법은, 임계시간 이내에 상기 해당 파일이 저장되어 있는 위치 정보를 요청한 노드가 상기 위치 정보를 저장하고 있는 노드로부터 상기 라우팅 메시지에 대한 응답이 전달되었는지 여부 또는 상기 라우팅 메시지를 전달받은 제2 노드가 제3 노드에게 상기 라우팅 메시지를 전송하였음을 확인하는 메시지가 상기 제1 노드에게 전달되었는지 여부에 기초하여 판단할 수 있다. In the step S103, the first node checks whether the transmission of the routing message has failed, wherein the node requesting the location information in which the corresponding file is stored within a threshold time is stored from the node storing the location information. It may be determined based on whether a response to the message has been delivered or whether a message confirming that the second node that has received the routing message has transmitted the routing message to the third node has been delivered to the first node.

상기 S103단계를 통하여 상기 S102단계에서 송신한 라우팅 메시지의 전송이 실패한 것으로 확인된 경우에는, 상기 핑거테이블에서 다른 노드를 선택하여 라우팅 메시지를 송신한다(S104). 이때, 상기 라우팅 메시지의 전송이 실패한 것으로 확인된 경우에, 상기 제1 노드가 상기 전송 실패에 관한 정보를 별도로 저장할 수 있다. 본 발명에 적용할 수 있는 바람직한 실시예에서 상기 전송 실패에 관한 정보 른 목표로 하는 파일의 해쉬값 및 라우팅 실패가 발생한 노드의 nodeID 정보를 포함하는 것이 바람직하다. If it is determined through step S103 that the transmission of the routing message transmitted in step S102 has failed, another node is selected in the finger table to transmit the routing message (S104). In this case, when it is determined that transmission of the routing message has failed, the first node may separately store information about the transmission failure. In a preferred embodiment applicable to the present invention, it is preferable that the information on the transmission failure includes the hash value of the file to be targeted and the nodeID information of the node where the routing failure occurs.

이때, 상기 S102단계 내지 S104단계는 상기 해당 파일이 저장되어 있는 위치 정보를 요청한 노드가 상기 위치 정보를 저장하고 있는 노드로부터 상기 라우팅 메시지에 대한 응답을 전달받을 때까지 반복하는 것이 바람직하다. In this case, steps S102 to S104 may be repeated until the node requesting the location information in which the corresponding file is stored receives a response to the routing message from the node storing the location information.

도 4는 본 발명의 또 다른 실시예에 따른 P2P 네트워크 다중 라우팅을 행하여, 라우팅 메시지 전송을 실패하게 하는 노드를 피하여 다른 라우팅 경로를 통해 목표하는 노드에 도달하는 과정을 나타낸 도면이다. 4 is a diagram illustrating a process of reaching a target node through another routing path by performing a P2P network multi-routing according to another embodiment of the present invention and avoiding a node that fails to transmit a routing message.

도 4를 참조하면, 먼저 m-비트 식별자 원형공간에서 N(1)노드가 Successor(k)노드를 찾기 위하여, 먼저 N(1)노드의 핑거테이블에서 nodeID가 k에 가장 근접한 N(2m-1)노드에서 d2만큼 떨어진 N(2m-1+d2)노드에게 라우팅 메시지를 송신하지만, N(2m-1+d2)노드에 문제가 있어서 N(1)노드로부터 N(2m-1+d2)노드로의 라우팅이 실패하게 된다(미도시). Referring to FIG. 4, first, in order to find the Successor (k) node in the m-bit identifier circular space, N (2 m− ) where nodeID is closest to k in the finger table of the N (1) node. 1) from a problem with the transmission to the at node d 2 by a distance N (2 m-1 + d 2) node for routing messages, however, N (2 m-1 + d 2) node in N (1) a node N (2 m-1 + d 2 ) routing to the node fails (not shown).

이에 상기 라우팅이 실패한 것을 확인한 N(1)노드는 다시 자신의 핑거 테이블을 참조하여 N(2m-1+d2)노드 대신 Successor(k)노드로부터 거리가 두 번째로 가까운 N(2m-2+d1)노드로 라우팅 메시지를 송신한다.Thus the routing is N (1) confirming that the failed node is again his finger with reference to the table N (2 m-1 + d 2) nodes instead Successor (k), the second closest street N (2 m- with from node 2 + d 1 ) Send the routing message to the node.

상기 라우팅 메시지를 수신한 N(2m-2+d1)노드는 자신의 핑거 테이블을 참조하여, 2m-1+d3 만큼 떨어진 곳의 노드 N(2m-1+2m-2+d1+d3)로 상기 라우팅 메시지를 중개한다. 이때 발생하는 홉의 거리, 2m-1+d3는 N(2m-1)노드 및 N(2m-1+2m-2)노드 사이에 존재하는 문제의 N(2m-1+d2)를 뛰어넘어 회피하기에 충분한 거리다. The N (2 m-2 + d 1 ) node receiving the routing message refers to its finger table, and the node N (2 m-1 +2 m-2 + away from 2 m-1 + d 3 ). d 1 + d 3 ) to route the routing message. The distance of hops occurring, 2 m-1 + d 3 is N (2 m-1) nodes, and N (2 m-1 +2 m -2) N (2 m-1 of the problems existing between the node + enough distance to avoid d 2 ).

만약 상기 새로운 라우팅 경로상의 N(2m-2+d1)노드에도 문제가 있어 라우팅에 실패하는 경우에는, 상기 N(1)노드은 다시 자신의 핑거 테이블에서 노드 Successor(k)로부터의 거리가 그 다음으로 가까운 다른 노드를 선택하여 다시 라우팅 메시지를 전송하여 새로운 라우팅 경로를 만든다. 이렇게 m 개의 엔트리를 가진 핑거 테이블이 허용하는 횟수만큼 라우팅을 재시도하는 다중 라우팅을 통하여 라우팅의 성공률을 높일 수 있다.If there is a problem with the N (2 m-2 + d 1 ) node on the new routing path and the routing fails, the N (1) node again has its distance from the node Successor (k) in its finger table. Next, select another nearby node and send a routing message again to create a new routing path. The success rate of routing can be improved through multiple routing that retry routing as many times as the finger table with m entries allows.

이하, 도 5 내지 도 8을 통하여 m=5인 5-비트 식별자 원형 공간에서 본 발명의 또 다른 실시예에 따른 P2P 네트워크 다중 라우팅을 행하는 과정을 설명한다. Hereinafter, a process of performing P2P network multi-routing according to another embodiment of the present invention in a 5-bit identifier circular space with m = 5 will be described with reference to FIGS. 5 through 8.

도 5는 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 정상적으로 이루어지는 과정을 설명하기 위한 도면이다. FIG. 5 is a diagram for describing a process in which P2P network multi-routing is normally performed in the 5-bit identifier circular space.

도 5에서 32(=25)개의 노드가 조인(join)할 수 있는 5-비트 식별자 원형 공 간에, 현재 6개의 노드가 존재한다. 이때, 대상이 되는 파일의 해쉬값이 25라고 가정하면, 상기 파일이 저장되어 있는 노드의 위치 정보는 Successor(25)노드인 N(28)노드에 저장된다. In FIG. 5, there are currently six nodes, in a 5-bit identifier circular space that 32 (= 2 5 ) nodes can join. At this time, if the hash value of the target file is 25, the location information of the node in which the file is stored is stored in the N (28) node which is a Successor (25) node.

먼저, 상기 파일을 검색하는 N(1)노드는 N(28)노드가 Successor(25)노드인 것을 모르기 때문에, 우선 자신의 핑거테이블을 참조하여 nodeID가 25에 가장 가까운 17을 검색한 다음, nodeID 17의 Successor노드인 N(19)노드[Successor(17)=19]에게 Successor(25)노드의 위치를 문의한다. First, since the N (1) node searching for the file does not know that the N (28) node is a Successor (25) node, the nodeID is first searched for 17 whose nodeID is closest to 25 by referring to its own finger table, and then nodeID Query the N (19) node [Successor (17) = 19], the Successor node of 17, to locate the Successor (25) node.

N(19)노드는 다시 Successor(23)노드인 N(24)노드에게 상기 라우팅 메시지를 중개하고, N(24)노드는 Successor(25)노드가 N(28)노드임을 핑거테이블에서 알아낸 다음, 상기 N(28)노드에게 N(1)노드의 라우팅 메시지를 전달한다. 이에 N(28)노드이 해쉬값 25에 해당하는 상기 파일의 위치 정보를 N(1)노드에게 통보함으로써 라우팅이 완성된다.The N (19) node then relays the routing message to the N (24) node, which is a Successor (23) node, and the N (24) node finds in the finger table that the Successor (25) node is an N (28) node. It forwards the routing message of the N (1) node to the N (28) node. Therefore, the N (28) node notifies the N (1) node of the location information of the file corresponding to the hash value 25, thereby completing the routing.

도 6은 상기 5-비트 식별자 원형 공간에서 P2P 네트워크 라우팅이 실패하는 과정을 설명하기 위한 도면이다. 이때, 상기 식별자 원형 공간에서 N(19)노드가 손상된 핑거 테이블을 가지고 있는 것으로 가정한다. FIG. 6 is a diagram for describing a process in which P2P network routing fails in the 5-bit identifier circular space. In this case, it is assumed that the N (19) node has a damaged finger table in the identifier circular space.

먼저, 해당 파일을 검색하는 N(1)노드는 N(28)노드가 Successor(25)노드인 것을 모르기 때문에, 우선 자신의 핑거테이블을 참조하여 nodeID가 25에 가장 가까운 17을 검색한 다음, nodeID 17의 Successor노드인 N(19)노드[Successor(17)=19]에게 Successor(25)노드의 위치를 문의한다.First, the N (1) node that retrieves the file does not know that the N (28) node is a Successor (25) node. First, it searches its own finger table and searches for 17 whose nodeID is closest to 25. Then, nodeID Query the N (19) node [Successor (17) = 19], the Successor node of 17, to locate the Successor (25) node.

그러나, N(19)노드가 손상된 핑거테이블을 가지고 있어서, 상기 N(1)노드가 보낸 라우팅 메시지는 다음 노드로 전송되지 못하고 소실되기 때문에, 상기 라우팅이 실패하게 된다. However, since the N (19) node has a damaged finger table, the routing message sent by the N (1) node cannot be sent to the next node and is lost. Therefore, the routing fails.

도 7은 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 도 6과 같은 실패를 회피하고 정상적으로 이루어지는 과정을 설명하기 위한 도면이다. FIG. 7 is a diagram for describing a process in which P2P network multi-routing according to an embodiment of the present invention is normally avoided as shown in FIG. 6 in the 5-bit identifier circular space.

먼저, 해당 파일을 검색하는 N(1)노드는 N(28)노드가 Successor(25)노드인 것을 모르기 때문에, 우선 자신의 핑거테이블을 참조하여 nodeID가 25에 가장 가까운 17을 검색한 다음, nodeID 17의 Successor노드인 N(19)노드[Successor(17)=19]에게 Successor(25)노드의 위치를 문의한다.First, the N (1) node that retrieves the file does not know that the N (28) node is a Successor (25) node. First, it searches its own finger table and searches for 17 whose nodeID is closest to 25. Then, nodeID Query the N (19) node [Successor (17) = 19], the Successor node of 17, to locate the Successor (25) node.

그러나, N(19)노드가 손상된 핑거테이블을 가지고 있어서, 상기 N(1)노드가 보낸 라우팅 메시지는 다음 노드로 전송되지 못하고 소실되기 때문에, 상기 라우팅이 실패하게 된다. However, since the N (19) node has a damaged finger table, the routing message sent by the N (1) node cannot be sent to the next node and is lost. Therefore, the routing fails.

상기 실패를 확인한 N(1)노드는 자신의 핑거 테이블을 다시 참조하여 17 대신에 25에 가장 가까운 nodeID인 9를 검색한 다음, nodeID 9의 Successor노드인 N(12)노드[Successor(9)=12]에게 Successor(25)노드의 위치를 문의한다. 이때, 상기 N(1)노드는 라우팅에 실패한 노드 정보를 별도로 저장하는데, 목표로 하는 파일의 해쉬값(예컨대 25) 및 라우팅 실패가 발생한 노드의 nodeID(예컨대 19)를 저장하는 것이 바람직하다. The N (1) node confirming the failure finds 9, which is the nodeID closest to 25 instead of 17, by referencing its finger table again, and then N (12) node [Successor (9) = 12], ask the location of the Successor (25) node. In this case, the N (1) node separately stores node information that fails in routing. Preferably, the N (1) node stores a hash value (eg, 25) of a target file and a nodeID (eg, 19) of a node in which a routing failure occurs.

N(12)노드는 다시 Successor(20)노드인 N(24)노드에게 상기 라우팅 메시지를 중개하고, N(24)노드는 Successor(25)노드가 N(28)노드임을 핑거테이블에서 알아낸 다음, 상기 N(28)노드에게 N(1)노드의 라우팅 메시지를 전달한다. 이에 N(28)노드이 해쉬값 25에 해당하는 상기 파일의 위치 정보를 N(1)노드에게 통보함으로써 라우팅이 완성된다.The N (12) node again mediates the routing message to the N (24) node, which is a Successor (20) node, and the N (24) node finds from the finger table that the Successor (25) node is an N (28) node. It forwards the routing message of the N (1) node to the N (28) node. Therefore, the N (28) node notifies the N (1) node of the location information of the file corresponding to the hash value 25, thereby completing the routing.

도 8은 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 실패를 회피하고 정상적으로 이루어지는 과정을 설명하기 위한 도면이다. 이때, 상기 식별자 원형 공간에서 N(19)노드 및 N(12)노드가 손상된 핑거 테이블을 가지고 있는 것으로 가정한다. FIG. 8 is a diagram for explaining a process in which P2P network multiple routing according to an embodiment of the present invention avoids failure and is normally performed in the 5-bit identifier circular space. In this case, it is assumed that N (19) and N (12) nodes have a damaged finger table in the identifier circular space.

먼저, 해당 파일을 검색하는 N(1)노드는 N(28)노드가 Successor(25)노드인 것을 모르기 때문에, 우선 자신의 핑거테이블을 참조하여 nodeID가 25에 가장 가까운 17을 검색한 다음, nodeID 17의 Successor노드인 N(19)노드[Successor(17)=19]에게 Successor(25)노드의 위치를 문의한다.First, the N (1) node that retrieves the file does not know that the N (28) node is a Successor (25) node. First, it searches its own finger table and searches for 17 whose nodeID is closest to 25. Then, nodeID Query the N (19) node [Successor (17) = 19], the Successor node of 17, to locate the Successor (25) node.

그러나, N(19)노드가 손상된 핑거테이블을 가지고 있어서, 상기 N(1)노드가 보낸 라우팅 메시지는 다음 노드로 전송되지 못하고 소실되기 때문에, 상기 라우팅이 실패하게 된다. However, since the N (19) node has a damaged finger table, the routing message sent by the N (1) node cannot be sent to the next node and is lost. Therefore, the routing fails.

상기 실패를 확인한 N(1)노드는 자신의 핑거 테이블을 다시 참조하여 17 대신에 25에 가장 가까운 nodeID인 9를 검색한 다음, nodeID 9의 Successor노드인 N(12)노드[Successor(9)=12]에게 Successor(25)노드의 위치를 문의한다. The N (1) node confirming the failure finds 9, which is the nodeID closest to 25 instead of 17, by referencing its finger table again, and then N (12) node, which is the Successor node of nodeID 9 [Successor (9) = 12], ask the location of the Successor (25) node.

그러나, N(12)노드 또한 손상된 핑거테이블을 가지고 있어서, 상기 N(1)노드가 보낸 라우팅 메시지는 다음 노드로 전송되지 못하고 소실되기 때문에, 상기 라우팅이 실패하게 된다. However, the N (12) node also has a corrupted finger table, so the routing message sent by the N (1) node cannot be sent to the next node and is lost, so that the routing fails.

상기 실패를 확인한 N(1)노드는 자신의 핑거 테이블을 다시 참조하여 17 및 9 대신에 25에 가장 가까운 nodeID인 5를 검색한 다음, nodeID 5의 Successor노드인 N(7)노드[Successor(5)=7]에게 Successor(25)노드의 위치를 문의한다. The N (1) node confirming the failure finds 5, which is the nodeID closest to 25 instead of 17 and 9, by referring back to its finger table, and then N (7) node, which is a Successor node of nodeID 5 [Successor (5). ) = 7] for the location of the Successor (25) node.

이때, 상기 N(1)노드는 라우팅에 실패한 노드 정보를 별도로 저장하는데, 목표로 하는 파일의 해쉬값(예컨대 25) 및 라우팅 실패가 발생한 노드의 nodeID(19 및 12)를 저장하는 것이 바람직하다. In this case, the N (1) node separately stores node information that fails in routing, and preferably stores a hash value (for example, 25) of a target file and nodeIDs 19 and 12 of a node in which a routing failure occurs.

N(7)노드는 다시 Successor(23)노드인 N(24)노드에게 상기 라우팅 메시지를 중개하고, N(24)노드는 Successor(25)노드가 N(28)노드임을 핑거테이블에서 알아낸 다음, 상기 N(28)노드에게 N(1)노드의 라우팅 메시지를 전달한다. 이에 N(28)노드이 해쉬값 25에 해당하는 상기 파일의 위치 정보를 N(1)노드에게 통보함으로써 라우팅이 완성된다.N (7) node in turn relays the routing message to N (24) node, which is a Successor (23) node, and N (24) node finds from the finger table that Successor (25) node is N (28) node. It forwards the routing message of the N (1) node to the N (28) node. Therefore, the N (28) node notifies the N (1) node of the location information of the file corresponding to the hash value 25, thereby completing the routing.

도 9는 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 두 번째 홉에서 실패하는 경우를 설명하기 위한 도면이다. FIG. 9 is a diagram illustrating a case in which P2P network multi-routing according to an embodiment of the present invention fails in the second hop in the 5-bit identifier circular space.

도 9에서 32(=25)개의 노드가 조인(join)할 수 있는 5-비트 식별자 원형 공간에, 현재 6개의 노드가 존재한다. 이때, 대상이 되는 파일의 해쉬값이 31이라고 가정하면, 상기 파일이 저장되어 있는 노드의 위치 정보는 Successor(31)노드인 N(32)노드에 저장된다. In FIG. 9, there are currently six nodes in the 5-bit identifier circular space that 32 (= 25 ) nodes can join. At this time, if the hash value of the target file is 31, the location information of the node in which the file is stored is stored in the N (32) node, which is a Successor (31) node.

먼저, 상기 파일을 검색하는 N(1)노드는 N(32)노드가 Successor(31)노드인 것을 모르기 때문에, 우선 자신의 핑거테이블을 참조하여 nodeID가 31에 가장 가까운 17을 검색한 다음, nodeID 17의 Successor노드인 N(19)노드[Successor(17)=19]에게 Successor(31)노드의 위치를 문의한다. First, since the N (1) node searching for the file does not know that the N (32) node is a Successor (31) node, the nodeID is first searched for 17 whose nodeID is closest to 31 by referring to its own finger table. Query the N (19) node [Successor (17) = 19], the Successor node of 17, to locate the Successor (31) node.

N(19)노드는 다시 Successor(27)노드인 N(28)노드에게 상기 라우팅 메시지를 중개한다. N (19) node in turn relays the routing message to N (28) node which is Successor (27) node.

그러나, N(28)노드는 손상된 핑거테이블을 가지고 있어서, 상기 N(19)노드로부터 전송되어진 라우팅 메시지는 다음 노드로 전송되지 못하고 소실되기 때문에, 상기 라우팅이 실패하게 된다. However, the N (28) node has a damaged finger table, so that the routing message fails because the routing message transmitted from the N (19) node is not transmitted to the next node.

도 10은 상기 5-비트 식별자 원형 공간에서 본 발명의 실시예에 따른 P2P 네트워크 다중 라우팅이 도 9와 같은 실패를 회피하고 정상적으로 이루어지는 과정을 설명하기 위한 도면이다. FIG. 10 is a diagram for describing a process in which P2P network multi-routing according to an embodiment of the present invention is normally avoided as shown in FIG. 9 in the 5-bit identifier circular space.

먼저, 상기 파일을 검색하는 N(1)노드는 N(32)노드가 Successor(31)노드인 것을 모르기 때문에, 우선 자신의 핑거테이블을 참조하여 nodeID가 31에 가장 가까운 17을 검색한 다음, nodeID 17의 Successor노드인 N(19)노드[Successor(17)=19]에게 Successor(31)노드의 위치를 문의한다. First, since the N (1) node searching for the file does not know that the N (32) node is a Successor (31) node, the nodeID is first searched for 17 whose nodeID is closest to 31 by referring to its own finger table. Query the N (19) node [Successor (17) = 19], the Successor node of 17, to locate the Successor (31) node.

N(19)노드는 다시 Successor(27)노드인 N(28)노드에게 상기 라우팅 메시지를 중개한다. N (19) node in turn relays the routing message to N (28) node which is Successor (27) node.

그러나, N(28)노드는 손상된 핑거테이블을 가지고 있어서, 상기 N(19)노드로부터 전송되어진 라우팅 메시지는 다음 노드로 전송되지 못하고 소실되기 때문에, 상기 라우팅이 실패하게 된다. However, the N (28) node has a damaged finger table, so that the routing message fails because the routing message transmitted from the N (19) node is not transmitted to the next node.

상기 실패를 확인한 N(19)노드는 자신의 핑거 테이블을 다시 참조하여 27 대신에 31에 가장 가까운 nodeID인 23을 검색한 다음, nodeID 23의 Successor노드인 N(26)노드[Successor(23)=26]에게 Successor(31)노드의 위치를 문의한다. The N (19) node, which has confirmed the failure, refers to its finger table again, searches for 23, which is the nodeID closest to 31 instead of 27, and then N (26), which is the Successor node of nodeID 23 [Successor (23) = 26], ask the location of the Successor (31) node.

N(26)노드는 다시 Successor(30)노드가 N(32)노드임을 핑거테이블에서 알아낸 다음, 상기 N(32)노드에게 N(1)노드의 라우팅 메시지를 전달한다. 이에 N(32)노드가 해쉬값 31에 해당하는 상기 파일의 위치 정보를 N(1)노드에게 통보함으로써 라우팅이 완성된다.The N (26) node finds again from the finger table that the Successor (30) node is an N (32) node, and then delivers the N (1) node's routing message to the N (32) node. Thus, routing is completed by the N (32) node notifying the N (1) node of the location information of the file corresponding to the hash value 31.

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 당업자에게 있어 명백할 것이다. The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and it is common in the art that various substitutions, modifications, and changes can be made without departing from the technical spirit of the present invention. It will be apparent to those skilled in the art.

상기한 바와 같이 본 발명의 다중 라우팅 방법에 따르면, DHT 기반의 P2P 오버레이 네트워크 시스템에서 라우팅 경로를 구성하는 노드에 문제가 발생한다 하더라도 특정 파일의 위치 정보를 수집하기 위한 라우팅을 성공시킬 수 있다. As described above, according to the multiple routing method of the present invention, even if a problem occurs in a node configuring a routing path in a DHT-based P2P overlay network system, routing for collecting location information of a specific file can be successful.

Claims (10)

(a) m-비트 식별자 원형 공간의 제1 노드가 자신의 핑거테이블에서 라우팅 메시지를 전달할 제2 노드를 선택하는 단계;(a) selecting, by the first node of the m-bit identifier circular space, a second node to which to forward the routing message in its finger table; (b) 상기 (a)단계를 통하여 제2 노드가 선택되면, 상기 제1 노드가 특정 파일의 위치 정보를 요청하는 라우팅 메시지를 상기 제2 노드에게 송신하는 단계;(b) if the second node is selected through the step (a), transmitting the routing message to the second node by the first node requesting location information of a specific file; (c) 상기 제1 노드가 상기 라우팅 메시지가 제2 노드로부터 다음 노드인 제3 노드로 성공적으로 전송하는 경우에 이를 확인하는 응답 메시지를 전달받는 단계;(c) receiving, by the first node, a response message confirming when the routing message is successfully transmitted from the second node to the next node, the third node; (d) 상기 제1 노드가 (c) 단계를 통하여 상기 응답 메시지를 전달받았는지를 확인하여, 상기 (b) 단계에서 송신한 라우팅 메시지의 전송이 실패하였는지 여부를 확인하는 단계; 및,(d) checking whether the first node has received the response message through step (c), and checking whether transmission of the routing message transmitted in step (b) has failed; And, (e) 상기 (d) 단계를 통하여 상기 (b)단계에서 송신한 라우팅 메시지의 전송이 실패한 것으로 확인된 경우에는, 상기 핑거테이블에서 상기 라우팅 메시지를 전달받을 다른 노드를 선택하여 상기 라우팅 메시지를 송신하는 단계를 포함하여 구성되는 P2P 네트워크 다중 라우팅 방법.(e) If it is determined through step (d) that the routing message transmitted in step (b) has failed, select another node to receive the routing message in the finger table and transmit the routing message. P2P network multi-routing method comprising a step. 제 1항에 있어서,The method of claim 1, 상기 (a)단계는,In step (a), (a1) 대상이 되는 특정 파일을 해쉬함수로 해쉬하여 키값을 얻은 단계;(a1) obtaining a key value by hashing a specific file as a hash function; (a2) 상기 제1 노드가 자신의 핑거테이블에서 상기 키값과 동일한 값을 갖는 노드아이디를 선택하는 단계; 및, (a2) the first node selecting a node ID having the same value as the key value in its finger table; And, (a3) 상기 (a2)단계에서 선택된 노드아이디를 갖는 노드의 석세서(successor)노드를 제2 노드로 선택하는 단계를 통하여 수행되는 것을 특징으로 하는 P2P 네트워크 다중 라우팅 방법.(a3) P2P network multiple routing method, characterized in that the step of selecting a successor node of the node having a node ID selected in the step (a2) as a second node. 제 1항에 있어서,The method of claim 1, 상기 (a)단계는,In step (a), (a1) 대상이 되는 특정 파일을 해쉬함수로 해쉬하여 키값을 얻은 단계;(a1) obtaining a key value by hashing a specific file as a hash function; (a2) 상기 제1 노드가 자신의 핑거테이블에서 상기 키값과 가장 가까운 값을 갖는 노드아이디를 선택하는 단계; 및, (a2) the first node selecting a node ID having a value closest to the key value in its finger table; And, (a3) 상기 (a2)단계에서 선택된 노드아이디를 갖는 노드의 석세서(successor)노드를 제2 노드로 선택하는 단계를 통하여 수행되는 것을 특징으로 하는 P2P 네트워크 다중 라우팅 방법.(a3) P2P network multiple routing method, characterized in that the step of selecting a successor node of the node having a node ID selected in the step (a2) as a second node. 삭제delete 제 1항에 있어서,The method of claim 1, 상기 라우팅 메시지는 상기 대상이 되는 파일이 저장되어 있는 위치 정보를 요청한 노드의 노드아이디 및 상기 파일을 해쉬함수로 해쉬한 키값 정보를 포함하는 것을 특징으로 하는 P2P 네트워크 다중 라우팅 방법.The routing message includes a node ID of a node requesting location information storing the target file and key value information hashing the file as a hash function. 제 1항에 있어서,The method of claim 1, 상기 (d)단계는 임계시간 이내에 상기 해당 파일이 저장되어 있는 위치 정보를 요청한 노드가 상기 위치 정보를 저장하고 있는 노드로부터 상기 라우팅 메시지에 대한 응답이 전달되었는지 여부에 기초하여 판단하는 것을 특징으로 하는 P2P네트워크 다중 라우팅 방법.In step (d), the node requesting the location information in which the corresponding file is stored within the threshold time is determined based on whether or not a response to the routing message is transmitted from the node storing the location information. P2P network multiple routing method. 제 1항에 있어서,The method of claim 1, 상기 (d)단계는 상기 라우팅 메시지를 전달받은 제2 노드가 제3 노드에게 상기 라우팅 메시지를 전송하였음을 확인하는 메시지가 상기 제1 노드에게 전달되었는지 여부에 기초하여 판단하는 것을 특징으로 하는 P2P네트워크 다중 라우팅 방법.In the step (d), the P2P network is determined based on whether a message confirming that the second node that has received the routing message has transmitted the routing message to the third node has been delivered to the first node. Multiple routing method. 제 1항에 있어서,The method of claim 1, 상기 (d)단계 및 (e)단계 사이에, 상기 (d)단계를 통하여 상기 (b)단계에서 송신한 라우팅 메시지의 전송이 실패한 것으로 확인된 경우에는, 상기 제1 노드가 상기 전송 실패에 관한 정보를 별도로 저장하는 단계를 더 포함하는 것을 특징으로 하는 P2P네트워크 다중 라우팅 방법.In step (d) and (e), if it is determined that transmission of the routing message transmitted in step (b) has failed through step (d), the first node may The P2P network multiple routing method further comprising the step of storing the information separately. 제 8항에 있어서, The method of claim 8, 상기 전송 실패에 관한 정보는 목표로 하는 파일의 해쉬값 및 라우팅 실패가 발생한 노드의 노드아이디 정보를 포함하는 것을 특징으로 하는 P2P네트워크 다중 라우팅 방법.The information about the transmission failure includes a hash value of the target file and node ID information of the node where the routing failure occurs. 제 1항에 있어서, The method of claim 1, 상기 해당 파일이 저장되어 있는 위치 정보를 요청한 노드가 상기 위치 정보를 저장하고 있는 노드로부터 상기 라우팅 메시지에 대한 응답을 전달받을 때 까지 상기 (b) 내지 (e)단계를 반복하는 것을 특징으로 하는 P2P네트워크 다중 라우팅 방법.P2P, characterized in that steps (b) to (e) is repeated until the node requesting the location information in which the corresponding file is stored receives a response to the routing message from the node storing the location information. Network multi routing method.
KR1020060123191A 2006-12-06 2006-12-06 Multiple routing method on p2p network KR100872170B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060123191A KR100872170B1 (en) 2006-12-06 2006-12-06 Multiple routing method on p2p network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060123191A KR100872170B1 (en) 2006-12-06 2006-12-06 Multiple routing method on p2p network

Publications (2)

Publication Number Publication Date
KR20080051672A KR20080051672A (en) 2008-06-11
KR100872170B1 true KR100872170B1 (en) 2008-12-09

Family

ID=39806631

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060123191A KR100872170B1 (en) 2006-12-06 2006-12-06 Multiple routing method on p2p network

Country Status (1)

Country Link
KR (1) KR100872170B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110153737A1 (en) * 2009-12-17 2011-06-23 Chu Thomas P Method and apparatus for decomposing a peer-to-peer network and using a decomposed peer-to-peer network

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0998180A (en) * 1995-09-29 1997-04-08 Nec Corp Fault avoid control method for ring network system
KR20010054528A (en) * 1999-12-07 2001-07-02 윤종용 Network's routing performance using idea of bidirectional line switched ring
WO2001067685A2 (en) 2000-03-03 2001-09-13 Luminous Networks, Inc. Routing switch for dynamically rerouting traffic due to detection of faulty link
JP2003101559A (en) 2001-09-21 2003-04-04 Fujitsu Ltd Ring switching method and apparatus

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0998180A (en) * 1995-09-29 1997-04-08 Nec Corp Fault avoid control method for ring network system
KR20010054528A (en) * 1999-12-07 2001-07-02 윤종용 Network's routing performance using idea of bidirectional line switched ring
WO2001067685A2 (en) 2000-03-03 2001-09-13 Luminous Networks, Inc. Routing switch for dynamically rerouting traffic due to detection of faulty link
JP2003101559A (en) 2001-09-21 2003-04-04 Fujitsu Ltd Ring switching method and apparatus

Also Published As

Publication number Publication date
KR20080051672A (en) 2008-06-11

Similar Documents

Publication Publication Date Title
US8130676B2 (en) Method for on demand distributed hash table update
JP5049344B2 (en) Inter-region communication within a rendezvous federation
EP2137844B1 (en) Distributed routing table architecture and design
US8798016B2 (en) Method for improving peer to peer network communication
US7859992B2 (en) Router redundancy in data communication networks
JP5607252B2 (en) Processing method, proxy processing agent, system and method for filling routing table of DHT client node, router, and DHT client node
US20070233832A1 (en) Method of distributed hash table node ID collision detection
JP4915848B2 (en) Computer program for sending and receiving peer-to-peer files over an overlay network
US20050237948A1 (en) Network topology configuring method and node
US20070230468A1 (en) Method to support mobile devices in a peer-to-peer network
JP2005094773A (en) Computerized system including participation locality-aware overlay module, and method implemented by computer
KR20090034829A (en) Inter-proximity communication within a rendezvous federation
JP2009543447A5 (en)
JP2009508410A (en) Parallel execution of peer-to-peer overlay communication using multi-destination routing
US7773609B2 (en) Overlay network system which constructs and maintains an overlay network
EP2190167A1 (en) Method, device and system for request and response of p2p overlay network
CN103139081A (en) Update method and nodes for distributed hash table routing lists
US7680950B1 (en) Efficient search for storage objects in a network
JP4335907B2 (en) Method and apparatus for mobility churn processing for a peer-to-peer lookup system
JP2009230369A (en) Synchronization method for shared data, program for synchronizing shared data, and network system for synchronizing shared data to be held
EP2802108B1 (en) Data-centric communications system and data forwarding method
KR100872170B1 (en) Multiple routing method on p2p network
JP4774814B2 (en) Server access control system, server access control method, and server access control program
Dong et al. A robust and lightweight name resolution approach for IoT data in ICN
US7570600B1 (en) Overlay network with efficient routing and recovery

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20121031

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20131024

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141027

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee