Senior Researcher, XLAB
A more or less clear definition of what a cloud is recognised by the wider scientific, industrial and consumer community: a set of servers, or services, one can access without regard for where they are physically located or executing. A recent development in the research and, even more so, in the commercial space is the introduction of so-called IoT-enabled cloud platforms. There exist a multitude different solutions, most prominent of them provided by the Big Three cloud providers: Azure IoT, AWS IoT and Google Cloud IoT.
While these solutions come with significant industrial backing, they may not be completely compatible with a solution one might want to develop. In a real-world example of the Smart Boat service we are developing, such a solution is too constrained for the features we would like to offer. The most prominent issues that arise are that devices presume constant connection to the cloud, control over generated data is diminished as everything is transmitted directly to the cloud and that there seems to be no way to communicate between nodes in geographic proximity. Enter: mF2C.
What mF2C provides is an extension of the cloud into the fog, which alleviates, if not completely solves the aforementioned issues. Services are provided through a hierarchical infrastructure with the topmost layer not necessarily being connected to the cloud, which means that a set of functionalities, albeit limited, can still be available without a connection to the global internet. Data is under complete control of the application with appropriate privacy agreements in place to limit sensitive data exposure to the lowest common denominator and is able to be transferred between positionally adjacent nodes not through the cloud, but through an intermediate layer which reduces latency and eases any data transfer charges that might be necessary for cloud communication.
An aspect that both cloud-based IoT platforms and mF2C share is the ability of edge computation. This is an important tool for applications wanting to optimise computation by allocating it to the most appropriate nodes, whether that be judging by geographical proximity, computing power, latency or a pure monetary metric. This might mean that mission-critical computation gets executed quicker at the expense of battery power, or periodic, larger-scale computation gets executed on a node with sufficient capabilities to perform the job in an acceptable time. What the current major IoT cloud providers don’t offer, however, is the ability to perform those computations without a connection to the cloud, which is, especially for the application of the Smart Boat, a deal-breaker when choosing frameworks to deploy the application on top of.
[The Smart Boat mF2C application in use on a sailing ship.]
The Smart Boat application can take advantage of the listed benefits of mF2C to provide roaming-like behavior with requested services being executed and data being shared between nearby boats. Collected data remains private as we can define data sharing policies that limit and potentially anonymise transmitted data, while keeping data transmission paths as local as possible. An additional feature we aim to develop is data sharing through alternative networks, such as LoRa, which would allow long-distance communication between boats and potential multi-hop data submission to the cloud.
We have identified a gap that mF2C provides a solution for and that existing major cloud-IoT players do not address: unreliable connections and data privacy with edge computation. The solutions mF2C provides are used in the Smart Boat application, developed by XLAB, to increase communication reliability and deployment scenario flexibility in maritime scenarios, already tested in scenarios with real-world boats.
[Presenting the Smart Boat application deployment on a testbed.]
Our ongoing work will be presented at the IEEE UCC conference in the paper “Maritime IoT solutions in Fog and Cloud”, which describes the mF2C framework, our integrations and the functionalities of our application in detail. Presentations of all three use cases using mF2C will also shortly be uploaded to the official mF2C YouTube channel, featuring an in-depth view into actual usage of the applications.