Содержание
Введение……………………………………………………………… .…………
6
1 Локальная вычислительная сеть………………………………….………………
7
1.1 Общие положения ……….……………………………………… .……….……
7
1.2 Базовая модель OSI…………………………………………………………….….
8
2 Роль мониторинга ресурсов в работе системного администратора………………
11
2.1 Функции системного администратора………………………… .……………….
11
2.2 Установка и конфигурация аппаратных устройств…………… …….……
11
2.3 Установка программного обеспечения……………………………………… .
13
2.4 Создание и управление учетными записями пользователей…… ……………
13
2.5 Поиск неисправностей………………………………… ….…………………… .
14
2.6 Контроль защиты…………………………………… ….……………………… .
14
2.7 Ведение локальной документации………………………… ……………………
15
3 Мониторинг системы ………………………………………………………… ……
16
3.1 Понятие мониторинга………………………………………………………….….
16
3.2 Средства мониторинга………………………… ………… .…………………….
17
3.3 Системы управления сетью……………………… …… ……………………….
19
3.3 Выводы……………………………………… ………… .………………………
23
4 Обзор утилит сетевого мониторинга…………….…………….………………… .
24
4.1 SiSoftware Sandra Lite……………………………… .……………………………
24
4.2 Essential NetTools версия 3.2…………………….… .………………………
26
4.3 LANScan…………………………………….……… .…………………………….
29
4.4 3Com Network Supervisor 4.0.1…………………………… .…………………….
32
5 Метод решения поставленной задачи………………………… ………… ………
35
6 Общие сведения о WMI……………………………………… …………………….
36
6.1 Назначение и возможности WMI………………… …… …………………
36
6.2 Установка WMI………………………………….………… .…………………….
38
6.3 Общая структура WMI……………………… ………… ……………………….
38
6.4 Ядро WMI……………………………………… ……… ………………………
40
6.4.1 Провайдеры WMI………………………………….……………………………
40
6.4.2 Менеджер объектов CIM…………………………….…………………………
43
6.4.3 Репозиторий CIM. Пространства имен………………………….…………… .
44
6.5 Путь к классам и объектам CIM……………………… … ……………………
48
6.6 Структура классов WMI………………………….…….…………… ………… .
49
6.6.1 Основные типы классов CIM………………………….……………………… .
49
6.6.2 Свойства классов WMI…………………………….…………………………….
52
6.6.3 Методы классов WMI……………………………………………………………
55
6.7 Квалификаторы классов, свойств и методов…… .……… …………………….
56
6.7.1 Квалификаторы классов…………………………………………………………
57
6.7.2 Квалификаторы свойств……………………………….……………………… .
58
6.7.3 Квалификаторы методов……………………… .…… ………………………
58
6.8 События WMI……………………………………….………………………… .
59
6.8.1 Внутренние события………………………………….………………………….
60
6.8.2 Внешние события………………………………….……………………………
62
6.8.3 События таймера……………………………………….……………………… .
63
6.8.4 Временные и постоянные потребители событий…………………….……… .
63
6.9 Безопасность при работе с WMI…………………… .… ……………………….
65
7 Обзор разработанной программы………………….…… …………………………
72
7.1 Возможности программы ……………………………….……………….………
72
7.2 Установка и настройка……………………….… .……………………………….
72
7.3 Работа программы ………………… ………………… …….………………… .
75
8 Расчет технико-экономических показателей………………………………………
77
8.1 Расчет экономической эффективности………………………………………… .
77
8.2 Расчет сроков окупаемости программы…………………………………………
78
9 Техника безопасности при работе с ПЭВМ………………………………………
80
9.1 Анализ системы…………………………………………………………………….
80
9.2 Планировка рабочего места системного администратора………………………
80
9.3 Микроклимат на рабочем месте……………………………………………….
81
9.4 Освещенность помещения……………………………………………………… .
82
9.5 Пожарная безопасность……………………………………………………………
83
9.6 Охрана труда во время работы………………………… .……………………….
83
Заключение……………………………………… .……………………………………
86
Список использованной литературы…………………………………………………
87
Приложение 1………………………………………………………………………… .
88
Приложение 2………………………………………………………………………… .
89
Приложение 3………………………………………………………………………… .
91
Приложение 4………………………………………………………………………… .
97
Приложение 5………………………………………………………………………… .
105
Приложение 6………………………………………………………………………… .
107
Приложение 7………………………………………………………………………… .
119
Приложение 8………………………………………………………………………… .
120
Приложение 9………………………………………………………………………… .
123
Введение
Целью дипломной работы является разработка монитора для определения ресурсов ПК локальной вычислительной сети (ЛВС) и целостности операционной системы.
Актуальность подобного приложения объясняется необходимостью ежедневного контроля (мониторинга) ресурсов ЛВС, как одной из функций системного администратора. Повышение компьютерной грамотности сотрудников предприятий все чаще вызывает необходимость минимизации несанкционированных установок программного обеспечения, которые нередко являются причинами сбоев в работе сети. Без мониторинга также затруднительно, а в некоторых случаях просто невозможно, выполнение еще целого ряда задач администрирования, таких как установка и конфигурация аппаратных устройств и программного обеспечения, управление учетными записями пользователей, поиск неисправностей и другие.
1 Локальная вычислительная сеть
1.1 Общие положения
На сегодняшний день в мире более 80 % компьютеров объединены в различные информационно-вычислительные сети. Всемирная тенденция к объединению компьютеров в сети обусловлена рядом важных причин, таких как ускорение передачи информационных сообщений, возможность быстрого обмена информацией между пользователями, возможность мгновенного получения любой информации из любой точки земного шара, а так же обмен информацией между компьютерами разных фирм производителей работающих под разным программным обеспечением.
Под ЛВС понимают совместное подключение нескольких отдельных компьютерных рабочих мест (рабочих станций) к единому каналу передачи данных. Благодаря вычислительным сетям мы получили возможность одновременного использования программ и баз данных несколькими пользователями.
Понятие локальная вычислительная сеть - ЛВС (англ. LAN - Lokal Area Network) относится к географически ограниченным (территориально или производственно) аппаратно-программным реализациям, в которых несколько компьютерных систем связаны друг с другом с помощью соответствующих средств коммуникаций. Благодаря такому соединению пользователь может взаимодействовать с другими рабочими станциями, подключенными к этой ЛВС.
В сеть объединяются персональные компьютеры, расположенные на многих удаленных рабочих местах, которые используют совместно оборудование, программные средства и информацию. Преимущества, получаемые при сетевом объединении персональных компьютеров в виде внутрипроизводственной вычислительной сети:
- разделение ресурсов. Позволяет экономно использовать ресурсы, например, управлять периферийными устройствами, такими как лазерные печатающие устройства, со всех присоединенных рабочих станций;
- разделение данных. Предоставляет возможность доступа и управления базами данных с периферийных рабочих мест, нуждающихся в информации;
- разделение программных средств. Предоставляет возможность одновременного использования централизованных, ранее установленных программных средств;
- разделение ресурсов процессора. При разделение ресурсов процессора возможно использование вычислительных мощностей для обработки данных другими системами, входящими в сеть. Предоставляемая возможность заключается в том, что на имеющиеся ресурсы не “набрасываются” моментально, а только лишь через специальный процессор, доступный каждой рабочей станции;
- разделение вычислений. Распределение решения объемных задач между несколькими рабочими станциями;
- многопользовательский режим. Многопользовательские свойства системы содействуют одновременному использованию централизованных прикладных программных средств, ранее установленных и управляемых, например, если пользователь системы работает с другим заданием, то текущая выполняемая работа отодвигается на задний план.
Все ЛВС работают в одном стандарте принятом для компьютерных сетей - в стандарте Open Systems Interconnection (OSI).
1.2 Базоваямодель OSI (Open System Interconnection)
Для единого представления данных в линиях связи, по которым передается информация, сформирована Международная организация по стандартизации (англ. ISO - International Standards Organization). Международных организация по стандартизации (ISO) разработала базовую модель взаимодействия открытых систем (англ. Open Systems Interconnection (OSI)). Эта модель является международным стандартом для передачи данных.
Модель содержит семь отдельных уровней:
- уровень 1: физический - битовые протоколы передачи информации. На физическом уровне определяются электрические, механические, функциональные и процедурные параметры для физической связи в системах. В качестве среды передачи данных используют трехжильный медный провод (экранированная витая пара), коаксиальный кабель, оптоволоконный проводник и радиорелейную линию;
- уровень 2: канальный. Формирует из данных, передаваемых 1-м уровнем, так называемые "кадры" последовательности кадров. На этом уровне осуществляются управление доступом к передающей среде, используемой несколькими ЭВМ, синхронизация, обнаружение и исправление ошибок;
- уровень 3: сетевой. Устанавливает связь в вычислительной сети между двумя абонентами. Соединение происходит благодаря функциям маршрутизации, которые требуют наличия сетевого адреса в пакете. Сетевой уровень должен также обеспечивать обработку ошибок, мультиплексирование, управление потоками данных.
- уровень 4: транспортный. Поддерживает непрерывную передачу данных между двумя взаимодействующими друг с другом пользовательскими процессами. Качество транспортировки, безошибочность передачи, независимость вычислительных сетей, сервис транспортировки из конца в конец, минимизация затрат и адресация связи гарантируют непрерывную и безошибочную передачу данных;
- уровень 5: сеансовый. Координирует прием, передачу и выдачу одного сеанса связи. Для координации необходимы контроль рабочих параметров, управление потоками данных промежуточных накопителей и диалоговый контроль, гарантирующий передачу, имеющихся в распоряжении данных. Кроме того, сеансовый уровень содержит дополнительно функции управления паролями, подсчета платы за пользование ресурсами сети, управления диалогом, синхронизации и отмены связи в сеансе передачи после сбоя вследствие ошибок в нижерасположенных уровнях;
- уровень 6: представления данных. Предназначен для интерпретации данных, а также подготовки данных для пользовательского прикладного уровня. На этом уровне происходит преобразование данных из кадров, используемых для передачи данных в экранный формат или формат для печатающих устройств оконечной системы;
- уровень 7: прикладной. В прикладном уровне необходимо предоставить в распоряжение пользователей уже переработанную информацию. С этим может справиться системное и пользовательское прикладное программное обеспечение.
Задача управления локальной вычислительной сетью возложена на системного администратора.
Администрирование работы сетевых служб подразумевает выполнение некоторых процедур, направленных на обеспечение корректной работы всей системы. Вовсе не обязательно, чтобы эти функции выполнял один человек. Во многих организациях работа распределяется между несколькими администраторами. В любом случае необходим хотя бы один человек, который понимал бы все поставленные задачи и обеспечивал их выполнение другими людьми.
Основной целью системного администрирования является приведение информационной системы в соответствие целям и задачам предприятия или организации.
Для достижения этой основной цели системное управление должно быть построено таким образом, чтобы минимизировать необходимое время и ресурсы, направляемые на управление системой и, в то же время, максимизировать доступность, производительность и продуктивность системы.
2 Роль мониторинга ресурсов в работе системного администратора
2.1 Функции системного администратора
Функциями системного администратора являются:
- планирование системы:
- пользователи/группы;
- планирование использования дискового пространства;
- подсистемы (печать, сеть и т.п.);
- присвоение имен;
- установка и конфигурация аппаратных устройств;
- установка программного обеспечения;
- архивирование (резервное копирование) информации;
- создание и управление учетными записями пользователей;
- поиск неисправностей;
- контроль защиты;
- управление системными ресурсами;
- мониторинг системы;
- планирование нагрузки;
- документирование системной конфигурации.
Все эти задачи взаимосвязаны. Остановимся более подробно на некоторых из них, так или иначе взаимодействующих с функцией мониторинга.
2.2 Установка и конфигурация аппаратных устройств
Любая компьютерная сеть состоит из следующих основных компонентов: активное оборудование (концентраторы, коммутаторы, сетевые адаптеры), коммуникационные каналы (кабели, разъемы), сетевая операционная система, один файловый сервер или более, рабочие станции. Естественно, все эти компоненты должны работать согласованно. Для корректной работы устройств в сети требуется их правильно установить и настроить рабочие параметры.
Время от времени также возникает необходимость замены устройства вышедшего из строя или не отвечающего более необходимому уровню производительности. В этом прослеживается связь данной функции системного администратора с задачей мониторинга, так как для того чтобы принять правильное решение о модернизации системы, необходимо проанализировать компоненты системы и их производительность.
Конечными узлами сети являются компьютеры, и от их производительности и надежности во многом зависят характеристики всей сети в целом. Именно компьютеры являются теми устройствами в сети, которые реализуют протоколы всех уровней, начиная от физического и канального (сетевой адаптер и драйвер) и заканчивая прикладным уровнем (приложения и сетевые службы операционной системы). Следовательно, оптимизация компьютера включает две достаточно независимые задачи:
- во-первых, выбор таких параметров конфигурации программного и аппаратного обеспечения, которые обеспечивали бы оптимальные показатели производительности и надежности этого компьютера как отдельного элемента сети. Такими параметрами являются, например, тип используемого сетевого адаптера, размер файлового кэша, производительность дисков, быстродействие центрального процессора и т.п. Сбор подобной информации является одним из аспектов функции мониторинга.
- во-вторых, выбор таких параметров протоколов, установленных в данном компьютере, которые гарантировали бы эффективную и надежную работу коммуникационных средств сети. Поскольку компьютеры порождают большую часть кадров и пакетов, циркулирующих в сети, то многие важные параметры протоколов формируются программным обеспечением компьютеров, например размеры используемых кадров.
В случае приобретения новых аппаратных средств или подключения уже имеющихся аппаратных средств к другой машине систему нужно сконфигурировать таким образом, чтобы она распознала и использовала эти средства.
2.3 Установка программного обеспечения
Как правило, самой ответственной и самой сложной задачей системного администратора являются инсталляция и конфигурирование операционной системы. Во многих современных операционных системах разработчики идут по пути исключения многих непродуктивных параметров системы, с помощью которых администраторы способны влиять на производительность ОС. Вместо этого в операционную систему встраиваются адаптивные алгоритмы, которые определяют рациональные параметры системы во время ее работы. С помощью этих алгоритмов ОС может динамически оптимизировать свои параметры в отношении многих известных сетевых проблем, автоматически перераспределяя свои ресурсы и не привлекая к решению администратора.
Связь с мониторингом здесь прослеживается в необходимости периодической проверки программного обеспечения рабочих станций, с целью обнаружения программ, самостоятельно установленных пользователями, неоправданно занимающих системные или сетевые ресурсы(оперативная и дисковая память, ресурсы центрального процессора и т.д.), и принятию мер по их ликвидации.
2.4 Создание и управление учетными записями пользователей
Необходима постоянная бдительность в вопросах регистрации и удаления учетных записей пользователей, особенно, если очень важна безопасность системы на предмет постороннего проникновения, поэтому мониторинг сетевых подключений является неотъемлемой частью работы системного администратора.
Очень часто сотрудники предприятия оказываются самым слабым звеном в системе его безопасности, поэтому следует уделять больше внимания работе с пользователями системы. Иначе простой листочек бумаги с паролем, лежащий на рабочем месте забывчивой сотрудницы, сделает бесполезной выверенную настройку вашего межсетевого экрана.
Требуется создать и разработать различные варианты политики безопасности, определить правила корректного использования телефонов компьютеров и другой техники. Необходимо учитывать и неосведомленность в области безопасности, поскольку любые средства технического контроля могут быть использованы ненадлежащим образом.
2.5 Поиск неисправностей
Данная задача теснейшим образом связана с мониторингом ресурсов сети. Операционные системы и аппаратные средства, на которых они работают, время от времени выходят из строя. Задача администратора — диагностировать сбои в системе и оперативно определять их местоположение. Это становится возможным при ведении журналов учета аппаратных ресурсов сети и отдельных рабочих станций.
2.6 Контроль защиты
Основной особенностью любой сетевой системы является то, что ее компоненты распределены в пространстве, а связь между ними осуществляется физически — при помощи сетевых соединений (коаксиальный кабель, витая пара, оптоволокно и т.д.) и программно — при помощи механизма сообщений. К сетевым системам наряду с обычными (локальными) атаками, осуществляемыми в пределах одной операционной системы, применим специфический вид атак, обусловленный распределенностью ресурсов и информации в пространстве, — так называемые сетевые (или удаленные) атаки. Они характеризуются тем, что, во-первых, злоумышленник может находиться за тысячи километров от атакуемого объекта, а во-вторых, нападению может подвергнуться не конкретный компьютер, а информация, передающаяся по сетевым соединениям.
Системный администратор должен реализовывать стратегию защиты и периодически проверять, не нарушена ли защита системы. Естественно, абсолютная защита сети невозможна, однако задача каждого администратора — сделать все возможное для максимального ее улучшения.
2.7 Ведение локальной документации
Системный администратор должен документировать все инсталлируемые программные средства, не входящие в стандартный пакет поставки, документировать разводку кабелей, вести записи по обслуживанию всех аппаратных средств, регистрировать состояние резервных копий и документировать правила работы с системой, иногда возникает необходимость также вести уже упоминавшийся ранее журнал учета аппаратных ресурсов и подобные ему, в зависимости от специфических функций сети.
Также следует учитывать, что система учета, ядро, различные утилиты — все эти программы выдают данные, которые регистрируются и в конце концов попадают на ваши диски. Эти данные тоже являются локальной документацией, характеризующей работу конкретной системы. Однако срок полезной службы большинства данных ограничен, поэтому их нужно обобщать, упаковывать и наконец, выбрасывать.
Процедура ведения файлов регистрации в любой операционной системе представляет собой набор процедур, которые повторяются через определенное время в одном и том же порядке. Следовательно, ее необходимо автоматизировать.
Системные администраторы могут использовать для этих целей различные утилиты, выполняющие ряд следующих функций:
- наблюдения за производительностью в реальном времени и в исторической перспективе;
- определения тенденций во времени;
- определения узких мест;
- отслеживания последствий изменения конфигурации системы;
- наблюдения за локальным или удаленными компьютерами;
- предупреждения администратора о событиях, связанных с превышением некоторыми характеристиками заданных порогов.
3 Мониторинг системы
3.1 Понятие мониторинга
Под мониторингом вообще понимается процесс сбора информации о состоянии контролируемых объектов, состоянии окружающей их среды, а также анализа и обработки получаемой информации в интересах информационной поддержки различных управляющих систем и лиц, принимающих решения.
Постоянный контроль над работой локальной сети необходим для поддержания ее в работоспособном состоянии. Мониторинг - это необходимый этап, который должен выполняться при управлении сетью. Ввиду важности этой функции ее отделяют от других функций систем управления и реализуют специальными средствами. Такое разделение функций контроля и собственно управления полезно для небольших и средних сетей, для которых установка интегрированной системы управления экономически нецелесообразна. Использование автономных средств контроля помогает администратору сети выявить проблемные участки и устройства сети, а их отключение или реконфигурацию он может выполнять в этом случае вручную.
Существует множество обязательных для исполнения ежедневных операций мониторинга. Например, проверка правильности функционирования электронной почты и телеконференций, контроль наличия системных ресурсов.
Процесс контроля работы сети обычно делят на два этапа – непосредственно мониторинг и анализ.
На этапе мониторинга выполняется более простая процедура - процедура сбора первичных данных о сети: статистики о количестве циркулирующих в сети кадров и пакетов различных протоколов, аппаратном обеспечении рабочих станций состоянии портов концентраторов, коммутаторов и т. п.
Далее выполняется этап анализа, под которым понимается более сложный процесс осмысления собранной на этапе мониторинга информации, сопоставления ее с данными, полученными ранее, и выработки предположений о возможных причинах замедленной или ненадежной работы сети.
Задачи мониторинга решаются программными и аппаратными средствами, тестерами, сетевыми анализаторами, встроенными средствами мониторинга коммуникационных устройств, а также агентами систем управления.
3.2Средства мониторинга
Все многообразие средств, применяемых для мониторинга и анализа вычислительных сетей, можно разделить на несколько крупных классов:
- системы управления сетью (NetworkManagementSystems) — централизованные программные системы, которые собирают данные о состоянии узлов и коммуникационных устройств сети, а также данные о трафике, циркулирующем в сети. Эти системы не только осуществляют мониторинг и анализ сети, но и выполняют в автоматическом или полуавтоматическом режиме действия по управлению сетью — включение и отключение портов устройств, изменение параметров мостов адресных таблиц мостов, коммутаторов и маршрутизаторов и т.п. Примерами систем управления могут служить популярные системы HPOpenView, SunNetManager, IBMNetView;
- средства управления системой (SystemManagement). Средства управления системой часто выполняют функции, аналогичные функциям систем управления, но по отношению к другим объектам. В первом случае объектами управления являются программное и аппаратное обеспечение компьютеров сети, а во втором — коммуникационное оборудование. Вместе с тем некоторые функции этих двух видов систем управления могут дублироваться, например средства управления системой могут выполнять простейший анализ сетевого трафика;
- встроенные системы диагностики и управления (Embeddedsystems). Эти системы выполняются в виде программно-аппаратных модулей, устанавливаемых в коммуникационное оборудование, а также в виде программных модулей, встроенных в операционные системы. Они выполняют функции диагностики и управления единственным устройством, и в этом их основное отличие от централизованных систем управления. Примером средств этого класса может служить модуль управления концентратором Distrebuted 5000, реализующий функции автосегментации портов при обнаружении неисправностей, приписывания портов внутренним сегментам концентратора, и ряд других;
- анализаторы протоколов (Protocolanalyzers). Представляют собой программные или аппаратно-программные системы, которые ограничиваются, в отличие от систем управления, лишь функциями мониторинга и анализа трафика в сетях. Хороший анализатор протоколов может захватывать и декодировать пакеты большого количества протоколов, применяемых в сетях, — обычно несколько десятков. Анализаторы протоколов позволяют установить некоторые логические условия для захвата отдельных пакетов и выполняют полное декодирование захваченных пакетов, то есть показывают в удобной для специалиста форме вложенность друг в друга пакетов протоколов разных уровней с расшифровкой содержания отдельных полей каждого пакета;
- оборудование для диагностики и сертификации кабельных систем. Условно это оборудование можно поделить на четыре основные группы: сетевые мониторы, приборы для сертификации кабельных систем, кабельные сканеры и тестеры (мультиметры), описание этого оборудования выходит за рамки данной работы;
- экспертные системы. Этот вид систем аккумулирует человеческие знания о выявлении причин аномальной работы сетей и возможных способах приведения сети в работоспособное состояние. Экспертные системы часто реализуются в виде отдельных подсистем различных средств мониторинга и анализа сетей: систем управления сетями, анализаторов протоколов, сетевых анализаторов. Простейшим вариантом экспертной системы является контекстно-зависимая help-система. Более сложные экспертные системы представляют собой так называемые базы знаний, обладающие элементами искусственного интеллекта. Примером такой системы является экспертная система, встроенная в систему управления Spectrum компании Cabletron;
- многофункциональные устройства анализа и диагностики. В последние , возникла необходимость разработки недорогих портативных приборов, совмещающих функции нескольких устройств: анализаторов протоколов, кабельных сканеров и даже ряд возможностей ПО сетевого управления. Такими приборами и являются многофункциональные устройства анализа и диагностики.
3.3 Системы управления сетью
Любая сложная вычислительная сеть требует дополнительных специальных средств управления помимо тех, которые имеются в стандартных сетевых операционных системах. Это связано с большим количеством разнообразного коммуникационного оборудования, работа которого критична для выполнения сетью своих основных функций. Распределенный характер крупной корпоративной сети делает невозможным поддержание ее работы без централизованной системы управления, которая в автоматическом режиме собирает информацию о состоянии каждого концентратора, коммутатора, мультиплексора, маршрутизатора, рабочей станции и предоставляет эту информацию оператору сети. Обычно система управления работает в автоматизированном режиме, выполняя наиболее простые действия по управлению сетью автоматически, а сложные решения предоставляя принимать человеку на основе подготовленной системой информации. Система управления должна быть интегрированной. Это означает, что функции управления разнородными устройствами должны служить общей цели обслуживания конечных пользователей сети с заданным качеством.
Задачи системы управления сетями можно разделить на семь функциональных групп:
- управление конфигурацией сети и именованием;
- учет используемых аппаратных и программных средств;
- распределение и установка программного обеспечения;
- анализ производительности и возникающих проблем
- обработка ошибок;
- управление безопасностью;
- учет работы сети.
Управление конфигурацией сети и именованием (Configuration Management). Эти задачи заключаются в конфигурировании параметров как элементов сети (Network Element, NE), так и сети в целом. Для элементов сети, таких как маршрутизаторы, мультиплексоры и т. п., с помощью этой группы задач определяются сетевые адреса, идентификаторы (имена), географическое положение и пр.
Для сети в целом управление конфигурацией обычно начинается с построения карты сети, то есть отображении реальных связей между элементами сети и изменении связей между элементами сети - образование новых физических или логических каналов, изменение таблиц коммутации и маршрутизации.
Управление конфигурацией (как и другие задачи системы управления) могут выполняться в автоматическом, ручном или полуавтоматическом режимах. Например, карта сети может составляться автоматически, на основании зондирования реальной сети пакетами-исследователями, а может быть введена оператором системы управления вручную. Чаще всего применяются полуавтоматические методы, когда автоматически полученную карту оператор подправляет вручную. Методы автоматического построения топологической карты, как правило, являются фирменными разработками.
Учет используемых аппаратных и программных средств (Configuration Management). Система автоматически собирает информацию об установленных в сети компьютерах и создает записи в специальной базе данных об аппаратных и программных ресурсах. После этого администратор может быстро выяснить, какими ресурсами он располагает и где тот или иной ресурс находится, например, узнать о том, на каких компьютерах нужно обновить драйверы принтеров, какие компьютеры обладают достаточным количеством памяти, дискового пространства и т. п. Именно эту задачу призвано решать разрабатываемое приложение.
Распределение и установка программного обеспечения (Configuration Management). После завершения обследования администратор может создать пакеты рассылки нового программного обеспечения, которое нужно инсталлировать на всех компьютерах сети или на какой-либо группе компьютеров. В большой сети, где проявляются преимущества системы управления, такой способ инсталляции может существенно уменьшить трудоемкость этой процедуры. Система может также позволять централизованно устанавливать и администрировать приложения, которые запускаются с файловых серверов, а также дать возможность конечным пользователям запускать такие приложения с любой рабочей станции сети.
Анализ производительности и возникающих проблем (Fault Management and Performance Management). Эта группа функций позволяет удаленно измерять наиболее важные параметры компьютера, операционной системы, СУБД и т. д. (например, коэффициент использования процессора, интенсивность страничных прерываний, коэффициент использования физической памяти, интенсивность выполнения транзакций). Для разрешения проблем эта группа функций может давать администратору возможность брать на себя удаленное управление компьютером в режиме эмуляции графического интерфейса популярных операционных систем. База данных системы управления обычно хранит детальную информацию о конфигурации всех компьютеров в сети для того, чтобы можно было выполнять удаленный анализ возникающих проблем.
Обработка ошибок (Fault Management). Эта группа задач включает выявление, определение и устранение последствий сбоев и отказов в работе сети. На этом уровне выполняется не только регистрация сообщений об ошибках, но и их фильтрация, маршрутизация и анализ на основе некоторой корреляционной модели. Фильтрация позволяет выделить из весьма интенсивного потока сообщений об ошибках, который обычно наблюдается в большой сети, только важные сообщения. Маршрутизация обеспечивает их доставку нужному элементу системы управления, а корреляционный анализ позволяет найти причину, породившую поток взаимосвязанных сообщений (например, обрыв кабеля может быть причиной большого количества сообщений о недоступности сетей и серверов).
Устранение ошибок может быть как автоматическим, так и полуавтоматическим. В первом случае система непосредственно управляет оборудованием или программными комплексами и обходит отказавший элемент за счет резервных каналов и т. п. В полуавтоматическом режиме основные решения и действия по устранению неисправности выполняют люди, а система управления только помогает в организации этого процесса - оформляет квитанции на выполнение работ и отслеживает их поэтапное выполнение (подобно системам групповой работы).
Управление безопасностью (Security Management). Задачи этой группы включают в себя контроль доступа к ресурсам сети (данным и оборудованию) и сохранение целостности данных при их хранении и передаче через сеть. Базовыми элементами управления безопасностью являются процедуры аутентификации пользователей, назначение и проверка прав доступа к ресурсам сети, распределение и поддержка ключей шифрования, управления полномочиями и т. п. Часто функции этой группы не включаются в системы управления сетями, а реализуются либо в виде специальных продуктов (например, системы аутентификации и авторизации Kerberos, различных защитных экранов, систем шифрования данных), либо входят в состав операционных систем и системных приложений.
Учетработысети(Accounting Management). Задачи этой группы занимаются регистрацией времени использования различных ресурсов сети - устройств, каналов и транспортных служб. Эти задачи имеют дело с такими понятиями, как время использования службы и плата за ресурсы - billing. Ввиду специфического характера оплаты услуг у различных поставщиков и различными формами соглашения об уровне услуг, эта группа функций обычно не включается в коммерческие системы и платформы управления типа HP Open View, а реализуется в заказных системах, разрабатываемых для конкретного заказчика.
3.4 Выводы
Мониторинг и анализ сети представляют собой важные этапы контроля работы сети. Для выполнения этих этапов разработан ряд средств, применяемых автономно в тех случаях, когда применение интегрированной системы управления экономически неоправданно. В состав автономных средств мониторинга и анализа сети входят встроенные средства диагностики, анализаторы протоколов, экспертные системы, сетевые анализаторы, кабельные сканеры и тестеры, многофункциональные приборы.
Согласно техническому заданию, разрабатываемая программа призвана помочь системному администратору в учете используемых аппаратных и программных средств.
4 Обзор утилит сетевого мониторинга
Существует немало способов контроля работы сети — начиная от использования диагностических средств операционных систем, к примеру встроенного в операционные системы семейства Windows набора утилит мониторинга Monitoring performance, позволяющего весьма детально оценить работу отдельного компьютера, в том числе его сетевого интерфейса, и заканчивая специализированными аппаратными комплексами. Утилиты сетевого мониторинга позволяют проводить анализ сетевого трафика как отдельных узлов, так и сети в целом, а наиболее продвинутые из них анализируют и топологию сети, чтобы выявить конфликты, возникающие в результате ошибок, допущенных при построении ЛВС. В настоящее время имеется огромное количество утилит, различающихся как по своим возможностям, так и по доступности и удобству интерфейса.
Мною было решено включить в настоящий обзор только свободно распространяемые (бесплатные) утилиты или программы, имеющие полноценные демо-версии с ограниченным сроком действия (условно бесплатные).
4.1 SiSoftwareSandraLite
Известная утилита компании SiSoftware позволяет собирать всестороннюю информацию об аппаратном и программном обеспечении компьютера; тестировать производительность центрального процессора, оперативной и кэш памяти, файловой системы, CD-ROM и DVD приводов, сетевых соединений; просматривать листинги системных файлов, переменных среды, типы файлов, журналы событий, установленные приложения и устройства; поддерживается гибкая система построения отчетов (рисунок 4.1).
В последней версии утилиты существует четыре возможных варианта поставки: Professional, Lite, Engineer и Enterprise. Свободно распространяется только версия Lite (рисунок 4.2).
Бесплатные версии программы можно скачать с сайта разработчика [6].
Рисунок 4.1 -SiSoftware Sandra Lite
Рисунок 4.2 -Версии утилиты SiSoftware Sandra
4.2 EssentialNetToolsверсия 3.2
Утилита Essential NetTools компании TamoSoft, Inc. — это удобный и простой в использовании инструмент, позволяющий производить не только всесторонний анализ работы отдельного компьютера, на котором установлена данная программа, но и довольно детальный анализ состояния и работы сетевых интерфейсов всех хостов ЛВС. Программа имеет традиционный Windows-интерфейс. Запуск основных инструментов мониторинга может осуществляться как с помощью пунктов основного меню, так и посредством кнопок быстрого запуска, расположенных слева от основной рабочей области окна программы, в которой и отображается выбранный в настоящее время инструмент.
Essential NetTools предоставляет в распоряжение пользователя следующие инструменты (возможности) мониторинга:
- NetStat — инструмент, аналогичный одноименной утилите Windows, запускаемой из командной строки, отображает список соединений, ставя им в соответствие открытые порты TCP и UDP и приложения, инициирующие эти соединения (рисунок 4.3);
- NBScan — быстрый и мощный инструмент для исследования сети в заданном диапазоне IP-адресов с использованием возможностей протокола NetBIOS. В отличие от Windows-команды nbtstat, этот инструмент имеет наглядный графический интерфейс и осуществляет значительно более быстрое параллельное сканирование;
- PortScan — инструмент для сканирования портов TCP, позволяющий сканировать порты удаленного хоста как в обычном, так и в невидимом (Stealth) или полуоткрытом (Half-Open) режиме, при котором TCP-соединение инициируется, но не завершается, в результате чего такое сканирование остается незаметным для абонента (если, конечно, на его компьютере на установлены специальные средства защиты). С помощью этого инструмента можно оценить защиту портов компьютера и выявить возможность корректной работы тех или иных сервисов, использующих соединение по определенным портам;
Рисунок 4.3 - Essential NetTools
- Shares — предоставляет возможность контролировать подключения к разделяемым (общим) ресурсам на компьютере, где установлена данная утилита, просматривать список разделяемых ресурсов удаленного хоста и получать доступ к разделяемым ресурсам других узлов сети по логину и паролю;
- SysFiles предназначен для редактирования пяти системных файлов: services, protocol, networks, hosts и lmhosts. Отметим, что при использовании этого инструмента нужно хорошо представлять себе возможные последствия вносимых изменений;
- NetAudit — служит для проведения аудита узлов сети в заданном IP-диапазоне на предмет доступа к их ресурсам. Для этого используется список возможных логинов и паролей (использование своего списка возможно только в лицензионной версии продукта), что позволяет избежать возможного несанкционированного доступа к сетевым каталогам проверяемых хостов;
- RowSocket — позволяет отправлять и принимать данные на узлы с заданным IP-адресом (или именем) и от них, прослушивая при этом выбранный TCP- и UDP-порт локального (то есть своего) хоста;
- TraceRoute — данный инструмент по своей сути является интерпретацией хорошо знакомой команды Tracert, позволяющей просмотреть путь маршрутизации до искомого хоста. Основным отличием TraceRoute от этой команды является наличие удобного графического интерфейса;
- Ping — аналогичен одноименной команде Ping, но, как и в предыдущем случае, графический интерфейс делает процедуру пинга удаленного узла (и даже группы узлов) предельно удобной;
- NSLookup — по своим возможностям также очень напоминает одноименную Windows-утилиту. Однако NSLookup позволяет выполнять как обычные запросы (Standard Resolve Function) к известным операционной системе DNS-серверам, так и специфические (тип которых можно выбрать из раскрывающегося списка); при этом возможно задавать в качестве сервера любой доступный DNS-сервер;
- ProcMon — позволяет получать информацию о том, какие процессы запущены на компьютере. Утилита Essential NetTools посредством пункта меню «Общая информация о системе» (System Summary), которое дублируется одноименной кнопкой на панели инструментов, дает возможность получать исчерпывающую информацию о компьютере — начиная от его имени и заканчивая загрузкой процессора и оперативной памяти.
Кроме того, эта утилита от компании TamoSoft предоставляет быстрый доступ к основным инструментам администрирования и настройки системы, позволяя также задавать горячие клавиши для быстрого запуска приложений. Демонстрационную версию данной утилиты можно найти на сайте компании-разработчика [7].
4.3 LANScan
Семейство утилит сетевого мониторинга LANScan, созданное компанией LANScan Software, Inc., позволяет решать следующие задачи:
- контроль маршрутизации;
- оценка использования полосы пропускания сети;
- контроль доступа в Интернет;
- мониторинг приложений, использующих сетевые ресурсы;
- локализация и выявление аппаратных неисправностей компонентов сети;
- выявление неисправностей, вызванных неправильным конфигурированием программных средств — в том числе неверной настройки драйверов сетевых устройств, некорректного назначения сетевых адресов и т.п.;
- измерение сетевого трафика, создаваемого приложениями;
- ведение записи отчета о работе сети;
- удаленный контроль работы сети.
Семейство LANScan включает три утилиты: LANScan Traffic View, LANScan Network Monitor и LANScan Professional, которые, в общем-то, представляют собой версии одного и того же программного продукта и различаются лишь набором функциональных возможностей. Так, утилита LANScan Professional предоставляет пользователю самый широкий выбор инструментов и возможностей, в то время как LANScan Network Monitor обладает несколько меньшими возможностями (отсутствует возможность ведения базы данных по сетевому трафику и сбору данных о сетевых пакетах), а LANScan Traffic View и вовсе является урезанной версией, лишенной многих возможностей. Все три утилиты имеют схожие интерфейсы, поэтому рассмотрим базовые возможности, предоставляемые утилитами LANScan, на примере версии LANScan Network Monitor.
Основное рабочее окно имеет пять закладок-переключателей, с помощью которых осуществляется переход между основными режимами мониторинга, а утилиты LANScan позволяют отображать следующую информацию:
- Summary(итог) показывает основные параметры сети, как-то: загрузку сети (количество переданных байтов и пакетов) в установленные промежутки времени; узлы сети, отсортированные по уровню сетевой активности; сетевые сервисы и протоколы, отсортированные по уровню утилизации сети (рисунок 4.4);
Рисунок4.4 -Утилита LANScan
- Trend (тенденции) — сообщает об уровне трафика в масштабе реального времени, отображая в верхнем окне график загрузки сети, измеренный в пакетах или байтах в секунду. Частота выборки значений для графика определяется пользователем в диапазоне от 1 секунды до нескольких часов (по умолчанию 10 секунд). В основном окне можно оценить уровень трафика, создаваемого в сети отдельными узлами, а также проанализировать, пакеты какого размера наиболее часто используются узлами сети для общения;
- Conversation (сеанс связи) — отображает все активные в данный момент сетевые устройства и уровень создаваемого ими трафика (в байтах или пакетах) в текущий момент и за все время работы, а также время последней сетевой активности. Вся информация о сетевом трафике узлов сети также представляется в графическом виде, но, к сожалению, при большом количестве узлов происходит повторение цветов, которые в принципе должны быть эксклюзивными для каждого хоста (используется всего 16 цветов). Данный пункт дает возможность выбирать отображаемое название узла сети, в качестве которого можно взять MAC-адрес сетевой карты, ее IP-адрес, имя DNS или имя, ассоциированное с данным устройством и заданное пользователем утилиты. Кроме того, посредством контекстного меню, вызываемого нажатием правой клавиши мыши, может быть выполнен тест на активность (присутствие в сети) сетевого устройства (пункт меню ActiveTest) и проверен путь маршрутизации к этому узлу сети (пункт меню Trace);
- Protocols (протоколы) — отображает распределение сетевого трафика в соответствии с сетевыми протоколами. Эта информация имеет как численное (в байтах или пакетах), так и графическое представление. При этом, как и в предыдущем случае, отображается распределение трафика и на текущий момент, и за все время наблюдения;
- Layout (схема) — позволяет строить структурную схему сети. Значки сконфигурированных устройств автоматически появляются на листе схемы. После задания режима редактирования можно перемещать эти рисунки, соединять узлы в нужном порядке, выстраивая таким образом топологию сети;
В версиях LANScan Network Monitor и LANScan Professional имеется возможность оперировать в качестве объекта мониторинга не только сетевым интерфейсом компьютера, на котором установлена данная утилита (объект Network), но и любыми сетевыми устройствами сети (объекты Device). Это означает, что пользователю предоставляется возможность виртуально перенестись на выбранный узел сети и проводить мониторинг таким образом, как будто данная утилита работает на удаленной машине. При этом становятся доступны те же инструменты сетевого мониторинга, что и описанные выше для локального сетевого интерфейса, с той лишь разницей, что анализируются только входящий и исходящий трафики этого узла.
Для всех объектов утилит LANScan Network Monitor и LANScan Professional может быть задана функция оповещения о событиях, касающихся уровня трафика узла (low, high), по достижении которого пользователь будет предупреждаться посредством сообщения отправленного по е-mail, всплывающего окна и звукового сигнала. Кроме того, это будет отражено соответствующей записью в log-файле и изменением цвета индикатора, находящегося напротив объекта (который, кстати говоря, появляется только после назначения мониторинга событий для объекта).
Демонстрационную версию данной утилиты можно найти на сайте компании-разработчика[8].
4.4 3Com Network Supervisor 4.0.1
Утилита 3Com Network Supervisor — это, пожалуй, самый мощный инструмент сетевого мониторинга. Данный программный продукт сочетает в себе простоту установки и настройки, максимальную информативность и удобный, интуитивно понятный интерфейс. Хотя компания 3Com, являющаяся одним из лидеров по производству сетевого оборудования, выпустила эту утилиту прежде всего для сетей, построенных на основе компонентов ее собственного производства, однако этот программный продукт может успешно работать и с сетевым оборудованием других производителей.
Главным достоинством утилиты 3Com Network Supervisor, на мой взгляд, является ее способность отображать структуру сети по результатам ее автоматического сканирования (рисунок 4.5), что облегчает работу сетевых администраторов крупных ЛВС, а если сеть небольшая, то может способствовать более детальному анализу ее структуры. Следует отметить, что при сканировании локальной сети программа выявляет разного рода конфликты и ошибки в структуре сети, о чем сообщает пользователю. С помощью данной утилиты можно осуществлять мониторинг как состояния ЛВС в целом, так и каждого отдельного узла сети, оперативно локализуя и выявляя перегруженные участки сети и причину возникновения этих стрессовых ситуаций. Программный продукт 3Com Network Supervisor предоставляет удобные средства для оценки работы основных сетевых сервисов и протоколов каждого узла ЛВС (хотя здесь следует оговориться, что анализируются протоколы, свойственные Windows-сетям), давая администраторам возможность выбирать состав сервисов и протоколов, по которым будет проводиться мониторинг. О возникновении стрессовой ситуации утилита предупреждает пользователя звуковым сигналом и изменением цвета индикатора соответствующего сетевого узла. При этом существует возможность гибко настроить пороговое значение состояния стресса, то есть выбрать период времени, в течение которого сетевой узел находится в том или ином критическом состоянии, чтобы избежать трактовки кратковременных сбоев (или иного события) как стрессового состояния узла.
К стрессовым состояниям узла относятся превышение определенного уровня трафика и разного рода некорректности в работе по тому или иному протоколу, причем утилита 3Com Network Supervisor указывает возможные причины возникновения подобной ситуации. Интересно, что при наличии у узла работающего Web-сервера можно получить к нему доступ по протоколу http, сделав двойной клик на иконке этого узла. Также следует отметить, что программа ведет журнал статистики, где отображаются все важные (стрессовые) события, произошедшие за время наблюдения за сетью (с указанием даты и времени), а также указывается, разрешилась ли данная ситуация для узла либо он продолжает работать в стрессовом режиме.
Рисунок4.5 -Утилита 3Com Network Supervisor
Демонстрационную версию данной утилиты можно найти на сайте компании-разработчика [9].
5 Метод решения поставленной задачи
Задачу по созданию монитора для оценки использования ресурсов ПК локальной вычислительной сети в среде MS Windows 2000 или MS Windows XP предлагается решить на основе сервера сценариев Windows Script Host (WSH) и технологии WMI, так как данные сервисы входят в комплект поставки вышеназванных операционных систем, то есть не требует дополнительной установки, а также позволяет производить все необходимые действия по слежению за работой различных частей ЛВС.
Сервер сценариев Windows Script Host несколько лет назад был предложен компанией Microsoft в качестве инструмента разработки и выполнения специальных сценариев операционной системы Windows. Различные его версии входят в стандартную поставку ОС Windows 98/2000/ХР. Последняя версия WSH 5.6 включена в Windows XP и Windows Server 2003. Сценарии WSH могут создаваться с помощью специализированных языков, например, Microsoft Visual Basic Script Edition (VBScript) или Microsoft JScript и использовать любые объекты-серверы автоматизации, зарегистрированные в системе, что и определяет чрезвычайно мощные возможности таких сценариев. Собственная объектная модель WSH позволяет из сценариев работать с файловой системой, системным реестром, специальными папками, ярлыками Windows, ресурсами локальной сети, а также запускать процессы и контролировать ход их выполнения.
Написание программы рационально на языке VBScript, так как он обеспечивает достаточно простой доступ к объектам WMI и позволяет реализовать все требуемые функции.
Графический пользовательский интерфейс предлагается организовать с помощью HTML форм, в силу простоты реализации и, что более важно, простоты использования.
Журнал учета изменений реестра выполнен в виде текстового файла с расширением «log», а база данных ресурсов ЛВС – в виде файла MS Access с расширением «mdb».
6 Общие сведения о WMI
Технология WMI (Windows Management Interface/Instrumentation) — это созданная фирмой Microsoft реализация модели управления предприятием на базе Web (Web-Based Enterprise Management, WBEM), которая разработана и принята рабочей группой по управлению распределенными системами (Distributed Management Task Force, DMTF), при участии таких компаний, как ВМС Software, Cisco Systems, Compaq Computer, Intel и Microsoft. Задачей WBEM была разработка таких стандартов для удаленного управления информационной средой предприятия, которые позволили бы управлять всеми физическими и логическими компонентами этой среды из одной точки и не зависели бы при этом от конкретного оборудования, сетевой инфраструктуры, операционной системы, файловой системы и т. д. Для этого была предложена схема CIM (Common Information Model), которая представляет физическую и логическую структуры компьютерной системы в виде единой расширяемой объектно-ориентированной информационной модели и определяет единые интерфейсы для получения информации о любом компоненте этой модели.
Разработчики Microsoft реализовали WMI для всех 32-разрядных версий Windows, начиная от Windows 95 OSR 2 и заканчивая Windows Server 2003.
6.1 Назначение и возможности WMI
В Windows NT для администрирования операционной системы приходилось пользоваться несколькими утилитами и инструментами, т. к. данные о компонентах системы хранились в различных источниках (база пользователей SAM, журнал событий Event Log, системный реестр и т. д.), доступ к которым осуществлялся с помощью разных утилит (диспетчер пользователей — User Manager, просмотрщик журнала событий — Event Log Viewer, редактор реестра — Regedit) и программных интерфейсов (Network API для работы с данными о пользователях, Event Log API для просмотра сведений о произошедших событиях, Registry API для чтения или редактирования системного реестра). Понятно, что это было неудобно, т. к. во-первых, приходилось осваивать множество не связанных друг с другом технологий и инструментов, а во-вторых, усложнялось взаимодействие разных компонентов компьютерной системы друг с другом (например, настройки в локальном реестре рабочей станции могли конфликтовать с политиками безопасности, заданными на сервере).
С появлением Windows 2000 эта ситуация была в основном исправлена. Появилась встроенная в операционную систему консоль управления ММС (Microsoft Management Console), с помощью которой можно из одной точки управлять большинством логических и физических компонентов компьютерной сети, построенной на основе Windows. В свою очередь, это стало возможным именно благодаря применению технологии WMI, которая, во-первых, делает доступ к информации о самых различных компонентах информационной системы (журнал событий, системный реестр, подсистема производительности, драйверы устройств и т. д.) независимым от типа этих компонентов, а во-вторых, осуществляет управление любой подсистемой стандартным, не зависящим от реализации этой подсистемы, методом.
Итак, технология WMI — это глобальная концепция настройки, управления и слежения за работой различных частей корпоративной компьютерной сети. В частности, используя WMI, можно с помощью специальных утилит или сценариев Windows Script Host (WSH) решать следующие задачи:
- управление различными версиями операционной системы Windows.С помощью сценариев WMI можно обращаться к системным счетчикам производительности, анализировать журналы событий (Event Logs), работать с файловой системой, установленными принтерами, управлять запущенными процессами и сервисами, просматривать и изменять настройки реестра, создавать и удалять совместно используемые ресурсы и т. д. При этом все операции можно выполнять одинаковым образом как на локальной, так и на удаленной машине.
- управление ресурсами и службами сети.Сценарии WMI позволяют настраивать сетевые службы (DNS, DHCP и т. п.) и управлять сетевыми устройствами, поддерживающими технологию SNMP (Simple Network Management Protocol).
- мониторинг состояния системы в реальном времени. Можно создавать сценарии-обработчики событий WMI, которые позволяют отслеживать и нужным образом обрабатывать события, связанные с теми или иными изменениями в информационной системе (например, появление определенной записи в журнале событий на локальном или удаленном компьютере, заполнение жесткого диска сервера до определенного предела, изменение определенного ключа в системном реестре и т. п.).
- управление серверными приложениями Windows.С помощью WMI можно управлять различными приложениями Microsoft: Application Center, Operations Manager, Systems Management Server, Internet Information Server, Exchange Server, SQL Server.
6.2 Установка WMI
В операционных системах Windows Me/2000/XP и Windows Server 2003 никакой дополнительной установки WMI не требуется, здесь уже функционирует ядро WMI версии 1.5. Если же требуется использовать WMI на компьютерах с Windows 9x/NT, то необходимо сначала обновить здесь ядро WMI до версии 1.5; необходимый для этого инсталяционный файл wmicore.exe можно свободно скачать с сервера Microsoft [10].
6.3 Общая структура WMI
Архитектура WMI состоит из трех частей, показанных на рисунке 6.1.
Управляемые объекты/ресурсы (managed resources) — любые логические или физические компоненты информационной системы, доступ к которым может быть получен с помощью WMI. В качестве управляемых ресурсов могут выступать, например, файлы на жестком диске, запущенный экземпляр приложения, системное событие, предоставленный в общее пользование ресурс, сетевой пакет или установленный в компьютере процессор.
Рисунок6.1 - Архитектура WMI
Ядро WMI(WMI infrastructure). Это связующее звено архитектуры WMI, отвечающее за связь управляющих программ с управляемыми объектами. Ядро WMI, в свою очередь, можно разделить на три части: менеджер объектов CIM (Common Information Model Object Manager, CIMOM), репозиторий (хранилище классов и объектов) CIM и провайдеры WMI. Кроме этого, для доступа к WMI с помощью сценариев необходима специальная библиотека поддержки сценариев WMI (WMI scripting library), которая располагается в файле wbemdisp.dll в каталоге %SystemRoot%\System32\ Wbem (в Windows Server 2003, Windows XP, Windows 2000 и Windows NT) или в каталоге %WinDir%\System\Wbem (в Windows Me и Windows 9x).
Управляющие программы (management applications), которые являются потребителями сервисов WMI. В качестве потребителей могут выступать полновесные Win32-пpилoжeния, Web-приложения, сценарии WSH или другие инструменты администрирования, с помощью которых происходит доступ к управляемым объектам посредством WMI.
Отметим, что управляющие программы (потребители) различных типов применяют разные механизмы для доступа к WMI, т. е. используют разные интерфейсы прикладного программирования (Application Programming Interface, API). Программы Win32 могут взаимодействовать с WMI напрямую, используя для этого WMI COM API — главный API управления. ActiveX-компоненты WMI реализуют API другого уровня: разработчики Web-приложений применяют средства управления ActiveX для создания сетевых интерфейсов к данным WMI. Еще один способ управления WMIпредполагает использование сценариев WSH с помощью специального API WMI для сценариев (такие сценарии мы иногда будем называть просто сценариями WMI).
6.4 Ядро WMI
Ядро WMI составляют провайдеры WMI, менеджер объектов CIM и репозиторий CIM. Рассмотрим эти компоненты более подробно.
6.4.1 Провайдеры WMI
Провайдеры WMI обеспечивают связь между менеджером объектов CIM и управляемыми ресурсами: провайдеры предоставляют для CIMOM данные об управляемом объекте, обрабатывают запросы от управляющих программ и генерируют сообщения о наступлении определенных событий (см. рисунок 6.1).
При этом провайдер WMI общается с управляемым объектом с помощью специфического API этого объекта, а с CIMOM — посредством стандартного интерфейса прикладного программирования WMI (WMI API). Таким образом, провайдеры скрывают детали внутренней реализации управляемых объектов, позволяя CIMOM обращаться к этим объектам единообразно, используя один и тот же WMI API.
Фактически провайдеры WMI представлены динамическими библиотеками (DLL), находящимися чаще всего в каталоге %SystemRoot%\System32\Wbem. WMI включает в себя множество встроенных (стандартных) провайдеров для операционных систем Windows 2000, Windows ХР и Windows Server 2003, которые предназначены для получения данных из известных системных источников таких, как подсистема Win32, журналы событий, системный реестр, системные счетчики производительности. В таблице 6.1 приведено описание некоторых стандартных провайдеров, которые присутствуют во всех ранее перечисленных операционных системах.
Таблица 6.1 - Некоторые стандартные провайдеры WMI
Провайдер
DLL-файл
Описание
Провайдер каталога Active Directory
Dsprov.dll
Позволяет обращаться к объектам Active Directory как к объектам WMI
Провайдер журнала событий (Event Log provider)
Ntevtdll
Обеспечивает управление журналом событий (выборка по определенному критерию записей для чтения, создание резервных копий и очистка журнала, изменение настроек и т. д.). Также этот провайдер позволяет обрабатывать события, генерируемые журналом (например, добавление в журнал записи определенного типа)
Продолжение таблицы 6.1
Провайдер системных счетчиков производительности (Perfomance Counter provider)
Wbemperf.dll
Обеспечивает доступ к счетчикам производительности, т. е. к данным, позволяющим численно оценивать производительность системы
Провайдер реестра (Registry provider)
Stdprov.dll
Позволяет читать данные из реестра, создавать и модифицировать там ключи и разделы. Кроме этого, провайдер обеспечивает генерацию события WMI при изменении определенного ключа или ветви реестра
Провайдер SNMP-устройств (SNMP provider)
Snmpincl.dll
Является шлюзом для доступа к системам и устройствам, которые управляются с помощью протокола SNMP (Simple Network Management Protocol)
Провайдер драйверов устройств (WDM provider)
Wmiprov.dll
Позволяет получить доступ к информации низкого уровня о драйверах устройств Windows Driver Model (WDM); в качестве таких устройств могут выступать, например, порты ввода/вывода или сетевые платы
Провайдер драйверов устройств (WDM provider)
Wmiprov.dll
Позволяет получить доступ к информации низкого уровня о драйверах устройств Windows Driver Model (WDM); в качестве таких устройств могут выступать, например, порты ввода/вывода или сетевые платы
Провайдер подсистемы Win32 (Win32 provider)
Cimwin32.dll
Обеспечивает доступ к информации о компьютере, операционной системе, подсистеме безопасности, дисках, периферийных устройствах, файловых системах, файлах, папках, сетевых ресурсах, принтерах, процессах, сервисах и т. п.
Провайдер инсталлированных программных продуктов (Windows Installer provider)
Msiprov.dll
Позволяет получить информацию об инсталлированном программном обеспечении
Технология WMI позволяет также создавать и устанавливать провайдеры сторонних поставщиков, с помощью которых можно будет, скажем, через WMI получать информацию о каких-то специфических устройствах или службах. Отметим, что свои провайдеры WMI имеются в таких продуктах Microsoft, как Application Center, Operations Manager, Systems Management Server, Internet Information Server, Exchange Server, SQL Server.
6.4.2 Менеджер объектов CIM
Задачей менеджера объектов CIM (CIMOM) является обеспечение взаимодействия между потребителями сервисов WMI (управляющими приложениями) и провайдерами WMI (см. рисунок 6.1). CIMOM обрабатывает все запросы, которые поступают от управляющих приложений к WMI, и обеспечивает доставку к этим приложениям информации, полученной в результате выполнения таких запросов. Детальное описание функций CIMOM приведено далее:
- регистрация провайдеров. Все провайдеры WMI должны быть зарегистрированы с помощью CIMOM; информация о провайдере (например, тип этого провайдера или путь к библиотеке DLL, которой он представлен) хранится в репозитории CIM;
- переадресация запросов. Используя информацию о зарегистрированных провайдерах, CIMOM перенаправляет полученный от управляющего приложения запрос к нужному провайдеру;
- доступ к удаленной машине с WMI. Управляющее приложение может обратиться с запросом к любой удаленной машине, на которой установлен WMI. При этом происходит соединение с CIMOM на удаленной машине, после чего все запросы здесь должны обрабатываться точно так же, как и на локальной машине;
- обеспечение безопасности. Защита ресурсов WMI состоит в том, что CIMOM проверяет права пользователя, который пытается воспользоваться сервисами WMI на локальном или удаленном компьютере;
- обработка запросов управляющих приложений. Потребители WMI обращаются к управляемым объектам с помощью специального языка запросов WMI Query Language (WQL). Если провайдер запрашиваемого объекта не поддерживает напрямую WQL, то CIMOM должен преобразовать этот запрос к тому виду, в котором он сможет быть обработан этим провайдером;
- обработка событий WMI. Поддержка CIMOM этой функции позволяет потребителям WMI создавать обработчики событий, которые возникают при определенном изменении в управляемом объекте (примеры таких событий — снижение объема свободного пространства на жестком диске до заданного значения или запуск на компьютере определенного приложения). Для этого CIMOM периодически опрашивает нужный объект (интервал опроса задается в управляющем приложении) и генерирует событие, как только обнаруживает, что заданное заранее условие возникновения события выполнено.
В Windows функциональность менеджера CIM обеспечивает файл winmgmt.exe, который находится в каталоге %SystemRoot%\System32\Wbem (в Windows Server 2003, Windows XP, Windows 2000 и Windows NT) или %WinDir%\System\Wbem (в Windows Me и Windows 9x). При этом в Windows Server 2003, Windows XP, Windows 2000 и Windows NT этот файл запускается как сервис, а в Windows Me и Windows 9x приложение winmgmt.exe функционирует как стандартный исполняемый процесс.
6.4.3 Репозиторий CIMи пространства имен
Основной идеей, на которой базируется WMI, является возможность представить информацию о состоянии любого управляемого объекта в виде стандартной схемы. В качестве такой схемы выступает информационная модель CIM, которая является репозиторием (хранилищем) объектов и классов, моделирующих различные компоненты компьютерной системы.
Таким образом, CIM можно считать хранилищем классов, где класс — это модель (шаблон) управляемого объекта (напомним, что в качестве управляемых объектов могут выступать самые различные логические и физические компоненты компьютерной системы: жесткие диски, журналы событий, сетевые карты, файлы и папки, процессы, сервисы, процессоры и т. д.). С этой точки зрения CIM похожа на другие каталоги, которые используются в Windows (например, каталог файловой системы содержит объекты-файлы и объекты-папки, а каталог Active Directory — объекты-домены, объекты-пользователи, объекты-принтеры и т. д.). Однако важной особенностью CIM является то, что хранящиеся в ней классы чаще всего соответствуют динамически изменяемым ресурсам, поэтому объекты-экземпляры таких классов не хранятся постоянно в CIM, а создаются провайдером по запросу потребителя WMI. Связано это с тем, что состояние большинства WMI-совместимых устройств меняется очень быстро и постоянное обновление информации в CIM может значительно снизить общую производительность системы. Количество классов, имеющихся в CIM, зависит от версии операционной системы.
Классы, составляющие CIM, имеют свойства и методы и находятся в иерархической зависимости друг от друга — классы-потомки могут наследовать или переопределять свойства родительских классов, а также добавлять собственные свойства. Свойства описывают конфигурацию и текущее состояние управляемого ресурса, а методы позволяют выполнить над этим ресурсом определенные действия.
Классы CIM группируются в пространства имен (namespaces), которые упорядочены иерархически (корневое пространство имен обозначается через Root). Пространство имен — это группа логически связанных друг с другом классов, которые относятся к какой-либо определенной технологии или области управления. Одно из наиболее часто используемых на практике пространств имен CIMV2 содержит классы, которые описывают компьютер и операционную систему; описание некоторых классов из этого пространства имен приведено в таблице 6.2.
Таблица 6.2 - Некоторые классы из пространства имен Root\CIMV2
Класс
Описание
Win32_BaseBoard
Описывает системную (материнскую) плату. С помощью экземпляра этого класса можно, например, узнать серийный номер материнской платы
Win32_Bus
Описывает физические шины (например, шины PCI или USB) с точки зрения операционной системы Win32
Win32_Processor
Представляет процессоры, т. е. устройства, способные обрабатывать наборы машинных команд в системе Win32. В мультипроцессорной системе для каждого из процессоров существует отдельный экземпляр этого класса
Win32_DiskPartition
Позволяет получать информацию об имеющихся в системе разделах жестких дисков. Для каждого из разделов создается свой экземпляр этого класса
Win32_FloppyDrive
Описывает имеющиеся в системе дисководы гибких дисков. Для каждого из дисководов создается свой экземпляр этого класса
Win32_Keyboard
Описывает подключенную к компьютеру клавиатуру (например, отражаются количество функциональных клавиш или используемая раскладка)
Win32_BIOS
Свойства этого класса представляют атрибуты базовой системы ввода/вывода (BIOS): компания-производитель, версия, номер сборки и т. д.
Win32_Opera-tingSystem
Описывает установленную на компьютере операционную систему. В свойствах экземпляра этого класса хранятся номер сборки системы, используемая по умолчанию кодовая страница, время последней перезагрузки, число пользовательских лицензий и т. д.
CIM_DataFile
Экземпляры этого класса соответствуют логическим файлам. Кроме свойств, описывающих различные атрибуты файла, в классе ClM_DataFile имеются методы, которые позволяют производить над файлом некоторые действия (копировать, перемещать, переименовывать или удалять его, изменять разрешения на файл и т. д.)
Win32_Directory
Экземпляры этого класса соответствуют каталогам файловой системы. Свойства и методы класса win32_Directory практически совпадают со свойствами и методами класса CIM_DataFile
Продолжение таблицы 6.2
Win32_Desktop
В свойствах экземпляров класса Win32_Desktop хранятся характеристики рабочих столов пользователей: частота мигания курсора, имя исполняемого файла заставки, частота вызова заставки, имя файла с рисунком рабочего стола и т. д.
Win32_Share
Экземпляры этого класса соответствуют общим ресурсам, имеющимся в системе (общие папки, принтеры, именованные каналы и т. д.)
Win32_Service
Экземпляры данного класса позволяют получать информацию о службах (services) операционной системы Win32 и управлять ими.
Win32_Process
Каждому запущенному в системе процессу соответствует экземпляр класса Win32_Process. Свойства этого класса позволяют получить полную информацию о процессе (имя, идентификатор, время создания, приоритет и т. д.), а с помощью методов данного класса можно создавать новые процессы, менять приоритеты, завершать процессы и т. д.
Количество и содержимое пространств имен зависит от операционной системы, а также от используемой версии WMI и установленных в системе приложений. Отметим при этом, что в любом варианте установки WMI имеются четыре предопределенных пространства имен, которые всегда находятся на один уровень ниже корневого пространства имен: CIMV2, Default, Security и WMI. Некоторые пространства имен содержат другие пространства. Например, в CIMV2 определены подпространства имен Applications и ms_409.
В операционных системах Windows Server 2003 и Windows XP репозиторий CIM физически располагается в четырех файлах каталога %System-Root%\System32\Wbem\ Repository\FS:
- index.btr (индексный файл);
- objects.data (репозиторий CIM, в котором хранятся описания управляемых ресурсов);
- index.map и object.map (файлы контроля над транзакциями).
В более ранних версиях Windows CIM представлена одним файлом cim.rep, который в случае Windows 2000/NT находится в каталоге %SystemRootr%\System32\Wbem\Repository, а в случае Windows 9х/Ме — в каталоге %WinDir%\ System\Wbem\Repository.
6.5 Путь к классам и объектам CIM
Все классы внутри одного пространства имен должны иметь уникальные имена (при этом имена классов из разных пространств могут совпадать), причем класс в одном пространстве имен не может иметь предка или потомка из другого пространства. Для идентификации классов и объектов внутри пространства имен в CIM нужно задавать путь к этим классам и объектам (object path), аналогично тому, как это делается, например, в пространства имен файловой системы. Напомним, что любой файл на диске однозначно определяется полным путем к нему следующим образом: нужно указать имя устройства, после которого следуют одно или несколько имен каталогов и непосредственно имя файла. Другими словами, в файловой системе используется иерархическая структура каталогов и файлов различной степени вложенности. В отличие от этого, у пространств имен CIM имеется только один уровень в глубину, а для идентификации объекта задействуются свойства объектов, которые рассматриваются как ключи. Другими словами, каждый экземпляр класса должен быть однозначно идентифицируемым по своим ключевым параметрам. Полный путь к хранящемуся в CIM классу или объекту-экземпляру класса (управляемому устройству) имеет следующую структуру:
[ \ \ComputerName] [ \Namespace] [ :ClassName] [ . KeyProperty1 = Value1
[, KeyProperty2=Value2 .] ]
Здесь \\ComputerName — это сетевое имя компьютера, на котором расположен нужный класс или объект (для задания имени локального компьютера можно использовать символ "."), \Namespace — название пространства имен, в котором находится этот класс или объект, ClassName — имя класса. Параметры KeyProperty1 и Value1, KeyProperty2 и Value2, задают список ключевых пар (свойство-значение) объекта. Например, следующий путь:
\\.\CIMV2:Win32_Process.Name="Notepad.exe"
определяет процесс (экземпляр класса Win32_Process из пространства имен CIMV2) с именем "Notepad.exe", который запущен на локальной машине.
Другой пример — построение пути к объекту WMI, соответствующему десятой записи в журнале событий приложений на компьютере с именем \\CPU3. В WMI для представления записей в журнале событий строятся объекты-экземпляры класса Win32_NTLogEvent. Этот класс хранится в пространстве имен CIMV2, а для идентификации конкретного экземпляра класса Win3 2_NTLogEvent используются два ключевых свойства символьного типа: LogFile (тип журнала событий) и RecordNumber (символьное представление порядкового номера записи в журнале). Поэтому полный путь к объекту в нашем примере будет иметь следующий вид:
WCPU3\CIMV2:Win32_NTLogEvent.LogFile^"Application",
RecordNumber="1"
6.6 Структура классов WMI
Напомним, что всякому ресурсу, управляемому с помощью WMI, соответствует специальный класс WMI; каждый класс имеет четко определенную структуру и содержит свойства, методы и квалификаторы (свои квалификаторы могут быть также у свойств и методов). Классы описываются с помощью специального языка MOF (Managed Object Format), который, в свою очередь, базируется на языке IDL (Interface Definition Language), применяемом для описания интерфейсов СОМ-объектов. После определения структуры класса с помощью MOF разработчик может добавить откомпилированное представление этого класса в репозиторий CIM с помощью стандартной утилиты mofcomp.exe.
6.6.1 Основные типы классов CIM
В CIM существует три основных типа классов, различающихся между собой по способу хранения информации об управляемых ресурсах:
- абстрактный класс (abstract class) — это шаблон, который служит исключительно для образования новых классов-потомков (абстрактных и неабстрактных). Абстрактный класс не может непосредственно использоваться для получения экземпляра управляемого ресурса;
- статический класс (static class) определяет данные, которые физически хранятся в репозитории CIM (к такому типу относятся, например, данные о собственных настройках WMI). Вследствие этого для доступа к экземплярам статических классов не нужно прибегать к помощи каких-либо провайдеров;
- динамический класс (dynamic class) моделирует управляемый ресурс, данные о котором соответствующий провайдер возвращает в динамическом режиме.
Кроме трех основных типов классов в CIM выделяется еще один специальный тип — ассоциативный класс (association class). Это абстрактный (статический или динамический класс), который описывает логическую связь между двумя классами или управляемыми ресурсами (например, ассоциативный класс Win32_SystemProcesses связывает класс Win32_Process, экземпляры которого соответствуют запущенным в системе процессам, с классом Win32_ComputerSystem, в котором представлены общие настройки компьютерной системы).
Кроме этого, все классы CIM можно разделить на четыре группы по принадлежности к различным информационным моделям:
- системные классы. Системными называются те классы, которые служат для задания конфигурации и выполнения внутренних функций WMI (определение пространств имен, обеспечение безопасности при работе с пространствами имен, регистрация провайдеров, подписка на события WMI и формирование сообщений о наступлении таких событий). Системные классы могут быть абстрактными или статическими. Системные классы можно легко отличить от других по названию — имена всех системных классов начинаются с символов " " (двойное подчеркивание), например, SystemClass, NAMESPACE, Provider ИЛИ Win32 Provider;
- классы модели ядра (основной модели) (core model). К этой модели относятся абстрактные классы, которые обеспечивают интерфейс со всеми областями управления. Названия таких классов начинаются с префикса " CIM _". Примерами классов модели ядра могут служить класс CIM_ManagedSystemEiement (свойства этого класса идентифицируют управляемые Компоненты системы) И его наследники CIM_LogicalElement (описание логического управляемого ресурса, например, файла или каталога) и CIM_PhysicalElement (описание физического управляемого ресурса, например, периферийного устройства);
- классы общей модели (common model). Общая модель является расширением основной модели — здесь представлены классы, которые являются специфическими для задач управления, но не зависят от конкретной технологии или реализации (другими словами, не зависят от типа операционной системы). Названия таких классов, как и классов модели ядра, начинаются с " CIM _". Класс CIM_LogicaiFiie (наследник класса CIM_LogicaiElement), описывающий файл, является примером класса общей модели, т. к. файловая система присутствует практически в любой операционной системе;
- классы модели расширения (extension model). Эта категория классов включает в себя специфические для каждой технологии или реализации дополнения к общей модели. В WMI определено большое количество классов, которые соответствуют ресурсам, специфическим для среды Win32 (имена этих классов начинаются с префикса "Win32_"). Например, классы Win32_PageFile и Win32_ShortCutFile, которые описывают соответственно файлы подкачки Windows и файлы-ярлыки, являются потомками класса CIM_LogicalFile из общей модели.
Так как класс в одном пространстве имен не может иметь предка или потомка из другого пространства, то в различных пространствах имен находятся одни и те же классы из модели ядра и общей модели.
6.6.2 Свойства классов WMI
Свойства классов используются для однозначной идентификации экземпляра класса, представляющего конкретный управляемый ресурс, а также для описания текущего состояния этого ресурса. Рассмотрим класс Win32_Process, экземпляры которого соответствуют запущенным в операционной системе процессам. Напомним, что информацию обо всех процессах можно получить с помощью Диспетчера задач(Task Manager), запускаемого нажатием клавиш ++ (рисунок 6.2).
Рисунок6.2 - Процессы, запущенные на локальном
компьютере
Количество выводимых на экран параметров для процессов зависит от настроек Диспетчера задач(Task Manager): выбрав в меню Вид(View) пункт выбрать столбцы(Choose columns), можно отметить интересующие нас параметры. Параметрам запущенного процесса соответствуют свойства класса Win32_ Process. Некоторые из них приведены в таблице 6.3.
Таблица 6.3 -Некоторые свойства класса Win32_Process
Свойство
Описание
Caption
Короткое текстовое описание процесса
CommandLine
Командная строка, используемая для запуска процесса
CreationDate
Время начала выполнения процесса
Description
Полное описание процесса
ExecutablePath
Полный путь к исполняемому файлу процесса
HandleCount
Общее количество дескрипторов, открытых в настоящее время процессом (равно общему количеству дескрипторов, открытых каждым потоком)
MaximumWorkingSetSize
Максимально возможный размер рабочего набора процесса (рабочий набор процесса — это набор страниц, доступных процессу в физической оперативной памяти)
MinimumWorking-SetSize
Минимально возможный размер рабочего набора процесса
Name
Имя процесса
OtherOperationCount
Число выполненных операций ввода/вывода, отличных от операции чтения или записи
OtherTransferCount
Размер данных, переданных в процессе выполнения операций, отличных от операции чтения или записи
PageFileUsage
Размер части файла подкачки, которая используется процессом в настоящее время
ParentProcessID
Уникальный идентификатор родительского процесса, создавшего данный процесс
PeakPageFileUsage
Максимальный размер части файла подкачки, которая использовалась процессом за все время его работы
PeakVirtualSize
Максимальное значение размера виртуального адресного пространства, которое использовалось процессом единовременно
PeakWorkingSetSize
Максимальное значение размера рабочего набора процесса за все время работы
Priority
Приоритет процесса (минимальному приоритету соответствует значение 0, максимальному — 31)
Продолжение таблицы 6.3
ProcessID
Уникальный идентификатор процесса. Значение этого свойства актуально с момента создания процесса до окончания его работы
ReadOperationCount
Число выполненных процессом операций чтения
ReadTransferCount
Размер прочитанных данных
ThreadCount
Число активных потоков в процессе
VirtualSize
Текущий размер виртуального адресного пространства в байтах, используемого процессом
WorkingSetSize
Размер памяти в байтах, необходимый для успешного выполнения процесса в операционной системе, использующей страничную организацию памяти
WriteOperationCount
Число выполненных процессом операций записи
WriteTransferCount
Размер записанных данных
Отметим, что в основном в WMI свойства классов доступны только для чтения, однако значения определенных свойств в экземплярах некоторых классов можно изменять напрямую (для этого применяется специальный метод Put_()). Например, в экземплярах класса Win32_LogicalDisk, которые соответствуют логическим дискам, можно изменять свойство VolumeName, где хранится метка соответствующего диска.
Количество свойств, значения которых можно изменять, зависит от операционной системы. Например, в Windows 2000 для записи доступны только 39 свойств, а в Windows XP — 145 свойств.
Для того чтобы узнать, является ли определенное свойство доступным для записи, нужно проверить значение квалификатора write этого свойства (подробнее это будет описано далее).
Наконец, значения некоторых свойств неявно изменяются при вызове определенных методов класса (подробнее это описано далее).
6.6.3 Методы классов WMI
Методы класса позволяют выполнять те или иные действия над управляемым ресурсом, которому соответствует этот класс (так как не над каждым ресурсом можно производить какие-либо операции, то не у всякого класса есть методы). В таблице 6.4 описаны, например, методы, которые имеются у класса Win32_Process.
Таблица 6.4 -Методы класса Win32_Process
Метод
Описание
AttachDebugger()
Запускает отладчик, установленный в системе по умолчанию, для отладки процесса
Create(CommandLine, Current-Directory, ProcessStartupInformation, Processld)
Создает новый не интерактивный процесс
GetOwner(User,Domain)
После выполнения этого метода в переменной User будет записано имя пользователя, создавшего процесс (владельца процесса), а в переменной Domain— имя домена, в котором запущен этот процесс
GetOwnerSid(Sid)
Позволяет получить в переменной Sid идентификатор безопасности (Security IDentifier, SID) владельца процесса
SetPriority(Priority)
Устанавливает приоритет процесса. Числовой параметр Priority определяет требуемый приоритет и может принимать следующие значения: 64 (низкий), 16 384 (ниже среднего), 32 (средний), 32 768 (выше среднего), 128 (высокий), 256 (процесс выполняется в реальном времени)
Terminate(Reason)
Завершает процесс и все его потоки. Числовой параметр Reason задает код выхода, который будет сообщен операционной системе после завершения процесса
Таким образом, методы класса Win32_Process позволяют выполнять над процессами те же действия, которые можно осуществить в Диспетчере задач Windowsс помощью контекстного меню, появляющегося после щелчка правой кнопкой мыши над выделенным процессом в списке (рисунок 6.3), и кнопки «Завершить процесс»(Terminate process).
Рисунок6.3 - Контекстное меню, позволяющее
выполнять действия над определенным процессом
6.7 Квалификаторы классов, свойств и методов
В WMIдля классов, свойств и методов можно задать так называемые квалификаторы (qualifiers). Квалификаторы содержат дополнительную информацию о том классе, свойстве или методе, в котором они определены.
6.7.1 Квалификаторы классов
Квалификаторы классов предоставляют информацию о классе в целом. Например, тип класса описывает квалификаторы логического типа cim_boolean с именами abstract (абстрактный класс), dynamic (динамический класс) и association (ассоциативный класс).
Один и тот же класс в различных операционных системах может иметь разное количество квалификаторов (версия WMI, поставляемая с Windows XP, соответствует спецификации CIM 2.5, а версии WMI в Windows 2000 и ниже — спецификации CIM 2.0). Для примера в таблице 6.5 приведено описание квалификаторов для класса Win32_Service в Windows XP.
Таблица 6.5 - Квалификаторы класса Win32_service
Квалификатор
Тип
Значение
Описание
Dynamic
CIM_BOOLEAN
True
Тип класса
Locale
CIM_SINT32
1033
Язык по умолчанию для класса или экземпляра класса
Provider
CIM_STRING
CIMWin32
Имя провайдера класса
SupportsUpdate
CIM_BOOLEAN
True
Указывает на то, что класс поддерживает операцию изменения (обновления) экземпляров
UUID
CIM_STRING
{8502C4D9-5FBB-11D2-AAC1-006008С78ВС7}
Универсальный уникальный идентификатор класса
Класс Win32_Process позволяет создавать новые процессы и завершать уже существующие, поэтому в данном классе появляется несколько новых квалификаторов (таблица 6.6).
Таблица 6.6 -Квалификаторы класса Win32_Process
Квалификатор
Тип
Значение
Описание
CreateBy
CIM_STRING
Create
Название метода, при помощи которого создается экземпляр класса
DeleteBy
CIM_STRING
Delete-Instance
Название метода, при помощи которого уничтожается экземпляр класса
Dynamic
CIM_BOOLEAN
True
Тип класса
Locale
CIM_SINT32
1033
Язык по умолчанию для класса или экземпляра класса
Provider
CIM_STRING
CIMWin32
Имя провайдера класса
SupportsCreate
CIM_BOOLEAN
True
Указывает на то, что класс поддерживает операцию создания экземпляров
SupportsDelete
CIM_BOOLEAN
True
Указывает на то, что класс поддерживает операцию уничтожения экземпляров
UUID
CIM_STRING
{8502C4DC-5FBB-11D2-AAC1-006008C78BC7}
Универсальный уникальный идентификатор класса
6.7.2 Квалификаторы свойств
Квалификаторы свойств позволяют определить тип данного свойства (квалификатор CIMType), доступность его для чтения (квалификатор Read) и записи (квалификатор write) и т. п. С помощью метода Put_ () можно изменять значения только тех свойств, у которых имеется квалификатор write со значением true.
6.7.3 Квалификаторы методов
Квалификаторы методов могут описывать множество допустимых значений, которые будут возвращаться методом (квалификатор ValueMap), указывать права, которыми необходимо обладать для вызова метода (квалификатор Privileges) и т. д.
Выполнять можно только те методы, у которых имеется квалификатор Implemented со значением True.
6.8 События WMI
Одной из наиболее мощных возможностей WMI является так называемая подписка на извещения о событиях WMI, т. е. создание собственных обработчиков определенных событий WMI. При этом под событием WMI понимается какое-либо изменение в состоянии логического или физического компонента информационной системы, доступ к которому может быть получен с помощью WMI. Приведем несколько простых примеров событий WMI:
- снижение объема свободного дискового пространства на сервере до заданного значения. Вместо того, чтобы постоянно проверять заполненность жесткого диска на файловом сервере, можно установить подписку на извещение о событии WMI, которое произойдет, скажем, при уменьшении свободного пространства до 10% от общего объема диска. При этом можно, например, автоматически отправить администратору соответствующее сообщение по электронной почте или запустить определенный сценарий WMI для архивирования информации;
- появление в журнале событий определенного сообщения. В целях повышения безопасности администратор может зарегистрировать событие, которое будет происходить при занесении в журнал событий записи о неудачной регистрации пользователя. Реакцией на такое событие может служить отсылка сообщения по электронной почте администратору, что позволит оперативно предотвращать попытки несанкционированного доступа;
- запуск или завершение работы определенного приложения. Если на сервере выполняется какое-то важное приложение, то может потребоваться статистика о его работе. Зарегистрировав соответствующее событие WMI, можно автоматически записывать в текстовый файл или в журнал операций информацию о том, когда и кем приложение было запущено или остановлено. Используя же в качестве обработчика этих событий сценарий WMI, можно производить запись статистической информации в таблицы базы данных или в электронную таблицу Microsoft Excel.
Таким образом, мы видим, что механизм событий позволяет оперативно информировать администратора о различных проблемах (в том числе потенциальных) и автоматически выполнять определенные действия для решения этих проблем.
Роль WMI состоит в организации взаимодействия между провайдерами событий (event providers), которые формируют извещения о наступлении определенного события, и зарегистрированными подписчиками на эти извещения (регистрируются подписчики, которые являются потребителями событий (event consumers), также с помощью WMI).
События WMI разделяются на три типа (внутренние, внешние и события таймера), каждому из которых в репозитории CIM соответствует определенный класс-потомок абстрактного класса Event. Внешние события представлены классом ExtrinsicEvent, события таймера — классом TimerEvent, а внутренние — тремя разными классами ( NamespaceOperationEvent, ClassOperationEvent и InstanceOperationEvent). На рисунке 6.4 показана иерархия классов, соответствующих событиям WMI, для пространства имен CIMV2.
При наступлении какого-либо события WMI автоматически создает экземпляр того класса, которому соответствует это событие.
6.8.1 Внутренние события
Внутренние события позволяют контролировать изменения в состоянии тех управляемых ресурсов, которые представлены отдельным классом WMI и хранятся в CIM, а также изменения в структуре самого репозитория CIM — можно получать извещения о создании, изменении и удалении экземпляров классов, а также самих классов и пространств имен.
Рисунок6.4 - Классы, соответствующие
событиям WMI
Для администратора операционной системы наибольший практический интерес представляет, конечно, обработка событий, которые связаны с управляемыми ресурсами (таким событиям соответствуют классы, которые порождены от класса InstanceOperationEvent):
- создание нового экземпляра определенного класса (класс InstanceCreationEvent);
- модификация существующего экземпляра класса (класс InstanceModificationEvent);
- удаление экземпляра класса (класс InstanceDeletionEvent).
Для подписки на извещения о наступлении внутреннего события применяются запросы специального вида на языке WQL. Мы не будем подробно рассматривать синтаксис таких запросов, а лишь приведем два простых примера.
Скажем, для того чтобы получить в сценарии WSH извещение о запуске нового экземпляра Блокнота (notepad.exe), нужно с помощью метода ExecNotificationQuery класса SWbemServices выполнить следующий оператор WQL:
SELECT * FROM InstanceCreationEvent WITHIN 2 WHERE Targetlnstance
ISA 'Win32_Process' AND Targetlnstance.Name='notepad.exe'
Для обработки события, связанного с закрытием Блокнота, можно применить такой оператор:
SELECT * FROM InstanceDeletionEvent WITHIN 2 WHERE Targetlnstance ISA 'Win32_Process' AND Targetlnstance.Name='notepad.exe'
6.8.2 Внешние события
Если возникает необходимость контроля состояния какого-либо объекта, для которого в CIM не предусмотрено отдельного класса, то используются внешние события. Пример такого внешнего события — изменение значения определенного ключа в реестре (в репозитории CIM нет отдельного класса, соответствующего ключу в реестре, поэтому событие является внешним).
Для создания внешнего события, в отличие от внутреннего, необходимо, чтобы данное событие поддерживалось соответствующим провайдером WMI. В провайдере должен быть объявлен класс, который являлся бы потомком класса ExtrinsicEvent и описывал нужное событие. Например, в провайдере системного реестра определен объект RegistryKeyChangeEvent, с помощью которого происходит оповещение потребителей событий об изменениях, которые происходят с ключом реестра. Для подписки на извещения о внешнем событии из сценария WSH нужно с помощью метода Exec-NotificationQueryAsync класса SWbemServices выполнить асинхронный WQL-запрос специального вида. Например, для того чтобы следить за изменениями ключа Software\\Microsoft\Windows Script Host\TrustPolicy, с помощью которого можно задавать политику безопасности при работе с WSH, используется такой WQL-запрос:
SELECT * FROM RegistryKeyChangeEvent WHERE Hive='HKEY_LOCAL_MACHINE' AND
KeyPath='Software\\Microsoft\\Windows Script HostWTrustPolicy'
6.8.3 Событиятаймера
В отличие от внутренних и внешних событий WMI, события таймера, которые могут происходить либо один раз в определенное время, либо несколько раз через заданные интервалы времени, настраиваются самим потребителем событий. Извещения о событиях таймера могут быть получены в любом пространстве имен.
6.8.4 Временные и постоянные потребители событий
В WMI могут быть зарегистрированы потребители событий двух видов: временные и постоянные.
Временные потребители событий — это приложения, в которых производится подписка на нужные события (другими словами, регистрация этих событий в WMI) и которые получают извещения о наступлении этих событий только во время своей активности. После завершения работы временного потребителя событий ни одно из зарегистрированных в нем событий больше не обрабатывается.
Нас в качестве временных потребителей событий будут интересовать сценарии WSH. Подписка на события здесь осуществляется, как было описано ранее, с помощью специальных WQL-запросов, которые выполняются путем вызова методов ExecNotificationQuery (для внутреннего события) или ExecNotificationQueryAsync (для внешнего события) класса SWbemServices. После такой регистрации в WMI внутреннего события сценарий с помощью метода NextEvent () объекта SwbemEventsource переводится в режим ожидания наступления события. Если же сценарий зарегистрировал в WMI внешнее событие, то для его обработки используется вспомогательный объект SWbemSink.
Постоянные потребители событий позволяют зарегистрировать нужное событие непосредственно в репозитории CIM, после чего извещения о наступлении этого события будут формироваться постоянно, до тех пор, пока событие не будет удалено из CIM явным образом.
Перезагрузка компьютера оставляет постоянно зарегистрированные события в репозитории CIM.
Очевидно, что использование постоянных потребителей делает сам процесс мониторинга событий более надежным, т. к. в этом случае нет необходимости запускать вручную временные потребители событий и следить за их работой.
В отличие от временных потребителей, процесс постоянной подписки на события состоит из нескольких независимых этапов.
Во-первых, в репозитории CIM необходимо зарегистрировать нужное событие. Для этого создается фильтр событий — новый экземпляр класса EventFiiter, в свойстве Query которого записывается определяющий это событие запрос на языке WQL, а в свойстве Name — имя фильтра. Фильтр событий сохраняется в репозитории CIM с помощью метода Put ().
Во-вторых, нужно определить действия потребителя при наступлении события и зарегистрировать этого потребителя в репозитории CIM. При этом постоянный потребитель событий должен быть представлен экземпляром потомка класса EventConsumer. В WMI имеются несколько встроенных классов для создания постоянных потребителей, которые позволяют по-разному реагировать на наступление событий (таблица 6.7).
Таблица 6.7 -Стандартные классы для создания постоянных потребителей
Класс
Описание
ActiveScriptEventConsumer
При получении извещения о событии запускает сценарий WMI
SMTPEventConsumer
При получении извещения о событии отправляет сообщение по электронной почте, используя SMTP
CoiranandLineEventConsumer
При получении извещения о событии запускает приложение в контексте локальной системы
NTEventLogEventConsumer
При получении извещения о событии записывает сообщение в журнал событий Windows
LogFileEventConsumer
При получении извещения о событии записывает строку в текстовый файл
Продолжение таблицы 6.7
ScriptingStandardConsumer
Setting
Содержит регистрационные данные, являющиеся общими для всех экземпляров класса ActiveScriptEventConsumer
Например, для того чтобы при возникновении события выполнился определенный сценарий, нужно создать экземпляр объекта ActiveScriptEventConsumer, в свойство ScriptFileName записать путь к нужному сценарию, в поле ScriptingEngine — тип сценария (VBScript или JScript), в поле Name — имя, под которым будет сохранен данный постоянный потребитель событий. После этого созданный постоянный потребитель (экземпляр ActiveScriptEventConsumer) сохраняется в репозитории CIM с помощью метода Put().
Наконец, последнее, что остается проделать, — это установить связь между созданными фильтром событий и постоянным потребителем (рисунок 6.9). Другими словами, нужно указать, какой именно потребитель событий будет принимать извещения о наступлении событий, задаваемых данным фильтром событий. Для этого нужно создать и зарегистрировать в репозитории CIM экземпляр ассоциативного класса FilterToConsumerBinding. У этого класса имеются свойства Filter, где нужно указать имя нужного фильтра событий (экземпляра объекта EventFiiter), и consumer, где указывается имя постоянного потребителя событий (экземпляра объекта ActiveScriptEventConsumer или другого потомка класса EventConsumer).
6.9 Безопасность при работе с WMI
В силу своей мощности технология WMI позволяет с помощью специальных утилит или сценариев производить различные потенциально опасные действия (например, остановку служб или перезагрузку компьютера). Причем на удаленной машине это выполнить (или, вернее сказать, попытаться выполнить) так же просто, как и на локальной — достаточно написать имя нужной машины в пути к объекту WMI. Поэтому вопросы безопасности при работе с WMI имеют очень большое значение.
Рисунок6.5 - Схема связи фильтра событий с постоянным потребителем событий
В основном, конечно, технология WMI предназначена для администраторов операционной системы и вся система безопасности в WMI построена таким образом, чтобы по умолчанию с помощью утилит или сценариев WMI пользователь мог на определенной машине выполнить только те действия, на которые ему даны разрешения на этой машине (таким образом, реализуется безопасность WMI на уровне операционной системы). То есть, если пользователю на уровне операционной системы не дано право перезагружать компьютер, он и с помощью WMI не сможет этого сделать.
Дополнительная политика безопасности в WMI реализована на уровне пространств имен и на уровне протокола DCOM (Distributed COM). Перед тем как более подробно рассмотреть эти типы безопасности WMI, напомним основные общие понятия, связанные с безопасностью в Windows.
Безопасность в Windows NT/2000/XP основана на именах пользователей и их паролях. Когда в этих версиях Windows заводится пользователь, то его учетной записи присваивается уникальный идентификатор безопасности (Security IDenttfier, SID). На основе SID для пользователя формируется маркер доступа (Access Token), в который также добавляется список групп, членом которых является пользователь, и список привилегий, которыми он обладает (например, остановка служб или выключение компьютера). Этот маркер доступа присваивается и всем процессам, которые запускает пользователь. Далее каждый объект операционной системы, доступ к которому определяет система безопасности (это может быть файл, процесс, служба и т. д.) имеет дескриптор безопасности (Security Descriptor, SD), в котором хранится таблица контроля доступа (Access Control List, ACL) для этого объекта. При обращении пользователя или процесса, запущенного пользователем, к объекту происходит сравнение маркера доступа этого пользователя с таблицей контроля доступа и в зависимости от результатов выдается или отклоняется разрешение на выполнение запрашиваемых действий над объектом.
Механизм безопасности WMI на уровне пространств имен соответствует общей модели безопасности Windows NT/2000/XP. Каждое пространство имен может иметь собственный дескриптор безопасности, в котором хранится таблица контроля доступа (ACL). Каждая запись таблицы контроля доступа (Access Control Entry, АСЕ) содержит информацию о том, какие права (разрешения) имеет определенный пользователь при выполнении различных операций в этом пространстве имен (список разрешений, используемых при работе с пространством имен, приведен в таблице 6.8).
Таблица 6.8 -Разрешения безопасности для пространства имен WMI
Разрешение
Описание
Выполнение методов (Execute Methods)
Позволяет вызывать методы классов из определенного пространства имен.
Продолжение таблицы 6.8
Полная запись
(Full Write)
Позволяет создавать и модифицировать подпространства имен, системные классы и экземпляры классов
Частичная запись
(Partial Write)
Позволяет создавать и модифицировать любые статические классы и экземпляры несистемных классов
Запись поставщика (Provider Write)
Позволяет записывать в репозиторий CIM классы провайдеров WMI и экземпляры этих классов
Включить учетную запись (Enable Account)
Предоставляет право чтения пространства имен WMI. Пользователи, имеющие это разрешение, могут запускать на локальном компьютере сценарии, которые читают данные WMI
Включить удаленно (Remote Enable)
Разрешает пользователям получить доступ к пространству имен WMI на удаленном компьютере. По умолчанию этим разрешением обладают только администраторы, обычные пользователи не могут получать данные WMI с удаленных машин
Прочесть безопасность (Read Security)
Позволяет читать дескриптор безопасности для пространства имен WMI без возможности его модификации
Изменение правил безопасности (Edit Security)
Позволяет изменять дескриптор безопасности для пространства имен WMI
Все записи таблицы контроля доступа сохраняются в репозитории WMI, причем в Windows NT/2000/XP сохраняются действительные АСЕ, а в Windows 9x/Me — псевдо-АСЕ. Разрешения WMI, определенные для конкретного пространства имен, также применяются (наследуются) ко всем подпространствам имен и классам, которые определены в этом пространстве.
Собственные разрешения безопасности для отдельного класса WMI определить нельзя.
В Windows NT/2000/XP по умолчанию группа администраторов обладает всеми разрешениями из табл. 6.12, а для остальных пользователей включена учетная запись (Enable Account), разрешено вызывать методы (Execute Methods) и записывать в CIM экземпляры классов провайдеров (Provider Write).
На компьютерах с операционной системой Windows 9х/Ме все локальные пользователи имеют полный доступ к WMI. Однако здесь могут быть заданы отдельные разрешения для пользователей, которые будут управлять этим компьютером удаленно.
Для доступа к инфраструктуре WMI на удаленном компьютере используется коммуникационный протокол DCOM (Distributed COM). При этом пользователь, который запускает сценарий или подключается к WMI с помощью специальных утилит, выступает в качестве клиента, а объект WMI, к которому идет обращение, является сервером. Для того чтобы определить, какой маркер доступа будет применяться при работе с WMI на удаленном компьютере, используются стандартные уровни олицетворения протокола DCOM (DCOM Impersonation Levels), которые описаны в таблице 6.9.
Таблица 6.9 -Уровни олицетворения DCOM
Уровень
Описание
Анонимный доступ (Anonymous)
Объект-сервер не имеет права получить информацию о пользователе или процессе, который обращается к данному объекту (иными словами, объект не может олицетворить клиента). Этот уровень олицетворения в WMI не используется
Идентификация (Identify)
Объект-сервер может запросить маркер доступа, связанный с клиентом, но не может произвести олицетворение. В сценариях WMI этот уровень олицетворения используется редко, т. к. в этом случае нельзя запускать сценарии WMI на удаленных машинах
Олицетворение (Impersonate)
Объект-сервер может пользоваться всеми правами и привилегиями, которыми обладает клиент. В сценариях WMI рекомендуется использовать именно этот уровень олицетворения, при этом сценарий WMI на удаленной машине сможет выполнять все действия, которые разрешено осуществлять пользователю, запустившему этот сценарий
Продолжение таблицы 6.9
Делегирование (Delegate)
Объект-сервер, к которому обращается клиент, может обратиться от имени клиента к другому объекту-серверу. Делегирование позволяет сценарию использовать на удаленной машине маркер доступа запустившего его пользователя, а также использовать этот маркер для доступа к объектам WMI на других рабочих станциях. Применение данного уровня олицетворения связано с потенциальным риском, поэтому делегирование в сценариях WMI следует применять только в случае особой необходимости
Выбираемый по умолчанию уровень олицетворения зависит от версии WMI на целевом компьютере. В версиях WMI ниже 1.5 по умолчанию используется уровень Идентификация (Identify), в версии WMI 1.5 и выше — уровень Олицетворение (Impersonate). При необходимости можно изменить уровень олицетворения по умолчанию — для этого необходимо записать наименование нужного уровня (например, Impersonate или Delegate) В следующий ключ реестра:
HKEY_LOCAL_MACHINE\Software\Microsoft\Wbem\Scripting\Default Impersonation Level
Протокол DCOM также предоставляет возможность запросить для соединения WMI определенный уровень аутентификации (проверки подлинности) и конфиденциальности (таблица 6.10).
Таблица 6.10 -Уровни проверки подлинности DCOM
Уровень
Описание
Отсутствует (None)
Проверка подлинности отсутствует
По умолчанию (Default)
Для выбора уровня проверки подлинности используются стандартные настройки безопасности. Рекомендуется использовать именно этот уровень, т. к. здесь к клиенту будет применен уровень проверки подлинности, который задается сервером
Подключений (Connect)
Клиент проходит проверку подлинности только во время подключения к серверу. После того как соединение установлено, никаких дополнительных проверок не производится
Продолжение таблицы 6.10
Вызовов (Call)
Клиент проходит проверку подлинности в начале каждого вызова во время приема запросов сервером. При этом заголовки пакетов подписываются, однако сами данные (содержимое пакетов), передаваемые между клиентом и сервером, не подписываются и не шифруются
Пакетов (Pkt)
Проверке подлинности подвергаются все пакеты данных, которые поступают серверу от клиентов. Так же, как и при проверке подлинности на уровне вызовов, заголовки пакетов подписываются, но не шифруются. Сами пакеты не подписываются и не шифруются
Целостности пакетов (Pktlntegrity)
Все пакеты данных проходят проверку подлинности и целостности, т. е. проверяется, что содержимое пакета не было изменено во время передачи от клиента серверу. При этом данные подписываются, но не шифруются
Секретности пакетов (PktPrivacy)
Все пакеты данных проходят проверку подлинности и целостности, при этом данные подписываются и шифруются, что обеспечивает конфиденциальность передаваемых данных
Отметим, что DCOM может и не установить запрашиваемый уровень проверки подлинности. Например, при локальной работе с WMIвсегда используется уровень секретности пакетов (PktPrivacy).
Нужные уровни олицетворения и проверки подлинности можно указать в явном виде в момент соединения с WMI.
7 Обзор разработанной программы
7.1 Возможности программы
Разработанное приложение позволяет осуществить определение следующих ресурсов рабочих станций ЛВС (рисунок 7.1):
- сетевое имя проверяемой рабочей станции;
- название операционной системы, дата и время ее установки;
- USB контроллеры;
- тип и тактовая частота процессора;
- название и объем банков памяти;
- название и размеры установленных жестких дисков;
- модель привода CD-ROM;
- название видеоадаптера, объем видеопамяти, текущее разрешение, частоту вертикальной развертки;
- название и производителя звуковой карты;
- название сетевого адаптера, MAC- и IP-адреса;
- установленные приложения.
Существует возможность:
- составления отчетов в html и mdb файлах;
- просмотра списка процессов, запущенных на определенной рабочей станции (рисунок 7.2);
- ведения журнала учета изменений реестра рабочей станции.
7.2 Установка и настройка
Программа не требует установки, достаточно просто скопировать необходимые файлы на жесткий диск компьютера. Для обзора всех рабочих станций сети программа должна быть установлена на сервере, и запускаться из учетной записи с правами администратора.
Рисунок 7.1 – Разработанное приложение
Рисунок 7.2 – Просмотра списка процессов, запущенных на рабочей станции
Для создания базы данных MS Access нужно предварительно зарегистрировать в системе пользовательский DSN (Data Source Name, имя источника данных), который будет указывать на существующий файл (например, C:\Invent.mdb). Необходимость подобной настройки связана с особенностью технологии ADO (Active Database Object). Для этого нужно выполнить следующие действия: Панель управления -> Администрирование -> Источники данных (ODBC) -> Пользовательский DSN -> Добавить (рисунок 7.3), выбрать из списка «Microsoft Access Driver(*.mdb)», а затем нажать кнопку «Настройка». В появившемся окне необходимо указать имя источника данных и путь к базе данных (рисунок 7.4).
Рисунок7.3 - Администратор источников данных
Рисунок7.4 - Системный DSN, указывающий на файл MS Access
7.3 Работа программы
Структура программы представлено на рисунке 7.5. Файл Exec.vbs запускает на исполнение поочередно сценарии compList.vbs, для формирования списка всех рабочих станций сети, и sysinfо.vbs, для сбора сведений о каждой рабочей станции. В соответствие с каждым сценарием выполнение основной программы задерживается на определенный промежуток времени для последующего корректного отображения в форме myForm.htm. Далее из нее становятся доступны просмотр процессов, запущенных на рабочих станциях, сохранение сведений в базе данных и ведение журнала учете изменений определенного раздела реестра.
Рисунок7.5 –Структурная схема программы
Информация хранится в базе данных, структура которой представлена на рисунке 7.6. Все записи относятся к определенной дате. Рабочие станции представлены иерархией «домен-компьютер». Каждый компьютер имеет свой IP- и MAC-адрес. Аппаратное обеспечение рабочей станции представлено отдельной таблицей и может служить для анализа состояния физических блоков компьютера. В следующей таблице описана операционная система, установленная на рабочей станции. Каждой ОС соответствует программное обеспечение.
Рисунок7.6 – Структура базы данных
9 Техника безопасности при работе с ПЭВМ
9.1 Анализ системы
Программа разработана для мониторинга ресурсов локальной вычислительной сети. Непосредственным пользователем является системный администратор сети (оператор ПЭВМ). В данном разделе дипломной работы рассматриваются основные моменты взаимодействия администратора с системой; факторы, воздействующие на администратора в процессе работы; освещаются основные вопросы техники безопасности и экологии труда; приводится анализ характеристик помещения и расчет искусственного освещения; рассмотрены также такие факторы, влияющие на безопасность человека, как электробезопасность и противопожарная защита, микроклимат, статическое электричество, умственное перенапряжение.
9.2 Планировка рабочего места системного администратора
Администратор обязан выполнять следующие виды работ:
- считывать (снимать) информацию для последующего занесения в базу данных;
- анализировать эту информацию для соответствия адекватности реальным условиям;
- следить за правильностью размещения информации в базе данных;
- подготавливать отчёты по результатам работы системы.
Все вышеперечисленные работы имеют факторы, оказывающие влияние на здоровье человека:
- статическое электричество;
- повышенная температура;
- ионизация воздуха;
- опасное напряжение в электрической сети;
- недостаточная освещенность и размеры помещения;
- повышенный уровень шума на рабочем месте;
- наличие пожарной ситуации.
9.3 Микроклимат на рабочем месте
Оптимальные нормы микроклимата приведены в таблицах 1 и 2
Таблица 1 - Оптимальные нормы микроклимата для помещений с ЭВМ
Период года
Категория работ
Температура воздуха, °С
Относит. влажность воздуха, %
Скорость движения воздуха, м/с
Холодный
Легкая – 1а
22-24
40-60
0,1
Теплый
Легкая – 1а
23-25
40-60
0,1
Нормальные значения температуры, влажности воздуха, и скорости движения воздуха в помещении поддерживаются благодаря установленному кондиционеру.
Таблица 2 - Уровни ионизации воздуха помещений при работе с ПЭВМ
Уровни ионизации
Число ионов на 1 куб. см воздуха
n +
n -
Минимально необходимое
400
600
Оптимальное
1500-3000
30000-50000
Максимально допустимое
50000
50000
Обеспечение требований технической эстетики: окраска стен светло-коричневая, потолка — белая, пол — светло-коричневый линолеум. Цветовое оформление выполнено с учетом рекомендаций СН-181-70: цвета стен, потолка, пола гармонируют между собой. С точки зрения цветотерапии, желтый и светло-коричневый цвета улучшают настроение, положительно влияют на нервную систему и внутренние органы.
9.4 Освещенность помещения
Помещение имеет длину 9м и ширину – 8м. Высота подвески светильников hСВ=2,9м, расстояние между светильниками LСВ=1м. В рассматриваемом помещении качество освещения соответствует нормативным данным, приведенным в таблице 3.
Таблица 3 - Оптимальные параметры освещенности помещений с ЭВМ
Характер
зрительной
работы
Разряд
Контраст
объекта с
фоном
Характеристика
фона
Искусственное освещение, лк
При комбинированном освещении
При общем освещении
Средней точности 0,5-1,0
IV
Большой
Светлый
400
200
Естественное освещение должно осуществляться через светопроемы, ориентированные преимущественно на север и северо-восток и обеспечивать коэффициент естественной освещенности (к.е.о.) не ниже 1,2% в зонах с устойчивым снежным покровом и не ниже 1,5% на остальной территории.
Искусственное освещение в помещениях эксплуатации ВДТ и ПЭВМ должно осуществляться системой общего равномерного освещения. Светильники ОД с газоразрядными лампами. Тип проводки – закрытая, в строительных конструкциях под штукатуркой, провода - АППВ. Светильники расположены параллельными рядами. Общее число рядов светильников для заданного помещения по длине – не менее 6, по ширине – не менее 3.
9.5 Пожарная безопасность
Пожарная безопасность обеспечивается системой предотвращения пожара и системой пожарной защиты. В помещении имеется «План эвакуации людей при пожаре», регламентирующий действия персонала в случае возникновения очага возгорания и указывающий места расположения пожарной техники.
Источниками зажигания могут быть электронные схемы от ЭВМ, приборы, применяемые для технического обслуживания, устройства электропитания, кондиционирования воздуха, где в результате различных нарушений образуются перегретые элементы, электрические искры и дуги, способные вызвать возгорание горючих материалов.
Учитывая высокую стоимость электронного оборудования помещения, а также категорию его пожарной опасности, здание, в котором находится исследуемое помещение, имеет 2 степень огнестойкости.
Для изготовления строительных конструкций использовались кирпич, железобетон, стекло, металл, т.е. негорючие материалы. Применение дерева было ограниченно. Помещение оборудовано установками стационарного автоматического пожаротушения, действие которых основано на быстром заполнении помещения огнетушащим газовым веществом с резким сжижением содержания в воздухе кислорода. Так в наличии углекислотные огнетушители – ОУ-5
9.6 Охрана труда во время работы
Помещение, где размещаются ПЭВМ, оборудовано защитным заземлением (занулением). Токоведущие части ВДТ и ПК закрыты корпусом и недоступны. Снимать корпус при включенном оборудовании строго запрещено. Кроме того, ПЭВМ снабжены блокировкой, недопускающей снятие корпуса при включенном оборудовании. Пользователи ВДТ и ПК имеют первую квалификационную группу по электробезопасности.
Уровень шума на основных рабочих местах (диспетчерские, операторские, расчётные кабины и посты управления, залы вычислительной техники и др.) не превышает 50 дБ. На рабочих местах в помещениях для размещения шумных агрегатов вычислительных машин (принтеров и т.п.) уровень шума не превышает 75 дБ.
Экран видеомонитора расположен на расстоянии 600-700 мм от глаз. Конструкция рабочего стола обеспечивает оптимальное размещение на рабочей поверхности используемого оборудования с учетом его количества и конструктивных особенностей, характера выполняемой работы. Поверхность рабочего стола имеет коэффициент отражения 0.5-0.7. Клавиатура расположена на поверхности стола на расстоянии 100-300 мм от края, обращенного к пользователю (оператору).
Оборудование отключается от электрической сети:
- при обнаружении неисправности;
- во время очистки и уборки оборудования.
Перерывы осуществляются после каждых двух часов работы с обязательным проветриванием помещения. Во время перерывов выполняется специальный комплекс упражнений для снятия глазного, умственного и мышечного утомления.
По окончании работы оборудование отключается в строгом соответствии с указаниями, приведенными в технической характеристике к нему; рабочее место приводится в порядок; непосредственный руководитель ставится в известность обо всех замеченных недостатках в работе.
Сотрудникам запрещается:
- соприкасаться с цепями заземления ПЭВМ и ВДТ;
- трогать разъемы кабелей и прикасаться к питающим проводам;
- работать при плохом освещении и плохом самочувствии;
- работать с влажными руками.
Перечень основных возможных аварийных ситуаций и причины их вызывающие:
- замыкание цепей ПЭВМ и ВДТ;
- взрыв электронно-лучевой трубки;
- возгорание (пожар) ПЭВМ и ВДТ, помещения;
- поражение электротоком; потеря сознания.
Непосредственный или вышестоящий руководитель извещается о любой ситуации, угрожающей жизни и здоровью сотрудников, о каждом несчастном случае или об ухудшении состояния своего здоровья, в том числе о проявлении признаков острого профессионального заболевания.
Заключение
В результате дипломного проектирования разработана программа мониторинга ресурсов локальной вычислительной сети с пользовательским интерфейсом и системой отчетов. Приложение реализовано на языке VBScript. В качестве СУБД используется MS Access. Выполнено технико-экономическое обоснование проекта, построен график безубыточности. Внедрение программы проанализировано с точки зрения безопасности жизнедеятельности персонала.
Реферат
Пояснительная записка содержит 124 страницы, 16 рисунков, 10 таблиц, 9 приложений. В приложении приведены тексты основных процедур разработанного программного обеспечения.
Графический материал выполнен на 7 листах формата А1.
Ключевые слова: локальная вычислительная сеть, системный администратор, система управления сетью, мониторинг, реестр Windows,WMI (WindowsManagementInterface/Instrumentation), CIM (CommonInformationModelObjectManager, CIMOM), класс CIM.
Целью дипломного проекта является разработка монитора для определения ресурсов ПК локальной вычислительной сети (ЛВС) и целостности операционной системы. Программа реализована на языке VBScript, графический пользовательский интерфейс выполнен в виде HTML форм,ы в качестве СУБД используется MS Access.
Приведено технико-экономическое обоснование проекта, а также рассмотрены вопросы обеспечения безопасности жизнедеятельности человека.
ДОКЛАД
На сегодняшний день в мире более 80 % компьютеров объединены в различные информационно-вычислительные сети. Тенденция объединения в сети связана с рядом преимуществ, такими как разделение вычислений, разделение ресурсов и др. Обязанности по поддержанию работоспособности ЛВС возложены на системного администратора.
Основными его функциями являются:
- планирование системы:
- установка и конфигурация аппаратных устройств;
- установка программного обеспечения;
- создание и управление учетными записями пользователей;
- поиск неисправностей;
- контроль защиты ЛВС;
- мониторинг системы.
Целью дипломной работы является разработка приложения-монитора для определения ресурсов ПК локальной вычислительной сети и целостности операционной системы.
Актуальность подобного приложения объясняется необходимостью ежедневного контроля ресурсов ЛВС, как одной из функций системного администратора, необходимостью минимизации несанкционированных установок программного обеспечения, которые нередко являются причинами сбоев в работе сети. Без мониторинга также затруднительно, а в некоторых случаях просто невозможно, выполнение других задач администрирования, таких как установка и конфигурация аппаратных устройств, поиск неисправностей и другие.
Постоянный контроль над работой локальной сети необходим для поддержания ее в работоспособном состоянии. Существует множество обязательных для исполнения ежедневных операций мониторинга. Например, проверка правильности функционирования электронной почты и телеконференций, контроль наличия системных ресурсов.
Итак, для решения поставленной задачи необходимо:
- рассмотреть уже существующие утилиты сетевого мониторинга;
- разработать структуру базы данных для хранения информации
- произвести выбор языка реализации прогр.модулей и польз.интерфейса
На рисунке представлены утилиты сетевого мониторинга, классифицированные по принципу наличия прог.модуля анализа сетевого трафика. В работе подробно рассмотрены только четыре из них.
Задачу по созданию монитора для оценки использования ресурсов ПК локальной вычислительной сети предлагается решить на основе сервера сценариев Windows Script Host (WSH) и технологии WMI, так как данные сервисы входят в комплект поставки вышеназванных операционных систем, то есть не требует дополнительной установки, а также позволяют производить все необходимые действия по слежению за работой ЛВС.
Сервер сценариев Windows Script Host несколько лет назад был предложен компанией Microsoft в качестве инструмента разработки и выполнения специальных сценариев операционной системы Windows. Различные его версии входят в стандартную поставку ОС Windows 98/2000/ХР. Сценарии WSH могут создаваться с помощью специализированных языков, например, Microsoft Visual Basic Script Edition (VBScript) или Microsoft JScript и использовать любые объекты, зарегистрированные в системе, что и определяет чрезвычайно мощные возможности таких сценариев. Собственная объектная модель WSH позволяет из сценариев работать с файловой системой, системным реестром, специальными папками, ярлыками Windows, ресурсами локальной сети, а также запускать процессы и контролировать ход их выполнения.
Технология WMI — это глобальная концепция настройки, управления и слежения за работой различных частей корпоративной компьютерной сети. В частности, используя WMI, можно с помощью специальных утилит или сценариев Windows Script Host (WSH) решать следующие задачи:
- управление различными версиями операционной системы Windows. (С помощью сценариев WMI можно обращаться к системным счетчикам производительности, анализировать журналы событий (Event Logs), работать с файловой системой, установленными принтерами, управлять запущенными процессами и сервисами, просматривать и изменять настройки реестра, создавать и удалять совместно используемые ресурсы и т. д.) При этом все операции можно выполнять одинаковым образом как на локальной, так и на удаленной машине;
- управление ресурсами и службами сети.Сценарии WMI позволяют настраивать сетевые службы (DNS) и управлять сетевыми устройствами;
- мониторинг состояния системы в реальном времени. (Можно создавать сценарии-обработчики событий WMI, которые позволяют отслеживать и нужным образом обрабатывать события, связанные с теми или иными изменениями в информационной системе (например, появление определенной записи в журнале событий на локальном или удаленном компьютере, заполнение жесткого диска сервера до определенного предела, изменение определенного ключа в системном реестре и т. п.)).
Архитектура WMI состоит из трех частей, показанных на рисунке.
Управляемые объекты/ресурсы (managed resources) — любые логические или физические компоненты информационной системы, доступ к которым может быть получен с помощью WMI. В качестве управляемых ресурсов могут выступать, например, файлы на жестком диске, запущенный экземпляр приложения, системное событие, предоставленный в общее пользование ресурс, сетевой пакет или установленный в компьютере процессор.
Ядро WMI(WMI infrastructure). Это связующее звено архитектуры WMI, отвечающее за связь управляющих программ с управляемыми объектами. Ядро WMI, в свою очередь, можно разделить на три части: менеджер объектов CIM (Common Information Model Object Manager), репозиторий (хранилище классов и объектов) CIM и провайдеры WMI. Кроме этого, для доступа к WMI с помощью сценариев необходима специальная библиотека поддержки сценариев WMI (WMI scripting library, которая располагается в файле wbemdisp.dll в каталоге System32\ Wbem).
Провайдеры WMI обеспечивают связь между менеджером объектов и управляемыми ресурсами: провайдеры предоставляют для CIM данные об управляемом объекте, обрабатывают запросы от управляющих программ и генерируют сообщения о наступлении определенных событий. При этом провайдер общается с управляемым объектом с помощью специфического API этого объекта, а с CIMOM — посредством стандартного интерфейса прикладного программирования WMI (WMI API). Таким образом, провайдеры скрывают детали внутренней реализации управляемых объектов, позволяя CIM обращаться к этим объектам единообразно, используя один и тот же WMI API.
Управляющие программы (management applications), которые являются потребителями сервисов WMI. В качестве потребителей могут выступать полновесные Win32-пpилoжeния, Web-приложения, сценарии WSH или другие инструменты администрирования, с помощью которых происходит доступ к управляемым объектам посредством WMI.
Структура базы данных приложения представлена на рисунке. Все записи относятся к определенной дате. Рабочие станции представлены иерархией «домен-компьютер». Каждый компьютер имеет свой IP- и MAC-адрес. Аппаратное обеспечение рабочей станции представлено отдельной таблицей и может служить для анализа состояния физических блоков компьютера. В следующей таблице описаны операционная система, установленная на рабочей станции, и учетные записи пользователей. Каждой учетной записи поставлены в соответствие фамилия сотрудника, которому она принадлежит, и программное обеспечение с датой его установки, выделенное в отдельную таблицу.
Для написание программы выбран язык VBScript, так как он обеспечивает достаточно простой доступ к объектам WMI и позволяет реализовать все требуемые функции.
Графический пользовательский интерфейс организован с помощью HTML форм, в силу простоты реализации и, что более важно, простоты использования.
Журнал учета изменений реестра выполнен в виде текстового файла с расширением «log», а база данных ресурсов ЛВС – в виде файла MS Access с расширением «mdb».
Структура программы представленао на рисунке. Файл Exec.vbs запускает на исполнение поочередно сценарии compList.vbs, для формирования списка всех рабочих станций сети, и sysinfо.vbs, для сбора сведений о каждой рабочей станции. В соответствие с каждым сценарием выполнение основной программы задерживается на определенный промежуток времени для последующего корректного отображения в форме myForm.htm. Далее из нее становятся доступны просмотр процессов, запущенных на рабочих станциях, сохранение сведений в базе данных и ведение журнала учете изменений определенного раздела реестра.
На следующем рисунке представлен алгоритм прог.модуля sisinfo.vbs. Программа в цикле перебирает объекты классов WMI, соответствующие определенным аппаратным ресурсам, записывая необходимые параметры в переменную temp, которая затем выводится в файл.
Пользовательский интерфейс приложения представлен на следующем плакате.
В работе рассмотрены вопросы безопасности жизнедеятельности персонала, проведено технико-экономическое обоснование проекта, построен график безубыточности, согласно которому внедрение приложение окупается за 2-2,5 месяца.
Разработанное приложение позволяет осуществить определение следующих ресурсов рабочих станций ЛВС:
- сетевое имя проверяемой рабочей станции;
- название операционной системы, дата и время ее установки;
- USB контроллеры;
- тип и тактовая частота процессора;
- название и объем банков памяти;
- название и размеры установленных жестких дисков;
- модель привода CD-ROM;
- название видеоадаптера, объем видеопамяти, текущее разрешение, частоту вертикальной развертки;
- название и производителя звуковой карты;
- название сетевого адаптера, MAC- и IP-адреса;
- установленные приложения.
Существует возможность:
- составления отчетов в html и mdb файлах;
- просмотра списка процессов, запущенных на определенной рабочей станции (рисунок);
- ведения журнала учета изменений реестра рабочей станции.
Программа не требует установки, достаточно просто скопировать необходимые файлы на жесткий диск компьютера. Для обзора всех рабочих станций сети программа должна быть установлена на сервере, и запускаться из учетной записи с правами администратора.
Список использованных источников
1 Чен В., Берри В. Реестр Windows NT для профессионалов. - СПб: "Издательство Питер", 1999. – 428 с.
2 Неббит П. Справочник по базовым функциям API Windows NT/2000: Пер. с англ. - Издательский дом “Вильямс”, 2002. –528 с.
3 MSDN 2004 – электронная справочная база данных фирмы Microsoft.
4 Попов А.В., Шикин Е.А. Администрирование Windows c помощью WMI и WMIC. – СПб.: БХВ-Петербург, 2004. –752 с.
5 Журнал «Системный Администратор» 2003, 2004.
6 Официальный сайт компании SiSoftware Sandra [Электронный ресурс] – Режим доступа: http://www.sisoftware.com. – Загл. с экрана.
7 Официальный сайт компании TamoSoft, Inc. [Электронный ресурс] - Режим доступа: http://www.tamos.ru/products/nettools.htm – Загл. с экрана.
8 Официальный сайт компании LANScan Software, Inc. [Электронный ресурс] - Режим доступа: http://www.lanscan.com/products.htm. – Загл. с экрана.
9 Официальный сайт компании 3Com [Электронный ресурс] - Режим доступа: http://www.3com.com/products/htm. – Загл. с экрана.
10 Официальный сайт компании МicroSoft [Электронный ресурс] - Режим доступа: http://download.microsoft.com/download/platformsdk/wmicore/1.5/ W9XNT4/ENUS/wmicore.exe. – Загл. с экрана.
1 Основание для разработки
Решение ученого совета факультета автоматики и информационных технологий, протокол № 5 от 22 февраля 2005 года.
2 Сроки выполнения
Начало 20 февраля 2005 года.
Окончание 1 июня 2005 года.
3 Цель разработки
Создание монитора ресурсов ПК локальной вычислительной сети (ЛВС) и целостности операционной системы.
4 Исходные данные
4.1 Монитор должен функционировать в среде MS Windows 2000 или MS Windows XP;
4.2 Монитор должен обеспечить сбор, хранение сведений о конфигурации программных и аппаратных средств компьютеров, обработку данных и формирование отчетов для администратора сети;
4.3 Под ресурсами понимается время ЦП, оперативная и дисковая память, список установленных и выполняемых приложений;
4.4 Контроль целостности операционной системы подразумевает контроль и протоколирование изменений в реестре, выполненных приложениями;
4.5 Монитор должен оказывать минимальную нагрузку на каналы связи.
5 Основные источники
5.1 Чен В., Берри В. Реестр Windows NT для профессионалов. - СПб: "Издательство Питер", 1999.
5.2 Неббит П. Справочник по базовым функциям API Windows NT/2000: Пер. с англ. - Издательский дом “Вильямс”, 2002. –528 с.
5.3 MSDN 2004 – электронная справочная база данных фирмы Microsoft.
5.4 Попов А.В., Шикин Е.А. Администрирование Windows c помощью WMI и WMIC. – СПб.: БХВ-Петербург, 2004. –752 с.
6 Основные этапы работы и сроки их выполнения
6.1 Обзор концепций, целей, методов и средств получения данных о ресурсах и характеристиках компьютеров ЛВС и вычислительной нагрузке, создаваемой потоком задач пользователей.
6.1.1 Типовая структура ЛВС организации и системного программного обеспечения. Пояснительная записка – изложение всех пунктов этапа. Графический материал – структура ЛВС предприятия и структура системного программного обеспечения.
Графический материал: архитектура WMI.
Пояснительная записка: изложение всех пунктов этапа.
Объем этапа – 20%.
Срок представления этапа – 5.04.2005 г.
6.2 Разработка структуры монитора и структуры базы данных.
6.2.1 Разработка структуры монитора.
6.2.2 Разработка структуры таблиц базы данных и концептуальной модели БД.
Пояснительная записка: изложение всех пунктов этапа.
Графический материал: алгоритм работы монитора и структура базы данных.
Объем этапа – 20%.
Срок представления этапа – 30.04.2005 г.
6.3 Разработка пользовательского интерфейса и реализация монитора.
6.3.1 Выбор инструментальных средств реализации монитора.
6.3.2 Описание процедуры использования монитора.
Пояснительная записка: изложение всех пунктов этапа.
Графический материал: графический интерфейс пользователя.
Объем этапа – 30%.
Срок представления этапа – 10.05.2005 г.
6.4 Экономические вопросы – оценка затрат и расчет экономического эффекта.
Пояснительная записка: изложение всех пунктов этапа.
Графический материал: график безубыточности.
Объем этапа – 10%.
Срок представления этапа – 20.05.2005 г.
6.5 Вопросы охраны труда.
Пояснительная записка: изложение всех пунктов этапа.
Объем этапа – 10%.
Срок представления этапа – 30.05.2005 г.
7 Консультанты
По зкономическим вопросам – М.П.Гаранина;
По охране труда - Моссоулина Л.А.
8 Расчет технико-экономических показателей проекта
Внедрение программы предполагает:
- повышение производительности труда за счет возможности контроля над деятельностью сотрудников;
- уменьшение количества сбоев в работе ЛВС за счет снижения несанкционированных установок программного обеспечения;
- уменьшение трудоемкости обнаружения неисправностей и, как следствие, уменьшение числа обслуживающего персонала;
- уменьшение трудоемкости модернизации сети, то есть облегчение деятельности системного администратора.
Внедрение программы не требует дополнительных людских ресурсов. Оно предполагает достаточно быструю установку, настройку рабочего оборудования и ознакомление системного администратора с работой приложения.
8.1 Расчет экономической эффективности
Рассмотрим экономическую эффективность внедрение разработанной программы на примере фирмы, имеющей локальную вычислительную сеть, состоящую из 30 компьютеров, и обслуживающий персонал в количестве одного системного администратора и двух инженеров, осуществляющих ремонт, обслуживание и модернизацию сетевого и периферийного оборудования.
Экономическая эффективность - это результативность экономической деятельности, экономических программ и мероприятий, характеризуемая отношением полученного экономического эффекта, результата к затратам факторов, ресурсов, обусловившим получение этого результата, достижение наибольшего объема производства с применением ресурсов определенной стоимости.
Эффективность - это относительный эффект, результативность процесса, операции, проекта, определяемые как отношение эффекта, результата к затратам, расходам, обусловившим, обеспечивающим его получение.
Экономический эффект - это полезный результат экономической деятельности, измеряемый обычно разностью между денежным доходом от деятельности и денежными расходами на ее осуществление.
Смета затрат на внедрение включает в себя капитальные затраты на разработку программы, состоящих из:
- 20 000 руб. - оплаты труда программиста за 2 месяца работы:
- 1 месяц - непосредственная разработка и написание программы;
- 1 месяц – тестирование, отладка и составление сопроводительной документации;
- прочие затраты - 1000 руб. (электроэнергия и расходные материалы).
Внедрение программы (установка и настройка) может быть осуществлено штатным системным администратором за 1 месяц.
Итак Скап. = 21 000руб.
За счет внедрения программы произошло:
- сокращение затрат на обслуживание (за счет сокращения числа инженеров до одного);
- сокращение числа сбоев в работе ЛВС на два в год – 18 000 руб. (согласно данным статистики фирмы один сбой обходиться в среднем в 9 000 руб.)
Следовательно, в год общая сумма эффективности внедрения системы составляет:
Сэффект.= Σэффект.вн. (8.1)
Сэффект. = 7000 * 12 + 18 000= 102 000 руб. (8.2)
8.2 Расчет сроков окупаемости программы
Окупаемость затрат - это показатель экономической эффективности капитальных вложений. Используется как показатель сравнительной эффективности при выборе оптимального варианта капитальных вложений. Определяется как частное от деления капитальных вложений на среднегодовой прирост дохода, вызванный этими вложениями:
Т = Скап./Сэффект. (8.3)
Т = 20 000/102 000 = 0.2 г. (8.4)
Приведенный экономический анализ показывает, что за один год работы программа позволяет фирме дополнительно сэкономить 82 000 руб., а затраченные на разработку программы средства будут покрыты в среднем через 2-2,5 месяца (рисунок 8.1).
Затраты,
эффект,
тыс. руб.
102
21
0
0,2
1
Время, год
Рисунок 8.1 – График безубыточности