środa, 29 września 2010

Cisco Mesh

Gigant rynku, firma Cisco, ma w swojej ofercie urządzenia oraz rozwiązania dotyczące kratowych sieci bezprzewodowych. Proponuje wykorzystanie swoich mostów bezprzewodowych serii Cisco Aironet 1300, 1400 oraz 1500. Opisuje zaprojektowany przez siebie protokół routingu mesh o nazwie Adaptive Wireless Path Protocol (AWPP, adaptywny bezprzewodowy protokół ścieżek). AWPP obejmuje podstawowe funkcjonalności kratowe, czyli "samoleczenie" sieci w przypadku awarii na którejś ze ścieżek, optymalizację ruchu na trasach oraz automatyczne reagowanie na zmiany w topologii sieci. Wykorzystywany jest także QoS.

Na zdjęciu Mesh AP, model Cisco 1500 z zainstalowanymi antenami:


































wtorek, 28 września 2010

Mikrotik video tutoriale

Na stronie Grega Sowella można znaleźć przystępne tutoriale dotyczące obsługi routerów Mikrotika. Znajdują się pod tym adresem: http://gregsowell.com/?page_id=951
Obejmują zarówno podstawową konfigurację urządzeń, jak i bardziej zaawansowane rzeczy: VPN, routing, bezpieczeństwo. Są w języku angielskim, każda czynność opisywana jest słownie i równocześnie pokazywana na ekranie.
Wygląda na to, że nie da się dać embedda filmów (podejrzewam też, że autor by sobie tego nie życzył). Poniżej więc tylko zrzut ekranu, a same tutoriale pod podanym wcześniej linkiem.

Mikrotik RouterOS i mesh

Opisy ustawień obsługujących interfejsy kratowe dla systemu RouterOS z linii poleceń.
Właściwie cała zabawa obraca się wokół protokołu HWMP+.

Na zrzucie ekranu przykładowa konfiguracja węzła pochodząca z wiki Mikrotika, w środku posta pełny opis.











Obsługę HWMP+ w RouterOS wykonuje się za pomocą trzech głównych poleceń:

- /interface mesh, które konfiguruje interfejs mesh
- /interface mesh port, które konfiguruje porty na interfejsie mesh
- /interface mesh fdb, które konfiguruje status read-only (tylko do odczytu) dla FDB (Forwarding Database) interfejsu mesh

środa, 15 września 2010

Praktyczny test open80211s cz. 2

Kolejna część testu działania open80211s. Przeprowadzona na dwóch laptopach z systemem Ubuntu 10.04 (ze względu na w miarę aktualną wersję kernela, CentOS oraz Knoppix okazały się poza tym kapryśnie na USB). Wszystkie kroki były wykonywane na obydwu komputerach.


Pierwszy krok to instalacja pakietu libnl-dev, wymaganego przez IW.


Następnie instalacja IW, ale tu niespodzianka: okazuje się, że w Ubuntu trzeba uaktywnić dodatkowe źródła pakietów o nazwie "Universe".



Można to załatwić bez linii poleceń, jednym kliknięciem w GNOME.


piątek, 10 września 2010

IPTV poprzez mesh

Na stronie https://research.sabanciuniv.edu/12219/2/tce09.pdf znajduje się artykuł napisany przez dwóch członków IEEE, dotyczący wykorzystania sieci kratowych w technologii IPTV (telewizja przez IP). Proponowanym do wykorzystania kodekiem jest H.264, opisano możliwą implementację dla mesh. Autorzy opisują również m. in. część standardu 802.11s, która dotyczy multimediów o nazwie "Enhanced Distributed Coordination Access" (EDCA). EDCA obejmuje QoS (zapewnienie jakości usług), który ustanawia cztery priorytety dla multimediów: "Best Effort" (BE, zapewniona najwyższa przepustowość), "Background" (BG, działanie w tle), "Video" (VI, dla obrazu) i "Voice" (VO, dla głosu). Przeprowadzono testy działania rozwiązania, wyniki przedstawione są w pracy w formie wykresów. Jednym z nich jest prawdopodobieństwo zgubienia pakietu danych multimedialnych dla wzrastającego obciążenia sieci ruchem protokołu UDP:



czwartek, 9 września 2010

Największa wdrożona sieć kratowa

Działa w Oklahoma City, USA. Wystartowała w 2006 roku, obsługuje obecnie ponad 4 TB ruchu miesięcznie. W grudniu 2009 roku jej zasięg pokrywał 95% powierzchni miasta wynoszącej około 1600 kilometrów kwadratowych. Projekt został zrealizowany przez firmę Tropos, w ciągu trzech lat oszczędności nim spowodowane wyniosły 10 mln. dolarów. Oprócz standardowego dostępu sieć obsługuje m.in. monitoring, systemy raportujące, GPS. Uniwersytet Oklahomy wykorzystuje ją również do monitorowania warunków atmosferycznych, dane tak uzyskiwane są dostępne za pomocą 36 stron WWW. Cały system mesh z roku na rok systematycznie się rozrasta, na chwilę obecną pracuje w nim kilka tysięcy mobilnych routerów.

Mapa zasięgu sieci (stan na rok 2008). Niebieska linia to prawie pełne pokrycie, czerwona częściowe.

środa, 8 września 2010

Instalacja open80211s na komputerze służącym za węzeł mesh cz. 2

Kolejnym krokiem jest przypisanie do interfejsów mesh każdego węzła adresów IP z tej samej podsieci. Wykonywane jest to za pomocą polecenia:

ifconfig "nazwa_interfejsu" "adres_ip"

Domyślna konfiguracja powoduje, że wszystkie węzły będą wyszukiwać towarzyszy o tym samym identyfikatorze mesh a po znalezieniu spróbują nawiązać połączenie peer2peer.
Aktywne połączenia można sprawdzić za pomocą polecenia:

iw dev "nazwa_interfejsu" station dump 
Przykładowy wynik:


Słoneczny mesh, 802.11s Power Save

Na stronie http://owl.eng.mcmaster.ca/~todd/SolarMESH/ zaprezentowany jest projekt sieci kratowej zasilanej energią słoneczną. Tylko ona jest konieczna, nie jest wymagane stosowanie żadnych dodatkowych baterii, PoE itd. Sieć działa nieprzerwanie od 2003 roku, oczywiście ze stopniowymi usprawnieniami.

Na zdjęciu jeden z zainstalowanych węzłów:


Do działania tak zasilanej sieci konieczne jest stosowanie technologii "uśpienia" routerów w okresach czasu, gdy nie są aktywnie wykorzystywane. Standard 802.11s będzie implementował konieczne do tego mechanizmy. Określane są jako PS (Power Save). Ich głównym elementem będą komunikaty DTIM (Delivery Traffic Indication Message, wskazanie do dostarczenia ruchu sieciowego) oraz ATIM (Announcement Traffic Indication Message, zawiadomienie o ruchu sieciowym). DTIM stanowi sygnał do włączenia pełnego zasilania oraz rozpoczęcia wymiany danych. ATIM określa, w jak długich przedziałach czasowych węzeł ma nasłuchiwać powiadomień.

W środku opis działania dla komunikacji w 802.11s.

wtorek, 7 września 2010

Praktyczny test open80211s cz. 1

Postanowiłem sprawdzić, czy instalacja opisana w poprzednim wpisie działa w praktyce.
Pominąłem punkt 1 ze względu na to, że mam wersję kernela 2.6.26 i nie chciałem sobie rozkonfigurować działającego systemu. Test był przeprowadzany na Debianie 5.0 "Lenny".

Pierwszym krokiem było zainstalowanie IW, ale najpierw konieczne było dodanie odpowiednich bibliotek w wersjach developerskich.  W tym przypadku "libnl-dev":


Następnie zainstalowanie IW ze źródeł ze strony http://linuxwireless.org/en/users/Documentation/iw oraz sprawdzenie, czy działa.

Instalacja open80211s na komputerze służącym za węzeł mesh cz. 1

Poradnik, krok po kroku, konfiguracji linuksowego węzła sieci kratowej. Na podstawie http://www.open80211s.org/trac/wiki/HOWTO

0) Początek
Podczas instalacji nie można korzystać z managerów wifi, takich jak NetworkManager. Jeśli są uruchomione, należy wykonać "kill". Można używać kernela od wersji 2.6.26, co upraszcza nieco sprawę. Jeśli taki jest obecny można pominąć punkt 1, ale nie jest to zalecane (jądro "wireless-testing" zawiera najbardziej aktualną wersję softu).

1) Jądro
Ściągamy jądro testowe "wireless-testing", ze strony http://git.kernel.org/?p=linux/kernel/git/linville/wireless-testing.git;a=summary;
Konfigurujemy jądro włączając do niego stos mac80211 z parametrami do mesha (CONFIG_MAC80211, CONFIG_MAC80211_MESH) i  uruchamiając driver używanej bezprzewodowej karty sieciowej.
Potem następuje kompilacja tak przygotowanego jądra.
Można pominąć ten krok i posłużyć się gotowcem ze strony http://linuxwireless.org/en/users/Download
ale jednak najlepiej skonfigurować wszystko od podstaw.

2) Instalacja IW
IW pozwala na prostą konfigurację ustawień bezprzewodowych z linii poleceń. Jest dostępne razem z systemem w niektórych wersjach linuxa (np. w debianie SID, wersja niestabilna). Informacje o IW można znaleźć na stronie http://linuxwireless.org/en/users/Documentation/iw/

poniedziałek, 6 września 2010

IEEE 802.11s Draft 7, OLPC

Po spotkaniu grupy zadaniowej 802.11s w San Diego,USA w lipcu tego roku ustalono, że szkic numer 7 standardu zostanie niedługo zatwierdzony. Członkami grupy są cztery osoby, dwie z firmy Philips oraz po jednej z Sony i Motoroli.

Informacje o odbytych spotkaniach można zobaczyć na stronie http://www.ieee802.org/11/Reports/tgs_update.htm

Dostęp do pełnych szkiców standardu mają tylko członkowie komitetu IEEE. Część informacji można znaleźć na stronie inicjatywy społecznej OLPC ("One Laptop Per Child") pod adresem http://wiki.laptop.org/go/Mesh_Network_Details, ponieważ będzie ona bazować na modyfikacji standardu mesh (OLPC-Mesh).

Na zdjęciu komputer XO opracowywany przez OLPC, który będzie wykorzystywać sieci kratowe do łączności:

niedziela, 5 września 2010

Omijanie awarii

Fajnym i pożytecznym elementem mesha jest zdolność przekierowywania ruchu sieciowego w przypadku braku łączności z którymś z węzłów. Zazwyczaj istnieją wtedy inne ścieżki, którymi mogą płynąć dane (w sieci mesh przeważnie istnieje redundancja połączeń).

Przykładowo dostępne są trzy węzły, o numerach 1, 3 oraz 5. Na rysunku komunikacja odbywa się bezpośrednio pomiędzy 3 i 5:


Opracowanie i badania eksploatacyjne kratowej sieci bezprzewodowej

Jest to temat mojej obronionej już pracy magisterskiej, dotyczącej bezprzewodowych sieci kratowych. Głównym celem pracy było przebadanie działania sieci mesh złożonej z 7 routerów Mikrotik RouterBoard 433AH. Dodatkowo zawiera ona sporą ilość aktualnych informacji dotyczących tego tematu.



Spis treści wewnątrz wpisu.

Praktyczny test Open802.11s - Szwedzka praca magisterska

Na stronie http://epubl.ltu.se/1653-0187/2010/041/index.html umieszczona jest praca magisterska w języku angielskim prezentująca test działania sieci kratowej. Wykorzystany został w niej system Ubuntu oraz testowa wersja pakietu open80211s, działające na 8 komputerach. Druga część pracy zawiera test przeprowadzony za pomocą symulatora sieci o nazwie NS-3. W załączniku zawarte są kody źródłowe symulacji w języku C++ (NS-3 korzysta z tego języka).

Mikrotik RouterBoard 433AH oraz Winbox cz. 3

Na każdym interfejsie sieciowym WDS obsługujący mesh może być uruchomiony na dwa sposoby. Jednym z nich jest wystartowanie pojedynczego WDS na pojedynczej karcie. Żeby to zrobić, trzeba dla każdej pary łączących się interfejsów ustawić osobne kanały częstotliwości. Po połączeniu wygląda to tak:












sobota, 4 września 2010

Implementacja Open802.11s

Open80211s jest konsorcjum firm, które finansują oraz współpracują w celu stworzenia implementacji standardu 802.11s. Implementacja ta jest projektem open-source, jest sponsorowana m.in. przez firmę Google. Korzysta z systemu Linux, jest częścią kernela od wersji 2.6.26.

Lista sterowników obsługujących implementację Open80211s (kliknij, żeby powiększyć):







Wersja 0.1.1 pozwalała na przesyłanie ramek mesh za pomocą tablic z ręcznie wprowadzonymi ścieżkami. Od wersji 0.1.2 wprowadzono obsługę protokołu zarządzającego łączem pomiędzy węzłami. Wersja 0.2.0 zaimplementowała protokół HWMP działający w trybie „on-demand” (na żądanie) oraz umożliwiła kontrolowaną komunikację w trybie broadcast. Wersja 0.2.1 wprowadziła obsługę metryki.

Informacje są dostępne na stronie projektu: http://open80211s.org/

Projekt badawczy Microsoftu

Microsoft rozwija obecnie MCL (Mesh Connectivity Layer, pol. warstwa łączności mesh), który jest modułem zawierającym zaimplementowaną obsługę routingu "ad-hoc" oraz algorytm mierzenia jakości połączenia dla sieci mesh. MCL przygotowywany jest w formie sterownika dla systemów Windows. Działa w warstwie dostępu do sieci oraz częściowo sieciowej, dla warstw wyższych jest widoczny jako zwykłe połączenie ethernetowe. Testy przeprowadzano dla schematu adresacji IPv4 oraz IPv6 (nie była wymagana żadna modyfikacja).


Więcej informacji można znaleźć na stronie http://research.microsoft.com/en-us/projects/mesh/

Mikrotik RouterBoard 433AH oraz Winbox cz. 2

W celu uruchomienia sieci mesh należy również odpowiednio skonfigurować interfejsy sieciowe:


piątek, 3 września 2010

Mikrotik RouterBoard 433AH oraz Winbox cz. 1

System RouterOS firmy Mikrotik posiada zaimplementowaną obsługę sieci mesh. Odbywa się ona głównie poprzez dwa protokoły komunikacyjne tej firmy: HWMP+ oraz MME. HWMP+ służy do obsługi routingu w warstwie drugiej OSI dla sieci kratowych, natomiast MME pozwala na łatwy routing w warstwie sieciowej.

Tak wygląda router RB433AH zainstalowany w obudowie, wraz z wpiętymi bezprzewodowymi kartami sieciowymi:



czwartek, 2 września 2010

Historia standardu IEEE 802.11s

Standard 802.11s jest obecnie opracowywaną i niezatwierdzoną jeszcze przez IEEE (ang. Institute of Electrical and Electronics Engineers - Instytut Inżynierów Elektryków i Elektroników) częścią standardu 802.11, który definiuje działanie kratowych sieci bezprzewodowych.
802.11s wystartowało jako grupa badawcza we wrześniu 2003 roku. Zostało grupą zadaniową standardu 802.11 w lipcu 2004 roku. Propozycje do standardu można było składać od maja 2005 roku. 15 propozycji zostało dopuszczonych do głosowania, które odbyło się w lipcu 2005 roku. Po serii eliminacji i łączeń propozycji, podzielono je na dwie grupy:

- SEE-Mesh
- Wi-Mesh

Propozycja SEE-Mesh była wspierana przez firmy: Intel, Nokia, Motorola, NTT DoCoMo oraz Texas Instruments. Jako część tej propozycji, Intel wprowadził tzw. mesh portals (portale mesh). Portale mesh pozwalają połączyć nowe sieci typu mesh z innymi standardami sieciami bezprzewodowymi.
Propozycja Wi-Mesh została przedstawiona przez tzw. WiMA (Wi-Mesh Alliance), w skład którego wchodziły następujące firmy oraz organizacje: Accton, ComNets, InterDigital, NextHop, Nortel, Philips, Extreme Networks, MITRE, Naval Research Laboratory, Swisscom Innovations oraz Thomson. Przewidywała ona współdziałanie urządzeń w sieci mesh bez względu na ich producenta. Pozwalała na stosowanie sieci kratowych we wszystkich popularnych zastosowaniach (klienci indywidualni, małe przedsiębiorstwa, korporacje, wojskowość).

FPGA w kratowych sieciach bezprzewodowych

Publikacja opisuje w skrócie standard 802.11s oraz proponuje wykorzystanie modularnej architektury sprzętowej dla transmisji w warstwie MAC przy wykorzystaniu FPGA. Użytym językiem jest HDL (Hardware Description Language). Według autorów publikacji uzyskana wydajność jest całkiem przyzwoita.
FPGA było wcześniej wykorzystywane m.in. w sieciach neuronowych (oraz w lotach na Marsa):


Link do publikacji:


Autorzy proponują rozszerzenie wykorzystanego rozwiązania poprzez:

- dodanie uczenia się topologii mesh
- zarządzanie siecią mesh oraz bezpieczeństwo
- zaimplementowanie odbiornika MAC dla mesh

Bezpieczeństwo w protokole HWMP oraz HWMP+

Pierwszy z protokołów jest zaprojektowany w ramach standardu 802.11s dla sieci kratowych. Drugi jest protokołem firmy Mikrotik. Mimo podobnej nazwy nie są ze sobą kompatybilne, ale oczywiście służą do tego samego, czyli do routingu mesh w warstwie drugiej i są prawie bliźniaczo podobne. Artykuł jest wycinkiem z mojej magisterki.

Istnieje kilka scenariuszy zakłócenia działania sieci opierajacej sie o protokół HWMP oraz HWMP+:

- Flooding (zalanie) sieci
- Zakłócenie trasy
- Zafałszowanie informacji o trasie


Flooding (zalanie) sieci
Jest to najprostszy typ ataku, jaki może byc zrealizowany przy pomocy pojedynczego węzła. Polega on na wysyłaniu dużej ilosci komunikatów RREQ (żądanie routingu) zaadresowanych na nie istniejący węzeł sieci. Fakt ten powoduje, że każdy z węzłów, który otrzyma ten komunikat będzie go rozsyłał dalej. Rezultatem może byc znaczne ograniczenie przepustowości w sieci ze względu na szybko rosnącą liczbę komunikatów RREQ.


Architektura mesh

Sieci typu mesh najczęściej definiowane są jako sieci dwuwarstwowe. Jedna z warstw zajmuje się przesyłaniem informacji pomiędzy węzłami, natomiast druga obsługuje przesył pomiędzy węzłami oraz klientami.
W historii sieci kratowych można wyróżnić trzy ich generacje, które stopniowo udoskonalały tą technologię poprzez zwiększanie niezawodności oraz przepustowości. Dane wędrujące pomiędzy węzłami wykonują tzw. hops (skoki). Z każdym następnym skokiem zmniejszenie ulega przepustowość kolejnego węzła. Żeby zminimalizować ten efekt, kolejne generacje sieci kratowych były udoskonalane.
Pierwsza generacja nie przewidywała osobnych interfejsów radiowych służących do przesyłania danych wyłącznie pomiędzy węzłami. Pojedynczy interfejs obsługiwał zarówno dostarczanie danych do stacji jak i komunikację międzywęzłową. Alternatywne rozwiązanie zostało wprowadzone w drugiej generacji. Osobny interfejs przejął rolę łącznika. Zazwyczaj pracował on w wyższym paśmie radiowym (5 GHz) niż interfejs obsługujący stację (2,4 GHz).
Sieci trzeciej generacji wprowadziły dodatkowe interfejsy w węzłach, co powodowało dalszy wzrost wydajności oraz mniejsze opóźnienia po większej ilości skoków.

Sieci kratowe - wprowadzenie

Jednym z głównych trendów nowoczesnej technologii jest rosnąca rola sieci komunikacyjnych w życiu człowieka. Komunikacja staje się bardzo ważną częścią życia zarówno pojedyńczego człowieka, jak i przedsiębiorstw, miast oraz państw. Upowszechnienie szybkiego dostępu do internetu zrewolucjonizowało i nadal rewolucjonizuje zarówno istotne sektory handlu, przemysłu oraz gospodarki, jak i społeczne aspekty życia.
Wymiana informacji, których ilość rośnie z roku na rok wymusza na projektantach oraz inżynierach tworzenie coraz bardziej wyrafinowanych technik ich przesyłania. Od początkowych sieci teleinformatycznych stosowanych prawie wyłącznie w celach wojskowych, do dnia dzisiejszego, kiedy różnorodność oraz pomysłowość nowych rozwiązań ulepsza i urozmaica codzienne życie.
Sieci stosowane od wczesnych lat 90-tych były ograniczone przez medium, którym przesyłana była informacja. Przeważnie były to przewody, najpierw głównie miedziane, później wraz z udoskonaleniem technologii światłowodowe. Wraz z upowszechnieniem się w późniejszym okresie czasu bezprzewodowym przesyłem informacji pojawiła się nadzieja, że dostęp do internetu oraz innych sieci będzie możliwy w rejonach, gdzie nie zawsze da się zapewnić odpowiednią infrastrukturę. Jednak stosowane rozwiązania nie były doskonałe. Dlatego dosyć wcześnie zaczęto poszukiwać sposobu, by je udoskonalić. Próbą jego znalezienia są opisywane w tej pracy sieci kratowe, nazywane inaczej sieciami mesh.

Kratowe sieci bezprzewodowe (Wireless Mesh Networks) są obiecującą technologią rozwijającą się od wczesnych lat dwutysięcznych. Głównym założeniem stojącym za tego typu sieciami jest obniżenie kosztów pokrycia dostępem dużych terenów za pomocą tzw. węzłów (nodes). Węzły te stanowią równocześnie punkt dostępowy dla lokalnej stacji oraz łącznik pomiędzy poprzednimi oraz następnymi węzłami. Węzły mogą być przydatne w rejonach, gdzie niemożliwe jest ustanowienie standardowej infrastruktury sieciowej. W celu polączenia sieci kratowej do istniejącej sieci można zastosować bramy, które stanowią łącznik oraz granicę tych sieci.
Elementem wyróżniającym sieci mesh (kratowe) wśród stosowanych technik tworzenia sieci jest ich zdolność do automatycznej konfiguracji oraz organizacji. Pozwala to na łatwą ich rozbudowę oraz utrzymanie. Zasięg sieci powinien pozwolić na pokrycie rozległych terenów dostępem do internetu, sieci lokalnych lub sieci specjalizowanych, związanych np. z monitoringiem.
    Sieci kratowe stanowią również obiecujące rozwiązanie technologiczne dla terenów miejskich. Wiele miast wdrożyło już rozwiązania tego typu. Przykładowo są to: New Orlean, San Mateo, Chaska.

Start bloga

W związku z tym, że temat mojej niedawnej pracy magisterskiej jest ciekawy a informacji po polsku niewiele, postanowiłem prowadzić bloga związanego z bezprzewodowymi sieciami kratowymi. Będzie zawierać zarówno niektóre fragmenty z pracy jak i artykuły pisane od podstaw związane z tym tematem.

Wszelkie teksty umieszczone na blogu są oczywiście z automatu chronione prawami autorskimi. W przypadku ewentualnego cytowania proszę o podawanie źródła.