Sie sind auf Seite 1von 34
Vorlesung Rechnernetze 9. Internetdienste Prof. Dr. rer. nat. habil. Dr. h. c. Alexander Schill Fakultät

Vorlesung Rechnernetze

9. Internetdienste

Prof. Dr. rer. nat. habil. Dr. h. c. Alexander Schill Fakultät Informatik, Professur Rechnernetze

Schichtenübersicht Kap. 9 Anwendungsschicht Transportschicht Vermittlungsschicht Anwendungs- schicht Transport-

Schichtenübersicht

Kap. 9
Kap. 9

Anwendungsschicht

Transportschicht

Vermittlungsschicht

Anwendungs-

schicht

Transport-

schicht

Vermittlungs-

schicht

Sicherungs- Logical Link Control (LLC)

schicht

Media Access Control (MAC)

Sicherungs-

schicht

Bitübertragungsschicht

Bitübertragungs-

schicht

schicht Bitübertragungsschicht Bitübertragungs- schicht Professur Rechnernetze Vorlesung Rechnernetze 9.2
schicht Bitübertragungsschicht Bitübertragungs- schicht Professur Rechnernetze Vorlesung Rechnernetze 9.2

Professur Rechnernetze

Vorlesung Rechnernetze

9.2

E-Mail DNS IMAP SMTP Internetdienste - Überblick WWW DNS HTTP HTML VoIP DNS SIP RTP

E-Mail

DNS

IMAP

SMTP

Internetdienste - Überblick

WWW

DNS

HTTP

HTML

VoIP

DNS

SIP

RTP

TCP oder UDP

IP

Kapitel 9: DNS, E-Mail, WWW, Content Delivery, Netzwerkmanagement

Professur Rechnernetze

Vorlesung Rechnernetze

Kapitel 10:

Multimedia-

kommunikation

9.3

1. Domain Name System Root de uk com tu-dresden inf et  Abbildung von Namen

1. Domain Name System

Root de uk com tu-dresden inf et  Abbildung von Namen auf IP-Adressen
Root
de
uk
com
tu-dresden
inf
et
 Abbildung von Namen auf IP-Adressen

Top Level Domain

de

uk, fr, nl, cz, pl, eu

com

biz

edu

gov

mil

net

org, etc.

hierarchisches, auf Domänen basierendes Benennungsschema

replizierte Verzeichnisdatenbanken

Namensvergabe durch ICANN (Internet Corporation for Assigned Names and Numbers) - www.icann.org - bzw. durch beauftragte Unternehmen

Professur Rechnernetze

Vorlesung Rechnernetze

9.4

Resource Records  zu jeder Domäne gehören entsprechende Resource Records  typischer Resource Record ist

Resource Records

zu jeder Domäne gehören entsprechende Resource Records

typischer Resource Record ist Zuordnung Host IP-Adresse

Aufbau: <Domain_name, Time_to_live, Class, Type, Value>

Beispiel: stargate 86400 IN A 141.76.40.230

Domain_name: primärer Suchschlüssel für DB-Anfragen Time_to_live: Gültigkeitsdauer in Sekunden (für Caching) Class: z.B. IN für Internet Type: Typ des Datensatzes (Beispiele siehe Tabelle) Value: Semantik ist abhängig vom Type

Typ

Bedeutung

Wert

NS

Nameserver

Zuständiger Nameserver für eine Zone

A

IPv4-Adresse eines Hosts

32-Bit-Ganzzahl

AAAA

IPv6-Adresse eines Hosts

128-Bit-Ganzzahl

PTR

Zeiger (Pointer)

Alias-Name für eine IP-Adresse

SRV

Service

Host, der einen bestimmten Dienst (z.B. SIP, XMPP) für eine Zone anbietet

Professur Rechnernetze

Vorlesung Rechnernetze

9.5

Nameserver  kein einzelner Nameserver für DNS-Datenbank (single point of failure)  Einteilung in nicht

Nameserver

kein einzelner Nameserver für DNS-Datenbank (single point of failure) Einteilung in nicht überlappende Zonen (nicht identisch mit Domäne)

tu-dresden inf et
tu-dresden
inf
et

hier: Informatik-Fakultät hat eigene Zone

pro Zone ein oder mehrere Nameserver

primärer Nameserver hält die Datenbank

sekundäre Nameserver spiegeln die Datenbank (Zuverlässigkeit)

Namensauflösung

1. Resolver leitet Anfrage an lokalen Nameserver weiter

2. wenn in Zone des Nameservers Rückgabe autoritativer Datensatz

autoritativer Datensatz immer als korrekt angenommen

zwischengespeicherter Datensatz (Caching) könnte überholt sein

Professur Rechnernetze

Vorlesung Rechnernetze

9.6

Namensauflösung für entfernte Domänen  wenn Nameserver keine Informationen im Cache hat fits.cs.vu.nl Absender

Namensauflösung für entfernte Domänen

wenn Nameserver keine Informationen im Cache hat

fits.cs.vu.nl

Absender

keine Informationen im Cache hat fits.cs.vu.nl Absender iterativ Root-Nameserver (a.root-servers.net) lokaler
iterativ
iterativ
Informationen im Cache hat fits.cs.vu.nl Absender iterativ Root-Nameserver (a.root-servers.net) lokaler Nameserver
Informationen im Cache hat fits.cs.vu.nl Absender iterativ Root-Nameserver (a.root-servers.net) lokaler Nameserver

Root-Nameserver

(a.root-servers.net)

lokaler Nameserver (cs.vu.nl) rekursiv
lokaler
Nameserver
(cs.vu.nl)
rekursiv

EDU-Nameserver

(a.edu-servers.net)

1: Anfrage

rekursiv EDU-Nameserver (a.edu-servers.net) 1: Anfrage 10: robot.cs. washington.edu UW-Nameserver UWCS-Nameserver
rekursiv EDU-Nameserver (a.edu-servers.net) 1: Anfrage 10: robot.cs. washington.edu UW-Nameserver UWCS-Nameserver
rekursiv EDU-Nameserver (a.edu-servers.net) 1: Anfrage 10: robot.cs. washington.edu UW-Nameserver UWCS-Nameserver

10: robot.cs. washington.edu

UW-Nameserver

UWCS-Nameserver

Professur Rechnernetze

Vorlesung Rechnernetze

9.7

2. E-Mail E-Mail Client Port 25 (SMTP) SMTP Server … E-Mail Client E-Mail Client Port

2. E-Mail

E-Mail

Client

2. E-Mail E-Mail Client Port 25 (SMTP) SMTP Server … E-Mail Client E-Mail Client Port 110

Port 25

(SMTP)

SMTP

Server

SMTP Server
SMTP Server

E-Mail

Client

E-Mail Client E-Mail Client

E-Mail

Client

Port 110

(POP3)

… E-Mail Client E-Mail Client Port 110 (POP3) SMTP POP3/ IMAP Port 143 (IMAP)  SMTP

SMTP

POP3/

IMAP

E-Mail Client Port 110 (POP3) SMTP POP3/ IMAP Port 143 (IMAP)  SMTP (Simple Mail Transfer

Port 143

(IMAP)

SMTP (Simple Mail Transfer Protocol)

zuverlässiger Nachrichtentransfer

Suche nach Ziel-SMTP-Server über DNS (MX Record)

Weiterleitung und Auslieferung an Ziel-Server

POP3 (Post Office Protocol)

Abruf aller E-Mails und Attachments (authentisiert)

Herunterladen der E-Mail Entlastung des Servers

IMAP (Internet Message Access Protocol):

selektiver Abruf (authentisiert)

E-Mail bleibt auf Server Abrufen durch mehrere Clients möglich

Professur Rechnernetze

Vorlesung Rechnernetze

9.8

Nachrichtenformat – RFC 5322 To: Cc: Bcc: From: Sender: Received: Return-Path: Text Text Text Text

Nachrichtenformat RFC 5322

To:

Cc:

Bcc:

From:

Sender:

Received:

Return-Path:

Text Text

Text Text

Header-Felder weitere Felder:

Date, Reply-To, Message -Id ,

In - Reply-To, References, Keywords, Subject

Leerzeile

-Id , In - Reply-To, References, Keywords, Subject Leerzeile Inhalt der Nachricht nur ASCII erlaubt Professur

Inhalt der Nachricht nur ASCII erlaubt

Professur Rechnernetze

Vorlesung Rechnernetze

9.9

MIME - Multipurpose Internet Mail Extensions  neue Header: MIME-Version, Content-Description, Content- Id , Content-

MIME - Multipurpose Internet Mail Extensions

neue Header: MIME-Version, Content-Description, Content-Id, Content-

Transfer-Encoding, Content-Type (siehe Tabelle)

Codierung von Binärdaten in Base64

jeweils 6 Bit als ASCII-Zeichen übertragen 33% Overhead

Quoted Printable Coding

Nicht-ASCII-Zeichen werden mit „=XX“ codiert (XX = 2

hexadezimale Ziffern)

Typ

Untertyp

Beschreibung

text

plain, html, xml, css

Text in verschiedenen Formen

image

gif, jpeg, tiff, png

Bilder

audio

basic, mpeg, mp4

Audiodateien

video

mpeg, mp4, quicktime

Filme

application

octet-stream, pdf, javascript, zip

Dateien, die von Anwendungen

erzeugt werden

Professur Rechnernetze

Vorlesung Rechnernetze

9.10

Nachrichtenübertragung mit SMTP - Beispielablauf S: 220 mail.a.de SMTP service ready C: HELO alice.a.de S:

Nachrichtenübertragung mit SMTP - Beispielablauf

S: 220 mail.a.de SMTP service ready C: HELO alice.a.de

S: 250 OK

C: MAIL FROM: <alice@a.de> S: 250 sender ok C: RCPT TO: <bob@b.de> S: 250 recipient ok C: DATA S: 354 Send mail; end with "." on a line by itself C: From: alice@a.de C: To : bob@b.de C: Subject: testmail C:

C: Hallo, das ist ein Test

C: . S: 250 message accepted C: QUIT S: 221 closing connection

Professur Rechnernetze

Vorlesung Rechnernetze

9.11

 Nachteile von SMTP: Weiterentwicklung von SMTP  keine Authentisierung (anfällig für SPAM)  Text-basiertes

Nachteile von SMTP:

Weiterentwicklung von SMTP

keine Authentisierung (anfällig für SPAM)

Text-basiertes Protokoll (ASCII) Base64-Codierung nötig

Übertragung im Klartext (nicht abhörsicher)

ESMTP (Extended SMTP): neue Funktionen (siehe Tabelle)

Schlüsselwort

Bedeutung

AUTH

Authentisierung des Clients

BINARYMIME

Server akzeptiert binäre Nachrichten

CHUNKING

Server akzeptiert große, in Blöcke aufgeteilte Nachrichten

SIZE

Überprüft vor dem Senden die Nachrichtengröße

STARTTLS

Wechsel zu sicherer Übertragung

UTF8SMTP

Internationale Adressen

Verbindungsaufbau: statt HELO EHLO (Extended Hello)

abgewiesen: Server agiert als gewöhnlicher SMTP-Server

akzeptiert: Server antwortet mit Erweiterungen die er akzeptiert

Professur Rechnernetze

Vorlesung Rechnernetze

9.12

IMAP – Internet Message Access Protocol  IMAP – Zugriff eines Clients auf Mail-Server 

IMAP Internet Message Access Protocol

IMAP Zugriff eines Clients auf Mail-Server

Authentisierung und optionale Verschlüsselung

umfassende Funktionen zur Verwaltung von Nachrichten und Ordnern

Befehl

Beschreibung

CAPABILITY

Listet die Fähigkeiten des Servers auf

STARTTLS

Beginnt eine sichere Datenübertragung

LOGIN

Anmeldung beim Server (Authentisierung)

SELECT

Wählt einen Ordner aus

CREATE

Erzeugt einen neuen Ordner

LIST

Listet die verfügbaren Ordner auf

APPEND

Hängt eine Nachricht an einen Ordner an

FETCH

Holt Nachrichten aus einem Ordner

SEARCH

Sucht Nachrichten in einem Ordner

COPY

Legt von einer Nachricht in einem Ordner eine Kopie an

Professur Rechnernetze

Vorlesung Rechnernetze

9.13

3. WWW – World Wide Web  weltweites Hypertext-System auf Basis des Internet  logische

3. WWW World Wide Web

weltweites Hypertext-System auf Basis des Internet

logische Verknüpfungen (Links) zwischen Dokumenten

Client/

Browser

Dokument

Bereich 1

Bereich 2

Bereich 3

Client/ Browser Dokument Bereich 1 Bereich 2 Bereich 3  Adressierung: URL (Uniform Resource Locator) •
Client/ Browser Dokument Bereich 1 Bereich 2 Bereich 3  Adressierung: URL (Uniform Resource Locator) •

Adressierung: URL (Uniform Resource Locator)

"http://www.rn.inf.tu-dresden.de/index.html"

Protokoll + DNS-Name des Hostrechners + Pfad

Protokoll: HTTP (Hypertext Transfer Protocol)

Sprache: HTML (Hypertext Markup Language)

XML (eXtensible Markup Language): Typisierte Dokumente

Professur Rechnernetze

Vorlesung Rechnernetze

9.14

Ablauf Abruf einer Webseite Client DNS- Web- (Browser) Server Server DNS A Query (URI) Type

Ablauf Abruf einer Webseite

Client DNS- Web- (Browser) Server Server DNS A Query (URI) Type A: Auflösung URI zu
Client
DNS-
Web-
(Browser)
Server
Server
DNS A Query
(URI)
Type A: Auflösung
URI zu IP-Adresse;
DNS Response
(IP-Adresse)
ggf. werden weitere
DNS-Server befragt
Aufbau einer TCP-Verbindung zu Port 80 des Servers
HTTP GET request
HTTP response
mit HTML-Inhalt
Abbau der TCP-Verbindung

Aufbereitung der HTML-Seite, ggf. Zugriff auf

Anwendungslogik

und Datenbanken

Professur Rechnernetze

Vorlesung Rechnernetze

9.15

Webserver  Zugriffsablauf aus Sicht des Webservers 1. Namen der Webseite auflösen (z.B. /index.html anfügen)

Webserver

Zugriffsablauf aus Sicht des Webservers

1. Namen der Webseite auflösen (z.B. /index.html anfügen)

2. Zugriffskontrolle auf der Webseite durchführen (.htaccess)

3. Cache prüfen

4. Datei (von der Festplatte) abrufen bzw. bei dynamischen

Inhalten vom Programm erzeugen lassen

5. Rest der Antwort festlegen (z.B. MIME-Typ)

6. Antwort an Client übergeben

7. Eintrag in Server-Log vornehmen

Verknüpfung mit Folge-Requests über Cookies möglich

bei Client gespeichert, wird mit Request mitgesendet

 bei Client gespeichert, wird mit Request mitgesendet Thread Festplatte Thread Client … … Anfrage …
Thread Festplatte Thread Client … … Anfrage … Front-End Cache Festplatte Antwort Thread
Thread
Festplatte
Thread
Client
Anfrage
Front-End
Cache
Festplatte
Antwort
Thread

Professur Rechnernetze

Vorlesung Rechnernetze

9.16

HTTP – Hypertext Transfer Protocol  Abrufen von Ressourcen (Webseiten, Anwendungsdaten etc.) über Folge von

HTTP Hypertext Transfer Protocol

Abrufen von Ressourcen (Webseiten, Anwendungsdaten etc.) über Folge von HTTP-Request/Response-Nachrichten

dabei Aufrechterhaltung einer ggf. längerfristigen TCP-Verbindung (“Keep-Alive”)

Pipelining und somit Parallelverarbeitung mehrerer Requests möglich (z.B. Download einer Webseite mit mehreren eingebetteten Bildern)

GET

Anforderung einer Ressource (Webseite)

HEAD

Wie GET, aber nur Statusanfrage ohne Nutzdatenübertragung, z.B. zum Ermitteln des Datenvolumens oder der Kodierungsformate von Webseiten

POST

Überträgt den Nachrichteninhalt zur Ressource, z.B. zum Transfer

komplexer Formulardaten (HTML Forms) an den Server

PUT

Macht den übertragenen Inhalt unter einer angegebenen URL auf dem Server verfügbar

DELETE

Löscht die spezifizierte Ressource

OPTIONS

Statusanfrage nach Kommunikationsoptionen beim Server (z.B. nach angebotenen Methoden / Operationen)

Professur Rechnernetze

Vorlesung Rechnernetze

9.17

HTTP GET Webbrowser <html> <head> <title>Example.com</title> <link

HTTP GET

Webbrowser

<html> <head> <title>Example.com</title> <link rel="stylesheet" href="main.css"> </head> <body> <img src="banner.jpg" /> <h1 class="center">Welcome!</h1> <br/> .

.

1

.

2

Nach dem Laden des Dokuments werden

weitere Darstellungs-

informationen

angefordert

1

css 2 jpg
css
2
jpg
informationen angefordert 1 css 2 jpg Webserver Professur Rechnernetze Vorlesung Rechnernetze 9.18
informationen angefordert 1 css 2 jpg Webserver Professur Rechnernetze Vorlesung Rechnernetze 9.18
informationen angefordert 1 css 2 jpg Webserver Professur Rechnernetze Vorlesung Rechnernetze 9.18
informationen angefordert 1 css 2 jpg Webserver Professur Rechnernetze Vorlesung Rechnernetze 9.18
informationen angefordert 1 css 2 jpg Webserver Professur Rechnernetze Vorlesung Rechnernetze 9.18

Webserver

Professur Rechnernetze

Vorlesung Rechnernetze

9.18

HTTP POST Webserver POST /cgi/login HTTP/1.1\r\n Host: www.webmailer.ws\r\n Connection: Keep-Alive\r\n

HTTP POST

Webserver POST /cgi/login HTTP/1.1\r\n Host: www.webmailer.ws\r\n Connection: Keep-Alive\r\n Accept-Encoding: gzip\r\n
Webserver
POST /cgi/login HTTP/1.1\r\n
Host: www.webmailer.ws\r\n
Connection: Keep-Alive\r\n
Accept-Encoding: gzip\r\n
Accept: text/xml,application/xml,text/html,*/*\r\n
Accept-Language: en-gb\r\n
User-Agent: Mozilla\r\n
Content-type: application/x-www-form-urlencoded\r\n
Content-length: 41 \r\n
\r\n
Übertragung
von HTML-
login=me@webmailer.ws&password=pass123
Formulardaten
HTTP/1.1 200 OK\r\n
Date: Fri, 12 Jan … GMT\r\n
Server: Apache/… (Unix) PHP/…\r\n
Last-Modified: Wed, 26 Nov … GMT\r\n
Content-Encoding: gzip\r\n
Content-Length: 1922\r\n
Content-Type: text/html\r\n
Keep-Alive: timeout=5, max=1024\r\n
Connection: Keep-Alive\r\n
\r\n
}yw
dmv K( `
.
9
n
5.{d[I.z
{{|
K X
)
o.
Gzip-kodierter
)
HTML-Inhalt
.
.
Webbrowser

Professur Rechnernetze

Vorlesung Rechnernetze

9.19

HTML - Beispiel <!DOCTYPE html PUBLIC <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de"

HTML - Beispiel

<!DOCTYPE html PUBLIC

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">

>

<head> <title>Beispielseite f&uuml;r Rechnernetze </title> <meta http-equiv="content-type" content="text/html;charset=iso-8859-1" />

<link href="style.css" type="text/css" rel="stylesheet" />

</head>

<body> <div id="kopfbereich"> <p>Rechnernetze</p>

</div>

<div id="inhalt"> <h1>Willkommen bei Rechnernetze</h1> <p>Die Lehrveranstaltung gliedert sich in 12 Kapitel:</p> <ul> <li>1. Einf&uuml;hrung: <a href=" /pdf/01_Einfuehrung.pdf">PDF</a></li>

<li>2. Bit&uuml;bertragungsschicht: <a href=" /pdf/02_Bituebertragung.pdf">PDF</a></li>

<li>12. Mobile Computing: <a href=" /pdf/12_Mobile_Computing.pdf">PDF</a></li> </ul> </body> </html>

Professur Rechnernetze

Vorlesung Rechnernetze

9.20

Enhanced HTML Cascading Style Sheets JavaScript APIs Professur Rechnernetze von HTML 1.0 zu HTML 5

Enhanced HTML

Cascading Style Sheets

JavaScript APIs

Enhanced HTML Cascading Style Sheets JavaScript APIs Professur Rechnernetze von HTML 1.0 zu HTML 5 
Enhanced HTML Cascading Style Sheets JavaScript APIs Professur Rechnernetze von HTML 1.0 zu HTML 5 

Professur Rechnernetze

von HTML 1.0 zu HTML 5

HTML 1.0: Hyperlinks, Bilder Listen

später dazu gekommen: Formulare, Tabellen, Einbettung von Objekten, Stylesheets, Skriptsprachen

HTML 5.0: zusätzlich Integration Audio und

Video, Vektorgrafiken, XML-Darstellung, Browserspeicher, Canvas (Zeichenflächen)

verbesserte Layout- und Animationsunterstützung mit CSS 3

standardisierte Programmierschnittstellen

Web Storage für Client-seitige Datenspeicherung

Web Workers für parallele, kostenintensive Tasks

JavaScript Geolocation API für Lokalisierung mobiler Nutzer

Vorlesung Rechnernetze

9.21

HTML5: Erweiterte Dokumentenstruktur Website <header> <section> <header> <article>

HTML5: Erweiterte Dokumentenstruktur

Website <header> <section> <header> <article> <nav> <aside>
Website
<header>
<section>
<header>
<article>
<nav>
<aside>
<footer>
<section>

<footer>

<header>: Globale Definitionen, z.B. für Import-Spezifikationen und für Navigation, Logo

<section>: Abschnitte zur

Gruppierung

<article>: Eigenständiger Inhaltsbereich, z.B. für Blog-Eintrag oder Nachrichtenbeitrag

<footer>: Metadaten, beispielsweise zu Autor oder Copyright

<nav>: Navigationsbereich, z.B. für

globale Links

<aside>: Querverweise oder ergänzende Informationen zu einer Seite

Professur Rechnernetze

Vorlesung Rechnernetze

9.22

HTML5: Audio- und Videounterstützung  Größe und Bedienelemente <video width="320" height="240"

HTML5: Audio- und Videounterstützung

Größe und Bedienelemente <video width="320" height="240" controls>

alternative Videoformate

<source src="movie.mp4" type="video/mp4">

<source src="movie.ogg" type="video/ogg">

Manipulation von <video> und <audio> durch JavaScript

Abspielen(), Bildgröße(), …

Beispiel:

function playPause()

{

if (myVideo.paused) myVideo.play();

else

myVideo.pause();

}

Untertitel

<track src="subtitles_en.vtt" kind="subtitles" srclang="en"/>

<track src="subtitles_de.vtt" kind="subtitles" srclang="de"/>

Professur Rechnernetze

Vorlesung Rechnernetze

9.23

Dynamische Webseiten  CGI (Common Gateway Interface)  standardisierte Schnittstelle für Webserver und

Dynamische Webseiten

CGI (Common Gateway Interface)

standardisierte Schnittstelle für Webserver und Backend-Programme und Skripts

Eingabe im FormularSenden erzeugen der HTML-Seite Antwort

PHP (PHP: Hypertext Preprocessor)

Webserver muss PHP interpretieren

eingebettete Skripts in HTML-Seiten

JavaScript

höhere Programmiersprache zur Entwicklung interaktiver Webseiten

Webseite 4 1 3 Programm
Webseite 4 1 3 Programm

Webseite

4
4

1

3

Programm

Webbrowser

Programm

2

DB 6
DB
6

Programm

Webserver

Programm Webbrowser Programm 2 DB 6 Programm Webserver 5 7 Professur Rechnernetze Vorlesung Rechnernetze 9.24
Programm Webbrowser Programm 2 DB 6 Programm Webserver 5 7 Professur Rechnernetze Vorlesung Rechnernetze 9.24
Programm Webbrowser Programm 2 DB 6 Programm Webserver 5 7 Professur Rechnernetze Vorlesung Rechnernetze 9.24

5

Programm Webbrowser Programm 2 DB 6 Programm Webserver 5 7 Professur Rechnernetze Vorlesung Rechnernetze 9.24

7

Professur Rechnernetze

Vorlesung Rechnernetze

9.24

4. Content Delivery  Content Delivery = Verteilung von Inhalten (Webseiten, Filme, Musik, Programme) im

4. Content Delivery

Content Delivery = Verteilung von Inhalten (Webseiten, Filme, Musik, Programme) im WWW

stark steigende Nachfrage

ca. 10% des Internetverkehrs allein YouTube-Videos

Popularität von Webseiten stark ungleich verteilt (Zipf-Verteilung)

wenige Seiten sehr populär starke Last auf den Servern

sehr viele Seiten kaum Zugriffe Server nicht ausgelastet

Popularitätsspitzen durch aktuelle Ereignisse

z.B. starke Nachfrage von Nachrichtenseiten nach Erdbeben

Lösungen

Serverfarmen

Webproxys

CDN (Content Distribution Network)

o Verteilnetz von Servern an verschiedenen Orten

P2P-Netz (Peer-to-Peer)

o direkte Verteilung von Inhalten durch Overlay-Netz

zwischen Peers

Professur Rechnernetze

Vorlesung Rechnernetze

9.25

Serverfarmen  Anwendung: Beschleunigung der Verarbeitung von populären Webseiten  Schwierigkeit: Serverfarm als

Serverfarmen

Anwendung: Beschleunigung der Verarbeitung von populären Webseiten

Schwierigkeit: Serverfarm als einzelne logische Webseite darstellen

Lösungen:

DNS-Verteilung der Anfragen

Frontend-Server führt Lastausgleich (Load Balancing) durch

Frontend-Server führt Lastausgleich (Load Balancing) durch Lastausgleich über die Server Internetzugang Backend-DB
Lastausgleich über die Server Internetzugang Backend-DB Frontend Server Serverfarm
Lastausgleich
über die Server
Internetzugang
Backend-DB
Frontend
Server
Serverfarm
…

Clients

Professur Rechnernetze

Vorlesung Rechnernetze

9.26

Webproxys  Caching: Verringerung der Antwortzeit und Reduzierung der Netzwerklast  Caching durch den Browser

Webproxys

Caching: Verringerung der Antwortzeit und Reduzierung der

Netzwerklast

Caching durch den Browser

Webproxys

mehrere Benutzer teilen sich einen Cache

keine Wirkung bei verschlüsseltem Datenverkehr, authentifizierungspflichtigen Seiten, nicht speicherbaren Seiten,

dynamischen Inhalten

zusätzliche Vorteile: Filterung, Privatsphäre und Anonymität

Vorteile: Filterung, Privatsphäre und Anonymität Browser- Cache … Browser- Cache Organisation Internet
Browser- Cache … Browser- Cache
Browser-
Cache
Browser-
Cache

Organisation

Internet

Browser- Cache … Browser- Cache Organisation Internet Proxy- Cache … Server Clients Professur Rechnernetze
Browser- Cache … Browser- Cache Organisation Internet Proxy- Cache … Server Clients Professur Rechnernetze
Proxy- Cache
Proxy-
Cache

Server… Browser- Cache Organisation Internet Proxy- Cache … Clients Professur Rechnernetze Vorlesung Rechnernetze 9.27

Clients

Professur Rechnernetze

Vorlesung Rechnernetze

9.27

Content-Delivery-Netze  Anwendung: extrem populäre Webseiten, Inhalt wird global bereitgestellt  Provider legt

Content-Delivery-Netze

Anwendung: extrem populäre Webseiten, Inhalt wird global bereitgestellt

Provider legt Kopie des Inhalts an mehreren Knoten (Orten) ab

Client soll möglichst nächstgelegen Knoten nutzen

Vorteile: Erweiterbarkeit, hohe Leistung, Minimierung der Gesamtlast

eigene DNS-Server für Zuordnung von Requests zu richtigem CDN-Knoten

ursprünglicher CDN-Server Verteilung auf CDN-Knoten CDN-Knoten (mirror) Sydney Boston Amsterdam
ursprünglicher
CDN-Server
Verteilung auf
CDN-Knoten
CDN-Knoten
(mirror)
Sydney
Boston
Amsterdam

Professur Rechnernetze

weltweite Clients

Vorlesung Rechnernetze

9.28

Peer-to-Peer-Netze – Beispiel BitTorrent  Torrent (Content-Beschreibung): wird von Content-Provider erzeugt und

Peer-to-Peer-Netze Beispiel BitTorrent

Torrent (Content-Beschreibung): wird von Content-Provider erzeugt

und von Content-Consumer auf Webseiten gesucht

Torrent-Datei beinhaltet Adresse des Trackers und Liste von Segmenten der Datei (Chunks)

Tracker: Server der die Liste aller Peers (Swarm) verwaltet die den Inhalt aktiv nutzen

Swarm: Mitglieder kontaktieren Tracker regelmäßig über Aktivitäten

Seeder: Peers mit allen Segmenten des Inhalts

Leecher: Peers die herunterladen ohne selbst Segmente bereitzustellen

Peers die herunterladen ohne selbst Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server
Peers die herunterladen ohne selbst Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server
Peers die herunterladen ohne selbst Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server

Tracker

herunterladen ohne selbst Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server Professur
herunterladen ohne selbst Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server Professur
Chunks
Chunks
ohne selbst Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server Professur
ohne selbst Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server Professur

Liste der

Peers

Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server Professur Rechnernetze Vorlesung
Segmente bereitzustellen Tracker Chunks Liste der Peers Torrent- Datei Web-Server Professur Rechnernetze Vorlesung

Torrent-

Dateibereitzustellen Tracker Chunks Liste der Peers Torrent- Web-Server Professur Rechnernetze Vorlesung Rechnernetze 9.29

Web-Server

Professur Rechnernetze

Vorlesung Rechnernetze

9.29

5. Netzwerkmanagement  Ziel: Planung, Überwachung und Koordinierung der Ressourcen eines Rechnernetzes 

5. Netzwerkmanagement

Ziel: Planung, Überwachung und Koordinierung der Ressourcen eines Rechnernetzes

Managementbereiche:

zu verwaltende Ressourcen

Managementbereich

Anwendung Anwendung Anwendung Daten- Daten- bestand bestand
Anwendung
Anwendung
Anwendung
Daten-
Daten-
bestand
bestand

Anwendungsmanagement

Informationsmanagement

Netz- und Systemressourcen Systemmanagement Workstation Host PC Kommunikationsnetz Kommunikationshardware: Bridges,
Netz- und Systemressourcen
Systemmanagement
Workstation
Host
PC
Kommunikationsnetz
Kommunikationshardware: Bridges, Router,
Netzwerkmanagement
Kommunikationssoftware:
Protokollimplementierungen…

Professur Rechnernetze

Vorlesung Rechnernetze

9.30

 Klassifikation: Klassifikation und Model • Konfigurationsmanagement (z. B. Netzstruktur) • Fehlermanagement (z.

Klassifikation:

Klassifikation und Model

Konfigurationsmanagement (z. B. Netzstruktur)

Fehlermanagement (z. B. bzgl. Transportprotokoll)

Leistungsmanagement (z.B. Durchsatzmessung)

Sicherheitsmanagement (z. B. Verschlüsselungsvarianten)

Abrechnungsmanagement (z. B. bei Mobilfunk)

Änderungsmanagement (z. B. bzgl. Systemanpassung)

Dienstemanagement (z. B. bzgl. Dienstqualität)

Model:

Operation Managed Object Meldung
Operation
Managed
Object
Meldung

Manager

Ressource (z.B. Drucker)

Agent MIB = Management Information Base

Professur Rechnernetze

Vorlesung Rechnernetze

9.31

SNMP – Simple Network Management Protocol GetRequest GetNextRequest GetBulkRequest GetResponse SetRequest Trap

SNMP

Simple Network Management Protocol

GetRequest GetNextRequest GetBulkRequest GetResponse SetRequest Trap
GetRequest
GetNextRequest
GetBulkRequest
GetResponse
SetRequest
Trap
Manager

Manager

SNMP

GetBulkRequest GetResponse SetRequest Trap Manager SNMP Agent SNMP  meist für lokale Netze im Einsatz •
GetBulkRequest GetResponse SetRequest Trap Manager SNMP Agent SNMP  meist für lokale Netze im Einsatz •
GetBulkRequest GetResponse SetRequest Trap Manager SNMP Agent SNMP  meist für lokale Netze im Einsatz •
Agent

Agent

SNMP

GetResponse SetRequest Trap Manager SNMP Agent SNMP  meist für lokale Netze im Einsatz • Alternative:
GetResponse SetRequest Trap Manager SNMP Agent SNMP  meist für lokale Netze im Einsatz • Alternative:
GetResponse SetRequest Trap Manager SNMP Agent SNMP  meist für lokale Netze im Einsatz • Alternative:

meist für lokale Netze im Einsatz

Alternative: CMIP (Common Management Information Protocol) für Weitverkehrsnetze

zahlreiche Werkzeuge (insbesondere Management-Plattformen) und Erweiterungen, etwa für Authentisierung und Verschlüsselung

Einsatzbeispiele: Abruf der Fenstergröße (Get), schrittweises Auslesen

einer Routingtabelle (GetNext), komplettes Lesen einer Tabelle

(GetBulk), Änderung einer Puffergröße (Set), Alarmmeldung bei Pufferüberlauf (Trap)

Professur Rechnernetze

Vorlesung Rechnernetze

9.32

Weiterführende Referenzen  Tanenbaum, Wetherall: Computernetzwerke, 5. Auflage, Pearson, 2012. Kapitel 7: Die

Weiterführende Referenzen

Tanenbaum, Wetherall: Computernetzwerke, 5. Auflage, Pearson,

2012.

Kapitel 7: Die Anwendungsschicht

Vertiefung durch Vorlesung „Internet and Web Applications

AJAX, Comet, Web-Suche, Semantic Web, File Sharing, …

Professur Rechnernetze

Vorlesung Rechnernetze

9.33

Gliederung 1. Einführung 2. Bitübertragungsschicht 3. Netztechnologien Teil 1 4.

Gliederung

1.

Einführung

2.

Bitübertragungsschicht

3.

Netztechnologien Teil 1

4.

Netztechnologien Teil 2

5.

Sicherungsschicht

6.

Vermittlungsschicht

7.

Transportschicht

8.

Netzwerkperformance

9.

Internetdienste

10.

Multimediakommunikation

11.

Verteilte Systeme

12.

Mobile Computing

Professur Rechnernetze

Vorlesung Rechnernetze

9.34