RFC 791 - Internet Protocol - Summary

RFC 791 kirjoitti vuonna 1981 DARPA (Defense Advanced Research Projects Agency) Information Sciences Institute University of Southern California. Asiakirja on jaettu kolmeen osaan: Johdanto, yleiskatsaus ja eritelmät. Vaikka johdannossa ja yleiskatsauksessa on erittäin hyviä tietoja, tässä tiivistelmässä keskitytään eritelmiin, mutta siinä korostetaan yleiskatsauksen joitakin kohtia.

Otsikko

Kuten nähdään Frames ja Packets artikkeli tällä sivustolla IP-otsake näyttää:

IPv4 Header (32 bits)
Starting Byte Byte Byte Byte Byte
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
0 Version IHL (header Len) Type Of Server (TOS) Total Length
4 Identification IP Flag Fragment Offset
8 Time To Line (TTL) Protocol Header Checksum
12 Source Address
16 Destination Address
20 IP Option (Variable Length, Optional, not common)
Otsikkotiedot

Kuten näette, datagrammi sisältää useita elementtejä. Kunkin elementin tehtävä on:

  • Versio - RFC 791 viittaa erityisesti versioon 4
  • Internet Header Length (IHL) - Informoi takaisin järjestelmiä pituus otsikko ja kun tiedot alkavat
  • Palvelutyyppi - Tätä 8 bitin arvoa käytetään palvelun laatuun.
    • bit 0-2 on Precedence
      • 000 - Rutiini
      • 001 - Painopiste
      • SCR:n täyttämiseksi hyväksyttävä oma varallisuus yhteensä
      • 011 - Salama
      • 100 - Salaman ohitus
      • 101 - KRIITINEN/ECP
      • 110 - Internet-ohjaus
      • 111 - Verkkojen valvonta
    • bitti 3 on normaali viive (0) tai pieni viive (1)
    • bitti 4 on normaali syöttö (0) tai korkea syöttö (1)
    • bitti 5 on normaali luotettavuus (0) tai korkea luotettavuus (1)
    • Kun RFC 791 oli kirjoitettu bittiä 6 ja 7 jossa varattiin tulevaa käyttöä varten
  • Kokonaispituus - Onko datagrammin kokonaispituus tavuina enintään 65535 oktettia. Järjestelmän on kuitenkin voitava hyväksyä vähintään 567 oktettia.
  • Tunnistus - Käytetään sirpaleiden datagrammien kokoamisessa
  • Liput - käytetään datagrammien pirstaleisuuden kanssa
    • bitti 0 on varattu ja sen on oltava 0
    • bitti 1, jos asetettu nollaan, mahdollistaa datagrammin yhdistämisen. Jos asetus on 1, datagrammi ei voi olla hajanainen
    • bitti 2, jos asetettu nollaan, osoittaa viimeisen särötyksen. Jos yksikin sirpale on tulossa
  • Fragment Offset - Kertoo datagrammifragementaatiota suorittavat järjestelmät, joissa se voi sirpaloitua
  • Aikaa elää - Tieto siitä, kuinka kauan datagrammi voi jatkua verkossa. Jos se saavuttaa 0, datagrammi on hävitettävä
  • Protokolla - Osoittaa seuraavan tason protokolla käytetään datagrammi
  • Otsikko Checksum - validoi datagrammin jokaisessa pisteessä verkon kautta
  • Lähdeosoite - 32 bittiä
  • Kohdeosoite - 32 bittiä
  • Vaihtoehdot On olemassa paljon IPv4 vaihtoehtoja, joita voidaan soveltaa tai ei sovelleta. Lisätietoja saa koko RFC erityisesti sivulta 15 - 22
  • Otsikon lopussa datagrammi on pehmustettu 0: lla, kunnes se päättyy 32 bitin rajapintaan
Yhteenveto

Kuten kaikki RFC:t, tämä RFC edellyttää, että kaikki IP-datagrammin täytäntöönpanevat indivduaalit vastaavat standardia siten, että kaikki osapuolet voivat olla vuorovaikutuksessa erilaisten järjestelmien datagrammin kanssa. Luvussa 3 IPv4 käsitellään skeema käsitellään pituus samoin kuin edellä tiivistetyt toiminnot. IPv4:n osalta RFC määrittelee luokan A, B ja C verkkokoot. Luokka A jakaa 7 bittiä verkkoon ja 24 bittiä isäntille. Luokka B jakaa 14 bittiä verkkoon ja 16 bittiä isännille. Luokka C jakaa 21 bittiä verkkoon ja 8 bittiä isännille. Ohjelmien käsittelyn lisäksi RFC:ssä käsitellään yksityiskohtaisesti datagrammien hajanaisuuden ja uudelleen kokoamisen erityistehtäviä. Määritetään, että jotkin vaihtoehdot voivat olla mukana, jos paketti on pirstaleinen.

Kun viitataan aikaisempaan IP-datagrammin täytäntöönpanoa koskevaan kertomukseen, RFC antaa myös esimerkkejä siitä, mitä olisi esitettävä ylemmän tason protokollille konfiguraatioelementeille, jotta helpotettaisiin järjestelmien välistä viestintää ja konfiguraatiota. Nämä elemenetit ovat samoja elementtejä, joita käytetään datagrammin rakentamiseen.