Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| p:netzwerke:peer2peer [2024/01/08 08:55] – [3. Exkurs Netzwerkprotokolle und -schichten] Ralf Kretzschmar | p:netzwerke:peer2peer [2026/06/21 12:06] (aktuell) – Tscherter Vincent | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | {{gem/ | ||
| + | |||
| + | ====== 💻-💻 Peer-to-Peer-Netzwerk ====== | ||
| + | |||
| + | {{ : | ||
| + | **🎯 Worum geht es? | ||
| + | * Du baust das einfachste Netzwerk -- zwei Rechner direkt verbinden -- auf. | ||
| + | * Du lernst, wie Daten über ein Netzwerk (z. B. das Internet) verschickt werden. | ||
| + | * Du lernst, warum sich zwei so unterschiedliche Systeme wie ein iOS-Handy und ein Windows-PC verstehen können. | ||
| + | |||
| + | ~~INTOC~~ | ||
| + | |||
| + | \\ | ||
| + | ===== - Netzwerk-Simulator " | ||
| + | {{ : | ||
| + | |||
| + | ⚠️ Für die Bearbeitung der Kapitel muss Filius vorgängig installiert werden: ++++Installation Filus auf dem eigenen Laptop| | ||
| + | * **Windows und Linux**\\ \\ | ||
| + | - Download und Installation gemäss: [[https:// | ||
| + | - ⚠️ Windows: Falls sich Filius nicht öffnen lässt: | ||
| + | - Im File-Explorer öffne den Ordner '' | ||
| + | - Klicke auf die Datei {{: | ||
| + | - Beim nächsten Start kannst du in der Suche einfach " | ||
| + | - ⚠️ Windows: Es kann sein, dass Filius auf einem hochauflösenden Display winzig angezeigt wird. Lösung: Rechtsklick auf das Filius-Symbol, | ||
| + | * **macOS**\\ \\ | ||
| + | - Prüfe, ob Java Version 17 oder höher auf deinem Mac installiert ist, wie folgt: | ||
| + | - Über die Lupe 🔍 oben rechts, öffne die " | ||
| + | - In die terminal.app tippe Folgendes ein und quittiere das danach mit der '' | ||
| + | - Wenn danach sofort '' | ||
| + | - Nur falls notwendig, installiere die neueste Java-Version, | ||
| + | - Nur falls eine ältere Java-Version als 17 angezeigt wurde: Entferne diese, wie im Punkt 5 dieser Anleitung beschrieben. | ||
| + | - Installiere die neuste Version von JDK wie folgt: | ||
| + | - Öffne [[https:// | ||
| + | - Es gibt eine Zeile mit den fettgedruckten Wörtern: "Linux macOS Windows" | ||
| + | - Lade den '' | ||
| + | - Prüfe, ob alles geklappt hat (das ist im vorangehenden Punkt 1 beschrieben). Wenn eine Fehlermeldung in der terminal.app angezeigt wird, dann einfach den Computer neu starten, dann sollte danach die richtige Versionsnummer angezeigt werden. | ||
| + | - Installiere die neueste Filius-Version wie folgt: | ||
| + | - Lade die neuste '' | ||
| + | - Verschiebe das Zip-File an einen Ort, wo du das File wiederfindest. | ||
| + | - Doppelklicke die Datei. Es wird ein Ordner mit dem gleichen Namen erzeugt. Öffne diesen Ordner. Suche darin das File '' | ||
| + | - Danach **RECHTSKLICK** auf das File '' | ||
| + | - Klicke auf „Abbrechen“ / " | ||
| + | - Gehe sofort in die '' | ||
| + | - Scrolle nach unten zum Bereich „Sicherheit“. Dort steht ein Hinweis: „Das Öffnen von ‚filius.jar‘ wurde blockiert, da die App nicht von einem verifizierten Entwickler stammt.“ | ||
| + | - Klicke daneben auf den Button '' | ||
| + | - Jetzt sollte sich '' | ||
| + | - Wenn Filius später einmal erneut gestartet werden soll, einfach im Finder wieder zu '' | ||
| + | - Falls du Filius später einmal entfernen möchtest: Einfach den Ordner, in welchem '' | ||
| + | - Falls du Java später einmal entfernen möchtest, hier eine Anleitung dazu (diese entfernt gleich alle Java-Versionen, | ||
| + | - Öffne wie in Punkt 1 beschrieben die " | ||
| + | - Wenn alles geklappt hat, führt im Terminal die Eingabe\\ '' | ||
| + | ++++ | ||
| + | |||
| + | |||
| + | \\ | ||
| + | ===== - Peer-to-Peer Netzwerk einrichten und testen ===== | ||
| + | <WRAP center round box > | ||
| + | == ✍ Auftrag – Filius 1 == | ||
| + | {{ gem/ | ||
| + | 👉 Verbinde zwei Laptops per LAN-Kabel zu einem " | ||
| + | 💡 Aufgaben mit dem rechts gezeigten „🔨 Hammersymbol“ sind im Entwurfsmodus zu bearbeiten, dazu muss im Filius-Fenster auf das Hammersymbol geklickt werden. | ||
| + | - Starte Filius, füge zwei Laptops ein und verbinde diese per Kabel. | ||
| + | - Klicke auf den Laptop links, gebe diesem die '' | ||
| + | - Gebe dem Laptop rechts die '' | ||
| + | - Speichere das Netzwerk unter dem Namen '' | ||
| + | - Markiere diesen Auftrag als " | ||
| + | {{ : | ||
| + | </ | ||
| + | |||
| + | <WRAP center round box > | ||
| + | == ✍ Auftrag – Filius 2 == | ||
| + | {{ : | ||
| + | 👉 Teste, ob das " | ||
| + | - Wechsle in den ▶️ Aktionsmodus. | ||
| + | - Klicke auf den '' | ||
| + | - Starte die '' | ||
| + | - Wenn alles geklappt hat, sendet '' | ||
| + | - Öffne per Rechtsklick auf einen der beiden Laptops den '' | ||
| + | - Speichere das Netzwerk unter Filius02 ab, dieses wird für die Aufträge Filius 3 und Filius 4 gebraucht. | ||
| + | {{gem/ | ||
| + | </ | ||
| + | \\ | ||
| + | ===== - Exkurs Netzwerkprotokolle und -schichten ===== | ||
| + | |||
| + | 🤓 Um den '' | ||
| + | |||
| + | <figure right> | ||
| + | ; Server | ||
| + | : Ein Server ist ein Rechner, der einen Dienst (Webseite, E-Mail etc.) anderen Rechnern zur Verfügung stellt. | ||
| + | |||
| + | ; Client | ||
| + | : Ein Client ist ein Rechner, der einen Serverdienst nutzt. | ||
| + | |||
| + | ; Protokoll | ||
| + | : Ein Protokoll ist eine Vereinbarung, | ||
| + | |||
| + | ; Schichtmodell | ||
| + | : Der Aufbau eines Netzwerks (z.B. des Internets) wird durch ein Schichtmodell beschrieben. Jede Schicht beschreibt eine Aufgabe und baut auf den unteren Schichten auf (siehe nachfolgende Tabelle). | ||
| + | |||
| + | ^ Schicht ^ Beschreibung ^ Protokoll-Beispiele ^ " | ||
| + | | Anwendung | Verschickt Daten und Dateien von Anwendungsprogrammen in Form von Anwendungsprotokollen. Jede Anwendung wird durch ihre // | ||
| + | | Transport | Stellt Verbindung zwischen Client und Server her. Spaltet beim Senden grosse Anwendungsprotokolle in kleinere Einheiten und setzt diese beim Empfangen mithilfe der //Segment Number// wieder zusammen | tcp, udp | Segment Number | | ||
| + | | Vermittlung | Sucht einen Weg durch das Netzwerk / Internet. Die // | ||
| + | | Netzzugang | Überträgt die Daten von einer Netzwerkkarte zur nächsten (sodass irgendwann nach mehreren Schritten das Ziel erreicht wird). Jede Netzwerkkarte besitzt eine eigene // | ||
| + | |||
| + | <figure right> | ||
| + | 💡 Ein Beispiel: Ein Browser (Client) fragt eine Webseite (Server) an. Dabei wird die Webseiten-Anfrage über das Netzwerk zum Server geschickt -- wie bei der Paketpost. Für das Senden wird im Client das Schichtenmodell von **oben nach unten** durchlaufen: | ||
| + | - Der Browser übergibt die Webseiten-Anfrage der Anwendungsschicht. Dort werden die Port-Nummern des Client-Browsers und des Webserverprogramms der Anfrage hinzugefügt (diese Zusatzinformation wird als // | ||
| + | - In der Transportschicht wird die Anfrage je nach Grösse in mehrere Teile aufgespalten. Jeder Anfrageteil wird durch eine Segment Number ergänzt (// | ||
| + | - In der Vermittlungssicht werden jedem Anfrageteil die Client- und Server-IP-Adressen hinzugefügt - quasi die Absender- und Empfängeradressen (// | ||
| + | - In der Netzwerkschicht wird jeder Anfrageteil mit der MAC-Adresse der nächsten Netzwerkkarte versehen (// | ||
| + | Auf dem Server werden die Schichten dann umgekehrt von **unten nach oben** durchlaufen. In jeder Schicht wird der zugehörige Header wieder entfernt und die Anfrage am Ende der Server-Software übergeben. | ||
| + | |||
| + | <WRAP center round box > | ||
| + | == ✍ Auftrag – Schichtmodell == | ||
| + | - Kopiere die folgenden Stichworte zu den Beschreibungen / Eigenschaften in der Tabelle:\\ '' | ||
| + | - Der Befehl '' | ||
| + | </ | ||
| + | |||
| + | <WRAP center round box > | ||
| + | == ✍ Auftrag – MAC-Adresse == | ||
| + | {{ gem/ | ||
| + | Die MAC-Adresse ist in der Hardware fest abgespeichert (im Gegensatz dazu kann die IP-Adresse frei gewählt oder zugeteilt werden). Über die MAC-Adresse ist es möglich, Geräte in einem Netzwerk zu identifizieren und z. B. für das Netzwerk zu sperren. | ||
| + | - Finde wie folgt die MAC-Adresse deines Laptops heraus: | ||
| + | * Windows: | ||
| + | - Unten rechts Rechtsklick auf das Netzwerksymbol und '' | ||
| + | - Im Netzwerk und Internet Fenster oben auf '' | ||
| + | * macOS: | ||
| + | - Klicke oben rechts auf das WLAN-Symbol und wähle '' | ||
| + | - Klicke im WLAN-Fenster auf '' | ||
| + | * Linux: | ||
| + | - Öffne ein Terminal und gib dort '' | ||
| + | - Die MAC-Adresse wird nach dem Stichwort " | ||
| + | - Öffne das [[https:// | ||
| + | - Markiere diese Aufgabe als " | ||
| + | </ | ||
| + | \\ | ||
| + | ===== - Peer-to-Peer-Netzwerk verstehen ===== | ||
| + | |||
| + | <WRAP center round box > | ||
| + | == ✍ Auftrag – Filius 3 == | ||
| + | {{ gem/ | ||
| + | 👉 Untersuche, wie genau die beiden verbundenen Rechner miteinander Kontakt aufnehmen und miteinander kommunizieren. | ||
| + | - ⚠️ Öffne in Filius das Netzwerk erneut, welches du unter dem Namen Filius02 abgespeichert hattest (so löschst du alle Daten und kannst mit einem frischen Netzwerk beginnen, was für diesen Auftrag notwendig ist). | ||
| + | - Klicke im ▶️ Aktionsmodus auf den '' | ||
| + | - Öffne per Rechtsklick auf einen der beiden Laptops den '' | ||
| + | - Gebe danach in der Filius-Befehlszeile den Befehl '' | ||
| + | - Gebe danach in der Filius-Befehlszeile den Befehl '' | ||
| + | - Öffne den Datenaustausch. Jede Zeile stellt eine Nachricht (ein Protokoll) dar, welche gesendet oder empfangen wurde. Klicke auf eine Nachricht, um die Details zu sehen. Hier siehst du z. B., von welcher Schicht welcher Header der Nachricht hinzugefügt wurde und was darin steht. | ||
| + | - Diskutiere mit einer Mitschülerin oder einem Mitschüler die folgenden Fragen. Haltet eure Antworten im Textfeld fest. | ||
| + | - Was bedeutet im Datenaustausch im ersten ARP-Protokoll der Eintrag '' | ||
| + | - Was genau passiert bei den beiden ARP-Einträgen? | ||
| + | - Was passiert bei den ersten beiden ICMP-Einträgen? | ||
| + | - Wenn erneut ein '' | ||
| + | - Rufe anschliessend die Lehrperson. Wenn die Lehrperson zufrieden ist mit den Antworten, markierst du die Aufgabe als " | ||
| + | {{gem/ | ||
| + | </ | ||
| + | \\ | ||
| + | |||
| + | ===== - Auf zu grösseren Netzwerken... ====== | ||
| + | |||
| + | Fahre weiter mit: [[p: | ||
| + | |||
| + | \\ | ||
| + | === Eigene Notizen === | ||
| + | {{gem/ | ||