Jetzt registrieren

Anmeldung

Passwort verloren

Passwort vergessen? Geben Sie bitte Ihre Email-Adresse ein. Sie erhalten einen Link und ein neues Passwort per E-Mail erstellen.

Eintrag

Sie müssen sich anmelden Beitrag hinzufügen .

In Frage

Sie müssen sich anmelden, um eine Frage zu stellen.

Anmeldung

Jetzt registrieren

Willkommen bei Scholarsark.com! Ihre Anmeldung wird gewährt Ihnen Zugriff auf mehr Funktionen dieser Plattform. Sie können Fragen stellen, beitragspflichtig oder geben Antworten, Ansicht Profile anderer Nutzer und vieles mehr. Jetzt registrieren!

Teil A – Vernetzungsprojekte – Implementieren Sie den TCP/IP-Stack in C

Teil A – Vernetzungsprojekte – Implementieren Sie den TCP/IP-Stack in C

Preis: $19.99

Studentenniveau: Fortgeschrittene bis hin zu Berufstätigen, Anfänger im Programmieren entschuldigen bitte diesen Kurs.

Sprechen Sie mit Ihrem Prof: Verwenden Sie dieses Projekt als Ihr Under-Grad-Projekt im letzten Jahr

Hinweis: Wenn Sie diesen Kurs kaufen, Bitte kaufen Sie meinen anderen Kurs nicht weiter – “Integrieren Sie die CLI-Schnittstelle in Ihr C/C+++-Projekt”. Es sind alle Videos, die bereits in diesem Kurs enthalten sind.

Das ist ein 100% Codierungsbasierter Kurs in C, in dem wir einen TCP/IP-Stack von Grund auf mit Data Link Layer entwickeln, Network Layer und Application Layer in Betrieb. Dies ist ein großes Projekt, in das es aufgeteilt ist 6 Mini-Projekte. Die Entwicklung des Schwesterkurses (Teil-B) ist in Arbeit.

Dieser Kurs bereitet Sie auf die Rolle eines Kernnetzwerkentwicklers in der Branche vor. Wenn Sie sich gründlich mit den Grundlagen des L2-Routings einschließlich ARP auskennen, L3-Routing, dann verfügen Sie wahrscheinlich bereits über die erforderlichen Kenntnisse für diesen projektbasierten Kurs. Wenn nicht, Sie sollten sich für meinen Kurs anmelden – “Vernetzungskonzepte und Programmierung von Grund auf neu” und machen Sie zumindest die Abschnittsnummer : 3 zu 5. Für den Abschnitt zur VLAN-Implementierung 6,7, und 8 ist erforderlich. Wir werden diese Theorie umsetzen jetzt in C. Wenn Sie eine andere Lieblingssprache haben, Fühlen Sie sich frei, diesen Kurs darin zu machen, Ich habe nichts dagegen, aber ich werde die Logik erklären und die Demos nur in C zeigen.

In diesem Kurs, Wir werden eine TCP/IP-Stack-Demo implementieren 6 Vernetzungsprojekte. Alle unten aufgeführten Projekte sollten in der gleichen Reihenfolge wie aufgeführt durchgeführt werden.

Projekt 1 : Erstellen Sie eine MultiNode-Topologie-Emulation von Routern und Switches

Projekt 2 : DataLink-Layer implementieren (L2-Routing), einschließlich ARP

Projekt 3 : Implementieren Sie L2-Switching (Mac-basiertes Lernen und Weiterleiten)

Projekt 4 : Implementieren Sie VLAN-basiertes Mac-Lernen und Weiterleiten

Projekt 5 : Netzwerkschicht implementieren (L3-Routing)

Projekt 6 : Fallstudie : Implementieren Sie IP-Tunneling (Optional)

In diesen Mini-Projekten, Wir werden die Paketreise nach oben und nach unten durch Schichten des TCP/IP-Stacks implementieren (= OSI-Modell). Wir werden den TCP/IP-Stack implementieren !! In diesem Kurs gibt es minimale Socket-Programmierung. Nicht jedes Netzwerkprojekt muss auf Socket-Programmierung basieren.

Nach dem Weg, Wir werden die Lösung für neue Herausforderungen diskutieren und implementieren, denen wir bei der Lösung des Problems begegnen. Basierend darauf, wie dieser Kurs von den Studenten angenommen wird, Basierend auf dem Feedback der Schüler würde ich diesem Kurs weitere Projekte hinzufügen.

Nach diesen Projekten, du wirst es können :

1. Sagen Sie, warum Sie Data Link Layer und Network Layer benötigen

2. So entwerfen Sie ein neues Anwendungsprotokoll auf einem TCP/IP-Stack (genau wie ICMP, HTTP, usw. arbeiten alle auf dem TCP/IP Stack)

3. Machen Sie sich mit Netzwerkprogrammierung auf Branchenebene die Hände schmutzig.

4. Kochen lernen, Analysieren und Lesen der Paketpuffer

5. Verstehen Sie die End-to-End-Architektur und das Design von Netzwerkanwendungen und TCP/IP-Stacks

6. Conquer Interviews für die Rolle des Network Developer Engineer

7. Dekorieren Sie Ihren GitHub, und fügen Sie Ihrem HAT ein starkes Projekt hinzu, Erwartete LOCs dieses Kurses soll 10k überschreiten !

Dieses Projekt wird die Lücke zwischen theoretischem Wissen und der Umsetzungsversion schließen. Wie klingt es, dass Sie selbst Code geschrieben haben, um ARP zu lösen, Paketweiterleitung, usw. Schmücken Sie Ihren Lebenslauf und GitHub mit diesem Projekt.

Dieser Kurs ist unterteilt in Zwei Teile :

Teil A – In diesem Teil des Kurses, Wir werden die Netzwerktopologie-Infrastruktur aufbauen, die aus Routern besteht, Übungstest Netzwerkgrundlagen, und Links, die sie verbinden. Knoten können auch Pakete mit ihren Nachbarn austauschen. Grundsätzlich gilt, In diesem Teil des Kurses wollen wir eine vollständig programmierbare und konfigurierbare Netzwerktopologie simulieren. Das ist Projekt 1.

Teil B – Die in Teil A des Kurses erstellte konfigurierbare Netzwerktopologie soll verwendet werden Umsetzung der verbleibenden fünf Projekte [2-6] wie oben aufgeführt.

Wir werden die gesamte erforderliche Infrastruktur einrichten, um die Netzwerktopologie nachzuahmen – und das selbst ist insgesamt ein Mini-Projekt. Wir werden Knoten erstellen, Verbindungen, die Knoten verbinden, Konfigurieren von Netzwerkparametern auf Knoten, Senden und Empfangen von Verkehrsströmen – Alles in einem Projekt. Das ist Megaprojekt, Das erwartete LOC kann Zehntausende erreichen, wenn wir weiterhin TCP/IP-Stack-Features hinzufügen. Der Himmel ist die Grenze.

Das Beste an diesem Projekt ist – Sie werden viele andere Dinge auf der Reise lernen, einschließlich der Einrichtung von Timern, Aufbau der Netzwerktopologie, Glthreads – Ein Glue-Weg von verknüpften Listen, Erstellen von Projekten mit Makefile und ich spreche nicht einmal über das Erlernen von Software-Design-Fähigkeiten. Zusätzliches Material wurde in hinzugefügt Anhang Abschnitt des Kurses. Wir werden das Projekt in separaten Ordnern modularisieren, Jeder Ordner enthält Code, der eine bestimmte Funktionalität der OSI-Schicht implementiert, und ja, Wir werden alles von Grund auf neu machen.

Warnung :

1. Absolute Anfänger, kämpfen mit grundlegenden Datenstrukturen und Zeigern, Bitte entschuldigen Sie diesen Kurs. Sie sind auf dieses Projekt nicht vorbereitet. Pls, Investieren Sie Ihre Zeit zunächst in das Erlernen der Grundlagen.

2. Maschine gebraucht: Ubuntu 19.04, GCC-Compiler. Daher werden meine Codes möglicherweise nicht auf Ihrem Computer kompiliert, wenn Sie einen anderen Compiler oder Computer verwenden.

Threadgabelung :

********

TEIL A

********

[ Python für Anfänger mit Beispielprojekten 1]

Sektion 1. KYC (Kennen Sie Ihren Kurs)

Sektion 2. Entwicklung einer generischen Graphtopologie

  • Graph Datenstrukturen

  • Graphbezogene APIs

  • Erstellen unseres ersten statischen Diagramms

Sektion 3. Konstruktion einer Netzwerkgraphtopologie

  • Hinzufügen von Netzwerktopologiedetails zum Diagramm

  • APIs zum Konfigurieren der Netzwerktopologie

  • Machen Sie sich ohne die erste Hello World-Netzwerktopologie bereit

Sektion 4. Befehlszeilenintegration

  • Integrieren Sie die CLI-Schnittstelle in das Projekt

  • Schreiben Sie benutzerdefinierte Befehle, um Details zur Netzwerktopologie anzuzeigen

Sektion 5. Kommunikationseinrichtung

  • Senden eines Pakets an den Nbr-Knoten auf der ausgehenden Schnittstelle

  • Abhören und Überwachen mehrerer Sockets

  • Empfangen eines Pakets auf einer Schnittstelle

********

TEIL B

********

Sektion 6. Tagesordnung von Teil B

[ Python für Anfänger mit Beispielprojekten 2]

Sektion 7. Erste Schritte mit der Entwicklung von TCP/IP-Stacks

  • Schnittstellenmodi

  • Ethernet-Header-Format

  • Zuweisung bei Manipulation des Ethernet-Headers

  • Paketverarbeitungskriterien

  • Paketpufferverwaltung

Sektion 8. Layer implementieren 2 (Datenübertragungsebene) – ARP

  • Beginnen Sie mit der ARP-Implementierung

  • ARP-Nachrichtenformat und Beispiel

  • Erstellen von ARP-Tabellen

  • CRUD-APIs auf ARP-Tabellen

  • CLIs, um mit ARP zu arbeiten

  • ARP-Zyklus und ARP-APIs

  • Vorbereiten und Senden von ARP-Broadcast-Anforderungsnachrichten

  • ARP-Broadcast-Anforderungsnachricht wird verarbeitet

  • ARP-Antwortnachricht wird gesendet

  • API zum Starten der Ingress Journey des Frames

  • Verarbeiten der ARP-Antwortnachricht und Erstellen eines ARP-Eintrags in der ARP-Tabelle

  • ARP in Aktion

[ Python für Anfänger mit Beispielprojekten 3]

Sektion 9. Layer implementieren 2 (Datenübertragungsebene) – L2-Umschaltung

  • APIs zum Konfigurieren von Knoten als L2-Switches

  • Einrichten der neuen Topologie mit L2-Switches und Host-Maschinen

  • Implementieren von MAC-Lern- und Weiterleitungsalgorithmen

  • MAC-Tabellenverwaltung von L2-Switches

  • Testen des L2-Schaltverhaltens mit ARP

[ Python für Anfänger mit Beispielprojekten 4]

Sektion 10. Schicht 2 – Implementieren von VLAN-basierter Weiterleitung

  • Ziele und Voraussetzungen

  • 802.1Q Vlan hdr-Format

  • Vlan-getaggte Ethernet-Header-Datenstrukturen

  • API zur Bestimmung von getaggten vs. nicht getaggten Frames

  • Markiert <--> Frame-Konvertierung ohne Tag

  • VLAN-basierte MAC-Weiterleitung – Weitere Roadmap

  • Rahmeneintrittszustandstabelle

  • Frame-Ingress-Abschluss

  • Bedingungstabelle für Frame-Ausgang

  • Egress-Frame-Abschluss

  • Testen Sie die VLAN-basierte Weiterleitung

[ Python für Anfänger mit Beispielprojekten 5]

Sektion 11. Ebene einrichten 3 Routing-Infrastruktur (Netzwerkschicht)

  • Ziele und Voraussetzungen

  • Einrichtung der L3-Routing-Tabelle

  • CRUD-APIs für Routing-Tabellenverwaltung

  • Installation der L3-Route

  • Definieren des IP-HDr-Formats

  • Hinzufügen von Ping-CLI

  • Network and Application Layer Interaction

  • L3-Routing-Konzepte überarbeitet

    • Speditionsfall

    • Fall der direkten Host-Bereitstellung

    • Fall für lokale Lieferung

    • Self-Ping-Fall

  • L3-Routing-Flussdiagramme

Sektion 12. Schicht 3 Implementierung von Routing-Flussdiagrammen

  • Nutzdatenübertragung von L2 nach L3

  • Schicht 3 Flussdiagramm-Implementierung – Schritt für Schritt

  • Schicht 3 Implementierung des Betriebsflussdiagramms

  • Schicht 2 Implementierung des Betriebsflussdiagramms

  • Testen der Beta-Version unseres Projekts

Sektion 13. On-Demand-ARP-Auflösung

  • Problemstellung

  • Lösungsstrategie

  • Erweiterungen der Datenstruktur

  • ARP Sane-Eintragserstellung

  • ARP-Pending-List-Verarbeitung

  • Abschließende Demo unseres vollständigen Projekts

[Projekt 6]

Sektion 14. Implementieren Sie die IP-IN-IP-Kapselung (Tunnelbau)

  • Implementieren Sie die IP-IN-IP-Kapselung (Tunnelbau)

Zukünftige Erweiterung des Projekts. Die Schüler sollen dies selbst vorantreiben.

Sektion 15. Routing zwischen zwei Vlans (Inter-Vlan-Routing)

Über Arkadmin

Hinterlasse eine Antwort