IP Library Granted Patent US 7,961,741
Granted Patent B2
US 7,961,741 · App. 12/257,077 · Granted Jun 14, 2011

Rapid dissemination of bulk information to widely dispersed network nodes

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,961,741
App. No.
12/257,077
Granted
Jun 14, 2011
Kind
B2
Abstract

Bulk information is transferred to nodes in a communication network having a plurality of widely dispersed nodes. The information can be an image, content, or configuration information. The information is uni-cast to a selection of nodes by a central node or server, to seed the information at certain nodes in the network. The information is then distributed by these seed nodes to every other node in the network. A first algorithm selects which nodes should be seeded with information by the central node. A second algorithm distributes information in the network on a query basis.

Claims (56)

1. A method of disseminating information from a central location to nodes in a network, comprising:

selecting a node in the network as a seed node and transferring the information to the seed node for storage therein;

sending a notification message from the central location to non-seed nodes in the network, informing them of the availability of said information for download from one or more seed nodes;

from each non-seed node in the network that is to receive the information, sending an information transfer request to an established number of neighbor nodes;

in the event the information is not located at one of said neighbor nodes in response to the transfer request sent to the established number of neighbor nodes after a defined wait interval, sending an information transfer request to a successively increasing number of neighbor nodes, until either the information is located at a neighbor node or a search threshold is reached; and

in the event the information is located, downloading the information from a neighbor node.

2. The method of claim 1 , wherein the established number of neighbor nodes is determined on the basis of a metric.

3. The method of claim 2 , wherein said metric is related to the quality of a connection to a neighbor node.

4. The method of claim 2 , wherein said metric is related to the amount of traffic being handled by the neighbor node.

5. The method of claim 1 , wherein the step of increasing the set of neighbor nodes that are sent the transfer request occurs after a plurality of said transfer requests are repeatedly sent a predetermined number of times to said established number of neighbor nodes.

6. The method of claim 1 , further including the step of increasing the wait interval in conjunction with increasing the set of neighbor nodes that are sent the transfer request.

7. A method of distributing information to nodes in a network, comprising:

selecting a node in the network as a seed node and storing the information in the seed node;

notifying all non-seed nodes in the network of the availability of said information for download from one or more seed nodes;

from each non-seed node in the network that is to receive the information, sending an information transfer request to an established number of neighbor nodes;

in the event the information is not located at one of said neighbor nodes in response to the transfer request sent to the established number of neighbor nodes after a defined wait interval, sending an information transfer request to a successively increasing number of neighbor nodes, until either the information is located at a neighbor node or a search threshold is reached;

in the event the information is located, determining whether the link quality to the node with the information is above a link quality threshold;

downloading the information if the link quality is above the link quality threshold; and

continuing to transmit requests for the information in the event the link quality is not above the link quality threshold.

8. A method of disseminating information from a central location to nodes in a network, comprising:

selecting a node for seeding by:

selecting a candidate node from a list of nodes in the network;

if the selected candidate node has less than a first preset threshold of other nodes which route through the selected candidate node to an access point of the network, and

if the selected candidate node has more than a second preset threshold of neighbor nodes with a link quality above a preset link quality threshold, designating the selected candidate node as a node for receiving a seed of the information;

transferring the information from the central location to the designated node in the network for storage therein;

sending a message from the central location to other nodes in the network, informing them of the availability of new information;

sending an information transfer request from each of said other nodes to a plurality of neighbor nodes to locate the information; and

in the event the information is located, downloading the information to the requesting node.

9. The method of claim 8 , further including the step of determining whether the selected candidate node has a traffic congestion level less than an established value, and designating the selected candidate node as a node for receiving a seed only if the traffic congestion level is less than said established value.

10. The method of claim 8 , wherein said steps of selecting a node for seeding are performed for a plurality of candidate nodes, until a predetermined percentage of all nodes that are to receive the information have been designated as nodes for receiving a seed of the information.

11. A method of distributing information in a network, comprising:

selecting a node for seeding by:

selecting a candidate node from a list of nodes in the network;

if the selected candidate node has less than a first preset threshold of other nodes which route through the selected candidate node to an access point of the network, and

if the selected candidate node has more than a second preset threshold of neighbor nodes with a link quality above a present link quality threshold, designating the selected candidate node as a node for receiving a seed of the information;

storing the information at the designated node in the network;

informing other nodes in the network of the availability of new information;

sending an information transfer request from each of said other nodes to a plurality of neighbor nodes to locate the information;

in the event the information is located, downloading the information to the requesting node; and

in the event the information is not located in response to the transfer request sent to said plurality of neighbor nodes after a defined wait interval, sending an information transfer request to a successively increasing set of neighbor nodes, until either the information is located at a neighbor node or a search threshold is reached.

12. A method of disseminating information from a central location to nodes in a network, comprising:

selecting at least one node in the network as a seed node and transferring the information from the central location to the seed node for storage therein;

from each of a plurality of other nodes, sending an information transfer request to a plurality of neighbor nodes to locate the information; and

in the event the information is located, downloading the information by:

sending a request for a portion of the information starting at an established offset value,

downloading the requested information portion,

waiting a predefined period of time after receipt of the requested information portion before sending a request for an additional portion of the information.

13. A method of distributing information in a network, comprising:

selecting at least one node in the network as a seed node and storing the information in the seed node;

from each of a plurality of other nodes, sending an information transfer request to a plurality of neighbor nodes to locate the information;

sending a synchronization message to a plurality of nodes requesting the information, the synchronization message specifying a given channel in a frequency hopping spread spectrum network via which the information is to be transmitted from a given seed node;

receiving, at a plurality of requesting nodes tuned to said given channel, a packet containing the requested information portion; and

downloading the information by:

sending a request for a portion of the information starting at an established offset value,

downloading the requested information portion,

waiting a predefined period of time after receipt of the requested information portion before sending a request for an additional portion of the information.

Assignments (3)
CHANGE OF NAME Recorded Feb 1, 2018
From: SILVER SPRING NETWORKS, INC.
To: ITRON NETWORKED SOLUTIONS, INC.
Reel/Frame 045221/0804 →
SECURITY INTEREST Recorded Jan 8, 2018
From: ITRON, INC.; ITRON NETWORKED SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 045017/0893 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2008
From: GREUNEN, JANA VAN; FILIPPO, WILLIAM SAN, III; HUGHES, STERLING
To: SILVER SPRING NETWORKS, INC.
Reel/Frame 022045/0469 →