EP-4554189-B1 - DISTRIBUTED LEDGERS ON NETWORK GATEWAYS
Inventors
- KHAN, FARAZ
Dates
- Publication Date
- 20260513
- Application Date
- 20220311
Claims (12)
- A utility network comprising: a plurality of utility collectors (110a, 110b, 110c) connected to a backhaul network (150), wherein each of the plurality of utility collectors comprises a memory configured to store a copy of a distributed ledger; and a plurality of personal area networks, PANs, (114a, 114b, 114c), wherein each of the plurality of utility collectors is connected to a corresponding PAN and is configured to act as a PAN coordinator for a corresponding set of utility devices on the corresponding PAN, wherein: a first utility collector of the plurality of utility collectors is configured to: transmit (304), via the backhaul network, a request to join a distributed ledger system; receive (306), via the backhaul network, an approval indicating that a threshold proportion of the plurality of utility collectors approve of the request to join the distributed ledger system and a current state of the distributed ledger; instantiate (308) the copy of the distributed ledger of the first utility collector using the current state of the distributed ledger, wherein the current state of the distributed ledger comprises information about the plurality of PANs and the sets of utility devices; obtain a first network topology about utility devices associated with the first utility collector; store information about the first network topology in the distributed ledger; and wherein a second utility collector of the plurality of utility collectors joined to the distributed ledger system is configured to: responsive to transmitting one or more network pings to the first utility collector, identifying that the first utility collector is unresponsive; access, from the copy of the distributed ledger of the second utility collector, the information about the first network topology; identify, from the information about the first network topology, one more utility devices of the set of utility devices; cause the one or more utility devices to join a PAN of the second utility collector.
- The utility network of claim 1, wherein the second utility collector is further configured to: determine, from the copy of the distributed ledger of the second utility collector, a version of an application executing on the second utility collector; responsive to determining that the version is less than a current version, accessing an application update corresponding to the current version and applying the application update to the second utility collector; instantiate a new block indicating that the application update has been applied to the second utility collector; add the new block to the copy of the distributed ledger of the second utility collector; and transmit the new block to at least one other collector.
- The utility network of claim 1, wherein the distributed ledger comprises a plurality of blocks (210a, 210b, 210c), each block representing a transaction between one or more collectors or utility devices, the current state of the distributed ledger includes the plurality of blocks, and the first utility collector is configured to instantiate a new block identifying the approval and store the new block in the copy of the distributed ledger of the first utility collector.
- The utility network of claim 1, wherein the second utility collector is further configured to: update the copy of the distributed ledger of the second utility collector to reflect the joining; and transmit the update over the backhaul network.
- The utility network of claim 1, wherein the first utility collector is further configured to: receive a firmware update for a utility collector; determine, from the copy of the distributed ledger of the first utility collector, that the firmware update has not been applied to the first utility collector; apply the firmware update to the first utility collector; instantiate a new block indicating that the firmware update has been applied to the first utility collector; add the new block to the copy of the distributed ledger of the first utility collector; and transmit the new block to at least one other collector.
- A utility network comprising: a plurality of utility collectors (110a, 110b, 110c) connected to a backhaul network (150), wherein each of the plurality of utility collectors comprises a memory configured to store a copy of a distributed ledger (114a, 114b, 114c); and a plurality of personal area networks, PANs (120a, 120b, 120c), wherein each of the plurality of utility collectors is connected to a corresponding PAN and is configured to act as a PAN coordinator for a corresponding set of utility devices on the corresponding PAN, wherein: a first utility collector of the plurality of utility collectors is configured to: request (302), via the backhaul network, an encryption key; transmit (304), via the backhaul network, a request to join a distributed ledger system; receive (306), via the backhaul network, an approval indicating that a threshold proportion of the plurality of utility collectors approve of the request to join the distributed ledger system and a current state of the distributed ledger; decrypt, using the encryption key, the current state of the distributed ledger; instantiate (308) the copy of the distributed ledger of the first utility collector using the decrypted current state of the distributed ledger, wherein the current state of the distributed ledger comprises information about the plurality of PANs and the sets of utility devices; and wherein a second utility collector of the plurality of utility collectors joined to the distributed ledger system is configured to: receive a firmware update for a utility collector; determine, from the copy of the distributed ledger of the second utility collector, that the second utility collector is using a firmware version other than the firmware update; apply the firmware update to the second utility collector; instantiate a new block indicating that the firmware update has been applied to the second utility collector; add the new block to the copy of the distributed ledger of the second utility collector; and transmit the new block to at least one other collector.
- The utility network of claim 6, wherein the distributed ledger comprises a plurality of blocks, each block representing a transaction between one or more collectors or utility devices, the current state of the distributed ledger includes the plurality of blocks, and the first utility collector is configured to instantiate a new block identifying the approval and store the new block in the copy of the distributed ledger of the first utility collector.
- The utility network of claim 6, wherein the second utility collector is further configured to: responsive to transmitting one or more network pings to the first utility collector: identify that the first utility collector is unresponsive, instantiate a new block indicating that the first utility collector is unresponsive; and store the new block in the copy of the distributed ledger of the second utility collector, and transmitting the new block to at least one other collector
- The utility network of claim 8, wherein transmitting the new block over the backhaul network causes an additional utility collector to receive the new block and apply the new block to a respective copy of the distributed ledger.
- The utility network of claim 6, wherein transmitting the new block over the backhaul network causes an additional utility collector to determine, from the new block, that the firmware update is available and apply the firmware update to the additional utility collector.
- The utility network of claim 6, wherein the second utility collector of the plurality of utility collectors is further configured to, responsive to transmitting one or more network pings to the first utility collector: identify, from the copy of the distributed ledger of the second utility collector, the information about a first network topology of a PAN associated with the first utility collector; cause one or more of the set of utility devices within the PAN of the first utility collector to join the PAN of the second utility collector; update the copy of the distributed ledger of the second utility collector to reflect the joining; and transmit the update over the backhaul network.
- The utility network of claim 6, wherein the first utility collector is further configured to: receive a firmware update for a utility collector; determine, from the copy of the distributed ledger of the first utility collector, that the firmware update has not been applied to the first utility collector; apply the firmware update to the first utility collector; instantiate a new block indicating that the firmware update has been applied to the first utility collector; add the new block to the copy of the distributed ledger of the first utility collector; and transmit the new block to at least one additional collector.
Description
TECHNICAL FIELD This invention relates generally to resource distribution systems and more specifically to resource distribution systems in which network gateways use a distributed ledger system. BACKGROUND Modern resource distribution systems use networks of interconnected utility devices (e.g., utility meters) to measure consumption and propagate consumption data to a central system for billing and other purposes. Each utility device is typically connected to part of a communications network (e.g., a wireless mesh network) and each part of a communication network is managed by a utility collector. In turn, the utility collectors aggregate data and pass the data to a central system for billing and other purposes. US2020/266989 A1 describes an ad-hoc network comprising a configurator device and a plurality of nodes, wherein each node can be in different states comprising at least a non-commissioned state (NC), a commissioned state and a trust ring member state (TR). "BCTrust: A decentralized authentication blockchain-based mechanism" (Hammi Mohamed et al, 2018 IEEE Wireless Communications and Networking Conference (WCNC), IEEE, 15 April 2018) describes a blockchain-based authentication mechanism called BCTrust, for devices with computational, storage and energy consumption constraints. "Transparent Coordinator failure recovery for ZigBee networks (Kolln R et al, 2009 IEEE Conference on Emerging Technologies & Factory Automation: EFTA 2009, 22-29 September 2009) describes a backup solution for coordinator nodes that is implemented at the application level. WO2021/036545 A1 describes a smart contract-based data processing method comprising receiving a firmware update request for a first server node; invoking a smart contract according to the firmware update request, and acquiring, from a block chain and on the basis of the smart contract, a firmware version update record and a firmware version release record associated with the first server node. SUMMARY Certain aspects and features include techniques for using a distributed ledger within a resource distribution system. In an example, a utility network includes utility collectors that are connected to a backhaul network. Each of the utility collectors includes a memory configured to store a copy of a distributed ledger. The utility network includes personal area networks (PANs). Each of the utility collectors is connected to a corresponding PAN and is configured to act as a PAN coordinator for a corresponding set of utility devices on the corresponding PAN. A first utility collector of the utility collectors is configured to request an encryption key via the backhaul network. The first utility collector is configured to transmit a request to join a distributed ledger system via the backhaul network. The first utility collector is further configured to receive, via the backhaul network, an approval indicating that a threshold proportion of the utility collectors approve of the request to join the distributed ledger system and a current state of the distributed ledger. The first utility collector is further configured to instantiate the copy of the distributed ledger of the first utility collector using the current state of the distributed ledger, wherein the current state of the distributed ledger includes information about the PANs and the sets of utility devices. The first utility collector is further configured to obtain information about the utility devices associated with the first utility collector. The first utility collector is further configured to encrypt the information about the utility devices associated with the first utility collector with the encryption key and store the information in the distributed ledger. A second utility collector is further configured to identify that a particular utility collector of the utility collectors is unresponsive. The second utility collector is further configured to identify, from the copy of the distributed ledger of the second utility collector, the set of utility devices within a PAN of the unresponsive utility collector. The second utility collector is further configured to cause one or more of the set of utility devices within the PAN of the unresponsive utility collector to join the PAN of the second utility collector. The second utility collector is further configured to update the copy of the distributed ledger of the second utility collector to reflect the joining. The second utility collector is further configured to transmit the update over the backhaul network. In another aspect, a utility network includes utility collectors that are connected to a backhaul network. Each of the utility collectors includes a memory configured to store a copy of a distributed ledger. The utility network includes personal area networks (PANs). Each of the utility collectors is connected to a corresponding PAN and is configured to act as a PAN coordinator for a corresponding set of utility devices on the corresponding P