documentc2

6
Curs 2 Modelul ISO-OSI ISO (Organizaţia Internaţională de Standardizare), una din cele mai importante organizaţii de standardizare, a studiat diferite tipuri de reţele existente în acea vreme (DECnet, SNA, TCP/IP) şi a propus în 1984 un model de referinţă numit OSI - Open System Interconnection). Acest model defineşte şapte niveluri, împreună cu standarde şi un set de protocoale pentru ele. Este un model teoretic, construit pentru a schematiza comunicaţia într-o reţea de calculatoare şi pentru a explica traseul informaţiei dintr-un capăt în altul al reţelei. Deşi nu este singurul model existent, este cel mai folosit în învăţământ, pentru că ilustrează cel mai bine separarea între niveluri şi împărţirea comunicaţiei în bucăţele mai mici, mai uşor de definit şi în consecinţă mai uşor de dezvoltat. Deşi există multe protocoale care sunt mai greu de încadrat pe niveluri OSI, totuşi toţi producătorii de echipamente de reţea şi de protocoale noi îşi definesc produsele cu ajutorul nivelurilor OSI. Figura 1: Modelul ISO-OSI Modelul OSI al Organizatiei Internationale pentru Standardizare (ISO) este structurat pe şapte niveluri: Aplicaţie, Prezentare, Sesiune, Transport, Reţea, Legatură de date şi Fizic. Pe parcursul acestui capitol este prezentat succint rolul fiecărui nivel, urmând ca mai departe să fie detaliat modul de funcţionare al fiecăruia şi funcţiile sale specifice. Memorarea nivelurilor acestui model este absolut necesară pentru înţelegerea reţelelor de calculatoare şi pentru a avea o reprezentare permanentă a modulelor funcţionale care fac o reţea să meargă. Pentru a reţine mai uşor cele şapte niveluri, un ajutor ar fi propoziţia în limba engleza "All People Seem To Need Data Processing", ale cărei cuvinte încep exact cu literele cu care încep şi numele în limba engleza ale celor şapte niveluri privite de sus în jos. Alte propoziţii ajutătoare sunt: "Please Do Not Throw Sausage Pizza Away" şi "Please Do Not Tell Sales People Anything" care reprezintă prima litera din nivelurile OSI privite de jos în sus. Desigur, putem forma diverse propoziţii în limba română care servesc aceluiaşi scop: ``Am Plecat Să Trimit Roze La Fete'', sau ca un citat dintr-un discurs nerostit al preşedintelui Ion Iliescu: ``Axiologia Peripatetismului Sinergetic Transfigurează Raţionalitatea Logică Formală''. 1 Nivelul fizic 2 Nivelul legătură de date 3 Nivelul reţea 4 Nivelul transport 1

Upload: cezara

Post on 04-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DocumentC2

Curs 2

Modelul ISO-OSI ISO (Organizaţia Internaţională de Standardizare), una din cele mai importante organizaţii de standardizare, a studiat diferite tipuri de reţele existente în acea vreme (DECnet, SNA, TCP/IP) şi a propus în 1984 un model de referinţă numit OSI - Open System Interconnection).

Acest model defineşte şapte niveluri, împreună cu standarde şi un set de protocoale pentru ele. Este un model teoretic, construit pentru a schematiza comunicaţia într-o reţea de calculatoare şi pentru a explica traseul informaţiei dintr-un capăt în altul al reţelei. Deşi nu este singurul model existent, este cel mai folosit în învăţământ, pentru că ilustrează cel mai bine separarea între niveluri şi împărţirea comunicaţiei în bucăţele mai mici, mai uşor de definit şi în consecinţă mai uşor de dezvoltat. Deşi există multe protocoale care sunt mai greu de încadrat pe niveluri OSI, totuşi toţi producătorii de echipamente de reţea şi de protocoale noi îşi definesc produsele cu ajutorul nivelurilor OSI.

Figura 1: Modelul ISO-OSI

Modelul OSI al Organizatiei Internationale pentru Standardizare (ISO) este structurat pe şapte niveluri: Aplicaţie, Prezentare, Sesiune, Transport, Reţea, Legatură de date şi Fizic. Pe parcursul acestui capitol este prezentat succint rolul fiecărui nivel, urmând ca mai departe să fie detaliat modul de funcţionare al fiecăruia şi funcţiile sale specifice. Memorarea nivelurilor acestui model este absolut necesară pentru înţelegerea reţelelor de calculatoare şi pentru a avea o reprezentare permanentă a modulelor funcţionale care fac o reţea să meargă. Pentru a reţine mai uşor cele şapte niveluri, un ajutor ar fi propoziţia în limba engleza "All People Seem To Need Data Processing", ale cărei cuvinte încep exact cu literele cu care încep şi numele în limba engleza ale celor şapte niveluri privite de sus în jos. Alte propoziţii ajutătoare sunt: "Please Do Not Throw Sausage Pizza Away" şi "Please Do Not Tell Sales People Anything" care reprezintă prima litera din nivelurile OSI privite de jos în sus. Desigur, putem forma diverse propoziţii în limba română care servesc aceluiaşi scop: ``Am Plecat Să Trimit Roze La Fete'', sau ca un citat dintr-un discurs nerostit al preşedintelui Ion Iliescu: ``Axiologia Peripatetismului Sinergetic Transfigurează Raţionalitatea Logică Formală''.

• 1 Nivelul fizic • 2 Nivelul legătură de date • 3 Nivelul reţea • 4 Nivelul transport

1

Page 2: DocumentC2

• 5 Nivelul sesiune • 6 Nivelul prezentare • 7 Nivelul aplicaţie

1 Nivelul fizic

Nivelul fizic defineşte specificaţii electrice, mecanice, procedurale şi funcţionale pentru activarea, menţinerea şi dezactivarea legăturilor fizice între sisteme. În această categorie de caracteristici se încadrează nivelurile de tensiune, timingul schimbărilor acestor niveluri, ratele de transfer fizice, distanţele maxime la care se poate transmite şi alte atribute similare care sunt definite de specificaţiile fizice. Dacă doriţi să reţineţi nivelul fizic în cât mai puţine cuvinte, gândiţi-vă la semnale şi la mediu de transfer.

Scopul nivelului fizic este de a transporta o secvenţă de biţi de la o maşină la alta. Pentru aceasta pot fi utilizate diverse medii fizice. Fiecare dintre ele este definit de lărgimea sa de bandă, întârziere, cost şi uşurinţa de instalare şi de întreţinere.

2 Nivelul legătură de date

Nivelul legătură de date oferă transportul sigur al informaţiei printr-o legătură fizică directă. Pentru a realiza acest lucru, nivelul legătură de date se ocupă cu adresarea fizică, topologia reţelei, accesul la reţea, detecţia şi anunţarea erorilor şi controlul fluxului fizic (flow control). Dacă doriţi să vă amintiţi nivelul doi în cât mai puţine cuvinte, gândiţi-vă la cadre şi la controlul accesului la mediu.

Nivelul legătură de date este responsabil cu transmiterea corectă a datelor printr-o legătură fizică existentă, între două puncte conectate direct prin această legătură fizică. Nivelul fizic nu poate realiza acest lucru, deoarece la nivelul fizic nu putem vorbi despre nici un fel de date, ci numai despre biţi şi, mai exact, despre reprezentarea fizică a acestora (niveluri de tensiune, intensitate a luminii etc.).

3 Nivelul reţea

Nivelul reţea este un nivel complex care oferă conectivitate şi selectează drumul de urmat între două sisteme gazdă care pot fi localizate în reţele separate geografic. Acesta este nivelul cel mai important în cadrul Internetului, asigurând posibilitatea interconectării diferitelor reţele. Tot la acest nivel se realizează adresarea logică a tuturor nodurilor din Internet. La nivelul reţea operează ruterele, dispozitivele cele mai importante în orice reţea de foarte mari dimensiuni. Dacă doriţi să reţineţi nivelul reţea în cât mai puţine cuvinte, gândiţi-vă la selecţia drumului, rutare şi IP-uri.

4 Nivelul transport

Nivelul transport segmentează datele în sistemul sursă şi le reasamblează la destinaţie. Limita dintre nivelul transport şi nivelul sesiune poate fi văzută ca, graniţa între protocoale aplicaţie şi protocoale de transfer de date. În timp ce nivelele aplicaţie, prezentare şi sesiune se preocupă cu probleme legate de aplicaţii, cele patru niveluri inferioare se ocupă cu probleme legate de transportul datelor. Nivelul transport încearcă să ofere un serviciu de transport de date care să izoleze nivelurile superioare de orice specificităţi legate de modul în care este executat transportul datelor. Mai specific, probleme cum ar fi siguranţa (reliability) sunt responsabilitatea nivelului transport. În cadrul oferirii de servicii de comunicare, nivelul

2

Page 3: DocumentC2

transport iniţiază, gestionează şi închide circuitele virtuale. Pentru a fi obţinută o comunicaţie sigură, servicii de detectare şi recuperare din erori sunt oferite tot la acest nivel. Tot aici este realizat controlul fluxului (flow control). Dacă doriţi să reţineţi nivelul transport în cât mai puţine cuvinte, gândiţi-vă la flow control, la calitatea serviciilor şi la siguranţă.

5 Nivelul sesiune

Aşa cum implică şi numele său, nivelul sesiune se ocupă cu stabilirea, menţinerea, gestionarea şi terminarea sesiunilor în comunicarea dintre două staţii. Nivelul sesiune oferă servicii nivelului prezentare. De asemenea, el realizează sincronizarea între nivelurile prezentare ale două staţii şi gestionează schimbul de date între acestea. În plus faţă de regularizarea sesiunilor, nivelul sesiune oferă bazele pentru transferul eficient de date, pentru clase de servicii, pentru raportarea excepţiilor nivelurilor sesiune, prezentare şi aplicaţie. Dacă doriţi să reţineţi nivelul sesiune în puţine cuvinte, gândiţi-vă la dialog şi la conversaţii.

6 Nivelul prezentare

Nivelul prezentare se asigură că informaţia transmisă de nivelul aplicaţie al unui sistem poate fi citită şi interpretată de către nivelul aplicaţie al sistemului cu care acesta comunică. Dacă este necesar, nivelul prezentare face traducerea între diverse formate de reprezentare, prin intermediul unui format comun. Tot nivelul prezentare este responsabil cu eventuala compresie / decompresie şi criptare / decriptare a datelor. Pentru a reţine nivelul prezentare în puţine cuvinte, gândiţi-vă la reprezentare şi la formatul comun al datelor.

7 Nivelul aplicaţie

Nivelul aplicaţie este cel care este situat cel mai aproape de utilizator; el oferă servicii de reţea aplicaţiilor utilizator. Diferă de celelalte niveluri OSI prin faptul că nu oferă servicii nici unui alt nivel, ci numai unor aplicaţii ce sunt situate în afara modelului OSI. Exemple de astfel de aplicaţii sunt editoare de texte, utilitare de calcul tabelar, terminale bancare etc. Nivelul aplicaţie stabileşte disponibilitatea unui calculator cu care se doreşte iniţierea unei conexiuni, stabileşte procedurile ce vor fi urmate în cazul unor erori şi verifică integritatea datelor. Daca doriţi să reţineţi în cât mai puţine cuvinte nivelul aplicaţie, gândiţi-vă la un browser de web.

Modelul TCP/IP Deşi modelul OSI este general recunoscut, standardul istoric şi tehnic pentru Internet este TCP/IP (Transmission Control Protocol/Internet Protocol). Modelul TCP/IP a fost creat de US DoD ( US Department of Defence - Ministerul Apărării Naţionale al Statelor Unite) din necesitatea unei reţele care ar putea supravieţui în orice condiţii. Modelul TCP/IP are patru niveluri: Aplicaţie, Transport, Reţea (sau Internet) şi Acces la Reţea.

3

Page 4: DocumentC2

Figura 2: Modelul TCP/IP

Nivelul Aplicaţie nu este identic cu cel din modelul ISO-OSI. Acesta include ultimele trei niveluri superioare din stiva OSI. Acestea au fost comasate pentru a putea fi tratate la un loc toate problemele legate de protocoale de nivel înalt, fie ele de reprezentare, codificare sau control al dialogului.

Nivelul Transport este identic cu cel din modelul OSI, ocupându-se cu probleme legate de siguranţă, control al fluxului şi corecţie de erori.

Scopul nivelului Retea (Internet) este de a asigura transmiterea pachetelor de la orice sursă din reţea şi livrarea lor către o destinaţie independent de calea şi reţelele pe care le-a străbătut pentru a ajunge acolo. Determinarea drumului optim şi comutarea pachetelor au loc la acest nivel.

Nivelul Acces la reţea se ocupă cu toate problemele legate de transmiterea efectivă a unui pachet IP pe o legătură fizică, incluzînd şi aspectele legate de tehnologii şi de medii de transmisie, adică nivelurile OSI Legătură de date şi Fizic.

Paralelă între OSI şi TCP

Figura 3: Comparaţia ISO-OSI - TCP/IP

Deşi atât OSI cât şi TCP încearcă să definească/modeleze acelaşi lucru, şi anume procesul de comunicare între două entităţi, se pune firesc întrebarea: care din ele este mai bun? Analiza privind asemănările şi deosebirile care leagă cele două modele.

4

Page 5: DocumentC2

O importantă asemănare între OSI şi TCP/IP o constituie faptul că ambele sunt modele conceptuale ale procesului de comunicare. Din păcate această asemănare simplă şi evidentă conţine şi o primă deosebire fundamentală: OSI este general, permiţând explicarea oricărui proces de comunicare, în timp ce TCP/IP-ul nu reuşeşte să modeleze perfect decât procesul de comunicare folosit în Internet.

Încapsularea datelor Înainte ca datele să fie transmise, ele trec printr-un proces numit încapsulare. Încapsularea adaugă informaţii specifice fiecărui nivel prin adăugarea unui antet şi a unui trailer la fiecare nivel. Acest proces este vital în comunicare. Prin încapsulare, protocoalele de pe fiecare nivel pot comunica între sursă şi destinaţie independent de celelalte niveluri. Fiecare nivel îşi adaugă informaţii specifice pe parcursul încapsulării. Astfel, în cadrul procesului de decapsulare, protocoalele de pe un anumit nivel pot primi aceste date la destinaţie şi pot da informaţii nivelurilor superioare în funcţie de aceste date. Se creează în acest fel o comunicare între nivelurile analoge de la sursă şi de la destinaţie; această comunicare nu are loc prin legături fizice, ci este posibilă datorită procesului de încapsulare/decapsulare a datelor. Fiecare nivel comunică cu nivelurile analoge prin intermediul unor unităţi de date proprii (PDU = Protocol Data Unit). Aceste unităţi de date sunt constituite din datele primite de la nivelurile superioare, încadrate de un antet şi un trailer specifice nivelului respectiv. Fiecare tip de PDU pentru nivelurile 2, 3 şi 4 (legătură de date, reţea şi transport) au semnificaţii deosebite şi poartă nume consacrate. Nivelurile transport comunică prin segmente, nivelurile reţea comunică prin pachete, iar cele legătură de date creează prin încapsulare frame-uri (cadre).

Vom da un exemplu pentru a putea înţelege mai bine şi pentru a putea urmări procesul de încapsulare a datelor. Să presupunem că un utilizator oarecare scrie un e-mail pe care îl trimite unui destinatar. El face acest lucru prin intermediul unui client de mail (de exemplu MS. Outlook). La trimiterea e-mail-ului, protocolul SMTP, situat la nivel aplicaţie, primeşte date de la clientul de mail şi le trimite nivelului prezentare, după ce şi-a adăugat informaţiile proprii ce vor fi necesare la recepţionare pentru corecta interpretare de către clientul de mail al destinatarului. La nivelul prezentare, datele sunt trecute în format ASCII pentru a asigura o reprezentare comună şi trimise mai departe nivelului sesiune. Nivelul sesiune va crea şi deschide o sesiune de comunicare cu calculatorul destinaţie, cu scopul de a trimite datele primite de la nivelul superior. Datele trimise de nivelul sesiune sunt recepţionate de către nivelul transport. Acesta le împarte în segmente, adăugându-şi propriile informaţii (numărul segmentului, portul sursă şi destinaţie etc.) prin intermediul unui header şi trimite segmentele astfel obţinute nivelului reţea. Nivelul reţea va crea pachete prin adăugarea headerului propriu ce va conţine elemente de adresare IP, cum ar fi adresa IP a sursei şi a destinaţiei. Pachetele sunt trimise nivelului legătură de date. Nivelul legătură de date încapsulează pachetul într-un cadru, adăugându-şi propriul header ce conţine elemente de adresare fizică. Cadrele sunt pasate nivelului fizic, care este răspunzător cu transmiterea efectivă a biţilor prin mediul de transmisie. Astfel, deşi singura comunicare reală are loc între nivelurile fizice, fiecare nivel poate transmite date specifice nivelului analog de la destinaţie ce vor fi interpretate de către acestea.

O altă importantă asemănare între cele două modele o reprezintă faptul că ambele conţin o stivă de niveluri care sunt legate între ele prin noţiunea de serviciu (ceea ce ştie să facă un nivel), interfaţă (modul în care serviciile sunt oferite nivelui superior) şi protocol (modul în care sunt efectiv implementate serviciile). Dacă OSI reuşeşte să facă o distincţie clară între aceste trei elemente, pentru TCP/IP ele nu reprezintă deloc un element vital.

5

Page 6: DocumentC2

Încă o asemănare ar mai putea fi identificată: ambele modele s-au bucurat de o răspândire largă. Şi de această dată urmează un ``din păcate'', pentru că, dacă modelul OSI îşi datorează popularitatea faptului că permite explicarea teoretică a oricărui proces de comunicare, TCP/IP-ul este faimos prin succesul răsunător al Internetului, reţea care se bazează pe el.

După cum a devenit deja clar, deşi OSI s-a dorit un model ideal, care să ajute realizarea de paşi rapizi în evoluţia comunicării, chiar generalitea sa l-a condamat la o existenţă doar în plan teoretic. De cealaltă parte, TCP/IP-ul a apărut prin descrierea unei situaţii cât se poate de practice şi, după cum realitatea actuală o arată, nu necesită nici o modificare pentru a satisface în continuarea nevoile de comunicare ale unei comunităţi tot mai mari şi mai diverse. Tocmai această ``suficienţă'' a făcut un câştigător din TCP/IP şi un învins din OSI pe plan practic: pentru OSI protocoalele care să respecte modelul trebuiau create (şi evident apoi implementate şi folosite). Acest lucru nu s-a mai întâmplat.

Un alt mod de explicare al eşecului OSI îl reprezintă momentul nefast în care acesta a apărut. Mai exact, trecerea la OSI ar fi reprezentat pentru multe firme renunţarea la soluţiile deja existente, bazate pe TCP/IP, şi depunerea unui efort considerabil pentru dezvoltarea unora noi, bazate pe noul model.

Din punct de vedere tehnic o diferenţă evidentă dintre cele modele o reprezintă faptul că nivelurile superioare prezente în OSI sunt comasate într-unul singur la TCP/IP. Acest lucru însă nu neagă existenţa unor niveluri ca Sesiune sau Prezentare, ci doar demonstrează că ele sunt suficient de ``personale'' pentru aplicaţii pentru a nu necesita o standardizare. Acest lucru poate fi uşor pus în evidenţă de analiza oricărei aplicaţii Internet.

O altă diferenţă tot de ordin tehnic o reprezintă faptul că OSI-ul descrie două tipuri de protocoale, orientate conexiune şi fără conexiune, la nivelul reţea şi doar unul, cel orientat conexiune, pentru nivelul transport. TCP/IP-ul merge exact în direcţia opusă, oferind doar un protocol fără conexiune la nivel reţea şi ambele tipuri de protocoale pentru nivelul transport. Acest lucru dă mai multă putere aplicaţiilor care pot astfel să îşi aleagă protocolul cel mai potrivit.

O altă deosebire de ordin tehnic care complică OSI-ul e faptul că anumite operaţii, cum ar fi de exemplu verificările de integritate, sunt realizate de mai multe ori în cadrul unor niveluri diferite. Nu vom detalia mai mult implicaţiile acestui lucru, însă merită reţinut că a fost demonstrat că locul cel mai potrivit pentru controlul erorilor este la un nivel cât mai înalt.

Şi, pentru a pune punct cu o concluzie acestei comparaţii: fiecare din cele două modele îşi are rolul său în acoperirea nevoilor de modelare. Sau, mai puţin formal, putem zice că unul rulează bine pe hârtie iar altul în realitate.

6