Despre internet si TCP/IP

 

Suita de protocoale TCP/IP reprezinta cel mai flexibil protocol de transport disponibil si permite computerelor din intreaga lume, ruland sisteme de operare complet diferite, sa comunice intre ele. TCP/IP este prescurtarea de la Transmission Control Protocol / Internet Protocol.

Dezvoltare lui a inceput in anii 1960 sub forma unui proiect finantat de guvernul SUA.

Initial ARPA(Agentia petru Proiecte de Cercetare Avansata) a creat protoculul TCP/IP pentru a interconecta retelele militare, dar a furnizat pe gratis standardele de protocol agentiilor guvernamentale si universitatilor.

TCP/IP nu este usor de utilizat si nu este cel mai rapid protocol dar ofera cel mai mare grad de corectie al erorilor.

Arhitectura unei retele

Figura de mai jos este o reprezentare superficiala a conceptului de stratificare a retelelor, foarte util in intelegerea retelelor si a protocolului TCP/IP.


Sageata albastra reprezinta scopul oricarei retele, aplicatii soft comunicand intre ele.
Ar fi un dezastru total daca fiecare aplicatie software ar incorpora in ea un protocol de comunicatii si un driver pentru placa de retea.
Fiecare strat reprezentat in figura de mai sus este responsabil pentru un anume "job".

Interfata hardware este responsabila cu trimiterea de biti "1" sau "0" de la un computer la altul. Acest strat fizic nu stie nimic despre informatia trimisa sau receptionata. Rolul sau este sa trateze cat mai bine problemele legate de transmisia si receptia semnalelor electrice.
Stratul IP foloseste stratul fizic pentru a trimite pachete IP.Stratul IP nu ofera nici o garantie ca un pachet trimis ajunge cu succes la destinatie. IP are un algoritm extrem de simplu de tratare a erorilor deci daca ceva merge prost pachetul este "aruncat la gunoi" si se incearca trimiterea unui mesaj ICMP inapoi la expeditor.
Stratul TCP este responsabil cu realizarea unei conexiuni de incredere care sa nu dea rateuri. El foloseste straturile aflate sub el in ierarhie iar cu ajutorul unor algoritmi performanti de tratare a erorilor el se asigura ca pachetele trimise ajung la destinatie si o data ajunse la destinatie ele nu sunt degradate.
Stratul Aplicatiilor este reprezentat in mod uzual de diverse programe cele mai cunoscute si mai simple exemple ar fi: Netscape Navigator, Microsoft Outlook, Internet Explorer, Telnet. De partea cealalta a conexiunii se afla diverse servere Apache (server web ce comunica cu Internet Explorer sau Netscape), Sendmail (comunica cu Microsoft Outlook, Netscape Messanger).
Adresele IP

Orice interfata hardware trebuie sa aibe o adresa de internet unica numita adresa IP.Aceste adrese sunt numere pe 32 de biti de forma xxx.xxx.xxx.xxx. Expansiunea exploziva a internetului a dus la limitarea serioasa a numerelor unice. Adresele clasice pe 32 biti s-au dovedit a fi total inadecvate pentru dezvolateare rapida a internetului.

PING

Cea mai simpla metoda de a testa daca avem o ruta valida spre un calculator ce are o anumita adresa IP este programul ping. Un simplu exemplu ar fi rularea programului ping din Windows. Pentru a vedea daca putem avea o legatura cu serverul avand IP-ul 33.33.28.124 se porneste un Ms-DOS prompt si se tasteaza ping 33.33.28.124. Daca avem o ruta valida spre adresa respectiva rezultatul arata asemanator cu cel de jos

Pinging 33.33.28.124 with 32 bytes of data:

Reply from 33.33.28.124: bytes=32 time=21ms TTL=128
Reply from 33.33.28.124: bytes=32 time=1ms TTL=128
Reply from 33.33.28.124: bytes=32 time=1ms TTL=128
Reply from 33.33.28.124: bytes=32 time<10ms TTL=128

iar daca nu avem o ruta valida spre adresa IP respectiva rezultatul arata asemanator cu cel de jos

Pinging 33.33.28.124 with 32 bytes of data:

Destination host unreachable.
Destination host unreachable.
Destination host unreachable.
Destination host unreachable.

Domeniile si DNS-ul

Domeniile sunt denumirile prietenoase de genul www.htomail.com sau www.yahoo.com. Fiecare dintre aceste domenii are atribuita cel putin o adresa IP. Sistemul care se ocupa cu traducerea domeniilor in adrese IP se numeste DNS(domain name system). DNS-ul este o baza de date distribuita pe tot internetul. Se numeste distribuita deoarece nu exista un singur server care sa aibe toata informatia necesara traducerii orcicarui domeniu intr-o adresa IP. Fiecare server mentine o baza de date cu propriile domenii pe care sistemele de pe internet pot sa o interogheze.

Revenind la exemplul de mai sus trebuie precizat ca pentru a testa existenta unei rute valide catre un anumit site se poate utiliza si o comanda de genul:
ping www.link.ro. In anumite situatii aceasta metoda poate fi considerata o metoda de determinare a adresei IP a unui site.


Istoricul TCP/IP


În 1969, agenţia DARPA (Defense Advanced Research Projects Agency) a fost însărcinată cu dezvoltarea unei reţele prin intermediul căreia centrele sale de cercetare să poată comunica. Principala atenţie a fost acordată capacităţii reţelei de a rezista unui atac nuclear. Pe scurt, dacă Uniunea Sovietică ar fi lansat un atac nuclear, era neapărat necesar ca reţeaua să rămînă în stare de funcţionare pentru a facilita comunicaţia. Au existat şi alte cerinţe referitoare la planurile reţelei, dintre care cel mai important era următorul: ea trebuia să poată funcţiona în lipsa oricărui control centralizat. Astfel, dacă o maşină (sau 10, sau 100) ar fi fost distruse, restul reţelei trebuia să continuie să funcţioneze.

Prototipul acestui proiect a apărut rapid, bazat parţial pe cercetările făcute în 1962 şi 1963. Acest prototip s-a numit ARPANET. ARPANET a funcţionat bine, însă periodic se bloca. În plus, extinderea pe termen lung a reţelei s-a dovedit costisitoare. Astfel, s-a iniţiat căutarea unui set mai flexibil de protocoale; căutările s-au terminat la mijlocul anilor '70, o dată cu dezvoltarea TCP/IP. TCP/IP a avut avantaje substanţiale faţă de celelalte protocoale. De exemplu, TCP/IP era mic (nu necesita resurse de reţea importante). Mai mult, TCP/IP putea fi implementat cu costuri mult mai mici decît celelalte opţiuni existente. Datorită acestor factori, TCP/IP a devenit foarte popular. În 1983, TCP/IP a fost integrat în versiunea 4.2 de UNIX BSD (Berkeley Software Distribution).

A urmat rapid integrarea sa în versiuni de UNIX comerciale, iar TCP/IP a devenit standard Internet; aşa a şi rămas. Pe măsură ce tot mai mulţi utilizatori "se înghesuie" pe Internet, TCP/IP a început să fie reexaminat. Mai mulţi utilizatori înseamnă o încercare mai mare a reţelei. Pentru a uşura încărcarea reţelei şi pentru a oferi viteze de transport mai mari, unii cercetători au sugerat implementarea TCP/IP via transmisii prin satelit. Din nefericire, astfel de cercetări au produs pînă acum rezultate nesatisfăcătoare. Se pare că TCP/IP nu este potrivit acestui tip de transmisie.

În prezent, TCP/IP este folosit în multe scopuri, nu doar pentru Internet. De exemplu, intranet-urile sunt construite de cele mai multe ori folosind protocoalele TCP/IP. În astfel de medii de lucru, TCP/IP poate oferi avantaje semnificative faţă de alte protocoale. Un astfel de avantaj este că TCP/IP funcţionează pe o mare varietate de maşini şi sisteme de operare. Astfel, folosid TCP/IP, se poate construi rapid şi uşor o reţea eterogenă. O astfel de reţea poate conţine calculatoarele Macintosh, compatibile IBM, staţii SPARC, maşini MIPS şi aşa mai departe. Fiecare dintre aceste maşini poate comunica cu celelalte folosind o suită de protocoale comună. Din acest motiv, din momentul în care a apărut, în anii '70, şi pînă acum, TCP/IP a rămas extrem de popular.