SharedState 2.0
More Info
expand_more
Abstract
More and more devices are gaining some form of smartness either by sensing their environment on their own or by communication. An example of this is Smart Lighting, a field in which Chess Wise is active for over 6 years. By adding sensors and communication lighting can be controlled more efficiently. For example motion sensors to turn off lighting where no movement is detected, or a light level sensor to achieve the same light level throughout the day. This saves energy when natural light is available. Extending the wireless network with a gateway to the internet opens even more possibilities to control and monitor the wireless network. The technology used by Chess, called MyMesh, is a proprietary mesh network. One node is a small embedded device with limited resources. The MyMesh network is selforganizing. All nodes have the same function in the network. All nodes cooperate to get messages from node A to node B. Being selforganizing allows nodes to be added or removed at any time. By leveraging the communication between nodes their limited resources can be combined into a big shared resource. The MyMesh network currently uses an protocol, SharedState, to combine the limited memory capacity (cache) of the nodes. During communication nodes exchange memory items, called Tokens. By moving these tokens around each node has access to the combined memory space of the whole network. In this thesis a renewed algorithm is proposed that improves the overall storage capacity of the network. This renewed algorithm also scales better with the number of nodes compared to the current algorithm. SharedState used a probabilistic approach to transmit tokens and replace tokens in the cache. With the renewed algorithm per cache entry two additional fields (age, rx) are added. These fields are stored to calulate the informational value by Shannon[19]. The age field indicates how long ago the token was placed in the cache. The rx indicates how many times the token was received during that time. Using the age, rx and the average number of tokens received per round the informational value can be calculated. This informational value is higher for tokens that are received less often. Each round the cache is reordered saving the tokens with the highest informational value at the top. Tokens that do not fit in the local cache are discarded. These discarded tokens carry a low informational value. To transmit tokens the renewed algorithm uses the cache position as the probability of ending up in the transmit message. The higher the position in the cache, and the higher the informational value, the more likely a token is to end up in the transmit message. Using this new proposed algorithm the storage capacity now grows with the number of nodes. And more tokens are retained in smaller networks.