Avaa päävalikko

IP

verkkoviestinnän protokolla
(Ohjattu sivulta IP-protokolla)
Tämä artikkeli käsittelee Internet-protokollaa. Sanan muita merkityksiä erillisellä täsmennyssivulla.

IP (engl. Internet Protocol[1]) on TCP/IP-viitemallin verkkokerroksen protokolla, joka huolehtii IP-tietoliikennepakettien toimittamisesta perille pakettikytkentäisessä Internet-verkossa. Se on internetin toiminnan ydin, joka yhdistää internettiin liittyneitä laitteita palvelimiin ja sitä kautta mahdollisesti toisiin käyttäjiin. IP ei yksilöi käyttäjää.

TCP/IP-pino
sovelluskerros

sovelluskerros
BGP · DHCP · DNS · ESMTP · FTP · HTTP · IMAP · IRC · LDAP · MGCP · NNTP · NTP · POP3 · RPC · RTP · RTSP · SIP · SMTP · SNMP · SOCKS · SSH · Telnet · TLS/SSL · XMPP
kuljetuskerros

kuljetuskerros
TCP · UDP · DCCP · SCTP · RSVP · RIP · ECN
verkkokerros

verkkokerros
IP (IPv4 ja IPv6) · ICMP · ICMPv6 · IGMP · IPsec
siirtokerros ARP · IS-IS · NDP · OSPF · L2TP · PPP

Standardointi ja versiotMuokkaa

Tällä hetkellä Internetissä on yleisimmin käytössä IP-protokollan neljäs versio eli IPv4. Edeltävät versiot 0-3 on kuvattu Internet Experiment Note (IEN) dokumenteissa:

  • IEN 2 (Comments on Internet Protocol and TCP), elokuu 1977. Esittelee ensimmäisen version IP-otsikosta, jossa käytetään numeroa 0 versiokentässä.
  • IEN 26 (A Proposed New Internet Header Format), helmikuu 1978, jossa käytetään 1-bittistä versiota.
  • IEN 28 (Draft Internetwork Protocol Description Version 2), helmikuu 1978 kuvaa IPv2-version.
  • IEN 41 (Internetwork Protocol Specification Version 4), kesäkuu 1978 kuvaa ensimmäisen version, jota kutsutaan nimellä IPv4. IP-otsikko eroaa modernista IPv4-otsikosta.
  • IEN 44 (Latest Header Formats), kesäkuu 1978, kuvaa toisen version IPv4:stä, joka myös eroaa modernista.
  • IEN 54 (Internetwork Protocol Specification Version 4), syyskuu 1978 on ensimmäinen versio IPv4:stä, jossa on käytössä myöhemmin standardoitava versio RFC 760.

Jo pitkään on odotettu uudemman IPv6-version korvaavan nykyinen versio IPv4, mutta toistaiseksi IPv6:n käyttö on vähäistä, vaikka se on saatavissa useimmille tietokoneille. Tärkeimpänä uudistuksena IPv6-versiossa on osoitteiden pidentäminen, jolloin osoitettavia tietokoneita tai laitteita voi olla paljon nykyistä neljää miljardia enemmän. Tarvetta siirtyä käyttämään sitä on vähentänyt mm. se, että osoitteenmuunnosratkaisut ovat auttaneet osoitteiden riittävyydessä. IPv6-tietoliikenne ei ole käsiteltävissä sellaisilla tietokoneilla tai reitittimillä, jotka tukevat vain IPv4:ää.

IP-protokolla määritellään RFC-dokumenteissa

IPv4:n vanhentuneita ominaisuuksia on kuvattu dokumentissa RFC 6814: muun muassa kokeelliseksi jääneitä ominaisuuksia on dokumentin myötä merkitty vanhentuneiksi.

Vanhentuneita IP-versioita:

IP-pakettiMuokkaa

IP-paketti on IP-verkossa käytettävä verkkopaketti ja protokollan perusyksikkö. Kaikki Internetissä liikennöitävä tieto pakataan IP-paketteihin, joita Internetin reitittimet reitittävät perustuen reititysprotokollien välittämään tietoon IP-osoitteiden sijaintipaikoista Internetissä ja lyhyimmistä reiteistä näiden välillä.

IP-paketit toimitetaan perille IP-osoitteiden perusteella. IP-osoite on tavallisesti numerosarja kuten esimerkiksi: "192.168.1.1" (IPv4) tai 2002:a00::260:1dff:fe22:5a85/64 (IPv6). Verkkotunnuksien muuttamisesta IP-osoitteiksi vastaa DNS-järjestelmä.

IP-paketin omissa otsakkeissa tärkein tieto on kohdeosoite. Se on itse asiassa ainoa tieto koko IP-paketissa (mukaan lukien sisimmät otsakkeet), jota pakettia kuljettavat reitittimet yleensä tutkivat. Tästä syystä IP-osoitteen väärentäminen on useimmiten helppoa. Vastaanottajaa taas useimmiten kiinnostaa eniten lähdeosoite, johon hän lähettää vastauksensa.

IPv4-paketin maksimikoko on 65 535 tavua (RFC 791).[4]

Useimmiten liikennöivät koneet pyrkivät käyttämään suurinta mahdollista 2. tason verkkotekniikoille sopivaa pakettikokoa, joka on yleisesti n. 1 500 tavua tai jopa vain 500 tavua. Mikäli koneet lähettävät sitä suurempia paketteja, joutuu liian ahtaan verkon reunalla oleva laite lohkomaan tai paloittelemaan paketit pienempiin osiin (engl. fragment, ks. IP-fragmentaatio).

Jottei hidastavaa lohkomista tapahtuisi, liikennöivät koneet pyrkivät tunnistamaan ahtaimman verkon, jota väliltä löytyy (RFC 1191).

IP-protokollatMuokkaa

IP-paketissa kuljetettavat protokollat on numeroitu. Protokollan numerosta vastaanottaja tietää, mitä IP-paketin sisällä on. Yleisimpiä protokollia ovat

 

IPv4-pakettiMuokkaa

IP-paketti koostuu pakollisista otsikkotiedoista ja data-osiosta:

+ 0 - 3 4 - 7 8 - 15 16 - 18 19 - 31
0 versio otsikon pituus palveluluokka kokonaispituus
32 fragmenttitunnus liput fragmentin paikka
64 elinaika protokollan numero otsikon tarkistussumma
96 lähdeosoite
128 kohdeosoite
160 Optiot
192  
Data
 

Versio

Ilmoittaa protokollan versionumeron, tässä tapauksessa 4 eli binäärijärjestelmällä ilmoitettuna 0100.

Otsikon pituus (IHL, Internet header length)

Ilmoittaa IP-otsikon pituuden 32-bittisinä sanoina. Data-osiota ei lasketa tähän mukaan. Jos optioita ei käytetä niin kentän arvo on 5.

Palveluluokka (TOS, Type of service)

Ilmoittaa toivomuksen palveluluokasta. Alkuperäisessä määrittelyssä RFC791:ssä ensimmäiset kolme bittiä (precedence) määriteltiin liikenteen luokitteluun ja merkkaukseen. Seuraavat kolme bittiä sisältävät toivomuksen palvelulaadusta. Kaksi viimeistä bittiä jätettiin tulevia tarpeita varten. Nykyään TOS-kenttää käytetään DiffServ:iä ja ECN:ää varten.

Kokonaispituus

Ilmoittaa IP-paketin kokonaispituuden (otsikko + data) okteteissa eli kahdeksan bitin mittaisissa tavuissa.

Fragmenttitunnus

Ilmoittaa paloittelutunnuksen, jos dataa on jouduttu lohkomaan matkan varrella. Samaan alkuperäiseen data-osioon kuuluvat palaset saavat saman tunnuksen, jotta kokoaminen onnistuisi.

Liput

Ensimmäinen bitti näistä on varattu ja sen täytyy olla aina 0. Toinen bitti ilmaisee saako pakettia paloitella; saa, jos ja vain jos se on arvossa 1. Jäljelle jäänyt bitti ilmaisee onko alun perin paloitellun paketin tapauksessa tulossa vielä lisää palasia; arvo 1 ilmaisee, että lisää palasia on tulossa ja 0 paketin olevan viimeinen palanen.

Fragmentin paikka

Ilmoittaa mihin kohtaan kokonaisuudesta mikin paloitellun paketin palanen kuuluu. Ensimmäinen palanen saa tähän kenttään arvon 0, joka tarkoittaa paloittelun aloittamista data-kentän alusta. Lailliset paketit on paloiteltava 64-bitin monikertojen kohdilta.

Paketin elinaika (TTL, Time to live)

Ilmoittaa paketin elinajan. Alun perin kenttä ilmoitti paketin elinajan sekunteina mutta nykyään kenttä on ns. hyppylaskuri. Kentän suurin mahdollinen arvo on 255 eli kaikki kahdeksan bittiä ykkösiä. Arvoa vähennetään aina yhdellä sen kulkiessa reitittimen läpi. Kun elinajan arvo on 0, paketin vastaanottava reitin pudottaa sen liikenteestä ja lähettää normaalisti lähettäjäasemalle ICMP time exeeded -virheilmoituksen lähetyksen epäonnistumisesta.

Protokolla

Ilmoittaa seuraavan kerroksen protokollan, jonka paketti on IP-paketin data-osiossa. Esimerkiksi:

Tarkistussumma

Ilmoittaa otsikon tarkistussumman. Tarkistussummaa tarvitaan, jotta voidaan havaita onko IP-paketin otsikko muuttunut matkalla kohdeasemaan, joka saattaa olla erittäinkin kriittistä yhteyden kannalta. Data-osiota ei lasketa tarkistuksessa mukaan ja sen oikeellisuuden tarkistus täytyy hoitaa ylemmän tason protokollalla.

Lähdeosoite

Ilmoittaa paketin lähettävän verkkosovittimen 32-bittisen IPv4 osoitteen. IP-osoitteen väärentäminen on käytännössä niinkin helppoa, että lähettäjä asettaa tämän kohdan otsikosta itse. Ongelmia saattaa tosin ilmentyä reitityksessä kohdeasemaan mutta sekin on suhteellisen helposti ratkaistava ongelma.

Kohdeosoite

Ilmoittaa paketin kohteena olevan verkkosovittimen 32-bittisen IP-osoitteen.

Optiot

Ilmoittaa paketin optiot jos niitä on. Optioita käytetään nykyisin erittäin harvoin ja enimmäkseen ne ovatkin krakkerien suosiossa sillä niillä voidaan muun muassa manipuloida paketin reititystä. Mikäli optiot jäävät vajaaksi 32-bitin monikerrasta täytyy perään lisätä täytettä, koska IP-otsikon täytyy olla 32-bitin monikerran kokoinen.

Data

Sisältää luonnollisesti IP-paketin varsinaisen datan, joka yleensä alkaa seuraavan tason protokollan otsikolla.

Katso myösMuokkaa

LähteetMuokkaa

  1. Lyhenneluettelo 07.01.2013. Kotimaisten kielten keskus. Viitattu 16.3.2013.
  2. IPv5 was named ST (Internet Stream Protocol) ipv4mall.com. (englanniksi)
  3. Internet Protocol Specifications for IPv7 and IPv8 Address Classes tools.ietf.org. Viitattu 23.5.2019.
  4. Fall, Kevin R. & Stevens, W. Richard: TCP/IP Illustrated, Volume. Second Edition. Addison-Wesley. ISBN 978-0-321-33631-6.

Aiheesta muuallaMuokkaa