Sunteți pe pagina 1din 6

Luminia SCRIPCARIU Bazele reelelor de calculatoare

ANEXA A
PROGRAMAREA SERVICIILOR
INTERNET

Programarea serviciilor de reea implic o cunoatere amnunit a modului n care


circul datele prin Internet i, mai precis, a protocoalelor din suita TCP/IP care gestioneaz
toate transferurile de date prin reea. Serviciile de reea se pot implementa n diverse limbaje
de programare: C, C++, Java.
Pentru realizarea programelor de aplicaie care s implementeze anumite servicii
Internet sunt necesare consultarea documentaiei oficiale care le standardizeaz i nelegerea
corect a acestora, inclusiv a terminologiei specifice TCP/IP, pentru evitarea interpretrilor
greite i a incompatibilitilor pe care le-ar genera acestea n procesele de comunicaie din
reea.
Considernd deja cunoscute noiunile de baz ale suitei TCP/IP, se vor prezenta n
continuare anumite detalii ale protocoalelor din suit i modul n care pot fi folosite acestea
de ctre programatorii de aplicaii de reea.
Transmiterea datelor n Internet se face prin intermediul protocolului Internet care
mpacheteaz datele de pe nivelul superior cu un antet de 20 octei fr opiuni sau de 24 de
octei cnd sunt exprimate anumite opiuni de transfer.
Dintre cmpurile antetului IP sunt prezentate cele care au semnificaii deosebite i
sunt mai importante pentru programarea serviciilor de reea.

199
Luminia SCRIPCARIU Bazele reelelor de calculatoare

A.1 DENUMIREA UNITII DE DATE

Datele circul n reea respectnd structura impus de modelele stratificate de reea,


OSI sau TCP/IP.
Denumirea unitii de date este schimbat de nivelul pe care ajung datele cnd se
deplaseaz prin stiva de protocoale.
Termenul de mesaj (message) desemneaz o unitate de date transmis printr-o
conexiune virtual.
Un mesaj de aplicaie (application message) circul ntre nivelul de aplicaie i cel
de transport.
Prin mesaj de transport (transport message) se nelege un segment TCP i nu o
datagram UDP.
Termenul de datagram (datagram) se folosete i n cazul protocolului Internet
pentru a defini serviciul de livrare a datelor, fr conexiune, sub forma unei uniti de date
care include toat informaia util, spre deosebire de noiunea de flux de octei (octet-
stream) care semnific transmisia continu de date i de mesaje. Mesajele se transmit ca flux
de octei.
Pachetul (packet) este termenul generic pentru o unitate de date neidentificat, cu
formatul stabilit de protocolul de reea, utilizat de serviciul de livrare a datelor.

A.2 ADRESE UTILIZATE N INTERNET

Adresele utilizate n Internet au diferite dimensiuni.


Adresa fizic a oricrui echipament (MAC address) este exprimat pe 6 octei, n
format hexazecimal. Adresele Ethernet au deci dimensiunea de 6 octei.
Adresele IBM Token-Ring sunt de 2 sau de 6 octei.
Adresele ARCNET au un singur octet.
Adresele IP definite n mod ierarhizat pe nivelul Internet au 4 octei n format zecimal
cu puncte (decimal-dotted).
Adresele IPX sunt de 12 octei exprimai n hexazecimal.

200
Luminia SCRIPCARIU Bazele reelelor de calculatoare

Reelele de transport ATM folosesc celule de 53 de octei pentru livrarea rapid a


datelor. Transmisia pachetelor IP sau IPX prin ATM necesit conversia de format a unitii
de date, operaie denumit emulare.
Protocolul ARP convertete adresele de reea n adrese de nivel legtur de date pe
care le stocheaz n tabelele de adrese ARP din memoria cache, reactualizate n mod dinamic.
RARP, BOOTP i DHCP realizeaz conversia invers a adreselor fizice n adrese de reea.

A.3 TIPUL DE SERVICIU INTERNET

Cmpul Tipul Serviciului ToS (Type of Service), de un octet, din antetul pachetului
IP, permite stabilirea unor prioriti pentru transmisia datelor:
1. Biii 0 2 exprim prioritatea datelor. Dei este rareori folosit, acest subcmp
poate fi extreme de util n soluionarea congestiilor de reea, caz n care se impune transmisia
prioritar a informaiilor de control i aplicarea unor algoritmi de control al congestiilor care
s nu fie afectai de congestia propriu-zis.
2. Bitul 3, de ntrziere, este setat n cazul aplicaiilor interactive (Telnet, chat, jocuri
on-line) cnd se dorete minimizarea ntrzierilor de transmisie a comenzilor de la tastatur.
3. Bitul 4, de debit, este activat (valoare logic 1) atunci cnd se transfer volume
mari de date (de exemplu, prin FTP).
4. Bitul 5, de siguran, se seteaz n cazul pachetelor de maxim securitate, cum sunt
cele transmise prin SNMP.
5. Bitul 6 de cost, este setat pentru minimizarea costurilor de transmisie, ca de
exemplu n aplicaii Usenet care gestioneaz cantiti foarte mari de date, fr caracter critic
din punct de vedere al timpului de transmisie sau al siguranei de funcionare a reelei.
6. Bitul 7 este neutilizat momentan.
De multe ori, un criteriu de optim le exclude pe celelalte. Este necesar ca
programatorul de aplicaii s i stabileasc n mod clar prioritile de transmisie.
n prezent, majoritatea routerelor ignor valorile acestui cmp. Totui operaiile de
depanare a reelelor i a programelor software de reea sunt facilitate de folosirea acestui
cmp.

201
Luminia SCRIPCARIU Bazele reelelor de calculatoare

A.4 FRAGMENTAREA

Antetul IP include dou cmpuri de identificare (FI) i de control a fragmentelor (FC)


unui mesaj.
Fragmentarea se impune atunci cnd mesajul de aplicaie are o lungime mai mare
dect lungimea maxim a unitii transmise (MTU) de IP (65535 octei).
Trebuie s observm c datele de pe nivelul de aplicaie primesc un antet pe nivelul de
transport (prin TCP sau UDP) i un antet IP la nivelul de reea.
TCP admite un MTU de 576 de octei.
Pe nivelul legtur apar alte constrngeri. Cadrele Ethernet nu pot depi 1500 de
octei. n reelele IBM Token Ring MTU este de 4464 octei iar n alte reele se utilizeaz
valori i mai mici ale MTU, de pn la 128 de octei. Fragmentarea mesajelor este deci
inevitabil. Dar prin creterea numrului de fragmente, crete i riscul de a se erona cel puin
unul dintre acestea ceea ce duce la respingerea datagramei n ansamblu.
Pentru fiecare fragment, protocolul Internet creeaz un punct de ntrerupere (breaking
point) care marcheaz poziia octetului din pachet unde se realizeaz divizarea datelor, ca
distan fa de nceputul datagramei. Aceast valoare este memorat pe ultimii 13 bii ai FC
ca deplasament al fragmentului (Offset Fragment). Valoare maxim exprimabil pe 13 bii
este 8191 deci este necesar exprimarea deplasamentului pe cuvinte de 8 octei. Valoarea
maxim (8*8191=65528) marcheaz primul din ultimii 8 octei ai datagramei IP
(65528+7=65535).
Subcmpul deplasament este utilizat la recepie pentru ordonarea corect a
fragmentelor respective. Valoarea acestui deplasament reprezint poziia primului octet din
fiecare fragment fa de nceputul pachetului.
Primii 3 bii din cmpul FC sunt flaguri de control. Primul flag setat semnific nu
fragmenta. Acesta este folosit pentru testarea i depanarea aplicaiilor de reea. Al treilea
flag are semnificaia mai urmeaz i alte fragmente i este setat pentru toate fragmentele
unui mesaj cu excepia ultimului.

202
Luminia SCRIPCARIU Bazele reelelor de calculatoare

A.5 OPIUNI IP

Opiunile IP care pot fi incluse n antetul IP prin creterea lungimii acestuia cu nc 4


octei sunt exprimate pe 8 bii dup cum urmeaz:
Bitul 0 de copiere setat va impune copierea opiunilor n toate fragmentele unui
pachet. Dac are valoarea logic 0, opiunile vor fi exprimate numai n antetul fiecrui
fragment.
Biii 1-2 exprim clasa de opiune cu urmtoarele valori posibile:
00 semnific control de reea
01 este rezervat
02 se utilizeaz pentru depanare i msurtori n reea
03 este rezervat.
Ultimii 5 bii (3-7) exprim un numr de opiune cu o anumit lungime i semnificaie
(Tabel A1).
Tabel A1. Opiuni IP
Clasa de Numr de opiune Lungime (bii) Semnificaie
opiuni
2 11 Securitate
3 variabil Rutare lejer la surs
00
7 variabil nregistrare rut
9 variabil Rutare strict la surs
10 4 variabil Marcajul timpului n Internet

Opiunea de securitate se folosete n aplicaiile militare.


Opiunea de rutare lejer la surs permite specificarea unei liste de adrese prin care
poate s treac pachetul.
Opiunea de nregistrare a rutei indic echipamentelor i softului de reea s
nregistreze calea urmat de pachet n cmpul de opiuni IP.
Opiunea de rutare strict la surs impune adresele de reea prin care poate s treac
pachetul.

203
Luminia SCRIPCARIU Bazele reelelor de calculatoare

Prin opiunea de marcare a timpului, routerele sunt obligate s memoreze ora la care
este vizitat de un pachet i adresa acestuia.
OBSERVAIE: Protocoalele de rutare nu sunt incluse n suita TCP/IP dei
conlucreaz cu aceasta pe nivelul de reea.
n tabelele de rutare se utilizeaz identificatorul de reea, i nu cel de host, extras de
protocolul Internet din antetul pachetului.
Cmpul Flag indic routerului dac livrarea se face direct sau indirect.
n plus, pentru livrare direct se transfer datele ca i cadre (Frame Relay) prin
tehnologia de reea folosit (Ethernet, Token Ring etc.).
Pentru livrare indirect se specific adresa urmtorului router de legtur cu reeaua
de destinaie (next hop).

204

S-ar putea să vă placă și