Aufgabe 2 - FH Wedel - Studenten Homepages der FH-Wedel

Aufgabe 2 - FH Wedel - Studenten Homepages der FH-Wedel Aufgabe 2 - FH Wedel - Studenten Homepages der FH-Wedel

stud.fh.wedel.de
von stud.fh.wedel.de Mehr von diesem Publisher
31.10.2013 Aufrufe

Folgende Definition liegt dieser Socket-Familie zu Grunde: NAME packet, AF_PACKET - packet interface on device level. SYNOPSIS #include #include #include /* the L2 protocols */ packet_socket = socket(AF_PACKET, int socket_type, int protocol); DESCRIPTION Packet sockets are used to receive or send raw packets at the device driver (OSI Layer 2) level. They allow the user to implement protocol modules in user space on top of the physical layer. …. Ihre Aufgabenstellung bei dieser Themenstellung lautet konkret: Realisieren Sie auf Basis dieser speziellen Socket-Familie eine einfache C-Konsolenanwendung, die den laufenden LAN-Traffic für ein auszuwählendes Interface verständlich (dekodiert) darstellt. Wenn lösbar, können Sie auch eine Java- Anwendung entwickeln. Ausgegeben werden dabei die wichtigsten MAC-Layer und IP-Header Informationen, sowie der korrekte Typ des Transport- bzw. auch Anwendungsprotokolls. Speziell die Anwendungsprotokolle brauchen hierbei aber nicht dekodiert zu werden. Die Ausgabe können Sie frei gestalten. Sie könnte z.B. ähnlich, wie beim klassischen TCPDUMP (de.wikipedia.org/wiki/Tcpdump) aussehen. Klären und Erläutern Sie auch die Darstellungsmöglichkeit für laufenden IPv6-Traffic ! Beispielausgabe zu TcpDump unter Unix/Linux: (Quelle: http://en.wikipedia.org/wiki/Tcpdump) Praktikum Rechnernetze, Arbeitsbogen P1 Seite 12 / 14

3.2 Realisierung einer Client-/Server Anwendung (in „C“) Realisieren Sie eine einfache Client-/Server Anwendung unter Windows oder Linux, hier in der Programmiersprache C, der ein simples Anwendungsprotokoll für einen Netzwerktaschenrechner zu Grunde liegt. Als Transportprotokoll soll das TCP eingesetzt werden. Eine Beispielvorlage für einen TCP-Client und einen TCP-Server (in C) finden Sie u.a. im vollständigen Vorlesungshandout (Anhang). Ihre Aufgabe hierbei ist es, den Client und TCP-Server als eine konsolenbasierte Anwendung zu implementieren. Dem Client-Programm soll zum Start wahlweise die IP-Adresse oder der DNS-Hostname des Servers (erfordert also DNS-Auflösung), sowie auch und zugehörige Portadresse, per Kommandozeilenparameter übergeben werden. Die beiden Anwendungen sollen über IPv4 als auch IPv6 kommunizieren können!! Grafische Darstellung des Protokollablaufs: Erläuterungen zum Ablauf: Der Server-Prozess begrüßt anfangs den Client-Prozess mit einer beliebigen Nachricht. Danach kann der Client verschiedene Kommandos nutzen. Mit dem Kommando „ADD“ werden zwei ganz Zahlen (Leerstelle als Trennsymbol) zum Addieren übermittelt und das Ergebnis wird zurück geliefert. Mit dem Kommando „MUL“ können zwei ganze Zahlen multipliziert werden und das Ergebnis wird zurück geliefert. Mit „QUIT“ wird die TCP- Verbindung beendet, dieses wird vom Server mit „OK“ quittiert. Auf fehlerhafte Eingaben (Kommandos) wird z.B. mit einer sinnvollen Meldung (z.B. „ERROR“) geantwortet. Auf dem Client werden alle Ein- und Ausgabe (Ergebnisse) auf dem Bildschirm dargestellt. Die Eingabe der Kommandos beim Client kann individuell gestaltet werden (z.B. durch direktes Einlesen der „Kommandozeile“ (Zeichenkette)). Der Server stellt wenigstens eine sinnvolle Status- und Zustandsanzeige des Prozesses dar (u.a. eigene Socket-Adresse, Client ist verbunden, etc.). Bei Bedarf kann er auch den vollständigen Dialog-Ablauf darstellen. Den wesentlichen Kernpunkt dieser Aufgabe stellt dabei die mögliche Übermittlung auch über IPv6 (-Sockets) dar, falls z.B. der DNS-Name des TCP-Server nur in eine IPv6 Adresse aufgelöst werden kann. Praktikum Rechnernetze, Arbeitsbogen P1 Seite 13 / 14

Folgende Definition liegt dieser Socket-Familie zu Grunde:<br />

NAME<br />

packet, AF_PACKET - packet interface on device level.<br />

SYNOPSIS<br />

#include <br />

#include <br />

#include /* the L2 protocols */<br />

packet_socket = socket(AF_PACKET, int socket_type, int protocol);<br />

DESCRIPTION<br />

Packet sockets are used to receive or send raw packets at the<br />

device driver (OSI Layer 2) level. They allow the user to implement<br />

protocol modules in user space on top of the physical layer.<br />

….<br />

Ihre <strong>Aufgabe</strong>nstellung bei dieser Themenstellung lautet konkret:<br />

<br />

<br />

<br />

Realisieren Sie auf Basis dieser speziellen Socket-Familie eine einfache C-Konsolenanwendung,<br />

die den laufenden LAN-Traffic für ein auszuwählendes Interface<br />

verständlich (dekodiert) darstellt. Wenn lösbar, können Sie auch eine Java-<br />

Anwendung entwickeln.<br />

Ausgegeben werden dabei die wichtigsten MAC-Layer und IP-Hea<strong>der</strong> Informationen,<br />

sowie <strong>der</strong> korrekte Typ des Transport- bzw. auch Anwendungsprotokolls. Speziell die<br />

Anwendungsprotokolle brauchen hierbei aber nicht dekodiert zu werden.<br />

Die Ausgabe können Sie frei gestalten. Sie könnte z.B. ähnlich, wie beim klassischen<br />

TCPDUMP (de.wikipedia.org/wiki/Tcpdump) aussehen.<br />

Klären und Erläutern Sie auch die Darstellungsmöglichkeit für laufenden IPv6-Traffic !<br />

Beispielausgabe zu TcpDump unter Unix/Linux:<br />

(Quelle: http://en.wikipedia.org/wiki/Tcpdump)<br />

Praktikum Rechnernetze, Arbeitsbogen P1 Seite 12 / 14

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!