Documente Academic
Documente Profesional
Documente Cultură
1. NOŢIUNI INTRODUCTIVE
Pentru a reduce din complexitatea proiectării, majoritatea reţelelor sunt organizate sub
forma unei serii de straturi sau niveluri, fiecare dintre ele construit peste cel de dedesubt.
Numărul de niveluri, numele fiecărui nivel, conţinutul şi funcţia sa variază de la reţea la reţea.
Oricum, în toate reţelele, scopul fiecărui nivel este să ofere anumite servicii nivelurilor
superioare, protejându-le totodată de detaliile privitoare la implementarea efectivă a
serviciilor oferite.
Nivelul n de pe o maşină conversează cu nivelul n de pe altă
maşină. Regulile şi convenţiile utilizate în conversaţie sunt cunoscute
sub numele de protocolul nivelului n. În principal, un protocol
reprezintă o înţelegere între părţile care comunică, asupra modului de
realizare a comunicării.
În figura 1 este ilustrată o reţea cu cinci niveluri. Entităţile
care conţin niveluri corespunzătoare de pe maşini diferite se numesc egale. Cu alte cuvinte,
entităţile egale sunt cele care comunică folosind protocolul.
Gazda 1 Gazda 2
Protocolul nivelului 5
Nivel 5 Nivel 5
Interfaţa 4/5
Protocolul nivelului 4
Nivel 4 Nivel 4
Interfaţa 3/4
Protocolul nivelului 3
Nivel 3 Nivel 3
Interfaţa 2/3
Protocolul nivelului 2
Nivel 2 Nivel 2
Interfaţa 1/2
Protocolul nivelului 1
Nivel 1 Nivel 1
Mediu fizic
Fig. 1 – Niveluri, protocoale şi interfeţe
În realitate, nici un fel de date nu sunt transferate direct de pe nivelul n al unei maşini
pe nivelul n al altei maşini. Fiecare nivel transferă datele şi informaţiile de control nivelului
imediat inferior, până când se ajunge la nivelul cel mai de jos. Sub nivelul 1 se află mediul
fizic prin care se produce comunicare efectivă. În fig. 1, comunicarea virtuală este
reprezentată prin linii punctate, iar comunicarea fizică prin linii continue.
O mulţime de niveluri şi protocoale este numită arhitectură de reţea. Există mai
multe arhitecturi de reţea: modelul ISO/OSI/RM, modelul TCP/IP, modelul Netware/Novell şi
modelul Xerox Network System. Protocoalele ARP, RARP şi DHCP sunt folosite în cadrul
modelului TCP/IP (vezi anexa 1).
1
Protocoalele ARP, RARP, DHCP
2. MODELUL TCP/IP
facilităţile existente, în schimb le-a făcut mai uşor de folosit. Împreună cu programul de
navigare Mosaic, scris la Centrul Naţional pentru Aplicaţiile Supercalculatoarelor, WWW-ul
a făcut posibil ca un sit să pună la dispoziţie un număr de pagini de informaţii conţinând text,
poze, sunet şi chiar video, în fiecare pagină existând legături către alte pagini.
Clienţii, serverele, imprimantele, bazele de date relaţionale, dispozitivele de
interconectare formează componentele unei reţele locale. Acestea realizează încapsularea şi
decapsularea datelor pentru a-şi îndeplini toate sarcinile (transmitere e-mail-uri, editare texte,
scanare, acces la baze de date).
Pentru a asigura o comunicare efectivă între dispozitivele din reţea, routerele,
dispozitivile care dirijeaza traficul din retea, trebuie să lucreze împreună. Trebuie să existe
deci un set de reguli prin care routerele şi alte dispozitive din reţea să se înţeleagă în privinţa
dirijării, direcţionării pachetelor. Aceste reguli sunt concretizate prin existenţa unor
protocoale (ARP, RARP, protocoale de rutare).
Fig. 2 – Fiecare interfaţă a unui router are propria adresă IP şi propria adresă MAC
3
Protocoalele ARP, RARP, DHCP
Una din necesităţile pe care trebuie să le aibă un dispozitiv ce face parte dintr-o reţea
este să aibă un identificator care să fie unic. Dacă această condiţie nu este îndeplinită, adică
există două dispozitive într-o reţea cu acelaşi identificator, comunicarea între cele două
dispozitive, precum şi între oricare dintre ele şi oricare alt dispozitiv nu va mai putea fi făcută
corect, pentru că există ambiguităţi. Cine ar trebui să primească informaţia?
Am spus că un router asigură interconectarea mai multor reţele. Aceasta implică că
routerul face parte din toate reţelele pe care le interconectează. Cum fiecare dispozitiv dintr-o
reţea trebuie să aibă un identificator unic în reţeaua respectivă, înseamna că routerul va avea
identificatori diferiţi pentru fiecare din reţelele din care face parte.
Practic fiecare interfaţă a routerului („partea” din router care aparţine unei reţele, atât
fizică cât şi logică – ethernet, seriale) va avea o adresă proprie atât la nivel 3 (IP) cât şi la
nivel 2 (MAC).
Fig. 3 – Interfeţele unui router trebuie să aibă adrese din reţele diferite
De asemenea, adresele logice ale interfeţelor trebuie să aparţină unor reţele diferite,
întrucât interfeţele sunt părţi ale routerului ce aparţin unor reţele diferite.
4
Protocoalele ARP, RARP, DHCP
instruieşte un server care va distribui adresele logice staţiilor din retea, în coloborare cu
acestea.
Cele mai cunoscute protocoale pentru asignarea de adrese IP în mod dinamic sunt
următoarele: BOOTP, RARP, DHCP.
Problema adresării prin adrese fizice (adrese MAC) apare la nivelul legatură de date,
mai exact atunci când nivelurile superioare (transport/TCP şi reţea/IP) trimit nivelului
legatură de date un pachet cu o adresă IP destinaţie şi o adresă IP sursă cunoscute. Sarcina
nivelului legatură de date (sau acces la reţea în modelul TCP/IP) este acela de a completa
corect adresele MAC pentru sursă şi destinaţie astfel încât comunicarea să aiba loc în mod
corect. Pentru a se putea transmite date între două staţii, sunt neaparat necesare atât adresa
MAC, cât şi adresa IP.
5
Protocoalele ARP, RARP, DHCP
Pentru ca două dispozitive dintr-o reţea locală să poată comunica, dispozitivul care
transmite trebuie să cunoască atât adresa MAC, cât şi adresa IP a dispozitivului destinaţie.
Atunci când se doreşte comunicarea cu un dispozitiv a cărui adresă IP este cunoscută, trebuie
aflată adresa sa MAC. Suita de protocoale TCP/IP dispune de un protocol, numit ARP, care
poate obţine în mod automat adresa MAC a unei staţii cu un IP cunoscut.
Există o multitudine de moduri în care nodurile din reţea pot determina adresa MAC
pe care o vor folosi ca adresă destinaţie în încapsularea de nivel 2. Fiecare staţie va ţine o
tabelă cu toate adresele IP şi MAC ale calculatoarelor din aceeaşi reţea locală. Aceste tabele
se numesc tabele ARP şi cu ajutorul lor se mapează adrese IP la adrese MAC. Tabelele ARP
sunt reţinute în RAM, ceea ce înseamnă că trebuie refăcute la fiecare rebootare a staţiei.
Administratorul de reţea poate modifica manual intrările din această tabela prin
mijloace puse la dispoziţie de către sistemul de operare, însă aceste modificari sunt complet
excepţionale şi în marea majoritate a cazurilor, tabelele sunt gestionate exclusiv de către
dispozitivul care le menţine.
Headerul cadrului
Headerul MAC Headerul IP Mesaj de cerere ARP
Fig. 4
Destinaţie Destinaţie Care este adresa ta
Ff-ff-ff-ff-ff-ff 192.168.1.100 MAC?
Sursa Sursa
00-00-BC-12-34-56 192.168.1.205
6
Protocoalele ARP, RARP, DHCP
IP Header
Destinatie EU
192.168.1.100
Sursa ?
192.168.1.205
Fig. 5
Pentru că pachetul este trimis având ca adresă destinaţie adresa de broadcast pe adrese
MAC, toate staţiile din reţeaua locală îl primesc şi îl analizează. Nivelul reţea verifică adresa
IP destinaţie înscrisă în headerul IP şi o compară cu adresa proprie.
– Dacă nu – ignoră cadrul;
– Dacă da:
– Citeşte restul pachetului
– Trimite raspuns ARP
– Răspunsul ARP:
– Ofera adresa MAC a dispozitivului
Fig. 6
nu nu
Dacă o staţie determină că adresa IP destinaţie din cadrul pachetului de cerere ARP
este egală cu adresa proprie IP, aceasta va pregăti un pachet de răpuns ARP. Acest pachet va
avea ca adresă IP destinaţie adresa IP a staţiei care a iniţiat cererea ARP. Adresa sursă
încapsulată la nivelul reţea va fi egală cu adresa IP pentru care se dorea găsirea adresei MAC
corespunzătoare, deci cea a staţiei care trimite pachetul de răspuns ARP. Cadrul care
încapsulează acest pachet va fi adresat către adresa MAC a calculatorului care a făcut cererea
ARP şi, în cadrul câmpului pentru adresa MAC, sursa va completa practic răspunsul la
cererea ARP făcută, adică adresa MAC a staţiei care răspunde.
Pentru a gasi adresa MAC mapată unei adrese IP către care se doreşte transmiterea
unui pachet, un dispozitiv din reţea îşi va verifica mai întâi tabela ARP proprie şi numai dacă
nu găseşte adresa dorită în această tabelă va face o cerere ARP. Această procedură introduce
necesitatea ca tabelele de ARP să conţină informaţii actuale, altfel pachetele vor fi trimise la
adrese greşite. Pe baza tabelei ARP se trimite un pachet către o placă de reţea destinaţie sau
7
Protocoalele ARP, RARP, DHCP
alta, deci corespondeţa adresă IP – adresă MAC reţinută în această tabelă trebuie să fie
corectă la orice moment dat.
Însă adresele IP nu sunt fixe şi sunt asignate diverselor dispozitive de către
administratorul de reţea, ceea ce înseamnă că ele se pot schimba între două momente de timp.
Dacă tabelele ARP nu ar fi din când în când înnoite, s-ar putea ajunge la o situaţie când o
mapare între o adresă IP şi una MAC reţinută într-un cache ARP să nu mai corespundă
realităţii, făcând astfel comunicarea imposibilă. Pentru a evita această problemă, dispozitivele
de reţea stabilesc un timp de viaţa pentru o intrare în cache-ul ARP. După expirarea acestui
interval de timp, intrarea în tabelă va fi invalidată. Procesul de înlăturare a intrărilor vechi din
tabelele ARP poartă numele de îmbătrânire.
Pentru o flexibilitate sporită şi pentru a reduce overhead-ul cauzat de cererile ARP, s-a
adăugat un mecanism prin care, ori de câte ori o staţie primeşte un pachet cu informaţii noi
despre un dispozitiv din reţea, adaugă aceste informaţii la tabela ARP proprie.
RARP (Reverse Adress Resolution Protocol) este un protocol simplu care are ca efect
alocarea automată a adreselor logice staţiilor din reţea. Staţiile îşi cunosc adresele proprii
MAC şi doresc să afle adresa lor de IP. Acestea trimit o cerere RARP în reţea. Serverul
RARP din reţea va răspunde cererii şi va asigna o adresă IP staţiei respective.
Acest protocol este folosit de către dispozitivele care au o dependenţă mare de reţea
(terminale fără disc) şi de obicei partea din protocol ce ţine de client este „arsă” în ROM-ul
dispozitivului.
Protocolul Reverse ARP este asemănător cu ARP, în sensul că are acelasi scop:
asocierea unei adrese MAC cu o adresă IP.
RARP este folosit mai ales de către staţiile fără discuri. Aceste staţii îşi cunosc la
momentul bootării numai adresa fizică MAC, fără a şti care este adresa IP proprie. Prin
RARP, un calculator îşi poate afla adresa IP pe baza adresei MAC a plăcii sale de reţea.
Staţiile fără disc nu dispun de suport magnetic pe care să-şi poată salva configuraţia
IP, pentru a-şi putea reface setările de reţea după ce au fost scoase de sub tensiune. În
consecinţă, aceste statii trebuie să-şi afle adresa IP la fiecare bootare.
Configuratia IP pentru fiecare staţie ce foloseste protocolul RARP pentru a-şi afla
această configuraţie este stocată pe serverul RARP. În timpul bootării, staţiile fără disc au
rutine speciale în EPROM care le permit să afle, printr-o cerere RARP, care le este adresa IP.
8
Protocoalele ARP, RARP, DHCP
Headerul cadrului
Headerul MAC
IP Header
Destinatie Mesaj cerere ARP
Destinatie
Ff-ff-ff-ff-ff-ff
255.255.255.255 Care este adresa
Sursa MEA de IP?
Sursa
0.0.0.0
00-00-8C-12-34-56
Atât protocolul ARP, cât şi RARP, folosesc acelaşi tip de pachet, numit pachet cerere
ARP, pentru a face o cerere. Ambele pachete de cerere sunt trimise prin broadcast de adresa
MAC. Deosebirile între cele două cereri constau în încapsularea de la nivel reţea, mai exact
cerererea ARP se transmite direcţionat (se cunoaste IP-ul destinatie şi se doreşte aflarea
adresei MAC), pe când cererea RARP se trimite prin broadcast IP pe adresa 255.255.255.255,
fără să se completeze câmpul adresă IP sursă, acesta se iniţializează la valoarea 0.
– la orice scoatere de sub tensiune, aceste setări sunt pierdute şi trebuie refăcute la rebootare
prin aceeaşi procedură.
Similarităţi:
– ambele se ocupă cu maparea adreselor IP la adrese MAC
– ambele folosesc acelaşi tip de pachet;
– ambele folosesc adrese de broadcast pentru a-şi îndeplini scopul.
Similarităţile principale între ARP şi RARP sunt legate de faptul că folosesc acelaşi
format de pachet pentru a trimite cereri şi de faptul că se ocupă de aceeaşi problemă şi anume
maparea adreselor IP la adrese MAC.
Ambele protocoale folosesc un broadcast pentru a trimite cererile făcute.
Diferenţe:
ARP - obţine adresa MAC a altor staţii folosind o adresă IP;
RARP – obţine adresa proprie IP folosind adresa proprie MAC;
Pachetele ARP folosesc broadcast pe adrese MAC (ff-ff-ff-ff-ff-ff);
RARP foloseşte adresa IP de broadcast (255.255.255.255), precum şi adresa MAC de
broadcast (ff-ff-ff-ff-ff-ff);
Tabelele ARP sunt menţinute local;
Tabelele RARP sunt menţinute de către serverul RARP;
Răspunsul ARP este folosit de staţia locală pentru a-şi înnoi cache-ul ARP;
Răspunsul RARP este folosit de o staţie pentru a-şi configura parametrii locali IP.
Deosebirile între ARP şi RARP sunt legate în primul rând de scopul utilizării celor
două: în timp ce ARP este folosit pentru aflarea adresei MAC a unei alte staţii cu o adresă IP
cunoscută, pe când RARP este utilizat pentru găsirea adresei IP proprii în cazul cunoaşterii
adresei MAC. Pe când pentru o cerere ARP, broadcastul este exclusiv pe adrese MAC,
pachetul RARP este trimis atât pe o adresă de broadcast de nivel 2, cât şi printr-un broadcast
general IP.
În timp ce tabelele ARP sunt menţinute local de către fiecare nod din retea, tabelele
RARP sunt ţinute centralizat pe serverul RARP.
O ultimă diferenţă constă în modul de folosire a pachetului răspuns. Cu ajutorul
pachetului de răspuns ARP se înnoieşte cache-ul ARP local, pe cand pachetul de răspuns
RARP este utilizat de către o staţie pentru a-şi configura proprii parametri de reţea IP.
10
Protocoalele ARP, RARP, DHCP
Nivelul reţea furnizează servicii nivelului transport. El se poate baza fie pe circuite
virtuale, fie pe datagrame. În ambele cazuri, sarcina sa principală este dirijarea pachetelor de
la sursă la destinaţie. În subreţele bazate pe circuite virtuale, o decizie de dirijare se ia când
este stabilit circuitul. În subreţele bazate pe datagrame, decizia este luată pentru fiecare
pachet.
În reţelele de calculatoare sunt folosiţi mulţi algoritmi de dirijare. Dirijarea este calea
cea mai scurtă, inundarea sau dirijarea bazată pe flux sunt algoritmi statici. Dirijarea după
vectorul distanţelor şi dirijarea după starea legăturii sunt algoritmi dinamici. Cele mai noi
reţele folosesc unul dintre aceşti algoritmi.
Subreţelele pot deveni congestionate, mărind întârzierea şi micşorând productivitatea
pentru pachete. Proiectanţii reţelelor încearcă să evite congestia printr-o proiectare adecvată.
11
Protocoalele ARP, RARP, DHCP
BIBLIOGRAFIE
1. Andrew S. Tanenbaum – Reţele de calculatoare, Ediţia a treia, Pag. 16, 17, 26, 32-33
Editura Computer Press Agora, Tg-Mureş, 1998
2. Adrian Munteanu, – Reţele locale de calculatoare, proiectare şi administrare,
Valerică Greavu Şerban Ediura Polirom, 2003, pag. 27
3. Site-uri Web:
– www.rau.ro/cursuri/im_retele/Documentatie%20suplimentara/Protocoalele%20Nivelul%203%20%
96%20RETEA.doc
12
Protocoalele ARP, RARP, DHCP
– http://co.pub.ro/curs_retele/radu/5_Nivelul_3_protocoale.doc
– http://thor.info.uaic.ro/~stefan/NavigareInternet/textCursuri/curs3.html
– www.geocities.com/media_h/Romanian_Doc/Networking/Inpartirea_in_nivele.doc
– www.cs.ubbcluj.ro/~rlupsa/edu/retele-2003/c11.html
– http://telecom.etc.tuiasi.ro/telecom/staff/lscripca/CursRC.html
– www.fotosearch.com
13