Overview#
Constrained Nodes is defined in RFC 7228 as a node where some of the characteristics that are otherwise pretty much taken for granted for Internet nodes at the time of writing are not attainable, often due to cost constraints and/or physical constraints on characteristics such as size, weight, and available power and energy.The tight limits on power, memory, and Computing resources lead to hard upper bounds on state, code space, and processing cycles, making optimization of energy and network bandwidth usage a dominating consideration in all design requirements. Also, some layer-2 services such as full connectivity and broadcast/multicast may be lacking.
There are multiple facets to the constraints on nodes, often applying in combination, for example:
- constraints on the maximum code complexity (ROM/Flash),
- constraints on the size of state and buffers (RAM),
- constraints on the amount of Computing feasible in a period of time ("CPU power"),
- constraints on the available power
- constraints on user interface and accessibility in deployment (ability to set keys, update software, etc.). (Input-constrained device)
3. Classes of Constrained Devices#
Despite the overwhelming variety of Internet-connected devices that can be envisioned, it may be worthwhile to have some succinct terminology for different classes of constrained devices. In this document, the class designations in Table 1 may be used as rough indications of device capabilities:More Information#
There might be more information for this subject on one of the following:- CBOR Object Signing and Encryption
- Classes of Energy Limitation
- Constrained-Node Networks
- Fully Hashed Menezes-Qu-Vanstone
- Input-constrained device
- LoWPAN
- Low-Power and Lossy Network
- Password-authenticated Key Exchange
- Remote Procedure Call
- Terminology for Constrained-Node Networks
- WebAuthn Attestation Statement Format Identifier