TCP/IP-viitemalli
TCP/IP-viitemalli on Internetin arkkitehtuurin kuvaamisessa käytetty tietoliikenneverkkojen viitemalli. Nimensä se on saanut kahden pääprotokollan, TCP:n ja IP:n mukaan. Toisin kuin OSI-viitemallissa, TCP/IP protokollat kehitettiin ensin ja malli vasta niiden jälkeen. TCP/IP-malli ei sovellukaan kovin hyvin muiden protokollapinojen kuin TCP/IP:n mallintamiseen.
TCP/IP-malli | OSI-malli |
---|---|
Sovelluskerros | Sovelluskerros |
Esitystapakerros | |
Istuntokerros | |
Kuljetuskerros | Kuljetuskerros |
Verkkokerros | Verkkokerros |
Peruskerros | Siirtoyhteyskerros |
Peruskerros |
TCP/IP-viitemalli koostuu neljästä portaasta, joista kolmella on suorat vastineet OSI-viitemallissa.
Sovelluskerros (Application Layer)
TCP/IP-mallissa ei ole esitystapa- eikä istuntokerrosta, sillä niille ei nähty tarvetta. OSI-mallia käytettäessä nämä kerrokset onkin havaittu pitkälti turhiksi. Sovelluskerros onkin TCP/IP-mallissa heti kuljetuskerroksen yläpuolella. Sovelluskerrokseen kuuluvat korkeamman tason protokollat, kuten telnet, FTP, SMTP, DNS, NNTP, NTP ja HTTP.
TCP/IP-malli painottaa tehtävien siirtämistä sovellukselle. Erillistä istunto- tai esitystapakerrosta ei ole, vaan sovellus pitää huolen istuntojen muodostamisesta ja purkamisesta samoin kuin tarvittavista tiedon esitystavan muunnoksista.
Kuljetuskerros (Transport Layer)
Kuljetuskerroksen tarkoitus on sallia tietojenvälitys lähde- ja kohdekoneiden välillä. TCP/IP-mallin kuljetuskerros on sama kuin OSI-mallin kuljetuskerros. TCP/IP-mallissa tälle kerrokselle ajatellaan ensimmäiseksi protokollia, joiden pohjalta mallia alettiin tehdä: TCP ja UDP. TCP vastaa ruuhkautumisen hallinnasta (congestion control), UDP:tä käyttävät sovellukset joutuvat toteuttamaan itse ruuhkautumisen hallinnan.
Verkkokerros (Internet Layer)
Verkkokerros mahdollistaa pakettien lähettämisen mihin tahansa verkkoon ja niiden kulun kohdekoneelle. Ne saattavat muuttaa järjestystä matkalla, jolloin korkeammat kerrokset joutuvat järjestämään ne uudelleen mikäli niiden järjestys oli oleellinen.
Verkkokerroksella on virallinen pakettiformaatti ja protokolla: Internet-protokolla (IP). Verkkokerros kuljettaa IP-paketit sinne mihin ne kuuluvat. Reititys ovat kerrokselle oleellisimpia piirteitä. Verkkokerroksella voidaan myös yrittää välttää ruuhkautumista (congestion avoidance). TCP/IP-mallin verkkokerros vastaa varsin hyvin OSI-mallin verkkokerrosta.
Peruskerros (Network Access Layer)
TCP/IP-malli ei määritä tarkkaan mitä tapahtuu verkkokerroksen alapuolella. Se yksinkertaisesti toteaa, että koneen on voitava liittyä verkkoon jotakin protokollaa käyttäen, jotta se voisi lähettää IP-paketteja verkon yli. Toisaalta lähestulkoon ainoa asia, joka pitää määritellä, on IP-pakettien kapsulointi kuhunkin peruskerroksen protokollaan. TCP/IP-mallia käsittelevät kirjat ja artikkelit eivät yleensä sano kerroksesta paljoakaan.
TCP/IP- ja OSI-mallit
TCP/IP-mallilla on paljon yhteistä OSI-mallin kanssa. Molempien voidaan katsoa koostuvan kerroksista ja osa näistä kerroksistakin on samanlaisia, mutta selkeitä erojakin on. OSI-mallissa palvelut, rajapinnat ja protokollat on pidetty erillään. TCP/IP-malli ei tee näille selkeitä eroja, joskin eroja on jälkeenpäin istutettu malliin. OSI on kerrosmalli jossa alemmat kerrokset on piilotettu ylemmiltä, kun taas TCP/IP muodostaa hierarkian, jossa sekä verkkokerros että kuljetuskerros ovat näkyvissä sovelluksille. OSI-mallissa voidaan periaattessa vaihtaa eri kerroksilla käytettäviä protokollia.
TCP/IP-arkkitehtuuri lähtee siitä, että on yksi kaikille yhteinen protokolla, IP. Keskellä oleva IP eristää peruskerroksen ylemmän portaan protokollista, samoin kuin ylemmän kerroksen protokolla peruskerroksesta. IP-paketteja voidaan lähettää minkä tahansa peruskerroksen protokollan päällä, ja kaikki muut palvelut, sovellukset ja protokollat käyttävät IP:tä. Kaikki verkon solmut voivat viestiä toistensa kanssa käyttäen IP:tä.
Tämä tiimalasimalli on ollut erittäin menestyksekäs rakennettaessa laajoja verkkoja. Periaate on viety vieläkin pidemmälle IPv6:ta suunniteltaessa.
OSI-malli (mahdollisesti ilman istunto- ja esitystapakerrosta) soveltuu paremmin apuvälineeksi tietoliikenneverkoista puhuttaessa ja niitä opetettaessa. Sen sijaan OSI-mallin mukaan rakennetut protokollat eivät ole saaneet suosiota.
Portaattainen TCP/IP-malli soveltuu hyvin protokollien käytännön toteuttamiseen, kun eri kerroksille kuuluva prosessointi voidaan haluttaessa yhdistää suorituskyvyn parantamiseksi.