Компьютерные сети (NET101)
Содержание лекции
Функции сетевого уровня
Маршрутизатор
Маршрутизация (routing)
Типы маршрутизации
Пример сети
Пример сети
Статическая маршрутизация
А как быть с такой сетью...!? Internet в 1999
Лавинный алгоритм
Динамическая маршрутизация
Распределенный DV алгоритм Bellman-Ford
Пример сети
Проблема алгоритма Bellman-Ford
Алгоритм Дейкстры Shortest Path First (SPF)
Пример работы SPF
Пример работы SPF
LS-протоколы маршрутизации
Сравнение алгоритмов Беллмана-Форда и Дейкстры
Адресация в TCP/IP-сетях
IP-адресация
Соглашения о специальных адресах
IP-адрес
Проблема исчерпания адресов IP v4
Дальнейшее развитие IP-протокола (IPv6)
Структура адреса IPv6
Соглашения о приватных адресах
Разбиение на подсети (Subnetting)
Маска подсети
Classless Interdomain Routing (CIDR)
Classless Interdomain Routing (CIDR)
Проблема исчерпания адресов IP v4
Преобразование адресов
Протокол ARP (отображения IP-адресов в MAC- адреса)
Протокол отображения IP-адресов в Ethernet-адреса (ARP)
Порядок работы ARP
Служба DNS
Структура DNS
Компоненты DNS
Примеры адресов разных уровней OSI
Назначение адресов
Протокол DHCP
Протокол IP
Формат заголовка IP-пакета
Поле Type of service
Поле Flags
Маршрутизация в IP-сетях
Протоколы маршрутизации
Виды протоколов маршрутизации. Примеры реализаций
Таблица маршрутизации
Пример таблицы маршрутизации
Диагностика сети: протокол ICMP (Internet Control Message Protocol)
2.28M
Category: internetinternet

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

1. Компьютерные сети (NET101)

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

2. Содержание лекции

Обзор сетевого уровня
Функции сетевого уровня
Общие вопросы маршрутизации
Типы маршрутизации
Алгоритмы динамической маршрутизации
Сетевой уровень сетей TCP/IP
Адресация в TCP/IP-сетях
Типы адресов
Преобразование адресов
Назначение IP-адресов
Формат IP-пакета
Маршрутизация в IP-сетях
Протокол DHCP
Протокол IPv4
Протокол ARP
Служба DNS
Таблица маршрутизации и протоколы динамической маршрутизации
Диагностика сети
Протокол ICMP

3. Функции сетевого уровня

Прикладной
Базовые функции
Представи
тельский
Сеcсия
Транспортный
Сетевой
Звено данных
Физический
Адресация
Маршрутизация
Управление потоком
Дополнительные функции
Фрагментация
Диагностика сети

4. Маршрутизатор

Маршрутизатор (Router)
Прикладной
Интерфейсное взаимодействие
Прикладной 7
Представи
тельский
Сеcсия
Транспортный
П
6
Протокольное взаимодействие
Router
С
T
Router
С
Сетевой
Сетевой
С
Switch
Звено данных
Звено данных
ЗД
ЗД
ЗД
Физический
Физический
Ф
Ф
Ф
Router 1
Router 2
5
4
3
2
1
Switch
Сколько здесь сетей?

5. Маршрутизация (routing)

Процессы:
выбор маршрута до узла назначения при пересылке пакета (forwarding)
распространение информации о существующих в сети маршрутах (route
information exchange)
“A”
“B”
R2
R1
Как R1 выберет
следующий хоп на
пути к B?
R4
R3

6. Типы маршрутизации

Статическая
Квазистатическая
Лавинная
Динамическая
Распределенный алгоритм Беллмана-Форда
Алгоритм Дейкстры Shortest Path First (SPF)

7. Пример сети

Задача: найти путь от A к B который
минимизирует стоимость пути.
Пример
стоимости:
A
1
R1
1
R2
R4
2
2
R3
4
4
R6
3
R5
2
R7
3
расстояние,
скорость
передачи, цена,
задержка, …
2
R8
B

8. Пример сети

Решение
A
1
R1
1
R2
R4
2
2
R3
4
4
R6
3
R5
2
R7
3
2
R8
B

9. Статическая маршрутизация

Зная оптимальный маршрут заранее,
настроим маршрутизаторы так,
чтобы пакеты шли только по этому маршруту
A
Пакеты
для B
через R2
Пакеты
для B
через R5
1
R1
1
R2
R4
2
2
R3
4
Пакеты
для B
через R8
4
R6
3
R5
2
R7
3
2
R8
B

10. А как быть с такой сетью...!? Internet в 1999

11. Лавинный алгоритм

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

12. Динамическая маршрутизация

Идея: маршрутизаторы должны «рассказать» друг другу о
том как лучше доставить пакет
A
Найден
оптимальный
путь
1
R1
R6: «…»
1
R2
R4
2
2
«Сеть с B
достижима!»
R3
4
R6
3
R5
2
R7
3
2
R8
R8: «Пакеты B
через меня!»
Что может «рассказать» R6 и другие узлы?
4
Сеть с B
подключена
прямо ко мне
B

13. Распределенный DV алгоритм Bellman-Ford

Маршрутизаторы периодически обмениваются информацией о стоимости
лучшего известного им пути к сети (узлу) назначения. Если таких сетей
несколько – получается вектор расстояний (Distance Vector, DV)
Алгоритм для узла i:
dij
j
Djk
i
k
1.
Dii = 0; Dij = ∞;
2.
Dii = min {dik + Dkj}, i ≠ j,
k подключен к i
dij – стоимость передачи по линии связи
между узлами i и j
dii = 0
dij = ∞, если узлы не связаны
Dij – стоимость пути между узлами i и j
Периодически
повторяется
Получено от k в векторе
расстояний (DV):
{Dk1, Dk2, …, Dkn}

14. Пример сети

A
D18 = 5
1
R1
1
R2
D48 = 5
2
2
D38 = 4
D48 = 6
D28 = 4
R3
4
R5
4
R4
R6
3
2
R7
3
2
R8
D88 = 0
B

15. Проблема алгоритма Bellman-Ford

1
R1
1
R2
R3
1
R4
Рассмотрим как будет вычисляться расстояние до R4:
Time
R1
R2
R3
0
3,R2
2,R3
1, R4
1
3,R2
2,R3
3,R2
2
3,R2
4,R3
3,R2
3
5,R2
4,R3
5,R2

До
…бесконечности


отказ связи R3
R4
Решение:
Установить предел расстояния
(небольшое значение 16) после
которого связь считается разорванной.

16. Алгоритм Дейкстры Shortest Path First (SPF)

Алгоритм SPF:
• предполагает знание топологии сети: узлы, наличие связей между ними и
состояние этих связей (Link State*, LS);
• строит покрывающее сеть дерево таким образом, чтобы стоимость путей от корня
до листовых вершин была минимальной.
Алгоритм для узла i:
dij
i
1.
j
Djk
Dii = 0;
S = { i }, C = N \ { i }.
Dij = dij , j C;
k
2.
Найти k C, такое что Dik = min m C Dim ;
S = S { k };
dij – стоимость передачи по линии связи между
узлами i и j
dii = 0
dij = ∞, если узлы не связаны
Dij – стоимость пути между узлами i и j
N – все узлы сети
Nk – узлы сети, соседние с k
S – узлы, включенные в дерево
C – узлы-кандидаты на включение в дерево
* отсюда и название семейства протоколов “Link State”
C = C \ { k };
Закончить, если C пусто.
3.
Для j Nk C пересчитать D:
Dij = min { Dij , Dik + dkm }
Перейти к шагу 2.

17. Пример работы SPF

2
1
R1
2
1
R2
2
R3
R5
1
1 (2)
R2
R5
R3
2
5
4
R4
4
1
R1
3
2
3
R6
6
4
6
R5
4
1
2
2 (3)
5
R3
R5
4
3
R7
2
R8
8
1 (2)
R2
R6
6
8
R1
4
R4
2 (3)
5
R3
R8
8
5
R5
R3
R8
1 (2)
R2
2
R7
R4
2
3
8
R1
1
R2
2
2
3
1
R1
R4
6
R4
4
R6
3 (5)
8
2
R7
1
R1
1 (2)
R2
2
2 (3)
3
R8
R3
R5
4
4
R4
R6
3 (5)
2 (7)
R7
2
3
R8

18. Пример работы SPF

Покрывающее дерево, полученное в результате работы SPF на узле R1.
1
R1
1 (2)
R2
2
2 (3)
R3
R5
4 (12)
R4
R6
3 (5)
2 (5)
R7
2
3
R8
4
Куда
Путь
Стоимость
R2
R2
1
R3
R3
2
R4
R2, R4
2
R5
R2, R5
3
R6
R2, R4, R6
12
R7
R2, R4, R7
5
R8
R2, R5, R8
7

19. LS-протоколы маршрутизации

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

20. Сравнение алгоритмов Беллмана-Форда и Дейкстры

Bellman-Ford:
(+) простой в реализации
(-) долго реагирует на
изменения в сети
(-) проблема счёта до
бесконечности
Dijkstra’s SPF:
(+) быстро реагирует на
изменения в сети
(-) более ресурсоёмок
(память для хранения
топологической информации)
(-) сложный алгоритм

21. Адресация в TCP/IP-сетях

Три типа адресов
Локальные (аппаратные) адреса узлов в пределах одной
из подсетей, объединяемых IP-сетью
Сетевые адреса узлов IP-сети
уникальны в пределах одной такой подсети
Пример: MAC-адрес 00-1C-F0-63-16-04
уникальны в пределах всей сети
Пример: IP-адрес 195.54.14.135
Символьные адреса
используются как удобная для пользователя форма сетевого
адреса
Пример: доменное имя iit.uio.csu.ru

22. IP-адресация

Иерархическая организация адресного пространства
Длина адреса IPv4 4 байта (32 бита)
старшие биты – номер сети
младшие биты – номер узлы внутри сети
Имеются зарезервированные специальные адреса
Для удобства адреса принято записывать побайтно через точку, например 195.54.2.1
4 байта
Сеть (Net)
Узел (Host)
Граница между сетевой и хостовой
частью определялась сначала классом,
затем – маской

23. Соглашения о специальных адресах

RFC 1122
Соглашения о специальных адресах
{ <номер сети>, <номер узла> }
{ 0, 0} - обозначает данный узел (ex. 0.0.0.0)
{ 0, <номер узла> } - узел в данной локальной IP-сети
{ <номер сети>, 0 } - данная IP-сеть (ex. 194.28.0.0)
{ <номер сети>, -1 } - все узлы в указанной IP-сети (ex.
194.28.0.255)
{ -1, -1 } - все узлы в данной локальной сети (ex. 255.255.255.255)
{ 127, <любое число> } – локальная петля (ex. 127.0.0.1)

24. IP-адрес

Первоначально 5 классов:
Класс “A”
Класс “B”
Класс “C”
Класс “D”
Класс “E”
0
A
24
7
1
Host-ID
0 Net ID
2
10
14
Host-ID
Net ID
3
21
110
Net ID
8
4
1110
16
Host-ID
28
Multicast Group ID
27
5
11110
Reserved
B
C
D
232-1

25. Проблема исчерпания адресов IP v4

Варианты решения:
более эффективно перераспределить существующие
позволить организациям использовать одни и те же адреса
как «распилить» классовые сети?
как маршрутизировать?
изобрести новый протокол (с более длинным адресом)

26. Дальнейшее развитие IP-протокола (IPv6)

Причины развития:
RFC-1752
RFC-1826
RFC-1827
RFC-1883
RFC-1885
RFC-1887
***
Решение проблемы исчерпания адресов IPv4!
Повышение производительности коммуникационного
оборудования
Появление новых приложений и мультимедиа
Новые стратегии администрирования

27. Структура адреса IPv6

0
3
010
8
n
Идентификатор Идентификатор
регистратора
провайдера
63
абонент
провайдера
64
127
Пространство структурируемое абонентом

28. Соглашения о приватных адресах

RFC 1918
Соглашения о приватных адресах
Приватные («серые») адреса
10.0.0.0 - 10.255.255.255
172.16.0.0 – 172.31.0.0
192.168.0.0 – 192.168.255.0
Не маршрутизируются в Internet

29. Разбиение на подсети (Subnetting)

RFC 950
Разбиение на подсети (Subnetting)
Классовые сети делятся на подсети (subnets)
Для отделения сетевой части адреса от части хоста используется
маска
2
Сеть класса B
2
10
10
Net ID
0000
10
000000
Номер подсети (22)
10
2
Host-ID
Узел
подсети (10)
16
14
Net ID
1111
Номер подсети (20)
Узел
подсети (12)
16
14
Net ID
2
Host-ID
Номер подсети (20)
2
Host-ID
Net ID
16
14
16
14
10
Узел
подсети (12)
16
14
Net ID
Host-ID
1111011011
Номер подсети (26)
Host-ID
Узел
подсети (6)

30. Маска подсети

Позволяет отделить часть адреса с номером сети от части адреса с
номером узла
Является битовой маской для операций
выделения части сети
Net = Address & Mask
выделения части хоста
Host = Address & ~Mask
Записывается в одном из двух форматах:
побайтно, аналогично IP-адресу
255.255.255.0
число единиц, начиная от старшего разряда
/24

31. Classless Interdomain Routing (CIDR)

Пространство адресов IP разделяется на линейные сегменты
Каждый линейный сегмент описывается префиксом
Префикс имеет вид x/y где x указывает на все адреса линейного сегмента,
а y указывает на длину сегмента
Пример:
префикс 128.9.0.0/16 определяет линейный сегмент с адресами в диапазоне:
128.9.0.0 … 128.9.255.255

32. Classless Interdomain Routing (CIDR)

Агрегация префикса:
Если провайдер обслуживает две организации, он
может агрегировать их адреса с помощью более
короткого префикса.
Маршрутизаторы могут ссылаться на этот префикс,
сокращая размер их таблиц маршрутизации.
Пример:
При обслуживании 128.9.14.0/24 и 128.9.15.0/24, можно сообщить другим
организациям об обслуживании префикса 128.9.14.0/23

33. Проблема исчерпания адресов IP v4

Варианты решения:
более эффективно перераспределить существующие
позволить организациям использовать одни и те же адреса
как «распилить» классовые сети? Subnetting
… и не захлебнуться в обилии маршрутов CIDR
как маршрутизировать? не маршрутизировать
… как предоставлять сервисы Internet? NAT (чуть позже)
изобрести новый протокол (с более длинным адресом) IP v6

34. Преобразование адресов

Доменное
имя
Служба DNS
Служба DNS
IP-адрес
Протокол
RARP
IP-адрес
MACадрес
Протокол
ARP

35. Протокол ARP (отображения IP-адресов в MAC- адреса)

Предназначен для установления соответствия между IP- и
МАС-адресами для передачи пакетов на уровне звена
данных
Таблица ARP храниться на каждом хосте
Записи в таблице могут быть статические и динамические
Статические arp -s <IP адрес> <MAC адрес>
Динамические существуют определенное время
(устаревают)

36. Протокол отображения IP-адресов в Ethernet-адреса (ARP)

RFC-826
RFC-903
RFC-1027
Широковещательный MAC-адрес назначения
MAC-исх. (первые. 16 бит)
MAC-назн.
MAC-адрес исходный (последние 32 бита)
Тип рабочего протокола = 806
Ethernetзаголовок
Код = {1 – запрос, 2 - ответ}
Аппаратный (MAC)
и логический (IP) адреса отправителя
Аппаратный (MAC)
и логический (IP) адрес получателя
Данные
протокола
ARP

37. Порядок работы ARP

1.
2.
3.
4.
Производится попытка преобразования при помощи ARP
таблицы
При отрицательном результате по сети посылается
широковещательный запрос
Все узлы сети принимают запрос и производят сверку
своего IP-адреса с IP-адресом указанным в запросе
Соответствующий узел посылает на MAC-адрес
отправителя ответ, указывая свой MAC-адрес

38. Служба DNS

RFC 1034
RFC 1035
Служба DNS
Представляет собой универсальное средство
разрешения имен
Является распределенной базой данных
Позволяет разделить полномочия администраторов
DNS
.com
Коммерческие организации
.edu
Образовательные организации
.gov
.int
Правительственные
организации
Международные организации
.org
Любительские организации

39. Структура DNS

корневой
домен
.arpa
.com
.net
.in-addr
***
***
.ru
.csu
***
.csu
.uio
.iit
.moodle

40. Компоненты DNS

Пространства имен домена и записи базы данных
(зоны DNS)
Серверы имен
Обслуживают зоны DNS, предоставляют их содержимое
другим серверам и программам разрешения имён
Обслуживает обращения в итеративном или рекурсивном
режиме
Клиентская служба разрешения имен
Часть операционной системы узла, предоставляющая
другим программам возможность разрешения имён,
реализуя взаимодействие с серверами имён

41. Примеры адресов разных уровней OSI

Прикладной
Представи
тельский
Сеcсия
Транспортный
Сетевой
Звено данных
Физический
L4-адрес
идентификатор точки входа в вычислительный процесс
(srcip,srcport,dstip,dstport)
L3-адрес
IP-адрес
L2-адрес
MAC-адрес
номер канала (LLC)
L1-адрес
Номер кабеля («прямой»)
Частота несущей

42. Назначение адресов

IP-адреса могут назначаться узлам
Статически
Динамически (протокол DHCP)

43. Протокол DHCP

Позволяет удаленно настраивать большое число
рабочих станций для работы в IP-сетях
Является средством централизованного
хранения информации о конфигурации TCP/IP
предоставления её узлам сети в виде DHCP-опций
(options)
Состоит из двух компонентов
DHCP-сервер
DHCP-клиент
RFC-1531
RFC-1541

44. Протокол IP

Выполняет две основные функции:
Адресация
Фрагментация дейтаграмм
Взаимодействует непосредственно с протоколами
канального уровня
Определяет маршрутизацию данных по сети до
точки назначения или промежуточного шлюза
Обрабатывает каждую дейтаграмму как
независимую от других единицу данных
Не гарантирует доставку, достоверность данных

45. Формат заголовка IP-пакета

RFC-791
Формат заголовка IP-пакета
Total length
Version IHL T of S
(maxrec<=576bytes)
Identification
Flags
Fragment offset
Time to live Protocol
Header checksum
Source address
Destination address
Options
Padding

46. Поле Type of service

RFC 1349
Поле Type of service
приоритет
D
•0 - Обычный уровень
•1 - Приоритетный
•2 - Немедленный
•3 - Срочный
•4 - Экстренный
•5 - CEITIC/ECP
•6 – межсетевое
управление
•7 - сетевое управление
T
R
C
не используется
•D - Минимальная задержка
•T - Высокая пропускная
способность
•R - Высокая надежность
•C - Низкая стоимость

47. Поле Flags

0
DF
MF
•=0 : можно фрагментировать
•=1 : не фрагментировать
•=0 : последний фрагмент
•=1 : есть следующий фрагмент

48. Маршрутизация в IP-сетях

Применяемые типы маршрутизации
Статическая
Динамическая с использованием различных протоколов
маршрутизации

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

Определяют:
используемый алгоритм маршрутизации;
способы и правила представления и обмена информацией,
необходимой для работы алгоритма маршрутизации.
Как маршрутизатору
реагировать на
происходящие в сети
изменения?
1
R1
1
R4
1
R3
1
R2
1
1
R5

50. Виды протоколов маршрутизации. Примеры реализаций

Дистанционно-векторные (Distance Vector, DV)
на основе распределённого варианта алгоритма Беллмана-Форда
По состоянию связи (Link State, LS)
на основе распределённого варианта алгоритма Дейкстры
IS-IS (ISO)
OSPF (IETF)
«Гибридные» aka Loop-free DV
на основе алгоритма DUAL
RIP v1 и v2 (IETF)
EIGRP (Cisco)
По вектору пути (Path Vector, PV)
разновидность DV, передающие не только стоимость пути, но и сам путь
BGP (IETF)

51. Таблица маршрутизации

Является источником информации для выбора направления
дальнейшей пересылки пакета
Destination
Mask
Gateway
Interface
Metric
Source
Префикс
Может заполняться
вручную
динамически
Маршрутизатор
Процесс OSPF
Файл конфигурации
Процесс BGP
Destination
Mask
Gateway
Interface
Metric
Source

52. Пример таблицы маршрутизации

Destination
Gateway
Mask
Interface
Metric
Source
0.0.0.0
198.21.17.7
0.0.0.0
le0
1/1
Static
198.21.17.0
*
255.255.0.0
le0
0/0
Conn
213.34.12.0
*
255.255.255.0
le1
0/0
Conn
129.13.0.0
198.21.1.6
255.255.0.0
le0
1/1
Static
56.0.0.0
213.34.12.4
255.0.0.0
le1
120/1
RIP
116.0.0.0
213.34.12.4
255.0.0.0
le1
1/1
Static

53. Диагностика сети: протокол ICMP (Internet Control Message Protocol)

Диагностика сети: протокол ICMP
RFC 792
(Internet Control Message Protocol)
• Разработан для передачи сообщений проблемах, возникших при доставке IPдейтаграмм сетью
• Простейшее управление потоком – ICMP Source Quench (Type = 4)
• Использует IP в качестве транспорта
Type
Code
Checksum
Content depends on Type & Code

• ping и traceroute используют ICMP
Echo-request (Type = 8)
Echo-reply (Type = 0)
Time Exceeded (Type = 11)
и другие.
English     Русский Rules