Internet-verkoissa datan siirtoon käytetään useita protokollia. Yleisiä muodissa olevia protokollia ovat TCP ja UDP. Molemmat siirtävät tietoja Internetin kautta.
Vaikka molempia termejä voidaan käyttää synonyymeinä niiden IP-protokollan käytön vuoksi, näiden kahden käsitteen välillä on suuri ero, koska ne välittävät dataa eri tavalla verkottumisen näkökulmasta.
TCP vs UDP
Ero TCP:n ja UDP:n välillä on siinä, että TCP on yhteyteen perustuva protokolla eli se muodostaa yhteyden lähettäjän ja vastaanottajan välille ennen tiedon lähettämistä, kun taas UDP on protokolla, joka perustuu ei yhteyttä eli se ei muodosta yhteyttä ennen tiedon lähettämistä..
Yllä oleva ei kuitenkaan ole ainoa ero. Molempien termien vertailu tietyillä parametreilla voi paljastaa hienovaraisia näkökohtia:
TCP:n ja UDP:n vertailutaulukko (taulukkomuodossa)
Vertailuparametri | TCP | UDP |
---|---|---|
Mitä lyhenne tarkoittaa? | Lähetyksen ohjausprotokolla | User Datagram Protocol |
Yhteyden perusta | Yhteyspohjainen | Ei perustu yhteyteen |
Muodostaako se yhteyden tiedon lähettäjän ja vastaanottajan välille? | Joo | Ei |
Onko tämä kättelyprotokolla? | Joo | Ei eli ei yhteyttä |
Onko se yleisimmin käytetty protokolla? | Joo | Ei, mutta riippuu soveltuvuudesta tietyille alueille |
Kuinka se toimii? | TCP:hen perustuvat viestit välitetään järjestelmästä/tietokoneesta toiseen Internetissä. | Yksi ohjelma voi lähettää useita datapaketteja toiselle ohjelmalle. |
Voidaanko tietojen toimittaminen taata? | Joo | Ei |
Kumpi on luotettavampi? | TCP on luotettavampi, koska lähettäjä vastaanottaa kuittauksen | Vähemmän luotettava |
Onko datapaketit järjestetty johonkin tiettyyn järjestykseen? | Kyllä, peräkkäinen järjestys | Ei erityistä tilausta |
Mahdollistaako se datapakettien lähettämisen peräkkäisessä järjestyksessä? | Joo | Ei, datapaketit lähetetään millä tahansa tavalla |
Painon näkökulmasta? | Raskas, koska yhteyksiä varten tarvitaan useita portteja | Kevyt, koska viestejä ei järjestetä peräkkäin eikä yhteyden seurantaa. |
Onko olemassa kuittausosioita? | Joo | Ei |
Nopeuden näkökulmasta | Hitaampi kuin UDP, koska se suorittaa useita toimintoja, kuten yhteyden muodostamisen, virheiden tarkistamisen ja peräkkäisen lähetyksen. | Nopeampi kuin TCP |
Mikä on otsikon koko? | 20 tavua | 8 tavua |
Onko virheenpalautus suoritettu? | Kyllä, virheiden tarkistus ja palautus. | Ei paljon |
Tarjoaako se laajan virheentarkistusmekanismin? | Joo | Ei, vain yksi mekanismi saatavilla |
Voidaanko sitä käyttää lähetysten lähettämiseen? | Ei | Joo |
Mahdollistaako se virtauksenhallinnan? | Joo | Ei, koska paketteja lähetetään jatkuvasti |
Sopivuus | Käytetään FTP (file transfer protocol) internetissä, sähköpostissa, tapauksissa, joissa asiakas ja palvelin lähettävät datapaketteja itsenäisesti | Käytetään suorassa lähetyksessä, VOIP:ssä (Voice over Internet Protocol), videon suoratoistossa, online-pelaamisessa, DNS:ssä |
Mikä on TCP?
TCP tarkoittaa Transmission Control Protocol tai Internet Protocol. TCP on yhteyspohjainen protokolla ja yksi yleisesti käytetyistä protokollista Internet-datan siirtoon.
TCP toimii yksinkertaisella tavalla mahdollistaen kaksisuuntaisen viestintämekanismin, jossa toinen osapuoli hakee tietoa, toinen osapuoli/järjestelmä lähettää tiedot tai kuittaa vastaanoton.
Esimerkiksi kun lataamme Internet-sivun, järjestelmä lähettää TCP-paketteja tietylle verkkopalvelimelle ja pyytää lähettämään kyseisen verkkosivun tai tiedot. Kyseinen Web-sivu vastaa lähettämällä joukon TCP-paketteja.
TCP on luotettava protokolla, mikä tarkoittaa, että datapaketteja seurataan, tiedot eivät katoa tai vioittuisi siirron aikana, ja vastaanottaja hyväksyy tiedon. TCP tarjoaa lisäksi virheentarkistuksen ja takaa, että data ja paketit toimitetaan lähetysjärjestyksessä.
TCP toimii erillään käyttöjärjestelmästä. TCP:llä on erittäin päivitettävä asiakas-palvelin-malli.
TCP tukee virtuaalisen verkon luomista useiden järjestelmäverkkojen yhteydessä. TCP tukee myös yhteyden luomista järjestelmien välillä ja auttaa useita reititysprotokollia. TCP tarjoaa tehokkaan vuonhallintamekanismin, koska se toteuttaa vuonhallinnan järjestämällä verkkoliikennettä ja ruuhkautumista
TCP:tä ei voi käyttää yleislähetykseen. TCP-korvaus on täynnä haasteita. TCP:llä voi myös olla roikkumisongelmia, kuten verkkosivujen roikkuminen, ellei niitä ladata uudelleen.
Mikä on UDP?
UDP tulee sanoista User Datagram Protocol. Yksinkertaisesti sanottuna datagrammi tarkoittaa tietopakettia. UDP on protokolla, joka ei perustu yhteyteen.
UDP toimii samalla tavalla kuin TCP, mutta ei takaa tietojen toimittamista. Yksinkertaisesti sanottuna vastaanottaja jatkaa datapakettien vastaanottamista, eikä lähettäjä välttämättä pysty vahvistamaan, vastaanottaako vastaanottaja dataa vai ei.
On täysin mahdollista, että vastaanottajat saattavat jäädä vastaanottamatta tiettyjä paketteja, mutta eivät voi pyytää niitä, mutta kaikki tämä tapahtuu nopealla nopeudella. Joten UDP:n suurin hyöty on suuri nopeus, jolla paketteja siirretään.
UDP tukee verkkolähetyksen pakettilähetystä. UDP:tä käytetään yleisesti aikaherkissä sovelluksissa. UDP:tä voidaan käyttää myös DNS:n (eli verkkotunnusjärjestelmän) ja Internet-pelaamisen tapauksessa. UDP:tä voidaan käyttää tilanteessa, jossa nopeus on erittäin kriittinen, mutta virheiden korjaaminen ei ole tärkeää.
UDP ei takaa paketin toimitusta ja myös pakettien/datan katoamisen mahdollisuus. UDP-protokolla voi tukea virheiden havaitsemista, mutta tämä voi johtaa pakettien hylkäämiseen ilman, että uutta uudelleenlähetystä yritetään.
Lisäksi on olemassa mahdollisuus, että datapaketteja toimitetaan virheellisesti tai vastaanotetaan samat paketit useita kertoja.
TCP:n ja UDP:n tärkeimmät erot
- TCP tulee sanoista Transmission Control Protocol. UDP tarkoittaa User Datagram Protocol -protokollaa.
- TCP on yhteyspohjainen protokolla eli muodostaa yhteyden lähettäjän ja vastaanottajan välille ennen tietojen lähettämistä. UDP on yhteydetön protokolla, eikä se vaadi yhteyden määrittämistä tiedonsiirtoon.
- TCP tarjoaa virheentarkistustekniikoita. UDP ei tarjoa tällaisia tekniikoita, ja vastaanottajat voivat saada virheellisiä tietoja tai vioittuneita tietoja tai eivät välttämättä edes vastaanottaa tietoja, joita ei ehkä kysytä uudelleen.
- TCP on hitaampi ja raskaampi, koska sen on suoritettava useita tehtäviä, kuten yhteyden määrittäminen, virheiden tarkistus, peräkkäinen järjestys. UDP on nopeampi, koska se ei suorita tällaisia tehtäviä ja on kevyt protokolla.
- TCP on luotettava ja tiedon toimitus on taattu yhdistettynä kuittaukseen ja tietojen häviämisen palautukseen käytännössä. UDP ei ole luotettava, koska se ei takaa tietojen toimittamista ja on edelleen mahdollista tietojen vioittumisesta tai katoamisesta siirron aikana.
- TCP tarjoaa peräkkäisen järjestyksen dataa lähetettäessä ja tarjoaa myös vuonohjaustekniikan, joka ylläpitää sujuvaa liikennevirtaa eikä ärsytä vastaanottajia liian monilla paketeilla. UDP ei tarjoa tällaista protokollaa eikä erityistä järjestystä datapakettien lähettämiselle, ja se lähettää paketteja millään tavalla eikä tarjoa mitään vuonhallintamekanismia.
Johtopäätös
TCP ja UDP ovat erittäin trendikkäitä nykyään. Lisäksi on taipumus rinnastaa nämä molemmat termit samaksi, minkä seurauksena voidaan ottaa käyttöön TCP UDP:n sijasta ja päinvastoin.
Siksi olisi järkevää arvioida niiden hienovaraiset erot ennen ostopäätöstä, koska molemmat eroavat toisistaan niin käytännöllisyyden kuin käytönkin osalta.
Suosittelemme perusteellista käytännön ymmärrystä ja neuvoja, erityisesti verkkoasiantuntijoilta, jotta voit saada täyden hyödyn joko TCP- tai UDP-käytöstä. Tärkein painopiste, joka tulee aina pitää perspektiivissä, on se, onko sovellus laajuudessa ja pysyykö se yhteydessä odotetun ajan.
- https://ieeexplore.ieee.org/abstract/document/751376/
- https://core.ac.uk/download/pdf/37832045.pdf
- https://smartech.gatech.edu/bitstream/handle/1853/12301/MANIACS_40.pdf?sequence=1&isAllowed=y