Sei sulla pagina 1di 6

Adresa IP 0.0.0.0 este folosit de gazde atunci cnd sunt pornite.

Adresele IP cu 0 ca
numr de reea se refer la reeaua curent. Aceste adrese permit ca mainile s refere
propria reea fr a cunoate numrul de reea (dar ele trebuie s cunoasc clasa adresei
pentru a ti cte zerouri s includ).
Adresele care constau numai din 1-uri permit difuzarea n reeaua curent, n mod uzual
un LAN. Adresele cu un numr exact de reea i numai 1-uri n cmpul gazd permit
mainilor s trimit pachete de difuzare n LAN-uri la distan, aflate oriunde n Internet
(dei muli administratori de sistem dezactiveaz aceast opiune). n final, toate adresele
de forma 127.xx.yy.zz sunt rezervate pentru testri n bucl local (loopback). Pachetele
trimise ctre aceast adres nu sunt trimise prin cablu; ele sunt prelucrate local i tratate
ca pachete sosite. Aceasta permite trimiterea pachetelor ctre reeaua local fr ca
emitorul s-i cunoasc numrul.

Aa cum am vzut, toate gazdele dintr-o reea trebuie s aib acelai numr de reea.
Aceast proprietate a adresrii IP poate crea probleme cnd reeaua crete.
n locul ei a fost inventat o alt soluie. n esen, n loc s existe o singur adres de
clas B, cu 14 bii pentru numrul reelei i 16 bii pentru gazd, un numr de bii din
numrul gazdei sunt folosii pentru a crea un numr de subreea. De exemplu, dac o
universitate are 35 de departamente, ar putea folosi un numr de subreea de 6 bii i un
numr de 10 bii pentru gazde, ceea ce ar permite un numr de 64 de reele Ethernet,
fiecare cu un maxim de 1022 de gazde (aa cum am menionat mai devreme, 0 i -1 nu
sunt disponibile). Aceast mprire ar putea fi modificat ulterior n caz c a fost o
greeal.
Pentru a se putea folosi subreele, ruterul principal trebuie are nevoie de o masc de
subreea, care indic separarea dintre numrul reea + subreea i gazd, aa cum este
ilustrat n fig. 5-58.
Mtile de subreea sunt scrise de asemenea n notaie zecimal cu punct, cu adugarea
unui caracter / (slash) urmat de numrul de bii din partea cu reea + subreea. Pentru
exemplul din fig. 5-58, masca de subreea poate fi scris ca 255.255.255.0. O notaie
alternativ este /22 pentru a indica c masca subreelei are lungimea de 22 de bii.

Fig. 5-58. O reea de clas B mprit n 64 de subreele


n afara reelei, mprirea n subreele nu este vizibil, astfel nct alocarea unei noi
subreele nu necesit contactarea ICANN sau schimbarea unor baze de date externe. n
acest exemplu, prima subreea poate folosi adrese IP ncepnd de la 130.50.4.1, cea de-a
doua poate ncepe de la 130.50.8.1, cea de-a treia poate ncepe de la 130.50.12.1 i aa
mai departe. Pentru a se nelege de ce numrul subreelei crete cu patru, s observm c
adresele binare corespunztoare sunt urmtoarele:
Subreea 1 : 10000010 00110010 000001|00 00000001
Subreea 2 : 10000010 00110010 000010|00 00000001
Subreea 3 : 10000010 00110010 000011|00 00000001
Aici, bara vertical (|) arat grania dintre numrul subreelei i numrul gazdei. La stnga
se gsete numrul de 6 bii al subreelei, la dreapta numrul de 10 bii al gazdei.

Pentru a vedea cum funcioneaz subreelele, este necesar s explicm cum sunt
prelucrate pachetele IP ntr-un ruter. Fiecare ruter are o tabel ce memoreaz un numr de
adrese IP de forma (reea, 0) i un numr de adrese IP de forma (aceast-reea, gazd).
Primul tip indic cum se ajunge la reelele aflate la distan. Al doilea tip spune cum se
ajunge la gazdele locale. Fiecrei tabele i este asociat interfaa de reea care se folosete
pentru a ajunge la destinaie i alte cteva informaii.
Cnd sosete un pachet IP, adresa destinaie este cutat n tabela de dirijare. Dac
pachetul este pentru o reea aflat la distan, el este trimis ruterului urmtor prin interfaa
specificat n tabel.
Dac este o gazd local (de exemplu n LAN-ul ruterului), pachetul este trimis direct
ctre destinaie.
Dac reeaua nu este prezent, pachetul este trimis unui ruter implicit care are tabele mai
extinse.
Acest algoritm nseamn c fiecare ruter trebuie s memoreze numai reele i gazde, nu
perechi (reea, gazd), reducnd considerabil dimensiunea tabelelor de dirijare.
Cnd este introdus mprirea n subreele, tabelele de dirijare sunt schimbate, adugnd
intrri de forma (aceast-reea, subreea, 0) i (aceast-reea, aceast-subreea, gazd).
Astfel un ruter din subreeaua k tie cum s ajung la toate celelalte subreele i, de
asemenea, cum s ajung la toate gazdele din subreeaua k. El nu trebuie s cunoasc
detalii referitoare la gazde din alte subreele. De fapt, tot ceea ce trebuie schimbat este de
a impune fiecrui ruter s fac un I logic cu masca de subreea a reelei pentru a scpa
de numrul de gazd i a cuta adresa rezultat n tabelele sale (dup ce determin crei
clase de reele aparine). De exemplu, asupra unui pachet adresat ctre 130.50.15.6 care
ajunge la ruterul principal se face un I logic cu masca de subreea 255.255.252.0/22
pentru a obine adresa 130.50.12.0. Aceast adres este cutat n tabelele de dirijare
pentru a se gsi cum se ajunge la gazdele din subreeaua 3. Ruterul din subreeaua 5 este
astfel uurat de munca de a memora toate adresele de nivel legtur de date ale altor
gazde dect cele din subreeaua 5.
mprirea n subreele reduce astfel spaiul tabelelor de dirijare prin crearea unei ierarhii
pe trei niveluri, alctuit din reea, subreea i gazd.
Renunarea la clase face rutarea mai complicat. n vechiul sistem cu clase, rutarea se
efectua n felul urmtor. Atunci cnd un pachet ajungea la un ruter, o copie a adresei IP
era deplasat la dreapta cu 28 de bii pentru a obine un numr de clas de 4 bii. O
ramificaie cu 16 ci sorta pachetele n A, B, C i D (dac era suportat), cu 8 cazuri
pentru clasa A, patru cazuri pentru clasa B, dou cazuri pentru clasa C i cte unul pentru
D i E. Programul pentru fiecare clas masca numrul de reea de 8, 16 sau 24 de bii i l
alinia la dreapta ntr-un cuvnt de 32 de bii. Numrul de reea era apoi cutat n tabela
pentru A, B sau C, de obicei indexat pentru reelele A i B i folosind dispersia (hashing)
pentru reelele C. Odat intrarea gsit, se putea gsi linia de ieire i pachetul era
retransmis.

Cu CIDR, acest algoritm simplu nu mai funcioneaz. n loc de aceasta, fiecare intrare
din tabela de rutare este extins cu o masc de 32 de bii. Din acest motiv, acum exist o
singur tabel de rutare pentru toate reelele, constituit dintr-un un vector de triplete
(adres IP, masc subreea, linie de ieire). Cnd sosete un pachet IP, mai nti se
extrage adresa IP a destinaiei. Apoi (conceptual) tabela de rutare este scanat intrare cu
intrare, mascnd adresa destinaie i comparnd cu intrarea din tabel, n cutarea unei
potriviri. Este posibil ca mai multe intrri (cu mti de subreea de lungimi diferite) s se
potriveasc, caz n care este folosit cea mai lung masc. Astfel, dac exist potrivire
pentru o masc /20 i pentru o masc /24, este folosit intrarea cu /24.
Pentru a accelera procesul de gsire a adreselor au fost imaginai algoritmi compleci
(Ruiz-Sanchez et al., 2001). Ruterele comerciale folosesc chip-uri VLSI proprietare cu
aceti algoritmi implementai n hardware.
Pentru a face algoritmul de retransmitere mai uor de neles, s considerm un exemplu
n care sunt disponibile milioane de adrese, ncepnd de la 194.24.0.0. S presupunem c
Universitatea Cambridge are nevoie de 2048 de adrese i are atribuite adresele de la
194.24.0.0 pn la 194.24.7.255, mpreun cu masca 255.255.248.0. Apoi, Universitatea
Oxford cere 4096 de adrese.
Deoarece un bloc de 4096 de adrese trebuie s fie aliniat la o frontier de 4096 octei,
acestea nu pot fi numerotate ncepnd de la 194.8.0.0. n loc, se primesc adrese de la
194.24.16.0 pn la 194.24.31.255, mpreun cu o masc de 255.255.240.0. Acum
Universitatea din Edinburgh cere 1024 de adrese i i sunt atribuite adresele de la
194.24.8.0 pn la 194.24.11.255 i masca 255.255.252.0. Alocrile sunt rezumate n fig.
5-59.
Universitatea Prima adres Ultima adres Numr adrese Notaie
Cambridge 194.24.0.0 194.24.7.255 2048 194.24.0.0/21
Edinburgh 194.24.8.0 194.24.11.255 1024 194.24.8.0/22
(disponibil) 194.24.12.0 194.24.15.255 1024 194.24.12/22
Oxford 194.24.16.0 194.24.31.255 4096 194.24.16.0/20
Fig. 5-59. Un set de atribuiri de adrese IP.
Tabelele de dirijare din toat lumea sunt acum actualizate cu cele trei intrri atribuite.
Fiecare intrare conine o adres de baz i o masc de subreea. Aceste intrri (n binar)
sunt:
Adres Masc
C 11000010 00011000 00000000 00000000 11111111 11111111 11111000 00000000
E 11000010 00011000 00001000 00000000 11111111 11111111 11111100 00000000
O 11000010 00011000 00010000 00000000 11111111 11111111 11110000 00000000
S vedem acum ce se ntmpl cnd sosete un pachet adresat pentru 194.24.17.4, care
este reprezentat ca urmtorul ir de 32 de bii :
11000010 00011000 00010001 00000100

..
Cele trei intervale rezervate sunt :
10.0.0.0 - 10.255.255.255/8 (16.777.216 gazde)
172.16.0.0 - 172.31.255.255/12 (1 .048.576 gazde)
192.168.0.0 - 192.168.255.255/16 (65.536 gazde)

Fig. 5-60. Amplasarea i funcionarea unei uniti NAT.


Funcionarea NAT este ilustrat n fig. 5-60. n interiorul companiei fiecare main are o
adres unic de forma 10.x.y.z. Totui, cnd un pachet prsete compania, trece printr-o
unitate NAT (eng.: NAT box)care convertete adresa IP intern, 10.0.0.1 n figur, la
adresa IP real a companiei, 198.60.42.12, n acest exemplu. Unitatea NAT este deseori
combinat ntr-un singur dispozitiv cu un zid de protecie (eng.: firewall), care asigur
securitatea controlnd cu grij ce intr i iese din companie.
Vom studia zidurile de protecie n Cap. 8. De asemenea este posibil integrarea unitii
NAT n ruterul companiei.
Pn acum am trecut cu vederea un detaliu: atunci cnd vine rspunsul (de exemplu de la
un server Web), este adresat 198.60.42.12, deci de unde tie unitatea NAT cu care adres
s o nlocuiasc pe aceasta? Aici este problema NAT-ului. Dac ar fi existat un cmp
liber n antetul IP, acel cmp ar fi putut fi folosit pentru a memora cine a fost adevratul
emitor, dar numai 1 bit este nc nefolosit. n principiu, o nou opiune ar putea fi creat
pentru a reine adevrata adres a sursei, dar acest lucru ar necesita schimbarea codului

din protocolul IP de pe toate staiile din ntregul Internet pentru a putea prelucra noua
opiune. Aceasta nu este o alternativ promitoare pentru o rezolvare rapid.
n cele ce urmeaz se prezint ceea ce s-a ntmplat cu adevrat. Proiectanii NAT au
observat c marea majoritate a pachetelor IP aveau coninut TCP sau UDP. Atunci cnd
vom studia protocoalele TCP i UDP n Cap. 6, vom vedea c ambele au antete conin un
port surs i un port destinaie.
n continuare vom discuta doar despre porturi TCP, dar exact aceleai lucruri se aplic i
la UDP. Porturile sunt numere ntregi pe 16 bii care indic unde ncepe i unde se
termin o conexiune TCP. Aceste cmpuri pun la dispoziie cmpul necesar funcionrii
NAT.
Atunci cnd un proces dorete s stabileasc o conexiune TCP cu un proces de la
distan, se ataeaz unui port TCP nefolosit de pe maina sa. Acesta se numete portul
surs i spune codului TCP unde s trimit pachetele care vin i aparin acestei conexiuni.
Procesul furnizeaz i un port destinaie pentru a spune cui s trimit pachetele n cealalt
parte. Porturile 0-1023 sunt rezervate pentru servicii bine cunoscute. De exemplu portul
80 este folosit de serverele Web, astfel nct clienii s le poat localiza. Fiecare mesaj
TCP care pleac conine att un port surs ct i un port destinaie. Cele dou porturi
permit identificarea proceselor care folosesc conexiunea la cele dou capete.
NAT poate fi folosit pentru rezolva insuficiena adreselor IP pentru utilizatori de ADSL
i Internet prin cablu. Atunci cnd un ISP aloc fiecrui utilizator o adres, folosete
adrese 10.x.y.z. Atunci cnd pachete de la staiile utilizatorilor ies din ISP i intr n
Internet trec printr-o cutie NAT care le translateaz n adresele Internet adevrate ale ISPului. La ntoarcere pachetele trec prin maparea invers. Din aceast perspectiv, pentru
restul Internetului, ISP-ul i utilizatorii si ADSL/cablu arat la fel ca o mare companie.
5.5.4 Protocoale de control n Internet
Pe lng IP, care este folosit pentru transferul de date, Internet-ul are cteva protocoale de
control la nivelul reea, incluznd ICMP, ARP, RARP, BOOTP i DHCP. n aceast
seciune vom arunca o privire asupra fiecruia dintre ele.

Potrebbero piacerti anche