traducere ver. 0.4 de catre Riddl Multumiri tuturor celor care m-au ajutat, in special lui Gushterul. Observatie f importanta: probabil ca exista unele greseli in acest document. Am tradus si eu cum m-am priceput mai bine, daca descoperiti greseli de traducere si pentru observatii pertinente trimiteti-mi mail pentru Riddl la "discutzii at gmx dot net". Nu uitati sa precizati numele documentului. Multumesc anticipat. Aceasta versiune este putin modificata fata de original, deorece unii termeni sunau foarte ciudat in ro. Pentru ultima versiune a acestui document verifica . Lecturare placuta! ______________________________________________________________________ Linux Networking-concepts HOWTO HOWTO privind conceptele de retea linux Rusty Russell $Revision: 1.3 $ $Date: 2002/06/05 13:21:56 $ Acest document descrie ce este acea o retea (cum ar fi internetul), si foarte primar cum functioneaza acesta. ______________________________________________________________________ Cuprins 1. Introducere 2. Ce este aceea o "retea de calculatoare"? 3. Ce este "Internetul"? 3.1. Cum functioneaza Internetul? 4. Aceast lucru numit IP 4.1. Grupuri de adrese IP: Netmask-uri 5. Nume de computere si Adrese IP 6. Servici diferite: Email, Web, FTP, DNS 7. Interfete dialup: PPP 8. Cum arata pachetele 9. Sumar 10. Multumiri 11. Index ______________________________________________________________________ 1. Introducere Bine ai venit! Am scris in trecut un numar de howto-uri in ceea ce privesc retelele, si mi-a venit in minte ca sunt in fiecare o multime de termeni jargonici. Am avut de ales intre trei variante: celelalte doua ignorau problema si explicau termenii peste tot. Nici una dintre ele nu era atractiva. Scopul software-ului liber este faptul ca ar trebui sa ai libertatea sa explorezi si sa te joci cu software-ul sistemului pe care il folosesti. Cred ca dandu-le posibilitatea oamenilor sa experimenteze aceasta libertate este un scop nobil; nu numai fac pe oameni sa se simt puternici printr-o ocupatie (cum ar fi reconstruirea unui motor de masina) dar prin natura internetului si software-ului liber ti se pune la dispozitie posibilitatea sa partajezi experienta ta cu milioane de oameni. Dar trebuie sa incepi de undeva, asa ca iata-ne. (C) 2000 Paul "Rusty" Russell. Sub licenta GNU GPL. 2. Ce este aceea o "retea de calculatoare"? O retea de calculatoare sunt mai multe materiale folosite pentru ca nodurile sa schimbe informatie intre ele (prin "noduri" inteleg computere, imprimante, masini de gatit si orice alceva doresti). Nu conteaza foarte mult cum sunt interconectate: pot sa foloseasca fibra optica sau porumbei calatori. E clar, unele alegeri sunt mai bune decat altele, mai ales daca ai prin casa pisici. :) In mod normal conectarea a doua calculatoare impreuna nu se poate numi retea, este nevoie de trei sau mai multe pentru a deveni retea. Acest lucru seamana cu cuvantul "grup": doi oameni inseamna doar doua persoane, pe cand trei persoane formeaza un grup. Deasemenea, retelele sunt adesea prinse impreuna, pentru a forma retele mai mari, fiecare retea mai mica (deobicei numita o "sub-retea") poate fi parte dintr-o retea mai mare. De fapt conexiunea intre doua computere este adesea denumita "legatura de retea". Daca este ceva cablu in spatele computer-ului tau catre alte computere atunci aceea este legatura ta de retea. Sunt patru lucruri despre care suntem interesati cand vorbim despre o retea de calculatoare: Marimea Daca pur si simplu conectezi intre ele cele patru calculatoare de acasa, ai realizat ceea ce se numeste LAN (Local Area Network - retea locala). Daca totul este la distanta de mers pe jos, este denumit deobicei LAN, oricate masini ar fi conectate, si din orice infrastructura ar fi contruita reteaua. La celalalt pol se situeaza WAN-ul (Wide Area Network - retea intinsa). Daca ai un computer la Bucuresti, Romania, altul in New York, SUA, si unul in Lhasa, Tibet, si reusesti sa le conectezi, aceasta este atunci un WAN. Topologia: Forma Deseneaza harta unei retele: linile sunt "legaturile din retea", si fiecare nod este un punct. Poate ca fiecare linie duce intr-un punct central ca o stea, insemnand ca fiecare vorbeste printr-un singur punct ( o "topologie stea"): o o o \_ | _/ \|/ o-----o-----o _/|\_ / | \ o o o Sau poate ca fiecare comunica in linie, astfel: o------o------o-------o--------o | | | | | o | | o | o Sau poate ca ai trei subretele conectate printr-un singur nod: o o | o--o--o | | | o--o--o--o--o o \ | o------o / | o--o--o--o--o o | | | o | o--o o Vei vedea multe topologii ca acestea in realitate si multe altele mult mai complicate. Fizic: Din ce este facuta reteaua. Al treilea lucru de care trebuie sa fim interesati este din ce este constuita reteaua noastra. Cea mai ieftina este "sneakernet-u", erau oamenii care transportau diskete de la un computer la altul. Sneakernet-ul este aproape intodeauna un "LAN". Disketele costa mai putin de 1$ si o pereche de skeakers (incaltaminte care nu face zgomot) in jur de 20$. Cel mai obisnuit sistem folosit pentru a conecta reteaua de acasa catre alte retele mai mari este numit "modem" (MODulator/DEModulator), care transforma o legatura telefonica intr-o legatura de retea. Transforma ceea ce transmite calculatorul in sunete, si asculta sunetele venite de la celalalt capat pe care le transforma iar in informatie pentru calculator. Dupa cum iti imaginezi acest lucru nu este din cale afara de eficient, deoarece liniile telefonice nu au fost facute pentru genul acesta de lucruri, dar este un sistem raspandit deoarece liniile telefonice sunt atat de obisnuite si ieftine: modemurile costa sub 50$ si linia telefonica 200$ pe an. Cel mai obisnuit sistem sa conectezi computerele intr-un LAN este sa folosesti Ethernet. Ethernetul poate fi de trei tipuri (in ordinea in care au fost realizate): Thinwire/Coax/10base2, UTP/10baseT si UTP/100baseT. Gigabit ethernet (1000baseT incepe sa sune ciudat) este in curs de a fi realizat. 10baseT este deobicei un fir coaxial negru care are din loc in loc T-uri pentru a putea fi conectate la computere, toti sunt conectati intr-o linie, linie care are la capete terminatori speciali. UTP este deobicei un cablu de culoare albastru deschis, care au doua capete prevazute cu terminatori din plastic similari celor de la telefon, care sunt conectate in dispozitivele fizice (placa ethernet, hub, etc.). Cablul costa cativa dolari metrul, si placile de retea 10baseT/10base2 (multe au connectori pentru ambele tipuri) sunt greu de gasit noi de firma. 100baseT sunt de 10 ori mai rapide decat 10baseT, sunt compatibile si cu acestea, si costa cam 30$. Tehnologia de varf este insa fibra optica; un fir de sticla subtire in camasa protectoare care poate fi folosita pentru a lega in retea continente. In general costa mii de dolari. In mod normal numim fiecare conexiune la un nod "interfata de retea" sau pe scurt "interfata". Linux le numeste astfel "eth0" pentru prima interfata ethernet, si "fddi0" pentru prima interfata de fibra. Comanda "/sbin/ifconfig" ni le listeaza. Protocol: Cum comunica. Ultimul lucru care te intereseaza este limbajul pe care il folosesc doua noduri interconectate. Cand doua modemuri comunica unul cu altul printr-o linie telefonica, trebuie sa se puna de acord ce vor insemna fiecare sunet, astfel pur si simplu nu vor comunica. Aceasta conventie este denumita "protocol". Pe masura ce oamenii au descoperit noi posibilitati de codare astfel incat computerele sa spuna mai multe in sunete mai scurte, noi protocoale s-au inventat; sunt cel putin o duzina de protocoale diferite, si fiecare modem va incerca cateva pana cand va gasi unul care sa fie inteles si de celalalt modem. Un alt exemplu este reteaua 100baseT mentionata mai sus. Aceasta foloseste aceeasi legatura fizica "UTP" ca si 10baseT, dar comunica de 10 ori mai rapid. Aceste doua protocoale sunt denumite protocoale de nivel de legatura (link level); care determina cum este transportata informatia intre doua puncte pe conexiuni de retea individuale. Cuvantul "protocol" se refera si la alte conventii dupa cum vom vedea mai jos. 3. Ce este "Internetul"? Internetul este o retea de tip WAN, care impanzeste intre globul: este cea mai mare retea de calculatorea existenta. "Internetworking" inseamna conectarea mai multor retele pentru a crea una mai mare, prin urmare internetul este connectarea a o mare ingramadire de subretele. Asa ca acum uitandu-ne la lista de mai sus, ne punem intrebarea: care este marimea Internetului, din ce este formata fizic si care sunt protocoalele folosite? Marimea am spus-o deja. Este globala. Structura fizica este variata, fiecare subretea este conectata intr-un mod diferit. Incercarea de a creea o harta folositoare este sortita deci esecului. Protocoalele folosite de fiecare legatura este deasemnea diferita: toate protocoalele de mai sus pentru nivel de legatura sunt folosite si multe altele. 3.1. Cum functioneaza Internetul? Atunci aceasta intrebare se pune: cum functioneaza? Cum poate fiecare nod sa vorbeasca altor noduri daca folosesc protocoale de nivel legatura diferite? Raspunsul este simplu: avem nevoie de un alt protocol care sa controleze cum circula informatia prin retea. Protocolul pentru nivel de lagatura descrie cum sa circule informatia intre doua noduri care sunt legate direct: protocolul pentru nivel de retea face posibila transportul informatie intre un nod si un altul peste oricat de mult legaturi de retea. Pentru internet, protocolul la nivel de retea este INTERNET PROTOCOL (versiunea 4) sau "IP". Nu este singurul protocol existent (Apple"s AppleTalk, Novell"s IPX, Digital"s DECNet and Microsoft"s NetBEUI fiind altele), dar este cel mai adoptat. A aparut o noua versiune de protocol "IP" numit IPv6, dar inca nu este atat de utilizat. Asa ca pentru a transmite un mesaj dintr-un punct al globului in altul, computerul tau foloseste protocolul IP, trimite informatia la modem, care foloseste protocol pentru nivel de legatura pentru a trimite informatia modemului din celalalt capat, modem care se afla probabil intr-un rack de modemuri, care trimite informatia catre un alt nod, nod care la randul sau trimite catre altul, si tot asa. Un nod care face lagatura intre doua sau mai multe retele este denumit "ruter": acesta va avea cate o interfata pentru fiecare retea. Numim aceast sir de protocoale o "stiva de protocoale", de obicei desenata asa: [ Aplicatia: Primeste poze ] [ Nivelul aplicatie: transmite poze ] | ^ v | [ TCP: are grija de trasport ] [ TCP: are grija de trasport ] | ^ v | [ IP: are grija de routare ] [ IP: are grija de routare ] | ^ v | [ Link: doar pentru conexiune directa ] [ Link: doar pentru conexiune directa ] | | +------------------------------------------+ Deci, in diagrama, vedem cum netscape (aplicatia din stanga sus) acceseaza niste poze de pe un server web (aplicatia din dreapta sus). Pentru a face acest lucru aplicatia noastra foloseste nivelul TCP, protocol pentru controlul transportului: peste 90% din din traficul internet foloseste TCP, deoarece este folosit mai ales pentru serviciile web si mail. Deci, Netscape-ul trimite o cerere pentru o conexiune TCP catre serverul remote: aceasta cerere este preluata la nivel de protocol de transport TCP, care trimite mai departe cererea nivelului protocolului de retea IP, care la randul lui transmite informatia mai departe catre nivelul protocolului de legatura. La celalat capat nivelul protocolului de legatura inainteaza informatia catre nivelul protocolului IP, care vede ca informatia este destinata computer-ului respectiv (daca nu va inainta informatia nivelului de legatura pentru ca informatia sa ajunga la urmatorul nod), care inainteaza informatia nivelului protocolului de transport TCP, care o inainteaza server-ului, respectiv aplicatiei. Deci avem urmatoarele trei puncte: 1. Aplicatia (Netscape, sau serveru din capatul celalalt) decide cu cine anume doreste sa vorbeasca si ce anume doreste sa trimita 2. Nivelul de transport trimite pachete speciale pentru a incepe conversatia cu celalalt capat si apoi impacheteaza informatia intr-un "pachet" TCP: un pachet este doar un termen pentru o bucata de date care trece printr-o retea. Nivelul de transport TCP paseaza acest pachet catre nivelul de retea IP: apoi transmite in continuare pana cand celalat capat la nivel de transport TCP transmite receptionarea pachetului. Acest mecanism este numita "retransmitere", si are o multime de reguli complexe care controleaza cand sa transmita, cat sa astepte, etc. Ii da deasemenea fiecarui pachet o multime de numere, pentru ca la celalalt capat sa fie sortate in ordinea corecta. 3. La nivel de retea IP se ia in considerare destinatia pachetului si se decide urmatorul nod catre care sa se transmita pachetul. Aceasta operatie este numita in mod simplu "rutare"(routing), si difera de la foarte simplu (daca nu ai decat un singur modem si nici o alta interfata de retea, pachetele ar trebui sa iasa numai prin acea interfata) pana la extrem de complex (daca ai 15 retele complexe conectata direct prin tine). 4. Aceast lucru numit IP Asadar rolul nivelului de legatura IP este sa realizeze cum sa "ruteze" pachetele catre destinatia finala. Pentru ca acest lucru sa fie posibil, fiecare interfata din retea trebuie sa aiba o "adresa IP". Aceast adresa este formata din patru numere separate prin puncte, cum ar fi "167.216.245.249". Fiecare numar trebuie sa fie cuprins intre 0 si 255. Interfetele in aceeasi retea au tendinta sa aiba adrese Ip vecine. De exemplu "1.1.1.19" sta chiar langa sistemul cu adresa IP "1.1.1.20". Deasemenea nu uita ca un ruter este un nod cu interfete pentru mai mult de o retea, asa ca ruter-ul va avea cate o adresa Ip pentru fiecare interfata. Asa ca nivelul de retea IP al kernelului tine un tabel cu "rute" diferite, punand la dispozitie calea pentru a ajunge la grupuri variate de adrese IP. Cea mai simpla dintre rute este numita "ruta default": daca nici o alta ruta nu se potriveste aceasta este calea pe care o iau pachetele. Poti vedea o lista a acestor rute cu ajutorul comenzii "/sbin/route". Rutele fie indica o legatura, fie un nod particular care este conectat la o alta retea. De exemplu, cand suni la ISP, ruta default va fi catre legatura cu modemul, deorece acolo este punctul de acces catre intreaga lume. Modemul Modemul lui ISP-ului ~~~~~~~~~~~~ Rusty { } o------------------o { Internetul } { } ~~~~~~~~~~~~ Dar daca ai un sistem care este in permanenta conectat la lumea din afara, este putin mai complicat. In diagrama de mai jos, sistemul meu poate sa comunica in mod direct cu computerele lui Paul si Tridge, si cu firewall-ul, dar este necesar ca sistemul meu sa stie ca pachetele care trebuiesc livrate restului lumii trebuie sa se indrepte catre firewall care le va pasa mai incolo. Aceasta inseamna ca vei avea doua rute: una care sa zica "daca destinatia este in reteaua mea trimite informatia direct acolo" si apoi o ruta default care sa spuna "in caz contrar, trimite-o catre firewall". o Masina de lucru | a lui Tridge ~~~~~~~~~~~~ Masina de lucru | { } a lui Rusty o--------+-----------------o--{ Internetul } | Firewall { } | ~~~~~~~~~~~~ o Masina de lucru a lui Paul 4.1. Grupuri de adrese IP: Netmask-uri Mai este un ultim detaliu: exista o notatie standard pentru grupuri de adrese IP, uneori numita "adresa de retea". La fel cum un numar de telefon poate fi impartit in prefix si restul, la fel putem divide o adresa IP intr-un prefix de retea si restul. Oamenii obisnuiau sa vorbeasca despre "reteaua 1.2.3", insemnand toate cele 256 de adrese de la 1.2.3.0 la 1.2.3.255. si daca asta nu era o retea destul de mare ar fi putut sa vorbeasca despre "reteaua 1.2" care inseamna toate adresele de la 1.2.0.0 la 1.2.255.255. In mod normal nu scriem "1.2.0.0-1.2.255.255". In loc scriem prescurtat "1.2.0.0/16". Notatia ciudata "/16" (numita netmask) cere o mica explicatie. Fiecare numar despartit prin puncte intr-o adresa IP este defapt un numar binar format din 8 cifre (00000000 la 11111111): le scriem in format zecimal pentru a putea fi mai usor de citit. "/16" inseamna ca primele 16 cifre binare reprezinta adresa retelei, cu alte cuvinte partea "1.2" este reteaua. (tine minte fiecare numar reprezinta 8 cifre binare). Aceasta inseamna ca orice adresa care incepe cu "1.2" face parte din aceasta retea: "1.2.3.4" si "1.2.5.22" fac parte din aceasta retea, dar "1.3.4.2" nu. Pentru a face viata mai usoara, in mod normal folosim retele care au netmask "/8", "/16" si "/24". De exemplu, "10.0.0.0/8" este o retea imensa care contine orice adresa de la 10.0.0.0 la 10.255.255.255 (peste 16 milioane de adrese!). "10.0.0.0/16" este mai mica, continand adresele doar de la 10.0.0.0 la 10.0.255.255. "10.0.0.0/24" este si mai mica detinand adresele de la 10.0.0.0 la 10.0.0.255. Pentru a face lucrurile si mai confuze, mai este un mod prin care putem sa scriem netmask-urile. Putem sa le scriem ca adrese IP: 10.0.0.0/255.0.0.0 In sfarsit, nu valoreaza nimic faptul ca cea mai mare adresa dintr-o retea este rezervat ca "adresa de broadcast", care poate fi folosita pentru a transmite un mesaj catre toate host-urile din retea. Mai jos este un tabel cu netmask-uri: Forma Forma Numarul de Comentarii scurta lunga masini maxim /8 /255.0.0.0 16,777,215 numita in trecut retea de clasa A /16 /255.255.0.0 65,535 numita in trecut retea de clasa B /17 /255.255.128.0 32,767 /18 /255.255.192.0 16,383 /19 /255.255.224.0 8,191 /20 /255.255.240.0 4,095 /21 /255.255.248.0 2,047 /22 /255.255.252.0 1,023 /23 /255.255.254.0 511 /24 /255.255.255.0 255 numita in trecut retea de clasa C /25 /255.255.255.128 127 /26 /255.255.255.192 63 /27 /255.255.255.224 31 /28 /255.255.255.240 15 /29 /255.255.255.248 7 /30 /255.255.255.252 3 5. Nume de computere si Adrese IP In concluzie orice interfata de pe fiecare nod are o adresa IP. Foarte repede s-a constatat ca oamenii retin destul de greu numerele, asa ca s-a hotarat (la fel ca la numerele de telefon) sa avem un director cu nume. Dar cum folosim computere oricum, este mai simplu sa punem computerele sa gaseasca numele in mod automat. Prin urmare avem DNS, sistemul de nume al domeniilor. Sunt noduri cu adrese IP bine cunoscute pe care programele le pot interoga trimitand nume pentru a primi adrese IP. Aproape toate programele pe care le folosesti pot realiza aceasta interogare, de asta poti pune "www.linuxcare.com" in Netscape in loc de "167.216.245.249". Bineinteles, ai nevoie de adresele de retea a cel putin unuia dintre aceste "servere de nume": in mod normal aceste adrese se gasesc in fisierul "/etc/resolv.conf". Cum interogarile si raspunsurile DNS sunt relativ mici (1 pachet de fiecare), protocolul TCP nu este folosit: acesta pune la dispozitia retransmisie automata, ordonare a pachetelor si o siguranta a conexiunii, dar cu costul trimiterii de pachete in plus in retea. De aceea folosim foarte simplul protocol UDP (protocol pentru datagrame utilizator), care nu ofera extra facilitatile pe care le ofera TCP si de care nu avem nevoie. 6. Servici diferite: Email, Web, FTP, DNS Intr-un exemplu anterior, am arata cum Netscape trimite o cerere TCP catre un server de web care ruleaza pe un alt nod. Dar sa ne imaginam ca acel nod care este si server de web ruleaza si server de email, un server de ftp si un server DNS, cum stie nodul pentru ce server este conexiunea TCP? Aici TCP si UDP au conceptul de "port". Fiecare pachet precizat in el "portul destinatie" care spune pentru ce serviciu este destinat pachetul. De exemplu, portul 25 TCP este pentru server-ul de mail, si portul 80 TCP este server-ul de web (deasemenea cateodata poti sa intalnesti servere web pe porturi diferite). O lista a porturile poate fi gasita in "/etc/services". Deasemenea, daca doua ferestre Netscape, amandoua acceseaza parti diferite din acelasi site web, cum face sistemul linux pe care ruleaza Netscape sa sorteze pachetele care se intorc de la server? Aici intervine "portul sursa": fiecarei conexiune noua TCP ii se atribuie un nou port sursa, asa ca sunt separate, chiar daca se duc spre aceeasi adresa destinatie IP si acelasi port destinatie. In mod normal primul port sursa alocat va fi 1024 si creste odata cu trecerea timpului. 7. Interfete dialup: PPP Cand suni cu modemul tau la un ISP, si se conecteaza la modemul lor, kernelul nu incepe pur si simplu sa trimita pachete IP prin conexiune. Exista un protocol numit PPP (point-to-point protocol), care este folosit pentru a negocia cu celalalt capat inainte de a se permite trimiterea oricaror pachete. Acesta este folosit de catre ISP pentru identificarea celui care a sunat: pe sistemul tau linux, un program numit "daemon PPP" se ocupa cu partea ta de negociere. Pentru ca in lume sunt atatia utilizatori de dial-up, de obicei acestia nu au propria lor adresa IP: cele mai multe ISP-uri iti vor aloca una din adresele lor cand te vei conecta (daemonul PPP va negocia acest lucru). Aceasta este adesea numita "adresa IP dinamica", diferita fata de "adresa IP statica" care este cazul normal cand ai propria ta conexiune permanenta. In mod normal aceasta adresa este determinata de modem, data urmatoare cand te conectezi, probabil ca vei nimeri alt modem, si astfel vei avea alta adresa IP. 8. Cum arata pachetele Pentru cei foarte curiosi iata o descriere a structurii unui pachet. Sunt mai multe aplicatii care captureaza pachetele care intra sau care ies dintr-un sistem linux: cel mai comun este "tcpdump" (care intelege mai multe protocoale decat TCP), dar unul mai fain este "ethereal". Aceste aplicatii sunt numite "snifere de pachete". Inceputul fiecarui pachet contine informatii cum ar fi destinatia, sursa, tipul pachetului, si alte detalii administrative. Aceasta parte a unui pachet este numita "header". Restul pachetului, ce contine datele propriu-zise, este in mod uzual numit "corpul pachetului". Asa ca orice pachet IP incepe cu un "header IP": in marime de cel putin 20 bytes. Arata cam asa (aceasta diagrama fu furata cu nerusinare din RFC 791 (nu de catre traducator:))): .-------+-------+---------------+-------------------------------. |Version| IHL |Type of Service| Total Length | |-------+-------+---------------+-------------------------------| | Identification |Flags| Fragment Offset | |---------------+---------------+-------------------------------| | Time to Live | Protocol | Header Checksum | |---------------+---------------+-------------------------------| | Source Address | |---------------------------------------------------------------| | Destination Address | "---------------------------------------------------------------" Campurile importante sunt Protocol, care indica daca pachetul este de tip TCP (numarul 6), un pachet UDP (numar 17) sau alceva, adresa IP sursa, si adresa IP destinatie. Acum, daca acel camp referitor protocolului spune ca pachetul este TCP, atunci imediat un header TCP va urma imediat header-ului IP: header-ul TCP este deasemenea de cel putin 20 bytes marime: .-------------------------------+-------------------------------. | Source Port | Destination Port | |-------------------------------+-------------------------------| | Sequence Number | |---------------------------------------------------------------| | Acknowledgment Number | |-------------------+-+-+-+-+-+-+-------------------------------| | Data | |U|A|P|R|S|F| | | Offset| Reserved |R|C|S|S|Y|I| Window | | | |G|K|H|T|N|N| | |-------+-----------+-+-+-+-+-+-+-------------------------------| | Checksum | Urgent Pointer | "---------------------------------------------------------------" Cele mai importante campuri sunt aici campurile reprezentand portul sursa si portul destinatie care determina catre ce serviciu este destinat pachetul (sau, in cazul pachetelor replica, de la care serviciu provine). Numerele "sequence" si "acknowledgment" sunt folosite pentru a tine o ordine in pachete si pentru a spune celuilalt capat ce pachete au fost primite. Flag-urile ACK, SYN, RST si FIN (scrise pe verticala) sunt biti unici folositi pentru negocierea deschiderii (SYN) sau inchiderii (RST sau FIN) conexiunilor. Dupa acest header urmeaza mesajul real pe care il trimite aplicatia (corpul pachetului). Un pachet normal are pana la 1500 bytes: aceasta inseamna ca cel mai mare spatiu pe care il poate ocupa datele este de 1460 bytes (20 bytes header-ul IP, 20 bytes header-ul TCP): peste 97%. 9. Sumar In concluzie internetul modern foloseste pachete IP pentru a comunica, si cele mai multe dintre aceste pachete folosesc TCP pentru controlul conexiunii. Noduri speciale denumite "rutere" conecteaza micile retele in retele mai mari, si paseaza pachetele catre destinatia lor finala. Marea majoritatea a computerelor sunt parte doar dintr-o retea (au doar o singura interfata), spre deosebire de rutere. Fiecare interfata are o adresa IP unica, care seamana cu "1.2.3.4": interfetele in aceeasi retea vor avea adrese IP inrudite, cu acelasi inceput, la fel cum telefoanele dintr-o anumita zona au acelasi prefix. Adresele de retea sunt asemanatoare adreselor IP, urmate insa de semnul "/" si un numar pentru a se specifica portiunea din acea adresa care reprezinta prefixul, de exemplu "1.12.0.0/24" inseamna ca primele 3 grupuri de cifre reprezinta adresa de retea, fiecare cifra reprezinta 8 biti. Masinile au asignate nume de catre serviciul de nume pe domenii: programele interogheaza serverele de nume adrese IP, furnizand acestora nume de genul: "www.lug.ro". Aceasta adresa IP este apoi folosita ca adresa IP destinatie pentru a vorbi cu acel nod. Rusty este destul de nepriceput pentru a scrie documente, in special pentru incepatori. Enjoy! Rusty. 10. Multumiri Multumiri lui Alison, pentru ca mi-a spus in cel mai frumos mod posibil ce tampenii am scris in versiunile de inceput. 11. Index o "100baseT" o "10base2" o "10baseT" o "Broadcast address" - adresa de broadcast o "Coax, Coaxial cable" o "Computer network" - retea de computere o "Default route" - ruta default o "Destination port" - port destinatie o "DNS, Domain Name Service" - serviciu de nume pe domenii DNS o "Dynamic IP address"- adresa IP dinamica o "Ethernet" o "Fiber" - fibra o "Gigabit Ethernet" o "Hop" o "Hub" o "Internet" o "IP, Internet Protocol" o "IP address" - adresa ip o "IP header" - header IP o "IPv4, IP version 4" o "IPv6, IP version 6" o "LAN, Local Area Network" - retea locala o "Link-level protocol" - protocol de nivel de legatura o "Modem" o "Name server" - server de nume o "Netmask" - netmask o "Network address, network mask" - adresa de retea, mask de retea o "Network interface, interface" - interfata de retea, interfata o "Network link" - legatura de retea o "Network protocol, protocol" - protocol de retea, protocol o "Node" - nod o "Packet body" - corp al pachetului o "Packet header" - header al pachetului o "Packet sniffer" - snifer de pachete o "Packet" - pachet o "Port, TCP port, UDP port" - port, port TCP, port UDP o "PPP, Point-to-Point Protocol" o "PPP daemon" - daemon PPP o "Protocol stack" - stiva de protocoale o "Retransmission" - retransmitere o "Route" - ruta o "Router" - ruter o "Routing" - rutare o "Sneakernet" o "Source port" - port sursa o "Star-topology" - topologie in stea o "Static IP address" - adresa IP statica o "Sub-network" - sub-retea o "TCP, Transmission Control Protocol" TCP, protocol cu controlul transportului o "TCP header" - header TCP o "Terminator" - terminator o "Topology" - topologie o "UDP, User Datagram Protocol" - UDP, protocol pentru datagrame utilizator o "UTP, Unshielded Twisted Pair" o "WAN, Wide Area Network" - retea intinsa