In recent times, there has been an explosion in the number of smart devices, which when connected to heterogeneous computing platforms, offer a variety of services. With the help of the growth in Internet connectivity, these devices offer a rich interactive experience and have played a pivotal role in the emergence of the Internet of Things (IoT) paradigm. The Global Data Plane (GDP) project, developed at Berkeley’s Swarm Lab, aims to provide a unified network and data storage platform for constructing IoT applications. These applications are composed of a variety of sensors and actuators running on different computing platforms. The goal of the GDP is then to provide a middleware interface that can help in the communication between these entities. The intent is for the GDP to be deployed on a large, geographically distributed collection of heterogeneous computing nodes. Sensors and actuators will communicate with nearby nodes, potentially acting as gateways, and data can in principle be placed on any storage server within the system depending on the user’s needs. In order to achieve this vision, an efficient, robust, and flexible means of routing between GDP entities must be implemented. Such a routing mechanism is the focus of this work. In this report, we introduce a new GDP programmable router design implemented completely in software. These routers have been implemented using the Click Modular Router Platform. They are responsible for making the GDP a distributed system that can make IoT applications scalable. The routers have been designed to create a hierarchical routing network, in which users are allowed to create their own local subnetworks composed of heterogeneous IoT devices and services. These local subnets may also reside behind firewalls or NAT-enabled routers for security purposes. In order to allow interaction between different private networks, our routers also form a common global network. The router nodes in this global network serve as relays to the ones residing in the local subnets created by users. Thus, using these routers we aim to create a self-organizing network, which can interconnect smart devices and storage servers.




Download Full History