Shared information distribution in a computer network
First Claim
1. A method comprising:
- pushing, by a computer network device, a first message of availability of new configuration information to first neighboring devices, wherein the first message of availability of new configuration information includes a version number of the new configuration information and a first hash of the new configuration information, the new configuration information being a new configuration file for configuring the first neighboring devices, second neighboring devices, and an added device;
checking, by the first neighboring devices in response to the first message, the version number of the new configuration information;
pulling, by the first neighboring devices in response to the first message, the new configuration file containing the new configuration information when the first neighboring devices have configuration information with a different version number than the version number of the new configuration information;
pushing a second message from the first neighboring devices that pulled the new configuration information to the second neighboring devices of the first neighboring devices other than the computer network device, the second message indicating availability of new configuration information for configuring the second neighboring devices, wherein the second message of availability of new configuration information includes the version number of the new configuration information and the first hash of the new configuration information;
failing, by the first neighbor devices, to perform the pulling of the new configuration information and pushing the second message when the first neighboring devices have the new configuration information prior to receiving the first message;
pulling, by the second neighboring devices in response to the second message, the file containing the new configuration information when the second neighboring devices do not have the new configuration information;
pushing, by one of the second neighboring devices to the added device in response to discovery of the added device, a third message of availability of the new configuration information for the added device, wherein the third message of availability of new configuration information includes the version number of the new configuration information and the first hash of the new configuration information; and
pulling the file containing the new configuration information by the added device from the one of the second neighboring devices in response to the third message.
1 Assignment
0 Petitions
Accused Products
Abstract
In one implementation, a protocol for dissemination of information, such as configuration information, in a computer network is provided. The dissemination of the payload or content is separated from the dissemination of the fact that a new revision of that payload or content exists. The availability of a new revision of the payload or content is signaled prior to the transfer. Only nodes receiving the notice of existence of the new revision and requesting the new revision receive the payload or content. While the payload or content revision notifications potentially arrive at a receiving node from many different neighbors, the payload or content is only requested once by the receiving node and transmitted once over links between neighbors. This scheme may result in low end-to-end delays and in resiliency.
-
Citations
19 Claims
-
1. A method comprising:
-
pushing, by a computer network device, a first message of availability of new configuration information to first neighboring devices, wherein the first message of availability of new configuration information includes a version number of the new configuration information and a first hash of the new configuration information, the new configuration information being a new configuration file for configuring the first neighboring devices, second neighboring devices, and an added device; checking, by the first neighboring devices in response to the first message, the version number of the new configuration information; pulling, by the first neighboring devices in response to the first message, the new configuration file containing the new configuration information when the first neighboring devices have configuration information with a different version number than the version number of the new configuration information; pushing a second message from the first neighboring devices that pulled the new configuration information to the second neighboring devices of the first neighboring devices other than the computer network device, the second message indicating availability of new configuration information for configuring the second neighboring devices, wherein the second message of availability of new configuration information includes the version number of the new configuration information and the first hash of the new configuration information; failing, by the first neighbor devices, to perform the pulling of the new configuration information and pushing the second message when the first neighboring devices have the new configuration information prior to receiving the first message; pulling, by the second neighboring devices in response to the second message, the file containing the new configuration information when the second neighboring devices do not have the new configuration information; pushing, by one of the second neighboring devices to the added device in response to discovery of the added device, a third message of availability of the new configuration information for the added device, wherein the third message of availability of new configuration information includes the version number of the new configuration information and the first hash of the new configuration information; and pulling the file containing the new configuration information by the added device from the one of the second neighboring devices in response to the third message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. Logic encoded in one or more non-transitory computer-readable media that includes code for execution and when executed by a processor is operable to perform operations comprising:
-
receiving, at a computer node of a network, a first revision message indicating availability of new configuration information for configuring a node in the network from a first adjacent node in the network, wherein the first revision message includes a version number for the new configuration information and a hash of a file; requesting, by the computer node and from the first adjacent node, a file in response to the first revision message; flooding adjacent nodes to the computer node, other than the first adjacent node, with a second revision message indicating availability of the new configuration information for configuring the node in the network, wherein the second revision message includes the version number for the new configuration information and the hash of the file; transmitting, by the computer node of the network, the file to the adjacent nodes in response to a request responsive to the second revision message and from the adjacent nodes; and transmitting, by one of the adjacent nodes, the file to an added node in the network in response to the discovery of the added node in the network. - View Dependent Claims (11, 12, 13, 14)
-
-
15. An apparatus comprising:
-
a memory operable to store a file of shared information about configuring a network node, wherein the file has a version number for the shared information; and a processor configured to pull the file in response to a received communication about a revision to the file, wherein the received communication includes the version number for the shared information, to disseminate revision information about the revision, to transmit the file based on a request in response to the dissemination of the revision information, and to transmit the file in response to the discovery of an added node of a network to which the processor belongs. - View Dependent Claims (16, 17, 18, 19)
-
Specification