Как маршрутизатор определяет, прибыл ли байт?

Обновлено: 19.05.2024

Версия IP: указывает версию IP, используемую пакетом. Значение 4 указывает версию IP 4, которая сегодня является наиболее распространенной версией. Значение 6 указывает на более новую IP-версию 6, которая начинает получать более широкое распространение (и, вероятно, в будущем будет доминировать в IPv4).

Длина IP-заголовка: указывает длину заголовка в 32-битных словах. Типичные пакеты IPv4 с длиной заголовка 20 байт имеют значение 5, что означает пять 32-битных (4-байтовых) слов. Напомним, что заголовок IPv4 не имеет фиксированной длины. Его минимальная длина составляет 20 байт (значение длины заголовка IP равно 5), но если включены параметры IP, может быть указана максимальная длина до 60 байт (значение 15 или 0x0F).

Примечание. Исторически размер заголовка пакетов IPv4 переменной длины всегда был проблематичным по причинам маршрутизации и безопасности. Стоит отметить, что IPv6 имеет размер заголовка фиксированной длины, равный 40 байтам, и нет соответствующего поля длины заголовка. Упрощенный заголовок фиксированной длины IPv6 предназначен для ускорения обработки и решения многих проблем безопасности, связанных с параметрами заголовка IPv4.

Тип службы (ToS): указывает, как протокол верхнего уровня хотел бы, чтобы пакеты ставились в очередь и обрабатывались сетевыми элементами по мере их пересылки по сети (если это настроено). Обычно это значение равно нулю (0), но ему может быть присвоено другое значение, чтобы указать другой уровень важности.

Общая длина: указывает длину в байтах всего IP-пакета, включая данные и IP-заголовок.

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

Флаги: состоят из 3-битного поля, два младших бита которого управляют фрагментацией. Старший (первый) бит не используется и должен быть установлен в 0. Средний (второй) бит «Не фрагментировать» (DF) указывает, разрешена ли фрагментация пакета (0 = фрагментация разрешена, 1 = фрагментация не допускается). Младший (третий) бит «Больше фрагментов» (MF) указывает, является ли пакет последним фрагментом в серии фрагментированных пакетов (установлен в 1 для всех фрагментов, кроме последнего, сообщая конечной станции, какой фрагмент является последним). ).

Смещение фрагмента: предоставляет позицию (смещение) данных фрагмента относительно начала данных в исходной дейтаграмме в байтах, что позволяет IP-процессу назначения правильно реконструировать исходную дейтаграмму.

Время жизни (TTL): указывает максимальное количество ссылок (также называемых "переходами"), по которым может проходить пакет. Этот счетчик уменьшается на единицу каждым маршрутизатором, который обрабатывает пакет, пересылая его к месту назначения. Когда значение TTL достигает 0, дейтаграмма отбрасывается. Это предотвращает бесконечное зацикливание пакетов, которое могло бы произойти, например, во время случайных петель маршрутизации.

Протокол: указывает, какой протокол верхнего уровня получает входящие пакеты после завершения обработки IP. Обычно это указывает на тип полезной нагрузки, которую передает IP. Например, значение 1 указывает на то, что IP передает пакет ICMP, 6 указывает на сегмент TCP, а 17 указывает на то, что пакет UDP передается по IP.

Контрольная сумма заголовка: хэш с дополнением 1, вставляемый отправителем и обновляемый каждым маршрутизатором, который изменяет пакет при его пересылке к месту назначения (что, по сути, означает каждый маршрутизатор, поскольку, как минимум, значение TTL изменяется при каждом прыгать). Контрольная сумма заголовка используется для обнаружения ошибок, которые могут быть внесены в пакет при его прохождении по сети. Пакеты с неверной контрольной суммой должны отбрасываться любым принимающим узлом в сети.

Адрес источника: указывает уникальный IP-адрес узла-отправителя (отправителя IP-пакета).

Адрес назначения: указывает уникальный IP-адрес принимающего узла (конечный пункт назначения пакета).

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

Данные, переносимые IP-пакетом, включая любую дополнительную информацию заголовка верхнего уровня (например, из TCP или UDP), следуют за этим IP-заголовком. Более подробный обзор заголовков протоколов для IP, TCP, UDP и ICMP содержится в Приложении B, «Заголовки IP-протокола». Приложение B также содержит краткое описание того, как некоторые из этих значений заголовков используются для злонамеренных действий и каковы могут быть последствия для безопасности.

Примечание. Специалисты по сетевой безопасности должны очень хорошо разбираться в структурах заголовков IP-протокола, параметрах, операциях и манипуляциях. Эти знания необходимы для понимания и смягчения потенциальных угроз для IP-сети.Угрозы рассматриваются в главе 2, «Модели угроз для IP-сетей», а методы снижения рисков атак рассматриваются в разделе II. Многие превосходные справочники подробно описывают операции IP-протокола. Отличным источником информации является TCP/IP Illustrated, Volume 1. Эта и другие ссылки перечислены в разделе «Дополнительная литература» в конце этой главы.

Переадресация IP основана на адресе получателя в IP-заголовке, а маршрутизаторы — это устройства, которые выполняют переадресацию на основе получателя в IP-сетях. Параметры IP также влияют на маршрутизацию. Маршрутизатор — это сетевое устройство, которое пересылает пакеты вниз по течению к целевому пункту назначения. Он принимает решения о пересылке на основе своих знаний как о сетях, напрямую подключенных, так и о сетях, обнаруженных с помощью операций протокола маршрутизации с другими маршрутизаторами. Маршрутизатор может состоять из множества сетевых интерфейсов, обеспечивающих связь с другими сетевыми объектами, включая маршрутизаторы, хосты, сетевые сегменты и т. д. Как вы узнали в начале этого раздела, все сети имеют по существу два типа пакетов: пакеты данных и пакеты управления. Вы также узнали, что IP-сети переносят оба типа пакетов в общий канал (другими словами, "внутриполосный"). Таким образом, маршрутизатор должен просматривать каждый отдельный пакет, входящий в интерфейс, и решать, какой это тип пакета — данные или контроль — и применять соответствующие процессы к каждому пакету на основе этого определения. Понимание деталей того, как маршрутизаторы выполняют эту операцию, является ключевой концепцией в разделении и защите плоскостей трафика IP-сети.

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

Как же маршрутизатор определяет, какой тип пакета он получает — в основном, пакет данных или управляющий пакет? Как правило, это определение делается с самого начала путем просмотра адреса назначения в заголовке IP. То есть, если адрес назначения пакета должен заканчиваться на самом маршрутизаторе (каждое устройство в сети имеет хотя бы один собственный IP-адрес), то это, скорее всего, управляющий пакет. Если адрес назначения пакета предназначен для пересылки через один из интерфейсов маршрутизатора во внешнее место назначения (с точки зрения отдельного маршрутизатора), то локальный маршрутизатор рассматривает его как пакет уровня данных (хотя это может быть и контрольный пакет). пакет для другого нижестоящего маршрутизатора.) Почему это важно, так это то, что маршрутизаторы оптимизированы для пересылки пакетов данных. Управляющие пакеты в нормальных условиях составляют небольшой процент пакетов, обрабатываемых маршрутизатором. Как маршрутизаторы обрабатывают различные типы пакетов, обсуждается в разделе «Концепции IP-трафика» этой главы. Как вы узнаете, эти различия в обработке часто сильно влияют на сетевую безопасность. В главе 2 эти концепции обсуждаются более подробно.

Концепции IP-трафика

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

Как показано на рис. 1-5, один маршрутизатор участвует в более крупной сетевой среде, возможно, даже в Интернете.Таким образом, отдельные маршрутизаторы сами по себе могут понимать или не понимать полный контекст каждого обрабатываемого ими IP-пакета (другими словами, к какой плоскости IP-трафика относится пакет). С точки зрения каждого маршрутизатора в тот момент, когда он обрабатывает отдельный пакет, важен тип трафика тип IP, который он видит. Концепция транспортных плоскостей является логической, а не физической. Концепция типа трафика является реальной и находится в центре внимания этого раздела.

Необходимо полностью понять, как маршрутизаторы на самом деле обрабатывают различные типы пакетов. Почему маршрутизаторы обрабатывают одни пакеты не так, как другие? Каковы последствия для безопасности в результате различий? Это концепции, которые требуют более глубокого понимания трех широких категорий: транзитных, приемных и исключительных пакетов.

Взгляд на IP-сети

Транзитные IP-пакеты

IP-сети предназначены для пересылки пакетов между конечными хостами. Что делает маршрутизатор, в первую очередь, так это принимает пакеты в одном интерфейсе, просматривает поле назначения в заголовке IP, ищет совпадение с сетью назначения в таблице маршрутизации (созданной плоскостью управления!), и пересылает пакет наружу. соответствующий интерфейс, который переводит пакет на один шаг ближе к конечному пункту назначения.

В случае транзитных пакетов сеть назначения находится где-то за пределами маршрутизатора. То есть IP-адрес не принадлежит конкретному маршрутизатору, обрабатывающему пакет, а находится где-то еще в сети. Пункт назначения может находиться в подсети с прямым подключением (LAN) или может находиться на расстоянии многих нисходящих переходов. Суть в том, что пакет направляется не в этому маршрутизатору, а, точнее, через этот маршрутизатор. Следовательно, когда маршрутизатор видит транзитный пакет, он принимает решение о пересылке пакета через один из своих интерфейсов. Маршрутизаторы обычно используют специализированное аппаратное обеспечение и алгоритмы пересылки для максимально быстрого выполнения этой функции пересылки. Дополнительные сведения об архитектуре переадресации маршрутизаторов обсуждаются в разделе «Общие типы архитектуры IP-маршрутизаторов» этой главы.

Обратите внимание, что здесь нет явных или неявных утверждений о том, к какой плоскости IP-трафика относятся эти транзитные пакеты. С точки зрения одного маршрутизатора транзитные пакеты могут относиться к любой плоскости IP-трафика, как вы скоро увидите. Рассмотрим пример сеанса управления между клиентом Secure Shell (SSH) в центре сетевых операций (NOC) и маршрутизатором в ядре сети. Пакеты сеанса управления проходят через множество маршрутизаторов на пути к маршрутизатору назначения. Следовательно, они являются транзитными пакетами для каждого маршрутизатора на пути, пока не достигнут конечного основного маршрутизатора. На этом последнем маршрутизаторе они больше не являются транзитными пакетами, а являются пакетами receive или receive-adjacency. (См. следующий раздел.) Тем не менее, как вы скоро узнаете, с логической точки зрения ясно, что все эти пакеты являются частью плоскости управления с точки зрения плоскости трафика.

IP-пакеты смежности при приеме

IP-пакеты, поступающие на маршрутизатор и предназначенные для IP-адреса, принадлежащего этому маршрутизатору в качестве конечного пункта назначения, называются пакетами receive-adjacency..

Примечание. Термин получить пакет или получить пакет смежности происходит от номенклатуры, используемой таблицей смежности, созданной Cisco Express Forwarding (CEF). механизм пересылки. Когда CEF строит свою таблицу смежности, он перечисляет IP-адреса интерфейсов (как физических, так и логических), которые принадлежат маршрутизатору, как «получающие». Другой термин, используемый в некоторых документах, — пакеты «для нас». CEF обсуждается более подробно далее в этом разделе.

Когда маршрутизатор видит пакеты смежности при приеме, адрес назначения пакета всегда принадлежит самому маршрутизатору. Это может быть IP-адрес физического интерфейса или логического интерфейса, такого как интерфейс loopback или интерфейс туннеля. Эти пакеты могли прийти с хоста в напрямую подключенной локальной сети или они могли прийти после прохождения нескольких или многих вышестоящих маршрутизаторов, чтобы добраться до этого конечного маршрутизатора. В любом случае решение, которое маршрутизатор принимает, когда видит пакеты смежности при приеме, сильно отличается от решения, которое он принимает для транзитных пакетов. С пакетами смежности при приеме маршрутизатор не может задействовать какое-либо специализированное оборудование для пересылки; маршрутизатор должен сам обработать пакет, используя собственные локальные ресурсы ЦП.

Примечание. Термин, часто используемый в документации для описания перемещения пакета с обычного высокоскоростного пути пересылки на собственный ЦП маршрутизатора для локальной обработки, называется пунт. Например, вы можете прочитать, что некоторые типы пакетов «передаются в ЦП для обработки». Эта терминология будет использоваться и в этой книге.

Хотя может показаться, что все принимаемые пакеты являются управляющими, это не так. Как и в случае с транзитными пакетами, многие типы пакетов потенциально попадают в категорию приема. Пакеты получения обычно включают трафик в плоскостях control, management и services .

Самое главное, что нужно понимать при работе с полученными пакетами, заключается в том, что маршрутизатор должен обрабатывать их иначе, чем транзитные пакеты. Обычно это означает, что маршрутизатор использует другое аппаратное и/или программное обеспечение для обработки этих пакетов и почти всегда скорость обработки намного ниже, чем для транзитных пакетов. То, как взаимодействие по обработке принимаемых и транзитных пакетов влияет на общую производительность маршрутизатора, а также последствия этого для безопасности сети, является одной из основных причин, почему сегментация и контроль плоскости IP-трафика так важны.

Исключительные IP-пакеты и не IP-пакеты

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

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

Исключительные IP-пакеты

Пример IP-пакета исключения: IP-пакет поступает на маршрутизатор и определяется как транзитный (другими словами, маршрутизатор хочет переслать его вниз по течению). Однако поле TTL в заголовке IP имеет значение 1. Поскольку маршрутизатор должен уменьшить значение поля TTL перед пересылкой пакета, результирующее значение будет равно 0. Сетевой протокол IP требует, чтобы пакеты с TTL = 0 быть сброшенным. Кроме того, сообщение об ошибке ICMP должно быть сгенерировано и отправлено обратно отправителю пакета, чтобы сообщить ему, что пакет был отброшен. Конкретным сообщением об ошибке ICMP является сообщение «превышено время в пути» или ICMP типа 11, код 0. (Подробные сведения о сообщениях об ошибках ICMP см. в Приложении B.) Условие исключения здесь связано с тем, что маршрутизатор должен изменить его обычная обработка транзитных пакетов, чтобы отбросить пакет с истекшим сроком действия и сгенерировать и отправить правильное сообщение ICMP обратно к источнику исходного пакета. Этот процесс исключения требует от маршрутизатора дополнительных ресурсов, которые он в противном случае не использовал бы, просто для пересылки пакета.

Как работает Интернет?

С чего начать? Интернет-адреса

Поскольку Интернет представляет собой глобальную сеть компьютеров, каждый компьютер, подключенный к Интернету, должен иметь уникальный адрес. Интернет-адреса имеют вид nnn.nnn.nnn.nnn, где nnn должно быть числом от 0 до 255. Этот адрес известен как IP-адрес. (IP означает Интернет-протокол; подробнее об этом позже.)

На рисунке ниже показаны два компьютера, подключенных к Интернету. ваш компьютер с IP-адресом 1.2.3.4 и другой компьютер с IP-адресом 5.6.7.8. Интернет представлен как абстрактный объект между ними. (По мере продвижения этой статьи Интернет-часть Диаграммы 1 будет объясняться и перерисовываться несколько раз по мере раскрытия деталей Интернета.)

Диаграмма 1

Если вы подключаетесь к Интернету через интернет-службу Провайдер (ISP), вам обычно назначается временный IP-адрес на время вашего сеанса телефонного подключения. Если вы подключаетесь к Интернету из локальной сети (LAN), ваш компьютер может иметь постоянный IP-адрес или может получить временный IP-адрес от сервера DHCP (протокол динамической конфигурации хоста). В любом случае, если вы подключены к Интернету, ваш компьютер имеет уникальный IP-адрес.

Стеки и пакеты протоколов


Уровень протокола Комментарии
Приложение Уровень протоколов Протоколы, специфичные для таких приложений, как WWW, электронная почта, FTP и т. д.
Уровень протокола управления передачей TCP направляет пакеты определенному приложению на компьютере, используя номер порта.
Уровень протокола Интернета IP направляет пакеты на определенный компьютер, используя IP-адрес .
Аппаратный уровень Преобразует двоичные пакетные данные в сетевые сигналы и обратно.
(Например, сетевая карта Ethernet, модем для телефонных линий и т. д. .)

Если бы мы пошли по пути, то сообщение "Привет, компьютер 5.6.7.8!" брал с нашего компа на комп с IP адресом 5.6.7.8, получилось бы примерно так:

<ПР>
  • Сообщение будет начинаться с вершины стека протоколов на вашем компьютере и продвигаться вниз.
  • Если отправляемое сообщение длинное, каждый уровень стека, через который проходит сообщение, может разбивать сообщение на более мелкие фрагменты данных. Это связано с тем, что данные, отправляемые через Интернет (и большинство компьютерных сетей), отправляются управляемыми фрагментами. В Интернете эти фрагменты данных называются пакетами .
  • Пакеты будут проходить через прикладной уровень и переходить на уровень TCP. Каждому пакету присваивается номер порта. Порты будут объяснены позже, но достаточно сказать, что многие программы могут использовать стек TCP/IP и отправлять сообщения. Нам нужно знать, какая программа на целевом компьютере должна получить сообщение, потому что она будет прослушивать определенный порт.
  • После прохождения уровня TCP пакеты переходят на уровень IP. Здесь каждый пакет получает адрес назначения 5.6.7.8.
  • Теперь, когда у наших пакетов сообщений есть номер порта и IP-адрес, они готовы к отправке через Интернет. Аппаратный уровень заботится о преобразовании наших пакетов, содержащих буквенный текст нашего сообщения, в электронные сигналы и их передаче по телефонной линии.
  • На другом конце телефонной линии ваш интернет-провайдер имеет прямое подключение к Интернету. Маршрутизатор провайдера проверяет адрес назначения в каждом пакете и определяет, куда его отправить. Часто следующей остановкой пакета является другой маршрутизатор. Подробнее о маршрутизаторах и интернет-инфраструктуре позже.
  • В конце концов пакеты достигают компьютера 5.6.7.8. Здесь пакеты начинаются с нижней части стека TCP/IP целевого компьютера и идут вверх.
  • По мере продвижения пакетов вверх по стеку все данные маршрутизации, добавленные стеком отправляющего компьютера (например, IP-адрес и номер порта), удаляются из пакетов.
  • Когда данные достигают вершины стека, пакеты снова собираются в исходную форму: "Привет, компьютер 5.6.7.8!"
  • Сетевая инфраструктура

    Теперь вы знаете, как пакеты передаются с одного компьютера на другой через Интернет. Но что между ними? Из чего на самом деле состоит Интернет? Давайте посмотрим на другую диаграмму:

    Диаграмма 3

    Здесь мы видим диаграмму 1, перерисованную с большей детализацией. Физическое подключение через телефонную сеть к интернет-провайдеру было несложно догадаться, но помимо этого могло быть какое-то объяснение.

    У поставщика услуг Интернета есть пул модемов для своих клиентов с коммутируемым доступом. Это управляется каким-либо компьютером (обычно выделенным), который управляет потоком данных от модемного пула к магистральному или выделенному маршрутизатору. Эту настройку можно назвать сервером портов, поскольку она «обслуживает» доступ к сети. Здесь также обычно собирается информация об оплате и использовании.

    После того как ваши пакеты проходят через телефонную сеть и локальное оборудование вашего интернет-провайдера, они перенаправляются на магистральную сеть интернет-провайдера или на магистральную сеть, у которой интернет-провайдер покупает полосу пропускания. Отсюда пакеты обычно проходят через несколько маршрутизаторов и по нескольким магистралям, выделенным линиям и другим сетям, пока не найдут пункт назначения — компьютер с адресом 5.6.7.8. Но было бы неплохо, если бы мы знали точный маршрут, по которому наши пакеты проходят через Интернет? Как оказалось, способ есть.

    Интернет-инфраструктура

    Магистральная сеть Интернета состоит из множества крупных сетей, которые соединяются друг с другом. Эти крупные сети известны как поставщики сетевых услуг или NSP. Одними из крупных NSP являются UUNet, CerfNet, IBM, BBN Planet, SprintNet, PSINet и другие. Эти сети взаимодействуют друг с другом для обмена пакетным трафиком. Каждый NSP должен подключаться к трем точкам доступа к сети или NAP. В точках NAP пакетный трафик может переходить из одной магистрали NSP в магистральную сеть другого NSP. NSP также соединяются на городских биржах или MAE. MAE служат той же цели, что и NAP, но находятся в частной собственности. NAP были первоначальными точками подключения к Интернету.И NAP, и MAE называются точками обмена интернет-трафиком или IX. NSP также продают полосу пропускания более мелким сетям, таким как интернет-провайдеры и более мелкие поставщики полосы пропускания. На рисунке ниже показана эта иерархическая инфраструктура.

    Диаграмма 4

    Это не точное представление реального фрагмента Интернета. Диаграмма 4 предназначена только для демонстрации того, как поставщики сетевых услуг могут взаимодействовать друг с другом и более мелкими интернет-провайдерами. Ни один из компонентов физической сети не показан на диаграмме 4 так, как на диаграмме 3. Это связано с тем, что магистральная инфраструктура отдельного NSP сама по себе представляет собой сложный рисунок. Большинство поставщиков сетевых услуг публикуют карты своей сетевой инфраструктуры на своих веб-сайтах, и их легко найти. Нарисовать реальную карту Интернета было бы почти невозможно из-за его размера, сложности и постоянно меняющейся структуры.

    Иерархия интернет-маршрутизации

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

    Маршрутизаторы — это коммутаторы пакетов. Маршрутизатор обычно подключается между сетями для маршрутизации пакетов между ними. Каждый маршрутизатор знает о своих подсетях и используемых ими IP-адресах. Маршрутизатор обычно не знает, какие IP-адреса находятся «над ним». Изучите диаграмму 5 ниже. Черные ящики, соединяющие магистрали, — это маршрутизаторы. Более крупные магистрали NSP наверху подключаются к NAP. Под ними несколько подсетей, а под ними еще подсетей. Внизу две локальные сети с подключенными компьютерами.

    Диаграмма 5

    Когда пакет поступает на маршрутизатор, маршрутизатор проверяет IP-адрес, помещенный туда уровнем протокола IP на исходном компьютере. Маршрутизатор проверяет свою таблицу маршрутизации. Если сеть, содержащая IP-адрес, найдена, пакет отправляется в эту сеть. Если сеть, содержащая IP-адрес, не найдена, маршрутизатор отправляет пакет по маршруту по умолчанию, обычно вверх по магистральной иерархии к следующему маршрутизатору. Будем надеяться, что следующий маршрутизатор будет знать, куда отправить пакет. Если это не так, пакет снова направляется вверх, пока не достигнет магистрали NSP. Маршрутизаторы, подключенные к магистралям NSP, содержат самые большие таблицы маршрутизации, и здесь пакет будет перенаправлен на правильную магистраль, где он начнет свое путешествие «вниз» через все более и более мелкие сети, пока не найдет пункт назначения.

    Доменные имена и разрешение адресов

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

    Диаграмма 6

    Служба доменных имен имеет иерархическую структуру, аналогичную к иерархии IP-маршрутизации. Компьютер, запрашивающий разрешение имени, будет перенаправлен «вверх» по иерархии до тех пор, пока не будет найден DNS-сервер, способный разрешить доменное имя в запросе. На рис. 6 показана часть иерархии. В верхней части дерева находятся корни доменов. Некоторые из старых, более распространенных доменов видны вверху. Что не показано, так это множество DNS-серверов по всему миру, которые формируют остальную часть иерархии.

    При настройке подключения к Интернету (например, для локальной сети или удаленного доступа к сети в Windows) в процессе установки обычно указываются один первичный и один или несколько вторичных DNS-серверов. Таким образом, любые интернет-приложения, которым требуется разрешение доменных имен, смогут работать правильно. Например, когда вы вводите веб-адрес в свой веб-браузер, браузер сначала подключается к вашему основному DNS-серверу. После получения IP-адреса для введенного вами доменного имени браузер подключается к целевому компьютеру и запрашивает нужную веб-страницу.

    Проверить — отключить DNS в Windows Если вы используете Windows 95/NT и имеете доступ к Интернету, вы можете просмотреть свой DNS сервер(ы) и даже отключить их.

    Если вы используете удаленный доступ к сети:
    Откройте окно удаленного доступа к сети (которое можно найти в проводнике Windows под дисководом компакт-дисков и над сетевым окружением). Щелкните правой кнопкой мыши свое подключение к Интернету и выберите «Свойства». Внизу окна свойств подключения нажмите Настройки TCP/IP.кнопка.

    Если у вас есть постоянное подключение к Интернету:
    щелкните правой кнопкой мыши Сетевое окружение и выберите Свойства. Щелкните Свойства TCP/IP. Выберите вкладку Конфигурация DNS вверху.

    Теперь вы должны посмотреть на IP-адреса ваших DNS-серверов. Здесь вы можете отключить DNS или установить для своих DNS-серверов значение 0.0.0.0. (Сначала запишите IP-адреса ваших DNS-серверов. Возможно, вам также придется перезагрузить Windows.) Теперь введите адрес в веб-браузере. Браузер не сможет разрешить доменное имя, и вы, вероятно, получите неприятное диалоговое окно, объясняющее, что DNS-сервер не найден. Однако, если вы введете соответствующий IP-адрес вместо имени домена, браузер сможет получить нужную веб-страницу. (Используйте ping для получения IP-адреса перед отключением DNS.) Другие операционные системы Microsoft аналогичны.

    Пересмотр интернет-протоколов

    Как упоминалось ранее в разделе о стеках протоколов, можно предположить, что в Интернете используется множество протоколов. Это верно; существует множество протоколов связи, необходимых для работы Интернета. К ним относятся протоколы TCP и IP, протоколы маршрутизации, протоколы управления доступом к среде, протоколы прикладного уровня и т. д. В следующих разделах описываются некоторые из наиболее важных и часто используемых протоколов в Интернете. Сначала обсуждаются протоколы более высокого уровня, а затем протоколы более низкого уровня.

    Когда вы вводите URL-адрес в веб-браузере, происходит следующее:

    Протоколы приложений: SMTP и электронная почта

    Когда вы открываете почтовый клиент для чтения электронной почты, обычно происходит следующее:

    <ПР>
  • Почтовый клиент (Netscape Mail, Lotus Notes, Microsoft Outlook и т. д.) открывает соединение со своим почтовым сервером по умолчанию. IP-адрес или доменное имя почтового сервера обычно настраиваются при установке почтового клиента.
  • Почтовый сервер всегда будет передавать первое сообщение, чтобы идентифицировать себя.
  • Клиент отправит команду SMTP HELO, на которую сервер ответит сообщением 250 OK.
  • В зависимости от того, проверяет ли клиент почту, отправляет почту и т. д., соответствующие SMTP-команды будут отправлены на сервер, который ответит соответствующим образом.
  • Эта транзакция запроса/ответа будет продолжаться до тех пор, пока клиент не отправит SMTP-команду QUIT. Затем сервер попрощается, и соединение будет закрыто.
  • Протокол управления передачей

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

    TCP работает следующим образом:

    <УЛ>
  • Когда уровень TCP получает данные протокола прикладного уровня сверху, он сегментирует их на управляемые «фрагменты», а затем добавляет к каждому «фрагменту» заголовок TCP с определенной информацией TCP. Информация, содержащаяся в заголовке TCP, включает номер порта приложения, которому необходимо отправить данные.
  • Когда уровень TCP получает пакет от нижележащего уровня IP, уровень TCP удаляет данные заголовка TCP из пакета, при необходимости выполняет некоторую реконструкцию данных, а затем отправляет данные нужному приложению, используя номер порта из заголовка TCP.
  • TCP не является текстовым протоколом. TCP — это ориентированная на соединение, надежная служба потока байтов. Ориентированность на соединение означает, что два приложения, использующие TCP, должны сначала установить соединение перед обменом данными. TCP надежен, потому что для каждого полученного пакета отправителю отправляется подтверждение доставки. TCP также включает в свой заголовок контрольную сумму для проверки полученных данных на наличие ошибок. Заголовок TCP выглядит следующим образом:

    Диаграмма 7

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

    Проверьте это — общеизвестные номера портов Интернета Ниже перечислены номера портов для некоторых наиболее часто используемых интернет-сервисов.

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

    В отличие от TCP, IP является ненадежным протоколом без установления соединения. IP не важно, дойдет ли пакет до адресата или нет. IP также не знает о соединениях и номерах портов. Работа IP также заключается в отправке и маршрутизации пакетов на другие компьютеры. IP-пакеты являются независимыми объектами и могут поступать не по порядку или вообще не поступать. Задача TCP состоит в том, чтобы убедиться, что пакеты прибывают и находятся в правильном порядке. Единственное, что у IP общего с TCP, — это то, как он получает данные и добавляет свою собственную информацию заголовка IP к данным TCP. Заголовок IP выглядит следующим образом:

    Диаграмма 8

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

    Подведение итогов

    Теперь вы знаете, как работает Интернет. Но как долго он будет оставаться таким? Версия IP, используемая в настоящее время в Интернете (версия 4), позволяет использовать только 232 адреса. В конце концов свободных IP-адресов не останется. Удивлен? Не волнуйтесь. IP версии 6 в настоящее время тестируется на исследовательской базе консорциумом исследовательских институтов и корпораций. И после этого? Кто знает. Интернет прошел долгий путь с момента его создания в качестве исследовательского проекта министерства обороны. Никто на самом деле не знает, чем станет Интернет. Однако одно можно сказать наверняка. Интернет объединит мир, как никакой другой механизм. Информационная эра в самом разгаре, и я рад быть ее частью.

    Рус Шулер, 1998 г.
    Обновления 2002 г.

    Ресурсы

    Ниже приведены некоторые интересные ссылки, связанные с некоторыми обсуждаемыми темами. (Надеюсь, они все еще работают. Все открываются в новом окне.)

    Библиография

    Следующие книги являются отличным источником информации и очень помогли в написании этой статьи. Я считаю, что книга Стивенса является лучшим справочником по TCP/IP и может считаться библией Интернета. Книга Шелдона охватывает гораздо более широкий круг вопросов и содержит огромное количество информации о сетях.

    Определения:
    ICMP — протокол контрольных сообщений Интернета, предоставляемый IP, который генерирует сообщения об ошибках, чтобы помочь в диагностике проблем с доставкой IP.
    TTL — время жизни можно рассматривать как счетчик переходов. Дейтаграмма начинается с 30 прыжков, если она не достигает пункта назначения за 30 прыжков, отправляющий узел получает уведомление о том, что узел или хост недоступен.
    Tracert - встроенная в Windows/NT утилита traceroute, которая запускается в окне DOS.
    Утилита traceroute. В sled вы можете ввести traceroute (IP-адрес или полное имя узла)

    Основы интернет-коммуникаций.
    Чтобы понять traceroute, вы должны понять некоторые фундаментальные принципы интернет-коммуникаций. Как вы, возможно, знаете, Интернет передает данные из одного места в другое, форматируя их как «пакеты», которые представляют собой просто порцию данных вместе с некоторой информацией о маршрутизации и некоторыми другими вещами, прикрепленными в определенном формате. Частями дополнительной информации, относящейся к этому обсуждению, являются IP-адрес источника, IP-адрес назначения и время жизни (TTL), которое представляет собой просто число, указывающее, сколько «переходов» пакету разрешено совершать во время своего путешествия. Интернет. Все данные передаются по сети в виде пакетов, и задача многих «маршрутизаторов» Интернета состоит в том, чтобы решить, как доставлять пакеты из одного места в другое. То, как это работает, лучше всего проиллюстрировано пошаговым руководством: когда у одного компьютера есть некоторая информация для отправки (например, веб-страница), он помещает ее в пакет (или несколько пакетов) и устанавливает значение TTL. до некоторого начального значения (обычно 30). Затем компьютер отправляет пакет маршрутизатору (маршрутизатору A), который подключен напрямую, будь то Ethernet, PPP (коммутируемый доступ) или какая-либо другая форма сети. Маршрутизатор A будет называться "шлюзом по умолчанию" для этого компьютера.

    Как правило, все маршрутизаторы в той или иной форме подключены к одному или нескольким ДРУГИМ маршрутизаторам. Маршрутизатор А проверит пакет, чтобы определить IP-адрес назначения, и на основе этого адреса выберет один из этих других маршрутизаторов, который приблизит пакет к месту назначения. Этот новый маршрутизатор (маршрутизатор B) называется «следующим переходом». Существует множество способов разумного выбора маршрутизатором наиболее подходящего Next Hop, но обсуждение «протоколов маршрутизации» выходит за рамки этой статьи. В любом случае маршрутизатор A затем уменьшит TTL на единицу и перенаправит пакет новому маршрутизатору, маршрутизатору B.

    Этот процесс «скачков» повторяется бесконечно, при этом маршрутизатор B выбирает новый следующий переход, уменьшает значение TTL, пересылает пакет и т. д.пока не произойдет одно из двух: 1) пакет достигнет места назначения или 2) значение TTL уменьшится до нуля или «время ожидания». Именно этот последний бит позволяет traceroute творить чудеса. Теперь мы подошли к тому моменту, когда можем объяснить, что именно должен делать traceroute.

    Миссия Traceroute:
    Миссия Traceroute в жизни состоит в том, чтобы показать вам путь, по которому пакет, отправленный с вашего компьютера на какой-либо другой компьютер в сети, проходит от маршрутизатора к маршрутизатору. Он покажет вам IP-адрес (и, как правило, фактическое имя) каждого маршрутизатора, построчно.

    Пришло время привести пример: трассировку лучше использовать, когда вы не можете связаться с каким-либо удаленным сайтом. Например, после небольшого поиска мы обнаружили, что в настоящее время я не могу связаться с 207.13.21.254, и я хочу знать, почему. Используя встроенную в Windows 95/NT утилиту traceroute (называемую «tracert»), мы можем увидеть следующий вывод:

    Прежде всего, обратите внимание, что мы отредактировали строки с 16 по 27. Как видите, для каждого перехода tracert показывает нам номер перехода, три времени "туда-обратно", имя маршрутизатора (если доступно). ) и IP-адрес маршрутизатора. Давайте ненадолго опустим время приема-передачи и рассмотрим другие вещи, которые нам сообщает tracert.

    КАК ЭТО РАБОТАЕТ.
    Еще пара важных моментов о traceroute. Во-первых, КАК ЭТО РАБОТАЕТ. Вы можете вспомнить ICMP (Internet Control Message Protocol), а также то, что мы говорили, что traceroute полагается на тайм-ауты пакетов. Чтобы определить первый переход, traceroute просто отправляет пакет в пункт назначения, но вместо того, чтобы устанавливать TTL равным 30, как обычно, он устанавливает TTL равным 1, что означает, что пакету разрешено использовать только один переход. Он использует этот переход, достигая маршрутизатора «hop 1», который точно уменьшает TTL и замечает, что теперь он равен нулю. Всякий раз, когда маршрутизатор видит, что значение TTL становится равным нулю, он делает две вещи: 1) отбрасывает пакет (вообще НЕ пересылая его) и 2) отправляет ICMP-пакет ОБРАТНО на исходный IP-адрес отброшенного пакета. В этом ICMP-сообщении говорится, что «истек срок жизни в пути». Исходный IP-адрес ICMP-сообщения ЯВЛЯЕТСЯ адресом самого маршрутизатора, поэтому traceroute теперь может видеть IP-адрес маршрутизатора на узле 1. tracert Windows 95/NT (как и большинство) выполняет этот небольшой тест три раза для каждого узла ( по умолчанию), также отслеживая, сколько времени требуется для возврата каждого сообщения об ошибке. Вот как он получает время приема-передачи (в миллисекундах), которое, как и ping, можно использовать для определения того, какие маршрутизаторы могут замедлять работу. К этим цифрам следует относиться с долей скептицизма, поскольку многие маршрутизаторы присваивают ответу ICMP низкий приоритет, что может вызвать небольшую задержку. Также обратите внимание, что это время является кумулятивным, поэтому на самом деле важна разница между средним значением для каждого маршрутизатора. Между прочим, "*" в шаге 5 указывает на пакет, который вообще не получил ответа ICMP. Это результат обычной потери пакетов в сети.

    <УЛ>
  • Отправляет дейтаграмму IP (TTL=1) на хост назначения
  • Первый маршрутизатор уменьшает TTL до 0, отбрасывает дейтаграмму, отправляет обратно ICMP-сообщение о превышении времени (теперь идентифицирован первый маршрутизатор на пути)
  • Отправляет дейтаграмму IP (TTL=2) для идентификации второго маршрутизатора.
  • Процесс продолжается до тех пор, пока не будет достигнут целевой хост.
  • Поскольку хосты не возвращают ICMP-сообщения о превышении времени, traceroute нужен другой метод, чтобы понять, что он достиг конечного пункта назначения. Он отправляет дейтаграммы UDP на порт с очень большим номером (по умолчанию 33434), на котором вряд ли запущено приложение. Это приводит к тому, что узел назначения генерирует сообщение об ошибке ICMP "port unreachable", а traceroute затем интерпретирует это как сигнал о том, что он достиг узла назначения.

    Последнее предостережение, о котором следует упомянуть, заключается в следующем: ОБРАТНЫЙ путь от удаленной машины к вам НЕ ОБЯЗАТЕЛЬНО один и тот же! Такая ситуация называется асимметричной маршрутизацией и обычно не вызывает затруднений. Однако в тех случаях, когда он существует, это может значительно усложнить устранение неполадок, поскольку на обратном пути может существовать какая-то проблема (препятствующая возврату данных к вам), которую traceroute не может вам показать. Некоторые реализации traceroute поддерживают функцию, позволяющую сделать так, чтобы вы могли видеть эту информацию (Подсказка: взгляните на опцию tracert "-j").

    Итак, если вы столкнулись с проблемой на локальном узле, запустите traceroute с помощью tracert или какой-либо другой утилиты. Выполняя traceroute, вы можете определить, доступен ли узел, общую пропускную способность сети; и если узел недоступен, где происходит сбой. Кроме того, если кто-то жалуется, что не может выйти за пределы площадки, попробуйте выполнить трассировку узла за пределами площадки, например 128.8.10.14, который является одним из наших резервных серверов имен. Кроме того, попробуйте внешний traceroute, если кто-то жалуется, что не может выйти за пределы нашей сети. Вот URL-адрес для использования при выполнении внешней трассировки

    Странная вещь 1:
    Traceroute зависает:
    Quick 'n' Dirty: traceroute -n

    Обычно, когда вы выполняете traceroute для доменного имени или IP-адреса, traceroute пытается найти
    имена хостов DNS для IP-адреса на каждом переходе. Если с DNS-сервером возникнут какие-либо проблемы, ваш
    traceroute "зависнет". Это может сбить вас с пути.

    Вместо этого используйте traceroute -n. Это означает "только IP-номера", и любые зависания или проблемы, которые обнаруживаются в
    traceroute, будут полностью связаны с маршрутизацией, которую вы и устраняете.
    Вот пример:

    Вот как выглядит тот же traceroute с поиском DNS:

    Обратите внимание, что "border-sj-tlg" и "gw1-sj-tlg" — это один и тот же IP-адрес. Это настроено в DNS для этого IP-адреса.

    Странная вещь 2:
    Обратите внимание, что строки 2 и 3 одинаковы. Это связано с глючным ядром
    системы 2-го перехода, которое пересылает пакеты с
    нулевым ttl (ошибка в распространяемой версии 4.3BSD).

    1 helios.ee.lbl.gov (128.3.112.1) 19 мс 19 мс 0 мс
    2 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 мс 39 мс 19 мс
    3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 мс 39 мс 19 мс
    4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 мс 40 мс 39

    Странная вещь 3:

    !H означает, что маршрутизатор на этом узле ничего не знает о целевом адресе.

    !N, !P означает, что хост, сеть или протокол недоступны соответственно.

    !S или !F означает сбой исходного маршрута или необходимость фрагментации. Ни одно из этих
    никогда не должно происходить, и связанный с ним шлюз не работает, если вы видите
    один из них.

    Иногда вы увидите трассировку, которая отображает следующую информацию:

    Итак, что здесь происходит. По какой-то причине, вероятно, машина после sl-bbl-fw не возвращает свой ICMP-пакет клиенту, запрашивающему трассировку. Трассировка обходит эту проблему, увеличивая значение ttl на 1 прыжок, пока не получит ответ или пока TTL не достигнет 30 прыжков.

    Во-первых, эти биты встречаются в заголовке, длина которого определяется полем IHL в блоках по 32 бита. Чтобы обеспечить полезное сокращение служебных данных, необходимо удалить как минимум 32 бита. В противном случае значение IHL не уменьшится, и заголовок придется дополнять до тех пор, пока его размер не станет равным размеру, указанному в IHL: точное количество удаленных битов. полное поражение цели.

    Еще одна важная проблема, которая может возникнуть в результате удаления двух неиспользуемых битов TOS, заключается в том, что последующие смещения других полей заголовка IP изменятся, что потребует обновления всех маршрутизаторов и хостов для работы с этим изменением.

    Рассмотрите возможность отправки дейтаграммы размером 3000 байт по каналу с MTU, равным 500 байтам. Сколько фрагментов генерируется? Каковы их характеристики (т.е. каковы флаги и значения смещения для каждого

    Предположим, что флаг DF не был установлен : )
    Предположим, что необязательные поля заголовка IP не используются (т.е. заголовок IP составляет 20 байтов)
    Исходная дейтаграмма была 3000 байтов, вычитая 20 байт для заголовка, что оставляет 2980 байт данных.
    Предположим, что идентификатор исходного пакета равен 'x'.
    При MTU 500 байт в каждом пакете может быть передано 500 - 20 = 480 байт данных.
    Поэтому потолок(2980 /) 480) = для передачи данных требуется 7 пакетов.
    Пакеты будут иметь следующие характеристики (ПРИМЕЧАНИЕ: смещение измеряется блоками по 8 байт, Total_len указывать не нужно)

    Маршрутизатор рассылает IP-пакеты, общая длина которых (данные плюс заголовок) составляет 1024 байта. Предполагая, что пакеты живут в течение 10 секунд, какова максимальная скорость линии, на которой может работать маршрутизатор, не опасаясь зацикливания пространства идентификаторов IP-дейтаграмм? Теперь предположим, что пакеты имеют длину 40 байт (например, IP и TCP, но без данных). Какова новая максимальная скорость линии?

    Идентификационный номер IP-дейтаграммы равен 2 16 = 65535.
    Срок жизни пакета = 10 секунд.
    Поэтому за 10 секунд может быть отправлено не более 65535 пакетов. Если в течение 10 секунд нужно будет отправить еще какие-либо пакеты, будет несколько активных пакетов с одним и тем же идентификатором.
    пол(65535/10) = 6553 пакета/сек

    Максимальная скорость линии при 1024 байт/пакет составляет:
    1024 байт/пакет * 6553 пакета/сек * 8 бит/байт = 53 682 176 бит/с (~ 53,7 Мбит/с)

    Предположим, что вместо 16 битов для сетевой части адреса класса B изначально использовались 20 бит. Сколько сетей класса B было бы?

    Другой способ думать об этом состоит в том, что существует 2 [число сетевых битов - 2] адресов. Мы вычитаем 2, потому что адрес класса B должен начинаться с 10 (в двоичном формате). Таким образом, имеется 2·18 = 262 144 сети.

    Можно ли агрегировать следующие IP-адреса: 57.6.96.0/21, 57.6.104.0/21, 57.6.112.0/21, 57.6.120.0/21? Если да, то к чему? Если нет, то почему?

    Если UCSB будет выделен диапазон адресов 128.111/16 и они захотят разделить его на 8 равных групп адресов, какими именно будут новые диапазоны адресов?

    128,111/16 = 10000000 01101111

    Объясните, как работает traceroute. Включите трассировку к хосту, находящемуся на расстоянии не менее 20 прыжков.

    Traceroute передает пакеты с небольшим значением TTL. Напомним, что TTL (время жизни) — это поле заголовка IP, предназначенное для предотвращения зацикливания пакетов. Каждый маршрутизатор, который обрабатывает пакет, вычитает единицу из TTL пакета. Если TTL достигает нуля, срок действия пакета истек, и он отбрасывается. Traceroute зависит от обычной практики маршрутизатора по отправке сообщения ICMP Time Exceeded, задокументированного в RFC 792, обратно отправителю, когда это происходит. Используя небольшие значения TTL, срок действия которых быстро истекает, traceroute заставляет маршрутизаторы на обычном пути доставки пакета генерировать эти ICMP-сообщения, которые идентифицируют маршрутизатор. Значение TTL, равное единице, должно создавать сообщение от первого маршрутизатора; значение TTL, равное двум, генерирует сообщение от второго; и т. д. Вот трассировка к хосту, находящемуся на расстоянии не менее 20 переходов:

    Можете ли вы спроектировать сеть с недоступными узлами? Почему или почему бы и нет?

    Разработайте сеть, в которой кратчайший путь от узла a к узлу b составляет шесть переходов, а минимальный путь — всего три перехода. Распечатайте свою сеть и включите ее вместе со своим заданием.

    Общее описание работы протокола.

    Создайте случай, когда пакеты данных отправляются, но никогда не достигают адресата. Как вы сгенерировали этот тестовый пример? Другими словами, при каких условиях возникает этот случай?

    Предположим, что узел 0 отправляет пакеты узлу 3 по каналам 0, 1 и 2. После удаления канала 1 узел 0 продолжает отправлять пакеты по каналу 0, пока не получит соответствующие обновления таблицы маршрутизации. Однако пакеты, отправленные в то время, когда у узла 0 была неверная информация о маршруте, никогда не достигнут пункта назначения, даже если в сети есть альтернативный путь.

    Читайте также: