A Survey on the Internet of Things Software

The Internet of Things (IoT) is a concept and a paradigm that considers the pervasive presence in the environment of a variety of things/objects through wired or wireless that are uniquely addressed and are able to interact with each other and cooperate with other things/objects in order to create new applications/services and to achieve common objectives. IoT defines a new world where the real, the digital and the virtual converge to create an environment that makes the energy, transport, city, and many other areas to become more intelligent. The IoT purposed is to validate the connection type: anytime, anywhere, and everything and everyone. IoT may be considered as a network of physical objects with embedded communication technologies that 'feel' or interact with internal or external environment. This paper presents a survey on the Internet of Things software architectures that meets the requirements listed above. Keywords—middleware; Internet of Things; things; software architecture


INTRODUCTION
The Internet of Things is a paradigm that is included in the Internet of the Future.According to the International Telecommunication Union (ITU) [1], the Internet of Things will connect the world's objects, both in sensory and intelligent way.The ITU proposed an Internet of Things ecosystem that included all things from everyday live.
The Ecosystem proposed by ITU [1] can be represented according to the Fig. 1 [2].The scanners are used to identify the things (by labels or RFID tags).These scanners can transmit the locations of the things to the others systems (upper layer).Middleware systems and development tools can be used to design applications and services that use the information from the things.This information can be stored in the cloud and can be accessed through the Internet providing greater flexibility of the services.
Currently, there is no definition for the Internet of things [3] accepted by the scientists.Because the terms Internet of Things is widely and increasingly used, in the specialized literature can be found several definitions of the IoT.A definition of the IoT is the following [4]: "global network of interconnected objects that are unique addressable based on the standard communication protocols."Another definition is provided by Atzori et al [5] that included the services provided by the things with virtual identity and the capability to communicate in the virtual environment.Other definitions and models can be found in [6]- [10].
The Internet of things includes the existing technologies such as Machine-to-Machine (M2M) [11], [12], wireless sensor networks (WSN), RFID, embedded systems, etc.The challenges of the Internet of Things are [6]- [10]: data confidentiality and encryption, security, safety, information privacy, standardization, naming, and identity.
The paper is organized as follows: Section II presents the IoT architectures presented in the specialized literature, and the conclusions are drawn in section III.

II. THE IOT ARCHITECTURES
This section will be an overview of the variously proposed architectures for IoT.Fig. 2 presents an IoT model which can have up to five layers and different names of the layers.The perception layer (Layer 1) [14] represents the sense organs of the IoT and deals, mainly, with objects identification and data collection.The perception layer includes 2-D barcodes tag readers, RFID tags and appropriate readers/inscriptions, cameras, GPSs, sensors, terminals, sensor networks, etc.Its main task is to identify the object and collect information.In [15], Layer 1 is called the sensing layer and is similar to the perception layer in [14] but it is proposed as an innovative fusion between RFID and wireless sensor networks (WSN) called EPC sensor networks.It has the same meaning and name as the sensor layer in [16], indicating that it defines an additional base station.Another name for Layer 1 is given in [19], namely the device layer with the two basic elements: gateway and device.
The next layer is Layer 2 called transport layer in [14].Its main function is the transmission and processing of end-to-end information in a reliable or unreliable way.Another name given to this layer [14] is the network layer.The authors define this layer as a neural network that represents the brain of the IoT and includes a network convergence for communication, the Internet, a network management center, an information center and an intelligent processing, etc. Layer 2 is called the core layer in [16] which mainly includes the network access and the Internet.Another name of this layer can be found in [17] as the gateway layer.This layer establishes a communication channel for heterogeneous sensors and RFIDs, which is the next layer, namely the middleware.
The next layer, Layer 3, has been called the processing layer in [14] and, mainly, it stores, analyses and processes the information related to items received from Layer 2. In [17], Layer 3 is called the middleware layer.This is the layer where the IoT systems run.In order to modularize the physical objects, a proxy can map the messages of the objects to their logical components from the middleware.
Software components in execution are virtual representations of services and physical objects.The proxy is connected to servers for applications, ontology, lookup, database and management.A very similar model to the one proposed in [14] is proposed in [18].This has all five layers, but the process layer is changed with the middleware layer.
Another name for Layer 3 is given in [19] where this layer is called the service support and application support layer that provides generic capabilities for all IoT applications (e.g.processing and data storage) and capabilities specific to various applications.Layer 4, the application layer, contains IoT applications [19].Layer 5 is the business layer.As it is well known, the success of a technology depends not only on the priority of technology, but also on reasonable innovation in the business model [14].The models presented so far are a little vague and do not yet provide a complete standardization (concrete implementations are not shown).The architecture presented in Fig. 2 can be a starting point for the standardization process.Below, we make a brief presentation of other approaches related to the IoT architecture.
In [20], the authors highlight the need for a transparent and standardized end-to-end architecture in order to replace proprietary approaches.Thus, for the physical layer, they opted for IEEE 802.15.4-2006PHY.From the MAC perspective, for the MAC layer, the IEEE 802.15.4 was used.
The MAC protocol of this new family is tailored for multihop/mesh industrial applications under extreme interference and attenuation (fading).From the network perspective, the introduction of the IETF 6LoWPAN family of protocols has an essential role in connecting low-power radio devices to the Internet and the working group from IETF ROLL introduced appropriate routing protocols to achieve universal connectivity.Indeed, the two working groups worked for IPv6 connectivity, which is a great advantage in ensuring worldwide accessibility, true scalability and reliable security.From an application perspective, the introduction of the CoAP IETF protocols family had an essential role in ensuring that the application layer and the applications themselves must be redesigned to run on networks with low power consumption.A similar architecture to that described in [20] (that is based on WSN -Wireless Sensor Network, CoAP and REST) is found in [21].Here, the authors implement and evaluate the model, which includes Linux, Contiki, as well as Linux service to integrate with the Hadoop HBAs data store.
In the vision of IoT-A project [22], the Internet of Things is based on the fact that the interoperability of the solutions for both the communication and the services must be provided on various platforms.This justifies, firstly, the creation of a reference model for the IoT domain, in order to promote a common approach.Secondly, companies that want to create their own IoT compatible solutions must be sustained by a reference architecture that describes the essential constituents and the choices related to designing support in order to meet contradictory requirements in terms of functionality, performance and security implementation.The central choice for the IoT-A project was to base the work on actual "state of art" techniques, rather than on the use of new technologies.In [23] the authors provide a brief description throughout the state of art in IoT, with a special focus on the concepts and technologies related to mobility, communication and wireless networking.The authors concluded that although the concept of IoT has some years, there are still many technical problems that were not solved such as heterogeneity, scalability, security, connectivity, energy, management, naming and identification.The complexity of these issues, especially concerning the nature of resource constraints in most IoT components and the use of wireless communication requires a unified architectural vision able to be solved in a consistent manner.In the article, the authors describe briefly a recent case study of architecture and protocol suite that were used to implement the IoT.In their vision, the basic elements of the architecture are the Wireless Sensors Networks (WSN) and 6LoWPAN [24] used to connect to the Internet by IPv6 that has enough Internet addresses and web services.The article refers to the model proposed in the www.ijacsa.thesai.orgIoT-A project, but it is not supported by substantial discussion in relation to this model.
An effective IoT implementation used to monitor normal domestic conditions through a pervasive (ubiquitous) system of low-cost sensors is presented in [25].The proposed model is based on a wireless sensor network based on the ZigBee protocol.End devices collect and send data on a ZigBee coordinator, after which the specific data of the ZigBee protocol format are translated for the Internet IPv6 protocol implemented on a gateway layer.In conclusion, there could be highlighted three layers, namely: smart metering devices, IoT gateways and Internet servers.The domestic application seems to be exciting, but it is interoperable with other IoT models.It looks more like a silage model type or an Intranet of Things.
A more sustained architecture with implementation and a practice test is presented in [26].In this article, the authors present a new architecture called Sensor Networks for an All-IP World (SNAIL).This architecture includes four major technologies -mobility, web, time synchronization and security in architecture for adaptation to IP. Afterwards, the authors describe how they have verified the feasibility and interoperability of the architecture by implementing a SNAIL platform and testing it on a Korea Advanced Research Network (Koren) national model.The model is more complete but the research continues.
An interesting new concept was introduced in [27].It was called the Social Internet of Things (SIoT) and it is based on a type of relationships between objects, similar to the relationships between human beings.The authors analyzed statistically the SIoT network structure through simulations that modeled the mobility of objects and the relations between them.Preliminary results have shown that most SIoT features are these observed in social networks of people.Based on the results of these analyses, the authors investigated whether the navigability can be reached in SIoT and identified techniques in setting the social networking that can improve the navigability.The proposed model has three layers: the base layer that contains a database for storing and managing data with relevant descriptors, a database of ontology and engines for semantics and communications.Another approach of the SIoT is presented in [28] and an original way to approach the future IoT is presented in [29] and [30].The authors introduce two aspects: Unit IoT and Ubiquitous IoT.Unit IoT refers to the basic IoT unit that focuses on providing solutions for special applications and the architecture is the man-like nervous (MLN) model type.At the same time, their vision of the future Internet and especially the global IoT is about ubiquity in the sense that "everything must be connected, intelligently controlled and covered from everywhere."The model was called Ubiquitous IoT which refers to the global, national, industrial or local IoT and represents the integration of multiple IoT units (Unit IoT) with a "ubiquitous" character.The Ubiquitous IoT architecture looks like the social organization framework (SOF) model.
The architecture proposed in [31] starts from the open EPCglobal Network architecture.The authors emphasize that there are many approaches regarding the IoT; they claim to be followers of the architectural approach based on the EPCglobal Network.However, the IoT requires a more holistic architecture.It can be built on design principles such as the EPCglobal Architecture Framework [32].
An interesting architecture that is based on the EPCglobal architecture and the IEEE 1451 is presented in [33].Both are integrated into the IoT architecture framework and the EPCglobal and IEEE 1451 standard framework, in order to form an open environment.It simulated a scenario after which, finally, the authors conclude that the proposed IoT is feasible.
The industrial environment is made explicit in [34].It proposed an architecture called IoT@Work whose main component is ENS (Event Notification Server) which aims to collect, organize and deliver, in a controlled way, the production data from the shop floor.The ENS middleware provides a communication model based on events like publish/subscribe communication to support templates such as one-to-many and many-to-many and the dynamic coupling of the services, processes and devices.The model uses the AMQP (Advanced Message Queuing Protocol) protocol and architecture [35].
In order to address to the specific challenges of the IoT, in [36] both the VIRTUS architecture (as an event-driven middleware built on existing standards such as XMPP and OSGi) and security issues are discussed.The VIRTUS architecture is a middleware solution for the management of IoT applications.Using the paradigm of "publish&subscribe" and XMPP native security facilities, VIRTUS simplifies the IoT application development.

III. CONCLUSIONS
In this paper, we were presented the main IoT architecture presented in the literature.From these architectures can see that the most include a middleware level to distribute the data in the Internet.However, at this time there is not a middleware standard that is accepted by all in the deployment of IoT systems.In fact, the most IoT architectures include existing technologies that are used in order to meet the requirements for the IoT systems in terms of the interaction of things via the Internet.Furthermore, the majority of the IoT architectures are organized on five layers, according with Fig. 2.

ACKNOWLEDGMENT
This paper was supported by the project "Increasing the competitiveness of the EURONEST ICT&Hub Regional Innovation Cluster and stimulating interactions between members to develop high tech products and services" -Contract no.: 1CLT/800.020/19.05.2014, project co-funded from European Social Fund through Sectorial Operational Program Increase of Economic Competitiveness 2007-2013.