
Когато се свързвате с интернет от мобилния си телефон, домашен лаптоп или офис компютър, всички данни, които изпращате и получавате, се предават, следвайки набор от много строги правила, известни като интернет протокол (IP)Въпреки че може да не го виждате, всеки уебсайт, който посещавате, всеки имейл, който изпращате, или всяко видеообаждане, което осъществявате, зависи от него, за да се гарантира, че информацията достига (повече или по-малко) до мястото, където трябва да отиде.
Далеч от това да е нещо магическо, IP е много добре обмислена система, която съчетава адресиране, маршрутизиране на пакети и фрагментация на данни Така че различни устройства, с различни операционни системи и свързани чрез много разнообразни мрежи, могат да комуникират помежду си, сякаш са част от една единствена глобална мрежа. Ще го разгледаме стъпка по стъпка, за да разберете какво прави, как го прави и защо е толкова важно за днешната мрежа.
Какво е интернет протокол (IP) и каква е неговата функция?
Интернет протоколът или просто IP (интернет протокол)Той е крайъгълният камък на протоколния пакет TCP/IP. Неговата мисия е да обработва предаването на данни под формата на пакети между взаимосвързани устройства, без да е необходимо да се установява предварителна връзка и без да се гарантира, че всичко ще пристигне перфектно.
На практика, интелектуалната собственост действа като вид дейтаграма „куриерска компания“Той получава блокове информация (дейтаграми), добавя заглавка с контролни данни (основно адреси на източник и получател) и ги предава на мрежата, така че те да прескачат от рутер на рутер, докато достигнат до машината получател, ако всичко върви добре.
Ключова характеристика е, че това е протокол неориентирани към свързване и с максимални усилияТова означава, че няма предварителен диалог между източника и получателя за „договаряне“ на комуникацията и IP ще направи всичко възможно, за да достави пакетите, но без да обещава нищо: те могат да бъдат изгубени, да пристигнат дублирани, неподредени или повредени.
Надеждността, контролът на потока или възстановяването на грешки не се осигуряват от IP, но протоколи от по-високо ниво, като например TCPIP е ограничен до предлагане на основна услуга за доставка на дейтаграми през мрежа, която може да бъде много хетерогенна на физическо ниво (оптично-оптични връзки, WiFi, Ethernet, безжични връзки от всякакъв вид и др.).
IP също така крие сложността на физическата мрежаТова предоставя на протоколите от горния слой унифициран поглед върху „виртуалната мрежа“. В резултат на това приложенията и услугите не е необходимо да знаят дали има десет или сто рутера между източника и местоназначението или каква технология използва всеки сегмент.
IP в рамките на TCP/IP и връзката му с други протоколи
В интернет хората почти винаги говорят за групата. TCP / IPЗащото в много услуги те се използват заедно: IP на мрежовия слой и TCP на транспортния слой. Наборът от интернет протоколи обаче е много по-широк: има повече от сто различни протокола, които съществуват едновременно и те разчитат на IP.
IP е стандартизиран като STD 5Тази спецификация включва също ICMP (Internet Control Message Protocol, използван за съобщения за грешки и диагностика, като например ping съобщения) и IGMP (Internet Group Management Protocol, за управление на multicast групи). Статусът му е „задължителен“, което означава, че всеки сериозен TCP/IP стек трябва да го имплементира.
Сред документите, които дефинират интелектуалната собственост, се открояват следните: RFC 791, 950, 919 и 922с последващи актуализации, например в RFC 1349 за полето „Тип на услугата“ (TOS). Тези RFC описват формата на дейтаграмата, как се обработва фрагментацията, какво означават полетата на заглавката и т.н.
Най-подходящите транспортни протоколи, които разчитат на IP, са TCP (Протокол за контрол на предаването) и UDP (Протокол за потребителски дейтаграми)TCP предлага надежден, ориентиран към връзка канал, идеален за приложения, които изискват цялост (като например уеб или имейл). UDP, от друга страна, е лек и му липсва контрол на грешките на транспортно ниво, което го прави широко използван за... приложения в реално време (аудио, видео, онлайн игри) или протоколи като DNS, както и инструменти за измерване, като например iperf3 в многонишков режим Те ви позволяват да оцените производителността на мрежата.
В допълнение към TCP и UDP, IP може да капсулира и други протоколи, като например SCTP (Протокол за предаване на контрол на потока), използван в някои напреднали контексти (например сигнализация или определени телекомуникационни услуги) и който също предлага надеждни транспортни характеристики, но с възможности за многопътен или многопотоков пренос.
Версии на IP протокола: IPv4 и IPv6
Най-известната и исторически разпространена версия е IPv4който използва 32-битови адреси. Това позволява малко над четири милиарда теоретични адреса, число, което беше недостатъчно преди години поради бума на свързаните устройства.
За да се преодолее това ограничение, е разработена система IPv6, наследник на IPv4, който използва 128-битови адреси, гигантско пространство, способно да съхранява практически неизчерпаем брой възлиIPv6 въвежда и подобрения като безстабилна автоматична конфигурация, по-проста и по-разширяема схема на заглавките, по-добра вградена поддръжка за сигурност и нови възможности за контрол на потока и качество на услугата.
В историята на IP, версии от 0 до 3 са били или резервирани, или никога не са били внедрявани, докато версия 5 Използван е за експериментален протокол. Други номера на версиите са присвоени на изследователски проекти, но само IPv4 и IPv6 са получили широко разпространение като основа на интернет.
Днес и двете съществуват едновременно: голяма част от глобалната мрежа все още работи с IPv4, разчитайки на трикове като NAT (превод на мрежов адрес)Докато IPv6 се внедрява постепенно, особено в операторите, големите компании и облачните услуги.
IP адреси, видове и свързани понятия
а IP адрес Това е числов идентификатор, присвоен на всеки мрежов интерфейс на устройство в мрежа, която използва интернет протокола. Той не идентифицира цялото устройство, а по-скоро конкретния интерфейс: ако устройството има активирани както Ethernet, така и Wi-Fi, всеки от тези интерфейси ще има свой собствен IP адрес.
Важно е да не бъркате IP адреса с MAC адресMAC адресът е физически идентификатор, гравиран от производителя върху мрежовата карта и обикновено не се променя през целия ѝ живот. IP адресът, от друга страна, е логичен и може да се промени при смяна на мрежи, рестартиране на рутера или преконфигуриране на инфраструктурата.
IP адресите обикновено се разделят на две части: мрежова част и хост частМрежовата част идентифицира към коя мрежа принадлежи устройството (и кой протокол за връзка споделят устройствата на този физически носител), докато хост частта разграничава всяка машина в рамките на тази мрежа.
На практическо ниво има Публични IP адреси и частни IP адресиПубличният IP адрес е такъв, който се рекламира в интернет и позволява вашата домашна мрежа или сървър да бъдат локализирани от всяка точка на глобалната мрежа. Частните IP адреси, от друга страна, се използват в локални мрежи (като например вашия дом или вътрешната мрежа на компанията) и не могат да бъдат директно маршрутизирани през интернет.
Освен това, адресът може да бъде статично или динамичноКогато се свързвате с интернет у дома, вашият доставчик обикновено ви присвоява динамично публичен IP адрес, използвайки протокол, като например DHCP (протокол за динамично конфигуриране на хост)Този IP адрес може да се променя между повторните връзки. За разлика от това, услугите, които трябва да бъдат винаги достъпни (уеб сървъри, пощенски сървъри, DNS сървъри, публични FTP сървъри и др.), обикновено използват фиксирани или статични IP адреси, което улеснява други системи да ги намират без изненади.
За да се улесни животът на хората, които са доста зле в запомнянето на дълги числа, IP адресите могат да бъдат свързани с имена на домейниСистемата за имена на домейни (DNS) превежда имена като „example.com“ в съответните им IP адреси. Машините се нуждаят само от числото; ние предпочитаме лесни за запомняне думи.
Друга релевантна концепция е нетна маскаПодмрежовата маска е стойност, която показва коя част от IP адреса съответства на мрежата и коя на хоста. С подмрежовата маска устройствата могат да решат дали даден пакет трябва да бъде изпратен в рамките на локалната мрежа или препратен към рутер, за да достигне до външна мрежа.
Самата машина също така съдържа локален интерфейс за обратна връзка (loopback), представен в IPv4 от адреса 127.0.0.1. Той позволява на компютъра да комуникира сам със себе си, използвайки същите протоколи, които би използвал за комуникация с други, много полезно за тестване, разработка и отстраняване на грешки.
Как работи IP: дейтаграми, фрагментация и маршрутизация
Когато дадено приложение иска да изпраща данни през мрежата (например уеб браузър), транспортният протокол, който обикновено използва TCPразделете тази информация на по-малки сегменти и ги предава на мрежовия слой, за да бъдат пакетирани като IP дейтаграми.
IP определя формат на дейтаграмаЗаглавка с множество контролни полета и област за данни, съдържаща съдържанието на протокола от по-високо ниво (TCP, UDP, ICMP и др.). За разлика от други протоколи, IP не изисква предварителен обмен на контролни съобщения преди изпращане на полезния товар.
Ако размерът на дейтаграмата е по-голям от MTU (максимална предавателна единица) приет от физическата връзка, през която трябва да се разпространява, IP може фрагмент Тази дейтаграма е разделена на няколко по-малки части. Всеки фрагмент пътува през мрежата със собствен IP заглавен файл и в крайната дестинация те се сглобяват отново, за да се реконструира оригиналната дейтаграма.
Тази фрагментация може да възникне в различни точки по пътя, не само при източника. Всеки рутер, който намери връзка с по-нисък MTU, може да я рефрагментира, като спазва идентификационната информация и отместването на фрагмента. Извършва се обаче повторно сглобяване. само на целевия хост за да се избегне претоварване на рутерите с междинна работа.
Ако един от фрагментите се загуби, цялата дейтаграма се счита за загубена, тъй като IP не изпълнява потвърждения или повторни предаванияТранспортният протокол (обикновено TCP) ще открие пропуските в последователността от данни и ще поиска отново липсващата информация.
По време на това пътуване всяка IP дейтаграма преминава през множество междинни мрежи и се сблъсква с рутериТези устройства са специализирани в получаването на пакети през интерфейс, преглеждайки IP адреса на получателя и препращайки ги през най-добрия наличен изходящ интерфейс, въз основа на тяхната таблица за маршрутизиране.
Заглавка на IP дейтаграма и основни полета
IP дейтаграмата включва заглавка с минимален размер от 20 байта Това кодира цялата информация, необходима на рутерите и целевия хост, за да я обработят правилно. Някои от най-важните полета са:
- Версия: показва дали дейтаграмата е IPv4 или IPv6.
- Дължина на заглавката: указва колко 32-битови думи заема заглавната част, без да се броят данните.
- Вид услуга (TOS / DSCP): Използва се за изразяване на изискванията за качество на услугата (забавяне, производителност, надеждност, цена и др.) на трафика.
- Обща дължина: пълната дължина на дейтаграмата (заглавна част + данни) в байтове.
- идентификация: число, което позволява групиране на фрагменти, принадлежащи към една и съща дейтаграма.
- Флагове и отместване на фрагмента: Те контролират дали е разрешена фрагментация и на каква позиция е поставен всеки фрагмент.
- Време за експлоатационен живот (TTL): брояч, който се намалява при всеки преход към рутера, за да се предотврати неограничената циркулация на пакети.
- протокол: указва до кой протокол от по-високо ниво трябва да бъдат доставени данните (TCP, UDP, ICMP, OSPF и др.).
- Контролна сума на заглавката: контролна сума, която проверява целостта на самия заглавен файл.
- IP адреси на източника и получателя: Те идентифицират предназначения подател и получател на дейтаграмата.
- Опции и пълнеж: Незадължително поле с променлива дължина за разширена функционалност, последвано от допълващи байтове за подравняване на заглавката до 32 бита.
El поле за протокол Това позволява на IP да доставя съдържание до съответния модул в транспортния или контролния слой. Например, стойността 6 е запазена за TCP, 17 за UDP, 1 за ICMP, 89 за OSPF (Open Shortest Path First) и т.н., според официалния списък с присвоени номера на протоколи.
El контролна сума на заглавката Изчислява се като допълнение до единици на сумата от всички 16-битови думи в заглавката, приемайки, че самото поле за контролна сума е нула по време на изчислението. Ако резултатът не съвпада при получаване на дейтаграма, се приема, че поне един бит в заглавката е повреден и пакетът се отхвърля.
El TTLВъпреки че формално представлява максималния живот в секунди, на практика се управлява като брояч на преходи: всеки рутер го намалява с едно и ако достигне нула, изхвърля пакета и обикновено изпраща ICMP съобщение за грешка до източника. Това предотвратява неправилно конфигуриран цикъл на маршрутизиране да наводни мрежата с безкраен трафик.
на IP опции Опциите ви позволяват да разширите протокола, без да променяте основната му структура. Всяка опция има формат с тип, дължина и данни и може да контролира аспекти като регистриране на маршрути, времеви марки, сигурност или специално обработване на определени пакети. Не всички системи генерират опции, но всички трябва да могат да ги обработват, ако се появят.
Маршрутизация, таблици за маршрутизация и показатели
Всеки хост и всеки рутер, участващи в IP мрежа, поддържа Таблица за маршрутизиранеТази таблица записва съответствията между целевите мрежи и следващия хоп, необходим за достигането им. Тя може да съдържа:
- Директни маршрути: мрежи, към които оборудването е физически свързано.
- Косвени маршрути: мрежи, до които се достига чрез един или повече междинни рутери.
- Път по подразбиране: общ изход за всяка дестинация, която не съответства на горните маршрути.
Процесът на избор къде да се изпрати дейтаграма се нарича маршрутизацияВсеки път, когато екипът трябва да препрати пакет, той преглежда адреса на получателя, проверява таблицата си за маршрутизиране и решава кой е най-добрият наличен вариант.
За да оценят колко „добър“ е един маршрут, протоколите за маршрутизиране използват концепцията за метрикаСпоред протокола, този показател може да се основава на разстояние (брой преходи), забавяне, цена, налична честотна лента, надеждност на връзката или претеглена комбинация от няколко фактора.
Идеалната цел е да се постигне оптимално маршрутизиранеТоест, избиране на пътища, които минимизират избраната метрика (разстояние, цена, забавяне и др.). На практика мрежата се променя постоянно и протоколите за маршрутизация (като RIP, IGRP, EIGRP, OSPF и др.) са отговорни за обмена на информация между рутерите, за да се адаптират таблиците за маршрутизация към реалните условия.
Целият този процес е интерактивен: всеки рутер Алгоритъмът за маршрутизиране, приложен към IP адреса на местоназначението, се прилага отново към дейтаграмата, докато тя преминава през нея, и се взема ново решение за пренасочване, докато пакетът най-накрая достигне целевия си хост, където се доставя до транспортния слой или съответното приложение.
Бездържавна връзка, капсулиране и обслужване с най-добри усилия
IP се счита за протокол без гражданствоТова означава, че мрежата не поддържа постоянна информация за „сесии“ или „връзки“ между две крайни точки: всеки пакет се третира независимо, като се използва само информацията, съдържаща се в неговия заглавен файл.
Благодарение на дизайна си без запазване на състоянието, IP се мащабира много добре: Няма нужда да запазвате контекста за всяка комуникацияТова намалява паметта и сложността в рутерите и междинното оборудване. Цената, която трябва да се плати, е, че отговорността за подреждането, защитата и валидирането на данните пада на по-горните слоеве.
IP предоставя услуга на най-добри усилия (Най-добро усилие): опити за доставяне на пакети, но без гаранции за успех, ред или липса на дублиране. Възможно е да има загуби, грешки, променливи закъснения и др. Ето защо транспортните протоколи като TCP обработват добавянето на потвърждения, контрола на потока, повторното предаване на загубени сегменти и др.
Друга ключова характеристика на слоестия модел е капсулиранеДанните, генерирани от приложението, първо се капсулират в единици на транспортния слой (TCP сегменти или UDP дейтаграми), които от своя страна се капсулират в IP дейтаграми; те се включват в кадри на каналния слой (например Ethernet) и накрая се преобразуват във физически сигнали на най-ниския слой.
Този механизъм за капсулиране позволява това Рутерите се интересуват само от IP заглавката да се вземат решения за маршрутизиране, без да е необходимо да се разбира основното приложение или транспортен протокол. Всеки слой се фокусира върху собствените си отговорности, което прави системата модулна и по-лесна за развитие.
IP, мобилност и поддръжка за съвременни услуги
Повсеместното разпространение на IP протокола го е превърнало в основа за толкова разнообразни услуги, колкото Сърфиране в интернет, имейл, VoIP, стрийминг или незабавни съобщенияHTTP и HTTPS са изградени върху TCP/IP за обслужване на уеб страници; SMTP, IMAP или POP3 обработват имейли; SIP и RTP капсулират аудио и видео през IP за разговори и видеоконференции; XMPP, WebSocket или протокола MQTT Те позволяват обмен на съобщения в реално време.
В днешния свят, където устройствата постоянно превключват между мрежи (мобилни, домашни WiFi, офис WiFi...), IP също така интегрира допълнителни механизми и протоколи, които улесняват... подвижностСред тях са Mobile IP (MIP) и техники за преобразуване на адреси, като например NAT...или протоколи за откриване на съседи по IPv6 и управление на адреси, като например NDP, и оператори, които интегрират 5G и интернет на нещата за разширени услуги.
Освен това, някои механизми и протоколи (като SCTP или определени IPv6 разширения) позволяват промяна на маршрута или интерфейса, като същевременно се поддържат активни връзкиТова подобрява потребителското изживяване на мобилни устройства и в сценарии с множество връзки.
Сигурността също придобива все по-голямо значение: разширения като IPsec Те осигуряват удостоверяване, целостност и криптиране на мрежово ниво, докато възможностите за контрол на потока и маркиране на трафика в IPv6 спомагат за осигуряване на по-добро качество на услугата за комуникации, чувствителни към латентност, като например глас или видео.
Накратко, IP протоколът се е развил от прост и ненадежден, но много гъвкав дизайн, в... стабилна, мащабируема и съществена инфраструктура който поддържа практически всички съвременни цифрови комуникации, от най-критичните в бизнеса и центровете за данни до най-ежедневните в домовете ни.
