US2006209819A1PendingUtilityA1

Method and apparatus for efficiently expanding a P2P network

47
Assignee: JENNINGS RAYMOND B IIIPriority: Mar 21, 2005Filed: Mar 21, 2005Published: Sep 21, 2006
Est. expiryMar 21, 2025(expired)· nominal 20-yr term from priority
H04L 67/59H04L 67/51H04L 67/568H04L 67/104H04L 67/107
47
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

One embodiment of the present method and apparatus for efficiently expanding a P2P network includes receiving a search request message from a requesting node and sending a response message to the requesting node on behalf of a node that has the requested data, where the response message originates at an intermediate node. The intermediate node may respond on behalf of the “responding” node, for example, in cases where the responding node is too far away from the requesting node to receive the search request message.

Claims

exact text as granted — not AI-modified
1 . A method for transferring data from a first node to a second node in a network, said method comprising the steps of: 
 receiving a search request message from said second node, said search request message requesting data; and    sending by a third node a response message to said second node on behalf of said first node, said response message indicating that said first node has the requested data.    
   
   
       2 . The method of  claim 1 , wherein said third node is an intermediate node located between said first node and second node.  
   
   
       3 . The method of  claim 1 , wherein said third node sends said response message on behalf of said first node if said third node determines that said search request message will not reach said first node.  
   
   
       4 . The method of  claim 3 , further comprising the step of: 
 examining a time to live field or a hop count field of said search request message to determine how far in said network said search request message will travel.    
   
   
       5 . The method of  claim 1 , wherein said sending step comprises: 
 locating information related to said requested data in a database associated with said third node, where said database includes at least one entry related to at least one previous data transfer executed on said network; and    sending said response message to said second node in accordance with said located information.    
   
   
       6 . The method of  claim 5 , wherein a time period for keeping said at least one entry in said database is dictated by at least one of: a fixed number of most recent data transfers, a fixed number of most popular responses, a fixed number of least popular data responses, and a length of time for which a transferring node has been active in said network.  
   
   
       7 . The method of  claim 5 , further comprising: 
 periodically querying at least one source of said requested data to confirm a validity of said at least one entry.    
   
   
       8 . The method of  claim 5 , wherein said at least one entry comprises information taken from at least one response message previously received by said third node in connection with said at least one previous data transfer.  
   
   
       9 . The method of  claim 8 , where said at least one entry comprises information taken from at least one response message previously sent by said first node in connection with said at least one previous data transfer.  
   
   
       10 . The method of  claim 8 , wherein said information comprises at least one of: a name of data transferred in said at least one previous data transfer, a description of content of data transferred in said at least one previous data transfer, a size of data transferred in said at least one previous data transfer, a type of data transferred in said at least one previous data transfer, a time of said at least one previous data transfer, a number of hops separating said third node from said first node, meta data related to said at least one response message, a source of data transferred in said at least one previous data transfer, and said at least one response message itself.  
   
   
       11 . The method of  claim 8 , wherein said information is automatically saved in said database for every response message received by said third node.  
   
   
       12 . The method of  claim 8 , wherein said information is saved based on at least one of: available database memory, available database storage, network bandwidth speed, network bandwidth utilization and a length of time for which a source of said at least one response message has been active on said network.  
   
   
       13 . The method of  claim 8 , wherein said at least one response message indicates a length of time for which data contained therein will be valid.  
   
   
       14 . The method of  claim 1 , wherein said method is executed at said second node.  
   
   
       15 . A computer readable medium containing an executable program for transferring data from a first node to a second node in a network, where the program performs the steps of: 
 receiving a search request message from said second node, said search request message requesting data; and    sending by a third node a response message to said second node on behalf of said first node, said response message indicating that said first node has the requested data.    
   
   
       16 . The computer readable medium of  claim 15 , wherein said third node is an intermediate node located between said first node and second node.  
   
   
       17 . The computer readable medium of  claim 15 , wherein said third node sends said response message on behalf of said first node if said third node determines that said search request message will not reach said first node.  
   
   
       18 . The computer readable medium of  claim 17 , further comprising the step of: 
 examining a time to live field or a hop count field of said search request message to determine how far in said network said search request message will travel.    
   
   
       19 . The computer readable medium of  claim 15 , wherein said sending step comprises: 
 locating information related to said requested data in a database associated with said third node, where said database includes at least one entry related to at least one previous data transfer executed on said network; and    sending said response message to said second node in accordance with said located information.    
   
   
       20 . The computer readable medium of  claim 19 , wherein a time period for keeping said at least one entry in said database is dictated by at least one of: a fixed number of most recent data transfers, a fixed number of most popular responses, a fixed number of least popular data responses, and a length of time for which a transferring node has been active in said network.  
   
   
       21 . The computer readable medium of  claim 19 , further comprising: 
 periodically querying at least one source of said requested data to confirm a validity of said at least one entry.    
   
   
       22 . The computer readable medium of  claim 19 , wherein said at least one entry comprises information taken from at least one response message previously received by said third node in connection with said at least one previous data transfer.  
   
   
       23 . The computer readable medium of  claim 22 , where said at least one entry comprises information taken from at least one response message previously sent by said first node in connection with said at least one previous data transfer.  
   
   
       24 . The computer readable medium of  claim 22 , wherein said information comprises at least one of: a name of data transferred in said at least one previous data transfer, a description of content of data transferred in said at least one previous data transfer, a size of data transferred in said at least one previous data transfer, a type of data transferred in said at least one previous data transfer, a time of said at least one previous data transfer, a number of hops separating said third node from said first node, meta data related to said at least one response message, a source of data transferred in said at least one previous data transfer, and said at least one response message itself.  
   
   
       25 . The computer readable medium of  claim 22 , wherein said information is automatically saved in said database for every response message received by said third node.  
   
   
       26 . The computer readable medium of  claim 22 , wherein said information is saved based on at least one of: available database memory, available database storage, network bandwidth speed, network bandwidth utilization and a length of time for which a source of said at least one response message has been active on said network.  
   
   
       27 . The computer readable medium of  claim 22 , wherein said at least one response message indicates a length of time for which data contained therein will be valid.  
   
   
       28 . The computer readable medium of  claim 15 , wherein said program is executed at said second node.  
   
   
       29 . Apparatus comprising: 
 means for receiving a search request message from said second node, said search request message requesting data; and    means for sending a response message to said second node on behalf of said first node, said response message indicating that said first node has the requested data and originating at a third node on the network.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.