US20150334180A1 - System and method for enhanced experience with a peer-to-peer network - Google Patents
System and method for enhanced experience with a peer-to-peer network Download PDFInfo
- Publication number
- US20150334180A1 US20150334180A1 US14/689,182 US201514689182A US2015334180A1 US 20150334180 A1 US20150334180 A1 US 20150334180A1 US 201514689182 A US201514689182 A US 201514689182A US 2015334180 A1 US2015334180 A1 US 2015334180A1
- Authority
- US
- United States
- Prior art keywords
- node
- peer
- network
- responses
- nodes
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000004044 response Effects 0.000 claims abstract description 51
- 238000001914 filtration Methods 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 claims description 13
- 235000008694 Humulus lupulus Nutrition 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 235000014510 cooky Nutrition 0.000 description 3
- 230000008569 process Effects 0.000 description 2
- 101000603420 Homo sapiens Nuclear pore complex-interacting protein family member A1 Proteins 0.000 description 1
- 102100038845 Nuclear pore complex-interacting protein family member A1 Human genes 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Images
Classifications
-
- 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
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1072—Discovery involving ranked list compilation of candidate peers
-
- 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
- H04L67/104—Peer-to-peer [P2P] networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1063—Discovery through centralising entities
-
- 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
- H04L67/141—Setup of application sessions
-
- H04L67/16—
-
- 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/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- 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
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1053—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers
- H04L67/1055—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers involving connection limits
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
- H04L67/5651—Reducing the amount or size of exchanged application data
Definitions
- the present invention provides a method for using an Enhancement System on a peer-to-peer network to enhance the experience of a user.
- peer-to-peer networks which are one of the subjects of the present invention comprise multiple nodes, each node typically consisting both of me server and client that can send and receive data or “Communication messages” to or from a node to which such is connected and other nodes on the network.
- Common peer-to-peer networks and software applications are Gnutella, FastTrack, Edonkey, NeoNet, Kazaa, Limewire, Morpheus, Bear Share, Bit Torrent, Shareaza, Emule, and Freenet This list is not inclusive of all peer-to-peer me applications but rather serves as a general list.
- each node is connected to other nodes over a communication medium such as the Internet either directly or through some type of proxy, For example, when a search request is issued such originating node sends a search request to all of the nodes to which it is connected. (see FIG. 1 ) These nodes search their list of available files and if a match is found they send a response back with the location,
- a peer-to-peer proxy network typically consists of node A which is connected to a node B and node B is connected to a node C. (see FIG.
- Node A is not connected to node C such that if node A issues a search request it will be forwarded to node B and Node B will search its available files and if a match is found it will send a response back to node A. Node B will then forward node A's request to node C and Node C will search its available files and if a match is found it will send a response back to node B. Node B will then forward this response to node A.
- FIG. 3 discloses a nonproxy loop network wherein each node is directly connected to another.
- Some peer-to-peer networks utilize a leaf node/main node proxy topology (See FIG. 4 ) where some nodes are classified as main nodes and the remaining nodes are classified as leaf nodes, Leaf nodes can only connect to main nodes. Only main nodes can connect to other main nodes.
- Leaf nodes When a leaf node issues a search request it sends the request to the main node that it is connected to. The main node then forwards the request to any other leaf nodes that are connected to it and also to any main nodes it is connected to. These main nodes forward the request to any leaf nodes that are connected to them.
- Common names for main nodes are super nodes, ultra peers, or hubs.
- some peer-to-peer networks can be quite large, often in the hundreds of thousands or minions of nodes.
- nodes restrict the “distance” of messages traveling the network. Messages such as searches and responses to searches from nodes contain transmission distance parameters such as hops and time to live to help limit the number of nodes that see and process these messages.
- Hops which is a value that normally starts at 0 and increments each time the communications is forwarded.
- TTL Time to Live
- Time to Live reaches 0, the communications is dropped from the network, Often nodes have a “Max time to live” setting and this value is often set to 5. If a node receives a communication message with a Time to Live which is higher than its configured max Time to Live, the packet is either dropped from the network or the communication message Time to Live is changed to a smaller value from another node. This effectively enforces a community time to live value and limits the amount of nodes that would receive communication message from a transmitting node. Some networks have other mechanisms for limiting the search capabilities of users. Referring to FIG. 5 , if the network were configured for 5 hops, Node A would issue a search. Node B would receive it and pass it to Node C. This repeats until Node F receives it. Nodes B-F would process the search and Node F would drop and not forward the search to Node G because it was retransmitted 5 times.
- Each node on a peer-to-peer network generally has 2-3 connections to the peer-to-peer network so that they can increase their odds of finding information. Because each connection is to a random node on the peer-to-peer network, each connection generally searches a different group of nodes. Because searches are “repeated” by nodes on the network, sometimes connections have overlapping coverage in that a search sent out via one connection searches nodes available on another connection. This is known as an inefficient connection configuration.
- the network enforces restrictions when a user searches and because of the nature of the architecture, the user can only search a limited number of nodes on the network. For instance, if the network is composed of twelve million users, a user searching for information may only be able to search 3,000 other users. If the user is searching for a file that is not popular it may not be within the searching radius of the user and the file will not be found, even if it is located on another node elsewhere on the network. It would therefore be advantageous if a user could search more nodes on a network then they normally could with a standard peer-to-peer application or system, thus raising the chance that they would find the information they are looking for.
- the present invention provides a system for allowing a user to search more nodes on a peer-to-peer network then they normally would have access to,
- the preferred system comprises the steps of
- the present invention provides a system and method for enhanced experience with a peer-to-peer network.
- the present invention is directed to a system and method for implementing a peer to peer (P2P) network that includes a plurality of nodes, wherein each of a majority of the nodes has less than a threshold number of P2P connections to other nodes in the network.
- a P2P network connection is established between a first node from the majority and an enhanced connection node in the network, wherein the enhanced connection node has more than the threshold number of P2P connections to other nodes in the network.
- a search request is issued from the first node by transmitting the search request from the first node to the enhanced connection node, and then forwarding the search request from the enhanced connection node to other nodes in the network.
- Responses to the search request are collected at the enhanced connection node, and thereafter at least one of the following is performed by the enhanced connection node: (i) filtering the responses, and then forwarding results of the filtering to the first node; (ii) ranking the responses, and then forwarding ranked responses to the first node; and (iii) adding additional content (e.g., an advertisement selected in response to one or more search terms included in the search request) to the responses, and forwarding said additional content and at least some of the responses to the first node.
- additional content e.g., an advertisement selected in response to one or more search terms included in the search request
- the enhanced connection node accesses user profile information associated with the first node, and at I east one of the following is performed by the enhanced connection node: (i) filtering the responses in accordance with the profile information, and then forwarding results of the filtering to the first node; (ii) ranking the responses in accordance with the profile information, and then forwarding ranked responses to the first node; and (iii) adding additional content to the responses, wherein the additional content is selected at least in part using the profile information, and forwarding the additional content and at least some of the responses to the first node.
- the enhanced connection node includes dedicated content that is unavailable on all other nodes in the network, or pointers to dedicated content that is unavailable on all other nodes in the network.
- the first node uses middleware on the first node to establish the P2P network connection between the first node and the enhanced connection node.
- the middleware may monitor for transmission of content that should not be shared on the P2P network and perform at least one of the following: (i) block transmission of the content that should not be shared; and (ii) notify another system that there has been transmission of content that should not be shared.
- the enhanced connection node sends a cached list of search responses back to the first node.
- FIG. 1 is a simplified schematic of a two node peer to peer network
- FIG. 2 is a simplified schematic of a peer to peer proxy network
- FIG. 3 is a simplified schematic view of a peer to peer, nonproxy, loop network.
- FIG. 4 is a simplified schematic view of a leaf node/main node network.
- FIG. 5 is a simplified schematic of a peer-to-peer network where nodes are connected to on another in a daisy chain fashion.
- FIG. 6 is a simplified schematic view of a peer-to-peer user connected to the Enhancement System.
- FIG. 7 is a flow chart of a search utilizing the Enhancement System.
- FIG. 8 is a flow chart of a search utilizing the Enhancement System in which the Enhancement System filters results
- FIG. 9 is a flow chart of a search utilizing the Enhancement System in which the Enhancement System adds an advertisement to any search results.
- FIG. 10 is a simplified schematic view of a peer-to-peer user connected to the Enhancement System via the Enhancement System Middleware.
- the present invention provides a system for allowing a user to search more nodes on a peer-to-peer network than one normally would have access to or by returning information that otherwise would not be available for searching on the peer-to-peer network, It also provides a system and method for filtering any search results that may be returned to the users. It also provides a system and method for adding its own results, such as advertisements, to any search results that may be returned to the user. It also provides a system and method for ranking any results that may be returned to a user. It also provides a system and method for storing attributes of the searcher, the searches that they issue, and the responses that they receive.
- the invention is comprised of an Enhancement System that is connected to a peer-to-peer network and has more nodes available to search than what a normal peer-to-peer user would have access to and/or it has access to dedicated information that would not be generally available for a peer-to-peer user to search for on the peer-to-peer network
- a peer-to-peer user connects to the Enhancement System and sends his peer-to-peer messages (such as searches) to this system.
- the Enhancement System relays these messages to the peer-to-peer nodes to which it is connected to, which is more than what the peer-to-peer user would normally have been able to access.
- the Enhancement System receives results back then forwards these results to the peer-to-peer user, thus increasing the amount of results and/or the breadth of their search.
- the Enhancement System has access to more nodes or dedicated information on the peer-to-peer network by using different methods, This may include having more connections into the peer-to-peer network than a normal user might or by using highly efficient connections so that each connection or combination of connections accesses more nodes than would a normal connection or combination of normal connections.
- the Enhancement System could be connected to more hub nodes than the user normally would be or could he.
- the Enhancement System could contain dedicated information and no connections to the peer-to-peer network. In this case the Enhancement System would have access to dedicated information not available for generalized searching on the peer-to-peer network.
- the Enhancement System could contain dedicated information and also access to more nodes than what a normal user would commonly have access to.
- the Enhancement System may be comprised of multiple systems that share information and workload or ones that operate independently.
- the Enhancement System may, have a system that primarily handles client connections, while other portions of the Enhancement System handle connections to the peer-to-peer network.
- the Enhancement System could contain filtering systems or systems that contain dedicated content.
- the Enhancement System may cache search results so that it does not have to issue searches onto the peer-to-peer network that have occurred within a certain time limit.
- the system works by connecting into the peer-to-peer network in a way that allows it to have access to more nodes than a normal peer-to-peer user would.
- a user wishing for enhanced access connects to the Enhancement System using his peer-to-peer application and by utilizing standard peer-to-peer protocols. This allows the user to use any peer-to-peer application that he chooses.
- the user's peer-to-peer application may also connect to a piece of middleware software that is located on his computer system or another system. This middleware software would then connect to the Enhancement System.
- the middleware would communicate with the peer-to-peer software application utilizing standard peer-to-peer protocols so that the user can use any peer-to-peer application that he would choose.
- the middleware application may connect to the Enhancement System and communicate using standard peer-to-peer protocols or it could communicate with a proprietary protocol.
- the middleware application may be configured to program or change the configuration of the peer-to-peer client application.
- the middleware software may configure the peer-to-peer client application so that the peer-to-peer client application connects to the middleware without any user intervention.
- the peer-to-peer client application could also be programmed with “support” for the middleware application and as such, if it detects that the middleware is installed, it will pass control over to the middleware for communications.
- Enhancement System Middleware is located on the peer-to-peer user's system and can monitor data traffic it could also be configured to monitor the transmission of tiles.
- the Enhancement System Middleware could be configured to monitor for the transmission of files that should not be shared, such as personal information and block this transmission if it detects it. It could also be configured to notify another system if it detects that a file has been sent or received.
- the Enhancement system will forward searches it receives from the peer-to-peer network to those peer-to-peer users that are utilizing it.
- the Enhancement System could be configured to filter and/or remove searches so that the user connected to the Enhancement System would be protected from malicious searches.
- the Enhancement System could be configured to not forward any searches at all, or to only forward selected searches.
- the Enhancement System could be configured to always remove certain terms. For instance, if an organization wanted to limit searches for their information the Enhancement System could be configured to not pass these searches in either direction.
- any searches or other messages that the user sends will be sent to the Enhancement System.
- the peer-to-peer user would also want to search the peer-to-peer network by utilizing the Enhancement System and standard connections to the peer-to-peer network at the same time.
- the user's peer-to-peer application would be configured to connect to the Enhancement System or Enhancement System Middleware and also to other standard nodes on the peer-to-peer network.
- Enhancement System detects a search from the peer-to-peer user it will relay the search to the nodes on the peer-to-peer network that it is connected to.
- the Enhancement System may choose not to forward the search, if for instance if it would result in matches of copyrighted information or some other topic. In this instance, the Enhancement System may choose to respond back to the user with information alerting the user that the search may result in copyrighted or protected information.
- the Enhancement System could also record the search into a list or database. It could also record the IP address of the peer-to-peer user to a list or database. It could also record to a list or database any attributes it has access to concerning the communication.
- the cookie could be used to relay information to a website for target marketing or to enhance the user's experience on a website. It could be used to offer specials or services. It could be used to tailor web usage to the user's searching habits.
- the Enhancement System could choose to limit the number of nodes it relays the search to. It could also just drop the search. This would allow for throttling of responses and aim to not overload the Enhancement System or other nodes on the network.
- the Enhancement System could also choose to limit the number of searches from anyone user, or any group of users.
- the Enhancement System could change or modify the user's search so that it results in more, less, or more accurate results. It could also create multiple searches, relay these onto the peer-to-peer network and relay the combined list hack to the peer-to-peer user as one result set. For instance, a user searches for Madonna and the Enhancement System relays, “Madonna” and “Madonna 2006 .”
- the Enhancement System could send a cached list of responses back to the second client. This would reduce the amount of searches that are relayed to other nodes of the network
- the Enhancement System could compare the search term to a list of criteria and respond back with a result set that contained a message.
- the message could be in the form of a file title, a file containing a message, or a pointer to file that contains a message.
- the message could be a warning that the user is searching for copyrighted information, that copyrighted information may result, or it could be an advertisement. It could also be a me with information different than what the user had asked for. For example a user could issue a search for “Madonna” and the Enhancement System could respond back with an advertisement on how to purchase tickets for her next concert, or it may respond back with a video of Madonna that she has released for usage on the peer-to-peer network.
- the Enhancement System could change the ranking or order of the results, or modify the results to change the ranking or order.
- the Enhancement System could filter any results, for instance if results contain copyrighted works, It could do this by comparing the file titles, the contents, hashes, file size, or any combination thereof.
- the Enhancement System could send a message.
- the message could he in the form of a file title, or a file containing a message.
- the message may be a warning that the user is searching for copyrighted information or it could be an advertisement.
- the Enhancement System could send a pointer to a different file. For instance the Enhancement System could send a pointer to a lower quality version of the file or the file with an advertisement inserted into it.
- the Enhancement System could also record the IP address of the searcher and the results that were relayed and/or received into a list or database.
- the Enhancement System could be configured to not respond at all.
- the Enhancement System could download files from the peer-to-peer network and cache these. If a user issues a search for something the Enhancement System is caching, the Enhancement System would provide pointers to these files.
- the Enhancement System could also be utilized to perform filtering of the results so that when a user issues a search, any results would be scrubbed of erroneous files, filenames, or unavailable nodes on the network. This would increase the accuracy of the results that are sent back to the user.
- the Enhancement System could be configured to drop any results from a node on the network. It might do this because the node was rated low or has a high instance of sending incorrect data.
- the Enhancement System could also create its own list of results and send these to the peer-to-peer user either as a replacement of the results or in addition to the results. It could be configured to not relay searches for certain information to the peer-to-peer network but rather create its own list of results. These results could point to files that are on dedicated servers for special purposes. For instance, a peer-to-peer user might search for the popular show “CSI Las Vegas” currently being aired on CBS. CBS could place CSI episodes onto a dedicated peer-to-peer server and when the user searches for “CSI” the Enhancement System would not relay the search to the peer-to-peer network but rather send results back consisting of all of the available CSI shows on the dedicated CBS server.
- the Enhancement System might not be used to expand the breadth of the peer-to-peer user's search but rather provide information that would not otherwise be available for the user to search as it is not a part of the peer-to-peer network, but merely communicates with the peer-to-peer protocol. For instance, a company could install a peer-to-peer client and add dedicated information but not allow their peer-to-peer client to connect to the peer-to-peer network.
- the Enhancement System would be configured so that if a user connects to it and searches for the company's information, the Enhancement System would respond back with pointers to files on the dedicated system. The peer-to-peer user could then download the files from the company's dedicated server.
- the Enhancement System could utilize a database of IP addresses connected to it to provide information on their availability to other peer-to-peer users. It could also send peer-to-peer users that are connect to it a message and use the response times to determine a ranking. It could then use this information to modify search results back to other peer-to-peer users utilizing the Enhanced System.
- the user's peer-to-peer client application could be configured to inform the Enhancement System Middleware program with a list of files that it is sharing.
- the Enhancement System Middleware could be configured to upload this information the Enhancement System of available files so that the Enhancement System would not have to issue searches onto the peer-to-peer network.
- the Enhancement System Middleware could be configured to read the configuration of the user's peer-to-peer client application and build its own list of files available for sharing.
- the Enhancement System Middleware could be configured to upload this information the Enhancement System of available files so that the Enhancement System would not have to issue searches onto the peer-to-peer network.
- An Enhancement System could comprise a hardware system such as a computer, thin appliance, ASIC based device or other similar device, which can be programmed with specific logic or programming code (i.e., software).
- the device preferably has the capability of being connected with a physical network either directly or through the use of a gateway.
- the programming logic provides the device with the capability to transmit and receive on both physical networks as well as the peer to peer networks which typically ride on top of a physical network.
- Programming logic is a software program but may also be hardcoded non-changeable procedural information such as typically found on an ASIC based device.
- An Enhancement System Middleware could comprise a hardware system such as a computer, thin appliance, ASIC based device or other similar device, which can be programmed with specific logic or programming code (i.e. software).
- the device preferably has the capability of being connected with a physical network either directly or through the use of a gateway.
- the programming logic provides the device with the capability to transmit and receive on both physical networks as well as the peer to peer networks which typically ride on top of a physical network.
- Programming logic is a software program but may also be hardcoded non-changeable procedural information such as typically found on an ASIC based device.
- This example describes a standard peer-to-peer user issuing a search to an Enhancement System where the Enhancement System has eight connections to the peer-to-peer network.
- FIG. 6 and the flow chart in FIG. 7 describe a standard peer-to-peer user issuing a search to an Enhancement System where the Enhancement System has eight connections to the peer-to-peer network.
- Peer-to-Peer User FIG. 6-100 connects one time to Enhancement System FIG. 6-102 through connection FIG. 6-101 using normal peer-to-peer protocols.
- Enhancement System FIG. 6-102 connects 8 times into Peer-to-Peer Network 104 through its Multiple Connections FIG. 6-103 .
- Peer-to-Peer User FIG. 6-100 issues a search via Standard P2P Connection FIG. 6-101 to Enhancement System FIG. 6-102 .
- Enhancement System FIG. 6-102 relays the search to the Peer-to-Peer Network FIG. 6-104 via its Multiple Connections FIG. 6-103 .
- Search results are generated by nodes on the Peer-to-Peer Network FIG. 6-104 . Results are received at Enhancement System FIG. 6-102 via Multiple Connections FIG.
- Enhancement system FIG. 6-102 relays result set via Standard Connection FIG. 6-101 to Peer-to-Peer User FIG. 6-100 .
- Peer-to-Peer User FIG. 6-100 received results from eight connections (Multiple Connections FIG. 6-103 ) while it only had one connection (Standard P2P Connection FIG. 6-101 ), thus improving the search result set
- This example describes a standard peer-to-peer user issuing a search to an Enhancement System with eight connections to the peer-to-peer network and the Enhancement System filtering results.
- FIG. 6 and the flow chart in FIG. 8 describe a standard peer-to-peer user issuing a search to an Enhancement System with eight connections to the peer-to-peer network and the Enhancement System filtering results.
- Peer-to-Peer User FIG. 6-100 connects one time to Enhancement System FIG. 6-102 through connection FIG. 6-101 using normal peer-to-peer protocols.
- Enhancement System FIG. 6-102 connects 8 times into Peer-to-Peer Network 104 through its Multiple Connections FIG. 6-103 .
- Peer-to-Peer User FIG. 6-100 issues a search via Standard P2P Connection FIG. 6-101 to Enhancement System FIG. 6-102 .
- Enhancement System FIG. 6-102 relays the search to the Peer-to-Peer Network FIG. 6-104 via its Multiple Connections FIG. 6-103 .
- Search results are generated by nodes on the Peer-to-Peer Network FIG. 6-104 . Results are received at Enhancement System FIG. 6-102 via Multiple Connections FIG.
- Enhancement System FIG. 6-102 filters out any results containing “Madonna”. Enhancement System FIG. 6-102 relays resulting result set via Standard Connection FIG. 6-101 to Peer-to-Peer User FIG. 6-100 . Peer-to-Peer User FIG. 6-100 received results from eight connections (Multiple Connections FIG. 6-103 ) while it only had one connection (Standard P2P Connection FIG. 6-101 ), thus improving the search result set.
- This example describes a standard Peer-to-Peer user issuing a search to an Enhancement System with eight connections: to the peer-to-peer network and the Enhancement System adding an advertisement for “Madonna.”
- FIG. 6 and the flow chart in FIG. 9 describe a standard Peer-to-Peer user issuing a search to an Enhancement System with eight connections: to the peer-to-peer network and the Enhancement System adding an advertisement for “Madonna.”
- Peer-to-Peer User FIG. 6-100 connects one time to Enhancement System FIG. 6-102 through connection FIG. 6-101 using normal peer-to-peer protocols.
- Enhancement System FIG. 6-102 connects 8 times into Peer-to-Peer Network 104 through its Multiple Connections FIG. 6-103 .
- Peer-to-Peer User FIG. 6-100 issues a search via Standard P2P Connection FIG. 6-101 to Enhancement System FIG. 6-102 .
- Enhancement System FIG. 6-102 relays the search to the Peer-to-Peer Network FIG. 6-104 via its Multiple Connections
- FIG. 6-103 Search results are generated by nodes on the Peer-to-Peer Network FIG. 6-104 . Results are received at Enhancement System FIG. 6-102 via Multiple Connections FIG. 6-103 . Enhancement System FIG. 6-102 adds a result to the result set that includes an advertisement for Madonna's newest song. Enhancement System FIG. 6-102 relays new combined result set via Standard Connection FIG. 6-101 to Peer-to-Peer User FIG. 6-100 . Peer-to-Peer User FIG. 6-100 received results from eight connections (Multiple Connections FIG. 6-103 ) while it only had one connection (Standard P2P Connection FIG. 6-101 ), thus improving the search result set.
Abstract
A system and method for implementing a peer to peer (P2P) network that includes a plurality of nodes, wherein each of a majority of the nodes has less than a threshold number of P2P connections to other nodes in the network. A P2P network connection is established between a first node from the majority and an enhanced connection node in the network, wherein the enhanced connection node has more than the threshold number of P2P connections to other nodes in the network. A search request is issued from the first node by transmitting the search request from the first node to the enhanced connection node, and then forwarding the search request from the enhanced connection node to other nodes in the network. Responses to the search request are collected at the enhanced connection node, which filters, ranks or adds additional content to the responses prior to forwarding the responses back to the first node.
Description
- The present application is a continuation of commonly assigned copending U.S. patent application Ser. No. 11/935,747, which was filed on Nov. 6, 2007, by Samuel P. Hopkins et al. entitled “System And Method For Enhanced Experience With A Peer-To-Peer Network” and which claims priority to U.S. Provisional Application No. 60/857,334 entitled “System and Method for Enhanced Experience with a Peer-to-Peer Network,” filed Nov. 7, 2006, incorporated herein by reference.
- 1. Field of the Invention
- The present invention provides a method for using an Enhancement System on a peer-to-peer network to enhance the experience of a user.
- 2. Background Information
- As used herein, peer-to-peer networks which are one of the subjects of the present invention comprise multiple nodes, each node typically consisting both of me server and client that can send and receive data or “Communication messages” to or from a node to which such is connected and other nodes on the network. Common peer-to-peer networks and software applications are Gnutella, FastTrack, Edonkey, NeoNet, Kazaa, Limewire, Morpheus, Bear Share, Bit Torrent, Shareaza, Emule, and Freenet This list is not inclusive of all peer-to-peer me applications but rather serves as a general list.
- In some peer-to-peer networks, each node is connected to other nodes over a communication medium such as the Internet either directly or through some type of proxy, For example, when a search request is issued such originating node sends a search request to all of the nodes to which it is connected. (see
FIG. 1 ) These nodes search their list of available files and if a match is found they send a response back with the location, However, a peer-to-peer proxy network typically consists of node A which is connected to a node B and node B is connected to a node C. (seeFIG. 2 ) Node A is not connected to node C such that if node A issues a search request it will be forwarded to node B and Node B will search its available files and if a match is found it will send a response back to node A. Node B will then forward node A's request to node C and Node C will search its available files and if a match is found it will send a response back to node B. Node B will then forward this response to node A.FIG. 3 discloses a nonproxy loop network wherein each node is directly connected to another. - Some peer-to-peer networks utilize a leaf node/main node proxy topology (See
FIG. 4 ) where some nodes are classified as main nodes and the remaining nodes are classified as leaf nodes, Leaf nodes can only connect to main nodes. Only main nodes can connect to other main nodes. When a leaf node issues a search request it sends the request to the main node that it is connected to. The main node then forwards the request to any other leaf nodes that are connected to it and also to any main nodes it is connected to. These main nodes forward the request to any leaf nodes that are connected to them. Common names for main nodes are super nodes, ultra peers, or hubs. - Referring to
FIG. 5 , some peer-to-peer networks can be quite large, often in the hundreds of thousands or minions of nodes. To reduce the bandwidth and other resources required to operate such networks, nodes restrict the “distance” of messages traveling the network. Messages such as searches and responses to searches from nodes contain transmission distance parameters such as hops and time to live to help limit the number of nodes that see and process these messages. One is Hops, which is a value that normally starts at 0 and increments each time the communications is forwarded. Another is Time to Live (TTL) which is a value that normally starts at 5 and is decremented each time the communications is forwarded. When the Hops value reaches a preset limit, often 5, or - Time to Live reaches 0, the communications is dropped from the network, Often nodes have a “Max time to live” setting and this value is often set to 5. If a node receives a communication message with a Time to Live which is higher than its configured max Time to Live, the packet is either dropped from the network or the communication message Time to Live is changed to a smaller value from another node. This effectively enforces a community time to live value and limits the amount of nodes that would receive communication message from a transmitting node. Some networks have other mechanisms for limiting the search capabilities of users. Referring to
FIG. 5 , if the network were configured for 5 hops, Node A would issue a search. Node B would receive it and pass it to Node C. This repeats until Node F receives it. Nodes B-F would process the search and Node F would drop and not forward the search to Node G because it was retransmitted 5 times. - Each node on a peer-to-peer network generally has 2-3 connections to the peer-to-peer network so that they can increase their odds of finding information. Because each connection is to a random node on the peer-to-peer network, each connection generally searches a different group of nodes. Because searches are “repeated” by nodes on the network, sometimes connections have overlapping coverage in that a search sent out via one connection searches nodes available on another connection. This is known as an inefficient connection configuration.
- Because the network enforces restrictions when a user searches and because of the nature of the architecture, the user can only search a limited number of nodes on the network. For instance, if the network is composed of twelve million users, a user searching for information may only be able to search 3,000 other users. If the user is searching for a file that is not popular it may not be within the searching radius of the user and the file will not be found, even if it is located on another node elsewhere on the network. It would therefore be advantageous if a user could search more nodes on a network then they normally could with a standard peer-to-peer application or system, thus raising the chance that they would find the information they are looking for.
- Generally, the present invention provides a system for allowing a user to search more nodes on a peer-to-peer network then they normally would have access to, The preferred system comprises the steps of
-
- a. User connects to an Enhancement System that has access to more peer-to-peer nodes than the user would; and
- b. Enhancement System accepting messages from the peer-to-peer user; and
- c. Enhancement System acting as a intermediate between the user and the peer-to-peer network in a way as to increase the capabilities or experience of the peer-to-peer user.
- Thus, the present invention provides a system and method for enhanced experience with a peer-to-peer network.
- More specifically, the present invention is directed to a system and method for implementing a peer to peer (P2P) network that includes a plurality of nodes, wherein each of a majority of the nodes has less than a threshold number of P2P connections to other nodes in the network. A P2P network connection is established between a first node from the majority and an enhanced connection node in the network, wherein the enhanced connection node has more than the threshold number of P2P connections to other nodes in the network. A search request is issued from the first node by transmitting the search request from the first node to the enhanced connection node, and then forwarding the search request from the enhanced connection node to other nodes in the network. Responses to the search request are collected at the enhanced connection node, and thereafter at least one of the following is performed by the enhanced connection node: (i) filtering the responses, and then forwarding results of the filtering to the first node; (ii) ranking the responses, and then forwarding ranked responses to the first node; and (iii) adding additional content (e.g., an advertisement selected in response to one or more search terms included in the search request) to the responses, and forwarding said additional content and at least some of the responses to the first node.
- In some embodiments, the enhanced connection node accesses user profile information associated with the first node, and at I east one of the following is performed by the enhanced connection node: (i) filtering the responses in accordance with the profile information, and then forwarding results of the filtering to the first node; (ii) ranking the responses in accordance with the profile information, and then forwarding ranked responses to the first node; and (iii) adding additional content to the responses, wherein the additional content is selected at least in part using the profile information, and forwarding the additional content and at least some of the responses to the first node.
- In some embodiments, the enhanced connection node includes dedicated content that is unavailable on all other nodes in the network, or pointers to dedicated content that is unavailable on all other nodes in the network.
- In some embodiments, the first node uses middleware on the first node to establish the P2P network connection between the first node and the enhanced connection node. In such embodiments, the middleware may monitor for transmission of content that should not be shared on the P2P network and perform at least one of the following: (i) block transmission of the content that should not be shared; and (ii) notify another system that there has been transmission of content that should not be shared.
- In some embodiments, the enhanced connection node sends a cached list of search responses back to the first node.
- Other advantages of the present invention will become apparent from a perusal of the following detailed description of presently preferred embodiments of the invention.
- The invention description below refers to the accompanying drawings, of which:
-
FIG. 1 is a simplified schematic of a two node peer to peer network; -
FIG. 2 is a simplified schematic of a peer to peer proxy network; -
FIG. 3 is a simplified schematic view of a peer to peer, nonproxy, loop network. -
FIG. 4 is a simplified schematic view of a leaf node/main node network. -
FIG. 5 is a simplified schematic of a peer-to-peer network where nodes are connected to on another in a daisy chain fashion. -
FIG. 6 is a simplified schematic view of a peer-to-peer user connected to the Enhancement System. -
FIG. 7 is a flow chart of a search utilizing the Enhancement System. -
FIG. 8 is a flow chart of a search utilizing the Enhancement System in which the Enhancement System filters results -
FIG. 9 is a flow chart of a search utilizing the Enhancement System in which the Enhancement System adds an advertisement to any search results. -
FIG. 10 is a simplified schematic view of a peer-to-peer user connected to the Enhancement System via the Enhancement System Middleware. - The present invention provides a system for allowing a user to search more nodes on a peer-to-peer network than one normally would have access to or by returning information that otherwise would not be available for searching on the peer-to-peer network, It also provides a system and method for filtering any search results that may be returned to the users. It also provides a system and method for adding its own results, such as advertisements, to any search results that may be returned to the user. It also provides a system and method for ranking any results that may be returned to a user. It also provides a system and method for storing attributes of the searcher, the searches that they issue, and the responses that they receive. It also provides a system and method for storing a \VVV\V browser cookie in the browser of the user based on their searches or any results that may be returned to them. It also provides a system and method to reduce traffic on the peer-to-peer network, and/or increase the speed of search by caching search results. Other advantages of the present invention will become apparent from a perusal of the following detailed description of presently preferred embodiments of the invention.
- Generally the invention is comprised of an Enhancement System that is connected to a peer-to-peer network and has more nodes available to search than what a normal peer-to-peer user would have access to and/or it has access to dedicated information that would not be generally available for a peer-to-peer user to search for on the peer-to-peer network A peer-to-peer user connects to the Enhancement System and sends his peer-to-peer messages (such as searches) to this system. The Enhancement System relays these messages to the peer-to-peer nodes to which it is connected to, which is more than what the peer-to-peer user would normally have been able to access. The Enhancement System receives results back then forwards these results to the peer-to-peer user, thus increasing the amount of results and/or the breadth of their search.
- The Enhancement System has access to more nodes or dedicated information on the peer-to-peer network by using different methods, This may include having more connections into the peer-to-peer network than a normal user might or by using highly efficient connections so that each connection or combination of connections accesses more nodes than would a normal connection or combination of normal connections. The Enhancement System could be connected to more hub nodes than the user normally would be or could he. The Enhancement System could contain dedicated information and no connections to the peer-to-peer network. In this case the Enhancement System would have access to dedicated information not available for generalized searching on the peer-to-peer network. The Enhancement System could contain dedicated information and also access to more nodes than what a normal user would commonly have access to.
- The Enhancement System may be comprised of multiple systems that share information and workload or ones that operate independently. The Enhancement System may, have a system that primarily handles client connections, while other portions of the Enhancement System handle connections to the peer-to-peer network. The Enhancement System could contain filtering systems or systems that contain dedicated content. The Enhancement System may cache search results so that it does not have to issue searches onto the peer-to-peer network that have occurred within a certain time limit.
- Generally the system works by connecting into the peer-to-peer network in a way that allows it to have access to more nodes than a normal peer-to-peer user would. A user wishing for enhanced access connects to the Enhancement System using his peer-to-peer application and by utilizing standard peer-to-peer protocols. This allows the user to use any peer-to-peer application that he chooses. The user's peer-to-peer application may also connect to a piece of middleware software that is located on his computer system or another system. This middleware software would then connect to the Enhancement System. The middleware would communicate with the peer-to-peer software application utilizing standard peer-to-peer protocols so that the user can use any peer-to-peer application that he would choose. The middleware application may connect to the Enhancement System and communicate using standard peer-to-peer protocols or it could communicate with a proprietary protocol. The middleware application may be configured to program or change the configuration of the peer-to-peer client application. For instance, the middleware software may configure the peer-to-peer client application so that the peer-to-peer client application connects to the middleware without any user intervention. The peer-to-peer client application could also be programmed with “support” for the middleware application and as such, if it detects that the middleware is installed, it will pass control over to the middleware for communications.
- If the Enhancement System Middleware is located on the peer-to-peer user's system and can monitor data traffic it could also be configured to monitor the transmission of tiles. The Enhancement System Middleware could be configured to monitor for the transmission of files that should not be shared, such as personal information and block this transmission if it detects it. It could also be configured to notify another system if it detects that a file has been sent or received.
- The Enhancement system will forward searches it receives from the peer-to-peer network to those peer-to-peer users that are utilizing it. The Enhancement System could be configured to filter and/or remove searches so that the user connected to the Enhancement System would be protected from malicious searches. The Enhancement System could be configured to not forward any searches at all, or to only forward selected searches. The Enhancement System could be configured to always remove certain terms. For instance, if an organization wanted to limit searches for their information the Enhancement System could be configured to not pass these searches in either direction.
- Once the peer-to-peer user is utilizing the Enhancement System, either directly or through middleware, any searches or other messages that the user sends will be sent to the Enhancement System. There may be occasions when the peer-to-peer user would also want to search the peer-to-peer network by utilizing the Enhancement System and standard connections to the peer-to-peer network at the same time. In this case the user's peer-to-peer application would be configured to connect to the Enhancement System or Enhancement System Middleware and also to other standard nodes on the peer-to-peer network.
- If the Enhancement System detects a search from the peer-to-peer user it will relay the search to the nodes on the peer-to-peer network that it is connected to. The Enhancement System may choose not to forward the search, if for instance if it would result in matches of copyrighted information or some other topic. In this instance, the Enhancement System may choose to respond back to the user with information alerting the user that the search may result in copyrighted or protected information. The Enhancement System could also record the search into a list or database. It could also record the IP address of the peer-to-peer user to a list or database. It could also record to a list or database any attributes it has access to concerning the communication. It could also analyze the search by comparing it to some criteria and setting a “Browser Cookie” in the peer-to-peer user's web browser. The cookie could be used to relay information to a website for target marketing or to enhance the user's experience on a website. It could be used to offer specials or services. It could be used to tailor web usage to the user's searching habits.
- If the search that the peer-to-peer user issues would result in an excessive amount of responses (such in the case of a popular artist) the Enhancement System could choose to limit the number of nodes it relays the search to. It could also just drop the search. This would allow for throttling of responses and aim to not overload the Enhancement System or other nodes on the network. The Enhancement System could also choose to limit the number of searches from anyone user, or any group of users.
- The Enhancement System could change or modify the user's search so that it results in more, less, or more accurate results. It could also create multiple searches, relay these onto the peer-to-peer network and relay the combined list hack to the peer-to-peer user as one result set. For instance, a user searches for Madonna and the Enhancement System relays, “Madonna” and “Madonna 2006.”
- If two or more users are using the Enhancement System and they search for the same term, or the Enhancement System realizes that the terms would result in the same matches, and it's within certain criteria such as time, the Enhancement System could send a cached list of responses back to the second client. This would reduce the amount of searches that are relayed to other nodes of the network
- The Enhancement System could compare the search term to a list of criteria and respond back with a result set that contained a message. The message could be in the form of a file title, a file containing a message, or a pointer to file that contains a message. The message could be a warning that the user is searching for copyrighted information, that copyrighted information may result, or it could be an advertisement. It could also be a me with information different than what the user had asked for. For example a user could issue a search for “Madonna” and the Enhancement System could respond back with an advertisement on how to purchase tickets for her next concert, or it may respond back with a video of Madonna that she has released for usage on the peer-to-peer network.
- Once the Enhancement System issues the search onto the network and receives responses it will relay these responses back to the peer-to-peer user that issued the search. Before sending the results to the peer-to-peer user, the Enhancement System could change the ranking or order of the results, or modify the results to change the ranking or order. The Enhancement System could filter any results, for instance if results contain copyrighted works, It could do this by comparing the file titles, the contents, hashes, file size, or any combination thereof. The Enhancement System could send a message. The message could he in the form of a file title, or a file containing a message. The message may be a warning that the user is searching for copyrighted information or it could be an advertisement. It could also be a file with information different than what the user had asked for. The Enhancement System could send a pointer to a different file. For instance the Enhancement System could send a pointer to a lower quality version of the file or the file with an advertisement inserted into it. The Enhancement System could also record the IP address of the searcher and the results that were relayed and/or received into a list or database. The Enhancement System could be configured to not respond at all.
- The Enhancement System could download files from the peer-to-peer network and cache these. If a user issues a search for something the Enhancement System is caching, the Enhancement System would provide pointers to these files.
- The Enhancement System could also be utilized to perform filtering of the results so that when a user issues a search, any results would be scrubbed of erroneous files, filenames, or unavailable nodes on the network. This would increase the accuracy of the results that are sent back to the user. The Enhancement System could be configured to drop any results from a node on the network. It might do this because the node was rated low or has a high instance of sending incorrect data.
- The Enhancement System could also create its own list of results and send these to the peer-to-peer user either as a replacement of the results or in addition to the results. It could be configured to not relay searches for certain information to the peer-to-peer network but rather create its own list of results. These results could point to files that are on dedicated servers for special purposes. For instance, a peer-to-peer user might search for the popular show “CSI Las Vegas” currently being aired on CBS. CBS could place CSI episodes onto a dedicated peer-to-peer server and when the user searches for “CSI” the Enhancement System would not relay the search to the peer-to-peer network but rather send results back consisting of all of the available CSI shows on the dedicated CBS server.
- The Enhancement System might not be used to expand the breadth of the peer-to-peer user's search but rather provide information that would not otherwise be available for the user to search as it is not a part of the peer-to-peer network, but merely communicates with the peer-to-peer protocol. For instance, a company could install a peer-to-peer client and add dedicated information but not allow their peer-to-peer client to connect to the peer-to-peer network. The Enhancement System would be configured so that if a user connects to it and searches for the company's information, the Enhancement System would respond back with pointers to files on the dedicated system. The peer-to-peer user could then download the files from the company's dedicated server.
- The Enhancement System could utilize a database of IP addresses connected to it to provide information on their availability to other peer-to-peer users. It could also send peer-to-peer users that are connect to it a message and use the response times to determine a ranking. It could then use this information to modify search results back to other peer-to-peer users utilizing the Enhanced System.
- The user's peer-to-peer client application could be configured to inform the Enhancement System Middleware program with a list of files that it is sharing. The Enhancement System Middleware could be configured to upload this information the Enhancement System of available files so that the Enhancement System would not have to issue searches onto the peer-to-peer network.
- The Enhancement System Middleware could be configured to read the configuration of the user's peer-to-peer client application and build its own list of files available for sharing. The Enhancement System Middleware could be configured to upload this information the Enhancement System of available files so that the Enhancement System would not have to issue searches onto the peer-to-peer network.
- An Enhancement System could comprise a hardware system such as a computer, thin appliance, ASIC based device or other similar device, which can be programmed with specific logic or programming code (i.e., software). The device preferably has the capability of being connected with a physical network either directly or through the use of a gateway. The programming logic provides the device with the capability to transmit and receive on both physical networks as well as the peer to peer networks which typically ride on top of a physical network. Programming logic is a software program but may also be hardcoded non-changeable procedural information such as typically found on an ASIC based device.
- An Enhancement System Middleware could comprise a hardware system such as a computer, thin appliance, ASIC based device or other similar device, which can be programmed with specific logic or programming code (i.e. software). The device preferably has the capability of being connected with a physical network either directly or through the use of a gateway. The programming logic provides the device with the capability to transmit and receive on both physical networks as well as the peer to peer networks which typically ride on top of a physical network. Programming logic is a software program but may also be hardcoded non-changeable procedural information such as typically found on an ASIC based device.
- The following Examples illustrate various embodiments of the systems according to the present Invention.
- This example describes a standard peer-to-peer user issuing a search to an Enhancement System where the Enhancement System has eight connections to the peer-to-peer network. Referring to
FIG. 6 and the flow chart inFIG. 7 : - Peer-to-Peer User
FIG. 6-100 connects one time to Enhancement SystemFIG. 6-102 through connectionFIG. 6-101 using normal peer-to-peer protocols. Enhancement SystemFIG. 6-102 connects 8 times into Peer-to-Peer Network 104 through its Multiple ConnectionsFIG. 6-103 . Peer-to-Peer UserFIG. 6-100 issues a search via Standard P2P ConnectionFIG. 6-101 to Enhancement SystemFIG. 6-102 . Enhancement SystemFIG. 6-102 relays the search to the Peer-to-Peer NetworkFIG. 6-104 via its Multiple ConnectionsFIG. 6-103 . Search results are generated by nodes on the Peer-to-Peer NetworkFIG. 6-104 . Results are received at Enhancement SystemFIG. 6-102 via Multiple ConnectionsFIG. 6-103 . Enhancement systemFIG. 6-102 relays result set via Standard ConnectionFIG. 6-101 to Peer-to-Peer UserFIG. 6-100 . Peer-to-Peer UserFIG. 6-100 received results from eight connections (Multiple ConnectionsFIG. 6-103 ) while it only had one connection (Standard P2P ConnectionFIG. 6-101 ), thus improving the search result set - This example describes a standard peer-to-peer user issuing a search to an Enhancement System with eight connections to the peer-to-peer network and the Enhancement System filtering results. Referring to
FIG. 6 and the flow chart inFIG. 8 : - Peer-to-Peer User
FIG. 6-100 connects one time to Enhancement SystemFIG. 6-102 through connectionFIG. 6-101 using normal peer-to-peer protocols. Enhancement SystemFIG. 6-102 connects 8 times into Peer-to-Peer Network 104 through its Multiple ConnectionsFIG. 6-103 . Peer-to-Peer UserFIG. 6-100 issues a search via Standard P2P ConnectionFIG. 6-101 to Enhancement SystemFIG. 6-102 . Enhancement SystemFIG. 6-102 relays the search to the Peer-to-Peer NetworkFIG. 6-104 via its Multiple ConnectionsFIG. 6-103 . Search results are generated by nodes on the Peer-to-Peer NetworkFIG. 6-104 . Results are received at Enhancement SystemFIG. 6-102 via Multiple ConnectionsFIG. 6-103 . Enhancement SystemFIG. 6-102 filters out any results containing “Madonna”. Enhancement SystemFIG. 6-102 relays resulting result set via Standard ConnectionFIG. 6-101 to Peer-to-Peer UserFIG. 6-100 . Peer-to-Peer UserFIG. 6-100 received results from eight connections (Multiple ConnectionsFIG. 6-103 ) while it only had one connection (Standard P2P ConnectionFIG. 6-101 ), thus improving the search result set. - This example describes a standard Peer-to-Peer user issuing a search to an Enhancement System with eight connections: to the peer-to-peer network and the Enhancement System adding an advertisement for “Madonna.” Referring to
FIG. 6 and the flow chart inFIG. 9 : - Peer-to-Peer User
FIG. 6-100 connects one time to Enhancement SystemFIG. 6-102 through connectionFIG. 6-101 using normal peer-to-peer protocols. Enhancement SystemFIG. 6-102 connects 8 times into Peer-to-Peer Network 104 through its Multiple ConnectionsFIG. 6-103 . Peer-to-Peer UserFIG. 6-100 issues a search via Standard P2P ConnectionFIG. 6-101 to Enhancement SystemFIG. 6-102 . Enhancement SystemFIG. 6-102 relays the search to the Peer-to-Peer NetworkFIG. 6-104 via its Multiple Connections -
FIG. 6-103 . Search results are generated by nodes on the Peer-to-Peer NetworkFIG. 6-104 . Results are received at Enhancement SystemFIG. 6-102 via Multiple ConnectionsFIG. 6-103 . Enhancement SystemFIG. 6-102 adds a result to the result set that includes an advertisement for Madonna's newest song. Enhancement SystemFIG. 6-102 relays new combined result set via Standard ConnectionFIG. 6-101 to Peer-to-Peer UserFIG. 6-100 . Peer-to-Peer UserFIG. 6-100 received results from eight connections (Multiple ConnectionsFIG. 6-103 ) while it only had one connection (Standard P2P ConnectionFIG. 6-101 ), thus improving the search result set. - Finally, it will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but is intended to cover modifications within the spirit and scope of the present invention as defined in the appended claims.
Claims (13)
1. A method for implementing a peer to peer (P2P) network that includes a plurality of nodes, wherein each of a majority of the nodes has less than a threshold number of P2P connections to other nodes in the network, said method comprising:
(a) establishing a P2P network connection between a first node from said majority and an enhanced connection node in the network, wherein the enhanced connection node has more than the threshold number of P2P connections to other nodes in the network and has more connections than the first node acting alone in performing a search request, the enhanced connection node thereby increasing a likelihood of responses to the search request;
(b) issuing the search request from the first node by transmitting the search request from the first node to the enhanced connection node, and then forwarding the search request from the enhanced connection node to other nodes in the network; and
(c) collecting, at the enhanced connection node, the responses to the search request, and thereafter performing at least one of the following steps at the enhanced connection node:
(i) filtering said responses, and then forwarding results of the filtering to the first node;
(ii) ranking said responses, and then forwarding ranked responses to the first node; and
(iii) adding additional content to said responses, and forwarding said additional content and at least some of said responses to the first node.
2. The method of claim 1 , wherein the additional content in step (c)(iii) is an advertisement selected in response to one or more search terms included in the search request.
3. The method of claim 1 , wherein the enhanced connection node accesses user profile information associated with the first node, and step (c) further comprises performing at least one of the following steps at the enhanced connection node:
(i) filtering said responses in accordance with the profile information, and then forwarding results of the filtering to the first node;
(ii) ranking said responses in accordance with the profile information, and then forwarding ranked responses to the first node; and
(iii) adding additional content to said responses wherein the additional content is selected at least in part using the profile information, and forwarding said additional content and at least some of said responses to the first node.
4. The method of claim 1 , wherein the enhanced connection node includes dedicated content that is unavailable on all other nodes in the network, or pointers to dedicated content that is unavailable on all other nodes in the network.
5. The method of claim 1 , wherein the first node uses middleware on the first node to establish the P2P network connection between the first node and the enhanced connection node.
6. The method of claim 5 , wherein the middleware monitors for transmission of content that should not be shared on the P2P network and performs at least one of the following:
(i) blocks transmission of the content that should not be shared; and
(ii) notifies another system that there has been transmission of content that should not be shared.
7. The method of claim 1 , wherein the enhanced connection node sends a cached list of search responses back to the first node.
8. A system for implementing a peer to peer (P2P) network that includes a plurality of nodes, wherein each of a majority of the nodes has less than a threshold number of P2P connections to other nodes in the network, comprising:
means for establishing a P2P network connection between a first node from said majority and an enhanced connection node in the network, wherein the enhanced connection node has more than the threshold number of P2P connections to other nodes in the network and has more connections than the first node acting alone in performing a search request, the enhanced connection node thereby increasing a likelihood of responses to the search request;
means for issuing the search request from the first node by transmitting the search request from the first node to the enhanced connection node, and then forwarding the search request from the enhanced connection node to other nodes in the network; and
means for collecting, at the enhanced connection node, the responses to the search request, and thereafter performing at least one of the following at the enhanced connection node:
(i) filtering said responses, and then forwarding results of the filtering to the first node;
(ii) ranking said responses, and then forwarding ranked responses to the first node; and
(iii) adding additional content to said responses, and forwarding said additional content and at least some of said responses to the first node.
9. The system of claim 8 , wherein the additional content is an advertisement selected in response to one or more search terms included in the search request.
10. The system of claim 8 , wherein the enhanced connection node includes dedicated content that is unavailable on all other nodes in the network, or pointers to dedicated content that is unavailable on all other nodes in the network.
11. The system of claim 8 , wherein the first node uses middleware on the first node to establish the P2P network connection between the first node and the enhanced connection node.
12. The system of claim 11 , wherein the middleware is configured to monitor for transmission of content that should not be shared on the P2P network and configured to perform at least one of the following:
(i) blocks transmission of the content that should not be shared; and
(ii) notifies another system that there has been transmission of content that should not be shared.
13. The system of claim 8 , wherein the enhanced connection node is configured to send a cached list of search responses back to the first node.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/689,182 US20150334180A1 (en) | 2006-11-07 | 2015-04-17 | System and method for enhanced experience with a peer-to-peer network |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US85733406P | 2006-11-07 | 2006-11-07 | |
US11/935,747 US9021026B2 (en) | 2006-11-07 | 2007-11-06 | System and method for enhanced experience with a peer to peer network |
US14/689,182 US20150334180A1 (en) | 2006-11-07 | 2015-04-17 | System and method for enhanced experience with a peer-to-peer network |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/935,747 Continuation US9021026B2 (en) | 2006-11-07 | 2007-11-06 | System and method for enhanced experience with a peer to peer network |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150334180A1 true US20150334180A1 (en) | 2015-11-19 |
Family
ID=39365107
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/935,747 Active 2029-06-22 US9021026B2 (en) | 2006-11-07 | 2007-11-06 | System and method for enhanced experience with a peer to peer network |
US14/689,182 Abandoned US20150334180A1 (en) | 2006-11-07 | 2015-04-17 | System and method for enhanced experience with a peer-to-peer network |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/935,747 Active 2029-06-22 US9021026B2 (en) | 2006-11-07 | 2007-11-06 | System and method for enhanced experience with a peer to peer network |
Country Status (8)
Country | Link |
---|---|
US (2) | US9021026B2 (en) |
EP (1) | EP2082326A4 (en) |
JP (2) | JP2010509674A (en) |
CN (1) | CN101606143B (en) |
AU (1) | AU2007317889B2 (en) |
BR (1) | BRPI0718582A8 (en) |
CA (1) | CA2668881C (en) |
WO (1) | WO2008057509A2 (en) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7761569B2 (en) | 2004-01-23 | 2010-07-20 | Tiversa, Inc. | Method for monitoring and providing information over a peer to peer network |
EP2082326A4 (en) | 2006-11-07 | 2012-02-15 | Tiversa Inc | System and method for enhanced experience with a peer to peer network |
JP5174888B2 (en) | 2007-04-12 | 2013-04-03 | タイヴァーサ・インコーポレーテッド | System and method for creating shared information list of peer-to-peer network related applications |
JP5539863B2 (en) | 2007-06-11 | 2014-07-02 | タイヴァーサ・インコーポレーテッド | System and method for advertising on a P2P network |
US9990674B1 (en) | 2007-12-14 | 2018-06-05 | Consumerinfo.Com, Inc. | Card registry systems and methods |
KR101472936B1 (en) * | 2008-04-30 | 2014-12-17 | 삼성전자주식회사 | P2P Network System And Operating Method based on a region thereof |
US8312033B1 (en) | 2008-06-26 | 2012-11-13 | Experian Marketing Solutions, Inc. | Systems and methods for providing an integrated identifier |
US8060424B2 (en) | 2008-11-05 | 2011-11-15 | Consumerinfo.Com, Inc. | On-line method and system for monitoring and reporting unused available credit |
AU2009342170B2 (en) * | 2009-03-19 | 2015-01-29 | Telefonaktiebolaget L M Ericsson (Publ) | Optimized redirection for network architectures |
US8504682B2 (en) * | 2009-12-17 | 2013-08-06 | Alcatel Lucent | Localization of peer to peer traffic |
JP5316582B2 (en) | 2011-05-23 | 2013-10-16 | コニカミノルタ株式会社 | Image processing system, image processing device, terminal device, and control program |
US9483606B1 (en) | 2011-07-08 | 2016-11-01 | Consumerinfo.Com, Inc. | Lifescore |
US9106691B1 (en) | 2011-09-16 | 2015-08-11 | Consumerinfo.Com, Inc. | Systems and methods of identity protection and management |
US8738516B1 (en) | 2011-10-13 | 2014-05-27 | Consumerinfo.Com, Inc. | Debt services candidate locator |
US9853959B1 (en) | 2012-05-07 | 2017-12-26 | Consumerinfo.Com, Inc. | Storage and maintenance of personal data |
US9654541B1 (en) | 2012-11-12 | 2017-05-16 | Consumerinfo.Com, Inc. | Aggregating user web browsing data |
US9916621B1 (en) | 2012-11-30 | 2018-03-13 | Consumerinfo.Com, Inc. | Presentation of credit score factors |
US10102570B1 (en) | 2013-03-14 | 2018-10-16 | Consumerinfo.Com, Inc. | Account vulnerability alerts |
US9406085B1 (en) | 2013-03-14 | 2016-08-02 | Consumerinfo.Com, Inc. | System and methods for credit dispute processing, resolution, and reporting |
US10685398B1 (en) | 2013-04-23 | 2020-06-16 | Consumerinfo.Com, Inc. | Presenting credit score information |
US9961125B2 (en) | 2013-07-31 | 2018-05-01 | Microsoft Technology Licensing, Llc | Messaging API over HTTP protocol to establish context for data exchange |
US10440066B2 (en) | 2013-11-15 | 2019-10-08 | Microsoft Technology Licensing, Llc | Switching of connection protocol |
US20150142982A1 (en) * | 2013-11-15 | 2015-05-21 | Microsoft Corporation | Preservation of connection session |
US9477737B1 (en) | 2013-11-20 | 2016-10-25 | Consumerinfo.Com, Inc. | Systems and user interfaces for dynamic access of multiple remote databases and synchronization of data based on user rules |
US20160036902A1 (en) * | 2014-07-31 | 2016-02-04 | Google Technology Holdings LLC | Method and apparatus for sharing content between devices in peer-to-peer networks |
EP3016362A1 (en) * | 2014-11-03 | 2016-05-04 | OpenTV Europe SAS | Method and system to share advertisement content from a main device to a secondary device |
US10044836B2 (en) * | 2016-12-19 | 2018-08-07 | Palantir Technologies Inc. | Conducting investigations under limited connectivity |
US10778781B2 (en) * | 2017-05-10 | 2020-09-15 | Microsoft Technology Licensing, Llc | Contention management in communication networks |
US20200074541A1 (en) | 2018-09-05 | 2020-03-05 | Consumerinfo.Com, Inc. | Generation of data structures based on categories of matched data items |
CN109561137B (en) * | 2018-11-14 | 2021-08-24 | 广州虎牙信息科技有限公司 | Method, device, terminal equipment and medium for establishing P2P network |
US11315179B1 (en) | 2018-11-16 | 2022-04-26 | Consumerinfo.Com, Inc. | Methods and apparatuses for customized card recommendations |
US11238656B1 (en) | 2019-02-22 | 2022-02-01 | Consumerinfo.Com, Inc. | System and method for an augmented reality experience via an artificial intelligence bot |
CN109995764A (en) * | 2019-03-07 | 2019-07-09 | 北京华安普特网络科技有限公司 | A kind of DDOS attack defence method based on block chain |
US11016784B2 (en) | 2019-03-08 | 2021-05-25 | Palantir Technologies Inc. | Systems and methods for automated deployment and adaptation of configuration files at computing devices |
US10849179B1 (en) | 2019-05-29 | 2020-11-24 | Bank Of America Corporation | Mobile network tool |
US11941065B1 (en) | 2019-09-13 | 2024-03-26 | Experian Information Solutions, Inc. | Single identifier platform for storing entity data |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114709A1 (en) * | 2003-10-25 | 2005-05-26 | Macrovision Corporation | Demand based method for interdiction of unauthorized copying in a decentralized network |
US20050125374A1 (en) * | 2003-12-08 | 2005-06-09 | Andy Curtis | Methods and systems for conceptually organizing and presenting information |
US20060248062A1 (en) * | 2005-03-09 | 2006-11-02 | Medio Systems, Inc. | Method and system for content search with mobile computing devices |
Family Cites Families (143)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US111604A (en) | 1871-02-07 | Improvement in sand-sifters | ||
US20040139211A1 (en) | 1995-12-20 | 2004-07-15 | Nb Networks | Systems and methods for prevention of peer-to-peer file sharing |
US6076088A (en) | 1996-02-09 | 2000-06-13 | Paik; Woojin | Information extraction system and method using concept relation concept (CRC) triples |
US6151643A (en) | 1996-06-07 | 2000-11-21 | Networks Associates, Inc. | Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer |
US5987011A (en) | 1996-08-30 | 1999-11-16 | Chai-Keong Toh | Routing method for Ad-Hoc mobile networks |
US6069896A (en) | 1996-10-15 | 2000-05-30 | Motorola, Inc. | Capability addressable network and method therefor |
US7236173B2 (en) | 1996-10-30 | 2007-06-26 | Autodesk, Inc. | Method and apparatus for providing access to maps on a thin client |
US5949760A (en) | 1997-03-21 | 1999-09-07 | Rockwell International Corporation | Simultaneous channel access transmission method for a multi-hop communications radio network |
JP3688877B2 (en) | 1997-08-08 | 2005-08-31 | 株式会社東芝 | Node device and label switching path loop detection method |
US6611196B2 (en) | 1998-03-20 | 2003-08-26 | Xerox Corporation | System and method for providing audio augmentation of a physical environment |
US6205146B1 (en) | 1998-05-28 | 2001-03-20 | 3Com Corporation | Method of dynamically routing to a well known address in a network |
US6965591B1 (en) | 1998-09-14 | 2005-11-15 | At&T Corp. | System and method for gatekeeper-to-gatekeeper communication |
US6397246B1 (en) | 1998-11-13 | 2002-05-28 | International Business Machines Corporation | Method and system for processing document requests in a network system |
AU774602B2 (en) | 1998-12-23 | 2004-07-01 | Nokia Inc. | A unified routing scheme for ad-hoc internetworking |
US7027993B1 (en) | 1999-03-12 | 2006-04-11 | International Business Machines Corporation | Computerized knowledge brokerage system |
US6493702B1 (en) * | 1999-05-05 | 2002-12-10 | Xerox Corporation | System and method for searching and recommending documents in a collection using share bookmarks |
EP1107512A1 (en) | 1999-12-03 | 2001-06-13 | Sony International (Europe) GmbH | Communication device and software for operating multimedia applications |
US6751200B1 (en) | 1999-12-06 | 2004-06-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Route discovery based piconet forming |
US20040220926A1 (en) | 2000-01-03 | 2004-11-04 | Interactual Technologies, Inc., A California Cpr[P | Personalization services for entities from multiple sources |
US6633855B1 (en) | 2000-01-06 | 2003-10-14 | International Business Machines Corporation | Method, system, and program for filtering content using neural networks |
US6920110B2 (en) | 2001-02-14 | 2005-07-19 | Microsoft Corporation | System and method for transferring data over a network |
IL134893A0 (en) | 2000-03-06 | 2001-05-20 | Joinweb Inc | Method and system for locating internet users having similar navigation patterns |
US7327683B2 (en) | 2000-03-16 | 2008-02-05 | Sri International | Method and apparatus for disseminating topology information and for discovering new neighboring nodes |
US7142205B2 (en) | 2000-03-29 | 2006-11-28 | Autodesk, Inc. | Single gesture map navigation graphical user interface for a personal digital assistant |
US6983320B1 (en) | 2000-05-23 | 2006-01-03 | Cyveillance, Inc. | System, method and computer program product for analyzing e-commerce competition of an entity by utilizing predetermined entity-specific metrics and analyzed statistics from web pages |
US20020044549A1 (en) | 2000-06-12 | 2002-04-18 | Per Johansson | Efficient scatternet forming |
US6687696B2 (en) * | 2000-07-26 | 2004-02-03 | Recommind Inc. | System and method for personalized search, information filtering, and for generating recommendations utilizing statistical latent class models |
US20020059204A1 (en) | 2000-07-28 | 2002-05-16 | Harris Larry R. | Distributed search system and method |
US6732180B1 (en) | 2000-08-08 | 2004-05-04 | The University Of Tulsa | Method to inhibit the identification and retrieval of proprietary media via automated search engines utilized in association with computer compatible communications network |
US7089301B1 (en) | 2000-08-11 | 2006-08-08 | Napster, Inc. | System and method for searching peer-to-peer computer networks by selecting a computer based on at least a number of files shared by the computer |
US20020069098A1 (en) | 2000-08-31 | 2002-06-06 | Infoseer, Inc. | System and method for protecting proprietary material on computer networks |
US20020065832A1 (en) | 2000-08-31 | 2002-05-30 | Infoseer, Inc. | System and method for controlling file distribution and transfer on a computer |
AU2001296205A1 (en) | 2000-10-17 | 2002-04-29 | Shyne-Song Chuang | A method and system for detecting rogue software |
US6918113B2 (en) | 2000-11-06 | 2005-07-12 | Endeavors Technology, Inc. | Client installation and execution system for streamed applications |
US7308445B2 (en) | 2000-11-08 | 2007-12-11 | Overture Services, Inc. | Method for estimating coverage of web search engines |
US20020073204A1 (en) | 2000-12-07 | 2002-06-13 | Rabindranath Dutta | Method and system for exchange of node characteristics for DATA sharing in peer-to-peer DATA networks |
US7627897B2 (en) | 2001-01-03 | 2009-12-01 | Portauthority Technologies Inc. | Method and apparatus for a reactive defense against illegal distribution of multimedia content in file sharing networks |
WO2002057917A2 (en) | 2001-01-22 | 2002-07-25 | Sun Microsystems, Inc. | Peer-to-peer network computing platform |
US6804705B2 (en) | 2001-01-30 | 2004-10-12 | Paul V. Greco | Systems and methods for providing electronic document services |
KR100392089B1 (en) | 2001-02-02 | 2003-07-22 | 스톰 씨엔씨 인코포레이티드 | A method for preventing reduction of sales amount of phonograph records by way of digital music file unlawfully circulated through communication network |
JP3738968B2 (en) * | 2001-02-20 | 2006-01-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Advertisement delivery system, advertisement delivery management system, and additional information delivery method |
US20020161844A1 (en) | 2001-02-27 | 2002-10-31 | Overtoom Eric J. | Method and apparatus for peer to peer communication over a master slave interface |
EP1367518A1 (en) * | 2001-03-06 | 2003-12-03 | Matsushita Electric Industrial Co., Ltd. | Advertisement distribution system |
US7681032B2 (en) * | 2001-03-12 | 2010-03-16 | Portauthority Technologies Inc. | System and method for monitoring unauthorized transport of digital content |
WO2002076003A2 (en) | 2001-03-19 | 2002-09-26 | Imesh Ltd. | System and method for peer-to-peer file exchange mechanism from multiple sources |
US7539664B2 (en) | 2001-03-26 | 2009-05-26 | International Business Machines Corporation | Method and system for operating a rating server based on usage and download patterns within a peer-to-peer network |
US7065587B2 (en) | 2001-04-02 | 2006-06-20 | Microsoft Corporation | Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith |
US7035653B2 (en) | 2001-04-13 | 2006-04-25 | Leap Wireless International, Inc. | Method and system to facilitate interaction between and content delivery to users of a wireless communications network |
US20020152262A1 (en) | 2001-04-17 | 2002-10-17 | Jed Arkin | Method and system for preventing the infringement of intellectual property rights |
US20020161887A1 (en) * | 2001-04-27 | 2002-10-31 | Foster Michael S. | Method and system for performing security via de-registration in a communications network |
US6950821B2 (en) | 2001-05-04 | 2005-09-27 | Sun Microsystems, Inc. | System and method for resolving distributed network search queries to information providers |
US7171415B2 (en) | 2001-05-04 | 2007-01-30 | Sun Microsystems, Inc. | Distributed information discovery through searching selected registered information providers |
US6839769B2 (en) | 2001-05-31 | 2005-01-04 | Intel Corporation | Limiting request propagation in a distributed file system |
GB2376314A (en) | 2001-06-04 | 2002-12-11 | Hewlett Packard Co | Peer-to-peer network search popularity statistical information collection |
US20020188735A1 (en) | 2001-06-06 | 2002-12-12 | Needham Bradford H. | Partially replicated, locally searched peer to peer file sharing system |
AU2002318380A1 (en) | 2001-06-21 | 2003-01-08 | Isc, Inc. | Database indexing method and apparatus |
US20040230572A1 (en) | 2001-06-22 | 2004-11-18 | Nosa Omoigui | System and method for semantic knowledge retrieval, management, capture, sharing, discovery, delivery and presentation |
MXPA03011976A (en) | 2001-06-22 | 2005-07-01 | Nervana Inc | System and method for knowledge retrieval, management, delivery and presentation. |
DE60224395T2 (en) | 2001-07-20 | 2008-12-18 | British Telecommunications Public Ltd. Co. | DEVICE AND METHOD FOR CONNECTING IN NETWORKS |
US7003514B2 (en) | 2001-09-13 | 2006-02-21 | International Business Machines Corporation | Method and apparatus for restricting a fan-out search in a peer-to-peer network based on accessibility of nodes |
US7509372B2 (en) | 2001-09-13 | 2009-03-24 | International Business Machines Corporation | Method and system for redirecting data requests in peer-to-peer data networks |
US7493363B2 (en) | 2001-09-19 | 2009-02-17 | Microsoft Corporation | Peer-to-peer group management and method for maintaining peer-to-peer graphs |
US20030095660A1 (en) | 2001-10-15 | 2003-05-22 | Overpeer, Inc. | System and method for protecting digital works on a communication network |
US6855660B2 (en) | 2001-11-07 | 2005-02-15 | De Nora Elettrodi S.P.A. | Rhodium electrocatalyst and method of preparation |
JP2003186777A (en) * | 2001-12-17 | 2003-07-04 | Nippon Telegraph & Telephone East Corp | Personal portable apparatus, communication method program and recording medium |
US7227864B2 (en) | 2001-12-17 | 2007-06-05 | Microsoft Corporation | Methods and systems for establishing communications through firewalls and network address translators |
US20030126199A1 (en) * | 2002-01-02 | 2003-07-03 | Kadri Seemab Aslam | Peer-to-peer namespace directory and discovery |
US20050021394A1 (en) * | 2002-01-22 | 2005-01-27 | Miedema Folkert Gaayo | Method and system for distributing multimedia object |
US7177295B1 (en) | 2002-03-08 | 2007-02-13 | Scientific Research Corporation | Wireless routing protocol for ad-hoc networks |
US20030182428A1 (en) | 2002-03-19 | 2003-09-25 | Jiang Li | Peer-to-peer (P2P) communication system |
US20030212710A1 (en) | 2002-03-27 | 2003-11-13 | Michael J. Guy | System for tracking activity and delivery of advertising over a file network |
US7418664B2 (en) | 2002-04-03 | 2008-08-26 | Microsoft Corporation | Application sharing single document sharing |
US7174382B2 (en) | 2002-04-09 | 2007-02-06 | Hewlett-Packard Development Company, L.P. | Interest-based connections in peer-to-peer networks |
US20030195852A1 (en) | 2002-04-16 | 2003-10-16 | Geoff Campbell | System, method, apparatus and means for protecting digital content |
US7764617B2 (en) | 2002-04-29 | 2010-07-27 | Harris Corporation | Mobile ad-hoc network and methods for performing functions therein based upon weighted quality of service metrics |
US7571251B2 (en) | 2002-05-06 | 2009-08-04 | Sandvine Incorporated Ulc | Path optimizer for peer to peer networks |
US7578002B2 (en) | 2002-11-25 | 2009-08-18 | Trimble Navigation Limited | Controlling interaction of deliverable electronic media |
KR20040013726A (en) | 2002-08-08 | 2004-02-14 | 케이티하이텔 주식회사 | Method and Apparatus for distributing contents through on-line |
US8090798B2 (en) * | 2002-08-12 | 2012-01-03 | Morganstein | System and methods for direct targeted media advertising over peer-to-peer networks |
US7376749B2 (en) | 2002-08-12 | 2008-05-20 | Sandvine Incorporated | Heuristics-based peer to peer message routing |
US7089552B2 (en) | 2002-08-29 | 2006-08-08 | Sun Microsystems, Inc. | System and method for verifying installed software |
US7254608B2 (en) | 2002-10-31 | 2007-08-07 | Sun Microsystems, Inc. | Managing distribution of content using mobile agents in peer-topeer networks |
ATE380431T1 (en) | 2002-11-15 | 2007-12-15 | Ibm | CONTROLLING NETWORK TRAFFIC IN A PEER-TO-PEER ENVIRONMENT |
US20040098370A1 (en) | 2002-11-15 | 2004-05-20 | Bigchampagne, Llc | Systems and methods to monitor file storage and transfer on a peer-to-peer network |
US7010534B2 (en) | 2002-11-16 | 2006-03-07 | International Business Machines Corporation | System and method for conducting adaptive search using a peer-to-peer network |
CA2413808A1 (en) | 2002-12-05 | 2004-06-05 | Claude Fournier | Method and system for protection against unauthorized distribution of copyrighted computer files over peer-to-peer networks |
US7441180B1 (en) | 2002-12-17 | 2008-10-21 | Mediadefender, Inc. | Computer network file synchronization system and method |
US7451217B2 (en) | 2002-12-19 | 2008-11-11 | International Business Machines Corporation | Method and system for peer-to-peer authorization |
US20040133571A1 (en) * | 2002-12-20 | 2004-07-08 | Martin Horne | Adaptive item search and user ranking system and method |
EP1584160B1 (en) | 2003-01-13 | 2011-07-06 | Meshnetworks, Inc. | System and method for achieving continuous connectivity to an access point or gateway in a wireless network following and on-demand routing protocol |
US7318092B2 (en) | 2003-01-23 | 2008-01-08 | Computer Associates Think, Inc. | Method and apparatus for remote discovery of software applications in a networked environment |
US7769881B2 (en) | 2003-01-24 | 2010-08-03 | Hitachi, Ltd. | Method and apparatus for peer-to peer access |
US7472110B2 (en) | 2003-01-29 | 2008-12-30 | Microsoft Corporation | System and method for employing social networks for information discovery |
US7356709B2 (en) | 2003-01-31 | 2008-04-08 | Microsoft Corporation | Systems and methods for deterring software piracy in a volume license environment |
US7613708B2 (en) | 2003-01-31 | 2009-11-03 | Rieffanaugh Jr Neal King | Human credit resource networking method |
US20040260801A1 (en) | 2003-02-12 | 2004-12-23 | Actiontec Electronics, Inc. | Apparatus and methods for monitoring and controlling network activity using mobile communications devices |
US20040158630A1 (en) | 2003-02-12 | 2004-08-12 | Chang Tsung-Yen Dean | Monitoring and controlling network activity in real-time |
US7185015B2 (en) | 2003-03-14 | 2007-02-27 | Websense, Inc. | System and method of monitoring and controlling application files |
US7895338B2 (en) | 2003-03-18 | 2011-02-22 | Siemens Corporation | Meta-search web service-based architecture for peer-to-peer collaboration and voice-over-IP |
US7120619B2 (en) | 2003-04-22 | 2006-10-10 | Microsoft Corporation | Relationship view |
US20050250106A1 (en) * | 2003-04-24 | 2005-11-10 | David Epstein | Gene knock-down by intracellular expression of aptamers |
US7349400B2 (en) | 2003-04-29 | 2008-03-25 | Narus, Inc. | Method and system for transport protocol reconstruction and timer synchronization for non-intrusive capturing and analysis of packets on a high-speed distributed network |
US8024795B2 (en) | 2003-05-09 | 2011-09-20 | Q1 Labs, Inc. | Network intelligence system |
US7426637B2 (en) | 2003-05-21 | 2008-09-16 | Music Public Broadcasting, Inc. | Method and system for controlled media sharing in a network |
US20040250106A1 (en) | 2003-05-21 | 2004-12-09 | Annese Steven A. | System and method for preventing sharing of music, video, video games and software |
JP2005050286A (en) | 2003-07-31 | 2005-02-24 | Fujitsu Ltd | Network-node machine and information network system |
FR2858896A1 (en) | 2003-08-12 | 2005-02-18 | France Telecom | METHOD OF MASKING APPLICATION TREATMENTS OF SERVER ACCESS REQUEST AND CORRESPONDING MASKING SYSTEM |
US20050043548A1 (en) | 2003-08-22 | 2005-02-24 | Joseph Cates | Automated monitoring and control system for networked communications |
US7739281B2 (en) | 2003-09-16 | 2010-06-15 | Microsoft Corporation | Systems and methods for ranking documents based upon structurally interrelated information |
WO2005032111A1 (en) | 2003-10-02 | 2005-04-07 | Viralg Oy | Limiting use of unauthorized digital content in a content-sharing peer-to-peer network |
US20050080858A1 (en) | 2003-10-10 | 2005-04-14 | Microsoft Corporation | System and method for searching a peer-to-peer network |
US20050091202A1 (en) | 2003-10-22 | 2005-04-28 | Thomas Kapenda J. | Social network-based internet search engine |
US20050203851A1 (en) | 2003-10-25 | 2005-09-15 | Macrovision Corporation | Corruption and its deterrence in swarm downloads of protected files in a file sharing network |
US20050091167A1 (en) * | 2003-10-25 | 2005-04-28 | Macrovision Corporation | Interdiction of unauthorized copying in a decentralized network |
US20050108203A1 (en) | 2003-11-13 | 2005-05-19 | Chunqiang Tang | Sample-directed searching in a peer-to-peer system |
US20050106489A1 (en) * | 2003-11-18 | 2005-05-19 | Canon Kabushiki Kaisha | Image forming apparatus and image forming method |
US7418455B2 (en) | 2003-11-26 | 2008-08-26 | International Business Machines Corporation | System and method for indexing weighted-sequences in large databases |
US7523316B2 (en) | 2003-12-08 | 2009-04-21 | International Business Machines Corporation | Method and system for managing the display of sensitive content in non-trusted environments |
US7426574B2 (en) | 2003-12-16 | 2008-09-16 | Trend Micro Incorporated | Technique for intercepting data in a peer-to-peer network |
US8156175B2 (en) | 2004-01-23 | 2012-04-10 | Tiversa Inc. | System and method for searching for specific types of people or information on a peer-to-peer network |
EP1719325B1 (en) | 2004-01-23 | 2017-03-29 | Tiversa IP, Inc. | Method for optimally utilizing a peer to peer network |
AU2005208660B2 (en) | 2004-01-23 | 2010-07-22 | Kroll Information Assurance, Llc | Method for improving peer to peer network communication |
US7761569B2 (en) | 2004-01-23 | 2010-07-20 | Tiversa, Inc. | Method for monitoring and providing information over a peer to peer network |
US20050203892A1 (en) | 2004-03-02 | 2005-09-15 | Jonathan Wesley | Dynamically integrating disparate systems and providing secure data sharing |
US20050229243A1 (en) | 2004-03-31 | 2005-10-13 | Svendsen Hugh B | Method and system for providing Web browsing through a firewall in a peer to peer network |
US20050267945A1 (en) | 2004-04-08 | 2005-12-01 | Ori Cohen | Systems and methods for deterring internet file-sharing networks |
US7761918B2 (en) | 2004-04-13 | 2010-07-20 | Tenable Network Security, Inc. | System and method for scanning a network |
US7428221B2 (en) | 2004-06-01 | 2008-09-23 | Cisco Technology, Inc. | Arrangement for providing network prefix information from attached mobile routers to a clusterhead in a tree-based ad hoc mobile network |
US7490356B2 (en) | 2004-07-20 | 2009-02-10 | Reflectent Software, Inc. | End user risk management |
US8130746B2 (en) | 2004-07-28 | 2012-03-06 | Audible Magic Corporation | System for distributing decoy content in a peer to peer network |
US20060029093A1 (en) * | 2004-08-09 | 2006-02-09 | Cedric Van Rossum | Multimedia system over electronic network and method of use |
GB2422214B (en) * | 2004-08-23 | 2009-03-18 | Sound Control Media Prot Ltd | Data network traffic filter |
US7587367B2 (en) | 2004-12-31 | 2009-09-08 | Ebay Inc. | Method and system to provide feedback data within a distributed e-commerce system |
WO2006088402A1 (en) * | 2005-02-18 | 2006-08-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Arrangements for providing peer-to-peer communications in a public land mobile network |
JP4993512B2 (en) | 2005-03-14 | 2012-08-08 | ストリックランド,マーク | File sharing method and file sharing system |
DE102005012748A1 (en) * | 2005-03-19 | 2006-09-21 | Elringklinger Ag | Connecting device for fixing a structural component, in particular shielding part |
US20060209819A1 (en) | 2005-03-21 | 2006-09-21 | Jennings Raymond B Iii | Method and apparatus for efficiently expanding a P2P network |
WO2006124027A1 (en) | 2005-05-16 | 2006-11-23 | Ebay Inc. | Method and system to process a data search request |
US7703040B2 (en) | 2005-06-29 | 2010-04-20 | Microsoft Corporation | Local search engine user interface |
US20070088622A1 (en) | 2005-10-04 | 2007-04-19 | Tamago | Digital media commerce in a peer-to-peer network |
WO2007059241A2 (en) | 2005-11-15 | 2007-05-24 | Enpresence, Inc. | Proximity-a ware virtual agents for use with wireless mobile devices |
EP2082326A4 (en) | 2006-11-07 | 2012-02-15 | Tiversa Inc | System and method for enhanced experience with a peer to peer network |
JP5174888B2 (en) | 2007-04-12 | 2013-04-03 | タイヴァーサ・インコーポレーテッド | System and method for creating shared information list of peer-to-peer network related applications |
-
2007
- 2007-11-06 EP EP07861726A patent/EP2082326A4/en not_active Withdrawn
- 2007-11-06 BR BRPI0718582A patent/BRPI0718582A8/en not_active Application Discontinuation
- 2007-11-06 AU AU2007317889A patent/AU2007317889B2/en active Active
- 2007-11-06 CN CN200780049459.9A patent/CN101606143B/en active Active
- 2007-11-06 JP JP2009536267A patent/JP2010509674A/en active Pending
- 2007-11-06 CA CA2668881A patent/CA2668881C/en active Active
- 2007-11-06 US US11/935,747 patent/US9021026B2/en active Active
- 2007-11-06 WO PCT/US2007/023321 patent/WO2008057509A2/en active Application Filing
-
2013
- 2013-04-17 JP JP2013086450A patent/JP5698300B2/en active Active
-
2015
- 2015-04-17 US US14/689,182 patent/US20150334180A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114709A1 (en) * | 2003-10-25 | 2005-05-26 | Macrovision Corporation | Demand based method for interdiction of unauthorized copying in a decentralized network |
US20050125374A1 (en) * | 2003-12-08 | 2005-06-09 | Andy Curtis | Methods and systems for conceptually organizing and presenting information |
US20060248062A1 (en) * | 2005-03-09 | 2006-11-02 | Medio Systems, Inc. | Method and system for content search with mobile computing devices |
Non-Patent Citations (2)
Title |
---|
Ernesto. âSpeed up Bitcomet and uTorrentâ - TorrentFreak. <https://torrentfreak.com/speed-up-bitcomet-and-%C2%B5torrent/> Published: 2005-12-20. * |
Strigeus, Ludvig. μTorrent 1.5 (Build 437). Released: 2006-06-08. * |
Also Published As
Publication number | Publication date |
---|---|
CN101606143A (en) | 2009-12-16 |
US20080140780A1 (en) | 2008-06-12 |
CN101606143B (en) | 2015-09-16 |
WO2008057509A9 (en) | 2008-09-04 |
EP2082326A2 (en) | 2009-07-29 |
EP2082326A4 (en) | 2012-02-15 |
US9021026B2 (en) | 2015-04-28 |
AU2007317889A1 (en) | 2008-05-15 |
AU2007317889B2 (en) | 2011-05-12 |
CA2668881C (en) | 2016-07-26 |
JP2010509674A (en) | 2010-03-25 |
BRPI0718582A2 (en) | 2014-04-08 |
BRPI0718582A8 (en) | 2018-05-22 |
WO2008057509A2 (en) | 2008-05-15 |
JP2013149275A (en) | 2013-08-01 |
JP5698300B2 (en) | 2015-04-08 |
CA2668881A1 (en) | 2008-05-15 |
WO2008057509A3 (en) | 2008-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9021026B2 (en) | System and method for enhanced experience with a peer to peer network | |
Lua et al. | A survey and comparison of peer-to-peer overlay network schemes | |
Hughes et al. | Free riding on Gnutella revisited: the bell tolls? | |
US7761569B2 (en) | Method for monitoring and providing information over a peer to peer network | |
US7509372B2 (en) | Method and system for redirecting data requests in peer-to-peer data networks | |
Liang et al. | The kazaa overlay: A measurement study | |
EP1561333B1 (en) | Network traffic control in peer-to-peer environments | |
US9787766B2 (en) | Methods and apparatus for traffic management in peer-to-peer networks | |
US20020073204A1 (en) | Method and system for exchange of node characteristics for DATA sharing in peer-to-peer DATA networks | |
JP2010522386A (en) | Method, system, and node for P2P content sharing | |
EP1719326B1 (en) | Method for improving peer to peer network communication | |
Kato | GISP: Global information sharing protocol-a distributed index for peer-to-peer systems | |
Ding et al. | P2P Networks for Content Sharing | |
VANRENESSE et al. | Heterogeneity-aware peer-to-peer multicast | |
Kwok et al. | An enhanced Gnutella P2P protocol: a search perspective | |
Brands et al. | Taxonomy of p2p applications | |
Singh et al. | Resource-Cardinality Based Scheme to Reduce Resource Lookup Cost in Structured P2P Networks | |
AU2012201512B2 (en) | Method for monitoring and providing information over a peer to peer network | |
Ahmed et al. | Searching Technique in Peer-to-Peer Networks by Detecting Stable Nodes. | |
Pereira | Peer-to-Peer Computing | |
Jantunen et al. | Peer-to-Peer Analysis | |
Hsiao et al. | Peering by exploiting peer heterogeneity | |
Kouyoumdjieva | Optimizing traffic locality in BitTorrent via biased neighbor selection | |
Fuhrmann | Supporting peer-to-peer computing with FlexiNet | |
Feldman et al. | Workshop Report for 2nd International Workshop on Peer-to-Peer Systems (IPTPS ‘03) 21-22 February 2003–Claremont Hotel, Berkeley, CA, USA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: KROLL INFORMATION ASSURANCE, LLC, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TIVERSA IP INC.;REEL/FRAME:043099/0908 Effective date: 20170606 |