Направо към съдържанието

Internet Protocol

от Уикипедия, свободната енциклопедия
(пренасочване от Интернет протокол)
Петслойният модел на TCP/IP
5. Приложен слой

DHCP · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · SIP · SMTP · SNMP · SSH · Telnet · RPC · RTP · RTCP · RTSP · TLS/SSL · SDP · SOAP · BGP · GTP · STUN · NTP · RIP · ...

4. Транспортен слой

TCP · UDP · DCCP · SCTP · RSVP · IGMP · ICMP · ICMPv6 · OSPF · ...

3. Мрежов слой

IP (IPv4 · IPv6) · IS-IS · IPsec · ARP · RARP · ...

2. Канален слой

802.11 · Wi-Fi · WiMAX · ATM · DTM · Token Ring · Ethernet · FDDI · Frame Relay · GPRS · EVDO · HSPA · HDLC · PPP · PPTP · L2TP · ... · ISDN

1. Физически слой

Ethernet physical layer · Modems · PLC · SONET/SDH · G.709 · OFDM · Optical Fiber · Coaxial Cable · Twisted Pair · ...

Internet Protocol (IP) е протокол за комуникация, който стои в основата на интернет.

Предназначението на протокола е да позволи адресация на информацията, която се изпраща по мрежата. На всеки хост в мрежата се дава уникален адрес (наречен IP адрес). ��огато се изпраща информация през мрежата, тя се разделя на малки пакети, наречени IP пакети. Към всеки пакет се прикрепя т. нар. хедър, който съдържа IP адреса на подателя и получателя и други служебни данни. С помощта на тези адреси компютрите, през които минава пакетът, решават какво да правят с него.

Протоколът не гарантира сигурното пристигане на информацията и няма корекция на грешки. IP се използва от транспортни протоколи като TCP и UDP.

Разработен от д-р Винт Сърф и д-р Робърт Кан като част от проект на Министерството на отбраната на САЩ, IP се използва за пръв път през 1969 г. в ARPANET.

Структура на IP пакет

[редактиране | редактиране на кода]

Всеки IP пакет съдържа:

  • номер на версия – 4 бита
  • информация дали пакетът е част от по-голямо количество данни, съответно:
    • DF (Don't fragment) – 1 бит
    • MF (More fragments) – 1 бит
    • Fragment-Offset – 1000000000000000000 bit
  • TTL – Time To Live или през колко хоста може да премине даден пакет, преди да се счита за загубен (всеки хост, през който преминава пакетът намалява стойността на това поле с 1) – 8 бита
  • идентификатор на ползващия транспортен протокол – 8 бита
  • IP адрес на подателя
  • IP адрес на получателя

През 2010 г. широко се използва версия 4 на протокола, при която IP адресите са 32-битови цели числа. За удобство един такъв IP адрес се записва като 4 осембитови десетични числа, разделени с точка. Решението IP адресите да се представят с десетични числа идва от факта, че повечето хора се чувстват по-комфортно, като използват десетични числа.

Например IPv4 адресът на Wikipedia се записва така:

208.80.152.2

Основният недостатък на протокола е, че броят на адресите, които могат да се запишат с 32 бита е недостатъчен. За справяне с този проблем са създадени редица механизми (например NAT), но те решават проблема само частично и временно.

През последните години тази версия на протокола започва да бъде измествана от по-новата версия 6.

Някои IP адреси имат по-специално предназначение – за осъществяване на мрежова връзка с текущия компютър или с други компютри в локалната мрежа. Специалните адреси са:

  • 10.0.0.0 ~ 10.255.255.255 – Предназначени за големи локални мрежи
  • 127.0.0.0 ~ 127.255.255.255 – Предназначени за свързване с текущия компютър
  • 172.16.0.0 ~ 172.31.255.255 – Предназначени за средноголеми локални мрежи
  • 192.168.0.0 ~ 192.168.255.255 – Предназначени за малки локални мрежи

През последните години тази версия на протокола започва да влиза в масова употреба. IP адресите от IPv6 са 128-битови числа. Тези IP адреси се представят като осем 16-битови цели числа, разделени с двоеточие. Допустимо е да се пропуснат нулите в старшите битове на всяко от числата. IPv6 може да се представи и по класическия начин, познат от IPv4.

Един примерен IPv6 адрес изглежда така:

2001:0db8:0000:0000:0000:8a2e:0370:7334

Но може да се запише съкратено и така:

2001:db8::8a2e:370:7334
  • RFC 791 – Internet Protocol (1981)
  • RFC 2460 – Internet Protocol, версия 6 (1998) (остаряла версия – RFC 1883)