In this article, we will discuss the NM (Network Management) interface and the CAN bus specific NM module, which are part of the service layer of the AUTOSAR layered software architecture.
1. Network Management Interface
The Network Management Interface is a module that sits between the ComM and Bus Specific NM modules. In this article, we will consider CANNM as the bus-specific NM.
The NM interface has two functions:
- Basic function: Acts as an adaptation module between the bus-specific NM module and the ComM module. The communication interface between the NM interface and the ComM module is independent of the underlying bus-specific module.

Figure 1 Network Management
- NM Coordinator: The gateway ECU uses it to synchronize the shutdown of the communication bus. It uses the NM coordination algorithm to shut down the bus that connects various ECUs. The ECU that uses the NM Coordinator function is called the NM Coordinator.
When various ECUs are in a wake-up state and not in “bus sleep mode”, the network management algorithm is executed to coordinate the shutdown of each ECU on the bus. The NM Coordinator monitors the network that is to be in “bus sleep mode”. As long as one bus in the coordinating cluster (NM cluster – a group of NM nodes coordinated using the NM algorithm) is awake, the NM Coordinator should keep the network active.
When the coordination algorithm is initiated, a shutdown delay timer is started for the currently active channel in the network. When the Shutdown Delay timer times out, the NM should release the NM network. Once all networks are released and all networks are in “bus sleep mode”, the algorithm for coordinating the shutdown of each ECU is completed.
2. CAN Network Management
CANNM is used to coordinate the normal operation of the network and the mode switch to bus sleep mode. It can also be used to detect all existing nodes to check if all nodes in the network are ready to sleep. Each ECU’s CANNM needs to perform self-sufficient activities based on the network management PDU received or sent within the communication system. The CANNM algorithm is based on periodic network management PDUs, which are broadcasted to all nodes in the cluster.
The reception of the network management PDU indicates that the sending node wishes to keep the network management cluster awake. If any node is ready to enter bus sleep mode, it will stop sending network management PDUs, but as long as it receives network management PDUs from other nodes, it will postpone the transition to bus sleep mode.
Finally, if the dedicated timer times out due to no longer receiving network management PDUs, each node initiates the transition to bus sleep mode. If any node in the network management cluster requires bus communication, it can wake the network management cluster from bus sleep mode by sending a network management PDU.
1. Internal Behavior of CANNM
- When a network node in the NM cluster needs to access the bus, it should periodically transmit NM messages; otherwise, it should not transmit any NM PDUs.
- If bus communication in the CanNm cluster is released, and within a configurable amount of time determined by CANNM_TIMEOUT_TIME + CANNM_WAIT_BUS_SLEEP_TIME (two configuration parameters), no network management PDUs are present on the bus, a transition to bus sleep mode should be executed.
2. CANNM State Machine

Figure 2 CAN Network Management State Machine
The CAN network management state machine has the following states:
-
Ready Sleep State: ECU is ready to sleep, with no NM message transmission; upon receiving NM messages, the timeout timer is restarted.
-
Normal Operation State: NM message transmission and the restarting of the message transmission and reception timeout timer.
-
Preparing Sleep State: If the configured timer times out and no NM messages are sent or received.
-
Bus-Sleep State: After the configured timer, the network transitions to Bus-Sleep mode, during which no communication occurs on the bus.
Source: Candy AutosarCopyright belongs to the original author. If there is any infringement, please contact for deletion.