Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... ·...

23
Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 1 Die Internet- Protokollwelt 9. ANWENDUNGEN IM INTERNET Übersicht Anpassung der Darstellung E-Mail File Transfer World Wide Web DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 311

Transcript of Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... ·...

Page 1: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 1

Die Internet-Protokollwelt9. ANWENDUNGEN IM INTERNET

Übersicht

Anpassung der Darstellung

E-Mail

File Transfer

World Wide Web

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 311

Page 2: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 2

Heterogene DarstellungenAufgaben der Darstellungsschicht:◦ Unterschiedliche Rechnersysteme verschiedene Darstellungen

◦ Konsequenz: Umkodieren der zu übermittelnden Daten erforderlich

◦ Austauschstandards

Ziele:◦ Behandeln der Darstellung (Syntax) von

Informationen

◦ Bewahren der Bedeutung (Semantik) der Informationen

Beispiel:

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 312

24 Bit Integer 32 Bit Integer

Schicht 5

Schicht 4

Schicht 3

...

Schicht 5

Schicht 4

Schicht 3

...

TransparenteÜbertragung

Transparente Übertragungnicht ausreichend

Umkodierungerforderlich

LokaleDarstellungder Information

ASN.1Die 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 313

Page 3: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 3

ASN.1: Universal Types

ELEMENTARE DATENTYPEN◦ Boolean

◦ Integer

◦ Bitstring

◦ Octetstring

◦ IA5String

◦ …

STRUKTURIERTE DATENTYPEN◦ Sequence: Geordnete Liste von Datentypen

(vgl. Record in PASCAL)

◦ Set: Ungeordnete Menge von Datentypen

◦ Sequence of: Geordnete Liste von Elementen des gleichen Datentyps (vgl. Array in PASCAL)

◦ Set of: Ungeordnete Menge von Elementen desgleichen Datentyps

◦ Choice: Ungeordnete Menge von Datentypen, aus der einige Datentypen ausgewählt werden können(vgl. Varianter Record in PASCAL)

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 314

Beispiel:Mitarbeiter ::= Set { Name IA5String,

Alter Integer,Personalnr Integer }

ASN.1: Kodierung/DekodierungBASIS-KODIERUNGSREGELN (BASIC ENCODING RULES, BER) BEISPIEL: INTEGER MIT WERT 5

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 315

Bit 7 6 5 4 3 2 1 0

Bezeichner Länge Inhalt

Universal

einfach

2

Integer

0 0 0 0 0 0 1 0

Bezeichner Länge

0 0 0 0 0 0 10

1

0 0 0 0 0 1 10

Inhalt

5

Typklasse00: Universal01: Application02: Context Specific03: Private

Datentyp0: einfach1: strukturiert

Tag-Nummer0..30: wie angegeben31: nächstes Byte gibt Tag an

Page 4: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 4

Ziele und Vorteile elektronischer PostHauptziel: Internationaler Dienst zum Austausch elektronischer Mitteilungen zwischen Personen oder zwischen Rechnern

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 316

Umschlag

Inhalt

Briefkasten BriefkastenPostamt Postamt

Absender Empfänger

Absender Empfänger

UserAgent

MessageTransferAgent

MessageTransferAgent

UserAgent

Ter-minal

Ter-minal

(a) Traditionelle Brief-Post

(b) Elektronische Post

Umschlag

Inhalt

Mail im Internet

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 317

UserSender-SMTP-Instanz

Receiver-SMTP-Instanz

SMTP-Commands

RepliesFile

System

FileSystem

Page 5: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 5

Mail im Internet:Ein Beispiel für einen SMTP-DialogR: 220 MIT-Multics.Arpa Simple Mail Transfer Service Ready

S: HELO Isi-VaxA.Arpa

R: 250 MIT-Multics.Arpa

S: MAIL FROM: [email protected]

R: 250 OK

S: RCPT TO: [email protected]

R: 250 OK

S: DATA

R: 354 Start mail input; end with <CRLF>.<CRLF>

S: < Text Line 1 >

< etc. >

.

R: 250 OK

S: QUIT

R: 221 MIT-Multics.Arpa Service closing transmission channel

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 318

Mail im Internet: Abholen von E-Mails über POP3

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 319

Internet

POP 3

SMTP

Mail-Client

empfangene Nachrichten

gesendete Nachrichten

Mail-Folder

Mai

l-Se

rver

Page 6: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 6

Mail im Internet:Abholen von E-Mails über IMAPInternet 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

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 320

Multipurpose Internet Mail Extension, MIMESMTP:

◦ einfache ASCII-Texte als Nachrichten

◦ keine Struktur für den Hauptteil einer Nachricht

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 Hauptteilsbisher Text, Multipart, Message, Application (Binary), Image, Audio, Video und X-private

Content-Transfer-Encoding: Transfer-Syntax, in der die Daten des Hauptteils übertragen werdenbisher Base 64, Quoted Printable, 7bit, 8bit und binary

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 321

Nachrichtenkopf(incl. MIME-

Formatinformationen)

Nachrichtenrumpf

Text

Bild

Audiosequenz

Page 7: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 7

Mail und Sicherheit:Pretty Good Privacy, PGPAufgabe: 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]

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 322

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 323

Page 8: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 8

File Transfer Protocol, FTP[RFC 959, RFC 3659]

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 324

ServerClient

Benutzer-schnittstelle

Client-Steuerprozess

Client-Datentransfer-

prozess

Server-Steuerprozess

Server-Datentransfer-

prozess

FTP-Kommandos

FTP-Antworten

DatenDatei-system

Datei-system

Benutzer

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 325

Page 9: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 9

Zur Entwicklung des World Wide Web, WWWHervorgegangen 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 326

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 327

Page 10: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 10

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 328

Anforderungen eines verteilten Dokumentensystems

Kodierung der Dokumente

◦ Inhalt

◦ Semantik

◦ Darstellung

Identifikation der Dokumente

◦ Lokalisierung

◦ Zugriff

Transport der Dokumente

Dokumentenformat

◦ HyperText Markup Language, HTML

Document Type Definition, DTD

Standardized General Markup Language, SGML

Identifikationsschema

◦ Uniform Resource Identifier, URI

Uniform Resource Name, URN

Uniform Resource Locator, URL

Transferprotokoll

◦ HyperText Transfer Protocol, HTTP

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 329

Page 11: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 11

Architektur und ProtokolleClient/Server-Architektur

Synchrones Kommunikationsmodell (Request/Response)

Ressourcen

◦ Ausgetauschter Inhalt zwischen Client und Server

◦ Statisch oder dynamisch

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 330

Web-Client

Web-Server Ressourcen

Request

Response

HTTP

Web-Seite

Web-Seite

Web-Seite

Web-Seite

Festzulegen für Ressourcenim World Wide WebAufbau der ausgetauschten Dokumente

Darstellung am Bildschirm

Anbindung von externen Quellen

◦ Common Gateway Interface, CGI [RFC 3875]

Formulare in HTML für die Parameterübermittlung

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 331

WebServer

CGI-Programm

Request URL

Response (HTML mit Tags)

Request(URL [CGI] + Parameter)

Response(HTML mit Ergebnis)

Page 12: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 12

Einheitliche RessourcenidentifikationInformationsressourcen 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 332

Uniform Resource Identifier, URISyntax 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 333

Page 13: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 13

Uniform Resource Name, URNVereinheitlichung 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 334

URN - AuflösungInfrastruktur 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 335

Page 14: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 14

Uniform Resource Locator, URLVereinheitlichung 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 336

Abgrenzung: Web und InternetInternet

◦ 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 337

Page 15: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 15

Protokoll-Flexibilität des Web-Clients

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 338

WWW-Client

Internet

WWW-Server NEWS-ServerFTP-Server Mail-Server . . .

HTTP FTP NNTP SMTP

Medientypen im Weboffenes 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 339

Page 16: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 16

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 340

Beispiel: Ein HTML-(Minimal-)DokumentStart-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)

◦ 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 341

<html>

<head>

<title> Dokumenttitel </title>

</head>

<body>

<p>Dies ist ein HTML-Dokument.</p>

</body>

</html>

Page 17: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 17

TransferprotokollIdentifizierte 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 342

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 343

Page 18: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 18

Web-Client & Web-ServerClient:◦ URL einlesen

Servername extrahieren und Serveradresse bestimmen

Dateiname extrahieren

◦ TCP-Verbindung zum Server/Proxy aufbauen

◦ HTTP-Request erstellen und schicken

◦ HTTP-Response (aktiv) empfangen

◦ HTTP-Response interpretieren

◦ Inhalte darstellen bzw. ausführen

Server:◦ auf HTTP-Requests warten

◦ HTTP-Requests interpretieren

◦ Requests bearbeiten

Zugriff auf Dateisystem

eventuell Delegation

◦ mit entsprechender Response antworten

Unterschiedliche Realisierungsmöglichkeiten

◦ iterativer Server

◦ nebenläufiger Server

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 344

HTTP-Transaktion

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 345

Client Server

Tra

nsa

ktio

n 1

Tra

nsa

ktio

n 2

Tra

nsa

ktio

n 3

Benutzer

Request

Request

Analyseder Seite

Ressourceladen

Ressourceladen

Ressourceladen

Page 19: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 19

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

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 346

Ablauf bei HTTP/1.0

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 347

http://www.tu-ilmenau.de/index.html

Web Client

Connect TCP Socket

GET /index.html

HTTP/1.0

ACCEPT: */*

<CR><LF>

Close TCP Socket

Web Server

Connect TCP Socket

<HTML>

<HEAD>

<title>Homepage der

Technischen Universität

Ilmenau</title>

</HEAD>

<BODY>

... Inhalt ...

Close TCP Socket

DNS-LookupProtokoll=HTTP

TCP-Verbindung

Page 20: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 20

CookiesHTTP zustandslos, d.h. kein Zusammenhang zwischen zwei AnfragenZustandsspeicherung durch die Verwendung von Cookies beim Client

Befehle:◦ Set-Cookie (Server Client)

◦ Cookie (Client Server)

Beispiele für ein Cookie:◦ AWID

◦ 141.24.92.233.250231057309646408

◦ www.adobe.com/

◦ 1536

◦ 1739496192

◦ 29573643

◦ *

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 348

HTTP – Zustandsbehaftete Kommunikation

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 349

Client Server

Page 21: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 21

Lastverteilung bei Web-ServernVerteilen 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 350

Beispiel Big/IP

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 351

http://www.f5.com/bigip

Page 22: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 22

Flickr, del.icio.us:Tagging,

not Taxonomy

Web 2.0Aus: 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

DIE INTERNET-PROTOKOLLWELT - 9. ANWENDUNGEN IM INTERNET 352

PageRank,eBay Reputation,

Amazon Reviews: Useras Contributor

Blogs:Participation,not Publishing

BitTorrent:Radical De-

centralization

Gmail, Google Maps and AJAX:

Rich User Experience

Web 2.0 Meme Map

Google AdSense:Customer Self-Service

Enabling theLong Tail

Wikipedia:Radical Trust

Strategic Positioning:• The Web as Platform

User Positioning:• You Control Your Own Data

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

An Attitude, not a Technology

The Long Tail

Data as theIntel Inside

Hackability

The PerpetualBeta

The Right to Remix:“Some Rights Reserved”

Software That GetsBetter the More

People Use It

Emergent: User Behavior

not Predetermined

Play

GranularAddressability

of Content

Rich UserExperience

Small PiecesLoosely Joined

Trust Your Users

LiteraturCOMER, 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 353

Page 23: Die Internet- Protokollweltmidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2017/Die... · Die Internet-Protokollwelt Wintersemester 2017/18 Prof. Jochen Seitz 2 Heterogene

Die Internet-Protokollwelt Wintersemester 2017/18

Prof. Jochen Seitz 23

RFCsPOSTEL, 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 ResourceNames. 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 forComments, 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): OpenPGPMessage 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 354