- •Н.В. Будылдина
- •Раздел 1 Стратегии межсетевого взаимодействия……………………………9
- •Раздел 7. Принципы маршрутизации…………….…………………………111
- •Раздел 8 Общая информация о протоколах маршрутизации
- •Раздел 9 Transmission Control Protocol (tcp)………………………………174
- •Раздел 10. User Datagram Protocol (udp)…………………………….……..230
- •Раздел 11 Автоматизация процессов назначения ip – адресов. Протокол dhcp………………………………………………………………….……….240
- •Раздел 12 Служба каталогов на базе протокола ldap…………………...242
- •Введение
- •Целью данного учебного пособия является рассмотреть возможности основных базовых протоколов, используемых в компьютерных сетях. Раздел 1 Стратегии межсетевого взаимодействия
- •1.1 Трансляция протоколов
- •1.2 Мультиплексирование протоколов
- •1.3 Сравнение трансляции и мультиплексирования
- •1.4 Инкапсуляция (туннелирование) протоколов
- •Контрольные вопросы:
- •Раздел 2 Средства согласования протоколов на физическом и канальном уровнях
- •2.1 Функции физического уровня. Средства согласования
- •2.2 Функции канального уровня модели osi
- •2.3 Согласование типа и размера кадров в составных сетях
- •2.4 Использование единого сетевого протокола в маршрутизаторах
- •2.5 Поддержка маршрутизаторами различных базовых технологий
- •Контрольные вопросы:
- •Раздел 3 Протоколы канального уровня
- •3.1 Протокол slip
- •3.2 Протокол ррр
- •3.2.1 Функции ррр различных уровней
- •3.2.2 Логическая характеристика протокола
- •3.2.3 Процедурная характеристика протокола.
- •3.2.4. Установка сеанса связи по протоколу ррр
- •3.2.5 Преимущества ррр
- •Контрольные вопросы:
- •Раздел 4 Протокол управления каналом
- •4.1 Протокол hdlc
- •4.1.1 Формат кадра и типы кадров
- •4.1.2 Управление связью
- •4.1.3 Передача данных
- •1. Запрос каждые 4 кадра. 2. Сквозная передача
- •Контрольные вопросы:
- •Раздел 5 Протоколы нижнего уровня сети internet
- •5.1 Протокол arp
- •5.1.1 Формат протокола arp
- •5.1.2 Работа протокола arp
- •5.2 Протокол rarp
- •Контрольные вопросы:
- •Раздел 6 ip – протокол
- •6.1 Ip – протокол версии 4
- •6.1.1 Основы протокола iPv4
- •6.1.2 Общие принципы адресации протокола iPv4
- •6.1.3 Маскирование подсетей
- •6.1.4 Планирование подсетей
- •6.2 Ip – Протокол версии 6 (iPv6)
- •6.3 Ip версия 6- архитектуры адресации
- •6.3.1 Модель адресации
- •6.3.2 Представление записи адресов (текстовое представление адресов)
- •6.3.3 Представление типа адреса
- •6.3.4 Уникастные адреса
- •6.3.5 Примеры уникастных адресов
- •6.3.6 Не специфицированный адрес
- •6.3.7 Адрес обратной связи
- •6.3.8 IPv6 адреса с вложенными iPv4 адресами
- •6.3.9 Nsap адреса
- •6.3.10 Ipx Адреса
- •6.3.11 Провайдерские глобальные уникаст – адреса
- •6.3.12 Локальные уникаст - адреса iPv6
- •6.3.13 Эникаст-адреса
- •6.3.14 Необходимые эникаст-адреса
- •6.3.15 Мульткаст-адреса
- •0 0 0 Т
- •6.3.16 Предопределенные мультикаст-адреса
- •6.3.17 Необходимые адреса узлов
- •Контрольные вопросы:
- •Раздел 7 Принципы маршрутизации
- •7.1 Алгоритмы выбора маршрутов
- •7.2 Принцип оптимальности
- •7.3 Выбор кратчайшего пути
- •7.4 Заливка
- •7.5 Маршрутизация на основании потока
- •7.6 Дистанционно–векторная маршрутизация
- •7.7 Маршрутизация с учетом состояний линий
- •7.7.1 Знакомство с соседями
- •7.7.2 Измерение стоимости линии
- •7.7.3 Создание пакетов состояния линий
- •7.7.4 Вычисление новых маршрутов
- •7.7.5 Иерархическая маршрутизация
- •7.7.6 Алгоритмы выбора маршрутов для мобильных хостов
- •7.7.7 Широковещательная маршрутизация
- •7.7.8 Многоадресная рассылка
- •Контрольные вопросы:
- •Раздел 8 Общая информация о протоколах маршрутизации в сетях internet
- •8.1 Внутренний протокол маршрутной информации rip
- •8.2 Открытый протокол маршрутизации ospf
- •8.3 Протокол граничного шлюза Border Gateway Protocol версии 4
- •8.3.1 Основы протокола маршрутизации bgp
- •8.3.2 Внешний протокол bgp
- •8.3.3 Внутренний протокол bgp
- •8.3.4 Переговоры с соседними bgp – узлами
- •Раздел 9 Transmission Control Protocol (tcp)
- •9.1 Назначение тср
- •9.2 Уровневое взаимодействие Internet протоколов
- •9.3 Модель сервиса tcp
- •9.4 Протокол tcp
- •9.5 Управление tcp-соединением
- •Управление передачей в tcp
- •9.7 Будущее tcp и его производительность
- •Раздел 10 User Datagram Protocol (udp)
- •10.1 Назначение протокола
- •10.2 Определение окончательного места назначения
- •10.3 Протокол пользовательских дейтаграмм (udр)
- •10.4 Формат udр-сообщений
- •10.5 Псевдозаголовок udр
- •10.6 Разделение на уровни и вычисление контрольной суммы udр
- •10.7 Мультиплексирование, демультиплексирование и порты udр
- •10.8. Зарезервированные и свободные номера портов udp
- •Раздел 11 Автоматизация процессов назначения ip – адресов. Протокол dhcp
- •Раздел 12 Служба каталогов на базе протокола ldap
- •Список литературы
- •620109, Екатеринбург, ул. Репина, 15
2.4 Использование единого сетевого протокола в маршрутизаторах
Сетевой уровень в вычислительных сетях служит для образования единой транспортной системы, объединяющей несколько сетей с различными принципами передачи информации между конечными узлами.
Мосты и коммутаторы, описанные в предыдущих разделах, представляют собой хорошее средство для построения структурированных сетей, но их возможности ограничиваются в основном соединением фрагментов сетей одной или близких технологий. Соединение таких разнородных сетей, как X.25 и Ethernet становится неразрешимой задачей для моста из-за самого принципа его работы, так как для передачи пакетов через сеть X.25 ему необходимо выполнить ряд несвойственных для прозрачного моста операций, например, операцию преобразования пакетов Ethernet с максимальным размером поля данных в 1500 байтов в 128-байтовые пакеты X.25.
Основная идея введения сетевого уровня состоит в том, чтобы оставить технологии, используемые в объединяемых сетях в неизменном в виде, но добавить в кадры всех сетей дополнительную информацию - заголовок сетевого уровня, который позволил бы находить на основании этой информации адресата в сети любого типа. Заголовок пакета сетевого уровня имеет унифицированный формат, не зависящий от форматов кадров канального уровня тех сетей, которые могут входить в интерсеть.
Основным полем заголовка сетевого уровня является номер сети-адресата. В рассмотренных нами ранее протоколах локальных сетей такого поля в кадрах предусмотрено не было - предполагалось, что все узлы принадлежат одной сети. Явная нумерация сетей позволяет протоколам сетевого уровня составлять точную карту межсетевых связей и выбирать рациональные маршруты при любой их топологии, используя альтернативные маршруты, если они имеются, что не умеют делать мосты.
Прежде чем приступить к рассмотрению межсетевого взаимодействия, уточним, что здесь понимается под термином "сеть". Этот термин может употребляться в широком смысле: "сеть - это совокупность связанных между собой компьютеров".
При определении стратегий межсетевого взаимодействия понятие "сеть" использовалось в более узком смысле: "сеть - это совокупность компьютеров, использующих для взаимодействия один и тот же стек протоколов".
В протоколах сетевого уровня термин "сеть" определяется следующим образом: "сеть - это совокупность компьютеров, соединенных между собой в соответствии с одной из стандартных типовых топологий - шина, звезда, кольцо - и использующих для передачи кадров между собой протокол, специально разработанный для этой топологии".
Кроме номера сети, заголовок сетевого уровня должен содержать и другую информацию, необходимую для успешного перехода пакета из сети одного типа в сеть другого типа. К такой информации может относиться, например:
номер фрагмента пакета, нужный для успешного проведения операций сборки-разборки фрагментов при соединении сетей с разными максимальными размерами пакетов,
время жизни пакета, указывающее, как долго он путешествует по интерсети, и которое может использоваться для уничтожения заблудившихся пакетов,
информация о наличии и состоянии связей между сетями, помогающая узлам сети рационально выбирать межсетевые маршруты,
информация о загруженности сетей, также помогающая согласовать темп посылки пакетов в сеть конечными узлами с реальными возможностями сетей на пути следования пакетов,
качество сервиса - критерий выбора маршрута при межсетевых передачах - например, узел-отправитель может потребовать передать пакет с максимальной надежностью, возможно в ущерб времени доставки.
Рисунок 6 - Гипотетическая интерсеть IS N - промежуточная система/шлюз/маршрутизатор N; ESNn - конечная система/узел/хост n
На рисунке 6. приведена гипотетическая интерсеть, иллюстрирующая идею использования сетевого протокола. Интерсеть состоит из 6 сетей, к каждой из которых присоединены ее узлы, которые в соответствии с терминологией ISO называются конечными системами -ES (End System).Терминология ISO здесь используется для удобства, так как сети разных типов используют различные термины для обозначения одних и тех же понятий, что вносит путаницу при рассмотрении механизма межсетевого взаимодействия с общих позиций. Внутренняя структура каждой сети не показана, так как она не имеет значения при рассмотрении сетевого протокола. Сети соединяются маршрутизаторами, которые ISO называет промежуточными системами -IS (Intermediate System).Каждая промежуточная система присоединена к нескольким сетям (по крайней мере, к двум) и имеет в каждой такой сети локальный адрес, как и остальные конечные системы этой сети. Таким образом, каждый маршрутизатор имеет несколько локальных адресов, по числу сетей, подключенных к нему. Обычно каждый локальный адрес связан с соответствующим портом маршрутизатора. Промежуточная система должна поддерживать все протоколы, используемые в каждой из сетей, к которым она непосредственно присоединена.
Узел ES также обязан принимать участие в работе протокола сетевого уровня. Именно конечный узел формирует заголовок сетевого уровня с необходимой информацией, в том числе и адресом сети назначения, и вкладывает его в кадр протокола своей сети, который для локальных сетей является протоколом канального уровня, таким как Ethernet или Token Ring. В заголовке канального уровня конечный узел указывает локальный адрес маршрутизатора, подключенного к его сети, и отправляет ему кадр, с вложенным пакетом сетевого уровня (если на канальном уровне протокольные блоки данных чаще называются кадрами, то на сетевом - пакетами).
Маршрутизатор, получив кадр, извлекает из него заголовок сетевого уровня и решает, каким маршрутом лучше отправить этот пакет далее, если сеть назначения не подключена к нему непосредственно. Принятие решения о маршруте для него равнозначно принятию решения о выборе следующего маршрутизатора. Когда выбор сделан, маршрутизатор упаковывает пакет в кадр сети, которая связывает его со следующим выбранным маршрутизатором, указывает в кадре локальный адрес этого маршрутизатора и отправляет кадр по сети. В конце концов пакет приходит в сеть назначения, где маршрутизатор направляет его в соответствии с локальным адресом узлу назначения.
Важным вопросом является схема адресации узлов в отдельных сетях. В принципе описанный подход не требует наличия уникальных адресов и единой схемы адресации для внутрисетевой доставки пакета. После того как пакет доставлен в нужную сеть с помощью использования ее уникального номера, доставка в пределах этой сети осуществляется по ее правилам, и адрес узла внутри этой сети может быть традиционного для нее формата. Однако различия в форматах адресов узлов не очень удобны для реализации сетевого протокола, так как адрес узла назначения необходимо поместить в заголовок сетевого уровня. В заголовке канального уровня в случае пути, проходящего через несколько сетей, указывается локальный адрес маршрутизатора, который должен передать пакет в другую сеть. Поэтому в некоторых сетевых протоколах, например IP, поле локального адреса в заголовке сетевого уровня имеет специальный формат, не зависящий от форматов локального адреса в составляющих сетях. Другие же сетевые протоколы, например IPX, используют в качестве адреса узла в сетевом заголовке тот формат локального адреса, который принят в сети, содержащей этот адрес. Это ограничивает использование протокола IPX только такими сетями, адрес которых умещается в отведенные ему 6 байтах.
Маршрутизатор выбирает маршрут на основании его представления о текущей конфигурации сети и принятого критерия выбора маршрута. Обычно в качестве критерия выступает время прохождения маршрута, которое в локальных сетях совпадает с длиной маршрута, измеряемой в количестве пройденных узлов маршрутизации (в глобальных сетях это не так, там принимается в расчет и время передачи пакета по каждой линии связи).
В сложных составных сетях почти всегда существует несколько альтернативных маршрутов для передачи пакетов между двумя конечными узлами. Так, в нашем примере для передачи пакетов от узла ES 1.1 сети 1 узлу ES 5.1 сети 5 существует несколько альтернативных маршрутов, из которых наиболее очевидными представляются:
ES1.1 --> IS3 --> СЕТЬ 3 --> IS 6 --> СЕТЬ 5 --> ES5.1
ES1.1 --> IS4 --> СЕТЬ 6 --> IS 8 --> СЕТЬ 5 --> ES5.1
ES1.1 --> IS1 --> СЕТЬ 2 --> IS 2 --> СЕТЬ 4 --> IS 10 --> СЕТЬ 5 --> ES5.1,
Если считать, что все маршрутизаторы и сети работоспособны и производительность и надежность сетей и связей между узлами одинакова.
Хотя можно достаточно просто определить несколько возможных маршрутов, просто рассмотрев топологию интерсети.
Существует большое количество протоколов сетевого уровня, каждый из которых по-своему отвечает на эти вопросы.
Протоколы сетевого уровня делятся на три класса. Протоколы первого класса так и называют протоколами сетевого уровня. Эти протоколы (например, IP, IPX, AppleTalk) переносят пользовательские данные вместе со служебным заголовком сетевого уровня, который включает информацию об адресе сети и узла, а также некоторую дополнительную информацию, описанную выше.
Протоколы второго класса называют протоколами маршрутизации, они выполняют служебные функции для маршрутизаторов - переносят в своих блоках данных информацию о топологии связей интерсети. С помощью этих протоколов маршрутизаторы составляют карту связей сети той или иной степени подробности и принимают решение о том, какому следующему маршрутизатору нужно передать пакет для образования рационального пути. Примерами таких протоколов являются протоколы IPX RIP, IP RIP, EGP, BGP, OSPF, IS-IS. Служебная информация протоколов маршрутизации, иногда называемых также протоколами обмена маршрутной информацией, хранится в поле данных пакета сетевого уровня и имеет еще и свой собственный служебный заголовок, поэтому с точки зрения вложенности пакетов протоколы маршрутизации следует отнести к более высокому уровню, чем сетевой. Но функционально они решают общую задачу с пакетами сетевого уровня - доставляют кадры отдельных сетей нужному адресату через разнородную составную сеть.
Протоколы третьего класса отвечают за отображение адреса узла, используемого на сетевом уровне, в локальный адрес сети. Очевидно, что они нужны только в случае, если сетевой протокол использует в своих заголовках адреса конечных узлов, отличные от локальных (например, так делает протокол IP). Если же на сетевом уровне используются локальные адреса, то надобность в протоколах этого класса отпадает. Такие протоколы часто называют протоколами разрешения адресов-Address Resolution Protocol, ARP.Иногда их относят не к сетевому уровню, а к канальному, хотя тонкости классификации не изменяют их сути.
Использование независимой от канального уровня схемы адресации узлов на сетевом уровне дает возможность протоколу сетевого уровня работать поверх практически любых протоколов канального уровня. Именно такая схема адресации является одной из причин большой гибкости протокола IP, что выгодно отличает его от протокола IPX. Протокол IPX использует в качестве адреса узла копию МАС-адреса, поэтому может работать только поверх протоколов канального уровня локальных сетей.