IP protokolas; IPv4; IPv6
VYTAUTO DIDŽIOJO UNIVERSITETAS
INFORMATIKOS FAKULTETAS
IP protokolas; IPv4; IPv6
Referatas
Priėmė: dėst. R. Valterytė
2005 03 31
Atliko: stud. V. Dzedulionis
2005 03 31
Kaunas, 2005
TURINYS
ĮVADAS……………………
…………………….2
1. IP
PROTOKOLAS………………….
……………….3
1.1. IP protokolo struktūra
(IPv4)……………………
………4
2.
IPv6……………………
……………………..6
2.1 IPv6 sukūrimo motyvai
……………………..
……….6
2.2 IPv6 pagrindinės
savybės…………………..
…………7
2.3 IPv6 protokolo paketo struktūra
……………………..
….9
LITERATŪRA………………….
…………………11
ĮVADAS
Interneto protokolai yra populiariausi atvirųjų tinklų protokolai,
kadangi jie gali būti labai sėkmingai taikomi tiek vietiniuose tinkluose,
tiek globaliniuose tinkluose. Interneto protokolai tai ryšio taisyklių
rinkiniai. Labiausiai žinomi protokolai yra šie: Transmission Control
Protocol (TCP) ir Internet Protocol (IP).
Interneto protokolai buvo sukurti aštuntojo dešimtmečio viduryje, kai
Gynybos perspektyviųjų tyrimų agentūra DARPA nusprendė sukurti paketų
perdavimu paremtą tinklą, per kurį galėtų susijungti pastate esantys
kompiuteriai. To pasekoje buvo sukurtas Interneto protokolų rinkinys
(TCP/IP). Jis buvo užbaigtas aštuntojo dešimtmečio pabaigoje.
Nepraėjus daug laiko TCP/IP buvo panaudotas UNIX operacinėje sistemoje.
Tai padarė TCP/IP protokolą pagrindiniu interneto protokolu.
Dabar TCP/IP protokolų stekas tapo žinomiausia sudėtinių tinklų kūrimo
priemonė. Iki 1996 metų populiariausias buvo kompanijos Novell IPX/SPX
protokolų stekas, tačiau vėliau jis prarado populiarumą ir naujuoju lyderiu
tapo TCP/IP.
Šiame referate bbus aptartas IP protokolas ir jo esamos populiariausios
versijos (IPv4 ir IPv6).
1. IP Protokolas
Interneto protokolas (taisyklių rinkinys), reglamentuojantis
kompiuterių adresavimą, duomenų skaidymą į paketus prieš siunčiant ir
surinkimą juos atsiuntus, jų maršrutų parinkimą. Dabar daugiausia paplitusi
ketvirtoji versija IPv4, naudojanti 32 bitų IIP adresus. Tikimasi, kad ją
pakeis šeštoji 128 bitų versija IPv6. IP protokolas kartu su TCP protokolu
sudaro TCP/IP protokolą, kuris yra pagrindinis interneto protokolas. IP
protokolas buvo sukurtas, tam kad būtų galima sujungti skirtingų kompanijų
pagamintus LAN ir komutuojamų paketų tinklus.
Internetinis protokolas (IP) yra TCP/IP protokolų rinkinio
protokolas adresuojantis ir maršrutizuojantis duomenis, jis atsako už vieno
duomenų paketo gabenimą iš mazgo į kitą mazgą. IP protokolas paskirsto
duomenų maršrutą nuo vieno kabineto iki visos firmos tinklo, tada į
regioninius tinklus, o galiausiai – į globalų Internetą. Visi protokolai iš
TCP/IP protokolų rinkinio (išskyrus ARP ir RARP) naudoja IP protokolą.
Duomenų sėkmingas persiuntimas įvykdomas vykdant adresavimą. IP protokolo
standartas tiksliai apibrėžia, kad kiekvienas pagrindinis kompiuteris
(host) turi unikalų 32 bitų numerį (IPv4), kuris vadinamas pagrindinio
kompiuterio tarptinklinio protokolo adresu (Internet Protocol address),
kuris ddažnai trumpinamas IP adresas (IP address) arba interneto adresas
(Internet address) . Kiekvienas paketas, siunčiamas internetu, turi
siuntėjo (source) 32 bitų IP adresą ir gavėjo (destination) adresą. IP
priskiria vietinius IP adresus fiziniams tinklo adresams, suteikia adresus,
kuriais naudojasi įvairūs maršrutizatoriai.
Dabar populiariausia IP protokolo versija yra 4 (IPv4).
Dabartinė IP versija prisitaikė prie pasikeitimų aparatinės dalies
technologijoje. IP protokolas buvo sukurtas labai senai, tuomet vietinių
tinklų technologijos nebuvo dar tokios populiarios. Pradinis sumanymas ir
toliau dirbo gerai per kelias aparatinės dalies technologijų kartas. TP
dabar dirba tinkluose, kurių ggreitis yra keliomis eilėmis didesnis, nei
tinklų kurie buvo naudojami, kai protokolas buvo sukurtas. Dar daugiau, kai
kurie modernūs tinklai siūlo freimo dydį, kuris yra žymiai didesnis, nei
galimas freimo dydis, kai TP buvo sukurtas.
1.1 IP protokolo paketo struktūra (IPv4)
IP deitagrama sudaryta iš antraštės ir tekstinės dalies.
Antraštė turi fiksuotą 20 baitų dalį ir kintamo ilgio nebūtinąją dalį.
32 bitai
0 4 8
6 9 4
|Versija|IHL |Paslaugos tipas |Bendras ilgis |
|Identifikacija |DF |MF |Fragmento poslinkis|
|Gyvavimo trukmė |Protokolas |Antraštės kontrolinė suma |
| Šaltinio adresas |
|Tikslo adresas |
|Nebūtinoji dalis |Padding |
20 bitų
1 pav. IP paketo antraštės struktūra
Versijos laukas (4 bitai) leidžia perduoti deitagramas iš kompiuterių,
naudojančių senesnes IP protokolo versijas.
IHL (4 bitai) – ilgis 32 bitų žodžiais. Mažiausia yra 5 žodžiai
(20 baitų), daugiausia – 15 žodžių (60 baitų). Nebūtinoji dalis (40 baitų).
Paslaugos tipo laukas susideda iš keleto laukų. Prioriteto
laukas – 3 bitai: 0 – normalus paketas (mažiausias prioritetas), 7 – tinklo
valdymo paketas (aukščiausias prioritetas). Be jų yra dar trys vėliaviniai
bitai: D (Delay), T (Throughput), R (Reliability). Jais nurodoma, kas yra
svarbiausia – vėlinimas, pralaida, patikimumas. Maršrutizatorius pagal tai
gali parinkti paketo perdavimo kelią. Likusieji 2 bitai nenaudojami.
Bendras ilgis (2 baitai) – viso paketo ilgis (antraštė +
duomenys).
Identifikacijos laukas. Naudojamas fragmentuotų paketų
atpažinimui. Visi deitagramos fragmentai turi tą pačią identifikacijos
reikšmę.
DF (1 bitas) Don’t Fragment. Bitas uždraudžia fragmentuoti
paketą.
MF (1 bitas) More Fragments. Jis informuoja, kad šis paketas yra
tarpinis (ne paskutinis). Likęs bitas rezervuotas.
Fragmento numeris (Fragment offset). Jis užima 13 bitų ir nusako
paketo duomenų poslinkį baitais tarp bendro pradinio sufragmentuoto duomenų
lauko pradžios ir esamo paketo duomenų lauko pradžios. Naudojamas
surenkant/išskaidant paketų fragmentus perduodant juos tarp tinklų su
skirtingo dydžio duomenų perdavimo vienetais. Poslinkis turi būti
kartotinis 8.
Egzistavimo trukmė (1 baitas). Didžiausia trukmė – 255 s.
Egzistavimo trukmė kiekviename maršrutizatoriuje sumažinama priklausomai
nuo eilės dydžio. Kaskart kai pereinama per maršrutizatorių egzistavimo
trukmė sumažinama vienetu. Prieš pasiekiant adresatą, kai trukmė tampa lygi
nuliui, paketas sunaikinamas.
Protokolo laukas užima vieną baitą ir nurodo, kokiam
aukštesniojo lygio protokolui priklauso duomenų lauko skiltyje patalpinta
informacija (pvz., tai gali būti TCP protokolo segmentai, UDP deitagramos,
ICMP ar OSPF paketai).
Antraštės kontrolinė suma užima 2 baitus ir yra perskaičiuojama
kiekviename maršrutizatoriuje, kadangi bent vieno lauko reikšmė pasikeičia
( juk kinta gyvavimo trukmė). Jei kontrolinė suma neteisinga, paketas
atmetamas.
Adresų laukuose yra tinklo numeris ir kompiuterio tinkle –
numeris.
Nebūtinoji dalis (Options). Ši dalis paprastai nereikalinga
normaliam duomenų perdavimui. Ji padaryta tam, kad naujesnės protokolo
versijos galėtų patalpinti reikalingą informaciją. Taip pat
eksperimentuojama, tikrinamos naujos idėjos. Kadangi laukelių skaičius
nebūtinojoje dalyje nebūtinai yra 32, tai dar naudojamas paketo antraštės
išlyginimas, ppridedant daugiau nulinių skilčių.
2. IPv6
IPv6 – tai nauja interneto protokolo (IP) versija, sukurta tam,
kad pakeistų dabar naudojamą IPv4 protokolą ir išspręstų su juo susijusias
problemas.
Naujoji versija gerokai patobulinta tokiose srityse, kaip:
saugumas, mobilumas, paslaugos kokybės užtikrinimas, tinklo architektūros
bei marštutizavimo dinamiškumas. Todėl IPv6 geriausiai pritaikytas dažnai
kintančių parametrų tinklams.
Kad kuo sklandžiau pereiti nuo IPv4 prie IPv6 buvo sugalvotas ne
vienas mechanizmas, kurie yra nuolat tobulinami. Tikimasi, kad IPv6 po
truputį pakeis IPv4, nors abu protokolai veiks kartu visą perėjimo
laikotarpį.
Lyginant su IPv4, naujoji versija suteikia žymiai didesnę adresų
erdvę (adreso ilgis padidėjo nuo 32 bitų iki 128). IPv6 adresai užrašomi
nauja forma: tai šešioliktaine skaičiavimo sistema koduojami adresai,
atrodantys maždaug taip: 2001:08e0:7d83:7d88:4f84:4c74:1d83:22b4. Prefiksai
nurodomi CIDR formate, pvz: /64.
2.1 IPv6 sukūrimo motyvai
Pirmoji motyvacija IPv6 sukūrimui kilo iš ribotos pačių adresų
erdvės. Kuriant IP protokolą, egzistavo tik keli tinklai su keletu
kompiuterių. IP kūrėjai nusprendė adresams naudoti 32 bitus, tai leido
internetui turėti virš milijono tinklų. Tačiau dabartinis internetas auga
eksponentiškai, padvigubėdamas mažiau kaip per metus. Dabartiniu augimo
tempu, kiekvienas galimas tinklo prefiksas greitai bus panaudotas ir
didesnis augimas bus negalimas.
Antroji motyvacija IP protokolo pasikeitimui kilo iš naujų
interneto taikomųjų programų. Programos, siuntinėjančios audio ir video
duomenis turi pristatyti juos reguliariais intervalais. Išlaikant tokią
informacijos tėkmę per internetą be pertraukimų, IP protokolas turi galėti
dažnai
keisti maršrutus. Nekreipiant dėmesio į tai, kad dabartinio TP
paketo antraštė turi lauką, kuris gali būti naudojamas aptarnavimo tipui
aprašyti, protokolas nenustato aptarnavimo tipo, kuris galėtų būti
naudojamas audio ir video perdavimui realiuoju laiku.
2.2 IPv6 pagrindinės savybės
IPv6 išlaikė daug savybių, kurios IPv4 padarė tokiu populiariu.
IPv6 yra orientuotas į darbą be sujungimo – kiekvienas paketas turi
paskirties adresą ir maršrutas jam yra parenkamas nepriklausomai. Kaip ir
IPv4 paketo antraštė turi maksimalų sekančių perdavimų skaičių iki tol,
kol bus sunaikintas. Ir dar daugiau IPv4 savybių išlaiko naujasis
protokolas. Nepaisant pagrindinių koncepcijų išlaikymo, IPv6 keičia visas
detales. Pavyzdžiui, IPv6 naudoja didelius adresus ir visiškai naują paketo
antraštės formatą. Pagaliau IPv6 naudoja eilę fiksuoto dydžio antraščių
pasirenkamos informacijos valdymui, vietoje vienos antraštės su kintamo
ilgio pasirinkimo laukais.
Naujos IPv6 savybės gali būti sugrupuotos į penkias pagrindines
kategorijas:
Adreso dydis. Vietoje 32 bitų kiekvienas IPv6 adresas turi 128
bitus. Gaunama adresinė erdvė yra pakankamai didelė aprūpinti pastovų
interneto augimą daugelį metų.
Antraštės formatas. IPv6 paketo antraštė yra visiškai skirtinga
nuo IPv4 antraštės. Beveik kiekvienas laukas antraštėje buvo pakeistas, o
kai kkurie pakeitė vietą.
Plėtinio antraštės. Priešingai nei IPv4, kuris naudoja vienintelį
antraštės formatą visiems paketams, IPv6 šifruoja informaciją į atskiras
antraštes. Antraštė susideda iš pagrindinės IPv6 antraštės, po kurios yra
kelios (arba nėra iš viso) plėtinio antraštės, po kurių seka duomenys.
Audio ir vvideo priemonės. IPv6 turi mechanizmą, kuris leidžia
siuntėjui ir gavėjui nustatyti aukštos kokybės kelią tinkle ir susieti
paketus su šiuo keliu. Nežiūrint į tai, kad mechanizmas yra skirtas naudoti
su audio ir video programomis, kurios reikalauja aukšto našumo garantijų,
mechanizmas taip pat gali būti naudojamas susieti paketus su žemos kainos
keliais.
Išplečiamas protokolas. Priešingai IPv4, IPv6 nenustato visų
galimų protokolo savybių. Vietoje to, projektuotojai pasiūlė schemą, kuri
leidžia siuntėjui pridėti papildomos informacijos į paketą. Išplėtimo
schema daro IPv6 lankstesniu, nei IPv4 ir reiškia, kad naujos savybės gali
būti pridėtos į projektą, jei reikia.
2.3 IPv6 protokolo paketo struktūra
Paketas susideda iš pagrindinės antraštės, po kurios eina nulis
arba daugiau plėtinio antraščių po kurių eina duomenys.
IPv6 pagrindinė antraštė nors ir yra du kart didesnė už IPv4
antraštę, tačiau turi mažiau informacijos. DDaugiausia vietos antraštėje yra
atiduota dviem laukam, kurie identifikuoja siuntėją ir gavėją. Kaip ir IPv4
šaltinio adreso laukas nurodo siuntėją ir tikslo adreso laukas
identifikuoja gavėją. Kiekvienas adresas užima šešiolika baitų, keturis
kartus daugiau, nei IPv4 adresas.
Prie šaltinio ir paskirties adresų pagrindinė antraštė papildomai
turi penkis laukus. Laukas VERS identifikuoja protokolą kaip 6 versijos.
Laukas PAYLOAD LENGTH atitinka IPv4 paketo ilgio lauką. Priešingai IPv4
PAYLOAD LENGTH nurodo tik nešamų duomenų ilgį; antraščių ilgis
neįskaitomas. Laukas HOP LIMIT atitinka IPv4 lauką TIME-TO-LIVE. IPv6
interpretuoja HOP LIMIT griežtai – paketas bbus sunaikintas, jei šio lauko
reikšmė taps nulis prieš paketui ateinant į paskirties tašką.
0 4
16 24 31
|VERSION |FLOW LABEL |
|(Versija) | |
|PAYLOAD LENGTH (Bendras ilgis) |NEXT HEADER |HOP LIMIT |
| | |(gyvavimo |
| | |trukmė) |
|SOURCE ADDRESS (Siuntėjo adresas) |
|DESTINATION ADDRESS (Tikslo adresas) |
2 pav. IPv6 paketo antraštės struktūra
Laukas FLOW LABEL yra skirtas naudoti su naujomis programomis,
kurios reikalauja našumo garantijų. Žymė gali būti naudojama susieti paketą
su atitinkamu tinklo keliu. Žymė yra padalinta į dvi dalis. Viena naudojama
nustatyti informacijos mainų klasę, o kita naudojama nurodyti specifinį
kelią. Informacijos mainų klasė nustato pagrindines savybes, kurių paketui
reikia.
Laukas NEXT HEADER yra laukas, kuris nurodo einamosios antraštės
tipą, pro kurią eina informacija. Pavyzdžiui, jei paketas turi plėtinio
antraštę, laukas NEXT HEADER nurodo jos tipą. Jei plėtinio antraštės nėra,
laukas NEXT HEADER nurodo paketo nešamų duomenų tipą. Kadangi standartas
nustato unikalią reikšmę kiekvienam galimam antraštės tipui, niekada nėra
abejonių apie lauko NEXT HEADER interpretavimą. Gavėjas naudoja NEXT HEADER
lauką kiekvienoje antraštėje nustatymui kas seka iš paskos. Jei reikšmė
lauke atitinka tipą, naudojamą duomenims, gavėjas perduoda paketą į
programinės įrangos modulį, kuris valdo duomenis. Jei reikšmė NEXT HEADER
lauke atitinka kitą antraštę, IP protokolo programinė įranga nagrinėja
antraštę ir interpretuoja jos turinį. Kai baigia su antrašte, IP protokolas
naudoja NEXT HEADER lauką nustatyti duomenys ar kkita antraštė eina toliau.
Kai kurių tipų antraštės turi fiksuotą dydį, ir IPv6 programinė
įranga žino, kur prasideda atitinkama antraštė ar sekantis elementas.
Pavyzdžiui, pagrindinė antraštė turi fiksuotą dydį keturiasdešimt baitų.
Kai kurios antraštės neturi fiksuoto ilgio. Tokiais atvejais antraštė turi
turėti pakankamai informacijos, leidžiančios IPv6 nustatyti, kur antraštė
pasibaigia.
2.4 IPv6 adresavimas
IPv6 priskiria unikalų adresą kiekvienam sujungimui tarp
kompiuterio ir fizinio tinklo. Taigi, jei kompiuteris jungia tris fizinius
tinklus, tai jis yra pažymėtas trimis adresais. Taip pat panašiai IPv4,
IPv6 atskiria kiekvieną tokį adresą į prefiksą, kuris identifikuoja tinklą,
ir sufiksą, kuris identifikuoja individualų kompiuterį tinkle.
Nepaisant panašumo, IPv6 adresavimas labai skiriasi nuo IPv4
adresavimo. Visų pirma, visos adreso detalės yra skirtingos. Antra, IPv6
nustato rinkinį specialių adresų, kurie visiškai skiriasi nuo IPv4
specialių adresų. IPv6 neturi specialių adresų transliavimui duotu tinklu.
Kiekvienas IPv6 adresas yra vieno iš trijų pagrindinių tipų:
Vienatipis (unicast). Adresas nurodo vienintelį kompiuterį. Paketas,
pasiųstas šiuo adresu yra nukreipiama trumpiausiu keliu į kompiuterį.
Daugiatipis (multicast). Adresas atitinka kompiuterių grupę bendru atveju
daugelyje vietų. Narystė grupėje gali pasikeisti bet kuriuo metu. Kai
paketas yra pasiunčiamas tokiu adresu, IPv6 pristato vieną paketo kopiją
kiekvienam grupės nariui.
Grupinis (cluster). Adresas nurodo grupę kompiuterių, kurie bendrai naudoja
adreso prefiksą (pav., visi yra vienoje vietoje). Paketas, pasiųstas tokiu
adresu, nukreipiamas trumpiausiu keliu ir tada pristatomas tiksliai vienam
iš kompiuterių (pav., kompiuteriui, kuris yyra arčiausiai siuntėjui).
LITERATŪRA
1.
http://www.cisco.com/en/US/tech/tk827/tk369/technologies_white_paper0918
6a00800d6979.shtml [žiūrėta 2005/03/30].
2. Liudvikas Kazlauskas Kompiuterių tinklai -1 dalis. Šiauliai – Šiaulių
universiteto leidykla, 2003
3. http://www.webopedia.com/TERM/I/IP.htm [žiūrėta 2005/03/28].
4. http://www.protocols.com/pbook/tcpip1.htm [žiūrėta 2005/03/28].
5. http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/ip.htm
[žiūrėta 2005/03/30].
6. http://techno.su.lt/~bernotas/kt [žiūrėta 2005/03/28].
7. http://www.ipv6.lt [žiūrėta 2005/03/28].
8. http://playground.sun.com/pub/ipng/html/ipng-main.html [žiūrėta
2005/03/28].
9. http://www.yale.edu/pclt/COMM/TCPIP.HTM [žiūrėta 2005/03/28].