Bezprzewodowe USB - pojedynek dwóch standardów

| Technika

Standard USB znalazł szerokie zastosowanie w przemyśle komputerowym. Trudno sobie wyobrazić nowe urządzenie pozbawione portu USB - bez względu na to, czy jest to komputer, palmtop, telefon komórkowy czy też oscyloskop cyfrowy. Standard ten doczekał się specyfikacji w wersji 2.0.

Bezprzewodowe USB - pojedynek dwóch standardów

Obecnie rynek jest nasycony urządzeniami wyposażonymi w złącze USB i potrzeba nowych pomysłów, aby zachęcić konsumentów do wymiany posiadanego sprzętu, co pozwoliłoby utrzymać na odpowiednim poziomie przychody firm produkujących urządzenia elektroniczne. Najbardziej oczywistym krokiem przemysłu wydaje się zastąpienie uciążliwego połączenie przewodowego radiowym. Zmniejszeniu uległaby wtedy liczba przewodów podłączonych do komputera, co przełożyłoby się na znacznie wyższy komfort pracy i utrzymywanie porządku wokół komputera. Nowa technologia jest adresowana szczególnie do posiadaczy komputerów przenośnych, które z natury rzeczy powinny być w pełni mobilne. Dołączona wiązka przewodów pozwalająca na użytkowanie takich urządzeń jak drukarka, mysz, czy modem ogranicza w oczywisty sposób tę mobilność. W odpowiedzi na oczekiwania rynku powstały dwa projekty rozwijane przez niezależne firmy. Nasuwa się oczywiste pytanie, które z nich jest lepsze? Odpowiedź nie jest łatwa i wymaga dokładnego zapoznania się z różnicami pomiędzy nimi.

Czym się różnią?

Rys. 1. Bezprzewodowy hub firmy Belkin pracujący w technologii CableFree USB

Rozbieżności pomiędzy proponowanymi standardami pojawiły się na etapie opracowywania metody transmisji danych przez łącze radiowe. Doprowadziło to do powstania dwóch, niezależnych opracowań, z których każde ma swoich zwolenników. Oba za główny cel stawiają sobie umożliwienie nawiązania optymalnego, krótkodystansowego i szybkiego połączenia drogą radiową. Starano się również wyeliminować interferencje z innymi urządzeniami, które mogłyby korzystać z tego samego pasma radiowego. Zdecydowano się wykorzystać komunikację opartą o UWB (Ultra Wide Band). Jej cechą charakterystyczną jest emisja energii radiowej w bardzo szerokim widmie (pasmo do kilku GHz), ale o tak małej mocy, że nie zakłóca ona pracy innych układów pracujących na tej samej częstotliwości.

Pojawiły się też dwie propozycje modulacji: DS (Direct Sequence) oraz OFDM (Orthogonal Frequency Division Multiplexing). Ugrupowania popierające obie te koncepcje - UWB Forum dla DS-UWB oraz WiMedia Alliance dla OFDM-UWB – wkładają sporo wysiłku w to, aby to ich technologia została uznana za standard przez stowarzyszenie IEEE. Nie udało się to, jak na razie, żadnej ze stron.

W walce o rynek bezprzewodowego USB uczestniczą takie firmy jak Freescale Semiconductor razem z parterami, promując CableFree USB oraz WiMedia Alliance z USB-IF (USB Implementers Forum) ze swoim Certified Wireless USB.

Najbardziej znaczące różnice pomiędzy tymi dwoma opracowaniami występują w zastosowanych protokołach komunikacyjnych. Oznacza to, że warstwa fizyczne jest praktycznie identyczna dla obu rozwiązań, ale różny jest sposób inicjowania nowego połączenia.

Radiowo nie jest łatwo

Rys. 2. Rozszerzenie technologii Wireless USB o opracowanie firmy Icron Technologies

Wymiana połączenia przewodowego na radiowe jest zadaniem dosyć złożonym i wymaga znaczenie więcej wysiłku niż mogłoby się wydawać. Przesłanie strumienia bitów pomiędzy dwoma urządzeniami to zbyt mało. Połączenie przewodowe ma szereg dodatkowych zalet takich jak integralność przesyłanych danych, niezawodność, fizyczne bezpieczeństwo oraz pewność komunikacji z docelowym urządzeniem. Projektanci systemu radiowego muszą samodzielnie zaimplementować wszystkie te mechanizmy.

Integralność oznacza bezstratne i poprawne przesyłanie określonych danych z jednego punktu do drugiego. W przypadku połączenia przewodowego było to oczywiste: sygnał wprowadzony na wejście zawsze docierał na wyjście. Transmisja radiowa nie daje takich gwarancji. Wielokrotne odbicia sygnału radiowego i zaburzenia sprawiają, że pakiet danych może nie zostać prawidłowo odebrany.

Przewód gwarantował także fizyczne bezpieczeństwo – przechwycenie haseł wprowadzanych za pomocą klawiatury wymagało fizycznej ingerencji w sprzęt. Przechwytywanie danych przesyłanych drogą radiową wymaga znacznie mniej wysiłku – wystarczy umieścić urządzenie podsłuchujące w pobliżu pracującej klawiatury. Konieczne stają się mechanizmy ochrony danych, takie jak np. szyfrowanie.

Nie ma również pewności, czy połączenie zostanie ustanowione. Dwa urządzenia połączone przewodem były w stanie bezbłędnie komunikować się ze sobą. Transmisja radiowa jest bardziej złożona, gdyż w pobliżu pracującego hosta może znajdować się kilka innych urządzeń gotowych odpowiedzieć na próbę nawiązania połączenia i trzeba przygotować metodę identyfikacji poszczególnych peryferiów.

Bezpieczeństwo danych

Wymiana kluczy, oparta o protokół Diffie-Hellman'a, umożliwia ustanowienie bezpiecznego połączenia w szyfrowanym kanale. Protokół Diffie-Hellman'a jest złożony z trzech elementów (rys. 3). Pierwszym z nich jest para liczb, takich jak np. publicznie znane g oraz p. Liczba p jest dużą liczbą pierwszą, natomiast g jest liczbą całkowitą, mniejszą od p. Drugi element protokołu Diffie-Hellman'a stanowi generator liczb losowych. Zarówno host jak i urządzenie peryferyjne muszą być zdolne do generowania niezależnych, pseudolosowych wartości. Ostatnim elementem jest układ obliczający wartość y=(gx mod p). Obecność tych trzech elementów pozwala przeprowadzić bezpieczną wymianę kluczy. Kiedy dwa urządzenia ustanawiają połączenie między sobą, host generuje losową liczbę A i oblicza y1=(gA mod p), natomiast urządzenie peryferyjne generuje liczbę B i oblicza y2=(gB mod p).

Później urządzenia wymieniają między sobą wyniki obliczeń i używają ich do obliczenia X=(y1B mod p), układ peryferyjny, oraz X=y2A. W obu przypadkach wynik jest jednakowy, czyli X=(gAB mod p), z tym, że wylosowane liczby nie zostają ujawnione. Użytkownikowi pozostaje zweryfikowanie połączenia i jego zaakceptowanie. Weryfikacja polega na porównaniu liczby X wyznaczonej przez host i urządzenie peryferyjne. Gdy są one identyczne, to wartość gAB staje się kluczem szyfrującym wykorzystywanym do komunikacji pomiędzy tymi dwoma urządzeniami. Pojawia się problem z wyświetleniem liczb X w sposób czytelny dla człowieka. Jedną z propozycji jest wyposażenia urządzeń w dwucyfrowy wyświetlacz. Przyczynia się to, co prawda, do podniesienia kosztów, jednakże w przypadku niektórych urządzeń nie ma to znaczenia, gdyż i tak mają one własne wyświetlacze. Próba nawiązania połączenia z innym urządzeniem wymaga wygenerowania nowych liczb losowych, więc każde, podłączone do hosta urządzenie będzie posługiwało się własnym kluczem szyfrującym. Przewodowe połączenie zostało zastąpione kluczem szyfrującymi i danymi wygenerowanymi w trakcie komunikacji, które jednoznacznie określają cel i źródło przesyłanych informacji.

Świat bez przewodów

Rys. 3. Wymiana kluczy w oparciu o protokół Diffie-Hellman'a

W połączeniach przewodowych milcząco zakłada się, że dane będą przesłane z jednego punktu do drugiego w sposób bezbłędny. Rezygnacja z kabli pociąga za sobą konieczność zagwarantowania, aby tor radiowy był równie niezawodny. Sprawę komplikuje dodatkowo fakt, że specyfikacja USB 2.0 nie zakłada żadnych zabezpieczeń przed skutkami opóźnienia lub utraty danych. Urządzenia USB mają tylko dwa podstawowe zabezpieczenia przed błędami.

Pierwszym z nich jest cykliczny kod nadmiarowy CRC (Cyclic Redundancy Check), którego zadaniem jest odrzucanie pakietów przekłamanych, tzn. takich, w których występuje różnica między tym, co zostało wysłane i tym co odebrano. Suma kontrolna CRC jest obliczana przez host i dołączana do transmitowanego pakietu. Po odebraniu danych układ peryferyjny ponownie oblicza sumę kontrolną i porównuje z tą przesłaną przez host – gdy są identyczne, dane są uznawane za wolne od błędów. Obliczenie sumy kontrolnej jest zadaniem prostym, a jego implementacja w torze radiowym nie sprawia problemów.

Inaczej sprawa wygląda z drugim zabezpieczeniem: przepełnieniem licznika. Jest to rozwiązanie podobne do watchdoga spotykanego w mikrokontrolerach. Zbyt duże opóźnienie przy dostarczaniu pakietu sprawi, że licznik zliczy do swojej górnej wartości i tym samym magistrala USB uzna połączenie za zerwane. Ma to zapobiegać oczekiwaniu w nieskończoność na pakiety, które i tak nigdy nie dotrą – np. po fizycznym odłączeniu urządzenia od portu.

Przesłanie danych drogą radiową wymaga zamiany strumienia bitów na zmodulowany sygnał radiowy i późniejszej jego demodulacji. Proces ten może spowodować przekroczenie dopuszczalnego czasu, jaki wyznacza pracujący licznik. Sprawa jest jeszcze trudniejsza w przypadku układów wyposażonych tylko w jedną antenę: do nadawania sygnału i jego odbierania.

Komunikacja wireless USB ma charakter rozgłoszeniowy. Oznacza to, że na wysyłane komunikaty może odpowiedzieć każde urządzenie znajdujące się w otoczeniu. Konieczne jest zatem ustanowienie poprawnego, logicznego połączenia z docelowym urządzeniem. Jest to bardziej skomplikowane niż przy połączeniu przewodowym. Konieczne staje się wbudowanie mechanizmów pozwalających na określenie, które urządzenie ma odpowiedzieć na wezwanie hosta.

Zapewnienie bezpieczeństwa nawiązanego połączenia wymaga opracowania protokołu wymiany informacji, który nie pozwoli na przechwycenie danych przez nieuprawnione urządzenie pracujące w pobliżu. W specyfikacji USB 2.0 nie przewidziano takich rozwiązań, gdyż podsłuchanie wymiany informacji mającej miejsce w przewodzie jest praktycznie niemożliwe. Inaczej wygląda sytuacja w przypadku fal radiowych, które propagują się we wszystkich możliwych kierunkach. Ograniczeniem jest jednak dystans – konieczne byłoby zainstalowanie urządzenia szpiegującego w odległości do kilku metrów od pracującego bezprzewodowego USB. Utrudnia to znacznie kradzież danych, ale nie wolno ignorować tego zagrożenia.

Rozwiązaniem problemu jest szyfrowanie, co utrudnia odczyt lub zmianę danych przez osobę niepowołaną. Na niekorzyść takiego rozwiązania przemawia konieczność wymiany klucza z użyciem bezpiecznego kanału. Jedną z możliwości jest wymiana kluczy podczas pierwszego uruchomienia urządzeń. Należy jednak zagwarantować, że będą one same, tzn. bez obecności w zasięgu fal radiowych nieautoryzowanych jednostek.

Rys. 4. Pasmo radiowe wykorzystywane na potrzeby modulacji DS-UWB

Nowy i stary protokół – porównanie

Zapewnienie bezpieczeństwa danych, integralności przesyłanych pakietów i poprawnej współpracy z otoczeniem jest podstawowym wymogiem technologii zastępującej połączenie przewodowe. Oba protokoły: CableFree USB oraz Certified Wireless USB rozwiązują te problemy w różny sposób. Pierwszy z wymienionych zachowuje podział urządzeń na peryferyjne i hosty, tak jak to miało miejsce w USB 2.0. Obsługę toru radiowego pozostawiono specjalizowanym adapterom zintegrowanym wewnątrz tych urządzeń. Inaczej do tego podchodzą firmy rozwijające Certified Wireless USB. Na potrzeby transmisji radiowej przygotowano nowy protokół komunikacyjny. Jest on zbliżony do tego znanego z USB 2.0, ale nie jest identyczny.

Rozwiązania stosowane w CableFree USB zdają się zapewniać przewagę wynikającą ze zgodności z USB 2.0. Projektanci mogą szybko wprowadzić produkt na rynek bez konieczności znacznego modyfikowania dotąd stosowanych rozwiązań. Oznacza to także wygodę dla końcowego użytkownika, który nie będzie musiał wprowadzać modyfikacji do sytemu. Przykładem produktu oferowanego w ramach technologii CableFree jest czteroportowy hub Belkin przedstawiony na rys. 1. Współpracujące urządzenia peryferyjne są podłączane za pomocą przewodu do huba. Komunikacja z komputerem, a właściwie ze specjalnym adapterem wpinanym do portu USB komputera, odbywa się na drodze radiowej.

Technologia Certified Wireless USB wymaga przygotowania specyfikacji. Wstępne opracowanie, przedstawione w roku 2005, zostało rozszerzone o suplement, który definiuje komunikację z pracującymi w otoczeniu urządzeniami.

Konieczność przygotowania specyfikacji Certified Wireless USB okazała się korzystna dla konkurencji. Technologia CableFree USB pojawiła się na rynku jako pierwsza i zwiększa to szansę na ustanowienie CableFree standardem. Stosowanie Certified Wireless USB wymagać będzie ingerencji w oprogramowanie, co również jest czynnikiem niekorzystnym i utrudniającym implementację. Będzie to przyczyną dalszych opóźnień przy wprowadzaniu produktu na rynek.

Opracowanie nowej specyfikacji ma jednak poważną zaletą, jaką jest optymalizacja dla potrzeb komunikacji radiowej. Przekłada się to na lepsze przeciwdziałanie trudnościom, jakie mogą mieć miejsce podczas transmisji w torze radiowym oraz znacznie lepsze zarządzanie zużyciem energii. W dłuższej perspektywie może się to okazać korzystniejsze, niż rozwiązanie oferowane przez CableFree USB.

Modulacja w bezprzewodowym USB

Dwa sposoby modulacji zostały zgłoszone jako propozycje standardu: DS-UWB (Direct Sequence UWB) oraz OFDM-UWB (Orthogonal Frequency Division Multiplexing UWB). Do zalet DS-UWB należy zaliczyć prostotę. Możliwa jest praca w jednym z dwóch z podpasm (rys. 4.) lub w obu, bez powodowania interferencji z innymi, pracującymi w pobliżu sieciami. Wykorzystanie jedynie dwóch nośnych pozwala znaczenie uprościć konstrukcję nadajnika. Sposób modulacji zastosowany w DS-UWB również nie jest skomplikowany. Strumień danych bezpośrednio kontroluje nadajnik, włączając i wyłączając go w oparciu o BPSK (Binary Phase Shift Keying). System OFDM-UWB jest bardziej skomplikowany, gdyż wykorzystuje skokową zmianę kanałów (frequency hopping) do unikania interferencji z innymi urządzeniami (rys. 5). Rozwiązanie takie umożliwia eliminację silnie zakłóconych kanałów oraz pozwala na równoległą pracę kilku sieci bezprzewodowych wykorzystujących sąsiednie pasma.

Konieczny jest jednak znaczenie droższy i bardziej złożony nadajnik. Zwolennicy rozwiązania DS-UWB zauważają, że system OFDM-UWB pracuje znacznie gorzej w sytuacjach, gdy fale radiowe ulegają wielokrotnemu odbiciu. Dodatkowo do kontrolowania widma transmitowanego sygnału konieczne są specjalne manipulacje na kanałach. W Stanach Zjednoczonych do wyłącznego użytku systemu radiowego WiMedia przeznaczono 14 kanałów. Oczekuje się, że pozostałe kraje pozwolą na wykorzystanie przynajmniej większości z nich. W sytuacji, gdy niektóre z kanałów będą niedostępne, moduł WiMedia pominie je i będzie wykorzystywał tylko te dostępne. Układy te są na dobrej drodze, aby uzyskać światową akceptację prawną. Dwukanałowy moduł pracujący w systemie DS-UWB jest prawnie akceptowany jedynie w USA.

Problem opóźnienia sygnałów

Pojawienie się dwóch konkurencyjnych opracowań może być korzystne dla producentów sprzętu zainteresowanych inwestycjami w rozwój urządzeń Wireless USB. Mniej entuzjazmu wykażą za to projektanci, bo będą zmuszeni do dokładnego zapoznania się z obiema specyfikacjami, aby wybrać tę najlepiej dostosowaną do ich potrzeb. Na początku muszą oni rozważyć kwestię integralności sygnałów. Rozwiązanie oparte o Certified Wireless USB mają wbudowane mechanizmy redukujące wpływ szumów, zakłóceń oraz opóźnień na przesyłane dane. Rozbudowa specyfikacji USB 2.0 o te dodatkowe funkcje ma niestety swoje wady - organizacja USB-IF za szczególnie niedogodne uważa zmniejszenie szybkości transmisji danych z 480Mb/s do 360Mb/s. Ograniczenia tego pozbawione jest CableFree USB, jednakże kosztem dodatkowych wymagań stawianych pracującym urządzeniom, co z kolei zmniejsza komfort pracy użytkownika.

Jedno z rozwiązań tego problemu, nazwane ExtremeUSB, zaproponowała firma Icron Technologies (rys. 2). Host inicjujący połączenie oczekuje, że urządzenie peryferyjne prześle potwierdzenie przed upływem określonego czasu. Technologia ExtremeUSB wprowadza dodatkowe dwa podsystemy: lokalny i zdalny. Stosowana jest tu pewna sztuczka. Host rozpoczyna nawiązywanie połączenia z układem peryferyjnym, ale jest ono anulowane przez lokalny podsystem, który wysyła potwierdzenie negatywne NAK, tzn. informuje hosta, że połączenie nie może być nawiązane. Następnie to lokalny podsystem rozpoczyna nawiązywanie połączenia ze zdalnym podsystemem współpracującym z układem peryferyjnym i po otrzymaniu odpowiedzi zapisuje ją w podręcznej pamięci. Oczekuje na drugą próbę ustanowienia połączenia przez host i po jej wystąpieniu natychmiast odsyła potwierdzenia zapisane uprzednio w podręcznej pamięci. Efekt jest taki, że połączenie zostaje ustanowione bez oczekiwania na odpowiedź urządzenia peryferyjnego.

Zapobiega to powstawaniu opóźnień w pracy hosta. Ma to oczywiście swoją cenę: od hosta wymagana jest dwukrotna inicjacja połączenia, co może skutkować spowolnieniem pracy całego systemu.

Rys. 5. Kanały wykorzystane w opracowaniu stowarzyszenia WiMedia

Współpraca z otoczeniem

Różnica pomiędzy technologiami CableFree oraz Certified Wireless jest widoczna także przy współpracy z urządzeniami peryferyjnymi i w sposobie zapewniania bezpieczeństwa wymiany danych. Dla rozwiązań opartych o CableFree, hub jest dostarczany od razu z dopasowanym adapterem podłączanym do portu USB komputera. Zapewnia to szyfrowanie danych i bezproblemowe nawiązanie połączenia z układem docelowym. Wewnętrzne rejestry są tak skonfigurowane, aby hub i adapter mogły nawiązać ze sobą poprawne połączenie. Komunikacja polega na przesłaniu całej ramki danych odebranej z portu USB i dodatkowych nagłówków, które są wymagane przez tor radiowy. Podczas pierwszego uruchomienia, można tak ustawić adapter oraz hub, aby komunikowały się wyłącznie ze sobą. Dość dobrze chroni to przed nieautoryzowanym dostępem, ale w żaden sposób nie zapobiega podsłuchiwaniu pakietów. Ma to również dodatkową wadę w postaci utrudnionej współpracy z urządzeniami pochodzącymi od różnych producentów. Jednak dla użytkowników domowych nie ma to praktycznie żadnego znaczenia. Warto zauważyć, że w takim „sztywnym” połączeniu może być zawarty numer identyfikacyjny urządzenia oraz prywatny klucz szyfrujący, które mogą zostać podsłuchane. Szyfrowanie zapewnia bezpieczeństwo, ale kosztem złożoności protokołu i zmniejszenia wydajności. Z tych względów technologia CableFree USB może być pozbawiona szyfrowania.

Inne podejście towarzyszyło powstaniu Certified Wireless USB, które zostało stworzone pod kątem urządzeń nowej generacji i w którym przewidziano możliwość współpracy urządzeń pochodzących od różnych producentów.

Dostępne są dwie metody nawiązywania połączenia z urządzeniami pracującymi w sąsiedztwie: przewodowa i bezprzewodowa. Pierwsza z nich wymaga jednorazowego, fizycznego połączenia pomiędzy hostem a urządzeniem peryferyjnym. Następuje wtedy wymiana kluczy szyfrujących oraz informacji potrzebnych do prowadzenia komunikacji, które są następnie przechowywane w wewnętrznej pamięci każdego z urządzeń. Od tego momentu możliwe jest automatyczne ustanawianie bezpiecznej, szyfrowanej wymiany danych bez potrzeby ponownego, fizycznego łączenia urządzeń. Pamięć hosta zawiera rekordy przechowujące dane dla każdego, współpracującego urządzenia. Podobnie, urządzenie peryferyjne musi mieć zapisane dane wymagane do komunikacji z przynajmniej jednym hostem. Dla użytkowników domowych przewidziano hub z adapterem, który umożliwia obsługę urządzeń pracujących w standardzie USB 2.0.

Zaletą Certified Wireless USB jest współpraca z urządzeniami różnych producentów. Umożliwia to integrację z komputerem i urządzeniami peryferyjnymi, gdyż nie ma potrzeby odgórnego definiowania, który sprzęt ma ze sobą współpracować. Technologia Certified Wireless USB staje się przez to potencjalnym zamiennikiem dla całej magistrali USB, jednakże złożoność użytego protokołu może być nieodpowiednia w niektórych zastosowaniach. Okazuje się, że rozwiązania oparte o CableFree USB są tańsze i prostsze w implementacji, co może zdecydować o ich rynkowym powodzeniu.

Protokół radiowy

Pojedynek obu projektów bezprzewodowego USB rozpoczął się od współzawodnictwa przed komisją IEEE. Chodziło o uznanie jednego z nich jako obowiązującego standardu do budowy małych sieci radiowych. Problem polegał na znalezieniu takiego rozwiązania, które pozwoli na krótkich dystansach osiągnąć szerokie pasmo transmisji, ale bez powodowania interferencji z innymi urządzeniami radiowymi. Zastosowany system UWB generuje sygnały, które mają postać krótkotrwałych impulsów i trwają kilka okresów fali nośnej. Widmo transmitowanego sygnału jest rozprzestrzenione w całym paśmie i zawiera wiele harmonicznych o podobnych amplitudach składających się na całkowitą energię sygnału. Taki rozkład mocy pozwala systemom UWB dzielić częstotliwości radiowe z innymi modułami radiowymi pracującymi w znacznie węższym paśmie.

Który standard wygra?

Trudno przewidzieć, które z tych rozwiązań zyska większą popularność. Doświadczenie pokazuje, że często pierwszeństwo na rynku jest wystarczającym argumentem do pokonania konkurencji i znaczenia nie mają rzeczywiste wady i zalety. Pierwsze było CableFree USB, ale w tym samym czasie Certified Wireless USB zyskało wsparcie USB-IF i wpływowych firm z branży. To drugie rozwiązanie cechować się może wysoką jakością i wsparciem dla urządzeń różnych producentów. Każdy z wariantów oferuje szereg zalet i może się zdarzyć tak, iż obie koncepcje znajdą swoje miejsce na rynku.

Jakub Borzdyński

Zobacz również