WO2014108356A2 | 2014-07-17 |
EP1816827A1 | 2007-08-08 | |||
US20090276102A1 | 2009-11-05 | |||
US20080292105A1 | 2008-11-27 |
Patentansprüche 1. Vorrichtung (100) mit - einer Netzwerkschnittstelle (102) zum Einbinden in eine Overlay-Netzwerktopologie ; - einer mit der Netzwerkschnittstelle (102) verbundenen Datenverarbeitungseinheit (104) , die eingerichtet ist, Daten über die Netzwerkschnittstelle (102) zu senden und/oder zu empfangen; und - einer an die Datenverarbeitungseinheit (104) gekoppelten Funktionseinheit (106) . 2. Vorrichtung (100) gemäß Patentanspruch 1, wobei die Netzwerkschnittstelle (102) zum Verbinden über wenigstens ein drahtgebundenes oder drahtloses Kommunikationsnetzwerke eingerichtet ist. 3. Vorrichtung (100) gemäß einem der vorstehenden Patentansprüche , wobei die Datenverarbeitungseinheit (104) eingerichtet ist, Daten mittels eines Beobachtermusters über die Netzwerkschnittstelle (102) zu senden und/oder zu empfangen. 4. Vorrichtung (100) gemäß einem der vorstehenden Patentansprüche , wobei die Datenverarbeitungseinheit (104) zum Regeln und/oder Steuern der Funktionseinheit (106) eingerichtet ist . 5. Vorrichtung gemäß Patentanspruch 4 , wobei die Funktionseinheit (106) eine Aktor-Einheit umfasst . 6. Vorrichtung (100) gemäß einem der vorstehenden Patentansprüche , wobei die Datenverarbeitungseinheit (104) zum Empfangen von Daten der Funktionseinheit (106) eingerichtet ist. 7. Vorrichtung (100) gemäß Patentanspruch 6, wobei die Funktionseinheit (106) eine Sensoreinheit umfasst . 8. Vorrichtung (100) gemäß einem der vorstehenden Patentansprüche , wobei die Funktionseinheit (106) eine Datengeneratoreinheit umfasst. 9. Vorrichtung (100) gemäß einem der vorstehenden Patentansprüche , wobei die Funktionseinheit (106) eine Mensch-Maschine- Schnittstelle umfasst. 10. Dynamisches Netzwerk (200) mit wenigstens einer ersten Vorrichtung (202) und einer zweiten Vorrichtung (204) gemäß einem der Patentansprüche 1 bis 9. 11. Dynamisches Netzwerk (200) gemäß Patentanspruch 10, wobei die die zweite Vorrichtung (204) eine Aktor-Einheit (110) umfasst, die durch ein empfangenes Zustandsänderungsdatums der ersten Vorrichtung (202) aktivierbar ist. 12. Dynamisches Netzwerk (202) gemäß Patentanspruch 10 oder Patentanspruch 11 mit einer dritten Vorrichtung (206) , wobei die dritte Vorrichtung derart ausgelegt ist, ein Zustandsänderungsdatum von der ersten Vorrichtung (202) an die zweite Vorrichtung (204) zu übermitteln. 13. Dynamisches Netzwerk (202) gemäß einem der Patentansprüche 10 bis 12, wobei eine Datenübermittlung zwischen der ersten Vorrichtung (202) und der zweiten Vorrichtung (204) mittels eines asymmetrischen Verschlüsselungsverfahrens verschlüsselt ist. |
BESCHREIBUNG
[0001] Die vorliegende Erfindung betrifft eine Vorrichtung, insbesondere eine Vorrichtung zur Verwendung in einem
dynamischen Netzwerk, sowie ein dynamisches Netzwerk.
[0002] Mit der Entstehung und Entwicklung eines Internet der Dinge (Tnternet of Things bzw. IoT) ist es notwendig,
unterschiedliche Vorrichtungen mit verschiedenen
Funktionalitäten in einem Netzwerk zu verbinden. Das IoT soll es bspw. erlauben, dass eine erste Vorrichtung, wie bspw. ein Smartphone oder ein Schalter, mit einer zweiten Vorrichtung, wie bspw. einer Fensterjalousie, verbunden ist, so dass die zweite Vorrichtung in Abhängigkeit eines Zustands der ersten Vorrichtung durch einen Befehl der ersten Vorrichtung oder auch über anderen einem beliebigen Teil des IoT-Netzwerks aus gesteuert werden kann, ohne dass der unmittelbare Eingriff eines Nutzers notwendig ist.
[0003] Derzeit werden von verschiedenen Anbietern die unterschiedlichsten Systeme im Zusammenhang mit der
Entwicklung des IoT angeboten, die alle zu einem Aufbau eines IoT führen sollen. In vielen Fällen ist das IoT hierarchisch aufgebaut und wird über einen zentralen Server bzw. aus der Cloud gesteuert. Im Ergebnis entstehen eine mangelnde
Kompatibilität und ein hoher Aufwand bei der Einrichtung oder Umstellung der IoT-Netzwerkstruktur .
[0004] Der vorliegenden Erfindung liegt das Problem
zugrunde, eine Vorrichtung zur Verwendung in einem dynamischen Netzwerk, sowie ein dynamisches Netzwerk bereitzustellen, so dass es ermöglicht ist, eine Vorrichtung in ein bereits bestehendes IoT-Netzwerk einzubinden und die Funktion und Interaktion der Vorrichtung mit anderen Elementen oder
Bestandteilen des IoT-Netzwerks zu jedem Zeitpunkt und von jedem Netzwerkelernent aus verändern zu können. [0005] Dieses Problem wird durch eine Vorrichtung gemäß dem Patentanspruch 1 gelöst. Weiterbildungen und vorteilhafte Ausgestaltungen der Vorrichtung sind in den abhängigen
Patentansprüchen angegeben.
BEISPIELHAFTE AUSFÜHRUNGSFORMEN
[0006] In Ausführungsformen der Vorrichtung weist diese eine Netzwerkschnittstelle zum Einbinden in eine Overlay- Netzwerktopologie auf. Mit der Netzwerkschnittstelle ist eine Datenverarbeitungseinheit verbunden, die eingerichtet ist, Daten über die Netzwerkschnittstelle zu senden und/oder zu empfangen. An die Datenverarbeitungseinheit ist eine
Funktionseinheit gekoppelt.
[0007 ] In einigen Ausführungsformen ist die
Netzschnittstelle zumindest zum Verbinden über wenigstens ein drahtgebundenes oder drahtloses Kommunikationsnetzwerk
eingerichtet. Drahtgebunde Kommunikationsnetzwerke basieren bspw. auf Internetprotokollen wie TCP/IP oder UDP und
verwenden bspw. Datenübertragungen über elektrisch oder optisch leitenden Medien, wie bspw. Kupferdrähte oder
Glasfasern. In einem drahtlosen Kommunikationsnetzwerk werden Daten über elektromagnetische Wellen, bspw. Radiowellen oder Infrarot-Strahlung, übertragen. Drahtlose
Kommunikationsnetzwerke nutzen Standards und die dazugehörigen Protokolle wie EnOcean, Z-Wave, Zigbee, Bluetooth, WLAN, IrDA etc .
[0008] Es ist denkbar, dass die Netzschnittstelle eine Verbindung in ein dynamisches Netzwerk über ein oder mehrere unterschiedliche drahtgebundene oder drahtlose
Kommunikationsprotokolle aufbauen kann. Damit kann die
Vorrichtung Teil verschiedener physikalischer Netzwerke sein. Auch ist es denkbar, dass die Vorrichtung so als
Vermittlungsstelle zwischen Netzwerken wirken kann, die auf unterschiedlichen Kommunikationsprotokollen beruhen.
[ 0009] Wesentliche Funktion der Netzwerkschnittstelle ist das Einbinden in eine Overlay-Netzwerktopologie . Die Overlay- Netzwerktopologie ist eine über Adressierungen auf den durch die Kommunikationsprotokolle vorhandenen physikalischen
Netzwerken aufgebaute Netzwerktopologie, die es ermöglicht eine logische Netzwerkstruktur aufzubauen. Im Folgenden soll unter einer Overlay-Netzwerktopologie insbesondere eine solche Netzwerktopologie verstanden werden, die ein Wegwahlverfahren zum Kommunizieren zwischen Netzwerkbestandteilen, wie bspw. Vorrichtungen gemäß der vorliegenden Darstellung, ermöglicht. Beispiele für eine solche Overlay-Netzwerktopologie sind:
• Content Addressable Network (CAN) ,
• Chord
• DiffSerV
• Gnutella
und besonders bevorzugt
• Kademlia
Es existieren darüber hinaus eine Vielzahl weitere geeigneter Overlay-Netzwerktopologien, die der Fachmann je nach Bedarf auswählen oder auch kombinieren kann.
[00010] Die besonders bevorzugte Kademlia-Netzwerktopologie nutzt eine unter den Netzwerkelementen verteilte Hash Table in der Informationen über das logische Netzwerk verteilt
gespeichert sind. In der Kademlia-Netzwerktopologie wird jedes Element über eine eindeutige Kennzahl (Node-ID) identifiziert werden. Die Node ID dient dabei nicht nur der Identifizierung des Elements im logischen Netzwerk sondern ermöglicht auch die Verteilung der Netzwerkinformation auf der verteilten Hash Table. So ist es insbesondere möglich, neue Elemente dem logischen Netzwerk hinzuzufügen, und das neue Element logisch dort in das Netzwerk einzufügen, wo es von anderen Elementen, deren Hash Table noch nicht aktualisiert wurde, erwartet würde. Das Einfügen des neuen Elements erfolgt dabei mittels eines bootstrapping Verfahrens, in dem das neue Element zunächst einige Elemente des bestehenden Netzwerks erkennt und von diesen Informationen zu anderen Netzwerkelementen erhält. Darauf aufbauend kann das neue Element die Netzwerktopologie des bestehenden Netzwerks erkennen. So kann sehr schnell ein sehr großes, echtes Peer-to-Peer Netzwerk aufgebaut werden. [00011] Die Datenverarbeitungseinheit ermöglicht das
Senden/und Empfangen von Daten über die Netzwerkschnittstelle. Dabei ist in verschiedenen Ausführungsformen vorgesehen, dass die Datenverarbeitungseinheit unterschiedlichste Funktionen der Vorrichtung in einem dynamischen Netzwerk ausführen kann. So kann die Datenverarbeitungseinheit Daten bereitstellen, die anderen Elementen des dynamischen Netzwerks zur Verfügung gestellt werden können {publish-Funktion) . Ebenso oder
alternativ kann die Datenverarbeitungseinheit dazu dienen, Daten andere Elemente des Netzwerks zu erfassen und für die Funktion der Vorrichtung zu verwerten (subscribe-Funktion) . In anderen Ausführungsformen oder Weiterbildungen der
Datenverarbeitungseinheit kann diese dazu dienen, die Funktion einzelner Elemente des dynamischen Netzwerks in einem
Datenmodell abzubilden ( clone-Funktion) und Verknüpfungen zwischen den Elementen im Datenmodell herzustellen, zu
entfernen oder abzuändern { odelling-Funktion) . In einigen Ausführungsformen der Datenverarbeitungseinheit ist diese derart eingerichtet, dass sie aufgrund empfangener Daten die Funktionsweise der Vorrichtung abändert (update-Funktion) . Zusätzlich oder alternativ kann die Datenverarbeitungseinheit eine Funktion ausführen, in der sie eine andere Vorrichtung des dynamischen Netzwerks direkt steuert, bspw. in allen oder Teilen deren Funktionalität. In solchen Fällen ist die
Verwendung der clone-Funktion, der modelling-Funktion und der update-Funktion nicht notwendig. Die andere Vorrichtung wird sozusagen zum Avatar und direkt von der
Datenverarbeitungseinheit kontrolliert. Soweit die
Datenverarbeitungseinheit alle diese Funktionen aufweist, ist sie geeignet, das gesamte dynamische Netzwerk aufzubauen und zu gestalten bzw. zu steuern.
[00012] In einer Ausführungsform der Vorrichtung ist die Datenverarbeitungseinheit derart eingerichtet ist, Daten mittels eines Beobachtermusters über die Netzwerkschnittstelle zu senden und/oder zu empfangen. Damit weist die die
Datenverarbeitungseinheit sowohl eine publish-Funktion als auch eine subscribe-Funktion auf. Entsprechend kann das Beobachtungsmuster auch als publish/subscribe-Verfahren bezeichnet werden. Ein publish/subscribe-Verfahren hat
insbesondere den Vorteil, dass die Kommunikation im
dynamischen Netzwerk auf ein notwendiges Minimum reduziert ist. Dies wird dadurch erreicht, dass zunächst alle
Netzwerkelemente ihr Interesse an bestimmten bereitgestellten Daten eines bestimmten Netzwerkelements (Subjekt) anzeigen können (subscrije-Schritt) . Damit werden sie zu einem
•Beobachter. Die bereitgestellten Daten können abgerufen werden. Ändert sich der Wert bzw. Zustand eines Datums, wird dieses von dem Subjekt aktualisiert und bspw. über das
Netzwerk veröffentlicht (publish-Schritt) .
[00013] Die Funktionseinheit der Vorrichtung führt die tatsächliche Funktion der Vorrichtung aus. So kann die
Funktionseinheit in einer Ausführungsform einen Aktor und/oder einen Sensor aufweisen. Um einige wenige Beispiele zu nennen, kann die Funktionseinheit bspw. eine Lichtquelle, einen Motor, ein Ventil, einen Schalter, einen Datenprozessor oder eine beliebige andere aktive Einheit aufweisen (Aktor) . Zusätzlich oder alternativ kann die Funktionseinheit bspw. eine Kamera, einen Detektor, ein Thermometer und jede beliebig
vergleichbare aktive und oder passive Einheit zur Erfassung physikalischer oder chemischer Eigenschaften oder einer bestimmten Beschaffenheit aufweisen.
[00014] In einer Ausführungsform der Vorrichtung ist die Datenverarbeitungseinheit zum Regeln und/oder Steuern der Funktionseinheit eingerichtet. Damit kann die Funktionseinheit in Abhängigkeit von durch die Datenverarbeitungseinheit aus dem dynamischen Netzwerk erfassten oder ableiteten Daten geregelt oder gesteuert werden. Bspw. kann so ein in der
Funktionseinheit vorgesehener Aktor aktiviert oder deaktiviert werden. In einem anderen Beispiel kann so die Empfindlichkeit eines in der Funktionseinheit vorgesehenen Sensors verändert werden.
[00015] In einer Ausführungsform der Vorrichtung ist die Datenverarbeitungseinheit zum Empfangen von Daten der
Funktionseinheit eingerichtet. Damit kann die Datenverarbeitungseinheit Daten im dynamischen Netzwerk veröffentlichen, die über einen Zustand der Funktionseinheit Auskunft geben. Bspw. kann so ein Zustand eines Aktors im dynamischen Netzwerk veröffentlicht werden, wie der
Schaltzustand eines Schalters oder über den Grad einer
Aktivierung eines Aktors, wie bspw. eine Positionsmeldung für einen Servomotor.
[00016] In einer Ausführungsform der Vorrichtung umfasst die Funktionseinheit eine Datengeneratoreinheit. Die
Datengeneratoreinheit kann dabei ein digitaler Signalprozessor sein, der bspw. einen Datenstrom, wie bspw. eine Folge von
(Pseudo- ) Zufallszahlen erzeugt. Weiterhin ist es denkbar, dass die Datengeneratoreinheit ein Zeit- oder Taktsignal erzeugt. Die derart erzeugten Signale können über die
Datenverarbeitungseinheit im dynamischen Netzwerk
veröffentlicht werden und bspw. dazu dienen, die Kommunikation im dynamischen Netzwerk zu steuern oder zu schalten.
[00017] In einer Ausführungsform der Vorrichtung umfasst die Funktionseinheit eine Mensch-Maschine-Schnittstelle. So können über die Mensch-Maschine-Schnittstelle eingegebene Nutzerdaten im dynamischen Netzwerk veröffentlicht werden. Damit ist die Vorrichtung derart ausgelegt, dass ein Nutzer aktiv ins dynamische Netzwerk eingreifen kann, bspw. um es zu verwalten, zu beobachten und/oder zu vergrößern.
[00018] Das hier dargestellte dynamische Netzwerk umfasst wenigstens eine erste erfindungsgemäße Vorrichtung und eine zweite erfindungsgemäße Vorrichtung.
[00019] In einer Weiterbildung des dynamischen Netzwerks umfasst die zweite Vorrichtung eine Aktor-Einheit, die durch ein empfangenes Zustandsänderungsdatum der ersten Vorrichtung aktivierbar ist. Diese Ausführungsform ist eine einfache
Ausgestaltung des dynamischen Netzwerks, in der die zweite Vorrichtung zumindest ein Datum der ersten Vorrichtung
beobachtet und durch eine Änderung des Datums gesteuert wird.
[00020] In einer Ausführungsform des dynamischen Netzwerks weist dieses eine dritte Vorrichtung auf, wobei die dritte Vorrichtung dazu ausgelegt ist, ein Zustandsänderungsdatum von der ersten Vorrichtung an die zweite Vorrichtung zu
übermitteln. Damit dient die dritte Vorrichtung als Repeater im dynamischen Netzwerk. Diese Funktion kann dadurch erreicht werden, dass die dritte Vorrichtung ein Datum der ersten
Vorrichtung beobachtet und erneut veröffentlicht, um es
Vorrichtungen zugänglich zu machen, denen es physikalisch nicht möglich ist, das Datum der ersten Vorrichtung direkt zu beobachten. Damit kann im Netzwerk eine größere Distanz überbrückt werden und die physikalische Ausdehnung des
Netzwerks erheblich vergrößert werden. Dies ist insbesondere dann vorteilhaft, wenn im dynamischen Netzwerk
KommunikationsStandards mit relativ geringer Reichweite, bspw. Bluetooth etc. vorhanden sind.
[00021] Weiterhin ist es denkbar, dass die dritte Vorrichtung derart eingerichtet ist, dass die Kommunikation mit der ersten Vorrichtung über einen ersten Kommunikationsstandard und die Kommunikation mit der zweiten Vorrichtung über einen von dem ersten KommunikationsStandard verschiedenen zweiten
Kommunikationsstandard erfolgt, so dass die dritte Vorrichtung als Brücke oder Gateway zwischen verschiedenen
Kommunikationsstandards dient.
[00022] In einer weiteren Ausführungsform des dynamischen Netzwerks ist eine Datenübermittlung zwischen der ersten
Vorrichtung und der zweiten Vorrichtung mittels eines
asymmetrischen Verschlüsselungsverfahrens verschlüsselt.
KURZE BESCHREIBUNG DER ZEICHNUNGEN
[00023] Verschiedene Ausführungsbeispiele der Vorrichtung sowie des dynamischen Netzwerks werden im Folgenden anhand der Zeichnungen näher erläutert. In den Figuren geben die erste (n) Ziffer (n) eines Bezugszeichens die Figur an, in denen das Bezugzeichen zuerst verwendet wird. Die gleichen Bezugszeichen werden für gleichartige oder gleich wirkende Elemente bzw.
Eigenschaften in allen Figuren verwendet. Es zeigen: Fig. 1 eine schematische Darstellung einer ersten
Ausführungsform der Vorrichtung zur Verwendung in einem dynamischen Netzwerk;
Fig. 2a eine schematische Darstellung der physikalischen
Struktur eines Ausführungsbeispiels eines dynamischen
Netzwerks,
Fig. 2b eine schematische Darstellung der Overlay-Struktur eines Ausführungsbeispiels eines dynamischen Netzwerks,
Fig. 3 eine schematische Darstellung eines beispielhaften
Kommunikationsvorgangs zwischen Vorrichtungen eines dynamischen Netzwerks,
Fig. 4 eine schematische Darstellung eines
Ausführungsbeispiels einer Benutzeroberfläche auf einer Mensch-Maschinen-Schnittstelle zur Einrichtung und Bearbeitung von Verknüpfungen in einem dynamischen Netzwerk,
Fig. 5 eine schematische Darstellung eines Verfahrens zur
Zertifizierung der Kommunikation zwischen zwei
Vorrichtungen zur Verwendung in einem dynamischen Netzwerk.
[00024] Fig. 1 zeigt eine schematische Darstellung eines ersten Ausführungsbeispiels einer Vorrichtung zur Verwendung in einem dynamischen Netzwerk. Die Vorrichtung 100 weist eine Netzwerkschnittstelle 102 zum Einbinden in eine Overlay- Netzwerktopologie auf. Mit der Netzwerkschnittstelle 102 ist eine Datenverarbeitungseinheit 104 verbunden, die dazu
eingerichtet ist, Daten über die Netzwerkschnittstelle 102 zu senden und/oder zu empfangen. An die Datenverarbeitungseinheit 104 ist eine Funktionseinheit 106 gekoppelt.
[00025] Die Netzwerkschnittstelle 102 weist eine
physikalische Schnittstelle zum Einbinden der Vorrichtung in ein Kommunikationsnetzwerk auf. Die physikalische
Schnittstelle kann dabei eine Sendeempfangseinheit sowie eine Luftschnittstelle, bspw. eine Antenne, oder eine
drahtgebundene Schnittstelle, bspw. eine Anschlussbuchse - wie etwa eine Glasfaserkoppler oder eine USB-Schnittstelle etc. - aufweisen. Über die physikalische Schnittstelle kann eine physikalische Verbindung ins Kommunikationsnetzwerk
hergestellt werden. Darüber hinaus weist die
Netzwerkschnittstelle in aller Regel auch eine digitale
Signalverarbeitungseinheit auf, mittels der von der
Vorrichtung empfangene oder gesendete Daten verarbeitet werden. Die digitale Signalverarbeitungseinheit ist dazu ausgelegt, zumindest alle in der jeweiligen physical layer des jeweils verwendeten Kommunikationsstandards verwendeten
Signalverarbeitungsschritte inkl. der Schritte einer möglichen medium access layer durchzuführen.
[00026] Neben diesen Einheiten, weist die
Netzwerkschnittstelle auch eine Prozessierungseinheit auf, die die Vorrichtung in eine Overlay-Netzwerktopologie einbindet. Die Overlay-Netzwerktopologie ist eine über Adressierungen auf den durch die Kommunikationsprotokolle vorhandenen
physikalischen Netzwerken aufgebaute Netzwerktopologie, die es ermöglicht eine logische Netzwerkstruktur aufzubauen. Es ist dabei ebenso denkbar, dass die digitale
Signalverarbeitungseinheit und die Prozessierungseinheit durch eine integrierte Einheit realisiert sind.
[00027] Im Ergebnis hat die Netzwerkschnittstelle 102 die Funktion, die Vorrichtung 100 in ein Netzwerk einzubinden und eine Kommunikation der Vorrichtung mit anderen Elementen des Netzwerks sicherzustellen. Eine wichtige Ausgestaltung der Netzwerkschnittstelle 102 ist dabei, dass die Kommunikation über unterschiedliche Kommunikationsstandards erfolgen kann, so dass mittels der Overlay-Netzwerktopologie eine logische Netzwerktopologie eingerichtet werden kann, die über
unterschiedlichste Verbindungswege erfolgt. Dadurch wird das aufgebaute Netzwerk unabhängiger von den in einer Umgebung zur Verfügung stehenden Kommunikationsmöglichkeiten. Dies ist insbesondere in Hinblick auf die Vielzahl der existierenden Kommunikationsstandards besonders vorteilhaft, weil der Nutzer nicht an bestimmte Kommunikationsstandards gebunden ist. Ein IoT im Heimbereich aber auch in einer automatisierten
Fertigung kann dadurch sehr flexibel und sehr weitreichend gestaltet werden. Insbesondere kann so erreicht werden, dass Geräte unterschiedlichster Funktionalität und
unterschiedlicher Hersteller von dem Nutzer mühelos in ein selbstgestaltetes Netzwerk eingebunden werden und das Netzwerk jederzeit nach Belieben angepasst oder erweitert werden kann.
[00028] Die Datenverarbeitungseinheit 104 ermöglicht das Senden/und Empfangen von Daten über die Netzwerkschnittstelle 102. Dazu kann die Datenverarbeitungseinheit 104 wenigstens eine der folgenden Funktionen ausführen: publish, subscribe, clone, modelling, update oder avatar. Diese Funktionen sind weiter oben in diesem Dokument dargestellt. Insbesondere erlaubt die Datenverarbeitungseinheit 104 so, dass in der Vorrichtung 100 ein eigenes Modell des (für die Vorrichtung 100 relevanten Teils) des dynamischen Netzwerks gebildet wird. Die Einbindung in ein relevantes Netzwerkteil wird
insbesondere über die publish-Funktion und über die subscrijbe- Funktion erzielt, mittels denen die Funktion der Vorrichtung 100 im dynamischen Netzwerk erzielt wird. Weil in der
Vorrichtung 100 festgelegt ist, welcher Satz an Daten an welche anderen Netzwerkelemente veröffentlicht bzw.
aktualisiert wird und auch festgelegt ist, welche Daten aus dem dynamischen Netzwerk beobachtet werden, ist die
Vorrichtung 100 im dynamischen Netzwerk ein autonomer Akteuer bzw. Agent. Ein aus Einheiten wie der Vorrichtung 100
gebildetes dynamisches Netzwerk benötigt keine zentrale
Steuerung. Es ist vielmehr ohne besondere Hierarchie aus einzelnen autonomen Agenten aufgebaut. So kann es auf einfache Weise flexibel und dynamisch angelegt, vergrößert oder
verändert werden.
[00029] Die Verwaltung des dynamischen Netzwerks kann aus jedem Element wie der Vorrichtung 100 heraus erfolgen. Dazu tragen insbesondere die drei Funktionen clone, modelling und update oder auch avatar bei, die ebenfalls weiter oben in diesem Dokument beschrieben wurden. Mittels der clone-Funktion kann von der Vorrichtung 100 die publish/subscriJe-Struktur einer ähnlichen Vorrichtung {source) übernommen werden. Es entsteht ein Klon-Modell der source in der Vorrichtung 100. Dieses kann mittels der model1ing-Funktion abgeändert werden, so dass die Wirkungsweise der source im dynamischen Netzwerk angepasst wird. Bspw. kann die source ins dynamische Netzwerk eingebunden werden. Das veränderte Klon-Modell der source in der Vorrichtung 100 wird durch die update-Funktion von der source übernommen und implementiert. Als Ergebnis sind die Verknüpfungen im dynamischen Netzwerk tatsächlich verändert.
[00030] Schließlich weist die Vorrichtung 100 eine
Funktionseinheit 106 auf. Diese kann bspw. ein Aktor, ein Sensor, eine Datengeneratoreinheit oder eine Mensch- Maschinenschnittstelle umfassen. Mit dieser Funktionseinheit kann die Vorrichtung 100 als Element eines dynamischen
Netzwerks wirken und mit anderen Elementen nicht nur als autonomer Agent handeln. Es kann vielmehr bestimmte Aufgaben ausführen, sei es eine bestimmte Größe erfassen oder ermitteln oder auch eine Handlung ausführen, bspw. ein elektrisches Gerät über einen Schalter einschalten oder einen Zustand ändern, wie bspw. bei einem elektrochromen Glas.
[00031] Fig. 2a zeigt die schematische Darstellung der physikalischen Struktur eines Ausführungsbeispiels eines dynamischen Netzwerks 200. Das dynamische Netzwerk 200 ist aus einem ersten Element 202, einem zweiten Element 204, einem dritten Element 206 und einem vierten Element 208
zusammengesetzt. Im gezeigten Ausführungsbeispiel sind die Elemente konkrete elektrische Vorrichtungen, die alle
Ausführungsformen der bereits dargestellten Vorrichtung sind. Das erste Element 202 ist ein Smartphone. Es weist eine
Netzwerkschnittstelle zum Einbinden in eine Overlay- Netzwerktopologie auf. Die Netzwerkschnittstelle kann dabei die Luftschnittstelle des Smartphones aufweisen und
Mobilfunkstandards, wie etwa GSM, UMTS oder LTE ebenso
bedienen, wie auch Datenübertragungsstandards wie Bluetooth, IrDA, WLAN, etc. Darüber hinaus kann die Netzwerkschnittstelle auch drahtgebundene Schnittstellen aufweisen, wie etwa USB. Darüber hinaus weist die Netzwerkschnittstelle eine
Prozessoreinheit auf, die eine Einbindung des Smartphones ins dynamische Netzwerk sicherstellt. Diese Prozessoreinheit kann als Software auf einem Prozessor eingerichtet sein. Ebenso ist eine Realisierung als Hardware denkbar. Die
Netzwerkschnittstelle aus einzelnen Komponenten oder auch zumindest teilweise aus einem Schnittstellenblock gebildet sein. An die Netzwerkschnittstelle ist die
Datenverarbeitungseinheit gekoppelt, die in einem Smartphone üblicherweise als Mikroprozessor ausgestaltet ist. Die
Datenverarbeitungseinheit kann so durch eine Firmware oder eine Software variabel betrieben werden. Das erste Element 202 weist darüber eines Touchscreens eine Mensch-Maschine- Schnittstelle als Funktionseinheit auf.
[00032] Das zweite Element 204 des dynamischen Netzwerks ist eine Klingelleiste, die ebenfalls eine Netzwerkschnittstelle zum Einbinden in eine Overlay-Netzwerktopologie, eine mit der Netzwerkschnittstelle verbundene Datenverarbeitungseinheit, die eingerichtet ist, Daten über die Netzwerkschnittstelle zu senden und/oder zu empfangen und eine an die
Datenverarbeitungseinheit gekoppelte Funktionseinheit
aufweist. Im zweiten Element 204 ist die Funktionseinheit eine beliebige Anzahl von Klingelknöpfen. Diese können jeweils als Sensor gesehen werden, der anzeigt, ob ein Nutzer einen bestimmten Klingelkopf betätigt.
[00033 ] Das dritte Element 206 des dynamischen Netzwerks ist eine Kamera, die sich von dem zweiten Element 204 in der
Funktionseinheit unterscheidet. Hier ist eine Funktionseinheit ebenfalls ein Sensor, bspw. ein Bayer-Sensor zur
Bilderfassung. Die Kamera kann aber ebenso eine oder mehrere aktive Funktionseinheiten umfassen, bspw. eine veränderbare Fokussierung oder einen verstellbaren Zoom eine
Kameraobjektives oder einen Stellmotor zur Einstellung des beobachteten Raumwinkels.
[00034] Das vierte Element 208 des dynamischen Netzwerks ist eine Leuchte, die sich von dem zweiten und dem dritten Element 204, 206 ebenfalls in der Funktionseinheit unterscheidet. Hier ist die Funktionseinheit ein Aktor in Form des Schalters zum Ein- bzw. Ausschalten eines Leuchtmittels der Leuchte. Hier sind ebenso weitere aktive und passive Funktionseinheiten denkbar, bspw. ein Stellmotor zum Verändern einer relativen Position eines Reflektors und/oder einer Optik zu dem
Leuchtmittel, um bspw. den ausgeleuchteten Raumwinkel
auswählen zu können.
[00035] Fig. 2b zeigt die schematische Darstellung der
Overlay-Struktur eines Ausführungsbeispiels eines dynamischen Netzwerks. Die Overlay-Struktur baut auf der physikalischen Struktur, wie bspw. in der in der Fig. 2a gezeigten
physikalischen Struktur auf. Die Overlay-Struktur bietet insbesondere die Möglichkeit zu einem oftmals eigenen
Adressraum mit eigener Adressierung und ggf. zum Einsatz eines proprietären Wegewahlverfahrens .
[00036] Dargestellt ist die logische Struktur aus dem ersten Element 202, dem zweiten Element 204, dem dritten Element 206 und dem vierten Element 208. Bei der Wahl einer geeigneten Overlay-Netzwerktopologie , wie bspw. Content Addressable
Network (CAN) , Gnutella oder besonders bevorzugt Kademlia, kann das dynamische Netzwerk vorteilhafterweise beliebig erweitert werden und auf der logischen Ebene ein geeignetes Wegwahlverfahren gewählt werden, um zwischen zwei Elementen zu kommunizieren. Damit wird das dynamische Netzwerk insbesondere unabhängiger von den bereitgestellten physikalischen
Strukturen und kann sich räumlich sehr weit erstrecken. Dies ist besonders vorteilhat, wenn verschiedene Strukturen
vorhanden sind. Im gezeigten Ausführungsbeispiel ist es daher denkbar, dass das zweite Element 204, also die Klingelleiste, lediglich über einen Zigbee-Standard kommuniziert, während das dritte Element 206, also die Kamera, lediglich über WLAN kommunizieren kann. Wünschenswert ist natürlich das
Vorhandensein eines Elements im dynamischen Netzwerk, das als Gateway zwischen den Funkstandards funktioniert. Dieses
Gateway kann auch als unabhängige Einheit bereitgestellt sein. Ebenso ist es denkbar, dass bspw. das erste Element 202, also das Smartphone, als Gateway funktioniert.
[00037] Die logische Ebene der Kommunikation über die
Overlay-Struktur erlaubt ein dynamisches Wegwahlverfahren, so dass eine Verbindung auch bei Weg- oder Ausfall einzelner Netzwerkelemente hergestellt werden kann. Das System ist dabei besonders optimiert, wenn das Netzwerk viele Elemente aufweist und so viele physikalische Kommunikationswege zur Verfügung stehen.
[00038] Fig. 3 zeigt die schematische Darstellung eines beispielhaften Kommunikationsvorgangs 300 zwischen
Vorrichtungen eines dynamischen Netzwerks gemäß dem
Ausführungsbeispiel der Fig. 2a. Dargestellt ist eine
Kommunikation zwischen dem ersten Element 202, also dem
Smartphone, dem zweiten Element 204, also der Klingelleiste, und dem dritten Element 206, also der Kamera. Diese
Kommunikation erfolgt auf Ebene der Overlay-Struktur . Anhand des beispielhaften KommunikationsVorgangs 300 soll dargestellt werden, wie das dynamische Netzwerk in der Zusammenwirkung der Elemente gestaltet werden kann.
[00039] In einem ersten Schritt 302 wird das im zweiten Element 204 enthaltene Datenmodell mittel der cione-Funktion kopiert. Mittels dieser Kopie erhält ein Nutzer über das
Smartphone die Möglichkeit, das Datenmodell der zweiten
Elements 204 darzustellen und ggf. zu verändern. In einem zweiten Schritt 304 wird das im dritten Element 206 enthaltene Datenmodell mittels der clone-Funktion kopiert. Der Nutzer erhält so über das Smartphone ebenfalls die Möglichkeit, das Datenmodell der zweiten Elements 204 darzustellen und ggf. zu verändern. In einem dritten Schritt 306 kann der Nutzer im ersten Element die Kopien der beiden Datenmodelle verändern. Bspw. kann der Nutzer die Datenmodelle dahingehend verändern, dass das dritte Element 206, also die Kamera, aufgrund eines von dem zweiten Element 204, als der Klingel, veröffentlichten Ereignisses, bspw. der Betätigung eines Klingelknopfes, aktiviert wird und einen Datenstrom mit den aufgezeichneten Bildern veröffentlicht.
[00040] Die Veränderung der Datenmodelle geschieht zunächst in den im Smartphone vorhandenen Kopien. Erst durch die
Anwendung der update-Funktion in einem vierten Schritt 308 werden die Kopien der Datenmodelle an das zweite Element 204 und das dritte Element 206 übertragen und ersetzen die dort bislang vorhandenen Datenmodelle. Sobald dieses Update stattgefunden hat, kann das dritte Element 206 in einem fünften Schritt 310 eine subscribe-Anfrage an das zweite
Element 204 stellen. Das dritte Element 206 wird so von dem zweiten Element 204 informiert, sobald eine Aktualisierung eines definierten Zustandswerts sich ändert. Wird bspw. eine Klingel der Klingelleiste betätigt, erfolgt eine
Veröffentlichung der Änderung des entsprechenden
Zustandswerts. Die Veröffentlichung geschieht in einem
sechsten Schritt 312, einem publish-Schritt , über das
dynamische Netzwerk. So erhält das dritte Element 206 die AktualisierungsInformation und kann bspw. daraufhin eine Aktion ausführen, bspw. kann aufgrund der Information über die Betätigung der Klingel die Kamera aktiviert werden.
Entsprechend der Lage der Klingel kann die Kamera bspw. auch so gesteuert werden, dass ein vorbestimmter Raumausschnitt von der Optik der Kamera erfasst wird. Dies kann insbesondere auch dann geschehen, wenn die Kamera laufend aktiviert ist.
[00041] Der Prozessablauf ist nicht abschließend und es werden fortlaufend piiblish-Schritte des zweiten Elements 204 erfolgen können. Ebenso können immer wieder clone-Schritte erfolgen, die es erlauben, das Datenmodell des zweiten
Elements 204 und/oder des dritten Elements 206 auf ein
weiteres Element des dynamischen Netzwerks zu kopieren und dort ggf. zu verändern. So kann der subscribe-Schritt des dritten Elements 206 rückgängig gemacht werden und eine
Beeinflussung der Aktionen des dritten Elements 206 durch eine Aktualisierung eines Datums des zweiten Elements 204
unterbunden werden. Ebenso ist es denkbar, dass die Aktion, die im dritten Element 206 weiter beeinflusst wird, bspw. in dem es von dem Zustand eines Datums eines weiteren Elements des dynamischen Netzwerks abhängig gemacht wird. So kann die Kamera bspw. nur dann aktiviert werden, wenn ein
Helligkeitssensor eine hinreichend hohe Ausleuchtung des zu beobachteten Raumbereichs anzeigt. Insgesamt soll das gezeigte Ausführungsbeispiel insbesondere unterstreichen, welche hohe Flexibilität und Gestaltungsfreiheit in dem in dieser Offenbarung dargestellten dynamischen Netzwerk erzielt werden kann. Grundlage dafür ist insbesondere die bspw. in Hinblick auf Fig. 1 beschriebene für das dynamische Netzwerk geeignete Vorrichtung, die anschaulich auch als autonomer Agent in dem dynamischen Netzwerk bezeichnet werden kann.
[00042] Fig. 4 zeigt die schematische Darstellung eines Ausführungsbeispiels einer Benutzeroberfläche 400 auf einer Mensch-Maschinen-Schnittstelle des ersten Elements 202 zur Einrichtung und Bearbeitung von Verknüpfungen in einem
dynamischen Netzwerk anhand des in Fig. 2a, Fig. 2b und Fig. 3 gezeigten Ausführungsbeispiels.
[00043] Auf der Benutzeroberfläche 400 sind die in dem dynamischen Netzwerk erkannten Elemente dargestellt. Das sind das erste Element 202, auf dem sich die Benutzeroberfläche 400 selber befindet, das zweite Element 204, also die
Klingelleiste und das dritte Element 206, also die Kamera. Die Elemente werden derart dargestellt, dass auf der linken Seite die Eingaben für die Steuerung einer Operation des jeweiligen Elements angegeben werden, die aus dem Netzwerk erhalten initiiert können, auf der rechten Seite sind die Daten des jeweiligen Elements angegeben, die von dem Element in Netzwerk veröffentlicht werden können. Dies soll kurz an dem dritten Element 206 erläutert werden. An der linken Seite ist ein Dateneingang 402 angezeigt. Dieser Dateneingang 402 fungiert als Trigger zur Aktivierung des dritten Elements 206. An der rechten Seite ist ein Datenausgang 404 angegeben, in gezeigten Fall ein Datenausgang 404, der anzeigt, ob die Kamera ein Videostreaming aktiviert hat oder ob die Kamera inaktiv ist.
[00044] Auch das zweite Element 204 verfügt über einen
Datenausgang 406, der anzeigt, ob eine bestimmte Klingel der Klingelleiste aktiviert wurde.
[00045] Über die Benutzeroberfläche 400 kann ein Nutzer nun das Zusammenwirken der angezeigten Elemente des dynamischen Netzwerks beeinflussen, indem er zunächst über das Ausführen von clone-Schritten eine aktuelle Kopie der Datenmodelle dieser Elemente erhält. In dem anschließenden modelling- Schritt können diese Datenmodelle so verändert werden, dass ein Zusammenwirken der Elemente in dem dynamischen Netzwerk verändert werden. Bspw. kann der Datenausgang 406 vom Nutzer mit dem Dateneingang 402 verbunden werden. In dem
nachfolgenden update-Schritt führt dies dazu, dass das dritte Element 206 einen subscribe-Schritt bei zweiten Element 204 durchführt und die Kamerafunktion in Abhängigkeit einer
Zustandsänderung des am Datenausgang 406 veröffentlichten Datums ausführt.
[00046] Das gezeigte Ausführungsbeispiel wird hier anhand eines sehr einfachen dynamischen Netzwerks aus drei Elementen dargestellt. Bei komplexeren dynamischen Netzwerken mit einer Vielzahl von Elementen und Funktionen, die durch die Elemente ausgeübt werden können, steigt die Stärke des hier
dargestellten Systems, die Flexibilität und die Möglichkeit, das dynamische Netzwerk durch den Nutzer variabel zu gestalten bzw. umzugestalten. Insbesondere wird der Nutzer so befähigt, in leichter Weise beliebige Steuer- und Regelsysteme im dynamischen Netzwerk zu erstellen und auch sehr kontrolliert das Bereitstellen von Daten zu beeinflussen.
[00047] Durch die hohe Gestaltbarkeit und Flexibilität des so erzeugten Netzwerks ist es wünschenswert, das den Zugriff auf einzelne Elemente des Netzwerks beschränken zu können. Damit verbunden ist ein Sicherheitsaspekt, der nur einen befugten Zugriff auf das Netzwerk ermöglicht. Weil das Netzwerk
dynamisch aufgebaut werden kann, wie beispielsweise über das im Zusammenhang mit der Ausführung als Kademlia- Netzwerktopologie weiter oben in diesem Dokument genannte bootstrapping, ist vorteilhaft eine verschlüsselte
Kommunikation zwischen Netzwerkelemente zu gewährleisten.
Dabei ist insbesondere ein asymmetrisches
Verschlüsselungssystem, wie bspw. ein public Jcey-Kryptosystem geeignet. Ein Ausführungsbeispiel zur Anwendung eines solchen Kryptosystems ist anhand der Fig. 5 im Folgenden dargestellt.
[00048] Fig. 5 zeigt eine schematische Darstellung eines Verfahrens zur Zertifizierung der Kommunikation zwischen zwei Vorrichtungen zur Verwendung in einem dynamischen Netzwerk. [00049] Dargestellt ist die Erstellung einer Zertifikats- Hierarchie für eine die Verschlüsselung oder Signierung einer Kommunikation einer Vorrichtung 500 zur Verwendung in einem dynamischen Netzwerk. Ausgangspunkt ist ein Entwicklertool 502 in dem ein Ausgangszertifikat erstellt wird. Dieses
Ausgangszertifikat wird in einem ersten Schritt 502 an eine zentrale Zertifizierungsstelle 504 übermittelt, in der
ausgehend von dem Ausgangszertifikat eine gültige Zertifikats- Hierarchie erstellt wird, die aus einem Zertifizierungspfad aus Zertifikaten hin zu einem Stammzertifikat erstellt wird. Diese Zertifikats-Hierarchie wird in einem Zertifikatmanager 506 der Zertifizierungsstelle 504 dem Entwicklertool 502 zur Verfügung gestellt und kann über dieses während eines zweiten Schritts 508 in einen Zertifikatsspeicher 510 der Vorrichtung 500 übertragen werden. Der Zertifikatsmanager 506 erhält die Zertifikats-Hierarchie aus einer Zertifikatsquelle 505.
[00050] Die Vorrichtung 500 ermittelt aus der Zertifikats- Hierarchie ihre individuelle und signierte Identifizierung in der Overlay-Netzwerktopologie, bspw. ihre Node- ID in einer Kademlia-Netzwerktopologie . Die Signierung der Identifizierung ist über den öffentlichen Schlüssel der Vorrichtung 500 und/oder einen öffentlichen Schlüssel der
Zertifizierungsstelle 504 möglich. Durch die signierte
Identifizierung der Vorrichtung 500 kann sichergestellt werden, dass nachfolgend nur eine Vorrichtung 500 dem
dynamischen Netzwerk zugeordnet wird, das von
Zertifizierungsstelle 504 entsprechend zertifiziert wurde.
[00051] Darüber hinaus nutzt die Vorrichtung 500 die
Zertifikats-Hierarchie zu Übermittlung von Daten an andere Elemente der Overlay-Netzwerktopologie, wie an eine zweite Vorrichtung 512. Dabei dient die Zertifikats-Hierarchie sowohl der Verschlüsselung von übermittelten Daten als auch der
Entschlüsselung bzw. Verifizierung von empfangenen
Informationen innerhalb der Overlay-Netzwerktopologie.
[00052] In einem Update-Schritt 514 kann auf Anfrage der Vorrichtung 500 oder durch einen Anstoß der
Zertifizierungsstelle 504 eine erneuerte oder ausgewechselte Zertifikats-Hierarchie an die Vorrichtung 500 übertragen werden. Die Authentifizierung bzw. das Signieren und
Verschlüsselung der Übertragung von Daten der Vorrichtung 500 an die Zertifizierungsstelle 504 erfolgt dabei mit der jeweil gültigen Zertifikats-Hierarchie.
ABSCHLIESSENDE FESTSTELLUNG
[00053] Die Vorrichtung zur Verwendung in einem dynamischen Netzwerk, sowie das dynamische Netzwerk wurden zur
Veranschaulichung des zugrundeliegenden Gedankens anhand einiger Ausführungsbeispiele beschrieben. Die
Ausführungsbeispiele sind dabei nicht auf bestimmte
Merkmalskombinationen beschränkt. Auch wenn einige Merkmale und Ausgestaltungen nur im Zusammenhang mit einem besonderen Ausführungsbeispiel oder einzelnen Ausführungsbeispielen beschrieben wurden, können sie jeweils mit anderen Merkmalen aus anderen Ausführungsbeispielen kombiniert werden. Es ist ebenso möglich, in Ausführungsbeispielen einzelne dargestellt Merkmale oder besondere Ausgestaltungen wegzulassen oder hinzuzufügen, soweit die allgemeine technische Lehre
realisiert bleibt.