TCP / IP yra protokolų rinkinys, naudojamas įrenginių, norint bendrauti internetu ir daugumoje vietinių tinklų. Jis yra pavadintas dviem iš jo originalių protokolų - Transmission Control Protocol (TCP) ir interneto protokolo (IP). TCP programoms suteikia galimybę pristatyti (ir gauti) užsakytą ir klaidų patikrintą informacijos paketų srautą tinkle. Naudotojo Datagramo protokolą (UDP) naudoja programos, kad greičiau pateiktų informacijos srautą, panaikindami klaidų patikrinimą. Kai konfigūruojate kokią nors tinklo aparatinę įrangą ar programinę įrangą, gali tekti žinoti skirtumą.
Ką jie turi bendro
Tiek TCP, tiek UDP yra protokolai, naudojami siunčiant duomenų bitus, vadinamus paketais, per internetą. Abu protokolai yra IP protokolo viršuje. Kitaip tariant, ar siunčiate paketą per TCP arba UDP, tas paketas siunčiamas į IP adresą. Šie paketai apdorojami panašiai, nes jie persiunčiami iš jūsų kompiuterio į tarpinius maršrutizatorius ir į paskirties vietą.
Kaip veikia TCP
TCP yra dažniausiai naudojamas interneto protokolas.
Kai prašote naršyklės interneto puslapio, jūsų kompiuteris siunčia TCP paketus į žiniatinklio serverio adresą ir prašo jį grąžinti jums tinklalapį. Tinklo serveris atsako siųsdamas TCP paketų srautą, kurį jūsų žiniatinklio naršyklė sujungia, kad suformuotų tinklalapį. Kai spustelėsite nuorodą, prisijunkite, paskelbkite komentarą arba darysite ką nors kita, jūsų žiniatinklio naršyklė siunčia TCP paketus į serverį, o serveris grąžina TCP paketus.
TCP yra viskas apie patikimumo paketus, siunčiamus naudojant TCP, yra stebimi, todėl tranzitu perduodami jokie duomenys nėra prarasti ar sugadinti. Štai kodėl failų atsisiuntimai nepažeisti, net jei yra tinklo žagsėjimas. Žinoma, jei gavėjas yra visiškai neprisijungęs, jūsų kompiuteris atsisakys ir pamatysite klaidos pranešimą, kad negalėsite bendrauti su nuotoliniu kompiuteriu.
TCP tai pasiekia dviem būdais. Pirma, paketai užsakomi numeruojant juos. Antra, tai klaidų tikrinimas, nes gavėjas siunčia atsakymą siuntėjui, sakydamas, kad gavo pranešimą. Jei siuntėjas nepateikia teisingo atsakymo, jis gali pakartotinai siųsti paketus, kad užtikrintų, jog gavėjas juos teisingai įvedė.
"Process Explorer" ir kitos sistemos komunalinės paslaugos gali parodyti ryšį, kurį atlieka procesas. Čia mes galime pamatyti "Chrome" naršyklę su atviromis TCP jungtimis į įvairius žiniatinklio serverius.
Kaip veikia UDP
UDP protokolas veikia panašiai kaip TCP, tačiau jis išmeta visas klaidų tikrinimo medžiagas. Visa atgaline ir antrine komunikacija atneša vėlavimą, lėtėja situacija.
Kai programa naudoja UDP, paketai tiesiog siunčiami gavėjui. Siuntėjas nesibaimina, ar gavėjas gavo paketą - jis tik toliau siunčia kitus paketus. Jei gavėjas trūksta keleto UDP paketų čia ir ten, jie tiesiog prarasti - siuntėjas jų nepateiks iš naujo. Praradus visas šias išlaidas, įrenginiai gali greičiau bendrauti.
UDP naudojamas, kai pageidaujamas greitis, o klaidų taisymas nėra būtinas. Pavyzdžiui, UDP dažnai naudojamas tiesioginėms transliacijoms ir internetiniams žaidimams.
Pvz., Tarkime, kad žiūrite tiesioginį vaizdo srautą, kuris dažnai transliuojamas naudojant UDP, o ne TCP. Serveris tiesiog siunčia nuolatinį UDP paketų srautą į kompiuterius, kurie žiūri. Jei prarasite savo ryšį kelias sekundes, vaizdo įrašas gali užšalti arba šiek tiek atsigaivinti, tada pereikite prie dabartinio transliuojamo laido. Jei pastebėsite nedidelį paketų praradimą, vaizdo įrašas arba garso įrašas gali būti iškraipytas, kai vaizdo įrašas ir toliau groja be trūkstamų duomenų.
Tai taip pat veikia ir internetiniuose žaidimuose. Jei praleidote kai kuriuos UDP paketus, gali pasirodyti, kad žaidėjo simboliai per žemėlapį teleportuojami, kai gaunate naujesnes UDP paketų. Negalima prašyti senųjų paketų, jei juos praleidote, nes žaidimas tęsis be tavo. Viskas, kas svarbu, yra tai, kas dabar vyksta žaidimų serveryje, o ne tai, kas nutiko prieš kelias sekundes. Ditching TCP klaidų taisymas padeda pagreitinti žaidimų ryšį ir sumažinti vėlavimą.
Tai kas?
Nesvarbu, ar programa naudoja TCP ar UDP, priklauso nuo to, ko reikia programuotojui. Daugumai programoms reikia TCP klaidų taisymo ir patikimumo, tačiau kai kurioms programoms reikia greitumo ir mažesnių UDP pridėtinių išlaidų. Jei paleisite tinklo analizės įrankį, pvz., "Wireshark", galite matyti skirtingus paketų tipus, keliaujančius pirmyn ir atgal.