Реферат: Конфигурирования программного обеспечения алгоритма OSPF на маршрутизаторе
Название: Конфигурирования программного обеспечения алгоритма OSPF на маршрутизаторе Раздел: Рефераты по информатике, программированию Тип: реферат | ||||||||||||||
Реферат Тема: Конфигурирования программного обеспечения алгоритма OSPF на маршрутизатореСодержание Содержание ....................................................................................................... 2 Введение ............................................................................................................ 3 1. Динамическая маршрутизация .................................................................. 4 2. Протокол динамическая маршрутизация OSPF .................................... 6 3. Концепции OSPF .......................................................................................... 8 4. Базовая конфигурация OSPF ................................................................... 12 5. Oбнаружение соседей и выбор выделенных маршрутизаторов ......... 17 6. Краткий список OSPF команд ................................................................. 19 Заключение .................................................................................................... 20
Введение Под маршрутизацией понимается задача отыскания и установления пути от отправителя информации к ее получателю. В Internet она сводится к задаче отыскания шлюзов и/или маршрутизаторов между сетями. Это реализуется с помощью протоколов маршрутизации. Один из таких протоколов мы будем рассматривать в нашей работе – это протокол OSPF. Протокол OSPF (Open Shortest Path First, открытый протокол «первоочередного выбора кратчайшего пути») принят в 1991 г. Будучи реализацией алгоритма состояния каналов, он разрабатывался в расчете на применение в крупных гетерогенных сетях. Вычислительная сложность протокола OSPF быстро растет с увеличением размерности сети, т. е. увеличением количества сетей, маршрутизаторов и связей между ними. Для решения этой проблемы в протоколе OSPF вводится понятие «область» сети (area) (не следует путать с автономной системой Internet). Маршрутизаторы, принадлежащие некоторой области, строят граф связей только для нее, что сокращает размерность сети. Между областями информация о связях не передается, а пограничные маршрутизаторы обмениваются определенной информацией об адресах сетей, находящихся в каждой из областей, и о расстоянии от пограничного маршрутизатора до каждой сети. При передаче пакетов между областями выбирается один из пограничных маршрутизаторов области, а именно тот, у которого расстояние до нужной сети меньше. При передаче адресов в другую область маршрутизаторы OSPF агрегируют несколько адресов общим префиксом в один. Маршрутизаторы OSPF могут принимать адресную информацию от других протоколов маршрутизации, например от протокола RIP, что полезно для работы в гетерогенных сетях. Такая адресная информация обрабатывается так же, как и внешняя информация между разными областями.
1. ДИНАМИЧЕСКАЯ МАРШРУТИЗАЦИЯ Динамическая маршрутизация используется для общения маршрутизаторов друг с другом. Маршрутизаторы передают друг другу информацию о том, какие сети в настоящее время подключены к каждому из них. Маршрутизаторы общаются, используя протоколы маршрутизации. Пользовательский процесс, посредством которого маршрутизаторы могут общаться с соседними маршрутизаторами, называется демоном маршрутизации (routing daemon). Как видно из рисунка 9.1, демон маршрутизации обновляет таблицу маршрутизации в ядре в соответствии с информацией, которую он получает от соседних маршрутизаторов. Динамическая маршрутизация не меняет способы, с помощью которых ядро осуществляет маршрутизацию на IP уровне, как описано в разделе "Принципы маршрутизации" главы 9. Мы назвали это механизмом маршрутизации (routing mechanism). Ядро точно так же просматривает свою таблицу маршрутизации, отыскивая маршруты к хостам, маршруты к сетям и маршруты по умолчанию. Меняется только способ помещения информации в таблицу маршрутизации - вместо запуска команды route или использования загрузочных файлов маршруты добавляются и удаляются динамически демоном маршрутизации, который работает постоянно. Как было отмечено ранее, демон маршрутизации отвечает за политику маршрутизации (routing policy) , выбирая, какие маршруты необходимо поместить в таблицу маршрутизации. Если демон обнаружил несколько маршрутов к пункту назначения, он выбирает (каким-либо образом), какой маршрут лучше, и именно этот маршрут (единственный) добавляет в таблицу маршрутизации. Если демон определил, что канал изчез (возможно по причине выхода из строя маршрутизатора или телефонной линии), он может удалить соответствующие маршруты или добавить альтернативные маршруты, чтобы обойти возникшую неисправность. В Internet, на сегодняшний день, используется множество различных протоколов маршрутизации. Internet организован как сообщество автономных систем (AS - autonomous systems), каждая из которых обычно администрируется независимо от остальных. Например, сеть, построенная в университетском городке, обычно считается автономной системой. Магистраль (backbone) NSFNET с точки зрения Internet это автономная система, потому что все маршрутизаторы на магистрали находятся под единым административным контролем. Для каждой автономной системы выбирается собственный протокол маршрутизации, с помощью которого осуществляется взаимодействие между маршрутизаторами в этой автономной системе. Такой протокол называется протоколом внутренних маршрутизаторов (IGP - interior gateway protocol) или протоколом внутридоменной маршрутизации (intradomain routing protocol). Наиболее популярный IGP - это протокол обмена информацией о маршрутизации (RIP - Routing Information Protocol). Более новый IGP это протокол Open Shortest Path First (OSPF). Он был разработан как замена для RIP. Устаревший IGP, который в настоящее время не используется, HELLO - это IGP, который первоначально использовался на магистрали NSFNET вплоть до 1986 года. Новые требования к маршрутизаторам Router Requirements RFC [Almquist 1993] определяют, что маршрутизатор, который реализует любые динамические протоколы маршрутизации, должен поддерживать OSPF и RIP, а также может поддерживать другие IGP. Существуют протоколы маршрутизации, которые называются протоколами внешних маршрутизаторов (EGP - exterior gateway protocols) или протоколами междоменной маршрутизации (interdomain routing protocols). Они предназначены для общения между маршрутизаторами, находящихимися в разных автономных системах. Исторически (и к большому сожалению) предшественником всех EGP был протокол с тем же самым именем: EGP. Более новый EGP - протокол пограничных маршрутизаторов (BGP - Border Gateway Protocol) в настоящее время используется между магистралью NSFNET и некоторыми региональными сетями, которые подключены к магистрали. Планируется, что BGP заменит собой EGP.
2. OSPF: "открыть первым наикратчайший маршрут" (Open Shortest Path First) OSPF это альтернативный RIP протокол внутренних маршрутизаторов. В OSPF сняты все ограничения, присущие для RIP. OSPF Version 2 описывается в RFC 1247 [Moy 1991]. OSPF - протокол состояния канала (link-state) , тогда как RIP - протокол вектора расстояний (distance-vector) . Термин вектор расстояний означает, что сообщения, посылаемые RIP, содержат вектор расстояний (счетчик пересылок). Каждый маршрутизатор обновляет свою таблицу маршрутизации на основании векторов расстояний, который он получает от своих соседей. Когда используется протокол состояния канала, маршрутизатор не обменивается информацией о расстояниях со своими соседями. Вместо этого каждый маршрутизатор активно тестирует статус своих каналов к каждому соседнему маршрутизатору и посылает эту информацию другим своим соседям, которые могут направить поток данных в автономную систему. Каждый маршрутизатор принимает информацию о состоянии канала и уже на ее основании строит полную таблицу маршрутизации. С практической точки зрения основное отличие заключается в том, что протокол состояния канала работает значительно быстрее, чем протокол вектора расстояний. Нужно отметить, что в случае протокола состояния канала значительно быстрее осуществляется сходимость сети. Под понятием сходимости (converge) мы подразумеваем стабилизацию сети после каких-либо изменений, как, например, поломки маршрутизатора или выхода из строя канала. В разделе 9.3 [Perlman 1992] сравниваются между собой два типа протоколов маршрутизации. OSPF также отличается от RIP (как и многие другие протоколы маршрутизации) тем, что OSPF использует непосредственно IP. Это означает, что он не использует UDP или TCP. OSPF имеет собственную величину, которая устанавливается в поле протокола (protocol) в IP заголовке (рисунок 3.1). К тому же, так как OSPF это протокол состояния канала, а не протокол вектора расстояний, он имеет и другие характеристики, которые делают его предпочтительным по отношению к RIP.
Так как большинство поставщиков маршрутизаторов поддерживают OSPF, он начинает постепенно замещать собой RIP в большинстве сетей. 3. КОНЦЕПЦИЯ OSPF OSPF роутер ID 3.1 OSPF router ID Порядковый номер, под которым роутер известен в OSPF. Используется при работе протокола между роутерами для координации. 3.2 LSA - Link State AdvertismentLSA - оповещающее сообщение, посылается роутером на активный интерфейс. Содержит всю информацию о вызванном изменении роутинга. Пример: Router# show ip ospf database OSPF Router with id(192.168.239.66) (Autonomous system 300) 3.3 Типы сетейPoint-to-Point
- сосед определяется однозначно - это "тот-конец" 3.4 Выделенные DR роутеры в Multiaccess-сети Рассылать в multicast-сети LSA-сообщения от каждого к каждому - слишком дорогое удовольствие. "Соседи" все свои LSA шлют только выделенному Designed Router'у(DR). DR рассылает аккумулированные LSA всем "соседям". Router# debug ip osfp events Router ! Листинг этой команды покажет список рассылаемых LSA (config-if)# shutdown ! интерфейс "упал" 3.5 Топология OSPF Пространство адресов в OSPF организуеся по иерархическому принципу, распадаясь на непересекающиеся area (зоны?) 3.6 Классификация OSPF роутеровArea Border Router (ABR) - имеет интерфейсы, подключенные сразу к нескольким area. Для каждого из таких интерфейсов выполняет свою копию алгоритма роутинга. Internal router - все интерфейсы подключены к сетям, расположенным в одной и той же area. Исполняет одну копию алгоритма роутинга. Backbone router - имеет интерфейс к бэкбону. Autonomous System Boundary router - обменивается информацией с роутерами, принадлежащими разным автономным системам 4. Базовая конфигурация OSPF4.1 Минимальная конфигурацияКонфигурирование протокола OSPF выполняется в контексте, попасть в который можно командой router(config)#router ospf N router(config-router)#где N - номер OSPF-процесса, произвольное число (на маршрутизаторе может работать несколько независимых OSPF-процессов, но это встречается крайне редко). В лабораторных работах следует использовать N=1. Кроме того, ряд параметров OSPF относятся к интерфейсам и, соответственно, конфигурируются в контексте интерфейсов. Единственной обязательной командой конфигурации OSPF является команда (или несколько команд) network: router(config-router)#network префикс шаблон area номерПолучив такую команду, маршрутизатор выполняет следующие действия:
Например, если у маршрутизатора есть интерфейсы с адресами 1.2.3.4, 1.2.5.25, 1.2.6.36, а в команде network указаны префикс 1.2.4.0 и шаблон 0.0.3.255, то отбираются интерфейсы 1.2.5.25 и 1.2.6.36, поскольку шаблон требует совпадения первых 22 бит адресов интерфейсов с префиксом 1.2.4.0. В обычной практике для отбора интерфейсов используют три метода:
Только основной IP-адрес интерфейса (не secondary) участвует в процессе отбора.
Следует четко понимать, что префикс и шаблон, указанные в команде network (несмотря на название команды), не устанавливаются в базу данных, а служат только для отбора интерфейсов. После того как интерфейсы отобраны, префикс и шаблон из команды network маршрутизатором не используются и на формирование базы данных влияния не оказывают. Например, интерфейс маршрутизатора 1.2.3.4/24 подключен к тупиковой сети Ethernet. Этот интерфейс может быть отобран в область 0 OSPF-системы любой из следующих команд: network 1.2.0.0 0.0.255.255 area 0 network 1.2.3.0 0.0.0.255 area 0 network 1.2.3.4 0.0.0.0 area 0Независимо от того, какая команда network была использована, в базу данных будет внесена тупиковая сеть 1.2.3.0/24. Обратите внимание, что IOS использует именно IP-адреса, а не имена интерфейсов для отбора в OSPF-систему. Эту особенность необходимо учитывать при использовании ненумерованных интерфейсов (ip unnumbered интерфейс-донор ): чтобы ненумерованный интерфейс был отобран, необходимо, чтобы был отобран интерфейс-донор. И наоборот: если отобран интерфейс-донор, то в ту же самую область будут отобраны и все ненумерованные интерфейсы, которые используют IP-адрес данного донора. Последнее означает, что если вы предполагаете поместить ненумерованные интерфейсы в различные области, то вы должны иметь на маршрутизаторе интерфейсов-доноров по числу областей. На практике значит, что для каждой области должен быть создан свой Loopback (поскольку именно интерфейсы loopback целесообразно использовать в качестве доноров). 4.2 МетрикиМетрики интерфейсов вычисляются автоматически исходя из пропускной способности интерфейса (108 /bandwidth). Некоторые значения приведены ниже:
Напомним, что величину bandwidth интерфейса можно изменить одноименной командой в контексте конфигурации интерфейса. Более того, bandwidth последовательных интерфейсов требует ручной модификации, если реальное значение отличается от значения по умолчанию (1544 кбит/с). Неверное значение bandwidth приведет к различным негативным эффектам (неверное вычисление метрик, некорректное управление пакетными очередями и др.). OSPF-метрика интерфейса может быть также непосредственно изменена командой router(config-if)#ip ospf cost метрикаПодчеркнем, что речь идет о метрике связей, исходящих из интерфейса. 4.3 Идентификаторы маршрутизаторовКаждый OSPF-маршрутизатор идентифицируется некоторым IP-адресом, который помещается во все OSPF-пакеты, сгенерированные маршрутизатором. Поскольку у маршрутизатора есть несколько IP-адресов, то выбор идентификатора производится в следующей последовательности:
Следует иметь в виду, что идентификатор должен быть стабильным, поскольку при изменении индентификатора OSPF разрывает отношения смежности и устанавливает их заново с новым идентификатором. В частности, если идентификатор берется от обычного интерфейса, то при отключении интерфейса идентификатор меняется. Кроме того, при установлении виртуальных связей (virtual link) в соответствующей конфигурационной команде (area N virtual-link router-ID ) указывается идентификатор маршрутизатора, с которым устанавливается виртуальная связь. Если после перезагрузки данного маршрутизатора выяснится, что идентификатор удаленного маршрутизатора по какой-то причине изменился, то вирутальная связь установлена не будет. Поэтому обычная практика состоит в создании интерфейса loopback с целью привязки идентификатора к IP-адресу этого интерфейса (поскольку loopback никогда не отключается). Обратите внимание, что при наличии нескольких интерфейсов loopback, выбирается наибольший IP-адрес, и повлиять на процесс выбора (явно указать, какой из интерфейсов loopback вы хотели бы использовать) нельзя. Отметим, что идентификатор маршрутизатора может быть произвольным. В частности, он не обязательно должен принадлежать адресному пространству OSPF-системы. OSPF не генерирует никаких дейтаграмм, направленных с этого адреса или на него. Единственное требование к идентификатору - уникальность в пределах OSPF-системы. 4.4 Распространение маршрута по умолчанию и внешних статических маршрутовЧтобы в OSPF-системе появился маршрут по умолчанию, ведущий за пределы системы, на соответствующем пограничном маршрутизаторе подается команда: router(config-router)#default-information originate [always]Необязательный параметр always заставляет маршрутизатор объявлять в OSPF-систему маршрут по умолчанию, даже если сам маршутизатор такого маршрута не имеет. Маршрут по умолчанию объявляется в OSPF-систему как внешний, а маршрутизатор, объявивший этот маршрут автоматически становится ASBR. Разумеется, этот маршрутизатор не может целиком принадлежать тупиковой области. Статические маршруты добавляются в OSPF-систему командой router(config-router)#redistribute static subnetsАналогично маршруты к непосредственно подсоединенным сетям, которые не входят в OSPF-систему, добавляются в OSPF командой router(config-router)#redistribute connected subnetsВсе эти маршруты по отношению к OSPF являются внешними, а объявляющие маршрутизаторы становятся ASBR. Вопросы редистрибуции маршрутов между различными протоколами маршрутизации рассматриваются в отдельной теме. 4.5 Поддержка вариаций OSPF разных производителейCISCO-router ----- > non-CISCO-router Router (config-if)# ip ospf cost cost При вычислении пути Cisco-роутеры для оценки стоимости интерфейса используют ширину линка (bandwidth). Реализации OSPF других производителе могут использовать для определения цены другие алгоритмы. Для согласования стоимость линка в этом случае придется задавать вручную командой ip osf cost 5. Oбнаружение соседей и выбор выделенных маршрутизаторов5.1 Фильтрация и суммирование маршрутов между областямиСуммирование маршрутов на границе области производится командой router(config-router)#area N range IP- префикс маскаЭта команда означает, что при объявлении в соседние области маршруты ко всем сетям области N, попадающим в указанный префикс, объявляться не будут, а вместо этого будет объявляться только указанный префикс. При выполнении суммирования необходимо создать защитный маршрут. Начиная с версии IOS 12.1(6) защитный маршрут создается автоматически. Если его по какой-то причине необходимо не создавать, дается команда router(config-router)#no discard-routeВ ранних версиях IOS защитный маршрут создается вручную: router(config)#ip route IP- префикс маска Null0Для объявления области N тупиковой следует подать команду router(config-router)#area N stub [no-summary]Необязательный параметр no-summary дополнительно запрещает объявления внутри области маршрутов до других сетей этой же OSPF-системы (без этого параметра запрещаются объявления внутрь области только внешних маршрутов). Тип области, для которой указан параметр no-summary, называется totally stubby. Область должна быть определена как тупиковая на всех маршрутизаторах, к ней подсоединенных, иначе они не найдут друг с другом общего языка. Однако указание no-summary имеет смысл только на ABR. Не совсем тупиковые области (NSSA) будут рассмотрены в теме "Redistribution". 5.2 Show & debugПросмотр текущей информации об OSPF-процессе в контексте администратора: router#show ip ospfВ субконтексте "show ip ospf" есть дополнительные полезные команды: router#show ip ospf databaseсборная информация о базе данных состояния связей в областях, к которым подсоединен маршрутизатор. Для понимания вывода следует обратиться к пп. 5.5.7 (перечислены типы записей) и 5.5.8 (расшифрованы значения Link ID) учебного пособия. Для получения полной информации по записям определенного типа подать команду router#show ip ospf database тип _ записигде тип _записи : router, network, summary, asbr-summary, external для типов соответственно 1-5 (см. п. 5.5.7 учебного пособия). router#show ip ospf neighbor [detail]список соседей и их состояния. router#show ip ospf interface [ интерфейс ]информация о параметрах и статусе интерфейсов, имеющая отношение к OSPF. Отладочные команды: router#debug ip ospf packet router#debug ip ospf events router#debug ip ospf spf statistic6.КРАТКИЙ СПИСОК OSPF КОМАНДarea authentication area virtual-link default-information originate (OSPF) default-metric (BGP, EGP, OSPF, and RIP) ip ospf authentication-key ip ospf cost ip ospf dead-interval ip ospf hello-interval ip ospf message-digest-key ip ospf network ip ospf priority ip ospf retransmit-interval ip ospf transmit-delay ip ospf-name-lookup match route-type network area neighbor (OSPF) ospf auto-cost-determination router ospf redistribute set metric-type show ip ospf show ip ospf border-routers show ip ospf database show ip ospf interface show ip ospf neighbor show ip ospf virtual-links debug ip ospf packet debug ip ospf spf statisticЗаключениеInternet состоит из сетей, управляемых разными организациями. Каждая такая сеть использует внутри свои алгоритмы маршрутизации и управления. И называется Автономной системой. Наличие стандартов позволяет преодолеть различия во внутренней организации автономных систем и обеспечить их совместное функционирование. Алгоритм маршрутизации OSPF, относиться протоколам внутренних шлюзов, но может принимать и передавать данные о путях другим автономным системам. Протокол OSPF опубликован в открытой литературе - отсюда open, не является собственностью какой-либо компании, что делает его применяемым в сетях построенных на сетевом оборудовании различных фирм производителей. Алгоритм маршрутизации OSPF: умеет работать с разными метриками расстоянием, пропускной способностью, задержками и т.п.; является динамическим, т.е. реагирует на изменении в топологии сети автоматически и быстро; поддерживать разные виды сервиса; поддерживает маршрутизацию в реальном времени для одних потоков и другую для других; обеспечивает балансировку нагрузки и при необходимости разделять потоки по разным каналам.Напрашивается вывод из всего выше сказанного, что использования алгоритма динамической маршрутизации OSPF придаёт автоматизированной системе значительно большую гибкость и оптимизирует её работу. |