Navigation: 💻-💻 Peer-to-Peer-Netzwerk —> 💻-💻-💻 Mehrere Rechner verbinden —> 💻-💻—💻-💻 Mehrere Netzwerke verbinden —> 💻-🌐-💻 Webserver betreiben Loading ⌛Loading ⌛
💻-💻-💻 Mehrere Rechner verbinden
🎯 Worum geht es?1)
- Du baust ein einfaches Netzwerk mit mehreren Rechnern auf.
- Du lernst, wie garantiert werden kann, dass alle zu versendenden Daten (auch über das Internet) vollständig beim Empfänger ankommen.
- Du lernst, wie vermieden wird, dass sich die Signale gegenseitig stören, wenn zwei Rechner im selben Empfangsbereich gleichzeitig senden.
Inhaltsverzeichnis
1. Netzwerk einrichten und testen
- Switch
- Ein Switch ist ein Gerät, das es erlaubt, mehrere Rechner miteinander zu verbinden. Der Switch identifiziert dabei alle verbundenen Rechner über deren MAC-Adresse. Jeder WLAN-Access-Point ist auch ein Switch, mit welchem sich mehrere Rechner gleichzeitig verbinden können.
✍ Auftrag – Filius 4
Loading ⌛
👉 Verbinde mehrere Rechner mithilfe eines Switches zu einem Netzwerk.
- Öffne in Filius das Netzwerk, welches du unter dem Namen Filius02 abgespeichert hattest.
- Erweitere das Netzwerk gemäss untenstehender Abbildung um einen Switch und einen Rechner, dem du die IP 192.168.0.12 gibst und „Server 0.12“ nennst.
- Speichere das Netzwerk unter Filius04 ab, dieses wird für den Auftrag Filius 5 gebraucht.
- Markiere diesen Auftrag als „Erledigt“.
- Serverdienste
- Ein Server ist ein Rechner, der einen Dienst zur Verfügung stellt (z. B. eine Webseite). Ein sehr einfacher Serverdienst ist z. B. der „Echo-Server“. Dieser sendet alle an ihn gerichteten Nachrichten wieder zurück an den Absender (wie ein Echo).
✍ Auftrag – Filius 5
Loading ⌛
👉 Teste mit einem Echo-Server, ob das Netzwerk funktioniert.
- Wechsle in den ▶️ Aktionsmodus.
- Klicke auf den
Server 0.12und installiere denEcho-Server. - Starte den
Echo-Servermit dem Port55555. - Installiere auf dem
Rechner 0.10denEinfacher Client. - Starte den
Einfacher Client, gib die Server-IP-Adresse ein, klicke aufVerbindenund sende die NachrichtHallo. - Trenne danach auf dem
Einfacher Clientdie Verbindung. - Wenn alles geklappt hat, siehst du im
Einfacher Clientdie gesendete Nachricht<<Hallo(die<<zeigen das Senden an). Darunter steht die empfangene Nachricht>>Hallo(die>>zeigen das Empfangen an). - Speichere das Netzwerk unter Filius05 ab, dieses wird für den Auftrag Filius 6 gebraucht.
- Markiere diesen Auftrag als „Erledigt“.
2. Exkurs Aufbau einer stabilen Netzwerkverbindung
🤓 Um zu verstehen, wie der „Einfache Client“ stabil mit dem „Echo-Server“ kommunizieren kann, musst du wissen, wie eine stabile Verbindung garantiert werden kann. Daher zuerst etwas Theorie.
- Socket
- Der „Einfache Client“ und der „Echo-Server“ sind Anwendungen. Damit zwei Anwendungen miteinander kommunizieren können, müssen diese voneinander die IP-Adresse und den Port wissen. Die Kombination IP und Port wird als Socket bezeichnet und häufig in der Form IP-Adresse:Port geschrieben, z. B.
192.168.0.12:55555.
- TCP-Protokoll
- Das TCP-Protokoll ist für den Aufbau und das Garantieren einer stabilen Verbindung zwischen zwei Rechnern zuständig. Dazu wird jede empfangene Nachricht (jeder empfangene Nachrichtenteil) mit einem TCP-Protokoll bestätigt. Bleibt solch eine Bestätigung aus, so wird die Nachricht erneut gesendet.
- 3-Way-Handshake
- Der 3-Way-Handshake ist ein Vorgehen in drei Schritten, um eine stabile Verbindung zwischen zwei Rechnern aufzubauen und zu testen. Dazu werden TCP-Protokolle versendet. Salopp beschrieben läuft das wie folgt ab:
1. Rechner A an Rechner B: "Hey Rechner B, bist du online?" 2. Rechner B an Rechner A: "Yo Bro! Ist meine Antwort bei dir angekommen?" 3. Rechner A an Rechner B: "So was von!"
3. Netzwerk verstehen
⚠️ Dieses Kapitel baut auf den vorangehenden „Exkurs Aufbau einer stabilen Netzwerkverbindung“ auf.
✍ Auftrag – Filius 6
Loading ⌛
👉 Das Switch-Netzwerk verstehen - Teil 1.
- ⚠️ Öffne erneut in Filius das Netzwerk, welches du unter dem Namen Filius05 abgespeichert hattest, aktiviere den Echo-Server, verbinde den Einfachen Client und schicke erneut die Nachricht „Hallo“.
- Öffne den
DatenaustauschdesRechner 0.10(im ▶️ Aktionsmodus Rechtsklick auf denRechner 0.10). Wenn der Datenaustausch leer ist, so sende erneut vom Client eine Nachricht an den Echo-Server und trenne im Client die Verbindung. - Wenn alles geklappt hat, sieht das aus wie in der Abbildung im nächsten Auftrag.
- Markiere diesen Auftrag als „Erledigt“.
✍ Auftrag – Filius 7
👉 Das Switch-Netzwerk verstehen - Teil 2.
⚠️ Achtung, da der Echo-Client bei jedem Verbindungsaufbau einen anderen zufälligen Port wählt, beziehen sich die Fragen auf den nachfolgenden Screenshot.
- Die Zeilen 3-5 zeigen den 3-Way-Handshake. Der Client baut die Verbindung mit dem Server auf. Wie lauten die beiden Sockets in der Notation IP-Adresse:Port? Loading ⌛
- Wie ist der 3-Way Handshake in den Zeilen 3 - 5 aufgebaut? Nachricht 1 enthält eine Sequenznummer
SEQ, in Nachricht 2 wird mit einerACKNummer geantwortet und eine neueSEQgeschickt. In Nachricht 3 wird wiederum mit einerACK-Nummer geantwortet.
Um wie viel grösser ist dieACK-Nummer in Nachricht 2 als dieSEQ-Nummer in der vorausgehenden Nachricht 1?Loading ⌛ - In der Zeile 6 schickt der Client dem Server die Nachricht „Hallo“. In Zeile 7 bestätigt der Server den Erhalt der Nachricht per TCP.
Um wie viel ist dieACK-Nummer der Empfangsbestätigungen in Zeile 7 grösser als die vorangehendeSEQ-Nummer (Zeile 5)? Und um wie viel ist dieACK-Nummer der Empfangsbestätigungen in Zeile 9 grösser als die vorangehendeSEQ-Nummer (Zeile 7)?
💡 Tipp: Die NachrichtHallobesteht aus fünf Buchstaben. Loading ⌛ - Beim 3-Way-Handshake in den Zeilen 3 – 5 wird mit dem Schlüsselwort
SYNangezeigt, dass eine Verbindung aufgebaut wird. In den Zeilen 10 - 13 wird diese Verbindung mittels vier TCP-Nachrichten wieder getrennt.
Welches Schlüsselwort wird in den Zeilen 10 – 13 verwendet, um analog zuSYNdas Beenden der Verbindung anzuzeigen?Loading ⌛
4. Exkurs Signalübertragung und Vermeidung von Signalkollisionen
🤓 Wie wird eigentlich ein Signal über ein LAN-Kabel oder über WLAN übertragen? Und was passiert, wenn zwei oder mehrere Rechner gleichzeitig senden?
- Signalübertragung
- Bei einer Verbindung über LAN-Kabel oder per WLAN wird beim Empfänger in regelmässigen Zeitabständen gemessen, ob ein digitales Signal eintrifft.
- LAN-Kabel: Wird zum Messzeitpunkt eine Spannung von + 2–3 V erkannt, wird dies als digitale 1 interpretiert, eine Spannung von - 2-3 V wird als digitale 0 erkannt.
- WLAN: Beim WLAN-Funksignal werden durch verschiedene Signalstärken (Amplituden) und verschiedene Signalverschiebungen (Phasenverschiebungen) in jeder Zeiteinheit gleichzeitig mehrere Bits übertragen.
- Vermeidung von Signalkollisionen
- Senden mehrere Netzwerkkarten gleichzeitig, kann es bei einer LAN-Verbindung im Kabel und bei einer WLAN-Verbindung in der Luft zu einer Überlagerung (Kollision) der Signale kommen. Um das zu vermeiden, horcht ein Rechner in jedem Fall vor dem Senden erst einmal, ob bereits ein Signal übertragen wird. Falls nicht, wird …
- LAN-Kabel: … das Signal gesendet und während dem Senden mitgehört, um eine mögliche Kollision zu entdecken. Ist eine solche aufgetreten, so wartet der Sender eine zufällige Zeitdauer und sendet es erneut.
- WLAN: … zuerst ein Ready to Send (RTS) Signal an den Empfänger geschickt und dieser antwortet mit einem Clear to Send (CTS) Signal, welches allen anderen Rechnern im Empfangsbereich signalisiert, dass diese eine Zeit lang nicht senden dürfen.
5. Auf zu noch grösseren Netzwerken...
Fahre weiter mit: 💻-💻—💻-💻 Mehrere Netzwerke verbinden.
Eigene Notizen
Loading ⌛