KR20040055502A - Method for looking in dispersion conduct environment by using chord system - Google Patents

Method for looking in dispersion conduct environment by using chord system Download PDF

Info

Publication number
KR20040055502A
KR20040055502A KR1020020082195A KR20020082195A KR20040055502A KR 20040055502 A KR20040055502 A KR 20040055502A KR 1020020082195 A KR1020020082195 A KR 1020020082195A KR 20020082195 A KR20020082195 A KR 20020082195A KR 20040055502 A KR20040055502 A KR 20040055502A
Authority
KR
South Korea
Prior art keywords
information
search
list
client
distributed
Prior art date
Application number
KR1020020082195A
Other languages
Korean (ko)
Other versions
KR100498231B1 (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 KR10-2002-0082195A priority Critical patent/KR100498231B1/en
Publication of KR20040055502A publication Critical patent/KR20040055502A/en
Application granted granted Critical
Publication of KR100498231B1 publication Critical patent/KR100498231B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4523Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using lightweight directory access protocol [LDAP]

Abstract

PURPOSE: A lookup method on a distributed processing environment using a chord system is provided to perform lookup efficiently and fast on a P2P(Peer-to-Peer) environment that the information of resources is not collected in one place, the resources of a large scale are connected, and free registration/secession is possible. CONSTITUTION: To search the information of a certain number, the information is distributed/registered to the lookup lists of a number in the exponents of 2(301-3). In a distributed registration state, the information is sequentially searched while an appointed point address ID and a node ID of the client are obtained(302-1). The information is distributed/registered by using a list appointed point ID.

Description

커드 시스템을 이용한 분산 처리 환경에서의 검색 방법{METHOD FOR LOOKING IN DISPERSION CONDUCT ENVIRONMENT BY USING CHORD SYSTEM}Search Method in Distributed Processing Environment using Curd System {METHOD FOR LOOKING IN DISPERSION CONDUCT ENVIRONMENT BY USING CHORD SYSTEM}

본 발명은 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법에 관한 것으로, 특히 자원의 정보가 한곳에 모여있지 않으면서, 임의의 가입 및 탈퇴가 가능하고 대규모 자원이 연결되어 있는 단대단(peer to peer) 환경에서 빠른 검색을 보다 효율적으로 얻을 수 있도록 하는 방법에 관한 것이다.The present invention relates to a retrieval method in a distributed processing environment using a curd system, and in particular, a peer-to-peer that is capable of joining and unsubscribing and connecting large resources without resource information gathering in one place. It's about how to get faster searches in your environment more efficiently.

통상적으로, 네트워크 환경에서의 검색(lookup)은 응용서비스를 이용하거나 구현할 때 가장 중요한 기본 기능 중의 하나이다.In general, lookup in a network environment is one of the most important basic functions when using or implementing an application service.

즉, 대규모 사용자가 연결되어 있고 가입과 탈퇴가 자유로우며 네트워크 분할이 예측되지 않는 환경에서는 일관된 검색 결과를 보장하는 것이 중요하다. 일관된 검색 결과는 네트워크가 분할되어 있거나 가입 및 탈퇴의 경우에 검색 요청 당시의 자원의 정확한 현황을 기준으로 하여 찾고 반환한 결과이다.In other words, it is important to ensure consistent search results in an environment where large users are connected, free to join and leave, and no network segmentation is foreseen. Consistent search results are those found and returned based on the exact status of the resource at the time of the search request, in case of network segmentation or subscription and withdrawal.

또한, 여러 노드에 검색이나 수정을 요청할 시에 메시지의 수를 적게 하고 전송 지연에 따른 메시지의 순서를 보장하는 그룹통신과 원자적 수행을 지원하는 별도의 프로토콜을 사용하도록 보완하는 것이 검색 알고리즘의 효용성을 높이는 결과가 된다.In addition, when requesting retrieval or modification from multiple nodes, the number of messages is reduced, and the supplementary use of a separate protocol that supports atomic communication and group communication that guarantees the order of messages according to transmission delay is useful. Results in a higher value.

보다 세부적으로 설명하면, 컴퓨터의 보급과 사용이 일반화되면서 컴퓨터를 통한 정보의 습득과 제공 그리고 신속한 정보의 소통을 위한 정보통신망의 급속한 증가와 이와 연결되는 정보기기 및 가입자들의 수가 폭발적으로 늘어남에 따라, 이들의 이름과 주소 그리고 서비스에 필요한 다양한 정보들이 복잡하고 방대해졌다.In more detail, as the dissemination and use of computers become more common, the rapid increase in information and communication networks for acquiring and providing information through computers, and the rapid communication of information, and the explosive increase in the number of connected information devices and subscribers, Their names, addresses and various information needed for services have become complicated and vast.

이와 같은 정보를 효율적이면서 체계적으로 관리해 줄 수 있는 시스템 및 서비스가 필요하다. 이러한 요구에 따라, 라이트웨이트 디렉토리 액세스 프로토콜(이하, LDAP라 함) 디렉토리가 필요한데, 이 LDAP 디렉토리는 정보통신망의 통신 서비스에 필요한 정보들을 특정한 규칙에 맞게 데이터 베이스로 구축할 수 있는 규정과구축된 정보를 바탕으로 사용자의 요청을 처리하여 줄 수 있는 여러 가지 기능 및 서비스를 규정하고 있다.There is a need for a system and service that can manage such information efficiently and systematically. In response to these demands, a Lightweight Directory Access Protocol (LDAP) directory is required. This LDAP directory is a set of rules and information that can be used to build a database that meets specific rules for information services for telecommunications services. Based on this, it defines various functions and services that can handle user's request.

다시 말해서, LDAP 디렉토리 시스템이란 규정 및 서비스를 특정한 시스템 위에 구축하여 사용자에게 디렉토리 서비스를 제공하는 것을 의미한다. 디렉토리 클라이언트는 디렉토리 시스템에서 제공하고 있는 여러 가지 디렉토리 서비스인 검색, 삽입, 삭제 및 갱신 등을 사용자를 대신하여 처리해 준다.In other words, an LDAP directory system means provision of a directory service to a user by building rules and services on a specific system. Directory clients handle the various directory services provided by the directory system, such as search, insert, delete, and update, on your behalf.

도 1은 종래 LDAP 디렉토리 서버에 있는 데이터 베이스(DB)와 통신 수단을 통해 연결된 다른 LDAP 디렉토리 서버의 DB를 억세스(access) 하여 클라이언트의 정보요청을 처리하고, 그 결과를 LDAP 클라이언트 서버가 클라이언트에게 응답하도록 하는 방법을 수행하기 위한 블록 구성도이다.FIG. 1 processes a client's request for information by accessing a DB of another LDAP directory server connected through a communication means with a database in a conventional LDAP directory server, and the LDAP client server responds to the client. It is a block diagram for performing a method to make.

즉, 도 1을 참조하면, 다수의 클라이언트(S1-1∼S1-n)와, LDAP 디렉토리 서버(1) 및 데이터 베이스(DB)(2)를 포함한다.That is, referring to Fig. 1, a plurality of clients S1-1 to S1-n, an LDAP directory server 1 and a database (DB) 2 are included.

다수의 클라이언트(S1-1∼S1-n)중 임의의 클라이언트(S1-1)가 원격지에서 인터넷(S2)을 통해 LDAP 디렉토리 서버(1)에 각종 정보 처리를 요청하면, LDAP 디렉토리 서버(1)는 DB(2)를 억세스(access)하여 임의의 클라이언트(S1-1)가 요청한 정보를 처리하고, 처리 결과를 임의의 클라이언트(S1-1)에게 제공한다.When any of the clients S1-1 to S1-n requests any information processing from the remote directory to the LDAP directory server 1 via the Internet S2, the LDAP directory server 1 Accesses the DB 2, processes the information requested by any client S1-1, and provides the processing result to any client S1-1.

보다 세부적으로 설명하면, 다수의 클라이언트(S1-1∼S1-n)중 임의의 클라이언트(S1-1)가 LDAP 디렉토리 서버(1)에 정보를 요청하면, LDAP 디렉토리 서버(1)는 LDAP 접속(connection)을 하나 오픈(open)하여 임의의 클라이언트(S1-1)에게 반환한다.In more detail, when any of the clients S1-1 to S1-n requests the LDAP directory server 1 for information, the LDAP directory server 1 connects to the LDAP connection ( One connection is opened and returned to an arbitrary client S1-1.

임의의 클라이언트(S1-1)는 LDAP 디렉토리 서버(1)에 접속된 상태에서 LDAP 연산(operation) 처리를 수행한다. 이때, LDAP 데이터 추가 등의 API를 호출하여 요청된 정보에 대응하는 결과 값을 DB(2)를 통해 얻는다.Any client S1-1 performs an LDAP operation process while connected to the LDAP directory server 1. At this time, an API such as adding LDAP data is called to obtain a result value corresponding to the requested information through the DB 2.

임의의 클라이언트(S1-1)는 LDAP 디렉토리 서버(1)와 TCP/IP 통신을 수행하여 원하는 이름을 찾아오는 방식으로, 네임잉(naming) 리스트를 순차적으로 찾아 원하는 클라이언트와 통신을 수행한다.Any client S1-1 performs TCP / IP communication with the LDAP directory server 1 to find a desired name, and sequentially finds a naming list to communicate with the desired client.

이와 같이, 클라이언트(S1-1∼S1-n) 각각에서 LDAP 디렉토리 서버(1)의 리스트에서 순차적으로 원하는 이름을 찾아야 함으로 룩업(lookup) 하는 대상이 많은 그리드 시스템과 같이 수십만 내지 수백만의 클라이언트를 대상으로 하는 경우에는 검색하는데 사용되는 검색 횟수 증가 및 이로 인한 경제적인 부담이 많아지는 문제점이 있다.In this way, each of the clients S1-1 to S1-n needs to find a desired name sequentially from the list of the LDAP directory server 1, thus targeting hundreds of thousands to millions of clients, such as a grid system with many targets looking up. In this case, there is a problem in that an increase in the number of searches used for searching and an economic burden due to this increase.

이와 같이, 분산 처리 환경에서의 검색 기술로는 2000년 3월 14일 10-2000-0012832로 등록된 "데이터베이스 관리시스템과 정보호환성을 갖는 라이트 웨이트 디렉토리 억세스 프로토콜(LDAP) 서버 시스템 및 운영방법"과, 1997년 12월 19일 10-1997-0070297로 등록된 "웹 브라우저용 디렉토리 클라이언트를 위한 통신프로토콜 및 그 구조"와, 1999년 9월 9일 10-1999-0038294로 출원된 "경량화 시킨 디렉토리 억세스 프로토콜에서의 트랜잭션 처리 방법" 등에 개시되어 있다.As such, a search technology in a distributed processing environment includes a "lightweight directory access protocol (LDAP) server system and operation method having information compatibility with a database management system" registered on March 14, 2000, 10-2000-0012832. "Communication Protocols for Directory Clients for Web Browsers and Their Structure," registered December 19, 1997, 10-1997-0070297, and "Lightweighted Directory Access, filed September 9, 1999, 10-1999-0038294. Transaction processing method in a protocol ".

상술한 바와 같이, 개시된 선행기술을 상세하게 설명하면, 데이터베이스 관리시스템과 정보호환성을 갖는 LDAP 서버 시스템 및 운영방법은 LDAP 서버가 클라이언트가 요청한 정보를 처리함에 있어서 운영체제와 사용 언어에 있어서 호환성이없었던 상용 데이터 베이스 관리 시스템(DBMS)에 저장된 정보 자료를 엑세스하여 이용할 수 있는 운영방법과 시스템 기술을 제공하는 기술이다.As described above, the disclosed prior art will be described in detail. The LDAP server system and operation method having information compatibility with the database management system are commercially available in which the LDAP server is incompatible with the operating system and the language used in processing the information requested by the client. Technology that provides operating method and system technology that can access and use information data stored in database management system (DBMS).

다음으로, 웹 브라우저용 디렉토리 클라이언트를 위한 통신프로토콜 및 그 구조는 자바를 이용하여 자바 어플릿(JAVA APPLET)을 디렉토리 클라이언트를 설계한 웹 브라우져용 디렉토리 인터페이스가 중간 서버인 LDAP 클라이언트 데몬을 통해서 LDAP 및 디렉토리 서버와의 통신을 하도록 구성하고, 웹 브라우져용 디렉토리 인터페이스와 LDAP 클라이언트 데몬과의 사이에서 데이터를 송수신 할 때에 전송 예정인 데이터의 바이트 수 값을 먼저 보내고, 수신측에서 받은 바이트 수 값을 다시 보내오면, 실제 데이터를 전송하며, 수신측은 먼저 수신 받은 전송 데이터 수와 제공받은 데이터 수를 확인하여 동일한 경우에 데이터 수신을 완료하고, 틀린 값이 수신되면 에러 메시지를 발생하도록 하는 기술이다.Next, the communication protocol for the directory client for the web browser and its structure is a Java applet using JAVA APPLET. The LDAP and the directory server are provided through the LDAP client daemon. To send and receive data between the web browser directory interface and the LDAP client daemon, send the byte number of data to be sent first, and then send the byte number The data is transmitted, and the receiving end first checks the received data number and the received data number to complete data reception in the same case, and generates an error message when an incorrect value is received.

다음으로, 경량화 시킨 디렉토리 억세스 프로토콜에서의 트랜잭션 처리 방법은 LDAP 구조에 트랜잭션 처리를 위한 부분을 추가하고 트랜잭션 API를 추가하여 일련의 작업을 한 트랜잭션으로 묶어서 처리할 수 있도록 한 경량화시켜 디렉토리 억세스 프로토콜에서의 트랜잭션 처리방법 및 상술한 방법을 실현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는 기술이다.Next, the transaction processing method in the lightweight directory access protocol adds a transaction processing part to the LDAP structure, and adds a transaction API to reduce the weight so that a series of operations can be bundled and processed in the directory access protocol. A technology for providing a computer readable recording medium having recorded thereon a transaction processing method and a program for realizing the above-described method.

이와 같이, 선행 특허에 개시된 기술을 살펴보았을 때, 각각의 클라이언트에서 서버의 리스트에서 순차적으로 원하는 이름을 찾아야 함으로 룩업(lookup) 하는 대상이 많은 그리드 시스템과 같이 수십만 내지 수백만의 클라이언트를 대상으로 하는 경우에는 검색하는데 사용되는 검색 회수의 증가 및 이로 인한 전체 비용이많아지게 되는 문제점이 여전히 남아 있다.As described above, when looking at the technology disclosed in the prior patent, each client needs to find a desired name sequentially from the list of servers, so that the target of lookups is to target hundreds of thousands to millions of clients such as many grid systems. There remains a problem that increases the number of searches used to search and the resulting overall cost increases.

따라서, 본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로서, 그 목적은 자원의 정보가 한곳에 모여있지 않으면서, 임의의 가입 및 탈퇴가 가능하고 대규모 자원이 연결되어 있는 단대단(peer to peer) 환경에서 보다 효율적으로 빠른 검색을 수행할 수 있도록 하는 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법을 제공함에 있다.Accordingly, the present invention has been made to solve the above-mentioned problems, the object of which is that the information of the resources are not gathered in one place, can be joined and withdrawal arbitrarily and the peer-to-peer is connected to a large resource An object of the present invention is to provide a search method in a distributed processing environment using a curd system that enables faster and more efficient search in an environment.

상술한 목적을 달성하기 위한 본 발명에서 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법은 임의의 개수 정보를 검색하기 위해 임의의 개수를 위한 2의 승수 개수의 검색 리스트 내에 해당되는 정보를 분산 등록하는 단계; 분산 등록되어 있는 상태에서, 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id)를 얻어가면서 해당되는 정보를 순차적으로 검색하는 단계를 포함하는 것을 특징으로 한다.In the present invention for achieving the above object, a search method in a distributed processing environment using a curd system is to distribute and register the corresponding information in the search list of the multiplier of 2 for any number to search for any number of information step; In the state of being distributedly registered, the step of sequentially searching for the corresponding information while obtaining the designated point address number (key_id) and the client itself number (node_id).

도 1은 종래 분산 처리 환경에서의 검색 방법을 수행하기 위한 블록 구성도이고,1 is a block diagram for performing a search method in a conventional distributed processing environment.

도 2는 본 발명에 따른 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법을 수행하기 위한 블록 구성도이며,2 is a block diagram for performing a search method in a distributed processing environment using a curd system according to the present invention;

도 3은 본 발명에 따른 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법에 대한 상세 흐름도이다.3 is a detailed flowchart illustrating a search method in a distributed processing environment using a curd system according to the present invention.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100 : 커드 디렉토리 서버 S1-1∼S1-n : 클라이언트100: curd directory server S1-1 to S1-n: client

S2 : 인터넷 S3-1∼S3-n, 100-1 : 검색 리스트S2: Internet S3-1 to S3-n, 100-1: Search list

S4-1∼S4-n, 100-1-1 : 리플리케이션 리스트S4-1 to S4-n, 100-1-1: Replication list

이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세하게 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법을 수행하기 위한 블록 구성도로서, 다수의 클라이언트(S1-1∼S1-n)와, 다수의 검색 리스트(S3-1∼S3-n, 100-1)와, 커드(chord) 디렉토리 서버(100)와, 리플리케이션 리스트(S4-1∼S4-n, 100-1-1)를 포함한다.2 is a block diagram for performing a search method in a distributed processing environment using a curd system according to the present invention, and includes a plurality of clients (S1-1 through S1-n) and a plurality of search lists (S3-1 through 1). S3-n, 100-1, a chord directory server 100, and replication lists S4-1 to S4-n, 100-1-1.

다수의 클라이언트(S1-1∼S1-n)와 커드 디렉토리 서버(100)는 인터넷(S2)을 통해 각각 양방향 통신을 수행함에 있어서, 다수의 클라이언트(S1-1∼S1-n)와 커드 디렉토리 서버(100)에는 다수의 검색 리스트(S3-1∼S3-n, 100-1)가 각각 연결되어 있으며, 이 다수의 검색 리스트(S3-1∼S3-n, 100-1)에는 리플리케이션 리스트(S4-1∼S4-n, 100-1-1)가 각각 연결되어 있다.The plurality of clients S1-1 to S1-n and the curd directory server 100 perform bidirectional communication via the Internet S2, respectively, and the plurality of clients S1-1 to S1-n and the curd directory server are each. A plurality of search lists S3-1 to S3-n and 100-1 are connected to 100, respectively, and a replication list S4 to the plurality of search lists S3-1 to S3-n and 100-1. -1 to S4-n, 100-1-1) are respectively connected.

이러한 상태에서, 1024개의 정보를 검색할 경우, 먼저, 10개의 검색 리스트에만 등록하면 된다.In such a state, when searching for 1024 pieces of information, it is necessary to first register only for 10 pieces of search list.

즉, 각각의 클라이언트 검색 리스트(S3-1∼S3-n, 100-1)에 등록하는 절차는 리스트 지정 포인트 어드레스를 갖는 키를 이용하여 등록을 수행하는데, 다수의 검색 리스트(S3-1∼S3-n, 100-1) 개수는 각각의 클라이언트(S1-1∼S1-n)에 2의 n승이므로, 2의 10승이 1024임에 따라 n=10이므로, 10개의 검색 리스트에 분산 등록하면 되는 것이다. 이때, 커드 디렉토리 서버(100)는 필요하지 않음에 따라 만약, 이러한 구조에서 커드 디렉토리 서버(100)의 실패(failure)시 문제가 발생되지 않는다.That is, the procedure of registering to each client search list (S3-1 to S3-n, 100-1) performs registration by using a key having a list designation point address, and a plurality of search lists (S3-1 to S3). Since the number of -n, 100-1) is n's power of 2 in each of the clients S1-1 through S1-n, n = 10, since 10's power of 2 is 1024. will be. At this time, since the curd directory server 100 is not necessary, a problem does not occur when the curd directory server 100 fails in such a structure.

도 3의 흐름도를 참조하면서, 상술한 구성을 바탕으로, 본 발명에 따른 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법에 대하여 보다 상세하게 설명한다.With reference to the flowchart of FIG. 3, the searching method in the distributed processing environment using the curd system which concerns on this invention is demonstrated in more detail based on the above-mentioned structure.

먼저, 1024개의 정보가 아닌 8개의 정보만을 검색할 경우, 3개의 검색 리스트에만 등록되어 있는 상태에서 정보를 검색하면 된다.First, if only eight pieces of information are to be searched instead of 1024 pieces of information, the information needs to be searched while being registered in only three search lists.

즉, 8개의 정보를 검색하기 위해서는 3개의 검색 리스트에만 등록되어 있으면 되는데, 예로서, 그 등록과정은 각각의 클라이언트 검색 리스트(S3-1∼S3-n,100-1)중 3개의 검색 리스트(S3-1, S3-2, S3-3)에만 해당되는 정보를 등록하는데, 그 절차는 리스트 지정 포인트 어드레스를 갖는 키를 이용하여 분산 등록을 수행한다(단계 301).That is, in order to search for eight pieces of information, only three search lists need to be registered. For example, the registration process includes three search lists (S3-1 to S3-n, 100-1). Information corresponding only to S3-1, S3-2, and S3-3) is registered, and the procedure performs distributed registration using a key having a list designation point address (step 301).

즉, 분산 등록하는 과정은 클라이언트(S1-1)에 검색 리스트(S3-1)가 연결되어 있으며, 이 검색 리스트(S3-1)에 리플리케이션 리스트(S4-1)가 연결되어 있는 상태에서 분산 등록할 수도 있다(단계 301-1).That is, in the process of distributed registration, the search list S3-1 is connected to the client S1-1, and the distribution list S4-1 is connected to the search list S3-1. It may be possible (step 301-1).

그리고, 검색 리스트(S3-1)에는 다음 지정 포인트 어드레스를 갖는 검색 리스트(S3-2)가 연결되어 있는 상태에서 분산 등록할 수도 있으며, 이 검색 리스트(S3-2)에는 리플리케이션 리스트(S4-2)가 연결되어 있는 상태에서 분산 등록할 수도 있다(단계 301-2).The search list S3-1 may also be distributedly registered while the search list S3-2 having the next designated point address is connected, and the replication list S4-2 may be included in the search list S3-2. May be distributedly registered in a state in which () is connected (step 301-2).

그리고, 검색 리스트(S3-2)에는 다음 지정 포인트 어드레스를 갖는 검색 리스트(S3-3)가 연결되어 있는 상태에서 분산 등록할 수도 있으며, 이 검색 리스트(S3-3)에는 리플리케이션 리스트(S4-3)가 연결되어 상태에서 분산 등록할 수도 있다(단계 301-3).The search list S3-2 may also be distributedly registered while the search list S3-3 having the next designated point address is connected, and the replication list S4-3 may be included in the search list S3-3. May be distributedly registered in a connected state (step 301-3).

상술한 바와 같이, 연결되어 분산 등록되어 있는 상태에서, 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id)를 얻어가면서 해당되는 정보를 검색한다(단계 302).As described above, in the state of being connected and distributed and registered, the corresponding information is retrieved while obtaining the designated point address number key_id and the corresponding client self number node_id (step 302).

즉, 키 탐색 함수(SHA-1())(예로, 해쉬 함수)를 이용하여 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id)를 얻는다(단계 302-1).That is, the designated point address number key_id and the corresponding client self number node_id are obtained using the key search function SHA-1 () (e.g., a hash function) (step 302-1).

이후, 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체번호(node_id), 즉 도 1의 클라이언트(S1-1)에 연결된 검색 리스트(S3-1)를 얻어와서 해당 정보가 존재하는가를 판단한다(단계 302-2).Subsequently, a search list S3-1 connected to the designated point address number key_id and the corresponding client self number node_id, that is, the client S1-1 of FIG. 1 is obtained to determine whether the corresponding information exists (step S1). 302-2).

상기 판단 단계(302-2)에서 해당 정보가 존재하면, 해당 정보를 검색한 후, 해당 클라이언트 자체 번호(node_id) 정보를 반환한다(단계 302-3).If the corresponding information exists in the determination step 302-2, the corresponding information is retrieved and the corresponding client self number (node_id) information is returned (step 302-3).

상기 판단 단계(302-2)에서 해당 정보가 존재하지 않으면, 다음 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id), 즉 도 1의 클라이언트(S1-2)에 연결된 검색 리스트(S3-2)에 해당 정보가 존재하는가를 판단한다(단계 302-4).If the corresponding information does not exist in the determination step 302-2, a search list S3- connected to the next designated point address number key_id and the corresponding client self number node_id, that is, the client S1-2 of FIG. In step 2), it is determined whether the corresponding information exists (step 302-4).

상기 판단 단계(302-4)에서 해당 정보가 존재하면, 해당 정보를 검색한 후, 해당 클라이언트 자체 번호(node_id) 정보를 반환한다(단계 302-3).If the corresponding information exists in the determination step 302-4, the corresponding information is retrieved and the corresponding client self number (node_id) information is returned (step 302-3).

상기 판단 단계(302-4)에서 해당 정보가 존재하지 않으면, 다음 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id), 즉 도 1의 클라이언트(S1-3)에 연결된 검색 리스트(S3-3)에 해당 정보가 존재하는가를 판단한다(단계 302-5).If the corresponding information does not exist in the determination step 302-4, a search list S3- connected to the next designated point address number key_id and the corresponding client self number node_id, that is, the client S1-3 of FIG. In step 3), it is determined whether the corresponding information exists (step 302-5).

상기 판단 단계(302-6)에서 해당 정보가 존재하면, 해당 정보를 검색한 후, 해당 클라이언트 자체 번호(node_id) 정보를 반환한다(단계 302-3).If the information exists in the determination step 302-6, the information is retrieved and the corresponding client self number (node_id) information is returned (step 302-3).

상기 판단 단계(302-6)에서 해당 정보가 존재하지 않으면, 검색 리스트가 실패되었다고 생각하고 연결된 리플리케이션 리스트(S4-3)에 해당 정보가 존재하는가를 판단한다(단계 302-6).If the corresponding information does not exist in the determination step 302-6, it is considered that the search list has failed, and it is determined whether the corresponding information exists in the connected replication list S4-3 (step 302-6).

상기 판단 단계(302-8)에서 해당 정보가 존재하면, 해당 정보를 검색한 후,해당 클라이언트 자체 번호(node_id) 정보를 반환한다(단계 302-3).If the information exists in the determination step 302-8, the information is retrieved, and the corresponding client self number (node_id) information is returned (step 302-3).

상기 판단 단계(302-8)에서 해당 정보가 존재하지 않으면, 해당 검색 리스트 및 리플리케이션 리스트가 죽어있는 경우로서 오류 메시지를 통보한다(단계 302-7).If the corresponding information does not exist in the determination step 302-8, an error message is notified as if the corresponding search list and replication list are dead (step 302-7).

상기와 같이 설명한 본 발명은 자원의 정보가 한곳에 모여있지 않으면서, 임의의 가입 및 탈퇴가 가능하고 대규모 자원이 연결되어 있는 단대단(peer to peer) 환경에서 보다 효율적으로 빠른 검색을 수행함으로써, 대규모 사용자가 연결된 그리드(Grid) 환경에서 LDAP 프로토콜이 정상적으로 운영이 되기 위한 방법으로 네트워크 분할이나 대규모 노드의 동시 가입과 탈퇴를 효율적으로 대처할 수 있는 효과가 있다.As described above, the present invention provides a fast and efficient search in a peer-to-peer environment in which a large amount of resources can be joined and unsubscribed and large resources are connected without the information of resources gathered in one place. In order to operate the LDAP protocol normally in a grid environment where users are connected, it can effectively cope with network partitioning and simultaneous joining and leaving of large nodes.

Claims (6)

분산 처리 시스템 환경에서의 검색 방법에 있어서,In a search method in a distributed processing system environment, 임의의 개수 정보를 검색하기 위해 상기 임의의 개수를 위한 2의 승수 개수의 검색 리스트 내에 해당되는 정보를 분산 등록하는 단계;Distributing and registering information corresponding to a multiplier number search list of two for the arbitrary number to retrieve any number information; 상기 분산 등록되어 있는 상태에서, 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id)를 얻어가면서 해당되는 정보를 순차적으로 검색하는 단계를 포함하는 것을 특징으로 하는 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법.In the distributed registration state, obtaining the designated point address number (key_id) and the client itself number (node_id) sequentially searching for the corresponding information in the distributed processing environment using the system How to search. 제 1 항에 있어서,The method of claim 1, 상기 정보 분산 등록은 리스트 지정 포인트 어드레스를 갖는 키를 이용하여 분산 등록을 수행하는 것을 특징으로 하는 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법.The information distributed registration is a search method in a distributed processing environment using a curd system, characterized in that distributed registration is performed using a key having a list designation point address. 제 2 항에 있어서,The method of claim 2, 상기 정보 분산 등록 과정은 다수의 클라이언트(S1-1∼S1-n)중 임의의 클라이언트(S1-1)에 검색 리스트(S3-1)가 연결되어 있으며, 상기 검색 리스트(S3-1)에 리플리케이션 리스트(S4-1)가 연결되어 있는 상태에서 분산 등록하는 단계;In the information distribution registration process, a search list S3-1 is connected to an arbitrary client S1-1 of a plurality of clients S1-1 to S1-n, and is replicated to the search list S3-1. Performing distributed registration in a state in which the list S4-1 is connected; 상기 검색 리스트(S3-1)에는 다음 지정 포인트 어드레스를 갖는 검색리스트(S3-2)가 연결되어 있는 상태에서 분산 등록하며, 상기 검색 리스트(S3-2)에는 리플리케이션 리스트(S4-2)가 연결되어 있는 상태에서 분산 등록하는 단계;The search list S3-1 is distributedly registered while a search list S3-2 having a next designated point address is connected, and a replication list S4-2 is connected to the search list S3-2. Registering in a distributed state; 상기 검색 리스트(S3-2)에는 다음 지정 포인트 어드레스를 갖는 검색 리스트(S3-3)가 연결되어 있는 상태에서 분산 등록하며, 상기 검색 리스트(S3-3)에는 리플리케이션 리스트(S4-3)가 연결되어 상태에서 분산 등록하는 단계를 더 포함하는 것을 특징으로 하는 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법.The search list S3-2 is distributedly registered while a search list S3-3 having a next designated point address is connected, and a replication list S4-3 is connected to the search list S3-3. And registering in a distributed state in the distributed state. 제 1 항에 있어서, 상기 해당 정보를 순차적으로 검색하는 단계에는,The method of claim 1, wherein the searching for the corresponding information sequentially comprises: 상기 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id)에 해당되는 임의의 클라이언트(S1-1)에 연결된 검색 리스트(S3-1)를 얻어와서 해당 정보가 존재하는가를 제1 판단하는 단계;Obtaining a search list S3-1 connected to the client S1-1 corresponding to the designated point address number key_id and the corresponding client node number node_id, and determining whether the corresponding information is present; ; 상기 제1 판단 단계에서 해당 정보가 존재하지 않으면, 다음 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id)에 해당되는 클라이언트(S1-2)에 연결된 검색 리스트(S3-2)에 해당 정보가 존재하는가를 제2 판단하는 단계;If the information does not exist in the first determination step, the information is included in the search list S3-2 connected to the client S1-2 corresponding to the next designated point address number key_id and the client self number node_id. Secondly determining whether is present; 상기 제2 판단 단계에서 해당 정보가 존재하지 않으면, 다음 지정 포인트 어드레스 번호(key_id)와 해당 클라이언트 자체 번호(node_id)에 해당되는 클라이언트(S1-3)에 연결된 검색 리스트(S3-3)에 해당 정보가 존재하는가를 제3 판단하는 단계;If the information does not exist in the second determination step, the information is included in the search list S3-3 connected to the client S1-3 corresponding to the next designated point address number key_id and the corresponding client node number node_id. Third determining whether is present; 상기 제3 판단 단계에서 해당 정보가 존재하지 않으면, 검색 리스트가 실패되었다고 생각하고 연결된 리플리케이션 리스트에 해당 정보가 존재하는가를 제4 판단하는 단계;If the corresponding information does not exist in the third determining step, determining that the search list has failed and determining whether the corresponding information exists in the connected replication list; 상기 제4 판단 단계에서 해당 정보가 존재하지 않으면, 해당 검색 리스트 및 리플리케이션 리스트가 죽어있는 경우로서 오류 메시지를 통보하는 단계를 더 포함하는 것을 특징으로 하는 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법.And if the corresponding information does not exist in the fourth determination step, notifying the error message as a case in which the corresponding search list and the replication list are dead. 제 4 항에 있어서,The method of claim 4, wherein 상기 제1, 2, 3, 4 판단 단계에서 해당 정보가 존재하면, 해당 정보를 검색한 후, 해당 클라이언트 자체 번호(node_id) 정보를 반환하는 단계를 더 포함하는 것을 특징으로 하는 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법.If the corresponding information is present in the first, second, third, and fourth determination steps, after searching for the information, the method further includes the step of returning the corresponding client node number (node_id) information. Search method in processing environment. 제 1 항에 있어서,The method of claim 1, 상기 커드 시스템 내 커드 디렉토리 서버가 연동되어 있지 않아도 상기 해당되는 정보를 검색할 수 있는 것을 특징으로 하는 커드 시스템을 이용한 분산 처리 환경에서의 검색 방법.A search method in a distributed processing environment using a cud system, wherein the corresponding information can be searched even if a cud directory server in the cud system is not linked.
KR10-2002-0082195A 2002-12-21 2002-12-21 Method for looking in dispersion conduct environment by using chord system KR100498231B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0082195A KR100498231B1 (en) 2002-12-21 2002-12-21 Method for looking in dispersion conduct environment by using chord system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0082195A KR100498231B1 (en) 2002-12-21 2002-12-21 Method for looking in dispersion conduct environment by using chord system

Publications (2)

Publication Number Publication Date
KR20040055502A true KR20040055502A (en) 2004-06-26
KR100498231B1 KR100498231B1 (en) 2005-07-01

Family

ID=37348173

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0082195A KR100498231B1 (en) 2002-12-21 2002-12-21 Method for looking in dispersion conduct environment by using chord system

Country Status (1)

Country Link
KR (1) KR100498231B1 (en)

Also Published As

Publication number Publication date
KR100498231B1 (en) 2005-07-01

Similar Documents

Publication Publication Date Title
US7251689B2 (en) Managing storage resources in decentralized networks
US7143139B2 (en) Broadcast tiers in decentralized networks
US7069318B2 (en) Content tracking in transient network communities
US8285753B2 (en) Change approvals for computing systems
US7177929B2 (en) Persisting node reputations in transient network communities
US7039701B2 (en) Providing management functions in decentralized networks
US7181536B2 (en) Interminable peer relationships in transient communities
US8880489B2 (en) Discovery across multiple registries
EP1376989A2 (en) Method and apparatus for determination of device capabilities on a network
JP2003030079A (en) Contents sharing set and software program to be performed by devices constituting the same
CN102047242A (en) Content management
US20090083414A1 (en) Method and System for Monitoring and Analyzing Peer-to-Peer Users&#39; Activities over a Data Network
KR20040111156A (en) System and method for managing cached objects using notification bonds
EP1491026B1 (en) Dynamic addressing in transient networks
US20060149826A1 (en) Index server support to file sharing applications
Poggi et al. A DHT-based multi-agent system for semantic information sharing
CN112039993A (en) Long connection address processing method and device
KR100498231B1 (en) Method for looking in dispersion conduct environment by using chord system
Costa et al. Studying the workload of a fully decentralized Web3 system: IPFS
US7313598B1 (en) Method and apparatus for partial replication of directory information in a distributed environment
KR100545744B1 (en) How to Synchronize Content Cache Between Mobile Business Application Servers in a Clustering Environment
KR20030069635A (en) System and method for a data integration management of intranet by peer to peer
Tsesmetzis et al. Distributed search in P2P networks through secure-authenticated content management systems (CMSs)
Heinzer Distributed iServer Architecture Based on Peer-to-Peer Concepts
Zubair et al. Freelib: Peer-to-peer-based Digital Libraries

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: 20110609

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee