TCP ja UDP pähkinänkuoressa
Vertaa luotettavaa yhteyspohjaista TCP:tä nopeaan ja kevyeen UDP:hen.
TCP ja UDP pähkinänkuoressa on ilmainen Network+ Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Network+ Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Network+ Academy-kurssilla on yhteensä 4 oppituntia.
Kaksi siirtoprotokollaa
Siirtokerroksella suurimman osan internet-liikenteestä välittää kaksi protokollaa: TCP (Transmission Control Protocol) ja UDP (User Datagram Protocol).
Molemmat siirtävät tietoja sovellusten välillä, mutta tekevät hyvin erilaisia kompromisseja luotettavuuden ja nopeuden välillä. Sen tietäminen, milloin kumpaakin käytetään, kuuluu Network+-osaamisen perusteisiin.
TCP on yhteyspohjainen
TCP on yhteyspohjainen: ennen tietojen lähettämistä se muodostaa yhteyden ja varmistaa, että molemmat osapuolet ovat valmiita. Se takaa, että tiedot saapuvat kokonaisina ja oikeassa järjestyksessä.
Jos segmentti katoaa, TCP havaitsee puuttuvan kohdan ja lähettää segmentin uudelleen. Tämä luotettavuus tekee TCP:stä sopivan verkkosivuille, sähköpostille ja tiedostonsiirroille, joissa jokainen tavu on tärkeä.
Kolmivaiheinen kättely
TCP aloittaa yhteyden kolmivaiheisella kättelyllä: SYN, SYN-ACK, ACK. Asiakas lähettää SYN-viestin, palvelin vastaa SYN-ACK-viestillä ja asiakas vahvistaa yhteyden ACK-viestillä.
Vasta tämän vaihdon jälkeen tiedonsiirto alkaa. Kättely synkronoi molemmat osapuolet, ja se on klassinen koeaihe. Muistakaa kolme vaihetta oikeassa järjestyksessä.
Client -> SYN
Server -> SYN-ACK
Client -> ACKUDP on yhteydetön
UDP on yhteydetön: se lähettää tiedot heti ilman kättelyä eikä takaa niiden perillemenoa tai järjestystä. Se yksinkertaisesti lähettää datagrammeiksi kutsuttuja paketteja kohti kohdetta.
Tämän ansiosta UDP on nopea ja kevyt, mutta sovelluksen on itse käsiteltävä kadonneet tai väärässä järjestyksessä saapuneet tiedot, jos niiden säilyminen on tärkeää.
Luotettavuus vastaan nopeus
Peruskompromissi on selvä: TCP lisää luotettavuutta kuittauksilla ja uudelleenlähetyksillä, mikä kuluttaa aikaa ja lisää kuormaa. UDP jättää kaiken tämän pois raakaa nopeutta tavoitellessaan.
- TCP: luotettava, järjestyksessä toimiva, hitaampi.
- UDP: nopea, kevyt, parhaan yrityksen mukainen.
Valitkaa protokolla sen perusteella, onko tarkkuus vai nopeus tärkeämpää.
Milloin TCP on parempi
Käyttäkää TCP:tä, kun jokaisen tavun on saavuttava oikein. Verkkoselailu (HTTP/HTTPS), sähköposti (SMTP) ja tiedostonsiirto (FTP) perustuvat kaikki TCP:hen.
Verkkosivun tai tiedoston puuttuva osa vioittaisi sisältöä, joten TCP:n luotettavuudesta aiheutuva kustannus on sen arvoinen. Liikennemäärällä mitattuna suurin osa internet-liikenteestä käyttää TCP:tä.
Milloin UDP on parempi
Käyttäkää UDP:tä, kun nopeus ja pieni viive ovat täydellistä toimitusta tärkeämpiä. Suorissa ääni- ja videopuheluissa, verkkopeleissä ja suoratoistossa käytetään usein UDP:tä.
Videopuhelussa hieman väliin jäänyt kuva on parempi kuin lähetyksen pysäyttäminen sen uudelleenlähettämistä varten. Myös DNS-kyselyissä käytetään UDP:tä, koska kyselyt ovat nopeita ja pieniä.
Vuonhallinta ja ikkunat
TCP sisältää vuonhallinnan, joka estää vastaanottajan kuormittamisen liikaa. Se käyttää liukuvaa ikkunaa, joka säätää ennen kuittausta siirrettävänä olevan datan määrää.
TCP suorittaa myös ruuhkanhallintaa ja hidastaa liikenteen ollessa vilkasta. UDP:ssä näitä toimintoja ei ole, joten nopeuden säätely jää kokonaan sovelluksen vastuulle.
Otsakkeet ja lisäkuorma
TCP:n otsake on suurempi (vähintään 20 tavua), koska se sisältää järjestysnumerot, kuittaukset ja liput. UDP:n otsake on vain 8 tavua, ja se sisältää ainoastaan lähde- ja kohdeportit sekä pituuden.
Pienempi UDP-otsake merkitsee pienempää pakettikohtaista lisäkuormaa, mikä parantaa sen nopeusetua suuren volyymin reaaliaikaisessa liikenteessä.
Valinta näiden välillä
Kysy itseltänne: tarvitseeko sovellus taatun toimituksen oikeassa järjestyksessä? Jos tarvitsee, valitkaa TCP. Jos sovellus arvostaa nopeutta ja sietää jonkin verran hävikkiä, valitkaa UDP.
Monet protokollat valitsevat tarkoituksella. DNS käyttää UDP:tä nopeisiin kyselyihin, mutta vaihtaa TCP:hen suurissa siirroissa. Kompromissin ymmärtäminen selittää nämä suunnitteluratkaisut.
TCP ja UDP yhdessä
Molemmat protokollat käyttävät porttinumeroita liikenteen ohjaamiseen oikealle sovellukselle, jota käsitellään seuraavassa oppitunnissa. Ne käyttävät samaa osoitejärjestelmää, mutta niiden toimitustakuut eroavat toisistaan.
TCP:n ja UDP:n erojen tunteminen on perusta tämän kurssin myöhempien protokollien ja porttien ymmärtämiselle.
Pikatarkistus
Yhdistä protokolla tarpeeseen.
Kertaus
Vertailitte TCP:tä ja UDP:tä.
- TCP: yhteyssuuntautunut, luotettava ja järjestyksen säilyttävä; käyttää SYN/SYN-ACK/ACK-kättelyä.
- UDP: yhteydetön, nopea ja parhaan yrityksen periaatteella toimiva; ei kättelyä.
- TCP sopii verkkoon, sähköpostiin ja tiedostonsiirtoon; UDP sopii puheelle, videolle, pelaamiseen ja DNS-kyselyihin.
- TCP lisää vuon- ja ruuhkanhallinnan; UDP jättää ne sovelluksen vastuulle.
- Molemmat käyttävät porttinumeroita sovellusten saavuttamiseen.
Opi Network+ Academy tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”TCP ja UDP pähkinänkuoressa” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Network+ Academy-oppimispolun 3 oppituntia, myös oppitunnin “TCP ja UDP pähkinänkuoressa”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Network+ Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”TCP ja UDP pähkinänkuoressa”?
Vertaa luotettavaa yhteyspohjaista TCP:tä nopeaan ja kevyeen UDP:hen. Harjoittelet Network+ Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Network+ Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Network+ Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”TCP ja UDP pähkinänkuoressa”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Network+ Academy-oppitunnilla?
Kyllä. Jokainen Network+ Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- TCP ja UDP pähkinänkuoressa
- Mihin porttinumeroita käytetään
- Web- ja tiedonsiirtoprotokollat
- Etäkäyttö- ja sähköpostiprotokollat