Инфомационный технологии как смысл жизни. Компьютерные сети (net101) Сетевой уровень. Сети tcpIP. Содержание лекции
Скачать 2.28 Mb.
|
Компьютерные сети (NET101)Сетевой уровень. Сети TCP/IP. Содержание лекцииОбзор сетевого уровня
Общие вопросы маршрутизации
Алгоритмы динамической маршрутизации Адресация в TCP/IP-сетях
Преобразование адресов
Служба DNS Назначение IP-адресов Протокол DHCP Формат IP-пакета Маршрутизация в IP-сетях Таблица маршрутизации и протоколы динамической маршрутизации Диагностика сети Протокол ICMP Функции сетевого уровняСеcсия Физический Прикладной Представи тельский Транспортный Сетевой Звено данных Базовые функции
Маршрутизация Управление потоком Дополнительные функции Фрагментация Диагностика сети МаршрутизаторСеcсия Звено данных Ф Физический Физический Прикладной Представи тельский Транспортный Сетевой Звено данных ЗД С T С П Прикладной ЗД Ф Протокольное взаимодействие Интерфейсное взаимодействие Router 1 2 3 4 5 6 7 С Сетевой Router Маршрутизатор (Router) ЗД Ф Switch Router 1 Router 2 Switch Сколько здесь сетей? Маршрутизация (routing)Процессы:
распространение информации о существующих в сети маршрутах (route information exchange) “A” “B” R1 R2 R3 R4 Как R1 выберет следующий хоп на пути к B? Типы маршрутизацииСтатическая Квазистатическая
Динамическая Распределенный алгоритм Беллмана-Форда Алгоритм Дейкстры Shortest Path First (SPF) Пример сетиЗадача: найти путь от A к B который минимизирует стоимость пути. R7 R6 R4 R2 R1 1 1 4 2 4 2 2 3 2 3 R8 A B R5 R3 Пример стоимости: расстояние, скорость передачи, цена, задержка, … Пример сетиR7 R6 R4 R2 R1 1 1 4 2 4 2 2 3 2 3 R8 A B R5 R3 Решение Статическая маршрутизацияЗная оптимальный маршрут заранее, настроим маршрутизаторы так, чтобы пакеты шли только по этому маршруту R7 R6 R4 R2 R1 1 1 4 2 4 2 2 3 2 3 R8 A B R5 R3 Пакеты для B через R2 Пакеты для B через R5 Пакеты для B через R8 А как быть с такой сетью...!? Internet в 1999Лавинный алгоритмПреимущества:
любой узел сети доступен. Недостатки: пакеты могут приходить на промежуточные узлы несколько раз; может быть зацикливание; загрузка сети. Пакеты передаются во все направления, кроме тех, откуда пришли. R1 Динамическая маршрутизацияИдея: маршрутизаторы должны «рассказать» друг другу о том как лучше доставить пакет R7 R6 R4 R2 R1 1 1 4 2 4 2 2 3 2 3 R8 A B R5 R3 Сеть с B подключена прямо ко мне R8: «Пакеты B через меня!» R6: «…» Найден оптимальный путь «Сеть с B достижима!» Что может «рассказать» R6 и другие узлы? Распределенный DV алгоритм Bellman-FordМаршрутизаторы периодически обмениваются информацией о стоимости лучшего известного им пути к сети (узлу) назначения. Если таких сетей несколько – получается вектор расстояний (Distance Vector, DV) Алгоритм для узла i: Dii = 0; Dij = ∞; Dii = min {dik + Dkj}, i ≠ j, k подключен к i dij Djk i j k Получено от k в векторе расстояний (DV): {Dk1, Dk2, …, Dkn} Периодически повторяется dij – стоимость передачи по линии связи между узлами i и j dii = 0 dij = ∞, если узлы не связаны Dij – стоимость пути между узлами i и j Пример сетиR7 R6 R4 R2 R1 1 1 4 2 4 2 2 3 2 3 R8 A B R5 R3 D88 = 0 D28 = 4 D38 = 4 D18 = 5 D48 = 6 D48 = 5 Проблема алгоритма Bellman-FordR4 R3 R2 R1 1 1 1 Рассмотрим как будет вычисляться расстояние до R4: … … … … 5,R2 4,R3 5,R2 3 3,R2 4,R3 3,R2 2 3,R2 2,R3 3,R2 1 1, R4 2,R3 3,R2 0 R3 R2 R1 Time До бесконечности отказ связи R3 R4 Решение: Установить предел расстояния (небольшое значение 16) после которого связь считается разорванной. * отсюда и название семейства протоколов “Link State” Алгоритм SPF: предполагает знание топологии сети: узлы, наличие связей между ними и состояние этих связей (Link State*, LS); строит покрывающее сеть дерево таким образом, чтобы стоимость путей от корня до листовых вершин была минимальной. Алгоритм для узла i: 1. Dii = 0; S = { i }, C = N \ { i }. Dij = dij , j C; 2. Найти k C, такое что Dik = min m C Dim ; S = S { k }; C = C \ { k }; Закончить, если C пусто. 3. Для j Nk C пересчитать D: Dij = min { Dij , Dik + dkm } Перейти к шагу 2. dij – стоимость передачи по линии связи между узлами i и j dii = 0 dij = ∞, если узлы не связаны Dij – стоимость пути между узлами i и j N – все узлы сети Nk – узлы сети, соседние с k S – узлы, включенные в дерево C – узлы-кандидаты на включение в дерево dij Djk i j k Пример работы SPFR2 R1 1 2 R3 R4 R5 1 2 2 3 R2 R1 1 2 R3 R4 R5 1 2 2 3 R8 6 4 R2 R1 1 2 R3 R4 R5 1 (2) 2 3 R8 6 4 R6 R7 4 3 8 5 R2 R1 1 2 R3 R4 R5 1 (2) 2 (3) R8 6 4 R6 R7 4 3 5 8 2 5 R2 R1 1 2 R3 R4 R5 1 (2) 2 (3) R8 6 4 R6 R7 4 3 (5) 8 2 5 3 8 R2 R1 1 2 R3 R4 R5 1 (2) 2 (3) R8 4 R6 R7 4 3 (5) 8 2 (7) 3 2 Пример работы SPFR2 R1 1 2 R3 R4 R5 1 (2) 2 (3) R8 4 R6 R7 4 (12) 3 (5) 2 (5) 3 2 Покрывающее дерево, полученное в результате работы SPF на узле R1.
LS-протоколы маршрутизацииОписать работу LS-протокола маршрутизации можно так: каждый маршрутизатор самостоятельно вычисляет кратчайший путь до остальных узлов сети (машрутизаторов и сетей), используя SPF; необходимую SPF информацию о топологии сети маршрутизатор накапливает в процессе обмена с другими маршрутизаторами LS-сообщениями; все сообщения LS рассылаются по сети неизменными; маршрутизаторы хранят последние версии сообщений LS. Сравнение алгоритмов Беллмана-Форда и ДейкстрыАдресация в TCP/IP-сетяхТри типа адресов
Пример: MAC-адрес 00-1C-F0-63-16-04 Сетевые адреса узлов IP-сети уникальны в пределах всей сети Пример: IP-адрес 195.54.14.135 Символьные адреса используются как удобная для пользователя форма сетевого адреса Пример: доменное имя iit.uio.csu.ru IP-адресацияИерархическая организация адресного пространства Длина адреса IPv4 4 байта (32 бита)
Имеются зарезервированные специальные адреса Для удобства адреса принято записывать побайтно через точку, например 195.54.2.1 Сеть (Net) Узел (Host) 4 байта Граница между сетевой и хостовой частью определялась сначала классом, затем – маской Соглашения о специальных адресах{ <номер сети>, <номер узла> }
{ 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) RFC 1122 IP-адресПервоначально 5 классов: Класс “A” 1 7 0 Net ID Host-ID Класс “B” 10 Net ID Host-ID 24 2 14 16 Класс “C” 110 Net ID Host-ID 3 21 8 Класс “D” 1110 Multicast Group ID 4 28 Класс “E” 11110 Reserved 5 27 A B C D 0 232-1 Варианты решения: более эффективно перераспределить существующие
позволить организациям использовать одни и те же адреса как маршрутизировать? изобрести новый протокол (с более длинным адресом) Дальнейшее развитие IP-протокола (IPv6)Решение проблемы исчерпания адресов IPv4! Повышение производительности коммуникационного оборудования Появление новых приложений и мультимедиа Новые стратегии администрирования RFC-1752 RFC-1826 RFC-1827 RFC-1883 RFC-1885 RFC-1887 * * * Причины развития: Структура адреса IPv6010 Идентификатор регистратора Идентификатор провайдера абонент провайдера 0 3 8 n 63 Пространство структурируемое абонентом 127 64 Соглашения о приватных адресахПриватные («серые») адреса
172.16.0.0 – 172.31.0.0 192.168.0.0 – 192.168.255.0 RFC 1918 Разбиение на подсети (Subnetting)Классовые сети делятся на подсети (subnets) Для отделения сетевой части адреса от части хоста используется маска RFC 950 Сеть класса B 10 Net ID Host-ID 2 14 16 10 Net ID Host-ID 2 14 16 0000 Номер подсети (20) Узел подсети (12) 10 Net ID Host-ID 2 14 16 1111 10 Net ID Host-ID 2 14 16 000000 10 Net ID Host-ID 2 14 16 1111011011 Номер подсети (22) Узел подсети (10) Номер подсети (20) Узел подсети (12) Номер подсети (26) Узел подсети (6) Маска подсетиПозволяет отделить часть адреса с номером сети от части адреса с номером узла Является битовой маской для операций
выделения части хоста Host = Address & Mask побайтно, аналогично IP-адресу
число единиц, начиная от старшего разряда /24 Пространство адресов IP разделяется на линейные сегменты Каждый линейный сегмент описывается префиксом Префикс имеет вид x/y где x указывает на все адреса линейного сегмента, а y указывает на длину сегмента Пример: префикс 128.9.0.0/16 определяет линейный сегмент с адресами в диапазоне: 128.9.0.0 … 128.9.255.255 Агрегация префикса: Если провайдер обслуживает две организации, он может агрегировать их адреса с помощью более короткого префикса. Маршрутизаторы могут ссылаться на этот префикс, сокращая размер их таблиц маршрутизации. Пример: При обслуживании 128.9.14.0/24 и 128.9.15.0/24, можно сообщить другим организациям об обслуживании префикса 128.9.14.0/23 Варианты решения: более эффективно перераспределить существующие
… и не захлебнуться в обилии маршрутов CIDR позволить организациям использовать одни и те же адреса как маршрутизировать? не маршрутизировать … как предоставлять сервисы Internet? NAT (чуть позже) изобрести новый протокол (с более длинным адресом) IP v6 Преобразование адресовСлужба DNS Служба DNS Протокол RARP Протокол ARP Протокол ARP (отображения IP-адресов в MAC- адреса)Предназначен для установления соответствия между IP- и МАС-адресами для передачи пакетов на уровне звена данных Таблица ARP храниться на каждом хосте Записи в таблице могут быть статические и динамические Статические arp -s Динамические существуют определенное время (устаревают) Протокол отображения IP-адресов в Ethernet-адреса (ARP)RFC-826 RFC-903 RFC-1027 Аппаратный (MAC) Широковещательный MAC-адрес назначения MAC-назн. MAC-исх. (первые. 16 бит) MAC-адрес исходный (последние 32 бита) Тип рабочего протокола = 806 и логический (IP) адреса отправителя Код = {1 – запрос, 2 - ответ} Аппаратный (MAC) и логический (IP) адрес получателя Ethernet-заголовок Данные протокола ARP Порядок работы ARPПроизводится попытка преобразования при помощи ARP таблицы При отрицательном результате по сети посылается широковещательный запрос Все узлы сети принимают запрос и производят сверку своего IP-адреса с IP-адресом указанным в запросе Соответствующий узел посылает на MAC-адрес отправителя ответ, указывая свой MAC-адрес Служба DNSПредставляет собой универсальное средство разрешения имен Является распределенной базой данных Позволяет разделить полномочия администраторов DNS RFC 1034 RFC 1035 Структура DNSКомпоненты DNSПространства имен домена и записи базы данных (зоны DNS) Серверы имен
Обслуживает обращения в итеративном или рекурсивном режиме Клиентская служба разрешения имен Часть операционной системы узла, предоставляющая другим программам возможность разрешения имён, реализуя взаимодействие с серверами имён Примеры адресов разных уровней OSIL1-адрес
Частота несущей Сеcсия Физический Прикладной Представи тельский Транспортный Сетевой Звено данных L2-адрес
L3-адрес
L4-адрес
Назначение адресовIP-адреса могут назначаться узлам
Динамически (протокол DHCP) Протокол DHCPПозволяет удаленно настраивать большое число рабочих станций для работы в IP-сетях Является средством централизованного
предоставления её узлам сети в виде DHCP-опций (options) Состоит из двух компонентов DHCP-сервер DHCP-клиент RFC-1531 RFC-1541 Протокол IPВыполняет две основные функции:
Фрагментация дейтаграмм Взаимодействует непосредственно с протоколами канального уровня Определяет маршрутизацию данных по сети до точки назначения или промежуточного шлюза Обрабатывает каждую дейтаграмму как независимую от других единицу данных Не гарантирует доставку, достоверность данных Формат заголовка IP-пакетаVersion IHL T of S Total length (maxrec<=576bytes) Identification Flags Fragment offset Time to live Protocol Header checksum Source address Destination address Options Padding RFC-791 Поле Type of serviceприоритет D T R C не используется D - Минимальная задержка T - Высокая пропускная способность R - Высокая надежность C - Низкая стоимость 0 - Обычный уровень 1 - Приоритетный 2 - Немедленный 3 - Срочный 4 - Экстренный 5 - CEITIC/ECP 6 – межсетевое управление 7 - сетевое управление RFC 1349 Поле Flags0 DF MF =0 : можно фрагментировать =1 : не фрагментировать =0 : последний фрагмент =1 : есть следующий фрагмент Маршрутизация в IP-сетяхПрименяемые типы маршрутизации
Динамическая с использованием различных протоколов маршрутизации Протоколы маршрутизацииОпределяют:
способы и правила представления и обмена информацией, необходимой для работы алгоритма маршрутизации. R4 R3 R5 R2 R1 1 1 1 1 1 1 Как маршрутизатору реагировать на происходящие в сети изменения? Виды протоколов маршрутизации. Примеры реализацийДистанционно-векторные (Distance Vector, DV)
на основе распределённого варианта алгоритма Дейкстры
OSPF (IETF) на основе алгоритма DUAL
разновидность DV, передающие не только стоимость пути, но и сам путь
Таблица маршрутизацииЯвляется источником информации для выбора направления дальнейшей пересылки пакета Может заполняться
Процесс OSPF Файл конфигурации Процесс BGP Маршрутизатор Префикс Пример таблицы маршрутизации
Диагностика сети: протокол ICMP (Internet Control Message Protocol)Разработан для передачи сообщений проблемах, возникших при доставке IP-дейтаграмм сетью Простейшее управление потоком – ICMP Source Quench (Type = 4) Использует IP в качестве транспорта RFC 792 Type Checksum Content depends on Type & Code Code … ping и traceroute используют ICMP
Echo-reply (Type = 0) Time Exceeded (Type = 11) и другие. |