Adaptive gossip protocol
US-2017026468-A1 · Jan 26, 2017 · US
US11245757B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11245757-B2 |
| Application number | US-201816767559-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 19, 2018 |
| Priority date | Nov 27, 2017 |
| Publication date | Feb 8, 2022 |
| Grant date | Feb 8, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method of propagating data packets in a network of nodes is disclosed. The method, implemented at one of the nodes, includes: generating at least one data packet of a first type; collecting a set of data packets of the first type during a first time period, the set including the at least one generated data packet and at least one data packet of the first type received from one or more first nodes in the network; and for each data packet in the set: randomly select two or more neighbouring nodes connected to said one of the nodes; transmit, to each of the two or more selected neighbouring nodes: the data packet, wherein the two or more selected neighbouring nodes are configured to relay the data packet to one or more second nodes in the network using a mode of data propagation that is arbitrarily selected for that neighbouring node. The invention is particularly suited for implementation on a blockchain network such as, for example, the Bitcoin blockchain.
Opening claim text (preview).
The invention claimed is: 1. A node to propagate data packets in a network of nodes, each node in the network having one or more connections to other nodes, the node comprising: a processor; a network interface to provide network connectivity; and memory including processor-executable instructions that, when executed by the processor, cause the processor to: generate at least one data packet of a first type; collect a set of data packets of the first type during a first time period, the set including the at least one generated data packet and at least one data packet of the first type received from one or more first nodes in the network; and for each data packet in the set: arbitrarily select two or more neighbouring nodes connected to the node; and transmit the data packet to each of the two or more selected neighbouring nodes, wherein the two or more selected neighbouring nodes are configured to relay the data packet to one or more second nodes in the network using a mode of data propagation that is randomly selected for that neighbouring node. 2. The node claimed in claim 1 , wherein the first time period has a predefined length. 3. The node claimed in claim 1 , wherein the instructions, when executed, cause the processor to perform the transmitting in response to determining that a triggering condition has been met. 4. The node claimed in claim 3 , wherein the triggering condition comprises expiry of a predetermined duration since a time of generation of the at least one data packet of the first type by the node. 5. The node claimed in claim 3 , wherein the triggering condition comprises expiry of a predetermined duration since a time of receipt of a first of the at least one data packet of the first type from the one or more first nodes. 6. The node claimed in claim 3 , wherein the triggering condition comprises a number of data packets collected during the first time period reaching a threshold number. 7. The node according to claim 1 , wherein the mode of data propagation for a neighbouring node is arbitrarily selected between a first mode and a second mode, wherein: in the first mode, the data packet is relayed to an arbitrarily selected subset of nodes that are connected to the neighbouring node; and in the second mode, the data packet is relayed to all nodes connected to the neighbouring node. 8. The node according to claim 1 , wherein the instructions, when executed, prevent the processor from transmitting any data packets of the first type during the first time period. 9. A computer-implemented method of propagating data packets in a network of nodes, each node in the network having one or more connections to other nodes, the method, implemented at one of the nodes, comprising: generating at least one data packet of a first type; collecting a set of data packets of the first type during a first time period, the set including the at least one generated data packet and at least one data packet of the first type received from one or more first nodes in the network; and for each data packet in the set: arbitrarily select two or more neighbouring nodes connected to said one of the nodes; and transmit the data packet to each of the two or more selected neighbouring nodes, wherein the two or more selected neighbouring nodes are configured to relay the data packet to one or more second nodes in the network using a mode of data propagation that is randomly selected for that neighbouring node. 10. The method of claim 9 , wherein the transmitting is performed in response to determining that a triggering condition has been met. 11. The method of claim 10 , wherein the triggering condition comprises expiry of a predetermined duration since the time of generation of the at least one data packet of the first type by said one of the nodes. 12. A processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in one of the participating nodes, cause the processor to carry out the method claimed in claim 11 . 13. The method of claim 10 , wherein the triggering condition comprises expiry of a predetermined duration since the time of receipt of a first of the at least one data packet of the first type from the one or more first nodes. 14. A processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in one of the participating nodes, cause the processor to carry out the method claimed in claim 13 . 15. The method of claim 10 , wherein the triggering condition comprises the number of data packets collected during the first time period reaching a threshold number. 16. A processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in one of the participating nodes, cause the processor to carry out the method claimed in claim 15 . 17. A non-transitory processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in one of the participating nodes, cause the processor to carry out the method claimed in claim 10 . 18. The method of claim 9 , further comprising preventing transmission of any data packets of the first type during the first time period. 19. A processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in one of the participating nodes, cause the processor to carry out the method claimed in claim 18 . 20. A non-transitory processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in one of the participating nodes, cause the processor to carry out the method claimed in claim 9 .
using e-cash · CPC title
Multipoint routing · CPC title
Network security protocols · CPC title
using hash chains, e.g. blockchains or hash trees · CPC title
involving time stamps, e.g. generation of time stamps · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.