55
Сети и системы телекоммуникаций Протоколы маршрутизации ИМКН УрФУ

Сети и системы телекоммуникаций. Протоколы маршрутизации

Embed Size (px)

Citation preview

Page 1: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций

Протоколы маршрутизации

ИМКН УрФУ

Page 2: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Место протоколов маршрутизации в моделях OSI иTCP/IP

Маршрутизация по вектору расстояний

Маршрутизация с учетом состояния канала

Протоколы внутренней маршрутизации (RIP, OSPF)

Структура Интернет

Протокол внешней маршрутизации BGP

План

2

Page 3: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Место в моделях OSI и TCP/IP

3

Прикладной

Представления

Сеансовый

Транспортный

Сетевой

Физический

Прикладной

Транспортный

Интернет

Канальный Сетевых интерфейсов

Модель OSI Модель TCP/IP

Page 4: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы марщрутизации

Сетевой уровень в TCP/IP

4

Сетевых

интерфейсов

Сетевой

Транспортный

Прикладной

Ethernet WiFi DSL

IP

TCP UDP

HTTP SMTP DNS FTP

ICMP

ARP DHCP

BGPOSPFRIP

Page 5: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Маршрутизация (routing) – поиск маршрута доставки пакета между сетями через транзитные узлы – маршрутизаторы

• Учет изменений в топологии сети• Учет загрузки каналов связи и маршрутизаторов

Этапы маршрутизации:• Изучение сети• Продвижение пакетов на маршрутизаторе

Маршрутизация

5

Page 6: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Статическое

• Ручная конфигурация всех маршрутизаторов

• Изменения в сети не учитываются

Динамическое

• Автоматическая конфигурация маршрутизаторов с использованием протоколов маршрутизации

• Учет изменений в сети

Варианты изучения сети

6

Page 7: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Каждый маршрутизатор вычисляет собственную таблицу продвижения (forwarding table)

Маршрутизатор знает только стоимость пути до соседа, не топологию

Маршрутизатор может обмениваться служебными сообщениями только со своим соседом

• Знает только то, что сообщил ему сосед

На каждом маршрутизаторе выполняется один и тот же алгоритм одновременно

Каналы связи могут оборваться, маршрутизаторы могут сломаться

• Сообщения могут быть потеряны

Принципы маршрутизации

7

Page 8: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Корректность

• Поиск пути, который является рабочим

Эффективные пути

• Эффективное использование пропускной способности

Справедливые пути

• Ни один узел (хост) не «голодает»

Быстрая сходимость

• Быстрое восстановление после изменений

Масштабируемость

• Продолжают работать в растущей сети

Цели алгоритмов маршрутизации

8

Page 9: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Алгоритм:

1. Присвоить каждой линии связи стоимость (cost/distance)

2. Определить лучший путь между каждой парой узлов как путь, имеющий наименьшую полную стоимость (сумму всех стоимостей линий связи между узлами)

3. Построить дерево от всех узлов к данному приемнику

Поиск кратчайшего пути

9

Page 10: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Найти кратчайший путь от A до E

Линии связи двунаправленные с одинаковой стоимостью в обоих направлениях

Поиск кратчайшего пути

10

Tanenbaum, Wetherall Computer Networks 5e

Page 11: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

dist(AE) = 10

dist(ABE) = 8

dist(ABFE) = 9

dist(ABCE) = 7

dist(ABCDE) = 10

Поиск кратчайшего пути

11

Tanenbaum, Wetherall Computer Networks 5e

Page 12: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

dist(AE) = 10

dist(ABE) = 8

dist(ABFE) = 9

dist(ABCE) = 7

dist(ABCDE) = 10

ABCE – кратчайший путь

dist(ABCE) = 7

Поиск кратчайшего пути

12

Tanenbaum, Wetherall Computer Networks 5e

Page 13: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Вершина Е – корень дерева

Применение

• Используется только место назначения, чтобы следовать кратчайшему пути

• Каждый узел должен отправлять только следующему узлу

• Каждый узел содержит список следующих узлов для каждого места назначения

Поиск кратчайшего пути

13

Tanenbaum, Wetherall Computer Networks 5e

Page 14: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Используемый алгоритм маршрутизации

• Дистанционно-векторные протоколы (Distance Vector Protocols): RIP, BGP

• Протоколы состояния каналов связи (Link State Protocols): OSPF

Область применения

• Протоколы внутридоменной маршрутизации (Interior Gateway Protocols): RIP, OSPF

• Протоколы междоменной маршрутизации (Exterior Gateway Protocols): BGP

Классификация протоколов маршрутизации

14

Page 15: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Distance Vector Routing

Старый подход, использовался в сети ARPANET

В Интернет используется протоколом RIP

Низкая скорость сходимости

Работает по алгоритму Форда-Беллмана (1969 г.)

Маршрутизация по вектору расстояний

15

Page 16: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Каждый узел поддерживает вектор расстояний до всех мест назначения (destination)

1. Назначить стоимость вектора до самого себя 0, до всех мест назначения - ∞

2. Периодически отправлять вектор соседям

3. Обновить вектор до каждого места назначения, выбирая кратчайшее расстояние, после добавления стоимости линии связи до соседа

Distance Vector Algorithm

16

Page 17: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Пример Distance Vector

17

До Стоимость

A 0

B ∞

C ∞

D ∞

Начальный вектор для узла А

Page 18: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Пример Distance Vector

18

До B сообщение

D сообщение

A ∞ ∞

B 0 ∞

C ∞ ∞

D ∞ 0

B+3 D+7

∞ ∞

3 ∞

∞ ∞

∞ 7

Стоимость Следующий

0 ---

3 B

∞ ---

7 D

До

А

B

C

D

Page 19: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Первый обмен сообщениями

19

A знает B знает C знает D знает

Cost Next Cost Next Cost Next Cost Next

0 --- 3 A ∞ --- 7 A

3 B 0 --- 6 C 3 B

∞ --- 6 C 0 --- 2 C

7 D 3 D 2 D 0 ---

До A B C D

A 0 ∞ ∞ ∞

B ∞ 0 ∞ ∞

C ∞ ∞ 0 ∞

D ∞ ∞ ∞ 0

A = min(B+3, D+7)C = min(B+6, D+2)

B = min(A+3, C+6, D+3)D = min(A+7, B+3, C+2)

Page 20: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Второй обмен сообщениями

20

A знает B знает C знает D знает

Cost Next Cost Next Cost Next Cost Next

0 --- 3 A 9 B 6 B

3 B 0 --- 5 D 3 B

9 B 5 D 0 --- 2 C

6 B 3 D 2 D 0 ---

До A B C D

A 0 3 ∞ 7

B 3 0 6 3

C ∞ 6 0 2

D 7 3 2 0

A = min(B+3, D+7)C = min(B+6, D+2)

B = min(A+3, C+6, D+3)D = min(A+7, B+3, C+2)

Page 21: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Третий обмен сообщениями

21

A знает B знает C знает D знает

Cost Next Cost Next Cost Next Cost Next

0 --- 3 A 8 D 6 B

3 B 0 --- 5 D 3 B

8 B 5 D 0 --- 2 C

6 B 3 D 2 D 0 ---

До A B C D

A 0 3 9 6

B 3 0 5 3

C 9 5 0 2

D 6 3 2 0

A = min(B+3, D+7)C = min(B+6, D+2)

B = min(A+3, C+6, D+3)D = min(A+7, B+3, C+2)

Page 22: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Алгоритм запускается при добавлении нового узла

Нет никаких сообщений о неполадках на канале

• Сломался маршрутизатор, оборвалась линия связи

Distance Vector Algorithm

22

Page 23: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Алгоритм запускается при добавлении нового узла

Нет никаких сообщений о неполадках на канале

• Сломался маршрутизатор, оборвалась линия связи

Недостижимые сети (unreachable networks)

• Счет до бесконечности

Distance Vector Algorithm

23

Page 24: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Счет до бесконечности

24

A B CHost 2Host 1

To B To C To Host2To B

Page 25: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Time To Live (TTL)

Split Horizon

• Никогда не отправлять пакет на интерфейс, с которогоон пришел

Poison Reverse

• Установить стоимость до нерабочего маршрута вбесконечность и немедленно рассказать всем соседям

Маршрутизация с учетом состояния канала

• Современный подход

Счет до бесконечности. Решения

25

Page 26: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Link-State Routing

Современный подход

Быстро сходится

Требует большое количество ресурсов

• Обмен топологиями между всеми маршрутизаторами

• Хранение всех топологий в памяти маршрутизатора

Работает по алгоритму Дейкстры (1959 г.)

Маршрутизация с учетом состояния канала

26

Page 27: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

1. Узлы распространяют собственную топологию

• Каждый узел знает полную топологию

2. Каждый узел вычисляет собственную таблицупересылки (forwarding table)

• Алгоритм Дейкстры

Link-State Algorithm

27

Page 28: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Повредился канал связи

• Оба маршрутизатора рассылают изменения

• Канал связи удаляется из топологии

Повредился маршрутизатор

• Все маршрутизатора рассылают изменения

• Сломанный маршрутизатор не может обновлять своютопологию

• Все каналы связи до сломанного маршрутизатораудалены из топологии

Link-State Algorithm

28

Page 29: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

1. Назначить все узлы непосещенными, установить стоимость от источника до источника 0, до всех непосещенных узлов - ∞

2. Пока есть непосещенные узлы выполнять:

a) Извлечь узел N с наименьшей стоимостью

b) Добавить канал до N в дерево кратчайшего пути

c) Пересчитать (уменьшить) стоимость смежных с N узлов

Алгоритм Дейкстры

29

Page 30: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

1. Начальное состояние

Алгоритм Дейкстры

30

Page 31: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

2. Снижение стоимости смежных с А узлов

Алгоритм Дейкстры

31

Page 32: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

3. Снижение стоимости смежных с В узлов

Алгоритм Дейкстры

32

Page 33: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

4. Снижение стоимости смежных с С узлов

Алгоритм Дейкстры

33

Page 34: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

5. Снижение стоимости смежных с G узлов

Алгоритм Дейкстры

34

Page 35: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

6. Снижение стоимости смежных с F узлов

Алгоритм Дейкстры

35

Page 36: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

7. Снижение стоимости смежных с E узлов

Алгоритм Дейкстры

36

Page 37: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

8. Снижение стоимости смежных с D узлов

Алгоритм Дейкстры

37

Page 38: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

9. Снижение стоимости смежных с H узлов

Алгоритм Дейкстры

38

Page 39: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Строит полное дерево

• Больше, чем нужно для пересылки

• Полная топология сети

Находит кратчайший путь, увеличивая расстояниеот источника

Время построения быстро увеличивается с ростомсети

Алгоритм Дейкстры

39

Page 40: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

RIP – протокол маршрутной информации

Дистанционно-векторный протокол

Использует алгоритм Форда-Беллмана

Использует число хопов (hops) как метрику

• Бесконечность устанавливается в 16 хопов

• Ограниченный размер сети

Маршрутизаторы отправляют вектор каждые 30 с.

• Таймаут 180 с.

• Путь считается недостижимым при достижениитаймаута

Routing Information Protocol

40

Page 41: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

RIPv1

• RFC 1058

• 1969 г.

RIPv2

• RFC 2453

• 1994 г.

RIPng

• Разработан для сетей IPv6

Версии RIP

41

Page 42: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

OSPF

Протокол состояния канала связи

Использует алгоритм Дейкстры

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

• Метрика = относительная пропускная способность/пропускную способность канала

• Бесконечность равна 224 —1

Хранит резервный маршрут для сети

Hello интервал 10 с., Dead интервал 40 с.

Open Shortest Path First

42

Page 43: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

OSPFv2

• Работа в сетях IPv4

OSPFv3

• Работа в сетях IPv6

Версии OSPF

43

Page 44: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Структура Интернет

44

Магистральный оператор

Магистральный оператор

Магистральный оператор

Региональный оператор

Региональный оператор

Сеть предприятия

Сеть предприятия

Региональный оператор

Локальный оператор

Локальный оператор

Локальный оператор

Сеть предприятия

Индивидуальные клиенты

Page 45: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Интернет – объединение сетей

Сети строятся разными организациями• Разные люди управляют сетью внутри организаций• Разные политики маршрутизации

Необходим протокол, учитывающий особенностиИнтернет

• Маршрутизация в составной сети, состоящей изнезависимо управляемых подсетей

• Учет политик маршрутизации

Особенности Интернет

45

Page 46: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Внутри- и междоменная маршрутизация

46

Граничный маршрутизатор

Граничный маршрутизатор

Граничный маршрутизатор Граничный

маршрутизатор

Граничный маршрутизатор

OSPF

OSPF

OSPF

BGP BGP

BGP

Page 47: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Тип сервиса «Transit»

47

Интернет

Сеть 3

Сеть 2Сеть 1

Page 48: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Тип сервиса «Peer»

48

Интернет

Сеть 3

Сеть 2Сеть 1

Page 49: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Autonomous System (AS)

Одна или несколько сетей с единымадминистрированием

• Часто принадлежат одному провайдеру

• Имеет свой номер

• Включает адреса IP-сетей (префиксы)

Выдает номера (ASN) IANA

• RIR выдают номера провайдерам или крупныморганизациям

Автономная система

49

Page 50: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

AS УрФУ - 5468 (26046 – у бывшего УрГУ)

16-битные номера (0 – 65536)

• До 2007 года

• От 64512 до 65534 – приватные номера AS

• Исчерпание доступного диапазона

32-битные номера

• RFC 4893

• 65536-4294967295 (232)

Используется в BGP–маршрутизации

Номер автономной системы

50

Page 51: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

BGP – протокол граничного шлюза

Используется для вычисления междоменныхмаршрутов в Интернет

Использует алгоритм определения пути повектору

• Разновидность Distance Vector

• Метрика – вектор (path vector)

Border Gateway Protocol

51

Page 52: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Разные провайдеры используют разныеавтономные системы

Маршрутизаторы на границе AS анонсируют BGPмаршруты до других маршрутизаторов

Каждый анонс содержит префикс, вектор пути(path vector), следующий маршрутизатор

• Вектор пути – список AS по пути до префикса

Выбор маршрута на основе политик

В качестве адресов используются номераавтономных систем

BGP-маршрутизация

52

Page 53: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

BGP

53

Page 54: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Место протоколов маршрутизации в моделях OSI иTCP/IP

Маршрутизация по вектору расстояний

Маршрутизация с учетом состояния канала

Протоколы внутренней маршрутизации (RIP, OSPF)

Структура Интернет

Протокол внешней маршрутизации BGP

Итоги

54

Page 55: Сети и системы телекоммуникаций. Протоколы маршрутизации

Сети и системы телекоммуникаций. Протоколы маршрутизации

Вопросы?

55