1 Netzwerktechnik
1.1 Digitaltechnik
Die Digitaltechnik arbeitet mit nur 2 Zuständen: Ein- oder ausgeschaltet. Ein Signal kann High oder Low sein, speziell bei der alten Transistor-Transistor-Logik (TTL) bedeutet das 5 Volt oder 0 Volt als Eingangsspannung. Damit arbeiten letztlich unsere heutigen Computersysteme.
1.1.1 Zahlensysteme
Da Rechenmaschinen am stabilsten mit binären Zahlen funktionieren, spielt dieses Zahlensystem die wichtigste Rolle:
Z.B. 10101000
Menschen mögen aber Dezimalzahlen: 168 (= 10101000)
Sehr oft verwendet, weil kürzer: hexadezimale Zahlen: A8 (= 10101000)
So wird auch die berühmte MAC-Adresse hexadezimal notiert: AC-DE-48-00-00-80
Zur Verdeutlichung der Umrechnung in dezimale Zahlen seien hier exemplarisch für die drei wichtigsten Zahlensysteme nur 3 Bits verwendet, die von Schaltern repräsentiert werden, die hier allesamt eingeschaltet sein sollen. Der Stellenwert nimmt von rechts nach links gemäß dem arabischen Zahlensystem zu. Wenn alle Schalter auf 1 stehen, ergibt sich jeweils:
Dezimal: 10^2 + 10^1 + 10^0 = dezimal 111
Binär: 2^2 + 2^1 + 2^0 = dezimal 7
Hexadezimal: 16^2 + 16^1 + 16^0 = dezimal 273
Vor allem müssen wir das binäre Zahlensystem beherrschen, wobei die folgende Tabelle nützlich sein kann:
1.1.2 Logikbausteine
Ein Logikbaustein wird zumeist mittels integrierter Schaltkreise realisiert und stellt grundlegende bis sehr komplexe Schaltfunktionen bereit. Solche Bauteile können einfache Logikgatter sein, die diese drei grundlegenden logischen Verknüpfungen realisieren:
ODER: Parallelschaltung, eine erfüllte Bedingung ist hinreichend.
UND: Reihenschaltung, alle Bedingungen müssen passen.
NICHT: Immer alles umkehren.
Weitere logische Bausteine sind dann z.B.:
NICHT-UND (NAND) - das Gegenteil der UND-Funktion
NICHT-ODER (NOR) - das Gegenteil der ODER-Funktion
Exklusiv-ODER (XOR) - Verknüpfungsschaltung aus zwei UND, zwei NICHT und einem ODER
1.1.2.1 Kennzeichnung digitaler Schaltkreise
Zur einheitlichen Kennzeichnung digitaler Schaltungen, die mittels elektronischer Schaltkreise realisiert werden, kommen allgemeine Kurzzeichen zur Anwendung, die besonders für Elektroniker von Belang sind. In Deutschland geschieht die Normierung der elektrischen Schaltzeichen durch DIN EN 60617 bzw. IEC 60617. Sie ersetzen die veralteten DIN-Normen 40700 und 40900.
Hier ein paar wichtige Funktionskennzeichen nach DIN 40900:
FF (Flip-Flop)
MUX (Multiplexer)
DX (Demultiplexer)
SRG (Schieberegister, engl. Shift Register)
RAM (RAM-Speicher)
ROM (ROM-Speicher)
1.1.3 Algebra
Definition: Schaltalgebra ist die Mathematik der Schaltvorgänge, die auf dem binären Zahlensystem beruhen. Um Prozesse steuern zu können, werden Eingangsvariablen miteinander logisch verknüpft, so dass die Ausgangsvariable einen fest definierten Zustand einnimmt.
So soll z.B. eine Hochleistungsstanze in der Metallindustrie nur dann aktiv werden, wenn der bedienende Mensch mit beiden Händen separate elektrische Taster drückt.
Die Algebra benutzt die drei Grundverknüpfungen UND, ODER und NICHT. Mit diesen logischen Grundgliedern lassen sich unterschiedlichste Verknüpfungen realisieren. Andere logische Operationen bauen auf eine dieser Kombination auf.
Es gibt ein paar ganz grundlegende Regeln, welche die De Morganschen Gesetze genannt werden:
UND ist ersetztbar: aus ODER- und NICHT-Verknüpfungen lassen sich beliebige Schaltungen bilden
ODER ist ersetzbar: aus UND- und NICHT-Verknüpfungen lassen sich beliebige Schaltungen bilden
NAND-Glieder sind universell: sie können UND-, ODER- und NICHT-Bausteine ersetzen
1.1.4 Kodierung
Abgeleitet vom lateinischen Codex - was eine Sammlung alter Handschriften oder ein Gesetzbuch darstellt - bedeutet Kodierung in der IT-Welt, dass Schriftzeichen oder Symbole eindeutig einem Zahlenwert zugeordnet werden können. So muss der Computer letztlich binär kodierte Anweisungen ausführen.
Ein einfacher Vergleich aus dem analogen Leben: „Neumann 3x klingeln“ muss sinnvoll in eine Maschinensprache übersetzt werden, damit der betreffende Rechner angesprochen werden kann.
Wichtige Kodierungen sind z.B. American Standard Code for Information Interchange (ASCII) oder ein grundlegender Basis-Zeichensatz, der aus nur 64 Zeichen besteht (Base64)
Eine Kodierung findet auch bei der Digitalisierung von Sprache statt. Bei der ISDN-Telefonie wird mit einer Abtastrate von 8kHz digitalisiert. Dabei wird nach dem G.711-Standard verfahren, was eine Richtlinie ist, wie mit Hilfe von Puls-Code-Modulation (PCM) analoge Signale in digitale umgewandelt werden können. Codiert wird gemäß diesem Standard nur der Frequenzbereich von 300 bis 3400 Hz.
1.2 Kommunikation
Damit die Rechner miteinander klar kommen, brauchte es die Entwicklung von Regelwerken und Protokollen. Im Jahre 1966 wurden vom Advanced Research Projects Agency Network (ARPA) erste Ideen für ein kooperatives Netzwerk mit Time-Sharing konkretisiert.
Definition Computernetzwerk:
Datenkommunikationssystem, das durch Übertragung von Signalen den Datenaustausch zwischen mehreren unabhängigen Geräten ermöglicht (Rechnernetz)
Graphentheoretisches Modell, um Verbindungsstrukturen zu beschreiben
1.2.1 Gremien
Mehrere Gremien haben sich verdient gemacht, Standards und abstrakte Denkmodelle zu schaffen. Ohne Normierungsgremien geht in der digitalen Welt nämlich gar nichts. Es müssen verbindliche Vereinbarungen getroffen werden, damit Maschinen überhaupt miteinander kommunizieren können:
IEEE: Das Institute of Electrical and Electronics Engineers fasst verschiedene Arbeitsgruppen zusammen, die in verschiedenen Projekten tätig sind. So definiert z.B. die Arbeitsgruppe 802.3 die Netzwerkzugriffmethode für kabelgebundenes Ethernet, die Arbeitsgruppe 802.11 die Arbeitsweise von WLANs.
ISO: Die International Organization for Standarization hat ihren Sitz in Genf (Schweiz), wo das abstrakte siebenschichtige OSI-Modell herrührt (OSI = Open System Interconnect).
ANSI: Das American National Standards Institute ist das nationale Standardisierungsgremium der USA.
Unicode-Konsortium: Das Gremien entwickelt die erweiterungsfähigen, globalen Unicode-Zeichensätze (gemeinnützige Organisation mit Sitz in Kalifornien).
TIA: Die Telecommunications Industry Association ist ein wichtiger internationaler Unternehmensverband für die Telekommunikation und Datentechnik. Sie legt die Steckerbelegung von Ethernet-Kabeln fest.
IETF: Die Internet Engineering Task Force gibt Internetstandards wie die grundlegenden Request for Comments (RFC) heraus.
DIN/VDE: Das Deutsche Institut für Normung e. V. und der Verband deutscher Elektrotechniker spielen in unseren Landen eine wichtige Rolle.
1.2.2 Einführung, Modelle
Es bieten sich fünf grundlegende Einordnungskriterien an, um verschiedene Aspekte herauszustellen:
Aufgaben/Rollen der teilnehmenden Maschinen (Netzwerkmodelle)
Räumliche Ausdehnung (LAN, MAN, WAN, GAN)
Kommunikationspartner (Mensch-Mensch, Mensch-Maschine, Maschine-Maschine)
Anzahl der beteiligten Empfänger (Unicast, Broadcast, Multicast, Anycast)
Kommunikationsrichtung (Simplex, Halbduplex, Duplex)
Diese Punkte wollen wir nun im Folgenden näher betrachten, weil sie zum Grundverständnis der komplexen Vorgänge in Computernetzwerken wichtige Voraussetzung sind.
1.2.2.1 Netzwerkmodelle
Zuerst werfen wir einen Blick auf die Netzwerkmodelle, sie stellen die historische Rollenverteilung zwischen teilnehmenden Maschinen dar. Heute verschmelzen allerdings die klassischen Modelle etwas, so ist ein „Terminal-Server“ eher der zentralen Verarbeitung zuzuordnen. An ihn werden oft „Thin-Clients“ angeschlossen (festplattenlose, kleine PCs).
Dies sind die drei üblichen Formen:
Zentralrechner-Modell (Mainframes mit nichtintelligenten oder intelligenten Terminals)
Client/Server-Modell (Sonderform: Peer-to-Peer)
Client/Server-Modell mit kooperativer/kollaborativer Verarbeitung
1.2.2.2 Ausdehnung von Netzwerken
Als zweites soll es um die räumliche Ausdehnung von Netzwerken gehen. Beim LAN gibt es neben der Ausdehnung noch eine Besonderheit: es gibt einen zumeist privaten Eigentümer bzw. Betreiber, der je nach Rechtslage die Verantwortung trägt. Und das sind die vier klassischen Ausdehnungen:
LAN – Local Area Network: max. 10 km (oft kombiniert, z.B. WLAN = Wireless LAN)
MAN – Metropolitan Area Network: max. 100 km
WAN – Wide Area Network: weltweit
GAN – Global Area Network: weltweit, zum Teil via Satellit
1.2.2.3 Kommunikationspartner
Drittens können wir die Kommunikationspartner betrachten, was insbesondere bei der Entwicklung von Software eine wichtige Rolle spielt:
Mensch-Mensch (VoIP, Chat, …)
Mensch-Maschine (Interaktion mit Betriebssystem, Download vom FTP-Server, …)
Maschine-Maschine (Austausch von Routinginformationen über kürzesten Weg, …)
1.2.2.4 Anzahl der Beteiligten
Viertens müssen wir uns fragen, wie viele Teilnehmer von einem Sender aus angesprochen werden sollen:
- Unicast (Eindeutigkeit, ein Partner):
Kommt typischerweise als Unicast-Adresse für eindeutige Adressierung einer Netzwerkschnittstelle zum Einsatz. Der Kommunikationspartner spricht genau diese eine Adresse an.
- Broadcast (an alle Rechner):
Netzwerkrundsendungen an alle Maschinen sind dann erforderlich, wenn wichtige Infos im gesamten Netzwerk verbreitet werden sollen. So z.B. beim MS-Protokoll für das Filesharing (Server Message Block Protocol, kurz SMB), wo alle über einen Shutdown informiert werden, damit die betreffende Maschine aus der Liste der verfügbaren Anbieter herausgenommen wird. Weiterhin setzt das Dynamic Host Configuration Protocol (DHCP) dieses Casts ein. Beim neuen Internet Protocol Version 6 (IPv6) gibt es wegen der Fülle an möglichen IP-Adressen pro Netzsegment keine Broadcasts mehr!
- Multicast (an eine Gruppe von Rechnern):
Kommt zum Einsatz, wenn nur ein paar von allen angesprochen werden sollen, wie es z.B. bei einer Videokonferenz der Fall ist, wo nicht alle Rechner im Netzwerk entsprechende Arbeitsstationen sind. Bei IPv6 spielen solcherlei Casts eine wichtige Rolle, z.B. um Nachrichten „an alle Router am Link“ zu senden.
- Anycast (an irgendeinen innerhalb der Gruppe):
Hier kann ein beliebiger Teilnehmer aus einer bestimmten Rechnergruppe Empfänger sein. Dies wird z.B. bei der Namensauflösung im Domain Name System (DNS) verwendet, wo eine Internet-Adresse für viele DNS-Server verwendet wird; normalerweise antwortet dann der geografisch am nächsten liegende Server (Lastenausgleich). Bei IPv6 wird es gern fürs Routing eingesetzt; dort antwortet derjenige Router, der über die kürzeste Route verfügt.
1.2.2.5 Kommunikationsrichtung
Und fünftens ist es auch sehr wichtig, die Kommunikationsrichtung im Blick zu behalten:
Simplex - immer nur in eine Richtung
Halbduplex - in beide Richtungen abwechselnd
(Voll-)Duplex - in beide Richtungen gleichzeitig
1.2.3 Schichtenmodelle
Schon im täglichen Berufsleben lassen sich Beispiele finden, die eine Schichtung der Kommunikation beinhalten. So handeln z.B. die Verantwortlichen der Leitungsebene die Inhalte für einen neuen Handelsvertrag aus, wogegen auf Sekretariats-Ebene Termine ausgehandelt und der Schriftverkehr erledigt wird.
Und so gibt es auch Schichtenmodelle in der Computertechnik: um komplexe Vorgänge in Einzelteile zu zerlegen, zu abstrahieren und zu beschreiben. Hier ein paar Vorteile im Detail:
- Interoperabilität und Transparenz
Hersteller profitieren von einer besseren Kompatibilität und Interoperabilität der verschiedenen Netztechnologien.
- Entwicklung
Hard- und Softwareentwickler brauchen nur die Schnittstellen zu benachbarten Schichten kennen, nicht die gesamte Funktionalität im Detail.
- Administration, Troubleshooting
Denkmodelle erleichtern ganz allgemein die Aufgabenstellungen, insbesondere die Fehlersuche.
- Lernprozesse
Die Zerlegung komplexer Zusammenhänge in Teilfunktionen ist fürs Grundverständnis in vielerlei Hinsicht sehr hilfreich.
Im Zusammenhang mit den Modellen und vor allem in der praktischen Arbeit taucht immer wieder der Begriff „Protokoll“ auf. Es gibt unzählig viele, die dem Netzwerk Leben einhauchen. Es geht quasi um das Finden einer gemeinsamen Sprache.
Definition Protokoll: Protokolle stellen Vereinbarungen über zeitliche Abläufe, Datenformate und Fehlerbehandlung dar. Es sind Regeln, die vor allem die Formatfrage klären, sich aber auch um die Bedeutung und den Inhalt von Nachrichten kümmern.
1.2.3.1 TCP/IP-Modell
Zum alten, einfacheren TCP/IP-Modell: Dieses 4-schichtige Modell ist der Vorläufer vom großen OSI-Modell. Es beschreibt die Zusammenhänge etwas gröber. Eine Anwendung muss ja nicht immer zwangläufig eine umfangreiche Sitzungsverwaltung beinhalten und auch die Darstellung der Daten muss oft nicht detailliert betrachtet werden.
Die folgende Abbildung stellt die Modelle gegenüber und verdeutlicht auch den Aspekt der Punkt-zu-Punkt-Wegefindung über viele Router hinweg (= Hops; Diagnosewerkzeug traceroute
, bei Windows: tracert
) wie auch den Aspekt der Ende-zu-Ende-Kommunikation (Diagnosewerkzeug netstat
):
1.2.3.2 OSI-Modell
Das legendäre Modell namens Open System Interconnect hat immer noch große Bedeutung zur Interpretation und Beschreibung komplexer Funktionaltitäten. Die Aufsplittung ist fein genug, um viele Situationen abzudecken. Grundsätzlich ist es ein abstaktes Modell und es ist nicht möglich, einzelne Datenpakete durch den Stapel hindurchzuverfolgen und exakt die Stelle zu benennen, an der es eine bestimmte Schicht verlässt und danach die nächste betritt.
Die Aufgabenstellungen der sieben Layer im Einzelnen sind wie folgt (Merksatz von oben nach unten: Alle Priester Saufen Tequila Nach Der Predigt):
L7 Application: Hier werden die Verfahren, Funktionen und Logiken für die Anwendungen definiert (z.B. bei HTTP: GET- und POST-Methoden)
L6 Presentation: Hier werden die Daten so präsentiert, das der Andere sie überhaupt verstehen kann (Kompatibilität, Austauschformat) oder eben auch nicht (TLS-Verschlüsselung).
L5 Session: Beschäftigt sich mit Sitzungsaufbau, -durchführung und -abbau (ist ein Bestandteil von TLS-Verschlüsselung)
L4 Transport: Definiert Dienste-Ports für etablierte Ende-zu-Ende-Kommunikation, ermöglicht umfangreiche Fehler- und Flusskontrolle (TCP-Protokoll)
L3 Network: Beschäftigt sich mit logischer Adressierung und Wegefindung (Routing). Hier ist das Internet Protocol (IP) zu Hause, was sich außerdem um die Identifikation fragmentierter Datenpakete kümmert, um die Datensendung wieder komplett zu machen.
L2 Data Link (auch Verbindungs- oder Sicherungsschicht): Beschäftigt sich mit physischer Adressierung (MAC-Adressen) und einfacher Fehler- und Flusskontrolle.
L1 Physical: Definiert nur die Eigenschaften der Übertragungsmedien (Spannung, Ströme, Frequenzen, Stecker, Abschirmung) Hier sehen wir nur noch Bitströme, diese Schicht setzt den Daten KEINEN Header voran.
Dabei ist zu beachten, dass Schicht 1 und 7 nur etwas definieren, sie sind weder das Übertragungsmedium noch die Anwendung selbst. Weiterhin gelten die Schichten 1 bis 4 als transportorientierte Schichten, die Schichten 5 bis 7 sind anwendungsorientiert. Grundlegend können wir die Funktionsweise nicht isoliert auf nur einer Schicht betrachten; wenn z.B. irgendwo zu lesen ist, „das IP-Protokoll arbeitet auf Schicht 3“, ist immer gemeint, dass es insgesamt über die OSI-Schichten 1 bis 3 hinweg arbeitet. Die unteren Schichten sind also stets mit einzubeziehen, weil die Kommunikation letztlich durch einen kompletten Stapel läuft.
Kapselung: Im gesamten Verlauf des Austauschprozesses kommt der Partner ins Spiel, der einen ebensolchen Stapel besitzt. Zwar läuft die reale Kommunikation vertikal durch alle Schichten des Stapels, virtuell aber kommuniziert Schicht mit Schicht horizontal - erst durch äquivalente Protokolle können quasi alle mit einer Sprache sprechen. Erreicht wird dieser virtuelle, horizontale Austausch, indem in der obersten Schicht beginnend, den Daten ein Header vorangestellt wird. Solch einen Header stellt jede weitere Schicht während der Übertragung voran. Ungefähr so, als wenn wir Briefe samt Daten immer wieder in neue Briefumschläge verpacken und jedesmal draufschreiben, aus welcher Schicht sie stammen. Nur so kann auf dem Rückweg die andere Seite beim Entpacken der ineinander verschachtelten Umschläge die relevanten Informationen identifizieren. Die unterste Schicht setzt allerdings den ganzen Umschlägen samt Daten keinen Header voran, im Physical Layer sehen wir ja nur noch einen Bitstrom. Dieser Vorgang nennt sich Encapsulation (Kapselung) und ist der folgenden Grafik anschaulich dargestellt:
1.2.3.2.1 Transportorientierte Schichten
Die ersten 4 Schichten des OSI-Modells kümmern sich ums das Transportieren von Daten. Dabei müssen große Datenmengen in kleine Datenpakete aufgeteilt werden (Fragmentierung).
In Schicht 1 (Physical Layer) sehen wir noch keine Datenpakete, dort gibt es nur einen Bitstrom.
In Schicht 2 (Data Link Layer) gibt es die ersten Datenpakete, die hier Frame heißen. Mit Hilfe einfacher Prüfsummen wird hier bereits eine korrekte Übertragung innerhalb des LANs sichergestellt.
In Schicht 3 (Network Layer) nennen sich die Datenpakete Datagramme, sie transportieren einfache Nutzdaten, wie etwa mit Hilfe des Internet Protocols (IP) die Nachrichten vom Internet Control Message Protocol (ICMP) zum Ziel. Das Ganze geschieht verbindungslos, also ohne Kontrolle, ob alle Daten korrekt angekommen sind.
In Schicht 4 (Transport Layer) finden wir darauf aufsetzende, größere Transportströme, die sicher durch das weltweite Internet geleitet werden (zumeist via Transport Control Protocol, = verbindungsorientiert: jedes Byte wird geprüft). Kommt es dagegen auf schnelle Übertragung an, kann in manchen Fällen auf eine ausgiebige Kontrolle verzichtet werden, wobei dann das verbindungslose User Datagram Protocol (UDP) eingesetzt wird.
Es gibt demnach mehrere Stellen, an denen Datenpakete erneut angefordert werden können, je nachdem, wo der Fehler auftritt. Im Local Area Network (LAN) verhilft Schicht 2 zu fehlerfreier Übertragung, im Wide Area Network (WAN) - was das Internet darstellt - die Schicht 4.
1.2.3.2.2 Anwendungsorientierte Schichten
Die oberen 3 Schichten haben Anwendungscharakter. Sie unterstützen also Apps, ihre Arbeit auszuführen. Eine solchermaßen detaillierte Aufgliederung ist nicht immer erforderlich, wenn aber z.B. ein Webserver private Verzeichnisse via Login anbietet, ist die Sitzungsverwaltung separat zu betrachten. Aus dieser Sicht heraus gesehen haben diese Schichten folgende Aufgaben:
In Schicht 5 werden Sitzungseigenschaften hinsichtlich Loginverfahren und Verschlüsselung ausgehandelt. Hier wird auch festgelegt, was und in welchem Umfang mitgeloggt wird.
In Schicht 6 werden komplexe Umwandlungen durchgeführt (z.B. bei großen Gateway-Lösungen, die zwischen der analogen Telefonie und dem neuen Voice-over-IP vermitteln sollen)
In Schicht 7 definiert der Entwickler die Verfahren und Schnittstellen, die ein Netzwerkdienst hernach ausführen soll, um eine App bereitzustellen.
1.2.4 Netzwerkkoppelung
Zur Vernetzung von Rechnern dienen verschiedene Hard- und Softwarelösungen. Das beginnt mit der Bildung einer Sterntopologie für grundlegende Ethernet-Verkabelung mit Hilfe von Hubs (veraltet) und Switchen und setzt sich mit Routing fürs Internetworking fort. Je komplexer die Aufgabenstellung, desto mehr OSI-Schichten sind beteiligt:
L7: Gateway (Übersetzung von fremdartigen Datenformaten)
L4: Layer-4-Switching, Hardware-Firewall
L3: Router, Router-Switch (L3-Switch)
L2: Bridge / Switch
L1: Repeater / Hub
Betrachten wir nun die Geräte der ersten 3 Schichten näher, weil sie für die Netzwerkkoppelung elementar sind:
- Auf OSI-Schicht 1
agieren der Repeater, der eigentlich nur Signale auffrischt (rechteckige Signalform wiederherstellen und Amplitude anheben) sowie der Hub, der früher zur physischen Sternbildung mit Twisted-Pair-Kabeln herangezogen wurde. Diese Geräte geben aber alles weiter, sowohl Rundsendungen, die von den Kollisionen des Medienzugriffsverfahrens stammen (CSMA/CD, s.u.) wie auch Rundsendungen der verschiedenen LAN-Protokolle, die mit der Broadcast-Adresse arbeiten. Das bedeutet größerer Traffik, der vermieden werden soll! Genauso ist hier auch der Hub angesiedelt, welcher der Bildung einer physischen Sterntopologie dient. Weil alle Teilnehmer alle Datenpakete empfangen und mitlesen können, hat man den Begriff Shared Medium geprägt, was eine veraltete und unerwünschte Technologie dargestellt.
- Auf OSI-Schicht 2
rangieren Bridge und Switch. Ganz früher - bei Verwendung von Koaxial-Kabeln - wurden Bridges entwickelt, dank derer die Kollisionen, die von der Zugriffsmethode aufs Medium herrührten, nicht mehr mit ins benachbarte Netzsegment übertragen wurden. Sie hatten also eine Filterwirkung: leite nur die Broadcasts der LAN-Protokolle und die normalen Request-/Reply-Pakete weiter. Wenn heutzutage von einer „Netzwerkbrücke“ die Rede ist, betrifft es meist einen Software-Switch zur transparenten Koppelung virtueller Maschinen im selben Netzwerk.
Der Switch, der heute normalerweise zur Bildung einer physischen Sterntopologie herangezogen wird, entlastet die Netze ebenso, weil er wegen seinem naturgemäßen schnellen und direkten Verschalten von jeweils zwei teilnehmenden Maschinen die Kollisions-Rundsendungen hinfällig macht und demnach auch diese Filterwirkung zeigt.
Sind Switche im Spiel, sprechen wir von Switched Networks, was andeuten soll, dass prinzipbedingt keine Kollisionen auftreten und damit ein höherer Datendurchsatz erreicht werden kann. Das direkte Verschalten wird mit schnellen Schalttransitoren und einem kleinen Speicher realisiert: der Switch ordnet die MAC-Adressen der jeweils teilnehmenden Netzwerkkarten, die über ein Kabel an seine Switch-Ports angeschlossen wurden, in einer Tabelle einander zu und kann dann aufgrund dieser Zuordnung gewünschte Weichenstellungen vornehmen.
Es gibt verschiedene Switching-Verfahren: Cut-Through, Store-and-Forward und Fast-Forward, wobei das letztere einen guten Kompromiss zwischen Fehlerrate, Geschwindigkeit und Speicherbedarf darstellt.
Switche können außerdem „managebar“ sein, d.h. sie können über eine Schnittstelle (meist Web-UI) administriert werden. Ein weiteres wichtiges Feature ist „Port Mirroring“ für das Anschließen von sogenannten Protokoll- oder Packet-Analysern. Je nach Einsatzzweck gibt es Test Access Points (TAPs), die den Netzwerkverkehr in Echtzeit spiegeln können, oder Switch Port ANalyser (SPAN Ports), die geringere Kosten verursachen, aber nicht so performant sind.
- Auf OSI-Schicht 3
haben wir Paketweiterleitung und Routing. Definition: Router besitzen mindestens zwei Netzwerkschnittstellen, welche mit unterschiedlichen Netzwerk-Adressen konfiguriert wurden. Das Weiterleiten von IP-Paket muss explizit mittels „IP-Forwarding“ erlaubt werden.
Um diese logisch voneinander getrennten Netzwerke verbinden zu können, führen sie mathematische Berechnungen mit logisch UND-Operationen durch und können damit Datenpakete an die richtige Schnittstelle weiterleiten (internetweite Wegefindung, Routing).
Der Router-Switch ist ein Hybridgerät, das neben dem üblichen Routing, was nun eher in Hardware implementiert wird, auch noch die MAC-Adressen in die Entscheidungsfindung mit einbeziehen kann. Das macht es schneller und sicherer (Port-Security).
1.2.4.1 Rundsendungen und ihre Domains
Repeater und Hubs geben alles weiter = Kollisions-Domäne
Bridges und Switche filtern = Broadcast-Domäne
Router geben nur noch IP-Adressen weiter (keine MAC-Adressen mehr, die kennt nur der jeweilige Router! Deshalb funktioniert hinter Routern auch kein Dynamic Host Configuration Protocol (DHCP) zur automatischen Konfiguration mehr, es sei denn man installiert auf ihnen einen DHCP-Relay-Agent, der die UDP-Pakete hinüberträgt.)
1.2.4.2 Spanning Tree Protocol
Definition Spanning Tree: Ein übergreifender Baum (Spannbaum) unterbindet Schleifen. Das Spanning Tree Protocol (STP) wurde bereits für das ursprüngliche Bridging (herausfiltern von Kollisionen) entwickelt. Ziel ist die Vermeidung von endlos kreisenden Datenpaketen.
Spanning Tree stammt aus dem mathematischen Bereich der Graphentheorie; Maschentopologien können natürlicherweise Schleifen enthalten; STP kann Bridge-Schleifen und Routing-Schleifen vermeiden. Die folgende Grafik möchte dies verdeutlichen:
Weitere Informationen zu Spanning Tree:
STP ist intelligent, kann bei Switch-Ausfall den Baum reorganisieren
Bridges bzw. Switche kommunizieren mittels Bridge Protocol Data Units (BPDUs)
Bleiben BPDUs aus, bedeutet das Verbindungsausfall
Nach den Wahlen zur Bestimmung einer Root Bridge wird eine Baumtopologie aufgebaut
Zustände eines Switch-Ports in einem Spanning Tree sind: Forwarding, Blocking, Learning, Listening, Disabled
Hinweis: STP gilt als junges Routing-Protokoll. Die klassischen Protokolle für das intelligente Routing sind das Routing Information Protocol (RIP), Open Shortest Path First (OSPF) und das Border Gateway Protocol (BGP).
1.3 Protokolle
Protokolle sind wie eine Art gemeinsame Sprache. Sie beinhalten vor allem Vereinbarungen über Datenformate, Abläufe und die Fehlerbehandlung. Eine sehr wichtige Suite vieler zusammengehöriger Protokolle ist TCP/IP. Die Namensgeber der legendären Protokoll-Suite sind dabei
Transport Control Protocol (TCP)
Internet Protocol (IP)
Es gibt natürlich sehr viele andere Protokolle, je nach Aufgabenstellung und Einsatzzweck, was wir im Folgenden untersuchen wollen.
1.3.1 Netzzugangsprotokolle
Den Zugang zu Netzwerken zu schaffen bedeutet, eine Zugangstechnologie wie Ethernet oder beispielsweise die Interneteinwahl via Modem und dem Point-to-Point Protocol (PPP) zu benutzen.
1.3.1.1 PPP / PPPoE
An dieser Stelle soll nur der historischen Einordnung halber erwähnt sein, dass zur Interneteinwahl nach wie vor eine Point-to-Point Kommunikation mit dem Provider stattfinden muss. Mehr zur DSL-Einwahl ist weiter unten zu finden. Wichtige Protokolle sind hierbei:
SLIP: Serial Line Internet Protocol (SLIP), gänzlich veraltet
PPP: Point-to-Point Protocol, Verbindungsaufbau über Wählleitungen
PPPoE: PPP over Ethernet, Verbindungsaufbau mittels PPP über Ethernet, Verwendung bei DSL
1.3.1.2 Ethernet
Die kennzeichnenden Bestandteile von Ethernet sind:
Logische Bus-Topologie (der innere Verkehrsweg ist hier immer Bus!), Heute: physisch Stern mit logisch Bus
Zugriffsmethode CSMA/CD oder bei WLAN CMSA/CA, Motto: «Wer zuerst kommt mahlt zuerst!»
Paketorientierter Datentransport (Frames)
Wir haben als logische Topologie, was die innereb Verkehrswege sind, eine Art “Sammelschiene” vorliegen; es liegt dem Ethernet-Entwurf ein omnipräsenter Bus zugrunde (bei WLAN gibt es nach wie vor Kollisionen, wenn auch nicht mehr so häufig: CSMA/CA).
Angesiedelt ist Ethernet im siebenschichtigen OSI-Modell auf Schichten 1 und 2 - wobei Schicht 2 speziell für den Zugriff auf das Übertragungsmedium und den datenpaketorientierten Transport aufgesplittet wurde:
Zugriffsverfahren CSMA/CD, «Wer zuerst kommt mahlt zuerst!»:
WLAN: CSMA/CA
Quelle: https://medium.com/networks-security/csma-ca-wireless-medium-access-control-protocol-e2139b04c73a - „CSMA/CA takes more steps than CSMA/CD but avoids collision“
Bei Funkwellen brauchen wir nach wie vor ein Zugriffsverfahren: Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA)
Und es handelt es sich hier schon um einen datenpaketorientierten Transport mittels sogenannten Frames. Hier ist ein Ethernet-Frame mit TCP/IP als Nutzlast abgebildet:
Wir sehen hier, dass im Datenteil ein IP-Paket mit seinem Header und ein TCP-Paket mit seinem Header enthalten sind, was jeweils 20 Bytes Speicherplatz kostet. Das verringert den für Nutzdaten verbleibenden MTU-Wert (Maximum Transmission Unit)! Per Default beträgt er 1500 Bytes. Ein ICMP-Paket, das mit Hilfe des Kommandos ping
versendet werden soll, bedeutet insgesamt nur 28 Bytes Verlust, weil das Internet Control Message Protocol sehr schlank ist; der Header kostet uns nur 8 Bytes:
20 Bytes (IP-Header) + 8 Bytes (ICMP-Header) = 28 Bytes Overhead-Verlust
Es verbleiben also im Endeffekt nur 1472 Bytes für Nutzdaten im Ethernet-Frame.
1.3.2 TCP/IP-Suite
Greifen wir nun ein paar alte, wichtige Protokolle dieser Protokollfamilie heraus.
Zuerst müssen wir aber Ethernet als Vernetzungstechnologie mit der TCP/IP-Welt bekannt machen. Will heißen, das wir wieder einmal zuordnen müssen, nämlich die logischen IP-Adressen aus Layer 3 den phyischen MAC-Adressen aus Layer 2.
1.3.2.1 Address Resolution Protocol (ARP)
Unsere Eintrittkarte in der weltweite Cloud verdanken wir ARP, die Zuordnung von IP- zu MAC-Adressen ist allerdings von oberen Schichten des OSI-Modells her zum Übertragungsmedium hinunter zu sehen. Hier ist die Ausgabe des Kommandos arp -a
für eine Maschine:
192.168.2.1 -> f0:de:f1:03:cd:74
Dazu schauen wir uns folgenden Vorgang an.
1.3.2.2 Internet Protocol (IP)
Wir befinden uns jetzt in Schicht 3 des OSI-Modells. Hier die Kurzbeschreibung des IP-Protokolls:
Arbeitsweise: verbindungslos
Arbeitsort: Netzwerkkschicht (TCP/IP-Modell: Internetschicht)
Wichtigste Aufgaben: logische Adressierung, Wegefindung
Adressierung im modernen Dual-Stack-Betrieb:
IPv6-Adressen per Default: 128 Bit lange Adressen
IPv4-Adressen als Fallback: 32 Bit lange Adressen
Zur Adresse gehört stets eine Netzwerkmaske zur „Ortsnetzbestimmung“, sie ist lediglich ein Bitmuster, man kann sie nicht wie eine IP-Adresse anpingen
1.3.2.2.1 Internet Protocol Version 4 (IPv4)
Der große IPv4-Adressraum von 2^32 = mehr als 4 Milliarden wurde in kleine Bereiche, den Adressklassen aufgeteilt:
Class A: Netze 0.0.0.0/8 bis 127.255.255.255
Class B: Netze 128.0.0.0/16 bis 191.255.255.255
Class C: Netze 192.0.0.0/24 bis 223.255.255.255
Class D: Multicast-Gruppen 224.0.0.0/4 bis 239.255.255.255
Class E: Reserviert 240.0.0.0/4 bis 255.255.255.255
Die folgende Grafik möchte den Aufbau einer IP-Adresse und die Bildung von Adressklassen verdeutlichen:
Private Adressbereiche: In den drei ersten Adressklassen gibt es jeweils einen reservierten Adressbereich, der für interne, private Nutzung im LAN vorgesehen ist:
in Class A: 10.0.0.0 – 10.255.255.255/8
in Class B: 172.16.0.0 – 172.31.255./16
in Class C: 192.168.0.0 – 192.168.255.255/16
Eingeführt wurden diese privaten Adressbereiche wegen des starken Wachstums des Internets, mit dem eine Adressknappheit einher ging. Öffentlichen Servern wurden niemals aus diesen Bereichen Adressen zugewiesen, so dass es keine Konflike wegen doppelter Vergabe geben kann. Mit Hilfe des in diesem Zusammenhang entwickelten Network Address Translation (NAT) benötigen nur noch die Interneteinwahl-Router eine öffentliche Adresse - die vielzähligen im internen LAN aufgestellten Rechner erhalten lediglich eine private Adresse, von denen es genug gibt. Achtung: Router könnten Datenpakete aus diesen privaten Bereichen durchaus weiterleiten; die Internetprovider sind aber angehalten, solcherlei Datenpakete in öffentlichen Netzen mit Firewalltechnik zuverlässig auszufiltern.
1.3.2.2.1.1 IPv4 Fragmentierung und Routing
Fragmentierung von IP-Paketen
Je nach physischem Unterbau (z.B. Ethernet) müssen Daten in kleine Teile aufgesplittet werden.
Eine 4MB große MP3-Datei am Stück zu übertragen, würde alles blockieren!
In Teilen zu je 1300 Bytes (= sicherer MTU-Wert) ergeben sich rund 3226 kleine Pakete.
Das IP-Protokoll kümmert sich um diese Fragmentierung und um das spätere Zusammensetzen, im Header gibt es dafür das Feld “Identification”, das bei allen Paketen aus derselben Sendung dieselbe Nummer enthält.
Routing: Entscheidungsfindung mit Hilfe der Netzwerk-Maske, die Frage lautet: „Befindet sich das gesuchte Ziel in meinem eigenen Netzsegment?“
Falls ja -> Datenpaket ausliefern
Falls nein -> Datenpaket an eine andere, passende Route oder das Standardgateway weiterleiten
Falls beides keinen Erfolg zeigt -> Fehler ausgeben
Das Ganze geschieht mittels mathematischer Berechnungen: Sind Quelle und Ziel im selben Netz? Ist das gesuchte Ziel direkt erreichbar ist oder nur mittels Router?
Lokale IP-Adresse und Maske log. & addieren (10.2.3.4/24)
Entfernte IP-Adresse und Maske log. & addieren (10.0.0.32/24)
Ergebnis sind jeweils die Netzwerk-IDs, stimmen sie überein?
Addr 1: 00001010.00000010.00000011.00000100
Mask 1: 11111111.11111111.11111111.00000000
log. & -----------------------------------
NW-ID 1: 00001010.00000010.00000011.00000000
===================================
Addr 2: 00001010.00000000.00000000.00100000
Mask 2: 11111111.11111111.11111111.00000000
log. & -----------------------------------
NW-ID 2: 00001010.00000000.00000000.00000000
===================================
Wegefindung – das Ergebnis:
Schlussendlich vergleichen wir die beiden Netzwerk-IDs auf Übereinstimmung des Bitmusters:
NW-ID 1: 00001010.00000010.00000011.00000000
NW-ID 2: 00001010.00000000.00000000.00000000
Wir sehen, dass die Muster nicht übereinstimmen, also ist das Ziel offenbar nicht im eigenen, physischen Netzsegment zu finden, sondern in einem fremden. Es wird nun mit weiteren logisch UND-Operationen nach einer passenden Route gesucht. Falls sich keine findet, wird das Datenpaket zum Standardgateway geschickt.
1.3.2.2.1.2 IPv4 Subnetting
Definition Subnetting: Bildung von Unternetzen, um Netzwerke zu segmentieren.
Die Auftrennung in kleinere Unternetze hilft, die Anzahl der Netzwerke den Gegebenheiten besser anpassen zu können, z.B. zur Gründung von Unterabteilungen, die einen eigenen Adressbereich erhalten und damit vom übrigen Netz logisch getrennt sind.
Ziel: Schaffung kleinerer Unternetze, z.B. für Abteilungen
Ausgangspunkt: Class A-, B- oder C-Netzwerk, z.B. /24
Subnetting: Borgen von Host-Bits, die zu den Netzen gezählt werden
In der Maske wachsen nach rechts hin die Anzahl der Einsen lückenlos an; wir borgen zuerst nur 1 Bit: /24 -> /25
Mit dem einen geborgten Bit lassen sich -> Unternetze bilden.
Im Hostanteil bleiben 7 Bits übrig: -> Adressen pro Unternetz
In jedem Unternetz sind aber 2 Adressen für Netzwerk-ID und Broadcast-Adresse reserviert, also verbleiben 128-2=126 Hostadressen pro Unternetz.
Hinweis: Es gibt auch den umgekehrten Vorgang, dass Bits vom Netzwerkanteil eine Adresse geborgt werden, um ein einziges, großes Supernetz zu schaffen (Supernetting).
1.3.2.2.2 Internet Protocol Version 6 (IPv6)
Grundlegende Eigenschaften von IPv6:
Adresslänge: 128 Bits (Zum Vergleich bei IPv4: 32 Bits)
Hexadezimale Notation, Doppelpunkte unterteilen 8 Abschnitte zu je 16 Bits, z.B. fd00:2:3:4:5:6:7:8/64
Die Netzwerkmaske wurde durch die Präfixlänge ersetzt, die typischerweise /64 ist, der Netzwerk-Identifier umfasst dann die restlichen 64 Bits.
Subnetting kann ähnlich wie bei IPv4 vorgenommen werden.
Broadcasts wurden durch Multicasts abgelöst; diese werden an ausgewählte Maschinen gesendet: “Hallo an alle Router, ich hätte gern ein Netzwerk-Präfix!” oder “Bitte konfiguriere mich.” an alle Hosts.
Automatische Konfiguration kann nativ via built-in Funktionen genutzt werden (Stateless Address Auto Configuration (SLAAC), Neighbour Discovery Protocol (NDP), Router-Solicitations und -Advertisements) oder mit separaten, statusbehafteten DHCPv6-Server.
Für eine internetfähige, automatische Konfiguration mittels SLAAC auf Basis von NDP/ICMPv6 erhält eine Schnittstelle mindestens zwei Adressen:
LAN-Zugriff mittels Link Local Unicast Adresse (fe80::)
WAN-Zugriff mittels Global Unicast Adressen (z.B. 2001:)
1.3.2.2.2.1 Wichtige IPv6-Adresstypen
Wir unterscheiden je nach Reichweite (Scope) folgende grundlegende Arten:
- Loopback-Adresse:
nur im Localhost gültig: ::1/128
- Link Local Unicast Adressen:
nur auf einer bestimmte Schnittstelle gültig, nicht routingfähig, z.B.: fe80::1/64
- Unique Local Unicast Adressen:
manuell administrierbar, fürs LAN gedacht, routingfähig, z.B.: fc00::1/64
- Global Unicast Adressen:
weltweit gültige, eindeutige und routingfähige Unicast-Adressen; manuell administriert, z.B.: 2001:500:88:200::8/64 (= iana.org) oder per DHCPv6 vom Provider konfiguriert, z.B.: 2a02:2b80:1:0:5652::67a/64 (= pemmann.de)
Weiteres zu IPv6
Kürzungsregeln: Führende Nullen können entfallen, aufeinanderfolgende Blöcke voller Nullen können ein einziges Mal auf “::” gekürzt werden
Header ist kleiner, schlanker und flexibler als bei IPv4 (schnellere Netze, besser in Hardware zu implementieren)
Andere Regeln beim MTU-Wert, um unnötige Fragmentierung zu vermeiden
Mobilität bei wechselnden IP-Adressen in verschiedensten Intranets: via Home-Agent (wie bei IPv4)
Unterstützung von VPN-Lösungen wie IPsec, OpenVPN und dem modernen Wireguard
Dual-Stack-Betrieb: IPv6 hat Vorrang – zuerst wird versucht, den angefragten Host per IPv6 zu erreichen, nach kurzem Timeout gibt es einen Fallback zu IPv4
SLAAC: Das ist eine Art DHCP-Funktionalität, aber ohne zentralen Server (automatische Routerfindung)
ICMPv6 arbeitet mit neuen Nachrichtentypen, die der Routerfindung dienen.
1.3.2.3 Transportprotokolle TCP und UDP
Das Transport Control Protocol (TCP) und das User Datagram Protocol (UDP) sind zwei Layer-4-Protokolle, die das Internet-Protokoll voraussetzen. Gemeinsam ist ihnen, dass sie einen Datenstrom inittieren, den dann Anwendungsprotokolle nutzen können. Sie definieren Dienste-Ports für die Ende-zu-Ende-Kommunikation.
Die Unterschiede zwischen beiden liegen in ihrer speziellen Arbeitsweise, was wir im Folgenden betrachten wollen.
Transport Control Protocol:
Es ist verbindungsorientiert, sehr zuverlässig
Etablierter Sitzungsaufbau (3-Wege-Handshake)
Es beherrscht Fehlererkennung und Flusskontrolle (Empfangsbestätigungen)
Es verwendet Prüfsummen
Pakete werden nacheinander gesendet, nicht als wilder Strom
Es arbeitet langsamer, aber zuverlässig
Eingesetzt wird es z.B. bei FTP, HTTP, SMTP, POP3, IMAP, SSH, telnet und SMB/CIFS.
User Datagram Protocol:
Es arbeitet verbindungslos, nicht zuverlässig
Es kennt weder 3-Wege-Handshake noch Empfangsbestätigungen
Lediglich einfache Prüfsummenvergleiche werden durchgeführt
Pakete werden mit einem mal losgesendet; wir sehen keinen geordneten Fluss, eher einen wilden Strom
Dadurch arbeitet es deutlich schneller als TCP
Eingesetzt wird es z.B. bei DNS, DHCP, VoIP, Videoübertragung und VPN.
1.3.2.4 Sockets, Kommunikationsendpunkte
Zwei Protokolle vereint: Entstehung eines Sockets
Netcat: für Simulation und Fehlersuche Das Schweizer Taschenmesser fürs Netzwerk gibt es für alle Systeme – hier 3 Beispiele: Chat, Dateitransfer und Portscan:
Server starten, Port-Listener:
ncat.exe -l 1234
(Der Cursor blinkt vor sich hin, der Server ist auf Empfang...)
Client verbindet sich dorthin, kommunizieren:
ncat.exe localhost 1234
Server starten und auf Daten warten:
ncat.exe -l 1234 > empfangen.txt
Client sendet eine Datei dorthin:
ncat.exe -w1 localhost 1234 < zusenden.txt
Als Portscanner (nur unter Linux!):
nc -zv ZIELHOST 20-200
1.3.2.5 Klassische Anwendungsprotokolle
An dieser Stelle soll zuerst einmal ein Überblick über alte Anwendungsprotokolle gegeben werden, die in der Anfangszeit des Internets eine wichtige Rolle spielten und noch immer spielen. Die Verschlüsselung der Kommunikation war damals noch kein Thema, weil es sich meist um eine geringere Anzahl von Großrechnern handelte, zu denen niemand so einfach Zutritt bekam. Wir vertiefen ein paar Protokolle davon im Zusammenhang mit ihren entsprechenden Netzwerkdiensten weiter unten in dieser Dokumentation.
FTP: File Transfer Protocol zur Dateiübertragung
Telnet: Fernadministration von Rechnen mittels Kommandozeile, allerdings unverschlüsselt!
E-Mail benötigt in der Regel drei Protokolle:
SMTP: Das ganze Internet spricht das Simple Mail Transfer Protocol
IMAP: Das Internet Message Access Protocol dient dem Lesen und Bearbeiten von Mails direkt auf dem Server
POP3: Das Post Office Protocol dient dem Downloaden von Mails auf den lokalen Rechner
DNS: Domain Name System zur weltweiten Namensauflösung
HTTP: HyperText Transfer Protocol (HTTP) zur Übertragung von Webseiten (www)
LDAP: Lightwight Directory Access Protocol zur zentralen Authentifizierung von Nutzern und als Auskunftssystem
1.3.3 Weitere Anwendungsprotokolle
Neben den weiter oben bei TCP/IP genannten klassischen Anwendungsprotokollen gibt es eine Vielzahl von Protokollen, die im LAN und WAN für den Endnutzer interessant sind. Im Folgenden werden typische Situationen gemäß der bekannten OSI-Layer sehr vereinfacht dargestellt.
Es gibt inzwischen eine zunehmende Zahl von Peer-to-Peer Lösungen wie Syncthing (Dateisynchronisation), die auf keinen zentralen Server angewiesen sind und sowohl im LAN wie auch im WAN einsetzbar sind.
1.3.3.1 LAN-Protokolle
Zum besseren Verständnis wollen wir die typische Protokollstapelung im LAN betrachten. Solche Protokolle zur Übertragung von Daten können typischerweise sein:
L7: Server Message Block Protocol (Datei- und Druckdienste mit SMB, Microsoft-Welt)
L7: Network File System (Dateidienste mit NFS, Unix/Linux-Welt)
L7: Common Unix Printing System (Druckdienste mit CUPS, Unix/Linux-Welt)
L3-7: TCP/IP-Suite
L1-2: Ethernet
1.3.3.2 WAN-Protokolle
Im WAN sieht eine typische Situation ein wenig anders aus:
L7: FTP
L7: SMTP / IMAP / POP3
L7: HTTP / HTTPS / WebDAV (Erweiterung für Datei-Uploads zum Web-Server hin, -> Cloud-Storage)
L3-7: TCP/IP-Suite
L1-2: PPP, PPPoE
1.4 Wichtige Netzwerk-Dienste
Wir befinden uns jetzt in anwendungsorientierten Schichten, im OSI-Modell sind das die Layer 5 bis 7. Jeder Netzwerkdienst basiert auf einem bestimmten Protokoll, die weiter oben vorgestellt wurden.
1.4.1 Domain Name System (DNS)
Dieses System ist zugleich auch ein Protokoll, das im RFC 1035 spezifiziert wird. Es ist für das Internet besonders lebenswichtig. Ohne Namensauflösung müssten wir und lange numerische Adressen merken, viel mehr noch würden wir nicht mehr alle WebSeiten erreichen, weil sie als die Auflösung von Domänennamen zwingend angewiesen sind.
1.4.1.1 Wichtige Grundlagen
Zuerst sollen ein paar Fachbegriffe erklärt werden, die hier häufig vorkommen:
Forward (Vorwärts, normale Auflösung: localhost -> 127.0.0.1)
Reverse (Rückwärtsauflösung: 127.0.0.1 -> localhost)
Autoritativ (verbürgt, befugt, von Amts wegen)
Rekursiv (Den Stapel von unten her aufrollen/abarbeiten, d.h. den Namen komplett vom Hostnamen bis zum obersten Weltwurzelpunkt hinauf auflösen)
Zur Entwicklung von DNS:
1983 wurde TCP/IP eingeführt, Server bekamen Namen
1984 wurde das Namenssystem für Domänen gestartet
1997 standen 101.803 Servernamen in der whois-Datenbank
2010 wurde DNSSEC eingeführt (Signierung und Validierung)
2016 erschien das erste RFC zu DNS over TLS (verschlüsselte Übertragung der DNS-Namensauflösung)
2k+ sind viele Webseiten ohne DNS nicht mehr erreichbar: eine Maschine hat nur noch eine IP-Adresse, aber mehrere DNS-Hostnamen (namensbasierte virtuelle Hosts)
Folgende Grafik verdeutlicht den Ausgaangspunkt von der ursprünglichen, lokalen Datei hosts.txt der Unix-Großrechner (heute /etc/hosts) zum heutigen weltweit verteilten Service:
1.4.1.2 Reihenfolge der Namensauflösung
Jedes Betriebssystem schaut clientseitig zuerst lokal auf der eigenen Maschine nach, ob der Name bereits aufgelöst werden kann. Danach erst werden DNS-Server konsultiert:
Unix-Welt (Linux, Apple/MacOS):
Datei
/etc/hosts
Datei
/etc/resolv.conf
(und/oder mittels verschiedener Resolver-Dienste)
Microsoft Windows:
C:\Windows\System32\drivers\etc\hosts
Mittels Resolver-Dienst, die Adressen der DNS-Server werden in der Registry gespeichert.
1.4.1.3 Aufbau und Struktur von DNS
Grundprinzip: Auskunftssystem ähnlich der Gelben Seiten (whois)
Weltweites, hierarchisch unterteiltes Bezeichnungssystem
Dezentral und verteilt (weltweit 13 Root-Server, redundant abgeglichen)
Globaler, einheitlicher Namensraum in baumartiger Datenstruktur, Weltwurzel = ein einzelner Punkt
Der Pfad zum Hostnamen wird hierarisch mittels Domainnamen untergliedert: myServer.second-level-domain.tld. (rechts außen mit der Top Level Domain beginnend)
Domäne = nur ein Teil des gesamten Namensraums
Zone = Verwaltungseinheit einer Domäne mit Datensätzen
1.4.1.4 Arbeitsweise von DNS
Forward Auflösung entlang der DNS-Baumstruktur, von rechts beginnend (Sinn und Zweck: sprechende DNS-Namen -> IP-Adresse)
Reverse Auflösung mit speziellem ARPA-Namensraum (oft nur zur Gegenprobe: IP-Adresse -> DNS-Namen)
Autoritative oder nicht autoritative Auskunft (verbürgen kann sich nur, wer die Datensätze selber hostet)
Rekursive Abfragen erlauben (weltweit) oder nur die eigenen Zonen benutzen (autoritative Auskunft)
DNS-Clients:
Mittels der sogenannten Resolver-Bibliothek werden die clientseitgen Anfragen zu den hinterlegten Nameservern weitergeleitet.
Validierende Resolver können DNSSEC benutzen (signierte Datensätze prüfen)
Verschlüsselte Auflösung mit DNS over TLS muss zum Teil noch in die Betriebssysteme implementiert werden
Tools zum Testen: nslookup, host, dig und Online-Dienste wie https://ping.eu/
Alle autoritativ verantwortlichen Nameserver für eine Domäne ausgeben: nslookup -type=ns berlin.de
DNS-Server:
Es existieren viele Server-Implementierungen, der berühmteste ist BIND (Berkeley Internet Name Daemon) Das Wörtchen Daemon bedeutet Service/Dienst, ursprünglich: Disks And Extension MONitor.
Server lauschen am Port 53 via Layer-4-Transport: User Datagram Protocol (UDP)
In den Internet-Einwahlroutern (DSL-Router, WLAN-Router oder WLAN-Accesspoint) läuft ein Cache-only-Nameserver, der die Namensauflösung beschleunigt. Er kann keine eigenen Zonen hosten.
Um nervige Werbung und anderes auszufiltern, kann ein Cache-only-Nameserver Blocklisten abarbeiten, so z.B. mittels PiHole
Über den eigenen privaten DSL-Anschluss eine Webseite ins Netz bringen? Ja, geht – dank DynDNS (DDNS).
1.4.2 Dynamic Host Configuration Protocol (DHCP)
Die folgende Abbildung zeigt das Zusammenspiel zwischen DHCP-Server und -Client:
Wichtige Merkmale, DHCP-Kommunikation:
Der Server schöpft aus einem bestimmten Adresspool (Bereich) automatisch zu vergebende Adressen samt Maske.
Die Adressen dürfen die Clients nur für eine bestimmte Zeit benutzen (lease time).
Weiterhin sollten auch das passende Standard-Gateway (Router) und ein bis drei Nameserver (DNS) übermittelt werden.
Es existieren viele weitere Bereichsoptionen, so kann auch ein Bootserver (next server) für Thin Clients verbreitet werden.
Kommunikation laut Protokoll: DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPACK
1.4.3 Dateitransfer mit FTP
FTP arbeitet mit zwei Übertragungskanälen, der Nutzer loggt sich mittels dem Control-Kanal auf den Server ein (Port 21) und kann dort Kommandos zum Auflisten, Herunter- und Hochladen eingeben. Über den zweiten Kanal fließen dann die Daten:
Quelle: https://www.javatpoint.com/computer-network-ftp
Wichtige Eigenschaften sind:
FTP ist für die Nutzung im Internet gedacht, nicht im LAN
Es arbeitet mit zwei separaten Kanälen (Sicherheit!)
Aktiver Modus
Client loggt sich auf Server ein, Kommandoeingabe: TCP-Port 21
Server sendet die Daten zum Client, Datenstrom: TCP-Port 20
Passiver Modus:
Client loggt sich auf Server ein, Kommandoeingabe: TCP-Port 21
Client zieht sich die Daten selber als Download mittels einem nichtprivilegierten Port (> 1024), was hinter Firewalls die einzige Lösung darstellt
Das Ganze läuft vollig unverschlüsselt, Mitlesen ist relativ leicht!
Mittels TLS/SSL lässt sich aber Verschlüsselung nachträglich einbauen
Guter FTP-Client, der Verschlüsselung beherrscht: Filezilla
1.4.4 E-Mail Agenten und Protokolle
Mitwirkende Agenten und Protokolle bei E-Mail sind:
Quelle: https://de.ccm.net/contents/1096-funktionsweise-von-e-mails-mta-mda-mua
Wenn über E-Mail gesprochen wird, kommt gern dieser Satz: Das ganze Internet spricht SMTP! (Simple Mail Transfer Protocol), der TCP-Port ist 25, dieses eine Protokoll kann beides: senden und empfangen!
Verschiedene Agenten bilden das gute, alte Postamt nach:
Mail Transfer Agent (MTA), = Mail-Server
Mail Delivery Agent (MDA), = In-House Postverteiler, u.a. Spamfiler
Mail User Agent (MUA) = Endnutzeranwendung wie Thunderbird oder Outlook
Weil User mit ihrem preisgünstigen DSL-Zugang in der Regel nicht direkt via Namensauflösung erreichbar sind (DNS: MX-Record, => Mail eXchange), müssen sie zu einer Art Briefkasten-Service laufen:
POP3 (Post Office Protocol), TCP-Port 110; Mails werden heruntergeladen und danach auf dem Server gelöscht
IMAP (Internet Message Access Protocol), TCP-Port 143; Mails werden auf dem Server belassen und dort direkt bearbeitet (Spam herausfiltern, sichten und löschen); PROBLEM: Postfach hat nur begrenzten Speicherplatz! In diesem Falle bekommen entfernte E-Mail-Absender eine Nachchricht, dass die Mail aus diesem Grunde nicht zugestellt werden konnte.
Ein guter, freier Mail-Client (= MUA) ist Thunderbird, der die entfernten Daten lokal herunterlädt und synchronisiert (Festplattenplatz!)
E-Mail-Verschlüsselung der drei wichtigsten Protokolle:
SMTP: TCP-Ports 587, 465 und 2525
POP3: TCP-Port 995
IMAP: TCP-Port 993
Hinweis: Google Mail verwendet OAuth2 zur sicheren Authentifizierung, was entsprechende Konfigurationsanpassungen im MUA/Mail-Client erfordert! Das Verfahren kümmert sich nicht um Verschlüsselung, sondern nur um Single-Sign-On.
Mail-Anhänge werden dank dem MIME-Standard möglich gemacht, sie müssen allerdings mit Base64 kodiert werden, was die E-Mail vergrößert
Als Mail-Client (MUA) wird oft ein üblicher Webbrowser wie Firefox genutzt, was wir dann als Web-Mail bezeichnen. Das ist allerdings eine hybride Technik, die oft mit viel Werbung und umständlicherem Handling verbunden ist:
E-Mail = Text only
WWW = grafische Internet-Welt
1.4.5 Webseiten mit HTTP ausliefern
WWW: Clients beziehen HTML-Seiten vom Web-Server HTTP-Client und -Server
Quelle: https://de.ccm.net/contents/1096-funktionsweise-von-e-mails-mta-mda-mua
Definition: Das HyperText Transfer Protocol (HTTP) dient zur Übertragung von Webseiten.
Erleichterung der Internetnutzung mittels Transportprotokoll und Auszeichnungsspreche)
Transportprotokoll HTTP ist normalerweise Klartext!
Per Default wird via TCP-Port 80 ausgeliefert, UDP kommt nicht in Frage, weil HTTP zustandslos ist!
HTTP wird heute zumeist via TLS/SSL verschlüsselt (TCP-Port 443)
Inhalte sind Webseiten, in der Auszeichnungsspreche HTML geschrieben
WWW = alle Hosts, die mittels HTTP Webseiten mit xHTML austauschen.
Beim Empfang einer ‘index.html’ ist der Client angehalten, die Web-Seite zu rendern, also bildhaft darzustellen (Bildsynthese)
1.4.6 Microsofts File und Print-Service, veraltet
Das veraltete, nicht routingfähige Transportprotokoll Network Basic Input Output System User Interface (NetBEUI) benutzte schon vor vielen Jahren als Schnittstelle zum Ansprechen des Rechners den Network Basic Input Output System-Hostnamen (NetBIOS-Rechnername). Dabei benötigte es kein separates Protokoll zur Adressierung, weil es direkt auf die physischen MAC-Adressen aufsetzte.
NetBEUI ist heute nicht mehr im Spiel, wir haben in modernen Windows-Betriebssystemen NetBIOS over TCP/IP:
Quelle: https://www.networxsecurity.org/members-area/glossary/n/netbios.html
1.4.7 Microsofts File und Print-Service, neu
Und nun ganz ohne NetBIOS-Namensauflösung, rein via DNS:
Quelle: https://www.slideshare.net/SecurActive/workshop-on-cifs-smb-protocol-performance-analysis (Folie 36)
1.4.7.1 Freigabe mittels SMB/CIFS erstellen
Microsofts alte Bezeichnung Server Message Block Protocol (SMB) bekam zwischenzeitlich einen neuen Namen, um hervorzuheben, dass jetzt das IP-Protokoll die Grundlage ist. Es nennt sich Common Internet File System* (CIFS).
Im Folgenden wollen wir eine einfache Netzwerkfreigabe erzeugen:
Im Microsoft-LAN für Dateitransfers- und Druckerfreigaben benutzt
Die Basis ist TCP/IP, weswegen es sich Common Internet Filesystem nennt (nicht für weltweite Nutzung gedacht!)
Server Message Block nennt sich das eigentliche Protokoll, es nutzt seit SMBv2 den TCP-Port 445
Es verlässt sich in Sachen Namensauflösung auf DNS (UDP-Port 53).
Eine Freigabe erzeugen:
Zentralen Ordner unter
C:\
erstellen (nicht in User-Verzeichnissen!):C:\myShares
Unterverzeichnisse anlegen, z.B. „austausch“, der Dateipfad lautet
C:\myShares\austausch
Mit Rechtsklick auf diesen Ordner „austausch“ klicken, Registerkarte „Freigabe“
Schalter „Erweiterte Freigabe“, freiben: anderslautenden Freigabename „public“ verwenden
Schalter „Berechtigungen“, dort explizit „Vollzugriff“ gewähren
Freigabe local testen:
Eingabeaufforderung:
net share
(Wir sehen:public C:\myShares\austausch
)Via START/Ausführen:
\\127.0.0.1\public
(= Uniq Naming Convention)oder auch
\\HOSTname\SHAREname
bzw.\\IP-Adresse\SHAREname
SMB verlangt Nutzerauthentifizierung:
Gast-Account aktivieren (= anonymer Zugriff!!)
Client sendet sein Benutzername/Passwort-Paar der aktuellen Winlogon-Sitzung automatisch zum Server; passt es überein, kann er die Freigabe nutzen, ansonsten bekommt er ein Authentifierungungsdialogfenster zu sehen.
Manche Netzwerkprogramme benötigen Laufwerksbuchstaben (Laufwerks-Mapping), Buchstaben z.B. via Eingabeaufforderung zuweisen:
net use H: \\127.0.0.1\public
1.5 Netzwerk-Tools / Diagnose
Es gibt eine ganze Werkzeugpalette, die ersten fünf Tools werden mit dem Betriebssystem ausgeliefert, weil sie einfach mit zur TCP/IP-Suite gehören:
ping: Erreichbarkeit im Roundtrip testen.
tracert: Routenverfolgung durchführen
nslookup: Einsichtnahme in die Datenbank von DNS-Servern; alle autoritativen Nameserver einer Domäne ausgeben:
nslookup -type=ns berlin.de
netstat: Verbindungsstatus abrufen
Z.B.: Windows: netstat -na [-b] Linux: netstat -tulpan
telnet: Eigentlich altes Client-Tool für Fernadministration, ist aber gut zum Testen, ob ein TCP-Port offen ist:
telnet localhost 80
netcat: Das Schweizer Taschenmesser - ein Catenate fürs Netzwerk
Chatten als kleine Anwendung, um eine komplette Verbindung zu etablieren: a) SERVER startet Port-Listener: ncat.exe -l 8080 b) CLIENT stellt Verbindung her: ncat.exe localhost 8080
nmap: Sehr guter Open Source Port- und Sicherheitsscanner
Wireshark: Sehr guter Open Source Paket-Analyser
1.6 Hardware und Speichersysteme
1.6.1 Server-Hardware
Serversysteme On-/Off-Premise
On-Premises – lokale Rechentechnik selbst betreiben:
Tower-Server (Einzelrechner im Standgehäuse)
Server-Racks (Server als 19-Zoll-Einschub)
Blade-Server (kompakte, schlanke Baugruppen, die keine eigene Stromversorgung und Lüftung aufweisen)
NAS als einfacher Server (leicht konfigurierbar)
Off-Premises – entfernte Rechentechnik, IT auslagern:
Cloud
SaaS, IaaS, DaaS
Colocation
Kontra schleichende Datenkorruption
Viele Einflussfaktoren können Daten verfälschen (Softwareerosion)
Serverhard- und Software muss dieser Alterung gegenwirken:
ECC-RAM (Arbeitsspeicher mit Error Correcting Code)
ECC-Support von CPU und Motherboard
Intelligente Dateisysteme (ReFS, ZFS, btrfs)
RAID (Redundant Array of Independent Disks)
Backups!
1.6.2 Speichersysteme
Üblicherweise kommen folgende, wichtige Speichersysteme zum Einsatz:
RAID-Systeme (Redundant Array of Independent Disks)
Direct Attached Storage (DAS)
NAS (Network Attached Storage)
SAN (Storage Area Network)
Speicher-Cluster
Hochverfügbarkeit mittels Hot Standby: Bei Ausfall springt sofort eine anderer Speicher-Server ein
Hochverfügbar und skalierbar mit Ceph: verteilter, skalierbarer Storage über mehrere Speicher-Server hinweg
1.6.2.1 RAID-Systeme
Definition RAID: Bei einem Redundant Array of Independent Disks handelt es sich um einen Festplattenverbund, der dem plötzlichen Ausfall von Festplatten vorbeugen soll. Ziel ist vor allem eine hohe Datenverfügbarkeit.
Wir unterscheiden dabei Hard- und Software-RAID, je nachdem, ob Hardware-RAID-Controller eingesetzt werden sollen, oder ob eine stabile Softwarelösung ausreicht. Grundsätzlich arbeitet der Festplattenverbund mit verschiedenen Verfahren und Logiken, nicht nur die Verfügbarkeit sicherzustellen, sondern auch die Zugriffsgeschwindigkeit zu erhöhen. Hier sind die wichtigsten Level:
- RAID-Level 0 (min. 2 Festplatten), Stripe-Sets:
Eine Datei wird in einzelne Blöcke zerlegt und abwechselnd auf beide Platten verteilt. Keine Daten-Sicherheit, ein kurzes asynchon arbeiten bedeutet Datenverlust! Der Vorteil daran ist lediglich ein Performance-Gewinn.
- RAID-Level 1 (min. 2 Festplatten), Mirroring:
Eine Datei wird in parallel auf beide Platten geschrieben. Hohe Daten-Sicherheit, aber langsamer.
- RAID-Level 5 (min. 3 Festplatten), Stripe-Sets mit Parity-Bits:
Eine Datei wird in einzelne Blöcke zerlegt und auf alle Festplatten verteilt. Ebenso werden Prüfbits auf alle Platten geschrieben. Falls eine der drei Platten ausfällt, kann anhand der Prüfbits die Datei wiederhergestellt werden. RAID-5 ist ein guter Kompromiss aus Sicherheit, Performance und Kostenfaktor.
- RAID-Level 10 (min. 4 Festplatten), Mirroring und Stripe-Sets:
Hier handelt es sich nicht um einen Level mit der Nummer Zehn, sondern um die einfache Überlagerung eines RAID 1 mit einem RAID 0. Auch hier verbessert sich wiederum die Leistungsfähigkeit, wobei es der Datenverfügbarkeit keinen Abbruch tut.
Abbildung RAID-Level im Überblick - Level 0 fehlt hier aus gutem Grund! (Quelle https://www.ufsexplorer.com/de/articles/storage-technologies/raid-data-organization/):
Abbildung Network Attached Storage – als Bestandteile dieses speziellen, einfachen Speicher-Server ist hier natürlich auch RAID dabei:
Abbildung Storage Area Network ist dagegen ein schnelles, flexibles Speichernetzwerk:
Abbildung Ein verteiltes Ceph-Cluster - es vereint viele Vorteile: high performance + hyper scalable + high availability:
1.6.3 Systemkomponenten
Bei Hard- und Software bitte immer ans Prinzip Eingabe-Verarbeitung-Ausgabe (EVA) denken!
1.6.3.1 Hardware
Wichtige Anforderungen, die besonders für Server-Hardware gelten:
Ausfallsicherheit durch Redundanz:
Doppelte Netzteile
Festplatten doppelt und dreifach (RAID)
Doppelte Netzwerkkarten und -kabel (Bonding)
Geschwindigkeit steigern:
Viel Arbeitsspeicher (!), schnelle Multicore-CPUs, hoher Bustakt
NVMe und SSD anstelle von HDD
Schnelle Netzwerkkarten und Übertragungsmedien (Cu: 1 Gbit/s, 10 Gbit/s; LWL: bis zu 19,2 Tbit/s)
1.6.3.2 Software
Wichtige Softwarekomponenten sind im Serverumfeld:
Serverbetriebssysteme (Microsoft Windows Server, Linux, Unix)
Software zur Überwachung/Monitoring
Software zur Fernadministration
Dateisysteme mit Fehlerkorrektur verwenden (kontra Bit Rot), z.B.:
ZFS (BSD, bei FreeNAS)
btrfs (Linux allgemein)
ReFS (bei Windows für Speichervolumes)
Single Sign On (SSO) mit Mirosofts Active Directory Service (ADS)
Virtualisierung: Ressourcen teilen, dedizierte Anwendungen bereitstellen
Überwachung und Management: Software für Monitoring und Fernadministration
Dateisynchronisation zwischen Workstation und NAS (z.B. mit Syncthing, Cloud Sync)
Skalierbares Failover-Cluster über mehrere Storage-Server aufspannen (z.B. mit Ceph)
1.7 Netzwerksicherheit
1.7.1 Grundlagen
Eine vollkommende, perfekte IT-Sicherheit kann es leider nicht geben! Das Bundesamt für Sicherheit in der Informationstechnik definiert gewisse Schutzziele, die je nach Rolle und Aufgabenstellungen in Betracht gezogen werden müssen:
Vertraulichkeit (Lauscht jemand mit?)
Verfügbarkeit (Ist der Dienste ungestört online?)
Integrität (Wurde der Inhalt unzulässig geändert?)
Authentizität (Ist Mensch/Rechner der richtige?)
Verbindlichkeit (Möchte der Mensch die Ware wirklich bestellen?)
1.7.2 Maßnahmen zur Verfügbarkeit
Ausfallsichere Datenhaltung mit RAID (siehe unter „Speichersysteme“)
Backup durchführen (Strategien beachten!), wichtige Begriffe:
Off-Premises
Bandsicherung
Cloud-Backup
Off-Site-Backup
Vollbackup / differentielles oder inkrementelles Backup
Image-Backup
1.7.3 Virtual Private Network (VPN)
Definition: Ein VPN stellt einen virtuell privaten, abgesicherten Kanal zur Verfügung, der über öffentliche Netze verläuft.
Die zumeist in Software implementierte Lösung verwendet normale Paketvermittlung, die Nutzdaten werden allerdings komplett verschlüsselt. Per Definition sind VPNs auf den OSI-Layern 1 bis 3 angesiedelt, die Daten der restlichen Schichten sind damit automatisch mit geschützt.
Abbildung: VPN-Gateways mit der Open Source Software Wireguard (Quelle: https://www.thomas-krenn.com/de/wiki/WireGuard_Grundlagen):
1.7.4 Firewall / DMZ
Definition: Eine Firewall ist eine Art Brandmauer, die an der Grenze von zwei oder mehr Netzwerken aufgestellt ist.
Da im innerbetrieblichen LAN viele mehr oder weniger unsichere Netzwerkdienste laufen, ist es Aufgabe einer Firewall, sie vor der Außenwelt abzuschirmen. Es gibt verschiedene Firewall-Technologien wie Paketfirewall, Personal Firewall, Desktop Firewall und Application-Level-Firewall. Heutige Technologien gestatten Stateful Packet Inspection (SPI) oder sogar Deep Packet Inspection (DPI).
Von der Architektur her unterscheiden wir:
- Dualhomed Host:
Eine einfache Firewall mit zwei Schnittstellen, es kann sich z.B. um einen PC handeln. Allerdings sollte die Routingfunktion deaktiviert werden, um die IP-Pakete mit speziellen Paketfiltern besser reglementieren zu können.
- Screened Host:
Ein Bastion-Host kontrolliert jeden Netzwerkzugriff der Clients, Datenpakete werden nur mit seiner Erlaubnis an den Sicherheitsrouter weitergeleitet (Linux: transparenter Proxy)
- Screened Subnet, auch Demilitarisierte Zone (DMZ) oder Mehrschicht-Perimeternetzwerk:
Es gibt hier zwei unabhängige Firewalls möglichst von verschiedenen Hardwareherstellern. Sie bilden eine Isolierzone, in der die vertrauenswürdigen DMZ-Server (DNS-, Mail-, Web-, Datenbank-, Storage-Dienste) untergebracht sind. Die äußere Firewall wehrt die Angriffe aus dem Internet ab, wogegen die innere Firewall das LAN vor einem möglicherweise gekaperten DMZ-Server abschirmt.
1.8 Öffentliche Kommunikationsnetze
Das Internet ist ein komplexes, lebendiges Ding. Ohne reglementierende Instanzen und Gremien würde der Zusammenschluss von LANs zu einem globalen Netzwerk nicht funktionieren.
1.8.1 Autonome Systeme / WAN
Ein autonomes System (AS) wird von vielzähligen Routern gebildet, die unter einer selbständigen Verwaltungseinheit stehen. Solch ein AS betreibt z.B. die Telekom. Damit diese kleineren Netze zum großen Internet Verbindung aufbauen können, müssen sie eine Autonomous System Number (ASN) zugewiesen bekommen. Dann werden sie in die weltweiten Routingtabellen mit aufgenommen.
Quelle: https://www.ionos.de/digitalguide/server/knowhow/bgp-border-gateway-protocol/
1.8.2 Interneteinwahl
Das Point to Point over Ethernet Protocol spielt eine große Rolle, wenn es darum geht, mit Hilfe von Einwahlroutern oder auch direkt mittels PC ins Internet zu gelangen. Ziel ist es, eine Kommunikation zum Einwahlpunkt beim Provider aufzubauen, der gerne auch Point-of-Presence (PoP) genannt wird. Dabei hat der Internetzugang via Digital Subscriber Line die Aufgabe, eine sichere User-Authentifizierung durchzuführen, um eine Finanzabrechnung direkt vom Einwahl-Provider und nicht mehr vom Telefonnetzbetreiber vornehmen zu lassen. Zum verschlüsselten Einloggen beim Provider zwecks vertragsgebundener Abrechnung kommt das Challenge Handshake Authentication Protocol (CHAP) zum Einsatz.
Abbildung PPPoE erweitert das alte PPP in Richtung schnelle Ethernet-Übertragung. (Quelle http://sclabs.blogspot.com/2017/11/2017-ccnp-rs-pppoe-labs.html):
Der Begriff Digital Subscriber Line (DSL) steht aber nicht nur für die vertragliche Bindung an einen Provider, sondern auch für eine Technologie der letzten Meile, wie sie früher genannt wurde. Die Vermittlungsstelle durfte maximal 5km entfernt sein, um eine Datentransferrate von bis zu 8 Mbit/s zu erreichen. Die DSL-Variante für die Vermarktung an Privatkunden nannte sich Asymmetric Digital Subscriber Line (ADSL), sie realisierte die Technik als Breitbandanschluss auf normalen Telefonanschlussleitungen. So ersteckte sich das Frequenzband schon über größere Bereiche von etwa 3 bis 120 MHz. Bei DSL 6000 resultierte daraus eine maximale Transferleistung von 6 Mbit/s.
Abbildung Telefon- und DSL-Komponenten:
Abbildung DSL – Technik der letzten Meile:
Bei Very High Speed Digital Subscriber Line (VDSL) ist die letzte Etappe der Strecke zum Kunden immer noch die klassische zweiadrige Kupferleitung, allerdings ist jetzt die Entfernung deutlich kürzer als eine Meile, um die hohe Datentransferrate bei VDSL2 von bis zu 52MBits/s zu erreichen. Mit VDSL Vectoring und VDSL 250 sind Geschwindigkeit von bis zu 250 MBit/s im Downstream und bis zu 40 MBit/s im Upstream möglich.
1.8.3 Ein LAN ins Internet bringen
Folgende Abbildung soll einen Überblick geben, wie sich gewöhnlich ein LAN ins Internet bringen lässt. Danach sehen wir uns die beiden Verfahren etwas näher an:
1.8.3.1 Network Address Translation
NAT ist ursprünglich wegen der IPv4-Adressknappheit eingeführt worden, es bringt aber automatisch etwas mehr Sicherheit in Computernetzwerke, weil es die internen Strukturen vor der Außenwelt verbirgt. Meist sprechen wir speziell von Source-NAT, Ziel ist es, ein LAN auf einfache und transparente Weise ins Internet zu bringen. Die Arbeitrsweise ist ein transparentes Übersetzen der privaten Client-Adressen in die eine, öffentliche Adresse des NAT-Routers und wieder zurück. Dafür sind nur 4 OSI-Schichten erforderlich.
Das Motto lautet: “Einer für alle”, was heißen soll: Eine öffentliche Adresse für alle - die privaten Adressen verbergen sich hinter einer “Maskerade”, also “behind NAT”, was viele Admins lieben gelernt haben. (Hinweis: Der NAT-Durchsatz ist je nach Hard- und Softwarelösung mehr oder weniger gut.)
Unter Linux ist das mit einer einzigen Kommandozeile zu bewerkstelligen, so habe z.B. die Schnittstelle ppp0 (via Point-to-Point-Protocol) eine öffentliche IP-Adresse und sei damit im Internet. Dann ist nur eine kurze Kommandozeile erforderlich:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
1.8.3.2 Web-Proxy
Definition Web-Proxy: Ein Stellvertreter holt die Webseiten vom öffentlichen Server ab, speichert sie nach Möglichkeit in seinem Cache, aus dem dann die Clients ihre angefragten Webseiten geliefert bekommen.
Die Stellvertreter-Rolle bringt aber noch einen weiteren Vorteil mit: es lassen sich gleichzeitig Sicherheitsregeln festlegen. Im Zusammenhang mit einer Paketfilter-Firewall kann dann eine „Screened Host“-Architektur entstehen (in etwa wie ein transparenter Proxy).
1.8.4 Vermittlungstechnik
Es gibt zwei große Arten von Vermittlungstechniken, die sich aus dem Plain Old Telephone Service und dem ARPA-Militärnetzwerk heraus entwickelt haben:
Leitungsvermittlung: Standleitung schalten
Paketvermittlung: einzelne Datenpakete auf unterschiedlichem Wege weiterleiten
Eine dritte Vermittlungsart wird speziell bei der E-Mail eingesetzt:
Nachrichtenvermittlung: Nachricht immer als Ganzes von Vermittlungsstelle zu Vermittlungsstelle senden; kurzzeitig wird ein fester Pfad eingerichtet, die Technik zählt zu den im nächsten Abschnitt beschriebenen virtuellen Verbindungen
1.8.4.1 Virtuelle Verbindungen
Virtuelle Verbindungen zeichnen sich durch das Halten eines Verbindungszustandes aus. Aber nicht nur mit den Ende-zu-Ende Partnern; auch die zwischendrin befindlichen Netzwerkknoten behalten den Zustand bei. Daher nehmen alle Nachrichten denselben Weg durch das Netzwerk.
Protokolle, die dazu zählen sind:
Asynchronous Transfer Mode (ATM): sehr effiziente, performante Übertragung von Daten, Sprache und Video, Layer-2-Pakete sind nur 53 Bytes groß, Verwendung bei Rundfunk- und Sendeanstalten, Nachteil: gesondertes, teures Hardware-Equipment erforderlich. Das Kernprotokoll arbeitet nur über 2 Schichten, mit dem ATM Adaption Layer (AAL) aber schon über 3 Schichten, mittels „ATM-aware applications“ ist ATM in allen Schichten zu Hause.
X.25: standardisierte Protokollfamilie für Wide Area Networks via Telefonnetz, arbeitsweise über OSI-Layer 1 bis 3, wird als paketvermitteltes Netz unter dem Namen „Datex-P“ vermarktet
Frame Relay: vom Prinzip her wie X.25, aber ohne Fehlerkorrektur, was einen höheren Datendurchsatz zur Folge hat
1.8.4.2 Frame Relay
Betrachten wir Frame Relay etwas genauer. Dieses Protokoll basiert auf X.25, arbeitet aber nur auf den ersten beiden OSI-Layern mit variabler Framelänge, womit es in die Kategorie Fast Packet Switching fällt. Die Datenpakete müssen in der selben Reihenfolge, wie sie gesendet wurden schließlich wieder ankommen. Das führt zur Blockierung der Leitung für die Zeitdauer der Übertragung, weshalb sich die Technik nicht für echtzeitkritische Anwendungen eignet.
Die erforderlichen Hardwarekomponenten sind:
DTE (Data Terminal Equipment): beim Endkunden aufgestellte Geräte, die neben den Routern und Bridges auch PCs betreffen
DCE (Data Circuit-Terminating Equipment): von den Telekommunikationsfirmen verwaltete Switche samt entsprechender Dienste
Vorteile:
Erlaubt schnellen Datentransfer
Beherrscht lediglich Fehlererkennung, nur fehlerfreie Frames werden transportiert
Transparente, temporäre Verbindungen
Ähnelt einer Standleitung, die aber auch nur für kurze Zeit geleast werden kann
Nachteile:
Nicht für Echtzeitkommunikation geeignet (keine garantierten Antwortzeiten!)
Beherrscht keine Fehlerkorrektur und Flusskontrolle, dies wird höheren Protokollen überlassen
Unterstützt nur Geschwindigkeiten bis 45 Mbit/s
Ausblick: Frame Relay wurde in der Vergangenheit oft eingesetzt, um Verbindungen zwischen LANs und breiten Backbones oder zwischen Basisstationen des GSM-Mobilfunknetzes und den kabelgebundenen Netzwerken herzustellen. Heutige Ethernet-Spezifikationen sind allerdings schneller (10 Gbit/s) und preiswerter, außerdem können virtuelle Verbindungen sehr effizient mit VPNs realisiert werden.
1.8.4.3 Weitere WAN-Techniken
- Multiprotocol Label Switching (MPLS):
Schon seit längerem existiert das Multiprotocol Label Switching, was eine verbindungsorientierte Übertragung von Datenpaketen in einem verbindungslosen Netz mit Hilfe eines vorher gelegten Pfads ermöglicht. Internetprovider bieten darüber Sprach- und Datendienste mittels IP-Protokoll an. MPLS, was mit einer Verfügbarkeit von 99,999% wirbt, ist damit allerdings auf der letzten Meile nicht ganz so erfolgreich.
- Software-Defined Wide Area Network (SD-WAN):
Mit Hilfe von intelligenter Cloud-Software gibt es seit 2014 einen neuen Trend. Dank dynamischen Link-Bonding und anderen Technologien kann es große Overlay-Netzwerke erzeugen, die auf preisgünstigere Weise dieselben alten WAN-Funktionen bereitstellen.
1.9 Funktechnik
Es gibt inzwischen viele Funkstandards, die für die digitale Welt geschaffen wurden. Die bekannteste Technik ist natürlich WLAN. Wir schauen uns altgestandene und neuere Verfahren an.
1.9.1 Überblick digitaler Funk
Hier ein kleiner Überblick zu wichtigen Techniken:
Wireless Local Area Network (WLAN), auch Wave LAN oder Wireless Fildelity (Wi-Fi): Funkstandard für normale Computer-Netzwerke auf Basis von Ethernet
Bluetooth: Kommunikation mit Handys und mobilen Multimediageräten wie Kameras
DECT-Telefonie: Übliche Schnurlostelefone im Heimbereich (via Basisstation), Headsets und spezielle USB-Dongle
Infra red Data Association (IrDA): Früher oft für die Druckeransteuerung benutzt; ideal für Datenübertragung, wenn elektromagnetische Felder einwirken
Mobilfunk mit paketorientiertem Datentransfer: GPRS, EDGE, UMTS, LTE, G5
1.9.2 Mobilfunk
Die Geschichte der Mobilfunktechnik reicht schon 100 Jahre zurück. Hier ein paar Jahreszahlen, mehr darüber ist unter https://www.informationszentrum-mobilfunk.de/technik/geschichte-des-mobilfunks zu entdecken:
1918: Die Deutsche Reichsbahn beginnt mit ersten Tests.
1958: Das erste nationale Mobilfunknetz namen „A-Netz“ startet.
2006: Es gibt mehr als 85 Millionen Mobilfunkanschlüsse in Deutschland, erstmals mehr Handys als Einwohner.
2012: Die Hälfte der deutschen Haushalte kann den schnellen Datenübertragungsstandard LTE nutzen.
1.9.2.1 Funktionsweise
Die elektromagnetische Welle als Übertragungsmedium weist einige Besonderheiten auf, die in ihrer Natur liegen. Erzeugt werden solche Wellen mit Hilfe eines offenes Schwingkreises, im Vakuum breiten sie sich mit Lichtgeschwindigkeit aus; gasförmige, flüssige oder feste Teilchen beeinflussen sie allerdings zum Teil sehr stark. Um die Sendeantennen herum bildet sich eine Funkzelle (Zellen-Topologie), die nur eine begrenzte Reichweite aufweist (Funk-Ausleuchtung). Deshalb muss hier ebenfalls Signalverstärkung geschehen - auf der sendenden oder/und auf der empfangenden Seite.
1.9.2.2 Übertragungswege
Die Funkzellen bilden die physische Netzwerktopologie, in denen die Funksignale von den Handys mit der Mobilfunksendeanlage und einer entsprechenden Mobilfunkbasisstation ausgetauscht werden. Von dort geht es zur Mobilfunkvermittlungsstelle, dem Mobile Switching Center (MSC), wo die Informationen entweder kabelgebunden oder via Richtfunk größere Entfernungen überbrücken. Das MSC ist auch der Ort, wo die Vermittlung der Gespräche und die Erfassung der Rechnungsdaten stattfindet. Es liegt nun eine Ende-zu-Ende Kommunikation vor, die von den Teilnehmern später wieder abgebaut wird.
Die einzelnen Funkzellen sollten sich überlappen, denn nur so können sich die Teilnehmer über größere Entfernungen fortbewegen, währenddessen sie weitertelefonieren. Dieses Weiterreichen in die nächste Zelle nennt sich Roaming und kann insbesondere im Ausland viel Geld kosten, speziell bei Nutzung der Datendienste (Internet surfen, E-Mail, Messenger).
Die Vermittlung von Gesprächen ins Festnetz oder gar zu VoIP-Telefonen (Voice over IP: Hard- oder Softwaretelefone in Computernetzwerken) war immer mit erhöhten Aufwand verbunden: dazu brauchte es umfangreiche Gateway-Lösungen, die extra bezahlt werden mussten. Heutzutage ist das nicht mehr das primäre Problem, da die Telefonie komplett auf Basis von Datenpaketen abgewickelt wird. Die Verschmelzung der unterschiedlichen Systeme hin zu paketorientiertem Transfer wird Next Generation Network (NGN) genannt.
1.9.2.3 Mobilfunkstandards
Definition: Ein Mobilfunkstandard beschreibt die verwendete Technologie und die Ausbaustufe von Mobilfunknetzen analoger und digitaler Art.
Es werden dabei verschiedene Standards in sogenannte Generationen zusammengefasst, um auszudrücken, dass damit größere Technologiesprünge einher gehen. Hier ein kleiner Überblick zu diesen Generationen:
G1: analoge Standards (A-, B- und C-Netz), abgeschaltet
G2: GSM für Telefonie und SMS, GPRS mit 53,6 kbit/s und mit EDGE 256 kbit/s
G3: UMTS von 384 kbit/s bis 42 Mbit/s
G4: LTE von 500 Mbit/s bis 1 Gbit/s
G5: bis zu 20 Gbit/s
G6: – in Planung –
Diese Generationen beschreiben zum Teil mehrere unterschiedliche Verfahren unter einem Sammelbegriff, die entwicklungsgeschichtlich zu sehen sind. So zählt zu Generation 2 folgendes:
- Global System for Mobile Communications (GSM):
Dies ist der erste, älteste Standard, der sich vorrangig nur um Telefonie und SMS kümmert. Von richtigem Datentransfer kann keine Rede sein. Aber das Wesentliche ist erreicht: digitaler Mobilfunk!
- General Packet Radio Service (GPRS):
Der Name sagt es - paketorientierter Datentransfer - also Surfen und Downloads möglich machen, wenn auch langsam (53,6 kbit/s).
- Enhanced Data Rates for GSM Evolution (EDGE):
Auch hier geht es um Datenpakete und Datentransport, die Durchsatzrate ist mit 256 kbit/s schon deutlich besser.
Generation 3: Universal Mobile Telecommunications System (UMTS) heißt diese eine Technik, die in dieser Generation als Datenübertragungsstandard zur Verfügung steht. Damit lassen sich hohe Datenraten von 384 kbit/s bis 42 Mbit/s erreichen. Weil inzwischen die vierte Generation voll zur Verfügung steht, wurde UMTS in Deutschland Ende 2021 abgeschaltet.
Generation 4: Long Term Evolution (LTE) lautet hier der klangvolle Name, man hat wiederum die Transferleistung erhöht, womit sich nun eine mit Kabelnetzwerken vergleichbare Transferrate von 500 Mbit/s bis 1 Gbit/s ergibt. Damit ist nun schnelles und erschwingliches Internet auch in ländlichen Regionen verfügbar.
Generation 5: Im Prinzip handelt es sich um eine Erweiterung von G4 (LTE), die mit maximal 20 Gbit/s Daten übertragen kann. Dazu wird es erforderlich werden, die Funkzellen vor allem in Großstädten engmaschiger aufzustellen (flexible Netzdichte). Um die hohe Datentransferrate zu erreichen, nutzt der Standard u.a. die Richtwirkung von Antennen aus: die Funk-Ausleuchtung wird dorthin gelenkt, wo sich Menschen oder Menschengruppen aufhalten und nicht wie bisher per unspezifischem Broadcast.
1.9.3 Cloud und IoT
Long Range Wide Area Network (LoRaWAN): Netzprotokoll für stromsparende, kabellose Übertragung auf OSI Layer 3 für das Internet of Things (IoT)
ZigBee: Namensgeber ist der Zick-Zack-Tanz der Honigbienen, das beschreibt die Kommunikationsart recht gut: die Geräte sprechen miteinander via Mesh-Netzwerk (elastische Mehrfachvernetzung mit intelligentem Routing) oder via einfacher „Ad-hoc“ Direktverbindung. Einsatzzweck ist die Gebäudeautomation (Smart Home) mit einer Vielfalt von Steuer- und Regeltechnik. Die Reichweite beträgt nur 18 Meter. Es handelt sich um ein offenes Protokoll (Open Source), was Sicherheitsaudits erlaubt.
Z-Wave ist ebenfalls für Smart Home gedacht, beherrscht aber nicht solch ausgefeilte Mesh-Features wie Zigbee, dafür ist die Reichweite mit 165 Meter deutlich größer. Dieses Protokoll ist nicht offengelegt, hier bindet man sich stark an den Hersteller Silicon Labs.
Mit Smart-Home-Hubs lassen sich ZigBee, Z-Wave, Bluetooth und WLAN miteinander verbinden und so auch ins Internet bringen. Allerdings ist dann die heimische Steuerzentrale einem höheren Angriffsrisiko ausgesetzt, was besonders für Türschlösser problematisch ist.
1.9.4 Persönlicher Nahbereich
Personal Area Network (PAN): Vernetzung von PDAs oder Handys im Ad-hoc Verfahren
Wireless Personal Area Network (WPAN) ist ein Spezialfall von PAN, Ziel: fliegend verlegte Kabel ersetzen
Near Field Communication (NFC): Die Technik dient bisher vor allem dem berührungslosen Bezahlen beim Micropayment, sie basiert auf Radio Frequency Identification (RFID).
1.10 Satellitennetze, GPS
Wenn im Internet Satellitenstrecken zur Übertragung von Daten zum Einsatz kommen, spricht man gern vom Global Area Network (GAN), was eine weltweite Ausdehnung ähnlich dem Wide Area Network (WAN) unterstreichen möchte. Die Vernetzung von Rechnern mittels erdumspannender Satelliten bietet einige Vorteile, hier sind ein paar wichtige:
Einzige Kommunikationsmöglichkeit bei fehlender oder defekter Infrastruktur
Fallback bei Ausfall von terrestrischen Netzen
Ermöglichung von (Fahrzeug-)Navigation mittels Geo Information System (GIS)
Aber es gibt auch Nachteile:
Datenpakete benötigen für die große Distanz mehr Zeit (Latenz)
Regen und Schnee können Störungen hervorrufen
Satelliten sind Sonnenstürmen ausgesetzt (Absturz von 40 Starlink Satelliten im Februar 2022!)
Sehr kostenintensive Technik
1.10.1 Grundlagen der Satellitenkommunikation
Es werden drei grundlegende Satellitenorbits (Kreisbahnen) unterschieden:
- Low Earth Orbit (LEO):
Die Satelliten kreisen in niedrigerer Erdumlaufbahn (Höhe: 200 bis 2000 km), in diesen Bahnen befinden sich z.B. die bemannte Raumfahrt (ISS), Spionagesatelliten, Erderkundungs- und Wettersatelliten sowie das Hubble-Teleskop. Der Internetzugang mittels Starlink bietet sehr gute Downloadraten von 150 bis 250 Mbit/s und ping-Zeiten von etwa 40 Millisekunden. Die Satelliten können direkt miteinander kommunizieren und verschiedene Informationen austauschen.
- Medium Earth Orbit (MEO):
Die Erdumlaufbahn ist hier eine höhere (2.000 bis 35.786 km), hier umkreisen Kommunikationssatelliten wie O3b und Navigationssatelliten wie GPS, Galileo oder GLONASS die Erde.
- Geostationärer Orbit (GEO):
In dieser hohen Erdumlaufbahn (35.786 km) umrunden die Satelliten unsere Erde synchron mit der Erdrotation, sie schweben also im Normalfall stationär über demselben Punkt des Äquators. Hier finden sich Kommunikationssatelliten (TV, Sprache) mit sehr guter Qualität sowie Wettersatelliten. Die Downloadraten sind mit 15 bis 50 Mbit/s relativ hoch, allerdings sind die Ping-Zeiten mit 300 Millisekunden und mehr ziemlich ungünstig. Nicht alle Anbieter unterstützen die direkte Kommunikation zwischen den Satelliten, so dass dann ein Umweg über die Bodenstation gegangen werden muss.
1.10.2 Signale und Frequenzen
Die Übertragung der elektischen Signale geschieht mit Funkwellen aus dem Mikrowellenbereich, das Frequenzband für die Internetnutzung liegt bei 28 GHz. Das Global Positioning Systems (GPS) benutzt für die zivile und kostenlose Nutzung eine Frequenz von 1575,42 MHz, für militärische Zwecke beträgt die Frequenz 1227,60 MHz. Der bekannte TV-Satellit Astra 1 (19.2E) arbeitet im Bereich von HF Low 10,7 – 11,7 / HF High 11,7 – 12,75 GHz.
1.10.3 Global Positioning System
Das Global Positioning System (GPS) ermöglicht Ortsbestimmung und Navigation. Es handelt sich um ein Teilgebiet des Geographic Information Systems (GIS), was sich darüberhinaus um Analyse und Kartographie von geografischen Daten kümmert.
1.10.3.1 Funktionsweise
Zur Positionsbestimmung werden mindestens drei Satelliten mit direkter Sicht benötigt, die in unterschiedlichem Abstand zur Erdoberfläche kreisen. Damit lässt sich aber nur der Standort berechnen (Triangulation). Zusätzlich wird ein vierter erforderlich, der eine äußerst genaue Laufzeitmessung (Atomuhr) und darüber hinaus die Höhenmessung sicherstellt.
Siehe dazu die Darstellung von https://en.wikipedia.org/wiki/Global_Positioning_System:
Der GPS-Empfänger muss ebenfalls die exakte Uhrzeit haben, womit er anhand der unterschiedlichen Laufzeiten der Satellitensignale den Abstand zum Satellit errechnen kann. Eine Zeitabweichung von einer Millisekunde würde eine Distanzänderung von ca. 300 km verursachen!
Eine Infrastruktur, die eine umfassende Satellitenkommunikation zur Positionsbestimmung ermöglicht, zeigt die Darstellung von https://en.wikipedia.org/wiki/Geopositioning:
Die Datenpakete gelangen dabei von den verschiedenen GPS-Trackern und sonstigen Geräten über erdgebundene Funkstrecken ins Internet. Dort befindet sich dann das Server Traitement Center (Server-Verarbeitungszentrum), welches Zugriff auf die verschiedensten Kartographie-Datenbanken hat und entsprechende Antworten zurückliefern kann.
1.10.3.2 Fazit
Mit Satelliten lassen sich vielzähle Anwendungen realisieren, die eine Vernetzung voraussetzen, jedoch mit herhömmlichen Methoden nicht realisierbar sind. Die Funkwelle als Übertragungsmedium ist bezüglich der Durchsatzrate nicht ideal, weshalb an der Übertragung mittels optischen Richtfunk (Laserlicht) gearbeitet wird. Ein weiterer Nachteil ist natürlich der, dass Satellitensignale kaum in den Innenraum von Gebäuden eindringen können.