Сравнение маршрутизации и коммутации.
Маршрутизацию часто путают с коммутацией второго уровня, которая, как может показаться при поверхностном рассмотрении, выполняет те же функции. Принципиальное различие состоит в том, что коммутация реализована на втором уровне модели OSI, а маршрутизация - на третьем. Такое принципиальное отличие означает, что маршрутизация и коммутация используют разную информацию для организации передачи данных от отправителя получателю.
Как коммутация соотносится с маршрутизацией, можно пояснить на примере местных и междугородних телефонных звонков. Для обслуживания местного телефонного звонка (с тем же кодом региона) используется местная телефонная станция. Понятно, что местная АТС хранит только местные номера и ничего не знает о телефонных номерах абонентов из других регионов. При получении звонка, номер которого находится вне компетенции местной станции, она коммутирует такой звонок станции более высокого уровня, которая хранит коды регионов. Станция более высокого уровня коммутирует звонок таким образом, что в конце концов он будет получен местной станцией, обслуживающей номера с кодом региона, по которому был сделан звонок.
Как показано на рис. 44, маршрутизатор выполняет функции, подобные тем, которые осуществляет телефонная станция высокого уровня в телефонной сети. Когда говорят о коммутации второго уровня, применяемой в локальных сетях, ее часто связывают с таким понятием, как широковещательный домен (broadcast domain). Маршрутизация третьего уровня предназначена для передачи данных между широковещательными доменами и требует иерархической схемы адресации, что и реализовано в протоколах третьего уровня, как, например, в протоколе IP. Коммутатор второго уровня ничего не знает об IP-адресах и может работать только с локальными MAC-адресами узлов. Когда узел отправляет информацию нелокальному получателю, он адресует фрейм своему стандартному шлюзу-маршрутизатору, используя для этого MAC-адрес маршрутизатора.
Коммутатор второго уровня объединяет сегменты, принадлежащие одной логической сети или подсети (subnetwork). Если узлу Х необходимо переслать фрейм получателю из другой сети или подсети, он отправляет фрейм маршрутизатору, который тоже подключен к коммутатору. Узел Х знает IP-адрес маршрутизатора, поскольку в его конфигурации протокола IP указан IP-адрес стандартного шлюза, но он ничего не знает о MAC-адресе шлюза. Используя протокол преобразования адресов (Address Resolution Protocol — ARP), который переводит IP-адреса в MAC-адреса, узел Х выясняет MAC-адрес маршрутизатора.
Коммутатор передает фрейм маршрутизатору на основе его MAC-адреса. Маршрутизатор анализирует адрес получателя третьего уровня в пакете для принятия решения о выборе маршрута. Стандартный шлюз — это маршрутизатор, находящийся в той же сети или подсети, что и узел Х.
Подобно тому, как коммутатор второго уровня хранит таблицу известных MAC-адресов, маршрутизатор работает с набором IP-адресов сетей, который формирует базу данных доступных ему сетей, называющуюся таблицей маршрутизации (рис. 45).
Рис. 44. Коммутация второго уровня и маршрутизация третьего
Каждый компьютер и Ethernet-интерфейс маршрутизатора поддерживают ARP-таблицу для взаимодействий второго уровня; такие таблицы актуальны только для того широковещательного домена, к которому подключено данное устройство. Маршрутизатор, кроме этого, поддерживает еще и таблицу маршрутизации, которая дает возможность выбирать маршрут для доставки данных за пределы широковещательного домена. Каждая ARP-таблица содержит пары IP- и MAC-адресов. (На рис. 45 для краткости MAC-адреса представлены аббревиатурой MAC, поскольку фактические их значения имеют слишком длинную запись и не поместились бы на рисунке).
Таблица маршрутизации содержит информацию о маршрутах; в данном случае - признак: непосредственно подключенная сеть (обозначена символом «C») и сеть, которая получена по протоколу RIP (обозначена символом «R»), IP-адреса доступных сетей, значение счетчика транзитных узлов до этих известных сетей и интерфейсы, через которые информация будет отправлена в нужную сеть. Разница между двумя рассмотренными типами адресов состоит в том, что MAC-адреса не организованы по какому-то определенному принципу. Однако этот недостаток не вызывает проблем с управлением сетями, поскольку отдельные сетевые сегменты не содержат большого количества узлов.
Если бы IP-адреса подчинялись тем же правилам, сеть Internet просто не смогла бы функционировать. В том случае, если бы IP-адреса не были организованы (иерархически или как-либо еще), то не существовало бы способа определить маршрут для достижения каждого конкретного адреса. Иерархическая организация IP-адресов позволяет рассматривать группы адресов как единое целое до тех пор, пока не потребуется определить адрес индивидуального узла.
\
Рис. 45. Таблицы маршрутизации и ARP-таблицы маршрутизатора
Понять такой подход в адресации можно на примере библиотеки, хранящей миллионы отдельных страниц в одной большой кипе бумаг. В таком случае воспользоваться необходимым материалом будет невозможно, поскольку нет способа найти необходимый документ. Намного проще воспользоваться нужной информацией, если страницы пронумерованы, переплетены в книги и каждая внесена в каталог.
Еще одно отличие между коммутируемыми и маршрутизируемыми сетями заключается в том, что коммутируемые сети второго уровня не блокируют широковещательные рассылки третьего уровня. Вследствие этого они могут быть подвержены широковещательным штормам. Маршрутизаторы обычно блокируют широковещательные пакеты, ограничивая таким образом зону действия широковещательных штормов локальным широковещательным доменом. Дополнительно благодаря блокировке широковещательных рассылок маршрутизаторы предоставляют более высокий, чем коммутаторы, уровень защиты и контроль полосы пропускания.
Функции маршрутизации и коммутации сравниваются на рис. 46
Рис. 46. Сравнение функций маршрутизатора и коммутатора
Вопросы для самопроверки:
1. Проанализируйте процесс преобразования физических и логических адресов. Опишите последовательность действий при отправке данных в случае, когда физический адрес получателя неизвестен.
2. Почему важно иметь актуальные, обновленные ARP-таблицы?
3. Как называются службы без установления соединения.
4. Что представляют собой маршрутизация третьего уровня и коммутация второго уровня?
5. Что используют алгоритмы маршрутизации для обработки анонсов маршрутов и заполнения таблиц маршрутизации оптимальными (так называемыми наилучшими) маршрутами?
6. Метрика маршрутизации представляет собой?
7. Что является основной причиной для использования подсетей?
8. Какая функция позволяет маршрутизаторам обнаруживать доступные маршруты до пункта назначения и выбирать наилучший из них при пересылке пакета?
9. Каким образом сетевой уровень передает пакеты от отправителя получателю?
10. Какие две части адреса сетевого уровня используют маршрутизаторы для передачи данных через сеть?
Литература по теме:
1. Программа сетевой академии Cisco CCNA 1 и 2. Вспомогательное руководство, 3-изд., с испр.: Пер. с англ. – М.: Издательский дом «Вильямс», 2008 – 1168 с.: ил – Парал. тит. Англ. ISBN 978-5-8459-0842-1 (рус.).