Abschnittsübersicht

  • Wir lernen im Kurs "Grundlagen der Digitalisierung" mit dem von-Neumann-Modell ein Konzept für den grundlegenden Aufbau und die prinzipielle Funktionsweise von Informatiksystemen kennen und verstehen die Programmierbarkeit als zentrales Wirkprinzip von Informatiksystemen.

    Stand: 2025-02-12 – Der Kurs wird wieder gepflegt.

    • Herzlich Willkommen im Grundkurs Informatik 11 C zum Thema "Kommunikation in vernetzten Systemen"!

      Nachdem im vorherigen Kurs die Modelle eines theoretischen (Turingmaschine) und eines praktischen Rechners (von-Neumann-Architektur) intensiv diskutiert wurden, geht es nun den Schritt weiter zur Vernetzung der Technik. Auch hier soll uns ein Modell helfen, die Komplexität des Themas zu strukturieren und zu verstehen. Wir greifen dabei auf verschiedene Aspekte des bisherigen informatischen Unterrichts zurück und bauen diese aus. Am Ende der Einheit soll jeder in der Lage sein, Aufbau und Arbeitsweise eines vernetzten Systems in einer Simulationssoftware zu analysieren, zu modifizieren und zu erweitern.

      Grafik: T. Hempel, Creative Commons Lizenzvertrag
      Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.

      Hinweis: Stand 2025-03-15 – Dieser Kurs wird aktuell wieder gepflegt.

    • Kommunikation im Kurssystem

      Neben der direkten Kommunikation mithilfe des Moodle-Mitteilungsdienstes, der auch auf der App funktioniert, und der E-Mail-Option, gibt es öffentliche Austausch- und Informationsmöglichkeiten in den Foren.

    • Online-Testung zur MAC- und IP-Adressierung
      Nicht verfügbar, außer: Sie sind in LK_11
    • Software im Themenfeld

      Der Großteil der im Unterricht eingesetzten Programmwerkzeuge ist als Open Source oder Freeware deklariert. Für Hausaufgaben oder zum Nachvollziehen der Unterrichtsbeispiele kann der IoStick für die Sekundarstufe II benutzt werden. 

    • Mit der Turingmaschine haben wir das mathematische Modell eines Rechners kennen gelernt und setzten uns mit den Grenzen des Systems auseinander. Im Anschluss analysierten wir die von-Neumann-Architektur und erkannten, dass damit ein universelles, praktisches Computermodell zur Verfügung steht. Der Leistungskurs konnte Bausteine der Architektur mithilfe von Logikgattern entwickeln. Nun geht es im nächsten Schritt um den Verbund von Computern um Daten auszutauschen oder Ressourcen zu teilen.

      Beginnen wir mit einem Blick zurück auf die Anfängen der Vernetzung in die Zeit des kalten Kriegs. Was war der Auslöser der Entwicklung? Wie ist daraus ein weltumspannendes Netz mit Milliarden von Nutzern geworden? Hier erfährst du das Wichtigste:

      Der Film ist Teil der Dauerausstellung "Das Netz" im Deutschen Technikmuseum Berlin: http://www.sdtb.de/Das-Netz.2474.0.html. 
      Creative Commons-Lizenz mit Quellenangabe: eyecatcher Medienproduktion GmbH

    • Ein scheinbar einfacher Kommunikationsdienst ist der E-Mail-Dienst. Schauen wir ihn uns mal näher an (siehe AB).

      Analysieren Sie Voraussetzungen und Ablauf einer E-Mail-Kommunikation.
      Ermitteln Sie die übertragenen Daten.
      Schätzen Sie die Sicherheit der Kommunikation ein.

      1. Erarbeiten Sie in der Gruppe eine Beschreibung für den Begriff "Rechnernetz - Vernetztes System".
      2. Erstellen Sie in der Gruppe eine Übersicht über Ihnen bekannte/genutzte Geräte zur Vernetzung.
        Wählen Sie dazu aus der Gruppe einen Schreiber und diktieren Sie diesem die Geräte. Sollten Bezeichnungen genannt werden, die nicht allen Teilnehmern bekannt sind, muss der nennende Schüler diese erläutern. 
        Ordnen Sie die gefundenen Geräte allgemeinen Zielen der Vernetzung zu. 
      3. Im Zusammenhang mit der Größe und der Struktur von Netzen werden wir zwischen LAN und GAN unterscheiden.
        Ermitteln Sie mithilfe des Lehrbuchs Schöningh S. 247f.
        • die Bedeutung der beiden Abkürzungen einschließlich der zugehörigen Oberbegriffe.
        • mögliche Strukturen für die Vernetzung (Verbindungsstrukturen) mit ihren Vor- und Nachteile.
    • Vernetzte Systeme

      Ein Rechnernetz ist ein Verbund von mehreren, voneinander unabhängig arbeitenden, selbstständigen Rechnern. Es wird beispielsweise eingesetzt für den

      • Datenverbund
        Gemeinsame Nutzung von Daten (z. B. Datenfreigaben, Datenanfragen, Cloudspeicher)
      • Betriebsmittelverbund
        Gemeinsame Nutzung von Soft- oder Hardware (z. B. Drucker, Programme auf Servern)
      • Lastverbund
        Verteilung der benötigten Rechenleistung und Verminderung der Antwortzeit von Systemen (z. B. Zusammenschaltung von Rechnern zur Berechnung kryptografischer Schlüssel oder zur Analyse von umfangreichen Datenmengen)
      • Kommunikationsverbund
        Nutzung zum Informationsaustausch (z. B. Kurznachrichten, E-Mail, Chat, Audio-/Video-Konferenz)
      • Wartungsverbund
        Fernadministration von Computern (z. B. Remotedesktop)

      Wir unterscheiden hinsichtlich der Netzausdehnung zwischen lokalen und nichtlokalen Netzen.

      • Lokale Netze (LAN - local area network)
        sind beispielsweise das Netz der Schule, das Netz im heimischen Bereich oder das Netz in einem Hotel. Sehr kleine lokale Netze, die oft nur zwischen zwei Endgeräten wie einem Bluetooth-Kopfhörer und einem Rechner aufgebaut werden, nennt man PAN - personal area network.
      • Nichtlokale Netze
        sind beispielsweise das Internet, das deutsche Forschungsnetz DFN oder das vernetzte Schulsystem des Landes. Diese Netze werden je nach Größe als GAN - global area network, MAN - metropolitan area netwerk oder WAN - wide area network bezeichnet.

      Die Topologie beschreibt die Struktur der Vernetzung. 

      • Das Internet besitzt eine vermaschte Topologie, die historisch begründet ist (siehe auch Video-Clip am Anfang des Kurses). Diese Struktur Masche schauen wir uns im Kontext der Systemkomponente Router an.
      • Im LAN können beispielsweise die Kabel sternförmig von den Endgeräten zum Verteiler (Switch) geführt werden. Dann liegt vom Aufbau her ein Stern vor.

    • Protokolle für die Kommunikation

      Bauen wir uns als einfaches Kommunikationsnetz ein Büchsentelefon mit drei (!) Teilnehmern. Dazu knoten wir in der Mitte der Schnur ein weiteres Büchsentelefon an.
      Unter welchen Bedingungen können die drei Personen gut miteinander kommunizieren?

      Grafik (gemeinfrei): El mundo físico : gravedad, gravitación, luz, calor, electricidad, magnetismo, etc. / A. Guillemin. - Barcelona Montaner y Simón, 1882

      • Bauen Sie ein Büchsentelefon mit drei Teilnehmern.
      • Versuchen Sie zu kommunizieren (Fragen/Antworten).
      • Erfassen Sie Probleme bei der Kommunikation und entwickeln Sie Lösungsstrategien.
    • Typische Probleme bei der Kommunikation mittels Büchsentelefon/Schlauchtelefon
      • Alle sprechen durcheinander.
      • Man weiß nicht, wer gemeint ist (Ziel).
      • Man weiß nicht, wer spricht (Quelle).
      • Man weiß nicht, wann man sprechen und wann man lauschen soll.
      • Man versteht manches nicht sofort.
      • Man weiß nicht, ob der Sender fertig ist.

      Lösungsideen: 

      Wir benötigen Regeln, d. h. ein Kommunikationsprotokoll und vereinbaren:

      • Alle lauschen an der Büchse.
      • Sprechwillige beginnen zu sprechen.
      • Sobald ein Teilnehmer spricht, darf kein anderer sprechen.
      • Jeder Teilnehmer benötigt einen eindeutigen Namen, welcher nicht der Vorname sein muss.
      • Jede Nachricht muss stets mit den Namen des Senders und des Empfängers begonnen werden, also "Paul an Emma: ...".
      • Jede Nachricht wird 2x gesendet. Die zweite Runde wird mit ICH WIEDERHOLE eingeleitet und alles mit dem Wort ENDE beendet.
      • Beginnen mehrere Teilnehmer zu sprechen, so ist sofort abzubrechen und die Nachricht zu ignorieren. Beide Teilnehmer warten eine zufälligen Zeit bis zum erneuten Sprechversuch.
    • Paketvermittlung als Grundprinzip der heutigen Kommunikation

      Ein Blick zurück in die Geschichte der Kommunikation - Telefonnetze

      Beispiel: Leitungsvermittlung durch das "Fräulein vom Amt" (Foto: gemeinfrei)

      Leitungsvermittlung

      In Telefonnetzen wurde durch Vermittlungsstellen ein exklusiver Nachrichtenkanal vom Absender zum Empfänger geschaltet. Die Informationen - egal ob kurz oder lang - flossen vom Sender zum Empfänger. War die Leitung belegt, konnte keine andere Kommunikation zum Sender oder zum Empfänger aufgebaut werden. Eine solche Art der Vermittlung nennt man Leitungsvermittlung.

      Paketvermittlung

      Die Idee der Paketvermittlung geht auf Paul Baran zurück, der nach dem Sputnikschock 1964 im Auftrag des US Militärs eine neuartige, dezentrale Netzstruktur entwickeln sollte. Seine Idee: Der Sender verpackt seine Daten in kleine Pakete und übergibt sie ins Netz. Jedes Paket enthält verschiedene zusätzlichen Informationen, etwa den Absender, den Empfänger und eine Paketnummer. Über ggf. verschiedene Wege und Zwischenstationen werden die Pakete zum Empfänger transportiert. Dieser setzt nun anhand der Paketinformationen die Daten wieder zusammen. Zusätzlich können andere Sender Pakete an den Empfänger senden, da die Leitung nicht exklusiv besetzt ist.

      Das System lässt sich mit der Paketzustellung im Versandhandel vergleichen.

      → Das Internet basiert auf Paketvermittlung. 

    • Darstellung der Kommunikation im Sequenzdiagramm

      Ein Sequenzdiagramm beschreibt den Austausch von Nachrichten zwischen Objekten.

    • Unsere Sequenzdiagramme bestehen aus mindestens zwei Objekten, deren Namen in die Rechtecke am Anfang der Lebenslinie eingetragen werden. Die schmalen Rechtecke auf den Lebenslinien stehen für die Zeitdauer, in der der Kommunikationsteilnehmer aktiv ist. Auf den Pfeilen, die Aufträge, Anfragen oder Antworten darstellen, wird die Nachricht notiert.

    • 01 AB Sequenzdiagramme Lösungen Datei
      Nicht verfügbar, außer: Sie sind in LK_11
    • Unser von-Neumann-Rechner hat derzeit keine Möglichkeit der Vernetzung. Dies können wir aber leicht ändern, indem wir ihm eine neue Hardwarekomponente zur Kommunikation einbauen: die Netzkarte (NIC - network interface controller; oft auch Netzwerkkarte genannt).


      Foto: Raimond Spekking, CC BY-SA 4.0 (via Wikimedia Commons)

      Dieses Gerät wird an den Bus angeschlossen und sorgt für die Umwandlung der binären Signale, so dass diese geeignet übertragen werden können. 

      OK, aber:

      • Was sind geeignete Übertragungswege?
      • Wie schnell können die Daten übertragen werden?
      • Warum ist das manchmal aber auch nur langsam möglich?
      • Woher weiß die Netzkarte in einem Verbund von Rechnern (Netzkarten), ob die Daten für sie bestimmt sind?
      • Was passiert, wenn Bits bei der Übertragung durch Störungen "gedreht" werden?

    • Erarbeiten Sie sich mithilfe der Informationen des Elektronik Kompendiums eine Übersicht über Übertragungsmedien, deren Möglichkeiten sowie Vor- und Nachteile.

    • Übertragungsmedien

      Für die Übertragung von Daten stehen drei prinzipielle Medien zur Verfügung.

      leitungsgebunder Drahtweg via Kupferkabel

      • Informationsträger: elektrischer Strom
      • typischer Einsatz: LAN-Verkabelung
      • Bemerkungen: Signalfluss durch elektromagnetische Felder beeinflussbar, leicht zu verlegen, hohe mechanische Festigkeit
      leitungsgebunder Lichtweg via Lichtwellenleiter

      • Informationsträger: elektromagnetische Welle (Licht)
      • typischer Einsatz: Verkabelung zwischen Gebäuden, Ortsverkabelung, Seekabel
      • Bemerkungen: keine Beeinflussung durch äußere Störfelder, hohe Abhörsicherheit, nicht oder nur sehr wenig biegsam, Medienkonverter an den Enden notwendig
      nicht leitungsgebunder Funkweg via WLAN, Mobilfunk, Satellitenfunk

      • Informationsträger: elektromagnetische Welle (Hochfrequenzbereich)
      • typischer Einsatz: Richtfunk, ungebundene Ortsverbindungen, Mobilfunk
      • Bemerkungen: keine Kabelverlegung, Signalfluss durch elektromagnetische Felder beeinflussbar, abhörbar
    • Untersuchen Sie mithilfe des Arbeitsblatts die Qualität der Netzverbindungen.

    • Qualität der Netzverbindung

      Für die Leistungsfähigkeit eines Netzes sind die digitale Bandbreite, der Datendurchsatz und die Laufzeit des Datenpakets entscheidend.

      Digitale Bandbreite - maximale Bitrate

      Als digitale Bandbreite wird die maximal mögliche Anzahl von Daten pro Zeiteinheit bezeichnet, die fehlerfrei übertragen werden kann. Sie wird in der Einheit Bit pro Sekunde angegeben und oft als Bit/s oder bps beschrieben. 

      Beispiele:

      In obiger Abbildung wird die digitale Bandbreite für den Download mit 2304 kBit/s und für den Upload mit 224 kBit/s angegeben.
      Die nachfolgende Abbildung zeigt, dass die Download-Bandbreite bei 110 MBit/s liegt, der Providervertrag jedoch nur 51,3 MBit/s zulässt.

      Durchsatz

      Als Durchsatz wird die aktuelle Anzahl von Daten pro Zeiteinheit bezeichnet. Sie wird in der Einheit Bit pro Sekunden angegeben.

      Beispiel: Mithilfe der Breitbandmessung der Bundesnetzagentur kann der aktuelle Durchsatz bestimmt werden.

      Auch beim Herunterladen von Daten zeigt das Betriebssystem den Durchsatz an.

      Laufzeit

      Die Laufzeit ist die Zeit, die eine Nachricht mit bestimmter Größe von einer Stelle des Netzwerks zu einer anderen Stelle benötigt. Statt der Laufzeit nutzt man zur Untersuchung der Netzqualität gern die Round-Trip-Time, also die Zeit, die ein kleines Datenpaket für den Hin- und Rückweg benötigt. Mithilfe des Befehls ping lassen sich die Zeiten messen. 

      Beispiel: Im nachfolgenden Bild sieht man, dass die RTT hier ca. 69 ms beträgt. 

    • Datenpakete übermitteln

      Nachdem die wichtigsten Fragen zu Qualität, Medium, Verkabelung und Topologie geklärt sind, können wir uns nun der Frage der elementaren Übermittlung der Datenpakete zuwenden.

      1. Wie kommen Datenpakete zum gewünschten Empfänger im LAN?
      2. Was passiert, wenn mal ein Bit "kippt"?
    • Beobachtungsauftrag 1 Auswertung Datei
      Nicht verfügbar, außer: Sie sind in einer Gruppe
      1. Informieren Sie sich über die Größe und Darstellung der MAC-Adresse.
        Geben Sie den Zweck und die Darstellung der Broadcast-MAC-Adresse an.
      2. Informieren Sie sich über die Größe und den prinzipiellen Aufbau eines Datenframes.
        Vergleichen Sie diesen mit unseren Überlegungen zum Büchsentelefon.
    • MAC-Adresse

      Die MAC-Adresse (Media-Access-Control-Adresse) ist eindeutiger Netzkennung einer Netzkarte in einem Rechnerverbund. Sie ist eine 48 Bit große Binärzahl und wird in der Regel hexadezimal aufgeschrieben. Üblich ist dabei eine byteweise Schreibweise, wobei die einzelnen Bytes durch Bindestriche oder Doppelpunkte voneinander getrennt werden, z. B. 00-80-41-ae-fd-7e oder 00:80:41:ae:fd:7e.

      Muss ein Endgerät ein Paket an alle anderen Geräte im LAN senden, so verwendet es als Ziel-MAC-Adresse die Broadcast-Adresse. Bei dieser haben alle 48 Bits den Wert Eins: FF-FF-FF-FF-FF-FF.

      Daten-Frame

      Ein Datenframe besteht unter anderem aus Ziel- und Quell-MAC-Adressen, Nutzdaten und Prüfsummen zur Gewährleistung der Datenintegrität. Die Ziel-MAC-Adresse ist entweder die Adresse der Netzkarte des Endgerätes oder - falls das Gerät nicht in diesem Netz ist - der Netzkarte des Netzkoppelelements. 

      Im WLAN-System besteht ein Datenframe aus mindestens 64 Byte und maximal 1522 Byte.

      Netzgerät Switch

      Ein Switch realisieren die physische Sterntopologie und ermöglichen so den Aufbau eines LAN. 
      Ein Switch analysiert eintreffenden Datenframe und notiert in einer Tabelle (SAT - Source-Address-Table) die Nummer der Schnittstelle (Port) und MAC-Adressen des darüber erreichbaren Endgerätes. Dadurch ist es möglich, den Datenframe an genau die Schnittstelle zu geben, an der die Netzkarte mit der Ziel-MAC-Adresse verbunden ist. Liegen in der Tabelle keine passenden Daten vor, dann wird der Frame an alle Schnittstellen gesendet. 

      Beispiel: Im Bild gibt es eine Besonderheit: An die Schnittstelle Port 3 wurde ein weitere Switch angeschlossen, daher sind dem Port mehrere MAC-Adressen zugeordnet.

    • Für die Erkennung von Übertragungsfehlern werden Prüfbits und Prüfsummenverfahren eingesetzt.

      1. Informieren Sie sich über die beiden Verfahrensarten. Nennen Sie Gemeinsamkeiten und Unterschiede.
      2. Ermitteln Sie das Prüfverfahren für die GTIN unter Verwendung der Unterlagen auf der Website des Mathe-Prismas.
      3. Entwickle ein Java-Programm, dass eine ziffernweise eingegebene GTIN auf Korrektheit prüft.
    • Lösung GTIN.java Datei

      Version mit Feldern (lt. Klasse 10)

      Nicht verfügbar, außer: Sie sind in LK_11
    • Zwischenstand: Vergleich unseres Büchsennetzwerks mit dem Computernetzwerk
      • Alle lauschen an der Büchse.
        → Jeder Rechner ist empfangsbereit und nimmt Signale an der Netzkarte entgegen.
      • Sobald ein Teilnehmer spricht, darf kein anderer sprechen.
      • Jeder Teilnehmer benötigt einen eindeutigen Namen, welcher nicht der Vorname sein muss (2x Anne?).
        → MAC-Adresse
      • Jede Nachricht muss stets mit den Namen des Senders und des Empfängers begonnen werden, also "Paul an Emma: ...".
      • Jede Nachricht wird 2x gesendet. Die zweite Runde wird mit ICH WIEDERHOLE eingeleitet und alles mit dem Wort "Ende" beendet.
        → Nachricht wird durch einen Rahmen (engl. FRAME) zusammengehalten. Dieser besteht aus der Sender- und Empfänger-MAC-Adresse, einer Prüfziffer für die Prüfung der Korrektheit der Nachricht und hat ein definiertes Ende (feste Länge).
      • Beginnen mehrere Teilnehmer zu sprechen, so ist die Nachricht zu ignorieren. Beide Teilnehmer beginnen nach einer zufälligen Zeit erneut zu sprechen.
        → Kollisionserkennung
    • Mithilfe der Netzkarte im Endgerät sowie der Netzelemente Switch und Hub schaffen wir es, lokale Netze aufzubauen und Daten zu übermitteln. Die weltweit eindeutige MAC-Adresse wird dabei zur Adressierung der Daten verwendet. Switche lernen beim Weitergeben der Daten die MAC-Adressen der Endgeräte, die sich an den Anschlüssen des Geräte befinden und können dann die Daten gezielt zustellen. Der Bitstrom an Daten ist in Datenframes aufgeteilt. Jeder Frame hat einen Kopf mit Angaben zu Absender- und Empfänger-MAC-Adresse sowie ein Abschlusselement mit einer Prüfsumme. Wenn wir unser Netz nun größer - also weltumspannend - machen würden, würde die Kommunikation funktionieren?

      Ein globales Netz - etwa das Internet - besteht aber aus vielen autonomen Netzen, die über Vermittlungsrechner (Router) miteinander verknüpft sind. 

      Problem 1: Adressierung der Geräte

      Im lokalen Netz können MAC-Adressen zur Zustellung der Daten verwendet werden. Die Verwendung von MAC-Adressen zur Adressierung/Lokalisierung im globalen Netz ist nicht möglich, da sie keine Auskunft über das Netz oder den Host enthalten. 

      → Logische Adressierung ist erforderlich.

      Problem 2: Weiterleitung der Daten

      Die Vermittlungsrechner müssen adressierbar sein, damit Daten zwischen den Netzen hin- und hergesendet werden können. Aber wie finden die Datenpakete ihren Weg durch das Labyrinth von Routern? Wer bestimmt die Route?

    • Problem 1 – Adressierung der Geräte: Analyse in der Simulation

    • Logische Adressierung mittels IPv4

      Wir benötigen eine neue Art der Adressierung - eine logische Adressierung. Diese wird im Internet Protocol (IP) definiert und existiert in den Versionen 4 und 6. Für das Verständnis der Adressierung und des Protokolls genügt uns die Betrachtung der Version 4.

      Die IPv4-Adressierung besteht aus zwei Angaben, der IPv4-Adresse und der strukturierenden Netzmaske. Jede der beiden Angaben wird als 32-Bit-große Binärzahl (4 Byte) in der Regel in der Dezimal-Punkt-Notation geschrieben. Damit sind theoretisch 232 IPv4-Adressen möglich. Die Netzmaske besteht (von links nach rechts gelesen) stets aus einer Folge der Ziffer 1 und anschließend einer Folge der Ziffer 0.

      Beispiel IPv4-Adresse:

      IPv4-Adresse
      in Dezimal-Punkt-Notation
      192 . 168 . 5 . 223
      IPv4-Adresse
      in Binärnotation
      11000000 101010000 00000101 ‭11011111‬


      Beispiel Netzmaske:

      Netzmaske
      in Dezimal-Punkt-Notation
      255 . 255 . 255 . 128
      Netzmaske
      in 
      Binärnotation
      11111111 11111111 11111111 ‭10000000
      Netzmaske
      in Suffix-Notation
      25

      Für eine kompakte Darstellung der IPv4-Adresse und der Netzmaske werden beide Angaben in der Suffix-Notation zusammengefasst. Die Netzmaske wird hierbei durch die in ihr enthaltene Anzahl der Ziffern 1 ausgedrückt.

      Beispiel IPv4-Adresse und Netzmaske in Suffix-Schreibweise: 192.168.5.213/25

      Strukturierung

      Die IPv4-Adresse wird mithilfe der Netzmaske in einen Netzteil und ein Hostnummer zerlegt. Alle Geräte (Hosts), die den gleichen Netzteil besitzen, sind im gleichen Netz (z. B. im LAN) und können untereinander kommunizieren. Geräte, mit einem anderen Netzteil, befinden sich in einem anderen Netz. Um mit diesen kommunizieren zu können, sind neue Netzkoppelelemente - die Router - notwendig. Sie organisieren den Verbund der verschiedenen Netze und das Weiterleiten der Daten.

      Beispiel: IPv4-Adresse 192.168.5.223/25.

      Netzmaske
      in Binärnotation
      11111111 11111111 11111111 10000000 = 255.255.255.128
      IPv4-Adresse
      in Binärnotation
      11000000 10101000 00000101 11011111‬ = 192.168.5.223
      Netzteil = Netz-ID  11000000 10101000 00000101 10000000‬ = 192.168.5.128 ← IPv4 AND Netzmaske
      Hostnummer = Host-ID  
      00000000 00000000 00000000 01011111 = 95 ← IPv4 AND NOT Netzmaske

      Es ergeben sich folgende Informationen zur IPv4-Adresse 192.168.5.223/25:

      • Netz-ID: 192.168.5.128
      • Netzmaske: 255.255.255.128
      • Netz: 192.168.5.128/25
      • Host-ID: 95
      • Anzahl der möglichen Hosts: 2(32 - Suffix) - 2 = 2(32 - 25) - 2 = 27 - 2 = 126
      • erste mögliche IPv4-Host-Adresse (Netz-ID + 1): 192.168.5.129
      • letzte mögliche IPv4-Host-Adresse (Netz-ID + Anzahl Hosts): 192.168.5.254
      • Broadcast-Adresse (Netz-ID + 1 + Anzahl Hosts): 192.168.5.255

      Die Broadcast-Adresse wird genutzt, um ein Datenpakte an alle Rechner des Netzes senden zu können.

      Hier geht es zur Rechenhilfe.

      Beispiel:

      Sind die Rechner mit den IPv4-Angaben 172.16.0.67/26 und 172.16.0.130/26 im gleichen Netz?

      255.255.255.192   
      11111111 11111111 11111111 11000000
      172.16.0.67
      10101100 00010000 00000000 ‭01000011‬
      172.16.0.130
      10101100 00010000 00000000 ‭‭10000010‬

      Die Netzteile der beiden IPv4-Adressen stimmen nicht überein, daher sind beide Host in verschiedenen Netzen.

      Analogie

      Die IP-Adressierung kann man mit der Festnetztelefonnummer vergleichen. Die Vorwahl stellt die Netz-ID und die Rufnummer die Host-ID dar. Ein Vergleich mit der Postanschrift mit Straße, Hausnummer, PLZ und Ort ist ebenfalls möglich.

       

    • Öffentliche und private Adressbereiche

      Es gibt IPv4-Adressbereiche, die nicht im öffentlichen Netz verwendet werden dürfen. Sie sind für die Benutzung in privaten Bereichen, also etwa im LAN der Schule oder im heimischen Bereich reserviert. 

      Beispiele für private Bereiche: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16

      Wird ein privates Netz mit dem Internet verbunden, erfolgt das Ersetzen der privaten Adressen auf die durch den Provider zugewiesene öffentliche Adresse im Router. Dieses Verfahren heißt Network Address Translation – NAT.

    • ARP – Address Resolution Protocol – Zuordnung MAC- und IPv4-Adressen

      Wir wissen, dass die MAC-Adressierung eine physische und die IPv4-Adressierung eine logische Adressierung mit unterschiedlichem Adressaufbau ist. Damit in einem LAN ein Rechner an einen anderen Rechner ein IPv4-Paket senden kann, muss er die Information in einen Datenframe verpacken. Ein Datenframe besteht aus Ziel- und Quell-MAC-Adressen, Nutzdaten und Prüfsummen zur Gewährleistung der Datenintegrität. Nur wenn dem Sender die Ziel-MAC-Adresse bekannt ist, kann er das IPv4-Paket zustellen. Daher muss "jemand" die genaue Zuordnung, also wer unter welcher logischen und physischen Adresse erreichbar ist, ermitteln und darüber Buch führen: das Address Resolution Protocol (ARP) und die ARP-Tabellen.

    • Prinzipielle Arbeitsweise des ARP

      Jedes Endgerät führt eine ARP-Tabelle, in der die ermittelten Zuordnungen IPv4-Adresse und MAC-Adresse gespeichert werden. Unter Windows lässt sich die Tabelle mit dem Consolenbefehl arp -a anzeigen.

      Soll ein IPv4-Paket an einen Rechner gesendet werden, wird überprüft, ob die MAC-Adresse zur Ziel-IPv4-Adresse in der Tabelle vorhanden ist. Liegt keine Zuordnung vor, wird eine ARP-Anfrage (ARP-Request) nach der fehlenden MAC-Adresse gestellt. Diese Anfrage geht als MAC-Broadcast an alle Endgeräte des Netzes. Erkennt ein Endgerät, dass ihm die Anfrage gilt, so sendet es eine ARP-Antwort (ARP-Reply) mit den ergänzten Daten seiner MAC-Adresse.

      Im Sequenzdiagramm lässt sich diese Kommunikation darstellen und beschreiben: 

      Ergebnisse der Anfrage via Broadcast:

      1. Erweiterung der ARP-Tabelle auf PC1 um IPv4- und MAC-Adresse von Server1
      2. Erweiterung der ARP-Tabelle auf PC2 und Server1 um IPv4- und MAC-Adresse von PC1

    • Statische und dynamisch Adressvergabe

      Die IPv4-Adressierung kann entweder statisch durch manuelles Eintragen der Werte (siehe Bild) oder dynamisch mithilfe des Dienstes DHCP (dynamic host configuration protocol) vorgenommen werden. 

    • Wenn Sie mit Ihrem Smartphone einen WLAN-Hotspot nutzen, müssen Sie keine IPv4-Adresssierung vornehmen. Irgendwie kommt das Smartphone ja rein und scheint eine Adresse automatisch zu erhalten. Scheine wir uns das mal genauer an.

      1. Ermitteln Sie die IP-Adressen aller Geräte in gegebenen LAN im Aktionsmodus. Vergleichen Sie die Zuordnungen zu den Geräten mit Ihren Nachbarn.  Beschreiben Sie Ihre Feststellung.
      2. Das NB6 erhält derzeit keine IP-Adresse automatisch zugewiesen. Ändern Sie dies in Entwurfsmodus. Ermitteln Sie erneut die IP-Adressen aller Geräte. Beschreiben Sie das Problem. Lösen Sie das Problem geeignet.
      3. Untersuchen Sie den genauen Ablauf einer automatischen IP-Adresszuweisung an NB1 mithilfe des Datenmittschnitts. Stellen Sie den Ablauf als Sequenzdiagramm dar.
    • Das DHCP (dynamic host configuration protocol) nutzt die Broadcast-Adresse des Netzes. Damit werden alle dahin geschickten Datenpakete allen IP-adressierten Geräten des Netzes zugestellt. Aus dem Datenmitschnitt ergibt sich folgender vierschrittiger Verlauf. 

    • Problem 2 – Weiterleitung der Daten: Analyse in der Simulation

    • Netze miteinander verbinden – Routing Teil 1

    • Um Datenpakete von einem in ein anderen Netz zu senden, bedarf es eines neuen Gerätes: dem Router. Dieses Netzkoppelelement verfügt über mindestens zwei Netzkarten, die mit je einer IPv4-Adresse aus den beteiligten Netzen konfiguriert sind. Damit jedes Endgerät im Netz den Router kennt, wird dieser als Gateway in der Konfiguration einer jeden Netzkarte eingetragen. Dieser Eintrag stellt sicher, dass das Endgerät Pakete für Geräte außerhalb des Netzes an den Router schickt, der sie dann weiterleiten kann.

      Die nachfolgenden Abbildungen zeigt die Konfiguration einer Netzkarte im Router

      ... und diese Festlegung des Gateway-Eintrags auf dem Server1.

      Ein Ping ins andere Netz wird netzweise realisiert.

    • Pakete gezielt weiterleiten – Routing Teil 2

    • Das Szenario der Übung "Routing 1" bildet das Internet nicht korrekt ab, es fehlt u. a. die vermaschte Struktur der Router.

      Mit den Maschen entsteht jedoch ein neues Problem: Welchen Weg muss ein Paket durch das Labyrinth der Router nehmen, um zum Ziel zu kommen? Das Paket hat weder eine Wegbeschreibung noch eine Karte der Netzstruktur. Hier kommen wieder die Router ins Spiel. Diese müssen entscheiden, wohin sie das Paket senden. Dafür nutzen sie Routing-Tabellen.

      Die Tabelle beschreibt dabei:

      Ziel Netzmaske Nächstes Gateway Über Schnittstelle
      Netz-ID des Ziels Netzmaske des Ziels IPv4-Adresse des nächsten Gateways, über den das Zielnetz zu erreichen ist IPv4-Adresse der Netzkarte in diesem Router, über den das Paket gesendet werden soll

      Beispiel:

      Für ein Paket an die IPv4-Adresse 221.225.127.50 würde vorletzte Zeile gelten: Aus der IPv4-Adresse folgt, dass es ins Netz 221.225.127.48/28 zu senden ist. Dieses wird über die interne Schnittstelle mit der IP-Adresse 10.255.255.254 zum Gateway (also nächsten Router) mit der IPv4-Adresse 10.255.255.253 gesendet. 

    • Paketgröße und Lebensdauer beachten

      Das Internet Protokoll hat eine weitere Aufgabe: die Daten passend zur Netzzugangsschicht auf die richtige Größe in Pakete zu teilen (fragmentieren). So ist die Größe im LAN (Ethernet) 1500 Byte und bei DSL 1492 Byte. Ein Datenpaket, welches aus dem LAN ins DSL übergehen muss, wird also vom IP geteilt. Jeder Teil erhält einen neuen IP-Header.

      Für jedes Datenpaket wird eine Lebensdauer festgelegt, die sog. Time To Life (TTL). Beim Passieren eines Routers wird die Lebensdauer stets um eins vermindert. Erhält ein Router ein Paket mit der Lebensdauer 0, so löscht er dieses. Somit sorgen Router dafür, dass nichtzustellbare Pakete (Zombie-Pakete) aus dem Netz genommen werden und dieses nicht verstopft.

    • 05 Übung Routing Lösung Datei
      Nicht verfügbar, außer: Sie sind in LK_11
    • Unsere aktueller Arbeitsstand zum "Nachbau" des Internets scheint schon sehr vollständig zu sein. Uns fehlen aber auf jeden Fall noch die Anwendungen für die Nutzung des Internets, wie beispielsweise der Web-Dienst WWW.

      Wenn ein Webclient mithilfe des Protokolls HTTP (hypertext transfer protocol) die Standardseite des Webservers abfragt, ergibt sich folgendes Sequenzdiagramm.

      Sind Bilder enthalten, so werden diese nach dem gleichen Schema übermittelt: Anfrage → Antwort.

      Doch damit ergeben sich neue Probleme.

      • Problem 1: Wie ist mit Daten umzugehen, die größer sind, als die erlaubte Paketgröße?
      • Problem 2: Was passiert, wenn IP-Datenpakete verloren gehen oder aufgrund abgelaufener Lebenszeit (time to live - TTL) gelöscht werden?
      • Problem 3: Was passiert, wenn die IP-Datenpakete in der falschen Reihenfolge oder mehrfach ankommen?
      • Problem 4: Wie erfolgt die Zuordnung des Pakets zum Dienst, wenn auf einem Server mehrere Dienste angeboten werden?

      Lösung: Wir benötigen zwischen der Anwendungs- und der Internetschicht eine weitere Ebene, mit

      • garantierter Datenübertragung
      • Einhaltung der korrekten Reihenfolge der Daten
      • Unterstützung beliebig großer Datenübertragungen
      • einer Zuordnung Paket - Dienst

      Diese Ebene wird in der Transportschicht realisiert. Die zwei Protokolle TCP und UDP stehen uns darin zur Verfügung.

    • Protokolle der Transportschicht: TCP und UDP

    • TCP - transmission control protocol

      TCP garantiert, dass Segmente vollständig ankommen, in der korrekten Reihenfolge zusammengebaut und an die Anwendung gereicht werden (zuverlässig). Verlorene oder unbestätigte TCP-Segmente sendet der Sender erneut. Eine TCP-Verbindung wird mithilfe des TCP-Handshakes geöffnet und geschlossen (verbindungsorientiert). Der TCP-Header gibt neben dem Port auch die Sequenznummer des aktuellen Segments (SEQ - Sequence) und die Sequenznummer des nächsten erwarteten Segments (ACK - Acknowledgement).

      Zu große Datenpakete werden durch TCP in kleiner Pakete zerlegt. Dabei bekommt jedes Paket eine Sequenznummer und die Bestätigung enthält als ACK die um die Byteanzahl vermehrte Sequenznummer. Dadurch wird die Reihenfolge der Teilpakete gekonnt bestimmt.

      Beispiel für das Abrufen der Standard-Website auf einem Server in Filius

      Protokollmitschnitt

      Sequenzdiagramm

    • UDP - user datagram protocol

      Die Datenübertragungen findet ohne vorherigen Verbindungsaufbau (verbindungslos) statt, es erfolgt keine Empfangsbestätigung, verloren gegangene Pakete werden nicht angefordert (unzuverlässig). UDP kann maximal 64 KByte groß sein; das Protokoll es kümmert sich nicht um die Zerlegung der Daten in die richtigen Paketgrößen, sondern überlässt dies dem Internet Protokoll. Es erfolgt keine Garantie, dass die Pakete in der richtigen Reihenfolge ankommen. Die Daten sind manipulierbar.

      Das Protokoll wird für die Namensauflösung oder als Transportprotokoll für Video/Audiostreaming verwendet.

    • Adressierung in der Transportschicht: Portnummern

      Das letzte Problem lässt sich erneut mithilfe einer Adressierung lösen. Jede Anwendung/jeder Dienst erhält eine Portnummer. Im neuen Header wird die Portnummer genannt und damit die Zustellung zum zugehörigen Dienst festgelegt. Bei TCP und UDP sind die Portnummern 16 Bits lange Binärzahlen. Es gibt folgende übliche Zuordnung:

      PortDienstBeschreibungsimulierbar in Filius
      80 HTTP Webserver unverschlüsselt *
      443 HTTPS Webserver verschlüsselt
      25 SMTP Mailversand *
      110 POP3 Zugriff auf den Mailserver *
      143 IMAP Zugriff auf den Mailserver
      993 IMAPS Zugriff auf den Mailserver verschlüsselt
      25 DNS Auflösung von Domainnamen in IP-Adressen *
      67/68   DHCP Automatischer Bezug von IP-Adressen *

  • Hervorgehoben
    • Sir Tim Berners-Lee entwickelte das Konzept und die Basisprogrammierung für das World Wide Web. Zunächst als internes Forschungsprojekt am CERN - der Europäischen Organisation für Kernforschung in der Nähe von Genf - zur Entwicklung eines Dokumentationssystems gestartet und von den Wissenschaftlern begeistert angenommen, gab das CERN am 30. April 1993 die Idee und den Quelltext der Software frei für Jedermann. Damit startete der Siegeszug des freien World Wide Web, leider aber auch seine Kommerzialisierung.

      Viel älter als das WWW und schon mehrfach totgesagt wurde ein anderer Dienst des Internets: die E-Mail. Die erste E-Mail wurde von Ray Tomlinson im Oktober 1971 gesendet. Deutschland erreichte am 3. August 1984 um 10:14 Uhr MEZ die erste Internet-E-Mail. 

      Darüber hinaus gibt es weitere Dienste, die wir täglich nutzen und über die wir gar nicht mehr nachdenken. DNS und DHCP sind zwei davon. Gerade DNS, also die Auflösung von Domainnamen in IP-Adressen, ist dabei eine sehr kritische Infrastuktur. Schauen wir uns an, warum das so ist.

      Foto: Paul Clarke, CC BY-SA 4.0: Sir Tim arriving at the Guildhall to receive the Honorary Freedom of the City of London,  https://commons.wikimedia.org/w/index.php?title=File:Sir_Tim_Berners-Lee_(cropped).jpg&oldid=738716390

    • In einigen der verwendeten Filius-Szenarien haben wir bereits Dienste, also Anwendungen des Internets verwendet. 

      1. Schichtenmodell
        Zeigen Sie mithilfe eines geeigneten Protokollmitschnitts im Filius-Szenario Anwendungen.fls, dass die Dienste/Protokolle DHCP und ECHO die Protokolle IP und TCP bzw. UDP nutzen. Leiten Sie eine Schlussfolgerung ab.
      2. DHCP
        Analysieren Sie die Vergabe der IP-Adressen für die Rechner PC1 und PC2. Prüfen Sie dazu, ob der im RFC 2131 befindliche Ablauf (Sequenzdiagramm) für die Zuweisung verwendet wurde.
        Begründen Sie mithilfe des Szenarios, dass PC1 und PC2 stets die gleichen IP-Adressen erhalten.
        Diskutieren Sie Vor- und Nachteile dieser "dynamischen Festvergabe" von IP-Adressen.
      3. HTTP 
        Erstellen Sie das Sequenzdiagramm für den Web-Dienst mittels HTTP. Rufen Sie dazu von Rechner PC1 die Webseiten http://www.familymail.de/, http://www.familymail.de/informationen.html, http://www.schule.de, http://www.spiele.de und http://www.mail.de auf.
        Geben Sie an, auf welchen Servern die Seiten gehostet sind.
        Beschreiben Sie den prinzipiellen Ablauf der Beantwortung einer Web-Anfrage im Sequenzdiagramm.
        Ermitteln Sie, warum der Server2 keine Web-Anfrage beantwortet.
        Geben Sie mithilfe des RFC 2616 typische Fehlermeldungen auf Client- und Serverseite an, die ihnen schon mal begegnet sind.  
      4. POP3/SMTP
        Der Nutzer Hans hat die Mail-Adressen hans@familymail.de (Kennwort 1234), welche er auf PC1 verwaltet und hans@mail.de (Kennwort hans), welche er auf PC2 verwaltet. Ina hat ein Mailkonto gleichen Namens bei mail.de (Kennwort ina) auf NB1 eingerichtet. Ermitteln Sie mithilfe der Mail-Clients, welche Mails auf PC1, PC2 und NB1 erstellt bzw. abgerufen wurden. Prüfen Sie, ob Mails noch nicht abgerufen wurden. 
        Erstellen Sie zwei Sequenzdiagramm für den E-Mail-Dienst. Das erste Diagramm soll das Senden der Mail von ina@mail.de an hans@mail.de und das zweite Diagramm das Abrufen dieses Mailverkehrs des Servers mail.de beschreiben. Geben Sie die jeweils notwendigen Zugangsvoraussetzungen an. Bewerten Sie diese Information. Ordnen Sie der Kommunikation das jeweilige Kommunikationsprotokoll zu.
        Ina möchte nun eine Mail an die andere Adresse von Hans senden. Beschreiben Sie die bislang nicht geklärte Probleme dieser Kommunikation. Simulieren Sie den Sachverhalt und beschreiben Sie die Problemlösung.
    • Die Namensauflösung ist uns an einigen Stellen bereits begegnet (siehe u. a. letztes Szenario im Bereich E-Mail). Namensauflösung bedeutet, dass Nutzer und Systeme statt der IP-Adressen besser verständliche Bezeichner verwenden, die oft hierarchisch strukturiert sind, beispielsweise für unseren Web-Auftritt "www.wossidlogymnasium.de" oder für dienstliche E-Mail-Adressen des Instituts für Qualitätsentwicklung MV "iq.bm.mv-regierung.de".

      1. DNS - Domain Name System: Protokoll
        Ermitteln Sie mithilfe eines geeigneten Protokollmitschnitts im Filius-Szenario DNS.fls, die Arbeitsweise des Domain Name Systems für die Anfrage der Website www.schule.lokal vom NB1 aus. Stellen Sie das zugehörige DNS-Protokoll in einem Sequenzdiagramm dar. Beantworten Sie die Frage: Woher weiß der NB1, dass er für die Namensauflösung den 192.168.0.1 befragen muss?
      2. DNS - Domain-Name-System: A-Tabelle
        Prüfen Sie mithilfe des Befehls nslookup auf der Befehlszeile von NB1, ob die Adressen www.schule.lokal, intranet.schule.lokal, nb2.schule.lokal und dns.schule.lokal aufgelöst werden können. Beheben Sie im Fehlerfall das Problem.
        Beschreiben Sie den Aufbau der DNS-A-Tabelle im DNS-Server 192.168.0.1. Beurteilen Sie das mehrfache Auftreten der IP-Adresse 192.168.0.10.
      3. DNS - Domain Name-System: Hierarchie
        Ermitteln Sie mithilfe des Befehls nslookup die IP-Adresse der Domain nas.dienst.com. Stellen Sie den Ablauf der DNS-Kommunikation in einem Sequenzdiagramm dar. Beschreiben Sie den Ablauf der Kommunikation. 
        Vergleichen Sie Ablauf mit der Anfrage nach der IP-Adresse der Domain www.schule.de. Nennen Sie Gemeinsamkeiten und Unterschiede.
        Leiten Sie Vorteile des Verhaltens ab.
        Beschreiben Sie den Unterschied zwischen den A-und NS-Tabellen eines TLD-Servers.
      4. DNS - Domain Name-System: Hierarchie und Provider
        Viele Provider übergeben an den Router ihrer Nutzer eine DNS-Adresse ihres Provider-DNS-Servers. Ein lokaler DNS-Server muss dann nur alle Anfragen an diesen senden.
        Ändern Sie das vorhandene Szenario dementsprechend ab. Bauen Sie dazu an den Vermittlungsrechner einen DNS-Server (172.16.0.1 - ns.provider.de).
        Korrigieren Sie die Eintragungen auf dem DNS-Server der Schule und in seiner Konfiguration.
        Erweitern Sie die Eintragungen am TLD_DE-DNS. Testen Sie das Szenario. Leiten Sie Schlussfolgerungen ab.
      5. Domain-Aufbau
        Recherchieren Sie den Aufbau von Domain-Angaben. Nennen Sie Ihnen bekannte TLD.
    • Kommunikation zweier Forscher (animierte Grafik)

      Aus dem Kommunikationsablauf lassen sich folgende Schlussfolgerungen ziehen:

      1. Jede beteiligte Person/jedes beteiligte Gerät realisiert eine Kommunikationsschicht.
      2. Jede Kommunikationsschicht kommuniziert mit der jeweils gleichen Schicht auf der anderen Seite.
      3. Die Übergabe von Informationen geschieht über genau definierte Schnittstellen.
      4. Jede Schicht stellt ihren Dienst der jeweils höheren Schicht zur Verfügung und nutzt den Dienst der jeweils niedrigeren Schicht.
      5. Jede Schicht wickelt ihre Aufgabe intern nach bestimmten Regeln, einem sogenannten Protokoll ab.

      DoD-Schichtenmodell

      Die umfangreichen Anforderungen an Computernetze lässt sich mithilfe eines Schichtenmodells strukturieren und besser verstehen. Daher haben wir im bisherigen Kurs uns ebenfalls durch die Schichten "gewühlt".

      Wie in der Kommunikation zwischen den Forschern erlebt (wir habe es ja nachgespielt), werde die Schichten der Reihe nach durchschritten. In jeder Schicht wiederum gibt es Regeln (Protokolle) zur Verarbeitung und Kapselung der Daten. Für den Datenaustausch stehen Dienste über Schnittstellen zur Verfügung. Dadurch erreicht man eine hohe Flexibilität, denn die einzelne Schichten können durch eigene Protokolle angepasst, geändert oder ausgetauscht werden, etwa für die Anpassung an ein Übertragungsmedium. Entscheidend ist, dass die Schnittstellen nicht geändert werden.

      Das Department of Defense - Verteidigungsministerium der USA entwickelte ab 1970 das DoD-Schichtenmodell, gern auch als TCP/IP-Schichtenmodell bezeichnet. Es bildet die Basis des Internets. Jede Schicht fügt den Daten Informationen als Kopf, teilweise auch als Anhang zu. 

      Anwendungsschicht - Application Layer
      • Anwendungsprotokolle und darauf aufbauende Dienste (beispielsweise zur Datenübertragung, Synchronisierung und Fernsteuerung von Rechnern und Namensauflösung)
      • Protokolle (Auszug): Hypertext Transfer Protocol - HTTP, File Tranfer Protocol - FTP, Simple Mail Transfer Protocol - SMTP
      Transportschicht - Transport Layer
      • verbindungsorientierter zuverlässiger Datentransport oder verbinungslose ungesicherte Datenübertragung
      • Protokolle: TCP - Transport Control Protocol, User Datagram Protocol - UDP

      Internetschicht - Internet Layer
      • Erzeugung und Versendung der Datenpakete mit Hilfe der IP-Adresse, Wegsteuerung eines Paketes, Festlegung der Lebensdauer (Time-To-Live - TTL).
      • Protokolle: Internet Protocol - IP (Datenübertragung), Internet Control Message Protocol - ICMP (Kontrolle und Fehlersuche)
      Netzzugangsschicht - Network Access Layer
      • Datenübertragung von direkt miteinander verbundenen Rechnern via MAC-Adresse unter Berücksichtigung von Übertragungsmedium, Zugriffsprotokoll (Ethernet, Token Ring, ...), usw.
      • Protokolle (Auszug): Adress Resolution Protocol - ARP (Auflösung der IP in MAC-Adresse und umgekehrt), Ethernet, Token Ring

    • Beispiele

  • ... gibt es im nächsten Kurs.