Protokół Mobile IP

ITpedia

Protokół Mobile IP, choć opracowany już stosunkowo dawno, obecnie znajduje coraz więcej zastosowań. Jednym z nich jest rozwiązanie problemu przełączania mobilnych terminali pomiędzy różnymi bezprzewodowymi sieciami dostępowymi. Takie próby przeprowadziło już wielu operatorów i dostawców bezprzewodowego dostępu do Internetu (WISP) na świecie.

Świat teleinformatyki to środowisko heterogeniczne. Dziś niemal każdy operator ma kilka różnych technologicznie sieci dostępowych do realizacji określonych usług. Z punktu widzenia abonenta oznacza to konieczność używania coraz większej liczby terminali, numerów itp… Dodatkową kwestią jest problem mobilności - przemieszczając się, użytkownik odwiedza różne sieci dostępowe, tworzące nakładające się wyspy (overlay networks), np… GPRS, EDGE, UMTS, WLAN itp. W sytuacji gdy ma on terminal działający tylko w sieci określonego typu (np… Z kartą WLAN), nie jest w stanie korzystać z innych technologii dostępnych w danej lokalizacji. Gdy jednak dysponuje terminalem wielointerfejsowym (np… GPRS/WLAN), musi ręcznie wybierać sieci, nie mając szans na zapewnienie ciągłości sesji TCP - w większości przypadków konieczny jest restart aplikacji sieciowych.

W odniesieniu do miedzysystemowego przełączania zarządzanie mobilnością może się odbywać na trzech poziomach:  - na poziomie warstwy aplikacji - realizowane przez mechanizmy specyficzne dla konkretnych aplikacji, przy braku przenośności na aplikacje standardowe (korzystające ze standardowego stosu protokołów TCP/IP);  - zarządzanie na poziomie warstwy sieci - zastosowanie protokołu Mobile IP 9lub mniej popularnego protokołu Celluar IP);  - zarządzanie na poziomie warstwy łącza danych - mechanizmy ściśle związane z konkretną techniką dostępu, np. w sieci GPRS.
W odniesieniu do miedzysystemowego przełączania zarządzanie mobilnością może się odbywać na trzech poziomach: - na poziomie warstwy aplikacji - realizowane przez mechanizmy specyficzne dla konkretnych aplikacji, przy braku przenośności na aplikacje standardowe (korzystające ze standardowego stosu protokołów TCP/IP); - zarządzanie na poziomie warstwy sieci - zastosowanie protokołu Mobile IP 9lub mniej popularnego protokołu Celluar IP); - zarządzanie na poziomie warstwy łącza danych - mechanizmy ściśle związane z konkretną techniką dostępu, np. w sieci GPRS.

Rozwiązaniem jest koncepcja tzw. Inteligentnych terminali wielointerfejsowych, które przy wykorzystaniu odpowiednich mechanizmów zarządzania mobilnością przełączają się pomiędzy różnymi sieciami, zapewniając jak najlepszą jakość usług i/lub minimalizację kosztów ponoszonych przez abonenta. Zastosowanie odpowiednich mechanizmów zarządzania mobilnością umożliwia automatyczne (realizowane wyłącznie przez terminal lub przez terminal i sieć) przełączanie bez konieczności dodatkowych interakcji ze strony użytkownika. Prostym przykładem praktycznego zastosowania tej koncepcji jest przełączanie z sieci GPRS do sieci WLAN, np… W sytuacji, gdy podróżujący pociągiem użytkownik, korzystając z sieci komórkowej, wjeżdża na stację, na której funkcjonuje hot spot WLAN operatora sieci komórkowej. Zakładając, że pociąg stoi na stacji przez kilka minut, użytkownik może wykorzystać dostęp do sieci WLAN bez straty czasu na rekonfigurację połączenia i zalogowanie się do sieci - terminal po wykryciu sieci WLAN automatycznie dokonuje przełączenia, nie zrywając aktywnych sesji TCP.

Tego typu przykłady można mnożyć, szczególnie w odniesieniu do coraz popularniejszych urządzeń typu PDA, mających wbudowaną funkcjonalność GPRS/WLAN. Co więcej, przełączanie międzysystemowe można zastosować w odniesieniu do sieci stacjonarnych, np… Używając odpowiednich przystawek Bluetooth dla terminali stacjonarnych, umożliwiających korzystanie ze stacjonarnego dostępu do Internetu w ramach zasięgu osobistej sieci domowej (przełączanie GPRS - Bluetooth).

W międzysystemowym przełączaniu istotny jest fakt, iż mechanizmy zarządzania mobilnością na poziomie warstwy sieci jako jedyne zapewniają zupełną niezależność technologiczną, a co za tym idzie - elastyczność w ramach konkretnych implementacji. W przeciwieństwie do takich rozwiązań jak protokół SIP, w którym mechanizmy zarządzania mobilnością są uzależnione od konkretnej aplikacji, Mobile IP umożliwia w tym względzie dowolność. Podobna sytuacja dotyczy procedur stosowanych w warstwach niższych (np… W GSM) - zarządzanie mobilnością na poziomie warstwy łącza danych. Niezależność Mobile IP względem konkretnej technologii dostępowej pozwala na integrację pomiędzy dowolnymi systemami dostępowymi opartymi na stosie protokołów TCP/IP, co ma znaczenie, gdy chodzi o nowe standardy dla sieci komunikacji ruchomych, takie jak 802.16e.

Koncepcja Mobile IP

Podstawowa koncepcja Mobile IP jest stosunkowo prosta. Węzeł mobilny ma swój stały adres domowy (Home IP address), który jest jego unikatowym identyfikatorem w sieci. Aby jednak rozwiązać problem reguł adresacji i rutingu pakietów w klasycznych sieciach IP, implementacja Mobile IP (v4) wymaga wprowadzenia do sieci pewnych dodatkowych węzłów, których istnienie umożliwia korzystanie ze stałego adresu domowego. Węzłami tymi są:

a) agent macierzysty/domowy (Home Agent, HA) - to ruter w macierzystej sieci mobilnego węzła, który tuneluje datagramy, aby dostarczyć je węzłowi ruchomemu w sytuacji, gdy jest on poza swoją siecią macierzystą (węzeł ten ma informację o aktualnej lokalizacji węzła mobilnego);

b) agent zdalny (Foreign Agent, FA) - ruter w sieci, do której węzeł mobilny jest obecnie podłączony (visited network) i który zapewnia usługi zarejestrowanemu węzłowi ruchomemu (agent zdalny detuneluje i dostarcza do węzła mobilnego datagramy, które podległy tunelowaniu przez agenta macierzystego węzła ruchomego).

Istnienie agenta zdalnego nie jest jednak konieczne - wynika to z tego, że Mobile IP może funkcjonować w ramach trybu z agentem zdalnym lub w tzw. Trybie z adresem współlokowanym. W trybie z agentem zdalnym tunel jest pomiędzy węzłami HA oraz FA, a węzeł mobilny otrzymuje pakiety od węzła FA w ramach standardowych mechanizmów rutingu IP. Zaletą takiego rozwiązania jest możliwość przydziału adresów IP terminalom mobilnym przez ruter FA, dzięki czemu jeden adres IP wystarcza do obsługi wielu terminali mobilnych. Niestety, wymusza to jednak instalację węzłów FA w każdej podsieci, co z punktu widzenia operatorów oznacza znaczny wzrost kosztów implementacji. Alternatywą dla sieci z agentem zdalnym jest tzw. tryb ze współlokowanym adresem (CCoA - Collocated Care-of-Address). Idea takiej architektury polega na tunelowaniu pakietów bezpośrednio pomiędzy węzłem HA a terminalem (wymaga to jednak przydziału adresu IP dla terminalu z puli DHCP podsieci wizytowanej). W takiej konfiguracji terminal używa dwóch adresów IP: tymczasowego - CoA (Care-of-Address) - do obsługi zakończenia tunelu, oraz domowego, który jest „widziany” przez wyższe warstwy sieciowe. Zaletą takiego podejścia jest minimalizacja kosztów inwestycji - implementacja rozwiązania wymaga jedynie uruchomienia węzła domowego (HA).

Zastosowanie mechanizmu tunelowania przez węzeł HA umożliwia używanie przez węzeł mobilny stałego adresu IP (globalnie) bez względu na podsieć, z której aktualnie korzysta. Gdy pakiety są wysyłane do terminalu mobilnego przez węzeł odpowiadający (CN - Correspondent Node), trafiają one (dzięki standardowym mechanizmom rutingu) do węzła HA. Węzeł HA przechowuje aktualny adres tymczasowy węzła mobilnego i kapsułkuje otrzymany od węzła CN pakiet w tunelu, którego zakończeniem jest agent zdalny lub węzeł mobilny. W drugą stronę (komunikacja węzeł mobilny -> węzeł CN) sytuacja jest analogiczna, z tą różnicą, że w architekturze z agentami zdalnymi pakiety nie muszą być tunelowane do węzła HA. Zastosowanie opisanych mechanizmów tworzy fundamenty realizacji w pełni heterogenicznego środowiska sieciowego, w którym użytkownik może płynnie przełączać się między różnymi bezprzewodowymi sieciami dostępowymi. Jedynym problemem w takim środowisku jest konieczność podejmowania decyzji o przełączeniu wyłącznie przez terminal (bez dodatkowych interakcji ze strony sieci), ale w dobie terminali dysponujących wielkimi mocami obliczeniowymi nie stanowi to większego problemu. Typowa procedura międzysystemowego przełączenia opartego na Mobile IP jest następująca: terminal po wykryciu nowej sieci (np… Sieci o lepszych parametrach transmisyjnych) wysyła aktualizację adresu CoA do węzła domowego. Po otrzymaniu aktualizacji agent domowy rozpoczyna tunelowanie datagramów do nowego adresu CoA, dzięki czemu możliwe jest utrzymanie aktywnej sesji TCP.

Sporym problemem w obrębie działania Mobile IP jest stosowanie translacji adresów NAT/NAPT (bardzo rozpowszechnionych, głównie ze względu na ograniczone zasoby przestrzeni adresowej IPv4). Rozwiązaniem jest wprowadzona stosunkowo niedawno do Mobile IP funkcja NAT Traversal, która jest zaimplementowana w agencie domowym. Polega ona na zestawianiu tunelu UDP pomiędzy agentem domowym a węzłem ruchomym, co ma zapewniać transmisję danych po rejestracji węzła u agenta. Włączenie mechanizmu tunelowania UDP odbywa się po wykryciu różnicy pomiędzy adresem CoA a adresem źródłowym (oznacza to, iż na drodze pakietów znajduje się ruter dokonujący translacji adresów). Istotnymi elementem jest też funkcja tunelowania wstecznego (szczególnie istotnego w sytuacji, gdy rutery brzegowe aktualnie wykorzystywanej sieci odrzucają pakiety z adresami źródłowymi nienależącymi do puli danej podsieci - standardowe mechanizmy Mobile IP zakładają, że pakiety wysyłane przez terminal w polu adresu źródłowego podają adres domowy). W odniesieniu do obecnie stosowanych konfiguracji sieciowych obsługa obu wymienionych funkcji jest konieczna.

Jeśli chodzi o obsługę tuneli VPN, to w koncepcji Mobile IP pewną niedogodnością jest różna lokalizacja w modelu OSI różnych typów protokołów tunelujących (L2 lub L3) względem Mobile IP (w przypadku wersji L2 - Mobile IP korzysta z tunelowania VPN). Większość producentów rozwiązuje tego typu problem, umożliwiając stworzenie uniwersalnego profilu sieciowego pozwalającego na skonfigurowanie dwóch agentów domowych (dla intranetu i Internetu). Takie podejście pozwala na zachowanie mobilności w połączeniu z możliwością korzystania z tuneli VPN, np… Przy dostępie do wewnętrznych zasobów intranetu.

Na świecie powstało wiele implementacji protokołu Mobile IP. W początkowym stadium rozwoju były to przede wszystkim implementacje akademickie, dla systemów open source (np… Linux, FreeBSD). Popularnym przykładem takiej implementacji jest Dynamics HUT Mobile IP (implementacja agentów i klienta dla systemu Red Hat Linux). Elastyczność i duże możliwości usługowe Mobile IP szybko zwróciły uwagę producentów oprogramowania, czego konsekwencją było pojawienie się komercyjnych implementacji Mobile IP. Co więcej, producenci ci dostosowali mechanizmy Mobile IP do koncepcji terminali wielointerfejsowych z funkcjonalnością międzysystemowego przełączania. Przykłady komercyjnych implementacji Mobile IP można znaleźć już w ofertach wielu firm. W większości przypadków dostępne użytkownikom funkcje są zbliżone - istotne różnice obejmują przede wszystkim interfejs konfiguracyjny oprogramowania. Istotna jest kwestia kompatybilności klientów Mobile IP ze stosowanymi agentami. Zwykle rolę agentów pełnią odpowiednio skonfigurowane rutery (np… Urządzenia Cisco z uruchomioną funkcjonalnością HA lub FA). Pojawiają się jednak implementacje czysto programowe, uruchamiane na dowolnych hostach w publicznej sieci IP. Aby uniknąć ewentualnych problemów związanych z kompatybilnością, przeprowadza się testy zgodności.

W odniesieniu do przyszłych zastosowań Mobile IP ważnym elementem jest określenie roli tego protokołu w globalnej infrastrukturze bezprzewodowych sieci dostępowych. Jak twierdzą producenci oprogramowania, najistotniejszą rolą jest funkcjonalność międzysystemowego przełączania na poziomie sieci IP. W sposób poglądowy przedstawiono to na rys. poniżej. Linią czerwoną zaznaczono handover realizowany przez protokół Mobile IP, a linią pomarańczową - przez mechanizmy specyficzne dla konkretnej sieci dostępowej. Taka architektura wynika z faktu, iż w ramach każdej z sieci dostępowych, użytkownik ma stały (na okres korzystania z danej usługi) adres IP niezależnie od jego lokalizacji (przykładowo, użytkownik, który zalogował się do sieci GPRS i w trakcie aktywnej sesji zmienia swoje położenie, zachowuje stały adres IP). Z kolei zmiana sieci dostępowej (np… z WLAN na UMTS) oznacza konieczność stosowania mechanizmów przełączania Mobile IP.

Tym, co tak naprawdę jest istotne dla użytkowników terminali mobilnych, jest automatyzacja procesów. Dzisiaj mamy wiele kart, PIN-ów, kodów dostępu, haseł itp… Każda z sieci wymaga osobnych mechanizmów uwierzytelnienia, a przy tym nie ma możliwości płynnego przełączania między nimi. Mobile IP ma rozwiązać problem międzysystemowej mobilności terminali na poziomie sieci IP. Chociaż stosowanie mechanizmów tunelowania przez HA prowadzi do zwiększenia opóźnień w sieci i zmniejszenia dostępnej przepustowości, to jednak koncepcja wielointerfejsowych terminali wyposażonych w oprogramowanie Mobile IP jest krokiem na drodze do systemów All-IP. Jak twierdzą specjaliści, wiele obecnych problemów związanych z protokołem Mobile IP zostanie rozwiązanych w ramach wersji Mobile IPv6, która eliminuje konieczność stosowania agentów zdalnych, jednocześnie zwiększając efektywność mechanizmów zarządzania mobilnością.

-
-