# Management Platforms and Protocols for Internet of Things: A Survey
## 4 IoT Network Management Protocols
### Simple Network Management Protocol (SNMP)  
The objective of the SNMP is to find and fix the bugs or problems of a network [28]. Through SNMP agents, the network administrator can view network traffic statistics and is able to change its configurations after analyzing this data. Defined at the application level and standardized by the Internet Engineering Task-Force (IETF) [29], the SNMP uses the User Datagram Protocol (UDP) transport protocol to send messages over the network without delivery guarantee. Over the last years, other protocols have used the same concept, e.g., NETCONF was created to replace SNMP. The SNMP continues to dominate the network management market, mainly because of its simplicity of implementation, since it consumes fewer network resources and processing, which allows the inclusion of very simple equipment. According to SNMP Research International et al. [30], there was an incremental development of three versions of the SNMP, as described below:SNMPv1: it offers a management solution with low cost and simple implementation, but with a lack of authentication and security mechanisms and limitation in the performance of messages in very large networks. * SNMPv2c: it created the management of decentralized networks, allowing the existence of more than one management station and, consequently, the exchange of information between them. In SNMPv2, it was not possible to reach a consensus regarding the security standard to be used in SNMP, and there was an addition of other request types such as get-request, get-next-request, set-request, response, and snmpV2-trap. * SNMPv3: it published a set of documents defining a framework to incorporate security features into full capacity (with the SNMPv1 or SNMPv2 features). The SNMP architectural model includes a Management Server and network devices. Servers monitoring and control the network devices with events. The network devices include equipment as hosts, gateways, terminal servers, that have managing agents used to be handled by a server. The SNMP protocol is used to exchange data between a server and network devices. Figure 5, shows some of the possible interactions between manager and agent through the SNMP protocol [31]. An SNMP device can be connected to other devices, performing machine-to-machine communication [32]. The SNMP Agent is a software installed in a device to support network management. It answers the queries from SNMP managers and sends a trap message to some events (according to their priority). The Management Information Base (MIB) is a virtual database with object identifiers (OIDs) organized in a tree structure to keep information about Device Management in a communication network. The ASN.1 (Abstract Syntax Notation One) notation [33] is a language developed by ITU-T and chosen by ISO for the definition of the MIB manageable objects. It uses object-oriented concepts to define a resource, so that its attributes can be performed by this resource, when applicable. The SNMP is a non-connection-oriented protocol does not require a prior or subsequent action to send messages. Thus, the protocol messages will no guarantee the destination is reached. It is a simple and robust protocol, yet powerful enough to solve the difficult problems presented by managing heterogeneous networks such as an IoT network, as shown in Figure 6. Therefore, the key problems to manage the sensors in IoT involves the MIB design and the development of manager and agent software. _Pros: Simple and easy protocol to be developed. Cons: No network configuration resources._  
Figure 5: Illustration of the SNMP Protocol Architecture. Use Case  
The SNMP protocol is a base unit that provides a centralized platform for operations and facility management teams to monitor sensor conditions and configure threshold-based alerts.