Sunteți pe pagina 1din 5
‘n buffer (tampon) datele care sosesc. Ca atare, TCP nu trimite datele de la aplicafia destinatic pind cind buffer-ul nu ajunge la un anumit prag. Flag-ul PSH spune modulului TCP si nu ‘nai introducd in tampon datele din segment. De exemplu, in mod normal o aplicatie Telnet ar trebui s& activeze acest flag. Prin aceasta, Telnet forfeazi TCP si transmiti imediat datele transmige de la tastatura utilizatorului cdtre serverul Telnet. Aceasta contribuie la eliminarea $ntdrzierilor in reflectarea caracterelor recepfionate inapoi la emifitor; majoritatea utilizatorilor Telnet vor si vada ce tasteaza chiar in momentul executarii operafici. ‘Acest flag cere modulului TCP de la receptie s& reinifalizeze (reset) conexiunea TCP. TCP ‘rimite un mesaj eu flag-u! RST cénd detecteazi o problemi cu o conexiune. Majoritatea aplicatiilor se incheie cand primesc acest flag. Totugi, se poate folosi acest flag pentru a crea programe sofisticate care pot determina refacerea sistemului dupa defectiuni hard sau soft. ‘Acest flag spune modulului TCP de la recep si sincronizeze numerele de secvenja. Aga cum afi afla, TCP foloseste acest flag pentru a informa modulul TCP de la recepfic c& emititoral se pregiteste si transmit un nou gir de date. ‘Acest flag spune modulului TCP de la recep c& emititoral a terminat de transmis datele. lag-ul FIN inchide fluxul de date doar in sensul in care circulé el insusi. Modulul TCP de la receptic trebuie si trimit gi cl un mesaj cu flag-ul FIN activat pentru a inchide complet conexiunea. DIMENSIUNE FEREASTRA Campul de 16 biti Dimensiune Fereasti indick modulului TCP de la recepfie numérul de octefi pe care temifitoral poate si il accepte, Aga cum ai aflt, TCP folosesteo fereastréglisanté de lungime variabil, pentru a mir debitul ga optimiza utilizarea lagi de banda reelei. Valorea din acest cmp specifick fingimea ferestre plisante. in mod normal, dimensiunea ferestei este de céteva mii de octet SUMA DE CONTROL TCP La fel ca suma de control UDP, cémpul Suma de Control TCP include datele TCP in caleule. TCP cere ca emifitorul si calculeze suma de control si si o includ in acest cmp. De asemenca, TCP cere ca ‘modulul de la receptie si verifice sumele de control cind primeste date. Nott: Softul de refea calculeazi sumele de control UDP si TCP in aceeasi manierd. Totusi, UDP mu ‘cere 0 suméi de control in datagramele sale. O sumi de control TCP este obligatorie pentru fiecare segment TCP transmis de emifétor. POINTER URGENTA Campul de 16 biti Pointer Urgent specific pozitia unui octet in zona de date TCP. Scopul faniomului URG $i al pointerului de urgent este de a atentiona modulul TCP receptor cé exist date urgente si de a indica pozitia acestora. Totus, nimeni mu 2 definit intr mod adecvat termenul date urgenie. De asemenea, nimeni nu a definit responssbilitatce modulului TCP receptor cu privire la tratarea datelor “gent. Poate chiar mai semnificativ este faptal cnc se mai discuti ce reprezintkpozitia acest octet. Douglas E. Comer, in a dona editie a cari sale, Internetworking with TCPAP (Interconectarea refelelor ‘cu TCP/IP) - Volum! 1, Prentice Hall, 1991, vorbestt despre c&impul Poi ql (Out of Band Data - Date ‘in afara benzit). Totusi, W. Richard Stevens, in sectiunea 20.8 a unei c&rti ‘excelente intitulati TCP/IP Mustrat - Votomul 1, Prentice Hall, 1994, comenteaza: tulte aplicafii numesc in mod incorect modul urgent TCP drept mod in afara benzii”. Evident, Stevens crede cf multe aplicafii amestec’ intr-un mod inacceptabil modul urgent si datele in ‘fara benzit. El contiaua prin a explica cum crede el ci s-a intimplat acest lucru: “Conficia intre modul urgent TCP si datele in afara bencit este de asemenea determinati de faptul cé interfata de programare predominanté, interfaja sockets API, mapeazi ‘modul urgent TCP in ceea ce socket-urile denumesc date in afara benzii:. Cuprivire la pozitia exacti a datelor urgente, Stevens prezinté urmatoral comentariu: “Bist 0 desbatere continué cu privire la faptul dact Pointer Urgentit indict ultimul octet de date urgente sau octetul imediat urmétor acestuia. Specificatiile TCP originale Ofer ambele interpretiri, dar RFC-ul Host Requirements (Cerinje pentru Host) 0 indict pe cea corecti: pointerul indict ultimul octet de date urgente.” “Problema, totusi, const in faptul ci majoritatea implementirilor (adicd implementirile derivate Berkeley) continud sd utilizeze interpretarea gresitd. O implementare care respect specificatile din Host Requirements RFC se poate incadra in parametrii cerufi, dar s-ar putea si nu comunice corect cu majoritatea celorlalte hosturi.” 7 ‘Stevens gi Comer sunt de acord cd pointerul de urgenté indica ultimul octet de date urgente. De asemenca, Stevens afirmd in mod clar cd mu exista vreo posibilitate de a identifica incepurul datelor urgente. Dup toate azestea, este posibl si vi intereseze utilizarle posible ale datelor urgente. Practic, toati lumen ‘menfioncazi.‘Telnet ca exemplu de aplicafie care poate utiliza modul urgent ‘al TCP. O aplicafie Telnet ‘urgente pentru a procesa caracterele escape sau intrerupere. in momentul de fats, ‘cat posibil folosirea modului urgent TCP. In afara cazului in care controlafi in mod explicit piectarea tuturor programelor care vor folosi aplicafia, alte programe pentru Internet pot interpreta incorect datele care apar ia modul urgent. : OPTIUNI ‘La fel ca antetul IP i antetal TCP include un cmp facultativ Optiuni. fn timpul negocieri initiate dintre cele dou capete ale unei conexiuni TCP, modulele TCP utilizeaz in general c&mpul Opfiuni impreun cu ‘optiunea Dimensiune Maximi'Segment. ‘Dimensiunea maxima a segmentului TCP este similara unitagii maxime de transfer (MTU) a nivelului fizic: ‘ca defineste dimensiunea maxima a mesajelor acceptate de modulul TCP. Asa cam afi'aflat, TCP optimizeazs folosirea latimii de banda a refelei prin cresterea ‘cement permite modulelor TCP s& anunfe care este cel mai Jere Segment san mesaj pe care se asteapti si-l primeasc8. Modulele TCP pot folosi optiunea Dimensiune lecima Segment numai intr-un mesaj cu flag-ul SYN activat. Totusi, dimensiunea maxima a segmentalui este o opfiune negociati. Umul dintre capetele conexiunii TCP il anunfé pur si simplu pe celilalt ci leap o anumiti dimensiune maxima a segmentului. Daca un modul TCP nu transmite o dimensiune Jatin a segmentului, TCP defineste in mod prestabilit o dimensiune maxima de 536 octeti. 7 WCAPSULAREA — [gacum am mentionat anterior, procesul de dezvoltare al programelor pentru aplicatiile Internet difer& arte putin de procesul necesar pent oricare alt tip de aplicatii. Proiectarea stratificata a refelei si Fotocoalele TCP/IP ajuti la ascunderea detaliilor neplacute legate de programele de rejea. Protocoalele falizeazi in locul utilizatorului majoritatea operatiilor legate de refea, iar designul stratificat il fereste de ttivititile mai delicate. Adevaratul rafinament a sistemului de livrare a datelor din Internet consta tocmai 5 simplitatca sa. Utilizatorul transfera datele de la aplicatii la un protocol din stiva de protocoale, acel totocol transfers datele urmitorului protocol din stiva si asa mai departe. Asa cum ati invitat, infelegerea tregului proces este important’. Dar, cnd creafi programe pentru Internet, nu trebuie si vl intereseze ‘ect interfata dintre program gi protocotul care va transporta datele. \ccst capitol si cele dou precedente au prezentat nivelurile dintr-o retea TCP/IP. De asemenea aceste ‘apitole au descris interfefele dintre protocoalele TCP/IP si nivelurile de retea. Procesul de transfer al latelor prin stiva de protocoale este cu adevarat un proces de incapsulare. Incapsularea presupune pur gi implu formatarea datelor pentru a se incadra intr-un artumit protocol. Pe misura ce datele circuld prin tiva de protocoale, fiecare nivel de refea construieste pe baza incapsulirii realizate de nivelul anterior. Sigura 5.9 prezinta o vedere generala a intreguiui proces de transfer al datelor prin stiva de protocoale. Yigura 5.9 Incapsularea datelor in timpul parcurgerii stivei de protocoale. cerinfele programului. Pentru a alege protocolul corect,trebue sisi ce protocoale sunt disponibile si are sunt funcfiile lor. Ultimele trei capitole v-au ajutat i infelegefi acest proces ‘si multe dintre detaliile necesare pentru a realiza aceste operaii. NIVELUL APLICATIE Este posibl si fi infeles deja o mare parte din ceca ce se petrece in cadrul nivelului aplicatic. Nivelul aplicatie confine toate detalile despre o aplicafie anume, Cu alte cuvint, ca programator pentru Internet, dumneavoastra proiectafi nivelul aplicatie cind va proiectati propriul program. Prin defnito, dac8sunteprogramator de aplicafic, sfi devoltat apicai software. Asa cu stile cnet a unui program depind de rlul pn care a fst coneeput programul: De exempts do Serf x devel apie Tnteet, este evident cl aveiinformafi pe care doris I anemi ee rie Inemet Ce tare penta a proc ou succes programe penta Intemet, tebe 38 Sut com crnomete sau cum s4 receptionfiinformafi in interet. Cind vi proiectati proprile progravie POA Teremet sr trebu svi intrebai: Cum comunic en cuTnteret-u!”,Afiaflat deja rispunsul fundamental: pentru a comonica cu Intemet-u,trebuie doar si trimitei informatia tn jos, prin sva de protocoale. Responstiltatea programatorlin cara nveuiul apicaiete dea comanicanfomaile mason aoa Ficeare nivel sucesiv din stiva de protocoale ji indeplinestefunciaarbuit, Protocoalcle Porn? lueeasd tate impreund pentru aadrese, ruta gi ransporta in mod corect date in Interne. Pent roe eccn protocoaele din stv trebuie sk ice protocoale exit Trebuie, de asemenes, <8 Hk ‘care-este poriia lor in stiva si sa infelegeti functille Jor. in mod normal, programele dumneavoastrd vor ‘communica cu unul dintre protocoalele de transport TCP sau UDP. REZUMAT coalele de transport din TCPAP distibuie datele aplicatilor de retea prin intermediul porturilor de protocol. Aj aflat cA, i majoritatea cazurilor, aplicatiile dumneavoastri vor avea ie subs decdt de UDP, deoarece TC? ofe servic de comunicasic mai sigue, Ia plus af aflat eum permite ofeeastaglisanti TCP eresterea jimi de bands a rte} sicontroul flaxului. Fncapitlul 6 vet citi despre ous protocoale cu destinaie specials: SLIP (Serial Line Internet Protocol) siPPP (Point-to-Point Protocol). Vefi fla cum utilizeaza Internet aceste doua protocoale de nivel legiturs sities fomaa datle TCP (in cade) penta transmise pri ini serial xm arf conexunile ode Prin lini telefonice obignuite. Tous, inainte de rece la Capitol 6, fi sigur afi injeles urmitoarele concepte de baz: Zen port de protocol TCP/IP repreznté 0 adresi de aplicate de rea in cadral unui calculator host. ¥ Protocoalele de transport uilizeazi porturi de protocol pentru a discuta cu aplicaiile. {TCP garanteazi siguranta datelor prin includerea unor sume de control in segmentele TCP $i. \ prin schimbul de mesaje de confirmare intre modulele TCP. . ¥ Ferestrele glisante permit modulelor TCP si transmiti mai multe segmente inainte de aastepta 1s. mesajul de confirmare, TCP foloseste o fereastri de dimensiune variabild pentru a mari latimea de banda a refelei si a Ee pentru a reatiza controlul fluxului. ~ Modulele TCP realizeazaun protocol de confirmare in tei pasi pentru stabilirea unei conexiuni __ TCP siun protocol in doi pas pentru inchiderea conexiunilor TCP. TCP realizeazi comunicatii duplex, motiv pentru care modulele TCP trebuie si opreasc& fluxul | de date in ambele sensuri inainte si inchida o conexiune TCP. ¥ \Cind TCP realizeazii o semiinchidere, TCP opreste fluxul de date intr-un singur sens.

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