- •Н.В. Будылдина
- •Раздел 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
7.6 Дистанционно–векторная маршрутизация
В современных компьютерных сетях обычно используются динамические алгоритмы выбора маршрута. Наиболее популярными являются два динамических алгоритма: дистанционно–векторная маршрутизация и маршрутизация состояния канала.
Каждый маршрутизатор содержит таблицу (то есть вектор), в которой перечисляются кратчайшие известные пути к каждому получателю. Для обновления данных этих таблиц производится обмен информацией с соседними маршрутизаторами.
Таблицы, с которыми работают маршрутизаторы, содержат записи о каждом маршрутизаторе подсети. Каждая запись состоит из двух частей: номера оптимальной линии для данного получателя и оценки расстояния или времени прохождения пакета до этого получателя.
Предполагается, что маршрутизаторам известно расстояние до каждого из соседей. Рассмотрим пример. Пусть в качестве единицы измерения используется время задержки, и оно известно маршрутизатору для каждого из его соседей. Через равные интервалы времени каждый маршрутизатор посылает своим соседям список с оценками задержек для каждого получателя. Он также получает похожий список от всех своих соседей. Представим, что одна из таких таблиц как раз пришла от соседа Х, в ней указывается, что время распространения от маршрутизатора Х до маршрутизатора i равно Хi. Если маршрутизатор знает, что время пересылки до маршрутизатора Х равно m, тогда задержка до маршрутизатора I через маршрутизатор Х составит Хi+m. Выполнив такие расчеты для всех своих соседей, маршрутизатор может выбрать наилучшие значения и поместить их в новую таблицу. Обратим внимание, что старая таблица в расчетах не используется.
Процесс обновления таблицы проиллюстрирован на рисунке 74: первые четыре столбца показывают векторы задержек, полученные маршрутизатором J от своих соседей. Маршрутизатор А утверждает, что время пересылки от него до маршрутизатора В равно 12 мс, 25 мс до маршрутизатора С, 40 мс – до D и т.д.. предположим, маршрутизатор J измерил или оценил задержки до своих соседей A, I, H и К как 8, 10, 12 и 6 мс соответственно.
Рисунок 74 - Рассматриваемая подсеть
Посмотрим, как J рассчитывает свой новый маршрут к маршрутизатору G. Он знает, что до А 8 мс, а А утверждает, что от него до G 18 м, т.о., J знает, что если он станет отправлять пакеты для G через А, то задержка составит 26 мс. Аналогично он вычисляет значения задержек для маршрутов от него до G, проходящих через остальных его соседей I, Н и К, и получает соответственно 41 (31+10), 18 (6+12) и 37 (31+6). Лучшим значением является 18, поэтому именно оно помещается в таблицу в запись для получателя G. Вместе с числом 18 туда же помещается обозначение линии, по которой проходит самый короткий маршрут до G, т.е. Н. Данный метод повторяется для всех остальных адресатов, при этом получается новая таблица, показанная в виде правого столбца на рисунке 75.
Этот алгоритм маршрутизации работает в теории, но обладает серьезным недостатком на практике: хотя он сходится к правильному ответу, этот процесс может занять много времени. В частности, он быстро реагирует на хорошие новости и медленно на плохие.
K |
A |
|
I |
|
H |
|
K |
|
|
линия |
A |
0 |
|
24 |
|
20 |
|
21 |
|
8 |
A |
B |
12 |
|
36 |
|
31 |
|
28 |
|
20 |
A |
C |
25 |
|
18 |
|
19 |
|
36 |
|
28 |
I |
D |
40 |
|
27 |
|
8 |
|
24 |
|
20 |
H |
E |
14 |
|
7 |
|
30 |
|
22 |
|
17 |
I |
F |
23 |
|
20 |
|
19 |
|
40 |
|
30 |
I |
G |
18 |
|
31 |
|
6 |
|
31 |
|
18 |
H |
H |
17 |
|
20 |
|
0 |
|
19 |
|
12 |
H |
I |
21 |
|
0 |
|
14 |
|
22 |
|
10 |
I |
J |
9 |
|
11 |
|
7 |
|
10 |
|
0 |
– |
K |
24 |
|
22 |
|
22 |
|
0 |
|
6 |
K |
L |
29 |
|
33 |
|
9 |
|
9 |
|
15 |
K |
|
3адержка JA = 8 |
Задержка JI = 10 |
Задержка JH = 12 |
Задержка JK = 6 |
Новая таблица маршрутов для J | |||||
|
|
|
|
|
|
|
|
| ||
|
Векторы, полученные от четырех соседей J |
Рисунок 75 - Процесс обновления маршрутов
Дистанционно–векторная маршрутизация использовалась в сети ARPANET вплоть до 1979 года, когда ее сменил алгоритм маршрутизации с учетом состояния линий. Отказаться от прежнего алгоритма пришлось из-за двух основных проблем. Во-первых, старый алгоритм не учитывал пропускную способность линий. Расстояние между маршрутизаторами измерялось длиной очереди. Вначале все линии имели пропускную способность в 566 Кбит/с, поэтому учитывать пропускную способность не было необходимости. Однако после того, как несколько линий были ускорены до 230 Кбит/с, а затем появились линии со скоростью 1,544 Мбит/с, не принимать во внимание пропускную способность стало невозможным. Конечно, можно было ввести пропускную способность в качестве множителя для единицы измерения, но имелась еще и другая проблема, заключавшаяся в том, что алгоритм слишком долго приходил к устойчивому состоянию, несмотря на применение трюков типа расколотого горизонта. Поэтому он был полностью заменен новым алгоритмом, называющимся маршрутизацией с учетом состояния линий.