• Nie Znaleziono Wyników

Zastosowanie zmodyfikowanej metody symulowanego wyżarzania do optymalizacji przepustowości sieci komputerowych

N/A
N/A
Protected

Academic year: 2021

Share "Zastosowanie zmodyfikowanej metody symulowanego wyżarzania do optymalizacji przepustowości sieci komputerowych"

Copied!
6
0
0

Pełen tekst

(1)

Dr hab. Wiesław Krajewski, prof. PAN Instytut Badań Systemowych PAN

Warszawa 7 listopada 2011

Recenzja rozprawy doktorskiej

Zastosowanie zmodyfikowanej metody symulowanego wyżarzania do optymalizacji przepustowości sieci komputerowych

przygotowanej przez mgr. inż. Roberta Dekowskiego

Tematyka rozprawy dotyczy zagadnień poprawy wydajności przesyłania danych w sieciach komputerowych oraz lepszego wykorzystania ich zasobów. Jej cel oraz zasadnicze tezy Autor przedstawił na stronach 10 i 11. Zostały one sformułowane następująco:

• „ ... wykazanie zasadności stosowania algorytmów heurystycznych (na przykładzie symulowanego wyżarzania) do optymalizacji przepustowości sieci komputerowej.”

• „ ... wykazanie słuszności stosowania równoważenia obciążenia typu NK w protokole OSPF w sytuacji, kiedy przeciążeniu ulega jeden z interfejsów routera, na którym działa ten protokół.”

Tematyka rozprawy jest ważna i aktualna. Zapewnienie odpowiedniej wydajności przesyła- nia informacji w sieciach komputerowych i w Internecie jest bowiem jednym z najwięk- szych wyzwań, którym sprostać musi obecnie informatyka. Od lat rośnie liczba urządzeń pracujących w Internecie, stale zwiększa się liczba jego użytkowników i wciąż pojawiają się aplikacje, wymagające przesyłania coraz większych ilości danych.

Omówienie i ocena treści rozprawy

Rozprawa składa się z sześciu rozdziałów oraz czterech załączników. Pierwszy rozdział ma charakter wprowadzający. Doktorant postanowił opisać w nim protokół OSPF oraz przed- stawić przegląd rozwiązań umożliwiających równoważenia obciążenia w tym protokole.

Zamysł słuszny, jednak wykonanie nie najlepsze. Niepotrzebnie, moim zdaniem, Dok- torant omawia struktury komunikatów wykorzystywanych w protokole OSPF. Zbędne są również informacje dotyczące masek o zmiennej długości, a także bezpieczeństwa samego protokołu. Nie ma to bowiem związku z rozważanym w rozprawie problemem ani z jej celem.

Część rozdziału pierwszego poświęcona omówieniu rozwiązań zapewniających równoważe-

nie obciążenia jest w dodatku powierzchowna i nieco chaotyczna. Byłoby znacznie lep-

iej, gdyby Doktorant przedstawił dokładnie problem równoważenia obciążenia, zwracając

(2)

szczególną uwagę na przypadek nierównych kosztów. Przydałby się również komentarz dotyczący możliwości wystąpienia zapętleń, gdy w protokole OSPF podejmowana jest próba wykorzystania tras o nierównych kosztach.

W drugim rozdziale Doktorant przedstawia proponowane rozwiązanie równoważenia ob- ciążenia z wykorzystaniem tras o nierównych kosztach. Podaje również ogólny opis przygo- towanego algorytmu. Podstawą przedstawianego rozwiązania jest nierówność (2.1), która służy do ustalenia, czy trasa alternatywna może być dołączona do zbioru tras prowadzą- cych do sieci docelowej. Taki sposób działania jest dość oczywisty i był już wykorzysty- wany, na przykład w protokole EIGRP. Występujący po prawej stronie nierówności (2.1) współczynnik określa, jak bardzo koszt trasy alternatywnej może być większy od kosztu trasy optymalnej i jest arbitralnie ustalany przez administratora.

W zaproponowanym w rozprawie rozwiązaniu współczynnik ten jest równy iloczynowi dwóch czynników i dlatego nierówność (2.1) przyjmuje postać (2.2). Pierwszy czynnik jest równy liczbie przeciążonych interfejsów routera, drugi zaś jest wyznaczany central- nie tak, aby przepustowość całej sieci była możliwie jak największa. Administrator musi jedynie ustalić wartości progowe, których przekroczenie oznacza, że interfejs jest prze- ciążony. Uzależnienie włączania tras alternatywnych od liczby przeciążonych interfejsów jest z całą pewnością dobrym pomysłem, ponieważ pozwala na adaptację do zmienia- jących się warunków panujących w sieciach oraz do ilości przesyłanych informacji. Do współczynników, których wartości mają maksymalizować przepustowość sieci odniosę się w dalszej części. Nazywał je będę przy tym parametrami beta tak, jak to przyjął Dok- torant w rozprawie.

Wątpliwości budzi natomiast sposób rozdziału pakietów między różne trasy. Doktorant wymienia dwa sposoby, rozdział pakietów między różne trasy zgodnie z algorytmem

„Round Robin” lub na podstawie źródłowych adresów IP. Pierwszy sposób jest stosowany w praktyce. Bywa, że rozdziału pakietów dokonuje się na podstawie docelowych adresów IP, nie zaś adresów źródłowych.

Końcowa część drugiego rozdziału, na którą składają się punkty 2.3, 2.4, 2.5 oraz 2.6 jest chaotyczna i niczego do rozprawy nie wnosi. Zbędny jest również przykład omawiany w punkcie 2.4. I bez niego wiadomo, że przesyłanie danych dodatkowymi trasami może, choć nie musi zwiększyć całkowitą przepustowość obszaru OSPF.

Trzeci rozdział Doktorant poświęcił omówieniu teoretycznych aspektów związanych z maksymalizacją przepustowości sieci. Wynikiem tej maksymalizacji mają być współczyn- niki beta, wykorzystywane do wyboru tras alternatywnych (nieoptymalnych). Rozdział jednak zaczyna się od definicji grafów dwudzielnych i zapowiedzi, że będą one wykorzysty- wane w dalszej analizie, a nie są.

Następnie Doktorant omawia dwa zadania optymalizacji przepustowości sieci. Pierwsze, formułowane w postaci zadania programowania liniowego i rozwiązywane metodą Sim- plex, było już wcześniej analizowane w szeregu pracach. Drugie zadanie zostało sfor- mułowane przez Doktoranta, który zaproponował, aby rozwiązywać je metodą symu- lowanego wyżarzania, opisaną w czwartym rozdziale. O ile jednak w drugim zadaniu maksymalizowana jest przepustowość sieci, to w pierwszym minimalizowana jest suma wartości współczynników obciążenia wszystkich łączy. Pewnie dlatego w celu wyznaczenia przepustowości maksymalnej sieci Doktorant proponuje, aby wielokrotnie rozwiązywać zadanie programowania liniowego, zwiększając za każdym razem ilość przesyłanych danych.

Procedura ta ma się zakończyć, gdy dla kolejnego zadania programowania liniowego zbiór

(3)

rozwiązań dopuszczalnych jest zbiorem pustym. Powodów takiego sformułowania zadania maksymalizacji przepustowości sieci Doktorant nie wyjaśnia. Opisuje za to metodę Sim- pleks, która jest bardzo dobrze znana. Opis algorytmu Simpleks można było pominąć.

Stwierdzenie na stronie 88, że wszystkie zmienne bazowe są równe zeru może bowiem sugerować, iż Doktorant nie zna dobrze podstaw teoretycznych programowania liniowego.

Za zupełnie zbędne uważam również uwagi dotyczące metod jedno- i dwupakietowych szacowania przepustowości dostępnej, zamieszczone na stronach 95 i 96.

Zadaniu programowania liniowego Doktorant przeciwstawia sformułowane przez siebie zadanie maksymalizacji przepustowości sieci opisane zależnościami (3.5) ÷ (3.8). Funkcja celu nie została jednak zdefiniowana w postaci analitycznej. Podany został jedynie algo- rytm, jak wyznaczać jej wartości. Dlatego stwierdzenie na stronie 93, iż jest to funkcja niewypukła i kawałkami liniowa powinno być w mniej lub bardziej formalny sposób udowodnione. Wydaje się bowiem, że jest to funkcja kawałkami stała. Punkt 3.4.4, wbrew tytułowi, żadnej analizy funkcji celu nie zawiera.

W końcowej części trzeciego rozdziału Doktorant analizuje kilka prostych przykładów.

Pierwszy z nich dotyczy topologii przedstawionej na rys. 3.2. Jest to dziwny przykład i nie przystający do rzeczywistości. Doktorant zakłada, że znane są ilości danych przesyłanych między sieciami. Na przykład z sieci S

1

do sieci S

2

ma być przesłanych 200 Mb. W przypadku równoważenia NK dane te będą przesyłane łączami e

1

oraz e

2

. Ale kto lub co będzie te dane wysyłać z sieci S

1

? Czy tam jest jakiś ukryty router, który ma te dane wysyłać i w dodatku wybierać dwie różne trasy ponieważ jego interfejsy są przeciążone?

Niewłaściwe jest również wyznaczanie czasu przesyłania wszystkich danych we wszystkich przykładach. Przyjmowane jest bowiem założenie, że wszystkie dane są wysyłane od razu, a tak nie musi być. Jest to po prostu niemożliwe do oszacowania.

Mam również zastrzeżenia do wyników w przykładzie dla topologii przedstawionej na rys. 3.5. Przy wymianie danych między H

1

a H

2

istnieją dwie trasy o tym samym minimalnym koszcie. Pierwsza prowadzi przez łącze e

5

i jej koszt jest równy 2. Druga trasa, o dokładnie tym samym koszcie, prowadzi przez łącza e

2

oraz e

4

. Jej przepustowość jest za to dwukrotnie wyższa niż pierwszej trasy, to znaczy powinno być Ψ(0) = 100.

Czwarty, kolejny bardzo ważny rozdział dla realizacji podstawowego celu rozprawy jest poświęcony adaptacji metody symulowanego wyżarzania do optymalizacji przepustowości sieci komputerowej. Na początku podany jest ogólny opis metody symulowanego wyżarza- nia. Następnie Doktorant omawia proponowany algorytm poprawy przepustowości sieci, w którym wykorzystał metodę symulowanego wyżarzania. Algorytm ten wymaga, aby znana była charakterystyka ruchu w sieci w ustalonym przedziale czasu.

W dalszej części omawianego rozdziału Doktorant przedstawia trzy scenariusze, wyko- rzystywane w testach proponowanej metody. Wyjaśnia przy tym, że dwa pierwsze posłużyły dobraniu optymalnych parametrów pracy algorytmu dla trzeciego scenariusza. Pomija jednak charakterystykę obciążenia sieci, które powinno mieć zasadnicze znaczenie przy podejmowaniu decyzji o włączeniu tras o nierównych kosztach. Rozdział czwarty kończy się oszacowaniem złożoności obliczeniowej proponowanej metody.

Ostatnie dwa rozdziały, piąty i szósty, zawierają wyniki obliczeniowe oraz ich analizę. Pon- adto w szóstym rozdziale znalazło się dość ogólne porównanie wybranych metod heurysty- cznych i metody symulowanego wyżarzania.

Ostatnim punktem pracy jest Zakończenie, w którym Doktorant pisze „Uważam, że moja

(4)

praca może przyczynić się do rozwoju badań nad tematyką optymalizacji przepustowości oraz zagadnieniami wydajnego routingu w sieciach komputerowych”. Zdanie to pozostaw- iam bez komentarza.

Ocena rozpatrywanego problemu i sposobu jego rozwiązania

Podstawowym celem rozprawy była optymalizacja przepustowości sieci komputerowej.

Doktorant zaproponował metodę maksymalizacji tej przepustowości. Jest to niewątpliwie metoda autorska.

W zdecydowanej większości prac poświęconych optymalizacji sieci autorzy zakładają, że znane są ilości danych do przesłania. Są to wielkości całkowite w pewnym ustalonym przedziale czasu bądź wartości uśrednione. Celem jest wyznaczenie przepływów w sposób zapewniający minimalne zużycie zasobów sieciowych, niezbędnych do przesłania tych danych.

W rozprawie również zakłada się, że znane są ilości danych do przesłania. Celem zaś jest jak najszybsze dostarczenie ich do odbiorców. Czas przesyłania danych jest wykorzysty- wany następnie do wyznaczenia przepustowości sieci. Można zatem przyjąć, że wyznac- zona w ten sposób przepustowość sieci jest maksymalną przepustowością przy założonych ilościach przesyłanych danych.

Sformułowane w rozprawie zadanie ma charakter częściowo opisowy. Doktorant nie po- daje na przykład formalnej postaci funkcjonału celu a jedynie algorytm wyznaczania jego wartości. Dlatego metody heurystyczne wydają się być szczególnie przydatne do wyz- naczania rozwiązań takich zadań. Metoda symulowanego wyżarzania jest bardzo popu- larna i obecnie często się ją wykorzystuje. Implementacja tej metody jest również częś- cią jednego z toolboxów oprogramowania Matlab. Dostosowanie metody symulowanego wyżarzania do potrzeb wynikających ze specyfiki rozwiązywanego zadania optymalizacji jest na ogół niezbędne.

Rozważając problem maksymalizacji przepustowości sieci Doktorant sformułował dwie tezy, przytoczone na początku recenzji. Pierwsza z nich mówi o słuszności stosowania metody symulowanego wyżarzania. Pewnie dlatego Doktorant kilkakrotnie przeciwstawia ją metodzie simpleks. Jednak o przewadze którejkolwiek z tych metod można by mówić, gdyby obie wykorzystać do rozwiązania tego samego zadania. A zadania są różne. Jedynie co je łączy to optymalizacja przepustowości sieci.

Druga z tych tez dotyczy słuszności stosowania równoważenia obciążenia typu NK. Aby jej dowieść, Doktorant pokazuje na wybranych przykładach, że uwzględnienie w routingu również tras o kosztach wyższych od optymalnego, zwiększa przepustowość sieci. Na ogół tak bywa i dowodzenie tego wydaje się zbędne. Zwykle bowiem wyznaczana jest trasa optymalna o minimalnym koszcie i nią dane są przesyłane. Uwzględnienie dodatkowych tras może więc przepustowość sieci poprawić. Trzeba jednak pamiętać, że jeśli wszystkie routery w analizowanym obszarze będą wykorzystywały równoważenie typu NK, mogą wystąpić pętle. Na tę możliwość zwrócono uwagę w protokole EIGRP. Doktorant w rozpa- trywanym przez siebie zadaniu możliwości powstawania pętli nie uwzględnia, ograniczając się jedynie do stwierdzenia, że niewłaściwy wybór wartości parametrów β może pogorszyć przepustowość sieci.

Rozpatrywane w rozprawie zadanie ma głównie charakter poznawczy mimo, że Doktorant

kilka razy napomyka o aspektach praktycznych proponowanego rozwiązania. Nie wydaje

(5)

się jednak prawdopodobne, aby w dającej przewidzieć się przyszłości ktokolwiek chciał je zastosować. Podstawową przeszkodą jest zcentralizowany sposób wyznaczania współczyn- ników β, który jest podstawą proponowanej metody maksymalizacji przepustowości sieci.

Wybrane uwagi szczegółowe

1. Na stronie 14, a także na kilku innych stronach, Doktorant używa określenia „dy- namiczne protokoły routingu”, ale to nie protokoły są dynamiczne.

2. Na stronie 15 Doktorant pisze o protokołach opartych o wektor. Nie opiera się protokołów o wektor.

3. Nie podoba mi się następujące zdanie na stronie 17 „ ... konfigurując konkretny router najczęściej jest możliwe ... ”.

4. Brak adresu 10.0.0.1/30 na rys. 1.3.

5. Określenie na stronie 45 „Najbardziej optymalnym rozwiązaniem ... ” jest niepoprawne.

6. W celu wykazania zasadności stosowania równoważenia obciążenia typu NK, w przykładzie odnoszącym się do rysunku 2.6, zostały wykorzystane wszystkie możliwe trasy. Jednak to, czy jakiekolwiek dodatkowe trasy będą wykorzystywane, zależy od wartości współczynników β, a te nie są podane.

7. W celu wskazania, że macierz ma r wierszy oraz m kolumn używamy zapisu r × m, a nie r ∗ m (strona 83).

8. Na stronie 83 w wierszu 7 od góry powinno być R

2

zamiast R

1

, odwrotnie zaś w wierszu 8.

9. Niezdefiniowane symbole ν

i

użyte zostały na stronie 83.

10. Na stronie 91 dwie linie bezpośrednio znajdujące się za wzorem (3.24) oraz wzór (3.25) nie pasują do opisu Algorytmu 3.

11. Niepoprawne są stwierdzenia na stronach 118 i 119, że x jest zmienną ze zbioru wartości dopuszczalnych S.

12. Symbol x

oznacza dotychczas wyznaczoną najmnieją wartość minimalizowanego funkcjonału.

13. Opisując algorytmy 4 oraz 6 Doktorant niewłaściwie używa pętli repeat ... until.

Zgodnie z powszechnie przyjętymi zasadami, pętlę tę wykonuje się do chwili, gdy warunek podany po słowie until będzie spełniony. Podane na stronach 120 oraz 124 warunki są spełnione od początku działania opisywanych algorytmów.

14. Z punktu 7.3 algorytmu 5 podanego na stronie 122 wynika, jakoby prawdopodobieństwo akceptacji było tożsame z funkcją energi. Potwierdza to również podana na stronie 123 definicja zmiennej E. A przecież to minimalizowana funkcja Ψ była definiowana jako funkcja energii, o czym mówi na przykład zdanie na stronie 134.

15. Niezrozumiały jest krok 11 algorytmu 5. Co to znaczy aktualizuj regułę stopu?

(6)

16. Przedstawiony na stronie 124 algorytm 6 jest po prostu algorytmem 5 tylko inaczej opisanym.

17. Na stronie 134 można przeczytać, że kod napisanego przez Doktoranta programu został zamieszczony w załączniku 1. W rzeczywistości jest tam jedynie informacja o kodzie umieszczonym na dołączonym do rozprawy nośniku.

18. W opisie oznaczeń na stronie 135 powinno być: P r(E ≥ Y jest prawdopodobieńst- wem, że wartość zmiennej losowej Y jest mniejsza od E.

19. Ostatnie zdanie na stronie 174 powinno być wykreślone. Przepustowości łączy dla sieci z rys. 6.2 nie są podane na schemacie tylko na na początku następnej strony.

Konkluzje i ocena końcowa

Przedstawione powyżej uwagi krytyczne muszą niestety wpłynąć na ostateczną ocenę rozprawy. Zyskałaby ona, gdyby Doktorant przeprowadził dokładną analizę zagadnienia równoważenia tras ze szczególnym uwzględnieniem tras o różnych kosztach a następnie skupił się na wybranych aspektach teoretycznych i obliczeniowych rozpatrywanego prob- lemu.

Pomimo uwag krytycznych stwierdzam, że rozważany w rozprawie problem jest ważny oraz trudny i Doktorant zaproponował nowy sposób sposób optymalizacji przepustowości sieci komputerowej. Za ważne oraz istotne uważam odejście od sformułowań ściśle formalnych i wykorzystanie metody heurystycznej, jaką jest metoda symulowanego wyżarzania.

W konkluzji mogę stwierdzić, ze opiniowana rozprawa, mimo pewnych wymienionych

wczesniej usterek, spełnia wymagania obowiazujących przepisów ustawy o stopniu naukowym

doktora i wnoszę o dopuszczenie pana mgr. inż. Roberta Dekowskiego do publicznej

obrony

Cytaty

Powiązane dokumenty

Symulacja dyskretna dotyczy procesów krokowych scharakteryzowanych przez dowolną liczbę zmiennych, przy czym każda z tych zmiennych może być kształtowana przez dowolną

Istotę algorytm u SA, podobnie ja k wielu innych algorytm ów w ykorzystujących przeszukiwanie lokalne, stanowi operacja zam iany danego rozw iązania na rozwiązanie z

Z naszych doświadczeń wynika, że algorytm symulowanego wyżarzania winien być częścią bardziej złożonego schematu poszukiwań wykorzystującego odpowiednie dla

gdzie xo jest początkową wartością współczynnika akceptacji określanego jako stosunek liczby przejść zaakceptowanych do liczby przejść wygenerowanych; m i jest

Efektywność tych algorytm ów (jakość wyznaczanych przez nie rozw iązań) zależy od ich param etrów oraz w dużym stopniu od liczby wykonanych iteracji (czasu

Zbadano wpływ parametrów wyżarzania rekrystalizują- cego metodą indukcyjną na strukturę i własności mechaniczne rur z mosiądzu CuZn371. Stwierdzono, że zastosowanie

4 dla odstępów węzłowych są zależne od wielkości i struktury ruchu w węźle, co jest zasadniczym problemem zagadnień przepustowości sieci kolejowych i

Ideą metody symulowanego wyżarzania jest osiągnięcie stanu podstawowego badanego układu (np. modelowej cząsteczki białka) reprezentowanego z reguły przez globalne