Serveri i klientit ip Dodatok tcp. Shtesa klient-server në prizën e transmetimit TCP

Zharoznizhyuchі zasobi për fëmijët njihet si pediatër. Dyshohet se ka situata të ndihmës që nuk bie në sy në rast të temperaturës, nëse fëmija ka nevojë për t'ia dhënë atë në mënyrë të pafajshme. Etërit Todi marrin përsipër shkathtësinë dhe qëndrueshmërinë e barnave për uljen e temperaturës. A lejohet t'u jepet gji fëmijëve? Si mund ta mposhtni temperaturën e fëmijëve më të mëdhenj? Cilat janë më të mirat?

Shtesa klient-server në prizën e transmetimit TCP

Aplikacioni fyes ka një TCP fitimtare, e cila do të parandalojë rrymat e renditura, superiore të bajtit me dy drejtime. Do të presim përfundimin e suplementit, i cili përfshin klientin dhe serverin. Një koleksion demonstrimesh është se si unë ndërtoj një server në prizat e transmetimit TCP, dhe më pas një program klienti për testimin e serverit tonë.

Programi është gati të ndezë serverin, i cili do të fikë energjinë për ditën nga klientët. Serveri i stimujve është sinkron, otzhe, fluksi vikonannya është i bllokuar, ndërsa serveri nuk lejon që serveri të kthehet te klienti. Ky program demonstron një server të thjeshtë që do të shfaqë një klient. Klienti do të përfundojë ditën, duke drejtuar serverin .

Serveri TCP

Struktura e serverit tregohet në diagramet funksionale fyese:

Boshti i kodit të ri nga programet SocketServer.cs:

// SocketServer.cs duke përdorur Sistemin; duke përdorur System.Text; duke përdorur System.Net; duke përdorur System.Net.Sockets; Hapësira e emrit SocketServer (Programi i klasës (kryesore e zbrazët statike (args varg) (// Instaloni pikën fundore lokale për folenë IPHostEntry ipHost = Dns.GetHostEntry ("localhost"); IPadresa ipAddr = ipHost.AddressPointipndE ;IPE ); // Storyuєmo foleja Tcp / Ip Socket sListener = fole e re (ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp); // Duke supozuar një fole të pikës së fundit lokale dhe prizat e dëgjimit provoni (ipndListenPointer). ); // Rregullojeni për dëgjim ndërsa (e vërtetë) (Console.WriteLine ("Mirë për të dëgjuar përmes portit (0)", ipEndPoint); // Programi po merr, kontrollon nëse merr mbajtës Socket = sListener.Accept (); të dhënat e vargut = null; // Kemi një vajzë, po kontaktojmë me ne byte byte = byte i ri; int bytesRec = handler.Receive (bajtë); të dhëna + = Encoding.UTF8.GetString (bytes, 0 , bytesRec); // Shfaqja e të dhënave në tastierën e konsolës. Shkruani ("Teksti po jep:" + të dhëna + "\ n \ n"); // Dërgo një mesazh te klienti \ string reply = "Faleminderit për fuqinë për" + data.Length.ToString () + "simbolet"; byte msg = Encoding.UTF8.GetBytes (përgjigje); mbajtës.Dërgo (msg); nëse (të dhënat.Indeksi i (" ")> -1) (Console.WriteLine (" Serveri përfundon lidhjen me klientin. "); Break;) handler.Shutdown (SocketShutdown.Both); handler.Close ();)) catch (Exception ex) ( Console .WriteLine (p.sh.ToString ());) në fund (Console.ReadLine ();))))

Le të shohim strukturën e këtij programi.

Shtylla e parë croc në pikën përfundimtare lokale të instaluar për prizën. Priza Persh nіzh vіdkrivati ​​për ochіkuvannya z'єdnan, është e nevojshme të sigurohet një adresë e re e pikës lokale kintsevoy. Një adresë unike për një shërbim TCP / IP i caktohet një kombinimi të adresës IP të hostit dhe numrit të portit të shërbimit, i cili është një pikë për shërbim.

Metodat e klasës Dns nadaє, të cilat rrotullojnë informacionin rreth adresave të inkuadrimit, i shtohen bashkëngjitjeve në kornizën lokale. Përderisa aneksi ka një mbrojtje lokale є më shumë se një adresë mbrojtjeje, klasa Dns ka ndryshuar informacionin për të gjitha adresat mbrojtëse dhe shtesa është fajtore për dridhje nga grupi i adresave të dhëna për shërbim.

Krijoni një IPendPoint për serverin, duke kombinuar adresën e parë IP të kompjuterit pritës, duke e caktuar atë në metodën Dns.Resolve (), me numrin e portit:

IPHostEntry ipHost = Dns.GetHostEntry ("localhost"); IPadresa ipAddr = ipHost.Lista e Adresave; IPEndPoint ipEndPoint = IPEndPoint i ri (ipAddr, 11000);

Këtu klasa IPEndPoint përfaqëson localhost në portin 11000. Më pas, ne do të instantojmë klasën Socket në prizën e transmetimit. Pasi të keni futur pikën lokale për pastrim, mund të hapni prizën:

Socket sListener = Socket i ri (ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);

stërngjyrë Adresa e Familjes Futja e skemave të adresave, të tilla si një shembull i klasës Socket, mund të konfigurohet për adresim.

Parametrat SocketType Prizat TCP dhe UDP janë të disponueshme. Në një nivel të ri, është e mundur të përfshihen vlerat e mëposhtme:

Dgram

Datagramet Pidtrimu. Vlera Dgram përdoret për të treguar Udp për llojin e protokollit dhe InterNetwork në parametrat e familjes së adresave.

Të papërpunuara

Le të kemi akses në protokollin bazë të transportit.

Transmeto

Përrenj dhe priza të marra. Vlera e Stream është të tregojë Tcp për llojin në protokoll.

Parametri i tretë dhe i fundit është lloji i protokollit që kërkohet për prizën. Parametrat Lloji i Protokollit mund të vendosni vlerat më të rëndësishme - Tcp, Udp, Ip, Raw.

Hapi me grep maє buti caktimi i prizës për metodën shtesë Lidhe ()... Nëse priza shfaqet nga një konstruktor, nuk i caktohet një emër, por rezervohet vetëm një përshkrues. Për të caktuar një emër në prizën e serverit, përdorni metodën Bind (). Priza e klientit është një prizë e transmetimit TCP, programi i serverit është përgjegjës për dhënien e prizës së tij:

SListener.Bind (ipEndPoint);

Metoda Bind () lidh folenë me një pikë fundore lokale. Metoda Viclicati Bind () kërkohet përpara çdo kthimi të thirrjeve në metodat Listen () dhe Accept ().

Tani, pasi keni hapur prizën dhe jeni lidhur me të, është e mundur të dëgjoni në të ardhmen, duke shpejtuar metodën Dëgjo ()... Në stendën e orarit të kontrollit të prizës së përgjimit, provoni për një ditë:

SListener.Dëgjo (10);

Parametrat kanë zadil (mbrapa), do të porosis numrin maksimal të z'єdnan, që do të pastrojë obrobin në mes. Në kodin e induktuar, vlerat e parametrit të tolerancës grumbullohen deri në dhjetë ditë.

Në stacionin e dëgjimit të kërkesës, ne po përgatisim një datë për vitin për ditën me një klient, për të cilin metoda do të jetë fitimtare Prano ()... Për një metodë shtesë, lidhja e klientit përfundon dhe lidhja e emrit të klientit dhe serverit përfundon. Metoda Accept () përdoret për të bllokuar magjistarin e programit derisa të kthehet në gjendjen e duhur.

Metoda Prano () për përpunimin e një prizë të re. Nëse dua një prizë të re valvulash, një prizë kalli, do t'i shes thashethemet, dhe ju mund të përdorni shumë përpunim të rrjedhës për marrjen e furnizimit me energji decilale për klientët. Gjithsesi, shtesa e serverit është mbyllur në mënyrë të pafajshme priza juaj e dëgjimit. Unë jam fajtor për porosinë prodovzhuvati pratsyuvati me priza, të hapura me metodën Prano për përpunimin e fuqisë hyrëse të klientëve.

Ndërsa (e vërtetë) (Console.WriteLine ("Marrë përmes portit (0)", ipEndPoint); // Programi do të marrë, duke kontrolluar në mbajtësin e Socket = sListener.Accept ();

Yak vetëm klienti dhe serveri janë instaluar mes tyre, është e mundur të menaxhohen dhe hiqen metodat e reja Dërgo ()і Merr () Socket i klasës.

Metoda Send () do të shkruajë të dhënat e daljes në prizë, me grupin e të dhënave. Metoda Receive () lexon të dhënat hyrëse në prizën e transmetimit. Në rastin e një sistemi viktorian të bazuar në TCP, para paraqitjes së metodave Send () dhe Receive () me priza, vendoset parazgjedhja. Protokolli i saktë i dy çështjeve modale të ndërlidhura reciprokisht është fajtor për të njëjtat vlera gjatë gjithë kohës, por klienti dhe serveri nuk bllokojnë një, nuk e di se kush është fajtor për sjelljen e të dhënave të tij tek i pari.

Nëse ka përfunduar shkëmbimi i të dhënave ndërmjet serverit dhe klientit, është e nevojshme të mbyllni informacionin në lidhje me metodat e vikaristëve Fike ()і Mbylle ():

Handler.Shutdown (SocketShutdown.Both); mbajtës.Mbyll ();

SocketShutdown - tse pererahuvannya, scho hakmarrje tre vlera për zupinka: te dyja- zupinyaє vidravku se otrimannya danih fole, Merrni- zupinyaє otrimannya danih me fole i Dërgo- zupinyaє për të dërguar danikh me një prizë.

Priza mbyllet kur metoda Close () është e keqe, e cila gjithashtu do të vendosë fuqinë e prizës së lidhur në false.

Klient në TCP

Funksione, të tilla si vikoristovuyutsya për rrjedhën e programit-klient, server bolsh-mensh nagaduyut dodatok. Për serverin, ekzistojnë gjithashtu metoda për vendosjen e pikës fundore, hapjen e shembullit të folesë, përditësimin dhe refuzimin e të dhënave dhe mbylljen e prizës.

Rritje çmimi sipas protokolleve të hemisferës.

TCP dhe UDP është një shkelje e protokollit të transportit. UDP është një protokoll i tërë pa vendosjen e të dhënave dhe shpërndarjen e pagarantuar të paketave. TCP (Transmission Control Protocol) është një protokoll i tërë i bazuar në të dhënat e vendosura dhe shpërndarjen e garantuar të paketave. Një koleksion mesazhesh të shkruara me dorë (Privit. | Privit. | Le të bisedojmë? | Hajde.) Në distancë gjatë rrugës, paketat (ede rosmova) duhet të kopjohen dhe me një kthim, paketat do t'i dorëzohen marrësit. Nëse paketa është e prishur, ose nëse është bërë, është pak me një çantë kontrolli, atëherë është e mbingarkuar përsëri ("përsëriteni pa e ngritur"). Me një gradë të tillë, TCP është më premtues, por përkundrazi paloset nga pikëpamja e zbatimit dhe me sa duket më shumë orë / memorie, gjë që nuk është e rëndësishme vetëm për mikrokontrolluesit. Mund të përdorni FTP, HTTP, SMTP dhe shumë të tjera.

TL; DR

HTTP (Hypertext Transfer Protocol) është një protokoll aplikacioni, me ndihmën e të cilit serveri shfaq faqen e shfletuesit tonë. HTTP në gjuhën daneze orë në të gjithë vendin për të vizituar Pavutin gjithë-ukrainas për heqjen e informacionit nga faqet e internetit. Në imazh, svitnik në mikrokontrollues me OS në bord, në të cilin ngjyra vendoset përmes shfletuesit.

Teksti i protokollit HTTP dhe bëjeni të thjeshtë. Aksi Vlasne kështu që shikoni metodën GET, mund t'i referoheni programit netcat në adresën lokale IPv6 të serverit me drita:

~ $ Nc fe80 :: 200: e2ff: fe58: b66b% mazko 80<

Metoda HTTP është një fjalë e shkurtër angleze e shkruar me shkronja të mëdha, e ndjeshme ndaj regjistrit. Një server lëkure për thurje kulture pіdtrimuvati jak metodat minimale GET dhe HEAD. Përveç metodave GET dhe HEAD, metodat POST, PUT dhe DELETE shpesh ngecin. Metoda GET është fitimtare për të ushqyer në vend të burimit të caktuar, në rastin tonë, këtu GET / b HTTP / 1.0 de shlakh / b vidpovid për ngjyrën (blu). Pamja e serverit:

HTTP / 1.0 200 OK Server: Contiki / 2.4 http://www.sics.se/contiki/ Lidhja: mbylle Cache-Control: pa-cache, pa dyqan, duhet të rivlerësohet Pragma: pa-cache Skadon: 0 Përmbajtja- lloji: tekst / html Contiki RGB

E kuqja është FAKTUAR

E gjelbërta është FAKT

Blu është AKTIV

Kodi do të bëhet (kemi 200) є pjesë e rreshtit të parë të ekranit të serverit. Fitimi është një numër i plotë me tre shifra. Shifra e parë do t'i shtohet klasës. Pas kodit të shfaqjes, më lejoni të shpjegoj frazën në anglisht, sikur të jetë e qartë për njerëzit arsyeja e një mesazhi të tillë. Në vipadku-në tonë serveri është shfaqur pa falje, gjithçka është në grup (OK).

Yak zapit, kështu dhe tregoni kokat (rreshti i lëkurës - rreth fushës së kokës, çifti i vlerave im'ya është i ndarë në dy ngjyra). Titujt përfundojnë me simbolin e një rreshti të ri, për të cilin mund të ketë disa të dhëna.

Shfletuesi im është në gjendje të shfaqë adresën lokale IPv6, kështu që në firmware-in e mikrokontrolluesit për të përshkruar një adresë shtesë, dhe i njëjti prefiks gjithashtu duhet të caktohet në ndërfaqen virtuale të simulatorit:

~ $ Sudo ip addr shtoni abcd :: 1/64 dev mazko # linux ~ $ netsh ndërfaqe ipv6 vendos adresën mazko abcd :: 1 # dritare ~ $ curl http: //

Serverët që implementojnë protokollet në skajin e korporatës, caktojnë adresat IP të klientit, gateway, maskën për buzën, serverët dhe printerin. Unë do t'i dorëzoj koristuvaçamët që të mos konfigurojnë hostin e tyre që të jenë fitimtarë.

Sistemi operativ QNX Neutrino zbaton një tjetër protokoll konfigurimi automatik të quajtur AutoIP, i cili është projekti i IETF për konfigurimin automatik. Protokolli Tsei vikoristovutsya në kornizë të vogël për caktimin e adresës IP të hosteve, lokale në kanal (link-lokal). Protokolli AutoIP është i pavarur nga adresa IP që është lokale e kanalit, skema vikoristike e përdorimit me hostet e tjerë dhe nuk shkon në serverin qendror.

Vikoristannya PPPoE

PPPoE i shpejtë është i koduar si "Protokoll pikë-për-pikë mbi Ethernet" Ky protokoll përmbledh të dhënat për transmetim mbi një rrjetë Ethernet bazuar në topologji.

PPPoE - specifikat e lidhjes nga Ethernet në internet përmes një lidhjeje me gamë të gjerë, për shembull, një linjë dixhitale abonenti është e dukshme ose një lidhje pa gojë me një modem kabllor. Duke përdorur protokollin PPPoE dhe modemin me përmasa të gjera, rrethimit lokal të kompjuterit nuk do t'i sigurohet akses individual dhe i vërtetuar në transmetimet e të dhënave të rrethimit me shpejtësi të lartë.

Protokolli PPPoE është një teknologji e zakonshme Ethernet me protokollin PPP, i cili ju lejon të hapni me efikasitet derën e një serveri në distancë për gërryerjen e lëkurës. Kontrolli i aksesit, fusha e informacionit dhe vibi i post-menaxherit të shërbimit është i destinuar për koristat, dhe jo për universitetet. Një qasje dërrmuese në këtë fushë është në faktin se as kompania telefonike dhe as ofruesi i shërbimit në internet nuk janë fajtorë për ofrimin e një mbështetjeje të veçantë për të gjithë.

Në vidminu nga udhëtimi, lidhja përmes linjës dixhitale të abonentit dhe modemit kabllor është aktive. Oskіlki fizichne s'єdnannya s vіddalіnіy postlіvіyu serіt spіlko vikorіvua kіlkom kіlkom koristuvachami, një metodë e nevojshme e oblіku, si ristrukturimi i ftesave dhe adresuesve në trafik, si dhe viroblyaє për kriminelët. Protokolli PPPoE lejon lidhjen e një universiteti të largët, i cili merr pjesë në një seancë telefonike, duke marrë adresën dhe një orë shkëmbim kalli, i cili quhet viyavlennyam(Zbulim). Për këtë, pasi është krijuar një seancë midis karystuvach dhe viddalny vuzlom (për shembull, kreu i shërbimit në internet), gjatë këtij sesioni është e mundur të tregohet kujdes për të lëkundur. Në stendat, hotelet dhe korporatat, aksesi në internet është i disponueshëm nëpërmjet linjave dixhitale të abonentëve nëpërmjet teknologjisë Ethernet dhe protokollit PPPoE.

Të dhënat përmes protokollit PPPoE ruhen nga klienti dhe serveri. Klienti dhe serveri mund të lidhen me çdo lloj ndërfaqe, e cila është afër specifikave të Ethernet. E gjithë ndërfaqja do të vendoset për adresën IP të çdo klienti me një lidhje me adresën IP të klientit dhe te klientët, te stacionet e punës, për të zëvendësuar vërtetimin në bazë të stacionit të punës. Serveri PPPoE ofron një lidhje të dhënash pikë-për-pikë për klientin e lëkurës.

Vendosja e një sesioni PPPoE

Për të nisur një seancë PPPoE, ndiqni shërbiminpppoed... modulio-pkt- * nOfron shërbime PPPoE. Duhet të filloni bisedënio-pkt- *ssipas shoferit... prapanicë:

TCP integrohet natyrshëm në klient/server (div. Fig. 10.1). shtesa e serverit përgjimet(Dëgjo) eja për të pirë në z'єdnannya. Për shembull, shërbimet WWW, ri-ngarkimi i skedarëve ose aksesi nga terminali duke dëgjuar furnizimin me energji elektrike, duke kaluar përmes klientëve. Komunikimet në TCP nisen nga një sërë nënprogramesh, të tilla si komunikimi me serverin (Div. Kapitulli 21 rreth ndërfaqes së softuerit prizë).

I vogël. 10.1. Serveri wiklik Clint.

Në të vërtetë një klient mund të jetë një server. Për shembull, serverët e postës mund të lidhen me serverë të tjerë të postës për të kapërcyer çdo postë elektronike midis kompjuterëve.

10.2 Konceptet TCP

Në çfarë forme duhet të anashkaloni të dhënat në TCP? Në cilën pamje të TCP transferohen të dhënat në IP? Cili është rendi i transmetimit dhe pranimit të protokollit TCP? Të gjitha informacionet ushqyese në lidhje me ndryshimet në pushimet e ardhshme do të përshkruajnë konceptet bazë të TCP.

10.2.1 Rrjedhat e të dhënave hyrëse dhe dalëse

konceptuale modeli i shtesës për shtimin mbizotërohet nga fluksi shtesë i dhënë nga shtesa. Në të njëjtën orë, merrni një shans nga partneri juaj. TCP nadaє dupleks i vetëm Modaliteti i robotit (Duplex i plotë), nëse keni nevojë për shërbim një orë dy rryma Danih (div. fig. 10.2).


I vogël. 10.2. Dodatki obm_niyuyutsya rrjedhat e haraçit.

10.2.2 Segmentet

TCP mund të rishkruhet nga programet siç është dhënë në një formë të përshtatshme për shpërndarje në një datagram. Rangu i Yakim?

Komplementi transmetohet në TCP dhe i gjithë protokolli vendoset brenda tampon i jashtëm(Dërgo tampon). Dërgoni TCP dërgoni mesazhe nga buferi dhe dërgoni kokën (kur segmente- segment). Në fig. 10.3 treguar, yak dan z buferi i daljes TCP paketohet në segmente. TCP transmeton një segment në IP për dërgim nga datagramet viglyadі okremoї. Paketimi i saktë i të dhënave në kuti do të parandalojë tejkalimin e efikasitetit të të dhënave, kështu që derisa segmenti TCP të hiqet, derisa buferi i daljes të mos marrë asnjë numër të dhënash.


I vogël. 10.3 Ana e segmentit TCP

10.2.3 Vishtovhuvannya

Sidoqoftë, haraçet e mëdha shpesh janë të pakëndshme për donacione të vërteta. Për shembull, nëse programi i klientit i Kintsev koristuvach është një seancë interaktive me një server në distancë, ishte e nevojshme vetëm të futej komanda (me fillimin e sulmeve në çelësin Kthimi).

Kërkohet programi i klientelës së klientit, nëse TCP di për transferimin e të dhënave në hostin e largët dhe operacioni nuk është sekret. Vykom vipadku vikorist vishtovhuvannya(Shtyp).

Nëse pyesni veten për operacionin në një seancë interaktive, mund të gjeni shumë segmente me një numër të vogël homazhe dhe, për më tepër, mund të praktikoni praktikisht në segmentin e lëkurës së homazheve. Sidoqoftë, është pafajësisht e ndenjur për një orë për të mbingarkuar skedarët (me fajin e segmentit të fundit), dhe TCP mund të jetë mënyra më efikase për të paketuar të dhënat në një segment.

10.2.4 Termat e referencës

Modeli mbizotërohet nga një transferim i të dhënave, duke transferuar një rrymë të porositur bajtesh, e cila është direkt në pikën e caktimit. E di, pasi kam aktivizuar aplikacionin e një sesioni interaktiv, le të themi, vëmendje(Uwaga) abo thyej(Ridublimi). E fundit, por jo më pak e rëndësishme, le të humbasim bajtin і vіdreaguvati mbi sulmin e clavіshі yakomog shvidshe.

mekanizmi term tribute të reja(Të dhënat urgjente) markë e informacionit të veçantë në segmentin jak varg. Tsim TCP do të kërkojë partnerin e tij, kështu që segmenti do të hakmerret për sa i përket të dhënave dhe mund të jetë e mundur t'i gjejë ato. Partneri është fajtor për përcjelljen e informacionit në suplementin e njohjes së yakomog shvidshe.

10.2.5 Suplementet e prishjes

Klienti është fajtor për identifikimin e shërbimit, derisa ai dëshiron të mohojë aksesin. Synoni adresën specifike IP të shërbimit pritës dhe numrin e portit TCP. Për UDP, numrat e portave TCP janë në rangun nga 0 në 65535. Portet në rangun nga 0 në 1023 njihen si porte të njohura për akses në shërbimet standarde.

Disa nga stoku i porteve shtëpiake dhe programeve të reja janë paraqitur në tabelën 10.1. shërbimi Hidhni(Port 9) i ngarkuar(Port 19) - Versionet TCP janë gjithashtu të disponueshme për ne përmes shërbimeve UDP. Është e nevojshme të mbani mend se trafiku në portin 9 në protokollin TCP do të rrisë lidhjet nga trafiku në portin 9 në protokollin UDP.


Tabela 10.1 Portat e kokës TCP dhe shtesat e përditësuara

port suplement te pershkruaj
9 Hidhni Duke thënë të gjitha homazhet e ardhshme
19 Ngarkues Gjenerues i simboleve. Shkëmbeni me një lumë simbolesh
20 FTP-Të dhënat Porti u anulua në FTP
21 FTP Porta për dialog FTP
23 TELNET Port për postim nëpërmjet Telnet
25 SMTP Porta SMTP
110 POP3 Shërbim vibrues për kompjuterë personalë
119 NNTP Qasje në artikujt e rinj të thurjes

Si mund të na tregoni për portin, si mund të bëheni klientë? Në vipadkah amtare klientët nuk punojnë përmes portit të shtëpisë. Por në situata të tilla, është e nevojshme të shihet informacioni, vera shpesh furnizohet me sistemin operativ dhe i caktohet atij një port jo poroz dhe i parezervuar. Në fund të ditës, kthejeni portin mbrapa, në mënyrë që porti të mund të rifitohet nga klienti. Lëkundjet në grupin e numrave jo të rezervuar janë më shumë se 63,000 porte TCP, të ndërlidhura në port për klientët mund të mos jenë të disponueshme.

10.2.6 Adresat e prizës

Siç dihet tashmë, do të quhet kombinimi i adresës IP dhe portit për komunën prizë. Lidhja TCP do të identifikohet nga adresa e folesë në fundin e lëkurës së kësaj lidhjeje. Në fig. 10.4 tregon lidhjen midis klientit me prizën e adresës (128.36.1.24, port = 3358) dhe serverin me folenë e adresës (130.42.88.22, port = 21).

I vogël. 10.4. adresat e prizës

Kreu i datagrameve të lëkurës zbulon adresat dhe shenjat IP të dzherel. Do të shihet se numri i portit të dzherel tregohet në kokën e segmentit TCP.

Thirrni serverin brenda natës klientët Keruvati Dekilkoma. Adresat unike të socket serverit u caktohen një orë të gjithë klientëve (div. Fig. 10.5).


I vogël. 10.5. Kilka kliєntіv z'єднані me adresat e serverit prizë

Lëkundjet e datagramit për t'u hakmarrë për segmentin e lidhjes TCP, të identifikuar nga adresat IP dhe portet, serveri është po aq i thjeshtë sa ofrimi i një lidhjeje me klientët.

10.3 Mekanizmi i besueshmërisë TCP

Në të njëjtën kohë, mekanizmi i TCP është i kuptueshëm, vikorizimi për dërgimin e besueshëm të të dhënave me ruajtjen e rendit të mbingarkesës dhe ndezjes ose fikjes.

10.3.1 Numërimi dhe miratimi

Për të siguruar haraçin dërrmues në TCP, duhet të futet numërimi dhe njohja (ACK). Skema e numërimit TCP fillimisht është e padukshme: lëkurën mbizotërim sipas z'єdnannyu oktet një numër serial të tillë. Numri i sekuencës së hakmarrjes së subjektit të segmentit TCP okteti i parë i segmentit të dhënë.

Nga klienti kërkohet të marrë konfirmimin e taksës. Për sa kohë që ACK nuk bie mbi intervalin e skadimit, të dhënat ritransmetohen. Tsey mënyrë për t'u quajtur konfirmim pozitiv i ritransmetimit(Mirënjohje pozitive me ritransmetim).

TCP vëzhgon kontroll të rreptë mbi futjen e numrave serialë, në mënyrë që të mund të rikonfigurojë sekuencën e të dhënave të refuzuara dhe numrin e pjesëve të përdorura. Lëkundjet e ACK të së njëjtës rang mund të përfshihen ose tejkalohen, derisa të mund të gjenden segmente të dyfishta. Renditja e numrave lejon që të bëhet numri i dublikatave, për aq kohë sa ato shfaqen.

Në fig. 10.6 indikacionet e faljes, shikimi i afatit dhe rimbingarkimit në TCP.


I vogël. 10.6. Kohëzgjatja dhe ritransmetimi në TCP

10.3.2 Fushat e portit, sekuencës dhe ACK-së në TCP Header

Jak është paraqitur në Fig. 10.7, disa fusha të para të kokës TCP, vendosni një shkurtore për vlerat e portit të serverit dhe vlerën, numrin e sekuencës së bajtit të parë të të dhënave të mbyllura dhe ACK, të barabartë me numrin e sekuencës fyese byte, ochіkuvanny onіnshomu kіntsі. Me fjalë të tjera, nëse TCP nga partneri i tij do të heqë të gjithë bajtet deri në 30, në të gjithë fushën do të ketë një vlerë prej 31, nëse përfshin një segment, i cili do të përcillet.


I vogël. 10.7. Vlerat e kallirit në fushat e kokës TCP

Një detaj i vogël nuk mund të anashkalohet. Me sa duket, TCP ka dërguar byte nga 1 në 50 dhe nuk ka më të dhëna për dërgim. Për aq sa partneri duhet të marrë të dhënat, TCP dërgohet për të konfirmuar konfirmimin, për të cilin titulli dërgohet pa asnjë të dhënë shtesë. Natyrisht, ekziston një parametër ACK në kokën e dytë. Në fushën e sekuencës - vlera 51, në mënyrë që numri i bajtit avancues, i cili është maє namir dërgoni TCP. Nëse arrin TCP, titulli i ri TCP është gjithashtu i njëjtë në fushën e vlerës së fundit 51.

10.4 Vendosja e të dhënave

Yakim renditet dy dodatki dodnuyutsya mezh veten? Para se të komunikoni lëkurën prej tyre, një program wiki për formimin e një blloku memorie, i cili do të jetë një mashtrim për marrjen e parametrave TCP dhe IP të të dhënave të dhëna, për shembull adresën e folesë, numrin serial, vlerën e kallirit për orën e jetës, etj. .

Shtesa e serverit ochіku shfaq një klient, i cili, bazhayuchi, otrimatyuchi qasja në server, shtypniє aktivizon z'єdnannya(Connect), i cili identifikon adresën IP dhe portin e serverit.

Ekziston një specialitet teknik. Ana e lëkurës riparon numërimin e bytit të lëkurës jo nga një, por nga në numrin e radhës dhjetore(Dali mi diznaєmosya, për kë të provoni). Këtu është specifika dhe më vjen mirë: numri serial cob i gjeneratorit bazohet në një kohëmatës të orës 32-bit, që është afërsisht 4 mikrosekonda.

10.4.1 Skenarët

Procedura e konfigurimit shpesh quhet shtrëngim duarsh me tre drejtime;

Përpara orës së instalimit, partnerët do të shkëmbejnë tre informacione të rëndësishme:

1. Pajtohuni me hapësirën e tamponit për marrjen e haraçit

2. Numri maksimal i tributeve bartet në segmentin hyrës

3. Numri rendor i kallirit, i cili është fitimtar për haraçet e zëvendësit

Me sa duket, lëkura nga ana e stazës operacion 1 dhe 2 për Mes, në të cilat do të ketë ditë, ka një anë. Kompjuteri personal mund të ketë një tampon të vogël të pjerrët, dhe një superkompjuter mund të ketë një tampon të madh. Struktura e memories së një kompjuteri personal mund të ndërlidhet me pjesë prej 1 KB, dhe superkompjuteri mund të kontrollohet me segmente të mëdha.

Ndërtesa menaxhohet nga dinjiteti i palës sonë dhe nga autoritetet e rëndësishme, të cilët do të kujdesen për shkallëzimin e TCP/IP.

Në fig. 10.8 indikacionet e prapanicës për skenarin e ditës. Numrat e paraqitur janë edhe më të thjeshtë në kalli, që të mos i mbingarkoni të vegjlit. Me sa duket, për një fëmijë të caktuar, ka një klient të madh për madhësinë e segmentit, poshtë serverit.


I vogël. 10.8. themelimi i z'єdnannya

Operacionet sulmuese Vykonuyutsya:

1. Serveri është inicializuar dhe jemi gati t'ua dërgojmë klientëve (i gjithë stacioni quhet pasiv i hapur).

2. Klienti do të fuqizojë ekranin TCP nga serveri për adresën IP dhe portin e specifikuar (i gjithë vendi quhet i hapur aktiv).

3. Klієntska TCP do të heqë numrin e sekuencës së kallirit (në këtë aplikacion - 1000) dhe do segmenti i sinkronizimit(Sinkronizimi i segmentit - SYN). Në të gjithë segmentin, numri rendor, madhësia e dritares maksimale (4K) dhe madhësia e segmentit më të vogël, që mund të pranojë klientin (1460 bajt), do të anashkalohen.

4. Nëse shfaqet SYN, do ta çaktivizoj serverin në TCPє sviy numri serial i kallirit (3000). Ju fituat segmentin SYN, për të hakmarrë numrin serial të cob (3000), ACK 1001 (që do të thotë numërimin e bajtit të parë të dërguar nga klienti yak 1001), madhësinë e dritares maksimale (4K) dhe madhësinë e më të voglit segmenti bajt, i cili është 1024.

5. Klієntska TCP, pasi ka redaktuar serverin vizualisht me SYN / ACK, prapa ACK 3001 (bajt i parë i dërguar nga serveri është fajtor për numërimin e yak 3001).

6. Klієntska TCP do të shtojë shtesën e vet për shfaqjen e të dhënave.

7. Server TCP, pasi ka redaktuar TCP-në e klientit sipas ACK, informacionin rreth mesazhit të kthimit.

Klientët dhe serverët shpallin rregullat e tyre për të dhënat e marra, sinkronizojnë numrat e porosive të tyre dhe bëhen gati për të shkëmbyer të dhëna. Specifikat e TCP tregojnë dhe është i vetmi skenar (jo larg), nëse të dy programet shfaqin njëkohësisht një ekran në të njëjtën kohë.

10.4.2 Vendosja e vlerës së parametrave IP

Fuqizimi i të dhënave shtesë për instalimin e të dhënave mund të shtojë në të njëjtën kohë parametra për datagramet IP, pasi të dhënat e transferimit të të dhënave do të transferohen. Nuk është e nevojshme të ndërhyhet në vlerën e parametrit, por vlera është vendosur për arsyet.

Për shembull, shtesa mund të lëkund vlerën e nevojshme për prioritetin IP ose llojin e shërbimit. Plagët e lëkurës nga njëra anë në tjetrën një në një formë të një do të përcaktojnë përparësinë e fuqisë dhe llojin e shërbimit, teorikisht kuptimplotë mund të zhvillohen për rrjedha të ndryshme të drejtpërdrejta të të dhënave. Si rregull, në praktikë, është e nevojshme të rregullohen të njëjtat vlera që lëkura të shkëmbehet drejtpërdrejt.

Nëse, përveç kësaj, opsionet janë të sigurta për instalime jo të standardizuara, lëkura nga pikat fundore, megjithatë, është fajtore për vikoristovuvati, megjithatë, i njëjti informacion nuk do të instalohet.

10.5 Duke e mposhtur Danih

Duke e mposhtur danikhun për t'u penduar pas përfundimit të konfirmimit me tre hapa të fillimit të ditës (Div. Fig. 10.9). Standardi TCP lejon përfshirjen e të dhënave të personalizuara në segmente, por era e keqe nuk do të dorëzohet me shtesën derisa të dhënat të përfundojnë. Për të thjeshtuar numërimin, do të vendoset në 1000 bajt. Segmenti i lëkurës së kokës TCP ka një fushë ACK, e cila identifikon numrin e sekuencës së bajtit, i cili transmetohet dhe njihet nga partneri.


I vogël. 10.9. Një arsye e thjeshtë për shkëmbimin e të dhënave dhe ACK

Segmenti i parë i mesazheve nga klienti është revanshimi i bajteve nga 1001 deri në 2000. Në fushën e parë ACK, mund të ndryshoni vlerën 3001, e cila do të tregojë numrin rendor të bajtit, i cili transmetohet nga serveri.

Serveri do t'i kthehet klientit me një segment, i cili do të marrë 1000 bajt të dhëna (do të riparohet nga numri 3001). Në fushën e th ACK të titullit TCP, do të tregohet se bajtet nga 1001 në 2000 tashmë janë hedhur me sukses, numri i sekuencës së segmentit është për shkak të 2001.

Dali kliєnt segmente të realizueshme, të cilat riparohen nga bajtet 2001, 3001 dhe 4001 në kuptimin e fundit. Me sa duket, klienti nuk zbulon ACK nga lëkura nga segmentet e dërguara. Dani për të mposhtur partnerin derisa hapësira tampon të mbushet (meqë ra fjala, mund të jetë më e saktë të mbytesh prej saj).

Server për të ruajtur gjerësinë e brezit të ndërtesës duke dërguar një ACK të vetme për të siguruar suksesin e të gjithë segmenteve.

Në fig. 10.10 tregon mbizotërimin e haraçit kur futet segmenti i parë. Në fund të afatit, mbingarkesa e segmentit përsëritet. Me sa duket, pas eliminimit të futjes së një segmenti, duke marrë një ACK, ai do të mbizotërojë të dy segmentet.


I vogël. 10.10. Humbje e haraçit dhe ritransmetim

10.6 Zakritta z'єdnannya

Normalisht, përfundimi i ditës është për të vizituar për procedurën shtesë të skanimit të nevojshëm të dorës, si dhe kur bëhet pyetja. Lëkura nga ana mund të shihet si sfond për skenarin fyes:

A:

B:"Mirë".

V:"Unë mund ta kompletoj robotin."

A:"Mirë".

Është e lejueshme për një skenar të tillë (dua të jem fitimtar në skaj të vendit):

A:"E mbarova robotin. Danih për thjeshtim të tepërt është më memec."

V:"Mirë. Megjithatë, yakis dani ..."

V:"Unë mund ta kompletoj robotin."

A:"Mirë".

Në fund të dritares, serveri është i mbyllur, pasi përdoret shpesh për thirrjet drejt klientit / serverit. Në këtë rast, kur prezantojmë koristinën në seancë telnet komandat e daljes (dalja nga sistemi) serveri do të aktivizohet me mbylljen e ditës. Në situatën e treguar në fig. 10.11 ditë në këtë renditje:

1. Dodatok në server, do të shtoj TCP për mbylljen e arkës.

2. Serveri TCP siguroi segmentin përfundimtar (Segmenti Final - FIN), duke informuar partnerin e tij për ato që ishin dhënë për rimbursimin më shumë.

3. Klienti TCP zbaton ACK në segmentin FIN.

4. Klienti TCP do të shfaqet si shtesë e tij, kështu që serveri dëshiron ta mbyllë atë.

5. Klієntske dodatok do të shohë TCP-në time rreth z'єdnannya zakrittya.

6. Klienti TCP mundësohet nga prania e FIN.

7. Serveri TCP do të pranojë FIN nga klienti dhe do të shfaq ACK-në e re.

8. Serveri TCP do të shtojë shtesën e tij në urdhrin e mbylljes.


I vogël. 10.11. zakritta z'єdnannya

Palët e ofenduara mund të fillojnë menjëherë të mbyllen. Në të njëjtën kohë, është shumë e rëndësishme të mbyllni datën duke dërguar një përditësim të lëkurës nga partnerët në lidhje me ACK.

10.6.1 Përfundimi i shpejtë

Lëkura nga ana mund të kërkojë një kthim të papritur nga afër. Është e lejuar, nëse suplementi është i plotë, nëse TCP zbulon një problem serioz, sepse nuk mund të lejohet me fuqinë e maceve. Përfundimi i shpejtë do të mundësohet nga partneri i një ose më shumë refuzimeve të cilat rivendosen (rrëshqitja), e cila do të shfaqet si një urdhër këndimi në kokën TCP.

10.7 Kontrolli i rrjedhës

Marrja e TCP është regjistruar për të marrë një rrjedhë detyrimesh dhe informacioni, në mënyrë që informacioni të mund të merret. Tse e mezhdennya vpliva në formatin TCP. I paraqitur më poshtë është një shpjegim i mekanizmit të dhënë - konceptual, dhe tregtarët mund ta zbatojnë atë në një mënyrë të thjeshtë në produktet e tyre.

Përpara një ore instalimi, lidhja e lëkurës nga partnerët do të shihet si hapësirë ​​për buferin e hyrjes për lidhjen dhe herë pas here në anën tjetër. Emërtoni madhësinë e tamponit që do të rrotullohet në numrin e madhësive maksimale të segmentit.

Ka një arsye për të arritur në buferin e hyrjes dhe për t'u ruajtur në atë të ri përpara se të anashkalohet në shtesën (e cila duket të jetë një port TCP). Në fig. 10.12 lexime, bufer hyrëse, 4 KByte.


I vogël. 10.12. Tampon i pranueshëm i hyrjes

Në botën e dhuratave shpresëdhënëse nuk ka hapësirë ​​për tampon për t'u mbajtur mend. Nëse dodatok-obedzhuvach merr të dhënat nga buferi, sapo të bëhet i disponueshëm momenti për donacione të reja, ai do të vijë.

10.7.1 E pranueshme

shume mire(Dritarja e marrjes) - nëse ka hapësirë ​​në buferin e hyrjes, mos i zëni ende të dhënat. Jepini buferit të hyrjes, për sa kohë që nuk është një donacion i plotë. Pse programi nuk i merr të dhënat përnjëherë?

Përshtatjet në zinxhirin ushqimor mund të plotësohen me skenarë të thjeshtë. Supozoni se klienti e ka dërguar skedarin në serverin FTP, i cili do të funksionojë në kompjuterin tashmë të kyçur me shumë përdorues. Programi FTP është përgjegjës për leximin e të dhënave nga buffer dhe shkrimin e tyre në disk. Nëse serveri po tregon funksionimin e hyrjes / daljes në disk, programi do të pastrojë përfundimin e këtyre operacioneve. Në fund të një ore, mund të filloni programin (për shembull, pas shpërndarjes) dhe sapo programi FTP të fillojë përsëri, data tjetër do të shtohet në buffer.

Zgjerohet shumë shpejt nga bajt i fundit i konfirmuar deri në fund të buferit. Në fig. 10.12 nga lista e të gjithë tamponëve të disponueshëm і, madje є, të paktën 4 KB. Nëse jeni duke kërkuar për KB-në e parë, do të ishte më e përshtatshme të shpejtoni deri në 3 KB (për thjeshtësi, do të kemi parasysh që segmenti i lëkurës është 1 KB në madhësi, nëse duam të ndryshojmë praktikisht sasinë e kërkesës për të dhëna shtesë). Nadkhodzhennya sulmon dy segmente me 1 Kbyte, deri në një normë pranimi të shpejtë deri në 1 Kbyte.

Lëkura e mesazheve do të marrë ACK për t'u hakmarrë mullirit të rrjedhshëm të dritares marrëse, në zgarë, e cila është e rregulluar sipas të dhënëve nga dzherel.

Madhësia e buferit të hyrjes do të vendoset përpara fillimit të ditës, nëse standardi TCP nuk shton zbatimin e kontrollit të buferit. Buferi i hyrjes mund të ndryshohet ose ndryshohet, kështu që ka një lidhje kthimi me lidhjen.

Kështu do të bëhet, si mund të zhvendoset segmenti përmbysës në dritaren kryesore, nëse gabimi është jashtë funksionit? Prisni të përfshiheni, se të gjitha realizimet janë duke marrë të dhënat, se ato duheshin në mënyrën më efikase dhe për miratim (ACK) vetëm për të gjithë bllokun e pandërprerë të segmenteve të dekalit. Është mënyra e duhur, kur të shihen homazhet, nëse nuk do të rregulloheshin, produktiviteti do të binte.

10.7.2 Dritarja e përditësimit

Sistemi që ka transmetuar të dhënat është fajtor për sigurimin e dy karakteristikave: të dhënat tashmë janë përditësuar dhe konfirmuar, si dhe madhësia aktuale e dritares marrëse. në mënyrë aktive hapësirë ​​për dorëzim(Send space) zgjerohet nga okteti i parë i pakonfirmuar në skajin e majtë të dritares së pranimit të transmetimit. pjesë vikna, yaka vikoristovuitsya për dërgimin Ju lutemi, dërgoni donacione shtesë për partnerin tuaj.

Numri rendor i kallirit dhe madhësia e kallirit të dritares priymalny vendoset para orës së themelimit të ditës. I vogël. 10.13 Arti i veçorive të veçanta ndaj mekanizmit të tejkalimit të haraçit.

1. Një vantazhov_dravnik rregullon robotin me një përditësim 4 KByte.

2. Vidravnik mbizotëroi 1 KB. Një kopje e danikëve ruhet deri në njohjen e konfirmimit (ACK), disa mund të dihet se janë ritransmetuar.

3. Marrë ACK për Kbajtin e parë dhe dërgohen 2 Kbajt të ardhshëm. Rezultati i leximeve në pjesën e tretë nga maja e Fig. 10.13. Zberigannya 2 Kbajt është i parëndësishëm.

4. Sigurohuni që të merrni ACK për të gjitha donacionet (në mënyrë që të heqim të gjitha erërat e këqija). ACK përditësoni madhësinë e dritares së përditësimit në 4 KB.

I vogël. 10.13. vіkno vіdravki

Rrëshqitni për t'i shtuar listës së veçorive të tsikavih:

■ Mbledhja nuk kontrollon ACK për segmentin kutan të të dhënave. Ne do të lejojmë mbizotërimin є të madhësisë së dritares maksimale (për shembull, i pandehuri është fajtor për mbizotërimin e vetëm segmenteve prej 4 deri në një bajt).

■ Është e pranueshme që mbledhësi të jetë mjaftueshëm i fortë për dekalimin në segmente të shkurtra (për shembull, 80 bajt secili). Në përgjithësi, të dhënat mund të riformatohen për transmetim më efektiv (për shembull, në një segment të vetëm).

10.8 TCP Tema

Në fig. 10.14 formati i segmentit të treguesve (titulli TCP dhe të dhënat). Tema eshte per tu riparuar nga identifikuesit e porteve te xherelit dhe përcaktimi. Hap në fushën e largët numër serik(Numri i sekuencës) Unë do të vendos pozicionin në fluksin dalës të parave, për segmentin e kredisë. fushë ACK(Підтвердження) Për t'u hakmarrë për transferimin e segmentit fyes, i cili është fajtor për paraqitjen në rrjedhën hyrëse të parave.


I vogël. 10.14. Segmenti TCP

Ka shumë luftëtarë:

fushë zëvendësimi i Danih(Data Offset) Zbuloni madhësinë e titullit TCP me fjalë 32-bit. Tema e TCP është fajtore për kordonin 32-bit.

10.8.1 Opsioni për madhësinë maksimale të segmentit

parametri "Madhësia maksimale e segmentit"(Madhësia maksimale e segmentit - MSS) për t'u përdorur për të reklamuar paranë më të mirë, e cila mund të pranohet dhe prishet nga sistemi. Sidoqoftë, emri shpesh është i pasaktë. Lidhu me TCP segment duken si një titull plus të dhëna. Megjithatë madhësia maksimale e segmentit filloni jak:

Datagramet maksimale të Rosemir, yaku mund të pranohen, - 40

Me fjalë të tjera, MSS përfaqëson më të mirën korisne navantazhennya në marrës me tituj shtesë TCP dhe IP, 20 bajt. Parametrat shtesë Yakshcho, їх në gjeneratën e ardhshme shkon në madhësinë zalnyy. Gjithashtu, disa nga homazhet, të cilat mund t'i dërgohen segmentit, jepen si:

Deklaratat e vlerës së MSS + 40 - (shuma e titujve TCP dhe IP)

Thirrni partnerët tuaj për të shkëmbyer vlerat MSS në mesazhet SYN cob kur marrin një mesazh. Edhe pse sistemi nuk shpall vlerën e madhësisë maksimale të segmentit, ai do të jetë fitimtar për një vlerë prej 536 bajt.

Madhësia e segmentit maksimal është e koduar me një preambulë 2 bajt dhe vlera 2 bajt, në mënyrë që vlera më e madhe të bëhet 2 16 -1 (65 535 bajt).

MSS imponon një rast të vështirë për tejkalimet në të dhënat TCP: çmimi nuk mund të përpunohet me vlera të mëdha. Megjithatë, drejtori i segmentit vikorist madhësi më të vogël, Lëkundjet për datën e regjistrimit fillojnë më shumë madhësi MTU sipas rrugës së kalimit.

10.8.2 Fushat e kokës Vikoristannya në furnizimin për të dhëna

Segmenti i parë, i cili mund të përdoret për shfaqjen e të dhënave, është vlera e SYN, e barabartë me 1, dhe ACK është 0. Pochatkovy SYN є єDinim segment, fusha ACK mund të jetë 0 me vlera 0. Sigurisht, ju duhet të ndihmoni përdoruesin të fajësojë këtë informacion për zbulimin e fuqisë hyrëse në një seancë TCP.

fushë numër serik merr hak numri serial i kallirit Fusha (numri i sekuencës fillestare). vіkna - kalli razmir të prioritetit më të lartë. Le të përdorim parametrin TCP, i cili është njëjës për momentin aktual, është madhësia maksimale e segmentit (nëse nuk ka indikacione, zgjidhet vlera për 536 bajt), që është transferimi i TCP. Çmimi i kredisë 32 bit dhe merrni praninë në furnizimin me energji elektrike për ditën në terren opsione(Opsioni). Dovzhina TCP header, për të hakmarrë vlerën e MSS, bëhet 24 bajt.

10.8.3 Fushat e kokës Vikoristannya në daljen e furnizimit me energji elektrike

Në rastin e një sinjali lejues në furnizimin me energji elektrike, shkelja e një pararendësi (SYN dhe ACK) është e barabartë me 1. Sistemi do të shfaqë numrin e numërimit të kallirit për llojin e fushës dhe madhësinë e kasës për rastin është në fushë Dritare... Madhësia maksimale e segmentit, i cili është një bazhak vikoristovuvati i fituar, të bëjë thirrje për të qenë në vidpovidi për furnizimin me energji elektrike opsione). Çmimi mund të shihet nga furnizimi me energji në anën, në mënyrë që të ketë dy madhësi të ndryshme.

Furnizimi me energji elektrike për dorëzimin e çdo kërkese shtesë për një kërkesë shtesë nga kthimi i garantuesit të zbritjes (RST) për vlerat 1.

10.8.4 Vibir i numrit serial të kallirit

Specifikimi i transmetimit TCP, përpara orës së instalimit numri serial i kallirit(Për vlerat aktuale të kohëmatësit të brendshëm 32-bit). Yak tse vikonutsya?

Natyrisht, kolapsi i sistemit do të bëhet i pashmangshëm. Lejohet që koristuvach të fitojë një ditë para kolapsit dhe të korrigjojë një numër të vogël haraçesh. Kur sistemi u përditësua, ai nuk mbante mend asgjë nga fakti që po grabiste para përplasjes, duke përfshirë lëshimin e të dhënave dhe numrave të portit. Koristuvach do të riinstalojë z'єdnannya. Numrat e porteve nuk dalin nga kalli, dhe veprimet e tyre, ju mund të vikoristovyuyutsya edhe me gjysmë-copa, duke qëndruar disa sekonda para shembjes.

Kjo është arsyeja pse pala tjetër në fund të ditës mund të mos dijë për ato që partneri kaloi përmes kolapsit të robotit të parë që më vonë u rinovua. Të gjitha proceset mund të çojnë në sëmundje serioze te robotët, veçanërisht nëse kaloni një orë të gjatë, nga kohët e vjetra nuk mund të kaloni nëpër gardh dhe mos hezitoni të shihni lajmet. Dridhja pas kohëmatësit të fillimit të ri ju lejon të aktivizoni disa probleme. Të dhënat e vjetra do të jenë numërimi i nënës, nën diapazonin e numrave rendorë të atij të riut. Hakerët, kur falsifikojnë adresën IP të dzherel, për hostin e ardhshëm do të jenë në gjendje të rivendosin aksesin në kompjuterë për një kërkesë shtesë në numrin serial të transferuar rastësisht cob. Funksioni kriptografik i hashimit në bazë të çelësave të brendshëm është mënyra më e përshtatshme për zgjedhjen e numrave të kallirit të vjedhur.

10.8.5 Pranuar në shtëpi Poliv

Kur titulli TCP përgatitet përpara se të dërgohet numri i sekuencës së oktetit të parë, numri i fundit(Numri i sekuencës).

Numri i oktetit fyes, ochikuvannyh nga partneri në bazë, futet në fushë miratuar(Numri i konfirmimit) kur biti ACK vendoset në 1. Fusha vikna(Dritarja) është caktuar për madhësinë në linjë të dritares maksimale. Të gjithë fushës për t'u hakmarrë numri i bajteve nga numri i konfirmimit, siç mund ta pranoni... Natyrisht, vlera lejohet pikërisht nga rrjedha e haraçit. Për vlerë shtesë, partneri do të prezantojë një kamp të vërtetë të pranuesit duke mbajtur seancën e shkëmbimit.

Sapo shtesa të porositet për funksionimin e shërbimit në TCP, atëherë oficeri PUSH do të vendoset në 1. TCP pranon përgjegjësinë për dërgimin e shpejtë të parave në shtesë, pasi vetëm dispeçeri dëshiron ta dërgojë.

Prapor URGENT (term) me vlerë 1 transmetim të afatit në mbipagesë të haraçit, dhe treguesi aktual është fajtor që i referohet oktetit të fundit të haraçit të afatit. Fitoret tipike të kushteve të tributeve të reja - përfaqësimi nga afati i sinjaleve për një thirrje ose ri-të drejtë.

Termat shpesh quhen poza informative e smogut(Jashtë brezit). Megjithatë, termi është i pasaktë. Kushtet e përdorimit janë anashkaluar në rrjedhën dinamike TCP, nëse doni të zbatoni disa mekanizma të veçantë për shtimin e informacionit shtesë në termat e duhur për të dhëna të reja, dhe më pas duhet të përktheni në bazën e të gjitha datave të reja, para së gjithash.

Raportoni RESET (rrëshqitje) vlerën 1, nëse duhet të përfundoni urgjencën. I njëjti oficer do të ngrihet në fillim të një segmenti që nuk është i lidhur me një nga lidhjet aktuale TCP.

Prapor FIN do të vendoset në 1 për më shumë informacion rreth datës së mbylljes.


10.8.6 Kontrolli Shuma

Shuma e kontrollit IP i caktohet vetëm kokës së IP-së dhe shuma e kontrollit TCP llogaritet për të gjithë segmentin, si dhe për pseudo kokën e hequr nga kreu i IP-së. Ora e llogaritjes së shumës së kontrollit TCP shfaqet pasi fusha e vlerës është 0. Në fig. 10.15 tregues të një pseudo-header, edhe më shumë gjasa për t'u shfaqur në shumën e kontrollit UDP.


I vogël. 10.15. Fusha pseudo-header përfshihet në kontrollin TCP

Dovzhin TCP llogaritet nga palosjet e xhinit të kokës TCP plus sasinë e haraçit. Çanta e kontrollit TCP є obov'yazkovo Jo si UDP. Shuma e kontrollit të segmentit duhet të llogaritet nga pranimi, dhe më pas shuma e kontrollit të titullit TCP duhet të kontrollohet në vend të kësaj. Nëse kuptimi nuk është të bjerë, segmenti të bjerë.

10.9 Aplikimi i segmentit TCP

I vogël. 10.16, protokolli i analizuesit robotik Njehësues Kompania Network General, është sekuenca e segmenteve TCP. Tre segmentet e para do të instalohen nga klienti në server Telnet... Segmenti i mbetur mbart 12 bajt të dhëna.


I vogël. 10.16. Shfaqja e TCP Header nga Sniffer Analyzer

analizues Njehësues përkthimi është më shumë se një duzinë viglyad. Sidoqoftë, kuptimi i pronësisë është yak shistnadtsyatkov. Prapor nga vlerat 12 është 010010. Shuma e kontrollit mund të gjendet në pamjen me gjashtëmbëdhjetë pika.

10.10 Përgatitja e një roboti për një seancë

10.10.1 Zonduvannya vіkna

Një kopje e shpejtë e skedarit mund të formatohet sa më shpejt që të jetë e mundur në 0 byte. Rezultati quhet zakrittyam vіkna(Mbyll dritaren). Nëse ka një vend për të përditësuar madhësinë e dritares kryesore, ACK do të jetë fitimtar. Megjithatë, në momentin që do të përfshihet, vepra e fajtorit do të jetë ochikuvati deri në atë pikë sa të jetë e pakonceptueshme.

Për të unifikuar një situatë të tillë, autori do të vendosë kohëmatësi i nisjes(Kohëmatësi i vazhdueshëm) kur prebagato është i mbyllur. Kohëmatësi është vendosur në kohën e skadimit të mbingarkesës së përsëritur. Pas përfundimit të robotit të kohëmatësit, partneri do të marrë një segment vіkna sonda(Sonda e dritares; në disa realizime përfshihen të dhëna). Hetimi i mesazhit të partnerit dërgoni përsëri ACK, që ka të bëjë me statusin aktual të dritares.

Sapo i mungon ende një madhësi zero, vlera e kohëmatësit do të përputhet. Procesi do të përsëritet derisa vlera e kohëmatësit të jetë nën maksimum prej 60 sekondash. TCP vazhdon të lejojë një sondë të re të lëkurës për 60 sekonda - derisa të shfaqet ekrani, deri në përfundimin e procesit të blerjes ose deri në përfundimin e skadimit të shtesës.

10.11 Përfundoi seanca

10.11.1 Kohëzgjatja

Roboti i partnerit në bazë të të dhënave mund të përfundojë me një përplasje ose nëse ka një problem me portën ose një telefonatë. Unë do të jem në gjendje të ri-zbatoj të dhënat në TCP, për shkak të mekanizmave.

Pasi të ketë arritur vlerën e parë të pragut për ritransmetim (transmetim), TCP do të dërgojë IP në nevojën për të rikonfiguruar mesazhet e ruterit dhe menjëherë të informojë për problemin. TCP do të vazhdojë të mbizotërojë haraçin, për sa kohë që nuk arrin një vlerë tjetër kufitare, dhe vetëm kur të dërgohet.

Mund të duket sikur nuk do të fillojë, mund të mësoni për raportin e ICMP-së për mungesën e aksesit të pikës së origjinës për ndonjë arsye. Për ata që zbatojnë TCP, vazhdoni të përpiqeni të aksesoni pikën deri në fund të intervalit të skadimit (nëse problemi mund të zgjidhet). Dal me informacione shtesë për mungesën e lidhjes së pikës së rëndësisë.

Për më tepër, mund të caktoni një afat kohor për dorëzimin e parave dhe të kryeni një funksionim me energji elektrike në fund të intervalit. Zazvychay do të kryhet për të sjellë në fund të ditës.

10.11.2 Pidtrimka z'єdnannya

Nëse bëhet një punë e papërfunduar në orën e fundit për mbizotërim, atëherë do të heq statusin e joaktivit. Nga një orë deri në periudhën e pasivitetit, mund të shihet shembja e gardhit ose linjat fizike janë errësuar. Sapo të bëhet fantazia, do të bëhem patrone, partnerët do të vazhdojnë shkëmbimin e të dhënave, mos e mbingarkoni seancën me thirrjen. Kjo strategji iu dha krerëve të Ministrisë së Mbrojtjes.

Megjithatë, be-yake z'єdnannya - aktive ose joaktive - duke huazuar shumë memorie kompjuterike. Administratorët e Deyakim duhet të kthejnë burimet në sistem. Për këtë, zbatimi i TCP është shumë, ju lutemi, shikoni rreth підтромці з'єднання(Keep-live), testimi i gjysmëkornizave joaktive. Kjo do t'i dërgohet në mënyrë periodike partnerit për rirregullimin e pozicionit të tij në rrjetë. Në rast defekti, vjen një ACK. Vikoristannya është e vetëdijshme që frekuentimi nuk është obovyazkovim. Si në sistem ekziston një mundësi e tillë që ju mund të skasuvati me mace të fuqishme. periudha e transferimit për zëvendësimet për një kohë-out për një kohë-out, është në rregull ta vendosësh atë si dy vjet të tërë!

Mendoni se mund ta vendosni kohëmatësin e energjisë sipas rregullit tuaj dhe nëse doni të merrni vendimin për përfundimin e ditës.

10.12 produktivitetit

Sa efektiv është një robot TCP? Në produktivitetin e burimeve, janë injektuar shumë faktorë, kryesorët janë memoria dhe qarkullimi i smogut (div. Fig. 10.17).


I vogël. 10.17. Faktorët e produktivitetit të TCP

Smuga kalon dhe mbyllet në gardhin fizik të vikaristit, por më tepër në kufirin e xhiros së ndërtesës. Është e ndyrë të kapërcesh haraçin për të bërë një betim të madh të datagrameve të pambikëqyrur, por do të përsëris tejfuqishmëria, si trashëgimia, të zvogëlojë efikasitetin e xhiros së smogut.

Ana e djathtë është fajtore për sigurimin e hapësirës së mjaftueshme të tamponit, e cila i lejon mbajtësit të së drejtës së autorit të kapërcejë haraçin pa pushime në robot. Është veçanërisht e rëndësishme për një vepër të zbukuruar me vëmendje të madhe, në të cilën si nderimi ashtu edhe refuzimi i ACK-së (dhe gjithashtu me madhësinë e ngushtë të dritares) kalojnë një interval të madh prej një ore. Për të akomoduar një fluks të fortë parash, pala pranuese është fajtore e nënës në një madhësi jo më të vogël se sasia minimale e smogut të depërtueshëm për t'u mbuluar.

Për shembull, nëse mund të marrë pak të dhëna nga 10,000 bajt / s, dhe duhen 2 sekonda për të kthyer ACK, atëherë nga ana tjetër do të ishte e nevojshme të siguroheni që të mos ishte më pak se 20,000 bajt në madhësi. Një tampon i mirë prej 10,000 bajte do të përgjysmojë xhiron e ndërtesës.

Një faktor tjetër i rëndësishëm për produktivitetin është reagimi i hostit ndaj podkasteve me prioritet të lartë dhe shidko viconuvati. kontekstualizimi, Për të përfunduar një operacion dhe për t'i transferuar njëri-tjetrin. Pritësi mund të krijojë në mënyrë interaktive trafikun lokal të pafuqishëm, proceset e sfondit të paketave dhe dhjetëra komuna njëorëshe. Përzierja kontekstuale lejon personelin e shërbimit të shërbejë të gjitha operacionet që i shtohen sistemit. Zbatimi, në të cilin u krye integrimi i TCP / IP me thelbin e sistemit operativ, mund të zvogëlojë mjaft aftësinë për të personalizuar ndryshimin kontekstual.

Burimet e procesorit qendror të kompjuterit kërkohen për operacionet nga përpunimi i titujve TCP. Duke qenë se procesori nuk mund të llogarisë shpejt shumat e kontrollit, ai nuk mund të zvogëlojë performancën deri në atë masë sa të mbizotërojë të dhënat.

Për më tepër, zhvilluesit e lojës kanë respekt për konfigurimin e thjeshtuar të parametrave TCP dhe administratori i parregullt është në gjendje ta konfigurojë atë me ndihmën e vimogues të tij lokale. Për shembull, është e mundur të rregullohet madhësia e tamponit për rrjedhën e smogut dhe shkurtimin e rrjetës dhe për të rritur produktivitetin. Është për të ardhur keq që zbatimi nuk vjen me shumë respektin e duhur dhe programimin e vështirë të parametrave komunalë.

Pa dyshim, është absolutisht e përsosur: • Burime të mjaftueshme dhe përzierje kontekstuale më shumë, asnjë kauboj nuk përdor revolverët e tyre. Sa i mirë do të jetë produktiviteti?

Mos e prisni. Rëndësia dhe cilësia e shpërndarjes së sigurisë së softuerit TCP. Gjatë viteve të fundit në implementimet e fundit TCP, ka pasur shumë diagnoza dhe shumë probleme produktiviteti. Ju mund të vvvazhy, nëse softueri më i bukur do të sigurohet, në përputhje me dokumentin RFC +1122, në këtë rast varet nga komuna e hostëve në internet.

Jo më pak e rëndësishme dhe vendosjen e algoritmeve për Jacobson, Kern dhe Partridge (numri i algoritmeve do të shfaqet më poshtë).

Zhvilluesit e sigurisë së softuerit mund të modifikojnë suttuvi vigodi, duke përdorur programet, në mënyrë që të mos kenë nevojë të mposhtin haraçet e vogla dhe të zgjojnë kohëmatësit për zhurmën e burimeve të rrethimit, por jo në një moment.

10.13 Algoritmet e rregullimit të produktivitetit

Duke ditur se si të marrim një pjesë të palosshme të TCP, ne mund të kuptojmë mekanizmat për rritjen e produktivitetit dhe zgjidhjen e problemeve të reduktimit të xhiros së ndërtimit. Në të njëjtën kohë, diskutohen problemet e mëposhtme:

fillimi i përgjithshëm(Fillim i ngadalshëm) Ruajtja e një pjese të madhe të trafikut të vijës së poshtme për një seancë të re, e cila mund të çojë në humbje joproduktive.

■ Lіkuvannya vіd sindroma e "dritares së palodhur" Sindroma e dritares budallaqe

tejkalim ACK(ACK me vonesë) Do të zvogëloj dërrmuesen për shpejtësinë shtesë, si dhe numrin e tejkalimeve të pavarura.

Ri-stërvitni numërimin e skadencës(Kohëzgjatja e llogaritjes së ritransmetimit) për t'u bazuar në një seancë në kohë reale, e cila ndryshoi shumë tejkalime të përsëritura të panevojshme, por fare nuk pati pritje të shkëlqyera për shkëmbime vërtet të nevojshme të të dhënave.

■ Galmuvannya anashkaluar TCP kur ri-ngatërruar në rrjet, duke i lejuar ruterët të kthehen në modalitetin e kallirit dhe të fitojnë spirale për të siguruar burimet e rrjetit për të gjitha seancat.

■ Dorëzimi dublikatë ACK(Dublikoni ACK) gjatë refuzimit të segmentit, qëndrimi i konfirmimit përfundimtar do t'i lejojë partnerët e Viconati të përsërisin përpjekjen përpara se të caktohet koha e pushimit.

10.13.1 Fillimi kryesor

Sapo shtëpia të jetë në shtëpi, ndizni të gjithë aksesorët elektrikë menjëherë, në mënyrë që gardhja elektrike të rilidhet. Në skajet e kompjuterit fillimi i përgjithshëm mos na lejoni t'i djegim iriqët.

Tani z'єdnannya, mittєvo nisє kapërcimi i betimit të madh të haraçit në gardhin tashmë dhe kaq të mbushur, mund të çojë në probleme. Ideja e fillimit të fushës është në mënyrën e re të siguruar të një nisjeje të suksesshme me ndryshimet e mëdha në shpejtësinë e tejkalimit të atyre të dhëna, sipas opsioneve aktuale për rrjetën. Vidpravnik është i rrethuar nga madhësia e pikës së favorshme, dhe jo ajo e madhe përtej madhësisë së marrësit.

dritare navantazhvalny(Dritarja e mbingarkesës) ndryshoni madhësinë në 1 segment. Për segmentin e lëkurës, ne do të heqim me sukses ACK, madhësia e zgavrës së hundës do të rritet me 1 segment, megjithëse do të jetë më e vogël, më e ulëta do të jetë më e ulët. Edhe pse korniza nuk është mbështjellë, ajo nuk mbështillet në mënyrë hap pas hapi deri në madhësinë e skajit të djathtë. Në kushte normale, madhësia e tepërt e madhësisë së vikonit do të jetë e mbipopulluar.

Natyrisht, fillimi i përgjithshëm nuk është i njëjtë, por ai i zakonshëm. Për ACK-në e parë, madhësia e opsionit për portën e derës është 2 segmente, dhe për zgjedhjen e suksesshme të ACK për dy segmentet, madhësia mund të rritet në 8 segmente. Me fjalë të tjera, madhësia e dritares rritet në mënyrë eksponenciale.

Është e lejuar që situata e pushimit të zëvendësohet me një refuzim ACK. Sjellja e dritares detare në një mënyrë të tillë duhet parë më poshtë.

10.13.2 Sindroma e "dritares së palodhur"

Zbatimet e para TCP / IP hasën fenomenin sindroma e "dritares së palodhur"(Silly Window Syndrome - SWS), i cili manifestohet shpesh. Për një mënyrë më të zgjuar, për të parë skenarët fyes, për të krijuar trashëgimi të paarsyeshme, mirë me shumë motive:

1. Suplementi transmetues shvidko vidsila dan.

2. Marrja e të dhënave shtesë lexon nga buferi i hyrjes me 1 bajt të dhënash (në përgjithësi).

3. Buferi i hyrjes për lexim të shpejtë memorizohet.

4. Pranimi i të dhënave shtesë lexon 1 bajt dhe TCP përcjell ACK, që do të thotë "Unë mendoj se është një ide e mirë për 1 bajt të dhënash".

5. Komplementi transmetues për dërgimin e një pakete TCP për 1 bajt.

6. TCP e pranueshme detyron ACK, që do të thotë "Dyakuyu. Unë e kam refuzuar paketën dhe nuk mendoj më për fat të keq."

7. Pranimi i suplementit përsëri lexon 1 bajt dhe dërgon ACK, dhe i gjithë procesi përsëritet.

Mbi të gjitha, kontrolli i nevojshëm zbatohet për shpresën e të dhënave dhe gradualisht informacioni hiqet nga informacioni në skajin e majtë të dritares, kështu që nuk kam absolutisht nevojë për operacionin, pasi do të gjenerojë trafik shtesë në rrjetë.

Situatat reale, natyrisht, nuk janë ekstreme. Një gjurmues i shpejtë dhe një fitues i kohës së madhe do të shkëmbehen me cicërima të vogla (deri në madhësinë maksimale të segmentit) dhe do të ndryshojnë nga madhësia e shumës maksimale të parave. Në fig. 10.18 tregohet si dëshmitar i shfaqjes së sindromës së "dritares së palodhur".


I vogël. 10.18. Bufer për një dritare maksimale nga pak më shumë hapësirë ​​në një zonë të gjerë

Virishiti problemi është i sikletshëm. Është sa më shpejt të jetë e mundur për të shpejtuar për një darkë të re, nëse keni më pak para, TCP do të fillojë të mashtrojë personin e duhur. Në këtë situatë, TCP nuk është fajtor për thirrjen e adresuesit për Dodatkove ka hapësirë ​​në dritare, nëse përdoret për të lexuar të dhënat nga buferi në pjesë të vogla. Për të zëvendësuar të gjitha stolitë e nevojshme, burimet mbahen të fshehta nga furnizuesi deri në kohë të qeta, për sa kohë që nuk ka sasi të mjaftueshme. Rekomandohet madhësia në një segment, përveç vipadks-ve, nëse i gjithë buferi i hyrjes merret nga një segment i vetëm (në rastin e fundit, zgjidhet madhësia, gjysma e buferit). Madhësia Tsilovy, për të cilën duhet fajësuar TCP, mund ta shihni:

minimale (1/2 e buferit të hyrjes, madhësia maksimale e segmentit)

TCP do të fillojë të mashtrojë, nëse madhësia është më e vogël se madhësia, dhe e vërteta është, nëse madhësia nuk është më e vogël, vlera nuk fitohet për formulën. Me sa duket, për mbajtësin e të drejtave të autorit nuk ka njakoi shkodi, disa prej tyre janë aplikuar, të gjitha nuk ka mundur të mbulojë një pjesë të madhe të homazheve që kanë qenë shumë të mira.

Zgjidhja e propozuar është e lehtë për t'u përkthyer në një pamje të vizualizuar të ACK-së me rënie për byte të lëkurës. E njëjta mënyrë është e përshtatshme për vjeshtën, nëse buferi i hyrjes mund të marrë disa segmente (që shpesh përdoret në praktikë). Një udhëzues i shpejtë për të ruajtur buferin e hyrjes, edhe nëse pranohet, nuk është një ide e mirë për të ndryshuar informacionin dhe për të mos shfaqur një burim, për sa kohë që madhësia e tij nuk varet nga i gjithë segmenti.

10.13.3 Algoritmi i Nagle

Kontribuesi është fajtor menjëherë për shkak të mbizotërimit fitimtar të segmenteve edhe të shkurtra, të dhënat akumulyuchi përpara dërgimit. Algoritmi Nagle zbaton një ide edhe më të thjeshtë, e cila lejon që reduktimi i numrave të anashkalohet nga gjatësia e të dhënave të shkurtra.

Algoritmi rekomandon që të merret parasysh mbishkrimi i tributeve (і їх vishtovhuvannya) për një orë kontrolli të ACK-së nga tributet e transmetuara më parë. Akumulimi i të dhënave anulohet nëse ACK refuzohet në një kohë më të hershme, dërgohet nga porti i informacionit ose dërgohet për paraqitje të të dhënave në një segment të veçantë, ose pasi të ketë përfunduar një afat kohor. I gjithë algoritmi nuk ndjek procedurën e plotësimit të të dhënave në kohë reale, pasi ishte fajtor për dërgimin e të dhënave te personi që ishte përgjegjës për to.

10.13.4 Tejkalimi i ACK

Një mekanizëm tjetër për rritjen e produktivitetit është mënyra e kapjes së ACK. Numri i shpejtë ACK do të reduktojë qarkullimin e smogut, i cili mund të përdoret për të mposhtur trafikun. Nëse partneri TCP është në gjendje të anashkalojë dërgimin ACK, atëherë:

■ Mund të vërtetohet duke pranuar segmente dekale me një ACK.

■ Ka marrë të dhëna shtesë në formën e një tribute në mes të intervalit të skadimit, në mënyrë që ACK të mund të përdorë kokën aktuale dhe nuk do të ketë nevojë të formulojë afatin tjetër.

Në rastin e një mbikëqyrjeje vyklyuchennya kur rrjedha e segmenteve të tepërta është e mbizotëruar (për shembull, gjatë shkëmbimit të skedarëve), ACK është fajtor për tejkalim, të paktën për segmentin tjetër të lëkurës.

Bagato realizatsii vikoristovuyut një timeout prej 200 ms. Unë nuk do ta zvogëloj shpejtësinë e shkëmbimit me ndihmën e ACK. Nëse një segment i shkurtër është i përshtatshëm në buferin e hyrjes, do të jetë e panevojshme të shtoni një mision të madh për të refuzuar tributet e reja dhe marrësi mund të vazhdojë të mbizotërojë (përveç kësaj, nëse e kapërceni përsëri, kërkoni të tejkaloni më shumë). Sa herë që shfaqet një segment, është e nevojshme që në të njëjtin sekondë të lexohet ACK në një rast të ri.

10.13.5 Kohëzgjatja e rishikimit

Kur të dërgohet segmenti TCP, unë do të vendos kohëmatësin dhe do të paraqes ACK-në e saktë. Nëse ACK nuk refuzohet pas një periudhe kohe, TCP do të riprodhojë segmentin (ritransmetim). Të mbrosh yakim është fajtor për një periudhë të caktuar kohore?

Për sa kohë që është i shkurtër, teksti me të drejtë autori duhet të kujtojë mbishkrimin e segmenteve të panevojshme, pasi kopjon të njëjtin informacion të dërguar. Por një kohë e shkëlqyer do të mbingarkohet nga korrigjimet e shpejta të segmenteve të rregulluara në mënyrë efikase kur segmentet mbizotërohen për të reduktuar qarkullimin e ndërtesës.

Përfundimi i saktë i kohës vibrati? Rëndësia, e cila është më e përshtatshme për gardhe lokale me cilësi të lartë, jo për një kohë të gjatë pa asnjë problem. Kjo do të thotë se parimi "një kuptim për çdo mendje" nuk është qartësisht i vlefshëm. Për më tepër, është e mundur të ndryshohet mendësia për një informacion të caktuar konkret dhe vëmendja mund të reduktohet ose zvogëlohet.

Algoritmet Jacobson, Kern dhe Partridge (të përshkruara në artikuj , Van Jacobson, i Përmirësimi i vlerësimeve të kohës së udhëtimit vajtje-ardhje në protokollet e besueshme të transportit, Karn dhe Partridge) lejojnë përshtatjet TCP deri në pikën e ndryshimit të mendjes së ulluqeve. Këto algoritme rekomandohen përpara regjistrimit në zbatime të reja. Mund ta shohim pak më poshtë.

Mund të sigurohet podkazuє i shëndetshëm, me bazën më të mirë për vlerësimin e orës së saktë të pushimit për një kohë të caktuar cikël orësh(Koha vajtje-ardhje) si rezultat i konfirmimit të detyrimeve dhe konfirmimit të konfirmimit të priyom.

Një zgjidhje e mirë për vlerat fyese mund të bëhet në bazë të pamjeve statistikore elementare (div. Fig. 10.19), në mënyrë që të mund të ndihmoni kohëzgjatjen e orës virahuvati. Sidoqoftë, nuk është e nevojshme të kënaqeni me vlerën mesatare, disa më shumë se gjysma e vlerësimeve do të jenë më të mëdha, vlera mesatare është më e ulët. Duke parë disa pamje, mund të bëni vlerësime më të sakta, në mënyrë që të arrini rritje normale dhe të zvogëloni orën e fundit të pastrimit të një mbingarkesë të përsëritur.


I vogël. 10.19. Vlera e Rospodilit për cikël orë

Nuk ka nevojë për një llogaritje të madhe për refuzimin e vlerësimeve formale matematikore të rezultateve. Ju mund të bëni një vlerësim të përafërt në bazë të vlerës absolute të diferencës midis vlerave të mbetura dhe vlerësimit mesatar statistikor:

Vidhilennya e fundit = | Cikli i fundit - Vlera mesatare |

Për të llogaritur vlerën e saktë të kohëzgjatjes, kërkohet një faktor - një cikël orësh nëpër mendjet aktuale të zbukuruara. Ata që janë rritur në rrjetë në mbetjet e ligësisë janë më të rëndësishëm se ata që u ndërtuan një vit më parë.

Lejohet të llogaritet vlera mesatare e ciklit për një seancë të dytë pas një ore. Mos kini parasysh se stoku i stokut të Bullit është pak i lidhur, pasi kemi vendosur 1000 vlera të vogla, protesta do të rrisë trafikun në njëqind orë të tjera mbulim.

Për shembull, nëse 1000 vlera japin një vlerë mesatare statistikore prej 170 njësi, nëse do të maten vetëm disa, 50 vlera nga një mesatare prej 282, atëherë mesatarja aktuale do të jetë:

170 × 1000/1050 + 282 × 50/1050 = 175

Sa më e madhe të jetë vlera e arsyeshme cikli i zbutur i orës(Koha e qetë vajtje-ardhje - SRTT)

SRTT e re = (1 - α) × (SRTT më e vjetër) + α × Vlera e ciklit të ndalimit

Vlera e α gjendet midis 0 dhe 1. zbіlshennya a për të prodhuar deri në një rrjedhë të madhe të orës së rrjedhës në një cikël me një vlerë mesatare të zbutur. Lëkundjet e kompjuterëve mund të shpërndahen shpejt në hapat e numrit 2, duke shkatërruar dy numra në të djathtë, për α zgjidhet vlera (1/2) n (thirrje 1/8), kështu:

SRTT i ri = 7/8 × SRTT më i vjetër + 1/8 × Cikli i ndalimit për orë

Tabela 10.2 tregon se si formula për SRTT do të rregullohet në vlerën e saktë të SRTT në 230 njësi, nëse ndryshimi në kokat e pykës arrihet deri në orën e fundit të ciklit (për kullimin, por nuk ka kohë ). Vlera në të qindtat është 3, që është vlera e një të qindtës për rreshtin përpara të tabelës (që të jetë SRTT e vjetër).


Tabela 10.2 Llogaritja e ciklit të orës së hekurosur

SRTT më i vjetër Vetëndalimi RTT (7/8) × (SRTT më i vjetër) + (1/8) × (RTT)
230.00 294 238.00
238.00 264 241.25
241.25 340 253.59
253.59 246 252.64
252.64 201 246.19
246.19 340 257.92
257.92 272 259.68
259.68 311 266.10
266.10 282 268.09
268.09 246 265.33
265.33 304 270.16
270.16 308 274.89
274.89 230 269.28
269.28 328 276.62
276.62 266 275.29
275.29 257 273.00
273.00 305 277.00

Tani kemi një vakt në lidhje me vlerën e dridhjeve për kohëzgjatjen e mbingarkesës së përsëritur. Analiza e vlerave për orë të ciklit tregon saktësinë e vizualizimit të vlerave të vlerës mesatare të rrjedhës. MAK SENS ngriti një kordon për madhësinë e vidhilen (devіatsіy). Vlerat e mira për kohën e riprodhimit (në standardet RFC kjo vlerë quhet Ritransmetimi TimeOut - RTO), kështu që formula e mëposhtme është për ekran të zbutur (SDEV):

T = Kohëzgjatja e fuqisë së përsëritur = SRTT + 2 × SDEV

T = SRTT + 4 × SDEV

Për llogaritjen e SDEV, lista e vlerave është vlera absolute e daljes së rrjedhës:

DEV = | Ndaloni me një cikël orë - SRTT më i vjetër |

Le të përdorim formulën vikorist për zbutjen, për vlerën e mbetur:

SDEV i ri = 3/4 × SDEV më i vjetër + 1/4 × DEV

Të mbytesh nga një vakt - si të marrësh vlerën e kallirit? rekomandoj:

Kohëzgjatja e kallirit = 3 s

SRTT kalli = 0

Kalli SDEV = 1,5 s

Van Jacobson duke përdorur një algoritëm inteligjent, i cili është edhe më efektiv në llogaritjen e afatit për tejkalim të përsëritur.

10.13.6 Zbatimi i statistikave

Sa i suksesshëm do të jetë përllogaritja e time-out? Me zbatimin e vlerës së refuzuar, u promovua rritja e produktivitetit. Butt mund të shërbejë të dhënat statistikore të komandës netstat, Otrimani mbi sistemin tigër- serverët në internet, para të cilëve hostet pa host mund të vendosen nga Interneti.


1510769 pako (314955304 byte) të marra në sekuencë

sistemi tigër Booleans ritransmetuan më pak se 2.5% të segmenteve të dhëna TCP. Për milionin e dytë, segmenti duhet të përfshihet në haraç (i vetmi me raporte të pastra ACK), boule të dyfishta vetëm 0.6%. Në të njëjtën kohë, është pothuajse e barabartë për segmentet hyrëse. Në një renditje të tillë, trafiku i rënduar i ringarkimit të magazinës është afër 0.6% e trafikut të jashtëm.

10.13.7 Pavlefshmëria për një përditësim të përsëritur

Në formulat e drejtuara, vlera e orës vendoset në ciklin midis intervalit midis segmentit të përcjelljes dhe përgjigjes negative. Megjithatë, pa dyshim, pas zgjatjes së periudhës së pushimit, konfirmimi nuk do të ndihet dhe ai do të rifutet.

Algoritmi i transferimit të Kernit nuk e kalon fare ciklin. Zbutni vazhdimisht vlerën e orës në ciklin duke hekurosur ruaj vlerën e tyre, përveç rastit kur konfirmimi për tejkalimin e një segmenti të caktuar nuk pranohet pa rishikimin e tij të përsëritur. Në të njëjtën kohë, llogaritja në bazë të vlerave të kursimit dhe vlerave të reja do të rinovohet.

10.13.8 Duke shkuar pa pushim

Çfarë do të bëhet përpara se të merret vendimi? Duke përsëritur sjelljen dërrmuese të TCP-së, ai po ndryshon rrënjësisht në pjesën kryesore përmes humbjes së të dhënave nga mbimbështjellja në fenestrim. Nga e njëjta, unë do të reagoj për përditësimin e përsëritur të detyrimeve:

■ Reduktimi i shpejtësisë së zgjatjes së tepërt të përsëritur

■ Luftimi me skajet e rikthyer për trafik shtesë të shpejtë në dalje

10.13.9 Galmuvannya eksponenciale

Shtrirja e përsëritur e Pislya do të përputhet me intervalin e afatit. Megjithatë, çfarë ndodh kur rivendosni kohëmatësin? Dani do të korrigjohet sërish dhe periudha e tentativave të përsëritura do ta dijë sërish. Procesi quhet varje eksponenciale(Zmbrapsja eksponenciale).

Sapo të shfaqet pakrahasueshmëria e skajit, periudha e pushimit do të jetë podvoyuvatsya derisa të arrihet vlera maksimale e vendosur (thirrje - 1 min). Mund të ketë vetëm një segment për skadimin e kohës. Kohëzgjatja jepet kur vlera ndryshohet përpara vlerës së vendosur për numrin e tributeve të anashkaluara pa refuzuar ACK.

10.13.10 Zvogëlimi i ri-ngatërrimit për rakhunok të reduktimit të mbizotërimit sipas shumës së parave

Një shkëmbim i shpejtë parash, është e lehtë ta kapërcesh atë, por nuk është e lehtë ta shohësh atë me mekanikë. Vono filloi pratsyuvati, si dhe hamendësoi fillimin e përgjithshëm. Mjerisht, ka disa shanse që të ketë një kufi për trafik të barabartë, gjë që mund të çojë në probleme në një moment me kalldrëm, nëse është vërtet e mundur të ndryshohet shpejtësia e shkëmbimit të vëllimit të kutisë së re postare një segment në të njëjtën kohë. Është e nevojshme të vendosni një vlerë kordoni për përditësim të vërtetë të shpejtë. Pragu i rrezikut është:

Kordoni - 1/2 minimale

Sapo vlera do të jetë më shumë se dy segmente, madhësia do të jetë më shumë se dy segmente, її vikoristovuyat jak kordon. Madhësia Inakshe e kordonit do të vendoset në dy segmente. Një algoritëm i ri për përditësimin e wimag:

■ Fusni madhësinë e dritares së lundrimit në një segment.

■ Për një ACK të lëkurës së lëkurës, madhësia e dritares detare është një segment, derisa të arrihet kufiri (madje edhe mekanizmi i atij fillestar).

■ Për lëkurën, ne do të heqim ACK tek pecetat e sapolindura për të shtuar një vlerë më të ulët, pasi vibrohet në bazë të shpejtësisë së përmirësimit një segment në orë për një cikël orë (rritja llogaritet si MSS / N, de N - pyka e segmentit detar).

Mund të lehtësohet një skenar për një version ideal për t'i treguar robotit mekanizmin e përditësimit. Pranohet se nuk është shumë e rëndësishme për partnerin (dhe navantazhvalny vіkno aktuale) derisa koha e ndërprerjes të ndodhë në 8 segmente, dhe intervali të caktohet në 4 segmente. Sapo të pranohet, aplikohet mittєvo duke lexuar të dhënat nga buferi, madhësia e dritares marrëse do të mbivendoset me 8 segmente të barabarta.

■ Dërgohet 1 segment (dritarja navantuvalny = 1 segment).

■ Otrimano ACK - Dërgohen 2 segmente.

■ Otrimano ACK për 2 segmente - Mbështeten 4 segmente (arritni kufirin).

■ Otrimano ACK për 4 segmente. Ka 5 segmente.

■ Otrimano ACK për 5 segmente. Mbështeten 6 segmente.

■ Otrimano ACK për 6 segmente. Ka 7 segmente.

■ Otrimano ACK për 7 segmente. Ka 8 segmente për t'u mbështetur (ka një dritare më efektive pas madhësisë së asaj të re).

Oskіlki pіd orë tejkalimesh të përsëritura sipas afatit kohor kërkohet për të marrë të gjitha korrigjimet, procesi do të arrijë opsionin e ri në madhësinë e dritares përfundimtare. Qasjet që do të shfaqen janë paraqitur në Fig. 10.20. Madhësia e dritares rritet në mënyrë eksponenciale, para orës së fillimit, dhe kur të arrijë fillimin, është e nevojshme të ndiqni ligjin linear.


I vogël. 10.20. Ri-ngatërrimi dërrmues

10.13.11 ACK dublikatë

Ata që bëjnë vetë nuk e kanë mundësinë të jenë në gjendje ta bëjnë këtë - kështu quhet shvidka e rifuqishme Ritransmetim i shpejtë Ideja kryesore është e lidhur me rishikimet e ACK-së së mëparshme, e cila do të zbatohet për përparimin në haraçin e marrë.

Segmenti Beruchi, i cili nuk është në rregull, merr një ACK prapa, i cili do të vendoset në bajtin e parë duke marrë pjesë Danih (div. fig. 10.21).


I vogël. 10.21. i quajtur ACK

Redaktorët nuk shfaqin përsëritje mitt'voi të të dhënave, çipat IP mund, në modalitetin normal, t'i dorëzojnë të dhënat në të dhënat e marra pa konfirmim. Nëse merret një ACK i rremë për dublimin e tributeve (për shembull, tre), atëherë segmenti i fundit do të ridrejtohet pa kontrolluar kohëzgjatjen.

Me sa duket, dublimi i lëkurës ACK është injektuar në refuzimin e segmentit të haraçit. Numri i dublimit të ACK-ve mundëson shikimin, por gardhi është mjaft i mirë për të dhënë një sasi të mjaftueshme parash, por nuk shtohet shumë. Si pjesë e algoritmit out-of-the-box, ndryshimi i madhësisë së faturës nuk është shumë i shpejtë në rast të rritjes reale të sasisë së trafikut me këmbë. Në këtë rast, procesi i një ndryshimi rrënjësor në madhësinë e robotit të ri nuk ngec.

Në bazë të standardit Kërkesat e hostit(Vimogi për të presë) TCP është fajtor për vikonuvati të njëjtin fillim të përgjithshëm, siç përshkruhet vishche, kur mbyten dzherel (shuarja e burimit). Megjithatë, për faktin se ai nuk është i drejtpërdrejtë, por efektiv, çmimi i trafikut mund të jetë ulur deri diku. Specifikimi në linjë Kërkesat e ruterit(Vimogi te ruterat) vkazuє, scho routers jo fajtor posilati për mbytjen e xherelës.

10.13.13 Statistikat e TCP

Nareshty, le të shohim statistikat e ekipit netstat, Si të punoni në robotë me përshkrimin e mekanizmave.

Segmentet emërtohen në paketa.
879137 paketa të dhënash (226966295 byte)
21815 paketa të dhënash (8100927 byte) të ritransmetuara
Rifuqishëm.
132957 pako vetëm për pranim (104216 me vonesë)
Numër dukshëm i madh

i rindërtuar ACK.

Sonda wіkrittya wіkna

madhësi zero.

Koha e SYN dhe FIN.
762469 akse (për 226904227 bajt)
Sinjalizoni për paketat, pasi ato mbërritën

qëndrimi i të fundit.

1510769 pako (314955304 byte)
9006 paketa plotësisht të kopjuara (867042 byte)
Rezultati i afatit kur është real

dorëzimi i haraçit.

74 pako me disa dup. të dhëna (12193 bajt të mashtruar)
Për efikasitet më të madh

Deyakі danі në ripaketim të përsëritur vіdpravtsі buli për përfshirjen e bajteve shtesë.

13452 pako jashtë rendit (2515087 byte)
530 pako (8551 byte) të dhënash pas dritares
Mozhlivo, tsi dan buli

i përfshirë me sondë.

402 pako të marra pas mbylljes
Çmimi i përsëritjes së ardhshme

përditësimet.

108 u hodhën për kontrolle të këqija
Pagesa e pavlefshme TCP.
0 është hedhur poshtë për fushat e zhvendosjes së gabuar të kokës
7 u hodh për shkak se paketa është shumë e shkurtër
14677 lidhje të vendosura (përfshirë pranimet)
18929 lidhje të mbyllura (përfshirë 643 pika)
4100 lidhje embrionale ranë
572187 segmente të përditësuara rtt (nga 587397 përpjekje)
Jo shumë larg, provoni gjarpërinjtë

cikli i orës, fragmentet ACK nuk erdhën përpara përfundimit të afatit,

26 lidhje u ndërprenë nga koha e kthimit
Hapi jo larg provoni

Përditësime të përsëritura, të cilat do t'i porosis në kurriz të ditës.

Kohëzgjatja me sondë

zero fitore.

Kohëzgjatja me përmbysje

jo të ndezshme z'єdnannya.

472 lidhje të rënë nga keepalive

10.14 Dukshmëria për përfaqësuesit e shitjeve

Standardi threading TCP VIMAG, për zbatimin e zbatimit u ndoq me vendosmëri nga procedurat e fillimit në inicimin e të dhënave dhe fitues u përdor nga algoritmet Kern dhe Jacobson për vlerësimin e kohës së ripërditësimit të të dhënave të dhëna. . Testet kanë treguar se është e mundur të prodhohet një rritje e konsiderueshme e produktivitetit me anë të mekanizmave.

Çfarë do të bëhet gjatë instalimit të sistemit, për të mos prekur fort të njëjtat standarde? Ju nuk do të jeni në gjendje të ruani produktivitetin e duhur për korystyvachiv të fuqishëm, dhe nëse do të jetë një burim i kalbur për sistemet e tjera të hemisferave, do të jetë e mundur të ndryshoni robotët normalë për një ndryshim të bazuar në kohë.

10.15 Shufra për produktivitetin

TCP ka rritur mërzinë e tij, me efikasitet në inkuadrim dhe shkëmbim të shpejtë në qindra miliona bit në sekondë. I gjithë protokolli lejoi arritjen e rezultateve të mira në rrjetet lokale më të zakonshme me topologjitë Ethernet, Token-Ring dhe Fiber Distributed Data Interface (FDDI), si dhe për linjat e komunikimit me shpejtësi të ulët, si dhe në lidhjet e largëta.

TCP prishet kështu, riaktivizohet në kushte ekstreme, për shembull në mbështjellje në gardh. Sidoqoftë, në versionin e transmetimit të protokollit, ekziston një veçori e veçantë që është në gjendje të kombinojë produktivitetin në teknologjitë premtuese, siç është transferimi i qindra e mijëra megabajteve të vetëkënaqur. Problemi është i qartë, por ka një prapanicë të qartë, të thjeshtë (dhe joreale).

Sigurisht, kur skedari zhvendoset midis dy sistemeve, është e nevojshme të shkëmbehet shkëmbimi me një rrymë të pandërprerë sa më efikase të jetë e mundur. E pranueshme, e mirë:

■ Madhësia maksimale e segmentit marrës është 1 Kbajt.

■ E pranueshme - 4 Kbajt.

Smuga lejohet të kalojë nëpër dy segmente në 1 s.

■ Mori shtesa në të dhënat e argjilës sipas botës dhe shpresës.

■ ACK do të arrijë për 2 sekonda.

Mbajtësi i së drejtës së autorit do të jetë në gjendje t'i sigurojë të dhënat pa ndërprerje. Edhe nëse ka vizione për një vizitor, do të ketë përditësime, duke shtuar një ACK, duke ju lejuar të përditësoni segmentin:

Pas 2 orësh:

MERRNI KËRKIM TË SEGMENTIT 1, MUND TË DËRGONI SEGMENTIN 5.
MERRNI KËRKIM TË SEGMENTIT 2, MUND TË DËRGONI SEGMENTIN 6.
MERRNI KËRKIM TË SEGMENTIT 3, MUND TË DËRGONI SEGMENTIN 7.
MERRNI KËRKIM TË SEGMENTIT 4, MUND TË DËRGONI SEGMENTIN 8.

Edhe pas 2 orësh:

MERRNI KËRKESË TË SEGMENTIT 5, MUND TË DËRGONI SEGMENTIN 9.

Sapo kova të jetë vetëm 2 KB, përditësimi do të dërgohet për një sekondë nga skini përpara përditësimit të haraçit tjetër. Në fakt, është më e rëndësishme të kujdesesh për këtë pa ndërprerje;

Вікно = Leje Smuga × Orë për çiklizëm

Nëse dëshironi që prapanica të jetë shumë (për të mbajtur më shumë numra të thjeshtë), vështirë se mund të çoni në probleme kur bëni një lidhje me një grilë të shkëlqyer.

Tani është e qartë për të parë rrugët me erë të fortë. Për shembull, nëse qarkullimi i smogut dhe shpejtësia e mbipopullimit është 10 milion bit në sekondë, ose ora në ciklin bëhet 100 ms (1/10 sekondë), atëherë për rrjedhën e pandërprerë ka shumë të ngjarë që të jetë fajtor për marrjen 1 000 000 bit. 125,000 byte. Nëse numri është më i lartë, ai mund të shkruhet në fushën e kokës për një dritare të përshtatshme TCP, pra vetë 65536.

Është një problem me normat e larta të këmbimit, numri i porosive të numrave do të përfundojë shumë shpejt. Nëse, sipas të dhënave, është e mundur të kapërceni të dhënat nga shpejtësia 4 GB / s, atëherë rendi i numrit është përgjegjës për të në një shtrirje sekondash të lëkurës. Nëse nuk do të ketë mundësi për të zhvilluar datagrame të vjetra dublikatë, pasi ato do të zgjerohen për një sekondë kur transferohen nëpërmjet internetit, nga të dhëna të reja të reja.

Infeksioni kryhet në mënyrë aktive për përditësime të reja për lustrimin e TCP / IP dhe për miratimin e kodit të transferimit.

10.16 Funksionet TCP

Është dhënë një kapitull mbi funksionet numerike TCP. Më poshtë, ato kryesore janë mbuluar:

■ Lidhja e porteve me splines

■ Іnіtsіalіzatsіya z'єdnan për miratim shtesë me tre hapa

■ Fitorja për fillimin

■ Segmentimi i haraçit në rast të mbikapacitetit

■ Numërimi i haraçeve

■ Përputhja e suksesshme e segmenteve të dyfishta

■ Llogaritja e shumave kontrolluese

■ Rregullimi i rrjedhës së haraçit përmes mënyrës më efikase dhe efektive

■ Puna e përfunduar në një instalim

■ Perevvannya z'єdnannya

■ Terminovyh tribute mbizotëruese

■ Miratimi pozitiv i tejfuqizimit të përsëritur

■ Përcaktimi i ri-mbingarkimit të afatit

■ Reduktimi i trafikut të ziles gjatë rimbështjelljes

■ Sinjalizimi i segmenteve të duhura jashtë funksionit

■ Provoni për mbylljen e dritares maksimale

10.17 Unë do të bëhem TCP

TCP duhet të kalojë nëpër disa faza: do të ketë një kërkesë për një shkëmbim shtesë informacioni, më pas të dhënat do të anashkalohen dhe më pas do të jetë e nevojshme të përkulet për një shkëmbim shtesë të informacionit të veçantë. Kozhen krok nga roboti kampin tsyogo z'єdnannya. Programi për sigurimin e TCP në pikën fundore të lëkurës është i pajisur në mënyrë të përhershme me mullirin e filetimit në anën e pjesës së pasme.

Më poshtë është një pamje e shkurtër e llojit të ndryshimit të strofave të serverit dhe klientit, të cilat janë instaluar në ditët e fundit të ditës. Ne nuk vendosim në vend të datës një përshkrim të detajuar të të gjitha kampeve të të rinjve gjatë tejkalimit të homazheve. Wono është referuar në RFC 793 dhe dokumentet Kërkesat e hostit.

Para orës së instalimit, serveri dhe klienti kalojnë nëpër post-stacione të ngjashme. Renditja e serverit tregohet në tabelën 10.3 dhe renditja e klientit është paraqitur në tabelën 10.4.


Tabela 10.3 Strofa e serverit

kampi i serverëve podiya te pershkruaj
MBYLLUR (mbyllur) Kampi faktik para kallirit të instalimit.
Pamje pasive e shtesës së serverit.
DËGJO (extension) Klienti i serverit ochіku z'єdnannya.
Serveri TCP do të pranojë SYN dhe do të detyrojë SYN / ACK. Server duke dërguar SYN dhe duke dërguar SYN / ACK. Shkoni te ochіkuvannya ACK.
SYN-MARRË Serveri TCP do të përgjigjet me ACK.
I THEMELUAR Otrimano ACK, vіdkrito z'єднання.

Tabela 10.4 Vendi i fundit i klientit

Partnerët e Yakby u magjepsën menjëherë për t'u ngritur një nga një (si të shkelësh në buzë), u rrëmbyen nëpër kamp MBYLL, SYN-DËRGUAR, SYN-MARRË dhe THEMELOHEN.

Pala Kintsev do të humbasë në stacionin e KRIJUAR, për sa kohë që njëra palë nuk fillon më parë zakritta z'єdnannya duke dërguar segmentin FIN. Në procesin e mbylljes kritike, ana, si mbyllja fillestare, kalon nëpër kamp, ​​është paraqitur në tabelën 10.5. Її partneri kalon nëpër mulli, paraqitur në tabelën 10.6.


Tabela 10.5 Vonesa e anëve, përkulja e shpinës

Unë do të përkulem anën time podiya te pershkruaj
I THEMELUAR Furnizimi lokal dodatok zakritta z'єdnannya.
TCP përcillet te FIN / ACK.
FIN-PRIT-1 Mbyllni anën e mesazhit të partnerit. Nagadaєmo, si partner, mund të shtohen gjithnjë e më shumë të dhëna të reja.
TCP do të injorojë ACK.
FIN-PRIT-2 Ana e lakuar nuk pranoi ACK si partner, por jo FIN. Mbylle anën e FIN, merr danin, hajde.
TCP do të injorojë FIN / ACK.
E kuptova ACK.
KOHA-PRIT Dërgoni një mesazh në një vend të pacaktuar, për t'ju lejuar të mbërrini, ose për të parë gjithnjë e më shumë dublikatë në rrjet, ose dublikime FIN. Periudha e vlerësimit është më e lartë se vlerësimi i parëndësisë maksimale të jetës së segmentit.
MBYLLUR

Tabela 10.6 Mbiemri i partnerit të ngushtë

kampi partner podiya te pershkruaj
I THEMELUAR TCP do të injorojë FIN / ACK.
MBYLL-PRIT Mbërritja FIN.
TCP detyron ACK.
TCP kontrollohet nga zasosuvannya z'dnannya e vet. Në momentin e përfundimit të dhuratës, mund të merrni një numër të madh homazhe.
Programi lokal іnіtsіalіzuє z'dnannya.
TCP përcillet te FIN / ACK.
KËRKESA E FUNDIT TCP ochіku kіntseviy ACK.
TCP do të injorojë ACK.
MBYLLUR Të gjitha informacionet për ditën përcillen.

10.17.1 Analiza e stacioneve të të dhënave TCP

ekipi netstat -an Duke lejuar të rishqyrtojmë mullirin aktual të ditës. Më poshtë është treguar z'єdnannya në kampe dëgjo, nisje, themeluar, mbylljeі kohë-prit.

Me sa duket, numri i portit tregohet në adresën lokale të lëkurës dhe emrin. Mund të shihet se trafiku TCP është si për shërbimet hyrëse ashtu edhe ato dalëse.

Pro Recv-Q Send-Q Adresa Lokale Adresa e Jashtme (shteti)
Tcp 0 0 128.121.50.145.25 128.252.223.5.1526 SYN_RCVD
Tcp 0 0 128.121.50.145.25 148.79.160.65.3368 I THEMELUAR
Tcp 0 0 127.0.0.1.1339 127.0.0.1.111 TIME_PRIT
Tcp 0 438 128.121.50.145.23 130.132.57.246.2219 E THEMELUAR
Tcp 0 0 128.121.50.145.25 192.5.5.1.4022 KOHA_PRIT
Tcp 0 0 128.121.50.145.25 141.218.1.100.3968 KOHA_PRIT
Tcp 0 848 128.121.50.145.23 192.67.236.10.1050 E THEMELUAR
Tcp 0 0 128.121.50.145.1082 128.121.50.141.6000 E THEMELUAR
Tcp 0 0 128.121.50.145.1022 128.121.50.141.1017 E THEMELUAR
Tcp 0 0 128.121.50.145.514 128.121.50.141.1020 CLOSE_PRIT
Tcp 0 1152 128.121.50.145.119 192.67.239.23.3572 I THEMELUAR
Tcp 0 0 128.121.50.145.1070 192.41.171.5.119 KOHA_PRIT
Tcp 579 4096 128.121.50.145.119 204.143.19.30.1884 E THEMELUAR
Tcp 0 0 128.121.50.145.119 192.67.243.13.3704 E THEMELUAR
Tcp 0 53 128.121.50.145.119 192.67.236.218.2018 FIN_WAIT_1
Tcp 0 0 128.121.50.145.119 192.67.239.14.1545 E THEMELUAR

10.18 Respekt për realizimet

Që në fillim, protokolli TCP përdoret për ndërlidhjen e posedimit të rrethuar të llojeve të ndryshme të virobnikëve. Specifikat e TCP nuk janë specifikuar saktësisht, pasi janë fajtorë për strukturën e brendshme të zbatimit. Ushqimi është i panevojshëm për kultivuesit që duan të dinë mekanizmat më të bukur për zbatimin e lëkurës specifike.

Navigoni RFC +1122 (dokument Kërkesat e hostit - vimogi to hosts) do t'ju japë liri të mjaftueshme për opsionet. Funksionet e lëkurës, të cilat mund të tregtohen si një nivel i veçantë çmendurie:

■ MAJ (e lejuar)

■ NUK DUHET

Është për të ardhur keq që krijohen vetëm disa produkte që nuk zbatojnë DUHET. Si rezultat, corystyuvachi shohin mungesën e shkathtësisë për shkak të një rënie të produktivitetit.

Metodat e mira të zbatimit të Deyakі nuk bien në përputhje me standardet. Për shembull, është e mundur të lustrohet pa pjekje kur ndërlidhen portat e shtëpisë me anë të proceseve të sistemit, pasi metoda është adoptuar në sistemin operativ lokal. Me qëllim të përmirësimit të produktivitetit në realizimet e atyre që janë më pak se kopjimi dhe zëvendësimi i donacioneve të lartpërmendura ose vinyagnutih.

Ndërfaqja standarde e softuerit të aplikacionit jo me vlerë(Yak dhe politika e sigurisë), por nuk ka hapësirë ​​të madhe për të eksperimentuar me grupe të ndryshme mjetesh softuerike. Megjithatë, ju mund të çoni në instalimin e ndërfaqeve të reja softuerike në lëkurë nga platformat dhe të mos lejoni transferimin e softuerit të aplikacionit midis platformave.

Në fakt, shitësit me pakicë do të lançojnë mjetet e tyre në ndërfaqen e softuerit Socket, siç raportohet nga Berkeley. Vlera e ndërfaqes së softuerit është rritur me ardhjen e WINSock (Windows Socket), i cili ka kërkuar një rritje të shpejtë të shtesave të reja për sistemet desktop, pasi ato mund të funksionojnë në krye të çdo ndërfaqeje WINSock, përmbledhje me një pirg TCP / IP .

10.19 Dodatkova Letërsi

Standardi origjinal TCP me vlerat RFC 793. Përmirësimet, përditësimet dhe qartësia në RFC 1122. Kern (Cash) dhe Partridge (Partridge) publikuan artikullin Përmirësimi i vlerësimeve të udhëtimit vajtje-ardhje në protokollet e besueshme të transportit në revistë Procedurat e ACM SIGCOMM 1 987. Stattya Jacobson Shmangia dhe Kontrolli i Kongjestionit u shfaq në Procedurat e Punëtorisë ACM SIGCOMM 1988. Jacobson ka parë gjithashtu një referencë RFC që shikon algoritmet e rregullimit të performancës.

Bëhuni gati për projektin - ju lutem, faleminderit!
Lexoni gjithashtu
Sberbank (në të njëjtën Oschadbank) Sberbank (në të njëjtën Oschadbank) Zgjidhja e problemeve të licencës për Autocad Chi nuk fillon autocad Windows 7 Zgjidhja e problemeve të licencës për Autocad Chi nuk fillon autocad Windows 7 Udhëzime për regjistrimin e kodit PIN të CryptoPro, para orës së regjistrimit të disa dokumenteve - Udhëzime - AT Udhëzime për regjistrimin e kodit PIN CryptoPro, para orës së regjistrimit të disa dokumenteve - Udhëzime - NE "PEK-Torg"