Die Internet-Protokollwelt

Werbung
Die Internet-Protokollwelt
Wintersemester 2016/17
Die InternetProtokollwelt
9. ANWENDUNGEN IM INTERNET
Übersicht
Anpassung der Darstellung
E-Mail
File Transfer
World Wide Web
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
310
1
Die Internet-Protokollwelt
Wintersemester 2016/17
Heterogene Darstellungen
Ziele:
◦ Behandeln der Darstellung (Syntax) von
Informationen
◦ Bewahren der Bedeutung (Semantik) der
Informationen
Transparente Übertragung
nicht ausreichend
24 Bit Integer
Umkodierung
erforderlich
Schicht 5
Schicht 4
Schicht 3
Transparente
Übertragung
Lokale
Darstellung
der Information
32 Bit Integer
Schicht 5
Schicht 4
Schicht 3
...
◦ Unterschiedliche Rechnersysteme
 verschiedene Darstellungen
◦ Konsequenz: Umkodieren der zu
übermittelnden Daten erforderlich
◦ Austauschstandards
Beispiel:
...
Aufgaben der Darstellungsschicht:
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
311
ASN.1
Die abstrakte Syntax-Notation eins für eine darstellungsunabhängige Syntax
(Abstract Syntax Notation 1, ASN.1):
◦ von der ISO genormte Beschreibungssprache (X.680 – X.683)
◦ erlaubt Typdefinitionen und die Spezifikation von Werten
◦ Datentypen in vier Klassen eingeteilt:
 Universal: global definierte Typen, z. B. Integer
 Application: Typen, die in einem anderen Standard definiert werden (z. B. FTAM, MHS)
 Private: für Anwendungen eines Benutzers definierte Typen
 Context-Specific: Typen, die nur in dem speziellen Kontext, in dem sie eingesetzt werden, definiert sind
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
312
2
Die Internet-Protokollwelt
Wintersemester 2016/17
ASN.1: Universal Types
ELEMENTARE DATENTYPEN
STRUKTURIERTE DATENTYPEN
◦ Boolean
◦ Sequence:
Geordnete Liste von Datentypen
(vgl. Record in PASCAL)
◦ Bitstring
◦ Set:
Ungeordnete Menge von Datentypen
◦ Octetstring
◦ Sequence of: Geordnete Liste von Elementen des gleichen
Datentyps (vgl. Array in PASCAL)
◦ Integer
◦ IA5String
◦ …
Beispiel:
Mitarbeiter ::= Set { Name
Alter
Personalnr
IA5String,
Integer,
Integer
}
◦ Set of:
Ungeordnete Menge von Elementen des
gleichen Datentyps
◦ Choice:
Ungeordnete Menge von Datentypen, aus der
einige Datentypen ausgewählt werden können
(vgl. Varianter Record in PASCAL)
313
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
ASN.1: Kodierung/Dekodierung
BASIS-KODIERUNGSREGELN
(BASIC ENCODING RULES, BER)
Bezeichner
Bit
7
6
BEISPIEL: INTEGER MIT WERT 5
Länge
5
4
3
Inhalt
2
1
0
Bezeichner
2
Universal
einfach Integer
Typklasse
Datentyp
00: Universal
0: einfach
01: Application
1: strukturiert
02: Context Specific
03: Private
Inhalt
1
5
Tag-Nummer
0..30: wie angegeben
31: nächstes Byte gibt Tag an
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
Länge
0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1
314
3
Die Internet-Protokollwelt
Wintersemester 2016/17
Ziele und Vorteile elektronischer Post
Hauptziel: Internationaler Dienst zum Austausch elektronischer Mitteilungen zwischen Personen
Inhalt
Inhalt
oder zwischen Rechnern
Briefkasten Postamt
Postamt Briefkasten
Absender
Umschlag
Empfänger
Umschlag
(a) Traditionelle Brief-Post
Terminal
User
Agent
Message
Transfer
Agent
Message
Transfer
Agent
User
Agent
Terminal
(b) Elektronische Post
Absender
Empfänger
315
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Mail im Internet
User
File
System
SenderSMTPInstanz
SMTPCommands
Replies
ReceiverSMTPInstanz
File
System
Simple Mail Transfer Protocol, SMTP [RFC 5321]
◦ für die Übermittlung von E-Mails
◦ Dienste: Übermittlung und Vervielfältigung von E-Mails
◦ Sender- und Receiver-SMTP-Instanz in einem Betriebssystemprozess realisiert
◦ Receiver-SMTP-Instanz kann Nachrichten für nicht-lokale Benutzer entweder ablehnen oder
weitervermitteln
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
316
4
Die Internet-Protokollwelt
Wintersemester 2016/17
Mail im Internet:
Ein Beispiel für einen SMTP-Dialog
R:
S:
R:
S:
R:
S:
R:
S:
R:
S:
220 MIT-Multics.Arpa Simple Mail Transfer Service Ready
HELO Isi-VaxA.Arpa
250 MIT-Multics.Arpa
MAIL FROM: [email protected]
250 OK
RCPT TO: [email protected]
250 OK
DATA
354 Start mail input; end with <CRLF>.<CRLF>
< Text Line 1 >
< etc. >
.
R: 250 OK
S: QUIT
R: 221 MIT-Multics.Arpa Service closing transmission channel
317
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Mail im Internet:
Abholen von E-Mails über POP3
empfangene Nachrichten
SMTP
Internet
gesendete Nachrichten
Mail-Server
Mail-Folder
Mail-Client
POP 3
Post Office Protocol, POP in der Version 3 [RFC 1939]
Senden von E-Mails mittels SMTP (Sender  Mail-Server)
Empfang von E-Mails vom Mail-Server mittels POP3 (Mail-Server  Client)
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
318
5
Die Internet-Protokollwelt
Wintersemester 2016/17
Mail im Internet:
Abholen von E-Mails über IMAP
Internet Message Access Protocol, IMAP in der Version 4 rev. 1 [RFC 3501]
◦ Herunterladen der E-Mails von einem Mail-Server (wie POP3)
◦ funktionale Obermenge von POP
◦ zusätzliche Funktionen, um E-Mail schon auf den Server zu durchsuchen und zu analysieren:
 Führen des Zustands des E-Mail-Kontos auf dem Mail-Server
 konsistente Sicht auf das E-Mail-Konto unabhängig vom verwendeten Client/Endgerät
 selektiver oder partieller Nachrichtentransfer
◦ zusätzliche Funktionalität in der Autorisierungsphase („Kerberos“)
◦ weitergehende Unterstützung allgemeiner Mailboxen mit Zugriffsmöglichkeiten für mehrere Benutzer bzw.
Benutzergruppen
319
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Multipurpose Internet Mail Extension, MIME
SMTP:
Nachrichtenkopf
◦ einfache ASCII-Texte als Nachrichten
◦ keine Struktur für den Hauptteil einer Nachricht
Nachrichtenrumpf
MIME [RFCs 2045 – 2049]:
◦ Erweiterung des Hauptteils einer Nachricht um Formatinformation
durch zwei neue Datenfelder für den Kopfteil einer Nachricht:
 Content-Type: Typ des Hauptteils
bisher Text, Multipart, Message, Application (Binary), Image, Audio,
Video und X-private
 Content-Transfer-Encoding: Transfer-Syntax, in der die Daten des
Hauptteils übertragen werden
bisher Base 64, Quoted Printable, 7bit, 8bit und binary
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
(incl. MIMEFormatinformationen)
Text
Bild
Audiosequenz
320
6
Die Internet-Protokollwelt
Wintersemester 2016/17
Mail und Sicherheit:
Pretty Good Privacy, PGP
Aufgabe:
Authentisierung und Verschlüsselung von Dateien
Funktionsweise (bei Nutzung aller Möglichkeiten):
1. Datenkompression (ähnlich gzip)
2. Daten-Authentisierung durch digitale Signatur
3. Symmetrische Verschlüsselung mit Sitzungsschlüssel, der Public-Key-verschlüsselt
vorangestellt wird
4. „Base64”-Kodierung für Mail-Übertragung
Datenformat:
inzwischen IETF-Standard – OpenPGP [RFC 4880]
321
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Secure Shell, SSH
[RFC 4251]
Aufgabe: sichere entfernte Rechnernutzung
◦ rsh/rlogin haben keine Authentisierung
◦ telnet überträgt Passworte ungeschützt
Funktionsweise:
1. Austausch eines Sitzungsschlüssels (Diffie-Hellman) und Server-Authentisierung (digitale Signatur)
danach: symmetrische Verschlüsselung + Message Authentication Code, MAC für alle Pakete
2. Benutzer-Authentisierung (digitale Signatur oder Passwort)
Zusätzliche Funktionalität:
◦ Verschlüsselte Dateiübertragung mit scp
◦ Verschlüsselte Tunnel für einzelne TCP-Ports
◦ automatische Einrichtung eines X11-Tunnels
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
322
7
Die Internet-Protokollwelt
File Transfer
Protocol, FTP
Wintersemester 2016/17
Benutzerschnittstelle
Benutzer
[RFC 959, RFC 3659]
Dateisystem
ClientSteuerprozess
FTP-Kommandos
FTP-Antworten
ServerSteuerprozess
ClientDatentransferprozess
Daten
ServerDatentransferprozess
Client
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Dateisystem
Server
323
FTP – Optionen und Dienste
FTP-Optionen:
◦ Datentyp (Text, Bitstrom, Bitgruppen)
◦ Dateistrukturen (File, Record, Page)
◦ Übertragungsmodus (Stream, Block, Compressed)
FTP-Dienste:
◦ Verbindungsaufbau mit Authentifizierung
◦ Dateiübertragung (z. B. put, get)
◦ Operationen auf Dateisystem (z. B. cd, dir)
◦ Hilfefunktionen (z. B. Kommando-Auflistung inkl. Parameter)
◦ Weitere implementierungsabhängige Dienste möglich
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
324
8
Die Internet-Protokollwelt
Wintersemester 2016/17
Zur Entwicklung des World Wide Web, WWW
Hervorgegangen aus Arbeiten des britischen Informatikers Tim Barners-Lee am
europäischen Forschungszentrum CERN (Genf)
◦ Ziel: Einfacher weltweiter Austausch von Dokumenten zwischen den Wissenschaftlern
Erster Prototyp Ende 1990
◦ grafisch (auf NEXTStep) und zeilenorientiert
Durchbruch des WWW durch den von Marc Andreesen und Eric Bina (University of Illinois) entwickelten
WWW-Client Mosaic
◦ ursprünglich auf Unix-Workstation unter X-Window-System entwickelt
◦ als Quellcode per FTP kostenlos verfügbar  schnelle Verbreitung
Gründung eines W3-Konsortiums zur Standardisierung des WWW im Juli 1994,
Vorsitzender: Tim Berners-Lee
Quelle: Von Paul Clarke - Eigenes Werk, CC-BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=37435469
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
325
Was ist das World Wide Web?
„an internet-wide distributed hypermedia information retrieval system“
[Liu et al., 1994]
„a global seamless environment in which all information (text, images, audio, video,
computational services) that is accessible from the Internet can be accessed in a consistent
and simple way by using a standard set of naming and access conventions“
[WebMaster Magazine, 1996]
„the universe of network-accessible information, the embodiment of human knowledge“
[W3C, 1999]
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
326
9
Die Internet-Protokollwelt
Wintersemester 2016/17
Ideen und Ziele des Web
◦ Lokalisierung von Information mit Hilfe einer einheitlichen Adressierungsmethode
◦ einheitlicher Zugang (lesen und schreiben) über eine standardisierte Benutzerschnittstelle
◦ Inhalte als Hypermedia-Dokumente
 visualisierbar
 abspielbar auf unterschiedlichsten Rechnern
◦ Integration externer Informationsquellen (z. B. Datenbanken)
◦ Unterstützung von Transaktionen als Grundlage für interaktive Anwendungen (Client/Server)
◦ keine Reglementierung von Informationsanbietern
 inhärente Informationsverteilung
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
327
Anforderungen eines verteilten
Dokumentensystems
Kodierung der Dokumente
◦ Inhalt
Dokumentenformat
◦ HyperText Markup Language, HTML
◦ Semantik
 Document Type Definition, DTD
◦ Darstellung
 Standardized General Markup Language, SGML
Identifikation der Dokumente
◦ Lokalisierung
◦ Zugriff
Identifikationsschema
◦ Uniform Resource Identifier, URI
 Uniform Resource Name, URN
 Uniform Resource Locator, URL
Transport der Dokumente
Transferprotokoll
◦ HyperText Transfer Protocol, HTTP
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
328
10
Die Internet-Protokollwelt
Wintersemester 2016/17
Architektur und Protokolle
Client/Server-Architektur
Synchrones Kommunikationsmodell (Request/Response)
Ressourcen
◦ Ausgetauschter Inhalt zwischen Client und Server
WebSeite
◦ Statisch oder dynamisch
WebSeite
WebSeite
WebClient
Request
Response
WebServer
WebSeite
Ressourcen
HTTP
329
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Festzulegen für Ressourcen
im World Wide Web
Aufbau der ausgetauschten Dokumente
Darstellung am Bildschirm
Anbindung von externen Quellen
◦ Common Gateway Interface, CGI [RFC 3875]
Formulare in HTML für die Parameterübermittlung
Request URL
Response (HTML mit Tags)
Request(URL [CGI] + Parameter)
Web
Server
CGIProgramm
Response(HTML mit Ergebnis)
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
330
11
Die Internet-Protokollwelt
Wintersemester 2016/17
Einheitliche Ressourcenidentifikation
Informationsressourcen müssen eindeutig identifizierbar sein
◦ Per Name
◦ Per Adresse/Lokation
Jede Ressource im Internet soll identifizierbar sein
◦ Web-Ressourcen, FTP-Ressourcen, News-Ressourcen, Mailboxes, Verzeichnisse, Dienste, ...
Anforderungen an das Identifikationsschema
◦ erweiterbar
◦ vollständig
◦ als einfache Zeichenkette darstellbar
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
331
Uniform Resource Identifier, URI
Syntax für alle Identifikatoren [RFC 3986]:
◦ <uri> ::= <scheme>":"<scheme-specific-part>
◦ <scheme> bezeichnet das Namensschema für diesen URI
◦ <scheme-specific-part> enthält aktuelle Identifikation entsprechend des Schemas
URIs können sein:
◦ Namen
– Uniform Resource Name, URN
◦ Lokationen/Adressen
– Uniform Resource Locator, URL
◦ Metainformationen
– Uniform Resource Characteristic, URC
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
332
12
Die Internet-Protokollwelt
Wintersemester 2016/17
Uniform Resource Name, URN
Vereinheitlichung jeglicher Namensgebung: URN [RFC 1737, RFC 2141]
◦ <urn> ::= "urn:" <nid> ":" <nss>
<nid> = Namespace Identifier
<nss> = Namespace Specific String
Eigenschaften:
◦ global eindeutig
◦ dauerhaft beständig
◦ skalierbar und erweiterbar
◦ Unterstützung bestehender Anwendungen
◦ unabhängig
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
333
URN - Auflösung
Infrastruktur für URNs zur Zeit noch im experimentellen Stadium
◦ Resolver Discovery Service, RDS
◦ Namensdienste/Namensauflösung (URN Resolver)
◦ Auflösung eines URN in URL oder URC
◦ Weitere Informationen: [RFC 1737, 2276, 3401]
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
334
13
Die Internet-Protokollwelt
Wintersemester 2016/17
Uniform Resource Locator, URL
Vereinheitlichung jeglicher Adressangabe
URL Schema-Definitionen [RFC 1738, 4248, 4266]
◦ http, https, ftp, news, nntp, mailto, telnet, ldap, ...
scheme-specific-part:
◦ ["//"][user[":"password]"@"]host[":"port]["/"url-path]
◦ Definitionen verwaltet die Internet Assigned Numbers Authority, IANA
◦ Relative URLs sind möglich
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
335
Abgrenzung: Web und Internet
Internet
◦ Verknüpfung heterogener Netzwerke
◦ gemeinsame Basis: Vermittlungsschichtprotokoll IP (allerdings in verschiedenen Versionen…)
◦ verschiedene Transportprotokolle verfügbar (TCP, UDP, RTP, ...)
◦ Vielzahl von Anwendungsprotokollen (Telnet, FTP, NNTP, SMTP, HTTP, ...)
World Wide Web
◦ einer von vielen Internetdiensten
◦ andere Internetdienste allerdings in das World Wide Web integrierbar
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
336
14
Die Internet-Protokollwelt
Wintersemester 2016/17
Protokoll-Flexibilität des Web-Clients
WWW-Server
HTTP
FTP-Server
NEWS-Server
FTP
NNTP
Mail-Server
...
SMTP
Internet
WWW-Client
FTP:
◦ Anzeige von Dateien eines FTP-Servers in der Web-Seite oder direkte Abholung durch Angabe des FTP-URL
NNTP:
◦ Angabe der gewünschten Newsgruppe im NEWS-URL
◦ außerdem: eine in einem NEWS-Artikel als URL angegebene Web-Seite kann direkt angesprochen werden
SMTP:
◦ Struktur des URL ist mailto:name@adresse
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
337
Medientypen im Web
offenes Konzept zur Integration beliebiger Medien
Übermittlung von Medien als MIME-Types (Multipurpose Internet Mail Extensions)
Interpretation verschiedener Medientypen im Web
◦ im Web-Browser eingebaut für elementare Typen (HTML, Text, GIF, JPEG, ...)
◦ durch Browser Plug-Ins (PDF, Real Audio, Real Video, ...)
◦ durch Aufruf externer Anwendungen (Helper Applications, z. B. für PostScript)
◦ Abspeichern als Datei
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
338
15
Die Internet-Protokollwelt
Wintersemester 2016/17
Dokumentenformat:
HyperText Markup Language, HTML
[RFC 2854]
Entwurfsziele
◦ einfach
◦ anwendungsübergreifend
◦ plattformunabhängig
Dokument aufgeteilt in
◦ HEAD (Dokumentenkopf)
◦ BODY (Dokumentenrumpf)
erlaubt Informationseingabe über Forms
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
339
Beispiel: Ein HTML-(Minimal-)Dokument
Start-Tag <...>
Ende-Tag </...>
Elementtypen html, head, ...:
◦ in SGML definiert als Generic Identifier, GI
◦ Verschiedene Strukturierungsmöglichkeiten des BODY-Elements
(z. B. <p> Absatz; <br> neue Zeile;
<hn> Überschrift der Ebene n)
<html>
<head>
<title> Dokumenttitel </title>
</head>
<body>
<p>Dies ist ein HTML-Dokument.</p>
</body>
</html>
◦ Diverse Schriftauszeichnungsmöglichkeiten
(z. B. <em> hervorheben; <strong> stark hervorheben; <i> italic; <b> fett)
◦ Standardzeichensatz:
 ISO 8859-1 (8-bit, ASCII als Untermenge enthalten)
 durch HTML 3 wurden weitere (z. B. Unicode, 16-bit) definiert
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
340
16
Die Internet-Protokollwelt
Wintersemester 2016/17
Transferprotokoll
Identifizierte Ressourcen müssen transportiert werden
Client/Server-Architektur
◦ Request/Response-Protokoll
◦ Transaktionscharakter
Entwurfsziele
◦ einfach
◦ leichtgewichtig
◦ schnell
Ergebnis: HyperText Transfer Protocol, HTTP
◦ basierend auf TCP
◦ idempotent, daher zustandslos
◦ ASCII-kodiert
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
341
Das HyperText Transfer Protocol
◦ Version 0.9 und 1.0 im [RFC 1945] beschrieben
◦ seit Januar 1997 existiert eine Version 1.1 [RFC 7230 ff.]
Wesentliche Eigenschaften
◦ setzt auf eine (sichere) TCP-Verbindung auf
◦ Default-Port: 80
◦ kurzlebige Verbindung, da der HTTP-Server nach Beantwortung einer Anfrage durch den HTTP-Client die
Verbindung sofort schließt
Beispiele von Befehlen (für Request/Response), die der Client in Version 1.0 absetzen kann:
◦ GET: Anfordern eines bestimmten Dokuments
◦ HEAD: Anfordern von Informationen über ein Dokument
◦ POST: Senden von Daten für die weitere Bearbeitung durch den Server
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
342
17
Die Internet-Protokollwelt
Wintersemester 2016/17
Web-Client & Web-Server
Client:
Server:
◦ URL einlesen
◦ auf HTTP-Requests warten
 Servername extrahieren und Serveradresse
bestimmen
 Dateiname extrahieren
◦ HTTP-Requests interpretieren
◦ Requests bearbeiten
 Zugriff auf Dateisystem
◦ TCP-Verbindung zum Server/Proxy aufbauen
◦ HTTP-Request erstellen und schicken
◦ HTTP-Response (aktiv) empfangen
 eventuell Delegation
◦ mit entsprechender Response antworten
Unterschiedliche Realisierungsmöglichkeiten
◦ HTTP-Response interpretieren
◦ iterativer Server
◦ Inhalte darstellen bzw. ausführen
◦ nebenläufiger Server
343
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
HTTP-Transaktion
Server
Benutzer
Ressource
laden
Analyse
der Seite
Transaktion 3
Transaktion 2
Transaktion 1
Client
Request
Request
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
Ressource
laden
Ressource
laden
344
18
Die Internet-Protokollwelt
Wintersemester 2016/17
HTTP/1.1
[RFC 7230 ff.]
für verteilte, kooperativ genutzte Hypermedia-Informationssysteme
Eigenschaften:
◦ generisch
◦ zustandslos
◦ objektorientiert
◦ offen
◦ unterstützt Typisierung von Daten
◦ unterstützt Verhandlung über Datenrepräsentation
◦ unabhängig von den übertragenen Daten
345
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Ablauf bei HTTP/1.0
http://www.tu-ilmenau.de/index.html
Protokoll=HTTP
DNS-Lookup
Connect TCP Socket
Connect TCP Socket
GET /index.html
HTTP/1.0
ACCEPT: */*
<CR><LF>
TCP-Verbindung
<HTML>
<HEAD>
<title>Homepage der
Technischen Universität
Ilmenau</title>
</HEAD>
<BODY>
...
Inhalt
...
Close TCP Socket
Close TCP Socket
Web Client
Web Server
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
346
19
Die Internet-Protokollwelt
Wintersemester 2016/17
Cookies
HTTP zustandslos, d.h. kein Zusammenhang zwischen zwei Anfragen
Zustandsspeicherung durch die Verwendung von Cookies beim Client
Befehle:
◦ Set-Cookie
◦ Cookie
(Server  Client)
(Client  Server)
Beispiele für ein Cookie:
◦ AWID
◦ 141.24.92.233.250231057309646408
◦ www.adobe.com/
◦ 1536
◦ 1739496192
◦ 29573643
◦*
347
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
HTTP – Zustandsbehaftete Kommunikation
Client
Server
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
348
20
Die Internet-Protokollwelt
Wintersemester 2016/17
Lastverteilung bei Web-Servern
Verteilen einer Domäne auf mehrere Subdomänen mit eigenem Rechner
Server-Cluster
◦ Anfragen von einem Front-End entgegengenommen
◦ Verteilung der Anfragen gemäß einem Algorithmus auf die dahinter liegenden Server
 Berücksichtigung der Auslastung
 Berücksichtigung der angefragten Dokumente
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
349
Beispiel Big/IP
http://www.f5.com/bigip
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
350
21
Die Internet-Protokollwelt
Wintersemester 2016/17
Web 2.0 Meme Map
Web 2.0
Aus: Tim O'Reilly:
What is the Web 2.0?
Design Patterns and Business
Models for the Next Generation
of Software
http://www.oreilly.de/artikel/
web20.html
PageRank,
Flickr,
Blogs:
BitTorrent:
eBay Reputation,
del.icio.us:
Participation,
Radical DeAmazon Reviews: User
Tagging,
not Publishing
centralization
as Contributor
not Taxonomy
Google AdSense:
Gmail, Google
Customer Self-Service
Maps and AJAX:
Wikipedia:
Enabling the
Rich User
Radical Trust
Long Tail
Experience
Strategic Positioning:
An Attitude,
not a Technology • The Web as Platform
User Positioning:
The Long Tail
• You Control Your Own Data
Data as the
Intel Inside
Hackability
The Perpetual
Beta
Trust Your Users
Small Pieces
Loosely Joined
Core Competencies:
•
•
•
•
•
•
Services, Not Packaged Software
Architectures of Participation
Cost-Effective Scalability
Remixable Data Source and Data Transformations
Software Above the Level of a Single Device
Harnessing Collective Intelligence
The Right to Remix:
“Some Rights Reserved”
Software That Gets
Better the More
People Use It
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Rich User
Experience
Play
Emergent:
Granular
User Behavior
Addressability
not Predetermined of Content
351
Literatur
COMER, Douglas E. (2000): Computernetzwerke und Internets. München: Pearson Studium.
COMER, Douglas E. (2011): TCP/IP - Studienausgabe. Konzepte, Protokolle, Architekturen. Heidelberg:
mitp.
INTERNATIONAL TELECOMMUNICATIONS UNION: ITU-T Recommendation X.680 - X.693, August 2015:
Information Technology - Abstract Syntax Notation One (ASN.1) & ASN.1 Encoding Rules.
KRÜGER, Gerhard; RESCHKE, Dietrich (2004): Lehr- und Übungsbuch Telematik. Netze - Dienste Protokolle. 3., aktualisierte Auflage. München, Wien: Fachbuchverlag Leipzig im Carl-Hanser-Verlag.
STALLINGS, William (2014): Data and Computer Communications. 10th edition. Harlow, Essex, England:
Pearson Education.
STEVENS, W. Richard; Fall, Kevin R. (2012): TCP/IP Illustrated, Volume 1. The Protocols. Second Edition.
Reading, MA: Addison-Wesley.
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
352
22
Die Internet-Protokollwelt
Wintersemester 2016/17
RFCs
POSTEL, Jon; REYNOLDS, Joyce K. (1985): File Transfer Protocol. Internet Engineering Task
Force (IETF) (Request for Comments, 959).
SOLLINS, Karen; MASINTER, Larry (1994): Functional Requirements for Uniform Resource
Names. Internet Engineering Task Force (IETF) (Request for Comments, 1737).
BERNERS-LEE, Tim; MASINTER, Larry; MCCAHILL, Mark (1994): Uniform Resource Locators
(URL). Internet Engineering Task Force (IETF) (Request for Comments, 1738).
MYERS, John G.; ROSE, Marshall T. (1996): Post Office Protocol - Version 3. Internet
Engineering Task Force (IETF) (Request for Comments, 1939).
BERNERS-LEE, Tim; FIELDING, Roy T.; FRYSTYK NIELSEN, Henrik (1996): Hypertext Transfer
Protocol -- HTTP/1.0. Internet Engineering Task Force (IETF) (Request for Comments,
1945).
FREED, Ned; Borenstein, Nathaniel S. (1996): Multipurpose Internet Mail Extensions
(MIME) Part One: Format of Internet Message Bodies. Internet Engineering Task Force
(IETF) (Request for Comments, 2045).
MOATS, Ryan (1997): URN Syntax. Internet Engineering Task Force (IETF) (Request for
Comments, 2141).
SOLLINS, Karen (1997): Architectural Principles of Uniform Resource Name Resolution.
Internet Engineering Task Force (IETF) (Request for Comments, 2276).
CONNOLLY, Daniel W.; MASINTER, Larry (2000): The 'text/html' Media Type. Internet
Engineering Task Force (IETF) (Request for Comments, 2854).
MEALLING, Michael (2002): Dynamic Delegation Discovery System (DDDS) Part One: The
Comprehensive DDDS. Internet Engineering Task Force (IETF) (Request for Comments,
3401).
CRISPIN, Mark R. (2003): Internet Message Access Protocol - Version 4rev1. Internet
Engineering Task Force (IETF) (Request for Comments, 3501).
HETHMON, Paul (2007): Extensions to FTP. Internet Engineering Task Force (IETF) (Request
for Comments, 3659).
ROBINSON, David; COAR, Ken A.L. (2004): The Common Gateway Interface (CGI) Version 1.1.
Internet Engineering Task Force (IETF) (Request for Comments, 3875).
BERNERS-LEE, Tim; FIELDING, Roy T.; MASINTER, Larry (2004): Uniform Resource Identifier
(URI): Generic Syntax. Internet Engineering Task Force (IETF) (Request for Comments,
3986).
YLONEN, Tatu; LONVICK, Chris (2005): The Secure Shell (SSH) Protocol Architecture. Internet
Engineering Task Force (IETF) (Request for Comments, 4251).
CALLAS, Jon; DONNERHACKE, Lutz; FINNEY, Hal; SHAW, David; THAYER, Rodney (2007): OpenPGP
Message Format. Internet Engineering Task Force (IETF) (Request for Comments, 4880).
KLENSIN, John C. (2008): Simple Mail Transfer Protocol. Internet Engineering Task Force
(IETF) (Request for Comments, 5321).
FIELDING, Roy T.; RESCHKE, Julian F. (2014): Hypertext Transfer Protocol (HTTP/1.1): Message
Syntax and Routing. Internet Engineering Task Force (IETF) (Request for Comments, 7230).
DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET
Prof. Jochen Seitz
353
23
Herunterladen