tanenbaum_seti_all.pages (525408), страница 147
Текст из файла (страница 147)
Прелнолагая, что пакеты живут в течение 10 с, сосчитайте максимальную скорость линии, с которой может работать маршрутизатор без опасности зацикливания в пространстве идентификационных номеров 1р-дейтаграммы. 36. 1Р-дейтаграмма, использующая параметр Строгая маршрутизация от исглочяика, должна быть фрагмсптнрована. Копируется ли зтот параметр в каждый фрагмент, или достаточно поместить его в первый фрагмент? Поясните свой ответ. 3?.
Допустим, вместо 16 бит в адресе класса В лля обозначения номера сети отводилось бы 20 бит. Сколько было бы тогда сетей класса В? 38. Преобразуйте 1Р-адрес, шестнадцатеричное представление которого равно С22Р 1582, в десятичный формат, разделенный точками. 39. Маска подсети сети Интернета равна 255.255.240.0. Чему равно максимальное число хостов в ней? 40. Существует множество адресов, начинающихся с 1Р-адреса 198.16.0.0. Допустим, организации А, В, С и В запрашивают, соответственно, 4000, 2000, 4000 и 8000 адресов.
Для каждой из них укажите первый и последний вьгданные адреса, а также маску вида т.к.у.г~Ъ. 648 Глава 5. Сетевой уровень 41. Маршрутизатор только что получил информацию о следующих 1Р-адресах: 57.6.96.0/21, 57.6.112.0/21 и 57.6.120.0/21. Если для иих используется одна и та же исходящая линия, можно ли их агрегировать7 Если та, то во что? Если иет, то почему7 42, Набор 1Р-адресов с 29.18.0.0 по 19.18.128.255 агрегироваи в 29,18,0.0/17. Тем ие менее, остался пробел из 1024 це присвоенных адресов, с 29,18.60.0 по 29.18.63.255, которые внезапно оказались присвоены хосту, использующему другую исходящую линию.
Необходимо ли теперь разделить агрегированный адрес иа составляющие, добавить в таблицу новый блок, а потом посмотреть, можно ли что-иибудь агрегировать? Если иет, тогда что можно сделать? Маршрутизатор содержит следующие записи (С1ПК) в своей таблице мар- шрутизации: Следующий переход Адрес/маске Куда направит маршрутизатор пакеты со следующими! Р-адресами? 1) 135А6.63.10; Миогие компании придерживаются стратегии установки двух и более маршрутизаторов, соединяющих компанию с провайдером, что гарантирует неко- торый запас прочности па случай, если один из маршрутизаторов выйдет из строя.
Применима ли такая политика при использоваггии гчАТ? Ответ пояс- иите. Вы рассказали товарищу про протокол АКР. Когда вы закончили объясне- ния, оп сказал: «Ясгго. АКР предоставляет услуги сетевому уровню, таким об- разом, ои является частью уровня передачи данных». Что вы ему ответите? 47. Протоколы АКР и КАКР оба устанавливают соответствия адресов из разных адресных пространств, В этом смысле оии похожи. Однако способы их реали- зации в корне рааличиы. В чем их основное отличие? 48. 49. Опишите способ сборки пакета из фрагментов в пункте назначения.
В большинстве алгоритмов сборки 1Р-дейтаграмм из фрагментов использует- ся таймер, чтобы из-за потерянного фрагмента буфер, в котором производится повторная сборка, ие оказался занят остальными фрагментами дейтаграм- мы. Предположим, дейтаграмма разбивается па четыре фрагмента. Первые три фрагмента прибывают к получателю, а четвертый задерживается в пути. 135.46.
56.0/22 135.46.60. О/22 192.53.40.0/23 По умолчанию 2) 135.46.57.14; 3) 135А6.52.2; 4) 192.53.40.7; 5) 192.53.56.7. Интерфейс 0 Интерфейс 1 Маршрутизатор 1 Маршрутизатор 2 Вопросы 649 У получателя истекает период ожидания, и три фрагмента, хранившиеся в его памяти, удаляются. Немного позднее наконец приползает последний фрагмент. Как следует с ним поступить? 50, Как в 1Р, так и в АТМ контрольная сумма покрывает только заголовок, но не данные.
Почему, как вы полагаете, была выбрана подобная схема? 51. Особа, живугцая в Бостоне, едет в Миннеаполис и берст с собой свой персо- нальный компьютер. К ее удивлению, локальная сеть в Миннеаполисе является беспроводной локальной сетью 1Р, поэтому ей нет необходимости подключать свой компьютер. Нужно ли, тем не менее, проходить процедуру с внутренним и внешним агентом, чтобы электронная почта и другой трафик прибывали правильно? 52. Протокол 1Рчб использует 16-байтовые адреса. На какое время хватит этих адресов, если каждую пикосекупду назначать блок в 1 млн адресов? 53. Поле Протокол, используемое в заголовке 1Рч4, отсутствует в фиксирован ном заголовке 1Рчб.
Почему? 54. Должен ли протокол АКР быть изменен при переходе на шестую версию про- токола 1Р? Бели да, то являются ли эти изменения концептуальными или техническими? 55. Напишите программу, моделирующую маршрутизацию методом заливки. Ка ждый пакет должен содержать счстчпк, уменьшасмый на каждом маршрутизаторе. Когда счетчик уменьшается до нуля, пакет удаляется. Время дискретно, и каждая линия обрабатывает за один интервал времени один пакет.
Создайте три версии этой программы: с заливкой по всем линиям, с заливкой по всем линиям, кроме входной линии, и с заливкой только я лучших линий (выбираемых статически). Сравните заливку с детерминированной маршрутизацией (й = 1) с точки зрения задержки и использования пропускной способности, 56.
Напишите программу, моделируюшую компьютернуго сеть с дискретным вре- менем. Первый пакет в очереди каждого маршрутизатора преодолевает по одному транзитному участку за интервал времени. Число буферов каждого маршрутизатора ограничено. Прибывший пакет, лля которого нет свободного места, игнорируется и повторно не передается.
Вместо этого используется сквозной протокол с тайм-аутами и пакетами подтверждения, который, в конце концов, вызывает повторную псредачу пакета маршрутизатором-источником. Постройте график производительности сети как функции интервала сквозного времени ожидания при разных значениях частоты ошибок.
57. Напишите функцию, осуществляющую пересылку в 1Р-маршрутизаторе. У про цедуры должен быть один параметр — 1Р-адрес. Имеется доступ к глобальной таблице, представляю~пей собой массив из троек значений. Каясдая тройка содержит слелующие целочисленные значения; 1Р-адрес, маску подсети и исходяшую линию. Функция ишет 1Р-адрес в таблице, используя СПЖ, и возврашает номер исходящей линии. 560 Глава 5. Свтввой уровень 5В. Используя программы ггасегоиге (()г(1Х) или ппсегг (Ю1пботтз), исследуйте маршрут от вашего компьютера до различных университетов мира. Составьте список трансокеанских линий. Вот некоторые адреса; ввмв.ЬвгКв!ву.вби (Калифорния); влмв.гпй.вби (Массачусетс); ввмфг.уи.п! (Амстердам); улмв.исьас,иК (Лондон); вгвлв.цвуб.вби.аи (Сидней); влмв.н-гоКуо.ас.1р (Токио); влмв.испасла (Кейптаун).
Глава 6 Транспортный уровень Ф Транспортная служба Ф Элементы транспортных протоколов Ф Простой транспортный протокол Ф Транспортные протоколы Интернета: 00Р Ф Транспортные протоколы Интернета: ТСР Ф Вопросы производительности Ф Резюме 1 Вопросы Транспортный уровень — это не просто очередной уровень. Это сердцевина всей иерархии протоколов. Его задача состоит в предоставлении надежной и экономичной передачи данных от машины-источника машине-адресату вне зависимости от физических характеристик использующейся сети или сетей.
Без транспортного уровня вся концепция многоуровневых протоколов потеряет смысл. В данной главе мы подробно рассмотрим транспортный уровень, включая его сервисы, устройство, протоколы и производительность. Транспортная служба В следующих разделах мы познакомимся с транспортной службой.
Мы рассмотрим виды сервисов, предоставляемых прикладному уровню, Чтобы наш разговор не был слишком абстрактным, мы разберем два набора примитивов транспортного уровня. Сначала рассмотрим простой (но не применяемый на практике) набор, просто чтобы показать основные идеи, а затем — реально применяемый в Интернете интерфейс. В$2 Глава б. Транспортный уровень услуги, предоставляемые верхним уровнем )гонечиая цель транспортного уровня заключается в предоставлении эффективных, надежных и экономичных услуг (сервисов) своим пользователям, которыми обычно являются процессы прикладного уровня.
Для достижения атой цели транспортный уровень пользуется услугами, предоставляемыми сетевым уровнем. Аппаратура и/или программа, выполняющая работу транспортного уровня, называется транспортной сущностью или транспортным объектом. Транспортный объект может располагаться в ядре операционной системы, в отдельном пользовательском процессе, в библиотечном модуле, загруженном сетевым приложением, или в сетевой интерфейсной плате. Логическая взаимосвязь сетевого, транспортного и прикладного уровней проиллюстрирована на рис. 6.1. Хост 1 Хост 2 Транспортный ес Прикладной (или сеансовый) уровень Прикладной (или сеансовый) уровень Прикладной!транспортный интерфейс Модуль данных транспортного протокола Транспортная сущность Транспортная сущность Транспортный протокол Сетевой адрес Сетевой уровень Транспортный/сетевой интерфейс Сетевой уровень Рис. 6.1.
Сетевой, транспортный и прикладной уровни Сервисы транспортного уровня, как и сервисы сетевого уровня, могут быть ориентированными на соединение или не требующими соединений. Ориентированный на соединение транспортный сервис во многом похож на ориентированный на соединение сетевой сервис. В обоих случаях соединение проходит три агапа: установка, передача данных и разъединение. Адресация и управление потоком на разных уровнях также схожи. Более того, похожи друг па друга и не требующие соединений сервисы разных уровней. Возникает закономерный вопрос: если сервис транспортного уровня так схож с сервисом сетевого уровня, то зачем нужны два различных уровня? Почему недостаточно одного уровня? Для ответа на втот важный вопрос следует вернуться к рис.
1.7. На рисунке мы видим, что транспортный код запускается целиком на пользовательских машинах, а сетевой уровень запускается в основном на машру- Транспортная служба 553 тизаторах, которые управляются оператором связи (по крайней мере, в глобальных сетях). Что произойдет, если сетевой уровень будет предоставлять ориентированный на соединение сервис, но этот сервис будет ненадежным? Например, если он часто будет терять пакеты? Можно себе представить, что случится, если маршрутизаторы будут время от времени выходить из строя.