3. SYSTEM EKSPERYMENTOWANIA
Działanie programu SimuNET przebiega według przedstawionego na rys. 1 schematu. Dwuwymiarowa tablica struktur (połączeń) każdorazowo jest tak przekształcana (zamiana odpowiednich wierszy i kolumn miejscami), aby informacje dotyczące serwera źródłowego znalazły się w jej pierwszym wierszu. Wynika to ze sposobu konstrukcji algorytmu poszukiwania optymalnej ścieżki. W przypadku, gdy zdecydujemy się na obecność dodatkowego ruchu w sieci, przepustowość łączy podlega losowemu, maksymalnie dziesięciokrotnemu obniżeniu. Specjalna funkcja rysująca odpowiada za utworzenie mapy połączeń z wyszczególnionym kanałem transmisji. Założyliśmy ponadto, że dane są przesyłane jako niepodzielne pakiety o rozmiarze 1 kB każdy.
Danymi wejściowymi dla programu są: liczba serwerów, numer serwera początkowego S – Source i końcowego D – Destination, parametry łączy T i C, wielkość pliku danych do przesłania DS – Data Size [kB] oraz kryterium wyszukiwania drogi. Na podstawie tak zdefiniowanych wielkości aplikacja znajduje optymalną ścieżkę w grafie oraz zwraca wynik w postaci dwóch wskaźników: czasu całkowitego przesłania danych TT – Total Time [s] oraz cał-kowitego kosztu wykorzystania łączy TC – Total Cost [zł]. Wartość współczynnika jakości łącza Q - Quality (1) zdefiniowano jako stosunek wielkości przesyłanych danych do iloczynu czasu i kosztu całkowitego
(1)
Rys. 1. Schemat realizowanego zadania w ujęciu systemowym
Program został zrealizowany w języku C++ z wykorzystaniem środowiska C++ Builder 6.0. Aplikacja może być uruchamiana na systemach rodziny Windows. Minimalne wymagania sprzętowe są określone przez zainstalowany na komputerze system operacyjny. SimuNET posiada graficzny interfejs, który został zaprojektowany z myślą o wygodzie i prostocie działania z punktu widzenia użytkownika.
Program umożliwia (rys. 2):
- utworzenie sieci złożonej maksymalnie z 10 serwerów, z których każdy może się łączyć z każdym
- określenie takich parametrów łączy jak: przepustowość T i koszt użycia C
- wskazanie serwera początkowego S (zawierającego dane do przesłania) oraz serwera końcowego D (który oczekuje na transferowane dane)
- podanie wielkości pliku do przesłania DS
- wybór kryterium poszukiwania optymalnej ścieżki: najszybszej lub najtańszej
- ewentualną symulację obciążenia łączy dodatkowym ruchem
Rys. 2. Okno parametrów programu SimuNET
Podczas działania programu użytkownik może obserwować (rys. 3):
- na mapie połączeń wszystkie utworzone łącza oraz zaznaczone te, po których odbywa się transmisja danych
- wartości parametrów opisujących łącza składające się na optymalną ścieżkę
- procentowy postęp w transmisji
- pola informujące o ilości pakietów, które zostały już przesłane oraz tych, które jeszcze oczekują na transfer
- na zakończenie pojawia się dodatkowo informacja o całkowitym czasie TT oraz koszcie TC przesłania pliku o zadanej wielkości
Rys. 3. Okno główne programu SimuNET podczas symulacji