stringtranslate.com

Интернет-протокол

Интернет -протокол ( IP ) — это сетевой протокол связи в наборе протоколов Интернета для ретрансляции датаграмм через границы сети. Его функция маршрутизации обеспечивает межсетевое взаимодействие и, по сути, устанавливает Интернет .

IP имеет задачу доставки пакетов от исходного хоста к хосту назначения исключительно на основе IP-адресов в заголовках пакетов . Для этой цели IP определяет структуры пакетов, которые инкапсулируют данные, которые должны быть доставлены. Он также определяет методы адресации, которые используются для маркировки датаграммы информацией об источнике и месте назначения. IP был службой датаграмм без установления соединения в оригинальной программе управления передачей, представленной Винтом Серфом и Бобом Каном в 1974 году, которая была дополнена службой , ориентированной на соединение , которая стала основой для протокола управления передачей (TCP). Поэтому набор протоколов Интернета часто называют TCP/IP .

Первая основная версия IP, Internet Protocol версии 4 (IPv4), является доминирующим протоколом Интернета. Его преемником является Internet Protocol версии 6 (IPv6), который все чаще внедряется в общедоступном Интернете примерно с 2006 года. [1]

Функция

Инкапсуляция данных приложения, передаваемых по UDP, в кадр протокола связи

Интернет-протокол отвечает за адресацию интерфейсов хостов , инкапсуляцию данных в датаграммы (включая фрагментацию и повторную сборку ) и маршрутизацию датаграмм от исходного интерфейса хоста к интерфейсу хоста назначения через одну или несколько IP-сетей. [2] Для этих целей Интернет-протокол определяет формат пакетов и предоставляет систему адресации.

Каждая датаграмма состоит из двух компонентов: заголовка и полезной нагрузки . Заголовок IP включает исходный IP-адрес, IP-адрес назначения и другие метаданные, необходимые для маршрутизации и доставки датаграммы. Полезная нагрузка — это транспортируемые данные. Этот метод вложения полезной нагрузки данных в пакет с заголовком называется инкапсуляцией.

IP-адресация подразумевает назначение IP-адресов и связанных с ними параметров интерфейсам хоста. Адресное пространство делится на подсети , включая обозначение сетевых префиксов. IP-маршрутизация выполняется всеми хостами, а также маршрутизаторами , чьей основной функцией является транспортировка пакетов через границы сети. Маршрутизаторы взаимодействуют друг с другом через специально разработанные протоколы маршрутизации , либо внутренние протоколы шлюза , либо внешние протоколы шлюза , в зависимости от топологии сети. [3]

Методы адресации

В интернет-протоколе существует четыре основных метода адресации:

История версий

Хронология развития протокола управления передачей данных TCP и интернет-протокола IP
Первая демонстрация Интернета, связывающая ARPANET , PRNET и SATNET 22 ноября 1977 г.

В мае 1974 года Институт инженеров по электротехнике и электронике (IEEE) опубликовал статью под названием «Протокол пакетной сетевой связи». [5] Авторы статьи, Винт Серф и Боб Кан , описали межсетевой протокол для совместного использования ресурсов с использованием пакетной коммутации между сетевыми узлами . Центральным компонентом управления этой модели была Программа управления передачей, которая включала как ориентированные на соединение связи, так и службы датаграмм между хостами. Монолитная Программа управления передачей позже была разделена на модульную архитектуру, состоящую из Протокола управления передачей и Протокола пользовательских датаграмм на транспортном уровне и Интернет-протокола на уровне Интернета . Модель стала известна как Модель Интернета Министерства обороны (DoD) и набор протоколов Интернета , а неофициально — как TCP/IP .

В следующих документах Internet Experiment Note (IEN) описывается эволюция интернет-протокола в современную версию IPv4: [6]

Версии IP с 1 по 3 были экспериментальными версиями, разработанными между 1973 и 1978 годами. [7] Версии 2 и 3 поддерживали адреса переменной длины в диапазоне от 1 до 16 октетов (от 8 до 128 бит). [8] Ранний проект версии 4 поддерживал адреса переменной длины до 256 октетов (до 2048 бит) [9], но позже от этого отказались в пользу фиксированного размера 32-битного адреса в окончательной версии IPv4 . Он остается доминирующим межсетевым протоколом, используемым на уровне Интернета ; число 4 идентифицирует версию протокола, передаваемую в каждой IP-дейтаграмме. IPv4 определен в RFC  791 (1981).

Версия номер 5 использовалась Internet Stream Protocol , экспериментальным потоковым протоколом, который не был принят. [7]

Преемником IPv4 является IPv6 . IPv6 стал результатом нескольких лет экспериментов и диалогов, в ходе которых предлагались различные модели протоколов, такие как TP/IX ( RFC  1475), PIP ( RFC  1621) и TUBA (TCP и UDP с большими адресами, RFC  1347). Его наиболее заметное отличие от версии 4 — размер адресов. В то время как IPv4 использует 32 бита для адресации, что дает около 4,3 млрд (4,3 × 10 9 ) адресов, IPv6 использует 128-битные адреса, обеспечивая c.3,4 × 1038 адресов . Хотя внедрение IPv6 идет медленно, по состоянию на январь 2023 года большинство стран мира демонстрируют значительное внедрение IPv6, [10] при этом более 41% трафика Google передается через соединения IPv6. [11]

Назначение нового протокола как IPv6 было неопределенным, пока комплексная проверка не подтвердила, что IPv6 ранее не использовался. [12] Другим протоколам уровня Интернета были присвоены номера версий, [13] такие как 7 ( IP/TX ), 8 и 9 ( исторические ). Примечательно, что 1 апреля 1994 года IETF опубликовала первоапрельскую шутку об IPv9. [14] IPv9 также использовался в альтернативном предложенном расширении адресного пространства под названием TUBA. [15] Китайское предложение 2004 года по протоколу IPv9, по-видимому, не связано ни с одним из них и не одобрено IETF.

Надежность

Дизайн набора протоколов Интернета соответствует принципу «из конца в конец» , концепции, адаптированной из проекта CYCLADES . Согласно принципу «из конца в конец», сетевая инфраструктура считается изначально ненадежной в любом отдельном сетевом элементе или среде передачи и является динамической с точки зрения доступности ссылок и узлов. Не существует центрального средства мониторинга или измерения производительности, которое отслеживало бы или поддерживало состояние сети. В целях снижения сложности сети интеллект в сети располагается в конечных узлах .

Вследствие этой конструкции Интернет-протокол обеспечивает только доставку с наилучшими усилиями , а его обслуживание характеризуется как ненадежное . На языке сетевой архитектуры это протокол без установления соединения , в отличие от ориентированной на соединение связи . Могут возникнуть различные состояния сбоя, такие как повреждение данных , потеря пакетов и дублирование. Поскольку маршрутизация является динамической, то есть каждый пакет обрабатывается независимо, и поскольку сеть не поддерживает состояние на основе пути предыдущих пакетов, различные пакеты могут быть направлены в один и тот же пункт назначения по разным путям, что приводит к неупорядоченной доставке получателю.

Все состояния сбоя в сети должны быть обнаружены и компенсированы участвующими конечными узлами. Протоколы верхнего уровня набора протоколов Интернета отвечают за решение проблем надежности. Например, хост может буферизировать сетевые данные, чтобы обеспечить правильный порядок перед доставкой данных в приложение.

IPv4 обеспечивает защиту, чтобы гарантировать, что заголовок IP-пакета не содержит ошибок. Узел маршрутизации отбрасывает пакеты, которые не прошли проверку контрольной суммы заголовка . Хотя протокол управляющих сообщений Интернета (ICMP) обеспечивает уведомление об ошибках, узел маршрутизации не обязан уведомлять ни один из конечных узлов об ошибках. IPv6, напротив, работает без контрольных сумм заголовков, поскольку предполагается, что текущая технология канального уровня обеспечивает достаточное обнаружение ошибок. [16] [17]

Пропускная способность и возможности соединения

Динамическая природа Интернета и разнообразие его компонентов не дают никаких гарантий, что какой-либо конкретный путь действительно способен или подходит для выполнения запрошенной передачи данных. Одним из технических ограничений является размер пакетов данных, возможных на данном соединении. Существуют средства для проверки максимального размера блока передачи (MTU) локального соединения, и Path MTU Discovery может использоваться для всего предполагаемого пути к месту назначения. [18]

Уровень межсетевого взаимодействия IPv4 автоматически фрагментирует датаграмму на более мелкие блоки для передачи при превышении MTU канала. IP обеспечивает переупорядочение фрагментов, полученных не по порядку. [19] Сеть IPv6 не выполняет фрагментацию в сетевых элементах, но требует, чтобы конечные хосты и протоколы более высокого уровня не превышали MTU пути. [20]

Протокол управления передачей (TCP) является примером протокола, который регулирует размер своего сегмента, чтобы он был меньше MTU. Протокол пользовательских дейтаграмм (UDP) и ICMP игнорируют размер MTU, тем самым заставляя IP фрагментировать слишком большие дейтаграммы. [21]

Безопасность

На этапе проектирования ARPANET и раннего Интернета аспекты безопасности и потребности публичной международной сети не могли быть адекватно предвидены. Следовательно, многие интернет-протоколы демонстрировали уязвимости, выявленные сетевыми атаками и более поздними оценками безопасности. В 2008 году была опубликована тщательная оценка безопасности и предложенное смягчение проблем. [22] IETF проводит дальнейшие исследования. [23]

Смотрите также

Ссылки

  1. ^ Экономика перехода на протокол Интернета версии 6 (IPv6) (отчет). Документы ОЭСР по цифровой экономике. ОЭСР. 2014-11-06. doi : 10.1787/5jxt46d07bhc-en . Архивировано из оригинала 2021-03-07 . Получено 2020-12-04 .
  2. Чарльз М. Козиерок, Руководство по TCP/IP, архивировано из оригинала 20.06.2019 , извлечено 22.07.2017
  3. ^ "IP Technologies and Migration — EITC". www.eitc.org . Архивировано из оригинала 2021-01-05 . Получено 2020-12-04 .
  4. ^ Госцень, Ружа; Валковяк, Кшиштоф; Клинковский, Мирослав (14 марта 2015 г.). «Алгоритм поиска табу для маршрутизации, модуляции и распределения спектра в эластичной оптической сети с произвольным и одноадресным трафиком». Компьютерные сети . 79 : 148–165. дои : 10.1016/j.comnet.2014.12.004. ISSN  1389-1286.
  5. ^ Cerf, V.; Kahn, R. (1974). "Протокол для пакетной сетевой связи" (PDF) . IEEE Transactions on Communications . 22 (5): 637–648. doi :10.1109/TCOM.1974.1092259. ISSN  1558-0857. Архивировано (PDF) из оригинала 2017-01-06 . Получено 2020-04-06 . Авторы хотели бы поблагодарить ряд коллег за полезные комментарии во время ранних обсуждений международных сетевых протоколов, особенно R. Metcalfe, R. Scantlebury, D. Walden и H. Zimmerman; D. Davies и L. Pouzin, которые конструктивно прокомментировали вопросы фрагментации и учета; и S. Crocker, который прокомментировал создание и разрушение ассоциаций.
  6. ^ "Индекс заметок об эксперименте в Интернете". www.rfc-editor.org . Получено 21.01.2024 .
  7. ^ ab Stephen Coty (2011-02-11). "Где IPv1, 2, 3 и 5?". Архивировано из оригинала 2020-08-02 . Получено 2020-03-25 .
  8. ^ Постел, Джонатан Б. (февраль 1978 г.). «Проект спецификации межсетевого протокола версии 2» (PDF) . Редактор RFC . IEN 28 . Получено 6 октября 2022 г. .Архивировано 16 мая 2019 г. в Wayback Machine
  9. ^ Постел, Джонатан Б. (июнь 1978 г.). «Спецификация межсетевого протокола версии 4» (PDF) . Редактор RFC . IEN 41 . Получено 11 февраля 2024 г. .Архивировано 16 мая 2019 г. в Wayback Machine
  10. ^ Строус, Стивен (4 июня 2021 г.). «Внедрение IPv6 в 2021 г.». RIPE Labs . Архивировано из оригинала 20-09-2021 . Получено 20-09-2021 .
  11. ^ "IPv6". Google . Архивировано из оригинала 2020-07-14 . Получено 2023-05-19 .
  12. ^ Маллиган, Джефф. «Это был почти IPv7». O'Reilly . Архивировано из оригинала 5 июля 2015 г. Получено 4 июля 2015 г.
  13. ^ "IP Version Numbers". Internet Assigned Numbers Authority . Архивировано из оригинала 2019-01-18 . Получено 2019-07-25 .
  14. RFC  1606: Историческая перспектива использования IP версии 9. 1 апреля 1994 г.
  15. ^ Росс Каллон (июнь 1992 г.). TCP и UDP с большими адресами (TUBA), простое предложение по адресации и маршрутизации в Интернете. doi : 10.17487/RFC1347 . RFC 1347.
  16. ^ RFC  1726, раздел 6.2
  17. ^ RFC  2460
  18. ^ Ришаб, Ананд (2012). Беспроводная связь. S. Chand Publishing. ISBN 978-81-219-4055-9. Архивировано из оригинала 2024-06-12 . Получено 2020-12-11 .
  19. ^ Сиян, Каранджит. Внутри TCP/IP , New Riders Publishing, 1997. ISBN 1-56205-714-6 
  20. ^ Билл Сервени (2011-07-25). "Фрагментация IPv6". Arbor Networks . Архивировано из оригинала 2016-09-16 . Получено 2016-09-10 .
  21. ^ Паркер, Дон (2 ноября 2010 г.). «Основное путешествие пакета». Symantec . Symantec . Архивировано из оригинала 20 января 2022 г. . Получено 4 мая 2014 г. .
  22. ^ Фернандо Гонт (июль 2008 г.), Оценка безопасности интернет-протокола (PDF) , CPNI , архивировано из оригинала (PDF) 2010-02-11
  23. ^ Ф. Гонт (июль 2011 г.). Оценка безопасности интернет-протокола версии 4. doi : 10.17487/RFC6274 . RFC 6274.

Внешние ссылки