Definirea notiunii de protocol în retelele de calculatoare
2.1 Modelul de referinta al interconectarii sistemelor deschise
2.1.1 Generalitati
Arhitectura unui sistem referin__ permite conectarea a oric_ror dou_ sisteme neomogene prin intermediul unor interfe_e referin__, permi_ând dezvoltarea _i conectarea la arhitectura existent_ a oric_ror alte sisteme, leg_turile între sisteme fiind prin intermediul interfe_elor referin__. Comportarea sistemului este modelat_ prin modelul de referin__ (Reference Model), model abstract dedicat construirii de sisteme comunicante. Standardul modelului de referin__, elaborat începând din 1984, _i permanent îmbun_t__it, (standard ISO 7498), creat de organiza_ia interna_ional_ pentru standardizare ISO, pentru interconectarea sistemelor deschise (Open Systems Interconnection - OSI), prevede o baz_ comun_ pentru definirea standardelor interna_ionale privind schimbul de informa_ie între sisteme (terminale, calculatoare, re_ele, procese). Aceste sisteme devin deschise unul altuia, putând fi combinate în cadrul arhitecturii, ca urmare a utiliz_rii interfe_elor referin__ admise. Modelul de referin__ ISO OSI este un model abstract, orientat pe conexiune, sistemele fiind considerate pe baza comunica_iilor dintre ele.
Principiile arhitecturale ale modelului referin__
Elementele RM
Elementele modelului de referin__ sunt (Fig.2.1):
Fig.2.1 Elementele modelului |
- sistemul, cuprinzând unul sau mai multe calculatoare, împreun_ cu software-ul aferent, împreun_ cu terminalele, perifericele, procesele-aplica_ie ce se execut_, _i chiar operatorii umani. Procesele aplica_ie sunt activit__i executate în scopul realiz_rii unei aplica_ii.
- entitatea aplica_ie, este o component_ a procesului aplica_ie ce se desf__oar_, fiind considerat_ o unitate discret_ _i complet definit_, având propriet__i bine definite. Entit__ile sunt aferente straturilor arhitecturale, definindu-se cooperarea între entit__i din acela_i strat 555c210f , din straturi adiacente sau din straturi pereche (similare), f_când parte din sisteme diferite. Într-un sens mai larg, prin entitate se în_elege orice obiect capabil de a schimba informa_ie cu mediul în care se manifest_.
- conexiunea, cu rol de stabilire a leg_turilor (asocierilor) între entit__ile aplica_ie cooperante
- mediul de interconectare, reprezint_ modelul mediului fizic folosit în intercomunicare.
Categoriile de func_ii ale RM
Func_iile complexe utilizate în realizarea sistemelor distribuite (func_ii de comunicare de date _i de procesare de date), sunt privite în cadrul modelului referin__ ca o mul_ime structurat_, folosindu-se tehnica stratific_rii (layering). Fiecare sistem este considerat ca o mul_ime ordonat_ de subsisteme, acestea fiind grupate pe nivele ierarhice (straturi). Specificarea interconect_rii sistemelor deschise impune definirea rela_iilor între subsistemele de pe straturile pereche _i în cadrul fiec_rui sistem, a celor între subsistemele de pe straturile adiacente. La baza stabilirii nivelelor arhitecturale ale modelului au stat diferite principii generale, precum:
- stabilirea unui num_r rezonabil de nivele, fiecare nivel (strat) colectând func_ii relativ apropiate
- între nivelele adiacente, interfa_a s_ fie bine definit_, dar relativ simpl_, respectiv num_rul de cereri de servicii _i servicii oferite s_ fie minim
- fiecare nivel s_ opereze cu func_ii diferite de ale celorlalte (specifice), iar modificarea func_iilor în cadrul unui strat s_ nu implice modific_ri în cadrul altuia
- noua arhitectur_ s_ p_streze cât mai mult posibil realiz_rile _i standardiz_rile existente.
Modelul OSI propune o arhitectur_ stratificat_ pe _apte nivele, ca în Fig. 2.2.
Fig.2.2 Straturile arhitecturale OSI |
Principalele func_ii ale fiec_rui strat sunt prezentate în tabelul urm_tor:
7 - Nivelul Aplica_ie Func_ii de management, procese aplica_ie utilizator, servicii dependendete de aplica_ie |
6 - Nivelul Prezentare Func_ii de interpretare _i transformare a reprezent_rii datelor, comprimarea mesajelor, securitatea datelor |
5 - Nivelul Sesiune Func_ii de control al dialogului între procese, segmentare, sincronizare |
4 - Nivelul Transport Transferul transparent al datelor, func_ii pentru controlul cap_t-la-cap_t al transmisiei, multiplexarea conexiunilor, adresare, asamblare/dezasamblare mesaje, transfer date prioritare, control flux |
3 - Nivelul Re_ea Func_ii pentru dirijare în re_ea, control flux, segmentare, blocare, controlul erorilor, gestionarea conexiunilor |
2 - Nivelul Leg_turii de Date Func_ii pentru stabilirea, folosirea _i eliberarea unei conexiuni leg_tur_ de date, controlul erorii, a fluxului de date |
1 - Nivelul Fizic Prezint_ caracteristicile electrice, mecanice _i func_ionale ale interfe_ei c_tre mediul de comunica_ie |
Tabel 2.1 Func_iile nivelelor arhitecturale OSI
Elementele unui strat arhitectural
Fiecare strat arhitectural al RM este compus din urm_toarele elemente:
- entit__ile, unit__i func_ionale ale stratului, participând la realizarea func_iilor acestuia
Fig.2.3 Elementele unui strat arhitectural OSI |
- protocoalele, controleaz_ cooperarea între entit__i
- serviciile, ilustrând capabilitatea func_ional_ a acelui strat; modelul de referin__ prezint_ modelul abstract al serviciului. Rela_iile între subsisteme sunt considerate sub forma utilizatorilor de servicii (service users) _i a furnizorilor de servicii (service providers), întotdeauna cererea de serviciu fiind f_cut_ stratului inferior, iar furnizarea serviciului fiind c_tre stratul adiacent superior. Descrierea interac_iunilor între utilizator _i furnizor de serviciu se face prin primitiva abstract_ de serviciu. Sintactic, o primitiv_ abstract_ de serviciu se compune din trei p_r_i, separate (sau, în lipsa confuziilor, neseparate) prin delimitatori ( . sau -), _i anume: ini_iala stratului OSI la care se face referire, numele colectiv al grupului de primitive _i numele individual al primitivei ( ex. T-Connect.req este numele primitivei pentru cererea de stabilire a conexiunii la nivel transport). Primitivele pot avea parametri. Un utilizator de servicii va emite primitive de tipul request sau response, iar furnizorul de servicii va emite primitive de tipul indication sau confirmation (Fig.2.4)
- punctele de acces la servicii, aferente interfe_elor între straturile adiacente, sunt folosite pentru schimbul de informa_ie între straturile adiacente.
Aceste elemente sunt ilustrate în reprezentarea din Fig.2.3.
Figure .4 Primitivele de serviciu |
Descrierea primitivelor de serviciu aferente unui strat constituie specifica_ia serviciilor (cerin_ele de servicii). Natura acestei specifica_ii este conceptual_, ea precizând doar efectul primitivei, acela_i, indiferent de natura subsistemelor înconjur_toare (interfe_ele cu straturile adiacente).
Arhitecturi ce preced modelul ISO OSI
Modelul de referin__ OSI s-a constituit ca o necesitate, în primul rând pentru a permite interconectarea unei mari diversit__i de echipamente ( sisteme de calcul, terminale), apoi pentru a permite interconectarea re_elelor, indiferent de mediul de tranmisie folosit, _i pentru a se putea realiza aplica_ii evoluate, accesibile unei mase largi de utilizatori (sisteme multimedia distribuite, re_ele cu valoare ad_ugat_).
La momentul elabor_rii standardelor pentru modelul referin__ OSI, existau mai multe modele arhitecturale, prezentând _i puncte comune, dar mai ales deosebiri, f_când deci imposibil_ o conectare facil_ sau unitar_ în cadrul unei metare_ele a echipamente din familii diferite.
Dintre aceste modele, cele mai r_spândite sunt:
- arhitectura DNA, elaborat_ de firma Digital
- arhitectura SNA, elaborat_ de IBM
- modelul DPA, bazat pe ARPANET (binecunoscuta re_ea universitar_ american_) _i DoD Data Network (re_eaua militar_ a Departamentului Ap_r_rii).
Fig.2.5 Arhitectura DPA |
Structurile arhitecturale sunt prezentate prin compara_ie cu modelul OSI, prin intermediul tabelului urm_tor (Tabel 2.2).
Modelul ierarhic DPA este prezentat în Fig.2.5. El se bazeaz_ pe no_iunea de nivele, între care schimbul de informa_ii nu este doar între nivelele adiacente, ci este direct între oricare nivele; deasemenea arhitectura DPA ofer_ servicii cu prec_dere neorientate pe conexiune, spre deosebire de filozofia OSI. Avantajele se realizeaz_ la protocoalele de pe nivelele joase, prin vitez_ sporit_ pentru re_elele fiabile (de aici _i pretabilitatea arhitecturilor de re_ele locale pentru folosirea unor componente ale acestui model). Tabelul 2.2 prezint_ deasemenea compara_ia între modelul OSI _i modelul DPA.
Arhitectura DPA a avut un puternic impact asupra dezvolt_rii arhitecturii altor re_ele (a re_elelor locale de ex.), a interconect_rii lor, protocoalele TCP / IP fiind folosite cu prec_dere pentru realizarea interconect_rii (internetworking), impunându-se practic ca standarde.
Model OSI |
Model DPA |
Arhitectura SNA |
Arhitectura DNA |
Aplica_ie Prezentare ----- ----- ---------------Sesiune ----- ----- ---------------Transport ----- ----- ---------------Re_ea ----- ----- ---------------Leg. date ----- ----- ---------------Fizic |
Procese aplica_ie (RJE, FTP, NFS, Telnet, etc.) TCP, UDP Internet IP+ICMP Network access LLC ----- ----- ----------------Fizic |
Func_ii gestionare servicii Control flux date ----- ----- ----------------Control transmisie ----- ----- ----------------Control cale Leg. date SDLC ----- ----- ----------------Fizic |
Utilizator + Aplica_ii de re_ea ----- ----- ---------------Servicii re_ea Transport + dirijare Leg. date DDCMP ----- ----- ---------------Fizic |
Tabel.2.2 Prezentarea comparativ_ a arhitecturilor OSI, DPA, SNA _i DNA
Tabelul prezint_ sugestiv diferen_ele în arhitecturile celor trei modele anterioare modelului OSI, inexisten_a unor standarde comune f_când dificil_ activitatea de interconectare a echipamentelor din familii diferite.
Arhitectura re_elelor locale
Marea diversitate a tipurilor de re_ele locale a dus la dezvoltarea unor produse program specifice, care implementeaz_ protocoale specifice. Totu_i, în ultimii cinci ani s-a observat tendin_a de aliniere a arhitecturii re_elelor locale la modelul de referin__, ap_rând grupuri de norme ce iau în considerare recomand_rile ISO OSI. Analiza arhitecturilor LAN demonstreaz_ o oarecare asem_nare arhitectural_ la nivelele superioare, de_i func_iile unor straturi sunt îndeplinite de componente ale propriului sistem de operare, diferen_ele fiind cu prec_dere la nivelele aferente comunica_iei (straturile LLC _i MAC). Tabelul 2.3 încearc_ o prezentare general_ a arhitecturilor LAN prin compara_ie cu modelul OSI, precum _i o exemplificare pentru re_ea Novell cu sistem de operare Netware.
Nivele OSI |
LAN Novell |
Componente LANs |
Aplica_ie ----- ----- -------Prezentare ----- ----- -------Sesiune ----- ----- -------Transport ----- ----- -------Re_ea ----- ----- -------Leg. date ----- ----- -------Fizic |
Protocoale aplica_ie ----- ----- --------- ----- -------Netware Core Protocol NetBios Netware SPX Netware IPX Ethernet, Token-ring, Arcnet ----- ----- --------- ----- -------Fizic |
Protocoale aplica_ie (E-mail, FTAM) -------- ----- ------ ----- ----- ---------Func_ii sistem de operare re_ea (NOS) -------- ----- ------ ----- ----- ---------Func_ii interfa__ sist. operare NBIOS -------- ----- ------ ----- ----- ---------Protocoale specifice pentru conectivitatea între re_ele -------- ----- ------ ----- ----- ---------Control leg_tur_ logic_ LLC Control acces la mediu (MAC) - 802.x Fizic |
Tabelul 2.3 Model arhitectural pentru re_elele locale
Diversitatea protocoalelor utilizate face dificil_ activitatea de interconectare a re_elelor, ceea ce a dus la dezvoltarea unor echipamente speciale de interconectare, numite generic relee, fie mai simple (repetoare, pun_i-bridge), sau mai elaborate (sisteme de dirijare-routers, por_i-gateway); toate fac conversie de protocol, începând de la un nivel mai coborât sau de la unul superior. Fig.2.6 prezint_ modelul pentru un router.
Aplica_ie |
Aplica_ie |
|||||
Prezentare |
Prezentare |
|||||
Sesiune |
Sesiune |
|||||
Transport |
ROUTER |
Transport |
||||
Re_ea |
Re_ea |
Re_ea |
||||
Date |
|
Date |
Date |
Date |
||
Fizic |
Fizic |
Fizic |
Fizic |
Re_ea 1 Re_ea 2
Fig.2.6 Modelul interconect_rii re_elelor prin folosirea de routere
Conceptul de baz_ al comunic_rii sistemelor deschise: protocolul
Conform defini_iei standardului ISO privind interconectarea sistemelor deschise _i a definirii modelului de referin__:
Protocolul aferent stratului (N) reprezint_ setul de reguli sintactice _i semantice ce determin_ schimbul de informa_ie între entit__ile stratului (N), în a_a fel încât func_iile aferente acelui strat s_ fie realizate
Regulile sintactice determin_ formatul (harta bi_ilor) pentru mesajele interschimbate, în mod uzual fiecare mesaj transportând informa_ie de control sau date procesabile.
Regulile semantice determin_ con_inutul procedurilor ce guverneaz_ activitatea acelui strat (transfer de date, gestionare conexiuni, control eroare, etc.), precum _i secven_a corect_ (ca tipuri de mesaje _i durate temporale) a dialogului între p_r_ile comunicante.
Protocolul poate fi caracterizat prin parametri calitativi _i cantitativi.
Parametrii cantitativi se exprim_ în bi_i, unit__i temporale, num_r de mesaje, _i se refer_ la: lungimea unit__ilor de date, dimensiuni de mesaje, cadre, pachete, durate temporale pentru fazele de conectare, transfer date, deconectare, rate de erori, etc.; toate aceste aspecte fac parte din testarea performan_ei protocoalelor.
Parametrii calitativi se refer_ la comportarea corect_, lipsit_ de erori logice sau func_ionale, fiind apanajul antivit__ilor de analiz_ a model_rii sau a test_rii conforman_ei între model _i implementare.
Protocolul trebuie încadrat contextual, prin studiul rela_iilor cu mediul înconjur_tor, respectiv cu straturile adiacente. De aceea descrierea unui protocol de nivel (N) trebuie completat_ cu prezentarea serviciilor furnizate stratului superior, a celor solicitate stratului adiacent inferior, parametrilor punctelor de acces la servicii (calitatea interfe_elor între straturi). Astfel de probleme se pun în procesul test_rii, când un testor va trebui s_ înlocuiasc_ un strat adiacent (inferior sau superior), sau amândou_, _i s_-l simuleze în mod realist.
Standardizarea actual_ în domeniul protocoalelor din re_elele de calculatoare
Organiza_iile interna_ionale pentru domeniul standardelor _i a comunica_iilor între calculatoare, ( ISO, CCITT), au elaborat mai multe standarde, cele mai importante putând fi grupate conform tabelului urm_tor.
Nivel |
Standarde |
Aplica_ie |
ISO 8572 - Protocol acces, transfer _i gestiune fi_iere FTAM ISO 8832 - Protocol gestiune lucr_ri ISO 9041 - Protocol terminal virtual CCITT X.400 - Po_ta electronic_ |
Prezentare |
ISO 8823 - Protocol prezentare orientat pe conexiune ISO 9576 - Protocol prezentare neorientat pe conexiune ISO 8824 - Specificare ASN.1 |
Sesiune |
ISO 8327 - Protocol sesiune orientat pe conexiune ISO 9548 - Protocol sesiune neorientat pe conexiune |
Transport |
ISO 8073 - Protocol transport orientat pe conexiune ISO 8602 - Protocol transport neorientat pe conexiune |
Re_ea |
CCITT X.25 - Protocol nivel 3 (nivel pachet) |
Leg_tur_ date |
CCITT HDLC - Protocol nivel 2 ISO 8802.x - Protocoale leg_tur_ logic_ _i acces la mediu |
Fizic |
CCITT X.21 - Protocol interfa__ digital_ CCITT X.21bis - Protocol interfa__ analogic_ |
Tabel 2.4 Standardizarea în domeniul protocoalelor
Pe lâng_ protocoalele standard enumerate, în timp s-au elaborat _i alte standardiz_ri, atât pentru diverse noi aplica_ii, pentru noi categorii de re_ele (re_ele locale, ISDN, re_ele de mare vitez_), cât _i pentru activitatea efectiv_ de proiectare a protocoalelor (elaborarea de limbaje standard pentru specificarea protocoalelor - SDL, ESTELLE, LOTOS), alte activit__i de standardizare fiind în derulare).
|