Ни для кого не секрет, что для конечного пользователя сеть - это не компьютеры, кабели и концентраторы, и даже не информационные потоки, для него сеть - это, прежде всего, тот набор сетевых служб и услуг, с помощью которых он получает возможность просмотреть список имеющихся в сети компьютеров, прочитать удаленный файл, распечатать документ на «чужом» принтере или послать почтовое сообщение. Именно совокупность предоставляемых возможностей - насколько широк их выбор, насколько они удобны, надежны и безопасны - определяет для олььзователя облик той или иной сети. Таким образом, главным требованием, предъявляемым к сети, является выполнение сетью ее основной функции - обеспечение пользователям потенциальной возможности доступа ко всем услугам и службам сети. Вот тут то и выходят на сцену такие сетевые устройства как узлы доступа - access point.
Access Point (узел доступа, в дальнейшем AP) - это интерфейс, предоставляющий конечным пользователям доступ к ядру сети. Узел доступа обеспечивает доступ конечного пользователя к разнообразным услугам сети. Под предоставлением доступа понимается трансляция запросов EU (End User - конечных пользователей) к сетевым службам (например, почтовая служба, служба обмена файлами, служба поддержки телеконференций и т.д.) и передачи ответов этих служб.
Основные функции AP: |
|
|
|
|
Дополнительные функции AP: |
|
|
|
|
|
Точки доступа, поддерживающие всю вышеперечисленную функциональность, безусловно, уже существуют и широко используются, однако они абсолютно статичны, а наиболее важным расширением функциональности AP на текущий момент является возможность автоматического поиска и загрузки программного обеспечения для поддержки запрашиваемого конечным пользователем сервиса. Отсюда возникает вопрос, какими техническими средствами можно реализовать сетевое устройство, которое могло бы быстро «обучаться» в условиях бурного роста сетевых сервисов. И вообще возможно ли?
Вплоть до начала 90-х годов традиционные сетевые устройства базировались на архитектуре, подобной персональному компьютеру. Существенным недостатком таких устройств, приобретшим особую остроту сегодня, является их весьма ограниченная возможность поддерживать высокие скорости передачи и расширять набор функций. Когда же таким устройствам приходится заниматься фильтрацией трафика, осуществлять маршрутизацию на основе правил (политик) или собирать статистику о своей работе, то их производительность значительно снижается, следовательно, возникает необходимость в увеличении рабочих мощностей.
Ситуация начала существенно меняться, когда получили распространение заказные микросхемы (Application-Specific Integrated Circuit - ASIC), процессоры цифровой обработки сигналов (Digital Signal Processor - DSP) и RISC-процессоры. Появление ASIC привело к некоторому сдвигу в парадигме у производителей аппаратного обеспечения. Они увидели, что вместо того, чтобы повышать частоту процессоров для получения требуемой производительности, они могут достичь большего эффекта с помощью специализированных чипов со встроенными инструкциями. Такое решение позволяет управлять трафиком аппаратными средствами, что повышает пропускную способность устройств. Это не только открыло еще один сегмент рынка для производителей микросхем, но и позволило им предлагать запрограммированные и готовые к использованию чипы, на базе которых могли быть быстро разработаны новые аппаратные решения. Применение ASIC породило новое поколение очень быстрых коммутаторов и маршрутизаторов. Однако в полном соответствии с законами диалектики такой подход нес в себе и отрицание, в конце концов, заставившее от него отказаться. Дело в том, что логика, "намертво" встроенная в чипы, с трудом поддавалась модификации, что не позволяло оперативно расширять функциональность и улучшать производительность, и тем более добавлять новую функциональность «на лету». Ошибки в дизайне существенно увеличивали сроки выхода продукта на рынок, а реализация многих дополнительных функций, таких, как QoS, идентификация потока данных на высоких уровнях модели OSI или управление доступом, все еще выполнялась на программном уровне, сводя на нет преимущества ASIC-базированной архитектуры.
На текущий момент IT-индустрия предлагает сетевые процессоры, провозглашая их панацеей, позволяющей избежать эффекта «бутылочного горлышка» и обеспечить необходимый уровень всему разнообразию сетевого трафика, а так же делает возможным создание «обучающихся» сетевых устройств, так необходимых в условиях огромного роста числа сетевых служб и сервисов. Именно по этому пути пошла корпорация Intel, создавая линейку своих сетевых процессоров IXP. И рассмотрение именно этой проблемы - созданию обучающихся сетевых устройств, т.е. загрузке функционального кода для изменения возможностей узла доступа или, иначе говоря, созданию программно-реализованного узла доступа (Software Defined Network Element), является целью данной работы.
Для достижения поставленной цели в ходе работы были решены следующие задачи:
- проведен технический анализ IX архитектуры;
- проведена разработка UML-модели программно-реализуемого узла доступа.
- проведена демонстрация возможностей IXP процессоров для построения программно - реализованных узлов доступа. В качестве демонстрационного проекта было разработано программное обеспечение для осуществления мониторинга и управления точкой доступа на базе платформы IXP1200EB, а так же для дистанционной загрузки функционального кода;
- произведено полное, комплексное тестирование разработанной системы.