# A Review on Internet of Things for Defense and Public Safety
## 5 Building IoT for Tactical and Emergency Environments
### Computation
#### 5.4.2 Cloud Platforms  
Connected devices need mechanisms to store, process, and retrieve data efficiently. However, the amount of data collected in an IoT deployment may exceed the processing power of regular hardware and software tools. Moreover, IoT applications have to able to detect patterns or anomalies in the data when processing large amounts of data. The emerging and developing technology of cloud computing is defined by the U.S. National Institute of Standards and Technology (NIST) as an access model to an on-demand network of shared configurable computing sources. Cloud computing enables researchers to use and maintain many resources remotely, reliably and at a low cost. The storage and computing resources of the cloud present the best choice for the IoT to store and process large amounts of data. There are some platforms for big data analytics like Apache Hadoop and SciDB [133]. The DoD is also trying to accelerate the adoption of commercial clouds [134]. The cloud security model [101] defines six information impact levels from 1 (public information) to 6 (classified information up to secret). As of May of 2015, there were 26 Level 2 (Unclassified, Low-Impact) commercial cloud services approved with more on the way. Regarding Level 4/5 (Controlled Unclassified Information), there were one milCloud [135] and one commercial cloud solution with more on the way. With respect to Level 6, there was one milCloud. In term of resources, besides the powerful servers in data centers, a lot of smart devices around us offer computing capabilities that can be used to perform parallel IoT data analytic tasks. Instead of providing applications specific analytics, IoT needs a common big data analytic platform which can be delivered as a service to IoT applications. Such an analytic service should not impose a considerable overhead on the overall IoT ecosystem. The three most popular cloud paradigms are Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). Their structure and corresponding security risks are represented in Figure 13.  
A scalable analytic service for time series data, Time Series analytics as a Service (TSaaaS) is presented in [136]. Pattern searching in TSaaaS can support effective searching on large amounts of  
Figure 13: Cloud paradigms: security inheritance and risks. time series data with very little overhead on the IoT system. TSaaaS is implemented as an extension to the Time Series Database service and it is accessible by RESTful web interfaces. Pattern searches are 10-100 times faster than other existing techniques, and the additional storage cost for the service provider accounts for only about 0.4% of the original time series data. Other feasible solution for IoT big data is to just keep track of the interesting data. Existing approaches include Principle Component Analysis (PCA), pattern reduction, feature selection, dimensionality reduction, and distributed computing methods [133]. IoT can use numerous cloud platforms with different capabilities and strengths such as Google Cloud, AWS [137; 138], Bluemix IoT Solutions [139], GENI, ThingWorx, OpenIoT, Arkessa, Axeda, Etherios, LittleBits... besides PS providers such as Avaya, Huawei Enterprise, West, or Microsoft. For example, Xively [140] provides an open source PaaS solution for IoT application developers and service providers. It aims to securely connect devices to applications in real-time, it exposes accessible Application Programming Interfaces (APIs), and it provides interoperability with many protocols and environments. It enables the integration of devices with the platform by libraries and facilitates communication via HTTP(s), Websocket, or MQTT. It integrates with other platforms using Python, Java, and Ruby libraries; and distributes data in numerous formats such as JSON, XML and CSV [141]. It also allows users to visualize their data graphically and to remotely control sensors by modifying scripts to receive and send alerts.