Терминальный клиент. Требуется мощный сервер. Протоколы, которые используют тонкие клиенты

Тонкий клиент (англ. thin client) в компьютерных технологиях - бездисковый компьютер-клиент в сетях с клиент-серверной или терминальной архитектурой, который переносит все или большую часть задач по обработке информации на сервер (Wikipedia).

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

Обычно тонкие клиенты создаются для экономии на железе и ПО, в редких случаях по иным соображениям.

В этой статье я постараюсь сделать краткий обзор WTWare , являющегося Linux дистрибьютивом, разработанным специально для создания тонких клиентов.

Сначала о тонком клиенте.

Тонкий клиент представляет собой системный блок, у которого обычно нет жесткого диска, и присутствует только минимальный набор железа, нужный для запуска операционной системы тонного клиента (далее просто тонкого клиента). К системному блоку подключены питание, мышь, клавиатура, монитор, сетевой кабель. Кроме стандартного набора к тонкому клиенту могут быть подключены другие устройства, при условии, что он сможет их распознать и передать терминальному серверу.
Схема сети с тонкими клиентами выглядит примерно так:

Как это работает:

  1. На компьютере с одного из источников загружается тонкий клиент. Основные варианты источников загрузки – LAN, CD, HDD.
  2. В процессе загрузки тонкого клиента (или до нее при варианте с LAN) сетевой карте компьютера выдается IP адрес.
  3. По окончании загрузки тонкий клиент через rdesktop поднимает терминальную сессию с указанным в настройках терминальным сервером.
Зачем это работает:
  1. Существенно снижаются затраты на «железо». Предприятие может купить за копейки старый хлам, и все что нужно для его работы – терминальный сервер с достаточным количеством ресурсов и настроенные тонкие клиенты.
  2. Снижаются затраты на программное обеспечение – не нужно покупать ПО на десктопы, достаточно только лицензировать терминальный сервер (но нужно покупать терминальные лицензии).
  3. Снижаются затраты на администрирование. Администрировать нужно лишь терминальный сервер. Как показала практика, тонкие клиенты практически не убиваемы (если не прилагать целенаправленные усилия), и практически не дают сбоев. Но нужно понимать, что при смене сисадмина он должен разобраться во всем этом деле, например сэмулировав работу тонких клиентов на виртуальных машинах, ведь любой сбой приведет к общему краху.
Типы загрузок:
  1. Загрузка по сети. Работает следующим образом: в локальной сети должны быть подняты DHCP и TFTP серверы. В компьютере должна быть либо сетевая карта с BootROM, либо драйвера для сетевой карты, эмулирующие BootROM. Сетевая карта ищет в сети DHCP сервер, получает все необходимые сетевые настройки + адрес TFTP сервера. Далее происходит обращение к TFTP серверу и загрузка операционной системы.
  2. Загрузка с CD/DVD/Flash/IDE - тут стандартно, как и любая другая операционная система.
Что такое WTWare?

WTWare - дистрибутив GNU/Linux, разработанный специально для создания тонких клиентов. За основу взят популярный клиент под названием Thinstation. Основное различие – ориентированность на русских пользователей (в самом Thinstation есть проблемы с кириллицей), плюс всякие мелкие фиксы.

Настройка WTWare.

Я не буду рассказывать про настройку DHCP и TFTP серверов, там все вполне стандартно. Напомню только, что в DHCP сервере нужно указать адрес TFTP сервера, а в TFTP сервере путь до файла загрузки и имя этого самого файла.

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

Итак. В первую очередь качаем образ Thinstation с сайта WTWare. Распаковываем.
Загрузочный файл называется pxelinux.0 при загрузке по протоколу PXE (если BootROM встроен в вашу сетевую или материнскую плату) или wtshell.nbi для загрузчика Etherboot (при использовании эмулятора BootROM).

К слову говоря, Etherboot - оpensource проект, который выпускает прошивки практически для всех существующих сетевых карт. Прошивка Etherboot может быть записана в микросхему BootROM или flash-память сетевой карты, может быть запущена с дискеты или жесткого диска как загрузочный сектор или как программа из DOS.

Далее если вы загружаетесь через LAN и у вас правильно настроены DHCP и TFTP сервера – все должно заработать «как есть». Единственное – не будет найден терминальный сервер, ведь вы еще не конфигурировали ваши тонкие клиенты.

Если вы загружаетесь иным способом, то стоит прочитать , выбрав интересующий вас способ загрузки.

Конфигурирование.

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

WTWare имеет следующие типа конфигурационных файлов:

  1. all.wtc – общесистемный конфигурационный файл.
  2. list.wtc – подключаемые конфигурационные файлы согласно списка.
  3. Индивидуальные конфигурационные файлы.
Индивидуальные конфигурационные файлы могут быть следующих видов:
  1. Имя_терминала.wtc. Имя терминала, соотвественно, выдается DHCP сервером.
  2. ма.ка.др.ес.те.рм.wtc. Привязка идет по мак адресу подключаемового терминала.
Конфигурационные файлы имеют следующие приоритеты:
  1. all.wtc
  2. Файлы, указанные в list.wtc
  3. Файлы, подключенные через include
  4. Индивидуальный конфиг
Конфигурационные переменные общесистемного файла:
win2kIP = 10.100.50.1 // адрес терминального сервера 1.
win2kIP2 = 10.100.50.2 // адрес терминального сервера 2.
video = VESA(S) // универсальный драйвер, работает почти на всех видеокартах
mouse_wheel = on // включить колесо мыши
resolution = 1024x768 // разрешение экрана
bpp = 32 // Глубина цвета

Конфигурационные переменные индивидуальных файлов:
user = username // имя пользователя
password = user_password // пароль пользователя
domain = enterprise_domain // домен предприятия

Если в индивидуальный файл записать переменную, которая присутствует в общем файле - она получит более высокий приоритет.

Так же в индивидуальные файлы прописываются дополнительно подключенные устройства, такие как принтеры, сканера и т.п.

И в конце хотел упомянуть об еще одной интересной возможности – подключение локальных ресурсов (Floppy, DVD, Flash, HDD, Sound). В конфиге выглядит примерно так:
floppy = on
cdrom = on
usb1 = on
sound = on
Диск будет доступен в сессии текущего пользователя из Проводника Windows по адресу: \\tsclient\{floppy|cdrom|usbN}.

Недостатки:

  1. Могут возникнуть проблемы с подключением оборудования, если драйвера на него в системе отсутствуют. Знаю, что через некие костыли можно разобрать образ, припихнуть туда драйвера, собрать образ обратно. Сам не пробовал.
  2. Если у карточки нет BootROM, могут возникнуть проблемы с подбором Etherboot прошивки (есть не для всех карт).
Лицензирование:

Стоит заметить, что сама система бесплатна, но можно приобрести лицензию с очень интересной целью – что бы убрать логотип WTWare из загрузочной заставки. Как я понимаю, это сделано для предприятий, массово внедряющих данный продукт под эгидой аутсорсинга.

Оборудование для создания тонких клиентов:

На сайте WTWare так же можно приобрести оборудование для создания тонких клиентов (дабы не собирать их из хлама). Надо сказать, что оно (оборудование) отвечает всем требованиям гламура. Несколько скринов:

Ну, вот, пожалуй, и все. При правильной настройке терминального, DHCP и TFTP сервера все должно заработать слету. В интернете очень много русскоязычной литературы, поэтому проблем с настройкой быть не должно. Да и вообще в плане документации система мне очень понравилась, на сайте производителя есть почти все.

P.S. Самолично ставил данный продукт на два предприятия, на одном 34 ПК, на втором 16 ПК.
P.P.S. Следует понимать, что данный продукт не является альтернативой тому же Linux, и возможно, имя на каждом ПК по установленной ОС, общая картина будет гораздо приятнее. Возможно и нет. Это именно тонкий клиент, и ничего иного.

Начиная с версии 8.2, программа 1С получила возможность работы в режиме тонкого клиента, который имеет ограниченный по своим возможностям функционал. Несмотря на то, что с момента выхода обновления прошло достаточно много времени, большое количество пользователи до сих пор до конца не понимают для чего необходимо данное нововведение, в каких ситуациях эффективно его использование и в чем заключается его отличие. В этом материале мы подробно расскажем о том, что такое тонкий клиент 1C, о его преимуществах и недостатках, а также о том как с ним работать.

Что есть «тонкий клиент»?

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

«Тонкий клиент» приложения имеет более урезанный набор видов встроенного языка, который предназначается исключительно для передачи данных и их изменения. Всё, что касается работы с базой данных, в этом случае исполняется на сервере. С помощью данной версии приложения происходит разработка управляемого интерфейса 1С, которая позволяет оптимизировать работу компании.

«Тонкие клиенты» 1С способны получать готовые данные через веб-подключение, которые уже заранее были подготовлены со стороны сервера.

Кроме того, использование данного вида приложения возможно при использовании одной из трех технологий:

  • Через веб (с помощью интернет-подключения);
  • Через протокол TCP/IP (по типу «клиент-сервер»);
  • Напрямую с базой данных.

Подключение через интернет

«Тонкий клиент» имеет возможность взаимодействовать с программой «1С: Предприятие» с помощью веб-подключения к интернету. В этом случае работа происходит со специально настроенным веб сервером, путем использования протокола передачи данных http. Тем не менее, сам веб сервер работает с программой «1С: Предприятие» через протокол TCP/IP либо напрямую.

Важно: в качестве веб серверов нужно использовать одну из следующих систем:

  • Apache;

Клиент-серверное подключение

В этом случае «тонкие клиенты» соединяются с серверами напрямую, путем использования протокола передачи данных TCP/IP.

Прямое подключение к базе данных

В этом случае происходит прямое взаимодействие клиента с базой данных приложения. Для организации данной схемы работы, на компьютере, на котором установлен клиент создается специальная среда, которая с точки зрения программы воспринимается как сервер. Для того чтобы ее организовать, необходимо:

  • Загрузить нужные серверные файлы на компьютер;
  • Загрузить прикладную конфигурацию.

Преимущества тонкого клиента

Если же отбросить в сторону технологию процесса и перейти к непосредственным плюсам, которые дает использование этой версии клиента 1С, можно выделить несколько серьезных преимуществ. К ним относится:

  • Мобильность;
  • Уменьшение нагрузки на канал связи;
  • Минимальные системные требования;
  • Снижение расходов компании.

Мобильность

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

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

Безусловно, такие манипуляции отнимают время и доставляют неудобства. «Тонкие клиенты» как раз и используются для упрощения подобных задач. При наличии веб подключения вы без труда можете передать данные в общую базу данных 1С прямо со склада.

Кроме того, «тонкий клиент» используют сетевой канал исключительно для передачи данных. Полноценная версия приложения кроме этого использует его для передачи служебных данных, необходимых для работы программного обеспечения, из-за чего снижается полезная пропускная способность канала.

Таким образом, «тонкие клиенты» позволяет осуществлять работу в программе 1С там, где нет веб-подключения с хорошей пропускной способностью.

Низкие системные требования

Аналогично ситуация обстоит и системными требованиями программы. Для работы полноценной версии необходимы более мощные компьютеры, так как приложение задействует процессор и оперативную память системы. «Тонкие клиенты» 1С гораздо менее требовательна к ресурсам персонального компьютера. Именно это позволяет использовать его даже на слабых системах.

Уменьшение расходов компании

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

Недостатки «тонкого клиента»

Безусловно, у любой медали есть и обратная сторона. «Тонкий клиент» также имеет некоторые неудобства и ограничения, чего нельзя не учитывать. К ним относится:

Требуется мощный сервер

В том случае, если с главным сервером взаимодействует большое количество «тонких клиентов» через веб-подключение, на него ложиться достаточно большая нагрузка, что предъявляет определенные технические требования. Однако использование полноценной версии программы нагружает не намного меньше, поэтому этот недостаток весьма относительный.

Ограниченный функционал

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

Интерфейс

Данный недостаток со временем и с выходом обновлений постепенно сходит на нет, однако в первое время многие компании отказывались от использования «тонких клиентов» или старались избегать его именно из-за того, что интерфейс приложения был крайне неудобен и сильно отличался от полноценной версии.

Обычно, когда говорят об особенностях сделанной программы, понимают язык, на котором она была составлена. Или системные требования, необходимые для запуска. Но есть ещё и ряд других, менее известных определений. Одно из них - это тонкие клиенты. Что это такое и зачем разрабатываются?

Что такое тонкий клиент?

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

Зачем они необходимы?

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

Также уменьшается необходимый уровень трат на программное обеспечение. Нет необходимости покупать лицензию на каждый компьютер - она необходима только на один сервер. При этом снижаются затраты на ведь администрировать необходимо только один терминал. Как показывает практика использования, навредить тонкому клиенту довольно проблематично (при условии, что не прилагаются целенаправленные усилия). Но вместе с этим и возрастают требования к обслуживающему персоналу. Особенно это касается вопросов передачи дел от одного администратора к другому. Тогда необходимо, чтобы заступающий хорошо во всём разбирался, ведь потенциально любой сбой может привести к краху всей системы, и тогда свою ценность потеряют тонкие клиенты. Что это такое вы знаете, а чем они отличаются от толстых?

Различие между тонким и толстым клиентом

Что принимают в расчет, когда различают толстый и тонкий клиент? Отличия между ними такие: под первым понимают обычный вид программ, которые могут автономно работать на отдельном терминале. Им не требуется для качественного исполнения своей работы. Что собой представляет второй, вы уже знаете. И в этом заключается главная и одновременно единственная разница, которую имеют толстый и тонкий клиент. Отличия можно ещё привести в особенностях реализации, но они все умещаются в ранее сформулированное суждение.

Как это работает и какие типы загрузок есть?

Как, собственно, работает данная технология? В целом всю информацию можно уместить в трех пунктах:

  1. На компьютер, через один из возможных источников загружается тонкий клиент. В качестве основных вариантов рассматриваются: LAN, CD, HDD.
  2. В процессе загрузки тонкого клиента (или при работе с локальной сетью до нее) сетевая карта компьютера получает свой собственный IP-адрес.
  3. Когда заканчивается подкачка всего необходимого программного обеспечения, то через рабочий стол создаётся подключение к терминальной сессии с сервером, который указан в настройках. Доступ может быть уже дан или потребуется пароль и логин. Подключение тонкого клиента из-за локальной сети предприятия должно быть разрешено в настройках сервера.

Как работает система, в целом вы уже имеете представление. Но одним из важнейших является этап загрузки, который имеют все тонкие клиенты. Что это такое, откуда он может быть взят, если нет жестких дисков, на которых обычно хранятся данные? Существует две возможности:

  1. Загрузка при помощи сети. В локальной сети должны работать TFTP- и DHCP-серверы. В самом компьютере должна быть которая имеет свойство BootROM, или специальные драйвера, которые её эмулируют. Она проверяет наличие всех указателей, получает настройки и загружает операционную систему.
  2. Загрузка заранее установленной системы с DVD\CD\Flash\IDE.

Веб-клиент

Технология «тонкий клиент» значительно популярней, чем может показаться на первый взгляд. Хотите пример, указывающий на то, что вы его прямо сейчас используете? Что ж, предполагаем, что особую роль стоит уделить самым распространенным на данный момент тонким клиентам - браузерам. Они являются прекрасными примерами работы по таким принципам. Сам по себе браузер мало на что пригоден. Но возможности, которые он открывает перед компьютером, имеющим подключение к мировой сети, огромны! Машина может иметь весьма скудный ресурс программного обеспечения, но, получая необходимые данные от удалённых серверов, можно рассчитывать на создание высококачественного и многоцелевого объекта. Всё что необходимо пользователю компьютера - это сформулировать свой запрос, после чего нужная информация будет получена из внешних источников.

Работа в терминальном режиме

Кроме описанных выше случаев, следует выделить ещё одну аппаратную особенность возможного тонкого клиента - специальное устройство, которое конструктивно отличается от персонального компьютера. Подобный механизм не оборудован жестким диском и использует специальную локальную операционную систему (в задачи которой входит организация сессии с терминальным сервером, чтобы пользователь смог работать). Также подобный аппарат не имеет в себе специальных подвижных деталей, выпускается он в специальных корпусах и имеет полностью пассивное охлаждение. Давайте рассмотрим на примере реальной программы, где реализован тонкий клиент? Что это такое? 1С - это программа, которая будет рассматриваться. Так, в ней всё базируется на работе двух частей: одна - это собственно платформа, необходимая для работы. Вторая - это расширение, которое выполняет отдельные цели. Но работать без платформы оно не сможет.

Протоколы, которые используют тонкие клиенты

Можно выделить 9 самых популярных типов протоколов, которые используются при разработке данного программного обеспечения. Их список таков:

  1. Х11 - нашел применение в Unix-системах.
  2. Telnet - мультиплатформенный протокол. Является двунаправленным восьмибитным байт-ориентированным средством связи.
  3. SSH - мультиплатформенный аналог Telnet. Главным отличием является защищенность передаваемых данных.
  4. NX NoMachine - доработанный протокол Х11. Главным преимуществом является сжатие данных.
  5. Virtual Network Computing - платформонезависимая система. Использует простой клиент-серверный протокол прикладного уровня, чтобы получать доступ к необходимым компьютерам, которые подключены к данной программе.
  6. Independent Computing Architecture - довольно несовершенный способ передачи данных. Данный протокол значительным образом отображается на производительности и требованиям к системам, на которых он работает.
  7. Remote Desktop Protocol - обслуживает возможности удаленного доступа к рабочему столу. Может передавать широкий спектр данных, а также открывает широкие возможности использования удалённых машин.
  8. SPICE - протокол для передачи данных, который может быть использован с комфортом не только в локальной сети, но и через интернет. Его особенностью является «программная легкость», которая позволяет быстро обмениваться данными. Такое возможно благодаря простоте процессов передачи данных (которые осуществляются не в ущерб производительности). Также он может работать на широком спектре машинных архитектур.
  9. Различные закрытые протоколы, которые были разработаны программистами различных фирм и предприятий. Используются только, как правило, на территории предприятия, для которого делались. Имеют ряд уникальных параметров, в том числе: реализация, системные требования, архитектура. Тонкий клиент в данном случае полностью разрабатывается под отдельные предприятия и протоколы, действующие на их территории.

Примеры реализации

В качестве примера реализации тонкого клиента можно привести такие разработки, как:

  1. Терминальный доступ.
  2. Бездисковая станция.
  3. LTSP.
  4. Thinstation.

Использование тонких клиентов позволяет в таких случаях ускорить обновление всего необходимого для работы программного обеспечения.

Вы когда-нибудь самостоятельно собирали терминальный клиент? Нет? Тогда эта статья - для Вас:)

Вот вышел на работу пару дней назад. И что Вы думаете? Соскучились руки компьютерщика по профессиональной деятельности:) Захожу в кабинет, а там - компьютеры не рабочие по столам раскиданы (накопилось за отпуск). У этого - одно не работает, у того - другое. И так я увлекся процессом их ремонта что занимался этим первые два рабочих дня практически постоянно. Есть свободных пол часа - чиним компьютер. Обеденный перерыв? - А что там у нас было вооон с тем вот системным блоком? :)

Признаюсь, как говорится, - «накрыло»! До того прямо, что в конце всей этой бурной деятельности у меня в кабинете соорудилась вот такая конструкция:



В каждом из этих компьютеров была какая-то аппаратная проблема (а некоторых даже вообще не было в проекте). Те компьютеры на фото, которые ближе к нам и на которых есть стикеры с надписью «TS» (сокращение от анг. «» - тонкий клиент) это и есть те самые терминальные клиенты , о которых мы с Вами таки будем разговаривать сегодня:)

Прежде всего разберемся с самим понятием «терминальный клиент ». Терминальный клиент - отдельное аппаратное устройство (или же - маломощный компьютер), основная задача которого сводится к тому, чтобы установить пользовательский сеанс связи с сервером терминалов. Дальше - пользователь вводит свой сетевой логин и пароль, регистрируясь таким образом на терминальном сервере сети, и дальше всю работу выполняет непосредственно на нем, в режиме доступа к удаленному рабочему столу.

Таким образом, даже устаревшие компьютеры, сконфигурированные как терминальный клиент для служб терминалов получают «вторую жизнь». Поверьте мне, когда в нашем случае я говорю "устаревшие", я очень щадяще высказываюсь о той аппаратной конфигурации, которая в предоставляет своему пользователю все преимущества удаленного использования операционной системы Microsoft Windows Server 2003:)

Для наглядности, давайте я продемонстрирую для Вас на реальном примере, как в нашем IT отделе собирается (из того, что под рукой) очередной терминальный клиент. Для начала, иду я на склад и среди прочего компьютерного добра нахожу старую материнскую плату, которая вызывает у меня подозрения относительно того, что она - рабочая:) Вот, к примеру - такую:


Затем - подбираю к ней такой же устаревший процессор и прочие комплектующие. Берется блок питания стандарта «AT». Собирается все это «хозяйство» пока без корпуса на какой-либо диэлектрической поверхности (например - на деревянном столе). Запускается, тестируется, заменяются нерабочие комплектующие. В процессе этой работы будущий терминальный клиент может выглядеть следующим образом:



Совет! для того, чтобы слушать сигналы динамика не подключая каждый раз монтируемую плату к системному блоку можно "повесить" на нее вот такое приспособление:



Честно говоря, не знаю, как его правильно назвать. Ну, это (насколько я понимаю) что-то вроде пьезо-кристаллического элемента. Их иногда можно обнаружить в комплекте поставки материнской платы. Мы подключаем его (так как изображено на фото выше) и наш терминальный клиент уже "пищит" нам не через , а непосредственно через это нехитрое устройство:)

Кто-то после этого фото может «бросить камень» в мой огород и сказать что терминальные клиенты это - бездисковые станции, которые не имеют своей операционной системы и работают исключительно в режиме удаленной клавиатуры. И он будет прав!

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

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

Внимание: в случае блоков питания стандарта «AT» неправильное подключение питания (как на самой кнопке, так и на материнской плате) может привести к «КЗ» (короткому замыканию) в электрической сети! Короче, в лучшем случае - выбьет пробки:)

Вот она наша кнопка запуска терминального клиента крупным планом:

Схема подключения здесь такая: «черный» - «коричневый» в параллель к ним «синий» - «белый» провода. Но это - отдельная история и тема для разговора:)

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


На фото выше мы можем наблюдать на мониторе процесс загрузки мини-образа системы Linux, финал которой должен закончиться окном ввода сетевого логина и пароля для доступа к терминальному серверу, работающему под управлением операционной системы Windows Server 2003.

Итак, вернемся к вопросу об аппаратной конфигурации наших терминальных клиентов. В нашем случае это пентиумы 1 и 2 с частотой процессоров от 100 до 433 мегагерц. На фото выше - pentium 133Mhz с процессорным разъемом Socket 7, 32 мегабайтами оперативной памяти, PCI видеокартой с двумя мегабайтами видеопамяти, обычной сетевой картой и жестким диском на 500 мегабайт.

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

Итак, собрав рабочую конфигурацию на тестовом «стенде», мы можем перенести ее в подходящий для нее корпус и получить что-то визуально напоминающее полноценный компьютер:)



Собственно, фотографии таких собранных, что называется, на ровном месте, терминальных клиентов, мы могли видеть на фотографии в самом начале этой статьи.

Теперь немного о том, как же можно получить программную сборку этого "чуда"? Причем, сборку скомпилированную именно под Ваши нужды и с тем функционалом и драйверами, который нужен лично Вам!

Закон цикла:
История развивается по спирали.

Это знакомое нам еще со школы высказывание из общей философии применимо и к компьютерным технологиям. Углубимся в историю. Вначале были механические счеты с костяшками, потом появились механические вычислительные машины. Позже появились электронные лампы и первые большие вычислительные машины на их основе, которые занимали целые здания. Потом был изобретен транзистор, да прославится имя его. Замечу, что под словом «транзистор» в те времена понимали далеко не одну из множества ячеек на пластине кремния, каждая из которых размером не более 0,18 мкм, а на пластине площадью в квадратный сантиметр их помещаются миллионы. Нет, транзистор представлял собой солидную радиодеталь в отдельном корпусе с размерами не менее сантиметра. Но все равно это был прорыв. В результате появились относительно компактные ЭВМ, занимающие «всего лишь» несколько шкафов и обладающие сумасшедшим, по тем временам, быстродействием. Кроме огромных размеров у них был еще один немаловажный недостаток — цена. Поэтому каждому желающему такие ЭВМ были недоступны. Приходилось использовать вычислительные машины совместно. Сначала — в режиме разделения времени, по очереди. А когда были изобретены клавиатурный ввод и дисплеи, а также многозадачные операционные системы (ОС), то появилась возможность работать одновременно многим пользователям на одной и той же машине. То есть на рабочем месте находился лишь терминал — клавиатура для ввода данных и дисплей для их отображения, а вся обработка информации происходила на большой ЭВМ (мейнфрейме).

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

Я не даром упомянул, что современные персональные компьютеры (PC) обладают большой мощностью. Ведь для большинства офисных и корпоративных задач (таких как MS Office, 1C Бухгалтерия, Парус, использование Internet Explorer для WEB-серфинга, электронная почта и т.д.) большие мощности не нужны. Но заглянув в PriceList любой солидной компьютерной фирмы, мы вряд ли сможем найти типичную конфигурацию компьютера с частотой процессора ниже гигагерца. А ведь в среднем (в типичных офисных задачах) он будет загружен всего на 10–15 процентов. Более того, иногда узким местом (это при таких современных и быстрых компьютерах) становится пропускная способность сети. Хороший пример этому — клиенты 1С Бухгалтерии, генерирующие большой сетевой трафик при доступе к базе во время своей работы.

К тому же, насколько современным ни казался бы компьютер, купленный сегодня, через 2-3 года он уже с трудом тянет новое программное обеспечение (ПО). Поэтому устаревший компьютер приходится апгрейдить или, попросту говоря, менять на новый.

Именно поэтому тонкие клиенты (thin clients) становятся все более популярны уже на протяжении последних нескольких лет. Что же такое тонкий клиент?

В двух словах — это автономное бездисковое устройство с источником питания, к которому подключаются устройства ввода (клавиатура, мышь, считыватель смарт-карт и т.д.) и устройства вывода информации (монитор, принтер, колонки и др.) Устройство предназначено для ввода информации и отправки ее на сервер, а также для вывода информации, принятой с сервера. Терминал подключается к серверу по локальной сети Ethernet, посредством модема или по последовательным линиям связи. На сервере должна быть установлена многозадачная и многопользовательская ОС и сервер должен быть достаточно мощным (по сравнению с терминалами, подключаемыми к нему). В общем случае, сам тонкий клиент не осуществляет обработку информации, все вычисления происходят на удаленном сервере. Именно поэтому требования к мощности таких устройств невелики. В принципе, в качестве тонкого клиента могут служить даже 286 и 386 компьютеры, на которые можно установить DOS или Windows 3.11, а также саму программу для подключения к серверу. В результате получаем быстродействующую машину под управлением ОС Windows 2000 (в случае, если на сервере установлена именно эта операционная система) для работы в типичных офисных задачах.

А теперь проведем параллели. Сеть из автономных устройств-терминалов, подключенных к мощной вычислительной машине-серверу. Терминалы лишь принимают данные с устройств ввода и отправляют их на сервер, а также отображают данные, пришедшие с сервера, на мониторе. Вся информация обрабатывается на удаленной машине — терминальном сервере. Да, да. Вспоминаются именно вычислительные центры 70-х годов с мейнфреймами. Конечно, это уже не монохромные дисплеи, работающие в текстовом режиме. На столе находится не только клавиатура, появился звук. Да и круг выполняемых задач расширился. Но идея осталась той же.

Конечно, рынок тонких клиентов не ограничивается лишь семейством операционных систем MS Windows. Но благодаря распространенности таких продуктов, как MS Office и конечно MS Windows с IE, вездесущий Windows устанавливается во многих организациях. Именно поэтому многим интересны терминальные решения на основе этой ОС.

На рынке существует два протокола взаимодействия тонких клиентов с терминальными серверами. Первый, ICA (Independent Computing Architecture, независимая архитектура вычислений) от компании Citrix, появился на рынке несколько раньше. Второй, RDP (Remote Desktop Protocol, протокол удаленной системы), разработан в компании Microsoft и поставляется с ОС WindowsNT TSE, Windows 2000 Server и выше. ICA считается более универсальным, и его поддержка не ограничивается лишь win32-версиями операционных систем Windows. Он также поддерживает различные версии *nix ОС, Macintosh и даже Java-клиенты. А в остальном к настоящему времени функциональность обоих протоколов практически сравнялась. Хотя бытует мнение, что Citrix предоставляет большую свободу и удобство в администрировании терминальной сети.

Попробую обобщить плюсы и минусы терминального метода построения сети (в случае использования Windows OC).

  • Любой терминал является аналогом мощной рабочей станции.
    Ведь все программы выполняются локально на быстродействующем терминальном сервере.
  • Экономия денежных средств как на стоимости самого тонкого клиента, так и на стоимости ПО.
    Действительно, стоимость терминала несколько ниже среднестатистической рабочей станции. Программное обеспечение же устанавливается лишь на компьютере-сервере, хотя пользоваться им могут все владельцы терминалов (или некоторые, в зависимости от прав доступа).
  • Простота наращивания вычислительной мощности.
    Нет необходимости в апгрейде терминала. Так как он является лишь устройством ввода и отображения информации, ничего не обрабатывая сам. При нехватке вычислительных ресурсов достаточно провести апгрейд сервера (обычно это выгоднее, чем модернизировать N полноценных рабочих станций), причем новые ресурсы будут доступны сразу всем терминалам.
  • Сокращение парка работы для администратора сети.
    Ведь администрировать придется лишь один сервер, а не N рабочих станций, разбросанных по всему офису (офисам) организации.
  • Возможность получить доступ к своему виртуальному рабочему столу и всем документам с любого терминала, подключенного к серверу.
    Так как вся информация хранится на сервере, достаточно аутентифицироваться в системе (ввести свои логин и пароль) с любого терминала.
  • Отсутствие проблем при отключении электроэнергии.
    Так как вся информация хранится на сервере, достаточно его оснастить устройствами бесперебойного питания. Пропадание энергии на рабочем месте приведет лишь к временной неспособности видеть происходящее на экране терминала. Тут можно привести такую аналогию — ведь при отключении монитора у нас ничего не происходит с открытыми программами? После подачи энергии (или при повторном включении терминала) пользователь вернется к тому состоянию запущенных программ, которое осталось в момент отключения терминала.
  • Ускорение некоторых программ, предъявляющих повышенные требования к полосе пропускания сети.
    Хорошими примерами таких программ являются 1С Бухгалтерия и Парус. При нахождении ее серверной и клиентской части на одной машине устраняется узкое место — пересылка данных по сети во время запроса клиентов к базе, и программы начинают работать намного быстрее.
  • Хорошая реализация безопасности.
    Опять же, все файлы находятся на одном сервере, на тонких клиентах информация отсутствует, разграничения прав доступа производится системными средствами. Пользователь не может скинуть информацию на дискету, так как дисководы обычно отсутствуют или доступ к ним ограничен. То есть защищать нужно лишь сам сервер, а физически он и терминалы могут находиться территориально далеко друг от друга, например в соседних зданиях.
  • Быстрота развертывания нового рабочего места
    Тонкий клиент можно подключить даже из своего дома, достаточно подключить его к терминальному серверу (к примеру, через интернет). Предварительная и однократная настройка занимает всего несколько минут времени, после чего мы сразу попадаем на свое рабочее место, с уже установленными программами (на сервере).
  • Бесшумность работы
    Обычно терминалы не имеют в своем составе механических компонентов, таких как жесткие диски и вентиляторы (охлаждение осуществляется пассивно), поэтому совсем не производят шума.
  • Малое энергопотребление терминала
    Используемые архитектуры обладают небольшим энергопотреблением. Для одного компьютера это может и не будет заметно. А если их будет 100?
  • Большее время наработки на отказ.
    Отсутствие механических компонентов, а так же сама по себе упрощенная архитектура повышает надежность системы в целом, что немаловажно, учитывая гораздо больший срок эксплуатации терминалов по сравнению с рабочими станциями.
  • Небольшие размеры и эргономика
    Тонкие клиенты неспроста носят такое название. Их размеры обычно не превышают размеров большой книги, и они не занимают много места на столе.
  • На работе надо работать.
    Играть в 3D-игры или смотреть видеофильмы будет невозможно. Во-первых, их не окажется на сервере и невозможно будет установить самостоятельно (из-за ограничений, установленных администратором на установку дополнительного ПО). Во-вторых, пропускной способности сети не хватит для приемлемой скорости обновления экрана для этих приложений.

Минусы. Обратная сторона медали тоже присутствует.

  • Тонкий клиент — не панацея от всего.
    Терминалы не предназначены для выполнения тяжелых задач, связанных со сложными вычислениями (например, AutoCAD и другие системы моделирования) или генерирующими большой трафик для передачи в сторону клиента (например, просмотр видеофильмов). В первом случае это связано с большой загрузкой вычислительной мощности сервера (он сможет обслужить очень мало клиентов), во втором — с пропускной способностью сети. В этом случае нужно использовать полноценные рабочие станции. Кстати, современные 3D-игры относятся сразу к обеим категориям.
  • Платить все равно придется.
    Более низкая стоимость терминала компенсируется высокой ценой сервера. Ведь эта машина должна быть достаточно мощной, чтобы выполнять задачи многих тонких клиентов, подключенных к ней. Справедливости ради отмечу, что зависимость мощности сервера от количества работающих клиентов не линейна. Большинство типичных задач (например, несколько копий MS Office в памяти) используют библиотеки уже запущенной первой копии для своей работы, поэтому потребности в оперативной памяти будут относительно невысоки.
  • Серверная ОС — MS Windows.
    Со всеми вытекающими последствиями в виде немалых запросов к производительности сервера лишь для собственных нужд ОС. Зато ее можно масштабировать, распределяя клиентскую загрузку на несколько серверов в случае MS Windows Advanced Server или Data Center.
  • В общем случае все работает на одном компьютере-сервере.
    Поэтому должны быть обеспечены все возможные меры для его безотказной работы и сохранности данных.
  • Потребность в постоянном канале связи
    В некоторых случаях для рабочей станции не обязательно наличие постоянного, а тем более быстрого канала связи. Терминалу же необходима постоянная связь с сервером. В среднем нужен канал с пропускной способностью не менее 20 Кбит/сек.

Резюмируя, можно сказать, что преимущества тонких клиентов достаточно привлекательны для использования их во многих организациях. Надо лишь четко определить для себя плюсы и минусы терминального подхода. Важно также отметить, что хоть низкая стоимость тонких клиентов и может компенсироваться высокой стоимостью серверной части, совокупная стоимость владения (TCO - Total Cost of Ownership) оказывается существенно ниже (по оценке Gartner Group — на 5-40 процентов) при использовании на рабочих местах именно тонких клиентов, а не полноценных компьютеров. Ведь TCO складывается не только из затрат на закупку оборудования, а еще и на администрирование этого оборудования, затрат на модернизацию. Сюда же входят потери, произошедшие из-за сбоев оборудования.

В качестве яркого примера терминального решения рассмотрим тонкий клиент от российской компании .

На фотографии представлен внешний вид (снятый с использованием синего светофильтра) AK Windows терминала GP этой компании. Заметьте — это российская компания. Цена такого тонкого клиента - всего около 300 долларов США (на момент публикации), что существенно ниже западных аналогов. Люди, знакомые с уровнем цен на старые комплектующие, могут возразить: а ведь при сборке компьютера класса Pentium ][ придется потратить всего 200$, а уж Pentium и вообще копейки стоит! Да, но не стоит забывать, что в случае собственной сборки мы получим именно персональный компьютер, работающий в режиме терминала. С бОльшими размерами корпуса, энергопотреблением, жестким диском, кулерами и вытекающим отсюда шумом, старыми комплектующими и т.д. И с вытекающей отсюда надежностью. А тонкие клиенты изначально разрабатывались именно для своего круга задач, не обладают механическими деталями и потенциально более надежны. Не стоит забывать и о тех.поддержке — мы живем в России — компания-то рядом.

Спецификации AK терминала GP.

Процессор NS Geode GX1 300 МГц c 16 Кб unified Cache
ОЗУ Один SDRAM 168pin DIMM 64 Мб и более
ПЗУ Один DiskОnСhip (flash) 8 Мб либо более
Видеокарта Интегрированная, до 1024×768, 65535 цветов, 85 Гц
Сетевая карта Интегрированная, Realtek8129c 10/100 Мбит
Клавиатура, мышь PS/2 совместимая
Последовательный порт RS232, 9Pin DSUB COM1, COM2
Параллельный порт 25Pin DSUB
USB порт 2 USB порта
(не поддерживаются софтом в данный момент)
Аудио 16 бит стерео, 44KHz sample rate
Питание Внутренний БП, 220 В на входе
Габариты 232 × 42 × 240 мм
Встроенная операционная система Microsoft Windows CE 3.0/CE.NET
Поддержка протоколов Remote Desktop Protocol (RDP),
Citrix Independent Computing Architecture (ICA)
Поддержка следующих OC Microsoft Windows 2000 server/Windows NT TSE,
Citrix MetaFrame/WinFrame
Температурные режимы От 0 до +40 °С (рабочий),
От -10 до +60 °С (режим хранения)

Внимательный читатель уже заметил, что частота процессора тонкого клиента GP составляет всего 300 МГц. На самом деле, большего и не нужно, ведь терминал практически не занят обработкой информации. Тем не менее, компания предлагает и модели с большей частотой процессора, на базе процессора VIA C3.

Взгляд изнутри

Задняя панель терминала с интерфейсами выглядит так:

А внутри корпуса располагается лишь одна материнская плата, на которой и размещена вся элементная база устройства.

Вместо жесткого диска используется flash-накопитель емкостью 16 Мбайт. С него и производится первичная загрузка ОС Windows CE. Именно ее окна и видно на экране до подсоединения к терминальному серверу.

Сердцем же системы является процессор GX1 от National Semiconductor. Это первый чип компании, созданный по 0,18 мкм технологии и обладающий очень незначительным тепловыделением — 0,8-1,4 Вт, в зависимости от режима работы. Процессор изначально предназначен для установки в различные терминальные системы, интернет-приставки и т.д.

Ядро процессора построено на основе архитектуры x86, оно включает блоки арифметики с фиксированной и плавающей точкой и обладает кэшем первого уровня объемом 16 Кб. В процессор интегрирован контроллер VGA с ускорителем 2D-графики и дополнительными буферами интерфейсами к внешним контроллерам для проигрывания видео MPEG1. В процессор также интегрированы контроллер SDRAM памяти и шины PCI. Чип также поддерживает набор команд MMX и может работать на частотах от 200 до 333 МГц. В процессор встроена базовая поддержка аудиофункций (часть из них берет на себя внешний контроллер). Благодаря малому тепловыделению, используется лишь пассивное охлаждение процессора (радиатор).

Роль южного моста выполняет микросхема CS5530A (PCI-to-ISA bridge). В нее же интегрированы два IDE контроллера и шина USB на два порта. Кроме того, к CS5530A подключается интерфейс видеоконтроллера процессора GX1 для дополнительного ускорения видео и вывода изображения на аналоговый или цифровой дисплеи. В CS5530A также встроен интерфейс для подключения внешнего AC"97 аудиокодека. Микросхема обладает низким энергопотреблением и незначительным тепловыделением.

Для поддержки остальных функций ввода/вывода используется контроллер PC97317 от того же производителя, подсоединяемый к южному мосту. PC87317 является одночиповым контроллером для большинства стандартной ISA/EISA/MicroChannel периферии. В чип встроен модуль advanced Real-Time Clock, контроллер гибких дисков (FDC controller), контроллер клавиатуры и мыши, два последовательных порта (UARTs) с поддержкой интерфейса инфракрасной связи (IR), контроллер параллельного порта IEEE 1284 и еще несколько контроллеров.

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

Подготовка к первому запуску

На сервере необходимо установить ОС MS Windows NT TSE или Windows 2000 server (и выше). Дополнительно следует инсталлировать службу терминальных сервисов в панели установки у удаления компонентов ОС. После этого нужно лишь создать необходимое количество аккаунтов для пользователей.

Настройка же самого тонкого клиента очень проста.

При первом запуске терминала он высветит приглашения мастера настройки. С его помощью устанавливается фиксированный или динамический IP адрес клиента.

Опционально задаются адреса DNS и WINS серверов и наличие локального принтера (подключенного непосредственно к терминалу).

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

Для начала следует выбрать тип протокола соединения — RDP (родной для WinNT TSE/ Win2K Server протокол) или ICA (от Citrix). Второй является более универсальным, а в нашем случае имеет больше возможностей. Для его использования на сервере должно быть установлено ПО Citrix MetaFrame. Подключение терминала возможно как через локальную сеть Ethernet, так и через модем. Думаю, последнее является экзотикой. Ведь аналоговый модем не может обеспечить приемлемую скорость передачи информации с сервера и, соответственно, о комфортной работе за терминалом речи быть не может.

Процедура настройки похожа в обоих типах протокола. Как минимум, потребуется ввести IP-адрес терминального сервера и, возможно, логин и пароль пользователя, если требуется автоматический вход в систему.

В случае использования протокола ICA можно активировать шифрование трафика и выбрать режимы работы терминала сквозь файрвол.

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

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

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

а также модифицировать параметры дисплея и IP-адрес терминала.

Тут же можно настроить подключенный к терминалу принтер, установить локальные дату и время, настроить диалап подключение (с использованием аналогового модема).

Сервис обновления прошивки (внутренней ОС) терминала представлен в закладке Firmware. Прошивку можно взять из файла или с удаленного FTP-сервера. Ну а чтобы пользователи не имели доступа к панели настройки терминала, на нее можно установить пароль или вообще скрыть саму панель.

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

Тестирование

Полагаю, один из критичных параметров работы терминала — это минимальная полоса пропускания, при которой работа на нем будет более-менее комфортной. Я провел несколько тестов, ограничивая полосу пропускания между сервером и тонким клиентом в 4, 8, 16, 20, 24 Кб/сек при использовании RDP протокола. Конечно, объективные выводы сделать невозможно, поэтому ниженаписанное можно считать моим субъективным восприятием.

На 4 и 8 KB/сек работать неудобно (особенно это касается 4 KB/сек) — окна открываются и передвигаются с заметной задержкой, во время набора текста часто создается ощущение достаточно большого буфера в клавиатуре (буквы появляются не сразу и не по одной, а группами по 5-15 символов. Плюс к этому, первоначальное подсоединение терминала к серверу при канале в 4 Кб/сек занимает значительное время. На 16 Кб вышеперечисленные эффекты почти полностью устраняются, но все равно заметен некоторый лаг (задержка) при перетаскивании и открытии окон. На канале в 20 Кб/сек и выше работа за терминалом вполне комфортна.

Отмечу, что, судя по отзывам сторонних источников, на медленных линиях большой выигрыш в скорости работы получается при использовании протокола ICA. Работа на нем возможна даже на модемных линиях связи. К сожалению, у меня не было возможности протестировать работу терминала на этом протоколе, в следующем обзоре этот недочет будет устранен.

Выводы

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