# US 7,610,378 B2 · Locator and tracking service for peer-to-peer resources

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,610,378 B2
- Document ID: US7610378B2
- Status: Granted
- Kind: B2
- Application number: 11/057,267
- Filed: 2005-02-11
- Published: 2005-09-08
- Granted: 2009-10-27
- Earliest claimed: 2000-11-22
- Assignees: Microsoft Corporation
- Inventors: Dan Teodosiu; Nikolaj S. Bjorner; Markus M. Breunig
- Web page: https://patentgrep.com/patent/US7610378B2

## CPC

- H04L 67/104: Peer-to-peer [P2P] networks
- H04L 61/4511: using domain name system [DNS]
- H04L 61/4552: Lookup mechanisms between a plurality of directories; Synchronisation of directories, e.g. metadirectories
- H04L 67/1072: {Discovery involving ranked list compilation of candidate peers}
- H04L 69/329: in the application layer [OSI layer 7]
- H04L 67/1093: {Some peer nodes performing special functions}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A resource naming service (RNS) server receives peer resource requests from peer platforms through a networking environment. The RNS server, possibly in cooperation with other RNS servers and peer registrars generates a response to the request to enable the peer platforms to access the requested peer resources. In one embodiment, a response includes a list of locations of peer devices in the networking environment where a resource is expected to be available. A requesting device can then choose to access the resource from one or more of the listed peer locations.

## Claims

### Claim 1

A method comprising:
receiving a peer resource request at a first peer platform included in a peer-to-peer network, the request being for a peer resource associated with the first peer platform, said resource request including an identifier of the resource and uniquely identifying a master publisher peer of the peer resource within the peer-to-peer network, where the master publisher peer updates and publishes the resource and other peers cache copies of the peer resource, said peer resource request being received from a second peer platform included in the peer-to-peer network through a networking environment, said second peer platform having located the peer resource through a resource locator service included in the peer-to-peer network, the resource locator service comprising a hierarchical arrangement of servers that together track names of which resources are available on which peers, where a peer looking up a resource sends the resource's name to a home server to which the peer is assigned, and if the home server does not know a peer location of the resource then the name of the resource is passed up the hierarchy of servers until an RNS server identifies a peer that has the resource, the tracking including the resource locator service identifying peers that have joined and left the peer-to-peer network; and
providing the second peer platform access to the peer resource through the first peer platform.

### Claim 2 (depends on 1)

The method of claim 1 wherein the first peer platform corresponds to a particular peer device included in the peer-to-peer network, and wherein the particular peer device makes the peer resource available within the peer-to-peer network.

### Claim 3 (depends on 2)

The method of claim 2 wherein the peer device comprises one of a master publisher of the peer resource and a caching publisher of the peer resource.

### Claim 4 (depends on 1)

The method of claim 1 wherein the second peer platform corresponds to one of a particular peer device and a gate server for a peer-to-peer network containing the first peer platform.

### Claim 5 (depends on 1)

The method of claim 1 wherein the at least one gate server is acting as a proxy on behalf of a requester to make the peer resource available to a requester that is not compatible with the first peer platform.

### Claim 6

A machine readable storage medium having stored thereon machine executable instructions to implement a method comprising:
registering a first peer platform, a second peer platform and at least one gate server with at least one registrar included in a peer-to-peer network;
receiving a peer resource request at a first peer platform included in a peer-to-peer network for a peer resource associated with the first peer platform, said resource request identifying the peer resource and a master publisher peer of the peer resource within the peer-to-peer network, said peer resource request being received from a second peer platform included in the peer-to-peer network through a networking environment, said second peer platform having located the peer resource through a resource locator service included in the peer-to-peer network, the locator service comprising a hierarchical arrangement of servers that together track names of which resources are available on which peers, where a peer looking up a resource sends the resource's name to a home server to which the peer is assigned by the registrar, and if the home server does not know a peer location of the resource then the name of the resource is passed up the hierarchy of servers until a server identifies a peer that has the resource, the tracking including the resource locator service identifying peers that have joined and left the peer-to-peer network, the registrar assigning peers that have joined the peer-to-peer network to particular servers of the resource locator service, the gate server directing resource requests from outside the peer-to-peer network to the locator service; and providing the second peer platform access to the peer resource through the first peer platform.

### Claim 7 (depends on 6)

The machine readable storage medium of claim 6 wherein the first peer platform corresponds to a particular peer device, and wherein the particular peer device makes the peer resource available within the peer-to-peer network.

### Claim 8 (depends on 6)

The machine readable storage medium of claim 6 wherein the second peer platform corresponds to one of a particular peer device and a gate server for a peer-to-peer network containing the first peer platform.

### Claim 9 (depends on 8)

The machine readable storage medium of claim 8 wherein the gate server is acting as a proxy on behalf of a requester to make the peer resource available to a requester that is not compatible with the first peer platform.

### Claim 10 (depends on 6)

The machine readable storage medium of claim 6 wherein the peer device comprises one of a master publisher of the peer resource and a caching publisher of the peer resource.

### Claim 11

An hardware apparatus comprising:
a first peer platform in a computer included in a peer-to-peer network, said first peer platform to receive a peer resource request, said first peer platform being associated with a peer resource, said resource request including an identifier uniquely identifying the peer resource and an identifier of a master publisher peer of the peer resource within the peer-to-peer network, where the master publisher peer has authority to publish the peer resource to the peer-to-peer network, said peer resource request being received from a second peer platform included in the peer-to-peer network through a networking environment, said second peer platform having located the peer resource through a resource locator service included in the peer-to-peer network, the resource locator service comprising a hierarchical arrangement of RNS servers that together track maintain mappings between resources and peers on which they are available, where a peer looking up a resource sends the resource's name to a home server to which the peer is assigned, and if the mappings on the home server do not include a peer location of the resource then the name of the resource is passed up the hierarchy of servers until a server has a mapping that identifies a peer that has the resource, the resource locator service using the mappings to identify peers deemed to currently have resources identified in requests received by the resource locator service, the resource locator service responding to a request with a list of identified peers; and
said first peer platform to provide the second peer platform access to the peer resource.

### Claim 12 (depends on 11)

The hardware apparatus according to claim 11, wherein the master publisher peer has authority to control and modify the content of the resource.
