The Network Manager is the key LinkSmart component responsible for network management. It is in charge of providing a transparent view of the nodes in the application and to route the data to the appropriate node within the private LinkSmart P2P network, across fire wall boundaries.
The Network Manager is the entry and exit point of information of the LinkSmart middleware. There is only one Network Manager per gateway or node where the middleware is deployed. The Network Manager provides a web service interface which is the information entry point for the middleware. Data transferred between LinkSmart-enabled devices and gateways should always pass through the Network Manager.
The Network Manager is based on P2P and SOAP tunnelling combined with Web Services. It takes advantage of the peer-to-peer architecture to create a LinkSmart P2P overlay network and to allow the discovery of other IoT-enabled devices in other locations.
The LinkSmart P2P overlay network creates a secured private network with its own addressing scheme that can cross NAT-borders and firewalls. It also handles the Virtual Addresses (LinkSmart IDs) which is the base for the overlay network addressing scheme. Each endpoint/service that is available in the overlay network has its own unique virtual address.
The Network Manager exposes services for creating and searching for virtual addresses, each virtual address can be associated with metadata to facilitate searching. Finally, it is in charge of synchronizing the nodes in the network with referential time.
In this way the Network Manager creates the “virtual” Internet of Things network upon which external components can operate.
As indicated in the figure LinkSmart will need a special node for managing the P2P network and this node is usually referred to as the supernode. The supernode is responsible for creating connections for communication in-between Network Managers that are not directly addressable on the internet, i.e. behind a firewall or on a NAT network. The supernode should be installed on a public ip-address. If the LinkSmart network is only a local network the supernode is not needed since the network managers will find each other automatically.
See Use case – Setting up an Event Subscription using the Network Manager and Event Manager for a description with code examples on Network Manager usage.