A method in a client device, comprising: disseminating, by said client device (106, 108) over an Information Centric Network, ICN, at least one Interest for reading a set of replicas of a variable, wherein a respective Interest comprises a data accessing command, the data accessing command being a read operation for reading a value corresponding to a replica of the variable, and comprises a name that includes a routable name prefix associated with the replica variable and any replica server that hosts the replica variable, wherein a value is a state of the variable; receiving a set of Content Objects that satisfy the at least one Interest, wherein a respective Content Object includes a local value for a respective replica variable hosted by the respective replica server returning a Content Object; determining whether an authoritative value exists for the variable based on the local values in the set of Content Objects, wherein determining whether an authoritative value exists involves: determining, from the set of Content Objects that satisfy the Interest, a largest set of similar values for the variable; and determining whether the number of similar values in the largest set is greater than or equal to a minimum quorum threshold, an authoritative value only existing if the number of similar values in the largest set is greater than or equal to the minimum quorum threshold; and responsive to determining that an authoritative value does not exist, rolling back a state for a copy of the variable hosted by the client device to a previous state based on Variable History hosted by the client device that includes the historical and current states of the copy of the variable hosted by the client device. disseminating, by said client device (106, 108) over an Information Centric Network, ICN, at least one Interest for reading a set of replicas of a variable, wherein a respective Interest comprises a data accessing command, the data accessing command being a read operation for reading a value corresponding to a replica of the variable, and comprises a name that includes a routable name prefix associated with the replica variable and any replica server that hosts the replica variable, wherein a value is a state of the variable; receiving a set of Content Objects that satisfy the at least one Interest, wherein a respective Content Object includes a local value for a respective replica variable hosted by the respective replica server returning a Content Object; determining whether an authoritative value exists for the variable based on the local values in the set of Content Objects, wherein determining whether an authoritative value exists involves: determining, from the set of Content Objects that satisfy the Interest, a largest set of similar values for the variable; and determining whether the number of similar values in the largest set is greater than or equal to a minimum quorum threshold, an authoritative value only existing if the number of similar values in the largest set is greater than or equal to the minimum quorum threshold; and determining, from the set of Content Objects that satisfy the Interest, a largest set of similar values for the variable; and determining whether the number of similar values in the largest set is greater than or equal to a minimum quorum threshold, an authoritative value only existing if the number of similar values in the largest set is greater than or equal to the minimum quorum threshold; and responsive to determining that an authoritative value does not exist, rolling back a state for a copy of the variable hosted by the client device to a previous state based on Variable History hosted by the client device that includes the historical and current states of the copy of the variable hosted by the client device.