KR20030097821A - 분산컴퓨터망을 위한 확장성있는 자원 발견 및 재구성 - Google Patents
분산컴퓨터망을 위한 확장성있는 자원 발견 및 재구성 Download PDFInfo
- Publication number
- KR20030097821A KR20030097821A KR10-2003-7013118A KR20037013118A KR20030097821A KR 20030097821 A KR20030097821 A KR 20030097821A KR 20037013118 A KR20037013118 A KR 20037013118A KR 20030097821 A KR20030097821 A KR 20030097821A
- Authority
- KR
- South Korea
- Prior art keywords
- node
- resource request
- user
- user node
- network
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
-
- 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/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/102—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for e-commerce
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
사용자 노드들의 네트워크에서 자원을 찾아내는 방법이 제공된다. 본 방법에 따르면, 공개될 자원 요청이 네트워크의 제1 사용자 노드에서 수신되고, 상기 자원 요청을 서버 노드에 전송할지 여부에 대한 판단이(예를 들어, 무작위하게) 이루어진다. 자원 요청을 서버 노드에 전송하지 않는 것으로 판단되면, 상기 자원 요청은 직접 접속을 통해 상기 네트워크의 제2 사용자 노드에 전달된다. 상기 자원 요청을 서버 노드에 전송하는 것으로 판단되면, 상기 자원 요청은 공개를 위해 서버 노드에 전송된다. 또한, 다수의 사용자 노드들과 적어도 하나의 서버 노드를 포함하는 유형의 컴퓨터 네트워크에서 사용하기 위한 사용자 노드가 제공되는데, 상기 사용자 노드 각각은 직접 접속을 통해 적어도 하나의 다른 사용자 노드와 연결된다.
Description
인터넷과 같은 컴퓨터망은 사용자들이 파일 또는 하드웨어 같은 자원들을 공유하는 것을 가능케 한다. 인터넷의 확장 및 월드 와이드 웹 표준의 채택은 사용자가 별다른 노력을 들이지 않고서도 파일을 보고 다운로드할 수 있도록 해주었다. 사용자는 임의의 프로그래밍 언어에 대해서는 알 필요가 없다. 단순히 인터넷 브라우저를 실행시킴으로써, 사용자는 원하는 파일을 보기위해 지정하여 클릭하기만 하면 된다. 이러한 프로그램의 가용성으로 인하여, 먼거리에 떨어진 같은 취미의 개인들이, 사실상 전세계에 퍼져있는 분산 컴퓨터망을 통해, 손쉽게 협조하고 파일을 공유할 수 있다.
전형적으로, 분산 컴퓨터망은 클라이언트/서버 프레임워크를 갖도록 구성된다. 구체적으로, 각 사용자는 네트워크를 통해 서버 노드를 액세스할 수 있는 클라이언트이며, 적합한 권한으로써, 서버 노드에 파일을 공개할(publish) 수 있다. 파일이 서버 노드에 공개되면, 네트워크상의 다른 클라이언트들은 해당 파일을 보거나 다운로드하기 위해 서버에 액세스할 수 있다. 또한, 서버 노드는 한 클라이언트가 네트워크를 통해 도달가능한 또다른 클라이언트에게 파일을 자동 전송할 수 있도록 해준다. 클라이언트는 단순하게 원하는 수령자를 식별해주는 정보와 함께 서버 노드에 파일을 전송하고, 서버는 해당 파일을 해당 클라이언트에게 전송해준다. 또한, 서버 노드는 클라이언트들이 프린터와 같은 하드웨어 자원을 공유하는 것도 가능하게 한다.
이러한 클라이언트/서버 프레임워크에서, 서버 노드는 보안을 제공할 책임이 있다. 예를 들어, 서버 노드는 오직 인가받은 클라이언트만이 네트워크 자원을 이용(예, 파일을 다운로드함)할 수 있도록 해주고, 오직 적합한 파일만이 공개될 수 있도록 해준다. 또한, 서버 노드는 단일 장애 지점(single point of failure)을 나타낸다. 따라서, 신뢰가 요구되는 클라이언트/서버 환경에서, 서버 노드는 시스템 중단 및 데이터 손실을 방지할 수 있도록 강하여야 하며 여분의 시스템을 구비하여야 한다. 또한, 모든 클라이언트간 자원 전송이 서버 노드를 통과하기 때문에, 네트워크에 또다른 클라이언트를 추가시키는 것은 서버 노드에 추가적인 부담을 주게 되며 네트워크 성능을 저하시킨다.
이러한 클라이언트/서버 프레임워크에서, 클라이언트의 프라이버시는 거의 없다. 전형적으로, 서버 노드는 클라이언트가 네트워크 자원에 액세스할 수 있게 허용하기 이전에 인증을 요구한다. 클라이언트가 인증 증명서를 제공하면, 서버 노드는 클라이언트의 모든 네트워크 활동을 쉽게 기록할(log) 수 있다. 예를 들어, 서버 노드가 클라이언트에 의해 업로드되고 다운로드되는 모든 파일들에 대한기록을 갖고 있을 수 있다. 인증되지 않은 클라이언트에 의한 액세스가 허용되더라도, 서버 노드는 다양한 유일 식별 기술들중 하나를 이용하여, 시간에 걸친 클라이언트의 활동을 추적할 수 있다. 예를 들어, 서버 노드는 클라이언트상에 유일의 쿠키(cookies)를 둘 수 있으며, 이후에 클라이언트가 서버 노드에 액세스할 때마다 쿠키를 이용하여 해당 클라이언트를 식별할 수 있다.
종래의 클라이언트/서버 프레임워크의 일부 단점들은 "가상" 네트워크에 의해 해결될 수 있다. 이러한 네트워크에서, 사용자 노드는 고도로 상호연결된 가상 네트워크에 참가중인 하나 이상의 공지된 호스트에 접속한다. 그러면, 사용자 노드는 그 자신이 자원 및 가용 호스트 요청에 응답할 수 있는 호스트 노드가 된다. 네트워크의 각 사용자는 가능하면 각 자원 요청을 전체 네트워크를 통해 전파시키기 위해, 요청을 모든 공지된 인접 노드들에 포워딩한다. 예를 들어, 그누텔라(Gnutella) 시스템이 이러한 가상 네트워크 프레임을 채택한다. 그누텔라는 공개 네트워크 프로토콜을 구비하고 있으며, 각 사용자들이 파일 공유 네트워크의 호스트 노드로서 역할하도록 허용하는 클라이언트/서버 어플리케이션( 에서 이용가능함)을 사용자들에게 제공한다. 그누텔라 시스템은 암호화 및 라이센싱(licensing)에 의해 보호되는 상업적 콘텐트를 안전하게 배포하는데 이용될 수 있다.
가상 네트워크는 동등계층(peer-to-peer) 통신에 기초한다. 동등계층은 각 당사자가 유사한 능력을 가지고 있으며 어느쪽에서도 통신 세션을 개시할 수 있는 통신 모델이다. 예를 들어, 그누텔라 어플리케이션은 동등계층 통신을 채용한 사용자들이 인터넷을 통해 서로간에 파일을 교환할 수 있도록 해준다. 가상 네트워크에서 사용되는 동등계층 모델은 네트워크내에서 각각의 사용자(즉, 사용자 노드)가 다른 사용자 노드들중 적어도 하나에 대해 알고 있는 것에 의존한다. 파일과 같은 자원을 검색하는 경우에, 사용자 노드는 알고있는 다른 노드들에 자원 요청을 하면, 이들은 자신이 아는 노드들에게 그 요청을 전달하는 등의 방식으로 네트워크 전체에 걸쳐서 요청을 전파한다. 자원을 가진 노드는 해당 요청을 수신하고 요청한 노드에 그 자원(또는 그의 가용성을 나타내는 메시지)을 전송해줄 수 있다. 이러한 프레임워크는 중앙 네트워크 당국(예, 서버 노드)으로부터의 독립성을 제공하기 때문에, 가상 네트워크의 사용자들은 프라이버시?? 향상시켰으며 단일 장애 지점이 제거된다.
도 1은 예시적인 가상 네트워크를 도시한다. 네트워크내의 각각의 노드는 클라이언트 및 서버 모두로서 동작하는 사용자를 나타내고, 이는 하나 이상의 다른 노드들과 연결되어 있다. 제1 노드(210)가 특정 자원(예, 파일)을 원할 때, 제1 노드(201)는 알고 있는 모든 노드들(202, 204, 206 및 208)에 요청을 송출하고, 이들도 동일한 동작을 수행하게 된다. 예를 들어, 요청은 노드(208, 216 및 218)을 연속적으로 통과함으로써 제2 노드(212)에 도달한다. 제2 노드(212)가 요청된 자원을 가지고 있다면, 적절한 메시지를 (예, 요청이 거쳐온 동일한 경로를 거슬러서) 제1 노드(210)에 전송함으로써 응답한다. 요청된 자원을 가진 노드가 식별되었기 때문에, 제1 노드(210)는 자원을 다운로드받기 위해 제2 노드(212)와 직접 동등계층 통신을 개시할 수 있다. 가상 네트워크 전체에 걸쳐서, 임의 개수의 이러한 자원 요청, 승인 및 전송이 동시에 발생할 수 있다.
가상 네트워크가 향상된 프라이버시를 제공하고 단일 장애 지점을 제거하였지만, 이러한 프레임워크는 확장성(scalability)에 관련된 단점을 갖는다. 크고, 분산된 가상 네트워크에서, 효율적인 자원 탐색은 참가하는 노드 개수가 증가함에 따라 저하된다. 더 구체적으로, 자원은 노드에서 노드로만 전파될 수 있기 때문에, 각각의 노드는 비교적 적은 개수의 다른 노드들에게만 요청을 전파할 수 있다. 네크워크 트래픽을 제어하고 불합리적인 응답 시간을 방지하기 위해, 현실적인 시스템은 "생존시간(time-to-live)" 또는 요청이 전달될 수 있는 회수에 대한 제한(예, 동등계층 홉(hop)의 최대 개수)을 채택하여야 한다. 결과적으로, 이는 요청이 비합리적으로 많은 수의 중개 노드들을 거쳐서 전파되기를 요구하는 경로에 의해 분리되어 있는 임의의 두개 노드간 또는 노드군들을 단절시키게 된다. 또는, 요청 전파에 대한 이러한 임의의 제한은, 자원에 대한 소모적인 검색이 네트워크내의 모든 노드들에 요청이 전파될 것을 요구하기 때문에, 이러한 검색의 수행을 불가능하게 한다.
부가적으로, 최근에 정보 흐름 그래프를 활용하는 내용-기반 공개-가입(publish-subscribe) 메시징 인프라구조가 제안되었다. 예를 들어, 본 발명의 양수인에 의해 ()에 기재되어 있는) 그리폰(Gryphon) 시스템이 개발되었다. 이러한 시스템은 내용-기반 가입 서비스를 제공하고 분산식 공개/가입 통신의 특징들과 데이터베이스 기술을 병합함으로써 메시지 중개(brokering)를 수행한다. 그리폰 시스템의 핵심은 이벤트의 선택적 전송, 이벤트 변환 및 새로운 이벤트 생성을 상술하는(specify) 정보 흐름 그래프에 있다.
도 2는 정보 흐름 그래프를 이용하는 내용-기반 공개-가입 메시징 인프라구조를 도시한다. 이 시스템에서, 2개의 정보 소스 NYSE 및 NASDAQ으로부터 도출되는 주식거래 정보가 결합되고, 변환되고, 필터링되어, 가입 클라이언트들에게 전달된다. 예를 들어, 하나의 사용자(312)는 메시지-중개 서버(302)에 가입할 수 있으며 수백만 달러의 가치를 갖는 NYSE 및 NASDAQ 양쪽의 모든 주식거래 정보에 대한 수신을 요청할 수 있다. 메시지 중개자(302)는 NYSE (324) 및 NASDAQ(326)으로부터 가격 및 거래량과 같은 가공되지 않은 주식 거래 정보를 수신한다.
사용자(312)의 정보 요청에 근거하여, 서버(302)는 2개 소스로부터의 주식거래 정보를 병합하고, 비가공의 가격 및 거래량 정보를 각 거래에 관한 가치 정보로 변환한 후에, 도출된 가치들을 필터링하여 수백만 달러 이사의 가치를 갖는 거래 부집합을 산출한다. 유사한 방식으로, 각각의 가입 사용자들(예, 노드(304, 306 및 308))은 그 자신의 기준을 지정하고, 메시지-중개 서버(302)는, 각각의 사용자에게 요청 정보를 제공하기 위해, 정보 선택, 변환, 필터링 및 전송을 수행한다.
도 2의 공개-가입 메시징 인프라구조가 다수의 사용자들을 갖는 메시징 시스템에 양호한 확장성을 제공하기는 하지만, 종래의 클라이언트/서버 프레임워크에서와 같이 사용자의 프라이버시가 거의 없다. 모든 사용자들은 시스템에 가입할 때 그들 스스로를 확인시켜야 하며 모든 정보는 중앙 서버를 통해 사용자에게 전달된다. 따라서, 중앙 서버는 용이하게 시스템의 모든 사용자들과 각각이 소망하고 수신하는 정보에 대한 정확한 기록을 유지할 수 있다. 중앙 메시징-중개 서버는 시스템에 대한 단일 장애 지점을 또한 나타낸다.
본원발명은 컴퓨터망에 관한 것으로서,더 구체적으로는 분산 컴퓨터망에서 확장성있는(scalable) 자원 발견 및 동적인 재구성을 위한 구조에 관한 것이다.
본 발명은 이하의 첨부된 도면을 참조하여 예시적으로 설명될 것이다.
도 1은 예시적인 바이러스형(viral) 네트워크의 블록도이다.
도 2는 예시적인 콘텐트-기반 공개-가입 메시징 기반구조의 블록도이다.
도 3은 본 발명의 바람직한 실시예에 따른 확장성있는 네트워크 구조의 블록도이다.
도 4는 본 발명의 제1 실시예에 따른 확장성있는 네트워크 구조내에서 자원을 획득하는 프로세스를 흐름도로 나타낸 것이다.
도 5는 본 발명의 제2 실시예에 따른 확장성있는 네트워크 구조내에 자원을 획득하는 프로세스를 흐름도로 나타낸 것이다.
도 6은 본 발명의 제3 실시예에 따른 확장성있는 네트워크 구조내에 자원을 획득하는 프로세스를 흐름도로 나타낸 것이다.
도 7은 도 6의 프로세스 일부에 대한 예시적인 구현을 도시한 확장성있는 네트워크 구조의 블록도이다.
도 8은 도 6의 프로세스의 또다른 부분에 대한 예시적인 구현을 도시한 확장성있는 네트워크 구조의 블록도이다.
분산망의 대부분 특징들은 유지하면서 확장성 및 성능 문제들을 다룰 수 있는 확장성있는 메시징 기반구조를 제공한다. 분산망내에 중앙 권한기관이 아니라 메시징 기반구조층으로서 적어도 하나의 공개-가입 서버 노드가 제공된다. 따라서, 분산망에서 확장성이 달성될 수 있다.
본 발명의 한가지 실시예는 사용자 노드 네트워크에서 자원을 찾아내기 위한 방법을 제공한다. 방법에 따르면, 공개될 자원 요청이 네트워크의 제1 노드에서 수신되고 상기 자원 요청을 서버 노드에 보낼지 여부가 판단된다. 상기 자원 요청을 서버노드에 보내지 않는 것으로 판단되면, 상기 자원 요청은 직접 접속을 통해 네트워크의 제2 사용자 노드에 전달된다. 상기 자원 요청을 서버 노드에 전송하는 것으로 판단되면, 상기 자원 요청은 공개를 위해 서버 노드에 전송된다. 바람직한 실시예에서, 서버 노드에 자원 요청을 전송할지 여부에 대한 판단은 제1 사용자 노드에 의한 임의의 결정이다.
본 발명의 또다른 실시예는 사용자 노드들과 적어도 하나의 서버 노드들을 포함하고, 사용자 노드 각각이 직접 접속을 통해 적어도 하나의 다른 사용자 노드에 연결되는 유형의 컴퓨터 네트워크에서 사용되는 사용자 노드를 제공한다. 사용자 노드는 공개된 자원 요청을 수신하기 위한 수신 인터페이스와, 서버 노드에 자원 요청을 전송할지 여부를 판단하기 위한 제어 수단과, 선택적으로 상기 자원 요청을 직접 접속을 통해 네트워크의 제2 사용자 노드에 전달하거나 공개를 위해서버 노드에 전송하는 적어도 하나의 전송 인터페이스를 포함한다. 전송 인터페이스는 제어 수단이 상기 자원 요청을 서버 노드에 전송하지 않는 것으로 판단하면 상기 자원 요청을 제2 사용자 노드에 전달하고, 제어 수단이 서버노드에 상기 자원 요청을 전송할 것을 판단하면 상기 자원 요청을 공개를 위해 서버 노드에 전송한다. 바람직한 실시예의 일예에서, 제어 수단은 네트워크의 다른 사용자 노드들중에서 자원 요청이 전달될 제2 사용자노드가 될 노드를 임의로 선택한다.
도 3은 본 발명의 바람직한 실시예에 따른 확장성있는 네트워크 구조를 도시한다. 도시된 바와 같이, 프레임워크는 공개-가입 서버 노드(402)와 다수의 사용자 노드들(예, 404, 406, 410)을 포함한다. 본 발명의 실시예에서, 서버 노드(402)는 단일 서버 또는 임의 개수의 서버들로 구성되는 "서버 그룹(server cloud)"에 의해 구현될 수 있다. 이러한 서버 그룹의 개별 서버들은 데이터 및 경로 중복과 같은 유용한 장점들 및 적절한 수준의 서비스를 제공하기 위하여 서로 연결되고 다양한 방식으로 인터넷에 연결될 수 있으며 원거리 분리되어 있을 수도 있다.
이러한 구조내에서, 사용자 노드(416)는 공개-가입 서버 노드(402)에 접촉하여 메시지의 일정 "채널"에 가입함으로써 네트워크에 합류한다(join). 또한, 합류한 사용자 노드(416)는 (예를 들어, 지리적 위치, 접속 속도, 또는 공통의 목적등과 같은 임의의 기준에 따라서) 적어도 하나의 사용자 노드(410, 418, 420)에 접속을 요청한 후에 직접 접속한다. 이러한 방식에 따라, 네트워크내의 모든 사용자 노드들은 메시지 전송을 위해 중앙 공개-가입 서버 노드에 연결되고 (단순함을 위해 도시되지는 않음), 분산된 바이러스형 자원 공유 네트워크를 형성하는 동등계층형 접속을 통해 서로 연결된다.
도 4는 본 발명의 제1 실시예에 따라 이러한 확장성있는 네트워크 구조 내에서 자원을 획득하기 위한 프로세스를 나타낸 흐름도이다. 네트워크내의 제1 사용자 노드(416)가 자원(예, 파일)을 소망할 때마다, 자원 요청(또는 질의)이 서버 노드(402)에 전송되고 (단계 S10), 서버 노드(402)는 그것을 요청 유형에 대응하는 채널에 가입한 모든 사용자 노드들에게 전송함으로써 공개한다 (단계 S12). 상기 요청을 수신하고 상기 자원을 제공하고자 하는 제2 사용자 노드(422)는 제1 사용자 노드(416)에 접촉하고(S14), 제1 및 제2 사용자 노드들(416, 422)은 동등계층 접속을 설정하여 요청된 자원을 제1 사용자 노드(416)에 전송한다(단계 S16). 이러한 방식에 의하면, 공개-가입 메시지 전송 기반 구조층은 매우 많은 수의 중개 노드들을 포함하는 직접-접속 경로에 의해 요청 노드로부터 떨어져 있는 노드에 자원 요청이 도달할 수 있도록 해준다.
따라서, 본 발명에 의해 제공되는 확장성있는 네트워크 구조에 의하면, 네트워크내의 사용자 노드수가 증가하더라도 효율적인 자원 발견이 유된다. 이와 동시에, 자원 그 자체는 서버에 공개되지 않으며 실제 자원 공유는 서버를 포함시키지 않으므로, 서버에 대한 요구가 종래의 클라이언트/서버 구조에 비해 적어진다. 더욱이, 각각의 서버 요청은 관련 채널에 가입한 모든 사용자 노드들에게 공개되므로, 매우 많은 수의 사용자 노드들을 포함하는 네트워크에서 허용가능한 시간 내에 요청된 자원에 대한 총마라한 (또는 최소한 매우 광범위한) 검색이 가능하다.
바람직한 실시예에서, 공개-가입 메시지 전달 기반 구조는 2가지 유형의 "채널"또는 공유 데이터 스트림을 지원한다. 제1 유형의 채널은 분산 네트워크에서 다른 사용자 노드들을 찾는 것을 지원하는데 이용되는 "노드 발견 채널"이다. 네트워크에 합류하기 위해, 사용자 노드는 서버 노드의 공개-가입 메시지 전달 기반구조를 이용하여 그자신을 알린다. 구체적으로, 신규 사용자 노드로부터의 합류 통지는 서버 노드를 통해 하나 이상의 노드 발견 채널들에 라우팅되어 다른 사용자 노드들로부터의 접속을 청한다. 따라서, 공개-가입 기반구조는 다른 사용자 노드들에 접속을 개설하는 (IP 위에 있는 층과 같은) 범용 전송층으로서 기능하여 합류 통지를 브로드캐스트한다.
이러한 합류 통지는, 지리학적 위치, 네트워크 접속 속도, 가용자원의 유형, 및/또는 공통의 목적과 같은 카테고리에 근거하여 각각의 노드 발견 채널들로 분할될 수 있다. 따라서, 신규 사용자 노드는 (지리적으로 및 네트워크 홉(hop)에 대하여) 원격 사용자 노드들을 발견할 수 있으며, 접속시에, 원하는 유형의 자원 또는 허용가능한 접속 속성을 갖는 노드들을 선호할 수 있다. 또한, 각각의 합류 통지는 특정 채널들에 가입한 사용자 노드들에만 전송되기 때문에, 매우 큰 네트워크의 사용자 노드들이 합류 통지로써 항상 넘치게 되는 것은 아니다.
제2 유형의 채널은 자원 요청의 공개를 최적화하기 위해 이용되는 "자원 요청 채널"이다. 전술한 바와 같이, 서버 노드는 각각의 자원 요청을 특정 채널(또는 채널들)에 가입한 모든 사용자 노드들에게 전송함으로써 그것을 공개한다. 이러한 자원 요청 채널은 사용자 노드들이 원하지 않은 요청들을 효과적으로 걸러낼 수 있도록 하기 위해 풍부한 자원 유형 분류로 나뉘어질 수 있다. 또한, 자원 요청 채널을 이용함으로써, 자원요청이 네트워크내의 모든 사용자 노드들에 도달하도록 하는 대신에, 관련된 사용자 노드 부집합 (즉, 관련 채널 (또는 채널들)에 가입한 사용자 노드들)에만 도달할 수 있도록 해준다.
따라서, 기술 문서의 공유만을 소망하는 사용자 노드는 멀티미디어 콘텐트 요청 공세를 받지 않는다. 어플리케이션에 따라, 사용자 노드 및/또는 서버 노드는 개별 통지 또는 자원 요청이 공개될 채널 또는 채널들을 선택할 수 있다. 또한, 바람직한 실시예에서, 채널은 단지 사용자 노드에 의해 공개되는 것에 의해 존재한다. 따라서, 임의의 사용자 노드가 새로운 자원 채널을 생성할 수 있으며 그런 후에 임의의 종래 방식으로(예를 들어,웹 사이트, 뉴스그룹, 텔레비전 또는 직접 메일 광고를 통해) 가입을 위한 그의 가용성을 선전할 수 있다.
도 5는 본 발명의 제2 실시예에 따라 확장성있는 네트워크 구조 내에서 자원을 획득하기 위한 프로세스를 나타낸 흐름도이다. 네트워크내의 제1 사용자 노드(416)가 자원(예, 파일)을 소망할 때마다, 자원 요청이 서버 노드(402)에 전송되고(단계 S10), 서버 노드(402)는 그것을 해당 요청 유형에 대응하는 채널에 가입한 사용자 노드들 전부에 전송함으로써 공개한다(단계 S12). 또한, 제2 실시예에서, 제1 노드(416)는 분산 네트워크내에서 연결된 사용자 노드들(410, 418, 420) 모두에 자원 요청을 또한 전송한다.
이러한 프로세스는 분산 네트워크내의 사용자 노드들을 통해 요청을 전파하기 위해, 요청을 수신한 각각의 사용자 노드들이 그 요청을 자신에 연결된 다른 사용자 노드들에게 전달하는 것으로 반복된다(단계 S11). 예를 들어, 요청은 노드(410, 414)를 통해 연속하여 전달됨으로써 제2 사용자 노드(404)에 도달한다. 더욱이, 일부 실시예에서, 서버 노드로부터 자원요청을 수신한 각각의 사용자노드(예, 422)도 분산망에서 자신에 연결된 모든 사용자 노드에 해당 자원 요청을 또한 전송한다. 제2 사용자 노드(404)가 (사용자 노드 전파를 통해 또는 서버 노드로부터) 상기 요청을 수신하고 자원을 제공하려고 한다면, 제2 사용자 노드(404)는 제1 사용자 노드(416)에 접촉하고(단계 S14), 요청된 자원의 공유를 위해 동등계층 접속이 개설된다(단계 S16).
따라서, 제2 실시예에서, 자원 요청들은 (제1 실시예에서와 같이) 메시지 전송 기반구조층을 통해 공개되고 분산 네트워크의 사용자 노드들들 통해 전파된다. 이러한 이중 경로 프로세스가 중앙 서버 노드를 통해 전달되는 요청 전파 경로에 대한 대안을 제공하기 때문에, 단일 장애 지점의 문제가 제거된다. 즉, 서버 노드가 고장나더라도 자원 요청은 다른 사용자 노드들에게 전파된다. 더욱이, 제2 실시예에서, 모든 사용자 노드들이 공개-가입 기반구조에 연결될 필요는 없으며, 그 존재에 대해서도 반드시 알 필요는 없다. 이러한 사용자 노드는 자신에 연결되어 있는 모든 사용자 노드들에게만 자원 요청을 전달하면 된다. 이러한 특징으로 인하여 제2 실시예는 모든 사용자 노드를 변경할 필요없이 기존 네트워크내에서 구현될 수 있다.
도 6은 본 발명의 제3 실시예에 따라 확장성있는 네트워크 구조 내에서 자원을 획득하기 위한 프로세스를 나타낸 흐름도이다. 이 실시예에서, 요청한 사용자 노드에 대한 프라이버시를 강화하기 위해, 자원 요청은 서버 노드에 직접적으로 전송되지 않는다. 제3 실시예에서 자원(예, 파일)이 소망될 때마다, 요청하는 제1 사용자 노드(410)는 분산 네트워크에서 자신에 연결된 제2 사용자 노드(414)에 자원 요청을 전송한다(단계 S20, 도 7에서 점선 화살표로 표시됨). 그리고 나서, 제2 사용자 노드(414)는 상기 요청을 공개-가입 서버 노드(402)에 전송할지 또는 분산 네트워크내에서 자신에 연결되어 있는 또다른 사용자 노드에 전송할지를 판단한다(단계 S22). 바람직하게는, 모든 사용자 노드들이 메시지 전송을 위한 중앙의 공개-가입 서버 노드에 연결되어 있다(도면에는 도시되어 있지 않음).
서버 노드(402)에 전송하지 않는 것으로 판단된 경우에, 제2 사용자 노드(414)는 자원 요청을 그에 연결된 또다른 사용자 노드(420)에 전달한다(단계 S20, 도 7 참조). 이러한 전달 프로세스는 자원 요청을 수신하고 동일한 판단을 수행하는 각각의 노드에서 반복된다(단계 S22). 제3 사용자 노드(416)가 서버 노드(402)에 전송하는 것으로 판단하면, 자원 요청은 서버 노드(412)로 전송되고(단계 S24), 서버 노드(402)는 해당 요청의 유형에 대응하는 채널에 가입된 모든 사용자 노드들에 자원 요청을 전송함으로써 그것을 공개한다(단계 S26).
바람직한 실시예에서, 요청을 공개-가입 서버 노드에 전송할지 여부에 대한 각각의 판단은 요청이 서버 노드에 전송될 확률을 부여하는 0과 1사이의 가중 인자에 근거하여 사용자 노드에 의해 이루어지는 "무작위(random)" 결정이다. 예를 들어, 가중 인자가 0.25라면, 사용자 노드가 요청을 서버 노드에 전송할 확률이 25%이고 요청이 또다른 사용자 노드에 전달될 확률은 75%라는 것이다. 따라서, 평균적으로 0.25의 가중 인자는 자원 요청들이 공개-가입 서버 노드로 전송되기 이전에 세 번 정도 다른 사용자 노드에 전달되도록 야기한다. 가중 인자값은 소망하는 프라이버시 수준과 같은 요소에 따라서 설정된다. 나아가서, 가중 인자값은 네트워크 전체에 걸쳐서 사용되는 고정값이거나 메시지 단위로 사용자 노드에 의해 설정될 수 있다. 최대 전달 회수 또는 최대 경과 시간과 같은 다른 기준들도 요청을 수신하는 각 사용자 노드에 의해 이루어지는 판단에 포함될 수 있다.
또다른 실시예에서, 공개-가입 서버 노드에 요청을 전송할지 여부에 대한 판단은 정해진(fixed) 전달 회수와 같은 다른 기준에 의해 근거하여 이루어질 수 있다. 예를 들어, 일실시예에서 각각의 사용자 요청은 항상 3개의 사용자 노드들을 통해 전달되고 나서 공개-가입 서버 노드에 전송된다. 바람직하게는, 자원 요청이 또다른 사용자 노드에 전달될 때마다, 어떠한 다른 사용자 노드가 상기 전달된 요청을 수신할지에 대한 선택은 전달한 사용자 노드에 연결된 사용자 노드들중에서 하나를 무작위로 선택함으로써 이루어진다.
자원 요청이 서버 노드(402)에 의해 공개된 후에, 요청을 수신하고 자원을 제공하고자 하는 제4 사용자 노드(422)는 제1 사용자 노드(410)에 접촉한다. 구체적으로, 도 8에 도시된 바와 같이, 제4 사용자 노드(422)는상기 자원 요청을 공개를 위해 서버 노드(402)에 전송했던 제3 사용자 노드(416)에 응답을 전송한다(단계 S28). 제3 사용자 노드(416)는 이러한 응답을 그가 자원요청을 수신한 사용자 노드(420)에 전달하고, 이러한 전달 프로세스는 응답이 제1 사용자 노드(410)에 도달할 때까지 반복된다(단계 S30). 이 시점에서, 제1 사용자 노드(416)는 제 4 사용자 노드(422)와 접촉하여 직접적인 동등계층 접속을 개설함으로써 요청된 자원을 공유할 수 있다(단계 S32).
바람직한 실시예에서, 자원을 가진 사용자 노드로부터의 응답은 자원매치(match)에 관한 메타데이터를 포함한다. 응답이 수신되면, 요청한 사용자 노드는 메타데이터를 평가하여 자원 자체의 공유를 위해 (즉, 요청된 파일을 다운로드하기 위해) 응답 노드와 직접 접속할지 여부를 판단한다. 다수의 응답이 수신되는 경우에, 요청한 사용자 노드는 각 응답내의 메타데이터를 평가하여 임의의 기준(예, 과거 경험, 수신 순서, 접속 속도, 또는 물리적 위치)에 근거하여 응답 사용자 노드들중에서 하나 또는 그 이상을 선택할 수 있다.
부가적으로, 바람직한 실시예에서, 자원을 가진 사용자 노드로부터의 응답들은 (상기 요청이 서버 노드를 통해 거쳐온 경로와 같은) 기존 접속을 통해 라우팅되고, 새로운 동등계층 접속은 실제적으로 자원을 전송하기 위해서만 개설된다. 그렇지 않고, 각각의 응답 사용자 노드들이 새로운 동등계층 접속을 개시한다면, 상기 응답들을 수신하는 사용자 노드는 많은 수의 응답들이 수신될 때마다 압도될 것이다. 대안적으로, 서버 노드가 자원 요청에 응답하는 사용자 노드들에 의해 사용될 "1회성" 매칭 또는 영구적인 응답 채널을 설정할 수 있다. 영구 응답 채널을 통한 응답의 공개는 미래 사용을 위해 잠재적으로 흥미있는 응답들을 보관해두는 "수동적인(passive)" 사용자 노드들을 도울 것이다.
자원 요청들이 서버 노드에 직접 전송되는 대신에 하나 이상의 다른 사용자 노드들을 통해 전달되기 때문에, 제3 실시예는 요청 사용자 노드에 프라이버시를 제공한다. 자원을 요청한 실제 사용자 노드는 서버 노드에 익명으로 남게 되므로, 서버 노드는 어느 사용자가 어떠한 자원을 공유하는지 (심지어는 요청하는지)를 추적할 수 없다. 종래 바이러스형 네트워크에서와 같이, 제3 실시예에 의하면, 자원을 실제로 제공하는 사용자 노드만이 자원 공유 및 요청 노드의 신원에 대해 알고 있다. 한편, 종래의 바이러스형 네트워크와는 달리, 제3 실시예에 의하면, 공개-가입 메시지 전송 기반구조층을 이용함으로써 엄청나게 많은 수의 사용자 노드들을 갖는 네트워크내에서 효율적으로 자원 발견할 수 있게 된다. 따라서, 본 발명을 통해 분산 네트워크에서의 확장성이 달성됨과 동시에 사용자 프라이버시의 유지는 개선된다.
전술한 본 발명의 실시예들은 개별 메시지들을 식별하기 위한 임의의 메커니즘을 필요로 한다. 바람직한 실시예에서, 모든 메시지(즉, 자원 요청 또는 응답)는 유일한 식별 번호를 할당받는다. 예를 들어, 일시예에서는 각각의 사용자 노드가 전역적으로 유일할 가능성이 큰 메시지 식별자(globally-unique message identification: GUID)를 개별적으로 생성할 수 있도록 해주는 알고리즘(마이크로소프트사에 의해 개발됨)을 채용한다. 또한, 각각의 사용자 노드는 응답(자원 자체를 포함할 수도 있음)이 메시지를 전송한 사용자 노드에 동일한 경로를 통해 도달할 수 있도록, 전달될 메시지들에 대하여 적어도 제한된 이력 정보를 (예를 들어, 테이블 내에) 저장하여야 한다. 또한, 일부 실시예는 자원 요청의 루핑(looping)을 방지하기 위한 메커니즘을 포함한다. 예를 들어, 전역적으로 유일한 메시지 식별자(GUID)와 노드 이력 테이블은 루핑-방지 메커니즘을 생성하는데 쉽게 이용될 수 있다.
전술한 본 발명의 실시예는 단일 서버 노드에 관한 것이지만, "장애지점(point of failure)" 문제를 더욱 최소화시키기 위해, 다수의 공개-가입서버 노드들이 네트워크 내에 제공될 수 있다. 또한, 경쟁 제공자들이 상이한 서버 노드들을 운영하고 사용자 노드 가입을 위해 경쟁함으로써 네트워크 내에 공존할 수 있다. 또한, 전술한 상이한 실시예들은 특징들은 미래 응용시에 결합될 수 있다. 예를 들어, 본 발명의 한 실시예가 제3 실시예에 따른 무작위 요청 전달 및 제2 실시예의 이중 전파/공개를 모두 포함할 수 있다. 네트워크 프로토콜, 전달 기준 및 가입 기준과 같은 기타 설계상의 선택사항들이 용이하게 적용될 수 있다.
본 발명은 하드웨어, 소프트웨어 또는 이들의 조합으로 실현될 수 있다. 임의의 종류의 컴퓨터 시스템 (또는 본명세서에 기재된 방법들을 수행하기 위해 개조된 장치)이 적합하다. 하드웨어 및 소프트웨어의 전형적인 조합은 컴퓨터 프로그램을 포함하는 범용 컴퓨터가 될 수 있으며, 상기 컴퓨터 프로그램이 컴퓨터에 로딩되어 실행되면 전술한 본원 발명의 방법들을 수행하기 위해 컴퓨터 시스템을 제어한다.
또한, 본 발명은 본 명세서에 기재된 방법들이 구형을 가능케 하는 모든 특징들을 포함하고, 컴퓨터 시스템에 로드될 때 이들 방법을 수행할 수 있는 컴퓨터 프로그램 제품으로 구현될 수 있다. 본 명세서에서, "컴퓨터 프로그램"은 정보 처리 능력을 갖는 시스템으로 하여금 직접적으로 또는 a) 또다른 언어, 코드 또는 표기로의 변환 및/또는 b)상이한 물질 형태로의 재생 이후에 특정 기능을 수행하도록 만드는 명령어 집합을 임의의 언어, 코드 또는 표기로 표현한 것을 포함한다.
각각의 컴퓨터 시스템은 하나 이상의 컴퓨터들과 컴퓨터로 하여금 컴퓨터 판독가능 매체로부터 데이터, 명령어, 메시지, 또는 매시지 패킷 및 기타 컴퓨터 판독가능 정보를 판독할 수 있도록 해주는 컴퓨터 판독가능 매체를 포함할 수 있다. 컴퓨터 판독가능 매체에는 ROM과 같은 비휘발성 메모리, 하드 디스크 또는 플로피 디스크, CD-ROM, 또는 기타 영구적인 저장장치가 포함될 수 있다. 또한, 컴퓨터 판독가능 매체에는 컴퓨터로 하여금 컴퓨터 판독가능 정보를 판독할 수 있도록 해주는 네트워크 링크 및/또는 (유선 또는 무선) 네트워크 인터페이스와 같은 일시적인 저장매체내의 컴퓨터 판독가능 정보도 포함될 수 있다.
Claims (20)
- 사용자 노드들의 네트워크에서 자원을 찾아내는 방법에 있어서, 상기 방법은상기 네트워크의 제1 사용자 노드에서 공개될 자원 요청을 수신하는 단계와,상기 자원 요청을 서버 노드에 전송할지 여부를 판단하는 단계와,상기 자원 요청을 서버 노드에 전송하지 않는 것으로 판단된 때에, 상기 자원 요청을 직접 접속을 통해 상기 네트워크의 제2 사용자 노드에 전달하는 단계와,상기 자원 요청을 서버 노드에 전송하는 것으로 판단된 때에, 상기 자원 요청을 공개를 위해 서버 노드에 전송하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 판단 단계에서, 상기 자원 요청을 서버 노드에 전송할지 여부에 대한 판단은 상기 제1 사용자 노드에 의해 이루어지는 무작위(random) 판단인 방법.
- 제2항에 있어서, 상기 판단 단계에서, 상기 무작위 판단은 상기 제1 사용자 노드가 상기 자원 요청을 서버 노드에 전송하는 것으로 판단할 확률에 해당하는 가중 인자에 근거하여 이루어지는 방법.
- 제1항에 있어서, 상기 전달 단계는상기 제1 사용자 노드에 연결되어 있는 사용자 노드들중에서 하나의 노드를 제2 사용자 노드로서 무작위로 선택하는 단계와,상기 자원 요청을 상기 제1 사용자 노드로부터 직접 접속을 통해 상기 제2 사용자 노드에 전달하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 자원 요청을 상기 서버 노드를 통해 상기 네트워크의 사용자 노드들중 적어도 일부에 공개하는 단계를 더 포함하는 방법.
- 제5항에 있어서, 상기 공개 단계에서, 상기 서버 노드는 하나 이상의 선택된 자원 요청 채널에 가입된 네트워크 내의 사용자 노드들 모두에게 상기 자원 요청을 공개하는 방법.
- 제1항에 있어서, 상기 판단 단계에서 상기 자원 요청을 수신한 사용자 노드가 상기 자원 요청을 서버 노드에 전송하는 것으로 판단할 때까지 상기 판단 및 전달 단계를 반복하는 단계를 더 포함하는 방법.
- 제1항에 있어서,요청 자원을 소망하는 요청 사용자 노드로부터 상기 공개될 자원 요청을 상기 제1 사용자 노드에 전송하는 단계와,동일한 자원 요청을 상기 요청 사용자 노드로부터 상기 요청 사용자 노드에 직접 접속을 통해 연결되어 있는 모든 사용자 노드들에게 전송하는 단계를 더 포함하는 방법.
- 사용자 노드들의 네트워크에서 자원을 찾아내기 위한 프로그램이 인코딩된(encoded) 머신-판독가능 매체에 있어서, 상기 프로그램은상기 네트워크의 제1 사용자 노드에서 공개될 자원 요청을 수신하는 단계와,상기 자원 요청을 서버 노드에 전송할지 여부를 판단하는 단계와,상기 자원 요청을 서버 노드에 전송하지 않는 것으로 판단된 때에, 상기 자원 요청을 직접 접속을 통해 상기 네트워크의 제2 사용자 노드에 전달하는 단계와,상기 자원 요청을 서버 노드에 전송하는 것으로 판단된 때에, 상기 자원 요청을 공개를 위해 서버 노드에 전송하는 단계를 수행하기 위한 명령어들을 포함하는 머신-판독가능 매체.
- 제9항에 있어서, 상기 판단 단계에서, 상기 자원 요청을 서버 노드에 전송할지 여부에 대한 판단은 상기 제1 사용자 노드에 의해 이루어지는 무작위(random) 판단인 머신-판독가능 매체.방법.
- 제10항에 있어서, 상기 판단 단계에서, 상기 무작위 판단은 상기 제1 사용자 노드가 상기 자원 요청을 서버 노드에 전송하는 것으로 판단할 확률에 해당하는 가중 인자에 근거하여 이루어지는 머신-판독가능 매체.
- 제9항에 있어서, 상기 전달 단계는상기 제1 사용자 노드에 연결되어 있는 사용자 노드들중에서 하나의 노드를 제2 사용자 노드로서 무작위로 선택하는 단계와,상기 자원 요청을 상기 제1 사용자 노드로부터 직접 접속을 통해 상기 제2 사용자 노드에 전달하는 단계를 포함하는 머신-판독가능 매체.
- 제9항에 있어서, 상기 프로그램은 상기 자원 요청을 상기 서버 노드를 통해 상기 네트워크의 사용자 노드들중 적어도 일부에 공개하는 단계를 를 수행하기 위한 명령어들을 더 포함하는 머신-판독가능 매체.
- 제13항에 있어서, 상기 공개 단계에서, 상기 서버 노드는 하나 이상의 선택된 자원 요청 채널에 가입된 네트워크 내의 사용자 노드들 모두에게 상기 자원 요청을 공개하는 머신- 판독가능 매체.
- 제9항에 있어서, 상기 프로그램은 상기 판단 단계에서 상기 자원 요청을 수신한 사용자 노드가 상기 자원 요청을 서버 노드에 전송하는 것으로 판단할 때까지 상기 판단 및 전달 단계를 반복하는 단계를 수행하기 위한 명령어들을 더 포함하는머신-판독가능 매체.
- 제9항에 있어서, 상기 프로그램은요청 자원을 소망하는 요청 사용자 노드로부터 상기 공개될 자원 요청을 상기 제1 사용자 노드에 전송하는 단계와,동일한 자원 요청을 상기 요청 사용자 노드로부터 상기 요청 사용자 노드에 직접 접속을 통해 연결되어 있는 모든 사용자 노드들에게 전송하는 단계를 수행하기 위한 명령어들을 더 포함하는 머신-판독가능 매체.
- 다수의 사용자 노드들과 적어도 하나의 서버 노드를 포함하는 유형의 컴퓨터 네트워크에서 사용하기 위한 사용자 노드에 있어서, 상기 사용자 노드 각각은 직접 접속을 통해 적어도 하나의 다른 사용자 노드와 연결되어 있으며, 상기 사용자 노드는,공개될 자원 요청을 수신하기 위한 수신 인터페이스와,상기 자원 요청을 상기 서버 노드에 전송할지 여부를 판단하기 위한 제어 수단과,상기 자원 요청을 직접 접속을 통해 상기 네트워크의 제2 사용자 노드에 선택적으로 전달하거나 상기 자원 요청을 공개를 위해 상기 서버 노드에 전송하기 위한 적어도 하나의 전송 인터페이스를 포함하고,상기 전송 인터페이스는 상기 제어 수단이 상기 자원 요청을 상기 서버 노드에 전송하지 않는 것으로 판단하면 상기 자원 요청을 상기 제2 사용자 노드에 전달하고, 상기 제어 수단이 상기 자원 요청을 상기 서버 노드에 전송하는 것으로 판단하면 상기 자원 요청을 상기 서버 노드에 공개를 위해 전송하는 사용자 노드.
- 제17항에 있어서, 상기 제어 수단은 상기 자원 요청을 상기 서버 노드에 전송할지 여부를 무작위로 판단하는 사용자 노드.
- 제18항에 있어서, 상기 제어 수단은 가중 인자에 따라 무작위로 판단하는 사용자 노드.
- 제17항에 있어서, 상기 제어 수단은 상기 네트워크의 다른 사용자 노드들중에서 상기 자원 요청이 전달될 제2 사용자 노드가 될 노드를 무작위로 선택하는 사용자 노드.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/850,343 US20020165948A1 (en) | 2001-05-07 | 2001-05-07 | Scalable resource discovery and reconfiguration for distributed computer networks |
US09/850,343 | 2001-05-07 | ||
PCT/GB2002/001281 WO2002091712A1 (en) | 2001-05-07 | 2002-03-18 | Scalable resource discovery and reconfiguration for distributed computer networks |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030097821A true KR20030097821A (ko) | 2003-12-31 |
KR100613053B1 KR100613053B1 (ko) | 2006-08-16 |
Family
ID=25307875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020037013118A KR100613053B1 (ko) | 2001-05-07 | 2002-03-18 | 분산컴퓨터망을 위한 확장성있는 자원 발견 및 재구성 |
Country Status (9)
Country | Link |
---|---|
US (2) | US20020165948A1 (ko) |
EP (1) | EP1386471B1 (ko) |
JP (1) | JP3851275B2 (ko) |
KR (1) | KR100613053B1 (ko) |
CN (1) | CN100417158C (ko) |
AT (1) | ATE315871T1 (ko) |
DE (1) | DE60208659T2 (ko) |
TW (1) | TWI222287B (ko) |
WO (1) | WO2002091712A1 (ko) |
Families Citing this family (100)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7797375B2 (en) * | 2001-05-07 | 2010-09-14 | International Business Machines Corporat | System and method for responding to resource requests in distributed computer networks |
US7545805B2 (en) * | 2001-08-15 | 2009-06-09 | Precache, Inc. | Method and apparatus for content-based routing and filtering at routers using channels |
US20030165139A1 (en) * | 2001-08-15 | 2003-09-04 | Tsu-Wei Chen | Packet routing via payload inspection |
US7551629B2 (en) * | 2002-03-28 | 2009-06-23 | Precache, Inc. | Method and apparatus for propagating content filters for a publish-subscribe network |
US20040083305A1 (en) * | 2002-07-08 | 2004-04-29 | Chung-Yih Wang | Packet routing via payload inspection for alert services |
EP1429513A1 (en) * | 2002-12-09 | 2004-06-16 | Koninklijke Philips Electronics N.V. | Method and apparatus for searching data in a peer to peer network |
US7606916B1 (en) * | 2003-11-10 | 2009-10-20 | Cisco Technology, Inc. | Method and apparatus for load balancing within a computer system |
US7761569B2 (en) * | 2004-01-23 | 2010-07-20 | Tiversa, Inc. | Method for monitoring and providing information over a peer to peer network |
US7827603B1 (en) | 2004-02-13 | 2010-11-02 | Citicorp Development Center, Inc. | System and method for secure message reply |
US7640329B2 (en) * | 2005-02-15 | 2009-12-29 | Microsoft Corporation | Scaling and extending UPnP v1.0 device discovery using peer groups |
US7647394B2 (en) * | 2005-02-15 | 2010-01-12 | Microsoft Corporation | Scaling UPnP v1.0 device eventing using peer groups |
US8200563B2 (en) * | 2005-09-23 | 2012-06-12 | Chicago Mercantile Exchange Inc. | Publish and subscribe system including buffer |
US20070165519A1 (en) * | 2006-01-13 | 2007-07-19 | George David A | Method and apparatus for re-establishing anonymous data transfers |
US20070199077A1 (en) * | 2006-02-22 | 2007-08-23 | Czuchry Andrew J | Secure communication system |
US8190682B2 (en) * | 2006-03-31 | 2012-05-29 | Amazon Technologies, Inc. | Managing execution of programs by multiple computing systems |
EP1881676B1 (en) * | 2006-07-20 | 2008-12-17 | Alcatel Lucent | Distributed presence management in peer-to-peer networks |
JP5086347B2 (ja) * | 2006-08-10 | 2012-11-28 | トムソン ライセンシング | 分散型ネットワークにおける情報拡散のための方法 |
US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
US8533293B1 (en) | 2008-03-31 | 2013-09-10 | Amazon Technologies, Inc. | Client side cache management |
US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US9912740B2 (en) | 2008-06-30 | 2018-03-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US7925782B2 (en) | 2008-06-30 | 2011-04-12 | Amazon Technologies, Inc. | Request routing using network computing components |
US8521880B1 (en) | 2008-11-17 | 2013-08-27 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8122098B1 (en) | 2008-11-17 | 2012-02-21 | Amazon Technologies, Inc. | Managing content delivery network service providers by a content broker |
US8732309B1 (en) | 2008-11-17 | 2014-05-20 | Amazon Technologies, Inc. | Request routing utilizing cost information |
KR101030095B1 (ko) * | 2009-02-03 | 2011-04-20 | 주식회사 웰게이트 | 무선 피어투피어 네트워크에서의 멀티미디어 데이터 전송을위한 분산형 피어 발견 방법 |
US8521851B1 (en) | 2009-03-27 | 2013-08-27 | Amazon Technologies, Inc. | DNS query processing using resource identifiers specifying an application broker |
US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
EP2434832A2 (en) | 2009-04-15 | 2012-03-28 | Itec Tokyo Corporation | Communication method in an ieee 802.11 wireless lan environment |
US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
US8433771B1 (en) | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
US20120005274A1 (en) * | 2010-07-02 | 2012-01-05 | Electronics And Telecommunications Research Institute | System and method for offering cloud computing service |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US8819283B2 (en) | 2010-09-28 | 2014-08-26 | Amazon Technologies, Inc. | Request routing in a networked environment |
US8577992B1 (en) | 2010-09-28 | 2013-11-05 | Amazon Technologies, Inc. | Request routing management based on network components |
US10097398B1 (en) | 2010-09-28 | 2018-10-09 | Amazon Technologies, Inc. | Point of presence management in request routing |
US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
US9137189B2 (en) * | 2011-03-24 | 2015-09-15 | Red Hat, Inc. | Providing distributed dynamic routing using a logical broker |
US9021131B2 (en) | 2011-03-24 | 2015-04-28 | Red Hat, Inc. | Identifying linked message brokers in a dynamic routing network |
US9313159B2 (en) | 2011-03-24 | 2016-04-12 | Red Hat, Inc. | Routing messages exclusively to eligible consumers in a dynamic routing network |
US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
US9432218B2 (en) | 2011-07-28 | 2016-08-30 | Red Hat, Inc. | Secure message delivery to a transient recipient in a routed network |
US8904009B1 (en) | 2012-02-10 | 2014-12-02 | Amazon Technologies, Inc. | Dynamic content delivery |
US10021179B1 (en) | 2012-02-21 | 2018-07-10 | Amazon Technologies, Inc. | Local resource delivery network |
CN103294555A (zh) * | 2012-03-05 | 2013-09-11 | 联想(北京)有限公司 | 一种获得硬件资源的方法及电子设备 |
US8811950B2 (en) * | 2012-03-30 | 2014-08-19 | Qualcomm Incorporated | Methods and apparatus for controlling devices with no or limited WWAN capability in peer to peer communication |
US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US9525659B1 (en) | 2012-09-04 | 2016-12-20 | Amazon Technologies, Inc. | Request routing utilizing point of presence load information |
US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
KR20140098606A (ko) * | 2013-01-31 | 2014-08-08 | 한국전자통신연구원 | 발행-구독형 통신 미들웨어를 이용한 노드 탐색 시스템 및 노드 탐색 방법 |
US9294391B1 (en) | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
US8769610B1 (en) * | 2013-10-31 | 2014-07-01 | Eventure Interactive, Inc. | Distance-modified security and content sharing |
US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10033627B1 (en) | 2014-12-18 | 2018-07-24 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US9887932B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887931B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
US9742795B1 (en) | 2015-09-24 | 2017-08-22 | Amazon Technologies, Inc. | Mitigating network attacks |
US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
US9794281B1 (en) | 2015-09-24 | 2017-10-17 | Amazon Technologies, Inc. | Identifying sources of network attacks |
US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US10049051B1 (en) | 2015-12-11 | 2018-08-14 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
US10503613B1 (en) | 2017-04-21 | 2019-12-10 | Amazon Technologies, Inc. | Efficient serving of resources during server unavailability |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
US10592578B1 (en) | 2018-03-07 | 2020-03-17 | Amazon Technologies, Inc. | Predictive content push-enabled content delivery network |
US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4945471A (en) * | 1981-04-01 | 1990-07-31 | Teradata Corporation | Message transmission system for selectively transmitting one of two colliding messages based on contents thereof |
US4412285A (en) * | 1981-04-01 | 1983-10-25 | Teradata Corporation | Multiprocessor intercommunication system and method |
US4814979A (en) * | 1981-04-01 | 1989-03-21 | Teradata Corporation | Network to transmit prioritized subtask pockets to dedicated processors |
US4445171A (en) * | 1981-04-01 | 1984-04-24 | Teradata Corporation | Data processing systems and methods |
JPS6056799A (ja) * | 1983-09-08 | 1985-04-02 | 本田技研工業株式会社 | 重量物積載治具 |
CA1260151A (en) | 1985-06-11 | 1989-09-26 | Frank D. Bartocci | Propagation of network queries through superior- subordinate and peer-peer data distribution relationships |
GB2345157B (en) * | 1998-12-23 | 2003-06-18 | Ibm | Publish and subscribe data processing apparatus, method and computer program product with declaration of a unique publisher broker |
US5826269A (en) * | 1995-06-21 | 1998-10-20 | Microsoft Corporation | Electronic mail interface for a network server |
US5870605A (en) * | 1996-01-18 | 1999-02-09 | Sun Microsystems, Inc. | Middleware for enterprise information distribution |
US5873084A (en) | 1996-01-18 | 1999-02-16 | Sun Microsystems, Inc. | Database network connectivity product |
US5819032A (en) * | 1996-05-15 | 1998-10-06 | Microsoft Corporation | Electronic magazine which is distributed electronically from a publisher to multiple subscribers |
US5970231A (en) * | 1996-11-27 | 1999-10-19 | Pen Industries, Inc. | Electronic newspaper and electronic publishing medium |
US6446116B1 (en) * | 1997-06-30 | 2002-09-03 | Sun Microsystems, Inc. | Method and apparatus for dynamic loading of a transport mechanism in a multipoint data delivery system |
US6216132B1 (en) * | 1997-11-20 | 2001-04-10 | International Business Machines Corporation | Method and system for matching consumers to events |
US6324587B1 (en) * | 1997-12-23 | 2001-11-27 | Microsoft Corporation | Method, computer program product, and data structure for publishing a data object over a store and forward transport |
US6636886B1 (en) * | 1998-05-15 | 2003-10-21 | E.Piphany, Inc. | Publish-subscribe architecture using information objects in a computer network |
US7136645B2 (en) * | 1998-10-09 | 2006-11-14 | Netmotion Wireless, Inc. | Method and apparatus for providing mobile and other intermittent connectivity in a computing environment |
US6228022B1 (en) | 1998-10-28 | 2001-05-08 | Sdgi Holdings, Inc. | Methods and instruments for spinal surgery |
US6829770B1 (en) * | 1999-02-23 | 2004-12-07 | Microsoft Corporation | Object connectivity through loosely coupled publish and subscribe events |
US6725281B1 (en) * | 1999-06-11 | 2004-04-20 | Microsoft Corporation | Synchronization of controlled device state using state table and eventing in data-driven remote device control model |
US6405191B1 (en) * | 1999-07-21 | 2002-06-11 | Oracle Corporation | Content based publish-and-subscribe system integrated in a relational database system |
GB2354847A (en) * | 1999-09-28 | 2001-04-04 | Ibm | Publish/subscribe data processing with subscription points for customised message processing |
US6470189B1 (en) * | 1999-09-29 | 2002-10-22 | Motorola, Inc. | Method and apparatus in a wireless transceiver for seeking and transferring information available from a network server |
US6742023B1 (en) * | 2000-04-28 | 2004-05-25 | Roxio, Inc. | Use-sensitive distribution of data files between users |
US6732237B1 (en) * | 2000-08-29 | 2004-05-04 | Oracle International Corporation | Multi-tier caching system |
US7114003B2 (en) * | 2000-10-18 | 2006-09-26 | Nortel Networks Limited | Content networks |
-
2001
- 2001-05-07 US US09/850,343 patent/US20020165948A1/en not_active Abandoned
-
2002
- 2002-03-18 EP EP02706962A patent/EP1386471B1/en not_active Expired - Lifetime
- 2002-03-18 CN CNB028044711A patent/CN100417158C/zh not_active Expired - Fee Related
- 2002-03-18 JP JP2002588054A patent/JP3851275B2/ja not_active Expired - Fee Related
- 2002-03-18 AT AT02706962T patent/ATE315871T1/de not_active IP Right Cessation
- 2002-03-18 DE DE60208659T patent/DE60208659T2/de not_active Expired - Lifetime
- 2002-03-18 WO PCT/GB2002/001281 patent/WO2002091712A1/en active IP Right Grant
- 2002-03-18 KR KR1020037013118A patent/KR100613053B1/ko not_active IP Right Cessation
- 2002-05-03 TW TW091109254A patent/TWI222287B/zh not_active IP Right Cessation
-
2006
- 2006-09-22 US US11/534,415 patent/US7783762B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
ATE315871T1 (de) | 2006-02-15 |
DE60208659T2 (de) | 2006-08-24 |
CN1489857A (zh) | 2004-04-14 |
US7783762B2 (en) | 2010-08-24 |
US20070014302A1 (en) | 2007-01-18 |
EP1386471B1 (en) | 2006-01-11 |
JP3851275B2 (ja) | 2006-11-29 |
CN100417158C (zh) | 2008-09-03 |
TWI222287B (en) | 2004-10-11 |
WO2002091712A1 (en) | 2002-11-14 |
KR100613053B1 (ko) | 2006-08-16 |
EP1386471A1 (en) | 2004-02-04 |
DE60208659D1 (de) | 2006-04-06 |
JP2004532471A (ja) | 2004-10-21 |
US20020165948A1 (en) | 2002-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100613053B1 (ko) | 분산컴퓨터망을 위한 확장성있는 자원 발견 및 재구성 | |
JP3956365B2 (ja) | 分散コンピュータ・ネットワーク内の資源要求に応答するシステムおよび方法 | |
US7941488B2 (en) | Authorizing message publication to a group of subscribing clients via a publish/subscribe service | |
US6182224B1 (en) | Enhanced network services using a subnetwork of communicating processors | |
US20030174648A1 (en) | Content delivery network by-pass system | |
US7373394B1 (en) | Method and apparatus for multicast cloud with integrated multicast and unicast channel routing in a content distribution network | |
US20020165815A1 (en) | Online marketplace with anonymous communication | |
US7149807B1 (en) | Control and communication infrastructure (CCI) for selecting a transport mechanism to transport data to one or more servers in a content delivery network based on the size of the data, together with frequency and loss tolerance with respect to transport of the data | |
JP2006523905A (ja) | パブリッシュ/サブスクライブ・メッセージングのためのシステム及び方法 | |
KR20010045237A (ko) | 인터넷 멀티캐스트 응용에서의 그룹 멤버쉽 관리방법 | |
Ding et al. | Peer-to-peer networks for content sharing | |
EP2223501B1 (en) | Publish/subscribe networks | |
US7246148B1 (en) | Enhanced network services using a subnetwork of communicating processors | |
JP2010505196A (ja) | 効率的に拡張可能なコンピューティングのための複数のピアグループ | |
EP1719326B1 (en) | Method for improving peer to peer network communication | |
Camarillo | Peer-to-peer (p2p) architecture: definition, taxonomies, examples, and applicability | |
US6917966B1 (en) | Enhanced network services using a subnetwork of communicating processors | |
Chen et al. | Java mobile agents on project JXTA peer-to-peer platform | |
KR101984007B1 (ko) | P2p 네트워크 기반 콘텐트 전달 서비스에서 사용자에게 다른 사용자가 수신하고 있는 콘텐트 정보를 제공하는 방법 | |
Junginger | A high-performance messaging system for peer-to-peer networks | |
Junginger et al. | Peer‐To‐Peer Middleware | |
US20050030892A1 (en) | System for providing network load distribution | |
x Thoth | UPSYCLE: Ubiquitous Publish-Subscribe Infrastructure for Collaboration on Edge Networks | |
Chen et al. | Analyzers for the Identification of Instant Messaging and Peer-to-Peer Traffic | |
Sit et al. | The Future of the Decentralized Model of P2P File-Sharing |
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: 20100429 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |