Владимир Жирнов,
специалист компании "Кречет" (http://www.crechet.ru)

vladj@crechet.ru

Развитие вычислительной техники уже давно позволило разделить вычислительный процесс на исполняемые кванты. Достаточно быстро была реализована идея обеспечить доступ к вычислительным ресурсам более чем одному пользователю терминала, т.е. одновременно несколько пользователям получили возможность работать на нескольких терминалах. В нашей памяти сохранились советские варианты таких систем, скажем, 25-я и 36-я серии ЕС. В те времена доступ к центральной вычислительной машине на основе терминалов был единственно возможным вариантом работы, так как персональных вычислительных машин просто не было.

В начале 70-х в странах "империализма" с появлением 8-разрядных процессоров родилась и идея создания пусть не самых высокопроизводительных, но персональных вычислительных машин. Бурный рост технологии изготовления высокопроизводительных чипов со множеством транзисторных элементов и их последующее удешевление отправили большие многопользовательские вычислительные комплексы на "свалку истории".

А ведь идея терминального доступа к приложениям не только достаточно проста, но и весьма плодотворна. На локальной станции нет необходимости устанавливать какое либо пользовательское программное обеспечение; локальная станция не производит никаких вычислений; единственная ее задача - передавать параметры устройств ввода данных и отражать графическую информацию, поступающую с сервера на экран монитора.

Итак, попробуем построить следующую модель: оставим пользователю только устройства ввода и вывода информации, т.е. клавиатуру, мышь и монитор, подключим все это к очень слабому компьютеру (можно даже к 486-му) и снабдим сетевой платой. Необходимое ПО - минимальная конфигурация ОС Windows (начиная с версии 3.11) с драйверами сетевой платы и протоколом TCP/IP и Terminal Services Client, входящий в стандартную поставку Windows 2000 Server.

Все необходимые приложения пусть выполняются на отдельном сервере, который далее будем называть терминальным. На этом сервере мы можем установить Windows 2000 Server, активизировать терминальные сервисы (Terminal Services и Terminal Services Licensing) и провести конфигурирование.

Программное обеспечение, установленное на рабочей станции, выполняет только две функции:

  1. передача координат мыши и нажатий клавиш на терминальный сервер;
  2. прием и отображение изменений экрана, переданных терминальным сервером.

Необходимая скорость передачи данных для работы в терминальной сессии в случае Microsoft Terminal Client (протокол RDP) составляет 33-56 Кбит/с, из чего следует, что в существующих локальных сетях (с минимальной скоростью передачи данных 10 Мбит/с) обновления экрана на рабочей станции будут отображаться без сколько-нибудь заметных задержек. Набор текста, редактирование таблиц, использование электронной почты или работа в Интернете будут происходить так же, как на современной рабочей станции.

Все это в целом - и есть терминальное решение.

 

Достоинства терминальных систем

Если приложение затребует большие вычислительные мощности, то терминальный серверспособен предоставить от 5 до 20 MIPS (миллионов операций в секунду) для выполнения сложной задачи, и это никак не отразится на других клиентах с терминальным доступом.

Терминалами могут служить практически любые компьютеры, в том числе класса 386/486/Pentium 60, а также так называемые Windows-терминалы для Windows CE версий 2.12 или 3.0, причем использование WBT (Windows Based Terminal) позволяет достичь абсолютно полной взаимозаменяемости рабочих станций.

Терминалы не нуждаются в модернизации.

Терминальные решения снижают затраты на организацию рабочих мест: не требуются магнитные и оптические накопители, большие объемы памяти, высокие процессорные мощности и т.д. При использовании устаревшей техники стоимость рабочего места снижается до 200-300 долл., а в случае использования новых терминальных клиентов - до 300-400 долл. В этом плане терминальные клиенты - это наиболее дешевые рабочие станции, соизмеримые по стоимости лишь с бездисковыми компьютерами (Remote Boot Station), но не имеющие свойственных последним ограничений.

Снижаются расходы на поддержку пользователей и администрирование информационной системы. При работе в режиме терминала у пользователя намного меньше возможностей повлиять на стабильность работы ПО на своем рабочем месте. А при корректной настройке политик доступа к ресурсам у пользователя просто нет шансов вывести что-либо из строя; даже разрушительное действие вирусов сводится только к возможному повреждению личных данных пользователя, но никак не повлияет на что-либо в сети или на терминальном сервере.

Терминальные решения позволяют отказаться от дорогостоящего оборудования бесперебойного питания - ведь защищать в таких системах обычно нужно только серверное оборудование. И даже при необходимости обеспечить бесперебойную работу рабочих мест (например, в центрах обслуживания клиентов) потребуется в 2-3 раза меньшая мощность, чем для рабочих станций на Pentium II/Pentium III, оснащенных всем периферийным оборудованием.

Администрирование терминальной системы становится действительно централизованным. Так, если у пользователя возникла проблема с программным обеспечением, то администратор системы может со своего рабочего места подключиться в режиме терминала к сессии пользователя и помочь тому решить любую возникшую проблему. Администратор или менеджер с соответствующими полномочиями может в любой момент времени включить функции визуального контроля за работой того или иного пользователя.

Поскольку все ПО устанавливается и обновляется исключительно на терминальном сервере, появляются широкие возможности стандартизации программных средств в информационной системе предприятия.

Сотрудники офиса становятся полностью мобильными - пользователь может получить доступ к своей информации с любой рабочей станции, как в офисе, так и за его пределами. Вся его информация, а также информация компании может быть доступна пользователю после корректного прохождения процедуры аутентификации. При наличии доступа в Интернет при гарантированной скорости передачи данных 33,6 Кбит/с сотрудник может вполне комфортно работать с любыми приложениями, установленными на терминальном сервере компании.

Поскольку доступ к терминальному серверу по RDP-протоколу не подразумевает передачи файлов и совместного доступа к файлам и каталогам на сервере, существенно уменьшается возможность несанкционированного доступа.

Недостатки терминальных систем

Приложения, использующие видеопотоки высокого разрешения и стереопотоки звука с высоким качеством, требуют для работы в терминальном режиме мощных сетей с пропускной способностью не менее 100 Мбит/с.

Некоторые старые программные пакеты ненормально относятся к наличию нескольких копий себя в памяти. Такие приложения могут потребовать специального окружения или просто не будут работать в окружении терминального сервера.

Старые DOS-приложения, требующие прямого доступа к аппаратной части компьютера, не могут работать на терминальном сервере.

При проектировании полного или частичного перехода к терминальным решениям в первую очередь нужно правильно спланировать аппаратную платформу. Наш опыт показывает, что использовать более чем 4-процессорные конфигурации серверов при количестве пользователей до 300 не имеет практического смысла. Если количество пользователей в вашей сети превышает 300, потребуется дополнительный терминальный сервер. Если количество терминальных серверов велико, для обеспечения балансировки нагрузки при обслуживании терминальных сессий в Windows 2000 Advanced Server можно активизировать функцию Network Load Balancing - это позволит избежать перегрузки одного из серверов, а в случае выхода сервера из строя позволит подключиться к другому терминальному серверу в прозрачном режиме.

 

Microsoft Windows 2000 Server

Серверные версии Windows 2000 используют терминальный протокол RDP (Remote Desktop Protocol) версии 5.0 (совместим с протоколом RDP v. 4.0 - Windows NT 4.0 Terminal Server Edition) и поддерживают следующие функции терминала.

Поддержка клиентов - Win16, Win32 и Windows CE; при использовании соответствующего клиентского ПО возможна работа с клиентами MS-DOS, UNIX и Java.

Возможные разрешения экрана для клиента: 640х480, 800х600, 1024х768, 1280х1024, 1600х1200, поддерживается оконный режим работы. Количество цветов во всех режимах - 256. Расширенные возможности поддержки видео будут представлены в следующей версии - операционной системе с кодовым названием Whistler.

Передача звука на звуковую карту терминального клиента; звуковой поток генерируется сервером и воспроизводится клиентом.

Поддержка эффективного сжатия информации для сокращения сетевого трафика; компрессия протокола RDP 5.0 (Microsoft Terminal Service Client) позволяет работать даже при скорости передачи данных вплоть до 28,8 Кбит/с.

Поддержка кэширования битовых карт - пересылаемые сервером состояния экрана сохраняются в памяти терминального клиента для ускорения повторного вызова.

Возможна печать на локальный принтер и работа с локальными COM-портами.

Сессия пользователя может быть активной на сервере практически неограниченное время. Принудительно закрыть сессию пользователя может только администратор системы. Он же при необходимости может подключиться к сессии пользователя и провести какие-либо действия с пользовательскими приложениями и данными. Возможно введение запретов для некоторых пользователей на запуск определенных приложений. Квотирование (Windows 2000 Quota Manager) дискового пространства для пользовательских данных дает больше возможностей для контроля над дисковым пространством, чем на серверах Windows NT.

Windows 2000 обеспечивает низкую стоимость лицензирования; может работать в режиме большего благоприятствования для пользовательских приложений, нежели для серверных служб; позволяет отображать локальный диск терминального клиента на диск терминального сервера; распределяет буфер обмена (Clipboard) между локальным и удаленным сеансами; проста в установке и настройке; обеспечивает быстрое (за 2-4 с) соединение с сервером; поддерживает до 8 процессоров в системе. Есть русская версия сервера.

Данные терминальной сессии нельзя передавать по протоколам IPX и NetBEUI, можно только по протоколу TCP/IP.

Для работы сервера необходимо 128 Мбайт оперативной памяти, потребление памяти для одной рабочей сессии - 5 Мбайт.

Потребление памяти сервера для приложений
в расчете на одного пользователя, Мбайт

Word 2000 4
Excel 2000 7
Access 2000 7
Internet Explorer 2
Visio 2000 6

Потребление процессорных мощностей сервера, МГц

Клиентская сессия 20
Word 2000 18
Excel 2000 17
Access 2000 17
Internet Explorer 12
Visio 2000 18

На практике Windows 2000 потребляет меньше ресурсов с ростом числа пользователей, т.е. при добавлении каждого следующего пользователя в систему необходимый прирост памяти сокращается. Например, в 2-процессорной конфигурации для 20 пользователей можно с успехом использовать 2-процессорный сервер Pentium III/800 с 512 Мбайт оперативной памяти.

Установка терминального сервера в Windows 2000

Мы рекомендуем устанавливать Terminal Service после Windows 2000 Server и Service Pack 1, а также после установки в системе ключей высокой криптозащиты (если это необходимо). Для этого в Панели управления выберите пункт Add/Remove Programs (Установка и удаление программ), в окне установки программ - Add/Remove Windows Components (Добавление и удаление компонентов Windows), а в списке компонентов - Terminal Service.

Если вы решили устанавливать Terminal Service во время установки сервера, то выберите Terminal Service при выборе устанавливаемых сетевых компонентов. После запуска мастера установки будет предложено выбрать режим установки Remote administration (удаленное администрирование) или Application mode (режим удаленного использования приложения). Для конфигурации терминального сервера выберите опцию Application mode.

Мастер установки Terminal Service выведет на экран список программ, которые несовместимы с работой в терминальном режиме.

В следующем окне выберите режим совместимости прав доступа. Доступны два режима: совместимость с клиентами терминального сервера Windows NT 4.0 или совместимость с клиентами Windows 2000.

Затем мастер установки попросит вас указать тип установки программы лицензирования Terminal Services Licensing, которая позволяет лицензировать доступ к терминальному серверу. Вам потребуется указать, какую часть вашей информационной сети будет обслуживать программа лицензирования - все предприятие или рабочую группу. Выберите нужный вариант, затем укажите, где на жестком диске расположена база данных, в которой будет храниться лицензионная информация.

На этом конфигурирование терминального сервера можно завершить.

Установка приложений на терминальный сервер

Для установки Microsoft Office 2000 на терминальном сервере вам потребуется файл преобразования, который можно найти в Microsoft Office 2000 Resource Kit в папке \ORK\PFiles\ORKTools\Toolbox\Tools\TermSrvr. Вы должны быть авторизованы на терминальном сервере под административной учетной записью.

В Панели управления выберите пункт Add/Remove Programs (Установка и удаление программ), в окне установки программ - Add New Program (Установка новой программы). В окне мастера установки выберите с диска 1 Office 2000 файл Setup.exe, а в окне командной строки добавьте параметр:

TRANSFORMS=<путь к файлу преобразования>\TermSrvr.mst

Рекомендации по настройке приложений для работы в терминальном режиме можно найти на http://www.microsoft.com/windows2000/library/operations/terminal/tsapcompat.asp. При использовании специализированного ПО рекомендуется заранее создать стенд с терминальным сервером, протестировать работу данного ПО на нескольких пользователях и только потом приступить к миграции.

Администрирование Terminal Server в Windows 2000

Для администрирования Terminal Service потребуются две административные утилиты Terminal Service Manager и Terminal Services Configuration.

Terminal Service Manager позволяет:

  • отображать информацию о пользователях, сессиях, процессах;
  • подключаться к пользовательским терминальным сессиям;
  • наблюдать пользовательские сессии;
  • перегружать пользовательские сессии;
  • передавать сообщения пользователям;
  • отключать пользователей;
  • прерывать процессы пользователей.

Terminal Services Configuration позволяет:

  • устанавливать имена подключений;
  • устанавливать максимальное число подключений;
  • устанавливать время ожидания и сохранения пользовательских неактивных подключений;
  • указывать программы, которые могут быть запущены при входе пользователя в систему;
  • разрешать или запрещать удаленный контроль сессий;
  • устанавливать уровень шифрования;
  • устанавливать соответствия устройств, подключенных к компьютеру пользователя, и логических имен, используемых в терминальном сервере, например, отображения локальных принтеров в терминальном сервере;
  • устанавливать тип транспорта (протокола терминального доступа).

Для того чтобы подключиться к пользовательской сессии, запустите Terminal Service Manager, в списке сессий выберите интересующего вас пользователя, а в меню Action программы Terminal Service Manager - пункт меню Connect. Это позволит вам подключиться к пользовательской сессии и, в зависимости от прав, которые назначены пользователю, вы имеете возможность либо наблюдать за пользовательской сессией, либо напрямую участвовать в ней. Права на доступ к пользовательской сессии назначаются через консоль управления Active directory users and computers. В свойствах учетной записи пользователя имеется закладка Remote control, на которой вы как администратор можете назначить права доступа к терминальному серверу. Например, если в нижней части окна свойств пользователя будет указано "Allow remote control", это позволит подключиться к сеансу пользователя и управлять им.

Программа Terminal Services Configuration позволяет изменить настройки, выбранные при установке сервера, например, тип используемого протокола (меню Connection) и тип используемого сервера (меню Parameters). Последний можно изменить с использования приложений (Application mode) на удаленное администрирование (Remote control).

Для ограничения объема пользовательских каталогов, которые хранятся на терминальном сервере, можно использовать Quota manager, позволяющий запретить пользователю запись на диск сверх установленной квоты и задать извещения, выдаваемые, если пользователь превысит назначенную ему квоту или приблизится к значению лимита.

Итоги

Технология терминальных решений дает возможность использовать в информационной системе устаревшую вычислительную технику как полнофункциональные персональные рабочие места с современным программным обеспечением и позволяет сохранить те средства, которые пришлось бы выделить на модернизацию аппаратной части ИС. Терминальные решения позволят большим компаниям в несколько раз сократить расходы на администрирование вычислительной техники и обслуживающий персонал, а средним и малым - получить прекрасные рабочие места по цене в 200-300 долл. каждое. Кроме того, терминальные системы позволяют решить задачу полной мобильности персонала компании - уже существует клиентская часть для подключения к терминальному серверу клиента с Windows CE.