В последнее время сетевые компьютеры (Network Computer - NC) стали популярной темой статей в специализированной прессе. В то же время почти никто не обращает внимания на то, что уже сейчас существуют по крайней мере два совершенно разных типа NC.
Большой интерес к NC не случаен - часть компьютерного мира замерла в предвкушении очередной революции, сопоставимой по значению разве что с появлением IBM PC, в то время как другая часть активно не приемлет идеологию NC, или “тонких клиентов”, как их еще называют.
Конечно, идея централизованных вычислений не нова, и их преимущества (легкость поддержки и наращивания мощности сервера, а также низкая стоимость рабочих мест при высокой производительности) хорошо известны. Причиной же почти одновременного появления десятка моделей NC, как мне кажется, стало то, что наконец-то отработаны способы доставки на монитор конечного пользователя высококачественного изображения. Причем новые технологии настолько хороши, что NC можно подключать к серверам даже через удивительно медленные каналы связи, например с использованием модемов со скоростями около 14,4 Кбит/с!
Главное внимание уделяется двум направлениям:
- технологии Internet - Java-NC;
- технологии интеллектуальной консоли ICA-NC.
Java-NC
Об этих NC сейчас пишут и говорят больше всего, хотя их мало кто видел “живьем” и еще меньше тех, кто с ними работал. Находятся в стадии завершения или уже в производстве модели, разработанные Oracle, Sun, IBM (это, конечно же, не полный список); все они имеют в составе встроенного ПО вариант Java-интерпретатора и ориентированы на работу с серверами, которые поддерживают Java. Технология Internet действительно позволяет резко уменьшить (по сравнению с ЛВС) загрузку канала связи NC с сервером, при этом на клиенте вполне достаточно иметь столько вычислительных ресурсов, сколько обычно требует Internet-браузер.
Другое дело, что использование в повседневной работе ТОЛЬКО браузера может показаться странным сегодняшнему пользователю. Сегодня еще не хватает самых обычных приложений, типа текстового редактора или электронной таблицы, с которыми можно было бы работать с помощью Java-NC так же, как и с локальными программами. Конечно, существует ActiveX или PC-Xware, но использование этих языков требует создания сложных базовых страниц WWW; также бесспорно и то, что такого рода ПО находится сейчас на самой ранней стадии развития.
В общем, пока я еще не рекомендовал бы своим заказчикам решительно переходить на использование Java NC, даже если их задачи хорошо оптимизируются с помощью серверов приложений. Скорее всего, им пришлось бы использовать как NC, так и обычные PC-совместимые компьютеры одновременно: одни для доступа к удаленной базе данных, другие - для повседневной работы. Но такая постановка дела лишает заказчика одного из основных преимуществ внедрения NC - стоимость поддержки рабочих мест не уменьшится...
Было бы очень хорошо, если бы можно было “незаметно” подменить системные блоки PC конечных пользователей таким NC, чтобы при этом у них произошло как можно меньше изменений в технологии работы. Например, остались доступными точно такие же приложения, как и раньше, а лучше - вообще сохранить персональный “рабочий стол”.
Такое решение возможно, и именно оно называется ICA-NC.
ICA-NC
Архитектура ICA разработана фирмой Citrix Systems и представляет собой чрезвычайно интересное использование стандартного интерфейса GDI MS Windows.
Вообще компания Citrix известна достаточно давно как разработчик многопользовательских ОС. В 1993 г. была выпущена уже вторая версия ОС Citrix, объединяющая многопользовательский режим и графические возможности OS/2. Сейчас компания по соглашению с корпорацией Microsoft производит ПО многопользовательского сервера приложений на базе Windows NT. Ключевой продукт Citrix - система WinFrame For Networks - основан на двух технологиях: многопользовательской архитектуре MultiWin и протоколе представления Windows - ICA 3.
Сетевой компьютер WinTerm 2700 фирмы Wyse Technology
MultiWin - это технология расширения ОС Windows NT до настоящего многопользовательского сервера, так что становится возможно разрешить нескольким пользователям одновременно выполнять приложения на одном сервере. Каждый пользователь получает доступ к виртуальному сеансу WinFrame с помощью протокола ICA.
ICA - это универсальный протокол представления данных для Windows, устроенный очень похоже на X-протокол Unix. В качестве “источника” графических примитивов используется стандартный интерфейс Windows GDI. Далее - доставка примитивов ICA-клиентам, например по протоколам TCP/IP или IPX или как-либо еще, и, наконец, вывод их на экран пользователя. Именно таким способом ICA позволяет выполнять на рабочем месте только пользовательский интерфейс приложений, оставляя собственно вычисления на усмотрение сервера приложений WinFrame. Так как ICA работает с GDI, то он является компактным и высокоэффективным (по оценкам фирмы Wyse - в 3 - 8 раз эффективнее X-протокола).
Эти NC позволяют создать на рабочих местах обычное окружение Windows NT и пользоваться любыми программами, которые работают под NT. Конечно же, вы сможете и запустить любимый редактор для Windows, и работать с электронными таблицами, и - ну как же без этого! - выходить с помощью родного браузера в Internet (для этого будет достаточно подключить к Сети WinFrame-сервер).
Сегодня известны ICA NC двух фирм-производителей:
Network Computer TC фирмы Boundless Technologies (США);
Winterm фирмы Wyse (США).
Модель ICATerm фирмы Boundless Technologies выполнена в виде очень компактного системного блока, больше похожего на подставку под монитор. На лицевой панели (как и у других NC) у него почти ничего нет, единственная клавиша - включение питания.
Для подключения к серверу можно использовать последовательные порты (2x16550 UART) или порт Ethernet. При работе через ЛВС Ethernet задействуется встроенный 10 Мбит/с адаптер, который соответствует спецификации IEEE 802.3 и автоматически определяет тип интерфейса - 10Base2 или 10BaseT (есть оба разъема). В текущей версии NC предусмотрена работа с протоколом TCP/IP.
К NC можно подключить любой SVGA-монитор. Встроенный видеоадаптер поддерживает разрешения до 1024х768 и частоты развертки до 72 Гц. Кроме того, к ICATerm можно подключить мышь (Mini-DIN или DB-9) и принтер.
Winterm, в отличие от ICATerm, поставляется вместе с монитором. Если быть более точным - без монитора не бывает, так как небольшая системная плата Winterm смонтирована непосредственно внутри корпуса 14-дюймового SVGA-монитора.
На задней панели этого “монитора” расположены дополнительные разъемы для подключения клавиатуры, мыши, принтера и для связи с сервером через последовательный канал. К сожалению, связь через Ethernet в стандартной поставке не предусмотрена. Впрочем, можно заказать модуль Ethernet 10BaseT (и этим превратить Winterm 2500 в модель 2500T).
Технические характеристики Winterm практически такие же, как у ICATerm:
- два последовательных порта с 16550 UART;
- расширенный параллельный порт;
- связь с сервером по протоколу TCP/IP (с DHCP и DNS).
Использование ICA-NC
Один из первых вопросов, который меня заинтересовал, - какова производительность сервера? Сколько таких NC можно подключить к одному WinFrame-серверу и как при этом будут себя чувствовать пользователи? Фирма Wyse утверждает, что к одному 75 МГц Pentium-серверу могут обращаться до 10 ICA-клиентов: “...общим правилом является то, что до 10 пользователей могут одновременно работать с типичной системой обработки транзакций (ввод заказов или точка продаж) на уровне максимальных характеристик 486 компьютера или средней производительности Pentium”. Это, безусловно, правда. Но не уточнен объем оперативной памяти, которой для WinFrame требуется значительно больше, чем для ОС Windows NT.
Имеет смысл делать расчет таким образом: примерно 16 Мб нужно отдать ОС и еще по 4 - 8 Мб на каждый подключенный NC, “работающий с типичной системой”. Или больше, если с нетипичной. Кроме того, хорошо было бы использовать быстродействующую дисковую подсистему с кэширующим контроллером, а еще ведь Windows NT умеет работать с многопроцессорными (SMP) компьютерами... Ограничивать себя не нужно - чем более быструю систему вы создадите, тем более комфортно будут чувствовать себя ваши пользователи.
Следующий параметр - скорость работы протокола ICA. В двух словах ее можно охарактеризовать как “вполне нормальную”. Конечно, чуда не происходит, и коаксиальный кабель Ethernet не начинает работать так же быстро, как видеошнур, соединяющий монитор с компьютером. Протокол ICA - хорошая, действительно быстродействующая технология; он позволяет расслабиться и не вздрагивать, например, от того, что курсор мыши перемещается скачками. Но и не следует загружать протокол таким трафиком, который невозможно оптимизировать: лучше включить режим буксировки окон “только контур”, не смотреть через NC видеоролики и т. п.
Сетевые компьютеры в сегодняшних ЛВС
Удивительный и, на первый взгляд, парадоксальный вывод из характеристик ICA-NC - сейчас самый впечатляющий результат от их использования можно получить вовсе не при доступе в Internet, а включая ICA-NC в обычные локальные сети. При этом вы сможете:
использовать такие преимущества технологии “сервер приложений”, как производительность и низкая загруженность сетевых каналов;
воспользоваться преимуществами многопользовательских систем - дешевизной поддержки рабочих мест, простотой администрирования и наращивания;
работать с имеющимися информационными технологиями, т. е. не менять (или почти не менять) привычное окружение пользователя;
сделать перспективное вложение средств: технология NC находится только в начале своего пути, и весьма вероятно, что ее достоинства не исчерпываются приведенными выше.
Сетевой компьютер ICATerm фирмы Boundless Technologies
P. S. Недавно фирма IBM объявила о смене курса разработки NC. Вместо Java-NC будет выпущен совсем другой тип сетевого компьютера, который можно охарактеризовать как универсальный SMTP-клиент, полностью управляемый с сервера - вплоть до загрузки ОС. Так что, может быть, скоро появится и третий тип NC - SMTP-NC.
Получить дополнительную информацию о сетевых компьютерах и многопользовательских технологиях можно по адресу: http://www.glasnet.ru/ ~ramis или в демо-зале фирмы “РАМИС”.
Андрей Олохтонов
Связаться с автором можно по e-mail: oloht@glasnet.ru или по телефону: (095) 265-9056.
Протокол ICA3
Логика выполнения приложений
С помощью технологии ICA элементы приложений передаются интерфейсу пользователя
Клиент WinFrame или ICA-устройство
Многопользовательский сервер приложений WinFrame
Интерфейс пользователя