IPv4

Од Википедија, слободната енциклопедија
Прејди на: содржини, барај
Петте нивоа на TCP/IP моделот
5. Апликациско ниво (Application layer)

DHCP • FTP • IMAP4 • POP3 • SIP • SMTP • SSH • BGP •

4. Транспортно ниво (Transport layer)

UDP • TCP • DCCP • SCTP • RSVP • ECN

3. Мрежно ниво (Network layer)

IP (IPv4 • IPv6) • ICMP • IGMP • RSVP • IPsec

2. Податочно ниво (Data Link Layer)

ATM • DTM • Ethernet • FDDI • Frame Relay • GPRS • PPP • ARP • RARP • L2TP • PPTP

1. Физичко ниво (Physical layer)

Етернет • ISDN • Модеми • PLC • SONET/SDH • G.709 • Wi-Fi •

Интернет протокол верзија 4 е четврта итерација на Интернет Протоколот (IP) и прва верзија на овој протокол која е пошироко прифатена и имплементирана. IPv4 е доминантен протокол на мрежно ниво на Интернет. Со исклучок на IPv6, единствениот протокол на Интернет.

Овој протокол е опишан во IETF RFC 791 (Септември 1981) а претходно во RFC 760 (Јануари 1980). Департментот за одбрана на Соединетите Американски Држави го има прифатено и адаптирано овој стандард како MIL-STD-1777.

Целта на IP е да обезбеди систем на адресирање на компјутерите во мрежата со доделување на единствен идентификациски број.

IP датаграмот се состои од заглавие и информационо поле. Заглавието кај IPv4 е составено од фиксен дел со должина 20 бајти и опционен дел со променлива должина. Секој бајт од ваквата структура се праќа во мрежата во редослед од MSB (Most significant bit) кон LSB (Least significant bit) бит, па по тој редослед и се прима во дестинационата машина.

Кога не се спомнува верзијата на IP протоколот секогаш се подразбира IPv4, која е доминантен тип на Интернет протокол денес. Во продолжение ќе ги анализираме одделните полиња кои се составен дел на заглавието на IP пакетот.

Полето верзија (Version) укажува на верзијата на протоколот кој го генерирал тој датаграм (може да биде верзија 4 или 6, т.е. IPv4 или IPv6).
Бидејќи заглавието може да има променлива должина (зависно од тоа дали има и опции и колку), IHL (Internet Header Length) полето ја покажува должината на заглавието, изразена во 32 битни зборови (т.е. 1 збор = 4 бајти). Минималната должина е 5 збора (или 5 збора x 4 бајти = 20 бајти), што е случајот кога не е присутно опционо поле, а максималната е 60 зборови.

Полето тип на сервис (Type of Service – ToS) овозможува хостот да и каже на подмрежата каков сервис бара од неа, во смисла на доцнење, надежност и брзина на пренос. Овие побарувања се различни за различни типови сервиси. На пример, за дигитализиран говор малото доцнење е многу побитно од точната испорака (загубите на пакети), бидејќи во говорот може да се толерира по некој загубен датаграм, но не и варијација во доцнењето. При File Transfer, безгрешната трансмисија е многу побитна од доцнењето. Самото ToS поле се состои од 3 битно Precedence поле, а наредните 3 бита ја носат информацијата за: Delay, Throught, и Reliability. Користејќи ги овие битови, рутерите донесуваат одлука за тоа дали тој датаграм ќе го проследат користејќи некој сателитски врска или пак некоја изнајмена линија со голем проток (во bit/sec). Денес, под default, во рутерите се игнорира ова поле ако не се специфицира поинаку. Кога нема различни побарувања за различни типови сервиси (говор, веб сурфање, e-mail итн.), тогаш станува збор за еднакви сервиси за сите апликации од страна на мрежата, што е познато како best-effort. Затоа, често пати може да се сретне дека Интернет денес е во основа best-effort мрежа.

Полето вкупна должина на пакетот (Total Length) ја дава вкупната должина на датаграмот. Следствено, бидејќи полето има 16 бити, максимална должина на еден датаграм е 65535 бајти (64 kB), т.е. должината може да биде од 0 до (216 -1).

Полето за идентификација на фрагмент (Fragment Identification) е потребно за да му овозможи на дестинациониот хост да изврши реасемблирање на помалите датаграми кои се фрагментирани некаде во мрежата, а притоа да не ги помеша со датаграмите кои припаѓале на некој друг поголем датаграм, наменет за иста дестинација, но кој потекнува од друг извор.

Полето знаменца (Flags) се состои од 3 бита од кои двата со најмало значење служат за контрола на фрагментацијата. Најмалку значајниот бит специфицира дали пакетот може да биде фрагментиран или не. Средниот бит специфицира дали пакетот е последен од серијата фрагментирани пакети или не. Третиот бит не е искористен.

Офсет на фрагментот (Fragment Offset) полето содржи информација за позицијата на фрагментираниот податок, кој се пренесува со IP пакетот, а е дел од еден датаграм, релативно во однос на почетокот на податоците во датаграмот. Оваа информација овозможува да се изврши правилна реконструкција на правилниот датаграм на приемната страна. Бидејќи полето се состои од 13 бити, можни се 8192 фрагменти по датаграм, но нивната вкупна должина не смее да надмине 64 kB.

Време на живот (Time to Live) полето е бројач со кој се ограничува животот на секој датаграм во мрежата. Повеќето рутери го идентификуваат ова поле како број на hop-ови кои му се дозволени на пакетот да ги помине во мрежата. Во секој рутер по патеката на пакетот вредноста на TTL полето се намалува за еден, независно од тоа колку датаграмот се задржал на линијата. Кога ќе стане 0, датаграмот се отфрла и рутерот кој го отфрлил праќа информација за тоа до изворот на пакетот. Ова поле оневозможува датаграмите бесконечно да шетаат низ мрежата, што лесно може да се случи ако рутерот на кој е поврзана дестинационата машина испадне од работа, така што тој датаграм бесцелно би патувал од рутер до рутер и непотребно би го оптоварувал сообраќајот.
Кога датаграмот е успешно и целосно примен во дестинацијата, IP нивото треба да знае на кој протокол над него да го проследи (на TCP, на UDP или пак до друг транспортен протокол). Таа информација ја носи тип на протокол (Protocol) полето.

Полето за контрола на грешка на заглавието (Header Checksum) служи за контрола на грешка само на IP заглавието. Битно е да се забележи дека ова поле од еден ист датаграм во секој рутер мора повторно да се пресметува, бидејќи најмалку едно поле од заглавието се менува во секој рутер (тоа е Time to Live полето) што зема доста процесирачко време.

IP адреса на изворот (Source Address) – ја дефинира IP адресата на изворот на датаграмот.

IP адреса на дестинацијата (Destination Address) – ја дефинира IP адресата на крајната дестинација, кон која е упатен IP пакетот.

Полето опции (Options) е предвидено за усовршување на протоколот, обезбедување на додатни сервиси како на крајниот корисник така и за потребите за одржување на самата мрежа. Со тоа што ова поле е опционо, се избегнува трајно алоцирање на бити во заглавието кои ретко би се користеле, а со тоа се намалува редундантната информација. Options полето е со променлива должина. Тоа почнува со код со кој се идентификува конкретната опција, потоа следи самата опциона информација.