3. Classes of Constrained Devices (Klassen eingeschränkter Geräte)
3. Classes of Constrained Devices (Klassen eingeschränkter Geräte)
Trotz der überwältigenden Vielfalt internetfähiger Geräte kann es lohnenswert sein, eine prägnante Terminologie für verschiedene Klassen eingeschränkter Geräte zu haben.
In diesem Dokument können die Klassenbezeichnungen in Tabelle 1 als grobe Indikatoren für Gerätefähigkeiten verwendet werden:
| Name | Datengröße (z.B. RAM) | Codegröße (z.B. Flash) |
|---|---|---|
| Class 0 | << 10 KiB | << 100 KiB |
| Class 1 | ~ 10 KiB | ~ 100 KiB |
| Class 2 | ~ 50 KiB | ~ 250 KiB |
Tabelle 1: Klassen eingeschränkter Geräte (KiB = 1024 Bytes)
Zum Zeitpunkt der Erstellung dieses Dokuments entsprechen diese Eigenschaften unterscheidbaren Clustern kommerziell verfügbarer Chips und Design-Kerne für eingeschränkte Geräte. Während erwartet wird, dass sich die Grenzen dieser Klassen im Laufe der Zeit verschieben, ist Moores Gesetz im eingebetteten Bereich tendenziell weniger effektiv als bei Personal-Computing-Geräten: Gewinne, die durch Erhöhungen der Transistoranzahl und -dichte verfügbar gemacht werden, werden eher in Reduzierungen von Kosten und Stromanforderungen investiert als in kontinuierliche Erhöhungen der Rechenleistung.
Klasse-0-Geräte sind sehr eingeschränkte sensorartige Motes. Sie sind so stark in Speicher- und Verarbeitungsfähigkeiten eingeschränkt, dass sie höchstwahrscheinlich nicht die Ressourcen haben, die erforderlich sind, um sicher direkt mit dem Internet zu kommunizieren (seltene heroische, sorgfältig gestaltete Implementierungen ausgenommen). Klasse-0-Geräte werden mit Hilfe größerer Geräte, die als Proxies, Gateways oder Server fungieren, an der Internetkommunikation teilnehmen. Klasse-0-Geräte können im traditionellen Sinne im Allgemeinen nicht umfassend gesichert oder verwaltet werden. Sie werden höchstwahrscheinlich mit einem sehr kleinen Datensatz vorkonfiguriert (und werden selten, wenn überhaupt, neu konfiguriert). Zu Verwaltungszwecken könnten sie auf Keepalive-Signale antworten und Ein/Aus- oder grundlegende Gesundheitsanzeigen senden.
Klasse-1-Geräte sind im Codespace und in den Verarbeitungsfähigkeiten ziemlich eingeschränkt, so dass sie nicht einfach mit anderen Internetknoten unter Verwendung eines vollständigen Protokollstapels wie HTTP, Transport Layer Security (TLS) und verwandten Sicherheitsprotokollen und XML-basierten Datenrepräsentationen kommunizieren können. Sie sind jedoch fähig genug, einen speziell für eingeschränkte Knoten entwickelten Protokollstapel (wie das Constrained Application Protocol (CoAP) über UDP [COAP]) zu verwenden und ohne die Hilfe eines Gateway-Knotens an bedeutungsvollen Gesprächen teilzunehmen. Insbesondere können sie Unterstützung für die in einem großen Netzwerk erforderlichen Sicherheitsfunktionen bieten. Daher können sie als vollständig entwickelte Peers in ein IP-Netzwerk integriert werden, aber sie müssen sparsam mit Zustandsspeicher, Codespace und oft Stromverbrauch für Protokoll- und Anwendungsnutzung umgehen.
Klasse-2-Geräte sind weniger eingeschränkt und grundsätzlich in der Lage, die meisten der gleichen Protokollstapel zu unterstützen, wie sie auf Notebooks oder Servern verwendet werden. Selbst diese Geräte können jedoch von leichtgewichtigen und effizienzoptimierten Protokollen profitieren und davon, weniger Bandbreite und Netzwerkressourcen zu verbrauchen. Darüber hinaus lässt die Verwendung von weniger Ressourcen für das Netzwerken mehr Ressourcen für Anwendungen übrig. Die Verwendung der für stärker eingeschränkte Geräte definierten Protokollstapel auf Klasse-2-Geräten könnte daher Entwicklungskosten reduzieren und die Interoperabilität erhöhen.
Eingeschränkte Geräte mit Fähigkeiten, die deutlich über Klasse-2-Geräte hinausgehen, existieren. Sie sind aus Sicht der Standardentwicklung weniger anspruchsvoll, da sie weitgehend bestehende Protokolle unverändert verwenden können. Das vorliegende Dokument unternimmt daher keinen Versuch, eingeschränkte Klassen jenseits von Klasse 2 zu definieren. Diese Geräte können immer noch durch eine begrenzte Energieversorgung eingeschränkt sein.
In Bezug auf die Untersuchung der Fähigkeiten eingeschränkter Knoten, insbesondere für Klasse-1-Geräte, ist es wichtig zu verstehen, welche Art von Anwendungen sie ausführen können und welche Protokollmechanismen am geeignetsten wären. Aufgrund von Speicher- und anderen Einschränkungen könnte jedes spezifische Klasse-1-Gerät möglicherweise nur einige ausgewählte Funktionen unterstützen, die für seinen beabsichtigten Betrieb erforderlich sind. Mit anderen Worten, die Menge der Funktionen, die tatsächlich unterstützt werden können, ist nicht statisch pro Gerätetyp: Geräte mit ähnlichen Einschränkungen könnten sich dafür entscheiden, verschiedene Funktionen zu unterstützen. Obwohl Klasse-2-Geräte über mehr verfügbare Funktionen verfügen und möglicherweise in der Lage sind, einen vollständigeren Funktionsumfang bereitzustellen, müssen sie dennoch hinsichtlich der Art der Anwendungen, die sie ausführen werden, und der Protokollfunktionen, die sie benötigen würden, bewertet werden. Um Anforderungen ableiten zu können, müssen die Anwendungsfälle und die Einbeziehung der Geräte in die Anwendung und das Netzwerk analysiert werden. Anwendungsfälle können eingeschränkte Geräte mehrerer Klassen sowie traditionellere Internetknoten kombinieren.