Любое достаточно сложное сетевое оборудование по сути своей очень похоже на обычный компьютер: процессор, шина, ОЗУ и управляющая работой устройства операционная система. Отличие от ПК в том, что операционная система в данном случае является скорее еще одной аппаратной составляющей конкретной "железки" и сама по себе воспринимается пользователями как этакая "улыбка без кота", т. е. нечто вне оборудования данного производителя не существующее. (На самом деле трудно представить себе, чтобы операционные системы для сетевого оборудования в красивых коробках стояли на полках в магазинах.)
Cisco Systems, однако, воспринимает свою операционную систему IOS (Internetwork Operation System) совершенно иначе. Если заглянуть на Web-сервер Cisco, то можно увидеть, что IOS там посвящен отдельный раздел и о распространении IOS говорится, как о распространении самостоятельного продукта. К тому же в Cisco существует специальное подразделение по маркетингу IOS, руководитель которого является одним из вице-президентов компании. Понятно, что, рекламируя IOS, Cisco рекламирует и свое оборудование, а также побуждает пользователей обновлять версии операционных систем на имеющихся у них устройствах Cisco. Однако задачи подразделения этим не ограничиваются. Одна из стратегических целей Cisco - распространение IOS среди других производителей сетевого оборудования (по сути дела установление фактического стандарта, хотя представители компании не любят, когда обозреватели начинают проводить параллели с Microsoft).
Глупый, казалось бы, вопрос: во вступлении к статье русским языком сказано - операционная система, работающая на сетевом оборудовании. В глоссарии журнала для пользователей Cisco Packet так и написано: "Программное обеспечение, работающее в продуктах Cisco и представляющее их для пользователей и сетевых администраторов единым целым". Однако, по здравом размышлении, нельзя, например, говорить о том, что в ПЗУ мощных магистральных маршрутизаторов и коммутаторов рабочих групп "прошито" одно и то же ПО. Cisco же, невзирая на это, с чистой совестью и нескрываемой гордостью говорит о том, что IOS объединяет все линии продуктов компании; не может же это быть обманом... Конечно нет - просто под сокращением IOS подразумевается не только конкретный программный код, но и целая группа технологий, по-разному этим кодом реализуемая на различных типах устройств (например, совместимость линии продуктов StrataCom с остальной продукцией Cisco достигается именно согласованием используемых протоколов и технологий, а не "заталкиванием" внутрь этих устройств IOS, как она есть). На Рисунке в виде таблицы приведены основные на сегодняшний день составляющие технологий IOS. Как видим, каждая колонка разбита на два уровня: верхний - уровень маршрутизаторов, нижний - уровень коммутаторов, а точнее, от коммутаторов и ниже. Сама IOS помимо наполнения этих уровней функциональностью обеспечивает взаимодействие внутри каждого уровня и между ними.
Пройдемся по таблице и начнем... с последней колонки - она включает в себя предлагаемые любым серьезным производителем средства управления сетевым оборудованием, и мы, отметив ее наличие, заниматься ею не будем, поскольку в данном случае подробно раскрывать ее наполнение не стоит. Теперь, как положено, перейдем к началу технологии виртуальных сетей. На уровне коммутаторов - это технологии организации VLAN, а также механизмы подключения одного компьютера (в первую очередь сервера) к нескольким VLAN одновременно, за счет способности сетевых адаптеров "договариваться" об этом с коммутаторами. На уровне маршрутизаторов - это механизмы взаимодействия между отдельными VLAN, а также, что, на первый взгляд, неожиданно - механизм динамического распределения IP-адресов. К DHCP мы вернемся позже, а пока поговорим о взаимодействии VLAN. Поскольку стандарт IEEE 802.1q еще не принят, Cisco приходится использовать по определению нестандартные технологии. Впрочем, так поступают многие другие производители, а поскольку рано или поздно (скорее поздно) придется переходить на единый стандарт, то опираются они (Cisco не является исключением) на черновые варианты этого злополучного стандарта.
Далее по списку идет колонка, озаглавленная "гибкость сетей" (в оригинале - network resilience), что лучше истолковывать как "организация сетей с гибкой/динамической структурой". На нижнем уровне технологий IOS в этой колонке находятся все те же виртуальные сети, а также протокол spanning tree. Уровнем выше располагаются разработанные Cisco протоколы маршрутизации EIGRP (более подробно о протоколе EIGRP можно прочитать в журнале LAN за ноябрь 1996 года) и HSRP (Hot Standby Router Protocol), разработанный Cisco для обеспечения прозрачности топологии (и ее изменений) сети для хостов.
Следующий пункт - один из самых интересных, поскольку он напрямую связан с Internet, к тому же включает в себя многие последние усовершенствования IOS. Здесь речь идет о передаче в сетях, не обеспечивающих изначально QoS мультимедиа и многоадресных сообщений IP. На уровне маршрутизаторов - это технологии RSVP (Resource Reservation Protocol) и PIM. RSVP - представленный на утверждение IETF стандарт, использование которого, судя по названию, должно обеспечить резервирование по всей сети ресурсов (читай - полосы пропускания), необходимых для передачи мультимедиа. Стандарт PIM (также находящийся в процессе утверждения IETF) отвечает за передачу многоадресных потоков пакетов IP. Рассылка пакетов PIM может быть двух типов: плотная и редкая (dense и sparse). Первая используется при большом количестве локальных сетей-адресатов. Сперва рассылка идет потоком через все интерфейсы каждого маршрутизатора (кроме одного, через который она на него приходит), затем маршрутизаторы, которым эта рассылка не нужна (нет конечных адресатов), исключаются из рассылки после отправления ими назад соответствующего сообщения. "Редкая" рассылка используется, когда, при вероятно большом общем количестве потоков данных в сети, количество локальных сетей-получателей для конкретного потока невелико. В таких случаях организовывать оптимальные схемы маршрутизации естественным путем - значит, излишне перегрузить трафик. При "редкой" рассылке один из маршрутизаторов становится "местом встречи" (rendezvous point) - все маршрутизаторы-отправители и получатели регистрируются на нем и через него же связываются, затем уже путь через "точку рандеву" заменяется на оптимальный. Сама "точка рандеву" из оптимального пути может быть исключена, но при появлении новых источников рассылки или адресатов задействуется снова.
Многоадресная рассылка IP на уровне коммутаторов осуществляется при помощи протоколов IGMP и CGMP. IGMP (Internet Group Multicasting Protocol) - стандарт, находящийся на утверждении IETF, определяет порядок регистрации групп многоадресной рассылки на выделенном для этих целей маршрутизаторе. Управление процессом рассылки при этом происходит на третьем уровне. Если же рассылка доходит до коммутатора, работающего на втором уровне, дальше она пойдет через все его порты. Для усиления управляемости многоадресных рассылок Cisco добавляет к IGMP свой протокол CGMP, последние три буквы которого расшифровываются точно так же, а первая, естественно, означает Cisco. CGMP дает коммутаторам возможность на основе информации IGMP делать выводы о правилах пересылки пакетов на втором уровне и исключить из рассылки ненужные порты.
Следующая группа технологий посвящена защите данных в сетях. Основными моментами здесь являются в первую очередь шифровка содержимого пакетов IP и механизмы аутентификации маршрутизаторов. Маршрутизаторы опознают друг друга при помощи цифровых сертификатов, содержимое пакетов кодируется по методу DES при помощи 40-битного ключа. Другие компоненты - это протокол TACACS+, фильтрация пакетов, составление списков доступа, "запирание" портов от посторонних и технология NAT - Network Address Translation. NAT позволяет иметь внутри сети любое количество IP-адресов (хотите сеть класса А?), которые при необходимости выйти "наружу" транслируются в "правильные" адреса. Таким образом NAT ликвидирует существующую сегодня проблему нехватки IP-адресов, а также скрывает от посторонних внутреннюю адресацию сети и ее топологию.
А чем Cisco собирается обогатить IOS в будущем? На наш вопрос о стратегии развития IOS вице-президент Cisco Стефен ДеВитт ответил следующее: "Наша стратегия в отношении Cisco IOS развивается в зависимости от растущих требований сетевой отрасли и наших клиентов. В начале 90-х Cisco IOS предоставила критические сервисы сетевых соединений третьего уровня, которые дали возможность расти корпоративным сетям, Intranet и Internet. В будущем главной задачей Cisco IOS будет движение к сетевым приложениям.
Как обычно, технологический бизнес идет от приложений, а не инфраструктуры. Для нас актуально обеспечить производительность приложений по всей сети от клиента до сервера. Ключевыми моментами являются сервисы мультимедиа, сервисы передачи голоса, сервисы IBM/SNA, полная защита данных и QoS в целом, т. е. предоставление по сети гарантированных сервисов.
Это решающее время для сетевой отрасли, поскольку грядущий рост неизбежно будет определяться нашей способностью поддерживать приложения клиент-сервер".
Если внимательно взглянуть на моменты, которые ДеВитт считает ключевыми, то становится ясно, что целью номер один для Cisco сегодня является телекоммуникационный рынок, точнее, сервис-провайдеры, стремящиеся предоставлять своим клиентам как можно больше интегрированных услуг. Большинство представленных компанией на прошедшей недавно выставке NetWorld+Interop'97 продуктов (в частности засекреченный до официального объявления гигабитный маршрутизатор с поддержкой интерфейсов SONET и SDH) предназначалось именно для провайдеров. Впрочем (об этом пойдет речь далее), Cisco все больше и больше внимания уделяет подключениям настольных систем, и это направление для компании также является очень важным.
Как видим, список технологий у нас получился довольно внушительным. Некоторые из них являются стандартными, часть опирается на стандарты, находящиеся в стадии утверждения, часть относится к собственности Cisco. Естественное стремление производителя сделать все свои решения стандартными приводит к естественному же желанию ускорить принятие стандартов на базе своих решений. В случае Cisco это означает нести IOS в массы.
Каким же образом (и насколько успешно) проходит процесс распространения IOS "за пределы" Cisco? Присланный из штаб-квартиры Cisco на конец апреля список партнеров по IOS достаточно внушителен - 26 компаний. Большая часть партнеров лицензирует IOS по OEM-соглашению. Это значит, что Cisco производит (или разрабатывает) для них маршрутизирующие модули для установки в имеющиеся в них устройства. За свежим примером можете заглянуть в раздел новостей (заметка о новых продуктах HP). Подоплека такого партнерства понятна - производители различного сетевого оборудования хотят гарантированной совместимости с установленными (и устанавливаемыми) в большом количестве маршрутизаторами Cisco. Подобного рода партнерство может быть достаточно длительным, а может, и не очень, как это не так давно случилось, например, с Cabletron (все-таки выбранный Cabletron для рекламной кампании лозунг "Sorry, Cisco" был, по моему личному мнению, слишком агрессивным). Подобное расширение спектра IOS-совместимых продуктов, на мой взгляд, конечно, усиливает позиции Cisco, но все-таки сама IOS в этих продуктах остается скорее опцией, чем ключевым компонентом, и не выходит за пределы аппаратной платформы Cisco.
Тем не менее есть как минимум один пример реализации IOS на абсолютно не Cisco-вской аппаратной базе, причем пример достаточно свежий. Я имею в виду созданный Compaq маршрутизатор Netelligent 8500. Устройство это примечательно тем, что его аппаратная часть представляет собой ничто иное, как хорошо знакомый нам ПК с шиной PCI. В слоты расширения шины устанавливаются интерфейсные карты, а управляется маршрутизатор загружаемой из ПЗУ IOS. В маршрутизаторах Cisco, как известно, стоят процессоры Motorola, ничего общего с платформой x86 не имеющие. По-моему, это вполне убедительное доказательство того, что IOS можно считать самостоятельной операционной системой. Между прочим, наличие IOS для платформы Intel по большому счету практически позволяет кому угодно делать работающие под IOS маршрутизаторы (по крайней мере для среднего бизнеса). Не думаю, правда, что Cisco будет раздавать права на использование IOS всем сборщикам ПК (до этого пока далеко), но такая возможность - хороший козырь в рукаве.
Заслуживает внимания сотрудничество Cisco с производителями сетевых адаптеров. Таким образом компания распространяет упомянутую ранее технологию взаимодействия виртуальных сетей на уровне коммутаторов, ISL (Inter Switch Link). Первый продукт, в котором реализованы решения Cisco, - EtherExpress PRO/100 - недавно выпущен Intel. Практика показывает, что продвижение любых решений "снизу" зачастую оказывается эффективней продвижения "сверху". Влияние Cisco основано прежде всего на принадлежащем компании "контрольном пакете" уже установленных маршрутизаторов (избитый пример - 80% всех маршрутизаторов в Internet). Количество же работающих в сетях серверов - величина того же порядка. Если Cisco удастся распространить ISL среди крупнейших производителей серверов (многие из которых, кстати, входят в список партнеров по IOS), то компания сможет заметно усилить свое влияние на процесс установления стандартов VLAN.
Еще один способ распространения IOS "снизу", не очень заметный, но весьма перспективный, - производство программного обеспечения. Cisco выпускает целый ряд интересных сетевых программных продуктов, о которых стоит поговорить.
IPeXchange, например, выполняет трансляцию из протокола IPX в IP. Изначально работавший под FreeBSD IPeXchange поддерживает также и NetWare и Windows NT. IPeXchange отличается от своего аналога - IPX/IP Gateway производства Novell - не только поддержкой нескольких платформ, но еще и тем, что умеет обмениваться соответствующей информацией с маршрутизаторами, работающими под IOS, т. е. в данном случае программная маршрутизация IPX/IP интегрируется с аппаратной.
Другое программное решение Cisco - DHCP server. Опять-таки, на первый взгляд, ничего оригинального в нем нет - в той же NT имеется встроенный сервер DHCP. Но Cisco DHCP server решает одну достаточно важную проблему большинства реализаций DHCP - разрозненность адресных пулов. То бишь, если в сети имеется несколько подсетей, то каждая использует свой ограниченный классом сети и маской адресный пул. Может статься, что в какой-то подсети лимит локального пула будет исчерпан в то время, как в другой задействован лишь частично, но поделиться он им не может. Cisco DHCP server позволяет слить множественные адресные пулы в один. Помимо этого, Cisco DHCP server может автоматически обновлять базу данных DNS, в зависимости от изменений адресов конкретных хостов (и появления новых). И разумеется, возможности Cisco DHCP server можно расширить, если использовать его совместно с маршрутизатором, работающим под управлением IOS. IOS поддерживает функцию под названием DHCP relay, что позволяет организовывать централизованный пул адресов в рамках всей корпоративной сети и управлять им с одного сервера, соответственно увеличивая и масштабы отслеживания информации DNS.
Наконец, не следует забывать еще один очень важный аспект деятельности Cisco на "программном" направлении - сотрудничество с Microsoft (компанией, кстати, весьма преуспевающей в установлении стандартов де-факто). Во-первых, Cisco принимает участие в разработке механизмов маршрутизации, которые должны быть встроены в следующие версии NT (можно назвать это ответом на включенный в IntranetWare Multiprotocol Router). Microsoft, правда, сотрудничает в этой области и с Bay Networks... Второе направление сотрудничества - защита данных в Internet. Несомненно, технологии, которые Cisco удастся продвинуть для использования в NT, будут точно так же "дружить" с аппаратными реализациями IOS.
Кстати, когда я перечитывал данное осенью прошлого года Стефеном ДеВиттом интервью, то отметил, что он, говоря о партнерстве с крупнейшими производителями, "навскидку" для примера назвал именно Intel, Compaq и Microsoft (честное слово, я сначала сам отобрал примеры партнерства по IOS, а потом уже взял ноябрьский номер журнала за прошлый год). Что характерно, все три указанные компании и Cisco (плюс еще BMC Software) заключили совместный альянс по продвижению стандартов единого Web-интерфейса для управления сетями и приложениями. Выбор союзников Cisco явно не случаен: два столпа платформы Wintel и один из крупнейших производителей компьютеров (лидер по производству ПК-серверов), ориентированный только на эту платформу, представляют сегодня серьезную силу. При такой поддержке можно достаточно уверенно продвигать свои стандарты как "сверху", так и "снизу". (Есть в этом и негативный момент, поскольку Microsoft и Intel часто и небезосновательно обвиняются в том, что они прокладывают дорогу своим решениям паровым катком. Cisco от этого тоже нередко приходится открещиваться.)
Для Cisco значение имеет не только распространение IOS, как операционной системы, но и утверждение в качестве стандартов используемых в ней технологий. Оба эти процесса идут параллельно, и нельзя сказать, что какой-то из них для компании более важен, хотя, может быть, сегодня вопрос влияния на стандарты чуть-чуть более актуален, и борьба за лидерство в соответствующих комитетах отнимает больше сил. Однако в будущем, не столь, кстати, отдаленном, борьба производителей несомненно пойдет за доминирование в сетевых инфраструктурах конкретной операционной системы (в смысле операционной системы сетевого оборудования - термин "сетевая ОС" (NOS), к сожалению, уже занят, а под IOS уже подразумевается конкретный продукт). Причина тому - стремление отрасли производить все более и более интеллектуальные сети, прозрачные для приложений и СОС, и именно операционные системы сетевого оборудования должны стать основой этой интеллектуальности. Естественно, что у Cisco весьма и весьма неплохие шансы добиться для IOS доминирующего положения. Удастся ли компании утвердить IOS в качестве стандартного решения до того, как конкуренция производителей окончательно переместится в новую плоскость? Сегодня об этом трудно судить, но если Cisco удастся в ближайщие год-два закрепиться на уровне настольных систем (нельзя забывать, что на протяжении многих лет компания вела экспансию на рынке сверху вниз), то это будет настоящее открытие "второго фронта".
Если задуматься о перспективах производства IOS-совместимого оборудования другими производителями (речь идет только об оригинальных аппаратных решениях), то здесь все зависит от готовности Cisco делиться технологиями в чистом виде, а не опосредованно через OEM-компоненты. Для этого компании придется сделать IOS достаточно открытым стандартом, для чего сегодня пока нет объективных предпосылок (и не в последнюю очередь из-за чехарды со стандартами). Можно, однако, с достаточной степенью уверенности предположить, что в этом случае предпочтение будет отдаваться компаниям, которые, как и Compaq, производят "...и сетевое оборудование тоже". Во-первых, у них должно быть меньше предубеждений против монополизма Cisco (действительного или мнимого), а во-вторых, они производят настольные системы и серверы, чья ориентированность на те или иные стандарты может сыграть очень важную роль. Однако, как бы ни сложилась ситуация, три буквы "IOS" наверняка будут все чаще встречаться в печати.
(1x1)
Все источники и составные части IOS. Каждая клеточка обозначает технологии, которые Cisco считает ключевыми.