Welche Dienste über öffentliche Netze laufen, wie sie technisch funktionieren und nach welchen Kriterien man entscheidet, ob man sie selbst betreibt.

Sprint 3 · InputBrückenstufe 2

Eure Story: Als IT-Leitung HLG will ich wissen, welche Dienste wir selbst betreiben und welche wir einkaufen, damit Web, Mail und Telefonie in der Morgenspitze tragen.

Input. Holt euch die Karte, die eure Storycard gerade braucht. Grundlage für AB 1 bis 7.

Du liest das Gerüst zu Web, Lastverteilung, Mail, Sprache und Proxy und schaust dir zu jedem Gedanken das Bild an.

0 von 7 AB abgehakt AB-Liste öffnen

Der wichtigste Satz auf dieser Seite: Jeder Dienst hat einen Weg durch das Netz, eine Last, die er tragen muss, und einen Betreiber. Erst wenn alle drei geklärt sind, ist er bereitgestellt.

Was diese Seite ist: die fachsystematische Phase von Teil 3. Hier steht das Gerüst, das über unseren Fall hinaus trägt. Gearbeitet wird danach in den Lernangeboten und in der Storycard.

1. Web-Dienste

Ein Webdienst antwortet auf Anfragen über HTTP, verschlüsselt über HTTPS auf Port 443 (unverschlüsselt Port 80, heute nur noch zur Umleitung). Eine Anfrage nennt Methode (etwa GET), Pfad und Namen des Dienstes, die Antwort einen Statuscode (200 in Ordnung, 404 nicht gefunden, 503 nicht verfügbar) und den Inhalt.

Hinter einer Adresse stecken meist drei Schichten: ein vorgeschalteter Verteiler, ein oder mehrere Webserver, die die Seite bauen, und eine Datenbank, aus der sie die Daten holen. Bei HLG steht der Verteiler mit den Webservern in der DMZ, die Sendungsdatenbank bleibt im Servernetz. Von außen erreichbar ist nur der Verteiler.

Weg einer Anfrage an track.hlg.example: Kunde, Firewall, Verteiler, zwei Webserver, Datenbank im ServernetzKundeBrowserFirewall außen203.0.113.3:443Verteiler172.16.10.10web1172.16.10.11web2172.16.10.12Datenbank10.10.40.30PortweiterleitungAbfrage
Weg einer Anfrage an die Sendungsverfolgung. Eigene Darstellung für den Unterricht.

2. Lastverteilung und Bündelung

Ein Server kann je Sekunde nur eine bestimmte Zahl von Anfragen bearbeiten, seine Kapazität μ. Kommen λ Anfragen je Sekunde, ist er zu ρ = λ / μ ausgelastet. Liegt ρ unter 1, wächst die Wartezeit mit der Auslastung, im einfachsten Modell ist die Antwortzeit T = 1 / (μ minus λ). Liegt ρ über 1, wächst die Schlange ohne Grenze.

Ein Verteiler (Load Balancer) bündelt mehrere Server zu einem Dienst unter einer Adresse. Round Robin verteilt der Reihe nach, Least Connections an den Server mit den wenigsten offenen Verbindungen, gewichtet nach der Kapazität jedes Servers. Ein Health Check fragt jeden Server regelmäßig ab und nimmt ihn nach mehreren Fehlversuchen aus der Verteilung. Muss ein Kunde bei demselben Server bleiben, etwa wegen einer Anmeldung, sorgt die Sitzungsbindung dafür.

Bündelung gibt es auch bei Leitungen (Teil 1): Zwei Anschlüsse werden zu einem breiteren oder ausfallsicheren Weg. Der Gedanke ist derselbe: mehrere gleiche Teile, ein Dienst, und ein Ausfall darf nicht alles stoppen.

Drei Verfahren am Verteiler: der Reihe nach, nach offenen Verbindungen, mit GesundheitsprüfungRound Robinweb1 · 1, 3, 5web2 · 2, 4, 6Least Connectionsweb1 · 7 offenweb2 · 3 offen ← nächsteHealth Checkweb1 · antwortetweb2 · 3 × still: raus
Drei Verfahren am Verteiler. Eigene Darstellung für den Unterricht.

3. Mailtransport

Mail läuft von Server zu Server über SMTP auf Port 25. Der sendende Server fragt das DNS nach dem MX-Eintrag der Zieldomäne, löst den Namen in eine Adresse auf und liefert ein. Der Ablauf ist ein Dialog aus Befehlen und dreistelligen Antwortcodes: EHLO, MAIL FROM, RCPT TO, DATA, QUIT; 2xx heißt erledigt, 3xx weiter, 4xx später noch einmal, 5xx endgültig abgelehnt. STARTTLS verschlüsselt den Dialog.

Ein Relay nimmt Mail an und reicht sie weiter. Bei HLG steht es in der DMZ: Es nimmt von außen nur Mail für hlg.example an und liefert sie an den internen Mailserver, ausgehende Mail schickt es ins Internet. Mitarbeitende liefern ihre Mail mit Anmeldung auf Port 587 ein (Submission), nie über Port 25.

Gegen gefälschte Absender stehen drei Einträge im DNS: SPF nennt die Adressen, die für hlg.example senden dürfen; DKIM unterschreibt jede Mail, der öffentliche Schlüssel liegt im DNS; DMARC sagt den Empfängern, was sie mit Mail tun sollen, die beides nicht besteht, und wohin sie Berichte schicken.

Mailweg für hlg.example: DNS liefert den MX, der fremde Server liefert an das Relay in der DMZ, das Relay an den internen Mailserver; Mitarbeitende liefern auf Port 587 einDNS: MX hlg.example → mail.hlg.example → A 203.0.113.4fremder Server192.0.2.25Firewall203.0.113.4Mail-Relay (DMZ)172.16.10.20Mailserver innen10.10.40.25251:125MitarbeitendeMailprogramm587ausgehend: Mailserver → Relay → Internet,Absender immer 203.0.113.4 (SPF)
Mailweg für hlg.example, eingehend und ausgehend. Eigene Darstellung für den Unterricht.

4. Sprachübertragung

Bei der Telefonie über IP gibt es zwei getrennte Ströme. SIP baut die Verbindung auf und ab (INVITE, 180 Ringing, 200 OK, ACK, BYE) und handelt im mitgeschickten SDP-Teil aus, welcher Codec und welche Ports genutzt werden. RTP über UDP trägt die Sprache selbst. Verlorene Pakete werden nicht wiederholt, weil eine späte Silbe nichts mehr nützt.

Der Codec bestimmt die Datenrate der Sprache: G.711 tastet 8.000 mal je Sekunde mit 8 bit ab und liefert 64 kbit/s, G.722 überträgt ein breiteres Frequenzband und kommt ebenfalls mit 64 kbit/s aus. Alle 20 ms geht ein Paket hinaus, also 50 je Sekunde. Jedes trägt Köpfe: RTP 12, UDP 8, IPv4 20 Byte, im Ethernet noch 18 Byte. Die Bandbreite je Richtung ist Paketgröße mal 8 mal Pakete je Sekunde.

Aufbau eines Sprachpakets: Ethernet 14, IP 20, UDP 8, RTP 12, Nutzdaten 160, Prüfsumme 4 ByteEin Sprachpaket im Ethernet: 218 Byte, davon 160 Byte SpracheEth14IP20U8RTP12Nutzdaten G.711, 20 ms160F440 Byte Köpfe ab IP218 B · 8 bit/B · 50 Pakete je s = 87,2 kbit/s je Richtung
Ein Sprachpaket mit allen Köpfen. Eigene Darstellung für den Unterricht.

5. Proxy vorwärts und rückwärts

Ein Proxy stellt Anfragen stellvertretend. Der Vorwärts-Proxy steht vor den Clients: Die Büro-PCs schicken ihre Webanfragen an ihn, er holt die Seiten, filtert, speichert Häufiges zwischen und protokolliert. Der Rückwärts-Proxy steht vor den Servern: Kunden sprechen nur ihn an, er verteilt, beendet die Verschlüsselung und kann Antworten zwischenspeichern. Der Verteiler vor web1 und web2 ist ein Rückwärts-Proxy.

Ein Zwischenspeicher (Cache) entlastet immer nur das, was hinter ihm liegt: Der Vorwärts-Proxy spart Internetleitung, der Rückwärts-Proxy spart Serverlast. Die Leitung zum Kunden bleibt beim Rückwärts-Proxy gleich voll.

Vorwärts-Proxy vor den Büro-PCs und Rückwärts-Proxy vor den WebservernVorwärts: vertritt die ClientsBüro-PC10.10.10.25Proxy172.16.10.40:3128Webseitenim Internetfiltert, speichert zwischen, protokolliertRückwärts: vertritt die ServerKundeim InternetVerteiler172.16.10.10web1, web2.11 und .12verteilt, beendet TLS, speichert zwischen
Vorwärts- und Rückwärts-Proxy bei HLG. Eigene Darstellung für den Unterricht.

6. Lokal gegen öffentlich

Jeden Dienst kann HLG selbst betreiben (lokal, im Hub) oder bei einem Anbieter einkaufen (öffentlich, im Rechenzentrum des Anbieters). Fünf Kriterien tragen die Entscheidung: Kosten (Geräte, Lizenzen, Betreuungsstunden gegen Monatspreis), Kontrolle (wer ändert was, wann), Verfügbarkeit (wer hat Bereitschaft, wie viele Wege führen hin), Datenschutz (wo liegen Kundendaten, wer kann sie lesen) und Aufwand (Wissen und Zeit bei Querwind).

In einer gewichteten Kriterienmatrix bekommt jedes Kriterium ein Gewicht (zusammen 100 %) und jede Möglichkeit je Kriterium Punkte von 1 bis 5. Punkte mal Gewicht, aufsummiert, ergibt die Bewertung. Die Matrix entscheidet nicht allein: Wer die Gewichte setzt, setzt das Ergebnis. Deshalb werden die Gewichte begründet und ihre Wirkung geprüft.

Gewichtete Kriterienmatrix für die Sendungsverfolgung: lokal 3,45 Punkte, eingekauft 3,30 PunkteKriteriumGewichtlokaleingekauftKosten20 %22Kontrolle15 %52Verfügbarkeit25 %35Datenschutz25 %53Aufwand15 %24Summe100 %3,453,30Sendungsverfolgung: Punkte 1 bis 5 mal Gewicht, aufsummiert
Gewichtete Kriterienmatrix am Beispiel der Sendungsverfolgung. Eigene Darstellung für den Unterricht.

Merksatz: Ein Dienst ist erst bereitgestellt, wenn sein Weg nachgewiesen, seine Last gerechnet und sein Betreiber begründet ist. Lastverteilung hilft nur, solange auch der Rest die Last trägt, und eine Matrix ist nur so ehrlich wie ihre Gewichte.

Zum Nachschlagen
  • RFC 9110 (HTTP-Semantik, Statuscodes), RFC 5321 (SMTP), RFC 6409 (Einlieferung auf Port 587), RFC 7208 (SPF), RFC 6376 (DKIM), RFC 7489 (DMARC)
  • RFC 3261 (SIP), RFC 3550 (RTP), RFC 4566 (SDP), ITU-T G.711 und G.722 (Sprachcodecs)
  • Datenschutz-Grundverordnung, Art. 28 (Auftragsverarbeitung) und Art. 44 ff. (Übermittlung in Drittländer)
  • Warteschlangenmodell M/M/1 für die Antwortzeit: Lehrbuch der Rechnernetze oder der Betriebssysteme, Abschnitt Leistungsbewertung

Weiter zu Lernangebot 5 · Web-Dienste und Lastverteilung: Jetzt wendest du das Gerüst auf die drei Standorte von HLG an.