какое поле айпи пакета предотвращает бесконечный цикл
Заголовок Пакета IP
Как показано на рисунке, протокол IP версии 4 определяет много различных полей в заголовке пакета IP. Эти поля содержат двоичные значения, на которые ссылаются службы IPv4, когда они передают пакеты по сети.
Здесь мы рассмотрим 6 ключевых полей:
Ключевые поля заголовка IPv4
IP Адрес Назначения
Поле «IP Адрес Назначения» содержит 32-разрядное двоичное значение, которое представляет адрес целевого узла в пакете Сетевого уровня.
IP Адрес Источника
Поле «IP Адрес Источника» содержит 32-разрядное двоичное значение, которое представляет адрес исходного узла (отправителя) в пакете Сетевого уровня.
Время жизни
Время жизни (TTL) является 8-разрядным двоичным значением, которое указывает на остающуюся «жизнь» пакета. Значение TTL уменьшается по крайней мере на единицу каждый раз, когда пакет обрабатывается маршрутизатором (то есть, хопом). Когда значение становится нулевым, маршрутизатор отбрасывает или сбрасывает пакет, и он удаляется из сетевого потока данных. Этот механизм предотвращает бесконечное блуждание между маршрутизаторами пакетов, которые не могут достигнуть своего места назначения, в так называемой маршрутной петле. Если бы маршрутные петли продолжали оставаться, то сеть стала бы переполненной пакетами данных, которые никогда не будут достигать своего места назначения. Постепенное уменьшение значения TTL на каждом хопе гарантирует, что в конечном счете это значение станет нулевым и что пакет с полем TTL с истекшим сроком будет отброшен.
Протокол
Это 8-разрядное двоичное значение указывает на тип полезной нагрузки данных, которые переносит пакет. Поле «Протокол» позволяет Сетевому уровню передать данные к соответствующему протоколу верхнего уровня.
Примеры значений этого поля:
Тип службы
Смещение Фрагмента
Как отмечалось ранее маршрутизатору, вероятно, придется фрагментировать пакет, передавая его с одного носителя (канала передачи) на другой, у которого MTU будет меньше. Когда происходит фрагментация, пакет IPv4 использует поле «Смещение Фрагмента» и флаг MF в заголовке IP, чтобы восстановить пакет, когда он достигает конечного хоста. Поле смещение фрагмента идентифицирует порядок, в котором необходимо поместить пакетный фрагмент при реконструкции пакета.
Флаг «Дополнительные Фрагменты»
Флаг «Дополнительные Фрагменты» (MF) является одиночным битом в поле Флагов, используемым со Смещением Фрагмента для фрагментации и реконструкции пакетов. Когда флаг «Дополнительные Фрагменты» устанавливается, это означает, что это не последний фрагмент пакета. Когда узел получения видит, что пакет прибывает с MF = 1, он исследует Смещение Фрагмента, чтобы определить, куда этот фрагмент должен быть помещен в рекоструируемом пакете. Когда узел получения принимает кадр с MF = 0 и ненулевое значение в смещении Фрагмента, он помещает этот фрагмент как последнюю часть в восстанавливаемый пакет. У нефрагментированного пакета вся информация о фрагментации равна нулю (MF = 0, смещение фрагмента = 0).
Флаг «Не Фрагментировать»
Флаг «Не Фрагментировать» (DF) является одиночным битом в поле Флагов, который указывает, что фрагментация пакета не допустима. Если бит флага «Не Фрагментировать» устанавливается, то фрагментация этого пакета НЕ разрешается. Если маршрутизатор должен фрагментировать пакет, чтобы передать его вниз к Канальному уровню, но бит DF установлен в 1, то маршрутизатор отбрасывает этот пакет.
Что заставляет TTL изменяться во время пинга?
Много раз мой TTL меняется через некоторое время, и это вызывает отключение и повторное подключение приложений и игр. Например, мой TTL равен 117 за один час, и без объяснения он меняется на 121. Когда это меняется, мои приложения и игры отключаются и подключаются автоматически.
Это так раздражает, и никто из техников службы поддержки не может объяснить, что происходит.
1 ответ 1
Связь через Интернет осуществляется путем отправки множества небольших пакетов информации. Каждый пакет перемещается от его источника к месту назначения устройствами, которые называются маршрутизаторами. Маршрутизаторы соединяют множество различных небольших сетей, составляющих общедоступный Интернет.
Когда пакет проходит через маршрутизатор, маршрутизатор уменьшает поле TTL (Time To Live) пакета. Это сделано для двух целей:
Он обеспечивает механизм, позволяющий узнать, сколько маршрутизаторов (то есть прыжков) прошел пакет
Это предотвращает передачу пакетов в бесконечном цикле в случае ошибки конфигурации сети. Когда TTL достигает нуля, маршрутизаторы отбрасывают пакет.
Команда ‘ping’ показывает вам полученный TTL после того, как он уже прошел это уменьшение. Обычно отправитель указывает TTL 128 (или 64), поэтому, если вы получаете его с TTL 117, это означает, что он прошел через 11 маршрутизаторов (128-117).
мой TTL составляет 117 в течение 1 часа, и в одно мгновение без подсказки он меняется на 121, и с этим изменением мои приложения и игры отключаются и переподключаются.
В этом случае изменение вашего TTL является не причиной вашей проблемы, а скорее симптомом. Что бы ни вызывало вашу временную потерю подключения к Интернету, это также приводит к тому, что ваши пакеты выбирают другой маршрут к месту назначения. Если TTL изменяется для всех ваших пакетов, это говорит о том, что проблема очень близка вам, либо в вашей локальной сети, либо в сети вашего провайдера.
Какое поле айпи пакета предотвращает бесконечный цикл
Рис. 4.4.1.1. Формат дейтограммы Интернет
Субполе Приоритет предоставляет возможность присвоить код приоритета каждой дейтограмме. Значения приоритетов приведены в таблице (в настоящее время это поле не используется).
0 Обычный уровень
1 Приоритетный
2 Немедленный
3 Срочный
4 Экстренный
5 ceitic/ecp
6 Межсетевое управление
7 Сетевое управление
Табл. 4.4.1.1. Значения TOS для разных протоколов
Процедура | Минимал. задержка | Максим. пропускная способность | Максим. надежность | Минимал. стоимость | Код TOS | ||||||||||
Селектор класса | DSCP |
Приоритет 1 | 001000 |
Приоритет 2 | 010000 |
Приоритет 3 | 011000 |
Приоритет 4 | 100000 |
Приоритет 5 | 101000 |
Приоритет 6 | 110000 |
Приоритет 7 | 111000 |
На базе DSCP разработана технология «пошагового поведения» PHB (per Hop Behavior). В рамках этой политики определяются коды DSCP внутри классов. Например, для политики немедленной переадресации EF рекомендуемое значение DSCP=101110. Эта политика соответствует наиболее высокому уровню обслуживания.
Маршрут транспортировки IP-дейтограммы нельзя знать заранее, это связано с поэтапным (по-шаговом) принятием решения о пути каждого пакета. Это свойство маршрутизации обусловлено тем, что IP является протоколом передачи данных без установления соединения.
Поле контрольная сумма заголовка вычисляется с использованием операций сложения 16-разрядных слов заголовка по модулю 1. Сама контрольная сумма является дополнением по модулю один полученного результата сложения. Обратите внимание, здесь осуществляется контрольное суммирование заголовка, а не всей дейтограммы. Поле опции не обязательно присутствует в каждой дейтограмме. Размер поля опции зависит от того, какие опции применены. Если используется несколько опций, они записываются подряд без каких-либо разделителей. Каждая опция содержит один октет кода опции, за которым может следовать октет длины и серия октетов данных. Если место, занятое опциями, не кратно 4 октетам, используется заполнитель. Структура октета кода опции отражена на рис. 4.4.1.2.
Урок 5. Сетевой уровень. Описание протокола IP
К протоколам сетевого уровня относят 2 протокола: IP и ICMP. В этом уроке мы рассмотрим протокол IPv4.
IP (Internet Protocol) используется в качестве маршрутизируемого протокола, который перенаправляет пакеты от одного узла к другому, используя IP адреса. IP адрес представляет собой уникальный идентификатор сетевого устройства. С помощью данного идентификатора пакеты доставляются конечным узлам.
В отличие от протоколов верхних уровней IP протокол не устанавливает и не управляет соединениями, не контролирует передачу данных и не исправляет ошибки. Все эти функции возложены на протоколы транспортного и прикладного уровней.
При поступлении сегмента с транспортного уровня добавляется 20-ти байтный заголовок, хотя в некоторых случаях его длина может достигать и 60
Для чего нужен TTL?
Для предотвращения зацикливания при маршрутизации. При неправильной конфигурации пакет может блуждать по сети бесконечно, поэтому и ввели такой параметр. Максимальное значение равно 255, то есть пакет может пройти максимум через 255 маршрутизаторов.
Рассмотрим упрощенную схему работы протокола.
На передаче:
На приеме:
Порядок фрагментации следующий:
1) Проверяется флаг DF. Если он равен 1, то фрагментация не происходит ни при каких обстоятельствах и пакет уничтожается. Отправителю пакета посылается сообщение Fragmentation needed.
2) Если DF = 0, то исходный пакет делится на равные части. Последний фрагмент обычно меньше остальных.
3) Заголовок исходного пакета копируется в заголовки фрагментов, то есть все заголовки одинаковы.
4) В поле Identification всех фрагментов записывается уникальное и одинаковое число.
5) Во всех фрагментах, кроме последнего, флагу MF присваивается 1. В последнем фрагменте флаг MF равен 0.
6) В поле Fragment offset записывается положение фрагмента в общем потоке. В первом фрагменте это значение всегда равно 0.
Рассмотрим фрагментацию на простом примере. Необходимо фрагментировать пакет длиной в 300 байт на 3 части длиной по 100 байт.
Вот как выглядит заголовок исходного пакета
А вот как выглядят фрагменты после деления:
На приеме для сборки пакетов сравниваются следующие параметры:
Если первые 3 параметра совпадают, то фрагменты собираются.
1.7.7. Структура пакетов IP и TCP
1.7.7. Структура пакетов IP и TCP
Вот теперь можно смело перейти к рассмотрению структуры пакетов IP и TCP. Протокол IP не ориентирован на соединение, поэтому не обеспечивает надежную доставку данных. Поля, описание которых приведено в табл. 1.6, представляют собой IP-заголовки и добавляются к пакету при его получении с транспортного уровня.
Структура заголовка IP-пакета Таблица 1.6
Поле Описание Source IP-address (IP-адрес отправителя) Отправитель пакета Destination IP-address (IP-адрес получателя) Получатель пакета Protocol (Протокол) TCP или UDP Checksum (Контрольная сумма) Значение для проверки целостности пакета TTL (Time to Live, время жизни пакета) Определяет, сколько секунд дейтаграмма может находиться в сети. Предотвращает бесконечное блуждание пакетов в сети. Значение TTL автоматически уменьшается на одну или более секунд при проходе через каждый маршрутизатор сети Version Версия протокола IP — 4 или 6. Шестая версия протокола IP рассматривается в гл. 8 (4 бита) Header Length (Длина заголовка) Минимальный размер заголовка — 20 байт (4 бита) Type of Service (Тип обслуживания) Обозначение требуемого для этого пакета качества обслуживания при доставке через маршрутизаторы IP-сети. Здесь определяются приоритет, задержки, пропускная способность. (8 бит) Total Length (Общая длина) Длина дейтаграммы IP-протокола (16 бит) Identification (Идентификация) Идентификатор пакета. Если пакет фрагментирован (разбит на части), то все фрагменты имеют одинаковый идентификатор (16 бит) Fragmentation Flags (Фрагментационные флаги) 3 бита для флагов фрагментации и 2 бита для текущего использования Fragmentation Offset (Смещение фрагмента) Указывает на положение фрагментов относительно начала поля данных IP-пакета. Если фрагментации нет, смещение равно 0x0 (13 бит) Options and Padding (Опции и заполнение) Опции
Протокол TCP, в отличие от протокола IP, ориентирован на установление соединения и обеспечивает надежную доставку данных. Структура TCP-пакета описана в табл. 1.7.
Структура TCP-пакета Таблица 1.7
Поле Описание Source port (Порт отправителя) Порт TCP узла-отправителя Destination Port (Порт получателя) Порт TCP узла-получателя Sequence Number (Порядковый номер) Номер последовательности пакетов Acknowledgement Number (Номер подтверждения) Порядковый номер байта, который локальный узел рассчитывает получить следующим Data Length (Длина данных) Длина TCP– пакета Reserved (Зарезервировано) Зарезервировано для будущего использования Flags (Флаги) Описание содержимого сегмента Window (Окно) Показывает доступное место в окне протокола TCP Checksum (Контрольная сумма) Значение для проверки целостности пакета Urgent Pointer (Указатель срочности) При отправке срочных данных (поле Flags) в этом поле задается граница области срочных данных
Данный текст является ознакомительным фрагментом.
Продолжение на ЛитРес
Читайте также
Формат пакетов
Формат пакетов Как уже было сказано, в дистрибутиве Mint принят deb-формат пакетов. Будучи разработан ещё в прошлом тысячелетии для дистрибутива Debian, формат этот был унаследован от него Ubuntu, во многом предопределив успех последней. А вслед за ней — и удачливость нашего
4.10.1. Фильтрация пакетов
4.10.1. Фильтрация пакетов Итак, основной, но не единственной задачей сетевого экрана является фильтрация пакетов. В Linux уже встроен Firewall, и вам его не надо устанавливать отдельно. Точнее сказать, их даже два: iptables и ipchains. Они позволяют контролировать трафик, который проходит
14.12.1. Дефрагментация пакетов
14.12.1. Дефрагментация пакетов С помощью фрагментированных пакетов хакеры производят очень много атак на серверы. В Linux можно сделать так, чтобы ОС объединяла приходящие пакеты. Если у вас монолитное ядро (без поддержки модулей), то необходимо прописать 1 в файл
1.7.7. Структура пакетов IP и TCP
1.7.7. Структура пакетов IP и TCP Вот теперь можно смело перейти к рассмотрению структуры пакетов IP и TCP. Протокол IP не ориентирован на соединение, поэтому не обеспечивает надежную доставку данных. Поля, описание которых приведено в табл. 1.6, представляют собой IP-заголовки и
14.3.2. Фрагментация пакетов
14.3.2. Фрагментация пакетов Иногда передаваемый пакет слишком большой, чтобы его можно было бы передавать за один раз. Если такое происходит, то пакет делится на фрагменты, и эти фрагменты пересылаются. Компьютер, которому этот пакет предназначен, собирает эти фрагменты в
19.5. Создание RPM-пакетов
19.5. Создание RPM-пакетов Программа RPM предназначена для произведения всех видов операций с программным обеспечением, в том числе и для создания пакетов для установки (RPM-пакетов).Прежде, чем описать много сухих фактов, взятых из документации, рассмотрим простой пример
Передача пакетов
Передача пакетов Следующий этап – это передача пакетов. Транспортировка цифрового трафика осуществляется через Интернет с помощью технологии TCP/IP. Термин TCP/IP обозначает целый набор технологий и прикладных программ, связанных с передачей данных через Интернет. Сюда
3.1. Менеджер пакетов yum
3.1. Менеджер пакетов yum 3.1.1. Основные понятие о пакетах Давайте сначала рассмотрим процесс установки программ в Windows. Как правило, дистрибутив Windows-программы состоит та установочного файла (обычно называется setup.exe или install.exe) и нескольких вспомогательных файлов (например,
3.3.3.1. Установка пакетов
3.3.3.2. Удаление пакетов
16.9. Форматы пакетов RPC
16.9. Форматы пакетов RPC На рис. 16.5 приведен формат запроса RPC в пакете TCP.Поскольку TCP передает поток байтов и не предусматривает границ сообщений, приложение должно предусматривать способ разграничения сообщений. Sun RPC определяет запись как запрос или ответ, и каждая запись
Конвертеры пакетов
Конвертеры пакетов Отдельно хотелось бы отметить наличие утилит, позволяющих конвертировать пакеты из одного формата в другой. Их возможности применения ограничены, так как из пакета одного типа получить полноценный другой тип пакета невозможно. Кроме того, приложения,
9.6. Установка в Ubuntu RPM-пакетов
9.6. Установка в Ubuntu RPM-пакетов В начале этой главы я обещал рассказать, как установить в Ubuntu программы из не предназначенных для этой системы RPM-пакетов. Для этого можно попробовать преобразовать RPM-файл в формат DEB с помощью команды alien, а потом установить обычным
11.3. Установка необходимых пакетов
11.3. Установка необходимых пакетов Первым делом нужно установить основные мультимедиакодеки, поэтому введите одну из двух команд (в зависимости от архитектуры вашей системы):? sudo apt-get install w32codecs — если у вас 32-битная система;? sudo apt-get install w64codecs — для 64-битной
- Статья что такое искусство толстой
- Кто такой ноунейм про людей