SNMP consists of various key components:nn The managing system that includes one or more SNMP managers.n The SNMP managers that run so-called network management station (NMS) software.n The managed devices that run pieces of software called SNMP agents. Managed devices can be anything from servers, routers, switches, firewalls, etc. to IoT devices.nnAn SNMP manager usually fulfills administrative tasks such as sending requests to and receiving responses from an SNMP agent, but it can also actively change the configuration of a managed device.nnThe SNMP agent collects and stores local information about the managed device it runs on and sends this information to the SNMP manager if requested. It can also actively push data packages about specific events, so-called SNMP traps, to the managing system without an explicit request. In this case, the SNMP manager also acts as an SNMP trap receiver.nnA very important component for SNMP communication is the Management Information Base (MIB), a text file that contains hierarchically organized data that a managed device can collect. This data consists of variables that are clearly identifiable by the so-called object identifiers (OID). SNMP can read and translate these variables for the SNMP manager, and, consequently, the SNMP monitoring tool.