Еще год назад, когда компании Oracle, Sun и IBM разработали концепцию сетевого компьютера (Network Computer, NC), а затем отказались от нее, считалось, что и самой идее тонкого клиента (Thin Client) уготована та же участь.
Между тем крупные компании, опережая друг друга, объявляют о новых концепциях тонких клиентов и о выпуске соответствующих устройств. Естественно, этому способствовало стремительное победное шествие Internet, обусловившее быстрый рост потребности в недорогих устройствах для навигации в Сети.
Все дело в цене
В 1996 г. первоначальная концепция сетевого компьютера была выдвинута Oracle, Sun и IBM и др. как альтернатива классическому ПК. Ее изобретатели превратили термин Total Cost of Ownership (общая стоимость владения, т. е. все расходы на приобретение и эксплуатацию систем) в свой главный маркетинговый аргумент. Действительно, затраты на эксплуатацию классических распределенных сетей ПК были чрезвычайно высоки (и по-прежнему остаются весьма высокими). Своим триумфом ПК обязаны тому, что они стали воплощением мечты о Персональном Компьютере, находящемся под полным контролем отдельного пользователя и, к сожалению, все меньше управляемом сетевым администратором.
Непоследовательная и непродуманная политика поддержки, осуществлявшаяся многими разработчиками ПО, которые выпускали бесчисленные версии Service Pack, значительно способствовала тому, что каждый отдельный ПК в более или менее крупной организации постепенно обретал уникальную конфигурацию.
Поэтому от системных администраторов требовалось все больше усилий, чтобы поддерживать вверенный им парк машин в рабочем состоянии. Лидеры IT-рынка эпохи мэйнфреймов с ностальгией стали вспоминать о своих централизованных архитектурах, простых в администрировании, и подумывать о том, что им нужна помощь. А желание некоторых свести эту проблему просто к тому, что у Microsoft необходимо отобрать пальму первенства в сфере ОС для рабочих станций, стало восприниматься сообществом как злонамеренные спекуляции недоброжелателей.
Как бы то ни было, из классического ПК вытащили все дисководы, снабдили его сетевым адаптером, а в качестве платформы для приложений интегрировали стремительно набиравший популярность язык программирования компании Sun—Java. Так родился сетевой компьютер (NC). Его свойства:
- архитектура, не зависимая от платформы и не «привязанная» к одной операционной системе;
- загрузка ОС с удаленного сервера после включения;
- Java (Version 1.1) применяется в качестве платформы для приложений и в той или иной степени служит заменой ОС;
- загрузка всех приложений по сети, распределенное исполнение приложений, поддерживаемое Java;
- единственный сетевой протокол — IP;
- для обеспечения графического пользовательского интерфейса комплектуется адаптерами VGA или более высокого класса; другие аппаратные компоненты — клавиатура, мышь и аудио-порт;
- выполняет функции полноценного Internet-терминала с Web-броузером, клиентским ПО электронной почты и т. п.
Эти основные свойства присущи и другим устройствам, которые в конце концов появились на рынке, например в JavaStation от Sun. Консорциум производителей очень быстро передал организации Open Group спецификацию архитектуры сетевого компьютера и тем самым открыл к ней доступ всем заинтересованным лицам.
В результате появились два базовых документа: Network Computer Technical Standard и Mobile Network Computing Reference Specification. Кроме того, был разработан ряд второстепенных технических спецификаций, например на взаимодействие с микропроцессорными карточками и на функции безопасности.
Если положения Network Computer Technical Standard нашли отражение в выпускаемых продуктах, то концепция мобильных сетевых компьютеров, равно как и многие другие идеи, так и осталась на бумаге, не получив реального воплощения.
На правах рекламы:
Как известно, современные сервера и на программном, и на аппаратном уровнях отличаются достаточно высоким запасом надежности. Тем не менее своевременное и квалифицированное обслуживание серверов позволяет существенно продлить сроки их эксплуатации, а также избежать внезапных сбоев в работе или выхода из строя. Для оперативного устранения ошибок в программном обеспечении серверов их обслуживание может проводиться удаленно. В целом же, сегодня небольшие и средние компании, которым требуется высококлассный специалист для обслуживания серверов, не считают целесообразным прибегать к услугам сторонних фирм, специализирующихся на работах в данной сфере. Поскольку в большинстве случаев грамотная и высококвалифицированная работа опытных мастеров обходится дешевле, чем содержание в штате «своего» специалиста. Подробнее — на onlanta.ru
Однако радужные мечты о скором пришествии сетевых компьютеров очень скоро разбились о реальность: эти устройства ждал коммерческий провал. Причины:
- задержка с выпуском обещанных устройств;
- малая производительность Java Virtual Machine как платформы для приложений;
- слабая поддержка Java как платформы приложений со стороны независимых разработчиков ПО;
- отсутствие поддержки приложений Win32;
- обвал цен на классические ПК;
- соединенные усилия производителей «железа» и программного обеспечения для ПК по снижению общей стоимости владения, в частности посредством Wired for Management (Intel) или Zero Administration Kit (Microsoft).
В итоге крупные производители в прошлом году приостановили дальнейшее развитие классической модели сетевого компьютера и, судя по всему, надолго. Правда, IBM и другие поставщики предлагают совместимый вариант — Network Station. Тем не менее термин «сетевой компьютер» все еще очень популярен, хотя множество устройств под названием NC не являются сетевыми компьютерами в первоначальном смысле, а представляют собой «усеченные» рабочие станции Unix.
Сегодняшнее возрождение тонких клиентов, безусловно, связано с переоценкой их назначения. Если в исходном варианте концепции тонких клиентов язык Java считался единственной платформой приложений, то сегодня его значимость уменьшилась: он играет роль составной части (правда, далеко не второстепенной) мощного Web-браузера.
Теперь, в зависимости от области применения, устройства служат лишь либо графическими клиентами для приложений X Window или Win32, исполняемых на уда-ленном сервере, либо рабочими станциями, получающими все необходимое системное ПО через сеть. К категории графических клиентов относятся устройства, обычно уже оснащенные более или менее «тонкой» операционной системой.
Теоретически операционная система должна размещаться в ПЗУ (во флэш-памяти), однако существуют и модели с ОС, загружаемой с жесткого диска. В любом случае у всех графических клиентов есть общая черта: они используются лишь для графического представления данных ввода/ вывода.
Который из вас здесь клиент?
Ветеранами среди графических клиентов считаются Х-терминалы, которые уже много лет успешно применяются в Unix-средах. X-терминал представляет собой бездисковый Unix-компьютер с «усеченным» ядром, набором протоколов IP и ПО X Server. Системные программы загружаются либо по сети с удаленного сервера, либо из собственного ПЗУ.
Альтернативой ему может служить полноценный Unix-ПК используемый в качестве графического клиента. Благодаря снижению цен на ПК, доступности и гибкости Linux этот вариант сегодня также считается весьма привлекательным. Но собственно об X-терминале речь здесь уже не идет.
В отношении X-терминалов существует недоразумение: многие не понимают, почему ПО, выполняющееся на клиенте, носит название X Server. Дело в том, что в классической модели клиент/сервер обслуживающие компоненты называются серверами (например, файловые серверы) вне зависимости от того, на какой машине они исполняются. А X Server обслуживает ввод/вывод графики. Бывает и так, что один-единственный X Server (а вместе с ним и соответствующий X-терминал) обеспечивает вывод графики для различных программ на несколько рабочих станций.
Версии X Server предлагаются для всех популярных диалектов Unix и других операционных систем. Например, ПО XFree86 с бесплатными исходными текстами рассчитано на большинство систем Unix, а также на OS/2. А вот X Server для Windows распространяется только на коммерческой основе. Обзор предлагаемых коммерческих решений можно найти в Сети. В качестве протокола используется Х-протокол, который существует и в версии Low Bandwidth X Protocol (LBX), оптимизированной для лобальных сетей.
Взгляд в окно
Подобно тому, как Microsoft лидирует на рынке ОС для ПК, существует сильная фракция графических NT-терминалов и в области тонких клиентов. Здесь господствуют два семейства продуктов — Windows Terminal Server Edition (TSE) и Win-Erame/MetaFrame от Citrix, созданные двумя «заклятыми друзьями»: Microsoft и Citrix.
Продукт Windows NT 4.0 Terminal Server Edition от Microsoft — это специальный вариант Windows NT Server, способный обслуживать клиентские компьютеры с Windows NT, Windows 95/98 или Windows 3.11 посредством Remote Desktop Protocol (RDP). Кроме того, независимые производители выпускают клиентские машины (в т. ч. и под Windows СЕ) и обеспечивают их совместимость с протоколом RDP с помощью более или менее «закрытых» собственных расширений.
RDP представляет собой разработанную компанией Microsoft расширенную версию протокола ITU Т. 120, который до сих пор применялся главным образом для видеоконференций и широковещательной передачи. Соответственно компания Microsoft использует RDP и в ПО видеоконференцсвязи NetMeeting. Благодаря своим широковещательным способностям RDP обеспечивает эффективную передачу одних и тех же данных нескольким клиентам (если эта функция поддерживается и сетевым протоколом).
С помощью RDP заметно упрощается зеркальное отображение одного экрана на несколько клиентов. Тем не менее RDP не предусматривает практически никакого сокращения объема передаваемых данных или иной оптимизации, не говоря уже о кэшировании шрифтов, поэтому для работы тонких клиентов требуется широкополосная сетевая инфраструктура.
В настоящее время RDP рассчитан на поддержку лишь одного сетевого протокола — IP Альтернативой RDP может служить протокол ICA от Citrix, применяемый вместе с Windows TSE. С обзором архитектуры Windows TSE и RDP можно тоже ознакомиться на сайте Microsof. В сервере Windows 2000 поддержка TSE заложена изначально. В дальнейшем Microsoft обещает последовательно развивать RDP.
WinFrame и MetaFrame от Citrix представляют собой целое семейство продуктов для тонких клиентов под Windows. В качестве коммуникационного протокола они используют Independent Computing Architecture (ICA). Win-Frame не требует наличия дополнительного ПО Microsoft и содержит расширенную компанией Citrix модификацию Windows NT Server 3-51. MetaFrame, напротив, является дополнением к Windows TSE.
В отличие от RDP, протокол Citrix ICA специально оптимизирован для узкополосного соединения с тонкими клиентами благодаря максимальному сокращению объема передаваемых данных. ICA поддерживает почти все существующие сетевые протоколы (IP, NetBIOS, IPX и т.д.) и практически все популярные операционные системы, а также Java как клиентское ПО. Даже Web-браузеры Microsoft и Netscape применимы в качестве клиентов (при наличии соответствующей вспомогательной программы).
Таким образом, в этом пункте Citrix удалось заметно обойти Microsoft. Концепция графического презентационного клиента, естественно, влияет и на конфигурацию сервера. Эмпирическое правило гласит: один сервер (например, с несколькими процессорами Pentium III и 512-Мбайт оперативной памятью) должен быть способен обслужить 10-20 клиентов ICA или RDP. Достаточный объем оперативной памяти является важнейшим условием корректной работы терминального сервера, т. к. каждому активному клиенту на сервере выделяется своя область оперативной памяти. Свопинга на сервере следует избегать всеми силами.
Sun и другие
Упомянутыми X Window, Windows TSE и WinFrame/MetaFrame выбор платформ тонких клиентов для графического представления данных вовсе не ограничивается. Например, проект исследовательской лаборатории AT&T по созданию виртуального сетевого компьютера как раз нацелен на достижение полной независимости от конкретных платформ.
Исходные тексты серверного и клиентского ПО предлагаются для всех популярных операционных систем, а также для Java. Существуют также клиенты (Viewer) в виде добавок к браузерам. К счастью, к используемому в VNC протоколу Remote Frame-Buffer (RFB) прилагается полная документация, в которой, в частности, изложен интересный взгляд на возможные методы сокращения объемов данных.
SunRay 1 компании Sun пожалуй, является «самым тонким» клиентом на сегодняшний день. Это устройство (в Sun его называют Enterprise Appliance), взаимодействующее с сервером Solaris посредством собственного протокола, даже задачи графического рендеринга препоручает «толстому» серверу.
Благодаря специальной технологии (Hot Desk в терминологии Sun) с любого клиента осуществляется исключительно быстрый доступ к персональному электронному Рабочему столу пользователя. После установки микропроцессорной карточки перед пользователем за считанные секунды предстает графический интерфейс системы — в таком виде, в каком он был оставлен после предыдущей рабочей сессии. Клиент обеспечивает доступ к приложениям Solaris и Java.
Работа с программами Win32, напротив, требует искусственного приема: на сервере с ОС Solaris необходимо установить клиента Citrix ICA. В настоящее время машинам SunRay для связи с внешним миром необходима локальная сеть Ethernet с довольно высокой пропускной способностью, однако уже на выставке CeBIT 2000 компания Sun объявила о поддержке глобальных сетей, а значит, и ограниченной полосы пропускания.
Фирме Sun принадлежит авторство и другой идеи реализации тонких клиентов — iPlanet Webtop. Технология, полученная Sun вместе с купленной фирмой iPlanet, открывает доступ к серверным приложениям Win32 и Х-11 через Web-браузер. От клиента требуется лишь наличие Java-совместимого браузера, все остальные клиентские функции берут на себя Java-апплеты, загружаемые с сервера. Особое внимание уделялось защите доступа к серверу посредством SSL.
Как и классический сетевой компьютер ранней эпохи, устройства, принадлежащие к этой второй группе тонких клиентов, получают все системное ПО через сеть. Для этого система BIOS, размещающаяся на материнской или сетевой плате, должна содержать код, обеспечивающий загрузку и запуск программ из сети во время загрузки системы. Последовательность действий такова: сначала тонкий клиент находит загрузочный сервер и узнает собственный IP-адрес с помощью ВООТР, RFC 1542 или DHCP (RFC 2131).
Затем он загружает образ системы с загрузочного сервера посредством Trivial FTP (TFTP, RFC 1350) и запускает операционную систему (фаза 1). После этого клиент воссоздает сетевую файловую систему (например, NFS, физически находящуюся на загрузочном сервере), чтобы сформировать собственный страничный файл и обеспечить загрузку других частей операционной системы. Наконец, ott запускает операционную систему (фаза 2: регистрация пользователя, логическое подключение к сети и т. д.).
Клиенты должны иметь доступ как к загрузочному серверу с информацией об IP-адресах, так и к серверу системных образов с файлами операционной системы. Так как в первой фазе выполняется широковещательная рассылка IP-пакетов, ОС обычно загружается лишь из своей подсети (в широком смысле — интра-сети).
Можно также запрограммировать маршрутизаторы таким образом, чтобы они пропускали широковещательные DHCP-сообщения. В своей спецификации Wired for Management (WFM) компания Intel опубликовала определение функциональных расширений загрузочного кода (Preboot Execution Environment, РХЕ. Они регламентируют расширенные возможности администрирования на стадии загрузки, а также интерфейс для других функций защиты данных.
«Тонкие» карлики
Обе группы тонких клиентов не обязательно взаимно исключают друг друга. Если бездисковый ПК, который загружает систему Linux из сети, скомбинировать с ICA-клиентом для Linux от компании Citrix или с клиентской программой VNC Viewer, то можно будет пользоваться преимуществами обеих технологий на одной машине. IBM уже давно предлагает сопоставимое решение — Network Station.
В первом поколении этих устройств (в то время их разработкой занималась фирма NCD) по существу была реализована классическая модель сетевого компьютера. А вот современная операционная система Network Station Manager уже обладает дополнительными функ-циями в виде эмуляции терминалов для мэйнфреймов IBM и других платформ (3270, X Window, ICA и пр.).
В качестве альтернативы можно загружать версию OS/2-клиента посредством Workspace on Demand. В сентябре прошлого года появилось второе поколение Network Station с процессорами Pentium и усовершенствованной версией Network Station Manager на базе Unix.
IBM Network Station и многие аналогичные решения допускают длительное сохранение клиентской операционной системы во флэш-памяти и рассчитаны на более или менее самостоятельную работу без постоянного соединения с сетью. В случае, когда компьютер не имеет связи с локальной сетью, он может запустить операционную систему из флэш-памяти.
Если до сих пор в качестве тонких клиентов рассматривались устройства с габаритами небольшого ПК, то в последние годы известность получили модели новой категории, которые обладают настоящей мобильностью: их можно брать с собой куда угодно. В зависимости от терминологии производителя и размера они называются карманными компьютерами, или персональными цифровыми ассистентами (PDA). В принципе эти устрой-ства работают автономно, однако из-за небольшого дисплея и отсутствия жесткого диска их приходится часто подключать к настольным ПК для обновления данных и версий ПО.
Связь с ПК может осуществляться через инфракрасный порт. На рынке господствуют три системы: PalmOS от 3Com, Windows СЕ и Ерос от Symbian/ Psion. Если Windows СЕ частично используется в специальных терминалах в качестве тонкого клиента для Windows Terminal Server, то PalmOS для этих целей пока никто не применяет. Правда, компания Lotus анонсировала Mobil Notes — специального Palm-клиента для сервера Domino.
Устройства с ОС Ерос от Symbian, напротив, напоминают классический сетевой компьютер. Эта система завоевала популярность и как ОС для мобильных телефонов, например она используется в аппаратах Nokia. Ее история восходит к персональным цифровым ассистентам Psion. Одной из основных составных частей ОС Ерос является автономная виртуальная машина Java (JVM).
Недавно компания Citrix объявила о своем намерении выпустить 1СА-клиента для Ерос. Таким образом, в скором времени некоторые карманные компьютеры и даже мобильные телефоны, видимо, можно будет причислить к группе тонких клиентов. После стартовых неудач с сетевыми компьютерами тонким клиентам, похоже, удалось занять свою нишу на рынке.
Технические препятствия преодолены, и предприятия (в первую очередь крупные) теперь видят в тонких клиентах разумную альтернативу хаотично разрастающимся распределенным сетям ПК. Поэтому неудивительно, что аналитики из IDC зарегистрировали в первой половине 1999 г. 83%-й рост объема продаж на рынке тонких клиентов.