Sunteți pe pagina 1din 39

Tehnologii de programare în

Internet

Curs 1
- Internet şi Web -

1
1. Internet
1.1. Istoric
 La mijlocul anilor 1960, când Războiul rece era în punctul culminant,
Dod-ul (Department of Defense - Departamentul de Apărare al Statelor
Unite) a vrut o reţea de comandă şi control care să poată supravieţui
unui război nuclear.
 Tradiţionalele reţele telefonice cu comutare de circuite erau prea
vulnerabile, deoarece pierderea unei linii sau a unui comutator ar fi pus
capăt tuturor conversaţiilor care le foloseau şi ar fi partiţionat reţeaua.
 Pentru a rezolva această problemă, Dod s-a orientat către agenţia sa
de cercetare ARPA (Advanced Research Projects Agency - Agenţia de
Cercetare pentru Proiecte Avansate).
 După discuţii cu diverşi experţi, ARPA a decis că reţeaua de care avea
nevoie Dod trebuia să fie o reţea cu comutare de pachete constând
dintr-o subreţea şi calculatoare gazdă. Subreţeaua avea să fie o
subreţea datagramă, astfel că dacă unele linii de transmisie şi
calculatoare gazdă se defectau, mesajele puteau fi redirijate automat
pe căi alternative.

2
 Cercetările pentru găsirea de protocoale potrivite pentru a rula pe
ARPANET şi pe LAN-urile (Local Area Network) ce se conectau într-un
număr tot mai mare la acesta a culminat cu invenţia modelului şi
protocoalelor TCP/IP. Astfel TCP/IP a fost proiectat special pentru a
trata comunicarea prin inter-reţele.
 In timpul anilor 1980 au fost conectate la ARPANET multe alte reţele, în
special LAN-uri. Pe măsură ce creştea dimensiunea reţelei, găsirea
gazdelor devenea tot mai costisitoare. De aceea a fost creat DNS
(Domain Naming System - Sistemul Numelor de Domenii), care
organiza maşinile în domenii şi punea în corespondenţă numele
gazdelor cu adrese IP. De atunci, DNS a ajuns să fie un sistem de baze
distribuit, generalizat, folosit pentru a memora informaţii referitoare la
procedurile de atribuire a numelor.

3
 La sfârşitul anilor 1970, NSF (U.S. National Science Foundation -
Fundaţia Naţională de Ştiinţă din SUA) a remarcat impactul enorm pe
care ARPANET-ul îl avea asupra cercetării universitare, reţeaua
permiţând partajarea datelor şi colaborarea în cadrul proiectelor de
cercetare.
 Dar, pentru a se conecta la ARPANET, o universitate trebuia să aibă un
contract de cercetare cu DoD, iar multe universităţi nu aveau.

4
 De aceea, în 1984 NSF a început să proiecteze un succesor de mare
viteză al ARPANET-ului, care să fie deschis tuturor grupurilor de
cercetare din universităţi.
 Pentru a avea ceva concret cu care să înceapă, NSF a hotărât să
construiască o coloană vertebrală care să lege centrele sale de
supercalculatoare din şase oraşe: San Diego, Boulder, Champaign,
Pittsburg, Ithaca şi Princeton. Acesta a fost primul WAN (Wide Area
Network) TCP/IP.
 NSF a finanţaţ, de asemenea, un număr de 20 de reţele regionale care
se conectau la coloana vertebrală, permiţând utilizatorilor din mii de
universităţi, laboratoare de cercetare, biblioteci şi muzee să acceseze
oricare dintre supercalculatoare şi să comunice între ei.
 Reţeaua completă, care includea coloana vertebrală şi reţelele
regionale, a fost numită NSFNET.

5
 Numărul reţelelor, maşinilor şi utilizatorilor conectaţi la ARPANET a
crescut rapid după ce TCP/IP a devenit, la 1 ianuarie 1983, unicul
protocol oficial. Când au fost conectate NSFNET şi ARPANET, creşterea
a devenit exponenţială. S-au alăturat multe reţele regionale şi s-au
realizat legături cu reţele din Canada, Europa şi Pacific.
 Pe la mijlocul anilor 1980, lumea a început să vadă colecţia de reţele ca
fiind un internet, iar apoi ca fiind Internet-ul.

6
1.2. Subreţele, reţele, inter-reţele

 Deseori se produc confuzii între subreţele, reţele şi inter-reţele.


 Termenul de subreţea este mai potrivit în contextul unei reţele larg
răspândite geografic, unde se referă la colecţia de rutere (routere -
comutatoare de date, sisteme intermediare, noduri de comutare a
pachetelor) şi linii de comunicaţie aflate în proprietatea unui operator de
reţea, de exemplu, o firmă ca America Online sau CompuServe.
 Combinaţia între o subreţea şi gazdele sale formează o reţea. În cazul
unui LAN, reţeaua este formată din cablu şi gazde, deci nu există, în
acest caz, cu adevărat o subreţea.
 În lume există multe reţele, cu echipamente şi programe diverse.
Persoanele conectate la o anumită reţea doresc adesea să comunice cu
persoane racordate la alta. Această cerinţă impune conectarea unor
reţele diferite, de multe ori incompatibile, ceea ce se realizează uneori
utilizând maşini numite porţi (gateways). Acestea realizează conectarea
şi asigură translatările necesare, atât în termeni de hardware cât şi de
software.
 O colecţie de reţele interconectate este numită inter-reţea sau internet.
 O formă comună de inter-reţea este o colecţie de LAN-uri conectate
printr-un WAN.

7
1.3. Internet vs. internet

 Pentru a evita confuziile, termenul “internet” este folosit în sensul său


generic. Prin contrast, Internet-ul (a se remarca folosirea lui I mare)
reprezintă un internet mondial specific, care este utilizat pe larg pentru
a conecta universităţi, birouri guvernamentale, firme şi persoane
particulare.
 Creşterea numărului reţelelor, maşinilor şi utilizatorilor care se
interconectau a continuat exponenţial şi în 1990 Internet-ul ajunsese să
cuprindă 3000 de reţele şi 200.000 de calculatoare.În 1992 a fost
ataşată gazda cu numărul 1.000.000. În 1995 existau mai multe
coloane vertebrale, sute de reţele de nivel mediu (adică regionale), zeci
de mii de LAN-uri, milioane de gazde şi zeci de milioane de utilizatori.
S-a estimat că mărimea Internet-ului se dublează aproximativ la un an.
 Substanţa care ţine legat Internet-ul este modelul de referinţă TCP/IP
şi stiva de protocoale TCP/IP. TCP/IP face posibile serviciile universale,
putând fi comparată cu sistemul telefonic sau cu adoptarea lăţimii
standard pentru căile ferate în secolul 19. Ce înseamnă de fapt să fii pe
Internet? O maşină este pe Internet dacă foloseşte stiva de protocoale
TCP/IP, are o adresă IP şi are posibilitatea de a trimite pachete IP către
toate celelalte maşini de pe Internet.

8
1.4. Modelul de referinţă TCP/IP

 Posibilitatea de a interconecta fără probleme mai multe tipuri de reţele


a reprezentat un obiectiv major al proiectării ARPANET-ului.
 Noua arhitectură de referinţă a devenit cunoscută sub denumirea de
modelul de referinţă TCP/IP, dată după numele celor două
protocoale fundamentale utilizate.
 Dată fiind îngrijorarea Dod că o parte din gazdele sale, rutere şi porţi
de interconectare ar putea fi distruse dintr-un moment într-altul, un alt
obiectiv major a fost ca reţeaua să poată supravieţui pierderii
echipamentelor din subreţea fără a fi întrerupte conversaţiile existente.
Cu alte cuvinte DoD dorea ca, atâta timp cât funcţionau maşina sursă şi
maşina destinaţie, conexiunile să rămână intacte, chiar dacă o parte din
maşini sau din liniile de transmisie erau brusc scoase din funcţiune.
 Mai mult, era nevoie de o arhitectură flexibilă, deoarece se aveau în
vedere aplicaţii cu cerinţe divergente, mergând de la transferul de
fişiere până la transmiterea vorbirii în timp real.

9
 Toate aceste cerinţe au condus la alegerea unei reţele cu comutare de
pachete bazată pe un nivel inter-reţea fără conexiuni. Acest nivel,
numit nivelul internet este axul pe care se centrează întreaga
arhitectură. Rolul său este de a permite gazdelor să emită pachete în
orice reţea şi de a face ca pachetele să circule independent până la
destinaţie, fiind posibil ca aceasta să se găsească pe o altă reţea.
Pachetele pot chiar să sosească într-o ordine diferită faţă de cea în care
au fost trimise, caz în care, dacă se doreşte furnizarea lor ordonată,
rearanjarea cade în sarcina nivelurilor de mai sus. Nivelul internet
defineşte oficial un format de pachet şi un protocol numit IP (Internet
Protocol - protocol Internet). Sarcina nivelului Internet este să
furnizeze pachete IP către destinaţie. Problemele majore se referă la
dirijarea pachetelor şi evitarea congestiei. În consecinţă, nivelul
internet din TCP/IP funcţionează asemănător cu nivelul reţea din OSI
(International Standards Organization - Organizaţia Internaţională de
Standardizare).

10
 Nivelul situat deasupra nivelului internet din modelul TCP/IP este nivelul
transport. Acesta este proiectat astfel încât să permită conversaţii între
entităţile pereche din gazdele sursă şi, respectiv, destinaţie. În acest sens au
fost definite două protocoale capăt-la-capăt. Primul dintre ele, TCP
(Transmission Control Protocol - protocolul de control al transmisiei), este un
protocol sigur orientat pe conexiuni care permite ca un flux de octeţi trimişi de
pe o maşină să ajungă fără erori pe orice altă maşină din inter-reţea. Acest
protocol fragmentează fluxul de octeţi în mesaje discrete şi pasează fiecare
mesaj nivelului internet. La destinaţie, procesul TCP receptor reasamblează
mesajele primite în flux de ieşire. TCP tratează totodată controlul fluxului pentru
a se asigura că un emiţător rapid nu inundă un receptor lent cu mai multe
mesaje decât poate acesta să prelucreze. Al doilea protocol din nivel, UDP (User
Datagram Protocol - protocolul datagramelor utilizator), este un protocol
nesigur, fără conexiuni, destinat aplicaţiilor care doresc să utilizeze propria lor
secvenţiere şi propriul control al fluxului, şi nu pe cele asigurate de TCP.
Protocolul UDP este de asemenea mult folosit pentru interogări întrebare-
răspuns dintr-un foc, client-server, şi pentru aplicaţii în care comunicarea promtă
este mai importantă decât comunicarea cu acurateţe, aşa cum sunt aplicaţiile de
transmisie a vorbirii şi a imaginilor video.

11
 Deasupra nivelului transport se află nivelul aplicaţie. Acesta conţine
toate protocoalele de nivel mai înalt. Primele protocoale de acest gen
includeau terminalul virtual (TELNET), transferul de fişiere (FTP – File
Transfer Protocol) şi poşta electronică (SMTP – Simple Mail Transfer
Protocol). Protocolul de terminal virtual permite unui utilizator de pe o
maşină să se conecteze şi să lucreze pe o maşină aflată la distanţă.
Protocolul de transfer de fişiere pune la dispoziţie o modalitate de a
muta eficient date de pe o maşină pe alta. Poşta electronică a fost la
origine doar un tip de transfer de fişiere, dar ulterior a fost dezvoltat un
protocol specializat pentru acest serviciu. Pe parcursul anilor, la aceste
protocoale s-au adăugat DNS-ul (serviciul numelor de domenii) pentru
stabilirea corespondenţei dintre numele gazdelor şi adresele reţelelor,
NNTP – Network News Transfer Protocol, protocolul utilizat pentru a
transfera articole de ştiri, HTTP – HyperText Transfer Protocol, folosit
pentru aducerea paginilor de Web ş.a.

12
 Sub nivelul internet se află necunoscutul, nivelul gazdă-reţea.
Modelul de referinţă TCP/IP nu spune mai nimic despre ce se întâmplă
acolo, însă menţionează că gazda trebuie să se lege la reţea, pentru a
putea trimite pachete IP, folosind un anumit protocol. Acest protocol nu
este definit şi variază de la gazdă la gazdă şi de la reţea la reţea.
Cărţile şi articolele despre TCP/IP rareori discută despre acest protocol.

13
1.5. Aplicaţii Internet

 Tradiţional, Internetul a avut patru aplicaţii principale. Facilitatea de a


compune, trimite şi primi poştă electronică a existat din primele zile
ale ARPANET-ului. Mulţi oameni primesc zeci de mesaje pe zi şi
consideră poşta electronică un important mijloc de a interacţiona cu
lumea exterioară, alături de telefon şi poşta obişnuită. Programele de
poştă electronică sunt astăzi disponibile practic pe orice tip de
calculator. Grupurile de ştiri erau forumuri specializate în care
utilizatorii cu un anumit interes puteau să facă schimb de mesaje.
Existau mii de grupuri de ştiri, pe subiecte tehnice sau non-tehnice
incluzând calculatoarele, ştiinţa, divertismentul şi politica. Folosind
programul Telnet, utilizatorii aflaţi oriunde pe Internet puteau să se
conecteze la distanţă, la orice maşină pe care aveau un cont.
Copierea fişierelor de pe o maşină din Internet pe alta (transferul de
fişiere) era posibilă utilizând programul FTP.

14
 Până la începutul anilor 1990 Internet-ul a fost foarte populat cu
cercetători din domeniul academic, guvernamental şi industrial. O
aplicaţie nouă, WWW (World Wide Web), a schimbat întreaga situaţie
şi a adus în reţea milioane de utilizatori care nu fac parte din mediul
academic. Această aplicaţie inventată de fizicianul Tim Berners Lee, nu
a modificat nici una din facilităţile existente, în schimb le-a făcut mai
uşor de folosit. Împreună cu programul de navigare Mosaic, scris la
Centrul Naţional pentru Aplicaţiile Supercalculatoarelor (NCSA –
National Centre for Supercomputing Application – University of Illinois),
WWW-ul a făcut posibil ca un site să pună la dispoziţie un număr de
pagini de informaţii conţinând text, poze, sunet, video, în fiecare
pagină existând legături către alte pagini. Printr-un clic pe o legătură,
utilizatorul este transportat la pagina indicată de legătură.

15
 De exemplu, multe firme au o pagină principală cu intrări care trimit la
alte pagini pentru informaţii asupra produselor, liste de preţuri,
reduceri, suport tehnic, comunicare cu angajaţii, informaţii despre
acţionari şi multe altele. Într-un timp foarte scurt au apărut numeroase
alte tipuri de pagini: hărţi, tabele cu cotaţii la bursă, cataloage de
bibliotecă, programe radio înregistrate şi chiar pagini care indicau spre
textele complete ale multor cărţi cărora le-au expirat drepturile de
autor (Mark Twain, Charles Dickens, etc.). De asemenea, mulţi oameni
au pagini personale (home pages). În primul an de la lansarea Mosaic-
ului, numărul de servere WWW a crescut de la 100 la 7000 prefigurând
o creştere continuă de-a lungul timpului, creştere ce reprezintă forţa
care va conduce tehnologia şi utilizarea Internet-ului în viitor.

16
2. WWW – World Wide Web

 Web-ul este un context arhitectural pentru accesul la documente,


răspândite pe mii de maşini în Internet, între care există legături. În
decursul timpului a evoluat de la o aplicaţie pentru transmiterea de
date utile pentru fizica energiilor înalte la o aplicaţie despre care
milioane de oameni cred că este Internetul. Popularitatea sa enormă se
datorează faptului că are o interfaţă grafică plină de culoare, uşor de
utilizat de către începători şi în acelaşi timp oferă o cantitate imensă de
informaţie.

17
2.1. Istoric

 Web-ul (cunoscut şi ca WWW) a apărut în 1989 la CERN, Centrul


European de Cercetări Nucleare. CERN avea câteva acceleratoare
utilizate de echipe mari de cercetători din ţările europene pentru
cercetări în fizica particulelor. Aceste echipe numărau membrii din
peste zece ţări. Majoritatea experienţelor erau foarte complicate şi
necesitau ani de pregătire şi construire de echipamente. Web-ul a
apărut din necesitatea de a permite cercetătorilor răspândiţi în lume să
colaboreze utilizând colecţii de rapoarte, planuri, desene, fotografii şi
alte tipuri de documente aflate într-o continuă modificare. Propunerea
iniţială pentru crearea unei colecţii de documente având legături între
ele (web) a fost făcută de fizicianul Tim Berners- Lee, fizician la CERN,
în martie 1989. Primul prototip (bazat pe text) era operaţional 18 luni
mai târziu. În decembrie 1991, s-a făcut o demonstraţie publică la
conferinţa Hypertex’91 în San Antonio, Texas. Acţiunea a continuat în
anul următor, fiind încununată cu realizarea primei interfeţe grafice,
Mosaic, în februarie 1993.

18
 Mosaic a fost atât de popular încât un an mai târziu, autorul său, Marc
Andreessen, a părăsit NCSA (Centrul naţional pentru aplicaţiile
supercalculatoarelor), unde Mosaic-ul a fost dezvoltat, pentru a forma o
nouă companie, Netscape Communications Corp., care se ocupa cu
dezvoltarea de software pentru Web. Când Nescape a devenit o
companie publică în 1995, investitorii, care probabil au crezut că este
vorba de un fenomen de tip Microsoft, au plătit 1.5 miliarde de dolari
pentru acţiunile companiei. Acest record a fost cu atât mai neaşteptat
cu cât compania avea un singur produs, opera în deficit şi anunţase
probabilii investitori că nu se aşteaptă la beneficii în viitorul apropiat.

19
 În 1994, CERN şi M.I.T. (Massachusetts Institute of Technology) au
semnat o înţelegere pentru a forma Consorţiul World Wide Web, o
organizaţie care are ca obiectiv dezvoltarea Web-ului, standardizarea
protocoalelor şi încurajarea interoperabilităţii între situri. Berners-Lee a
devenit director. De atunci, sute de universităţi şi companii au intrat în
consorţiu. M.I.T. a coordonat partea americană a consorţiului în timp ce
centrul de cercetări francez, INRIA (Institut National de Recherche en
Informatique et en Automatique), a coordonat partea europeană. Deşi
există foarte multe cărţi despre Web, cel mai bun loc pentru găsirea
unor informaţii la zi despre el este, în mod natural, chiar Web-ul.
Pagina consorţiului are adresa http://www.w3.org. Aici, cei interesaţi
pot găsi legături la pagini care acoperă toate documentele şi activităţile
consorţiului.

20
2.2 Aspecte generale privind
clientul
 Deoarece Web-ul este un sistem client-server sunt prezentate în
continuare atât aspecte referitoare la client (adică utilizator) cât şi cele
referitoare la server.
 Din punctul de vedere al utilizatorului, Web-ul constă dintr-o colecţie
imensă de documente răspândite în toată lumea, numite pagini.
Fiecare pagină poate să conţină legături (indicatori) la alte pagini aflate
oriunde în lume. Utilizatorii pot să aleagă o legătură (de exemplu prin
executia unui clic) care îi va aduce la pagina indicată de legătură. Acest
proces se poate repeta la nesfârşit, fiind posibil să se traverseze în
acest mod sute de pagini legate între ele. Despre paginile care indică
spre alte pagini se spune că utilizează hipertext.
 Paginile pot fi vizualizate cu ajutorul unui program de navigare
(browser): Mosaic, Netscape, Internet Explorer, Mozilla, etc.
Programul de navigare aduce pagina cerută, interpretează textul şi
comenzile de formatare conţinute în text şi afişează pagina, formatată
corespunzător, pe ecran. Şirurile de caractere care reprezintă legături la
alte pagini se numesc hiperlegături, sunt afişate în mod diferit, fiind
subliniate şi/sau colorate distinct.

21
 Pentru a selecta o legătură, utilizatorul va plasa cursorul pe zona
respectivă (utilizând mouse-ul sau tastele săgeţi de pe tastatură) şi
comandă selecţia (cu ajutorul mouse-ului sau apăsând tasta Enter).
Deşi există programe de navigare fără interfaţă grafică, ca de exemplu
Lynx, ele nu sunt atât de utilizate ca programele de navigare grafice.
Pagina adusă poate conţine legături care prin selectare aduc alte pagini
şi aşa mai departe. Noua pagină se poate afla pe aceeaşi maşină ca şi
prima sau pe o maşină aflată undeva pe glob la polul opus. Utilizatorul
nu va şti. Aducerea paginilor este realizată de către programul de
navigare, fără nici un ajutor din partea utilizatorului. Dacă utilizatorul se
va întoarce la prima pagină, legăturile care au fost deja utilizate vor fi
afişate altfel decât celelalte (de exemplu, utilizând o altă culoare)
pentru a fi deosebite de cele care nu au fost încă selectate. Majoritatea
programelor de navigare au numeroase butoane şi opţiuni care ajută
navigarea prin Web. Multe au un buton pentru revenirea la pagina
anterioară, un buton pentru a merge la pagina următoare (acest buton
este operaţional numai după ce utilizatorul s-a întors înapoi dintr-o
pagină).

22
 Majoritatea programelor de navigare au un buton sau un meniu pentru
înregistrarea unei adrese de pagină (bookmark) şi un altul care permite
afişarea unor adrese înregistrate, făcând astfel posibilă revenirea la o
pagină cu ajutorul unei simple selecţii realizate cu mouse-ul. Paginile
pot să fie salvate pe disc sau tipărite. Sunt disponibile numeroase
opţiuni pentru controlul ecranului şi configurarea programului de
navigare conform dorinţelor utilizatorului.
 În afară de text obişnuit (nesubliniat) şi hipertext (subliniat), paginile
de Web pot să conţină iconiţe, desene, hărţi, fotografii. Fiecare dintre
acestea poate să fie, în mod opţional, legată la altă pagină. Dacă se
selectează unul dintre aceste elemente, programul de navigare va
aduce pagina respectivă şi o va afişa, aşa cum se întâmplă în cazul
selectării unui text. Pentru imaginile care sunt fotografii sau hărţi,
alegerea paginii care se aduce poate să depindă de regiunea din
imagine pe care se face selecţia.

23
 Nu toate paginile sunt afişabile. De exemplu, pot să existe pagini care
conţin înregistrări audio, clip-uri video sau ambele. Dacă paginile de
hipertext sunt combinate cu alte tipuri de pagini, rezultatul se numeşte
hipermedia. Numai o parte din programele de navigare pot să afişeze
orice tip de hipermedia. Cele care nu pot, verifică un fişier de
configurare ca să afle cum să trateze datele primite. În mod normal,
fişierul de configurare conţine numele unui program de vizualizare
extern sau al unui program auxiliar pentru aplicaţie, care va fi utilizat
pentru a interpreta conţinutul paginii aduse. Dacă un astfel de program
nu este specificat, atunci programul de navigare poate să ceară
utilizatorului să specifice un program de vizualizare. Dacă nu există un
astfel de program, utilizatorul poate să indice programului de navigare
să salveze pagina adusă într-un fişier pe disc sau să o abandoneze.
Utilizarea unui generator de voce ca program auxiliar permite chiar şi
utilizatorilor orbi să acceseze Web-ul. Alte programe auxiliare conţin
interpretoare pentru limbaje speciale pentru Web, permiţând aducerea
şi execuţia programelor din paginile Web. Acest mecanism permite
extinderea funcţionalităţii Web-ului.

24
 Multe pagini de Web conţin imagini de dimensiuni mari, pentru care
încărcarea durează mult. Unele programe de navigare tratează
problema încărcării lente încărcând şi afişând mai întâi textul şi apoi
imaginile. Această strategie oferă utilizatorului ceva de citit cât timp
aşteaptă, şi în acelaşi timp îi permite să renunţe la pagina respectivă
dacă nu este destul de interesantă ca să merite aşteptarea. O altă
strategie este de a oferi opţiunea de a dezactiva aducerea şi afişarea
automată de imagini. Unii creatori de pagini de Web încearcă să trateze
altfel problema utilizatorilor plictisiţi, afişând imaginile într-un mod
special. Mai întâi apare rapid o imagine într-o rezoluţie foarte scăzută.
Apoi se îmbunătăţeşte calitatea imaginii. Pentru utilizator apariţia
imaginii după câteva secunde, chiar şi la o rezoluţie scăzută, este de
multe ori de preferat faţă de situaţia în care acesta urmăreşte modul în
care se desenează imaginea linie cu linie.

25
 Unele pagini de Web conţin formulare care cer utilizatorului să
introducă informaţii. Aplicaţiile tipice pentru formulare sunt căutări într-
o bază de date pentru o intrare specificată de utilizator, comandarea
unui produs sau participarea la un sondaj de opinie. Alte pagini de Web
conţin hărţi care permit utilizatorilor să selecteze porţiuni pentru a
obţine informaţii despre anumite zone geografice sau pentru a realiza o
mărire sau o micşorare a imaginii afişate.
 Unele programe de navigare utilizează discul local pentru a memora
temporar paginile pe care le aduc. Înainte ca o pagină să fie adusă, se
verifică dacă ea nu se găseşte deja în memoria temporară. Dacă da, se
verifică numai dacă pagina este încă actuală. În caz afirmativ, nu mai
este necesară readucerea paginii. Ca rezultat, selecţia butonului back
pentru a vedea pagina precedentă are un efect foarte rapid.

26
 Pentru a permite utilizarea unui program de navigare în Internet, un
calculator trebuie să fie legat la Internet sau cel puţin să aibă o
conexiune la un ruter sau la un alt calculator care este legat direct în
Internet. Această cerinţă apare deoarece aducerea unei pagini de către
un program de navigare presupune stabilirea unei conexiuni TCP cu
calculatorul pe care este memorată pagina, şi apoi transmiterea unui
mesaj, utilizând conexiunea, pentru a cere pagina.

27
2.3. Aspecte generale privind
serverul
 Pentru orice server de Web un proces ascultă portul 80 TCP pentru
conexiuni iniţiate de către clienţi (în mod normal programe de
navigare). După ce s-a stabilit o legătură, clientul trimite o cerere şi
serverul trimite un răspuns. Apoi conexiunea este eliberată.
Protocolul care descrie cererile şi răspunsurile permise este HTTP -
HyperText Transfer Protocol.
 Exemplul următor arată modul în care funcţionează serverele de
Web: presupunem că un utilizator tocmai a selectat un text sau o
iconiţă care indică spre pagina al cărei nume (URL – Uniform
Resource Locator – adresa uniformă pentru localizarea resurselor)
este http://www.w3.org/Protocols/Specs.html. URL - ul are trei părţi:
numele protocolului (http), numele calculatorului pe care se gaseşte
pagina (www.w3.org) şi numele fişierului care conţine pagina
(Protocols/Specs.html). Etapele care se parcurg între momentul în
care se face selecţia şi afişarea paginii aduse sunt următoarele:

28
 programul de navigare determină URL (pe baza selecţiei);
 programul de navigare întreabă DNS care este adresa IP pentru
www.w3.org;
 DNS răspunde cu 128.30.52.100;
 programul de navigare realizează conexiunea TCP cu portul 80 al
128.30.52.100;
 trimite o comandă GET Protocols/Specs.html.
 serverul www.w3.org transmite fişierul Specs.html;
 conexiunea TCP este eliberată.
 programul de navigare afişează textul din Specs.html;
 programul de navigare aduce şi afişează imaginile din Specs.html.
 Multe programe de navigare afişează care este etapa care se execută
într-o fereastră de stare, în partea de jos a paginii. În acest mod, dacă
performanţele sunt slabe, utilizatorul poate să ştie dacă este vorba de
faptul că DNS nu răspunde, că serverul nu răspunde, sau pur şi simplu
de congestia reţelei în timpul transmisiei paginii.

29
 Protocolul de transfer standard utilizat de Web este HTTP - HyperText
Transfer Protocol. Fiecare interacţiune constă dintr-o cerere ASCII
(deoarece HTTP este un protocol ASCII ca şi SMTP), urmată de un
răspuns MIME (Multipurpose Internet Mail Extension – extensii de
poştă cu scop multiplu, generat de problemele care includeau
transmisia şi recepţia de mesaje în limbi cu accente – de ex. germană
şi franceză, mesaje în alfabete ne-latine – de ex. ebraică şi rusă,
mesaje în limbi fără alfabet – de ex. chineză şi japoneză, mesaje care
nu conţin text deloc – de ex. audio şi video; MIME defineşte cinci noi
antete de mesaje) conform RFC 822 (RFC – Request for Comments –
cereri pentru comentarii, sunt rapoarte tehnice, pot fi citite on-line şi
sunt numerotate în ordinea cronologică a creării lor). Cu toate că
utilizarea TCP pentru conexiuni de transport este foarte obişnuită, el nu
este impus oficial de către standard.

30
 HTTP este în continuă evoluţie. Câteva versiuni sunt în utilizare şi altele
noi sunt în curs de implementare. În continuare sunt prezentate pe
scurt noţiunile de bază.
 Protocolul HTTP constă din două tipuri de elemente: mulţimea cererilor
de la programele de navigare către servere şi o mulţime de răspunsuri
care merg în sens invers. HTTP suportă două tipuri de cereri: simple şi
complete. O cerere simplă este doar o linie GET în care se indică
pagina dorită, fără specificarea versiunii de protocol. Răspunsul este
format numai din pagină, fără antete, fără MIME, fără nici o codificare.
 Un exemplu de utilizare a programului Telnet pentru a obţine o
conexiune TCP pe portul 80 al serverului www.w3.org:
se scrie: telnet www.w3.org 80
se afişează: Trying 128.30.52.54….
Connected to www.w3.org
după care se scrie: GET Protocols/Specs.html
 Pagina va fi transmisă fără nici o indicaţie referitoare la conţinut. Acest
mecanism este necesar pentru compatibilitatea cu versiuni mai vechi.

31
 Cererile complete sunt indicate de prezenţa versiunii de protocol în linia
GET. Cererile pot să fie formate din mai multe linii, urmate de o linie
albă, care indică sfârşitul cererii. Prima linie a unei cereri complete
conţine comanda (GET este una dintre posibilităţi), pagina dorită şi
protocolul/versiunea:
se scrie: telnet www.w3.org 80
se afişează: Trying 128.30.52.54….
Connected to www.w3.org
se scrie: GET Protocols/Specs.html HTTP/1.0
se scrie:
 Serverul răspunde cu o linie de stare care descrie ce protocol va utiliza
(acelaşi cu al clientului) şi codul 200, care arată că operaţia decurge
corect. Pe linia următoare se transmite un mesaj conform RFC 822
MIME. Urmează o linie goală şi corpul mesajului.

32
 Deşi HTTP a fost proiectat pentru utilizarea pentru Web, el este “mult
mai general” decât este necesar, având o deschidere pentru viitoare
aplicaţii obiect-orientate. Din acest motiv, primul cuvânt dintr-o cerere
completă este numele metodei care se va executa asupra paginii Web
(sau a unui obiect în general). Metodele sunt:
 GET - o cerere de citire a unei pagini de Web;
 HEAD - o cerere de citire a antet-ului unei pagini de Web;
 PUT - o cerere de memorare a unei pagini de Web;
 POST - adăugarea la o resursă cu nume (de exemplu o pagină de
Web);
 DELETE - ştergerea unei pagini de Web;
 LINK - conectarea a două resurse existente;
 UNLINK - întreruperea unei conexiuni dintre două resurse.
 Pentru numele comenzilor este semnificativă utilizarea literelor mari, de
exemplu GET este un nume corect în timp ce get nu.

33
 Metoda GET cere serverului să aducă pagina (prin asta înţelegem
obiect în general), codificată în mod corespunzător în MIME. Dacă
cererea GET este urmată de un antet If-Modified-Since, serverul
transmite datele numai dacă ele au fost modificate de când s-a făcut
aducerea lor. Utilizând acest mecanism, un program de navigare care
trebuie să afişeze o pagină memorată poate să ceară condiţionat
aducerea, indicând timpul de modificare asociat paginii. Dacă pagina
memorată este încă validă, serverul răspunde indicând numai faptul că
pagina este încă validă, eliminând astfel consumul de timp presupus de
readucere a paginii.
 Metoda HEAD cere numai antetul mesajului, fără să ceară şi pagina
propriu-zisă. Această metodă poate să fie utilizată pentru a afla când s-
a făcut ultima modificare, pentru a culege informaţii pentru indexare,
sau numai pentru a verifica corectitudinea unui URL. Nu există comenzi
HEAD condiţionate.

34
 Metoda PUT este inversa metodei GET: în loc să se citească o pagină,
scrie pagina. Această metodă permite să se construiască o colecţie de
pagini de Web pe un server la distanţă. Corpul cererii conţine pagina.
Pagina poate să fie codificată utilizând MIME, caz în care liniile care
formează comanda PUT pot să includă Content-Type şi antete de
autentificare, pentru a demonstra că într-adevăr cel care face cererea
are dreptul să o facă.
 Metoda POST este similară cu metoda PUT. Şi ea conţine un URL, dar
în loc să înlocuiască date existente, noile date se vor adăuga într-un
mod general. De exemplu, se poate transmite un mesaj la un grup de
ştiri sau adăuga un fişier la un sistem de informare în reţea. În acest
mod se doreşte ca Web-ul să preia şi funcţionalitatea sistemului de ştiri
USENET.

35
 DELETE realizează ştergerea unei pagini. Ca şi la PUT, autentificarea şi
drepturile de acces joacă aici un rol important. Nu există nici o garanţie
că operaţia reuşeşte, deoarece chiar dacă serverul doreşte să execute
ştergerea, fişierul poate să aibă atribute care să interzică serverului
HTTP să îl modifice sau să îl şteargă.
 Metodele LINK şi UNLINK permit conectarea pentru stabilirea unor
conexiuni între pagini şi alte resurse. Fiecare cerere primeşte un
răspuns constând din linia de stare şi informaţii suplimentare (de
exemplu o parte sau toată pagina Web). Linia de stare poate să conţină
codul 200 (operaţie terminată corect), sau un cod de eroare, de
exemplu 304 (nemodificat), 400 (cerere eronată) sau 403 (interzis).

Standardele HTTP descriu în detaliu antetele şi corpurile mesajelor.

36
 O pagină Web poate să conţină referinţe la alte pagini. Pentru a avea o
pagină care să indice spre altă pagină este necesar un mecanism care
să permită numirea şi regăsirea paginilor. În particular, sunt trei
întrebări la care trebuie să se răspundă înainte de a se putea afişa o
pagină:
 cum se numeşte pagina?
 cum este localizată pagina?
 cum se face accesul la pagină?
 Soluţia aleasă care identifică paginile într-un mod care rezolvă toate
cele trei probleme este URL(Uniform Resource Locators ). Fiecare
pagină are un URL (o adresă uniformă pentru localizarea resurselor)
care funcţionează ca nume al paginii general valabil. Un URL are trei
componente: protocolul, numele DNS al maşinii pe care este memorat
fişierul şi un nume local, care indică în mod unic pagina (de obicei,
numele fişierului care conţine pagina).

37
 Astfel se explică funcţionarea hipertextului. Pentru a face o porţiune de
text selectabilă, cel care scrie pagina trebuie să furnizeze două
elemente: textul prin care se face selecţia şi URL-ul paginii care trebuie
adusă, dacă textul este selectat. Când se face selecţia, programul de
navigare caută numele serverului utilizând DNS-ul. Pe baza adresei IP a
serverului, programul de navigare stabileşte o conexiune TCP spre
server. Utilizând această conexiune, se transmite numele fişierului
utilizând protocolul specificat.
 URL-urile au fost proiectate nu numai pentru a permite utilizatorilor să
navigheze prin Web, dar şi pentru a utiliza FTP, news, Gopher (metodă
de regăsire a informaţiei, similară conceptual cu cea utilizată de Web,
dar acceptând numai text şi imagini), e-mail şi telnet, ceea ce face
inutile interfeţele specializate pentru aceste protocoale (ftp, news,
gopher, mailto, telnet) integrând astfel într-un singur program,
navigatorul în Web, aproape toate tipurile de acces în Internet.

38
 În ciuda tuturor acestor proprietăţi, creşterea Web-ului a scos în
evidenţă şi o slăbiciune a metodei utilizării URL-urilor. Pentru o pagină
care este foarte des referită, ar fi de preferat să existe mai multe copii
pe servere diferite, pentru a reduce traficul în reţea. Problema este că
URL-urile nu oferă nici o posibilitate de indicare a unei pagini fără să se
specifice unde este localizată pagina respectivă. Nu există nici o
metodă pentru a spune ceva de genul: „Vreau pagina x, dar nu mă
interesează de unde o aduci”. Pentru a rezolva această problemă şi a
permite multiplicarea paginilor s-a creat un sistem de URI (Universal
Resource Identifiers – identificatori universali de resurse).

39

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