Sunteți pe pagina 1din 5

Tehnici de comunicatii Indrumator de laborator Lucrarea 10 Arhitecturi client-server

Lucrarea 10. Arhitecturi Client-Server

Modelul informatic client-server este de fapt o aplicatie distribuita intre mai multe echipamente, avand scopul de a centraliza informatia intr-un sinrul loc sau de a imparti puterea de calcul intre mai multe echipamente. Un server este un program (nu o masina) care asteapta cereri de comunicatie de la client. Aceste receptioneaza cererile, realizeaza procesul cerut si returneaza rezultatul catre client. O aplicatie de tip server trebuie sa resolve urmatoarele probleme: Autentificarea clientului (verificarea identitatii acestuia); Autorizarea clientului (determina daca un client autentificat are sau nu dreprul de a beneficia de unul sau mai multe servicii ale serverului); Securitatea datelor (garantarea ca datele stocate nu sunt modificate neintentionat); Accesul privat (datele nu pot fi accesate de client neutorizati); Protectia sistemului (garantarea ca aplictia nu abuzeaza de resusrsele sistemului gazda).

Un client este o aplicatie care initiaza o comunicatie de tip peer-to-peer (unu la unu). Majoritatea clientilor sunt programe conventionale care de fiecare data cand ruleaza se conecteaza la un sevrer, trimit o cerere, asteapta un raspuns si afiseaza raspunsul primit. Clasificarea arhitecturilor client-server se face in functie de doi parametrii: Tipul conexiunii: o Arhitecturi orientate pe conexiune o Arhitecturi orientate pe conexiune

Tehnici de comunicatii Indrumator de laborator Lucrarea 10 Arhitecturi client-server

Numarul de nivele: o 1-Tier o 2-Tier o 3-Tier (sau Multi-Tier)

1. Arhitectura orientata pe conexiune (CO Connection Oriented)


In arhitectura client-server orientata pe conexiune toate cererile si raspunsurile se transmit printr-un canal logic stabilit la inceputul comunicarii. Succesiunea de primitive (functii ale sistemului de operare) apelate de client si sevrer in vederea comunicarii sunt:

Figura 12.1. Arhitectura client server orientata pe conexiune.


2

Tehnici de comunicatii Indrumator de laborator Lucrarea 10 Arhitecturi client-server

2. Arhitectura neorientata pe conexiune (CL Connection Less)


In cazul arhitecturii client-server neorientata pe conexiune nu se stabileste un canal de comunicatie intre client si server. Succesiunea de primitive este descrisa in figura urmatoare:

Figura 12.2. Arhitectura client-server neorientata pe conexiune.

2. Athitectura client-server pe un singur nivel (1-Tier)


In aceasta arhitectura atat clientul cat si serverul ruleaza pe aceeasi masina, de multe ori pentru utilizator fiind una si aceeasi plicatie. Acest model poate fi folosit de aplicatiile mici care nu sunt accesibile in retea.

Tehnici de comunicatii Indrumator de laborator Lucrarea 10 Arhitecturi client-server

3. Arhitectura 2-Tier (pe doua nivele)


Cea mai simpla arhitectura client-server propriu zisa este cea pe doua nivele, numita 2-Tier. Primul nivel este clientul care interogeaza serverul (nivelul 2). Serverul are toate datele si raspunde direct clientului.

Figura 12.3. Athitectura client-server 2-Tier. Datorita simplitatii implementarii este preferata pentru aplicatiile de dimensiuni medii, dar are unele limitari: Performantele scad odata cu cresterea numarului de utilizatori; Serverul este inflexibil deoarece se ocupa atat de stocarea datelor cat si de procesarea acestora

4. Arhitectura 3-Tier (pe trei nivele)


Arhitectura pe 3 nivele, 3-Tier, imparte serverul in doua parti. Prima parte are rolul de a gestiona cererile si raspunsurile clientilor, iar de stocarea si procesarea efectiva a datelor se ocupa cea de-a doua parte: nivelul 3. Avantajele acestei arhitecturi se datoreaza separarii rolurilor serverului. O aplicatie se ocupa de interfata cu clientul, alta de autentificare si autorizare, alta de stocarea datelor, si asa mai departe. Oricand se pot adauga noi facilitate cu un minim de efort. Aceasta arhitectura este destinata aplicatiilor de dimensiuni medii si mari.

Tehnici de comunicatii Indrumator de laborator Lucrarea 10 Arhitecturi client-server

Figura 12.4. Arhitectura client-server 3-Tier

5. Arhitectura Multi-Tier (pe mai multe nivele)


In cazul aplicatiilor de foarte mari dimensiuni sau care necesita conexiunea simulatana a multor client arhitectura 3-Tier nu satisface toate cerintele. In acest caz este nevoie de nivele suplimentare care sa distribuie conexiunile intre mai multe servere. O posibila arhitectura de acest fel este prezentata mai jos:

Figura 12.5. Athitectura client-server Multi-Tier.

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