Documente Academic
Documente Profesional
Documente Cultură
MOBILITATE IP
1
Figura 6.1
Ambele opţiuni par viabile la o primă vedere şi dacă s-ar încerca soluţiile pentru un număr redus
de dispozitive, ar putea funcţiona. Din păcate ambele sunt ineficiente, chiar nepractice şi nici scalabile,
ceea ce înseamnă că, în cazul în care milioane de dispozitive ar încerca aceste soluţii am avea:
- Schimbând adresa IP de fiecare dată când un dispozitiv se deplasează, avem un consum de timp
şi în mod normal este necesară o intervenţie manuală. În plus, întreaga stivă TCP/IP trebuie repornită,
întrerupând orice legătură existentă.
2
- Dacă modificăm adresa IP a dispozitivului, cum vom comunica schimbarea adresei altor
dispozitive din Internet? Aceste dispozitive nu vor avea decât adresa de domiciliu a nodului mobil, ceea
ce înseamnă că nu vor fi capabile să-l localizeze chiar dacă îi dăm o altă adresă marcând noua locaţie.
- Rutarea bazată pe întreaga adresă a gazdei implică faptul că întregul Internet va fi inundat cu
informaţii de rutare pentru fiecare dispozitiv mobil. Luând în considerare efortul imens depus pentru
dezoltarea tehnologiilor de adresare (clase de adrese) având ca scop reducerea dimensiunilor tabelelor de
rutare, este evident că nimeni nu va dori o astfel de evoluţie.
Soluţia acestor dificultăţi este definirea unui nou protocol special pentru a suporta dispozitive
mobile, care să se adauge Protocolului Internet original. Acest protocol, numit IP Mobility Support for
IPv4, a fost definit iniţial în RFC 2002, dezvoltat în RFC 3220 şi acum este descries în RFC 3344.
Numele formal aşa cum este dat în titlul documentului fiind prea lung, tehnologia este numită uzual
Mobile IP atât în document, cât şi de către “reţelişti”.
Pentru a-i asigura succesul, proiectanţii Mobile IP au trebuit să vină în întâmpinarea mai multor
obiective. Protocolul rezultat a avut următoarele atribute şi facilităţi cheie:
Mobile IP completează aceste obiective prin implementarea unui sistem de transmitere pentru
dispozitivele mobile. Când un dispozitiv mobil se găseşte în reţeaua de domiciliu (“home”) va funcţiona
normal. Când se va deplasa într-o reţea diferită, datagramele vor fi trimise din reţeaua sa de domiciliu
către noua locaţie. Aceasta permite dispozitivelor normale şi ruterelor care nu cunosc Mobile IP să
continue să opereze ca şi când dispozitivul mobil nu s-a deplasat. Sunt necesare servicii suport speciale
3
pentru a implementa Mobile IP, pentru a permite activităţi cum ar fi posibilitatea ca dispozitivul mobil
să îşi determine poziţia, să poată spune reţelei de domiciliu unde să îi transmit mesajele, şi altele.
Mobile IP are limitări certe într-un mediu wireless. A fost proiectat pentru a manevra mobilitatea
dispozitivelor, dar numai o mobilitate relativ rară, din cauza volumului de operaţii implicate pentru
fiecare schimbare. Această încărcare nu reprezintă mare lucru dacă computerul se mută la o săptămână,
sau o dată pe zi, sau o dată pe oră. Mobile IP a fost proiectat sub ipoteza că punctul de ataşare la reţea nu
se modifică mai mult de o dată pe secundă.
De asemenea, Mobile IP a fost prevăzut să fie utilizat cu dispozitive care menţin o configuraţie IP
statică. Întrucât este necesar ca dispozitivele să-şi cunoască întotdeanuna identitatea propriei reţele şi
adresa IP, este mult mai dificil de utilizat cu un dispozitiv care obţine o adresă IP dinamic, utilizând un
protocol ca DHCP.
Dynamic Host Configuration Protocol (DHCP) este un protocol pentru configurarea gazdelor,
utilizat curent în reţelele TCP/IP moderne. DHCP constă în două component majore: un mechanism de
alocare a adresei şi un protocol care permite clienţilor să ceară şi serverelor să furnizeze informaţii de
configurare.
4
Apar şi câteva dezavantaje. Oficiul de domiciliu va solicita o plată pentru serviciul oferit. Este
necesar şi un aranjament special în oraşul în care te deplasezi. De fiecare dată când te deplasezi trebuie
să iei legătura cu oficiul de domiciliu. Şi poate cel mai important fapt, fiecare mesaj este transmis de
două ori, o dată către adresa de domiciliu şi a doua oară către adresa în care te-ai deplasat.
Mobile IP lucrează similar cu serviciul poştal. Consultantul în discuţie este un dispozitiv mobil
care se deplasează dintr-o reţea în alta. Fiecare reţea poate fi considerată ca fiind un alt oraş, iar inter-
reţeaua de rutere poate fi privită ca sistemul poştal. Ruterul care conectează o reţea la Internet este un fel
de oficiu poştal pentru acea reţea, din perspective IP.
Nodul mobil este rezident în mod normal în reţeaua de domiciliu (home network), care este cea
indicată de identificatorul de reţea (network ID) din adresa IP. Dispozitivele din inter-reţea dirijează
întotdeauna conform adresei IP, astfel că datagramele ajung întotdeauna la un ruter al domiciliului
dispozitivului. Când dispozitivul se deplasează într-o altă reţea, ruterul de domiciliu (home router)
interceptează aceste datagrame şi le transmite pe adresa curentă a dispozitivului. Poate să le trimită
direct către dispozitiv folosind eventual o adresă temporară, sau poate să trimita unui ruter ataşat reţelei
în care se află dispozitivul în vederea unei distribuiri finale.
Modul cum operează Mobile IP poate fi ilustrat de figura 6.2. Diagrama din figura 6.2 este
similară celei din figura 6.1, dar are implemetat Mobile IP. Ruterul de domiciliu al nodului mobil are rol
de agent de domiciliu (home agent), iar ruterul din Tokyo are rol de agent extern (foreign agent).
Mobilul are asociată temporar o adesă “care-of” care va fi utilizată cât timp se află la Tokyo. În pasul
#1, clientul distant transmite o datagramă către dispozitivul mobil utilizând adresa sa de domiciliu, ca şi
5
înainte. Aceasta ajunge, ca de obicei, la Londra. În pasul #2, agentul de domiciliu încapsulează
datagrama în una nouă şi o transmite dispozitivului mobil la Tokyo.
După cum s-a observant, Mobile IP a avut nevoie de ajutorul a două rutere. De fapt, există trei
jucători principali care implementează protocolul :
- Nodul mobil (Mobile Node): Este dispozitivul mobil, cel care se deplasează prin inter-reţea.
- Agentul de domiciliu (Home Agent): Acesta este un ruter din reţeaua de domiciliu (home
network) care este responsabil de interceptarea datagramelor destinate nodului mobil şi transmiterea lor
către acesta când se deplasează. De asemenea implementează alte funcţii support necesare funcţionării
protocolului.
- Agentul extern (Foreign Agent): Este un ruter din reţeaua în care a ajuns dispozitivul mobil. El
funcţionază ca o altă casă pentru nodul mobil. În funcţie de modul de operare, el poate recepţiona
datagramele transmise de către agentul de domiciliu şi le poate transmite către nodul mobil. De
asemenea va distribui informaţii de mobilitate pentru a face operaţional Mobile IP. Este posibil ca în
unele implementări ale Mobile IP agentul extern să nu fie necesar, dar uzual este considerat parte
integrantă a protocolului.
Terminologie
Anunţ din partea agentului (Agent Advertisement): este un mesaj trensmis de către ruter pentru a-
şi anunţa prezenţa.
Autentificare (Authentication): process de verificare (utilizând tehnici de criptare) a identităţii
sursei mesajului.
Adresa care-of: punctul terminal al tunelului care ajunge la nodul mobil. Protocolul utilizează
două tipuri de astfel de adrese:
- adresă care-of a agentului extern ("foreign agent care-of address"): adresa agentului extern la
care nodul mobil este înregistrat
- "co-located care-of address": o adresă locală obţinută extern cu care este asociat nodul mobil.
Nodul corespondent (Correspondent Node): perechea cu care nodul mobil corespondează. Nodul
corespondent poate fi mobil sau staţionar.
Reţeaua străină (Foreign Network): orice altă reţea diferită de reţeaua de domiciliu a nodului
mobil.
Adresa de domiciliu (Home Address): o adresă IP asociată dispozitivului pe o perioadă lungă de
timp. Ea rămâne neschimbată cât timp nodul este conectat la Internet.
Reţeaua de domiciliu (Home Network): O reţea, posibil virtuală, care se găseşte înscrisă în adresa
de domiciliu a nodului mobil. Mecanismele de rutare IP standard vor livra datagramele destinate adresei
de domiciliu a nodului mobil reţelei de domiciliu a nodului mobil.
Legătură (Link): o facilitate, un mediu prin care nodurile pot comunica. O legătură se găseşte sub
nivelul reţea.
Adresă la nivel legătură de date (Link-Layer Address): adresa utilizată pentru a identifica punctul
final al unei comunicaţii peste o legătură fizică. Tipic, o astfel de adresă este adresa MAC (Media
Access Control)
Agent de mobilitate (Mobility Agent): atât un agent de domiciliu, cât şi un agent extern.
6
Conexiunea mobilităţii (Mobility Binding): asocierea dintre o adresă de domiciliu şi o adresă care-
of realizată pe o anumită perioadă de timp.
Asociere mobilă securizată (Mobility Security Association): o colecţie de contexte de securitate
între o pereche de noduri care se aplică protocolului Mobile IP de schimb de mesaje. Fiecare context
indică un anumit mod şi algoritm de autentificare, o secretizare (cheie publică, cheie privată) şi un stil de
protecţie a răspunsului.
Nod (Node): o gazdă sau un ruter.
Tunel (Tunnel): o cale urmată de datagrame încapsulate. O datagramă încapsulată este transmisă
spre un agent cunoscut capabil să decapsuleze, care decapsulează datagramele şi le livrează corect
destinaţiei finale.
Reţea vizitată (Visited Network): altă reţea decât reţeaua de domiciliu, la care nodul mobil este
conectat curent.
Lista vizitatorilor (Visitor List): o listă a nodurilor mobile care vizitează un agent extern.
Presupunem că dispozitivul mobil s-a deplasat într-o reţea străină. La prima pornire şi conectare la
reţea, nu se poate conecta. Nu ştie că se găseşte într-o altă reţea. Va trebui să găsească un agent extern în
acea reţea. Va trebui să ştie ce adresă poate utiliza în acea reţea. Va trebui să comunice cu agentul de
domiciliu să îl anunţe în ce reţea se găseşte pentru ca acesta să îi poată redirecţiona mesajele.
Pentru toate acestea, Mobile IP utilizează un set de funcţii. Pentru a vedea cum acţionează aceste
funcţii, vom evidenţia câţiva paşi din operarea generală a Mobile IP.
1. Agenţii de mobilitate (externi sau de domiciliu) anunţă prezenţa lor printr-un mesaj “Agent
Advertisement”. Un nod mobil poate. Opţional, solicita un mesaj de anunţ al agentului de la oricare
dintre agenţii de mobilitate ataşaţi reţelei în care se află prin transmiterea unui mesaj de solicitare
“Agent Solicitation”.
2. Nodul mobil primeşte anunţul agentului şi pe baza lui determină dacă se găseşte în reţeaua de
domiciliu sau în reţea străină.
3. Dacă nodul mobil decide că se găseşte în reţeaua de domiciliu, va opera fără servicii de
mobilitate. Dacă s-a reîntors în reţeaua de domiciliu în care este înregistrat ca fiind într-o reţea străină,
nodul mobil se va dezînregistra la agentul de domiciliu printr-un schimb de mesaje “Registration
Request” şi “Registration Reply”.
4. Când un nod mobil detectează că s-a mutat într-o reţea străină, va obţine de la agentul extern o
adresă care-of. Această adresă poate fi determinată din anunţurile agentului extern (adresa care-of a
agentului extern), sau printr-un mecanism extern ca DHCP, caz în care obţine o adresă colocated care-
of.
5. După obţinerea adresei care-of, nodul mobil se va înregistra la agentul de domiciliu cu această
nouă adresă printr-un schimb de mesaje “Registration Request” şi “Registration Reply”.
6. Datagramele trimise către adresa de domiciliu a nodului mobil vor fi interceptate de către
agentul de domiciliu, tunelate de către acesta către adresa care-of a nodului mobil, recepţionate în
punctul terminus al tunelului (care este fie agentul extern, fie nodul mobil însuşi) şi în final livrate
nodului mobil.
7. În sensul invers, datagramele transmise de către nodul mobil sunt în general livrate utilizând
mecanismele de rutare IP standard, nefiind necesar să treacă pe la agentul de domiciliu.
7
6.3. Adresarea Mobile IP
FigurA 6.3: Operarea Mobile IP cu o adresă Foreign Agent “Care-Of”
8
Diagrama este similară cu Figura 6.2, exceptând faptul că faptul că, în loc de o adresa co-located,
aici se utilizează o adresă foreign agent care-of. Aceasta înseamnă că adresa care-of actuală este cea a
agentului extern. Pasul #1 este acelaşi ca şi în cazul figurii 6.2, dar în pasul #2 agentul de domiciliu nu
va mai trimite direct nodului mobil, ci agentului extern. În pasul #3 agentul extern va desface pachetul
primit de la agentul de domiciliu şi va livra datagrama originală nodului mobil. Tipic, această acţiune se
realizează la nivel doi.
Adresa foreign agent care-of este considerată ca fiind tipul utilizat în Mobile IP classic, în care
există atât agent de domiciliu, cât şi agent extern. Cu toate că pare mai puţin eficient decât co-located
care-of, oferă totuşi câteva avantaje imortante. Unul este acela că o adresă foreign agent care-of poate fi
utilizată de către mai multe noduri mobile care se află în vizită în acea reţea. Datagramele tuturor
nodurilor mobile vor fi transmise agentului extern care va asigura livrarea individuală către fiecare nod.
Întrucât nodurile mobile utilizează aceeaşi adresă, nu vor fi necesare adrese suplimentare, nu se va
depune un efort suplimentar pentru fiecare nod mobil.
Adresa co-located care-of are avantajul că traficul va fi dirijat direct de la agentul de domiciliu
către nodul mobil. În acest tip de aranjament este posibil ca un nod mobil să se deplaseze într-o reţea în
care agentul extern să lipsească. Acest fapt implică implementarea tuturor funcţiilor de comunicare
realizate în mod normal de către agentul extern la nivelul agentului de domiciliu.
În cazul adresei co-located se mai pune problema obţinerii adresei temporare. În majoritatea
reţelelor străine este posibilă obţinerea automată a unei adrese IP utilizând un protocol ca DHCP, dar,
dacă nu, trebuie totuşi asociată o adresă temporară. Oricum, o parte din spaţiul limitat de adrese IP al
reţelei vizitate trebuie rezervat pentru noduri mobile, fiecare dintre acestea utilizând o astfel de adresă pe
intervalul cât sunt prezente în reţea.
Adresa foreign agent care-of este preferată datorită naturii sale mult mai automate, datorită
prezenţei unui agent extern în reţea. Considerând că toate datagramele vor fi dirijate către un singur ruter
în reţeaua vizitată, se salvează o mulţime de adrese IP. Adresele co-located vor fi utilizate atunci când
nu există agent extern, sau, chiar în prezenţa agentului extern, când conexiunea se realizează pe termen
lung.
9
- Comunicarea agent-nod (Agent/Node Communication): primul pas îl constituie stabilirea
contactului cu un agent al reţelei la care este conectat nodul mobil. Sunt transmise mesaje din partea
agentului către nod conţinând informaţii importante despre agent; este posibil să existe şi un mesaj de la
nod către agent, mesaj prin care nodul solicită informaţii.
- Orientarea (Orientation): Nodul utilizează procesul de descoperire a agentului pentru a
determina unde se găseşte. El va determina dacă se găseşte în propria reţea sau într-o reţea străină prin
identificarea agentului care îi transmite mesaje.
- Asocierea cu o adresă care-of (Care-Of Address Assignment): Această metodă îi spune nodului
ce adresă care-of poate utiliza, în cazul în care este utilizată adresarea “foreign agent care-of”.
Agenţii IP mobili sunt rutere cărora li s-au adăugat programe suplimentare pentru a fi capabili să
asigure funcţii de Mobile IP. În principiu, comunicaţia dintre nodul mobil şi agentul din reţeaua la care
este conectat este similară cu cea dintre un dispozitiv din reţea şi ruterul său local, excepţie fiind
informaţia suplimentară necesar a fi transmisă în situaţia în care ruterul are rol de agent.
Internet Control Message Protocol (protocol prin care dispozitivele pot fi anunţate dacă a apărut
o disfuncţionalitate în reţea sau prin care dispozitivele testează posibilitatea de a atinge o anumită
destinaţie).
Preocuparea în ceea ce priveşte schimbul de mesaje între un ruter şi un nod există sub forma
mesajelor ICMP care sunt utilizate în procesul de descoperire a ruterelor. În acest scop sunt folosite
două mesaje: Router Advertisement prin care ruterele anunţă nodurilor existenţa lor şi capabilităţile lor
şi Router Solicitation prin care un nod cere unui ruter să-i transmită capabilităţile sale.
Plecând de la similaritatea acestui proces cu cel de descoperire a agentului, s-a decis o modificare
a procesului existent în locul creerii unui nou proces. Mesajele utilizate în procesul de descoperire a
agentului vor fi:
o Agent Advertisement: Mesaj transmis regulat de către un ruter care funcţionează ca agent
Mobile IP. El constă dintr-un mesaj obişnuit Router Advertisement care are una sau mai multe extensii
pentru a conţine informaţii Mobile IP specifice pentru nodurile mobile.
o Agent Solicitation: Acest mesaj poate fi transmis de către un dispozitiv IP mobil pentru a solicita
unui agent transmiterea unui mesaj Agent Advertisement.
Agenţii sunt configuraţi astfel încât să transmită mesajele Agent Advertisement cu o rată
rezonabilă pentru a asigura un contact rapid fără o încărcare excesivă a lărgimii de bandă. Ei trebuie să
răspundă imediat oricărui mesaj Agent Solicitation recepţionat cu un mesaj Agent Advertisement. Este
posibil ca unii agenţi să fie configuraţi astfel încât să transmită mesajul Agent Advertisement numai în
urma recepţionării unei solicitări.
Nodurile mobile trebuie să fie capabile să recepţioneze şi să prelucreze mesajele Agent
Advertisement. Ele vor face diferenţa dintre un astfel de mesaj şi un mesaj Router Advertisement prin
evaluarea lungimii mesajului. Ele vor analiza apoi extensia mesajului pentru a lua la cunoştinţă
capabilităţile agentului local. Ele determină astfel dacă se află în propria reţea sau într-o reţea străină, iar
în cazul unui agent străin, cum poate fi folosit acesta. De asemenea, nodurile mobile trebuie să fie
10
capabile să determine, pe baza mesajului Agent Advertisement dacă s-au deplasat din reţeaua anterioară
şi, de asemenea, când s-au reîntors în propria reţea. Nodurile mobile trebuie să fie capabile să transmită
un mesaj de solicitare dacă nu au primit nici un anunţ într-un interval de timp prestabilit.
Vom începe cu acest format întrucât mesajul Agent Solicitation este mult mai simplu. De fapt, nu
este definit nici un format nou pentru acest mesaj! El este identic cu formatul mesajului Router
Solicitation. Motivul pentru care nu este necesar un tip nou de mesaj este acela că este necesar un mesaj
extrem de simplu: “Hei, dacă este vreun ruter pe aici, te rog spune-mi cine eşti şi de ce eşti capabil!” Nu
este necesară nici o informaţie suplimentară Mobile IP. Atunci când un ruter obişnuit recepţionează un
mesaj Router Solicitation el va transmite un Router Advertisement; în cazul unui ruter Mobile IP va
transmite automat un mesaj mai lung, de tip Agent Advertisement fără o solicitare suplimentară, chiar
dacă solicitarea vine de la un nod Mobile IP sau de la un dispozitiv obişnuit.
Agent Advertisement începe cu câmpurile normale ale unui mesaj ICMP Router Advertisement.
Destinaţia mesajului este fie o adresă multicast “toate dispozitivele” (224.0.0.1) dacă este furnizat
serviciul multicast, fie o adresă broadcast (255.255.255.255). Câmpurile de adresă ale ruterului vor fi
completate cu adresele agentului.
Este principala extensie utilizată pentru a transmite capabilităţile Mobile IP ale agentului către
nodurile mobile din reţeaua locală.
Structura Mobility Agent Advertisement Extension este descrisă în tabelul 6.1 şi ilustrată grafic în
figura 6.4.
11
Lifetime agentul este dispus să primească cereri de înregistrare. O valoare 65,535 (toţi
biţii 1) reprezintă “infinit”. Acest câmp are semnificaţie numai pentru
înregistrare şi nu are nicio legătură cu câmpul Lifetime obişnuit al unui mesaj
Router Advertisement obişnuit.
Flags 1
12
Figura 6.4: Mobile IP Mobility Agent Advertisement Extension Format
Această extensie este poziţionată după câmpurile normale ale unui mesaj Router Advertisement
13
Address Entry Size: Numărul de cuvinte de 32 de biţi care revin pentru
Addr Entry fiecare adresă. Deoarece pentru acest format de mesaj fiecare adresă de
1
Size ruter are o adresă de 32 de biţi şi un nivel de preferinţă de 32 de biţi,
această valoare este fixată la 2.
Timp de viaţă: Numărul de secunde cât un host va considera acest nesaj
Lifetime 2
valid.
Router 8*Valoarea
Address câmpului
Entries Num Addrs
14
6.4.1.4. Extensia Prefix-Lengths
Este o extensie opţională care spune nodului mobil care este lungimea prefixului adresei ruterului
conţinută în câmpul Router Address al mesajului Agent Advertisement. Lungimea prefixului este un alt
termen prin care se specifică numărul de biţi din adresa IP care reprezintă identitatea reţelei. Astfel se
specifică identitatea reţelei pentru fiecare dintre adresele ruterului.
Această extensie este poziţionată după câmpurile normale ale unui mesaj Router Advertisement
din Figura 6.5.
15
6.5. Procesul de înregistrare
Odată ce un nod mobil a încheiat procesul de descoperire a agentului, el ştie dacă se află în reţeaua
de domiciliu sau într-o reţea străină. Dacă se găseşte în propria reţea, va comunica ca orice dispozitiv IP
obişnuit. Dacă se află într-o reţea străină, va trebui să adopte un comportament Mobile IP. Acesta
presupune comunicaţia cu agentul de domiciliu astfel încât să poată fi schimbate între ei informaţii şi
instrucţiuni. Acest proces este numit înregistrarea la agentul de domiciliu “home agent registration” sau,
mai simplu, înregistrare. Scopul principal al înregistrării îl constituie lansarea activităţii Mobile IP.
Nodul mobil trebuie să contacteze agentul de domiciliu, să îl anunţe că se găseşte într-o reţea străină şi
să solicite pornirea procedurii de expediere a datagramelor. Pentru aceasta va lăsa agentului de domiciliu
adresa sa care-of, astfel încât agentul de domiciliu să ştie unde trebuie să transmită datagramele. Agentul
de domiciliu trebuie, la rândul său, să comunice nodului mobil o serie de informaţii atunci când se
realizează înregistrarea. În tot acest proces, agentul extern nu este implicat, cel mult având rolul de a
retransmite mesajele.
Înregistrarea cu succes stabileşte ceea ce se numeşte legătura mobilă “mobility binding” între
agentul de domiciliu şi nodul mobil. Pentru toată durata înregistrării adresa IP de domiciliu a nodului
mobil este asociată cu adresa curentă care-of şi agentul de domiciliu va încapsula şi va expedia
datagramele adresate adresei de domiciliu către adresa care-of. Se presupune că nodul mobil îşi
administrează înregistrarea şi manevrează diferitele evenimente utilizând câteva acţiuni:
- Înregistrarea (Registration): Nodul mobil iniţiază o înregistrare atunci când detectează pentru
prima oară că a fost deplasat din reţeaua de domiciliu într-o reţea străină.
- Dezînregistrarea (Deregistration): Atunci când nodul mobil se întoarce în reţeaua de domiciliu,
el trebuie să anunţe agentul de domiciliu să înceteze expedierea datagramelor către adresa care-of.
- Reînregistrarea (Reregistration): Dacă un nod mobil se mută dintr-o reţea străină într-o altă
reţea străină, sau dacă adresa sa care-of se modifică, el trebuie să-şi actualizeze înregistrarea la agentul
de domiciliu. Trebuie să execute această acţiune şi în situaţia în care îi expiră înregistrarea, chiar dacă
rămâne staţionar în aceeaşi reţea străină.
Fiecare înregistrare este stabilită pentru un interval de timp bine stabilit, de aceea este necesară
reînregistrarea chiar dacă dispozitivul se deplasează sau nu. Înregistrările au o durată limitată pentru a se
evita expirarea lor. De exemplu, dacă un nod uită să se dezînregistreze atunci când se întoarce acasă,
expedierea datagramelor către adresa care-of va înceta la expirarea înregistrării.
Pentru a realiza înregistrarea au fost definite două mesaje noi în Mobile IP: Cerere a Înregistrării
(Registration Request) şi Răspuns la Înregistrare (Registration Reply). Acestea nu sunt mesaje ICMP ca
16
alte mesaje folosite în procesul de descoperire a agentului; ele sunt mesaje UDP (User Datagram
Protocol). De aceea, tehnic vorbind, înregistrarea este realizată la un nivel mai înalt decât restul
comunicațiilor Mobile IP. Agenții primesc Cererea de Înregistrare (Registration Requests) pe portul
UDP #434, şi răspund nodurilor mobile utilizând unul din porturile de transmitere de mesaje.
Există două proceduri diferite pentru înregistrare, funcție de tipul adreselor care-of utilizate de
către nodul mobil şi alte specificații pe care le vom trata pe scurt. Prima metodă este înregistrarea
directă, care presupune numai doi paşi:
În unele cazuri este cerut un proces puțin mai complex, în care agentul extern este implicat în
schimbul de mesaje dintre agentul de domiciliu şi nodul mobil. În această situație sunt necesari patru
paşi:
Prima metodă, mai simplă, este utilizată atunci când nodul mobil utilizează o adresă co-located
care-of. În această situație poate comunica uşor cu agentul de domiciliu şi este capabil să recepționeze
direct datagramele de la agentul de domiciliu. Acolo unde nu este prezent un agent extern, este evident
că aceasta este metoda care trebuie utilizată. Tot această metodă este utilizată şi în situația
dezînregistrării la agentul de domiciliu în urma revenirii în rețeaua de domiciliu.
A doua metodă este utilizată atunci când nodul mobil utilizează o adresa care-of. Reamintim că
aceasta este situația în care nodul mobil nu are propria adresă IP; el utilizează o adresă comună cu cea a
agentului extern, ceea ce împiedică comunicarea directă între nodul mobil şi agentul său de domiciliu.
De asemenea, atunci când nodul mobil recepționează un mesaj Agent Advertisement cu flag-ul “R” flag
setat,el trebuie să ia legătura cu agentul extern chiar dacă deține o adresă co-located care-of. Ca o
observație, agentul străin nu este altceva decât un mijlocitor, schimbul de mesaje având loc între agentul
de domiciliu şi nodul mobil. Totuşi, agentul extern poate invalida înregistrarea dacă cererea violează
regulule stabilite în rețeaua străină. Acesta este motivul pentru care unii agenți externi cer să fie
implicați în înregistrare chiar dacă nodul mobil deține o adresă co-located care-of. Se înțelege că în
situația în care agentul extern nu poate contacta agentul de domiciliu înregistrarea nu poate fi realizată.
17
6.5.2.2. Formatul mesajului Registration Request
Acest mesaj este transportat în zona payload a mesajului UDP,contribuția acestuia nefiind
ilustrată.
18
Tabel 6.4: Formatul mesajului Mobile IP Registration Request
Mărime
Nume câmp Descriere
(bytes)
Tip: Identifică tipul mesajului de înregistrare. Pentru o cerere, acest câmp
Type 1
este 1.
Flags 1
19
Care-Of
4 Adresa Care-Of: Adresa IP utilizată de nodul mobil ca adresă care-of.
Address
Identificator: Un număr format din 64 de biți care identifică în mod unic
Cererea de Înregistrare(Registration Request) şi care este utilizat pentru a
Identification 8
marca cererile în vederea răspunsurilor. Are şi rol de protecție împotriva
atacurilor.
Extensii: Câmpurile extensie sunt incluse în această zona pentru a autentifica
Extensions Variabil
cererea.
Formatul mesajului Registration Reply este cel din Tabelul 6.5 şi Figura 6.8
20
Extensii: Câmpurile extensie sunt incluse cu scopul autentificării
Extensions Variabil
răspunsului. Pot fi incluse şi alte eztensii.
21
domiciliu şi le expediază acestuia. Acest lucru se realizează prin încapsularea datelor şi transmiterea lor
către nodul mobil pe adresa care-of.
Procesul de încapsulare creează o construcție logică numită tunel între dispozitivul care
încapsulează şi un altul care decapsulează. Tunelul reprezintă o conductă prin care datagramele sunt
expediate peste o rețea arbitrară, cu detaliile datagramei încapsulate temporar ascunse.
În Mobile IP punctual de pornire al tunelului este agentul de domiciliu, care încapsulează
datagramele. Sfârşitul tunelului depinde de tipul de adresă care-of utilizată:
o Adresă Foreign Agent Care-Of: În acest caz finalul tunelului este agentul extern. El
recepționează mesajele încapsulate de către agentul de domiciliu, elimină antetele suplimentare şi
livrează datagrama nodului mobil. Această acțiune are loc de obicei la nivel doi, deoarece nodul mobil
şi agentul extern sunt poziționați în aceeaşi rețea locală şi, de asemenea, nodul mobil nu dispune de
propria adresă IP în acea rețea (el o utilizează pe cea a agentului extern).
o Adresă Co-Located Care-Of: În această situație nodul mobil este capătul tunelului şi elimină
antetele suplimentare.
În mod normal, tunelul descris anterior este utilizat numai pentru datagramele transmise către
nodul mobil şi capturate de către agentul de domiciliu. Atunci când un nod mobil doreşte să transmită o
datagramă nu există un tunel invers către agentul de domiciliu, acesta nefiind efficient. Datagrama va fi
transmisă direct utilizând orice ruter găsit în rețeaua curentă, care poate fi sau nu un agent extern. Când
face acest lucru, el utilizează propria adresă IP (de domiciliu) ca adresă sursă pentru orice cerere
22
lansează. Ca urmare, orice răspuns la aceste cereri va fi transmis către rețeaua de domiciliu. Se creează
astfel un triunghi de astfel de tranzacții:
1. Nodul mobil transmite o cerere din rețeaua străină către o a treia parte (dispozitiv) aflată
undeva în Internet.
2. Acest dispozitiv răspunde nodului mobil. Întrucât a primit ca adresă sursă a cererii adresa
de domiciliu a nodului mobil, răspunsul la cerere va fi transmis pe această adresă în rețeaua de domiciliu
a nodului mobil.
3. Agentul de domiciliu interceptează răspunsul în rețeaua de domiciliu şi îl transmite prin
tunel către nodul mobil.
Acest process este ilustrat în Figura 6.9. Acelaşi triunghi se formează şi în cazul în care partea a
treia (situată undeva în Internet) lansează o cerere către nodul mobil. Cererea va fi recepționată şi apoi
expediată de către agentul de domiciliu. Dacă nodul mobil doreşte să răspundă, va trimite acest răspuns
direct dispozitivului din Internet.
Acest exemplu ilustrează cum un schimb tipic de mesaje cerere/răspuns în Mobile IP creează un
23
triunghi de comunicație. În pasul #1 nodul mobil transmite o cerere către un server distant aflat undeva
în Internet. Nodul mobil utilizează adresa de domiciliu ca sursă a acestei cereri, astfel că, în pasul #2
răspunsul ajunge la agentul de domiciliu. În pasul #3 agentul de domiciliu transmite prin tunelare
răspunsul nodului mobil.
Pot exista situații în care nu este nici fezabil, nici de dorit ca nodul mobil să transmită direct
datagramele prin intermediul unui ruter găsit în rețeaua străină. În acest caz poate fi dezvoltată o
facilitate opțională numită tunelare inversă (reverse tunneling). Este posibil de realizat numai dacă este
suportată atât de către nodul mobil, agentul de domiciliu cât şi de agentul extern dacă acesta este
implicat.
Când facilitatea este utilizată, se crează un tunel invers, complementar celui normal, între nodul
mobil şi agentul de domiciliu, sau între agentul extern şi agentul de domiciliu, funcție de tipul adresei
care-of. Toate transmisiile provenite de la nodul mobil sunt tunelate către rețeaua de domiciliu unde
agentul de domiciliu le transmite peste Internet rezultând o operație mai simetrică decât în cazul
triunghiului. Este mai puțin eficientă deoarece fiecare comunicație necesită patru paşi. De aceea, această
metodă este utilizată numai dacă este necesar.
O situație în care ar fi necesar un tunel invers este aceea în care rețeaua străină în care se află
nodul mobil are implementate măsuri de securitate care împiedică nodul să transmită datagrame
utilizând adresa sa de domiciliu. În particular, rețeaua poate fi setată să nu permită ieşirea datagramelor
care în adresa sursă nu au prefixul adresei rețelei respective. Acțiunea are ca scop prevenirea “glumelor”
(adrese IP nepersonalizate).
Mobile IP este un protocol care permite implementarea unei funcții foarte dificile şi anume
permite în mod transparent deplasarea unui dispozitiv într-o rețea străină. Din păcate, de câte ori un
protocol încearcă să modifice modul de funcționare al IP avem ceea ce se numeşte “un caz special”.
Fiind vorba despre un agent de domiciliu care interceptează datagrame şi le expediază apoi prin tunel
către nodul mobil, acesta lucrează în general fără problem, dar există situații în care sunt necesare
acțiuni suplimentare. Una dintre acestea este utilizarea ARP, care, fără câteva precauții nu va funcționa
corect.
Pentru a înțelege problema care apare în utilizarea ARP, considerăm un nod mobil care se află
într-o rețea străină şi care s-a înregistrat cu succes la agentul de domicilui. Agentul de domiciliu va
intercepta datagramele sosite în rețeaua de domiciliu destinate nodului mobil, le va încapsula şi expedia.
Pentru a realiza aceasta, agentul de domiciliu trebuie să analizeze datagrama, acțiune care are loc în mod
normal numai pentru datagramele care sosesc din exteriorul rețelei şi care sunt procesate la nivelul
ruterului.
24
Ce se întâmplă în situația în care datagrama este transmisă de un nod din rețeaua de domiciliu şi
este destinată nodului mobil aflat într-o altă rețea? Trebuie avut în vedere că acrst nod nu este necesar un
nod mobil şi este posibil să nu dețină capabilităşi Mobile IP. El va urma procedura standard: compară
identitatea rețelei nodului mobil cu identitatea propriei rețele, constată că este vorba despre aceeaşi
rețea, deci poate face expedierea direct, nefiind necesară o rutare. Pentru aceasta va utiliza ARP în
vederea identificării adresei MAC a nodului mobil pentru a-i trimite datagrama. Va începe prin a se uita
în propriul cache ARP şi dacă găseşte aici adresa de nivel doi o va utiliza pentru expedierea pe nivel doi.
Nodul mobil nu se află în rețeaua de domiciliu, în consecință nu va recepționa acest mesaj. Dacă nodul
mobil nu se află în tabelul ARP propriu nodului inițiator de mesaj, acesta va transmite în rețeaua de
domiciliu o cerere ARP Request către nodul mobil pentru a-i determina adresa de nivel doi. Din nou,
nodul mobil fiind plecat din rețea, cererea va rămâne fără răspuns.
o ARP Proxying (ARP Delegat): Agentul de domiciliu trebuie să asculte orice ARP Request
transmis de nodurile din aceeaşi rețea cu orice nod mobil care este înregistrat la el. Atunci când aude
una, va răspunde în locul nodului mobil specificând propria adresă MAC ca fiind asociată adresei IP a
nodului mobil. Ca urmare, toate hosturile din rețeaua de domiciliu vor transmite datagramele destinate
nodului mobil către agentul de domiciliu care le va expedia. Procesul este ilustrat în Figura 6.10.
25
Figura 6.10: Agent de domiciliu cu rol de ARP Proxying
26
urile, asociind din nou adresa IP a nodului mobil cu adresa sa MAC şi nu cu cea a agentului de
domiciliu.
o Dispozitivul emițător se află rețeaua străină: Cea mai mare ineficiență se întâlneşte în această
situație, în care dispozitivul emițător se găseşte în aceeaşi rețea (străină) cu nodul mobil. Dispozitivul A
localizat în Tokyo trebuie să transmită datagrama la Londra de unde este expediată înapoi la Tokyo.
Fără Mobile IP, utilizarea ARP ar permite livrarea imediată, fără nici o rutare. Acest ultim scenariu, cel
mai defavorabil, este ilustrat in Figura 6.11.
27
Figura 6.11: Ineficiența Mobile IP În situația cea mai defavorabilă
Diagrama ilustrează cel mai prost caz posibil de ineficiență a Mobile IP: situația în care un
dispozitiv din rețeaua străină în care este localizat nodul mobil doreşte să îi transmită o
datagramă. Sursa, în cazul de față 210.4.79.11, utilizează adresa de domiciliu a nodului mobil,
astfel transmisia fiind dirijată înapoi spre Londra şi apoi returnată în Tokyo, chiar dacă cele două
dispozitive se găsesc pe acelaşi birou.
Din păcate acest ultim scenariu apare destul de des. Sunt frecvente situațiile în care dispozitivul
mobil conectat la o rețea străină comunică în special cu hosturi din acea rețea.
Pentru a vedea că se poate şi mai rău, putem considera cazul utilizării tunelării inverse. În această
situație avem un tunel nu numai pentru datagramele transmise către nodul mobil, ci şi de la acesta. În
cazul cel mai defavorabil o pereche de mesaje cerere/răspuns transmisă între un nod mobil şi un alt
dispozitiv aflate ambele în rețeaua străină, necesită două drumuri complete Londra – Tokyo, dus-întors.
Ineficiența este parte inerentă a Mobile IP. Nu există nicio soluție în interiorul Mobile IP, fiind o
consecință a modului de operare a protocolului. Singura modalitate de a îmbunătăți lucrurile este aceea
de a încropi o soluție care în ultimă instanță se reduce la una din cele două opțiuni pe care le avem
28
atunci când nu se utilizează suportul mobilității: fie decidem să acordăm dispozitivului mobil aflat într-o
rețea străină o adresă IP temporară în acea rețea, fie utilizăm o rutare specifică pentru acest dispozitiv
cât timp se află în rețeaua străină. Aici intrăm într-o buclă: am văzut că şi aceste soluții ridică probleme,
acesta fiind motivul principal pentru care a fost creat Mobile IP. Pot exista însă situații în care eficiența
este mult mai importantă decât portabilitatea transparentă oferită de Mobile IP. Pentru o staționare
îndelungată într-o rețea străină depărtată de rețeaua de domiciliu, sau pentru aplicațiile în care eficiența
este esențială, poate avea sens angajarea uneia din aceste tehnici. De exemplu, o corporație care are un
număr mic de oficii în diferite oraşe, conectate prin intermediul Internetului, poate seta o rutare specială
care să permită unui dispozitiv mobil aflat în vizită la un oficiu din alt oraş decât cel de domiciliu să
comunice direct cu nodurile locale ale rețelei străine fără să mai fie rutat prin Internet.
Securitatea este o preocupare continuă în orice mediu de rețea, fiind esențial în Mobile IP. Există
un număr de motive pentru a justifica această afirmație şi le vom prezenta împreună cu modul în care
este utilizat protocolul şi mecanismele specifice prin care este implementată securitatea.
Securitatea a fost avută în vedere în permanență în timpul dezvoltării Mobile IP ținând seama de
faptul că cel mai adesea dispozitivele mobile utilizează o tehnologie de rețea fără fir (wireless).
Comunicațiile wireless sunt inerent mai puțin sigure decât comunicațiile prin fir , deoarece transmisiile
de realizează într-un mediu deschis putând fi interceptate. Este de asemenea mult mai uşor pentru
utilizatorii răutăcioşi să perturbeze funcționarea dispozitivelor wireless decât în situația în care
conexiunea s-ar face prin fir.
Din punct de vedere al operării, Mobile IP prezintă un număr de riscuri datorate utilizării unui
sistem de înregistrare şi transmiterii datagramelor peste o rețea nesecurizată. Un dispozitiv malițios
poate interveni în procesul de înregistrare provocând deturnarea datagramelor destinate dispozitivului
mobil. Un intrus poate interveni şi în procesul de expediere a datelor prin încapsularea unei datagrame
false pentru a înşela dispozitivul mobil făcându-l să creadă că a fost transmisă o datagramă care nu va fi
transmisă.
29
Protecția împotriva atacurilor de tip Replay
În acest tip de atac, o a treia parte interceptează o datagramă, o reține o anumită perioadă şi apoi o
retransmite. Ar părea destul de inofensiv dacă nu este important factorul timp. Putem considera situația
în care un nod mobil se înregistrează la agentul de domiciliu, mai târziu se reîntoarce acasă şi se
dezînregistrează. Dacă un dispozitiv malițios capturează o copie a unei cereri de înregistrare
(Registration Request) şi o retransmite, agentul de domiciliu va decide că nodul mobil s-a deplasat din
nou şi va intercepta datagramele destinate nodului mobil.
Pentru a preveni un astfel de atac, în mesajele Registration Request şi Registration Reply este
utilizat câmpul Identificare (Identification). Fiecare cerere are un număr diferit de identificare, astfel
încât nodurile şi agenții pot deosebi mesajele originale de copii şi pot elimina orice datagramă
recepționată care repetă un număr de identificare deja întâlnit.
30