Интернет-протокол
Набор интернет-протоколов |
---|
Прикладной уровень |
Транспортный уровень |
Интернет-слой |
Слой связи |
Интернет -протокол ( IP ) — это сетевого уровня протокол связи в наборе интернет-протоколов для ретрансляции дейтаграмм через границы сети. Его маршрутизации функция обеспечивает межсетевое взаимодействие и, по сути, устанавливает Интернет .
Задача IP заключается в доставке пакетов источника от хоста- к хосту-получателю исключительно на основе IP-адресов пакетов в заголовках . Для этой цели IP определяет структуры пакетов, инкапсулирующие доставляемые данные. Он также определяет методы адресации, которые используются для пометки дейтаграммы информацией об источнике и назначении.
IP был службой дейтаграмм без установления соединения в исходной программе управления передачей, представленной Винтом Серфом и Бобом Каном в 1974 году, которая была дополнена службой , ориентированной на соединение , которая стала основой для протокола управления передачей (TCP). Поэтому набор интернет-протоколов часто называют TCP/IP .
Первая основная версия IP, Интернет-протокол версии 4 (IPv4), является доминирующим протоколом Интернета. Его преемником является Интернет-протокол версии 6 (IPv6), который все чаще используется в общедоступном Интернете примерно с 2006 года. [1]
Функция
[ редактировать ]Интернет-протокол отвечает за адресацию интерфейсов хоста , инкапсуляцию данных в дейтаграммы (включая фрагментацию и повторную сборку ) и маршрутизацию дейтаграмм от интерфейса исходного хоста к интерфейсу хоста назначения через одну или несколько IP-сетей. [2] Для этих целей Интернет-протокол определяет формат пакетов и предоставляет систему адресации.
Каждая дейтаграмма состоит из двух компонентов: заголовка и полезной нагрузки . Заголовок IP включает IP-адрес источника, IP-адрес назначения и другие метаданные, необходимые для маршрутизации и доставки дейтаграммы. Полезная нагрузка — это передаваемые данные. Этот метод вложения полезных данных в пакет с заголовком называется инкапсуляцией.
IP-адресация влечет за собой назначение IP-адресов и связанных с ними параметров хост-интерфейсам. Адресное пространство разделено на подсети , предполагающие обозначение сетевых префиксов. IP-маршрутизация осуществляется всеми хостами, а также маршрутизаторами , основная функция которых — транспортировка пакетов через границы сети. Маршрутизаторы взаимодействуют друг с другом через специально разработанные протоколы маршрутизации , либо протоколы внутреннего шлюза , либо протоколы внешнего шлюза , в зависимости от топологии сети. [3]
История версий
[ редактировать ]В мае 1974 года Институт инженеров по электротехнике и электронике (IEEE) опубликовал статью под названием «Протокол для пакетной сетевой связи». [4] Авторы статьи, Винт Серф и Боб Кан , описали межсетевой протокол для совместного использования ресурсов с использованием коммутации пакетов между сетевыми узлами . Центральным компонентом управления этой модели была «Программа управления передачей», которая включала как каналы, ориентированные на соединение, так и службы дейтаграмм между хостами. Монолитная программа управления передачей позже была разделена на модульную архитектуру, состоящую из протокола управления передачей и протокола пользовательских дейтаграмм на транспортном уровне и интернет-протокола на интернет-уровне . Модель стала известна как Министерства обороны (DoD) Интернет-модель и набор интернет-протоколов и неофициально как TCP/IP .
Следующие документы Internet Experiment Note (IEN) описывают эволюцию Интернет-протокола в современную версию IPv4: [5]
- Комментарии IEN 2 по Интернет-протоколу и TCP ( август 1977 г.) описывают необходимость разделения функций TCP и Интернет-протокола (которые ранее были объединены). Он предлагает первую версию заголовка IP, используя 0 в поле версии.
- IEN 26 «Предлагаемый новый формат заголовка Интернета» ( февраль 1978 г.) описывает версию заголовка IP, в которой используется 1-битное поле версии.
- IEN 28 Проект описания межсетевого протокола , версия 2 ( февраль 1978 г.) описывает IPv2.
- IEN 41 Спецификация межсетевого протокола версии 4 ( июнь 1978 г.) описывает первый протокол, который будет называться IPv4. Заголовок IP отличается от современного заголовка IPv4.
- В документе IEN 44 «Последние форматы заголовков» ( июнь 1978 г.) описывается другая версия IPv4, также с заголовком, отличным от современного заголовка IPv4.
- Спецификация межсетевого протокола IEN 54 , версия 4 ( сентябрь 1978 г.) является первым описанием IPv4 с использованием заголовка, который стал стандартизирован в 1980 году как РФК 760 .
- ОДИН 80
- ОДИН 111
- ОДИН 123
- МЕН 128/RFC 760 (1980 г.)
Версии IP с 1 по 3 были экспериментальными, разработанными между 1973 и 1978 годами. [6] Версии 2 и 3 поддерживали адреса переменной длины в диапазоне от 1 до 16 октетов (от 8 до 128 бит). [7] Ранний проект версии 4 поддерживал адреса переменной длины до 256 октетов (до 2048 бит). [8] но позже от этого отказались в пользу 32-битного адреса фиксированного размера в окончательной версии IPv4 . Это остается доминирующим межсетевым протоколом, используемым на уровне Интернета ; цифра 4 идентифицирует версию протокола, передаваемую в каждой IP-дейтаграмме. IPv4 определен в RFC 791 (1981).
Версия номер 5 использовалась Internet Stream Protocol — экспериментальным протоколом потоковой передачи, который не был принят. [6]
Преемником IPv4 является IPv6 . IPv6 стал результатом нескольких лет экспериментов и диалога, в ходе которых были предложены различные модели протоколов, такие как TP/IX ( RFC 1475 ), PIP ( RFC 1621 ) и TUBA (TCP и UDP с большими адресами, RFC 1347 ). Его наиболее заметное отличие от версии 4 — размер адресов. В то время как IPv4 использует 32 бита для адресации, в результате чего получается c. 4,3 миллиарда ( 4,3 × 10 9 ) адреса, IPv6 использует 128-битные адреса, обеспечивающие c. 3,4 × 10 38 адреса. Хотя внедрение IPv6 шло медленно, по состоянию на январь 2023 г. [update], в большинстве стран мира наблюдается значительное внедрение IPv6, [9] при этом более 41% трафика Google передается через соединения IPv6. [10]
Назначение нового протокола как IPv6 оставалось неопределенным до тех пор, пока комплексная проверка не подтвердила, что IPv6 ранее не использовался. [11] Другим протоколам Интернет-уровня были присвоены номера версий. [12] например 7 ( IP/TX ), 8 и 9 ( исторические ). Примечательно, что 1 апреля 1994 года IETF опубликовал первоапрельскую шутку об IPv9. [13] IPv9 также использовался в альтернативном предлагаемом расширении адресного пространства под названием TUBA. [14] Предложение Китая 2004 года о протоколе «IPv9», похоже, не имеет отношения ко всем этим и не одобрено IETF.
Надежность
[ редактировать ]Дизайн набора интернет-протоколов соответствует сквозному принципу — концепции, адаптированной из проекта CYCLADES . В соответствии с сквозным принципом сетевая инфраструктура считается по своей сути ненадежной в любом отдельном сетевом элементе или среде передачи и является динамичной с точки зрения доступности каналов и узлов. Не существует централизованного мониторинга или средства измерения производительности, которое отслеживает или поддерживает состояние сети. В целях снижения сложности сети интеллектуальные ресурсы сети размещаются в конечных узлах .
В результате такой конструкции Интернет-протокол обеспечивает доставку только с максимальной эффективностью , а его обслуживание характеризуется как ненадежное . На языке сетевой архитектуры это протокол без установления соединения , в отличие от связи, ориентированной на соединение . Могут возникнуть различные неисправности, такие как повреждение данных , потеря пакетов и дублирование. Поскольку маршрутизация является динамической, то есть каждый пакет обрабатывается независимо, и поскольку сеть не поддерживает состояние, основанное на пути предыдущих пакетов, разные пакеты могут направляться в один и тот же пункт назначения по разным путям, что приводит к с нарушением порядка доставке . приемник.
Все неисправности в сети должны обнаруживаться и компенсироваться участвующими конечными узлами. Протоколы верхнего уровня набора протоколов Интернета отвечают за решение проблем надежности. Например, хост может буферизовать сетевые данные, чтобы обеспечить правильный порядок, прежде чем данные будут доставлены в приложение.
IPv4 обеспечивает защиту, гарантирующую отсутствие ошибок в заголовке IP-пакета. Узел маршрутизации отбрасывает пакеты, не прошедшие проверку контрольной суммы заголовка . Хотя протокол управляющих сообщений Интернета (ICMP) обеспечивает уведомление об ошибках, узел маршрутизации не обязан уведомлять об ошибках какой-либо конечный узел. IPv6, напротив, работает без контрольных сумм заголовков, поскольку канального уровня обеспечивает достаточное обнаружение ошибок. предполагается, что современная технология [15] [16]
Пропускная способность и возможности канала
[ редактировать ]Динамичный характер Интернета и разнообразие его компонентов не дают гарантии того, что какой-либо конкретный путь действительно способен или подходит для выполнения запрошенной передачи данных. Одним из технических ограничений является размер пакетов данных, возможных по данному каналу. Существуют средства для проверки максимального размера единицы передачи (MTU) локального канала, а обнаружение MTU пути можно использовать для всего предполагаемого пути к месту назначения. [17]
Межсетевой уровень IPv4 автоматически фрагментирует дейтаграмму на более мелкие блоки для передачи при превышении MTU канала. IP обеспечивает переупорядочение фрагментов, полученных не по порядку. [18] Сеть IPv6 не выполняет фрагментацию сетевых элементов, но требует конечных хостов и протоколов более высокого уровня, чтобы избежать превышения MTU пути. [19]
Протокол управления передачей (TCP) является примером протокола, который настраивает размер своего сегмента так, чтобы он был меньше MTU. Протокол пользовательских дейтаграмм (UDP) и ICMP игнорируют размер MTU, тем самым вынуждая IP фрагментировать дейтаграммы слишком большого размера. [20]
Безопасность
[ редактировать ]На этапе проектирования ARPANET и раннего Интернета аспекты безопасности и потребности общедоступной международной сети не могли быть адекватно предвидены. Следовательно, многие интернет-протоколы имели уязвимости, выявленные сетевыми атаками и последующими оценками безопасности. В 2008 году была опубликована тщательная оценка безопасности и предложения по устранению проблем. [21] IETF продолжает дальнейшие исследования. [22]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Экономика перехода к Интернет-протоколу версии 6 (IPv6) (Отчет). Документы ОЭСР по цифровой экономике. ОЭСР. 06.11.2014. doi : 10.1787/5jxt46d07bhc-en . Архивировано из оригинала 07 марта 2021 г. Проверено 4 декабря 2020 г.
- ^ Чарльз М. Козерок, Руководство по TCP/IP , заархивировано из оригинала 20 июня 2019 г. , получено 22 июля 2017 г.
- ^ «IP-технологии и миграция — EITC» . www.eitc.org . Архивировано из оригинала 05 января 2021 г. Проверено 4 декабря 2020 г.
- ^ Серф, В.; Кан, Р. (1974). «Протокол пакетной сетевой связи» (PDF) . Транзакции IEEE в области коммуникаций . 22 (5): 637–648. дои : 10.1109/TCOM.1974.1092259 . ISSN 1558-0857 . Архивировано (PDF) из оригинала 06 января 2017 г. Проверено 6 апреля 2020 г.
Авторы хотели бы поблагодарить ряд коллег за полезные комментарии во время ранних обсуждений международных сетевых протоколов, особенно Р. Меткалфа, Р. Скантлбери, Д. Уолдена и Х. Циммермана; Д. Дэвис и Л. Пузен, конструктивно прокомментировавшие вопросы фрагментации и учета; и С. Крокер, комментировавшие создание и разрушение ассоциаций.
- ^ «Указатель заметок об экспериментах в Интернете» . www.rfc-editor.org . Проверено 21 января 2024 г.
- ^ Jump up to: а б Стивен Коти (11 февраля 2011 г.). «Где IPv1, 2, 3 и 5?» . Архивировано из оригинала 2 августа 2020 г. Проверено 25 марта 2020 г.
- ^ Постел, Джонатан Б. (февраль 1978 г.). «Проект спецификации межсетевого протокола версии 2» (PDF) . Редактор RFC . ИЕН 28 . Проверено 6 октября 2022 г. Архивировано 16 мая 2019 года в Wayback Machine.
- ^ Постел, Джонатан Б. (июнь 1978 г.). «Спецификация межсетевого протокола версии 4» (PDF) . Редактор RFC . ИЕН 41 . Проверено 11 февраля 2024 г. Архивировано 16 мая 2019 года в Wayback Machine.
- ^ Строуз, Стивен (4 июня 2021 г.). «Внедрение IPv6 в 2021 году» . Лаборатория RIPE . Архивировано из оригинала 20 сентября 2021 г. Проверено 20 сентября 2021 г.
- ^ «IPv6» . Google . Архивировано из оригинала 14 июля 2020 г. Проверено 19 мая 2023 г.
- ^ Маллиган, Джефф. «Это был почти IPv7» . О'Рейли . Архивировано из оригинала 5 июля 2015 года . Проверено 4 июля 2015 г.
- ^ «Номера версий IP» . Управление по присвоению номеров в Интернете . Архивировано из оригинала 18 января 2019 г. Проверено 25 июля 2019 г.
- ^ RFC 1606 : Исторический взгляд на использование IP версии 9 . 1 апреля 1994 года.
- ^ Росс Каллон (июнь 1992 г.). TCP и UDP с большими адресами (TUBA), простое предложение по интернет-адресации и маршрутизации . дои : 10.17487/RFC1347 . РФК 1347 .
- ^ RFC 1726, раздел 6.2
- ^ РФК 2460
- ^ Ришаб, Ананд (2012). Беспроводная связь . Издательство С. Чанд. ISBN 978-81-219-4055-9 . Архивировано из оригинала 12 июня 2024 г. Проверено 11 декабря 2020 г.
- ^ Сиян, Каранджит. Внутри TCP/IP , New Riders Publishing, 1997. ISBN 1-56205-714-6
- ^ Билл Червени (25 июля 2011 г.). «Фрагментация IPv6» . Сети беседок . Архивировано из оригинала 16 сентября 2016 г. Проверено 10 сентября 2016 г.
- ^ Паркер, Дон (2 ноября 2010 г.). «Основное путешествие пакета» . Симантек . Симантек . Архивировано из оригинала 20 января 2022 года . Проверено 4 мая 2014 г.
- ^ Фернандо Гонт (июль 2008 г.), Оценка безопасности интернет-протокола (PDF) , CPNI , заархивировано из оригинала (PDF) 11 февраля 2010 г.
- ^ Ф. Гонт (июль 2011 г.). Оценка безопасности Интернет-протокола версии 4 . дои : 10.17487/RFC6274 . РФК 6274 .
Внешние ссылки
[ редактировать ]- Манфред Линднер. «IP-технологии» (PDF) . Проверено 11 февраля 2018 г.
- Манфред Линднер. «IP-маршрутизация» (PDF) . Проверено 11 февраля 2018 г.