1. Scopul lucrării
Studierea noţiunilor legate de socket-uri şi familiarizarea cu apelurile sistem utilizate în comunicarea prin socket-uri între procese. Folosind această metodă se urmăreşte scrierea unui program ce ar realiza următoarea sarcină: Un client transmite un număr reale, iar serverul întoarce factorialul acestui număr.
2. Aspectul teoretic
2.1 Noţiuni generale privind socket-urile
Un socket (soclu) este o abstracţiune software folosită pentru a reprezenta fiecare din cele două "capete" ale unei conexiuni către două procese ce rulează într-o retea. Fiecare socket este ataşat unui port astfel încît să poată identifica unic programul căruia îi destinate datele.
Socket-urile sunt de două tipuri:
1. TCP, implementate de clasele Socket si ServerSocket
2. UDP, implementate de clasa DatagramSocket
O aplicaţie de reţea ce foloseşte socket-uri se încadrează în modelul client/server de concepere a unei aplicaţii. În acest model aplicaţia este formată din două categorii distincte de programe numite server şi clienţi. Programele de tip server sunt cele care oferă diverse servicii eventualilor clienti, fiind în stare de asteptare atîta vreme cît nici un client nu le solicită serviciile Programele de tip client sunt cele care initiază conversaţia cu un server, solicită un anumit serviciu. Uzual, un server trebuie să fie capabil să trateze mai mulţi clienţi simultan şi, din acest motiv, fiecare cerere adresată serverului va fi tratată într-un fir de execuţie separat.([3])
2.2 Socket stream
Interfaţa socket stream defineşte un serviciu orientat conexiune (serviciu modelat pe baza sistemului telefonic: cînd vrei să vorbeşti cu cineva, mai întîi ridici receptorul apoi formezi numărul, vorbeşti şi închizi([1])), datele fiind transmise fără erori şi fără duplicări. Un socket stream poate să fie în una din două stări: conectat sau neconectat. Un socket neconectat poate avea o adresă fixată sau nu. Orice socket care participă la o operaţie de comunicare trebuie să aibă o adresă; dacă adresa nu i se fixează explicit prin bind(), atunci sistemul îi va da o adresă aleatoare.
Un socket stream asigură o conexiune sigură, lucru ce presupune reducerea performanţei datorită efortului de calcul necesar menţinerii conexiunii şi verificărilor de corectitudine.Transportul datelor este realizat folosind protocolul TCP (Transmission Control Potocol).
Ministerul Educaţiei şi Tineretului al Republicii Moldova
Colegiul Financiar-Bancar „A. Diordiţă” din or. Chişinău
Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.