Sunteți pe pagina 1din 16

1. Desenati si descrieti protocolul TCP pag.

175
Multe aplicaii care utilizeaz servicii pe reea asteapt ca data s fie transmis si primit
corect dea lungul conexiunilor reea. Corect, n acest context nseamn c articolele de dat ar
trebui remise fr erori si n secven aplicaiei receptoare.
Asa cum am vzut n seciunea anterioar, remiterea corect nu este asigurat de ctre
UDP si articolele de dat pot s soseasc la aplicaia destinaie ntr-o ordine diferit dect cea n
care au fost trimise. TCP este un nivel de protocol alternativ constnd n vrful nivelului Ip care
ofer remiterea corect a articolelor de dat. Pentru a asigura remiterea corect, TCP utilizeaz o
schem cu confirmri a pachetelor TCP corect primite si retransmisia altora care nu au ajuns
Pentru a furniza o remitere secvenial a pachetelor (articolelor de dat), nivelul TCP are de
asemenea o capacitate de stocare.
Pe lng asigurarea unei remiteri corecte, nivelul TCP conine mecanisme pentru evitarea
congestionrii reelei si a utilizrii optime a capacitii de reea disponibil.
Conexiuni TCP
Nivelul TCP este o alternativ la nivelul UDP, utiliznd conceptul de conexiune pentru a
lega transmitori si receptori ai serviciilor TCP. Cnd crem o conexiune ntre doi utilizatori,
nivelul TCP asigur un port TCP ambelor capete, fiecare identificate printr-un numr de port.
Combinaia de adrese IP si de porturi TCP identific din nou conexiunea TCP n mod unic.
Utilizatorii de servicii la ambele capete de conexiuni primesc si trimit articole de dat prin
porturile TCP. Nivelul TCP nu structureaz articolele de dat trimise de ctre utilizatorii de
servicii. Un utilizator de servicii trimite articole de dat de-a lungul conexiunii care sunt vzute
de ctre nivelul TCP ca un sir de octei.
Prin stocare si fragmentare, nivelul TCP formateaz articolele de dat n pachete TCP si le remit
nivelului TCP receptor. Acolo, data este receptat ca un sir de octei. Conexiunea TCP lucreaz
ca o conexiune full-duplex astfel nct ambele capete ale conexiunii TCP pot trimite si primi date
n mod concurent.
Este de responsabilitatea utilizatorilor serviciilor TCP s recunoasc formatul articolelor
de dat trimise de-a lungul unei conexiuni TCP.
Este un protocol fiabil de comunicare ntre procese aflate ntre calculatoare interconectate,
folosind comutarea de pachete. Este orientat pe conexiuni si se situeaz la nivelul transport din
ierarhia OSI.
TCP presupune c la nivelul imediat inferior (reea) exist o modalitate, chiar neglijabil,
de transmitere a pachetelor n reea. El a fost gndit ca avnd la nivelul reea un modul Internet
(IP) dar poate funciona si cu alte protocoale. Interfaa dintre modulul TCP si modulele de nivel
superior se face prin apeluri similare celor pe care un sistem de operare le ofer pentru
manipularea fisierelor.
Funciile protocolului TCP
Protocolul TCP trebuie s asigure urmtoarele:
a)transfer de date;
n mod continuu, n ambele direcii, ntre dou procese.
b)fiabilitate;
Modulul TCP trebuie s refac datele din pachetele eronate, s in cont de pachetele pierdute, de
cele duplicate sau transmise n alt ordine de sistemul de comunicaii de la nivelul reea. Pentru
aceasta fiecare pachet primeste un numr de secven si necesit confirmare de primire. Dac nu

e primit confirmarea ntr-un interval maxim de timp, datele neconfirmate sunt retransmise.
Numerele de secven servesc att la refacerea fluxului de date ct si la eliminarea pachetelor
duplicate. Deci att timp ct modulele TCP funcioneaz corect si sistemul de reele nu devine
complet partiionat, erorile mediului fizic de propagare a datelor nu vor influena corectitudinea
fluxului de date.
c)controlul fluxului de date;
Modulul TCP asigur o modalitate prin care receptorul poate controla cantitatea de date furnizat
de transmitor. Acest lucru se realizeaz nsoind fiecare confirmare de o fereastr de
permisiune care indic domeniul de numere de secvene n care transmitorul poate furniza date
fr a primi o nou confirmare.
d)servicii orientate pe conexiune;
Serviciile de fiabilitate si control al fluxului de date impun unui modul TCP s menin pentru
fiecare flux de date anumite structuri de control (soclu, numere de secven, dimensiunea
ferestrei de comunicaie).
O conexiune este definit de structurile de control din cele dou procese ce comunic prin fluxuri
de date. Deci pentru a stabili o conexiune ntre dou procese ce doresc s comunice, modulele
TCP proprii trebuie mai nti s stabileasc o conexiune (canal de comunicaie), ceea ce
nseamn iniializarea celor dou structuri de control cu valori corelate. In acest scop are loc un
dialog prealabil ntre cele dou module TCP, pentru iniializarea structurilor de control.
Un modul TCP pune la dispoziie dou funcii de deschidere de conexiuni, una activ, de iniiere
a conexiunii, alta pasiv, de rspuns la orice cerere de stabilire de conexiune.
e)prioritate si securitate.
Utilizatorii modulelor TCP pot indica nivelele de prioritate si de securitate pentru transferul de
date. Pentru transmiterea datelor modulele TCP folosesc pachete IP.
Fiecare pachet va conine dup antetul IP, un antet TCP cu informaii specifice acestui protocol.

Fig.6.1. Formatul mesajelor TCP


Semnificaia cmpurilor
Portul surs (16 bii) -mpreun cu adresa sursei formeaz soclul sursei.
Portul destinaie (16 biti) -numrul portului destinaie selecteaz procesul din calculatorul
destinaie cu care s-a stabilit o conexiune.
Numrul de secven (32 bii) - reprezint numrul primului octet de date din cadrul segmentului
de date curent. Dac bitul de control SYN este setat, numrul de secven este adus la valoarea sa
iniial.
Numrul de confirmare (32 bii) -conine valoarea urmtorului numr de secven pe care trebuie
s-l primeasc.
Lungime antet date (offset date) (4 biti) conine lungimea antetului TCP n cuvinte de 32 bii
indicnd de unde ncep datele.

Rezervat (6 bii) -iniializai cu 0.


Biii de control
URG- se ia n considerare cmpul indicator urgent;
ACK- valideaz numr confirmare;
PSH- cere anunarea imediat a utilizatorului destinaie de primirea mesajului;
RST- resetare conexiune;
SYN- cere sincronizarea numerelor de secven;
FIN- anun terminarea fluxului de date de la transmitor.
Fereastra ( 16 bii)- reprezint numrul de octei, ncepnd cu cel imediat din numrul de
confirmare pe care cel ce trimite mesajul l poate recepiona.
Suma de control (16 bii)- este calculat pentru toate cuvintele din antet si din blocul de date.
Dac numrul de octei de date este impar se completeaz cu octet nul.
Indiacator urgent (Pointer urgent )(16 bii) reprezint offset-ul fa de numrul de secven al
datelor ce trebuie transmise urgent.
Opiuni - au lungimi diferite, apar sau nu n antet.
Un numr mare de calculatoare din reeaua ARPA Internet lucreaz sub UNIX, de aceea UNIXul Berkekey suport TCP/IP care este accesat printr-un set de primitive specifice, care permit
utilizatorilor s acceseze serviciul transport.
Aplicaii si caracteristici TCP
Multe aplicaii care acioneaz ca utilizatorii de servicii ai stivei TCP/IP utilizeaz serviciile
nivelului TCP ca si un punct de intrare n stiva TCP/IP. Serviciile oferite de ctre nivelul TCP
ascund majoritatea detaliilor de reea serviciului utilizator si ofer servicii de transport, orientate
pe flux, corecte.
Aplicaiile pot stabili o conexiune "egal la egal" de-a lungul reelei IP. Datorit caracteristicilor
de control al fluxului de niveluri TCP, folosirea serviciilor TCP duce la o utilizare eficient a
lrgimii de band a reelei disponibile. Numai aplicaiile care utilizeaz serviciile protocolului
UDP sunt capabile s opereze folosind servicii de comenzi fr conexiune.
In documentul original al DOD/DCA care defineste stiva TCP/IP, au fost descrise un numr de
aplicaii care folosesc acest protocol. Aceste aplicaii includ FTP, SMTP, TELNET. Aceste
aplicaii ar trebui s fie prezente n orice implementare complet a stivei TCP/IP.
FTP este folosit pentru a schimba fisiere ntre noduri reea. FTP const dintr-o aplicaie client
pe nodul reelei care cere si o aplicaie server pe modul de reea ndeprtat.
Utilizatorul, cu ajutorul terminalului poate transfera n mod interactiv fisiere spre si de la nodul
de reea ndeprtat si nodul de reea local.
SMTP este un serviciu TCP utilizat pentru a interschimba mesaje ntre nodurile de reea folosind
pachete IP. Un pachet de control const dintr-un antet cu informaia despre partea trensmitoare
si receptoare, ca si partea de mesaj care conine mesajul postal curent. SMTP ofer facilitile de
transfer mail. Pentru a construi o facilitate mail complet, aplicaia utilizator-agent trebuie s fie
prezent n toate nodurile de reea relevante. Un agent-utilizator trebuie s fie capabil s creeze,
citeasc si s mnuiesc mesaje e-mail.
TELNET este folosit pentru a conecta un nod de reea ca terminal la un alt nod de reea.
Utilizatorul poate folosi terminalul conectat la nodul de reea local pentru a se "log-a" la un alt
nod de reea ndeprtat.

2. Desenati si descrieti relatia server/client bazata pe functia bind()/socket()


Modelul client-server
Majoritatea programatorilor de reea folosesc modelul client-server pentru a crea programe
pentru nivelul aplicaie n reea. Comunicaiile n reea necesit o conexiune ntre dou
calculatoare sau programe care 'discut' unul cu cellalt. O conexiune n reea const n
stabilirea unei legturi ntre ambele terminale
Modelul de programare client/server mparte o aplicaie de reea n dou pri:partea de client si
partea de server. Prin definiie, partea de client a unei conexiuni n reea necesit informaii sau
servicii de la partea de server a conexiunii. Partea de server a unei conexiuni n reea rspunde
cererilor clientului.
Cu alte cuvinte, n modelul de programare client/server, o aplicaie de reea realizeaz dou
funcii separate si bine definite:cererea de informaii si rspunsul la cererile de informaii.
Programul care cere informaii funcioneaz ca program client, iar programul care rspunde la
astfel de cereri funcioneaz ca program server.
In majoritatea cazurilor, o aplicaie de reea const din dou programe separate:un program
client si un program server, iar uneori se poate crea un program care s realizeze ambele funcii.

3. Desenati si descrieti protocolul 802.1x,EAP) pag.269


Serverul de autentificare 802.1x este relative simplu si initial nu a fost destinat
comunicatiilor fara fir. Are rol de a implementa controlul accesului si pentru aceasta imparte
reteaua in 3 entitati: clientul sau solicitantul-care vrea sa se conecteze la retea; autentificatorul
-care controleaza accesul; si serverul de autentificare-care ia deciziile de autentificare.
802.1x a fost propus si apoi imbunatatit de catre comitetul IEEE WLAN ca o modalitate
de intarire a autentificarii utilizatorilor intr-un mediu fara fir.
-rezolva cele mai cunoscute problem ale primelor implementari 802.11b.
-este un standard deschis, extensibil, cu protocoale si nu impune o anumita metoda de
autentificare ceea ce il face expandabil si scalabil pe masura ce sunt dezvoltate noi tehnologii de
autentificare.
-autentificarea clientilor se face printrun server de autentificare extern(RADIUS), este bazata pe
utilizator
-serverul RADIUS centralizeaza toate conturile si politicile utilizator, pentru simplificarea
managementului si coordonarii informatiilor despre conturi, eliminand necesitatea ca fiecare AP
sa detina o copie a vbazei de date de autentificare.
Autentificarea 802.1x
Autentificarea 802.1x este un dialog intre un system ce doreste sa se conecteze la serviciile
retelei si retea.Acest dialog foloseste protocolul extensibil de autentificare EAP. 802.1x consta
dintrun PAE in toate statiile(STA) si punctele de acces (AP), incapsularea EAP a retelei
(EAPOL) si un server de autentificare RADIUS (AS).
Clientul
Interfata
hostului

Autentificatorul
EAPOL
802.3 sau altele

Portul de
acces la retea

Mesaje EAP
incapsulate, tipic
RADIUS
Server AAA
(Orice server
EAP)

Serverul de autentificare

4. Protocolul ip
A fost gandit de la bun inceput pentru a fi utilizat in sisteme interconectate de retele de
calculatoare care folosesc comutarea de pachete.
-asigura transmiterea de pachete de la sursa la destinatie, sursa si destinatia fiind calculatoare
gazda indentificate prin adrese de lungime fixa.
-asigura fragmentarea pachetelor mai lungi decat dimensiunea maxima a unui cadru ce poate fi
transmis intrun anumit tip de retea.
-nu garanteaza ajungerea la destinatie a pachetelor si nu asigura secventierea blocurilor de date.
-specificarea protocolului IP inseamna definirea interfetei cu nivelul imediat superior nivelului
transport si cu cel aflat sub el.
Adresarea IP
Fiecrui nod de reea, ntr-o reea IP, i se asigneaz o adres IP unic. Cnd un nod IP este
conectat la mai mult de o reea fizic, nodul are o adres IP, pentru fiecare conexiune la o alt
reea fizic. O adres IP const dintr-un numr pe 32 de bii. Acest numr este divizat logic n
trei cmpuri:
class_id
net_id
host_id
Biii din primul cmp indic dac adresa face parte din clasele (fig.5.2.) A, B, C sau dac este o
adres multicast. O clas A de reele poate conine pn la 224 gazde, o clas de reele B pn
la 216 gazde si o clas de reele C pn la 28 gazde. Sunt posibile 228 adrese multicast.
Valori posibile :
Reea de clas A
biii 16-31 :host_id
bit 0 :0b(binar)
Reea de clas C
biii 1-7 :net_id
biii 0-2 :110b
biii 8-31 :host_id
biii 3-23 :net_id
Reea de clas B
biii 24-31 :host_id
biii 0-1 :10b
Adres de clas D
biii 2-15 :net_id
biii 0-3 :1110b
47
biii 4-31 :adres multicast

versiunea 4 IPv4
Versiunea curent este 4(IPv4). S-a propus pentru Internet un protocol mbuntit cruia i s-a
dat numele de IPv6(IP versiunea 5 era deja utilizat pentru un protocol pentru fluxuri n timp
real). Adresele surs si destinaie la acest nou protocol au lungimi de 16 octei, deci un spaiu de
adrese practic nelimitat. Pentru scrierea adreselor pe 16 octei se folosesc grupuri de cte patru
cifre hexazecimale cu semnul : ntre grupuri.
IHL: cmp de 4 bii care d lungimea antetului din cuvintele de 32 de bii. Acest cmp este cerut
din cauza lungimii variabile a cmpului opiune. Dac nu este prezent nici un cmp opiune,
valoarea minim a cmpului va fi 5.
TOS: Tipul serviciului, cmp de 1 octet, specificnd tipul de serviciu cerut de acest cadru. Biii
0-2 specific precedena cadrului care e de la 0 (normal) - 7 (control reea).
Bit 3 - indic cerere pentru ntrziere mic (D-delay)

Bit 4 - indic cerere pentru debit mare (T-traffic)


Bit 5 - indic cerere pentru siguran mare (R-reliability)
Biii D, T, R pot fi utilizai de ctre o poart IP pentru a selecta o cale spre nodul destinaie care
satisface serviciul cerut. Trebuie notat c n implementrile curente cmpul T, S, O este ignorat
de ctre porile IP si nodurile reele.
Lenght: conine lungimea total a cadrului Ethernet, incluznd haderul si data.
Ident: cmpul ident mpreun cu cmpurile adresa surs si destinaie, identific n mod unic
datagrama n timpul existenei pachetului IP.
Flags: cmpul flags conine cmpurile More si Fragment. Acesti bii indic dac un mesaj este
transmis ntr-un singur pachet IP sau este fragmentat n mai multe pachete.
Foff: cmpul fragment offset poziioneaz octeii din cadrul IP n articolul de date original.
TTL: timpul de trit d timpul maxim de existen al cadrului IP. Acest cmp este utilizat
pentru evitarea buclelor infinite pentru pachetele IP. Fiecare ruter IP care gestioneaz un cadru
descreste adresarea cu 1 si trimite cadrul cnd valoarea este 0.
Prot: cmpul protocol identific protocolul datei coninute n cadrul IP. Normal, acesta va fi
TCP sau UDP.
Chek: suma de control a antetului IP (excluznd cmpul de date).
Source: adresa IP a nodului de reea IP transmitor.
Destination: adresa IP a nodului de reea IP destinaie.
Options: cmpul acesta de lungime variabil poate conine opiuni IP.
Data: cmpul data nu este o parte din antetul IP si conine articole de date de transmis. Datorit
limitei impare a cmpului Lenght, ntregul cadru IP are o lungime maxim de 216. Aceasta
limiteaz de asemenea si lungimea cmpului de date.

ip versiunea 6 cu desen
Odata cu cresterea numarului de utilizatori, precum si cu aparitia noilor aplicatii multimedia
forma curenta a protocolului IPv4 nu mai poate satisface noile cerinte. De asemenea odata cu
cresterea numarului de echipamente portabile, e necesar sa poata comunica fara restrictii,
indifferent de aplicatii.
Obiectivele majore ale noii versiuni au fost:
-sa suporte mai multe gazde
-sa reduca dimensiunea tabelelor de dirijare
-sa simplifice protocolul
-sa asigure o securitate mai buna
-sa acorde o mai mare atentie pt datele aplicatiilor in timp real
-sa ajute trimiterea multipla prin permiterea specificarii de domenii
-sa permita migrarea unei gazed fara schimbarea adresei sale
-sa permita coexistent cu vechea variant si evolutia in viitor.
IPv6 indeplineste in general aceste obiectice, fiind totodata compatibil cu principalele protocoale
din stiva de protocoale TCP/IP.Caracteristica de baza consta in faptul ca foloseste pentru
adresare 16 octeti, furnizand adrese pentru dezvoltarile internetului. O alta imbunatatire este

simplificarea antetului, care contine numai 7 campuri->imbunatatirea timpului de procesare a


pachetelor in nodurile retelei.
-un support mai bun pentru optiuni, unele camp[uri obligatorii ale IPv4 au devenit optionale
-permite o securitate sporita
-autentificarea si confidentialitatea sunt trasaturi importante ale noului IP
-acorda atentie mai mare tipului de serviciu
-suporta trimiterea catre oricine

5. Protocolul control al mesajelor ICMP


Pe lng pachetele IP care conin articole de date ce sunt schimbate de nodurile IP, este nevoie
s se schimbe pachete IP coninnd date de control. Aceste date sunt folosite pentru a asigura
funcionarea corect a reelei IP ca un ntreg si pentru a raporta orice erori. In stiva de
protocoale IP, este inclus un protocol specializat n vrful stivei pentru a sprijini schimbul acestui
tip de informaie ntre nodurile IP.
ICMP se cere a fi suportat de fiecare nod IP din reea si include urmtoarele servicii:
- notificarea destinaiei care nu poate fi atins, adic, atunci cnd un nod IP primeste un pachet
IP care nu poate fi trimis deoarece lipseste informaia de rutare sau datorit lipsei unor
conexiuni reea, nodul poate trimite un pachet ICMP nodului IP transmitor informndu-l despre
imposibilitatea trimiterii pachetului pe care l-a primit.
- notificarea timpului depsit, adic, atunci cnd un nod IP primeste un cadru IP care se plimb
prin reea de prea mult timp (TTL=0), poate descrca acest pachet si trimite un mesaj ICMP
gazdei origine.
- notificarea parametri ilegali, atunci cnd un nod IP detecteaz un pachet IP ilegal, poate trimite
un mesaj ICMP gazdei IP origine.
- notificarea stergerii sursei, dac traficul IP ntr-un nod IP devine prea ncrcat, nodul IP poate
trimite un cadru "stingere surs" altor noduri IP pentru a micsora ncrcarea. Aceste mesaje sunt
utilizate pentru a implementa o schem de control a disputelor.
- notificarea redirectrii, dac un mod IP detecteaz c trebuie s dirijeze un cadru IP ctre
nodul cu acelasi "net-id" ca si nodul Ip anterior din rut, informeaz nodul precedent c exist
o rut utiliznd un mesaj ICMP.
- notificarea cerere - ecou si rspuns. Pentru a fi capabil s verificm dac o rut n cadrul
reelei IP este disponibil, este adesea folositor s fim capabili s trimitem un cadru IP unui nod
IP arbitrar si s primim un rspuns. ICMP furnizeaz un mecanism simplu de ecou
ntrebare/rspuns.
- notificarea cerere/rspuns marc de timp. Pentru a determina ntrzierea pe o cale din reeaua
IP, ICPM susine cererea unei mrci de timp pentru un nod IP. Aceast marc de timp poate fi
utilizat pentru determinarea timpului necesar unui cadru IP de-a lungul unei ci reea.
Desi ICMP utilizeaz serviciile nivelului IP pentru a trimite mesaje ICMP, este adesea vzut ca
parte a nivelelor IP. Serviciile ICMP-ului sunt utilizate de ctre nivelul IP pentru a menine
operarea corect a reelei IP.

6. DNS
DNS=Domain name service
Se indica adresa unui site si se va returna adresa IP-pt a putea fi folosita cu bind(), connect(),
sendto (). In acet fel, cand cineva introduce:
$telnet econ@ubbcluj.ro
telnet poate sa descoperea ceea ce are nevoie pentru a ne conecta la 193.226.40.114
Vom folosi functia gethostbyname():
#include<netdb.h>
Struct hostnet *gethostbyname(const char *name);
-va returna un pointer la o structura hostent:
Struct hostent{
Char *h_name;
Char **h_aliases;
Int h_addrtype;
Int h_lenght;
Char **h_addr_list;
};
#define h_addr h_addr_list[0];
Gethostbyname() returneaza un pointer la o structura hostent completata sau NULL la eroare.
WIKI:
Un sistem de nume de domeniu (abreviat DNS, n englez Domain Name System) este un sistem
distribuit de pstrare i interogare a unor date arbitrare ntr-o structur ierarhic. Cea mai cunoscut
aplicaie a DNS este gestionarea domeniilor n Internet.
Caracteristicile sistemului de nume (DNS) sunt:

folosete o structur ierarhizat;


deleag autoritatea pentru nume;

baza de date cu numele i adresele IP este distribuit.

Fiecare implementare TCP/IP conine o rutin software (name resolver) specializat n interogarea
serverului de nume (DNS) n vederea obinerii translatrii nume/adres IP sau invers.
Exist 2 tipuri de rezoluie de nume:

rezoluie recursiv (name resolverul cere serverului de nume s fac translatarea);

rezoluie iterativ (name resolverul cere serverului de nume s i furnizeze adresa IP a unui server
care poate face translatarea).

Tipic, procesul de rezoluie a numelor se desfoar astfel:


1. Name resolverul primete de la o aplicaie client TCP/IP un nume; acesta formuleaz o
interogare primului server de nume din lista serverelor;

2. Serverul de nume (DNS) determin daca este mandatat (autorizat) pentru domeniul respectiv
(dac exist configurat o zon DNS care conine numele respectiv);
3. Dac este autorizat, transmite rspunsul clientului;
4. Dac nu, transmite o interogare altui server de nume pentru un rspuns autorizat; obine
rspunsul autorizat i transmite clientului un rspuns neautorizat; totodat stocheaz rspunsul
local pentru a rspunde la alte cereri pentru acelai nume.
5. Resolverul de nume transmite rspunsul aplicaiei utilizator i l pstreaz ntr-un cache pentru o
anumit perioad;
6. Dac name resolverul nu primete un rspuns ntr-un anumit timp, transmite cererea urmtorului
server de nume din list. Cnd lista este epuizat, va genera o eroare.

7. RPC
RPC=remote procedure call
WIKI:
n informatic , un apel de procedur la distan ( RPC ) este o comunicare inter-proces , care
permite unui program de calculator pentru a provoca o subrutin sau o procedur de a executa
ntr-un alt spaiu de adrese (de obicei pe un alt calculator la o reea partajat), fr programator de
codificare n mod explicit Detalii pentru aceast interaciune la distan. Aceasta este, n esen,
programator scrie acelai cod, dac este subrutina local pentru programul de executare, sau de la
distan. Atunci cnd software-ul n cauz folosete obiect-orientate principii, RPC se
numete invocarea de la distan sau de metoda de invocare de la distan .
Un RPC este iniiat de ctre client , care trimite un mesaj de solicitare la o distan cunoscut ca
remote server pentru a executa o procedur specificat cu parametrii furnizate. Serverul de la
distan trimite un rspuns la client, i de punere n aplicare continu procesul su. Exist mai
multe variante i subtiliti n implementri diferite, rezultnd ntr-o varietate de diferite
(incompatibile) RPC protocoale. n timp ce serverul este procesarea apelului, clientul este blocat
(se ateapt pn cnd serverul a terminat de procesare, nainte de reluarea executie), cu excepia
cazului n care clientul trimite o cerere asincron la server, cum ar fi un apel XHTTP.
Silabus:
RPC permite unui client sa execute procedure pe alte calculatoare din retea. RPC face modelul
client/server mai puternic si constituie un instrument de progeramare mai simplu decat interfata
socket.

O aplicaie RPC simpl const dintr-un client si server, serverul fiind pe calculatorul care
execut procedura. Aplicaia client comunic cu procedura de pe calculatorul la distan
transmind argumentele si recepionnd rezultatele. Clientul si serverul se execut ca dou
procese separate care pot fi pe calculatoare diferite din reea. Biblioteca RPC realizeaz
comunicarea dintre aceste dou procese. Procesele client si server comunic cu ajutorul a dou
interfee numite stub ("ciot"); vom avea deci un stub pentru client si altul (care uneori se
numeste skeleton ) pentru server.
Clientul si serverul trebuie s comunice utiliznd o reprezentare a datelor independent de tipul
calculatorului si de sistemul de operare. RPC utilizeaz un format propriu pentru reprezentarea
datelor cunoscut sub numele de XDR (External Data Representation). Componenta XDR de
reprezentare a datelor este descris n RFC 1014.
Modul de lucru al RPC
In cadrul sistemului RPC, adresele clientului, serverului, numele serviciilor sunt pstrate la
nivel simbolic. Un serviciu este identificat prin portul la care este oferit si unde exist un
daemon care asteapt cererile de conectare. Un port reprezint un canal logic de comunicare.
Portmapper-ul este un serviciu de reea care este responsabil cu asocierea de servicii la diferite
porturi; acest serviciu de asociere a porturilor este oferit la portul 111. Utiliznd portmapper-ul,
numerele de port pentru un anumit serviciu nu mai sunt fixe. Figura 7.5. descrie cei trei pasi
necesari pentru ca un client s poat apela un server.

8. Retele fara fir p223


-telefonia celulara, transmiterea de date in retele mobile si serviciile multimedia->dezvoltare
-se ref la intersectia a doua elemente- calculatoarele di noduri si mai ales pe cele portabile
- comunicatiile cu sau fara cablu
-fol pt a interconecta calculatoarele personale si serverele din firme, universitati, orase, posta
electronic, navigare internet.
-rol-realizeaza o legatura intre utilizatori si sursele de informative
-ofera beneficial mobilitatii utilizatorilor si o desfasurare flexibila a unei retele intro anumita arie
Provocari ale retelelor fara fir:

-deficitul latimii de banda face ca pt retelele radio divizarea latimii de banda sa fie esentiala de
vreme ce spectrul radio nu numai ca este destul de scump dar este totodata si limitat
-pentru a face o transmisie reusita trebuie evitata interferenta sau cel putin tinuta sub control.
Tipuri de retele fara fir:
Clasificarea reelelor fr fir dup aria acoperit
Dup aria acoperit, de la mic la mare:

Wireless Personal Area Network (WPAN) - v. Reea personal 1-10m


Wireless Local Area Network (WLAN) - v. Reea local -500m
Wireless Metropolitan Area Network (WMAN) - v. Reea metropolitan cf. Standardul
802.16 sau WiMAX 20-50 km
Wireless Wide Area Network (WWAN) - v. Reea de arie larg>10
9. Algoritmul RSA

Face parte din categoria PKC-criptare cu cheie publica si este numit dupa cei trei matematicieni
de la MIT care au dezvoltat-o.
-folosit in sute de produse software si poate fi folosit pentru schimbul de chei, semnaturi digitale
sau criptarea unor blocuri mici de date
-siguranta foarte ridicata datorita faptului ca cheia publica contine numarul n si un derivate al
unuia dintre factorii folositi pt determinarea lui n
-utilizatorii pot creste marimea cheii
-CEA MAI SIGURA METODA DE CIFRARE SI AUTENTIFICARE DISPONIBILA
COMERCIAL.
Sistemul RSA este de tip exponenial. n criptosistemul RSA cu cheie publica, un participant
creeaz cheia sa publica si secreta prin urmtoarea procedur:
1. Se selecteaz aleator dou numere prime mari, p si q. Acestea ar putea avea, de exemplu 100
cifre zecimale.
2. Se calculeaz n prin relaia n=pq.
3. Se alege un numr d relativ prim cu (n) (unde (n) este indicatorul lui Euler, iar n cazul de
fa va fi egal cu (n)=(p-1)*(q-1) si d n intervalul [max(p,q)+1, n-1].
4. Se calculeaz e ca fiind inversul lui d modulo (n) ( pentru calculul lui e se poate utiliza o
versiune extins a algoritmului lui Euclid).
5. Se declar perechea P=(e,n) drept cheie RSA public.
6. Se menine secret perechea S=(d,n), care este cheie RSA secret.
Schema poate fi folosit cu succes ntr-un criptosistem cu chei publice astfel: se vor face
publice e si n, iar d va fi inut secret. n consecin, cheia public este format din perechea
(e,n) iar cheia privat din perechea (d,n).

10. Semnatura digitala


O semntur digital este un cod special, necesar pentru pstrarea integritii mesajului, codul
putnd fi generat de ctre un participant unic. Algoritmul cel mai usor de neles este cel ce
creeaz o semntur RSA, care funcioneaz n mod evident- deoarece participantul este unica
persoan care si cunoaste cheia privat, el/ea foloseste acea cheie pentru a produce acea
semntur. Oricare alt participant poate verifica acea semntur folosind cheia public
corespunztoare. Cu alte cuvinte, pentru a semna un mesaj el se cripteaz folosind cheia privat,
iar pentru a verifica semntura se decripteaz, folosind cheia public a presupusului expeditor.
In mod evident aceasta nseamn c producerea unei semnturi RSA este la fel de nceat ca si
RSA care este, dup cum am vzut mai nainte, de dou pn la trei ordine de mrime mai
ncet dect DES. Observm c folosirea cheilor este exact invers relativ la folosirea lor pentru
asigurarea secretului; expeditorul cripteaz cu cheia sa privat n locul cheii publice a
destinatarului, iar destinatarul decripteaz folosind cheia public a expeditorului n locul cheii
sale private.
S notm c s-a mai propus o semntur digital cunoscut ca DSS care este similar
abordrii descrise, exceptnd faptul c foloseste un algoritm alternativ, numit ElGamal, n loc
de RSA.
11. Noduri invizibile

12. desenati si descrieti pachetele protocolului IP si sa descrieti fiecare camp


Principalul serviciu oferit de ctre nivelul IP este serviciul de transport al unui articol de dat de
la un nod IP surs la unul destinaie. Pentru aceasta, articolul de dat este ncapsulat ntr-un
pachet IP. Un astfel de pachet poate fi definit ca o secven de octei divizat n cmpuri. Unul
dintre cmpuri conine octeii care formeaz articolul de date. Celelalte cmpuri sunt folosite de
ctre nivelele IP uzitate pentru a transmite cadrul la destinaia IP corect si pentru reconstruirea
articolului de date. De asemenea, uneori e necesar fragmentarea unui pachet cnd acesta
provine dintr-o reea cu o dimensiune mare a cadrului de date. Un pachet poate fi marcat " a nu
se fragmenta" si el va fi ndrumat pe o cale ce evit fragmentarea, iar dac nu se poate, va fi
ignorat.
Fragmentarea trebuie s poat fi fcut ntr-un numr arbitrar de pachete si trebuie prevzut
posibilitatea de reasamblare corect,n secven, la destinaie. Acest lucru se obine prin
interpretarea cmpurilor de flag-uri si offset din cadrul antetelor Internet ale fragmentelor.
Un pachet IP are structura indicata:

Cmpurile din cadrul IP au urmtoarea semnificaie:


Ver: Versiunea, identificator de 4 bii, coninnd versiunea protocolului IP al acestui cadru.
IHL: cmp de 4 bii care d lungimea antetului din cuvintele de 32 de bii.
TOS: Tipul serviciului, cmp de 1 octet, specificnd tipul de serviciu cerut de acest cadru.
Lenght: conine lungimea total a cadrului Ethernet, incluznd haderul si data.
Ident: cmpul ident mpreun cu cmpurile adresa surs si destinaie, identific n mod unic
datagrama n timpul existenei pachetului IP.
Flags: indic dac un mesaj este transmis ntr-un singur pachet IP sau este fragmentat n mai
multe pachete.
Foff: cmpul fragment offset poziioneaz octeii din cadrul IP n articolul de date original.
TTL: timpul de trit d timpul maxim de existen al cadrului IP. Acest cmp este utilizat
pentru evitarea buclelor infinite pentru pachetele IP.
Prot: cmpul protocol identific protocolul datei coninute n cadrul IP( TCP sau UDP)
Chek: suma de control a antetului IP (excluznd cmpul de date).
Source: adresa IP a nodului de reea IP transmitor.
Destination: adresa IP a nodului de reea IP destinaie.
Options: cmpul acesta de lungime variabil poate conine opiuni IP.
Data: cmpul data nu este o parte din antetul IP si conine articole de date de transmis. Datorit
limitei impare a cmpului Lenght, ntregul cadru IP are o lungime maxim de 216. Aceasta
limiteaz de asemenea si lungimea cmpului de date.

13. .Desenati si descrieti modul de lucru client server cand se folosesc socluri fara
conexiune /datagrame
De ce nu sunt sigure? Dac trimitem o datagram, s-ar putea s ajung. dezordonat. Dac
ajunge, datele din pachet vor fi fr erori.
Soclurile de datagrame folosesc de asemenea IP-ul pentru rutare, dar nu folosesc TCP-ul; ele
folosesc protocolul UDP. De ce sunt fr conexiune? Deoarece nu trebuie s menii o
conexiune deschis ca si n cazul soclurilor de flux. Se realizeaz un pachet, cruia i se
ataseaz un antet IP cu informaii despre destinaie si apoi se trimite. Nu este nevoie de o
conexiune. In general sunt folosite pentru transfer de informaii pachet cu pachet. Exemple de
aplicaii: tftp, bootp, etc.
Cum funcioneaz aceste programe dac datagramele pot s se piard? Fiecare are propriul
protocol deasupra UDP. De exemplu, protocolul tftp spune c pentru fiecare pachet care este
trimis, primitorul trebuie s trimit napoi un pachet care s spun, "L-am primit!" (un pachet
"ACK"). Dac cel ce a trimis pachetul original nu a primit nici un rspuns n, s zicem, cinci
secunde, va retransmite pachetul pn va primi un pachet ACK. Aceast procedur de
recunostere este foarte important n implementarea aplicaiilor SOCK_DGRAM.

14. Desenati si descrieti autentificarea de tip "increderea in a 3-a persoana"


Un scenariu mai plauzibil este c cei doi participani nu stiu nimic unul despre cellalt, dar
amndoi au ncredere ntr-o ter persoan. Aceast ter persoan este cteodat numit
server de autentificare si foloseste un protocol pentru a ajuta cei doi participani s se autentifice
unul pe cellalt.
Sunt de altfel mai multe variaiuni ale acestui protocol. Cel descris aici este numit Kerberos si
este un sistem bazat pe TCP/IP dezvoltat la MIT.
Fie A si B cei doi participanti si S serverul de autentificare. A si B partajeaza o cheie secreta cu S
iar cele doua kei sunt notate cu Ka, Kb, E(m,k) semnific mesajul m criptat cu cheia k.
Participantul A trimite un mesaj serverului S care l identific pe el si pe B. Serverul genereaz
o cuant de timp T, un timp de via L si o nou cheie de sesiune K. Cuanta de timp T va fi
folosit similar numrului aleator din metoda anterioar si este de asemenea folosit mpreun
cu L pentru a limita timpul pentru care sesiunea K este valid.
Participanii A si B vor trebui s se ntoarc la serverul S pentru a primi o nou cheie de sesiune
cnd expir acest timp. Ideea aici este de a limita vulnerabilitatea oricrei chei de sesiune.
Serverul S rspunde lui A cu un mesaj din dou pri.
Prima parte cripteaz cele trei valori T, L si K, mpreun cu identificatorul pentru
participantul B, folosind cheia pe care serverul o partajeaz cu A.
Cea de-a doua parte cripteaz cele trei valori T, L si K mpreun cu identificatorul
participantului A, dar de data aceasta folosind cheia pe care serverul o partajeaz cu B.

Atunci cnd A primeste mesajul va fi capabil s decripteze prima parte dar nu si pe a doua. A
trimite a doua parte lui B, mpreun cu criptarea lui A si T folosind noua cheie de sesiune K( A a
fost capabil s refac T si K decriptnd prima parte a mesajului primit de la S). In final B
decripteaz partea din mesajul primit de la A, criptat iniial de ctre S si astfel recupereaz T, K
si A. Se foloseste K pentru a decripta jumtate de mesaj criptat de ctre A si dup ce se constat
c A si T se regsesc( sunt consistente) n cele dou jumti ale mesajului, se replic cu un
mesaj care cripteaz T+1 folosind noua cheie de sesiune K. A si B pot acum comunica unul cu
cellalt folosind cheia secret de sesiune K, pentru a asigura securitatea comunicrii. Serverul se
mai numeste si KDC-Key Distribution Center-centru de distribuie a cheilor care dup cum s-a
vzut acioneaz ca un intermediar ntre entiti.

15. Problema nodului ascuns in cazul retelelor locale fara fir

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