Pelkästään tietokoneverkon fyysisten osien yhdistäminen ei riitä sen toimimiseen; liitetyt laitteet vaativat myös viestintämenetelmän. Näitä viestintäkieliä kutsutaan verkkoprotokolliksi.
Verkkoprotokollien tarkoitus
Ilman protokollia laitteet eivät pystyisi ymmärtämään sähköisiä signaaleja, joita ne lähettävät toisilleen verkkoyhteyksien kautta. Verkkoprotokollalla on seuraavat perustoiminnot:
- Osoitetiedot oikeille vastaanottajille.
- Siirrä tiedot fyysisesti lähteestä määränpäähän tarvittaessa suojatulla tavalla.
- Vastaanota viestejä ja lähetä vastaukset asianmukaisesti.
Harkitse verkkoprotokollien vertailua ja sitä, miten posti käsittelee fyysistä paperipostia. Aivan kuten postipalvelu hallitsee kirjeitä monista lähteistä ja kohteista, verkkoprotokollat pitävät tiedon virtaamassa jatkuvasti monia polkuja pitkin. Toisin kuin fyysinen sähköposti, verkkoprotokollat tarjoavat kehittyneitä ominaisuuksia. Näitä ovat jatkuvan viestivirran toimittaminen yhteen kohteeseen (kutsutaan suoratoistoksi) ja automaattisesti kopioiden tekeminen viestistä toimitettavaksi useisiin kohteisiin kerralla (kutsutaan yleislähetykseksi).
Yleisiä verkkoprotokollatyyppejä
Ei ole olemassa yhtä protokollaa, joka tukee kaikkia toimintoja, joita jokainen tietokoneverkko tarvitsee. Silti jokainen toimii avaimena, joka avaa tietyn verkkolaitteen tai palvelun lukituksen. Vuosien varrella on keksitty useita verkkoprotokollia, joista jokainen yrittää tukea tietyntyyppistä verkkoviestintää.
Kolme perusominaisuutta, jotka erottavat yhden protokollatyypin toisesta, ovat:
- Simplex vs Duplex: Simplex-yhteydellä vain yksi verkon laite voi lähettää. Duplex-verkkoyhteyksien avulla laitteet voivat lähettää ja vastaanottaa tietoja saman fyysisen linkin kautta.
- Yhteyssuuntautunut tai yhteydetön: Yhteyssuuntautunut verkkoprotokolla (prosessi, jota kutsutaan kättelyksi) vaihtaa osoitetietoja kahden laitteen välillä, jolloin ne voivat keskustella (kutsutaan istunnoksi). Yhteydetttömät protokollat välittävät yksittäisiä viestejä pisteestä toiseen ottamatta huomioon samankaltaisia viestejä, jotka on lähetetty ennen tai jälkeen (ja tietämättä, onko viestien vastaanottaminen onnistunut).
- Matala: Verkkoprotokollat toimivat yleensä yhdessä ryhmissä (kutsutaan pinoiksi, koska kaaviot näyttävät protokollat usein päällekkäin pinottuina laatikoina). Jotkut protokollat toimivat alemmilla kerroksilla ja liittyvät läheisesti erityyppisten langattomien tai verkkokaapelointien fyysiseen toimintaan. Toiset toimivat korkeammilla kerroksilla, jotka liittyvät verkkosovellusten toimintaan, ja toiset toimivat välikerroksilla niiden välissä.
Internet-protokollaperhe
Yleiset julkisessa käytössä olevat verkkoprotokollat kuuluvat Internet Protocol -perheeseen. IP on perusprotokolla, jonka avulla koti- ja muut lähiverkot voivat kommunikoida keskenään Internetin kautta. IP toimii hyvin yksittäisten viestien siirtämiseen verkosta toiseen. Se ei tue keskustelun käsitettä (yhteys, jonka kautta viestivirta voi kulkea yhteen tai molempiin suuntiin). Transmission Control Protocol (TCP) laajentaa IP:tä näillä korkeamman kerroksen ominaisuuksilla. Koska pisteestä pisteeseen -yhteydet Internetissä ovat välttämättömiä, nämä kaksi protokollaa on linkitetty toisiinsa ja niitä kutsutaan nimellä TCP/IP. Sekä TCP että IP toimivat verkkoprotokollapinon keskikerroksissa. Suosittujen Internetin sovellusten protokollat on joskus toteutettu TCP/IP:n päälle. Web-selaimet ja palvelimet käyttävät HyperText Transfer Protocolia maailmanlaajuisesti. TCP/IP puolestaan toimii alemman tason verkkotekniikoiden, kuten Ethernetin, päällä. Muita suosittuja IP-perheen verkkoprotokollia ovat ARP, ICMP ja FTP.
Kuinka verkkoprotokollat käyttävät paketteja
Internet ja useimmat muut tietoverkot toimivat järjestämällä tiedot pieniksi paloiksi, joita kutsutaan paketeiksi. Viestinnän suorituskyvyn ja luotettavuuden parantamiseksi jokainen kahden verkkolaitteen välillä lähetetty suuri viesti on usein jaettu pienempiin paketteihin taustalla olevalla laitteistolla ja ohjelmistolla. Nämä pakettikytkentäiset verkot edellyttävät, että paketit järjestetään tietyillä tavoilla verkon tukemien protokollien mukaisesti. Tämä lähestymistapa toimii hyvin nykyaikaisten verkkojen tekniikan kanssa, koska ne käsittelevät dataa bittien ja tavujen muodossa (digitaaliset ykköset ja nollit). Jokainen verkkoprotokolla määrittelee säännöt datapakettien järjestämiselle. Koska Internet-protokollan kaltaiset protokollat toimivat usein yhdessä kerroksittain, jotkin yhdelle protokollalle muotoiltuun pakettiin upotetut tiedot voivat olla toisen liittyvän protokollan muodossa (menetelmää kutsutaan kapseloinniksi). Protokollat jakavat tyypillisesti jokaisen paketin kolmeen osaan: otsikko, hyötykuorma ja alatunniste. Jotkut protokollat, kuten IP, eivät käytä alatunnisteita. Pakettien ylä- ja alatunnisteet sisältävät verkon tukemiseen tarvittavat kontekstuaaliset tiedot, mukaan lukien lähettävien ja vastaanottavien laitteiden osoitteet. Hyötykuormat sisältävät lähetettävät tiedot. Ylä- tai alatunnisteet sisältävät usein erityisiä tietoja, jotka parantavat verkkoyhteyksien luotettavuutta ja suorituskykyä, kuten laskureita, jotka seuraavat viestien lähetysjärjestystä, ja tarkistussummia, jotka auttavat verkkosovelluksia havaitsemaan tietojen vioittumisen tai peukaloinnin.
Miten verkkolaitteet käyttävät protokollia
Verkkolaitteiden käyttöjärjestelmissä on sisäänrakennettu tuki joillekin alemman tason verkkoprotokolleille. Esimerkiksi kaikki nykyaikaiset työpöytäkäyttöjärjestelmät tukevat Ethernetiä ja TCP/IP:tä. Monet älypuhelimet tukevat Bluetoothia ja Wi-Fi-perheen protokollia. Nämä protokollat muodostavat yhteyden laitteen fyysisiin verkkoliitäntöihin, kuten sen Ethernet-portteihin ja Wi-Fi- tai Bluetooth-radioihin.
Verkkosovellukset tukevat korkeamman tason protokollia, jotka puhuvat käyttöjärjestelmän kanssa. Esimerkiksi verkkoselain kääntää osoitteet, kuten http://lifewire.com/, HTTP-paketteiksi, jotka sisältävät tiedot, jotka verkkopalvelin voi vastaanottaa ja palata oikealle sivulle. Vastaanottava laite on vastuussa alkuperäisen viestin yksittäisten pakettien uudelleen kokoamisesta poistamalla ylä- ja alatunnisteet ja linkittämällä paketit yhteen oikeassa järjestyksessä.