next up previous contents
Next: Pakiety do modelowania i Up: Pakiety edukacyjne Previous: Pakiety edukacyjne   Contents

Cnet

Autorem tego symulatora jest Chris McDonald [CNET]. Cnet daje możliwość badania i testowania protokołów, których implementację dostarcza użytkownik. Model sieci zakłada istnienie węzłów (komputer lub ruter) oraz połączeń między nimi. Kabel może łączyć dokładnie dwa węzły. Symulator umożliwia budowanie dowolnie złożonych topologii sieci. Projekt sieci musi być zapisany w pliku przy użyciu określonej składni. Język opisujący topologię sieci jest dość bogaty i umożliwia określenie wielu atrybutów dla węzłów oraz połączeń.

Środowisko symulatora daje możliwość zaprogramowania sposobu działania każdego węzła oddzielnie. Każdy z węzłów domyślnie udostępnia standardową warstwę aplikacji i warstwę fizyczną, w rozumieniu modelu OSI. Pozostałe warstwy protokołów muszą zostać napisane (dostarczone) przez użytkownika. Warstwa aplikacji generuje komunikaty (z ustaloną częstotliwością), podobnie jak w rzeczywistości robią to programy użytkowe. Warstwa fizyczna jest odpowiedzialna za przekazanie komunikatu do innego węzła oraz stwarza pozory zawodności sieci. Istnieje możliwość dostarczenia własnej implementacji warstwy aplikacji i warstwy fizycznej. Protokoły pisze się w ANSI C, kompilator sam kompiluje i dynamicznie dołącza skompilowany kod. W pliku definiującym topologię sieci podajemy dla każdego z węzłów nazwę pliku z kodem źródłowym w języku C, implementującym zachowanie protokołów.

Pisanie protokołów odbywa się w oparciu o programowanie zdarzeniowe. Środowisko uruchomieniowe generuje zdarzenia i przekazuje informacje o ich wystąpieniu do kodu użytkownika. Programista chcąc obsługiwać jakieś zdarzenie musi to zgłosić. Obsługiwane zdarzenia to: restart węzła, zakończenie działania węzła, warstwa aplikacji ma do przekazania komunikat, warstwa fizyczna dostała komunikat, wprowadzono znaki z klawiatury, zmienił się stan połączenia, naciśnięto przycisk uzdatniania (ang. debugging), wystąpiło przerwanie zegarowe. Symulator zawiera bibliotekę udostępniającą interfejs programisty potrzebną do komunikacji ze środowiskiem oraz przy implementacji własnych protokołów.

Platformą graficzną dla symulatora może być XView, Motif i Tcl/Tk, dostępna jest również wersja dla terminali znakowych. W środowisku graficznym mamy możliwość wyświetlenia topologii sieci, konfiguracji jej elementów (węzły i połączenia) oraz ustawienia opcji samego środowiska uruchomieniowego. Następnie możemy przystąpić do symulacji działania sieci i zaimplementowanych protokołów. W trakcie symulacji mamy możliwość obserwowania zachowania się protokołów oraz podglądu stanu każdego z elementów sieci. Możemy również zmieniać niektóre parametry w trakcie symulacji np. prawdopodobieństwo zagubienia i przekłamania przesyłanych danych.


next up previous contents
Next: Pakiety do modelowania i Up: Pakiety edukacyjne Previous: Pakiety edukacyjne   Contents
Symulator protokołów sieciowych TCP/IP