© WZL/Fraunhofer IPT Eine Gegenüberstellung von Websockets und RESTful Web Services Seminarvortrag von Lucie Mades.

Slides:



Advertisements
Ähnliche Präsentationen
Eric Dahl, Axel Emmer, Andreas Schmitt
Advertisements

für das Schulnetz der BS Roth
Aufbau des Internets Überblick Prof. Dr. T. Hildebrandt
Basis-Architekturen für Web-Anwendungen
Kapitel 8: Nachrichtenbasierte Kommunikation mit JMS
Sebastian Peters TIB-Workshop zur DOI-Registrierung 3. November 2011 DataCite Technik Vertiefung.
Lightweight Directory Access Protocol
FH-Hof Servlets Richard Göbel. FH-Hof Konzept Servlets werden auf der Server-Seite durch ein Formular aufgerufen werten die Eingaben aus einem Formular.
XForms Von Matthias Keck.
1 Web Services (SOAP, REST, WSDL). © Prof. T. Kudraß, HTWK Leipzig 2 Web Service – Definitionen? Gartner Group: Web services are software technologies,
Netze Vorlesung 11 Peter B. Ladkin
Martin MauveUniversität Mannheim1 3.6 User Datagram Protocol (UDP) RFC 768. J. Postel. User Datagram Protocol unzuverlässiges Transportprotokoll.
Seminar Internet Technologien
Überlegungen zur Architektur eines Fachinformations-Netzwerkes am Beispiel des CeGIM Mehrwert ist es nicht nur, Daten von ihren Quellen zu den Nutzern.
Zukunft des Webs? Dennis Beer Christian Blinde
von Julia Pfander und Katja Holzapfel E 12/2
Das Web als Präsentations- / Kommunikationsschicht
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 4 Folie 2 Message Passing mittels Sockets (1) s.a.
Mit Schülern ein internetfähiges Netzwerk aufbauen
Referent: Kiron Mirdha Betreuer: Rene Hilden Juli 2012
VoIP – Voice over IP Das SIP-Protokoll und seine Sicherheit
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Integration heterogener verteilter Systeme mit WS-BPEL – ein Praxisbeispiel Dr. Wolf-Dieter Heinrichs.
OpenStack Jörn Esdohr | Oktober 2012, Dortmund.
Webservice Grundlagen
Tobias Kluge: FAME Middleware / Karlsruhe / The FAME project – Middleware.
UNIVERSITÄT ZU KÖLN HISTORISCH-KULTURWISSENSCHAFTLICHE INFORMATIONSVERARBEITUNG REUSABLE - CONTENT SS 2013 MARIA WAGNER ReST.
Client-Server Systeme
Grundlagen: Client-Server-Modell
Nicolas Frings Maximilian Bernd Stefan Piernikarcyk
Julia Grabsch Florian Hillnhütter Fabian Riebschläger
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1)
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 2013 Kapitel 6 Folie 2 WCF Data Services (1) s.a.
Internet und SMS Internet und SMS Daniel Rickenbacher Jeremy Deuel.
Management- und Web Services- Architekturen
Netzwerke.
Web 2.0 & AJAX (A)sysnchrones (J)avaScript (A)nd (X)ML
HTTP IT-Zertifikat Universität zu Köln Allgemeine Technologien II
Push-Technologien 4.6 Was ist Push ? Einsatzgebiete Vor- und Nachteile
Provider und Dienste im Internet
Reinhold Rumberger Web Services.
Eike Schallehn, Martin Endig
IPv6 Von Judith Weerda Diese Vorlage kann als Ausgangspunkt für die Präsentation von Schulungsmaterialien in einer Gruppensitzung dienen. Abschnitte.
SharePoint 2013 Web Services
VPN – Virtual Private Network
->Prinzip ->Systeme ->Peer – to – Peer
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
TCP/IP.
Schutzvermerk nach DIN 34 beachten TCP / IP. Schutzvermerk nach DIN 34 beachten TCP / IP und das OSI-Referenzmodell Process / Application Host-to-Host.
© Zühlke 2013 Romano Roth Workshop 6 (ws6C) native Entwicklung für mobile Geräte Lektion 2: Service 18. February 2013 Folie 1 von 19.
Das World Wide Web Stephan Becker TIT05BGR SS06. Das World Wide Web Übersicht Hypertext & Hypermedia HTML Dokumentenidentifikation Dokumententransport.
Web Services als Remote Content Provider in Portalumgebungen Vorstellung und Diskussion des Themas Präsentation des Prototypen Konzeption und prototypische.
Internet - Grundbegriffe Unterlagen zum Kurs "Wie erstelle ich eine Homepage?"
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
Cloud Entwicklung: Web Services
WEBSOCKETS DATUM AUTOR.
Generic Enabler Felix Holzäpfel-Stein, Aachen Generische Komponenten im Cloudkontext.
Webbasierte Kommunikation am Beispiel REST Seminarvortrag von Heiko Overath.
Identity Management.  Zentrale Begriffe und Probleme  Modellbildung  Methoden zur Authentisierung über HTTP  Technische Aspekte  Compliance  Hindernisse,
Vergleich verschiedener Kommunikationsinfrastrukturen in Enterprise Information Systems Ben Mainz Seminar am Lehrstuhl für Software Engineering RWTH Aachen.
Webservices SOAP und REST Nicole Fronhofs 1. Betreuer: Prof. Dr. Volker Sander 2. Betreuer: B. Sc. Sebastian Olscher.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Web Services Dr. Wolfgang Wörndl
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
Schnittstellen für Verteilte System mit J2EE Frank Schwichtenberg SourceTalk 2008 Göttingen,
SOAP - WSDL Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 2 Hauptseminar: Virtuelle.
ICMP Internet Control Message Protocol Michael Ziegler Universität Freiburg Michael Ziegler.
Prof. Dr.-Ing. Franz-Josef Behr Geodaten und Datenmodell
Systeme II 6. Die Anwendungsschicht
 Präsentation transkript:

© WZL/Fraunhofer IPT Eine Gegenüberstellung von Websockets und RESTful Web Services Seminarvortrag von Lucie Mades

Seite 2© WZL/Fraunhofer IPT Gliederung RESTful Web Services –Der REST Architekturstil –Web Services –RESTful Web Services –Vor- und Nachteile Websockets –Generelle Idee –Das Websocket-Protokoll –Implementierung –Vor- und Nachteile Fazit

© WZL/Fraunhofer IPT RESTful Web Services –Der REST Architekturstil –Web Services –RESTful Web Services –Vor- und Nachteile

Seite 4© WZL/Fraunhofer IPT REST: Der REST-Architekturstil REpresentational State Transfer Strukturierung verteilter Systeme –Besonders: Web Services im Internet Grundgedanke: Netzwerkkommunikation erleichtern durch ausgewählte Einschränkungen Bedingungen an eine REST-Anwendung –Einheitliche Schnittstelle –Adressierbarkeit –Zustandslose Kommunikation –Schichtensystem –Verbindungshaftigkeit

Seite 5© WZL/Fraunhofer IPT REST: Der REST-Architekturstil Ressourcen –Informationen aller Art –Erreichbar über eindeutige Adresse –Bearbeitung durch einfaches Set einheitlicher Methoden: GET, PUT, POST, DELETE –Verweise auf andere Ressourcen (Verbindungshaft) Repräsentationen –Den Anforderungen entsprechend –Verschiedene Repräsentationen für die gleiche Ressource –Vordefinierte Formate (HTML, XML, JPG, …)

Seite 6© WZL/Fraunhofer IPT 1 1 M=0,0;R=1 (1,0);(0,1);(-1,0) x²+y² = 1 … Repräsentationen des KreisesDer Kreis als Figur: REST: Beispiel für verschiedene Repräsentationen einer Ressource x y

Seite 7© WZL/Fraunhofer IPT REST: Web Services Bereitstellung von Diensten über ein Netzwerk Unabhängig vom service provider Klare Schnittstelle –Datenformat –Transportprotokolle plattformunabhägig

Seite 8© WZL/Fraunhofer IPT REST: RESTful Web Services Verwendung etablierter Standards –HTTP –URI –Datenformate: XML, HTML, XHTML, JPG, … Vielseitige Verwendung von Ressourcen –Datenspeicherung –Verwaltung der Daten –Komplexe Aufträge und Antworten Anwendung = geschickter Ressourcenaufbau

Seite 9© WZL/Fraunhofer IPT REST: RESTful Web Services HTTP-Methoden: –GETAbfragen –PUTErstellen / überschreiben –POSTAktualisieren –DELETElöschen Beispiel einer Anfrage: GET HTTP/1.1 If-Modified-Since: Fri, 2 Nov :43:31 GMT Synchrone Kommunikation –Server agiert reaktiv –Problem: Echtzeitfähigkeit erfordert regelmäßige Updates –Notlösungen: Polling, Long-Polling und Streaming

Seite 10© WZL/Fraunhofer IPT REST: Polling

Seite 11© WZL/Fraunhofer IPT REST: Long-Polling

Seite 12© WZL/Fraunhofer IPT REST: Streaming

Seite 13© WZL/Fraunhofer IPT REST: Vor- und Nachteile Einfache Verwendung –Einheitliche Schnittstellen –wenige Methoden Flexible Darstellung verwalteter Daten Standardisiert –Kompatibilität –Derzeit meist verbreitetes Modell Einseitige Verbindung –Nur Client kann Nachricht schicken –Lösungen nicht schnell genug Overhead –Hohe Latenz –Netzbelastung Multiple Verbindungen Quelle: Programmable Web

© WZL/Fraunhofer IPT Websockets –Generelle Idee –Das Websocket-Protokoll –Implementierung –Vor- und Nachteile

Seite 15© WZL/Fraunhofer IPT Websockets: Generelle Idee Grundmodell: Socket Asynchrone Kommunikation TCP-Datenstrom über HTTP-Sitzung –Implememtiert als HTTP-Upgrade Ermöglicht Socket-Tunnel über verteilte Netzwerke

Seite 16© WZL/Fraunhofer IPT Websockets: Das Websocket-Protokoll Zwei Hauptbestandteile: –handshake –message framing Eigenes Url-Schema für Server: ws://echo.websocket.org/ bzw. wss://echo.websocket.org/ Erlaubte Nachrichtentypen: –Textdaten –Binärdaten –Control Frames

Seite 17© WZL/Fraunhofer IPT Websockets: Opening Handshake GET /chat HTTP/1.1 Host: server.example.com Upgrade: WebSocket Connection: Upgrade Sec-Websocket-Key: dGhlIHNhbXBsZSBub25jZQ== (…) HTTP/ Switching Protocols Upgrade: WebSocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo= (…) Client Server

Seite 18© WZL/Fraunhofer IPT Websockets: Message Framing Extended Payload length continued (if payload len == 127) RSV1RSV FINFIN RSV3RSV3 RSV2RSV2 opcode (4) MASKMASK Payload len (7) Extended Payload length (16/64) (if payload len == 126/127) Masking-key (if MASK set to 1) Making-key (continued)Payload Data Payload Data … Quelle: The Websocket Protocol, IETF

Seite 19© WZL/Fraunhofer IPT Websockets: Implementierung: Interface (vereinfacht) [Constructor(DOMString url, optional (DOMString or DOMString[]) protocols)] interface WebSocket{ readonly attribute DOMString url; // networking attribute EventHandler onopen; attribute EventHandler onerror; attribute EventHandler onclose; readonly attribute DOMString extensions; readonly attribute DOMString protocol; void close(); // messaging attribute EventHandler onmessage; void send(DOMString data); void send(Blob data); }; Quelle: The Websocket API, W3C

Seite 20© WZL/Fraunhofer IPT Websockets: Vor- und Nachteile Ersatz für synchrone „Notlösungen“ (Polling, …) Schnellere Verbindung Weniger Overhead –Minimaler Header nur 2 Byte Umgehung von Firewalls und Proxys –Verbindung bildet Tunnel –Aufbau über Standard-Ports Rückstufung auf Kommunikation ohne Standardisierung –Kompatibilität leidet –Keine Einheitlichkeit Quelle:

© WZL/Fraunhofer IPT Fazit

Seite 22© WZL/Fraunhofer IPT Fazit: verschiedene Anwendungsgebiete Websockets: –Echtzeitanwendungen –Einzelne / spezielle Anwendungen –Geringe Latenz Web Services: –Übersichtliche, kompatible Anwendungen –Keine längeren Sessions