M2M by Eclipse
By Benjamin Cabé and Dominik Obermaier
()
About this ebook
Related to M2M by Eclipse
Titles in the series (100)
Java EE Security Rating: 0 out of 5 stars0 ratingsIT Wissensmanagement: Theorie und Praxis Rating: 0 out of 5 stars0 ratingsServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Rating: 0 out of 5 stars0 ratingsJavaScript auf dem Server Rating: 0 out of 5 stars0 ratingsF#: Ein praktischer Einstieg Rating: 0 out of 5 stars0 ratingsAlgorithmen: Grundlagen und Implementierung Rating: 0 out of 5 stars0 ratingsHTML5 Security Rating: 0 out of 5 stars0 ratingsBig Data: Technologiegrundlagen Rating: 0 out of 5 stars0 ratingsHTML5 für Mobile Web Rating: 0 out of 5 stars0 ratingsAmazon Web Services für .NET Entwickler Rating: 0 out of 5 stars0 ratingsSharePoint-Entwicklung für Einsteiger Rating: 0 out of 5 stars0 ratingsUX Design für Tablet-Websites: Ein Überblick Rating: 0 out of 5 stars0 ratingsJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Rating: 0 out of 5 stars0 ratingsEinstieg in Google Go Rating: 0 out of 5 stars0 ratingsNutzeraspekte in Suchmaschinen: Komponenten für eine gelungene Usability-Gestaltung Rating: 0 out of 5 stars0 ratingsTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Rating: 0 out of 5 stars0 ratingsApache Tapestry: Einstieg in die komponentenorientierte Webentwicklung Rating: 0 out of 5 stars0 ratingsErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Rating: 0 out of 5 stars0 ratingsBig Data: Executive Briefing Rating: 0 out of 5 stars0 ratingsNFC: Near Field Communication für Android-Entwickler Rating: 5 out of 5 stars5/5OAuth 2.0: Client & Server Rating: 0 out of 5 stars0 ratingsGeolocation mit PHP: Foursquare-API, Google Places & Qype Rating: 0 out of 5 stars0 ratingsVaadin Schnelleinstieg Rating: 0 out of 5 stars0 ratingsTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Rating: 0 out of 5 stars0 ratingsMobile Business: Was Entscheider morgen wissen müssen Rating: 0 out of 5 stars0 ratingsWebentwicklung mit dem Play Framework Rating: 0 out of 5 stars0 ratingsErfolgreiche Spieleentwicklung: OpenCL Rating: 0 out of 5 stars0 ratingsZend Framework 2: Für Einsteiger und Umsteiger Rating: 0 out of 5 stars0 ratingsSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Rating: 0 out of 5 stars0 ratingsÜberzeugende Präsentationen: Konzeption, Technik und Design Rating: 0 out of 5 stars0 ratings
Related ebooks
MQTT im IoT: Einstieg in die M2M-Kommunikation Rating: 0 out of 5 stars0 ratingsApache Kafka Rating: 0 out of 5 stars0 ratingsSoftware Development Trends: Wegweisende Beiträge für eine neue IT: Wegweisende Beiträge für eine neue IT Rating: 0 out of 5 stars0 ratingsTransformation der Kryptographie: Grundlegende Konzepte zur Verschlüsselung Rating: 0 out of 5 stars0 ratingsSoftware entwickeln mit C#, WPF und dem MVVM-Konzept Rating: 0 out of 5 stars0 ratingsTraum vom intelligenten Zuhause - Band 2: Programmier-Ratgeber für LCN Pro Rating: 0 out of 5 stars0 ratingsEinführung in die Heimautomatisierung: IoT mit Tinkerforge Rating: 0 out of 5 stars0 ratingsJavaScript für Java-Entwickler Rating: 0 out of 5 stars0 ratingsEnterprise Java Web Services Rating: 0 out of 5 stars0 ratingsJavaScript und TypeScript für C#-Entwickler Rating: 0 out of 5 stars0 ratingsBlockchain & Kryptowährungen für Anfänger Rating: 0 out of 5 stars0 ratingsASP.NET Core: Eine Einführung Rating: 0 out of 5 stars0 ratingsBig Data: Datenverarbeitung basierend auf MOM und SQL Rating: 0 out of 5 stars0 ratingsTesting mit Visual Studio 2012: Testing mit Visual Studio 2012 Rating: 0 out of 5 stars0 ratingsBlockchain , Kryptowährungen und NFTs : Eine praktische Einführung Rating: 0 out of 5 stars0 ratingsDSL mit Xtext/Xtend. Luecken(x)text Rating: 0 out of 5 stars0 ratingsMicrosoft Azure: Cloud Entwicklung für lokale Applikationen Rating: 0 out of 5 stars0 ratingsAufsetzen, Testen und Betrieb einer Android-App Rating: 0 out of 5 stars0 ratingsAngular 2: Moderne Frontends für alle Plattformen entwickeln Rating: 0 out of 5 stars0 ratingsJava ME: Pragmatische Plattform für Mobile und Embedded Rating: 0 out of 5 stars0 ratingsSharePoint Kompendium - Bd. 16 Rating: 0 out of 5 stars0 ratings101 Cryptocoins: Anwendung & Technologie Rating: 0 out of 5 stars0 ratingsSoftware Defined Radio-Systeme für die Telemetrie: Aufbau und Funktionsweise von der Antenne bis zum Bit-Ausgang Rating: 0 out of 5 stars0 ratingsBlockchain leicht gemacht: Die Technologie hinter Kryptowährungen verstehen Rating: 0 out of 5 stars0 ratingsGrundlagen des Internet und Grundlagen Linux: Leicht verständlich erklärt Rating: 0 out of 5 stars0 ratingsMicrosoft AJAX: AJAX Libary, ASP .NET 2.0 Extensions, AJAX Control Toolkit Rating: 0 out of 5 stars0 ratingsDynamic Proxies: Effizient programmieren Rating: 0 out of 5 stars0 ratings
Internet & Web For You
Joomla 4.0 logisch!: Einfache Webseitenerstellung ohne Programmierkenntnisse Rating: 0 out of 5 stars0 ratingsWas kommt. Was geht. Was bleibt.: Kluge Texte über die wichtigsten Fragen unserer Zeit Rating: 0 out of 5 stars0 ratingsSEO mit Google Search Console: Webseiten mit kostenlosen Tools optimieren Rating: 0 out of 5 stars0 ratingsSo findest du den Einstieg in WordPress: Die technischen Grundlagen zu Installation, Konfiguration, Optimierung, Sicherheit, SEO Rating: 0 out of 5 stars0 ratingsUX Design - Definition und Grundlagen: Definition und Grundlagen Rating: 4 out of 5 stars4/5Google Platz 1: Lernen Sie von einem der führenden Suchmaschinenoptimierer Deutschlands Rating: 0 out of 5 stars0 ratingsPHP für WordPress: Themes und Templates selbst entwickeln Rating: 0 out of 5 stars0 ratingsEinführung ins Darknet: Darknet ABC Rating: 0 out of 5 stars0 ratingsSECURITY AWARENESS: Leitfaden zur IT-Sicherheit für Anwender Rating: 0 out of 5 stars0 ratingsUX-Missverständnisse: Was sich User wirklich wünschen Rating: 0 out of 5 stars0 ratingsSchnelleinstieg WordPress SEO: Einstellungen, Keywords, Plug-ins und Strategien für optimales SEO Rating: 0 out of 5 stars0 ratingsReact lernen und verstehen Rating: 0 out of 5 stars0 ratingsDas kleine Hypnose Einmaleins - Alles was Sie schon immer über die Hypnose wissen wollten von Ewald Pipper vom Hypnoseinstitut Rating: 0 out of 5 stars0 ratingsPHP 7 und MySQL: Ihr praktischer Einstieg in die Programmierung dynamischer Websites Rating: 0 out of 5 stars0 ratingsDas Facebook-Marketing-Buch Rating: 4 out of 5 stars4/5Das Prezi-Buch für spannende Präsentationen Rating: 0 out of 5 stars0 ratingsAndroid Security: Von Fake-Apps, Trojanern und Spy Phones Rating: 0 out of 5 stars0 ratingsDer Content Faktor: Schreiben Sie Texte, die gefunden und gelesen werden Rating: 0 out of 5 stars0 ratingsUX Design für Tablet-Websites: Ein Überblick Rating: 0 out of 5 stars0 ratingsChatGPT Plus: Durchstarten in eine neue Welt: Entdecken Sie Künstliche Intelligenz mit ChatGPT Plus und GPT-4 Rating: 0 out of 5 stars0 ratingsWir machen dieses Social Media Rating: 0 out of 5 stars0 ratings30 Minuten Metaverse Rating: 0 out of 5 stars0 ratingsShopware 6 Handbuch Rating: 0 out of 5 stars0 ratingsSEO Crashkurs - 10 Schritte zum Erfolg auf Google Rating: 0 out of 5 stars0 ratingsDas Buch zu Google Ads: Strategien für kleine und mittlere Unternehmen Rating: 0 out of 5 stars0 ratingsProgrammieren lernen mit Python 3: Schnelleinstieg für Beginner Rating: 0 out of 5 stars0 ratingsPR im Social Web: Das Handbuch für Kommunikationsprofis Rating: 0 out of 5 stars0 ratingsJavaScript kinderleicht!: Einfach programmieren lernen mit der Sprache des Web Rating: 0 out of 5 stars0 ratingsMarketing für Selbständige: Schwerpunkt Social Media Rating: 0 out of 5 stars0 ratings
Reviews for M2M by Eclipse
0 ratings0 reviews
Book preview
M2M by Eclipse - Benjamin Cabé
Dominik Obermaier, Benjamin Cabé
M2M
by Eclipse
ISBN: 978-3-86802-476-0
© 2013 entwickler.press
Ein Imprint der Software & Support Media GmbH
1 Dialog der Maschinen
Leichtgewichtige M2M-Kommunikation mit MQTT
„Internet of Things" ist in aller Munde. Durch immer günstigere Einplatinencomputer wie Raspberry Pi und Arduino ist es möglich, kostengünstig Geräte, etwa für die Erhebung und Auswertung für Sensordaten, über das Internet zu vernetzen. Zeit, sich Paho genauer anzusehen, die Referenzimplementierung des leichtgewichtigen MQTT-Protokolls zur M2M-Kommunikation für Java.
Der Begriff „Internet of Things" wurde bereits 2009 von Kevin Ashton geprägt [1] und bezeichnet die Vernetzung von Dingen der realen Welt über das Internet oder geschlossenen Netzwerken. Die Grundidee ist simpel: Physische Geräte können miteinander kommunizieren und so Daten untereinander austauschen oder gar gesteuert werden. Populär ist dieser Ansatz bereits bei der Erhebung von Sensordaten, die daraufhin über das Internet an interessierte Clients gesendet werden. Diese Daten werden dann meist aggregiert und für Menschen lesbar in Form von Charts oder Statistiken aufbereitet.
Die Anwendungsszenarien sind praktisch unbegrenzt. Stellen Sie sich vor, Ihr Wecker würde automatisch zehn Minuten später klingeln, da er benachrichtigt wird, dass Ihre Zugverbindung 15 Minuten Verspätung hat. In der Folge schaltet sich Ihre Kaffeemaschine automatisch auch zehn Minuten später ein, damit Ihr Frühstückskaffee nicht kalt ist, bis Sie aufstehen. Klingt wie Zukunftsmusik? Das alles ist inzwischen schon möglich. Die Firma Ericsson prognostiziert, dass bis 2020 mindestens 50 Milliarden Geräte über das Internet kommunizieren werden [2]. Möglich ist das Ganze durch die zunehmende Verbreitung von IPv6 und offenen Maschine-zu-Maschine- (M2M-)Kommunikationsprotokollen, die leichtgewichtig genug sind, um mit möglichst wenig Protokolloverhead sogar über Mobilfunknetze eine günstige Kommunikation zu erlauben.
MQTT
Das Message Queue Telemetry Transport (MQTT) Protocol wurde 1999 von Andy Stanford-Clark (IBM) und Arlen Nipper (Eurotech) als M2M-Kommunikationsprotokoll mit minimalem Protokolloverhead entwickelt, um vernetzten Geräten eine Möglichkeit zu bieten, möglichst bandbreiten- und batterieschonend zu kommunizieren.
MQTT basiert auf dem Publish-Subscribe-Pattern. Das bedeutet, dass die Clients sich untereinander nicht kennen und einen zentralen Verteiler, einen so genannten Broker, zur Kommunikation nutzen. Der Broker ist dafür zuständig, dass eine gesendete Nachricht alle interessierten Clients erreicht. Wenn ein Client sich mit einem Broker verbindet, teilt er dem Broker mit, für welche Topics er benachrichtigt werden möchte, welche er also abonnieren möchte. Diesen Vorgang nennt man Subscribe. Wenn ein Client eine Nachricht sendet, muss er die Information mitsenden, an welches Topic diese Nachricht gesendet werden soll. Diesen Vorgang nennt man Publish. Durch diese Architektur ist es möglich, hochskalierbare Lösungen mit Tausenden von