Streszczenie
Transkrypt
Streszczenie
Streszczenie Sieci sensorowe stały się jedną z technologicznych wizji XXI wieku. Systemy sieci sensorowych składają się z setek lub tysięcy węzłów-czujników, będących zminiaturyzowanymi elementami elektronicznymi, zdolnymi do wstępnego przetwarzania oraz transmisji zgromadzonych danych. Czujniki, wyposażone w interfejs sieciowy, służą do monitorowania różnego typu wielkości fizycznych i chemicznych o szerokim zakresie dynamiki (m.in. temperatury, natężenia światła, położenia, wilgotności, stężenia substancji, wibracji sejsmicznych) i znajdują zastosowane w bardzo wielu dziedzinach techniki. Technologia sieci sensorowych nie jest technologią jednorodną i łączy nowe koncepcje architektur sieciowych ze znanymi technikami komunikacji i przetwarzania danych. Z punktu widzenia modelu ruchu w kanale komunikacyjnym, sieci sensorowe można zakwalifikować do dwóch kategorii: sieci intensywnych oraz ekstensywnych [1]. Głównym kryterium jakości ekstensywnych sieci sensorowych jest minimalizacja zużycia energii, natomiast sieci intensywnych - maksymalizacja wydajności. Intensywne sieci sensorowe, do których można zaliczyć m.in. platformy komercyjne LonWorks (Local Operating Networks) oraz CAN (Controller Area Network), znajdują zastosowanie przede wszystkim w systemach sterowania przemysłowego i automatyce budynków, podczas gdy reprezentatywnym przykładem sieci ekstensywnych są systemy monitorowania środowiska naturalnego. Szczegółowe porównanie obu typów architektur zamieszczono w pracy [1]. Ruch komunikatów generowanych przez poszczególne urządzenia sieci sensorowej wykazuje o wiele większą korelację aniżeli w sieciach komputerowych i posiada niejednokrotnie naturę wybuchową, zwłaszcza w systemach o architekturze wyzwalanej przez zdarzenia, w których dane są transmitowane w odpowiedzi na wystąpienie określonych zdarzeń zewnętrznych. Stąd jednym z najważniejszych wymagań stawianych protokołom kontroli dostępu do medium transmisyjnego jest odporność na przeciążenia oraz wysoka wydajność w szerokim zakresie obciążenia kanału. W niniejszej pracy rozpatrywana jest klasa intensywnych sieci sensorowych o architekturze wyzwalanej przez zdarzenia z losowym protokołem kontroli dostępu do medium transmisyjnego typu CSMA (Carrier Sense Multiple Access), w którym jako mechanizm unikania kolizji wykorzystuje się predykcję obciążenia kanału komunikacyjnego. Predykcyjny protokół CSMA jest zaimplementowany w mikrokontrolerze Neuron Chip – wieloprocesorowym specjalizowanym układzie scalonym, produkowanym przez firmy Toshiba i Cypress, w który wyposażone jest każde urządzenie sieciowego systemu sensorowego w technologii LonWorks (Local Operating Networks) [2]. Do 2006 r. na świecie zainstalowanych zostało ponad 60 mln urządzeń, zbudowanych w technologii LonWorks. Celem pracy jest wyznaczenie limitów wydajności systemu sieciowego z predykcją obciążenia w postaci analitycznego określenia charakterystyk przepustowości oraz średniego czasu dostępu do kanału komunikacyjnego w funkcji obciążenia kanału komunikacyjnego, definiowanego jako liczba węzłów, podejmujących próby nadania swoich danych. Ocena efektywności predykcji jest przedstawiona na tle analizy wydajności systemów sieciowych z protokołami, pozbawionymi mechanizmów predykcji. Dlatego w pracy oprócz wydajności predykcyjnego protokołu p-CSMA o zmiennym oknie współzawodnictwa [2,4-10] przedstawione są wyniki badań dwóch protokołów CSMA o stałym oknie współzawodnictwa: klasycznego protokołu o równomiernym rozkładzie prawdopodobieństwa (p-CSMA) [3,7] oraz protokołu z rozkładem geometrycznym (G-CSMA) [11,12]. Końcowym efektem pracy jest opracowanie nowego algorytmu predykcyjnego protokołu CSMA o stałym oknie współzawodnictwa i przestrajanym dynamicznie geometrycznym rozkładzie prawdopodobieństwa [13]. Wspólną cechą wszystkich analizowanych protokołów jest 1 bezpamięciowy mechanizm losowego rozstrzygania rywalizacji (memoryless backoff), co oznacza, że węzły po przegraniu współzawodnictwa o dostęp do kanału kasują numery wylosowanych szczelin, reprezentujących ich opóźnienie w aktualnej próbie dostępu do łącza komunikacyjnego. W pracach [9,12] wyszczególniono różnice między analizowanymi w pracy algorytmami protokołów a protokołem IEEE 802.11. Dla wersji klasycznego protokołu CSMA ze stałym oknem współzawodnictwa, znanego również pod nazwą protokołu CSMA z p-przewidywaniem (p-persistent CSMA), będącego podstawowym komponentem bardziej złożonych algorytmów z rodziny CSMA, optymalizacja wydajności może zostać zrealizowana jedynie dla wybranego poziomu obciążenia kanału [3]. Ta cecha ogranicza możliwość wykorzystania statycznego protokołu pCSMA w praktyce. W predykcyjnym protokole p-CSMA z opcjonalną detekcją kolizji stosuje się zmienne okno współzawodnictwa, którego rozmiar podlega dynamicznej zmianie w odpowiedzi na przewidywane zmiany obciążenia kanału. Predykcja obciążenia polega przy tym na wykorzystaniu informacji o wtórnym ruchu pakietów w kanale, na który składają się pakiety potwierdzeń lub odpowiedzi oraz ewentualnie także - retransmisje pakietów, które uległy kolizji. Estymacja aktualnego poziomu ruchu wtórnego jest prowadzona na bieżąco przez każdy węzeł sieci za pomocą licznika BL (backlog), który akumuluje zakodowane w nagłówkach transmitowanych pakietów informacje o liczbie potwierdzeń lub odpowiedzi, które zostaną wygenerowane przez odbiorców danego komunikatu. Z kolei szacowanie zaległej liczby retransmisji komunikatów odbywa się poprzez zliczanie kolizji w kanale komunikacyjnym, o ile detekcja kolizji jest prowadzona. Stan licznika BL determinuje aktualny rozmiar okna współzawodnictwa W, określający liczbę szczelin czasowych, wykorzystywanych do rozstrzygnięcia rywalizacji o dostęp do kanału. Rozmiar okna rośnie liniowo wraz ze wzrostem obciążenia kanału, reprezentowanego przez stan BL, co z kolei wpływa na minimalizację prawdopodobieństwa kolizji. Z punktu widzenia teorii systemów sterowania predykcyjny protokół p-CSMA, a w szerszym ujęciu klasa protokołów z predykcją obciążenia (w tym również predykcyjny protokół z przestrajanym rozkładem geometrycznym [13]), jest złożonym nieliniowym systemem stochastycznym z mechanizmem ujemnego sprzężenia zwrotnego, którego celem jest maksymalizacja stopnia wykorzystania dostępnego pasma komunikacyjnego w warunkach zmiennego obciążenia kanału. Jako wskaźniki wydajności badanych protokołów przyjęto: przepustowość, poziom kolizji, pojemność protokołu oraz średni czas dostępu do kanału. Jak wykazano w pracach [8,9] dla protokołu ze zmiennym oknem rywalizacji, a w pracy [12] dla protokołu z rozkładem geometrycznym, do analitycznego określenia powyższych parametrów, konieczne jest wyznaczenie prawdopodobieństwa pomyślnej transmisji ( psucc (n) ) oraz średnich numerów szczelin, w których następuje odpowiednio pomyślna transmisja ( d succ (n) ) oraz kolizja ( d coll (n) ) w funkcji liczby aktywnych węzłów. Wyznaczenie psucc (n) , d succ (n) , d coll (n) w oparciu o analizę stochastyczną jest przedstawione dla protokołu p-CSMA w [3,7], a dla GCSMA – w [11,12]. Wyniki uzyskane dla protokołów statycznych mają szersze znaczenie z uwagi na fakt, że dla niektórych scenariuszy obciążenia predykcyjny protokół p-CSMA zostaje zredukowany do statycznego protokołu p-CSMA, gdzie p=0.0625, ponieważ okno współzawodnictwa przy BL=1 składa się z 16 szczelin. Ma to miejsce wtedy, gdy w wersji protokołu bez detekcji kolizji w kanale nie są przesyłane komunikatu z adresowaniem grupowym, lub dla dowolnego scenariusza obciążenia (i bez względu na obecność detekcji kolizji), jeśli natężenie ruchu w kanału jest niewielkie [7]. Rozszerzenie analitycznej metody oceny wydajności statycznego protokołu p-CSMA o stałym oknie współzawodnictwa na 2 predykcyjny protokół p-CSMA o zmiennej liczbie szczelin, wymaga znalezienia rozkładu prawdopodobieństwa stanów licznika BL w stanie ustalonym sieci. Jak wynika ze specyfikacji predykcyjnego protokołu CSMA z p-przewidywaniem, bieżący rozmiar okna współzawodnictwa równy 16k, gdzie k jest stanem licznika BL, podlega losowym w czasie fluktuacjom w postaci sukcesywnej akumulacji zmian licznika BL w pomyślnych cyklach transmisji oraz dodatkowo jego jednostkowym przyrostom w przypadku kolizji dla wersji protokołu z detekcją kolizji. Bieżący stan BL zależy od klasy komunikatów, transmitowanych w kanale w przeszłości oraz od częstości kolizji pakietów, o ile detekcja kolizji jest prowadzona. Do wyznaczenia tych parametrów dla predykcyjnego protokołu p-CSMA zastosowano metodę łańcuchów Markowa, przy czym w analizowanym systemie łańcuchem Markowa jest proces stochastyczny, reprezentujący sekwencję stanów licznika BL, który determinuje z kolei chwilowe zmiany okna współzawodnictwa. Celem zastosowania metody łańcuchów Markowa jest znalezienie stacjonarnego rozkładu prawdopodobieństwa π = [π k ] , k = 1,..., BLmax licznika BL, który, jak wiadomo z teorii łańcuchów Markowa, jest wektorem własnym jego macierzy przejścia P , skojarzonym z wartością własną równą jeden. Macierz przejścia P określa prawdopodobieństwa przejść między poszczególnymi stanami łańcucha Markowa, stąd posiada ona wymiar BLmax x BLmax i zależy od scenariusza obciążenia sieci. Prawdopodobieństwa przejściowe łańcucha Markowa zależą od tego, jak wiele komunikatów poszczególnych typów jest generowanych przez zadania aplikacji w poszczególnych węzłach. Ponieważ stan licznika BL nie może zmniejszyć się o więcej niż jeden z żadnym cyklu pakietowym, wszystkie elementy macierzy przejścia P , znajdujące się przynajmniej dwa wiersze poniżej jej przekątnej są równe zeru. Do określenia modelu ruchu wejściowego, wprowadzona została przez autora ujednolicona metoda definicji scenariusza obciążenia, która uwzględnia klasy komunikatów, reprezentujące liczbę ich odbiorców oraz różne tryby ich transmisji (z potwierdzeniem lub bez potwierdzenia) [8-10]. Wyniki analizy protokołu ze zmiennym oknem współzawodnictwa przy użyciu dyskretnych procesów stochastycznych Markowa przedstawiono w pracach [4-9]. W szczególności, analizę dla powszechnie wykorzystywanego w praktyce scenariusza dla komunikatów adresowanych do indywidualnego odbiorcy (unicast) w trybie z potwierdzeniem i detekcją kolizji w odniesieniu do przepustowości zawarto w [4,5], a dla średniego czasu dostępu do medium transmisyjnego - w [7]. Następnie w pracach [8,9] rozszerzono analizę na dowolny scenariusz obciążenia dla wersji protokołu z detekcją kolizji, definiowany przez zbiór współczynników ułamkowych αi, i=0,1,2,…,M, gdzie M jest maksymalną liczbą odbiorców pojedynczego komunikatu, natomiast w pracy [6] – dla wersji bez detekcji kolizji. Wykazano, że minimalna przepustowość dla predykcyjnego protokołu p-CSMA w zakresie obciążenia, w którym predykcja obciążenia pozostaje efektywna, zależy od scenariusza obciążenia i waha się w granicach od 48% dla α 0 = 1 oraz 63% dla α1 = 1 do wartości bliskiej 80% dla scenariuszy obciążenia z komunikatami multicast do dużej grupy odbiorców [8]. Z kolei dodanie nowego aktywnego węzła do istniejącej grupy rywalizaujących węzłów powoduje wzrost średniego czasu dostępu do kanału o odcinek czasu równy od ok. 1.3L dla scenariuszy z komunikatami multicast do dużej grupy odbiorców do 2L dla sceariusza α 0 = 1 , gdzie L jest rozmiarem przesyłanych komunikatów w bitach [9]. Następnie w pracy [10] na przykładzie predykcyjnego protokołu p-CSMA w wersji z detekcją kolizji określono fundamentalną cechę wydajności całej klasy predykcyjnych protokołów CSMA z detekcją kolizji, polegającą na tym, że maksymalizacja przepustowości kanału jest 3 osiągana za cenę minimalizacji pasma, przeznaczonego na transmisje komunikatów, przenoszących dane aplikacji. Ponadto wykazano, że wartość asymptotycznego prawdopodobieństwo pomyślnej transmisji dla zadanego scenariusza obciążenia jest wynikiem ustalenia się równowagi, gdzie oczekiwana wartość stochastycznych zmian licznika BL wynosi zero, co oznacza, że prawdopodobieństwo zwiększenia BL w kolejnym cyklu pakietowym jest równe prawdopodobieństwu jego zmniejszenia. Powyższa zasada ma istotne znaczenie praktyczne, ponieważ pozwala wyznaczyć limity wydajności predykcyjnego protokołu p-CSMA bez użycia metody łańcuchów Markowa, a jedynie na podstawie prostej proporcji, co wykazano w [10]. Co więcej, asymptotyczne prawdopodobieństwo pomyślnej transmisji jest określone przez strukturę ruchu wejściowego, transmitowanego w kanale i paradoksalnie nie zależy ani od liczby rywalizujących węzłów, ani od parametrów protokołu. Jak wykazano w pracach [11,12], protokół CSMA z geometrycznym rozkładem prawdopodobieństwa (G-CSMA) o stałym oknie współzawodnictwa, pomimo, że jest pozbawiony mechanizmu predykcji, wykazuje wysoką wydajność w stosunkowo szerokim zakresie obciążenia, co wynika z faktu, że rozkład geometryczny jest optymalnym rozkładem prawdopodobieństwo z punktu widzenia maksymalizacji prawdopodobieństwa pomyślnej transmisji (por. Ref. [4] w [12]). Szczególnym przypadkiem protokołu G-CSMA jest protokół p-CSMA, w którym geometryczny rozkład prawdopodobieństwa zostaje zredukowany do rozkładu równomiernego. W przedłożonej rozprawie habilitacyjnej, składającej się z jednotematycznego cyklu publikacji [1-13], udowodniono następujące tezy: 1. Wydajność predykcyjnego protokołu CSMA zależy nie tylko od natężenia ruchu komunikatów emitowanego przez czujniki do wspólnego kanału komunikacyjnego, ale również od struktury tego ruchu wyrażonej przez scenariusz obciążenia kanału, definiowany jako zbiór współczynników ułamkowych αi, i=0,1,2,…,M, określających udział poszczególnych typów komunikatów w całkowitym ruchu wejściowym, generowanym przez dany czujnik do kanału komunikacyjnego, gdzie M jest maksymalną liczbą odbiorców pojedynczego komunikatu [8-10]. 2. Wskaźniki jakości predykcyjnego protokołu p-CSMA (przepustowość, poziom kolizji, średni czas opóźnienia) oraz parametry pomocnicze (prawdopodobieństwo pomyślnej transmisji, średnie numery szczelin, w których następują odpowiednio pomyślne transmisje oraz kolizje) mogą zostać wyznaczone za pomocą metody analitycznej, wykorzystującej dyskretne procesy stochastyczne Markowa, przy czym dla wersji protokołu bez detekcji kolizji funkcjonowanie protokołu jest modelowane przez jednorodne [6], zaś dla wersji protokołu z detekcją kolizji – przez niejednorodne procesy stochastyczne Markowa [8,9]. Elementy macierzy przejścia łańcucha Markowa dla wersji protokołu z detekcji kolizji zależą [5,7-9] - natomiast dla wersji protokołu bez detekcji kolizji - nie zależą [6] od liczby rywalizujących węzłów. Prawdopodobieństwa przejścia pk ,i łańcucha Markowa ze stanu BL=k do stanu BL=i dla wersji protokołu z detekcją kolizji są określone następująco: pk ,k = γ 1 (1 − pk ) ; M ∑i=0 [(i + 1)γ i ] pk ,k +1 = γ (1 − pk ) , 3≤ m ≤ M ; pk ,k + m−1 = Mm ∑i=0 [(i + 1)γ i ] pk ,k −1 4 γ 2 (1 − pk ) + pk ; M [( 1 ) γ ] i + ∑i=0 i M γ ∑ i =0 i ; = (1 − pk ) 1 − M ∑i =0 [(i + 1)γ i ] przy czym pk jest prawdopodobieństwem kolizji dla liczby rywalizujących węzłów n n −1 1 16k − s , natomiast s =1 16k 16k jest zbiorem współczynników 16 k przy stanie licznika BL=k, wyrażonym jako: pk = 1 − n∑ γ i = α i α j ; i = 0,..., M , przy czym α i ; i = 0,..., M ułamkowych 0 ≤ α i ≤ 1 , reprezentujących udział klasy komunikatów multicast(i) w całkowitym ruchu wejściowym komunikatów, natomiast α j = min {α i ;α i ≠ 0} jest i =0 ,1,...,M niezerowym minimum zbioru współczynników α i , liczba i jest liczbą potwierdzeń lub odpowiedzi, generowanych w wyniku pomyślnego odbioru komunikatu multicast(i), a liczba M jest maksymalną liczbą odbiorców komunikatu. Prawdopodobieństwa przejścia pk ,i dla wersji protokołu bez detekcją kolizji są określone tymi samymi formułami przy założeniu, że pk = 0 . 3. Minimalna przepustowość dla predykcyjnego protokołu p-CSMA w zakresie obciążenia, w którym predykcja obciążenia pozostaje efektywna, zależy od scenariusza obciążenia i waha się w granicach od ok. 48% dla scenariuszy obciążenia z komunikatami nie wymagającymi potwierdzenia do wartości bliskiej 80% dla scenariuszy obciążenia z komunikatami multicast do dużej grupy odbiorców [8]. Charakterystyka średniego czasu dostępu do kanału w zakresie silnego obciążenia sieci jest liniowa [9]. 4. Asymptotyczna przepustowość T, która dla silnego obciążenia sieci może być aproksymowana przez prawdopodobieństwo pomyślnej transmisji psucc dla dużej liczby ( n) , gdzie współzawodniczących węzłów ( T ≅ psucc ) definiowanym jako: psucc = lim psucc n →∞ ( n) succ p jest prawdopodobieństwem pomyślnej transmisji przy liczbie n rywalizujących węzłów dla wersji predykcyjnego protokołu p-CSMA z detekcją kolizji, jest niezależna od liczby węzłów n oraz parametrów protokołu i wyraża się formułą analityczną [10]: p succ ∑ = ∑ M i =0 M i =0 [(i + 1)γ i ] [(i + 2)γ i ] Jak wynika z powyższej formuły, asymptotyczne prawdopodobieństwo pomyślnej transmisji psucc , a zarazem asymptotyczna przepustowość, waha się w zależności od scenariusza obciążenia w następujących granicach: 0.5 ≤ psucc ≤ ( M + 1) ( M + 2) , przy czym dolna granica asymptotycznej przepustowości równa 0.5 jest osiągana dla przypadku homogenicznego scenariusza obciążenia, w którym żaden z komunikatów nie wymaga potwierdzenia, a górna granica równa ( M + 1) ( M + 2) i bliska jedności - dla przypadku homogenicznego scenariusza obciążenia, w którym wszystkie komunikaty wymagają potwierdzenia i adresowane są do M odbiorców. 5. Maksymalizacja asymptotycznego prawdopodobieństwa pomyślnej transmisji psucc jest okupiona minimalizacją prawdopodobieństwa pomyślnej transmisji psucc _ mes dla komunikatów, co wyraża się następującą formułą analityczną [10]: psucc _ mes = 1 − psucc , przy czym psucc = psucc _ ack + psucc _ mes , gdzie pomyślnej transmisji dla potwierdzeń: 5 psucc _ ack jest prawdopodobieństwem psucc _ mes = ∑ ∑ M i =0 M i =0 γi psucc _ ack = [(i + 2)γ i ] ∑ ∑ M i =0 M i =0 iγ i [(i + 2)γ i ] 6. Predykcyjny protokół CSMA, zwłaszcza w wersji bez detekcji kolizji, charakteryzuje się niesprawiedliwością w dostępie do kanału komunikacyjnego. Warunkiem sprawiedliwego dostępu do kanału jest, aby stan liczników BL we wszystkich węzłach sieci był w tym samym czasie identyczny, co jest osiągnięte, przy założeniu, że [8]: - kanał fizyczny jest bezszumny i jednocześnie w kanale jest prowadzona detekcja kolizji przez wszystkie węzły w sieci, również w przypadku, gdy nie są one nadawcami pakietów, uwikłanych w kolizje, lub - detekcja kolizji nie jest prowadzona, ale w kanale nie są transmitowane komunikaty grupowe w trybie z potwierdzeniem. 7. Porównanie predykcyjnego protokołu p-CSMA z protokołem p-CSMA oraz z protokołem CSMA o geometrycznym rozkładzie prawdopodobieństwa (G-CSMA) pod względem średniej przepustowości definiowanej w szerokich granicach obciążenia pokazuje, że poprzez odpowiedni dobór kształtu rozkładu geometrycznego średnia przepustowość protokołu G-CSMA jest zaledwie o kilka procent niższa od średniej przepustowości predykcyjnego protokołu p-CSMA pomimo, że protokół G-CSMA nie ma wbudowanego mechanizmu predykcji obciążenia, co z drugiej strony pozwala uniknąć wprowadzenia niesprawiedliwości w dostępie do kanału [11,12]. 8. Predykcyjny protokół CSMA o stałym oknie współzawodnictwa i przestrajanym wraz ze zmianami obciążenia kanału kształcie rozkładu geometrycznego, opracowany przez autora rozprawy i będący przedmiotem zgłoszenia patentowego, charakteryzuje się: (1) mniejszymi wahaniami opóźnienia w dostępie do kanału z uwagi na brak powiększania rozmiaru okna wraz ze wzrostem szacowanego obciążenia kanału, (2) większą przepustowością, ponieważ prawdopodobieństwo pomyślnej transmisji osiąga dla zadanego rozmiaru okna współzawodnictwa swoje maksimum dla odpowiedniego rozkładu geometrycznego, (3) wyeliminowaniem wady predykcyjnego protokołu pCSMA, która polega na możliwości błędnego zakwalifikowania cyklu pakietowego jako cyklu jałowego, czyli bez transmisji w sytuacji, gdy wszystkie węzły ubiegające się o dostęp do medium transmisyjnego wylosowały szczeliny o numerach spoza liczby szczelin czasowych określających rozmiar podstawowego okna współzawodnictwa; w znanej wersji predykcyjnego protokołu p-CSMA powoduje to zmniejszenie o jeden stanów liczników BL we wszystkich węzłach sieci po upływie czasu równego czasowi trwania podstawowego okna rywalizacji (16 szczelin w istniejącej implementacji protokołu); jednakże zmniejszenie stanu liczników w sytuacji aktywnego cyklu pakietowego powoduje zakłócenie efektywnego funkcjonowania mechanizmu predykcji; zaproponowane rozwiązanie objęte zgłoszeniem patentowym [13] nie posiada tej wady z uwagi na stały rozmiar okna rywalizacji. Uzyskane wyniki są oryginalne w skali międzynarodowej. Poprawność modelu Markowa dla predykcyjnego protokołu CSMA i uzyskanych przy jego wykorzystaniu wyników analitycznych została zweryfikowana przez badania symulacyjne w oparciu o symulator, zbudowany w Katedrze Elektroniki AGH pod kierunkiem autora niniejszej pracy. Wyniki odpowiednich badań symulacyjnych są zamieszczone w poszczególnych pracach, wchodzących w skład cyklu. 6