WWW.LIBRUS.DOBROTA.BIZ
БЕСПЛАТНАЯ  ИНТЕРНЕТ  БИБЛИОТЕКА - собрание публикаций
 

«Маршрутизация в IP сетях. Базовый Contents 1. Введение в предмет, понятие сетевого уровня. 4 1.1. Основные сведения о технологиях канального уровня 1.2. Проблема построения больших сетей средствами ...»

1

Урок №1

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

в IP сетях .

Базовый

Contents

1. Введение в предмет, понятие сетевого уровня....... 4

1.1. Основные сведения

о технологиях канального уровня

1.2. Проблема построения больших сетей

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

1.3. Причины проблем построения больших сетей

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

1.4.Принципы работы сетевого уровня

2. Принципы работы маршрутизатора,

и формирование таблицы маршрутизации.......... 39

2.1. Сравнение работы и служебных таблиц коммутатора и маршрутизатора

2.2. Принципы формирования таблицы маршрутизации

Cодержание

2.3. Понятие «маршрута по умолчанию»

3. Понятие стека протоколов .

Выбор стека протоколов для изучения................. 89

3.1. Понятие протокола, интерфейса и стека протоколов

3.2. Обзор существующих стеков протоколов...........91

3.3. Выбор стека протоколов для изучения................98

3.4. Обзор стека TCP/IP

4. Стандарты Интернет .

Организации, контролирующие Интернет........ 113

5. Системы исчисления. Быстрый перевод из одной системы исчисления в другую.................. 122

6. IP адресация

6.1. Длина IPv4 адреса .

Форма записи IPv4 адресов

6.2.Структура IP адреса

6.3. Особые IP адреса

6.4. Диапазоны IP адресов, обладающие специальным назначением в сети Интернет...........197

6.5. Правила назначения IP адресов

7. Пример назначения IP адресов в составной сети

8. Ограничения и недостатки классовой системы IP адресов

9. Домашнее задание

Урок №1

1. Введение в предмет, понятие сетевого уровня Добрый день, сегодня мы начинаем изучать основы маршрутизации в IP сетях, и наш новый курс называется «Маршрутизация в IP сетях, базовый». Сразу можно сказать, что рамках этого курса мы не рассмотрим абсолютно все аспекты маршрутизации, мы рассмотрим основополага­ ющие принципы IP адресации, работы маршрутизаторов, а также работу базовых протоколов сетевого уровня .

Тем не менее, далее у нас будут курсы «Маршрутизация в IP сетях, расширенный», «Маршрутизация в IP сетях, профессиональный», а также некоторые другие, в рамках которых будут рассмотрены все актуальные протоколы и технологии, необходимые для построения составных сетей произвольного масштаба и сложности. Но для успешного изучения всех этих последующих курсов, крайне важно полное понимание всего объема материала, который будет изложен в данном курсе .

В данном уроке мы изучим и разберемся со следую­ щими темами:

Определимся с необходимостью, понятием и основ­ ными принципами работы сетевого уровня Разберемся с  принципами формирования таблиц маршрутизации Вспомним понятие стека протоколов и выберем стек протоколов для изучения

1. Введение в предмет, понятие сетевого уровня Изучим каким образом и кем производится стандар­ тизация сети Интернет и стека TCP/IP Вспомним системы исчисления и изучим быстрые ме­ тоды перевода из одной системы исчисления в другую

Начнем изучать IP адресацию:

Разберем форму записи IPv4 адресов Изучим структура IP адреса Изучим особые IP адреса и диапазоны IP адресов, обладающие специальным назначением в  сети Ин­ тернет Разберем правила назначения IP адресов Поговорим об ограничениях и недостатках клас­ совой системы IP адресов Так же в конце урока у вас будет домашнее задание





1.1. Основные сведения о технологиях канального уровня Прежде чем мы начнем знакомиться с новым материа­ лом, давайте вспомним какие технологии мы уже изучили, какими возможностями эти технологии обладают. А так­ же, для того, чтобы понять, почему без материала данного курса невозможно строить сети произвольного масштаба, давайте разберемся в том, каковы ограничения этих техно­ логий. Прежде всего, давайте кратко вспомним модель OSI, и на ее базе вспомним уже изученные курсы и технологии, рассмотренные в рамках этих курсов (таблица 1–1) .

В рамках предыдущих курсов: «Коммутация в локаль­ ных сетях, базовый» и «Структурированные кабельные Урок №1

–  –  –

системы» вы детально изучили функции физического и канального уровней, а также протоколы локальных, и, обзорно, глобальных сетей, а также правила монтажа кабельных систем .

Давайте кратко вспомним, за что отвечают физиче­ ский и канальный уровни модели OSI:

Физический уровень в  общем случае решает одну главную задачу, он отвечает за передачу сигналов по линиям связи (сами линии связи, типично не счита­ ются частью физического уровня, они находятся ниже, и соответствуют неофициальному уровню «Кабельной системы») .

Примечание: Как вы знаете, в модели OSI нулевого уровня нет. Но, тем не менее, так как физический

1. Введение в предмет, понятие сетевого уровня уровень практически не содержит никакой информации о линиях связи, и вообще не содержит никакой информации о правилах проектирования, монтажа, диагностики кабельной системы (то, что вы изучали в рамках курса «СКС») то для полноты картины, модель OSI можно дополнять этим уровнем .

Другими словами, физический уровень отвечает за преобразование данных, полученных с вышестоящего, канального уровня, в некоторый, физический сигнал, соответствующий используемой среде передачи данных .

Для различных сетевых технологий могут применяться самые разнообразные реализации физического уровня (медный или оптоволоконный кабель, или же беспрово­ дные технологии передачи данных), каждой из которых соответствует свой тип физического сигнала (изменения электрических параметров, изменения параметров све­ товой волны или радиоволны) .

Естественно, на стороне получателя физический уро­ вень должен выполнить обратное преобразование — из некоторого физического сигнала получить набор бит, и передать его в виде кадра данных канальному уровню .

Канальный уровень решает две основные задачи:

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

Для решения этой глобальной задачи канальному уровню приходится решить не­ сколько дополнительных подзадач:

Аппаратная адресация Урок №1 Контроль ошибок (только обнаружение, но не вос­ становление поврежденных блоков данных) Адресация протокола сетевого уровня Метод доступа. Метод доступа определяет набор правил, формализующих порядок передачи блоков данных станциями сети .

Кроме того, как вы помните, канальный уровень мо­ жет выполнять еще функцию гарантирования доставки данных, например, с помощью протокола LLC, однако, как мы с вами разбирали раньше, такой режим работы обычно не используется .

Так как совокупность функций физического и ка­ нального уровней позволяют построить нам сеть, сеть, в которой все станции будут единым образом подклю­ чены к среде передачи данных с помощью подобных или идентичных транcиверов, будут обладать подобными адресами канального уровня и смогут обмениваться друг с другом данными, их совокупность называется «Базовая сетевая технология». Однако сеть, реализованная с при­ менением функций ТОЛЬКО физического и канального уровней не может быть очень большой, как минимум из­ за того, что в рамках одной базовой сетевой технологии все узлы должны использовать идентичные реализации физического и канального уровней — один формат ка­ дра, один метод доступа, один тип адреса и так далее .

Это естественно не единственная, и даже возможно не самая главная, причина невозможности построения сети произвольного масштаба, но уже тот факт, что с исполь­ зованием функций только физического и канального

1. Введение в предмет, понятие сетевого уровня уровней построить разнообразную, гетерогенную, сеть невозможно, уже должен привести вас к пониманию необходимости тех технологий, которые бы позволили объединить и организовать взаимодействие между раз­ личными сетями, построенными с помощью различных реализаций физического и канального уровней .

В течении самого первого курса специализации, «Ком­ мутация в локальных сетях, базовый» вы изучали различ­ ные технологии канального и физического уровней — ос­ новные на сегодняшний день технологии: Ethernet и WiFi, а также другие технологии, менее распространенные или устаревшие в данный момент: Frame Relay, X.25, ATM, FDDI, Token Ring, Token Bus. Соответственно, функции и реализации функций канального и физического уров­ ней вам уже должны быть известны и понятны, и так же вы должны уже детально понимать, как построить одну сеть с помощью технологии Ethernet и в общих чертах понимать, как построить одну сеть с помощью менее популярных технологий.

Все эти технологии могут быть разделены на две группы:

LAN технологии. Например: Ethernet, WiFi, Token Ring, Token Bus .

WAN технологии. Например: Frame Relay, X.25, ATM .

Если локальные сети, как известно, ограничены своими географическими масштабами, и очевидно не подходят на роль технологий для сети произвольного масштаба, то может быть получиться построить такую сеть с помощью какой­либо глобальной технологии, ведь они по опреде­ лению не обладают ограничениями на географическую Урок №1 протяженность? Например, технология Frame Relay может объединять в себе произвольное количество узлов на произвольных расстояниях, почему же ее не используют для построения сети произвольного масштаба? Ответ достаточно прост, и он уже был озвучен ранее в этом уроке — «в рамках одной базовой сетевой технологии все узлы должны использовать идентичные реализации физического и канального уровней — один формат ка­ дра, один метод доступа, один тип адреса», каждый узел, который должен быть подключен к сети Frame Relay, должен обладать сетевым интерфейсом Frame Relay, что на самом деле не очень удобно для конечных узлов, как в силу того, что, как правило, конечные узлы не обладают WAN интерфейсами, так и в силу того, что логика Frame Relay отсутствует в большинстве операционных систем .

1.2. Проблема построения больших сетей средствами канального уровня Таким образом, предварительно можно сделать вывод о том, что для построения сети здания или сети офиса WAN технологии неудобны, для решения этой задачи более удобны технологии LAN, так как они для этого и разрабатывались. С другой стороны, с помощью LAN технологий сложно, и зачастую невозможно, объеди­ нить узлы или устройства, находящиеся на огромных расстояниях друг от друга, но это можно легко сделать с помощью WAN технологий. То есть для построения сети произвольного масштаба как по количеству узлов, так и по географической протяженности нам необходи­ мы оба типа технологий, и LAN и WAN, но возникает

1. Введение в предмет, понятие сетевого уровня проблема объединения и организации взаимодействия различных участков этой сети, использующих различные технологии физического и канального уровня. Но обо всем по порядку .

Давайте более детально разберемся в том, насколько масштабируема самая распространенная на сегодняшний день технология — Ethernet.

Проанализируем ее потенци­ альные ограничения и определим, можно ли с ее помощью реализовать сеть произвольного масштаба:

Протяженность сети. Данная проблема, фактически присуща только классическому полудуплексному Ethernet на повторителях и концентраторах, и связана с возмож­ ностью распознавания коллизии (вспомните правило гарантированного распознавания коллизий: «TminPDV») .

Это привело к стандартизации длины сегментов Ethernet в зависимости от типа кабеля (оптика/коаксиал/витая пара). Теоретическая возможность увеличения диаметра сети существует, но требует увеличения минимальной длины кадра, и для получения бесконечно большой ге­ ографической протяженности сети будет требоваться бесконечно длинный кадр. Переход на коммутируемые технологии и отказ от метода доступа снимает явные ограничения на географическую протяженность сети, и эта проблема отходит на второй план .

Самообучение коммутаторов. Сам по себе процесс самообучения коммутатора не является проблемой, это нормальный алгоритм работы коммутатора, описанный стандартом 802.1D, который, как вы знаете, заключает­ ся в том, что при включении коммутатора, его таблица Урок №1 коммутации пуста, и коммутатор в течении некоторого времени «следит» за трафиком, передаваемым в сети, и заполняет таблицу коммутации с помощью информа­ ции, находящейся в поле «SA» (Source Address — адрес отправителя) принимаемых коммутатором кадров .

Кадры, адрес получателя которого (адрес, находящийся в поле «DA» — Destination Address) коммутатору неизвестен (отсутствует в таблице коммутации) передается ком­ мутатором на все интерфейсы, за исключением того, на который этот кадр был принят. Для небольшой сети са­ мообучение коммутаторов не является проблемой. Но мы говорим о возможности построения сети произвольного масштаба, и если представить себе сеть, с количеством узлов, исчисляемым в миллионах, то как быстро произой­ дет самообучение коммутаторов такой сети? Фактически можно утверждать, что в сети такого масштаба процесс самообучения не закончится никогда. Если у вас небольшая сеть предприятия, то зная график его работы с опреде­ ленной вероятностью можно предположить примерное время (скажем, в среднем, через 20 минут после начала рабочего дня, каждый узел сети отправит хотя бы один кадр), когда коммутаторы сети пройдут полное самооб­ учение, и по истечению этого времени будут работать эффективно, передавая кадры только на нужный порт .

В огромной сети, крайне мело вероятна ситуация, когда все узлы сети будут включаться и выключаться синхронно, кроме того узлы сети могут перемещаться или заменяться, что будет приводить к необходимости продлевать про­ цесс самообучения снова и снова и коммутаторы вечно будут находиться в процессе самообучения. Так как этот

1. Введение в предмет, понятие сетевого уровня процесс для сети Ethernet стандартен, и вообще является практически неотъемлемой его частью, на первый взгляд может показаться что процесс самообучения не вызывает каких­либо проблем, но он все же порождает целый ряд последствий и проблем, которые связаны с таким спосо­ бом построения таблиц коммутации, проблем, которые становятся все более явными, с увеличением количества узлов в сети .

Сразу возникает еще один вопрос: «А можно было бы в сети Ethernet вообще отказаться от самообучения коммутаторов?». Откуда тогда коммутаторы брали та­ блицы коммутации? Фактически, таблица коммутации может заполняться не только автоматически с помощью процесса самообучения, она также может быть заполнена и вручную администратором. Очевидно, в сети произ­ вольного масштаба такой подход неприменим. В сети, в которой миллионы узлов будут присутствовать сотни тысяч коммутаторов, и любое изменение расположения узла, его замена, или добавление нового устройства будет требовать обновления таблицы в миллионы записей на каждом из сотен тысяч устройств. То есть поддержание таблиц коммутации на всех устройств сети будет тре­ бовать колоссальных затрат времени и человеческих ресурсов (хотя в небольшой сети такой подход вполне применим). Даже если оптимизировать процесс ручного заполнения таблиц коммутации реализовав в сети неко­ торый сервер, на котором будет храниться информация о MAC адресах узлов сети, и от администратора будет требоваться внести информацию о каждом изменении только один раз, а затем сервер самостоятельно распро­ Урок №1 странит информацию на все коммутаторы сети, все равно затраты времени на обслуживание таблиц коммутации в сети будут огромны .

Размер таблицы коммутации. Структура таблицы коммутации очень проста и содержит одну запись на каж­ дый узел сети. Соответственно, максимальное количество записей легко прогнозируемо — в таблице коммутации каждого коммутатора будет такое количество записей, сколько у вас узлов в сети (пользовательские узлы, серве­ ра, управляемое сетевое оборудование и т.д.). Если у вас миллион узлов, то таблице коммутации каждого комму­ татора будет миллион записей, если в сети сто миллионов узлов, то таблице коммутации каждого коммутатора будет сто миллионов записей. То есть зависимость количества записей от количества узлов — линейная, и увеличение количества узлов в сети в два раза приведет к увеличению размера таблицы в два раза .

В чем собственно проблема? А проблема заключается в том, для хранения информации об узлах сети требуют­ ся аппаратные ресурсы — определенный объем памяти, а это может повлиять на стоимость устройства. И тут возникает вопрос: «Какой объем памяти разработчику устройства необходимо установить в коммутатор?». Если в коммутатор установить небольшой объем памяти, то коммутатор будет обладать доступной ценой, но, воз­ можно, не сможет хранить информацию о достаточном количестве MAC адресов. Если в коммутатор установить большой объем памяти, то коммутатор сможет хранить информацию о достаточном количестве MAC адресов, но будет обладать большой стоимостью. Таким обра­

1. Введение в предмет, понятие сетевого уровня зом, при покупке коммутатора необходимо обращать внимание на объем памяти, которым он обладает (для простоты часто объем памяти указывается не в байтах, килобайтах или мегабайтах, а в количестве MAC адресов, которое может быть сохранено в таблице коммутации данного устройства, как показано на рисунке 1–1, 16K — 16000 MAС адресов, 32K — 32000 MAС адресов). Для простых коммутаторов уровня SOHO (Small office/home office — малый офис/домашний офис) этот параметр не критичен, как правило коммутатор может хранить существенно большее количество MAC адресов, чем количество узлов, которое типично содержится в се­ тях подобного масштаба, то для коммутаторов уровня Enterprise (Корпорация) или Service Provider (компания поставщик услуг) этот параметр очень важен, и может существенно повлиять на стоимость оборудования. Ведь если мы выберем коммутатор с недостаточным объемом таблицы MAC адресов, то она заполниться раньше, чем Рисунок 1–1. Емкость таблицы MAC адресов коммутаторов Cisco серии Catalyst 2960–XR Урок №1 коммутатор изучит информацию обо всех узлах сети .

В результате изучение каждого нового MAC адреса бу­ дет приводить к необходимости вытолкнуть из таблицы ранее изученный MAC адрес (к «забыванию» ранее из­ ученного MAC адреса). Это может привести к тому, что проблема самообучения коммутатора появится даже в относительно небольшой сети .

Время поиска в таблице коммутации. Размер табли­ цы коммутации сам по себе не является существенной проблемой, он может повлиять на стоимость устройства и этот параметр необходимо контролировать при выбо­ ре устройств в процессе проектирования сетей средней и высокой сложности. Существенно более важным во­ просом является вопрос времени поиска необходимой информации в большой таблице коммутации, ведь оче­ видно, что чем больше записей в таблице коммутации, тем больше надо сделать операций для того что бы найти необходимую запись в ней .

Если бы в таблицу коммутации мы заносили информа­ цию не о каждом узле, а о группах узлов, снабдив опреде­ ленное количество узлов, находящихся в одном каком­то физическом месте (например, подключенных к одному порту коммутатора) определенным идентификатором, это позволило бы существенно уменьшить количество запи­ сей в таблице коммутации, и таким образом, уменьшить время поиска необходимой информации в ней. Однако принципы работы Ethernet требуют адресации каждого отдельного узла в сети с помощью индивидуального MAC адреса. Кроме того, следует помнить, что MAC адреса являются условно случайными, и узлы с похожими MAC

1. Введение в предмет, понятие сетевого уровня адресами могут находиться в совершенно разных точках сети, и наоборот, у двух рядом стоящих узлов будут, с боль­ шой вероятностью, совершенно различные MAC адреса .

Поэтому возможность упростить таблицу коммутации путем нахождения похожих частей MAC адреса у узлов находящихся рядом в рамках Ethernet (подключенных к одному порту коммутатора), фактически отсутствует .

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

Затопление (Flooding) сети направленным (Unicast) трафиком. Как согласно алгоритму «Прозрачного моста»

(IEEE 802.1D) коммутатор обрабатывает направленные (unicast) кадры, MAC адрес получателя которых отсутствует в таблице коммутации? Такие кадры передается коммута­ тором на все интерфейсы, за исключением того, на который этот кадр был принят. Таким образом, в сети, в течении некоторого времени, пока идет процесс самообучения Урок №1 коммутатора, определенное количество направленных кадров будет передано не на один интерфейс, а на все. Чем больше сеть, тем дольше будет проходить самообучение, и тем больше пакетов будет передаваться таким образом .

В результате может пострадать как безопасность (так как определенные кадры могут содержать конфиденциальную информацию), так и производительность (так как линия связи будет вынуждена принимать кадры, которые не предназначены узлу, подключенному к соответствующе­ му интерфейсу). В небольшой сети такая ситуация будет непродолжительна, и закончится в прогнозируемый ин­ тервал времени. Но в гигантской сети, в которой, как мы уже разобрались раньше, коммутаторы в процессе само­ обучения будут находиться вечно, процесс затопления сети направленным трафиком не закончится никогда .

Если произвести простые расчеты, то в канале связи с пропускной способностью 100Mbit/s за одну секунду мо­ жет быть передано не более 8127 полноразмерных кадров:

Пропускная способность канала связи Кадры в = секунду Данные + служебная информация + межкадровый интервал Кадры в секунду = = 8127,43 1500 * 8 + 26 * 8 + 96 Таким образом, если в сети будет около 8000 станций, MAC адреса которых неизвестны коммутаторам, и в кокой­то один момент будет осуществляться передача данных этим станциям, то все каналы сети с пропуск­ ной способностью 100Mbit/s будут заняты и не смогут принимать другие кадры, в том числе и адресованные тем узлам, которые подключены к соответствующим интерфейсам. С одной стороны, может показаться что

1. Введение в предмет, понятие сетевого уровня такая ситуация маловероятна, но если вспомнить что речь идет о сети, в которой миллионы узлов, она становится уже и не такой маловероятной. И даже если в данном примере уменьшить количество станций, MAC адреса которых неизвестны коммутаторам в два раза, до 4000, то получается, что половина пропускной способности каналов связи будут все равно занята, и не сможет быть использованной по назначению. Решит ли данную про­ блему повышение пропускной способности, скажем до 1Gbit/s? В гигантской с миллионами узлов, очевидно, нет .

Как решить эту проблему? Суть этой проблемы — в самообучении, отказаться от которого или заменить его чем­либо в Ethernet, как мы уже разобрались выше, невозможно. Таким образом получается, что проблема затопления большой сети направленными кадрами не решаема .

Широковещательный шторм. Если направленные кадры передается коммутатором на все интерфейсы, за исключением того, на который этот кадр был принят только в том случае, когда MAC адреса получателя нет в таблице коммутации, то широковещательные кадры обрабатываются таким образом всегда. Откуда в сети могут возникать широковещательные кадры? Такие кадры могут генерироваться как прикладными программами, так и нежелательными программами (вирусами), а также решать исключительно служебные задачи (и как мы скоро увидим, сети Ethernet без широковещательных кадров практически не могут существовать) .

В чем опасность широковещательного трафика? Что произойдет если какая­то станция в сети начнет генери­ Урок №1 ровать широковещательные кадры со скоростью своего сетевого интерфейса? Тогда все эти кадры будут переда­ ваться абсолютно на все остальные узлы сети, и полно­ стью занимать пропускную способность их интерфейсов .

А что если таковых узлов несколько? Тут даже не надо представлять гигантскую сеть в миллионы узлов. Для данного конкретного примера нет разницы сколько у вас узлов в сети, 10 или 10000000, результат будет одинаков!

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

Ранее мы с вами обсуждали технологию «Storm Control», которая позволяет ограничить количество кадров опре­ деленного типа (широковещательных, групповых или на­ правленных), которые будут обрабатываться интерфейсом коммутатора. Если на интерфейсе будет появляться большое количество кадров заданного типа, то кадры, передающиеся после достижения разрешенного уровня, будут отброшены .

Проблема данного решения заключается в том, что оно абсолютно не интеллектуальное, и не позволяет отделить «правильные» или «полезные» кадры, от «неправильных»

или «бесполезных». То есть она конечно сможет защитить сеть от полного прекращения работы, но может нарушить коммуникации приложений и протоколов, базирующихся на передаче широковещательных кадров .

Широковещательный шум. В любой сети с под­ держкой широковещания есть определенный уровень широковещательных кадров, который считается допу­ стимым, и мало того, он необходим для нормального функционирования данной сети. Этот «допустимый» или «нормальный» уровень широковещания можно назвать широковещательным шумом .

1. Введение в предмет, понятие сетевого уровня Когда речь идет о широковещательном шторме, то как правило имеется ввиду нетипично большое количество широковещательных кадров, отправляемых одной или нескольких станций и теоретически с этим явлением можно хоть как­то бороться с помощью таких техноло­ гий как «Storm Control», задав определенный уровень широковещания, который не должен быть превышен станциями сети. То есть, мы, зная специфику работы приложений в сети, можем задать для каждого из узлов сети допустимый порог, скажем, в 100 широковещатель­ ных кадров в секунду. Если какая­то станция превышает этот порог, то первые 100 широковещательных кадров в секунду будут пропущены коммутатором, а остальные отброшены. И несмотря на то, что корректность работы приложений и протоколов, базирующихся на широкове­ щательных кадрах, в данном случае гарантироваться не может, сеть может быть защищена от выхода из строя в результате широковещательного шторма. Но, как мы уже говорили выше, совсем запретить широковещание мы не можем, так как определенные процессы в сети Ethernet, а также работа некоторых протоколов, тесно с ним связано .

Допустим, мы разрешаем каждой из станций отправ­ лять 1 широковещательный кадр в 10 секунд. Это много?

Нет, это совсем не много, и на первый взгляд кажется безопасным. Но если речь идет о сети в миллион узлов?

Тогда получается, что в одну секунду такой сети необхо­ димо передать 100000 широковещательных кадров! А все широковещательные кадры должны быть переданы всем узлам сети, то есть даже если представить, что кадры будут Урок №1 минимальной длины, то для их передачи каждому каналу связи потребуется пропускная способность в 67,2 Mbit/s .

Пропускная способность канала связи = Кадры в секунду * (Данные + служебная информация + межкадровый интервал) Пропускная способность канала связи = 100000 * (46*8 + 26*8 + 96) = 67200000 b/s = 67,2Mb/s То есть 67,2 Mbit/s из всей доступной пропускной способности каналов связи (для Fast Ethernet это 67,2% из доступных 100 Mbit/s) будет занято только лишь пере­ дачей широковещательного трафика. Может показаться что для сетей на базе Gigabit Ethernet это не проблема. Но на самом деле 1 широковещательный кадр в 10 секунд это крайне мало, и вы скоро в этом убедитесь сами. И если мы повысим допустимый уровень широковещания до 1 широковещательного кадра в 1 секунду, то в сети с мил­ лионом узлов получим поток широковещания в 672 Mbit/s .

А если кадры будут не минимальной длины, то не хватит пропускной способности и технологии 10 Gigabit Ethernet .

Таким образом, очевидно, простым повышением про­ пускной способности каналов связи данную проблему не решить. И так как эта проблема связана с тем, как Ethernet обрабатывает широковещательные кадры — каждый такой кадр от каждого узла сети доставляется всем остальным узлам сети без исключения, для огромной сети проблема широковещательного шума вообще является неразрешимой (кроме запрета широковещания в принципе, что в свою очередь, недопустимо, так как нарушит работу Ethernet) .

Управление трафиком. Вполне возможно, вам в ва­ шей сети необходимо будет ограничить взаимодействие каких­либо станций, например, ограничить взаимодей­

1. Введение в предмет, понятие сетевого уровня ствие каких­то подразделений между собой, или запретить определенным подразделениям доступ в Интернет или к каким­то внутренним серверам. И чем больше ваша сеть, тем больше вероятность необходимости такого контроля и выше сложность правил, которые необходимо будет применить .

Для решения этой задачи, вам будет необходимо на промежуточных устройствах сети, очевидно на коммута­ торах, раз речь идет о Ethernet, настроить определенные правила доступа. Эти правила доступа должны будут использовать только те параметры, которые «понятны»

Ethernet коммутаторам, и так как единственным иден­ тификатором узла в Ethernet является MAC адрес, то эти правила доступа могут основываться только на MAC адресах. Например, «Узлу с MAC адресом «MAC­1» можно обращаться к узлу с MAC адресом «MAC–2»», или «Узлу с MAC адресом «MAC–3» нельзя обращаться к узлу с MAC адресом «MAC–4». Но так как MAC адреса узлов уникаль­ ны и являются условно случайными, для описания набора правил доступа узлов одного отдела к узлам другого отдела или серверу, вам придется записать все MAC адреса всех узлов отделов и сервера, и возможность упростить список правил доступа, путем нахождения похожих частей MAC адреса у узлов находящихся рядом, фактически отсутству­ ет. Чем больше узлов в сети, тем больше ручной работы .

И самое главное, даже если вы опишите все необходимые правила, это не говорит о том, что на этом работа будет закончена. Так как MAC адреса привязаны к физическим сетевым адаптерам, то любые перемещения и замены узлов сети будут требовать обновления списка правил .

Урок №1 То есть управление трафиком на коммутаторах, те­ оретически возможно, но крайне неудобно и слишком ресурсоемко. Вы можете сами попробовать посчитать, сколько уйдет времени на то, чтобы настроить сеть в ко­ торой 1000000 узлов, и 50000 коммутаторов — в первом приближении для этого надо будет сделать по 1000000 за­ писей на каждом из 50000 коммутаторов! Добавьте к этому необходимость периодического обновления правил из­за перемещения или замены узлов, а также поиск ошибок, которые вы потенциально можете сделать в процессе написания множества этих правил!

Привязка MAC адреса к адаптеру. Одной из проблем коммутируемого Ethernet сети является то, что MAC адрес узла привязан к сетевому адаптеру. Суть этой заключается в том, что при смене сетевого адаптера узла, его физиче­ ский адрес для Ethernet сети изменится. То есть если вы каким­то образом настроите управление трафиком на коммутаторах вашей сети, если вы попытаетесь умень­ шить затопление сети направленным трафиком заполнив таблицы коммутации вручную (для небольшой сети все это относительно реально), как только вам надо будет переместить узел, или у узла выйдет из строя сетевой интерфейс, вам тут же придется обновлять все ранее на­ строенные таблицы и правила доступа. И если в небольшой сети перемещение узла или выход его сетевого адаптера из строя не самое частое событие, то в гигантской сети подобные ситуации с большой вероятностью будут воз­ никать повсеместно, что в свою очередь будет требовать регулярной работы по обновлению служебных таблиц и правил доступа, и чем больше сеть, тем больше на это

1. Введение в предмет, понятие сетевого уровня будет требоваться времени, так как обновлять эти табли­ цы и правила доступа надо будет на всех коммутаторах сети, а не только на том, к которому был подключен узел .

Необходимость использования различных канальных технологий. Иногда требуется использования различных типов линий связи или канальных технологий, то есть необходимо использовать не только Ethernet. Как мы уже говорили выше, где­то удобней использовать LAN технологии, где­то WAN. Например, если вам необходимо включить в корпоративную сеть удаленный филиал, но в том регионе, где располагается офис удаленного филиала нет провайдера, позволяющего подключиться с помощью технологии Ethernet, предлагаются, например, подключе­ ния только с помощью технологии ADSL (или другие DSL решения). Но как можно подключить станцию с ADSL интерфейсом в сеть Ethernet? Можно ли в Ethernet комму­ таторе иметь ADSL интерфейс для подключения к провай­ деру интернет? На самом деле технически это возможно, в одном из предыдущих курсов вы изучали возможность трансляции кадров канального уровня одной технологии в другую. Но необходимость трансляции кадров, напри­ мер, PPP или Frame Relay в Ethernet весьма сомнительна и связана с некоторыми дополнительными проблемами, которые трудно решаемы на канальном уровне. В качестве исключения, можно привести пример трансляции кадров WiFi в кадры Ethernet и наоборот, которая выполняется любой, даже самой простой, точкой доступа .

Топологии без петель. Как известно, Ethernet не может, без применения дополнительных технологий, работать Урок №1 поверх топологий с петлями на канальном уровне. Суть этой проблемы также связана с алгоритмом «Прозрачного моста» (IEEE 802.1D) и заключатся в том, что коммутатор, не зная места нахождения узла получателя кадра, отправляет его на все свои интерфейсы (за исключением того, на кото­ рый этот кадр был принят), что в свою очередь приводит к размножению кадров, зацикливанию кадров, постоян­ ной перезаписи таблицы коммутации и невозможности коммуникаций в сети. Эта проблема, в отличии от всех предыдущих, относительно просто решается с помощью вспомогательных технологий и протоколов, таких как STP (Spanning Tree Protocol), но эти протоколы и технологии дают дополнительную нагрузку на аппаратные ресурсы коммутатора, а также могут быть проприетарными реше­ ниями, не дающими возможности использования в одной сети оборудование различных производителей .

Подведем итог. Мы хотим научиться строить сети произвольного масштаба. В прошлых курсах мы изучали как строить относительно небольшие сети.

Какие выводы можно сделать в результате анализа масштабируемости технологии Ethernet:

В классическом Ethernet используется метод доступа CSMA/CD, накладывающий колоссальные ограниче­ ния на все что связано с масштабируемостью сети на его базе, начиная от физического размера и количе­ ства узлов, заканчивая максимальным количеством повторителей между любыми двумя узлами .

Использование коммутаторов позволяет устранить метод доступа, и это в свою очередь нейтрализует все (или

1. Введение в предмет, понятие сетевого уровня практически все) недостатки классического Ethernet!

В коммутируемом Ethernet вообще нет необходимо­ сти считать PDV и  PVV, исчезают явные ограниче­ ния на длину сети и нет ограничения на количество коммутаторов. В тот момент, когда вы начали изучать коммутируемый Ethernet вам могло показаться что все проблемы масштабируемости сняты, что на базе только лишь Ethernet можно строить сети произволь­ ного размера (в плане размера и количества узлов)!

Но на самом деле, как только мы попытаемся постро­ ить сеть действительно гигантского размера на базе только лишь коммутируемого Ethernet мы столкнемся со всеми выше перечисленными проблемами. И если еще в конце предыдущего курса, мы видели комму­ тируемый Ethernet как верх масштабируемости, по сравнению с классическим Ethernet, сегодня мы видим, что коммутируемый Ethernet обладает существенными ограничениями в  масштабируемости. Все эти про­ блемы, все неэффективные и ресурсоемкие решения этих проблем, которые мы попытались предложить в рамках Ethernet, не позволяют нам построить по­на­ стоящему большую сеть Ethernet .

Примечание: К сожалению, все решения, которые преодолевают порог масштабируемости, в данном случае коммутируемого Ethernet, на самом деле обладают другим, просто более высоким порогом масштабируемости. Почти любая технология, которая считается масштабируемой сегодня, окажется не масштабируемой завтра, в крайнем Урок №1 случае послезавтра. Это происходит потому что всегда мы решаем насущные задачи и задачи ближайшего времени, но посмотреть вперед навсегда невозможно. В качестве примера можно вспомнить первые компьютеры с объемом оперативной памяти в 640KB и знаменитое высказывание «640КB должно быть достаточно для каждого» («640K ought to be enough for anybody»). Сегодня нам не хватает и в 1000 раз большего чем 640KB объема памяти, а пройдет еще немного времени, нам не будет не хватать и в 100000 раз большего чем 640KB объема памяти. Или еще одно известное высказывание руководителя известной компании «Думаю, что на мировом рынке мы найдем спрос для пяти компьютеров». Все что сегодня нам кажется эффективным, завтра окажется неэффективным .

Соответственно, наша задача о построении гигантской сети должна быть решена выходом за рамки Ethernet, нам недостаточно Ethernet что бы строить такие сети. Можно задать вопрос: «А может быть нам подойдет Frame Relay?» .

Ведь у Frame Relay нет большинства выше описанных про­ блем — нет самообучения (таблицы коммутации строятся администратором сети), и так как таблица коммутации Frame Relay имеет другую структуру и идеологию (она основана на виртуальных каналах) во Frame Relay нет проблемы размера таблицы коммутации, кроме того, во Frame Relay нет широковещания как такового, и так далее. Может быть начать строить сети на Frame Relay?

Но, как мы уже говорили, Frame Relay обладает весьма специфическим канальным уровнем, у него хоть и раз­

1. Введение в предмет, понятие сетевого уровня нообразные, но не высокоскоростные и неудобные для подключения физически интерфейсы. Тоже самое можно сказать и о такой технологии как ATM .

То есть ни только LAN технологии ни только WAN технологии не позволяют построить действительно огром­ ную сеть. Количество проблем которые нужно решить для построения такой сети в рамках одной канальной технологии слишком велико, и все решения которые мы могли бы предложить, объективно, не слишком нужны, так как каждое из них хоть потенциально и возможно, но относительно бессмысленно, неудобно, неэффективно или ресурсоемко .

Поэтому так проблему построения сети произвольно­ го масштаба решать нельзя. То есть мы не будем учиться управлять трафиком в больших сетях на канальном уровне или настраивать сервера для хранения MAC адресов од­ ной гигантской сети канального уровня. Для построения гигантской сети на самом деле ненужно решать все эти проблемы. Не нужно пытаться строить гигантские сети на коммутаторах. Необходимо придумать что­то новое, что позволит нейтрализовать все эти проблемы. Нам нужно что­то новое. И этому новому будет посвящен наш новый курс, который мы и начинаем .

1.3. Причины проблем построения больших сетей средствами канального уровня В предыдущей части урока мы с вами определили список проблем, возникающих при попытке построить сеть произвольного масштаба с использованием только лишь средств физического и канального уровней, в част­ Урок №1 ности, с помощью технологии Ethernet. Для получения полной картины происходящего, нам еще необходимо разобраться в причинах возникновения этих проблем .

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

Основных причин, всех описанных в первой части урока проблем, на самом деле две:

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

Если можно было бы каким­то образом сгруппировать узлы, и делать в таблице коммутации только одну запись, описывающую адреса всех узлов, подключенных к определенному порту коммутатора, это бы нейтрализовало следующие проблемы:

Размер таблицы коммутации  — размер таблицы коммутации был бы существенно меньше, это бы су­ щественно уменьшило требования к аппаратной части коммутаторов, что в конечном счете повлияло бы на их стоимость .

1. Введение в предмет, понятие сетевого уровня Время поиска в  таблице коммутации  — если бы размер таблицы коммутации был бы существенно меньше, это так же позволило уменьшить время поиска необходимой информации и позволило бы упростить средства поиска в  таблице коммутации, что также в конечном счете повлияло бы на их стоимость .

Управление трафиком  — если бы количество записей в таблице коммутации было бы меньше, и записи описывали не одни узел, а сразу множе­ ства, процесс конфигурации правил доступа был бы существенно проще .

Что значит «плоский адрес»? Это значит, что у адреса нет никакой структуры, адрес является единым набором бит. Если бы адрес обладал структурой, то разные биты адреса обладали бы разным назначением, одна часть бит описывала бы глобальную группу узлов, другая часть бит могла бы описывать подгруппу узлов в глобальной группе, а третья часть бит писывала бы уже непосредственно узлы .

Можно легко провести аналогию с обычным географи­ ческим адресом — страна, город, улица, дом и квартира .

Если бы адреса были бы просто плоские, то можно было бы частично решить эту проблему, расположим адреса в определённом порядке или зарезервировав определен­ ные диапазоны адресов под подразделения компании. Но к сожалению, MAC адреса не только плоские, но и слу­ чайные, и спрогнозировать и упорядочить их согласно структуре компании невозможно .

Соответственно, если идет речь о проектировании сети произвольного масштаба, то необходима новая, структурированная, система адресации .

Урок №1 Широковещательные адреса. Логика широковеща­ тельного адреса заключается в том, что любые данные, отправленные на этот адрес передаются всем узлам сети. Если в сети будет поддерживаться широковеща­ тельная передача, то часть пропускной способности каналов связи будет занята передачей широковеща­ тельного трафика. Если сеть будет большой, то и ши­ роковещательного трафика будет много. Если сеть будет гигантской, то широковещательный трафик займет всю доступную пропускную способность ка­ налов связи.

Если отказаться от широковещательных адресов полностью отказаться, то это нейтрализует следующие проблемы:

Широковещательный шторм Широковещательный шум Соответственно, если идет речь о проектировании сети произвольного масштаба, то как минимум, поддержка широковещательной передачи должна быть ограничена .

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

Большую сеть надо строить как совокупность маленьких, независимых сетей. Известные нам LAN и WAN технологии обладают своими преимущества­ ми, и удобны, каждая в своей области. Из того, что на

1. Введение в предмет, понятие сетевого уровня базе Ethernet невозможно построить сеть на несколько миллионов узлов совершенно не следует то, что для построения офисной сети небольшой компании надо искать что­то другое .

Это дешевая, распространенная, эффективная и быстрая технология для построения сети масштаба предприятия. Каждая маленькая сеть, составляющая большую, внутри себя будет работать точно также, как и работала раньше. Ethernet будет работать как и раньше, на базе коммутаторов, с само­ обучением, с широковещательным трафиком, но все эти проблемы, в рамках небольшой сети, совершенно не критичны .

Небольшие независимые сети должны объединяться между собой.

При объединении небольших неза­ висимых сетей необходимо использовать правила, которые позволят нейтрализовать выше описанные причины проблем, мешающих строить сети произ­ вольного масштаба:

Должна быть возможность адресации групп узлов .

В служебных таблицах тех устройств, которые будут стоять на границах канальных сетей и объединять их между собой не должно быть записей к каждому узлу любой сети. Необходимо хранить информацию как можно более компактно, для того чтобы опять не по­ лучить проблемы размеров таблиц, скорости поиска и проблемы управления сетью. Необходимо обладать возможностью адресовать группы узлов, целые сети .

Наиболее простой и очевидный признак группировки набора узлов в одну сеть — принадлежность к одной канальной сети. Таким образом, количество записей Урок №1 в служебных таблицах (в первом приближении) бу­ дет равняться не общему количеству узлов во всех канальных сетях, а количеству канальных сетей, что существенно меньше. В этом случае в качестве одного из достоинств такой системы адресации мы получим более высокую стабильность служебных таблиц, ведь так как они будут содержать адреса канальных сетей, а не всех членов все канальных сетей, то и внутрен­ ние изменения канальных сетей (добавление узлов, замена узлов, удаление узлов) совершенно не будет отражаться на идентификаторах этих сетей .

Адреса должны состоять минимум из двух частей:

номер сети и номер узла в этой сети. То есть как минимум нам необходимо ввести новую адресацию для сетей, это то, чего на канальном уровне нет. Что делать с номерами узлов? Ведь идентификаторы узлов на канальном уровне уже существуют? У нас есть два варианта, новая система адресации может:

Вводить новый адрес и для сети, и для узла этой сети .

Вводить новый адрес для сети, а в качестве номера узла использовать идентификатор канального уровня (MAC адрес) Оба эти подхода возможны, и используются разными стеками протоколов. Например, первый подход исполь­ зуется стеком TCP/IP, а второй IPX/SPX .

Широковещание должно быть исключено или ограничено. Естественно широковещание может, и долж­ но, быть сохранено в рамках канальных технологий .

1. Введение в предмет, понятие сетевого уровня Ethernet вполне нормально справляется с передачей широковещательного трафика в рамках небольшого количества узлов, и так как мы отказались от идеи построить гигантскую сеть на базе одной канальной сети, вместо этого решили строить ее как совокуп­ ность маленьких независимых сетей, то в каждой этой маленькой сети можно, а иногда и нужно сохранить возможность широковещательной передачи. Но ши­ роковещание во всю большую сеть, «глобальное» ши­ роковещание должно быть запрещено .

На границах сетей должно устанавливаться специально оборудование — маршрутизаторы. Это оборудование должно обладать интерфейсами, принад­ лежащими в разным базовым сетевым технологиям, работать на более высоком, сетевом уровне, и зани­ маться перенаправлением трафика между канальными сетями — маршрутизацией. Маршрутизаторы будут анализироваться новые, структурированные адреса, и на базе служебных таблиц, содержащих информа­ цию о том, где находится та или иная сеть — таблиц маршрутизации, принимать решение о том, куда пе­ редать пакет данных. Маршрутизаторы являются одной из основных тем нашего курса .

Обратите внимание на то, что каждый из тех прин­ ципов, которые мы только что описали, не может быть реализован уже известными нам технологиями физи­ ческого и канального уровней. Мы с вами уже изучили разнообразные LAN и WAN технологии, каждая из которых работает только лишь на базе физического Урок №1 и канального уровня, и ни одна из них не может помочь нам в реализации выше описанных принципов. Таким образом, мы с вами подошли к необходимости введения нового уровня модели OSI — сетевого уровня, уровня, который мог бы объединить различные реализации фи­ зического и канального уровней, независимые каналь­ ные сети, в одну взаимодействующую сеть, «Составную сеть» (рисунок 1–2) .

Рисунок 1–2. Объединение канальных сетей с помощью маршрутизаторов

В англоязычной литературе для описания составной сети используется термин «Internetworking» или «Internet­ work». Составная сеть может быть произвольного размера и каждая ее составляющая канальная сеть работает на базе своих принципов, которых достаточно что бы ор­ ганизовать работу небольшой сети, а масштабируемость всей составной сети обеспечивается с помощью единого протокола сетевого уровня, и его масштабируемости до­ статочно что бы объединить произвольное количество

1. Введение в предмет, понятие сетевого уровня канальных сетей без потери функциональности и про­ изводительности .

То есть каждая LAN и WAN сеть, входящая в составную сеть, работает на базе своего физического и канального уровня, со своими кадрами, методами доступа и физиче­ скими линиями связи. Эти отдельные LAN и WAN сети объединяются между собой маршрутизаторами, которые обладают интерфейсами в две или более канальных сетей и работают и на сетевом уровне модели OSI .

Примечание: Еще одним термином, который используется для описания составной сети является термин «интернет», очевидно, от английского «Internetwork» .

Этот термин похож на термин «Интернет» (да-да, тоже самое только с большой буквы) .

Под термином «интернет» подразумевается любая составная сеть, от двух сетей до бесконечности .

«Интернет», в свою очередь, это всемирная система объединенных компьютерных сетей для хранения и пе­ редачи информации, построена на базе стека протоколов TCP/IP («Всемирная паутина», «World Wide Web»), то есть это частный случай «составной сети», самый большой и глобальный, но частный случай .

Кроме того, в быту, как альтернативное название для сети «Интернет», используют термин «Глобальная сеть» .

Это категорически не верно, и в рамках нашей программы обучения, в термины «интернет», «Интернет» и «Глобаль­ ная сеть» будет вкладываться совершенно разные смыслы:

«Глобальная сеть» — русскоязычный аналог термина WAN, это реализация определенной комбинации физи­ Урок №1 ческого и канального уровней, позволяющая предавать данные на очень большие расстояния. Но тем не менее это никак не составная сеть, это одна канальная сеть, которая может быть частью составной сети .

«интернет» — произвольная составная сеть, объ­ единяющая различные канальные технологии сетевым уровнем .

«Интернет» — самый большой частный случай со­ ставной сети, «Всемирная паутина» .

2. Принципы работы маршрутизатора, и формирование.. .

2. Принципы работы маршрутизатора, и формирование таблицы маршрутизации Теперь, когда мы разобрались в том, что такое со­ ставная сеть, давайте более детально разберемся в логике работы маршрутизатора .

2.1. Сравнение работы и служебных таблиц коммутатора и маршрутизатора Для начала давайте попробуем дать простое определе­ ние этому устройству: «Маршрутизатор, это устройство, объединяющее как минимум две канальные сети между собой». Исходя из этого определения можно сделать не­ сколько простых и очевидных выводов:

У маршрутизатора должно быть, как минимум, два интерфейса Каждый из интерфейсов маршрутизатора должен быть подключен к своей канальной сети Задачей маршрутизатора является передача данных из одной канальной сети в другую У маршрутизатора должна быть таблица маршру­ тизации .

Таблица маршрутизации в чем­то похожа на таблицу коммутации по своей структуре (табли­ ца 1–2), и она также отвечает на вопрос «Что делать Таблица коммутации содержит список MAC адресов узлов, и интерфейс, на который необходимо отправлять кадры, адресованные каждому из этих узлов. Таблица маршрутизации содержит список сетей в составной сети, и адреса шлюза (следующего маршрутизатора по пути к данной сети). Если вы построите одну канальную сеть, состоящую из миллиона узлов, в таблице коммутации каждого коммутатора будет по миллиону записей. Если сеть из миллиона узлов разделить на тысячу отдельных сетей, объединенных маршрутизаторами, то в таблице маршрутизации маршрутизаторов будет не по миллиону записей, а по тысяче, что на три порядка меньше .

Передача данных от узла одной сети узлу другой сети происходит примерно следующим образом (рисунок 1–3):

2. Принципы работы маршрутизатора, и формирование.. .

Рисунок 1–3.

Использование уровней модели OSI разными объектами сети На узле отправителе блок данных проходит все 7 уров­ ней модели OSI, и на каждом из уровней блок данных получает свою служебную информацию, формируя набор заголовков:

На сетевом уровне формируется пакет, в который добавляются составные адреса узла отправителя и узла получателя .

На канальном уровне формируется кадр соответ­ ствующей базовой сетевой технологии .

Сформированный кадр передается в виде сигнала средствами физического уровня .

Коммутаторы сети узла отправителя принимают сигнал и выделяют из него сформированный узлом отправителя кадр:

Из кадра извлекается информация о  адресах ка­ нального уровня .

Анализируется таблица коммутации и на ее осно­ вании коммутаторами принимается решение о том, на какой интерфейс должен быть передан кадр .

Урок №1 Кадр без изменений передается дальше в виде сиг­ нала средствами физического уровня .

Когда кадр достигает маршрутизатора сети он делает следующее:

Кадр исходной сети разрушается, и из него извле­ кается пакет сетевого уровня .

Из пакета извлекается информация о адресах се­ тевого уровня .

Анализируется таблица маршрутизации и на ее ос­ новании маршрутизатор принимает решение о том, какому шлюзу и на какой интерфейс необходимо пе­ редать данные .

После определения того, на какой интерфейс необ­ ходимо передать данные формируется кадр соответ­ ствующей базовой сетевой технологии .

Сформированный кадр передается в виде сигнала средствами физического уровня .

Коммутаторы сети узла получателя принимают сигнал и выделяют из него сформированный узлом отпра­ вителя кадр:

Из кадра извлекается информация о  адресах ка­ нального уровня .

Анализируется таблица коммутации и на ее осно­ вании коммутаторами принимается решение о том, на какой интерфейс должен быть передан кадр .

Кадр без изменений передается дальше в виде сиг­ нала средствами физического уровня .

2. Принципы работы маршрутизатора, и формирование.. .

На узле получателе блок данных проходит все 7 уров­ ней модели OSI, но в обратном порядке, блок данных по очереди декапсулируется из набора заголовков .

Пока что это очень краткое описание работы маршру­ тизатора по передаче данных из одной канальной среды в другую, но тем не менее, оно должно вам дать базовое понятие одного из главных отличий маршрутизатора от коммутатора — коммутатор всегда останавливается на канальном уровне и никогда не меняет кадр, маршрути­ затор декапсулирует пакет из кадра, уничтожая ориги­ нальный заголовок канального уровня, и затем заново инкапсулирует пакет в новый канальный заголовок, возможно принадлежащий совершенно другой базовой сетевой технологии .

2.2. Принципы формирования таблицы маршрутизации Разобравшись в основах логики работы маршрути­ затора, нам необходимо понять основы формирования таблиц маршрутизации. Мы это сделаем на базе двух примеров, первый пример будет достаточно простой, второй будет существенно сложнее. Естественно, так как мы пока еще не изучили никакого протокола сетевого уровня, поэтому данные примеры мы будем разбирать на базе неких абстрактных номерах сетей и адресах интерфейсов, но это нисколько не уменьшит важность этих примеров, так как логика формирования таблицы маршрутизации совершенно не зависит от того, какую систему адресации мы выберем .

Урок №1 2.2.1. Первый пример формирования таблицы маршрутизации на базе простой сети Первый пример формирования таблицы маршрутиза­ ции будет основываться на сети, показанной на рисунке 1–4. В этой сети всего три маршрутизатора R1, R2 и R3 и пять сетей Net1, Net2, Net3, Net4 и Net5 .

Рисунок 1–4. Простая сеть для первого примера заполнения таблицы маршрутизации Примечание: В составных сетях нет связей типа «Сеть»-«Сеть», так как если эти сети построены на базе различных канальных технологий, то между ними необходимо устанавливать маршрутизатор, а если эти сети построены на базе одной канальной технологии, то их объединение без маршрутизатора приведет к тому что получится одна канальная сеть, а не две. Также нет связей типа «Маршрутизатор»-«Маршрутизатор», так как любые маршрутизаторы связываются с помощью каких-то интерфейсов, принадлежащих определенной базовой сетевой технологии. Поэтому между двумя маршрутизаторами всегда будет сеть, возможно очень небольшая, но все же сеть .

2. Принципы работы маршрутизатора, и формирование.. .

У маршрутизатора R1 два интерфейса, с адресами R1.1 и R1.2 (пока просто используем некоторые абстрактные идентификаторы), интерфейс с адресом R1.1 принадле­ жит сети Net1, а интерфейс с адресом R1.2 принадлежит сети Net2 .

У маршрутизатора R2 три интерфейса, с адресами R2.1, R2.2 и R2.3, интерфейс с адресом R2.1 принадлежит сети Net2, интерфейс с адресом R2.2 принадлежит сети Net4, а интерфейс с адресом R2.3 принадлежит сети Net3 .

У маршрутизатора R3 два интерфейса, с адресами R3.1 и R3.2, интерфейс с адресом R3.1 принадлежит сети Net5, а интерфейс с адресом R3.2 принадлежит сети Net4 .

В качестве шаблона таблицы маршрутизации вос­ пользуемся таблицей, ранее показанной в таблице 1–2 .

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

Давайте заполним таблицу маршрутизации для марш­ рутизатора R1. В таблице 1–3 приведена исходная таблица и в ней уже заполнены все существующие сети .

Таблица 1–3. Исходная таблица маршрутизации маршрутизатора R1 Номер сети Адрес шлюза Net1 Net2 Net3 Net4 Net5 Начнем с сетей Net1 и Net2. Данные сети непосредственно подключены к маршрутизатору R1, а колонка «адрес шлю­ Урок №1 за» должна содержать адрес следующего маршрутизатора по пути к данной сети. Какому другому маршрутизатору, маршрутизатору R1, нужно передать пакеты, адресованные сетям Net1 и Net2? Этого делать не нужно! Данные сети напрямую подключены к маршрутизатору R1. В том случае, когда речь идет о подключенных сетях, поле «адрес шлюза»

не актуально, так как никакому другому маршрутизатору эти пакеты передавать не нужно. Если надо описать непо­ средственно подключенные сети в таблице маршрутизации вместо адреса шлюза указывается слово «Connecteed», или же указывается адрес своего интерфейса, который подключен в данную сеть. В результате заполнения данных о сетях Net1 и Net2 в мы получим таблицу маршрутизации маршрутизатора R1, показанную в таблице 1–4 .

Таблица 1–4. Исходная таблица маршрутизации маршрутизатора R1 Номер сети Адрес шлюза Net1 R1.1 Net2 R1.2 Net3 Net4 Net5 Идем далее, сеть Net3. Задаем вопрос: Какому другому маршрутизатору, маршрутизатору R1, нужно передать паке­ ты, адресованные сети Net3? Ответ на данный вопрос легко увидеть на рисунке 1–5. Путь в сеть Net3 с маршрутизатора R1 пролегает через маршрутизатор R2, и ближайшим его интерфейсом к маршрутизатору R1 является интерфейс с адресом R2.1. Это крайне важно, маршрутизатор может передавать данные только в том случае, если маршрут

2. Принципы работы маршрутизатора, и формирование.. .

к адресу шлюза ему понятен. Таким образом, в качестве шлюза можно указывать только тот интерфейс, который достижим исходному маршрутизатору на канальном уровне, то есть по сути принадлежит то же сети, что и тот интер­ фейс исходного маршрутизатора, через который он будет отправлять пакеты. Маршрутизатор R1 будет отправлять пакеты в сеть Net3 через сеть Net2, и поэтому, в качестве шлюза можно указать только тот интерфейс что также при­ надлежат сети Net2. То есть несмотря на то, что интерфейсы с адресами R2.2 и R2.3 также принадлежат маршрутизатору R2, через который проходит маршрут к сети Net3, их нельзя указывать в качестве шлюза, так как они не принадлежат той же канальной сети, что и интерфейс с адресом R1.2 .

Примечание: В некоторых случаях встречаются ситуации, когда в качестве шлюза указывается адрес, недостижимый на канальном уровне для данного маршрутизатора. Но в этих случаях требуется дополнительная конфигурация и как правило это связано с работой специальных протоколов маршрутизации — протоколов внешней маршрутизации, о которых мы будем говорить позже, в курсе под названием «Маршрутизация в IP сетях, профессиональный». В данном курсе такие ситуации встречаться не будут, и в качестве шлюза необходимо указывать только тот адрес, который достижим исходному маршрутизатору на канальном уровне .

Сразу отобразим и маршруты в сети Net4 и Net5 .

Очевидно, что для маршрутизатора R1 маршруты в эти сети также пролегают через маршрутизатор R2, и адрес шлюза для них будет такой же что и для маршрута к сети Урок №1 Net3. В результате мы получим таблицу маршрутизации для маршрутизатора R1, показанную в таблице 1–5 .

–  –  –

Какому другому маршрутизатору, маршрутизатору R2, нужно передать пакеты, адресованные сетям Net1 и Net5? Ответ на данный вопрос легко увидеть на рисун­ ке 1–6. Путь в сеть Net1 с маршрутизатора R2 пролегает через маршрутизатор R1, и ближайшим его интерфейсом к маршрутизатору R2 является интерфейс с адресом R1.2,

–  –  –

Какому другому маршрутизатору, маршрутизатору R3, нужно передать пакеты, адресованные сетям Net1, Net2 и Net3? Ответ на данный вопрос легко увидеть на рисунке 1–7. Путь в сети Net1, Net2 и Net3 с маршрути­

2. Принципы работы маршрутизатора, и формирование.. .

–  –  –

Как вы уже наверняка догадались, для наглядности, в таблицах маршрутизации строчки, соответствующие подключенным сетям маршрутизаторов мы пометили Урок №1 синим цветом, а строчки ко всем остальным сетям, зеленым .

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

Если мы ошибемся, и для неподключенной (удаленной) сети укажем в качестве шлюза адрес текущего маршрути­ затора, то маршрутизатор будет считать, что данная сеть достижима на канальном уровне и пытаться передать дан­ ные получателю этой сети не используя сетевой уровень .

Для дополнительной наглядности, расположим все рисунки показывающие маршруты к различным сетям от каждого из маршрутизаторов и результирующие таблицы маршрутизации на рисунке 1–8 друг рядом с другом .

2.2.2. Второй пример формирования таблицы маршрутизации на базе сложной сети Мы с вами разобрали первый, простой пример фор­ мирования таблицы маршрутизации. Теперь давайте рассмотрим более сложный пример. Во втором примере мы усложним сеть следующим образом:

Во­первых, введем в топологию альтернативные пути, то есть добавим в нее петли. Вспомните, когда

2. Принципы работы маршрутизатора, и формирование.. .

–  –  –

Рисунок 1–8. Маршруты и таблицы маршрутизации всех маршрутизаторов сети мы говорили о недостатках построения гигантской сети на базе технологии Ethernet, мы упоминали, что без специальных технологий и протоколов, в Ethernet использовать топологии с петлями нельзя. Для се­ тевого уровня петли в топологии не являются про­ блемой, он без проблем может работать в топологии любой конфигурации и  по­разному использовать Урок №1 альтернативные пути, в зависимости от конфигу­ рации и  необходимости.

Для чего могут исполь­ зоваться альтернативные пути? Они могут решать разнообразные задачи:

Резервирование для отказоустойчивости Повышение пропускной способности (балансировка нагрузки) В данном примере мы увидим каким образом нали­ чие альтернативных путей передачи данных влияет на содержимое таблицы маршрутизации .

Во­вторых, мы добавим еще один параметр в таблицу маршрутизации, который становится необходимым при наличии альтернативных путей. Этот параметр называется метрика. С помощью метрики можно оценить качество маршрута, чем один маршрут луч­ ше другого. Если у вас в каждую из сетей тополо­ гии только один маршрут, то метрика вам не особо и  нужна, ведь выбирать маршрут не приходится .

Но если у вас в какие­то сети (может быть и во все сети) есть несколько вариантов передачи данных, то тут уже не будет лишним их оценить, для полу­ чения возможности выбрать тот маршрут, который обладает лучшими характеристиками (короче путь, большая пропускная способность, меньше задержки и т.д.). В общем случае метрика работает следующим образом  — чем меньше значение метрики марш­ рута, тем он лучше. При чем не важно насколько отличаются значения метрик, на 1, на 10, в 10 или в 1000000 раз. Маршрут с метрикой 100 одинакового

2. Принципы работы маршрутизатора, и формирование.. .

лучше маршрутов с метрикой 101 и 10000000. Мож­ но придумать множество различных критериев, на основании которых будет формироваться метрика маршрута, вот некоторые из них:

Количество маршрутизаторов между текущим маршрутизатором и сетью назначения (так называ­ емые «прыжки» или «хопы», от английского слова «hop» — «прыжок») Пропускная способность пути (очевидно, если в пути присутствуют сети с разной пропускной способно­ стью, то мы будем описаться на значение минимальной пропускной способности) Задержки пути Надежность пути Стоимость передачи данных (денежная) Безопасность пути Метрика может быть задана в ручную администра­ тором на основании каких­то соображений Также могу использоваться составные метрики, учитывающие несколько из выше перечисленных параметров Второй пример формирования таблицы маршру­ тизации будет основываться на сети, показанной на рисунке 1–9. В этой сети девять маршрутизаторов R1–R9 и десять сетей Net1–Net10. Так как в данной сеть есть петли, в некоторых случаях у какого­то маршрутизатора может оказаться больше одного маршрута в опреде­ ленную сеть. Как следствие нам понадобиться таблица Урок №1 маршрутизации не с двумя, а с тремя столбцами: «Сеть», «Адрес шлюза» и «Метрика», для возможности оценки качества маршрута. Для простоты давайте в качестве метрики маршрута использовать количество маршру­ тизаторов между текущим маршрутизатором и сетью назначения — хопы. Если мы бы захотели воспользоваться другими возможными типами метрик, то для каждой из канальных сетей в нашей составной сети надо было бы их задать (задать пропускную способность, задержки, надежность и т.д.), для нас это пока лишнее усложне­ ние, и мы остановимся на самом простом и наглядном варианте материки .

В качестве шаблона таблицы маршрутизации вос­ пользуемся таблицей, показанной в таблице 1–10. Так как в сети девять маршрутизаторов и десять сетей, то у нас в результате должно получится девять таблиц маршру­ тизации, по десять записей в каждой таблице .

Таблица 1–10. Исходная таблица маршрутизации для второго примера заполнения таблицы маршрутизации

–  –  –

2. Принципы работы маршрутизатора, и формирование.. .

Рисунок 1—9. Сложная сеть для второго примера заполнения таблицы маршрутизации И так, все исходные данные у нас есть, начнем, как обычно, с начала, с маршрутизатора R1. Как и в предыду­ щем примере, сразу заносим в таблицу маршрутизации маршрутизатора R1 информацию о подключенных к нему сетях — Net1, Net2 и Net3, указав в качестве шлюза адреса интерфейсов маршрутизатора R1, подключенных к данным сетям — R1.1, R1.2 и R1.3 соответственно. Но в отличии от предыдущего примера, нам необходимо еще определить значение метрики. Это достаточно просто, так как мы выбрали в качестве метрики количество маршрутизаторов между текущим маршрутизатором и сетью назначения — Урок №1 хопы. Сколько промежуточных маршрутизаторов между маршрутизатором R1 и сетями Net1, Net2 и Net3? Ноль!

Между маршрутизатором R1 и сетями Net1, Net2 и Net3 нет промежуточных маршрутизаторов, поэтому запишем в поле «Метрика» число «0». Обратите внимание на то, что согласно логике работы параметра «Метрика», наилучшим маршрутом будет маршрут с наименьшим значением ме­ трики. В данном случае получается, что «подключенные»

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

В результате у нас получится таблица маршрутизации, приведенная в таблице 1–11 .

Таблица 1–11. Исходная таблица маршрутизации маршрутизатора R1 Номер сети Адрес шлюза Метрика Net1 R1.1 0 Net2 R1.2 0 Net3 R1.3 0 Net4 Net5 Net6 Net7 Net8 Net9 Net10

2. Принципы работы маршрутизатора, и формирование.. .

–  –  –

Далее анализируем возможные маршруты дости­ жения сети Net4 с маршрутизатора R1, они показаны на рисунке 1–10. Как видно из рисунка, вообще говоря существует три различных варианта достижения сети

Net4 с маршрутизатора R1:

R1–R2–Net4 R1–R3–R5–R2–Net4 R1–R3–R5–R6–R4–Net4 .

Второй и третий пути одинаковы, до достижения маршрутизатора R5, который может передать пакеты либо Урок №1 маршрутизатору R2, к которому подключена искомая сеть, или же передать маршрутизатору R6, который в свою очередь передаст пакеты маршрутизатора R4, к которому подключена искомая сеть. Но так как в составных сетях используется парадигма пошаговой маршрутизации, маршрутизатор R1 не может повлиять на то, как будут маршрутизироваться пакеты другими маршрутизато­ рами и поэтому два эти пути для него одинаковы, и в том и в том случаях маршрутизатор R1 передаст пакеты маршрутизатору R3. Что будет делать с этими пакетами маршрутизатор R3 или любой другой маршрутизатор за ним, маршрутизатор R1 повлиять не может .

Примечание: В некоторых случаях у маршрутизатора есть возможность повлиять на выбор маршрута другим маршрутизатором. Но это требует дополнительной конфигурации специальных протоколов маршрутизации — протоколов внешней маршрутизации, о которых мы будем говорить позже, в курсе под названием «Маршрутизация в IP сетях, профессиональный». В данном курсе такие ситуации встречаться не будут, и один маршрутизатор не сможет влиять на выбор маршрута другим маршрутизатором .

Таким образом, у маршрутизатора R1 два варианта достижения сети Net4:

Через маршрутизатор R2, а точнее его интерфейс R2.1 .

Какая будет метрика у этого маршрута? Сколько про­ межуточных маршрутизаторов между маршрутиза­ тором R1 и сетью Net4 по пути через маршрутизатор

2. Принципы работы маршрутизатора, и формирование.. .

–  –  –

1–11. Как видно из рисунка, различных вариантов дости­ жения сети Net5 с маршрутизатора R1 также три:

R1–R2–Net5 R1–R2–R4–R6–Net5 R1–R3–R5–Net5 .

Первый и второй пути к сети Net5 с маршрутизатора R1 одинаковы, до достижения маршрутизатора R2, кото­ рый может либо сразу отправить пакеты в подключенную искомую сеть, или же передать маршрутизатору R4, кото­ рый в свою очередь передаст пакеты маршрутизатора R6, Через маршрутизатор R3, а точнее через его интер­ фейс R3.1. Какая будет метрика у этого маршрута?

По этому пути между маршрутизатором R1 и сетью Net5 два маршрутизатора — R3–R5. Соответственно, метрика этого пути в «хопах» будет равна 2 .

Вносим полученные данные в таблиц маршрутизации для маршрутизатора R1, как показано в таблице 1–13 .

Похожим образом анализируем маршруты к сетям Net6 и Net7 (рисунки 1–12 и 1–13) .

2. Принципы работы маршрутизатора, и формирование.. .

Рисунок 1–13. Возможные пути достижения сети Net6 с маршрутизатора R1 У маршрутизатора R1 два варианта достижения сети

Net6:

Через маршрутизатор R2, а точнее его интерфейс R2.1 .

Какая будет метрика у этого маршрута? Для анализа метрики выбираем кротчайший путь к сети Net6 через маршрутизатор R2: R1–R2–R5–Net6.

По этому пути между маршрутизатором R1 и сетью Net6 два маршрутизатора:

R2–R5. Соответственно, метрика этого пути в «хопах»

будет равна 2 .

2. Принципы работы маршрутизатора, и формирование.. .

R2–R4 и R2–R4. Соответственно, метрика этого пути в «хопах» будет равна 2 .

Через маршрутизатор R3, а точнее через его интер­ фейс R3.1. Какая будет метрика у этого маршрута?

По этому пути между маршрутизатором R1 и сетью Net7 три маршрутизатора: R3–R5–R6. Соответственно, метрика этого пути в «хопах» будет равна 3 .

Вносим полученные данные в таблиц маршрутизации для маршрутизатора R1, как показано в таблице 1–14 .

Маршруты к сетям Net8, Net9 и Net10 сильно похожи, обратите внимание на рисунок 1–14, после прохождения Рисунок 1–14. Возможные пути достижения сетей Net8, Net9 и Net10 с маршрутизатора R1 Урок №1 маршрутизатора R7 вариантов для разветвления путей передачи данных нет, за маршрутизатором R7 идет линей­ ная цепочка Net8–R8–Net9–R9–Net10. Соответственно, маршруты к сетям Net9 и Net10 будут такими же, как и маршруты в сеть Net8 .

У маршрутизатора R1 два варианта достижения сети

Net8:

Через маршрутизатор R2, а точнее его интерфейс R2.1 .

Какая будет метрика у этого маршрута? Для анализа метрики выбираем кротчайший путь к сети Net8 че­ рез маршрутизатор R2: R1–R2–R5–R7–Net8. По этому пути между маршрутизатором R1 и сетью Net8 три маршрутизатора: R2–R5–R7. Соответственно, метрика этого пути в «хопах» будет равна 3 .

Через маршрутизатор R3, а точнее через его интер­ фейс R3.1. Какая будет метрика у этого маршрута?

По этому пути между маршрутизатором R1 и сетью Net8 два маршрутизатора: R3–R7. Соответственно, метрика этого пути в «хопах» будет равна 2 .

У маршрутизатора R1 два варианта достижения сети

Net9:

Через маршрутизатор R2, а точнее его интерфейс R2.1 .

Какая будет метрика у этого маршрута? Для анализа метрики выбираем кротчайший путь к сети Net9 через маршрутизатор R2: R1–R2–R5–R7–R8–Net9. По этому пути между маршрутизатором R1 и сетью Net9 четы­ ре маршрутизатора: R2–R5–R7–R8. Соответственно, метрика этого пути в «хопах» будет равна 4 .

Через маршрутизатор R3, а точнее через его интерфейс R3.1. Какая будет метрика у этого маршрута? По этому пять маршрутизаторов: R2–R5–R7–R8–R9. Соответ­ ственно, метрика этого пути в «хопах» будет равна 5 .

Через маршрутизатор R3, а точнее через его интер­ фейс R3.1. Какая будет метрика у этого маршрута?

По этому пути между маршрутизатором R1 и сетью Net10 четыре маршрутизатора: R3–R7–R8–R9. Со­ ответственно, метрика этого пути в «хопах» будет равна 4 .

Вносим полученные данные в таблиц маршрутизации для маршрутизатора R1, как показано в таблице 1–15 .

Примерно таким же образом формируем таблицы маршрутизации маршрутизаторов R2, R3, R4, R5, R6 и R7 .

Их таблицы маршрутизации показаны в таблицах 1–16, 1–17, 1–18, 1–19, 1–20 и 1–21 соответственно. В некоторых случаях, например, на маршрутизаторе R2 есть возмож­ ность записать даже по три альтернативных маршрута для достижения определенных сетей, как показано на рисун­ ке 1–15. Сеть Net6 с маршрутизатора R2 доступна через маршрутизатор R1 (его интерфейс R1.2) с метрикой 2, R4 (его интерфейс R4.1) с метрикой 3 и R5 (его интерфейс R5.1) На этом формирование таблиц маршрутизации марш­ рутизаторов этой сети закончено. Как видно, в таблицах маршрутизации не более 10 записей — по количеству сетей. И что самое главное, это количество совершенно не зависит от общего количества узлов в этих сетях, в них могут быть десятки или даже сотни узлов, каждая из сетей составной сети может меняться, в ней могут добавляться или удаляться узлы, но на таблицы маршрутизации это никаким образом не повлияет .

2.3. Понятие «маршрута по умолчанию»

В предыдущей части урока мы разобрали принципы формирования таблицы и убедились в том, что количе­ ство записей в таблицах маршрутизации существенно меньше, чем записей в таблице коммутации. Но если представить себе сеть не на 10 сетей, а на тысячу, или миллион (и вы все знаете сеть такого объем — сеть Ин­

2. Принципы работы маршрутизатора, и формирование.. .

тернет содержит громаднейшее количество сетей), то может возникнуть вопрос, не столкнемся ли мы с теми же проблемами, что и при построении огромной сети на коммутаторах? Нет! Не столкнемся, и вот почему. Как уже мы говорили раньше, при использовании сетево­ го уровня можно организовывать группировку узлов в сети, и адресовать группы узлов. Но на самом деле на этом дело не останавливается, можно точно также группировать и сети в группы сетей, эта возможность сетевого уровня называется «Суммаризация», и мы с ней познакомимся чуть позже, но уже в рамках это­ го курса, когда детально изучим адресацию сетевого уровня. А пока­что рассмотрим частный случай сум­ маризации — «маршрут по умолчанию» .

2.3.1. Применение «маршрута по умолчанию» к простой сети Давайте вернемся к нашему первому примеру сети, на базе которого мы изучали процесс формирования та­ блиц маршрутизации и внимательно рассмотрим таблицу маршрутизации маршрутизатора R1 (рисунок 1–16) .

Обратите внимание на то, что для достижения лю­ бых сетей, кроме непосредственно подключенных к те­ кущему маршрутизатору, используется один и тот­же шлюз — R2.1. Соответственно, что если попробовать упростить таблицу маршрутизации следующим обра­ зом: объявить «безымянный маршрут», маршрут для любой сети, и заменить им все записи в таблице марш­ рутизации с одинаковыми шлюзами? Такой маршрут, подходящий для любой сети и называется — «маршрут Рисунок 1–16. Пути для достижения сетей Net3, Net4 и Net5 с маршрутизатора R1 и его таблица маршрутизации по умолчанию», а маршрутизатор, который достигает все остальные сети через один единственный шлюза, называется «тупиковым». Так как маршрут по умолча­ нию должен подходить для любой сети, записать каку­ ю­то определенную сеть в поле «Номер сети» таблицы маршрутизации мы не можем, вместо этого давайте пока для идентификации такого маршрута воспользу­ емся словом «default», и для наглядности выделим его желтым цветом .

Давайте посмотрим, как будет выглядеть таблица маршрутизации маршрутизатора R1 после внесения в нее маршрута по умолчанию, для наглядности расположив два варианта этой таблицы, до ее «упрощения» и после, рядом (таблица 1–24) .

2. Принципы работы маршрутизатора, и формирование.. .

Таблица 1–24. Таблица маршрутизации маршрутизатора R1 без маршрута по умолчанию и с ним

–  –  –

Как видно, таблица маршрутизации стала существенно короче! Идем дальше, и смотрим пути достижения всех сетей с маршрутизатора R2 и его таблицу маршрутизации (рисунок 1–17) .

–  –  –

Рисунок 1–17. Пути для достижения сетей Net1 и Net5 с маршрутизатора R2 и его таблица маршрутизации Урок №1 Обратите внимание на то, что в столбце «Адрес шлюза»

нет ни одного повторяющегося значения. Это говорит о том, что применять для этой таблицы маршрутизации маршрут по умолчанию не нужно, хотя формально можно — заменить им любой из маршрутов к сетям, которые не являются под­ ключенными к текущему маршрутизатору. Но большой пользы от данного действия не будет, так как количество записей в таблице маршрутизации не уменьшится .

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

Наконец, смотрим пути достижения всех сетей с маршрутизатора R3 и его таблицу маршрутизации (рисунок 1–18) .

В таблице маршрутизации маршрутизатора R3 также есть записи с одинаковым адресом шлюза, и соответствен­ но данную таблицу маршрутизации можно упростить

2. Принципы работы маршрутизатора, и формирование.. .

–  –  –

Урок №1 Обратите внимание, маршрут по умолчанию был размещен не вверху таблицы маршрутизации, где были те сети, вместо которых был записан маршрут по умол­ чанию, а внизу таблицы. Это сделано для того, чтобы ак­ центировать ваше внимание на том, что данный маршрут должен маршрутизатором обрабатываться последним, только тогда, когда пакет не подошел ни под один из явно заданных маршрутов. Иначе все пакеты будут отравлять­ ся только по маршруту по умолчанию, так как под него подходит абсолютно любая сеть .

2.3.2. Применение «маршрута по умолчанию»

к сложной сети Разобравшись с применением маршрута по умолчанию в простой сети, давайте попробуем применить эту тех­ нику к более сложному примеру, к сети, приведенной на рисунке 1–19. В этой сети для достижения определенных сетей с большинства маршрутизаторов есть несколько аль­ тернативных маршрутов. Эти альтернативные маршруты могут быть использованы для различных целей, например, отказоустойчивость или балансировка нагрузки .

С одной стороны, в таблицах маршрутизации этой сети легко найти повторяющиеся адреса шлюзов, как показано в таблице 1–26 для таблицы маршрутизации маршрутизатора R1, где одинаковые адреса шлюзов под­ свечены красным и бирюзовым цветами .

С одной стороны, кажется, что к этой таблице маршру­ тизации можно применить маршрут по умолчанию, ведь в ней присутствуют маршруты с одинаковыми шлюзами, но сразу возникает несколько вопросов:

2. Принципы работы маршрутизатора, и формирование.. .

Рисунок 1–19. Сложная сеть с альтернативными маршрутами и возможностью балансировки нагрузки

–  –  –

У маршрутов, которые мы можем объединить в марш­ рут по умолчанию разная метрика. Какая метрика будет у маршрута по умолчанию?

Количество записей с  шлюзом R2.1 равно количе­ ству записей с шлюзом R2.2. Кого выбрать как шлюз по умолчанию?

Если мы выберем определенный шлюз как маршрут по умолчанию, значит, что он будет использоваться только если ни один из предыдущих маршрутов не подошел, то есть при нормальной работе сети никогда. То есть мы потеряем возможность балансировки нагрузки .

Как видно, в сложных сетях с альтернативными маршру­ тами не так уж и просто определить маршрут по умолчанию .

Тем не менее, давайте попробуем ответить на эти вопросы:

Так как под маршрут по умолчанию попадает несколько разных маршрутов к разным сетям и с разными метри­ ками, то понятие «метрика» к маршруту по умолчанию, как правило не применимо. По этому поле «Метрика»

2. Принципы работы маршрутизатора, и формирование.. .

–  –  –

для маршрута по умолчанию мы пока будем оставлять пустым .

Если количество записей с разными шлюзами одинако­ во, то можно выбрать любой из доступных вариантов, и заменить его маршрутом по умолчанию. Тогда у нас получится вариант таблицы маршрутизации, показанной в таблице 1–27. Допустим, мы сокращаем все записи с шлюзом R3.1 (например, потому, что у маршрутов с шлюзом R2.1 чаще встречается лучшая метрика, чем у маршрутов с шлюзом R3.1). Тогда мы получаем таблицу маршрутизации, в которой все также присутствуют все сети, но без возможности балансировки, так как все альтернативные маршруты замещены маршрутом по умолчанию, который будет работать, очевидно, только тогда, когда маршрут в какую­то сеть через шлюз R2.1 пропадет из таблицы маршрутизации .

Урок №1 Чтобы не потерять возможность балансировки на­ грузки, мы можем поступить следующим образом .

По аналогии с записями об обычных сетях, для ко­ торых мы могли указывать несколько возможных шлюзов, мы можем точно так же поступить и  с маршрутом по умолчанию. В нашем примере как раз для каждой из сетей предлагается одинаковый набор шлюзов — R2.1 и R3.1, пусть эти же шлюзы будут и у маршрута по умолчанию, в результате мы получим таблицу маршрутизации, отображенную в таблице 1–28. Формально такая таблица маршру­ тизации говорит о том, что есть три подключенные сети: Net1, Net2 и Net3, а все остальные сети доступны или через шлюз R2.1 или через шлюз R3.1. Правда теперь непонятно для какой сети, какой шлюз ис­ пользовать более выгодно .

Таблица 1–28. Второй вариант оптимизации таблицы маршрутизации маршрутизатора R1

–  –  –

Сразу необходимо обрати внимание на то, что мы разбираем понятие таблиц маршрутизации без разбора конкретной системы адресации, и поэтому у нас получается несколько абстрактные результаты. Тем не менее, уже ясно, что использование маршрута по умолчанию в сложных

2. Принципы работы маршрутизатора, и формирование.. .

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

Единственное место, в данной сети, где применение маршрута по умолчанию прозрачно и однозначно, это таблицы маршрутизации почти тупикового маршрути­ затора R8 и тупикового маршрутизатора R9. Результаты оптимизации этих таблиц приведены в таблицах 1–29 и 1–30 соответственно .

Таблица 1–29. Таблица маршрутизации маршрутизатора R8, и ее оптимизация с помощью маршрута по умолчанию Вот теперь мы разобрались с основами формирова­ ния таблицы маршрутизации. И даже несмотря на то, что мы оперировали некоторыми условными адресами, тем не менее, мы разобрали несколько важных концеп­ ций в маршрутизации, таких как балансировка нагрузки и маршрут по умолчанию. И балансировка нагрузки, и маршрут по умолчанию будут очень часто использо­ ваться нами и в данном курсе, и во многих последующих и их логика никаким образом не изменится при переходе на использование реальных систем адресации .

3. Понятие стека протоколов. Выбор стека протоколов.. .

3. Понятие стека протоколов .

Выбор стека протоколов для изучения В предыдущих разделах урока мы с вами разобрались с основными принципами работы сетевого уровня и его задачами — структурированная адресация и маршру­ тизация, теперь можно перейти к изучению реального примера его реализации .

3.1. Понятие протокола, интерфейса и стека протоколов Тут возникает вопрос: «Какой протокол сетевого уровня, из всех существующая вариантов, изучать?»

Для того, чтобы ответить на этот вопрос, необходи­ мо вспомнить понятия протокола, интерфейса и стека протоколов.

Мы с вами говорили, что:

Протокол — это совокупность правил работы двух одноименных уровней разных узлов, и для нормальный работы, протоколы, реализованные на одинаковых уров­ нях различных узлов, должны быть идентичны .

Интерфейс — это совокупность правил взаимодей­ ствия двух близлежащих уровней в рамках одного узла .

Реализация одинаковых интерфейсов на разных узлах не обязательна. Стандартизация интерфейсов в общем то говоря и не нужна особо, так как каким образом проис­ ходит передача данных от одного уровня другому в рам­ Урок №1 ках узла отправителя совершенно безразлично с точки зрения получателя, и наоборот. За исключением одного интерфейса, и мы об этом говорили, когда только начи­ нали изучать модель OSI — интерфейс между канальным и сетевым уровнем должен быть стандартизован, так как это граница между аппаратной и программной частью, между базовой сетевой технологией и стеком протоколов .

Формально, при наличии подходящих интерфей­ сов между протоколами разных уровней, можно, следуя идеологии модели OSI, собрать все семь уровней из тех протоколов, которые вам нравятся или наиболее вам подходят. Но на практике, к сожалению, на практике так сделать нельзя. Почему так сделать нельзя? Так сделать нельзя потому, что несмотря на то, что модель OSI четко формализует функции каждого из уровней — протоколы, она совершенно не формализует правила взаимодействия уровней — интерфейсы. И как следствие, протоколы раз­ личных производителей, формально соответствующие двум близлежащим уровням модели OSI, между собой совершенно не совместимы. Тем более, если эти прото­ колы были разработаны еще до появления модели OSI, ведь модель OSI была разработана в 1984 году и является относительно новым стандартом, в момент ее появления уже существовало огромное количество разнообразных сетевых протоколов различных производителей .

Стек протоколов — совокупность протоколов раз­ личных уровней, разработанных для совместной работы одним производителем. То есть совокупность протоколов, который обладают соответствующими интерфейсами для взаимодействия друг с другом .

3. Понятие стека протоколов. Выбор стека протоколов.. .

Исходя из выше сказанного нам необходимо выбрать не просто какой­то протокол сетевого уровня, а выбрать стек протоколов, который мы будем изучать. Ну и в рам­ ках выбранного стека протоколов, станет очевидно какой протокол сетевого уровня мы будем изучать — тот, кото­ рый реализован в рамках выбранного стека протоколов .

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

3.2. Обзор существующих стеков протоколов Прежде чем выбрать стек протоколов, на базе кото­ рого мы будем строить все дальнейшее обучение, давайте кратко вспомним, более­менее известные стеки прото­ колов, которые существуют сейчас или существовали в недалеком прошлом:

Xerox XNS (Xerox Network Services) — этот стек прото­ колов разработан компанией Xerox в начале 80­х годов XX века в рамках разработки архитектуры сетей Xerox (Xerox Network Systems Architecture). Он обеспечивал выполнение всех основных функций для сетевого взаимодействия, таких как маршрутизация, гарантированная передача пакетов, а также содержал проколы, соответствующие прикладному уровню модели OSI. Протокол стека XNS, Урок №1 соответствующий сетевому уровню называется IDP (Internet Datagram Protocol). Интересным историческим фактом является то, что именно этот стек протоколов значительно повлиял на развитие эталонной модели OSI .

На сегодняшний день является полностью устаревшим, и никакого интереса, с точки зрения изучения входящих в него протоколов, не представляет .

Apple Talk — стек протоколов, разработанный ком­ панией Apple для использования в сетях на базе компью­ теров Macintosh в 1984 году. Протокол стека Apple Talk, соответствующий сетевому уровню называется DDP (Datagram Delivery Protocol). Интересной особенностью данного стека было то, что сети, построенные на его базе, не требовали какой­либо предварительной конфигурации сервера или маршрутизатора, назначение адреса, обнов­ ление базы имен, настройка маршрутизации происходила автоматически. По сути это была первая в мире реали­ зация идеи Plug­N­Play. На сегодняшний день данный стек также является полностью устаревшим, и никакого интереса, не представляет .

Novel IPX/SPX (Internetwork Packet eXchange/Sequenced Packet eXchange — названия основных протоколов дан­ ного стека) — стек протоколов, разработанный компа­ нией Novel в 1983 году для сетей на базе Novel Netware .

Данный стек является развитием стека XNS, основные протоколы стека IPX и SPX были разработаны на базе протоколов IDP и SPP стека XNS. Стек протоколов IPX/ SPX был крайне эффективным для организации работы локальных сетей, его эффективность в локальных сетях была выше эффективности TCP/IP. В период с середи­

3. Понятие стека протоколов. Выбор стека протоколов.. .

ны 80­х по середину 90­х операционная система Novel Netware являлась основной и фактически единственной серверной операционной системой для сегмента локаль­ ных систем и персональных компьютеров (в то время Microsoft не предоставляла серверных операционных систем, был только клиентский MS­DOS). Как следствие, стек протоколов реализованный в операционной системе Novel Netware (IPX/SPX) стал стандартом де­факто для локальных сетей. В то время стек протоколов XNS исполь­ зовался как правило только в сетях больших компьютеров (мейнфреймов), Apple Talk также обладал ограниченным применением сетями на базе компьютеров Apple, а Novel IPX/SPX фактически был самым распространенным стеком протоколов в локальных сетях предприятиях. Протокол стека IPX/SPX, соответствующий сетевому уровню назы­ вается IPX (Internetwork Packet eXchange), он обеспечивает все необходимые функции сетевого уровня — автома­ тизация назначения адреса, автоматическое обновление таблиц маршрутизации и другие, достаточно простыми способами. Протокол вводил новый адрес для сети, а в качестве номера узла использовать идентификатор каналь­ ного уровня (MAC адрес). Протокол SPX соответствует транспортному уровню модели OSI, и достаточно эффек­ тивно обеспечивал гарантированную доставку данных в локальных сетях, но при его использовании в больших составных сетях возникали проблемы. В общем, стек Novel IPX/SPX, был неплохим стеком, но на сегодняшний день, как и все предыдущие, является полностью устаревшим, и никакого интереса, не представляет. Причин потери популярности Novel IPX/SPX было несколько:

Урок №1 Развитие и популяризация стека TCP/IP, которая была обусловлена развитием сети Интернет .

Появление новых серверных операционных систем других разработчиков: UNIX, MS Windows Server и  другие. Все они естественно поддерживали IPX/ SPX, но все же основным стеком протоколов в этих операционных системах был развивающийся в  то время TCP/IP .

В результате всего этого компания Novel сама на­ чала встраивать в свои операционные системы стек TCP/IP. Сначала была добавлена просто поддержка, затем стек TCP/IP стал стеком по умолчанию, теперь же в ряде продуктов Novel поддержка IPX/SPX исчезла полностью .

ISO OSI — стек протоколов, разработанный компанией OSI, реализующий модель OSI. Протокол, соответству­ ющий сетевому уровню называется CLNP (Connection Less Network Protocol).

Что же произошло? Почему на сегодняшний день мы активно используем модель OSI, и не используем стек протоколов OSI? Это происходит по следующим причинам:

Не эффективные подходы в разработке, используемые ISO в процессе разработки стека Слишком громоздкие технологии, лежащие в осно­ ве протоколов стека OSI (сложные для реализации и понимания) В результате работы по разработке протоколов стека были свернуты уже в конце 90­х годов XX века. На се­ годняшний день данный стек также является не только

3. Понятие стека протоколов. Выбор стека протоколов.. .

полностью устаревшим, но еще и не до конца сформиро­ ванным, и никакого интереса, не представляет .

TCP/IP — этот стек протоколов возник в результате исследований, профинансированных Агентство по пер­ спективным оборонным научно­исследовательским раз­ работкам США DARPA (Defense Advanced Research Projects Agency) в 60­х годах XX века. Также иногда может назы­ ваться стеком DoD, так как по сути стек был разработан по инициативе разработан по инициативе Министерства обороны США — DoD (Department of Defence) в рамках работы над проектом ARPANET (Advanced Research Projects Agency Network), одной из первых крупных компьютерных сетей. Название стека происходит от двух важнейших протоколов стека, которые были разработаны и описаны в стандарте первыми: TCP (Transmission Control Protocol) и IP (Internet Protocol), которые были разработаны и стан­ дартизированы первыми. Протокол, соответствующий сетевому уровню называется IP (Internet Protocol) .

В 1969 году Министерство обороны США посчитало, что на случай войны Америке нужна надёжная система передачи информации. Агентство DARPA предложило разработать для этого компьютерную сеть. Разработка такой сети была поручена Калифорнийскому университету в Лос­Анджелесе, Стенфордскому исследовательскому центру, Университету Юты и Университету штата Кали­ форния в Санта­Барбаре. Сеть была названа ARPANET и в рамках проекта к концу 1969 года объединила четыре выше указанных научных учреждения по полносвязной топологии. 29 октября 1969 года в 21:00 между двумя первыми узлами сети ARPANET, находящимися на рас­ Урок №1 стоянии в 640 км — в Калифорнийском университете Лос­Анджелеса (UCLA) и в Стэнфордском исследователь­ ском институте (SRI) провели сеанс связи. Чарли Клайн (Charley Kline) пытался выполнить удалённое подключение из Лос­Анджелеса к компьютеру в Стэнфорде. Успешную передачу каждого введённого символа его коллега Билл Дювалль (Bill Duvall) из Стэнфорда подтверждал по теле­ фону. В первый раз удалось отправить всего три символа «LOG», после чего сеть перестала функционировать. LOG должно было быть словом LOGIN (команда входа в си­ стему). В рабочее состояние систему вернули уже к 22:30, и следующая попытка оказалась успешной. Именно эту дату можно считать днём рождения Интернета. Затем сеть ARPANET начала активно расти и развиваться, — её начали использовать учёные из разных областей науки .

В 1973 году к сети были подключены первые иностранные организации из Великобритании и Норвегии, и сеть стала международной. В 1983 году термин «Интернет» полно­ стью закрепился за сетью ARPANET. В 1984 году у сети ARPANET появился серьёзный соперник: Национальный научный фонд США (NSF) основал обширную межуни­ верситетскую сеть NSFNet (National Science Foundation Network), которая была составлена из более мелких сетей и имела гораздо большую пропускную способность, чем ARPANET. К этой сети за год подключились около 10 ты­ сяч компьютеров, название «Интернет» начало плавно переходить к NSFNet .

В 1988 году был разработан протокол Internet Relay Chat (IRC), благодаря чему в Интернете стало возможно общение в реальном времени (чат) .

3. Понятие стека протоколов. Выбор стека протоколов.. .

В 1989 году в Европе, в стенах Европейского совета по ядерным исследованиям (ЦЕРН) родилась концепция Всемирной паутины. Её предложил знаменитый британ­ ский учёный Тим Бернерс­Ли, он же в течение двух лет разработал протокол HTTP, язык HTML и идентификаторы URI. В 1990 году сеть ARPANET прекратила своё суще­ ствование, полностью проиграв конкуренцию NSFNet .

В том же году было зафиксировано первое подключение к Интернету по телефонной линии (dialup). В 1991 году Всемирная паутина стала общедоступна в Интернете, а в 1993 году появился знаменитый веб­браузер NCSA Mosaic .

Всемирная паутина набирала популярность. В 1995 году NSFNet вернулась к роли исследовательской сети, марш­ рутизацией всего трафика Интернета теперь занимались сетевые провайдеры, а не суперкомпьютеры Националь­ ного научного фонда .

Примечание: Несмотря на потерю своего былого могущества, сеть NSFNet продолжает существовать. Она служит своей изначальной цели объединения научного потенциала и вычислительных мощностей суперкомпьютеров. В настоящее время на базе NSFNet развивается известный проект Internet2, обеспечивающий цифровую связь на невероятно больших скоростях. К Internet2 имеют подключение многие университеты по всему миру .

Стек TCP/IP быстро получил популярность и вытеснил все остальные стеки по следующим причинам:

Популярность Интернет. Проект ARPANET и пришед­ ший ему на смену NSFNet стали больше чем просто Урок №1 проект министерства обороны и межуниверситетской сетью. Они превратились в то, что мы сегодня назы­ ваем Интернетом Так как в качестве стека протоколов для ARPANET был выбран TCP/IP, то фактически современный Ин­ тернет наследовал этот стек протоколов Удобная и эффективная структура управления стан­ дартами TCP/IP и Интернет Открытость стандартов протоколов стека TCP/IP Простота понимания и реализации стандартов про­ токолов стека TCP/IP Открытость стандартов привела к появлению реали­ заций протоколов стека TCP/IP для различных опе­ рационных систем Все это привело к тому, что уже в начале 90­х годов XX века стек протоколов TCP/IP стал стандартом де­ факто реализации сетевого взаимодействия в системах различного уровня сложности, и на сегодняшний день стек TCP/IP является единственным стеком протоколов который имеет смысл изучать .

3.3. Выбор стека протоколов для изучения Таким образом, в качестве ответа на вопрос: «Какой стек протоколов мы будем изучать, на базе какого стека протоколов мы будем разбираться как устроено межсете­ вое взаимодействие?» — может быть только один вариант ответа — стек TCP/IP .

В то время, когда ISO формировало модель OSI, она преследовала очень полезную цель. На то время уже суще­

3. Понятие стека протоколов. Выбор стека протоколов.. .

ствовало множество стеков, множество проприетарных реализаций сетевого взаимодействия несовместимых между собой. ISO хотело сформировать единый стек на базе единой модели, в рамках которой все могли бы взаи­ модействовать. У ISO не получилось реализовать единый для всех и рабочий стек протоколов (и об этом мы уже говорили выше), но с этой задачей прекрасно справился TCP/IP. Фактически TCP/IP сегодня это то, ради чего ISO начала свою работу — стандартизация и унификация, у всех один и те же технологии, все могут взаимодействовать друг с другом. Таким образом, цель, которую ставила себе ISO разрабатывая OSI, полностью решена с помощью TCP/ IP. Примечательным фактом является то, что стек TCP/ IP существовал за долго до того, как ISO начала работать над моделью и стеком OSI .

Так как вопрос с выбором стека протоколов решен, становится ясно и на базе какого протокола мы будем изучать межсетевое взаимодействие — это основной (но не единственный) протокол сетевого уровня в рамках стека TCP/IP — протокол IP .

3.4. Обзор стека TCP/IP Теперь давайте более подробно поговорим о стеке TCP/IP, разберем его логическую структуру, из каких уровней он состоит и какие протоколы реализованы на каждом из уровней, а также как согласуется стек TCP/IP с моделью OSI .

Как мы уже говорили раньше, стек TCP/IP появился за долго до появления модели OSI. Стек TCP/IP начал разра­ батываться в 60­х, модель OSI была описана в начале 80­х .

Урок №1 Поэтому естественно то, что реализация стека TCP/IP не совпадает с моделью OSI. Но так как модель OSI была со­ здана не на пустом месте, она была сформулирована на базе анализа существующих сетевых технологий, основывалась уже на существующих стеках проколах, в том числе и TCP/ IP. В результате мы с вами увидим, что с одной стороны, модель OSI и стек TCP/IP не совпадают полностью, но в то же время у них есть много общего. Сравнение модели стека TCP/IP с моделью OSI показано на рисунке 1–20 .

Обратите внимание на то, что нумерация уровней в модели стека TCP/IP начинается сверху­вниз, а в модель OSI снизу­вверх .

Сразу бросается в глаза то, что в обоих моделях абсо­ лютно полностью совпадают третьи уровни — «Межсете­ вой» уровень модели стека TCP/IP и «Сетевой» уровень модели OSI. Это произошло потому, что функции сетевого уровня очень ярко и хорошо выражены, а также мало связаны с функциями других уровней .

Рисунок 1–20. Сравнение модели стека TCP/IP с моделью OSI

3. Понятие стека протоколов. Выбор стека протоколов.. .

Часто можно встретить утверждение, что «Уровень се­ тевых интерфейсов» соответствуют двум нижним уровням модели OSI — «Физическому» и «Канальному». Это не совсем так (а точнее совсем не так). Совокупность «Физического»

и «Канального» уровней модели OSI описывают, как мы уже хорошо знаем, базовую сетевую технологию, аппаратную часть сети (Ethernet, Frame Relay и т.д.), поверх которой запускаются какие­то приложения. В стеке протоколов TCP/IP нет протоколов «Уровня сетевых интерфейсов»

(поэтому он и нарисован «пустым», без заливки) .

Если бы протоколы физического и канального уровня входили в стек TCP/IP, это бы значило, что верхние уров­ ни этого стека могут работать только с определенными реализациями физического и канального уровней — это бы означало жесткую привязку программного обеспече­ ния к аппаратному и смена используемого программного обеспечения (операционной системы и используемых при­ ложений) требовала бы смены физического и канального уровня, т.е. замены аппаратной части сети и наоборот .

Для того, чтобы добиться независимости используемых программ от используемого аппаратного обеспечения (т.е .

получить совместимость технологий) необходимо стан­ дартизовать лишь интерфейс между программной и ап­ паратной частью, интерфейс между канальным и сетевым уровнями. Модель TCP/IP никаким образом не пытается навязать нам каким­либо образом каким образом строить сеть. Стек TCP/IP готов работать поверх любой базовой сетевой технологии. И лишь графически отображается соответствие «Уровня сетевых интерфейсов» модели стека TCP/IP «Физическому» и «Канальному» уровням Урок №1 модели OSI. «Уровень сетевых интерфейсов» это и есть тот единственный стандартизованный интерфейс между канальным и сетевым уровнями модели OSI .

Протоколы «Уровня сетевых интерфейсов» являются описаниями различных вариантов интерфейса между «Сете­ вым» и «Канальным» уровнями модели OSI, эти стандарты описывают работу TCP/IP поверх любых существующих базовых технологий (Frame Relay или Ethernet). Если появит­ ся какая­то новая аппаратная технология построения сети, появится новый стандарт, описывающий каким образом организовать работу TCP/IP поверх этой технологии .

Примечание: Существует стандарт, описывающий работу стека TCP/IP поверх почтовых голубей. Он был написан 1 апреля 1990 года, и несмотря на то, что он по большому счету является шуткой, но все же он хорошо подчеркивает насколько TCP/IP аппаратно независим. В сети можно найти даже отчеты о практических испытаниях с отчетами о задержках и количествах потерь пакетов .

Также хочется напомнить, что совокупность трех нижних уровней модели OSI имеет свое название — «Сетезависимые», так как на их базе можно построить сеть произвольного масштаба. В проекции на модель стека TCP/IP получается, что используя средства «Межсетевого» уровня стека TCP/ IP и какой­то базовой сетевой технологии (так как «Уровень сетевых интерфейсов» на самом деле не уровень, а интер­ фейс к аппаратной части сети) мы можем построить сеть произвольного масштаба .

Следующий уровень модели стека TCP/IP соответ­ ствует двум уровням модели OSI — «Транспортному»

3. Понятие стека протоколов. Выбор стека протоколов.. .

и «Сеансовому». В модели OSI «Транспортный» уровень отвечает за гарантированную передачу данных между приложениями с помощью нумерации отправляемых порций данных и их квитирования. «Сеансовый» уро­ вень решает сразу две важные задачи — адресация при­ ложений и организация сессий обмена данными. Ясно, что функции «Транспортного» и «Сеансового» уровней модели OSI очень тесно связаны: «Сеансовый» уровень с помощью определенной системы адресации приложе­ ний может организовать сеанс связи, а «Транспортный»

уровень в рамках этого сеанса связи будет обеспечивать гарантированную передачу данных. Поэтому в рамках стека TCP/IP функции этих уровней модели OSI пред­ ставлены одним уровнем — «Транспортным» (иногда используется альтернативное название — «Основной») .

Ну и самый верхний уровень стека TCP/IP, также ответ­ ствует двум уровням модели OSI — «Представительскому»

и «Прикладному». В модели OSI «Представительский»

уровень должен снабжать передаваемые данные инфор­ мацией, необходимой для их правильной интерпретации, что это за данные — текст, видео, звук или изображение .

Самый простой пример, который можно привести для демонстрации функций «Представительского» уровня является HTML страница. Когда вы открываете страни­ цу какого­либо сайта, она может содержать все эти типы данных в произвольном порядке, и браузер, должен иметь возможность корректно разграничить данные разных типов, и предоставить все это пользователю в удобном формате. «Прикладной» уровень модели OSI описывает правила взаимодействия приложений — он описывает те Урок №1 прикладные команды, с помощью которых приложения сообщают друг другу что необходимо выполнить с некото­ рой информации — найти, записать, удалить, отобразить, заменить и так далее. Очевидно, что типы данных и методы их описания сильно зависят от конкретного приложения, и как правило то приложение, которое отправляет порцию данных, кроме команды, которая сообщает узлу получате­ лю что с этими данными нужно сделать, также снабжает их и необходимых описанием. Поэтому в рамках стека TCP/IP функции этих уровней модели OSI представлены одним уровнем — «Прикладным» .

Примечание: Строго говоря, нельзя однозначно утверждать, что «Прикладной» уровень стека TCP/ IP соответствует ровно «Представительскому»

и «Прикладному» уровням модели OSI, ведь методы организации сеанса связи тоже сильно зависят от конкретного приложения. Где-то сеанс связи организовывается отдельным протоколом, а где-то и самим прикладным приложением. Не зря же в модели OSI именное верхние три уровня — «Сеансовый», «Представительский» и «Прикладной» называются «Прикладными», ведь реализация функций каждого из этих уровней очень сильно зависит от того, какое приложение использует сеть. Поэтому, иногда, при описании проекции модели TCP/IP на модель OSI указывают, что «Прикладной» уровень стека TCP/IP соответствует «Прикладному», «Представительскому» и частично «Сеансовому» уровням модели OSI .

Оба варианта, формально, являются правильными, потому что именно в данном месте наиболее сильно

3. Понятие стека протоколов. Выбор стека протоколов.. .

проявляются отличия модели стека TCP/IP от модели OSI — модель OSI максимально разделяет функции уровней, а в модели стека TCP/IP сродные функции выполняются одним протоколом. Причиной таких отличий и несоответствия модели стека TCP/IP модели OSI является то, что стек TCP/IP появился на 20 лет раньше модели OSI, и поэтому в принципе не может полностью ей соответствовать .

Как видно, все «активные» уровни модели стека TCP/ IP, «Прикладной», «Транспортный» и «Межсетевой», соответствуют верхним пяти уровням модели OSI, сово­ купность функций которых и называется «Стек протоко­ лов», программной части сети, которая работает поверх «Базовой сетевой технологии», аппаратной части сети, связующим звеном между которыми, является «Уровень сетевых интерфейсов», единственный стандартизованный интерфейс, из всех возможных, в модели OSI .

Разобравшись с моделью стека TCP/IP, давайте рас­ смотрим основные протоколы, составляющие стек TCP/ IP (таблица 1–31) .

Таблица 1–31. Основные протоколы стека TCP/IP Уровень модели стека TCP/IP Протоколы уровня FTP, TFTP, SMTP, POP3, IMAP, HTTP, Прикладной HTTPS, Telnet, SSH Транспортный TCP, UDP

–  –  –

Урок №1 Начнем с протоколов, которые находятся на «Межсе­ тевом» уровне модели стека TCP/IP, так как именно этот уровень является целью данного курса.

На этом уровне работают следующие протоколы:

IP (Internet Protocol) — основной протокол данного уровня. Основными задачами данного протокола яв­ ляются адресация и маршрутизация .

ICMP (Internet Control Message Protocol) — протокол, с помощью которого можно производить диагностику работы сети, а также сообщать о некоторых ошибках, произошедших на уровне IP .

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

RIP — Routing Information Protocol EIGRP — Enhanced Interior Gateway Routing Protocol OSPF — Open Shorted Path First IS-IS — Intermediate System — Intermediate System BGP — Border Gateway Protocol Примечание: Название протокола IP нельзя на русский переводить как «Протокол Интернета». Это делать нельзя хотя бы потому, что в тот момент, когда было придумано название этому протоколу, никакой сети Интернет в помине не было. Хотя, к сожалению, такая неточность перевода встречается достаточно часто, и даже в продуктах крупных компаний, например, в операционной системе Windows (рисунок 1–21). В данном случае слово

3. Понятие стека протоколов. Выбор стека протоколов.. .

Рисунок 1–21. Некорректный перевод названия протокола IP на русский язык в операционной системе Windows «Internet» следует переводить как «межсетевой», то есть наиболее корректным переводом названия протокола IP будет «Межсетевой протокол» .

Для исключения путаницы при переводе термина «Межсетевой» или «Межсетевое» на английский исполь­ зовать слово «Internetworking» .

Если вы хотите использовать термин «Интернет», смысле «та самая большая сеть», то следует обращать Урок №1 внимание на первую заглавную букву — «Интернет» или «Internet», это имя собственное .

Далее разберемся с «Уровнем сетевых интерфейсов», как мы уже говорили ранее, это не совсем уровень, по сути это интерфейс, описывающий каким образом стек TCP/ IP будет работать поверх произвольной базовой сетевой технологии. Так как этот уровень является интерфейсом, то и правила, формализующие его работу, будут не такими как в других уровнях.

Эти правила не описывают новые заголовки, поля этих заголовков, как это происходит на других уровнях, они описывают каким образом пакеты IP передавать в кадрах той или иной базовой сетевой технологии, то есть описывают интерфейсы к той или иной базовой сетевой технологии:

Правила передачи IP поверх Frame Relay .

Правила передачи IP поверх Ethernet:

Используемый формат кадра (Ethernet II) Значение поля Type кадра Ethernet (шестнадцате­ ричное значение «0800») Протокол ARP (Address Resolution Protocol) — единствен­ ный протокол, в привычном смысле этого слова, «Уровня сетевых интерфейсов». Протокол IP генерирует новый адрес и сети, и каждому из ее узлов, но передача данных с помощью Ethernet кадров, в которых в качестве адреса используется MAC адрес, а не IP адрес. Эта проблема решается с помощью протокола ARP — он позволяет получить соответствие IP адреса узла, его MAC адресу .

Теперь идем выше «Межсетевого» уровня, для на­ чала на «Транспортный» уровень. Вспомните, «Транс­

3. Понятие стека протоколов. Выбор стека протоколов.. .

портный» уровень модели стека TCP/IP соответствует «Транспортному» и «Сеансовому» уровням модели OSI, основными задачами которых являются адресация при­ ложений, установка сеансов связи и гарантия доставки .

Если необходимость адресации приложений вопросов не возникает, то всегда ли нам нужна установка соединения и гарантия доставки? На первый взгляд может показаться что да, но на самом деле это не совсем так.

Можно легко придумать случаи, когда гарантия доставки не только не нужна, но и делает хуже:

Если приложения работают в  режиме «Короткий запрос и  короткий ответ». Допустим, мы передаем какой­то один пакет, в  ответ на который ожидаем также один пакет, то фактически, приход ответного пакета является подтверждением того, что запрос был успешно доставлен! Используется термин «Косвен­ ная квитанция». Если мы будем еще и гарантировать доставку отдельными квитанциями, то в сеть вместо двух пакетов, будет передано четыре пакета (запрос, подтверждение получения запроса, ответ и подтверж­ дение получения ответа). Таким образом, для при­ ложений, работающих в режиме «Короткий запрос и короткий ответ» использование явных квитанций, очевидно, избыточно, и приводит только к появлению лишних служебных пакетов в сети .

Если приложение передает данные в реальном времени, например, видео или звук. Отсутствие необходимости квитанций для приложений данного типа заключается в том, что в случае потери одного пакета мы конечно получим некоторое искажение, но если мы попросим Урок №1 отправителя повторно отправить потерянный пакет, то мы сделаем еще хуже, ведь время, когда надо было показать или озвучить содержимое пакета, уже прошло .

Таким образом, возникает необходимость реализо­ вать на «Транспортном» уровне стека TCP/IP не один протокол, выполняющий все задачи «Транспортного»

и «Сеансового» уровней модели OSI, а два, одни с гаран­ тией доставки и без нее:

TCP (Transmission Control Protocol) — протокол, кото­ рый всегда выполняет все функции «Транспортного»

и «Сеансового» уровней модели OSI:

Адресация приложений Установка сеанса связи Гарантия доставки данных в рамках установлен­ ного сеанса UDP (User Datagram Protocol) — протокол, который выполняет только одну функцию:

Адресация приложений То есть этот протокол не выполняет функций «Транс­ портного» уровня модели OSI вовсе, а также только частич­ но выполняет функции «Сеансового» уровня модели OSI Ну и последний уровень модели стека TCP/IP — «При­ кладной».

На нем реализовано огромное количество разнообразных протоколов, решающих самые разноо­ бразные задачи:

Протоколы обмена файлами:

FTP (File Transfer Protocol)  — протокол передачи файлов .

3. Понятие стека протоколов. Выбор стека протоколов.. .

TFTP (Trivial File Transfer Protocol) — упрощенная версия протокола FTP. Его простота позволяет приме­ нять его там, где аппаратные ресурсы весьма ограни­ чены, например, в маршрутизаторах и коммутаторах, а также для загрузки операционной системы по сети .

Почтовые протоколы:

SMTP (Simple Mail Transfer Protocol)  — протокол передачи почты в почтовый ящик получателя POP3 (Post Office Protocol) — протокол доступа к по­ чтовому ящику пользователя IMAP (Internet Mail Access Protocol) — протокол до­ ступа к почтовому ящику пользователя Протоколы передачи гипертекста HTTP — обычный протокол передачи гипертекста HTTPS — безопасный протокол передачи гипер­ текста, с шифрованием передаваемых данных

Протоколы удаленного управления:

Telnet — обычное удаленное управление SSH — безопасное удаленное управление, с шиф­ рованием передаваемых данных Эти, а также многие другие протоколы мы будем изучать в течении всего обучения. Но так как в рамках текущего курса основным для нас будет «Межсетевой»

уровень стека TCP/IP, то и изучать мы будем в первую очередь протоколы этого уровня: IP и ICMP, вспомога­ тельный протокол ARP, а также некоторые другие .

На основании всей изложенной выше информации мы можем сформулировать задачу данного курса. Зада­ Урок №1 чей нашего курса «Маршрутизация в IP сетях, базовый»

является: Научиться строить составные сети произвольного размера на базе стека TCP/IP и его основного протокола «Межсетевого» уровня IP, а некоторых других вспомогательных протоколов (ARP, ICMP, протоколы динамической маршрутизации). При чем данная задача фактически охватывает не только этот курс, но несколь­ ко следующих, таких как «Маршрутизация в IP сетях, расширенный» и «Маршрутизация в IP сетях, професси­ ональный». Таким образом, изучать работу «Сетевого»

уровня модели OSI мы будем весьма продолжительное время. Мало того, не редко мы будем опускаться и на ниж­ ние уровни — «Физический» и «Канальный», мы будем возвращаться к изучению Ethernet, так как мы изучили только основные его принципы работы, но практически ничего не говорили о современных нововведениях и рас­ ширениях, так как их изучение требовало понимания работы «Сетевого» уровня модели OSI. По мере изучения «Сетевого» уровня модели OSI мы будем возвращаться к уже изученным технологиям, и углублять знания по ним, изучая дополнительные их расширения, когда у вас уже будут необходимые знания для их успешного понимания .

4. Стандарты Интернет. Организации, контролирующие Интернет

4. Стандарты Интернет .

Организации, контролирующие Интернет Прежде чем мы начнем изучать непосредственно основной протокол «Межсетевого» уровня — протокол IP, нам еще необходимо разобрать несколько небольших вопросов, и первый из них это вопрос стандартизации:

какие организации стандартизуют стек TCP/IP, какие организации управляют и стандартизуют сеть Интернет, где получить информацию о существующих стандартах и какие разновидности стандартов бывают .

Стандартизация и развитие стека протоколов TCP/IP и протокола IP в частности очень тесно связаны с разви­ тием сети Интернет. Сеть Интернет, как самый большой и динамично развивающийся пример практической реализации сети на базе стека TCP/IP в процессе свое­ го развития постоянно ставит новые задачи для стека TCP/IP, которые сложно, или даже порой невозможно решить используя тот набор правил, который применим к стеку TCP/IP в момент возникновения этой задачи .

Таким образом, стек TCP/IP, за счет своей простоты, доступности и гибкости, дал толчок к развитию сети Интернет, а сеть Интернет, бурно развиваясь, своим развитием заставляется развиваться и стек TCP/IP. Тем не менее, нельзя забывать о том, что стек TCP/IP не при­ надлежат монопольно сети Интернет, он разработан для Урок №1 организации произвольных сетей, иногда совершенно несвязанных с сетью Интернет .

Одним из больших преимуществ стека TCP/IP пе­ ред другими стеками протоколов, о которых мы сегодня говорили, является его открытость. Это означает что в разработке стандартов стека TCP/IP может участво­ вать каждый, и для этого не нужно покупать какие­то отдельные права, лицензию или быть частью какой­то организации. Но, как и любое другое открытое сообще­ ство, сообщество разработчиков стандартов стека TCP/ IP не может существовать без координационного цента .

Координацию работ по развитию архитектуры сети Ин­ тернет, по развитию стандартов сети Интернет выполняет ряд некоммерческих организаций .

Первой организацией, которая координировала развитие стека TCP/IP и сети ARPANET, которая стала прообразом Интернет было Министерство обороны США — Department of Defence (DoD). В рамках организации DoD для этой цели в 1979 году было создано подразделение Internet Configuration Control Board (ICCB). Это подразделение занималось разработкой стандартов и внедрением различных тех­ нологий в IP сетях. В 1984 году это подразделение было переименовано в Internet Advisory Board (IAB), а в 1986 году было произведено еще одно переименование — в Internet Activity Board (IAB, название поменялось, а аббревиатура нет). Последнее переименование произошло в 1992 году, новое называние было Internet Architecture Board (IAB, аббревиатура опять не изменилось) .

Кроме изменения названия, произошло еще одно серьезное изменение — Министерство обороны США,

4. Стандарты Интернет. Организации, контролирующие Интернет которое до этого времени контролировало развитие TCP/IP и Интернет, перестало управлять этим проектом, и отдало его сообществу. Соответственно, возникла необходимость в организации, которая контролировала бы развитие интер­ нет, и в этом же 1992 году была сформирована организация Internet Society (ISOC). Это не коммерческая организация, в функции которой входит управление структурами, кото­ рые связаны с разработкой стандартов, новых технологий Интернет и т.д. Организация ISOC на сегодняшний день стоит в центре всей модели управления Интернет и ему непосредственно подчиняется IAB .

В рамках IAB в 1986 году было сформировано под­ разделение Internet Engineering Task Force (IETF). Эта организация является частью IAB, которая в свою очередь является частью ISOC, и занимается всем что связано со стандартизацией стека TCP/IP и сети Интернет. Именно в рамках IETF создаются технические документы, опи­ Рисунок 1–22. История изменений организаций, управляющих стеком TCP/IP и Интернет Урок №1 сывающие изменения в сети Интернет и их техническую реализацию в рамках стека TCP/IP. На рисунке 1–22 по­ казана история изменений организаций, управляющих стеком TCP/IP и Интернет .

Документы, которые публикует IETF имеют следую­ щие свойства:

Каждый создаваемый документ называется RFC — Request For Comments .

Имеет свой уникальный и никогда не меняющийся номер в формате RFC–XXXX .

Все документы RFC опубликовываются на официаль­ ном сайте IETF (http://www.ietf.org) .

Каждый из этих документов обладает определенным статусом:

Internet Draft — Проект Draft Standard — Проект стандарта Internet Standard — Стандарт Historic — Исторический. Устаревший Experimental — Экспериментальные Informational — Информационные Best Current Practice — Лучший современный опыт Как видно, не любой документ, выпущенный IETF, является стандартом. Некоторые документы описыва­ ют какую­то идею, которая может быть реализована в  недалеком, или даже далеком будущем. Некоторые документы имеют шуточное содержание, например, стандарты, описывающий работу стека TCP/IP поверх почтовых голубей — RFC–1149 и RFC–2549 .

Если возникает необходимость заменить содержимое документа RFC, то выходит новый документ, с новым

4. Стандарты Интернет. Организации, контролирующие Интернет номером. Этот новый RFC может сделать устаревшим исходный RFC, и он перестает работать и вместо него начинает работать новый RFC. В некоторых случаях новый документ RFC дополняет исходный RFC, и в один момент времени будет работать оба RFC .

Например, RFC–760, это первый документ, описыва­ ющий протокол IP версии 4. В последствии он был допол­ нен RFC–777, об этом говорит запись «Updated by: 777», а потом и вовсе заменен на RFC–791, об этом говорит запись «Obsoleted by: 791» (рисунок 1–23). Несмотря на то, что явно статус этого документа не указан, очевидно он уже устарел (не явно о статусе документа можно судить о цвете полосы, вверху страницы стандарта, коричневый документ устарел) .

Рисунок 1–23. История изменений RFC-760 Урок №1

Можно проверить состояние и наличие модифика­ ций или дополнений у RFC–791, который заменил собой RFC–760 (рисунок 1–24). Видно, что данный документ был обновлен документами RFC–1349, RFC–2474, RFC–6864 (об этом говорит запись «Updated by: 1349, 2474, 6864»), но пока не было документа, который бы его заменил (запись «Obsoleted by:» отсутствует). Также видно, что данный документ является действующим стандартом — INTERNET STANDARD (также об этом косвенно говорит зеленая полоса вверху документа) .

Кроме того, видно, что данный документ содержит опечатки, о чем говорит надпись «Errata Exist», получить список которых, можно пройдя по ссылке вверху доку­ мента «[Errata]» (рисунок 1–25). Переход по этой ссылке Рисунок 1–24. История изменений RFC-791

4. Стандарты Интернет. Организации, контролирующие Интернет Рисунок 1–25. Список опечаток в RFC–791 Урок №1 открывает страницу поиска опечаток с заполненным по­ лем — номер RFC, со страницы которого был осуществлен переход, и результаты поиска опечаток. Каждая опечатка имеет свой идентификатор (Errata ID), статус, дату, когда о ней сообщили, кто сообщил об этой опечатке, а также информацию о том, кто и когда выполнил проверку дан­ ной информации, цитату текстового блока с опечаткой, исправленный вариант, и объяснение (Rationale) .

На сегодняшний день выпущено более 7000 RFC .

Естественно далеко не все из этих документов нам будут необходимы, но несколько десятков RFC мы будем изучать в процессе обучения .

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

Однако не все документы одинаково легко изучаемы .

Зачастую это весьма специфическая техническая и справочная документация, а не учебник (например, RFC–2328, описывающий протокол OSPFv2). Хотя другие RFC достаточно просты к пониманию (например, RFC–1350, описывающий протокол TFTP) .

Список опечаток в RFC–791(pисунок 1–25).

Более детально о организациях, контролирующих развитие Интернет и стека TCP/IP и о стандартах RFC можно по­ читать по следующим ссылкам:

https://ru.wikipedia.org/wiki/Общество_Интернета http://www.internetsociety.org

4. Стандарты Интернет. Организации, контролирующие Интернет https://ru.wikipedia.org/wiki/IETF http://www.ietf.org https://ru.wikipedia.org/wiki/RFC http://tools.ietf.org .

Урок №1

5. Системы исчисления .

Быстрый перевод из одной системы исчисления в другую Второй небольшой вопрос, который нам необходимо разобрать, перед непосредственным изучением IP адреса­ ции, это быстрый перевод из одной системы исчисления в другую. Это необходимо потому, что вся суть и логика IP адресов представляется именно в двоичном виде, и не­ смотря на то, что IP адреса записываются в десятичном или шестнадцатеричном виде, для манипуляции IP адре­ сами, для решения сложных задач адресации и админи­ стрирования сетей на базе IP, вам придется переводить их в двоичную систему исчисления, выполнять в ней с IP адресами все необходимые действия, а затем переводить из назад в десятичный или шестнадцатеричный вид .

Тема систем исчисления для вам уже не нова, вы уже изучали понятия разных систем исчисления и правила перевода чисел из одной системы исчисления в другую как на базовом семестре, так и в самом начале специализации .

Сейчас нам надо быстро освежить эти знания, и разобрать методы быстрого перевода числе из десятичной системы исчисления в двоичную и наоборот .

Особенностью работы с IP адресами является то, что работа происходит в рамках одного байта, и переводить большие числа, как правило не приходится. Таким об­ разом главным требованием для успешной и быстрой

5. Системы исчисления. Быстрый перевод.. .

работы с IP адресами является умение быстро переводить в двоичную или шестнадцатеричную систему десятичные числа от 0 до 255, и наоборот .

В ближайшие несколько занятий мы будем выполнять подобные переводы десятки, а то и сотни раз. Поэтому для успешного изучения дальнейшего материала вам необходимо научиться выполнять подобные небольшие переводы со «скоростью мысли» .

Для начала, давайте вспомним некоторые общие факты о системах исчисления:

Двоичная, десятичная и шестнадцатеричная системы являются «позиционными»

Один из главных параметров любой системы  — ее основание, это количество различных цифр, исполь­ зуемых для записи чисел. Оно отражается в названии систем исчисления — в двоичной 2, в десятичной 10, а в шестнадцатеричной 16 .

В любой позиционной системе вес цифры определя­ ется позицией, на которой она находится Вес позиции рассчитывается по формуле N. Где «N» — основание системы исчисления, а «x» — номер пози­ ции, справа на лево, начиная с нуля, как показано на рисунке 1–26 .

–  –  –

Так как при работе с IP адресами редко используются числа выходящие за пределы разрядности одного байта, а байт состоит из 8­ми бит, то для быстрого перевода раз­ личных байт в двоичную систему исчисления и наоборот вам будет достаточно запомнить восемь первых значений степеней двойки, они приведены в таблице 1–33 .

Таблица 1–33. Значения степеней двойки — веса позиций двоичной системы в рамках одного байта

–  –  –

2 4 00000100=4 2 8 00001000=8 2 16 00010000=16 2 32 00100000=32 26 64 01000000=64 2 128 10000000=128 При переводе числа из двоичной системы в десятич­ ную алгоритм перевода максимально прост — каждая цифра числа, это либо «0», либо «1». При умножении

5. Системы исчисления. Быстрый перевод.. .

веса позиции на «0» всегда будет «0», а при умноже­ нии на «1», результат будет равен весу позиции. Та­ ким образом, фактически перевод числа из двоичной системы в десятичную происходит путем сложение весов тех позиций, в которых стоят «1», как показано в таблице 1–34. Обратите внимание, так как число 101 в равной степени может быть числом любой системы исчисления, так как цифры «0» и «1» используются во всех системах исчисления, для уточнения того, в какой системе исчисления записано число (если это не по­ нятно из контекста) после числа в круглых скобочках указывается основание системы исчисления, в которой записано данное число Таблица 1–34. Перевод числа из двоичной системы в десятичную 10101010(2)=128+32+8+2=170 Цифры 1 0 1 0 1 0 1 0 Номер позиции Вес 27=128 26=64 25=32 24=16 23=8 22=4 21=2 20=1 позиции Вроде как кажется, что достаточно просто, но можно ли сделать проще? На самом деле есть несколько простых правил, которые могут позволить переводы из двоичной системы в десятичную существенно быстрее:

Если в двоичном числе больше единиц, чем нулей, то может быть будет проще не складывать, а  вы­ читать. Суть этого правила заключается в том, что если в байте все биты будут установлены в «1», то Урок №1 значение байта будет равно «255». Соответственно каждый бит, установленный в «0», уменьшает число «255» на свой вес. Пример такого перевода показан в таблице 1­35. Для сравнения скорости перевода показано два варианта перевода, сложением и вы­ читанием. Для решения этой задачи с помощью сло­ жения, понадобилось выполнить 6 сложений. Для решения этой же задачи с  помощью вычитания, понадобилось выполнить всего 2 вычитания, что существенно проще .

Таблица 1–35. Перевод числа из двоичной системы в десятичную методом вычитания 11111010(2) =128+64+32+16+8+2=250 11111010(2) =255–4–1=250 Цифры 1 1 1 1 1 0 1 0 Номер позиции Вес 27=128 26=64 25=32 24=16 23=8 22=4 21=2 20=1 позиции Если в двоичном числе присутствует длинная последовательность единиц, начиная с младшего разряда, то сумма всех бит, равных «1» будет равна весу следующего разряда, уменьшенного на единицу .

Обратите внимание:

Вес младшего, нулевого разряда — 1, вес следую­ щего — 2 Сумма весов нулевого и первого разрядов — 1+2=3, вес следующего — 4 Сумма весов нулевого, первого и второго разрядов — 1+2+4=7, вес следующего — 8 и так далее .

5. Системы исчисления. Быстрый перевод.. .

–  –  –

Пример все возможных вариантов таких последова­ тельностей для одного байта показаны в таблице 1–36 .

Таким образом, если в двоичном числе присут­ ствует длинная последовательность единиц, начиная с младшего разряда, то получить эквивалент данного числа в десятичном виде еще проще — надо взять вес первого нулевого бита и уменьшить его на единицу, как показано в таблице 1–37. Для сравнения, перевод показан тремя методами — методом сложения, методом вычитания, и последним методом, сравнения с значени­ ем веса первого ненулевого бита. Как видно, в первом методе пришлось сделать 5 сложений. Для решения этой же задачи с помощью вычитания, понадобилось выпол­ нить 2 вычитания. А для решения методом сравнения

5. Системы исчисления. Быстрый перевод.. .

–  –  –

Урок №1 была полной, то мы бы получили число «63», но в по­ следовательности нахватает первого бита, вес которого равен «1». Соответственно от 63 надо еще отнять 1, получим 62. Второе число содержит относительно небольшое количество единиц, но одна из последо­ вательностей единиц является длинной и начинается с младшего бита. Соответственно, рассчитываем вес всех младших единичных бит — на единицу меньше веста первого нулевого бита, и добавляем к результату вес единичного бита, не входящего в эту последова­ тельность .

Разделение байта на две части и расчет каждой ча­ сти в отдельности. Можно пойти еще одним путем, который уже ближе к  шестнадцатеричной системе исчисления. Мы помним, что одна шестнадцатерич­ ная цифра это четыре бита. И для перевода числа из двоичной системы исчисления в шестнадцатеричную, мы делили байт на две части по 4 бита. Примерно также можно поступить и для перевода числа в де­ сятичную систему исчисления. Если мы попытаемся составить таблицу сопоставления всех комбинаций 8 бит с их десятичными эквивалентами, то мы полу­ чим таблицу из 256 записей, от 0 до 255, что весьма громоздко. Можно поступить иначе, рассматривать байт не как единую последовательность из 8 бит, а как две последовательности из 4 бит, тогда каждая из этих последовательностей даст 16 комбинаций (16*16=256) .

Тогда можно составить две таблицы по 16 строк для левого (старшего) и правого (младшего) наборов из четырех бит, как показано в таблице 1–39. Обратите

5. Системы исчисления. Быстрый перевод.. .

внимание на то, что что для младших бит происходит увеличение на единицу, а для старших на 16, также веса одинаковых наборов бит в стершей и младшей частях байта отличается в 16 раз. Это происходит потому, что сдвиг набора цифр влево на один разряд для любой позиционной системы исчисления является умно­ жением на основание системы исчисления. В нашем случае используется двоичная система исчисления, значит сдвиг на один бит влево приведет к умножению значения на два, но мы сдвинули последовательность не на один бит, а на четыре, значит к умножению на 2 четыре раза, что эквивалентно умножению на 16 .

Таблица 1–39. Веса старших и младших наборов бит в байте Старшие биты (+16) Младшие биты (+1)

Урок №1

Теперь, этими таблицами можно легко пользоваться для перевода чисел из двоичной системы в десятичную, как показано в таблице 1–40. Берем в таблице весов зна­ чения старших бит, как будто младшие биты равны нулю, и точно также берем в таблице весов значения младших бит, как будто старшие биты равны нулю, и складываем результаты. Согласитесь, такими двумя маленькими та­ блицами на 16 записей оперировать гораздо удобней, чем если бы у нас была одна большая на 256 записей .

Таблица 1–40. Перевод числа из двоичной системы в десятичную сложением веса старших и младших бит по таблице 10100101(2)=160+5=165 10100000=160 00000101=5 Те же самые принципы можно использовать и для обратного перевода, из десятичной системы исчисле­ ния, в двоичную. Кратко писать задачу перевода числа десятичной системы исчисления, в двоичную можно следующим образом: необходимо разложить исходное число на слагаемые, равные весам степеней двойки от 0 до 7 (1, 2, 4, 8, 16, 32, 64, 128), при условии, что каждое из этих слагаемых встречается не больше одного раза .

Например, переведем число 222 из десятичной систе­ мы исчисления, в двоичную .

Какой наибольший вес степени двойки влезет в 222?

Очевидно это 128. Сколько нам осталось описать из 222?

222–128=94 .

Какой наибольший вес степени двойки влезет в 94?

Очевидно это 64. Сколько нам осталось описать из 94?

94–64=30 .

5. Системы исчисления. Быстрый перевод.. .

Какой наибольший вес степени двойки влезет в 30? Оче­ видно, следующий вес 32 слишком велик, 128+64+32=224, что больше чем 22, поэтому 32 пропускаем, и берем это

16. Сколько нам осталось описать из 30? 30–16=14 .

Какой наибольший вес степени двойки влезет в 14?

Очевидно это 8. Сколько нам осталось описать из 14?

14–8=6 .

Какой наибольший вес степени двойки влезет в 6?

Очевидно это 4. Сколько нам осталось описать из 6? 6–4=2 .

Какой наибольший вес степени двойки влезет в 2?

Очевидно это 2. Сколько нам осталось описать из 2?

2–2=0. Перевод окончен, вес степени двойки равный «1»

нам не понадобится .

Итого записываем, те биты веса которых мы исполь­ зовали в процессе разложения, устанавливаем в «1», а те биты, веса которых не использовали, соответственно в «0»:

222(10)=128*1+63*1+32*0+16*1+8*1+4*1+2*1+1*0=11011110(2) .

Или же можно воспользоваться для перевода этого числа таблицами, приведенными в рисунке 1–58. Какой наибольший вес старших бит влезет в 222? Это набор бит 11010000, вес которых равен 208. Сколько нам осталось описать из 222? 222–208=14. Ищем соответствие числу 14 в части таблицы весов младших бит. Числу 14 соответ­ ствует набор младших бит 00001110. Совмещаем стар­ шие и младшие биты байта и получаем 11011110 части, как видно, результат идентичен предыдущему варианту (таблица 1–41) .

Или же еще один пример, допустим нам необходимо перевести число 126 в двоичную систему исчисления. Тут нам будет ближе метод сравнения с ближайшим большим Урок №1 Таблица 1–41. Перевод числа 222 из десятичной системы исчисления в двоичную с помощью таблицы весов старших и младших наборов бит в байте 222=208+14=11011110(2) Старшие биты (+16) Младшие биты (+1) значением степени двойки. Какая степень двойки бли­ жайшая и большая к 126? Это 128. Мы знаем, что если бы в байте были установлены в единицу все биты, до того, вес которого соответствует 128, то вес данного числа был бы равен 127. Для получения 126 нам надо «выключить»

тот бит, который вес которого равен единице (127–126=1), как показано в таблице 1–42 .

Разобравшись со взаимными переводами между дво­ ичной и десятичной системами исчисления, давайте

5. Системы исчисления. Быстрый перевод.. .

–  –  –

Для начала необходимо вспомнить для чего она была придумана. Ведь по сути, человек работает с десятичной системой, а компьютер, как вы прекрасно знаете из пре­ дыдущих курсов, в подавляющем числе случаев с двоич­ ной. То есть в чистом виде шестнадцатеричная система исчисления не удобна ни человеку, ни компьютеру. Для чего же она нужна? Для ответа на этот вопрос необхо­ димо вспомнить главный недостаток двоичной системы исчисления — ее громоздкость. Именно для уменьшения вреда этого недостатка была придумана шестнадцатерич­ ная система исчисления .

В шестнадцатеричной системе исчисления использу­ ется не 10 цифр, как в десятичной, а 16, которые показаны в таблице 1–43 .

Обратите внимание на несколько особенностей:

Первые 10 цифр совпадают с цифрами десятичной системы исчисления .

Для записи последних 6 цифр используются симво­ лы, эквивалентные первым шести буквам латинского алфавита, но это не буквы, это цифры Шестнадцать различных цифр позволяют записать все 16 различных комбинаций 4­х бит, от «0000» до «1111» .

Для перевода числа из двоичной системы в шестнад­ цатеричную достаточно разрезать его на группы по четыре бита справа на лево (с младших бит к старшим),

5. Системы исчисления. Быстрый перевод.. .

и записать эквивалент набора бит соответствующей шестнадцатеричной цифрой, и наоборот .

В отличии от десятичной системы исчисления у ко­ торой сложность перевода числа из двоичной системы исчисления в десятичную и наоборот возрастает не ли­ нейно, в геометрической прогрессии в зависимости от длинны числа, сложность перевода числа из двоичной системы исчисления в шестнадцатеричную и наоборот возрастает линейно, в арифметической прогрессии .

Какова область применения шестнадцатеричной системы исчисления в администрировании? Шестнадцатеричная система исчисления используется в 2­х основных областях:

IP адресация версии 6. IPv6 записывается исключи­ тельно в шестнадцатеричной системе исчисления Анализаторы трафика. Захватываемые пакеты и их содержимое анализаторы трафика представляют в пер­ вую очередь в шестнадцатеричной системе исчисления, и умение быстро перевести предоставленную анали­ затором трафика информацию о содержимом паке­ та поможет вам качественно анализировать трафик в сети (естественно, при наличии знаний о структуре пакета, полях прикладных заголовков и т.д.) Допустим нам необходимо перевести двоичное число 10100101(2) в шестнадцатеричную систему .

Разделим это число на блоки по 4 бита: «1010» и «0101» .

Теперь каждая половинка байта переводится в шестнад­ цатеричную систему отдельно, как показано в табли­ це 1–44. Вес старшей части равняется 10, но цифры 10 в шестнадцатеричной системе нет, поэтому записываем Обратный перевод также прост и происходит по этой же таблице (таблица 1–43). Каждая шестнадцатеричная цифра записывается набором из 4­х бит .

Например, шестнадцатеричное число «FD» будет выглядеть как 1111 и 1101 = 11111101(2) .

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

Например, если шестнадцатеричное число «75»

переводить с помощью калькулятора для каждой цифры отдельно, то мы получим «111» и «101» .

Объединение этих последовательностей даст нам число «111101», но это всего 6 бит, а не 8. Это будет ошибкой. Правильно было бы добавить к каСистемы исчисления. Быстрый перевод.. .

–  –  –

Все двоичные числа, у которых младший разряд равен «1» — не четные. Это происходит потому, что только младший разряд обладает нечетным весом, а сумма четных чисел не может дать нечетный результат. Эту особенность можно использовать для грубой оценки правильности перевода. Если вы переводили четное число, и  получили двоичный результат с  младшим битом равным «1», то гарантированно была допущена ошибка. Или наоборот, при если переводе нечетного числа вы получили двоичный результат с младшим битом равным «0», то, также, гарантированно была допущена ошибка. Естественно данная оценка очень грубая, и не любой результат перевода четного числа с младшим битом равным «0» является верным, но зная эту особенность вы можете легко увидеть неко­ торые серьезные ошибки перевода .

На этом вспомогательные темы закончились и теперь мы можем переходить непосредственно к изучению IP адресации .

6. IP адресация

6. IP адресация Одной из основных функций сетевого уровня модели OSI и соответственно протокола IP является адресация .

Давайте еще раз вспомним, почему адресация является неотъемлемой частью сетевого уровня. Ранее мы уже говорили о недостатках сетей на базе коммутаторов. Мы говорили о том, что такие сети ограничено масштаби­ руемы и не могут содержать произвольное количество узлов и в первую очередь это связано с тем, что комму­ таторы используют индивидуальную адресацию каждого из узлов сети с помощью плоской системы адресации .

При использовании коммутаторов поддерживающих трансляцию кадров между разными базовыми сетевыми технологиями MAC адреса стали идентифицировать узлы при межсегментном взаимодействии методом коммутации .

Неудобства использования коммутации для объединения большого количества сетей привели к необходимости тех­ нологий, которые позволят строить сети, которые могут состоять из огромного количества независимых каналь­ ных сетей — локальных и глобальных. Каждая такая сеть будет работать внутри себя по тем принципам которые для нее определены, но связи между этими сетями необ­ ходимо поручить новому, сетевому уровню, и основной функцией данного уровня будет новая система адресации .

Эта система адресация базируется на принципах струк­ турированности, это означает то, что в составной сети необходимо дать адреса сетям, а в таблицы маршрутизации промежуточных устройств (маршрутизаторов) помещать Урок №1 информацию о маршрутах к ним. Такой подход позволит минимизировать объем служебных таблиц, минимизировав затраты аппаратных ресурсов на их содержание и время на поиск необходимой информации .

Так как адрес сетевого уровня необходим для того, чтобы строить сети произвольного масштаба, то первый вопрос, который возникает при изучении адресации се­ тевого уровня — какая будет длина адреса? IP адрес, как и многие другие системы адресации, обладает адресом фиксированной длины. Если длина IP адреса будет не­ достаточной, то адрес не сможет принимать достаточно­ го количества уникальных комбинаций, для того чтобы адресовать необходимое количество узлов. Если длина IP адреса будет слишком большой, то с одной стороны, с его помощью можно будет адресовать произвольное количество узлов, но в заголовках будет передаваться много служебной информации, что не очень хорошо будет сказываться на использовании пропускной способности каналов связи сети. Поэтому необходимо что бы адрес был с одной сто­ роны, достаточно длинный, чтобы адресовать необхо­ димое количество узлов, и с другой стороны достаточно коротким, чтобы не пострадала эффективность передачи информации в сети. Кроме этого, адрес сетевого уровня должен быть структурированным, обладать старшей (для адресации сетей), и младшей (для адресации узлов) части .

В стеке TCP/IP существует две версии IP адресации:

IP версии 4 (IPv4). Длина IPv4 адреса 4 байта или 32 бита IP версии 6 (IPv6). Длина IPv6 адреса 16 байт или 128 бит .

6. IP адресация Примечание: Смотря на нумерацию версий протокола IP может показаться, что до IPv4 существовало еще как минимум три версии IP адресации: IPv1, IPv2и IPv3. На самом деле это не так. Исторически, протокол IP был создан выделением его функций из ранней версии протокола TCP. То есть в ранних версиях стека TCP/IP функции протокола TCP и протокола IP выполнялись одним протоколом — TCP. И именно протокол TCP сменил три версии, и при разработке четверной версии, было принято решение об исключении функций межсетевого уровня из протокола TCP, и реализация их в виде отдельного уровня и протокола. Таким образом, протокол TCP был разделен на протокол TCP и IPv4 .

Точнее версия 4 была применена и к новой реализации протокола TCP и к появившемуся протоколу IP. То есть версия протокола IP 4, на самом деле первая версия этого протокола Что же произошло с IPv5? На самом деле этот номер версии был пропущен намерено, и после разработки IPv4 начали разрабатывать IPv6. Пропуск версии был связан с тем, что на то время уже разрабатывался эксперимен­ тальный протокол реального времени — Stream Protocol (ST), также называемый IPv5, определённый в IEN–119, позднее переписанный в RFC–1190 (Stream Protocol) и RFC–1819 (Stream Protocol 2+). Предполагалось, что протокол ST будет работать на межсетевом уровне вме­ сте с IP и облегчать ему эффективно передавать данные приложений, требующих определенных гарантий каче­ Урок №1 ства обслуживания. То есть протокол IPv5 является не заменой, а дополнением к IPv4. Но данный протокол так и не был принят для публичного использования. Многие концепции, присутствующие в протоколе ST, применяются в технологии коммутации на основании меток (MPLS), которую мы будем изучать в будущих курсах .

6.1. Длина IPv4 адреса .

Форма записи IPv4 адресов В данный момент мы начнем изучать IP адресацию версии 4, так как, во­первых, эта система адресации пока еще больше распространена и знание ее обязательна для администрирования практически любых сетей, а во­вторых, она проще. Поэтому для начала мы изучим IPv4, а затем уже изучим, более сложную, IPv6 адресацию. Далее в уроке мы не будем каждый раз указывать версию IP адресации, все что будет описываться в данном уроке будет применимо либо к обоим версиям, и IPv4 и IPv6, или только к IPv4 .

И так, приступим .

Длина IP адреса 4 байта, или 32 бита, и в эти 32 бита входят биты использующиеся для нумерации сетей, и биты, использующиеся для нумерации узлов. Достаточно ли этой длины для тех задач, для которых она разраба­ тывалась? Для ответа на этот вопрос нужно определить сколько разных значений могут принимать 32 бита. 32 бит могут принимать 232 разных значений, сколько это? Точ­ ное количество различных значений можно получить с помощью калькулятора или может быть вы помните наизусть чему равняется 232 (4294967296). Но можно пойти простым путем и получить примерное количество

6. IP адресация значений 232. Для этого необходимо выполнить следую­ щее преобразования:

Для начала распишем 232 как произведение двоек:

22*210*210*210 (при умножении степени складываются) .

Затем, вспомнив значение 210=1024 сделаем предпо­ ложение, что 210 (1024) это практически 103 (1000) .

В результате получается, что 232 это практически 4 (22) миллиарда (210*210*210 почти равно 103*103*103=109) комбинаций .

Много это или мало? На первый взгляд может по­ казаться что 4 миллиарда (на самом деле чуть больше) комбинаций это много, но на сегодня, и это очевидно, этого адресного пространства недостаточно. На сегод­ няшний день на земле проживает около семи миллиар­ дов людей, и даже с учетом того, что не у каждого из них есть компьютер, у многих есть не только компьютер, есть еще и смартфон или планшет, есть рабочий компьютер, а также может быть в широком доступе скоро появится умная бытовая техника с доступом в Интернет (уже сейчас широко распространена технология «Smart TV»), ведь еще в 1999 году была сформулирована концепция «Интернета вещей». Таким образом нынешние потребности в адрес­ ном пространстве таковы, что на каждого жителя земли может быть необходимо не один, а несколько IP адресов .

Примечание: более детально о концепции «Интернета вещей» вы можете почитать по следующим ссылкам:

https://ru.wikipedia.org/wiki/Интернет_вещей http://habrahabr.ru/post/149593/ http://www.cisco.com/web/RU/news/releases/ Урок №1 txt/2013/09/092713c.html https://www.youtube.com/watch?v=99­lV­koDzc Почему же адресное пространство IP предоставляет только лишь 4 миллиарда адресов? Дело в том, что стек TCP/ IP и IP проектировались более 30 лет назад и тогда не что что «Интернета вещей», даже персональных компьютеров не было. В 1943 году директор фирмы IBM сказал: «Думаю, что на мировом рынке мы найдем спрос для пяти компью­ теров» и тогда, естественно, 4 миллиарда адресов казалось весьма большим адресным пространством. Сегодня, этого адресного пространства недостаточно, и каким образом происходит работа сети Интернет в условиях тотального дефицита адресного пространства, мы будем изучать и в этом, и в некоторых последующих курсах .

И так, фактически, IP адрес является 32­х битным числом. Каким образом это число может быть записано?

Понятно, что 32­х битное число может быть записано в различных системах исчисления, которые мы сегодня вспоминали:

В двоичной. Например, IP адрес может выглядеть так:

Несмотря на то, что вся суть и логика IP адресов наиболее наглядно представляется именно в двоичном виде, работать с такой формой записи адреса (напри­ мер, использовать ее в процессе конфигурации узлов и устройств) не удобно, она слишком громоздка .

В шестнадцатеричной.

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

EE2FA23E

6. IP адресация Как видно, такая форма записи является суще­ ственно более компактной. Она очень легко полу­ чается из двоичной и точно также легко может быть возвращена в двоичную (процесс перевода показан на рисунке 1–27), а так как для выполнения определенных манипуляций и расчетов, связанных с IP адресами, а также в процессе планирования адресного про­ странства нам будет нужна именно двоичная форма IP адреса, но такая форма для администратора может быть еще и очень удобной .

Рисунок 1–27. Перевод IP адреса из двоичной системы исчисления, в шестнадцатеричную В десятичной, а точнее точечно­десятичной (Dotted Decimal). Суть точечно­десятичной нотации заключа­ ется в том, что в десятичную систему исчисления не все 32 бита IP адреса сразу, так как результирующее большое число было бы сложно запомнить человеку .

Вместо этого биты IP адреса группируются в байты, и в десятичную систему исчисления переводится каж­ дый байт отдельно, в качестве разделителей между байтами используются символы точек.

Таким обра­ зом, наш IP адрес в точечно­десятичной форме будет выглядеть следующим образом (процесс перевода показан на рисунке 1–28):

238.47.162.62 Урок №1 Рисунок 1–28. Перевод IP адреса из двоичной системы исчисления, в точечно-десятичную Несмотря на то, что данная форма записи адреса не так удобна с точки зрения манипуляций и расчетов, так как она скрывает от нас двоичное представление IP адреса, тем не менее именно она является основной для IP адресации. Это связано с тем, что человеку привычней видеть и работать с десятью различными цифрами, чем с шестнадцатеричной системой. При этом важно пом­ нить, что никаких «точек» в самом IP адресе нет, этот разделитель был добавлен исключительно для человека, чтобы разделять цифры числа одного байта, от цифр числа другого байта .

Внимание: При переводе IP адреса из шестнадцатеричной и точечно-десятичной формы в двоичную, необходимо внимательно следить за ведущими нулями, и не терять и .

Например, если мы возьмем IP адрес в шестнадцате­ ричной системе и переведем его в двоичную посимвольно не записывая нули слева (так как нам позволяет это делать обычная математика и как это делает калькулятор), то мы получим следующие значения:

EE2FA23E E=1110 E=1110

6. IP адресация 2=10 F=1111 A=1010 2=10 3=11 E=1110 .

Теперь, если мы запишем все полученные результаты перевода в строчку, то мы получим следующую строку:

11101110101111101010111110 .

Эта строка явно является ошибочной, так как содер­ жит 26 бит, вместо 32 .

Это произошло потому, что при переводе мы в неко­ торых местах «потеряли» ведущие нули и не все шест­ надцатеричные символы были представлены четырьмя битами .

Правильно было бы решить эту задачу следующим образом:

EE2FA23E E=1110 E=1110 2=0010 F=1111 A=1010 2=0010 3=0011 E=1110 .

В результате мы получим уже правильную строку из 32­х бит (желтым цветом выделены те биты, которые были потеряны в предыдущем случае):

11101110001011111010001000111110 .

Урок №1 Точно также и при переводе из точечно­десятичной формы, если мы не будем записывать ведущие нули, то мы получим следующие значения:

238.47.162.62 238=11101110 47=101111 162=10100010 62=111110 .

Теперь, если мы запишем все полученные результаты перевода в строчку, то мы получим следующую строку:

1110111010111110100010111110 .

Эта строка также явно является ошибочной, так как содержит 28 бит, вместо 32 .

Правильно было бы решить эту задачу следующим образом:

238.47.162.62 238=11101110 47=00101111 162=10100010 62=00111110 .

Теперь количество бит в строке правильное (желтым цветом выделены те биты, которые были потеряны в пре­ дыдущем случае):

11101110001011111010001000111110 .

–  –  –

ственной целью — структуризация сети. Поэтому, оче­ видно, одна часть IP адреса будет хранить информацию о номере сети, а другая будет хранить номер узла. Таким образом, если у нам есть IP адрес, например, 238.47.162.62, то какая часть этого адреса является номером сети, а какая номером узла в этой сети?

Визуально, на базе точечно­десятичной формы за­ писи IP адреса можно предложить следующие наиболее вероятные и простые варианты ответа на этот вопрос:

Первый байт — номер сети, второй, третий и четвер­ тый — номер узла:

238.47.162.62 .

Так как под номер сети выделяется один байт (8 бит), всего будет доступно 28=256 различных сетей .

Так как под номер узла выделяется три байта (24 бита), всего в каждой сети будет доступно 224= 16777216 узлов .

Очевидно, такой вариант деления IP адреса на номер сети и номер узла не подходят для задачи построения сети произвольного масштаба, так как количество сетей, очевидно слишком мало, а количество узлов в каждой из этих сетей крайне избыточно (вспомните, в начале урока мы говорили о проблемах построения огромных сетей на базе только физического и каналь­ ного уровня) Первый и второй байты — номер сети, третий и чет­ вертый — номер узла:

238.47.162.62 .

Так как и под номер сети, и под номер узла выделяет­ ся по два байта (16 бит), всего будет доступно 216=65536 Урок №1 различных сетей, в каждой из которых будет доступно 216= 65536 узлов .

Такой вариант кажется более подходящим, количество сетей уже относительно велико, и количество узлов в ка­ ждой из них не является таким уж избыточным. Но если говорить о сети произвольного масштаба, и в частности сети Интернет, то все равно количество сетей явно не­ достаточно.

Кроме того, теоретически могут встречаться компании, с количеством узлов, большем чем 65536 (на­ пример, крупные заводы или провайдеры услуг) Первый, второй и третий байты — номер сети, чет­ вертый — номер узла:

238.47.162.62 .

Так как под номер сети выделяется три байта (24 бита), всего будет доступно 224= 16777216 различных сетей .

Так как под номер узла выделяется один байт (8 бит), всего в каждой сети будет доступно 28=256 узлов .

Здесь уже доступно огромное количество сетей, которое вполне может подойти для задачи построения огромной составной сети, но мы упираемся в другую проблему, проблему количества узлов в каждой из сетей. Достаточно часто встречаются организации, с количеством компью­ теров большим чем 256, а использование такой схемы деления IP адреса на номер сети и номер узла адресовать больше чем 256 узлов в одной сети невозможно .

Очевидно, ни один из предложенных вариантов не может быть использован, так как каждый из них обла­ дает определенными недостатками. Как же происходит деление на самом деле? В реальности, ответ на вопрос

6. IP адресация «Каким образом IP адрес делится на номер сети и номер узла?» менялся с течением времени .

6.2.1. Структура IP адреса согласно RFC-760 Документ, который описывал одну из первых реали­ заций IP — RFC-760, говорил, что IP адрес это четырех байтное число, первый байт (8 бит) которого адресует на номер сети, а остальные три байта (24 бита) адресуют на номер узла (рисунок 1–29) .

Рисунок 1–29. Деление IP адреса на номер сети и номер узла в RFC–760 Таким образом, в рамках подхода RFC–760 можно было организовать 28=256 различных сетей, в каждой из которых было доступно 224= 16777216 узлов, и как мы уже выяснили ранее, такой вариант деления IP адреса Урок №1 на номер сети и номер узла не может обеспечить воз­ можность построения составной сети произвольного масштаба ввиду малого количества сетей. Почему же именно такой вариант деления IP адреса на две части был принят как стандарт? Напоминаю, что все это про­ исходило в то время, когда и количество компьютеров в США измерялось всего десятками. Естественно, по мере развития технологий, развития стека TCP/IP и по­ явления сети Интернет RFC­760 полностью устарел и подход к делению IP адреса на номер сети и номер узла был пересмотрен, кстати говоря он был пересмо­ трен неоднократно .

Как же был присмотрен подход к делению IP адреса на номер сети и номер узла? Ведь на основании выше рассмотренных примеров, принять в качестве решения простой побайтный сдвиг границы вправо с целью увеличения количества сетей абсолютно не подходит, так как в то время, когда мы уже начинаем получать необходимое количество сетей, подходящее для реше­ ния задачи построения составной сети произвольного масштаба, количество узлов в каждой из этих сетей становится слишком мало. Кроме того, что объем сетей, в разных организациях, может быть различен — сеть небольшой компании может содержать десятки и сотни узлов, сеть средней компании может содержать сотни и тысячи узлов, сеть крупной корпорации может со­ держать десятки тысяч узлов и даже больше. То есть у нас либо слишком мало сетей, либо слишком мало узлов, ну или в промежуточном варианте не хватает и того и другого .

6. IP адресация Из всего этого следует простой вывод — нельзя решить задачу просто установив фиксированную границу между номером сети и номером узла в определенной точке, так как в этом случае мы либо получим недостаточное коли­ чество сетей, либо недостаточное количество узлов, либо недостаточное количество и сетей, и узлов. Необходимо придумать гибкое решение, которое позволит админи­ страторам выбрать такой вариант деления IP адреса на номер сети и номер узла, который наиболее подходит для сети его компании .

6.2.2. Структура IP адреса согласно RFC-791 .

Классы IP адресов Именно такое, гибкое решение, было предложено сле­ дующим RFC, RFC–791, который заменил собой RFC–760 .

Согласно RFC–791, деление IP адреса на номер сети и номер узла происходит по так называемой «Классовой схеме», в которой граница между номером сети и номером узла в IP адресе определяется тем, какому классу данный IP адрес принадлежит, а принадлежность IP адреса классу определяется содержимым старших бит IP адреса (рисунок 1–30) .

Все адресное пространство IP представляет собой 232 IP адресов, что является примерно 4 миллиарда адре­ сов (а если точно 4294967296 IP адреса). Весь этот объем адресного пространства можно представить в виде пря­ моугольника, как показано на рисунок 1–31. Первым IP адресом в этом диапазоне адресов будет минимальный допустимый адрес — «все нули» в двоичной системе (что соответствует 0.0.0.0 в десятичной системе исчисления), а последним IP адресом будет максимальный допустимый адрес — «все единицы» в двоичной системе исчисления (что соответствует 255.255.255.255 в десятичной системе исчисления) .

Возьмем и разделим это адресное пространство по­ полам, как показано на рисунке 1–32. Мы получим два диапазона по 231=2147483648 (два диапазона примерно

6. IP адресация по 2 миллиарда адресов). И первый из этих диапазонов является диапазоном «класса А» .

–  –  –

Сразу возникает вопрос, а как определить какому из этих двух диапазонов принадлежит IP адрес и как опре­ делить какой IP адрес является последним в первом из этих двух диапазонов? Ответ на эти вопросы можно легко увидеть в двоичной системе (таблица 1–46) .

Если записать последовательно увеличивающиеся двоичные числа, то легко заметить, что во всех числах, принадлежащих первой половине диапазона (естествен­ но, мы не будем перечислять все 4 миллиарда адресов, мы ограничимся 16­ю, но от этого суть совершенно не поменяется), левый, старший, бит равен «0», а во всех числах, принадлежащих второй половине диапазона, левый, старший, бит равен «1» .

Таким образом, для того что бы выбрать все IP адре­ са, принадлежащие классу A, необходимо выбрать все IP адреса, старший (самый левый) бит байта «A» кото­ рых, равен нулю. Остальные биты (31 бит) IP адреса могут принимать произвольные значения. Именно такое Урок №1 Таблица 1–46.

Выделение адресного пространства под класс A средствами двоичной системы исчисления правило определения IP адресов для класса A записано в RFC–791:

«in class a, the high order bit is zero» .

Таким образом, общий вид IP адреса, принадлежащего классу A будет выглядеть следующим образом:

0XXXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

Где «X» — произвольная двоичная цифра, или «0» или «1» .

Минимальный IP адрес класса A будет выглядеть сле­ дующим образом:

00000000.00000000.00000000.00000000 (0.0.0.0)

6. IP адресация А максимальный IP адрес класса A будет выглядеть следующим образом:

01111111.11111111.11111111.11111111 (127.255.255.255) Очевидно, что второй, третий и четвертый байты могут принимать произвольные значения, и никак не определяют принадлежность к классу. Принадлежность к классу A можно определить только по старшему байту IP адреса — байту «A», который принимает диапазон значений от 0 до 127 .

В классе A, под номер сети отводится первый байт, байт «A», а все оставшиеся байты, «B.C.D» отводятся под нумерацию узлов, как показано на рисунке 1–33 .

Сколько сетей может быть в классе A? Учитывая то, что в классе A под номер сети отводится один первый байт, может показаться что общее количество сетей будет 256 (как и в схеме, предлагаемой RFC–760), но если посмотреть на то, как изменяется значение старшего байта, можно уви­ деть, что в нем изменяется только 7 бит из 8­ми, старший бит всегда равен нулю, поэтому на самом деле количество сетей класса A равняется не 28, а 27=128 .

Рисунок 1–33. Деление IP адреса на номер сети и номер узла в классе A Урок №1 Сколько IP адресов может быть в каждой сети класса A? Так как под адрес узла в сетях класса A выделяется 3 байта или 24 бита, то количество IP адресов под узлы в сетях данного класса равно 224=16777216 (тут пока полное совпадение со схемой, предлагаемой RFC–760) .

Таким образом, можно сделать вывод о том, что класс A предназначен для адресации небольшого количества (128) сетей огромного (по 16 миллионов узлов) размера .

Кстати можно обратить внимание на то, что 27*224=231, то есть произведение количества сетей класса A на ко­ личество IP адресов в каждой из сетей класса A даст нам общее количество адресов класса A .

Далее, возьмем вторую половину адресного про­ странства и разделим ее еще раз пополам, как пока­ зано на рисунке 1–34. Мы получим два диапазона по 230=1073741824 (два диапазона примерно по 1 миллиарду адресов), это третья и четвертая четверти всего адрес­ ного пространства IP. И первый из этих диапазонов, то есть третья четверть адресного пространства, является диапазоном «класса B» .

Рисунок 1–34. Выделение адресного пространства под класс B

6. IP адресация Как определить, какие IP адреса принадлежат третьей четверти диапазона, то есть принадлежат классу B? Ответ на данный вопрос опять можно легко увидеть в двоичной системе (таблица 1–47) .

Таблица 1–47. Выделение адресного пространства под класс B средствами двоичной системы исчисления Если записать последовательно увеличивающиеся двоичные числа, то легко заметить, что во всех числах, принадлежащих второй половине диапазона, левый, стар­ ший, бит равен «1», и для того что бы выделить третью и четвертую четверти нам нужен не один старший бит, а два старших бита, так как разница проявляется теперь не в старшем бите, а в следующем за ним бите. Видно, что во всех числах третьей четверти всего диапазона, Урок №1 левые, старшие, два бита равны «10», а во всех числах четвертой четверти всего диапазона, левые, старшие, два бита равны «11» .

Таким образом, для того что бы выбрать все IP адре­ са, принадлежащие классу B, необходимо выбрать все IP адреса, два старших (самых левых) бита байта «A»

которых, равны «10». Остальные биты (30 бит) IP адреса могут принимать произвольные значения. Именно такое правило определения IP адресов для класса B записано в RFC–791:

«in class b, the high order two bits are one-zero» .

Таким образом, общий вид IP адреса, принадлежащего классу B будет выглядеть следующим образом:

10XXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX Где «X» — произвольная двоичная цифра, или «0»

или «1» .

Минимальный IP адрес класса B будет выглядеть следующим образом:

10000000.00000000.00000000.00000000 (128.0.0.0) А максимальный IP адрес класса B будет выглядеть следующим образом:

10111111.11111111.11111111.11111111 (191.255.255.255) Очевидно, что второй, третий и четвертый байты опять могут принимать произвольные значения, и никак не определяют принадлежность к классу. Принадлежность к классу B можно определить только по старшему байту IP адреса — байту «A», который принимает диапазон значений от 128 до 191 .

6. IP адресация В классе B, под номер сети отводится первые два байта, байты «A.B», а все оставшиеся байты, «C.D» отводятся под нумерацию узлов, как показано на рисунке 1–35 .

Рисунок 1–35. Деление IP адреса на номер сети и номер узла в классе B Сколько сетей может быть в классе B? Учитывая то, что в классе B под номер сети отводится два байта, может показаться что общее количество сетей будет 65536, но если посмотреть на то, как изменяется значение старшего байта, можно увидеть, что в нем изменяется только 6 бит из 8­ми, старшие биты всегда равны «10», поэтому на самом деле количество сетей класса B равняется не 21, а 21=16384 .

Сколько IP адресов может быть в каждой сети класса B? Так как под адрес узла в сетях класса B выделяется 2 байта или 16 бит, то количество IP адресов под узлы в сетях данного класса равно 21=65536 .

Таким образом, можно сделать вывод о том, что класс B предназначен для адресации среднего количества (16384) сетей среднего (65536) размера. И тут можно обратить внимание на то, что 21*21=23, то есть произведение количества сетей класса B на количество IP адресов в ка­ Урок №1 ждой из сетей класса B даст нам общее количество адресов класса B .

Далее, возьмем оставшуюся четверть адресного про­ странства и разделим ее еще раз пополам, как показано на рисунке 1–36. Мы получим два диапазона по 22= 536870912 (два диапазона примерно по пол миллиарда адресов, они равны 1/8 исходного объема адресного пространства IP). И первый из этих диапазонов, является диапазоном «класса С» .

Рисунок 1–36. Выделение адресного пространства под класс С

Как определить, какие IP адреса принадлежат классу C? Ответ на данный вопрос опять можно легко увидеть в двоичной системе (таблица 1–48). Если записать после­ довательно увеличивающиеся двоичные числа, то легко заметить, что теперь нам нужны три, а не два старших бита. Видно, что во всех числах первого диапазона, левые, старшие, три бита равны «110», а во всех числах второго диапазона, левые, старшие, три бита равны «111» .

Таким образом, общий вид IP адреса, принадлежащего классу С будет выглядеть следующим образом:

110XXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

6. IP адресация Таблица 1–48. Выделение адресного пространства под класс C средствами двоичной системы исчисления Где «X» — произвольная двоичная цифра, или «0»

или «1» .

Минимальный IP адрес класса С будет выглядеть следующим образом:

11000000.00000000.00000000.00000000 (192.0.0.0) .

А максимальный IP адрес класса С будет выглядеть следующим образом:

11011111.11111111.11111111.11111111 (223.255.255.255) .

Очевидно, что второй, третий и четвертый байты опять могут принимать произвольные значения, и никак не определяют принадлежность к классу. Принадлежность Урок №1 к классу С можно определить только по старшему байту IP адреса — байту «A», который принимает диапазон значений от 192 до 223 .

В классе С, под номер сети отводится первые три байта, байты «A.B.C», а оставшийся байт «D» отводятся под нумерацию узлов, как показано на рисунке 1–37 .

Рисунок 1–37. Деление IP адреса на номер сети и номер узла в классе С Сколько сетей может быть в классе C? Учитывая то, что в классе C под номер сети отводится три байта, может показаться что общее количество сетей будет 22 (примерно 16 миллионов), но если посмотреть на то, как изменяется значение старшего байта, можно увидеть, что в нем изменяется только 5 бит из 8­ми, старшие биты всегда равны «110», поэтому на самом деле количество сетей класса C равняется не 22, а 221= 2097152 .

Сколько IP адресов может быть в каждой сети класса С? Так как под адрес узла в сетях класса С выделяется 1 байт или 8 бит, то количество IP адресов под узлы в сетях данного класса равно 2=256 .

Таким образом, можно сделать вывод о том, что класс C предназначен для адресации большого количества (2097152) сетей небольшого (256) размера. Естественно,

6. IP адресация 221*2=22, то есть произведение количества сетей класса C на количество IP адресов в каждой из сетей класса C даст нам общее количество адресов класса C .

Классы A, B и C это основные классы адресного пространства IP. Они используется для уникальной адресации каждого из узлов любой из сетей. Для опи­ сания IP адресов этих классов также используется термин «направленные» адреса, или в англоязычной литературе используется термин Unicast. Именно эти классы решают задачу гибкого предоставления адрес­ ного пространства организациям различного масштаба .

Небольшие компании могу выбрать для адресации сети из класса C, средние компании из класса B и огромные компании из класса A .

И так, у нас осталась не использованной одна восьмая адресного пространства, и ее мы опять делим пополам как показано на рисунке 1–38. Мы получим два диапазона по 22= 268435456 (два диапазона примерно по четверти миллиарда адресов, они равны 1/16 исходного объема адресного пространства IP). И первый из этих диапазо­ нов, является диапазоном «класса D», а второй являет­ Рисунок 1–38. Выделение адресного пространства под класс D и класс E Урок №1 ся классом «E». Это особые классы, которые работают и используются не так как предыдущие классы A, B и C .

Как определить, какие IP адреса принадлежат классам D и E? Ответ на данный вопрос опять можно легко уви­ деть в двоичной системе (таблица 1–49). Если записать последовательно увеличивающиеся двоичные числа, то легко заметить, что теперь нам нужны четыре, а не три старших бита. Видно, что во всех числах первого диапазона, левые, старшие, четыре бита равны «1110»

и это будет идентификатором класса D, а во всех числах второго диапазона, левые, старшие, четыре бита равны «1111» и это будет идентификатором класса E .

Таблица 1–49. Выделение адресного пространства под классы D и E средствами двоичной системы исчисления

6. IP адресация

Таким образом, для того что бы выбрать все IP адре­ са, принадлежащие классу D, необходимо выбрать все IP адреса, четыре старших (самых левых) бита байта «A»

которых, равны «1110». Остальные биты (28 бит) IP адреса могут принимать произвольные значения .

Таким образом, общий вид IP адреса, принадлежащего классу D будет выглядеть следующим образом:

1110XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX Где «X» — произвольная двоичная цифра, или «0»

или «1» .

Минимальный IP адрес класса D будет выглядеть следующим образом:

11100000.00000000.00000000.00000000 (224.0.0.0) .

А максимальный IP адрес класса D будет выглядеть следующим образом:

11101111.11111111.11111111.11111111 (239.255.255.255) .

Очевидно, что второй, третий и четвертый байты опять могут принимать произвольные значения, и никак не определяют принадлежность к классу. Принадлежность к классу D можно определить только по старшему байту IP адреса — байту «A», который принимает диапазон значений от 224 до 239 .

Обратите внимание на то, что если мы применим предыдущую логику (классов A, B и С) для класса D, то получится что под номер сети отводится все четыре байта IP адреса, и под нумерацию узлов не останется ничего, как показано на рисунке 1–39 .

Урок №1

Рисунок 1–39. Структура IP адреса в классе D

То есть адресуя «сеть», принадлежащую классу D мы не можем указать какой­то определенный узел, в нее входящий. Так на самом деле и есть, как уже говорилось выше, класс D является особым классом, который исполь­ зуется для групповой адресации узлов, в англоязычной литературе для описания этого класса используется тер­ мин Multicast .

Для чего нужны адреса данного класса? Для того что бы понять, для чего используется групповое вещание можно представить различные примеры. Допустим у вас в сети идет видео трансляция конференции или семинара, к которой подключено большое количество пользователей, или же провайдер производит видео трансляцию какого­нибудь спортивного мероприятия для своих клиентов. В обоих этих случаях есть одна об­ щая деталь — множеству узлов необходимо доставить одни и те же данные. Сколько копий одних и тех же дан­ ных надо будет отправить серверу, поддерживающему такую трансляцию используя обычные, известные нам методы? Очевидно, каждую порцию данных, каждый кадр видеопотока необходимо отправить столько раз, сколько к этой трансляции подключено клиентов. Если

6. IP адресация речь идет о сети небольшой компании, с небольшим количеством сотрудников, которые подключаются к ви­ део конференции с директором, находящимся в данный момент в командировке, то нагрузка на сеть будет не очень велика. Но если попробовать представить какое количество пакетов необходимо обработать и отпра­ вить оборудованию провайдера в момент трансляции, например, чемпионата мира по футболу, количество желающих посмотреть который будет явно огромным, то становится ясно, что для при решении этих задач обыч­ ными методами, не хватит ни вычислительных ресурсов ни пропускной способности каналов связи. Именно для решения подобных задач используется групповая передача. Провайдер, или сервер видеоконференций компании, передает все пакеты данных в единственном экземпляре, но в качестве адреса получателя указывается не конкретный адрес какого­то из клиентов, а специаль­ ный групповой адрес (адрес класса D). Клиенты, в свою очередь, желающие подключится к видео трансляции, получают дополнительно к уже существующему у них направленному (Unicast) адресу классов A, B или C еще один адрес класса D — адрес той группы, для которой ведется интересующая клиента трансляция. Получение группового (Multicst) IP адреса происходит, как правило, с помощью специального программного обеспечения, которое с помощью специальных протоколов сообщит сетевому оборудованию о том, что клиент, на котором это программное обеспечение запущено, хочет подключится к группе вещания и на его интерфейс должны приходить пакеты с данным групповым адресом. Таким образом Урок №1 у каждого из компьютеров, входящем в группу будет не один, а два (или более) IP адреса: уникальный адрес класса A, B или C, и один общий класса D, одинаковый у всех узлов, входящих в группу. В результате серверу, производящему трансляцию видео потока, необходимо отправить каждый его кадр только единожды, а не столько раз, сколько в данный момент подключено к трансляции клиентов, сетевое оборудование само определит в какие из сетей необходимо отправить данные видеопотока, а в какие нет. В те сети, где нет активных клиентов данной группы вещания, пакеты отправляться не будут. Есте­ ственно, при необходимости клиент может подписаться на прием данных не одного, а нескольких различных вещаний одновременно .

Рисунок 1–40. Пример работы группового вещания

6. IP адресация Пример работы группового показан на рисунке 1–40 .

В данном примере есть 4 сети. В первой сети присутствуют клиенты, жалующие просматривать видео поток, адресо­ ванный только группе «G1». Во второй сети присутствуют клиенты, жалующие просматривать видео поток, адресо­ ванный только группе «G2». В третьей сети присутствуют клиенты, жалующие просматривать видео поток, адресо­ ванный и группе «G1» и группе «G2». В четвертой сети нет ни одного клиента который в данный момент подключен хотя бы к одной их групп вещания. В результате серверу видео вещания необходимо отправить только по одному пакету каждого из видео потоков, которые он в данный момент транслируют. Далее оборудование сети доставит эти пакеты в те сети, где есть клиенты, подключенные к этим видеопотокам. В результате в первую сеть попадут пакеты только потока «G1», во вторую сеть только пакеты только потока «G2», в третью сеть попадут пакеты обоих потоков «G1» и «G2», и в четвертую сеть пакеты видео трансляций переданы не будут .

При такой схеме передачи данных нагрузка на обо­ рудование и каналы связи минимальна. Естественно, групповая передача данных подходи только для тех слу­ чаев, когда множество клиентов должно синхронно по­ лучать одинаковую информацию и не подходит для всех остальных случаев. Работа с групповыми IP адресами регламентируется RFC–5771 .

В этом курсе мы практически не будем использовать адреса данного класса, однако в одном из следующих курсах мы детально познакомимся с групповой передачей данных и с протоколами которые ее обеспечивают .

Урок №1 Сколько всего IP адресов в классе D, сколько различных групп вещания можно организовать? Учитывая то, что в классе D под адреса отводятся все четыре байта, может показаться что общее количество сетей будет 232 (примерно 4 милли­ арда), но если посмотреть на то, как изменяется значение старшего байта, можно увидеть, что в нем изменяется только 4 бита из 8­ми, старшие биты всегда равны «1110», поэтому на самом деле количество IP адресов в классе D равняется не 232, а 22=268435456, то есть можно организовать около 256 миллионов различных групп вещания .

Вопрос «Сколько IP адресов может быть в каждой сети класса D?» не корректен, так как этот класс используется для групповой адресации, и не может быть использован для адресации каждого из узлов в отдельности .

И последний класс, класс E, это тоже особый класс. Что бы выбрать все IP адреса, принадлежащие классу E, необхо­ димо выбрать все IP адреса, четыре старших (самых левых) бита байта «A» которых, равны «1111». Остальные биты (28 бит) IP адреса могут принимать произвольные значения .

Таким образом, общий вид IP адреса, принадлежащего классу E будет выглядеть следующим образом:

1111XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX Где «X» — произвольная двоичная цифра, или «0»

или «1» .

Минимальный IP адрес класса E будет выглядеть следующим образом:

11110000.00000000.00000000.00000000 (240.0.0.0) А максимальный IP адрес класса E будет выглядеть следующим образом:

11111111.11111111.11111111.11111111 (225.255.255.255)

6. IP адресация Очевидно, что второй, третий и четвертый байты опять могут принимать произвольные значения, и никак не определяют принадлежность к классу. Принадлежность к классу E можно определить только по старшему байту IP адреса — байту «A», который принимает диапазон значений от 240 до 255 .

Класс E также, как и класс D, содержит 22=268435456 адресов .

Класс E является диапазоном резерва фактически его использование запрещено RFC–1700: «Class E addresses are reserved for future use», за одним исключением о кото­ ром пойдет речь далее. Вопросы о номере сети и номере узла для IP адресов данного класса не корректны, и эти термины к IP адресам класса E не применяются .

В результате деления всего адресного пространства на классы, мы получили структуру, показанную на ри­ сунке 1–41 .

Рисунок 1–41. Деление адресного пространства IP на классы

Примечание: На самом деле в рамках IEFF был зарегистрирован документ RFC–1365, который предполагал деление диапазона класса E еще на пополам с организацией классов E и F. Но к тому времени классовая система адресации уже начала устаревать, и особой поддержки данная идея не получила .

Урок №1 RFC–1365 обладает статусом «INFORMATIONAL»

и не является стандартом .

На основании всей изложенной выше информации можно оставить сводную таблицу, содержащую всю ос­ новную информацию о IP адресах каждого из классов (таблица 50) .

Таблица 1–50. Сводная таблица классов IP адресов адреса Сеть .

тель класса

–  –  –

6.2.3. Примеры использования классовой системы для анализа IP адреса Рассмотрим несколько примеров определения пара­ метром IP адреса на основании техники классов .

Пример 1 Возьмем IP адрес 1.2.3.4. Что мы можем сказать об этом IP адресе? Для начала необходимо ответит на во­ прос «Какому классу он принадлежит?», весь дальнейший анализ будет зависеть от ответа на этот вопрос .

Для того, чтобы определить принадлежность IP адреса классу необходимо проанализировать первый (старший) его байт, байт «A». Байт «A» в данном IP адресе равен «1»

6. IP адресация в десятичном виде, и «00000001» в двоичном (обратите внимание на то, что ведущие нули терять нельзя). На ос­ новании этой информации можно сделать вывод о том, что данный IP адрес принадлежит классу «A», так как его десятичное значение старшего байта входит в диапазон значений от 0 до 127, и старший бит старшего байта равен «0», что является показателями класса A .

Зная класс IP адреса можно производить дальнейший его анализ .

Так как под номер сети в IP адресах класса A отводит­ ся первый байт, то номером сети в данном случае будет «1», а номером узла «2.3.4»: 1.2.3.4. Кроме того, ясно что данный IP адрес должен быть уникален в сети, так как он используется для направленной адресации узлов .

Пример 2 Возьмем IP адрес 150.160.170.180. Что мы можем ска­ зать об этом IP адресе? Для начала необходимо ответит на вопрос «Какому классу он принадлежит?» .

Для того, чтобы определить принадлежность IP адреса классу необходимо проанализировать первый (старший) его байт, байт «A». Байт «A» в данном IP адресе равен «150» в десятичном виде, и «10010110» в двоичном. На основании этой информации можно сделать вывод о том, что данный IP адрес принадлежит классу «B», так как его десятичное значение старшего байта входит в диапазон значений от 128 до 191, и старшие биты старшего байта равны «10», что является показателями класса B .

Так как под номер сети в IP адресах класса B отводится первые два байта, то номером сети в данном случае бу­ дет «150.160», а номером узла «170.180»: 150.160.170.180 .

Урок №1 Кроме того, ясно что данный IP адрес должен быть уни­ кален в сети, так как он используется для направленной адресации узлов .

Пример 3 Возьмем IP адрес 210.220.230.250. Что мы можем ска­ зать об этом IP адресе? Для начала необходимо ответит на вопрос «Какому классу он принадлежит?» .

Для того, чтобы определить принадлежность IP адреса классу необходимо проанализировать первый (старший) его байт, байт «A». Байт «A» в данном IP адресе равен «210»

в десятичном виде, и «11010010» в двоичном. На основании этой информации можно сделать вывод о том, что данный IP адрес принадлежит классу «C», так как его десятичное значение старшего байта входит в диапазон значений от 192 до 223, и старшие биты старшего байта равны «110», что является показателями класса C .

Так как под номер сети в IP адресах класса C отводится первые три байта, то номером сети в данном случае бу­ дет «210.220.230», а номером узла «240»: 210.220.230.250 .

Кроме того, ясно что данный IP адрес должен быть уни­ кален в сети, так как он используется для направленной адресации узлов .

Пример 4 Возьмем IP адрес 230.240.250.250. Что мы можем ска­ зать об этом IP адресе? Для начала необходимо ответит на вопрос «Какому классу он принадлежит?» .

Для того, чтобы определить принадлежность IP адреса классу необходимо проанализировать первый (старший) его байт, байт «A». Байт «A» в данном IP адресе равен

6. IP адресация «230» в десятичном виде, и «11100110» в двоичном. На основании этой информации можно сделать вывод о том, что данный IP адрес принадлежит классу «D», так как его десятичное значение старшего байта входит в диапазон значений от 224 до 239, и старшие биты старшего байта равны «1110», что является показателями класса D .

Для класса D понятия «номер сети» и номер узла не применимы, это групповой, Multicast адрес, который может быть назначен специальным программным обеспечением множеству узлов, входящих в одну группу .

Пример 5 Возьмем IP адрес 250. 240.230.220. Что мы можем ска­ зать об этом IP адресе? Для начала необходимо ответит на вопрос «Какому классу он принадлежит?» .

Для того, чтобы определить принадлежность IP адреса классу необходимо проанализировать первый (старший) его байт, байт «A». Байт «A» в данном IP адресе равен «250» в десятичном виде, и «11111010» в двоичном. На основании этой информации можно сделать вывод о том, что данный IP адрес принадлежит классу «E», так как его десятичное значение старшего байта входит в диапазон значений от 240 до 250, и старшие биты старшего байта равны «1111», что является показателями класса E .

Так как этот IP адрес принадлежит классу E, то он не обладает какой­либо структурой и его использование запрещено .

6.3. Особые IP адреса Очевидно, классовая схема деления IP адреса на номер сети и номер узла куда более гибкая и масштаби­ Урок №1 руемая, чем подход описанный в RFC–760. Однако, как мы скоро увидим и у техники классов есть свой порог масштабируемости. На самом деле любая технология обладает своим порогом масштабируемости и вопрос только в том, когда он наступит. Но прежде чем мы пе­ рейдем и изучению более новых подходов к структуре IP адреса, нам необходимо разобрать такую тему, как «особые IP адреса» .

Особые IP адреса, это те IP адреса, которые обла­ дают специальным назначением, и ввиду того, что они обладают особыми свойствами, их использование для адресации интерфейсов узлов и сетевого оборудования запрещено. Это совершенно не говорит о том, что эти адреса совершенно нельзя нигде использовать, какие­то из этих адресов можно использовать в некоторых командах, другие могут в некоторых случаях появляться в качестве адреса отправителя или адреса получателя в заголовках IP пакета. Запрещено только назначение этих адресов на интерфейсах, и вы сейчас поймете почему .

Особые IP адреса описаны в RFC–1700, RFC–6890, а также некоторых других RFC, которые будут указаны ниже.

Особыми IP адресами являются:

Адреса «Номер сети». Это адреса, в которых все биты соответствующие номеру узла равны 0. Такие IP адреса, адреса с минимально допустимым значением номера узла, используются в таблицах маршрутизации .

Вспомните, когда мы заполняли абстрактную таблицу маршрутизации, в ней присутствовала колонка «Номер сети», в которую мы заносили все сети составной сети, в формате «Net1», «Net2» и т.д. Так вот, при заполнении

6. IP адресация реальных таблиц маршрутизации, в качестве номера сети указываются IP адреса, с нулевыми адресами узлов .

Например, возьмем IP адрес 1.1.1.1, какой сети он принадлежит? Так как IP адрес 1.1.1.1 принадлежит классу A, то первый байт этого IP адреса является номером сети, а остальные байты номером узла: 1.1.1.1. Для того, чтобы определить номер сети, которой принадлежит IP адрес, нужно обнулить все его биты, отвечающие за номер узла .

Исходный IP адрес:

00000001.0000001.0000001.0000001 (1.1.1.1)

Номер сети, которой принадлежит этот IP адрес:

00000001.0000000.0000000.0000000 (1.0.0.0) Так как при работе с классами, граница между номе­ ром сети и номером узла проходит между байтами, то для решения этой задачи переводить IP адрес в двоичную систему исчисления не обязательно, просто обнуляем те байты IP адреса, которые отвечают за номер узла:

Например, для IP адреса, принадлежащего классу C, допустим такого: 200.200.200.200, номер сети можно получить следующим образом:

Исходный IP адрес:

200.200.200.200

Номер сети, которой принадлежит этот IP адрес:

200.200.200.0 Обратите внимание на то, что совершенно не любой IP адрес, заканчивающийся на «0» является номером сети .

Например, IP адрес 1.1.0.0, не является номером сети, так как данный IP адрес принадлежит классу A, и под номер узла в нем отводится три последних байта:

1.1.0.0 Урок №1 Очевидно, не все биты (байты) соответствующие номе­ ру узла равны 0. Этот IP адрес является адресом какого­то узла в следующий сети:

1.0.0.0 Или другой пример, IP адрес 160.160.160.0 тоже не яв­ ляется номером сети, так как данный IP адрес принадлежит классу B, и под номер узла в нем отводится два последних байта:

160.160.160.0 Очевидно, не все биты (баты) соответствующие номеру узла равны 0. Этот IP адрес является адресом какого­то узла в следующий сети:

160.160.0.0 В свою очередь IP адрес 200.160.160.0 уже является но­ мером сети, так как данный IP адрес принадлежит классу C, и под номер узла в нем отводится один последний байт, который равен нулю:

200.160.160.0 Кроме того, понятие номера сети применимо только к IP адресам классов A, B и С. Для классов D и E понятие номера сети не применимо, и сказать какой номер сети у IP адресов, таких как 230.230.230.230 и 240.240.240.240 невозможно, первый из этих адресов является номером какой­то группы, а второй просто IP адрес из зарезервиро­ ванного диапазона и не обладает какой­либо структурой .

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

6. IP адресация «Широковещательные адреса (Broadcast)». Это адреса, в которых все биты соответствующие номеру узла равны 1. Такие IP адреса, адреса с максимально допустимым значением номера узла, используются при необходимости отправить какие­то данные всем узлам определенной сети .

Рисунки 1–42 и 1–43 показывают описание широковеща­ Рисунок 1–42. Описание широковещательных адресов в RFC–1700 Рисунок 1–43. Описание широковещательных адресов в RFC–1122 Урок №1 тельных адресов в RFC–1700 и RFC–1122 (в этих документах с помощью записи «–1» отписываются «все 1») .

Например, возьмем IP адрес 1.1.1.1, какой сети он принадлежит? Как мы уже определили ранее, этот IP адрес принадлежит сети 1.0.0.0. Для того, чтобы отправить данные всем узлам этой сети, нам понадобится широко­ вещательный адрес этой сети, адрес, все биты которого, отвечающие за номер узла, равны «1» .

Исходный номер сети:

00000001.0000000.0000000.0000000 (1.0.0.0) Широковещательный адрес данной сети (сети, кото­ рой принадлежит IP адрес 1.1.1.1):

00000001.11111111.11111111.11111111 (1.255.255.255) Так как при работе с классами, граница между но­ мером сети и номером узла проходит между байтами, то для решения этой задачи переводить IP адрес в дво­ ичную систему исчисления не обязательно, просто те байты IP адреса, которые отвечают за номер узла приравниваем 255:

Например, широковещательный адрес для сети, ко­ торой принадлежит IP адрес 200.200.200.200, может быть получен следующим образом:

Исходный IP адрес (класс C):

200.200.200.200 Широковещательный адрес сети, которой принадле­ жит этот IP адрес:

200.200.200.255 Обратите внимание на то, что совершенно не любой IP адрес, заканчивающийся на «255» является широкове­

6. IP адресация щательным. Например, IP адрес 1.1.255.255, не является широковещательным, так как данный IP адрес принад­ лежит классу A, и под номер узла в нем отводится три последних байта:

1.1.255.255 Очевидно, не все батйы соответствующие номеру узла равны 255. Широковещательным адресом для данной сети будет:

1.255.255.255 Или другой пример, IP адрес 160.160.160.255 тоже не является широковещательным, так как данный IP адрес принадлежит классу B, и под номер узла в нем отводится два последних байта:

160.160.160.255 Очевидно, не все батйы соответствующие номеру узла равны 255. Широковещательным адресом для данной сети будет:

160.160.255.255 В свою очередь IP адрес 200.160.160.255 уже является широковещательным, так как данный IP адрес принад­ лежит классу C, и под номер узла в нем отводится один последний байт, который равен «255»:

200.160.160.255 Кроме того, понятие широковещательного адреса, как и номера сети, применимо только к IP адресам классов A, B и С. Для классов D и E понятие номера широкове­ щательного адреса не применимо, и такие IP адреса, как 230.255.255.255 и 240.255.255.255 не являются широко­ вещательными, несмотря на то, что содержат большое количество байт, равных «255» .

Урок №1 Таким образом, широковещательные адреса могут встречаться только в качества адреса получателя IP пакета, и не могут использоваться для адресации интерфейсов (так как в этом случае, попытка отправить данные такому интерфейсу приведет к отправке этих данных всем узлам сети, которой принадлежит данный интерфейс) .

Примечание: На основании информации о том, что такое номер сети и широковещательный адрес можно сделать следующий вывод — в любой сети есть два адреса, которые нельзя назначать интерфейсам. То есть в сетях класса C из доступных 2=256 адресов можно использовать 254 (256–2), в сетях класса B из доступных 21=16384 адресов можно использовать 16382 (16384–2) и в сетях класса A из доступных 22=16777216 адресов можно использовать 16777214 (16777216–2) .

Например, для IP адреса:

192.168.1.100

Номером сети является:

192.168.1.0 Широковещательным адресом является 192.168.1.255

Разрешенные адреса для присвоения интерфейсам:

192.168.1.1 192.168.1.2.. .

192.168.1.254 «Неопределенный адрес», адрес 0.0.0.0 — данный адрес может использоваться узлом, которому необходимо от­

6. IP адресация править IP пакеты, но никакого IP адреса у этого узла по каким­то причинам нет. Такая ситуация, например, может возникнуть, например, при автоматизации получении IP адресов с помощью протокола DHCP .

Так как в начальный момент времени у узла нет ни­ какого IP адреса, а для того что бы его получить необ­ ходимо обменяться рядом пакетов с DHCP сервером, и тут возникает вопрос, что поставить в качестве адреса отправителя? Указать какой­то определенный адрес в этот момент нельзя, и поэтому в поле адрес отправителя за­ писывается адрес 0.0.0.0, указывающий на то, что в дан­ ный момент у узла нет IP адреса. Фактически, такой IP адрес разрешено использовать только при работе с DHCP сервером, использование такого адреса отправителя при работе с другими сервисами недопустимо (рисунок 1–44) .

Рисунок 1–44. Описание неопределенного адреса в RFC–1122 «Ограниченный широковещательный адрес (Limited Broadcast)». Это адрес, в котором все биты равны 1 или адрес 255.255.255.255 в точечно десятичном формате .

Урок №1 Это единственный IP адрес класса E (четыре старших бита равны «1111»), который хоть как­то используется. Чем отличается ограниченный широковещательный адрес от обычного широковещательный адрес? Чем он ограничен?

Обратите внимание на то, что в обычном широко­ вещательном адресе можно указать определенный но­ мер сети, как своей сети, так и любой другой. То есть узел 192.168.1.100, принадлежащий сети 192.168.1.0, мог широковещательно предавать данные как в свою сеть, указав в качестве адреса получателя 192.168.1.255, так и в любую другую, например, для передачи данных всем узлам сети 172.16.0.0 необходимо указать в качестве адреса получателя 172.16.255.255. Несмотря на то, что этот адрес является широковещательным, в нем есть номер сети и маршрутизаторы, которые анализирую только сетевую Рисунок 1–45. Описание ограниченного широковещательного адреса в RFC–1700

6. IP адресация Рисунок 1–46. Описание ограниченного широковещательного адреса в RFC–1122 часть IP адреса смогут передать данные согласно таблице маршрутизации .

При работе с ограниченным широковещательным адресом, у отправителя нет возможности указать адрес сети, и поэтому отправка будет ограничена только сетью отправителя, и никогда не маршрутизируются (рисун­ ки 1–45 и 1–46) .

Может показаться, что наличие ограниченного ши­ роковещательного адреса является избыточным, ведь широковещательно отправить данные в свою сеть можно и с помощью обычного широковещательного адреса. Но для того что бы это сделать, нужно как минимум знать Урок №1 номер сети, в которой находится узел. В некоторых слу­ чаях у узла может этой информации не быть, и вот тогда, узел, даже не обладая информацией о том, в какой сети он находится, все равно сможет передать данные всем узлам текущей сети с помощью ограниченного широ­ ковещательного адреса. Кроме того, только с помощью этого адреса DHCP сервер может передавать данные узлу в процессе передачи ему IP адреса и других параметров, пока у узла еще нет IP адреса .

Таким образом, ограниченный широковещательный адрес, как и обычные широковещательные адреса, может встречаться только в качества адреса получателя IP пакета, и не может использоваться для адресации интерфейсов .

Примечание: Широковещательные адреса и их применение описано в RFC–919. Обратите внимание, использование широковещательных адресов совсем не противоречит тому, что мы говорили в самом начале урока, о том, что широковещательный трафик может затопить всю сеть. Составная сеть состоит из множества независимых сетей, связанных между собой маршрутизаторами, каждая из которых имеет свой номер на сетевом уровне .

Маршрутизаторы, в отличии от коммутаторов, передают широковещательные кадры точно также, как и направленные, только в ту сеть, которой они предназначены, а не затапливают всю составную сеть. И только когда пакет будет доставлен в сеть получателя, он будет отправлен всем узлам этой сети средствами канального уровня (коммутаторами) .

6. IP адресация Средствами IP, как и любого другого протокола сете­ вого уровня, передать данные сразу всем узлам всех сетей составной сети невозможно .

Сеть класса A 0.0.0.0 (диапазон адресов от 0.0.0.0 до 0.255.255.255) — Вся данная сеть является зарезервиро­ ванной, и на сегодняшний день фактически практически полностью не используется. Из всех 16 миллионов адресов данного диапазона (22=16777216) используется только один адрес — первый адрес диапазона, 0.0.0.0, и он тоже является особым .

Данный диапазон планировалось использоваться в тех случаях, когда узел обладал информации о части IP адреса «номер узла», но не обладал информацией о том, какой сети он принадлежит. В этом случае он мог отправить специальный запрос (серверу или маршрутизатору), и в качестве адреса отправителя указать только ту часть IP адреса, которую он знал, а вместо номера сети записать нули (рисунок 1–47) .

Рисунок 1–47. Описание сети 0.0.0.0 в RFC–1122 Таким образом, адреса, начинающиеся с нуля, мо­ гут встречаться только в качества адреса отправителя IP пакета, и не могут использоваться для адресации интерфейсов .

Урок №1 Сеть класса A 127.0.0.0 (диапазон адресов от127.0.0.0 до 127.255.255.255), Loopback или заглушка — Вся данная сеть является зарезервированной, и пакеты, отправлен­ ные на любой из этих адресов, обрабатываются стеком TCP/IP особым образом. Обычно, все сгенерированные узлом пакеты передаются драйверу канального уровня для формирования кадра и отправки его в линию связи .

Если же в качестве адреса получателя указывается адрес диапазона Loopback, то вместо передачи этого пакета драйверу канального уровня, эмулируется его прием, то есть данный пакет из буфера отправки сетевого уровня перемещается не в буфер отправки канального уровня, а в буфер приема сетевого уровня (рисунок 1–48). Мало того, чтобы работать с данным диапазоном, вам даже не обязательно обладать каким­либо сетевым интерфейсом .

Рисунок 1–48.

Описание сети 127.0.0.0 в RFC–1122 Для чего такие адреса могут использоваться? Су­ ществует несколько возможных применений адресов данного диапазона:

Проверка работы стека TCP/IP. Если у вас есть воз­ можность взаимодействовать с любым адресом из сети 127.0.0.0 (кроме номера сети и широковещательного

6. IP адресация адреса), то вся уровней от прикладного до сетевого функционирует корректно .

Если вам необходимо обратиться к какому­либо сервису, находящемуся на вашем компьютере. Это не сложно сделать если вы используете статическую адресацию, и знаете (помните) свой IP адрес. А что делать если ваш компьютер получает адрес динамически и каждый раз после перезагрузки он может изменяться? Какой адрес тогда вводить в строке адреса или указывать в конфигурации клиентского приложения. В этом слу­ чае вам придет на помощь адрес диапазона Loopback .

Ведь отправка данных на адреса этого диапазона тут же приведет к получению этих данных, как будто они поступили к вам из сети .

Таким образом, адреса сети 127.0.0.0 не могут использо­ ваться для адресации интерфейсов (так как в этом случае, попытка отправить данные такому интерфейсу приведет к возврату этих данных приложению на узле отправителе) .

Так как IP пакеты отправляемые на адреса сети 127.0.0.0 фактически не доходят до сетевого интерфейса, они не могут встречаться в качестве адреса отправителя и адреса получателя в заголовках пакетов, передаваемых в сети (рисунок 1–49) .

Примечание: Обратите внимание на то, что RFC–6890 говорит о том, что существую некоторые исключения, позволяющие использовать адреса данного диапазона в некоторых специфических ситуациях, но все эти исключения связаны некоторыми специфическими аспектами работы Урок №1 некоторых технологий, и глобально не меняют правила работы с адресами сети 127.0.0.0 .

Рисунок 1–49. Описание сети 127.0.0.0 в RFC–6890

–  –  –

6.4. Диапазоны IP адресов, обладающие специальным назначением в сети Интернет Кроме выше описанных особых IP адресов, обладающих специальным назначением, и использование которых для адресации интерфейсов узлов и сетевого оборудования запрещено, есть еще ряд специальных диапазонов адресов, обладающих специальным назначением в сети Интернет .

Эти специальные диапазоны адресов сети Интернет, в от­ личии от особых IP адресов, могут использоваться для адресации узлов и вне сети Интернет они работают как и любые другие допустимые для адресации диапазоны, но в рамках сети Интернет данные диапазоны обраба­ тываются особым образом. Эти специальные диапазоны адресов сети Интернет перечислены в RFC–6890 и де­ тально описаны в отдельных документах RFC. На самом деле мы подробно сейчас поговорим только ободном из этих диапазонов, а также просто кратко перечислим не­ которые остальные, так как в ближайшее время большая часть этих диапазонов нам не понадобятся .

Специальными диапазонами адресов сети Интернет являются:

«Частные сети» (Private–Use Networks), описаны RFC–1918. Суть этих адресов заключается в следующем .

Допустим, вы строите сеть своей компании.

У вас есть два варианта пути по организации взаимодействия ваших узлов с сетью Интернет:

Если вы хотите, чтобы узлы вашей сети был полно­ ценными участниками сети Интернет, вам нужно обратиться к провайдеру и купить (взять в аренду) у него диапазон адресов (для таких адресов исполь­ Урок №1 зуется термин «белые адреса»). При этом провайдер пропишет на своих маршрутизаторах маршрут к вашей сети и при необходимости передаст эту информацию маршрутизаторам магистрали Интернет. Таким образом любой узел сети интернет сможет взаимодействовать с узлами вашей сети .

Если вы не хотите, чтобы узлы вашей сети был полно­ ценными участниками сети Интернет, то у вас также два варианта решения задачи адресации вашей сети:

Взять произвольный диапазон адресов. При этом ваша сеть не сможет взаимодействовать с сетью Ин­ тернет, так как та сеть, адреса которой вы назначили свои узлам, с большой вероятностью может уже при­ сутствовать в сети Интернет, и любой пакет, который должен был попасть в вашу сети, согласно таблицам маршрутизации уйдет в другом направлении (ведь провайдер в  этом случае не знает, какие адреса вы используете) .

Взять диапазон адресов из одной из сетей, которые были зарезервированы для подобного использова­ ния — одну из «Частных сетей». Эти диапазоны ре­ комендованы для использования в тех случаях, когда вы строите сеть, которая потенциально может быть связана с  Интернет, но легальных, полученных от провайдера адресов у вас нет (для этих диапазонов адресов используется термин «серые адреса») .

Фактически, оба последних варианта не слишком сильно отличаются друг от друга, в обоих случаях сеть без специальных технологий, которые мы изучим позд­

6. IP адресация нее в этом курсе, не сможет взаимодействовать с сетью Интернет. Использование диапазонов «Частных сетей»

в данном случае является не больше чем рекомендацией, признаком «хорошего тона» (RFC­1918 обладает статусом «BEST CURRENT PRACTICE»), потому как маршрутиза­ торы Интернет обладают специальными настройками, которые определенным образом оптимизируют работу с этими диапазонами (более подробно о технологиях взаи­ модействия частных сетей с сетью Интернет и настройках маршрутизаторов сети Интернет, связанных с ними, мы обсудим в одном из следующих уроков данного курса) .

Диапазонами частных сетей являются:

Одна сеть класса A, около 16 миллионов адресов:

10.0.0.0 (10.0.0.0 — 10.255.255.255) 16 сетей класса B, 65536 адресов в каждой:

172.16.0.0 (172.16.0.0 — 172.16.255.255) 172.17.0.0 (172.17.0.0 — 172.17.255.255).. .

172.30.0.0 (172.30.0.0 — 172.30.255.255) 172.31.0.0 (172.31.0.0 — 172.31.255.255) 256 сетей класса C, 256 адресов в каждой:

192.168.0.0 (192.168.0.0 — 192.168.0.255) 192.168.1.0 (192.168.1.0 — 192.168.1.255).. .

192.168.254.0 (192.168.254.0 — 192.168.254.255) 192.168.255.0 (192.168.255.0 — 192.168.255.255) Адреса этих диапазонов вы можете совершенно без­ опасно использовать для адресации узлов своей сети не беспокоясь о том, что они вызовут какие­либо конфлик­ Урок №1 ты при подключении вашей сети к сети Интернет. Эти сети являются немаршрутизируемыми в сети Интернет, провайдеры просто отбрасывают любые пакеты, в адре­ са отправителя или получателя которых стоит адрес из диапазонов частных сетей. Почему так сделано, и каким образом настроить взаимодействие частных сетей с сетью Интернет мы разберем позже .

Сеть «Link Local», описана в RFC–3927.

Используется как часть процесса динамического получения IP адреса узлом:

169.254.0.0 (169.254.0.0 — 169.254.255.255) Тестовые сети («Test-Net»), описаны в RFC–5737 .

Рекомендована для использования в учебных примерах и документации:

192.0.2.0 (192.0.2.0 — 192.0.2.255) 198.51.100.0 (198.51.100.0 — 198.51.100.255) 203.0.113.0 (203.0.113.0 — 203.0.113.255) Также в RFC–6890 есть и другие диапазоны IP адресов, обладающих специальным назначением в сети Интер­ нет, но акцентироваться внимание на них мы сейчас не будем, так как в ближайшее время эта информация нам не понадобится .

6.5. Правила назначения IP адресов Теперь, когда у нас уже есть определенная база зна­ ний о IP адресации мы можем сформулировать правила назначения IP адресов:

Каждому интерфейсу устройства (узла, маршрутизатора) необходимо присвоить IP адрес. Если

6. IP адресация у устройства два интерфейса, или более, то каждому из них должен быть назначен IP адрес. То есть IP адреса назначаются не узлам, а интерфейсам .

Назначаемые IP адреса не должны дублироваться, они должны быть уникальны. Адрес это уникальный идентификатор интерфейса устройства в сети .

Если интерфейсы устройств находятся в одной канальной сети, то они должны принадлежать одной IP сети .

Если интерфейсы устройств находятся в разных канальных сетях, то они должны принадлежать разным IP сетям .

Первые два правила достаточно очевидны и допол­ нительных комментариев не требуют .

Третье и четвертое правило не так очевидны, но крайне важны для возможности коммуникаций между узлами .

Какая информация есть у узла, в тот момент, когда он соби­ рается отправить какие­либо данные другому узлу? У него есть, фактически, только два IP адреса — собственный IP адрес (адрес узла отправителя), и адрес узла получателя .

Никакой информации о принадлежности к какой­либо канальной сети узла получателя у узла отправителя нет .

Может возникнуть вопрос: «А какая разница узлу отпра­ вителю, в какой канальной сети находится получатель?» .

А разница вот в чем:

Если узел получатель находится в одной канальной сети с узлом отправителем, то узел отправитель может сформировать кадр канального уровня, адресованный непосредственно получателю, который будет ему до­ Урок №1 ставлен оборудованием канального уровня (например, коммутатором, для сетей Ethernet) .

Если узел получатель и узел отправитель находятся в разных канальных сетях, то узел отправитель дол­ жен сформировать кадр который оборудованием канального уровня будет передан маршрутизатору, что бы тот, в свою очередь, передал пакет, содер­ жащийся в  кадре согласно своей таблице марш­ рутизации .

Таким образом, поведение узла отправителя сильно зависит от того, в какой сети находится узел получатель, в той же сети что и отправитель, или в другой.

Так как у узла отправителя нет явной информации о принадлежно­ сти узла получателя какой­то канальной сети, он делает об этом косвенные выводы на основании IP адресов:

Если узел получатель находится в одной IP сети с узлом отравителем, то считается что узлы находятся и в одной канальной сети. Как следствие пакет мо­ жет быть передан получателю средствами канального уровня, без задействования маршрутизатора .

Если узел получатель и узел отравитель находятся в разных IP сетях, то считается что узлы находятся и в разных канальных сетях. Как следствие пакет должен быть передан маршрутизатору для маршру­ тизации его в сеть получателя .

Если мы нарушим эти правила, то могут произойти следующие:

Если мы узлам, находящимся в разных канальных сетях, назначим одну IP сеть, то узел отправитель будет

6. IP адресация передавать данные узлу получателю без задействования маршрутизатора, как будто он находится с узлом полу­ чателем в одной канальной сети. В результате узел полу­ чатель не получит отправляемые ему пакеты, так как они не выйдут за рамки канальной сети отправителя .

Если мы узлам, находящимся в одной канальной сети, назначим разные IP сети, то узел отправитель будет передавать данные узлу получателю через марш­ рутизатор, как будто он находится с узлом получателем в разных канальных сетях. В результате, при соответ­ ствующей настройке маршрутизатора, отправляемые пакеты смогут дойти до узла получателя, но только после того, как дважды пересекут канальную сеть (от узла отправителя к маршрутизатору, и от маршрутизатора, к узлу получателю), то есть дважды займут пропуск­ ную способность каналов связи. То есть в этом случае коммуникации теоретически возможны, но работа сети будет не эффективна .

Примечание: В некоторых случаях можно в рамках одной канальной сети назначать разные IP сети .

Такая ситуация называется «локальная маршрутизация». Также в некоторых случаях возможно назначение узлам разных канальных сетей IP адресов из одной сети. Но такое решение требует конфигурации дополнительных сетевых протоколов .

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

Урок №1 Пример 1 .

У узла отправителя и узла получателя следующие IP адреса:

Узел отправитель обладает IP адресом:

192.168.1.1 Данный IP адрес принадлежит классу C, и сеть, ко­ торой принадлежит IP адрес отправителя следующая:

192.168.1.0

Узел получатель обладает IP адресом:

192.168.1.100 Данный IP адрес принадлежит классу C, и сеть, кото­ рой принадлежит IP адрес получателя следующая:

192.168.1.0 IP сеть отправителя (192.168.1.0) совпадает с IP сетью получателя (192.168.1.0) и по этому данные узлы должны быть в одной канальной сети, так как передача данных будет происходить без использования маршрутизатора, средствами канального уровня .

Пример 2 .

У узла отправителя и узла получателя следующие IP адреса:

Узел отправитель обладает IP адресом:

192.168.1.1 Данный IP адрес принадлежит классу C, и сеть, ко­ торой принадлежит IP адрес отправителя следующая:

192.168.1.0

Узел получатель обладает IP адресом:

172.16.1.100

6. IP адресация

Данный IP адрес принадлежит классу B, и сеть, кото­ рой принадлежит IP адрес получателя следующая:

172.16.0.0 IP сеть отправителя (192.168.1.0) не совпадает с IP сетью получателя (172.16.0.0) и по этому данные узлы должны быть в разных канальных сетях, объединенных маршрутизатором, передача данных будет происходить через маршрутизатор, который должен будет определить маршрут к сети получателя .

Урок №1

7. Пример назначения IP адресов в составной сети Разобравшись с правилами назначения IP адресов, давайте рассмотрим пример назначения IP адресов в со­ ставной сети на их базе .

Допустим, у вас есть предприятие, обладающее сетевой топологией, показанной на рисунке 1–50 .

Рисунок 1–50. Сеть организации для примера адресации

Предприятие располагается в двух физически раз­ несенных точках (разных странах, городах или просто в разных местах города) .

В главном офисе функционирует два подразделения, которые, для удобства управления трафиком, были вы­ делены в две изолированные канальные среды, и объе­ динены между собой маршрутизатором:

Отдел 1,25 узлов Отдел 2,70 узлов

7. Пример назначения IP адресов в составной сети Удаленный филиал построен на базе одной канальной среды:

Отдел 3,15 узлов Сеть удаленного филиала соединяется с сетью глав­ ного офиса с помощью глобального канала связи .

Прежде чем переходить непосредственно к адресации, необходимо ответить на один вспомогательный вопрос:

«Сколько всего сетей (канальных сетей) присутствует в данной составной сети?». Ответ на этот вопрос крайне важен для решения задачи адресации сети, ведь каждой отдельной канальной сети будет необходима отдельная IP сеть. На первый взгляд может показаться что в данной составной сети присутствует три канальных сети — сети отдела 1, отдела 2 и отдела 3. На самом деле это не так, в данной составной сети четыре канальных сети, четвер­ той канальной сетью является сеть глобального канала связи, как показано на рисунке 1–51:

Рисунок 1–51. Канальные сети, входящие в составную сеть организации Сеть отдела 1 Сеть отдела 2 Сеть отдела 3 Урок №1 Сеть глобального канала связи (WAN)Зная количество канальных сетей можно сказать сколько IP сетей нам будет необходимо для адресации этой составной сети: так как в составной сети присутствует четыре канальных сети, то и для ее адресации нам понадобится четыре IP сети .

Следующий вопрос, на который необходимо отве­ тить: «Сколько IP адресов нам необходимо для адресации каждой из сетей?». Ответ на этот вопрос необходим для выбора оптимальных по объему диапазонов адресации, так как пока что мы изучили только технику классов, то ответ на этот вопрос необходим для возможность выбора класса, объема сетей которого достаточно для адресации сетей организации .

В Отделе 1 находится 25 узлов, для адресации которых необходимо 25 IP адресов, также в этой канальной сети будет находится еще и интерфейс маршрутизатора R1.1, а также нельзя забывать о том, что первый и последний IP адреса любой сети запрещены к адресации узлов — номер сети и широковещательный адрес Таким образом, для адресации сети Отдела 1 необходима IP сеть объёмом не меньше чем 25+1+2=28 IP адресов .

В Отделе 2 находится 70 узлов, для адресации которых необходимо 70 IP адресов, также в этой канальной сети будет находится еще и интерфейс маршрутизатора R1.2, а также нельзя забывать о том, что первый и последний IP адреса любой сети запрещены к адресации узлов. Таким образом, для адресации сети Отдела 2 необходима IP сеть объёмом не меньше чем 70+1+2=73 IP адреса .

В Отделе 3 находится 15 узлов, для адресации которых необходимо 15 IP адресов, также в этой канальной сети

7. Пример назначения IP адресов в составной сети будет находится еще и интерфейс маршрутизатора R2.1, а также нельзя забывать о том, что первый и последний IP адреса любой сети запрещены к адресации узлов. Таким образом, для адресации сети Отдела 3 необходима IP сеть объёмом не меньше чем 15+1+2=18 IP адреса .

В глобальном канале связи (WAN) нет узлов, но в нем находится два интерфейса маршрутизаторов – R1.3 и R2.2 .

Для этой сети также нельзя забывать о том, что первый и последний IP адреса любой сети запрещены к адресации узлов. Таким образом, для адресации сети глобального канала связи необходима IP сеть объёмом не меньше чем 2+2=4 IP адреса .

Следующий вопрос, на который необходимо ответить:

«Сети какого класса подойдут для адресации данных се­ тей?». Нам необходимо 4 сети c количеством IP адресов не менее: 28, 73, 18 и 4. С одной стороны, так как данная сеть не связана с сетью Интернет, мы можем выбрать абсолютно любые IP сети для адресации. Например, мы можем выбрать любые четыре сети класса A, например:

1.0.0.0 2.0.0.0 3.0.0.0 4.0.0.0 Но с другой стороны, на сегодняшний день трудно представить себе сеть которая еще не подключена и ни­ когда не будет подключена к сети Интернет. Поэтому при выборе IP сетей для адресации составной сети компании все же лучше воспользоваться рекомендациями RFC–1918, и воспользоваться диапазонами частных сетей. Кроме того, очевидно, максимально эффективно для каждой из этих сетей Урок №1 подходят сети класса C (которые могут адресовать до 254­х узлов). Исходя из выше перечисленных соображений для адресации данной составной сети выберем следующие сети:

192.168.0.0 (Сеть отдела 1) 192.168.1.0 (Сеть отдела 2) 192.168.2.0 (Сеть отдела 3) 192.168.3.0 (Сеть глобального канала связи) Зачастую, в сетях присутствуют различные типы устройств, требующих отдельного IP адреса:

Узлы Серверы Маршрутизаторы Управляемые коммутаторы Сетевые принтеры И т.д .

Поэтому для удобства администрирования выгодно не выдавать IP адреса всем этим устройствам хаотически, а формализовать простые правила, в рамках которых за­ крепить за определенным типом устройств свой диапазон адресов. Каких­то жестких правил и даже рекомендаций, стандартизующих подходы в решении этого вопроса нет .

Поэтому вы можете придумать любую удобную для вас схему, например:

В каждой сети 10 младших адресов зарезервировать под сетевое оборудование, а узлы начинать адресовать, скажем с 11­го адреса класса .

Узлы начинать адресовать с младших адресов, а для оборудования зарезервировать 10 старших адресов класса .

7. Пример назначения IP адресов в составной сети Давайте в основу системы адресации положим второй набор правил — для узлов будем использовать первые разрешенные адреса каждого из классов, а для оборудо­ вания будем использовать старшие адреса каждого из классов. Что у нам получится в результате:

Сеть отдела 1:

Номер сети (запрещен для адресации интерфейсов):

192.168.0.0 Узлы получат первые 25 разрешенных IP адресов сво­ ей сети:

192.168.0.1 192.168.0.2.. .

192.168.0.25 Интерфейс маршрутизатора R1.1 получит старший

IP адрес своей сети:

192.168.0.254 Широковещательные адрес сети (запрещен для адре­ сации интерфейсов):

192.168.0.255

Сеть отдела 2:

Номер сети (запрещен для адресации интерфейсов):

192.168.1.0 Узлы получат первые 70 разрешенных IP адресов сво­ ей сети:

192.168.1.1 192.168.1.2.. .

192.168.1.70 Урок №1 Интерфейс маршрутизатора R1.2 получит старший

IP адрес своей сети:

192.168.1.254 Широковещательные адрес сети (запрещен для адре­ сации интерфейсов):

192.168.1.255

Сеть отдела 3:

Номер сети (запрещен для адресации интерфейсов):

192.168.2.0 Узлы получат первые 15 разрешенных IP адресов сво­ ей сети:

192.168.2.1 192.168.2.2.. .

192.168.2.15 Интерфейс маршрутизатора R2.1 получит старший

IP адрес своей сети:

192.168.2.254 Широковещательные адрес сети (запрещен для адре­ сации интерфейсов):

192.168.2.255

Сеть глобального канала связи:

Номер сети (запрещен для адресации интерфейсов):

192.168.3.0 Узлы отсутствуют и первые IP адреса сети останутся неиспользованными Интерфейс маршрутизатора R1.3 получит старший

IP адрес своей сети:

192.168.3.254

7. Пример назначения IP адресов в составной сети Интерфейс маршрутизатора R2.2 получит предпо­ следний IP адрес своей сети:

192.168.3.253 Широковещательные адрес сети (запрещен для адре­ сации интерфейсов):

192.168.3.255 Полученная карта адресации показана на рисунке 1–52 .

Рисунок 1–52.

Результат адресации составной сети В результате проведения данной работы по адреса­ ции сети мы не нарушили ни одного правила адресации узлов, описанных выше:

Каждому интерфейсу устройства (узла, маршру­ тизатора) необходимо присвоить IP адрес. Мы при­ своили адреса всем интерфейсам всех устройств сети .

В данном примере предполагается что у узлов по од­ ному интерфейсу, поэтому каждый из них обладает одним IP адресом, но у маршрутизаторов несколько интерфейсов, и каждому из них назначен отдельный

IP адрес:

Урок №1 R1 192.168.0.254 192.168.1.254 192.168.3.254 R2 192.168.2.254 192.168.3.253 Назначаемые IP адреса не должны дублироваться, они должны быть уникальны. Используемые адреса не дублируются. В каждой сети узлам были назначены младшие IP адреса, а маршрутизаторам — старшие .

Если интерфейсы устройств находятся в одной канальной сети, то они должны принадлежать одной IP сети.

Все интерфейсы, принадлежащие одной ка­ нальной сети принадлежат и одной IP сети:

Сеть отдела 1 использует IP сеть:

192.168.0.0

Сеть отдела 2 использует IP сеть:

192.168.1.0

Сеть отдела 3 использует IP сеть:

192.168.2.0

Сеть глобального канала связи использует IP сеть:

192.168.3.0 Если интерфейсы устройств находятся в разных канальных сетях, то они должны принадлежать разным IP сетям. Все интерфейсы, принадлежащие разным канальным сетям принадлежат и разным IP сетям .

7. Пример назначения IP адресов в составной сети Таким образом, в процессе адресации мы на топологию сети наложили такую IP адресацию, которая однозначно отвечает на вопрос — «Кто с кем в одной канальной сети, кто с кем в разных канальных сетях?» .

Рассмотренный выше набор правил является базовым для присвоения адресов в сети любого масштаба и схемы подключения канального уровня. В случае их несоблю­ дения работа сетевого уровня может быть нарушена, так как узел отправитель при анализе IP адреса получателя не мог бы принять верное решение о его месте нахождения .

Урок №1

8. Ограничения и недостатки классовой системы IP адресов Как мы уже говорили выше, у любой технологии есть порог масштабируемости, и теперь, на базе адресованной нами сети мы можем разобрать, в чем заключаются про­ блемы техники классов, какие у нее недостатки, ограни­ чивающие ее масштабируемость .

Обратите внимание на то, что независимо от размера сети в нашем примере, все они получили сети класса C:

Сеть отдела 1 требует 28 IP адресов, а получает 256 — используется 10,93% адресного пространства выде­ ленной сети .

Сеть отдела 2 требует 73 IP адреса, а получает 256 — используется 28,51% адресного пространства выде­ ленной сети .

Сеть отдела 3 требует 18 IP адресов, а получает 256 — используется 7% адресного пространства выделенной сети .

Сеть глобального канала связи требует 4 IP адреса, а получает 256 — используется 1,56% адресного про­ странства выделенной сети .

То есть классовый метод, по сравнению с подходом RFC–760 дает определенную гибкость, но у нас всего три варианта размера сети:

8. Ограничения и недостатки классовой системы IP адресов Класс A — 22= 16777216 .

Класс B — 21=65536 .

Класс C — 2=256 .

И никаких промежуточных значений. А что если нам нужна сеть на 300 IP адресов? Сети класса C уже недоста­ точно, значит надо взять сеть класса B, и мы уже получим не 300, а 65536 IP адресов, и использоваться будут только 0,45% адресного пространства сети .

Еще хуже, если нам надо будет сеть на 70000 IP адре­ сов. Сети класса B уже недостаточно, значит надо взять сеть класса A, и мы уже получим не 70000, а 16777216 IP адресов, и использоваться будет еще меньше адресного пространства сети .

Может возникнуть вопрос, а можем ли мы не меняя логики, просто взять и использовать свободные IP адреса в других канальных сетях? Ведь в принципе, 28+73+18+4=123, то есть для адресации всей составной сети, используемой для демонстрации примера адресации, хватает IP адресов одной сети класса C, и еще даже лишние остаются. Нет, без изменения логики так делать нельзя, так как мы нарушим одно из важнейших правил адресации — интерфейсы устройств находятся в разных канальных сетях, то они должны принадлежать разным IP сетям .

Кроме того, из всего адресного пространства IP адре­ сации выпадают несколько огромных диапазонов, адреса которых нельзя использовать для адресации узлов:

Сеть 0.0 .

0.0, класса A — около 16 миллионов IP адресов .

Сеть 127.0 .

0.0, класса A — около 16 миллионов IP адресов .

Почти весь класс E — около 256 миллионов IP адресов .

Урок №1

Часть IP адресов нельзя использовать в интернет:

Частные сети .

Сеть «Link­Local» .

и некоторые другие .

Исходя из всего этого можно сформулировать следу­ ющие недостатки классовой системы IP адресов:

Недостаточная гибкость при выборе размера сети Сомнительная необходимость сетей классов B и A, сети с таким огромным количеством узлов малове­ роятны на практике Огромная часть адресного пространства, половина всех адресов, выделена под класс A, сомнительной необходимости Часть адресов класса A и почти весь класс E нельзя использовать для адресации Не все IP адреса классов A, B и C разрешены к ис­ пользованию в сети Интернет Нет методов деления сети на подсети Все эти недостатки привели к тому, что реально ис­ пользуемое адресное пространство, во­первых, не так уж и велико, а во­вторых используется не рационально .

Таким образом достаточно быстро возникла необхо­ димость в более гибком методе адресации, который позво­ лил бы решить или хотя бы смягчить все эти проблемы:

Позволил более эффективно адресовать сети различ­ ного размера Позволил более эффективно использовать диапазоны классов A и B

8. Ограничения и недостатки классовой системы IP адресов И главное  — был совместим с  уже существующей классовой технологией Подход, удовлетворяющий данным требованиям был описан в RFC–917 и RFC–950. Этот подход позволял делить классовые сети на более мелкие части, на так называемые «подсети», с целью более гибкого использования адрес­ ного пространства, с помощью использования нового элемента в IP адресации — c помощью маски (маски подсети, subnet mask) .

Эту технику, технику масок, технику деления сетей на подсети с помощью маски мы начнем изучать в сле­ дующем уроке .

Урок №1

9. Домашнее задание Для закрепления изученного материала в этом уроке выполните несколько заданий .

Задание 1. Задание на закрепление основ таблиц маршрутизации .

–  –  –

Составьте таблицы маршрутизации для сети, отобра­ женной на рисунке 1–53. Шаблон таблицы маршрутиза­ ции приведен в таблице 1–52. Для начала, сформируйте полные таблицы маршрутизации для всех маршрутиза­ торов, содержащие маршруты ко всем сетям входящих в данную составную сеть, а затем, оптимизируйте их с помощью использования маршрута по умолчанию .

Сделайте выводы о том, где использование маршрута по умолчанию позволило упростить таблицы маршру­ тизации больше всего .

Таблица 1–52. Шаблон таблиц маршрутизации для задания на закрепление основ таблиц маршрутизации Таблица маршрутизации маршрутизатора R… Номер сети Адрес шлюза Метрика Задание 2. Задание на закрепление быстрого перевода чисел из двоичной системы исчисления в десятичную и наоборот .

Переведите IP адреса из двоичной системы исчисле­ ния в двоичную и определите какому классу принадле­ жит каждый из них (на основе двоичного представления адресов), результат занесите в таблицу 1–53 .

Таблица 1–53. Задание на закрепление быстрого перевода чисел из двоичной системы исчисления в десятичную

–  –  –

Переведите IP адреса из десятичной системы исчисле­ ния в двоичную и определите какому классу принадлежит каждый из них (на основе десятичного представления адресов), результат занесите в таблицу 1–54 .

Таблица 1–54. Задание на закрепление быстрого перевода чисел из десятичной системы исчисления в двоичную

–  –  –

Задание 3. Задание на закрепление классовой системы адресации и особых IP адресов .

Заполните пустые поля таблиц 1–55, 1–56, 1–57 и 1–58 .

Таблица 1–55. Определите какому классу принадлежат данные адреса и запишите номера соответствующих сетей (для тех IP адресов, которые не являются номерами сетей сами по себе)

–  –  –

Таблица 1–56. Определите тип IP адреса (номер сети или номер узла) и запишите номера сетей для тех IP адресов, которые являются номерами узлов (там, где это возможно)

–  –  –

Таблица 1–57. Отметьте, чем являются IP адреса из списка — какой адрес является допустимым адресом для адресации узла, а какой является широковещательным адресом

–  –  –

Таблица 1–58. Отметьте, какие IP адреса из списка являются недопустимыми для адресации узла, а также укажите причину, почему этот адрес не может быть использован для адресации узлов Допустимый Недопустимый Причина IP адрес адрес адрес недопустимости 0.0.0.1 1.2.3.0 0.0.0.0 1.0.0.0 192.168.256.8 210.0.0.0 222.233.255.255 227.7.8.9 255.255.255.255 127.5.6.7 213.255.0.0 13.255.0.0 177.255.0.0 177.255.255.255 177.255.255.0 5.6.7.0 5.6.0.0 5.255.0.255 Урок №1 Маршрутизация в IP сетях. Базовый © STEP IT Academy .

www.itstep.org Все права на охраняемые авторским правом фото-, аудио- и видеопроизведения, фрагменты которых использованы в материале, принадлежат их законным владельцам. Фрагменты произведений используются в иллюстративных целях в объёме, оправданном поставленной задачей, в рамках учебного процесса и в учебных целях, в соответствии со ст. 1274 ч. 4 ГК РФ и ст. 21 и 23 Закона Украины «Про авторське право і суміжні права». Объём и способ цитируемых произведений соответствует принятым нормам, не наносит ущерба нормальному использованию объектов авторского права и не ущемляет законные интересы автора и правообладателей. Цитируемые фрагменты произведений на момент использования не могут быть заменены альтернативными, не охраняемыми авторским правом аналогами, и как таковые соответствуют критериям добросовестного использования и честного использования .

Все права защищены. Полное или частичное копирование материалов запрещено. Согласование использования произведений или их фрагментов производится с авторами и правообладателями. Согласованное использование материалов возможно только при указании источника .

Ответственность за несанкционированное копирование и коммерческое




Похожие работы:

«2 ИНСТРУКЦИЯ № 018/15 по применению средства инсектицидного "ЭФФЕКТИВ" Инструкция разработана ФБУН НИИ Дезинфектологии Роспотребнадзора Авторы: Еремина О.Ю., Геворкян И.С., Бидевкина М.В.1. ОБЩИЕ СВЕДЕНИЯ Средство представляет собой концентрат суспензии микрокапсул, в виде жидкости от...»

«ПАО МТС Тел. 8-800-250-0890 www.vladimir.mts.ru тарифное предложение Весь МТС Супер ТВ Домашний интернет и ТВ + тариф для Федеральный номер смартфона Smart Тариф открыт для подключения с 25.07.2018 Тариф открыт для перехода с 25....»

«Видеорегистраторы Panasonic WJ-ND400K/G: Инструкция пользователя Инструкция по эксплуатации Сетевой дисковый рекордер WJ-ND400K Модели № WJ-ND400K/G Прежде чем приступить к подсоединению или управлению настоящим изделием, следует тщат...»

«Князь П.П.Ишеев Осколки ПРОШЛОГО ВОСПОМИНАНИЯ 1889 ~ 1959 Князь П.П.Ишеев Осколки ПРОШЛОГО ВОСПОМИНАНИЯ 1889-1959 Hью-Йорк Князь П. П. Ишеев В 1908 году. Все права сохраняются за автором. Copyright by the author ОТ АВТОРА Время неумолимо отделяет нас...»

«АНАЛИЗ РАЗДЕЛЯЮЩИХСЯ КООРДИНАТ ДЛЯ СВОБОДНОГО УРАВНЕНИЯ КЛЕЙНА ГОРДОНА А А В, А А В А.В. Гайдучик XV " В АВ А А А " Научный руководитель: профессор, д.ф.м.н. А.В. Шаповалов Национальный исследовательский Томский государственный университет, Россия, г. Томск, пл. Новособорная, 1, 634050 E-mail: gaid.ale...»

«1 КОДЕКС АДМІНІСТРАТИВНОГО СУДОЧИНСТВА УКРАЇНИ (проект, нова редакція) ЗМІСТ Розділ I. ЗАГАЛЬНІ ПОЛОЖЕННЯ Глава 1. ОСНОВНІ ПОЛОЖЕННЯ Глава 2 . АДМІНІСТРАТИВНА ЮРИСДИКЦІЯ § 1. Предметна юрисдикція § 2. Інстанційна юрисдикція § 3. Територіальна юрисдикція (підсудність) Глава...»

«1 ОБЩАЯ ИНФОРМАЦИЯ 1.1 К работе со счетчиком допускаются лица, специально обученные для работы с напряжением до 1000 В и изучившие настоящую инструкцию по программированию САНТ.411152.068 ИС1 (да...»

«Фазовая диаграмма La2-xSrxCuO4, как ключ к пониманию природы ВТСП К.В. Мицен, О.М. Иваненко, Физический институт им. П.Н. Лебедева РАН, 119991 Москва, Россия рами в молекуле Н2, а высокочастотная диэлекLa2-xSrxCuO4 (LSCO) является наиболее исследованным ВТСП соеди...»

«ПОЛИТИЧЕСКИЕ ТРЕНДЫ ЕДГ-2018 В ЯЗЫКЕ АГИТАЦИОННЫХ МАТЕРИАЛОВ Глеб КУЗНЕЦОВ руководитель Экспертного совета ЭИСИ 30 августа 2018, Круглый стол "Единый день голосования: специфика, тенденции и прогнозы" ОБНОВЛЕНИЕ – 73...»

«Приложение № 17 к Приказу начальника СПбКВК от " 30 " августа 2017г. № 127 План деятельности отдела материального обеспечения СПбКВК на 2017-2018 учебный год Санкт-Петербург 2017 год ЗАДАЧИ МАТЕРИАЛЬНО...»

«EDMUND MATER ЭДМУНД МАТЕР DEUTSCHE AUTOREN RUSSLANDS НЕМЕЦКИЕ АВТОРЫ РОССИИ ENZYKLOPDIE ЭНЦИКЛОПЕДИЯ BAND/ТОМ 8 T-U-V-W-Y-X-Z Aktualisiert: 01.12.2018 Актуализировано: 01.12.2018 Edmund Mater/Эдмунд Матер Enzyklopdie/Энциклопедия EDMUND MATER DEUTSCHE AUTOREN RUSSLANDS ENZYKLOPDIE BAND 8 T-U-V-W-Y-X-Z © Edmund Mater, Viktor Mater Die Weiterverwen...»

«Сводка HP 22 All-in-One PC 22-c0033ur Стильный и многофункциональный. Создан для эффективной работы. Этот красивый и мощный моноблок предоставляет объем накопителей, которого хватит всем членам семьи, чтобы решить любую задачу. Будь то работа или развлечения — вы нашли прекрасно...»

«AUTOMATICS –..,..,..,. ( ) ( ),. AutomatiCS,. В начале 90 гг. в Ивановском автоматизации не получалось. По пытаться подойти к ней так, что государственном энергетическом вышение производительности бы решение включило весь про университете (ИГЭУ) сформиро труда проектировщиков и частич це...»

«Урок №6 Протокол ICMPv4 Содержание Введение 1. Протокол ICMP 1.1. Типы и коды сообщений ICMP 1.2. Инкапсуляция и формат ICMP-дейтаграмм.9 2 . IMCP-сообщения 2.1. ICMP Type 8 и Type 0 2.2. ICMP Type 3 2.3. ICMP Type 4 2.4. ICMP Type 5 2.5 ICMP Type 9 и ICMP Type 10 2.6. ICMP Type 11 2.7. ICMP Type 1...»

«Руководство пользователя Серия 3 V27F390FI* | V32F390FI* Благодарим за приобретение изделия компании Samsung. Для наилучшего обслуживания зарегистрируйте свое устройство по адресу: www.samsung.com/register Модель_Серийный номер_ Рисунки и иллюстрации в данном руководстве пользователя представлен...»

«1 Twisted Terra: Правила игры Издание Graphium Codrus v1.01 Автор и составитель: Александр "NoNsense" Кульков Тестеры: BlackWizard, Bassian, Некро, Маша, Gwyn Bladdik, Кайл Особые благодарности: timujin, ALIEN, Ein, acefalcon, Эльфания, Янука, Nikku – тестеры форумки Gastagas, Shok...»

«reshebnik_po_matematike_3_klass_po_uchebniku.zip Окоченение есть это шлаковый решебник откуда подорваны хэппенинги на все домашние мерцания по водичке изоляционистской школы . рыболовецкие софистические противоз...»

«LOFT Название стиля произошло от английского loft — "чердак". Лофт позволяет расширить сознание и сочетать диаметрально противоположные мотивы. Ему не чуждо разнообразие соединения старины и новшеств.Главные особенности стиля Лофт: Свободная и открытая планировка. Минимальное использование внутренних стен и перегородок – основной девиз стиля....»

«kod_aktivacii_dlya_movavi_konverter_video_17.zip Словно опустив на насаждение пользы слишком объясняется пленна таковая балочная копия неблагосклонности действий. Акустика вакуоли поржавела в фатализме в серине на слиянии пер...»

«Штрихкод Группа Наименование Бакалейная продукция Лапша б/п АЛЕКСАНДРА И СОФЬЯ 60 гр. Ассорти пак. Бакалейная продукция Лапша б/п БИГ ЛАНЧ 90 гр. Говядина, грибы, зелень ведро Бакалейна...»

«ПАО МТС Тел. 8-800-250-0890 www.mts.ru ULTRA 122013 СВОБОДА ОБЩЕНИЯ ДОМА Федеральный/городской номер И В ПОЕЗДКАХ ПО РОССИИ Авансовый метод расчетов Тариф закрыт для подключения и переходов с 20.03.2015 Тариф, в который уже...»

«RG-P80В Руководство пользователя POS-принтер печати чеков RG-P80B Руководство пользователя www.regotek.com 1 RG-P80В Руководство пользователя ОГЛАВЛЕНИЕ МЕРЫ БЕЗОПАСНОСТИ ГЛАВА I. ВНЕШНИЙ ВИД И МО...»

«Руководство по эксплуатации RU Измерительные системы с мембранным разделителем Примеры Руководство по эксплуатации, измерительные системы с Стр. 3 18 RU мембранным разделителем © 05/2002 WIKA Alexander Wiegand SE & Co. KG Руководство по эксплуатации, измерительные системы с мембранным разделителем Перед началом люб...»







 
2019 www.librus.dobrota.biz - «Бесплатная электронная библиотека - собрание публикаций»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.