Серверная операционная система Microsoft Windows 2003



Серверная операционная система Microsoft Windows 2003

         

Дополнительные сетевые службы


Некоторые сетевые службы и технологии Windows Server 2003 заслуживают отдельного разговора. В этой главе рассматриваются:
 службы терминалов (Terminal Services);  поддержка технологии управления качеством обслуживания (Quality of Service);  поддержка технологии асинхронного режима передачи (ATM).


Службы терминалов




Службы терминалов (Terminal Services) представляют собой совокупность сетевых служб, обеспечивающих удаленный доступ к рабочему столу на сервере при помощи программного обеспечения "тонкого" клиента, выступающего в качестве эмулятора терминала. Все приложения и команды пользователя выполняются непосредственно на сервере, на котором функционируют службы терминалов. Удаленному пользователю, осуществляющему подключение к серверу при помощи указанных служб, передаются только образы экрана приложения, запущенного на сервере. Со стороны клиента серверу передается информация о нажатых на клавиатуре клавишах и о перемещении мыши. Эта информация обрабатывается службами терминалов сервера в рамках сеанса конкретного пользователя. Хотя служба терминалов может одновременно работать с множеством сеансов, пользователь, входя в систему, видит процессы только своего индивидуального сеанса связи, управляемые серверной операционной системой и не зависящие от других клиентских сеансов.
Программное обеспечение "тонкого" клиента, посредством которого пользователь подключается к службам терминалов удаленного сервера, поставляется непосредственно в составе Windows Server 2003. Этот клиент может работать на различных версиях Windows. Чтобы обращаться к службам терминалов с других платформ (Macintosh или UNIX), требуется клиентское программное обеспечение сторонних производителей.
В предыдущих реализациях Windows службы терминалов могли работать в двух режимах: в режиме сервера приложений (application server) или в режиме удаленного управления (remote administration). В Windows Server 2003 нет необходимости осуществлять развертывание службы терминалов для того, чтобы получить возможность удаленного управления сервером. Для удаленного управления теперь можно использовать специальный механизм Remote Desktop for Administration (Удаленный доступ к рабочему столу для администрирования). Этот механизм подробно рассматривался в главе 10 "Типовые задачи администрирования". Службы терминалов в Windows Server 2003 позиционируется исключительно как механизм реализации эффективного и надежного способа совместного использования приложений Windows, установленных на сетевом сервере. Службы терминалов позволяют использовать рабочий стол Windows Server 2003 и наиболее современные приложения Windows на компьютерах, ресурсов которых (или возможностей) недостаточно для их выполнения. Работая со службами терминалов, пользователи могут запускать программы, работать с документами и сетевыми ресурсами так же, как и в случае локального компьютера.

Службы терминалов не включены в состав Windows Server 2003, Web Edition.



Достоинства служб терминалов


Рассмотрим ниже, какие преимущества можно получить при развертывании в корпоративной сети служб терминалов.
 Предоставление доступа к рабочему столу Windows Server 2003. Службы терминалов устраняют разрыв между "старшими" (Windows 2000, Windows ХР Professional) и "младшими" (Windows 95, Windows 3.x) версиями настольных систем, поддерживая рабочий стол Windows Server 2003 для компьютеров, не работающих под управлением Windows Server 2003 из-за технического несовершенства или аппаратной несовместимости. Клиенты служб терминалов доступны для разных платформ, включая MS-DOS, Windows-терминалы, Macintosh и UNIX. Поддержка для машин MS-DOS, Macintosh и UNIX обеспечивается с помощью клиентского ПО сторонних производителей (такое ПО поставляет, например, компания Citrix).  Использование существующих аппаратных средств. Службы терминалов продлевают жизнь устаревшим компьютерам. Службы терминалов также позволяют одновременно использовать компьютеры в качестве как "тонких", так и "толстых" клиентов. Компьютеры можно продолжать использовать в прежних целях, как и до развертывания служб терминалов (тонкий клиент эмулирует рабочий стол Windows Server 2003).  Централизованное развертывание программ. При использовании служб терминалов, функционирующих на компьютере Windows Server 2003, работа всей программы, а также обработка и хранение данных выполняются на сервере, что позволяет центршшзованно развертывать приложения. Службы терминалов гарантируют, что все клиенты будут работать с актуальным программным обеспечением. Программное обеспечение устанавливается только на сервере, а не на всех персональных компьютерах компании, что сокращает временные затраты.



Функциональные возможности


Ниже перечисляются новые функциональные возможности, открывающиеся перед пользователями в случае развертывания служб терминалов Windows Server 2003.
 Новая версия "тонкого" клиента. В Windows Server 2003 в качестве "тонкого" клиента используется специальная утилита Remote Desktop Connection. Эта утилита представляет собой универсальный инструмент, который может использоваться для удаленного подключения как к серверам служб терминалов Windows Server 2003, так и к службе Remote Desktop for Administration. Используя утилиту Remote Desktop Connection, пользователи могут самостоятельно создавать файлы, содержащие предопределенные параметры соединения с сервером служб терминалов. Установка этого клиента может быть автоматизирована за счет использования механизма назначения приложений (Windows Installer).  Автоматизированная поддержка локальных принтеров. Службы терминалов Windows Sewer 2003 могут автоматически устанавливать принтеры, подключенные к клиентскому компьютеру.  Перенаправление локальных дисков. При работе в контексте терминального сеанса пользователи сохраняют доступ к локальным дискам клиента. Пользователь может копировать файлы с сервера на локальный диск и наоборот, открывать в приложениях документы, хранящиеся на локальных дисках и т. п.  Перенаправление аудиоинформации. Аудиоинформация, поступающая на звуковую карту терминального сервера, может быть перенаправлена на звуковую карту клиента.  Перенаправление буфера обмена. Пользователи могут осуществлять обмен данными (вырезать и вставлять) между приложениями, работающими на локальной машине и на терминальном сервере посредством буфера обмена (clipboard).  Улучшенная производительность. Усовершенствованное кэширование обеспечивает существенное улучшение производительности служб терминалов.  Поддержка отключения от сервера. Поддержка временного отключения позволяет пользователям отключаться от сеанса связи, не завершая его. Сеанс может остаться активным, в то время как пользователь отключен от системы, что позволяет пользователю повторно соединяться с существующим сеансом с другой машины или позднее. Для повторного подключения требуется такой же вход в систему, как и для нового подключения, что обеспечивает безопасность и сохранность установленного сеанса.  Поддержка нескольких одновременных подключений. Пользователи могут подключаться к нескольким сеансам одновременно с одного или нескольких клиентских компьютеров, к нескольким серверам на базе Windows Server 2003 или к одному серверу. В результате пользователь может выполнять несколько задач одновременно.  Управление с помощью групповых политик. Посредством механизма групповых политик администратор может осуществлять централизованное управление конфигурацией служб терминалов и настройками пользователей, работающих с этими службами.  Поддержка механизма Windows Management Instrumentation (WMI). Реализованный в рамках служб терминалов Windows Server 2003 поставщик WMI позволяет использовать сценарии для автоматизированного и удаленного управления и конфигурирования терминальных служб.  Удаленное управление сеансами. Обеспечивается возможность просмотра и управления другими сеансами связи с терминальным сервером. Ввод с клавиатуры, движения мыши и отображаемая графика разделяются между двумя сеансами, давая специалисту из службы поддержки возможность диагностировать и решать проблемы и обучать пользователя работе. Эта возможность особенно полезна для организаций с филиалами.  Распределение нагрузки. Механизм Terminal Services Connection Management (TSCM) в комбинации с технологией распределения нагрузки (load balancing) позволяет пользователям подключаться к наименее загруженному серверу служб терминалов. Специальная служба каталога сеансов (Session Directory) следит за тем, чтобы в случае разрыва сеанса пользователь был подключен именно к тому серверу служб терминалов, с которым он работал ранее.  Возможность доступа через открытые сети (Интернет). В Windows Server 2003 предусмотрена возможность подключения к службам терминалов по протоколу HTTP. При этом используется специальный "тонкий" клиент Remote Desktop Web Connection. Данный клиент представляет собой ActiveX-компонент, который может быть загружен по HTTP при помощи браузера Internet Explorer.  Интеграция со службами Windows Server 2003. Службы терминалов поддерживают и расширяют компоненты Windows Server 2003 и тесно интегрированы с ними.  Терминалы на базе Windows. Существует ряд терминалов на базе Windows сторонних производителей, функционирующих под управлением ОС Windows СЕ и основанных на реализации протокола Remote Desktop Protocol (RDP, протокол удаленного рабочего стола).  Лицензирование служб терминалов. Службы терминалов имеют средства лицензирования, что помогает администраторам отслеживать работу клиентов и их лицензии.  Поддержка распределенной файловой системы (DFS). Поддержка распределенной файловой системы позволяет пользователям подключаться к ресурсам DFS, а администраторам — создавать и управлять ресурсами DFS на терминальном сервере.  Диспетчер служб терминалов. Администраторы могут использовать утилиту Terminal Services Manager (Диспетчер служб терминалов) для управления сеансами служб терминалов, пользователями и процессами на терминальном сервере Windows Server 2003.  Конфигурация служб терминалов. Средство конфигурации служб терминалов — оснастка Terminal Services Configuration (Настройка служб терминалов) используется для создания, изменения и удаления сеансов на сервере Windows Server 2003 и настройки параметров доступа сервера.  Интеграция с оснастками Windows Server 2003 Local Users and Groups (Локальные пользователи и группы) и Active Directory Users and Computers (Active Directory — пользователи и компьютеры). Создание учетных записей для пользователей служб терминалов и учетных записей обычных пользователей Windows Server 2003 осуществляется посредством одних и тех же инструментов. Существуют дополнительные вкладки для задания информации, относящейся к службам терминалов, например пути к конфигурации служб терминалов и основного каталога.  Интеграция с утилитой System Monitor (Системный монитор). Интеграция со средствами контроля производительности Windows Server 2003 позволяет администраторам отслеживать работу служб терминалов, включая использование процессора, распределение памяти и использование страничной памяти и подкачки для сеансов пользователей.  Поддержка передачи сообщений. Администраторы могут оповещать пользователей о важной информации, например, о выключении системы, об обновлениях или об установке новых программ.  Время ожидания завершения сеанса. Администраторы могут сократить использование ресурсов сервера, настраивая время ожидания конца сеанса. Администраторы могут задавать продолжительность и время простоя сеанса.  Режимы безопасности. Сервер служб терминалов может работать в одном из двух режимов безопасности (в зависимости от того, с какими приложениями планируется использовать): в режиме полной безопасности и в режиме ослабленной безопасности. Режим полной безопасности позволяет задействовать механизмы безопасности Windows Server 2003 и реализовать наиболее защищенное решение.  Шифрование. Многоуровневое шифрование позволяет администраторам зашифровать все или часть данных, передаваемых между Windows Server 2003 и клиентом служб терминалов, при помощи одного из трех уровней (низкое, среднее или высокое шифрование), в зависимости от требований к безопасности. Кроме того, процесс входа в систему для служб терминалов включает механизмы изменения паролей, разблокирования рабочего стола и хранителя экрана. Процесс входа в систему зашифрован, что гарантирует безопасную передачу имени пользователя и пароля. Службы терминалов поддерживают шифрование данных между сервером и клиентом с ключом 56 бит и 128 бит.  Ограничение числа попыток входа в систему и времени соединения. Администраторы могут ограничить число входов в систему для пользователя, чтобы предотвратить несанкционированный доступ к серверу. Также можно ограничить время соединения для каждого пользователя или для группы пользователей.



Административные средства для работы со службами терминалов


В состав Windows Server 2003 включены административные средства, которые позволяют осуществлять управление и конфигурирование сервера терминалов. В состав служб терминалов входят следующие дополнительные инструменты управления службами терминалов:
 диспетчер служб терминалов (Terminal Services Manager);  оснастка Terminal Services Configuration;  дополнительные параметры групповых политик;  оснастка Remote Desktops;  расширения для оснасток Active Directory Users and Computers (Active Directory — пользователи и компьютеры) и Local Users and Groups (Локальные пользователи и группы);  утилита Terminal Services Licensing (Лицензирование служб терминалов);  счетчики для System Monitor;  дополнительные поля в диспетчере задач (Task Manager);  многопользовательская поддержка в утилите Add or Remove Programs (Установка и удаление программ) на панели управления;  утилиты командной строки.



Утилита Terminal Services Manager


Утилита Terminal Services Manager (Диспетчер служб терминалов) используется для управления инфраструктурой серверов терминалов, развернутых в корпоративной сети. Администратор может использовать ее для управления пользователями, сеансами связи и приложениями на терминальных серверах (рис. 17.1).



Рис. 17.1. Утилита Terminal Services Manager

Когда пользователь устанавливает сеанс, подключаясь к терминальному серверу с клиентского компьютера, то подключение (session) появляется в списке сеансов в рабочем поле диспетчера служб терминалов. Кроме того, имя пользователя, который вошел в систему в данном сеансе, появляется в списке пользователей (на вкладке Users). Любые приложения, работающие в сеансе связи пользователя, отражаются в списке процессов (на вкладке Processes). Таким образом, можно наблюдать за всеми пользователями, сеансами связи и процессами на терминальном сервере при помощи одной утилиты. Диспетчер служб терминалов также позволяет управлять терминальным сервером при помощи команд меню Actions (Действие).



Оснастка Terminal Services Configuration


Во время инсталляции Windows Server 2003 и установки служб терминалов автоматически настраивается соединение по протоколу RDP (Remote Desktop Protocol) для работы со службами терминалов и удаленного администрирования. Это соединение обеспечивает клиентам вход в систему на сервер и установление сеанса. После завершения инсталляции можно изменить свойства этого соединения или добавить новые соединения с помощью оснастки Terminal Services Configuration (рис. 17.2). Параметры соединения могут также определяться на уровне групповой политики или при помощи механизма WMI. В этом случае настройки, сделанные при помощи оснастки Terminal Services Configuration, переопределяют настройки, заданные на других уровнях.



Рис. 17.2. Оснастка Terminal Services Configuration

Используя оснастку Terminal Services Configuration, администратор может выполнить следующие операции:
 изменить имя соединения;  задать тип соединения;  определить транспортные протоколы для соединений и их свойств;  установить максимальное число одновременных сеансов связи;  разрешить/запретить вход через соединение;  установить тайм-аут для соединения;  установить уровень шифрования;  восстановить разорванное соединение;  разрешить/запретить удаленное управление сеансом;  разрешить/запретить автоматический вход;  задать программу, автоматически запускаемую при входе в систему;  установить "обои" для пользователя;  установить разрешения для соединения;  отобразить клиентские устройства и настроить параметры соединения.



Расширения оснасток Active Directory Users and Computers и Local Users and Groups


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



Рис. 17.3. Окно свойств учетной записи пользователя в расширенной оснастке Local Users and Groups



Утилита Terminal Services Licensing


Эта утилита позволяет управлять лицензиями клиентов служб терминалов (рис. 17.4) и регистрировать их.



Рис. 17.4. Утилита Terminal Services Licensing



Счетчики System Monitor


Службы терминалов расширяют возможности системного монитора, добав-ляя объекты наблюдения Session (Сеанс) и User (Пользователь). Эти объекты и ассоциированные с ними счетчики предназначены для того, чтобы следить за ресурсами, которые задействованы службой или некоторым сеансом. Службы терминалов также добавляют дополнительные счетчики к объектам наблюдения Process (Процесс) и System (Система).



Дополнительные поля диспетчера задач


Службы терминалов добавляют в диспетчер задач (Task Manager) два дополнительных поля, позволяющих отслеживать использование пользователями и сеансами системных ресурсов (рис. 17.5).



Многопользовательская поддержка в утилите Add or Remove Programs


Использование утилиты Add or Remove Programs гарантирует, что приложения будут корректно установлены для использования в многопользовательской среде.

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



Рис. 17.5. Дополнительные поля диспетчера задач



Клиентские административные утилиты


В рамках Windows Server 2003 предлагается два клиента, которые могут быть использованы для подключения к службам терминалов и удаленного администрирования системы.



Клиент Remote Desktop Connection


Этот клиент позиционируется как основной клиент для работы со службами терминалов и выполнения удаленного администрирования (механизм Remote Desktop for Administration). Этот клиент включен в состав Windows XP и Windows Server 2003. Тем не менее, он может быть использован и на других операционных системах семейства Windows. Для этого необходимо скачать инсталляционные файлы клиента с терминального сервера (папка %5>wfc/M,/to0/%\system32\lients\tsclient) или с веб-сервера Microsoft. Используя утилиту Remote Desktop Connection, пользователи могут самостоятельно создавать файлы, содержащие определения параметров подключения к службам терминала. Эти файлы позволяют автоматизировать процесс установки соединения со службами терминалов и входа на сервер. Можно также задать программу, запускаемую автоматически после установления соединения.



Клиент Remote Desktop Web Connection


Данный клиент представляет собой ActiveX-компонент, загружаемый в браузер пользователя при помощи протокола HTTP с корпоративного вебсервера. Наличие веб-клиента упрощает процесс подключения пользователей к службам терминала. Пользователю при этом не нужно устанавливать на своем компьютере дополнительное программное обеспечение клиента. Достаточно наличие браузера Internet Explorer версии 4.0 и выше. Следует заметить, что этот клиент не устанавливается по умолчанию. Чтобы сделать его доступным для пользователей, администратор должен установить его вручную.



Планирование системы для установки служб терминалов


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



Ресурсы


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

При выяснении требуемой мощности серверов нужно определить, какие типы пользователей будут с ними работать. Пользователи, решающие частные задачи, — наиболее легкая нагрузка для сервера, в то время как пользователи-профессионалы потребляют наибольшее количество вычислительных ресурсов.
Для адекватной производительности серверу терминалов требуется процессор класса Pentium или более мощный. Для работы служб терминалов требуется минимум 128 Мбайт ОЗУ плюс дополнительно от 10 Мбайт на каждого пользователя, решающего частные задачи, до 21 Мбайт для пользователей-профессионалов. Дополнительная оперативная память требуется для поддержки работы пользовательских программ на сервере. Пользователям, решающим частные задачи, требуется меньший объем ОЗУ, опытным пользователям — больший.
Вообще, для оценки требований к производительности процессоров и их числу, а также к объему памяти можно руководствоваться линейной зависимостью: можно предоставить ресурсы вдвое большему числу пользователей на многопроцессорной системе на базе Pentium, удваивая число процессоров и удваивая объем памяти. По этой причине имеет смысл купить систему, поддерживающую несколько процессоров (даже если первоначально куплен только один процессор), поскольку она позволит легко нарастить мощности, как только возрастет потребность. При реальной эксплуатации ситуация может оказаться более сложной. Количество памяти линейно определяет число пользователей, которых сервер может обслуживать одновременно. Эта зависимость является объективной, т. к. каждый сеанс требует вполне конкретных объемов памяти. Если объем физической памяти окажется меньше необходимого, система будет производить постоянный процесс подкачки, или свопинга (swapping). Количество процессоров влияет на общую производительность машины, на скорость выполнения инструкций. Нельзя также не учесть и производительность, например, дисковой подсистемы. В результате в реальной ситуации зависимость допустимого количества сеансов от объема памяти и количества и производительности процессоров не является линейной и должна оцениваться экспериментально.

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



Периферийные устройства


Производительность жесткого диска также влияет на производительность терминального сервера. Накопители на магнитных дисках и адаптеры SCSI, особенно устройства, совместимые с Fast SCSI, SCSI-2, Wide и Ultra-Wide SCSI, имеют значительно лучшую производительность, чем диски с интерфейсом IDE (EIDE, ATA) или накопители на магнитных дисках и адаптеры SCSI.
Наивысшую производительность дает SCSI-контроллер RAID. Контроллеры RAID (Redundant Array of Independent Disks, избыточный массив независимых дисков) автоматически размещают данные на нескольких накопителях на магнитных дисках, что увеличивает производительность дисковых операций и повышает надежность хранения данных за счет избыточности.
Хотя протокол RDP, используемый службами терминалов, минимально нагружает сеть, рекомендуется установить высокопроизводительную сетевую плату (NIC). Это особенно важно, если требуются: поддержка большого количества пользователей; доступ к данным, хранящимся на сетевых серверах; работа клиент-серверных приложений.
Если для поддержки удаленных пользователей установлен многопортовый асинхронный адаптер, необходимо убедиться, что он является интеллектуальным (построенным на базе микропроцессора), что уменьшает количество вырабатываемых прерываний и увеличивает производительность.



Прикладные системы


Windows Server 2003 — 32-разрядная среда, а, например, Windows 3.11 — 16-разрядная. Сервер Windows Server 2003 организует выполнение 16-разрядных приложений при помощи специальной виртуальной машины Windows-в-Windows (Windows On Windows, WOW), интерпретирующей 16-разрядные программы в расширенном режиме. Этот процесс, выполняя 16-разрядные программы, потребляет дополнительные ресурсы системы. Выполнение 16-разрядных программ на сервере терминалов может на 40% уменьшить число пользователей, одновременно поддерживаемых процессором, и на 50% увеличить память, необходимую для пользователя. По этой причине всегда, когда это возможно, следует использовать 32-разрядные версии программ.



Производительность


Контроль производительности системы и влияния изменения конфигурации на производительность необходимо выполнять средствами системного монитора (System Monitor), входящего в состав Windows Server 2003. Среди наиболее важных параметров, измерение которых может потребоваться:
 использование процессора;  интенсивность ввода/вывода с жесткого диска;  использование памяти;  активность работы с файлом подкачки.

Хороший способ оценить, сколько пользователей сервер может поддерживать одновременно, — измерить производительность системы с двумя-пятью пользователями, а затем подсчитать результаты для большего числа пользователей.
Службы терминального доступа добавляют к набору объектов собственные объекты и их счетчики, которые можно наблюдать при помощи системного монитора.



Балансировка нагрузки


Средства балансировки сетевой нагрузки объединяют несколько компьютеров, работающих в качестве серверов и использующих сетевой протокол TCP/IP. Можно применять эту службу совместно с группой компьютеров, на которых функционируют службы терминалов, чтобы масштабировать производительность этих служб, распределяя клиентские запросы на несколько серверов. Однако при использовании балансировки нагрузки для терминальных серверов имеются ограничения. Поскольку пользователи могут быть явно связаны с различными терминальными серверами в пределах группы, сеансы связи пользователей могут быть нарушены, если они будут перераспределены на другой терминальный сервер. В качестве механизма, обеспечивающего сохранение информации о сеансе, в составе Windows Server 2003 реализована специальная служба Session Directory (Каталог сеансов). Каталог сеансов представляет собой базу данных, в которой фиксируется информация обо всех существующих сеансах. Если пользователь разорвал соединение с терминальным сервером, при последующем подключении он будет вновь подключен к тому серверу, с которым работал.
Будучи запущенной, служба Session Directory создает локальную группу Session Directory Computers. Состав этой группы по умолчанию остается неизменным. Администратор должен вручную добавить в эту группу серверы, с которыми указанная служба будет работать.

Для запуска службы Session Directory администратор должен в оснастке Service (Службы) вызвать окно свойств объекта Terminal Services Session Directory и нажать кнопку Start (Пуск).
Администратор может осуществлять настройку службы Session Directory при помощи механизма групповых политик либо посредством утилиты Terminal Services Configuration.



Установка служб терминалов


По умолчанию службы терминалов не устанавливаются в ходе инсталляции операционной системы Windows Server 2003 (исключение составляют ситуации, когда выполняется обновление с Windows 2000 или Windows NT 4.0 Terminal Edition). Администратор должен выполнить установку этих служб самостоятельно.

В отличие от терминальных служб, служба Remote Desktop for Administration устанавливается в ходе инсталляции Windows Server 2003 по умолчанию. Эта служба позиционируется как средство удаленного администрирования сервера. Она поддерживает до двух одновременных удаленных подключений.

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

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



Выбор модели обеспечения безопасности


Службы терминалов Windows Server 2003 могут функционировать в одном из двух режимов обеспечения безопасности, которые рассматриваются ниже.
 Режим ослабленной безопасности (Relaxed security). Этот режим предусматривает использование разрешений, совместимых с Windows NT 4.0 Terminal Edition. Использование этого режима может потребоваться для корректной работы многопользовательских приложений, разработанных для указанной операционной системы. Поскольку используемая система разрешений делает терминальный сервер уязвимым, рекомендуется использовать этот режим только в тех случаях, когда это действительно вызвано объективными причинами.  Режим полной безопасности (Full Security). Этот режим позволяет реализовать в полной мере механизмы обеспечения безопасности, имеющиеся в Windows Server 2003.



Выполнение установки служб терминалов


Установка служб терминалов может быть выполнена двумя способами:
 при помощи мастера Configure Your Server Wizard. Этот мастер располагается в меню Administrative Tools (Администрирование). На странице Server Role (Роль сервера) необходимо выбрать в списке значение Terminal server (Терминальный сервер) и нажать кнопку Next (Далее) (рис. 17.6). Мастер сам выполнит установку и предварительное конфигурирование всех необходимых компонентов. По окончании процедуры установки мастер перезагрузит сервер;



Рис. 17.6. Развертывание служб терминалов при помощи мастера Configure Your Server Wizard

 с использованием утилиты Add or Remove Programs. Из этой утилиты необходимо запустить мастер установки компонентов Windows. В списке компонентов необходимо выбрать пункт Terminal server и нажать кнопку Next (Далее). Мастер предложит выбрать режим обеспечения безопасности для устанавливаемого терминального сервера.



Предоставление доступа пользователям к службам терминалов


По умолчанию только члены локальных групп Administrators и Remote Desktop Users имеют возможность подключаться к терминальному серверу непосредственно по окончании процедуры установки. Чтобы предоставить некоторой группе пользователей право доступа к терминальному серверу, администратор должен включить их в состав локальной группы Remote Desktop Users. Эта группа создается пустой и администратор должен сам позаботиться о том, чтобы определить ее членов.



Развертывание приложений


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



Сценарии поддержки совместимости


Совместимость многих часто используемых приложений и служб терминалов была проверена. Для корректной работы на терминальном сервере некоторые приложения требуют незначительных изменений после инсталляции. Для этих приложений доступны сценарии, которые должны быть применены после установки программы. Сценарии расположены в каталоге %SystemRoot%\Applicalion Compatibility Scripts\Install.



Назначаемые и публикуемые программы


В Windows Server 2003 реализован механизм Windows Installer (Инсталлятор программного обеспечения), позволяющий администратору организовать процесс установки приложений на клиентских местах.
Приложение может быть назначено (assign) компьютерам или пользователям для принудительной установки или же опубликовано (publish), что позволяет пользователям устанавливать его по собственному усмотрению. Поскольку при использовании служб терминалов к программам имеют доступ пользователи с разными полномочиями и требованиями, необходимо учесть дополнительные требования к развертыванию приложений в средах, которые содержат в своем составе службы терминалов.
Все приложения на компьютере, где функционируют службы терминалов, устанавливаются так, что доступны любому пользователю, имеющему доступ к данному терминальному серверу. Службы терминалов не позволяют запускать публикуемые и назначаемые пользователю программы, поскольку такие программы "привязываются" к конкретному пользователю. Поэтому программы, инсталлируемые для работы через службы терминалов, нужно назначать компьютеру.
При установке назначенных программ любой пользователь с полномочиями администратора на терминальном сервере может установить программу из консоли или удаленного сеанса.
Инсталляция программного обеспечения часто требует перезагрузки системы. Перед началом инсталляции любой программы необходимо убедиться, что на терминальном сервере нет работающих пользователей. При необходимости следует отправить подключенным пользователям сообщение о том, что они будут временно отключены от сервера.
Если программа, устанавливается из удаленного сеанса, то этот сеанс будет завершен, если процесс инсталляции программы требует перезагрузки сервера. Когда сервер перезагрузится, сеанс не будет восстановлен, и администратор снова должен будет войти на терминальный сервер, чтобы гарантировать корректную установку программы.



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


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

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

Установка приложения в многотерминальном режиме может быть выполнена одним из двух способов. Каждый из этих способов позволит сделать приложение доступным для всех пользователей терминального сервера:
 автоматизированный процесс установки при помощи утилиты Add or Remove Programs;  ручная установка приложения с использованием утилиты командной строки change user до и после установки.

Использование утилиты Add or Remove Programs
Перед выполнением процедуры установки закройте все работающие приложения. Из панели управления запустите утилиту Add or Remove Programs (Установка и удаление программ). В открывшемся окне нажмите кнопку Add New Program (Установка новой программы). Выберите метод установки программы и следуйте дальнейшим командам мастера.
В диалоговом окне Change User Options (Пользовательская настройка) выберите переключатель All users begin with common application settings (Все пользователи начинают с одинаково настроенного приложения), чтобы установить приложение для всех пользователей. Выберите переключатель Install application settings for this user only (Задать настройку приложения исключительно для данного пользователя), если не нужно конфигурировать устанавливаемую программу для нескольких пользователей. Затем нажмите кнопку Finish (Готово).
Мастер выполнит оставшуюся часть процесса установки. Для безопасности программа должна быть установлена в разделе, отформатированном под файловую систему NTFS.
После установки, при необходимости, отредактируйте и выполните сценарий инсталляции программы.

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

Использование утилиты change user
Когда пользователь запускает программу, пользовательские установки в системном реестре, файлы настройки (*.ini, *.dll, *.осх и т. д.) по необходимости автоматически копируются в домашний каталог пользователя. Утилита командной строки change user позволяет запретить отображение устанавливаемых файлов приложения на .домашний каталог пользователя. Таким образом INI-файлы приложения будут установлены непосредственно в корневом каталоге системы. Это делает программы доступными в многотерминальном режиме.
Утилита Add or Remove Programs автоматически выполняет команду change user и является предпочтительным методом установки. Выполнение ручной установки требуется только в том случае, когда приложение использует нестандартный метод установки и если необходимо гарантировать возможность доступа к этой программе в многотерминальном режиме.
Утилита командной строки change user должна выполняться со специальными ключами:
 команда change user /install выполняется перед процедурой установки приложения. Она переводит систему в режим установки и выключает отображение INI-файлов. Система записывает первоначальную установку программы, отслеживая API-вызовы установки;  команда change user /execute выполняется непосредственно по окончании процесса установки. Она возвращает систему в режим выполнения, восстанавливает отображение INI-файлов и переадресовывает пользовательские данные в основной каталог пользователя.

Не копируйте программные файлы из одного каталога в другой и не редактируйте вручную системный реестр во время инсталляции.

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



Проверка установки


Некоторые программы, установленные с помощью команды change user, не могли бы работать сначала из-за того, что система находится в заблокированном состоянии. Некоторые 16-разрядные программы должны иметь доступ на запись в каталог, где программа хранит INI-файлы. Некоторые 32-разрядные программы создают в системном реестре записи, необходимые для правильной работы системы.
Рекомендуется следующий сценарий проверки успешности установки приложения. Разрешите регистрацию событий. После этого зарегистрируйтесь на сервере, используя временную учетную запись пользователя, созданную, чтобы сымитировать работу пользователя или пользователей, которые будут работать с данной программой. Запустите установленное приложение и смоделируйте основные процедуры ее использования. Просмотрев журнал событий, определите, к каким файлам и каталогам пользователю для правильной работы нужен доступ для записи и к каким ключам реестра — доступ для чтения.
Можно создать две учетные записи пользователя и проверить каждую на правильную работу приложения. Это позволит сделать изменения, настроить установки и шаблоны пользователей и проверить, чтобы эти изменения не затронули других пользователей той же группы. Необходимо следить за всеми файлами и проблемами, которые возникают при работе приложений.



Конфигурирование служб терминалов


В распоряжении администратора имеются три механизма, посредством которых он может осуществлять управление конфигурацией служб терминалов на корпоративных серверах:
 параметры групповых политик (Group Policy);  механизм WMI;  оснастка Terminal Services Configuration.

Параметры конфигурации, определенные при помощи оснастки Terminal Services Configuration, переопределяют настройки, заданные на других уровнях.
Кроме того, параметры подключения к службам терминалов могут быть заданы на уровне отдельных пользователей. Для этого используются расширенные версии оснасток Active Directory Users and Computers и Local Users and Groups.
В общем случае используется следующая очередность применения параметров конфигурации служб терминалов, определенных на различных уровнях:
1. Параметры групповой политики, определенные на уровне компьютера.
2. Параметры групповой политики, определенные на уровне пользователя.
3. Параметры, определяемые в рамках Terminal Services WMI, а также параметры, заданные посредством оснастки Terminal Services Configuration.
4. Параметры, определенные на уровне учетной записи пользователя.
5. Локальные настройки клиента.

Хотя в большинстве случаев механизм групповых политик является наиболее предпочтительным вариантом конфигурирования компонентов Windows Server 2003, в случае служб терминалов это справедливо только, если все терминальные серверы находятся под управлением данной операционной системы. В случае использования терминальных серверов различных версий (Windows 2000 или Windows NT 4.0 Terminal Edition) рекомендуется осуществлять конфигурирование служб терминалов посредством оснастки Terminal Services Configuration.



Управление службами терминалов


Управление службами терминалов осуществляется при помощи утилиты Terminal Service Manager. Перечень возможных операций (команд меню) перечислен в табл. 17.1. Доступ к перечисленным операциям возможен через меню Actions (Действия).

Таблица 17.1. Операции по управлению службами терминалов

Операция
Описание
Требуемое разрешение
Connect
(Подключиться к сеансу)
Позволяет пользователю подключаться к другому сеансу. Подключение к сеансу, в настоящее время используемому другим пользователем, может привести к потере данных пользователя. При установлении соединения с другим сеансом происходит отключение от предыдущего сеанса. Если на сервере создано несколько сеансов, с помощью этой опции можно переключаться между ними. Невозможно подключиться к другому сеансу с консоли
User Access (Пользовательский доступ) или Full Control (Полный доступ)
Disconnect
(Отключиться от сеанса)
Отключает пользователя от сеанса. Сеанс остается на сервере терминалов в отключенном состоянии, и выполняющиеся в это время приложения продолжают работать. При попытке повторного соединения с сервером повторное подключение происходит с использованием того же сеанса, от которого было выполнено отключение, даже если повторное соединение инициализируется с другого компьютера. Незакрытые перед отключением приложения продолжают работать без потери данных и когда происходит повторное подключение к сеансу. Это полезно при изменении местоположения (например, при переезде пользователя с работы домой)
Full Control (Полный доступ)
Send Message
(Отправить сообщение)
Позволяет пользователю послать сообщение сеансу другого пользователя. Например, администратор может отправить сообщение пользователю перед отключением или выходом пользователя из сеанса
User Access (Пользовательский доступ) или Full Control (Полный доступ)
Remote Control
(Удаленное управление)
Позволяет пользователю наблюдать или удаленно управлять сеансом другого пользователя, управлять действиями сеанса и взаимодействовать с ним по необходимости. Пользователя, сеансом которого требуется управлять, можно предупредить до начала управления его сеансом
Full Control (Полный доступ)
Reset
(Сброс)
Позволяет немедленно удалить сеанс. Сброс сеанса пользователя без предупреждения может привести к потере данных в этом сеансе. Необходимо сбросить сеанс, только если он работает со сбоями или прекращает отвечать. Если вы сбрасываете сеанс-слушатель (listener session), все сеансы, использующие это соединение (connection), будут сброшены
Full Control (Полный доступ)
Status
(Состояние)
Позволяет просматривать связанные с сеансом счетчики, например количество приходящих и исходящих байтов и кадров. Информацию о состоянии для консоли и сеансов слушателя нельзя отобразить
User Access (Пользовательский доступ) или Full Control (Полный доступ)
Log off
(Выход)
Заставляет пользователя завершить ,£еанс работы на сервере. Выход пользователя без предупреждения может привести к потере данных сеанса. Когда работу с сеансом завершат все пользователи, все процессы завершатся, а сеанс будет удален с сервера
Full Control (Полный доступ)
End Process
(Завершить процесс)
Позволяет завершить процесс, который выполняется в сеансе пользователя. Это полезно, когда приложение прекратило отвечать. Окончание процесса без предупреждения может привести к потере данных сеанса
Full Control (Полный доступ)

Рассмотрим эти операции более подробно.

Подключение к другому сеансу


В пространстве имен утилиты Terminal Service Manager вызовите контекстное меню сеанса и выберите в нем пункт Connect (Подключить). Произойдет подключение к другому сеансу и отключение от предыдущего сеанса (рис. 17.7).

Невозможно подключиться к другому сеансу из консольного сеанса. Другими словами, пользователь или администратор может выполнить подключение к другому сеансу только в рамках терминального подключения. В случае работы в консоли опция Connect (Подключить) недоступна.

Всегда можно подключиться к сеансу, в котором был произведен вход с той же самой учетной записью. Чтобы подключиться к сеансу другого пользователя, нужно иметь разрешение Full Control (Полный доступ) или User Access (Пользовательский доступ) на подключение к другому сеансу.

Можно подключиться к сеансу в активном или разъединенном состоянии.



Рис. 17.7. Подключение к другому сеансу



Отключение от сеанса


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

Всегда можно отключиться от собственного сеанса, но чтобы отключить другого пользователя от сеанса, нужно иметь разрешение Full Control (Полный доступ).
Отключиться от сеанса можно также с помощью команды tsdiscon.



Отправка сообщения пользователю


В пространстве имен утилиты Terminal Service Manager вызовите контекстное меню интересующего сеанса и выберите в нем пункт Send Message (Отправить .сообщение). В открывшемся окне необходимо заполнить поля Message title и Message (рис. 17.8). В поле Message title (Заголовок сообщения) указывается заголовок сообщения, а в поле Message (Сообщение) — требуемое сообщение. Если необходимо ввести больше одной строки, нажмите клавиши <Ctrl>+<Enter> для разрыва строки. Чтобы отправить сообщение, нажмите кнопку ОК.



Рис. 17.8. Отправка сообщения

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

Чтобы послать сообщение пользователю, нужно иметь разрешение User Access (Пользовательский доступ) или Full Control (Полный доступ).
Послать сообщение пользователю можно также с помощью команды msg.



Завершение сеанса


В пространстве имен утилиты Terminal Service Manager выберите объект, ассоциированный с терминальным сервером. В результирующей панели оснастки на вкладке Users (Пользователи) вызовите контекстное меню интересующего пользователя и выберите в нем пункт Log off (Выход из системы). Пользователь всегда может завершить собственный сеанс, но чтобы завершить сеанс другого пользователя, он должен иметь разрешение Full Control (Полный доступ).

Завершение сеанса пользователя без предупреждения может привести к потере данных. Нужно послать сообщение, чтобы предупредить пользователя. После выхода пользователя все процессы будут завершены, и сеанс будет удален с сервера.
Можно также использовать команду logoff, чтобы заставить пользователя выйти из сеанса.



Сброс сеанса


В пространстве имен утилиты Terminal Service Manager вызовите контекстное меню интересующего сеанса и выберите в нем пункт Reset (Сброс). Сеанс будет немедленно удален с сервера. Всегда можно сбросить собственный сеанс, но для сброса сеанса другого пользователя нужно иметь разрешение Full Control (Полный доступ).

Сброс сеанса пользователя без предупреждения может привести к потере данных. Сеанс рекомендуется сбрасывать только в случае, когда он работает со сбоями или не отвечает. Если вы сбрасываете сеанс слушателя (listener), все сеансы, использующие это соединение, будут сброшены.
Сбросить сеанс можно также с помощью команды reset session.



Просмотр состояния сеанса


В пространстве имен утилиты Terminal Service Manager вызовите контекстное меню интересующего сеанса и выберите в нем пункт Status (Состояние). Откроется окно, в котором будет отображено значение счетчиков, связанных с сеансом (рис. 17.9).
Нажав кнопку Reset Counters (Сброс счетчиков), администратор может обнулить показания счетчиков. Пользователь всегда может просматривать информацию о состоянии собственного сеанса, но для просмотра информации о состоянии сеанса другого пользователя он должен иметь разрешение Full Control (Полный доступ) или User Access (Пользовательский доступ).



Рис. 17.9. Получение информации о состоянии сеанса

Невозможно просматривать информацию о состоянии для консольного сеанса и сеанса-слушателя (listener).



Удаленное управление сеансом


В пространстве имен утилиты Terminal Service Manager вызовите контекстное меню интересующего сеанса и выберите в нем пункт Remote control (Удаленное управление). Откроется одноименное диалоговое окно. В поле Hot key (Комбинация клавиш) выберите клавиши, которые будут использоваться для завершения сеанса удаленного управления, и нажмите кнопку ОК. По умолчанию используется комбинация клавиш <Ctrl>+<*> на цифровой клавиатуре.
До начала управления сервер предупреждает пользователя, что данный сеанс будет управляться удаленно, если прием предупреждения не запрещен. Сеанс блокируется в течение нескольких секунд, пока ожидается ответ пользователя.
После начала сеанса удаленного управления текущий сеанс совместно использует каждую операцию ввода/вывода с управляемым сеансом.
По окончании удаленного управления нажмите клавиши <Ctrl>+<*> (или заданную в поле Hot key комбинацию).

Для удаленного управления другим сеансом необходимо иметь разрешение Full Control (Полный доступ).

Чтобы настраивать параметры удаленного управления для подключения, используйте оснастку Terminal Services Configuration. Можно также настроить удаленное управление для каждого пользователя при помощи расширений терминальных услуг в оснастках управления пользователями.
Текущий сеанс должен иметь разрешение экрана не меньшее, чем используемое сеансом, которым необходимо удаленно управлять, иначе такое управление будет невозможно.

Консольный сеанс не может ни удаленно управлять, ни удаленно управляться другим сеансом.
Удаленно управлять другим сеансом можно также с помощью команды shadow.



Завершение процесса


В пространстве имен утилиты Terminal Service Manager вызовите контекстное меню интересующего сеанса и выберите в нем пункт End Process (Завершить процесс).
Завершение процесса без предупреждения может привести к потере пользовательских данных.



Подключение к серверам


В пространстве имен утилиты Terminal Service Manager выберите корневой объект и в меню Actions (Действия) выберите пункт Connect to Computer (Подключиться к компьютеру).

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

Утилита Terminal Service Manager позволяет администратору добавлять часто просматриваемые терминальные серверы в группу Favorites servers (Избранные серверы). Чтобы добавить сервер в эту группу, выберите сервер и в его контекстном меню выберите команду Add to Favorites (Добавить в избранное).



Использование утилит командной строки


В табл. 17.2 кратко описано назначение утилит командной строки при работе со службами терминалов. Для получения большей информации о синтаксисе использования этих команд обратитесь к подсказке по данной команде (через справочную систему Windows или введя в командной строке <имя команды> /?).

Таблица 17.2. Утилиты командной строки для управления службами терминалов

Утилита
Описание
change logon
Временно отключает/разрешает вход в систему на сервер терминалов
change port
Изменяет отображение СОМ-порта для совместимости программ MS-DOS
change user
Изменяет отображение INI-файлов для текущего пользователя
cprof ile
Удаляет определенные пользователем файловые ассоциации из профиля пользователя
flattemp
Разрешает/запрещает "плоские" временные каталоги пользователей
logoff
Завершает сеанс клиента
msg
Посылает сообщение одному или более клиентам
mstsc
Запускает утилиту Remote Desktop Connection
query process
Отображает информацию о процессах
query session
Отображает информацию о сеансах, установленных на терминальном сервере
query termserver
Отображает список терминальных серверов в сети
query user
Отображает информацию о пользователях, зарегистрированных в системе
register
Позволяет выполнить регистрацию приложения, чтобы она соответствовала определенным характеристикам
reset session
Сбрасывает сеанс связи
shadow
Служит для управления сеансом другого пользователя
tscon
Служит для подключения к другому существующему сеансу связи с терминальным сервером
tsdiscon
Отключает клиента от сеанса связи
tskill
Завершает процесс
tsprof
Копирует конфигурацию пользователя и изменяет путь конфигурации
tsshutdn
Завершает работу терминального сервера


Управление качеством обслуживания (QoS)


В Windows Server 2003 реализованы элементы технологии Управление качеством обслуживания (Quality of Service, QoS), которая поддерживается и в других версиях Windows. Эта технология позволяет администраторам сети переходить к новому поколению приложений, интенсивно использующих среду передачи данных и требующих строгих временных характеристик, при сохранении возможности управления трафиком в сети. Независимые поставщики программного обеспечения могут использовать преимущества прикладных интерфейсов для того, чтобы получить лучшее качество сетевого обслуживания для своих критических по времени или потоковых приложений.
Растущая с каждым годом ширина полосы пропускания, доступная при использовании сетевых архитектур Fast Ethernet и Gigabit Ethernet, поощряет разработку и развертывание приложений, работающих с потоковым видео, звуком в реальном масштабе времени, видеоконференц-связью, интерактивной связью, и других приложений, требующих доставки данных с малым временем ожидания. Кроме того, есть много приложений, критических по времени, которые не являются приложениями мультимедиа, но требуют жесткой гарантии качества обслуживания. Именно поэтому поддержка технологий QoS в Windows Server 2003 особенно важна.
Windows QoS включает поддержку протокола резервирования ресурсов RSVP (Resource Reservation Protocol), разработанного проектной целевой группой Интернета (Internet Engineering Task Force, IETF), и другие элементы, обеспечивающие тот тип качества обслуживания (QoS), который мог бы иначе быть получен только при сквозном использовании сетей с асинхронным режимом передачи (Asynchronous Transfer Mode, ATM). Кроме того, Windows QoS может функционировать поверх сетей разнородной топологии, включая, например, Ethernet и ATM.
Windows QoS обеспечивает основу для доставки интенсивного и требовательного ко времени доставки трафика и предоставляет администраторам сети полный контроль над использованием полосы пропускания. Администраторы сети могут применять Windows QoS для следующих целей:
 предотвращение нарушения режима эксплуатации сетевых ресурсов неадаптивными протоколами (типа UDP);  распределение ресурсов между трафиком с наилучшим возможным качеством (best-effort) и между более или менее приоритетным трафиком;  резервирование ресурсов для выделенных пользователей;  разделение доступа к ресурсам по приоритетам, основанным на пользователях.

Технология QoS в Windows Server 2003 позволяет стратегически управлять качеством обслуживания, распределяя ширину полосы пропускания: например, равномерно — для всех отделов в течение определенного периода времени или по приоритетам — для разных типов трафика. Такое распределение гарантирует, что приложениям, требующим предоставления QoS, будет выделена та часть полосы пропускания, в которой они нуждаются, без превышения заданных администратором ограничений ширины полосы пропускания.
Windows QoS также поддерживает управление качеством обслуживания для приложений, при этом заданная администратором ширина полосы пропускания может быть выделена критическим приложениям, таким как ночная инвентаризация или банковские транзакции.
Механизм QoS, реализованный в Windows Server 2003, поддерживает:
 службу Admission Control Service (Служба управления допуском) — для распределения сетевых ресурсов на основе топологии, доступности ресурса и политики, связанной с пользователями или приложениями;  протокол RSVP (Resourse Reservation Protocol, протокол резервирования ресурсов) — протокол передачи сигналов, который позволяет отправителю и получателю в сеансе связи запросить ресурсы, получить и сообщить своим соседям информацию об используемой стратегии сети.

Кроме того, поддерживаются базовые функции управления трафиком:
 охрана трафика, формирование и управление порядком следования пакетов (включая уменьшение времени ожидания на медленных линиях);  управление битами старшинства в IP для определения уровня приоритета сетевых устройств уровня 3;  установление приоритета согласно стандарту 802.1р для определения уровня приоритета сетевых устройств уровня 2;  трансляция между передачей сигналов уровня 3 служб управления QoS (типа RSVP) и передачей сигналов уровня 2 управления QoS, например, преобразование из RSVP в ATM.

Реализацию QoS в среде Windows могут легко расширять независимые поставщики программного обеспечения (Independent Software Vendors, ISV) и аппаратного обеспечения (Independent Hardware Vendors, IHV). Кроме того, администраторы сети сами могут легко управлять QoS.
Общий прикладной интерфейс качества обслуживания WinSock 2 (Generic QoS API, GQoS API) позволяет приложениям использовать QoS, не имея представления о базовой сети или о специфических механизмах QoS, доступных в сети. Созданный при непосредственном участии поставщиков программных средств GQoS API позволяет облегчить развертывание в одной сети приложений и решений, использующих QoS, от нескольких поставщиков. Прикладной интерфейс управления трафиком (Traffic Control API, TC API) позволяет осуществить полный доступ к управлению трафиком и вызывать QoS от имени устаревших приложений. Вызываемый интерфейсом GQoS поставщик услуг (Service Provider, SP) QoS обеспечивает передачу сигналов RSV'P по сети и равноподчиненным компонентам, обеспечивает обратную связь с приложениями и вызывает службу управления трафиком. Поставщик услуг QoS также взаимодействует с сервером службы управления допуском (ACS), чтобы предотвратить блокирование сетевых ресурсов и реализовать политику, полученную из Active Directory.
Потоки мультимедиа, подобные используемым в IP-телефонии или видео-конференц-связи, могут быть чрезвычайно чувствительны к задержкам доставки, что требует уникального качества обслуживания от сетей, по которым они передаются. Поскольку мультимедиа и приложения с критическими заданиями обычно используют модель доставки с наилучшим возможным качеством (best-effort), они практически не используют возможности гарантированной доставки пакетов. Чтобы развернуть приложения реального масштаба времени поверх IP и других сетей с приемлемым уровнем качества, нужно обеспечить заданную ширину полосы пропускания, время ожидания и требования к флуктуации так, чтобы разрешить трафику мультимедиа сосуществовать с традиционным трафиком данных в той же самой сети, не подавляя его.



Состав Windows QoS


Операционная система Windows Server 2003 обеспечивает полную и надежную реализацию технологии QoS. Она позволяет сетевым администраторам использовать преимущества мощности приложений, применяющих QoS, сохраняя возможность управления шириной полосы пропускания сети.
Приложение QoS использует интерфейс WinSock 2 GQoS, чтобы передать свои требования к поставщику услуг WinSock 2 QoS (QoS SP). QoS SP по очереди вызывает различные механизмы QoS нижележащих уровней и сети, соответствующие приложению, чтобы гарантировать требуемый сквозной уровень QoS.
Ключевые элементы QoS в Windows Server 2003 перечисляются ниже.
 Службы управления допуском (Admission Control Services, ACS). Службы управления допуском базируются на платформе SBM (Subnet Bandwidth Management, управление полосой пропускания на уровне подсетей), определенной консорциумом IETF. SBM описывает запросы резервирования полосы пропускания. В соответствии с проектом IETF, SBM вставляет себя в путь резервирования для того, чтобы проверить сообщения резервирования и определить доступность ресурсов.  Служба управления допуском, основанная на политиках (Policy-based ACS). Администратор сети может использовать политику из Active Directory, чтобы ограничить объем трафика, который любое лицо может зарезервировать в любой отдельной подсети в любое заданное время. Применение политики к группам пользователей, как к отдельным пользователям, облегчает администрирование при помощи Active Directory.  Прикладные программные интерфейсы (API). Технология Windows QoS упрощает для ISV процесс разработки, обеспечивая обобщенный QoS (GQoS) API и API управления трафиком (ТС API).  Обобщенный QoS API (Generic QoS API). GQoS API позволяет приложениям описывать качество обслуживания, требуемого для передачи потока данных.  API управления трафиком (Traffic Control API, TC API). API управления трафиком дает приложениям сторонних производителей возможность управления трафиком, а поставщикам услуг QoS — управления трафиком от имени приложений. Также приложения управления трафиком сторонних производителей могут применяться для управления трафиком от имени приложений, которые не могут это делать сами. Кроме того, API управления трафиком позволяет объединять части трафика от нескольких источников (на одном и том же компьютере) в один поток управления трафиком. В отличие от этого API, обобщенный QoS API для формирования потока управления трафиком, может использовать только трафик одиночного "диалога" (диалог задается адресом и портом источника и получателя).

 Поставщик услуг QoS (QoS SP). Технология QoS в Windows включает поставщика услуг (Service Provider, SP) QoS, который отвечает на вызовы GQoS API. Как часть операционной системы, QoS SP реализует протокол передачи сигналов RSVP и взаимодействует с ACS. Приложения QoS могут вызывать эти услуги через WinSock 2 GQoS API. QoS SP также вызывает локальное управление трафиком от имени приложений.  Передача сигналов RSVP (RSVP signalling). Протокол резервирования ресурса разработан для того, чтобы передавать запросы резервирования ресурсов через сети с изменяющейся топологией и различными носителями. При помощи RSVP требование пользователя на заданное качество обслуживания распространяется через все RSVP-безопасные сетевые устройства на пути данных (включая серверы управления допуском), позволяя пользователю резервировать ресурсы, которые разрешают применение RSVP на всех уровнях сети. Это позволяет достигать в сети желаемого уровня качества обслуживания.  Политика. Полная реализация ACS также допускает использование политики. В такой форме ACS рассматривает параметры запроса ресурсов отдельно от запрошенных ресурсов (типа идентификатора пользователя, запрашивающего ресурсы). Затем ACS обращается к Active Directory, чтобы определить политику, применяемую к этому пользователю. Решение о допуске, принимаемое службой ACS, будет основано на доступности ресурсов и на политике, относящейся к пользователю, который произвел запрос.  Вызовы управления трафиком. QoS SP преобразует абстрактные запросы QoS от приложений в семантическую форму управления трафиком, вызывая управление трафиком от имени приложения в соответствии с доступностью ресурсов в сети (как это задано механизмом передачи сигналов RSVP).  Базовое управление трафиком. API управления трафиком обеспечивает тонкое базовое управление трафиком, включающее охрану и формирование трафика, управление порядком следования пакетов, поддержку стандарта 802.1р, старшинство IP и передачу сигналов уровня 2 (типа ATM). Базовое управление трафиком может вызываться приложениями третьих фирм для управления трафиком, чтобы обеспечить QoS для устаревших приложений.  Стандарт 802.1р. Windows QoS обеспечивает поддержку тэгов 802.1р, помогая обеспечить работу служб QoS в сети, использующей коммутаторы второго уровня. Можно использовать управление трафиком для определения значения приоритета пользователя по стандарту 802.1р, передаваемого в поле МАС-заголовка и задающего относительный приоритет пакета.  Старшинство IP (IP prioritizing). Старшинство IP обеспечивает возможность разделить трафик на несколько классов обслуживания. С помощью управления трафиком можно установить биты в заголовках IP-пакетов в отдельных потоках. Эти биты интерпретируются сетевыми устройствами уровня 3 так, что в итоге пакеты, принадлежащие потоку, будут соответственно обрабатываться следующими устройствами в сети. Эти поля аналогичны приоритетным установкам в 802.1р, но интерпретируются сетевыми устройствами более высокого уровня.  Формирование трафика (Traffic shaping). Планировщик пакетов отыскивает пакеты и передает их согласно параметрам QoS, которые в общем случае включают планируемую скорость и некоторый внутренний приоритет. Планировщик определяет порядок, в котором поставленные в очередь пакеты должны быть посланы в сеть, когда происходит перегрузка.

 Медленные линии. Обеспечиваются специальные механизмы формирования трафика на медленных линиях, например, на модемных линиях со скоростью 28,8 Кбит/с. На таких линиях большие пакеты могут занимать связь достаточно долго, что может привести к задержке малых пакетов со звуковыми данными, которые должны быть переданы по этой же самой линии, и снизить качество звука. Чтобы избежать этой проблемы, управление трафиком на канальном уровне фрагментирует большие пакеты, посылая только один фрагмент в единицу времени. Чувствительные ко времени ожидания звуковые пакеты можно вставлять между фрагментами большего пакета, уменьшая таким образом время ожидания звукового пакета и повышая качество звука.  Обеспечение дополнительных механизмов передачи сигналов уровня 2 QoS. Поставщик услуг QoS может вызывать дополнительные механизмы управления трафиком в зависимости от конкретного базового уровня передачи данных. Он может, например, потребовать от базовой сети ATM установить соответствующий виртуальный канал для каждого потока. Он может также сгенерировать соответствующую передачу сигналов для кабельных модемов или другой среды уровня 2.



Службы ATM


Понятие Asynchronous Transfer Mode (ATM, асинхронный режим передачи) описывает ряд связанных и стандартизованных технологий. ATM отличается от других существующих технологий ЛВС и ГВС по многим параметрам. Технология ATM была специально разработана для поддержки быстродействующих коммуникаций. ATM позволяет эксплуатировать высокоскоростные сети, наиболее эффективно управляя использованием полосы пропускания, сохраняя при этом гарантированное качество обслуживания для пользователей и приложений со строгими требованиями к обслуживанию.
Рассмотрим понятие "асинхронный режим передачи". Прилагательное "асинхронный" в названии технологии означает, что доступная ширина полосы пропускания сети не разделена на фиксированные каналы или слоты, задаваемые при помощи механизма синхронизации. Устройства, взаимодействующие через асинхронные коммуникации, не ограничены точным значением скорости передачи. Отправитель и получатель договариваются о скорости обмена информацией, исходя из аппаратных ограничений и собственной способности поддерживать надежную передачу. Термин "режим передачи" описывает способ организации обмена информацией. В ATM для структурирования и упаковки данных для передачи используется концепция малых ячеек фиксированной длины. Механизм ATM с использованием ячеек, в отличие от механизма передачи пакетов переменной длины, который применяется в наиболее старых из существующих на данный момент сетевых технологий, гарантирует установление и управление соединениями так, чтобы никакой поток данных или соединение не могли бы монополизировать путь передачи данных.



Достоинства ATM


ATM обеспечивает управление качеством обслуживания в тех сетях, где должны присутствовать несколько типов информации (например, данные, голос, а также видео и звук в реальном времени). ATM позволяет передавать поток каждого из этих типов информации через одно сетевое соединение.
Преимущества ATM перечисляются ниже.
 Высокоскоростная связь. В отличие от традиционных технологий работы .с сетями типа ЛВС на базе Ethernet и служб уровня Т в WAN, технология ATM не имеет физических или архитектурных ограничений, которые не позволяют (или, по крайней мере, усложняют этот переход) перейти к более высоким скоростям передачи данных. Современные продукты ATM обеспечивают поддержку передачи данных на скоростях от 25 Мбит/с по неэкранированной витой паре (UTP) и экранированной витой паре (STP), 155 Мбит/с по среде UTP и оптоволокну, и от 622 Мбит/с до 4,8 Гбит/с (только по оптоволоконной среде).  Служба с установлением логического соединения, подобно традиционной телефонии. Подобно традиционным телефонным службам, ATM использует модель обслуживания с установлением логического соединения. Поскольку стандарты ATM формализованы организацией ITU, телефонные компании во всем мире могут применять высокоскоростную технологию ATM вместо сетевых инфраструктур с гарантией, что все существующие телефонные службы и все приложения могут быть приспособлены к новой сети. В настоящее время телефонные компании в Соединенных Штатах перевели более 70% внутренних сетей на ATM. Технология ATM направлена на то, чтобы стать в скором времени глобальным стандартом для телефонии. Чтобы сохранить полную поддержку традиционных телефонных служб (голос, факс и различные услуги АТС), службы ATM с установлением логического соединения гарантируют, что все используемые в настоящее время приложения телефонии, которые поддерживаются Общественными коммутируемыми телефонными сетями (Public Switched Telephony Netorks, PSTN), будут поддерживаться и в дальнейшем.  Быстрая аппаратная коммутация. Поскольку весь трафик ATM передается в малых ячейках фиксированной длины (точно 53 байта), процесс маршрутизации трафика во взаимосвязанных сетях может происходить быстро, в отличие от других моделей взаимосвязи сетей, например, TCP/IP. В ATM весь трафик передается с использованием коммутации, а не маршрутизации. Коммутация ячеек в ATM является более простым и более однородным процессом по сравнению с традиционной маршрутизацией, используемой в сетях передачи пакетов, например Ethernet и TCP/IP. В сетях с передачей пакетов маршрутизаторы должны использовать программное обеспечение для правильной обработки ряда изменений в потоке передачи, например, для определения издержек различных маршрутов, для измерения длины пакета, для фрагментирования пакета, для передачи пакетов в правильном порядке и для пересборки пакетов. В качестве замены традиционных методов маршрутизации ATM использует простой процесс коммутации, основанный на концепции виртуальных каналов (Virtual Circuit Connections, VCC). VCC формируются при помощи ряда назначенных идентификаторов виртуального пути (Virtual Path Identifier, VPI) и идентификаторов виртуального канала (Virtual Ciruit Identifier, VCI) между коммутаторами. Фактические пути и каналы, используемые каждым коммутатором, идентифицируются зарезервированным числом битов в заголовке каждой ячейки ATM. Поскольку информация VPI/VCI всегда появляется в одном и том же месте каждой ячейки, коммутаторы ATM могут быстро считывать числа VPI/VCI входящей ячейки, коммутировать эту ячейку, заменяя эти числа на новые числа VPI/VCI, и немедленно передавать эту ячейку через выходной порт. Поскольку поток ячеек ATM может быть более однородным и предсказуемым, то для выполнения функций коммутации может использоваться аппаратный механизм синхронизации.  Единый универсальный сетевой транспорт. ATM поддерживает единый способ передачи данных, позволяющий связывать сети любых размеров и масштабировать их в будущем. При использовании ATM в качестве глобального транспорта для всех сетей не нужно обеспечивать дополнительную трансляцию и шлюзы между традиционными транспортами для ЛВС (типа Ethernet или Token Ring) и транспортами для ГВС (типа Х.25, Frame Relay и Т1 или выделенных линий), что создает единую "бесшовную" сеть, полностью реализуемую на основе ATM. Хотя чистые ATM-сети в настоящее время встречаются не так уж часто, ATM обеспечивает возможность взаимодействия с существующими сетевыми технологиями типа Ethernet и Token Ring при помощи службы LAN Emulation (LANE — Эмуляция ЛВС) и поддержки новых стандартов TCP/IP поверх ATM, которые позволяют перейти к ATM, сохраняя прозрачные соединения с клиентами, использующими унаследованные технологии. Например, удаленный пользователь с домашнего компьютера, используя новые технологии типа Asymmetric Digital Subscribers Line (ADSL, асимметричная цифровая абонентская линия) или кабельный модем, мог бы устанавливать соединение с корпоративной частной ЛВС на базе ATM в удаленном офисе и обмениваться информацией, используя только ATM. Такая схема возможна, поскольку сети ГВС, в настоящее время развернутые телефонными компаниями в США и в других странах, для обеспечения традиционных телефонных служб переведены на ATM. Тот же домашний пользователь мог бы средствами ATM реализовать прямое быстродействующее подключение к Интернету. ATM изначально был разработан для того, чтобы стать международным стандартом для объединения телефонии, ЛВС и ГВС.  В одном сетевом подключении можно безболезненно смешивать данные разных типов. В большинстве случаев голос, видео и обычные данные передаются по раздельным сетям из-за специфических требований и характеристик для каждого из этих типов информации. В ATM все эти типы информации могут надежно передаваться через единое сетевое подключение. ATM использует концепцию категорий обслуживания (service categories) и установление договоров (контрактов) на определенное качество обслуживания между конечными пользователями ATM и коммутаторами для того, чтобы получить надежную службу передачи данных.  Гибкое и эффективное распределение ширины полосы пропускания сети. Даже при том, что технология ATM обеспечивает реальную ширину полосы пропускания наиболее требовательным современным приложениям мультимедиа, она также позволяет быстро выбрать нужную ширину полосы пропускания для тех соединений, где это необходимо более всего. ATM использует категории обслуживания, чтобы назначить уровни производительности для каждого соединения. Это позволяет использовать ATM для того, чтобы определить приоритет и качество обслуживания для каждого сетевого соединения ATM с требуемой точностью. Все категории обслуживания ATM на основе параметров QoS измеряют производительность канала и качество обслуживания, которое предписано на аппаратном уровне адаптерами и коммутаторами ATM.



Состав служб ATM в Windows Server 2003


Ниже кратко описаны компоненты, входящие в состав служб ATM:
 диспетчер вызова UNI ATM (UNI ATM Call Manager), соответствующий спецификациям ATM Forum для передачи сигналов ATM и поддерживающий создание коммутируемых виртуальных каналов (Switched Virtual Circuits, SVC) и постоянных виртуальных каналов (Permanent Virtual Circuits, PVC);  обновленные драйверы мини-порта NDIS 5.1 ATM, проверенные Лабораторией качества аппаратных средств Windows (Windows Hardware Quality Laboratory, WHQL) и обеспечивающие ограниченную поддержку установленного адаптера ATM;  модуль клиента эмуляции ЛВС (LANE Client Module), соответствующий спецификации ATM Forum LANE 1.0. Технология ATM LANE позволяет существующим приложениям и протоколам, разработанным для применения в ЛВС Ethernet/Token Ring, работать без изменений в сети ATM;  служба ARP/MARS (ARP/MARS service), позволяющая стеку TCP/IP отображать адреса ATM в аппаратные адреса для более прямого и эффективного использования среды ATM. Модуль IP поверх ATM соответствует спецификациям RFC для протокола разрешения адресов (Address Resolution Protocol, ARP) поверх среды ATM, и содержит поддержку для службы разрешения групповых адресов (Multicast Address Resolution Service, MARS);  расширенные средства для приложений и служб TAPI;  поддержка "грубой" фильтрации доступа к каналу, который может использоваться в прикладных средах с поддержкой технологии DirectStreaming;  расширенная поддержка сети удаленного доступа для удаленного доступа по РРР поверх среды ATM, что позволяет создавать и использовать соединение РРР поверх любого поддерживаемого адаптера ATM, установленного под Windows Server 2003. Эта возможность включает поддержку передачи ATM по линиям ADSL и кабельным модемам и другие возможности для установления соединения ATM по требованию;  возможность прямого доступа к службам ATM при помощи WinSock 2 поверх ATM непосредственно из пользовательских приложений. Благодаря этой поддержке приложения, использующие стек протоколов TCP/IP, могут функционировать непосредственно поверх ATM сети;  инкапсуляция Ethernet-трафика через постоянный виртуальный канал (Permanent Virtual Circuits, PVC). Как следствие, можно использовать ATM-адаптер для передачи Ethernet-пакетов.