Система учета и контроля работоспособности оборудования на примере городской локальной сети
Характеристика особенностей архитектуры реляционных баз данных. Обзор существующих программных средств и протоколов проверки соединений в сетях. Анализ механизма графического отображения сетевого взаимодействия. Основные возможности пакета MySQL.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 20.01.2016 |
Размер файла | 157,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
Размещено на http://www.allbest.ru
Введение
Целью работы является разработка системы контроля и учета работоспособности коммутаторов городской локальной сети. Данная система выполняет задачи предоставления централизованной информации и хранении об установленном оборудовании, и контроля его работоспособности, особенно в критичных узлах локальной сети.
Любая корпоративная компьютерная сеть, даже небольшая, требует постоянного контроля и учета.
Как бы хорошо она ни была настроена, насколько бы надежное оборудование не было установлено - нельзя полагаться лишь на внимание системного администратора; необходимы автоматические и непрерывно действующие средства контроля состояния сети и своевременного оповещения о возможных проблемах.
Даже случайные сбои аппаратного обеспечения могут привести к весьма неприятным последствиям. Гораздо хуже, когда критично важные узлы полностью прекращают функционирование, и это остается незамеченным в течение длительного времени.
Практически все, как разовые или преднамеренные повреждения, в конечном итоге, ведут к серьезным материальным убыткам: нарушению схем взаимодействия между сотрудниками, потере доверия клиентов, разглашению секретных сведений и т.п. Поскольку полностью исключить возможность отказа или некорректной работы техники невозможно, решение заключается в том, чтобы обнаруживать проблемы на наиболее ранних стадиях, и получать о них наиболее подробную информацию. Для этого, как правило, применяется различное программное обеспечение (ПО) мониторинга и контроля сети, которое способно как своевременно оповещать технических специалистов об обнаруженной проблеме, так и накапливать статистические данные о стабильности и других параметрах работы.
Как и всякие материальные средства, особенно сетевое оборудование, нуждаются в учете. В частности, точное знание того, что находится в распоряжении организации, позволяет обосновано планировать модернизацию, избегать нерациональных затрат, контролировать работоспособность и своевременное обновление.
Параллельно с ростом организации, развитие парка компьютеров влечет за собой множество трудностей для специалистов различного профиля - от бухгалтеров, соприкасающихся с необходимостью учета материальных средств, до технических специалистов, задачей которых является поддержание работоспособности корпоративной компьютерной сети. Не меньше других в достоверной информации о состоянии сети заинтересовано руководство разных уровней. Зная, что находится в распоряжении сотрудников и на сколько имеющиеся средства адекватны решаемым задачам, можно обоснованно планировать инвестиции в сетевые технологии. Среди задач учета можно назвать отслеживание номенклатуры запасных частей, гарантийных сроков и расходных материалов, необходимых для обеспечения бесперебойной работы организации.
Другими словами, автоматизированный учет, позволяющий в любой момент времени получить исчерпывающую информацию о состоянии вычислительной инфраструктуры бизнеса, занимает одно из ключевых мест в эффективном использовании ресурсов организации.
Для решения поставленных задач необходимо:
Определить набор функций, которыми должна обладать система;
Разработать информационную модель системы;
Создать саму систему;
Далее более подробно будут рассмотрены все этапы работы в указанном порядке.
1. Обзор существующих систем мониторинга оборудования и состояния сети
На сегодняшний день создано различное количество продуктов в разных сферах обслуживания, но из всего списка рассмотри более подходящие к нашей системе продукты, произведем их сравнительный анализ и выявим положительные и отрицательные факторы.
1.1 Система мониторинга «ZABBIX»
ZABBIX - открытое программное обеспечение написанное Алексеем Владышевым. Zabbix создан для мониторинга и отслеживания статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования.
Для хранения данных используется MySQL, PostgreSQL, SQLite или Oracle. Веб-интерфейс написан на PHP. ZABBIX поддерживает несколько видов мониторинга. Simple checks может проверять доступность и реакцию стандартных сервисов, таких как SMTP или HTTP без установки какого-либо программного обеспечения на наблюдаемом хосте. ZABBIX agent может быть установлен на UNIX-подобных или Windows хостах для получения данных о нагрузке процессора, использования сети, дисковом пространстве и тд. External check - выполнение внешних программ. ZABBIX также поддерживает мониторинг через SNMP.
Обзор возможностей.
Распределенный мониторинг вплоть до 1000 узлов. Конфигурация младших узлов полностью контролируется старшими узлами, находящихся на более высоком уровне иерархии.
Сценарии на основе мониторинга,
Автоматическое обнаружение,
Централизованный мониторинг лог-файлов,
Веб-интерфейс для администрирования и настройки,
Отчетность и тенденции,
SLA мониторинг,
Поддержка высокопроизводительных агентов(zabbix-agent) практически для всех платформ,
Комплексная реакция на события,
Поддержка SNMPv1,2,3,
Расширение за счет выполнения внешних программ,
Гибкая система шаблонов и групп,
Возможность создавать карты сетей.
Автоматическое обнаружение:
Автоматическое обнаружение по диапазону IP-адресов, доступным сервисам и SNMP проверка,
Автоматический мониторинг обнаруженных устройств,
Автоматическое удаление отсутствующих хостов,
Распределение по группам и шаблонам в зависимости от возвращаемого результата.
1.2 Система мониторинга «TclMon»
TclMon (http://tclmon.vsi.ru/) - это система мониторинга оборудования, написанная на платформонезависимом языке Tcl и предназначенная для мониторинга сетей небольшого и среднего масштаба (до нескольких тысяч объектов). TclMon представляет из себя систему, состоящую из сервера, концентрирующего и обрабатывающего данные, поступающие от сетевых устройств, и клиента, обеспечивающего визуализацию этих данных, и работающего с сервером по простому текстовому протоколу.
TclMon автоматически составляет и поддерживает в актуальном состоянии списки параметров объектов, подлежащих сбору и анализу. Это кардинально упрощает процедуру настройки системы мониторинга - в большинстве случаев при добавлении объекта, подлежащего мониторингу, достаточно просто добавить в файл конфигурации базовую информацию об этом объекте (IP-адрес, настройки таймеров поллинга и список методов сбора, анализа и сохранения информации), а TclMon автоматически обнаружит его составные части, составит список их параметров, и будет самостоятельно поддерживать этот список в актуальном состоянии при изменениях аппаратной и программной конфигурации объекта, а также топологии сети, составной частью которой этот объект является.
TclMon самостоятельно оценивает состояние объектов и составляющих их частей, и передает свою оценку клиентской программе в виде оповещений о проблемах (alarm'ов). Это позволяет исключить из клиентской программы всю логику оценки ситуации, сделать ее простой, универсальной и не требующей внесения изменений при добавлении новых классов объектов и методов сбора и анализа информации.
Взаимодействие TclMon с клиентским приложением происходит по простому текстовому протоколу, работающему поверх TCP, что в случае необходимости легко позволяет использовать TclMon в качестве источника первичных данных о сетевых устройствах.
Благодаря ярко выраженной модульной структуре, единой схеме внутреннего хранения объектных данных и парадигме "серверов" TclMon очень легко расширяется.
Благодаря тредовой модели TclMon обеспечивает достаточно хорошую масштабируемость - до нескольких тысяч объектов верхнего уровня, и хорошее распределение нагрузки на многопроцессорных системах.
Текущие возможности:
Поддержка оборудования Cisco, 3Com, Allied Telesyn, D-Link, APC, Ascend (сервера доступа MAX6000), Zyxel (DSLAMы AES-100 / IES-1000 / IES-2000), Huawei (маршрутизаторы серии NetEngine, коммутаторы серии Quidway, DSLAM'ы MA5600 / MA5605), серверов с UCD-SNMP / Net-SNMP и др.
Возможность мониторинга состояния объектов, состояния и загрузки интерфейсов и связей между объектами, CPU, пулов памяти, BGP-сессий, температурных датчиков, вентиляторов, датчиков напряжения, источников питания, состояния плат и модулей устройств, пулов IP-адресов, сервисов (DNS, NTP, POP3, SMTP, HTTP, FTP, NNTP, RADIUS, MySQL, Oracle) и многого другого.
Самостоятельное выявление связей между объектами на основе анализа описаний интерфейсов.
Возможность гибкого включения необходимых методов сбора и сохранения информации для каждого отдельно взятого объекта.
Сохранение данных, полученных с объектов, в БД RRD.
Самостоятельный анализ состояния объектов и составляющих их частей, и генерация оповещений о проблемах (alarm'ов), которые могут либо отправляться по e-mail, либо передаваться клиентской программе (предусмотрена возможность гибкого управления подпиской на интересующие группы alarm'ов).
Взаимодействие с клиентом по специальному протоколу, обеспечивающему передачу данных от сервера по запросу клиента, мгновенную передачу клиенту оповещений о проблемах и выполнение на стороне сервера функций над значениями переменных объектов (например, построение графиков их изменения).
Сам TclMon распространяется в открытых исходных кодах под лицензией BSD. Однако, некоторые модули, необходимые для его запуска, а также клиентская программа Netstate распространяются только в виде уже готовых исполняемых файлов или динамических библиотек.
Системные требования.
Операционная система с поддержкой тредов (для лучшей масштабируемости крайне желательна поддержка тредов на уровне ядра), рекомендуется Sun Solaris.
Tcl 8.4.x или выше, собранный с поддержкой тредов (с ключом --enable-threads).
Библиотека Thread 2.6 или выше.
Библиотека Tcllib 1.9 или выше.
RRDTool 1.2.19 или выше, собранный с поддержкой Tcl.
Библиотека Tcludp 1.0.8 или выше (нужна только в случае необходимости мониторинга сервисов, работающих по протоколу UDP - DNS, NTP или RADIUS).
Библиотека Mysqltcl 3.03 или выше (нужна только в случае необходимости мониторинга СУБД MySQL).
Библиотека Oratcl 4.4 или выше (нужна только в случае необходимости мониторинга СУБД Oracle или сохранения в нее данных).
Кроме того, потребуются некоторые дополнительные библиотеки к Tcl, распространяющиеся только в виде готовых динамических библиотек:
Tclsnmp - Thread-Safe SNMP-библиотека для Tcl.
Tclsyslog - Thread-Safe Syslog-библиотека для Tcl.
1.3 Система мониторинга «SNMPc»
SNMPc (http://snmpc.ru/) -- ведущий SNMP менеджер, предназначенный для контроля состояния вашей сети, не зависимо от её размеров и сложности. Продукт предоставляет возможность контроля и управления всей сетевой инфраструктурой, состоящей из оборудования: любых производителей маршрутизаторов, коммутаторов, серверов и любых других устройств, поддерживающих протокол SNMP. Даже при отсутствии необходимой базы MIB система может управлять устройством, создавать отчеты по работе за период и многое другое...
Основные параметры программного комплекса:
Безопасность.
Безопасное управление устройствами с использованием SNMP v3 аутентификацию и шифрование.
Масштабируемость.
Возможность использования распределенных polling agent (агент опроса) и серверных частей для управления рабочей группой, большим сегментом локальной сети или распределенной глобальной сетью.
Связанность.
Возможность моментального оповещения об аварийных событиях на E-Mail или пейджер.
Доступность.
Доступ до сервера из удаленного места с помощью клиента SNMPc (SNMPc Windows client) или WEB консоли.
Комплексность.
Автоматический экспорт построенной карты сети, произошедших событий и сбора статистики в стандартные базы данных.
Всеобщность.
Возможность управления оборудованием любых производителей маршрутизаторов, коммутаторов, серверов и любых других устройств, поддерживающих протокол SNMP. Даже при отсутствии необходимой базы MIB система может управлять устройством.
Действенность.
Мониторинг LAN/WAN сетей и проверка доступностей сервисов с запланированными WEB отчетами понижают излишнюю расточительность ресурсов и позволяют узнать узкие места сети.
Адаптируемость.
Возможность настройки просмотра переменных, таблиц данных, и дополнительных меню. Разработка графического вида устройств с помощью приложения BitView и различных программных интерфейсов.
SNMPc Enterprise обеспечивает доступ к серверу через JAVA консоль иликонсоли приложения Windows. Каждый удаленный пользователь имеет свой уровень безопасности обеспечивающий разграничение прав управления с возможностью разграничения обзора сети. Возможность разграничивать область просмотра особенна полезна в больших корпоративных сетях, где за работу разных административных участков отвечают разные люди.
SNMPc Enterprise позволяет распределить механизм опроса и обнаружения при помощи использования так называемых агентов опроса. Эти агенты опрашивают определенные участки сети и передают на сервер только изменение о состоянии или аварии. Этот механизм очень эффективен при мониторинге участков сети с ограниченной пропускной способностью, или находящихся в отдельных административных сегментах (например в отдельном VLANе).
Для безопасности все консольные команды проходят через центральный сервер SNMPc и затем на соответствующий агент опроса. Это позволяет поддерживать управление сетей с перекрещивающимися IP адресами и средах NAT.
SNMPc Enterprise может быть внедрен как иерархическая система управления, обеспечивающая общий сбор информации от нескольких региональных серверов SNMPc. Поддерживается полнофункциональная архитектура обратного наследования, где каждый сервер SNMPc Enterprise может брать на себя функции как регионального сервера, так и сервера верхнего уровня. Это позволяет построить масштабируемую, устойчивую к отказам архитектуру управления сетью.
SNMPc автоматически обнаруживает и опрашивает SNMP/ICMP, WEB, FTP, SMTP и TELNET сервисы, вплоть до 16 опросов пользовательских TCP сервисов на элемент. Возможен опрос приложений, настроенных на совпадение "строк соответствия" по опросу сервис. Наряду с опросом реального времени, SNMPc Enterprise также обеспечивает отчеты доступности устройств, которые можно просматривать через WEB.
После установки и настройки тренд отчетов (отчетов за период), агенты опроса следят за всеми отчетными переменными за определенный период и высчитывают базовую линию для типовых значений. Если указана соответствующая настройка, SNMPc может генерировать ошибку, когда переменная превышает указанное значение.
SNMPc изменяет цвет устройства объектов карты и производит другие действия, основываясь на настройках фильтров событий. Фильтры событий могут быть настроены непосредственно при получении события от устройства, по щелчку на соответствующей записи в журнале событий.
Можно произвести следующие действия:
Email, Пейджер.
Проиграть WAV.
Запустить приложение.
Переслать SNMP трап.
Вывести аварийное окно.
SNMPc Enterprise может автоматически генерировать запланированные статистические отчеты по дням, неделям и месяцам.Форматы отчета могут быть в виде графиков, гистограмм, распределений и суммарной статистики. Отчеты могут быть экспортированы в различные системы включая принтер, файл или WEB сервер.
Настройка отчета крайне проста. После выбора группы элементов, выберите отчет, отчетный стиль, назначение и задание. SNMPc Enterprise автоматически соберет данные и сгенерирует отчет. Вы можете использовать включенное в поставку приложение TrendView или выводить отчеты через WEB браузер с любой рабочей станции.
SNMPc Enterprise может автоматически экспортировать всю сохраненную долгосрочную статистику в базу данных с использованием стандарта ODBC. Вы можете использовать распространенные средства такие как Seagate Crystal Reports или Microsoft Access для создания тренд отчетов в базе данных.
Базовая функциональность включает в себя вывод топологии карты, просмотр журнала событий, и вывод таблиц/графиков MIB в реальном времени. Долгосрочная статистика может быть просмотрена с помощью календаря. Также включен JAVA прокси Telnet для настроек маршрутизаторов Cisco и/или других устройств.
Табл. 1.1. Техническая информация
Протокол SNMP |
V1, V2C, V3 SHA/MD5 аутентификация с DES шифрованием |
|
Обнаружение устройств |
Автоматическое обнаружение и SNMP или ICMP (ping) опрос устройств |
|
Обнаружение сервисов |
Обнаружение поддерживаемых сервисов, на каждом устройстве, включая SNMP, ICMP, Telnet, FTP, HTTP, FTP и возможность установить до четырех TCP портов. |
|
Опрос сервисов |
Поддержка до 16 портов установленных пользователем на одну иконку. На каждый порт, можно установить получение/посылку ожидаемой/заданной строки. |
|
Распределение топологий |
Многоуровневая иерархия. Разбиение сети на области агентов опроса. Распределенные, кольцевые или топологии, с выделенной шиной. |
|
Аварийное оповещение |
Фильтрация, игнорирование дублей, пересылка, E-mail, пейджер, вывод аварийного окна, или запуск приложения по событию. |
|
Отчетность |
Графическое представление, гистограммы, распределение, и статистика. Вывод на печать и в WEB. |
|
Резервирование |
Поддержка активного/пассивного сервера с автоматическим переключением. |
|
Дополнительные интерфейсы |
ODBC и текстовый экспорт. Пересылка аварийных сообщений в виде SNMP trap. |
|
Настройка |
Включение приватных миб файлов, Настройка таблиц, переменных и меню. Запуск любых приложений с помощью двойного щелчка мышки по иконке устройства. |
1.4 Определение необходимой функциональности системы
Исследовав продукты предоставляемые на рынке услуг, можно выявить их недостатки с поставленной целью и сферой, в которой в дальнейшем будет эксплуатироваться данная система, а также выявить и отобрать необходимые компоненты будущей системы.
Рассмотренные продукты не отвечают требованиям как:
возможность работы с MySQL;
клиент Netstate программы TclMon- разработан только под Windows платформенные системы;
направленность продуктов на слежение за серверами, либо за дорогостоящим оборудованием;
не имеется возможности добавления функции работы с заявками и договорами пользователей;
наглядное отображение с появлением клиента увеличивает размер карты.
Разрабатываемая система должна позволить решать следующие основные задачи:
учитывать установленное оборудование, с возможностью узнавать информацию о его состоянии, заполненности и сроках гарантии;
возможность работы в разработанном клиенте как с оборудованием, так и с заявками и договорами пользователей;
мониторить состояние коммутаторов, роутеров, интерфейсов;
достоверно определять источник проблемы и извещать о них;
отображать все это на web интерфейсе.
2. Проектирование системы учета и контроля работоспособности коммутаторов
2.1 Разработка архитектуры проектируемой системы
В основе функционирования системы лежит обработка сведений хранящихся в базе данных и контроль работоспособности оборудования.
В связи с этим система выполняет следующие функции:
- учет оборудования;
- система мониторинга ЛВС;
- предоставление доступа к интерфейсу (наглядному отображению).
Для решения задачи учета оборудования минимальный набор функций: хранение информации об установленном оборудовании, добавление/редактирование существующей информации с наглядным представлением о его расположении.
Следующая рассматриваемая задача - это процесс контроля работоспособности сети. Для решения данной задачи, необходима следующая функция: отправка, и получение ответного сигнала от проверяемых узлов.
Прежде чем, приступать к реализации системы, необходимо определить общую логику работы, то есть: общий принцип взаимодействия элементов системы, какие роли отводятся пользователям, какие обязанности на них возлагаются и т.д.
База данных предназначена для хранения всех данных о пользователях с их правами доступа, оборудовании с его место расположением.
В блок контроля входит набор программных средств, для диагностики работоспособности сети.
Блок отображения представляет собой понятный интерфейс, для удобства работы с системой.
Блок выборки предназначен для непосредственной работы с базой данных и получения из нее ведений необходимых, конечным пользователям или другим блокам системы.
Блок редактирования осуществляет изменение, а также добавление новой информации об используемом оборудовании, пользователях.
2.2 Структура данных
Все данные системы хранятся в базе данных, структура которой представлена на рисунке 1.
Рисунок 1. Схема данных
Ниже перечислены отношения представленные на данной схеме и перечислены их атрибуты. (табл. 1.1).
2.3 Описание атрибутов БД системы
Табл. 1.1
Отношения |
Атрибуты |
||
Имя |
Тип |
||
Users - пользователи |
id |
Счётчик |
|
name |
Строка |
||
fame |
Строка |
||
sname |
Строка |
||
doc |
Строка |
||
doc_ser |
Строка |
||
doc_num |
Строка |
||
doc_date |
Строка |
||
propiska |
Строка |
||
tel_home |
Строка |
||
tel_mob |
Строка |
||
tel_work |
Строка |
||
status |
Строка |
||
dom_id |
Числовой |
||
zayav |
Числовой |
||
Id |
Счётчик |
||
user_id |
Числовой |
||
dom_id |
Числовой |
||
dog |
Числовой |
||
status_onyma |
Строка |
||
date_start |
Дата/Время |
||
Date_stop |
Дата/Время |
||
Dogovor - договора |
id |
Счётчик |
|
user_id |
Числовой |
||
dom_id |
Числовой |
||
dog |
Строка |
||
status_onyma |
Строка |
||
date_start |
Дата/Время |
||
date_stop |
Дата/Время |
||
Uchetka - логины и пароли |
id |
Счётчик |
|
dog_id |
Числовой |
||
uch_im |
Числовой |
||
login |
Строка |
||
pass |
Строка |
||
tariff |
Строка |
||
prim |
Строка |
||
status_onyma |
Строка |
||
IP- IP адреса |
id |
Счётчик |
|
ip |
Строка |
||
mac |
Строка |
||
dom_id |
Числовой |
||
dog_id |
Числовой |
||
DHCP |
Строка |
||
LAN |
Строка |
||
port |
Строка |
||
DNS |
Строка |
||
Dom - дома |
id |
Счётчик |
|
street_id |
Числовой |
||
gorod_id |
Числовой |
||
num |
Строка |
||
coords |
Строка |
||
Street - улицы |
id |
Счётчик |
|
street |
Строка |
||
Gorod - горда |
id |
Счётчик |
|
gorod |
Строка |
||
Ports - порты |
id |
Счётчик |
|
port |
Строка |
||
ip_id |
Числовой |
||
obor_id |
Числовой |
||
status |
Строка |
||
Yashik - ящики |
id |
Счётчик |
|
dom_id |
Числовой |
||
yashik |
Строка |
||
podezd |
Строка |
||
pitanie |
Строка |
||
Obor - оборудование |
id |
Счётчик |
|
vend_id |
Числовой |
||
yash_id |
Числовой |
||
ip |
Строка |
||
mac |
Строка |
||
Vendor - наименование и модели оборудования |
id |
Счётчик |
|
name |
Строка |
||
model |
Строка |
||
ports |
Строка |
БД содержит следующие таблицы:
Таблица Users предназначена для хранения данных о пользователе (включающая его паспортные данные, место подключения и контактные телефоны, если организация, то данные об организации).
Таблица Gorod содержит названия города.
Таблица Street содержит названия улиц.
Таблица Dom содержит номер дома и его координаты расположения на карте.
Таблица Vender содержит информацию о полной информации о коммутаторах.
Таблица Obor включает в себя информацию о расположение и уточнение модели оборудования.
Таблица Ports выдает информацию о занятости порта.
Таблица IP хранит соответствие IP адреса и MAC адреса пользователя с привязкой к порту.
Таблица Pay предназначена для хранения информации о поступивших платежах на лицевой счет пользователя.
Таблица Ostatok предназначена для хранения информации об остатке средств на лицевом счете пользователя.
Таблица Dogovor хранит сведения о номере договора, даты его вступления в силу и даты окончания действия.
Таблица Ban содержит информацию о наложение запрета пользователю выхода в сеть.
Таблица Uchetka содержит логин / пароль каждого пользователя.
Таблица Bank реквизиты организаций.
2.4. принцип контроля работоспособности сети
Принцип контроля работоспособности сети может осуществляться с помощью следующих способов:
- опрашивание конечных пользователей, подключенных к этому оборудованию;
- опрашивание самого оборудования.
В первом случае, есть достаточное количество неудобств, связанных с:
- отсутствием электропитания в квартире;
- выключенным персональным компьютером;
- задержкой ответов, связанной с некорректной работой сетевой платы, или ПК в целом;
- установленными защитными средствами, блокирующие запрос-ответ.
Второй же вариант, более точно выявляет неполадки, а также не зависит от ряда факторов описанных, для конечного пользователя и дает возможность удаленного управления оборудованием.
В виду того, что сеть базируется на оборудовании, подразделяющемся на несколько уровней (в частности управляемые (Layer 2/3 Switch) и неуправляемые (Layer 2 Switch)). Выявление активности и работоспособности оборудования будет вывялятся следующими методами.
Неуправляемые коммутаторы опрашиваются за счет активности подключенных к ним клиентов, если такие в данный момент имеются, а также установленным устройством NetPing B+/PWR-220 от компании LightCom, предназначенное для проверки работоспособности Ethernet сегментов сетей, в которых отсутствуют постоянно включенные устройства, с возможностью автоматической перезагрузки активного сетевого оборудования.
Его особенностями являются следующие параметры как:
Ответ на ICMP запрос (ping запрос) по уникальному IP адресу устройства.
Установку любого IP адреса устройства.
Установку любого MAC адреса устройства.
Сохранение IP и MAC адресов в энергонезависимой памяти после выключения питания устройства.
Изменение IP и MAC адресов удаленно по протоколу UDP при помощи утилиты конфигурирования устройства.
Шифрование пакетов UDP для защиты устройства от несанкционированного изменения параметров.
Защиту от изменения параметров устройства при помощи перемычки на плате устройства.
Сброс параметров к их значению по умолчанию при помощи перемычки на плате устройства.
Поддержка шлюза для отправки пакетов (при ответе) во внешние сети
Ограничение диапазона IP адресов, с которых разрешен доступ к устройству
Возможность удаленного и автономного управления электропитанием любого устройства, подключенного к NetPing PWR-220.
Управляемые коммутаторы опрашиваются через протокол SNMP, а точнее автономный SNMP-траппер, распознающий Cold/Warm Start и Link Up/Down.
Следующим этапом в разработке этой системы является ограничение набора используемых средств.
3. Программная реализация информационной системы
3.1 Средства разработки
Прежде чем приступать к реализации системы следовало определиться со средствами реализации, такими как среда разработки и драйвер базы данных. В качестве среды разработки была выбрана система Unix, с установленным и поддерживающим языком PHP, а для создания базы данных была использована СУБД MySQL.
PHP.
PHP (его полное название: PHP: Hypertext Preprocessor) - это широко используемый язык сценариев общего назначения с открытым исходным кодом. Т.е. PHP это язык программирования, специально разработанный для написания web-приложений (сценариев), исполняющихся на Web-сервере.
Синтаксис языка берет начало из C, Java и Perl. PHP достаточно прост для изучения. Преимуществом PHP является предоставление web-разработчикам возможности быстрого создания динамически генерируемых web-страниц.
Важным преимуществом языка PHP перед такими языками, как языков Perl и C заключается в возможности создания HTML документов с внедренными командами PHP.
Значительным отличием PHP от какого-либо кода, выполняющегося на стороне клиента, например, JavaScript, является то, что PHP-скрипты выполняются на стороне сервера. Можно сконфигурировать свой сервер таким образом, чтобы HTML-файлы обрабатывались процессором PHP, так что клиенты даже не смогут узнать, получают ли они обычный HTML-файл или результат выполнения скрипта.
PHP позволяет создавать качественные Web-приложения за очень короткие сроки, получая продукты, легко модифицируемые и поддерживаемые в будущем. PHP прост для освоения, и вместе с тем способен удовлетворить запросы профессиональных программистов.
С помощью PHP можно реализовать все те же возможности, что и с помощью CGI-программ. Например: обрабатывать данные из форм, генерировать динамические страницы, получать и посылать куки (cookies).
Кроме этого в PHP включена поддержка многих баз данных (databases), что делает написание Web-приложений с использованием БД до невозможности простым.
Вот неполный перечень поддерживаемых БД:
Adabas D.
InterBase.
Solid.
dBase.
mSQL.
Sybase.
Empress.
MySQL.
Velocis.
FilePro.
Oracle.
Unix dbm.
Informix.
PostgreSQL.
Вдобавок ко всему PHP понимает протоколы IMAP, SNMP, NNTP, POP3 и даже HTTP, а также имеет возможность работать с сокетами (sockets) и общаться по другим протоколам.
JsHttpRequest: AJAX-библиотека.
Библиотека JsHttpRequest -- это мощная утилита для создания AJAX-приложений на PHP. библиотека для создания AJAX-приложений, отличающаяся повышенной кроссбраузерностью, простотой и универсальностью, а также умеющая закачивать файлы на сервер без перезагрузки страницы и работать с формами целиком. Она "прозрачно" поддерживает русскоязычные кодировки (в том числе windows-1251), имеет простотой интерфейс, а также умеет закачивать файлы на сервер без перезагрузки страницы и работать с формами целиком.
Краткий перечень ее ключевых возможностей и отличий от аналогов:
· Кроссбраузерность. Библиотека работает в IE5.0+, Mozilla 1.7+, Firefox 1.0+, Opera 7.20+, Safari (здесь "+" означает "в этой и более новых версиях"). Кроме того, код может работать без поддержки ActiveX и XMLHttpRequest (однако, если эти возможности включены в браузер, они автоматически задействуются). Кроссбраузерность гарантируется автоматическим framework-ом для тестирования библиотеки.
· Поддержка и "прозрачная" работа с любыми кодировками в том числе русскоязычными.
· Закачка файлов (upload) из браузера на сервер без перезагрузки страницы.
· Совместимость с библиотекой prototype. Prototype -- это популярное средство для упрощения работы JavaScript-программиста, включающее поддержку AJAX и другие возможности. Библиотека JsHttpRequest может быть использована в качестве ее серверной PHP-части (после подключение небольшого модуля совместимости JsHttpRequest-prototype.js). При этом все дополнительные возможности, присущие JsHttpRequest (кроссбраузерность, закачка файлов, работа с русскими кодировками и т. д.), остаются в силе.
· Полная поддержка отладочных возможностей PHP. Если в скрипте на серверной стороне происходит ошибка (включая фатальную, например, вызов неопределенной функции), клиентская часть имеет возможность корректно ее обработать и вывести диагностику. Помимо данных ответа, ей передается выходной поток скрипта, содержащий текст ошибки PHP.
· Передача многомерных структур (аналог JSON) в данных запроса и ответа сервера. При этом используются стандартные средства PHP -- многомерные массивы (данные запроса можно получить из $_REQUEST, данные ответа записываются в $_RESULT), а также стандартные средства JavaScript -- вложенные объекты и свойства. Никакого XML на уровне API: работа происходит "родными" средствами языков.
· Поддержка сессий PHP стандартными средствами.
· Выбор оптимального метода загрузки данных (XMLHttpRequest, Microsoft.XMLHTTP, <SCRIPT>, <IFRAME>) в зависимости от браузера. В частности, возможность загружать данные с других хостов.
· Компонентность библиотеки позволяет отключить ненужные методы загрузки и тем самым сократить объем JavaScript-кода. Например, если вы не планируете закачивать файлы AJAX-ом, вы можете выбрать версию с поддержкой только XML- и SCRIPT-загрузчиков.
· Интерфейс, совместимый с XMLHttpRequest.
Выбор в пользу СУБД MySQL.
Как только возникает необходимость в каком-либо упорядоченном архивировании информации, неизбежно возникает мысль о создании базы данных. Средств для разрешения этой проблемы довольно много.
SQL - это сокращение от Structured Query Language (структурированный язык запросов). SQL создан для работы с реляционными базами данных. Он позволяет пользователям взаимодействовать с базами данных (просматривать, искать, добавлять и управлять данными). MySQL соответствует спецификации ANSI 92 SQL.
Язык SQL достаточно сложен и многогранен. При работе небольшой фирмы, или базы данных в сети internet круг задач ограничен. Поэтому была создана небольшая, но очень быстрая и функциональная реляционная СУБД MySQL. То есть в MySQL задействован не весь язык SQL, а только необходимая его часть. Но этот нюанс нисколько не ограничивает в функциональности данную систему.
Вот перечень основных возможностей пакета MySQL - это многопоточность, поддержка нескольких одновременных запросов, оптимизация связей с присоединением многих данных за один проход, записи фиксированной и переменной длины, ODBC драйвер в комплекте с исходным кодом, гибкая система привилегий и паролей, до 16 ключей в таблице, каждый ключ может иметь до 15 полей. Также есть поддержка ключевых полей и специальных полей в операторе CREATE, поддержка чисел длинной от 1 до 4, строк переменной длины и меток времени, интерфейс с языками C и perl. Основанная на потоках, быстрая система памяти, утилита проверки и ремонта таблицы, все данные хранятся в формате ISO8859_1. Все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках, псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице, все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей. Легкость управления таблицей, включая добавление и удаление ключей и полей.
Можно выполнять команды SQL непосредственно из командной строки системы Unix или из интерактивного режима MySQL. СУБД MySQL имеет библиотеку C API. Ее можно использовать для запросов к базе данных, вставки данных, создания таблиц и т.п.
Кроме технических подробностей можно добавить, что MySQL работает как на Unix, так и на платформе Windows 95/98, он очень прост и удобен в работе.
Иерархические структуры данных в реляционных БД.
Сегодня большинство хранилищ данных, как простых так и сложных, построены на основе реляционных баз данных. В них используются либо файл-серверные системы (dBase, Paradox, Clipper, FoxPro, Access), либо SQL-серверы (Oracle, Informix, Sybase, Borland InterBase, MS SQL и т.д.). Реляционные базы данных в большинстве случаев удовлетворяют требования какой-либо предметной области данных, но часты и случаи когда требуется представление и хранение данных в иерархическом виде.
Архитектура реляционных баз данных ориентирована на хранение внутри таблиц БД информации о сущностях информационной системы и связях между ними. Каждая из записей таблицы содержит информацию об одном экземпляре. Организация хранения информации о независимых друг от друга экземплярах сущностей (т.е. так называемых «плоских» данных) не вызывает никаких затруднений. Однако, наряду с «плоскими» данными, при построении даже простых информационных систем, приходится хранить в БД и информацию о «вложенных» друг в друга сущностях, т.е иерархические данные.
В SQL, любые отношения явно описываются данными. Типичный способ представления деревьев состоит в том, чтобы поместить матрицу смежности в таблицу. Т.е. один столбец - родительский узел, и другой столбец в той же самой строке - дочерний узел (пара представляет собой дугу в графе).
Система управления базами данных обеспечивает полный контроль над процессом определения данных, их обработкой и совместным использованием. СУБД также существенно облегчает структуризацию и обработку больших объемов информации, хранящейся в многочисленных таблицах. Разнообразные средства СУБД обеспечивают выполнение трех основных функций: определение данных, обработка данных и управление данными.
Определение данных. Вы можете определить, какие сведения будут храниться в вашей базе данных, их типы данных (например, числа или символы) и как они связаны между собой. В некоторых случаях вы можете также задать форматы и условия для проверки данных.
Обработка данных. Данные можно обрабатывать самыми различными способами. Можно выбирать любые поля, фильтровать и сортировать данные. Можно объединять данные со связанной с ними информацией и вычислять итоговые значения. Вы также можете отобрать некоторые данные и затем изменить, удалить, скопировать их в другую таблицу или создать для них новую таблицу.
Управление данными. Вы можете указать, каким пользователям разрешено просматривать, изменять или вставлять данные. Во многих случаях вы можете также определить правила совместного использования данных.
Все эти функциональные возможности в полной мере реализованы в MySQL, как и в любой другой СУБД.
Обзор существующих программных средств и протоколов проверки соединений в сетях.
Выбор способов и объектов мониторинга сети зависит от множества факторов. На самом общем уровне можно говорить о таких элементах как:
1. проверка физической доступности оборудования;
2. детальная проверка не критичных, но важных параметров функционирования сети: производительности, загрузки и т.п.;
3. проверка параметров, специфичных для сервисов и служб данного конкретного окружения (наличие некоторых значений в таблицах БД, содержимое лог-файлов).
Начальный уровень любой проверки - тестирование физической доступности оборудования (которая может быть нарушена в результате отключения самого оборудования либо отказе каналов связи). Как минимум, это означает проверку доступности по Internet Control Message Protocol (ICMP) (ping), причем желательно проверять не только факт наличия ответа, но и время прохождения сигнала, и количество потерянных запросов: аномальные значения этих величин, как правило, сигнализируют о серьезных проблемах в конфигурации сети.
Internet Control Message Protocol (ICMP).
Одним из основных элементов прослушивания сети, вне зависимости от установленного оборудования, является утилита ping.
Ping -- это служебная компьютерная программа, предназначенная для проверки соединений в сетях на основе TCP/IP.
Она отправляет запросы Echo-Request протокола ICMP указанному узлу сети и фиксирует поступающие ответы (ICMP Echo-Reply). Время между отправкой запроса и получением ответа (RTT, от англ. Round Trip Time) позволяет определять двусторонние задержки (RTT) по маршруту и частоту потери пакетов, то есть косвенно определять загруженности каналов передачи данных и промежуточных устройств.
Также пингом называется время, затраченное на передачу пакета информации в компьютерных сетях от клиента к серверу и обратно от сервера к клиенту, оно измеряется в миллисекундах. Время пинга связано со скоростью соединения и загруженностью каналов на всём протяжении от клиента к серверу.
Полное отсутствие ICMP-ответов может также означать, что удалённый узел (или какой-либо из промежуточных маршрутизаторов) блокирует ICMP Echo-Reply или игнорирует ICMP Echo-Request.
Программа ping является одним из основных диагностических средств в сетях TCP/IP и входит в поставку всех современных сетевых операционных систем. Функциональность ping также реализована в некоторых встроенных ОС маршрутизаторов, доступ к результатам выполнения ping для таких устройств по протоколу SNMP определяется RFC 2925 (Definitions of Managed Objects for Remote Ping, Traceroute, and Lookup Operations).
В системах Unix одним из самых надежных и проверенных методов прослушивания является использование утилиты fping.
Fping - это программа, которая позволяет пользователям с помощью запросов echo request протокола ICMP определить отвечает ли удаленный компьютер. fping отличается от ping тем, что в командной строке можно указать любое количество целей, или указать файл, который содержит список целей, которые необходимо опросить. Вместо того чтобы посылать пакеты одной цели до тех пор пока она не ответит или не истечет таймаут, fping посылает пакет ping и переходит к следующей цели в циклической последовательности.
По умолчанию, если цель отвечает, то она удаляется из списка проверки; если цель не отвечает в течении определенного временного лимита и/или лимита повторений, то она считается недоступной. fping также может посылать определенное количество пакетов или может зацикливаться бесконечно (как в ping). В отличие от ping, fping задумывался для использования в скриптах, так что его вывод планировался так, чтобы его было просто обработать.
У описанных выше утилит есть существенный недостаток по сравнению с утилитами протокола ARP:
- ограничение одной подсетью;
- медленным временем реакции на запрос-ответ;
- возможность блокирования ICMP Echo-Reply и игнор ICMP Echo-Request;
- отсутствие метода проверки соотношения на Ethernet-адрес / IP-адрес.
Address Resolution Protocol (ARP)
ARP (англ. Address Resolution Protocol -- протокол разрешения адресов) -- сетевой протокол, предназначенный для преобразования IP-адресов (адресов сетевого уровня) в MAC-адреса (адреса канального уровня) в сетях TCP/IP. Он определён в RFC 826.
Каждый узел сети имеет два адреса, физический адрес и логический адрес. В сети Ethernet для идентификации источника и получателя информации используются оба адреса. Информация пересылаемая от одного компьютера другому по сети содержит в себе физический адрес отправителя, IP-адрес отправителя, физический адрес получателя и IP-адрес получателя. ARP-протокол обеспечивает связь между этими двумя адресами. Существует четыре типа ARP-сообщений: ARP-запрос (ARP request), ARP-ответ (ARP reply), RARP-запрос (RARP-request) и RARP-ответ (RARP-reply). Локальный хост при помощи ARP-запроса запрашивает физический адрес хоста-получателя. Ответ (физический адрес хоста-получателя) приходит в виде ARP-ответа. Хост-получатель, вместе с ответом, шлет также RARP-запрос, адресованный отправителю, для того, чтобы проверить его IP адрес. После проверки IP адреса отправителя, начинается передача пакетов данных.
Перед тем, как создать подключение к какому-либо устройству в сети, IP-протокол проверяет свой ARP-кеш, чтобы выяснить, не зарегистрирована ли в нём уже нужная для подключения информация о хосте-получателе. Если такой записи в ARP-кеше нет, то выполняется широковещательный ARP-запрос. Этот запрос для устройств в сети имеет следующий смысл: "Кто-нибудь знает физический адрес устройства, обладающего следующим IP-адресом?" Когда получатель примет этот пакет, то должен будет ответить: "Да, это мой IP-адрес. Мой физический адрес следующий: ..." После этого отправитель обновит свой ARP-кеш, и будет способен передать информацию получателю.
Arping - ARP level ping utility - программа позволяет выполнить эхо-запрос указав MAC адрес, сопоставить MAC и IP адрес минуя ARP кэш. Например, при появлении в сети злоумышленника наполняющего сеть не IP пакетами, можно вычислить его IP адерс.
Принцип ее действия простой - создается ICMP-пакет типа Ping Request, где в IP-заголовке прописан широковещательный адрес назначения 255.255.255.255, а в Ethernet-заголовке - MAC-адрес, который нужно пингануть. Если ответ на широковещательный пинг от узла с заданным MAC есть, то в ответе будет фигурировать его IP адрес. Но пинговаться машины будут только если они:
1) отвечают на запросы ICMP Ping (сетевой экран не фильтрует данный тип входящих ICMP-пакетов)
2) отвечают на широковещательные ICMP (а это по умолчанию практически везде запрещено, net.ipv4.icmp_echo_ignore_broadcasts=1, дабы машины нельзя было тривиально использовать для проведения Reflection DDoS).
Более надежный способ опроса сети, с учетом обхода сетевых экранов, на соответствие IP адреса, соответсвующего заданному MAC- это ARP-сканирование по диапазону IP-адресов утилитой Arpdig.
Arpdig - средство сканирования целого сегмента адресов IP или списка, через whohas запросы ARP, собирающее ARP - ответы и показывающее результаты.
Доступность и возможность изменять параметры функционирования каждого сегмента, доступно через общий язык управления сетевыми ресурсами - SNMP.
Simple Network Management Protocol (SNMP).
SNMP (англ. Simple Network Management Protocol -- простой протокол управления сетью) -- это протокол управления сетями связи на основе архитектуры TCP/IP.
Также это технология, призванная обеспечить управление и контроль за устройствами и приложениями в сети связи путём обмена управляющей информацией между агентами, располагающимися на сетевых устройствах, и менеджерами, расположенными на станциях управления. В настоящее время SNMP является базовым протоколом управления сети Internet. SNMP определяет сеть как совокупность сетевых управляющих станций и элементов сети (главные машины, шлюзы и маршрутизаторы, терминальные серверы), которые совместно обеспечивают административные связи между сетевыми управляющими станциями и сетевыми агентами.
Обычно при использовании SNMP присутствуют управляемые и управляющие системы. В состав управляемой системы входит компонент, называемый агентом, который отправляет отчеты управляющей системе. По существу SNMP агенты передают управленческую информацию на управляющие системы как переменные (такие как "свободная память", "имя системы", "количество работающих процессов").
Управляющая система может получить информацию через операции протокола GET, GETNEXT и GETBULK. Агент может самостоятельно без запроса отправить данные, используя операцию протокола TRAP или INFORM. Управляющие системы могут также отправлять конфигурационные обновления или контролирующие запросы, используя операцию SET для непосредственного управления системой. Операции конфигурирования и управления используются только тогда, когда нужны изменения в сетевой инфраструктуре. Операции мониторинга обычно выполняются на регулярной основе.
Переменные доступные через SNMP организованы в иерархии. Эти иерархии и другие метаданные (такие как тип и описание переменной) описываются Базами Управляющей Информации (англ. Management Information Bases (MIBs)).
Сам по себе SNMP не определяет, какая информация (какие переменные) управляемая система должна предоставлять. Зачастую SNMP использует расширяемую модель, где доступная информация определяется Базами Управляющей Информации (MIB). Базы Управляющей Информации описывают структуру управляющей информации устройств. Они используют иерархическое пространство имен содержащее уникальный идентификатор объекта (англ. object identifier (OID)). Грубо говоря, каждый уникальный идентификатор объекта идентифицирует переменную, которая может быть прочитана или установлена через SNMP. MIBы используют нотацию, определенную в ASN.
Иерархия MIB может быть изображена как дерево с безымянным корнем, уровни которого присвоены разными организациями. На самом высоком уровне MIB OIDы принадлежат разным организациям, пока на более низком уровне OIDы выделяются ассоциированным организациям. Эта модель реализует управление через все слои сетевой модели OSI так как MIBы могут быть определены для всех подобных ситуаций и информации.
Управляемый объект - это одна из любого числа характеристик специфических для управляемого устройства. Управляемый объект включает в себя один или более экземпляров объекта (идентифицируемых по OID), которые на самом деле переменные.
Существует два типа управляемых объектов:
Скалярные объекты определяют единственный экземпляр объекта.
Табличные объекты определяют множественные, связанные экземпляры объектов которые группируются в таблицах MIB.
Примером управляемого объекта может быть atInput, который является скалярным объектом содержащим единственный экземпляр объекта, целое число, которое показывает общее количество входящих пакетов AppleTalk на сетевой интерфейс маршрутизатора.
Идентификатор объекта (OID) уникально идентифицирует управляемый объект в иерархии MIB.
3.2 Программная реализация проекта
Вся структура системы реализована через PHP скрипты, работающими с данными хранящимися в базе данных MySQL и выводящейся всей необходимой информацией на web приложение, которое наглядно помогает ориентироваться и работать со всеми необходимыми компонентами. Web- интерфейс в свою очередь реализован через средства HTML, PHP и JSHttpRequest под управлением Web-сервера Apache, с дополнительно установленными такими средствами как: JpGraph, GD. Вся система находится под управлением системы FreeBSD v.7.0, в связи с ее стабильностью работы, великолепно себя зарекомендовавшей в качестве операционной системы под сервера, не высокими системными требованиями к аппаратной конфигурации и поддержкой необходимых программного обеспечения для реализации системы.
Система функционирует на сервере с конфигурацией:
Тип ЦП: Pentium 233 МГц.
Системная плата: Gigabyte GA-6VTX (1 ISA, 5 PCI, 1 AGP, 1 AMR, 3 DIMM, Audio).
Чипсет системной платы: VIA VT82C694T Apollo Pro133T.
Объем оперативной памяти: 128 Мб (SDRAM).
Видеоадаптер: NVIDIA Vanta/Vanta LT (Microsoft Corporation) (8 Мб).
Дисковый накопитель: ST310212A (10Гб, Ultra-ATA/133).
Сетевой адаптер: Realtek RTL8139 Family PCI Fast Ethernet NIC.
При обращение к одному из модулей системы производится через web-интерфейс. При обращении к web-интерфейсу web-клиент отсылает передачу данных на www-сервер, который в свою очередь обращается к модулю AJAX для построения web-страницы с выбором данных из сервера БД. Получив ответ от базы данных и www-сервера, нам становится доступна, запрошенная нами, web-страница.
Если обращение происходит к блоку редактирования или занесения информации о каком-то оборудовании, модуль AJAX состоящий из двух компонентов, строит web- страницу выбирая запросами из БД требуемых нами данных. При внесении изменений все отредактированные данные отсылаются и записываются в базу данных.
При обращении к моменту мониторинга сети, происходит выбор прорисовки карты города, которая в свою очередь необходимые ей результаты получает из временных переменных, которые были получены от работы модуля генерации данных временных переменных, запущенного модулем прорисовкой карты. И модуль прорисовки карты и генерации временных переменных обращаются к базе данных с определенными запросами для получения требуемой информации. Так же для выставления отображения цветов отдельных участков сети города на карте определенным цветом, модуль прорисовки карты, благодаря запросу, получает требуемые сведения из базы данных, занесенными туда модулем контроля, который в автономном режиме работает с периодом запуска в 5 минут.
Механизм работы с БД.
Механизм работы основан с реляционной базой данных, в связи с этим используется метод обработки деревьев и графов.
Деревом называется упорядоченный граф, в котором от каждого узла к вершине ведет только один путь. С помощью дерева можно представить структуру каталогов и файлов на жестком диске, иерархию подразделений и сотрудников компании или административно-территориальное строение государства. Извлечение списка всех узлов некоторого поддерева, заданного его вершиной, является одной из самых распространенных задач, решаемых в прикладных программах. Например, чтобы определить обороты по бухгалтерскому счету, необходимо просуммировать проводки по нему и по всем его субсчетам. В складской программе может понадобиться список товаров, принадлежащих некоторой товарной группе и ее подгруппам, причем, таких подгрупп может быть неограниченное количество, и сами они могут иметь вложенные подгруппы и т.д. Хотя, теоретически такая задача решается элементарно с помощью рекурсивного обхода дерева, иногда же приходится выбирать нерекурсивный обход, т.е. извлечение всех узлов заданного поддерева без обращения к рекурсивным процедурам.
Добавление узла в дерево осуществляется с помощью простой команды вставки записи, например:
INSERT INTO test1 (id, parent)
VALUES (<идентификатор узла>, <идентификатор родителя>);
Для перемещения узла к другому родителю следует выполнить команду UPDATE:
UPDATE test1
SET parent = <идентификатор нового родителя>
WHERE id = <идентификатор перемещаемого узла>;
Удаление узла и всего поддерева осуществляется с помощью команды DELETE:
Подобные документы
Теоретические основы организации локальных сетей. Общие сведения о сетях. Топология сетей. Основные протоколы обмена в компьютерных сетях. Обзор программных средств. Аутентификация и авторизация. Система Kerberos. Установка и настройка протоколов сети.
курсовая работа [46,3 K], добавлен 15.05.2007Разработка программы – сетевого эмулятора, позволяющего представить в графическом виде топологию маршрутизируемой сети. Сравнительный анализ существующих программных эмуляторов сетей и сетевого оборудования. Моделирование протоколов маршрутизации.
дипломная работа [512,2 K], добавлен 26.09.2014Обзор и анализ возможных технологий построения сети: Ethernet, Token Ring, FDDI, Fast Ethernet. Основные виды кабелей и разъемов. Выбор архитектуры, топологии ЛВС; среды передачи данных; сетевого оборудования. Расчет пропускной способности локальной сети.
дипломная работа [476,4 K], добавлен 15.06.2015Основные типы линий связи. Локальные вычислительные сети (ЛВС) как системы распределенной обработки данных, особенности охвата территории, стоимости. Анализ возможностей и актуальности использования сетевого оборудования при построении современных ЛВС.
дипломная работа [823,9 K], добавлен 16.06.2012Обзор требований к разрабатываемой системе автоматизации учета учащихся. Сравнительный анализ и выбор инструментальных средств. Обоснование выбора программных средств реализации. Язык веб-программирования PHP. Система управления базами данных MySQL.
дипломная работа [1,2 M], добавлен 13.06.2014Основные требования к созданию локальной сети и настройке оборудования для доступа обучающихся к сети Интернет. Принципы администрирования структурированной кабельной системы, его виды (одноточечное и многоточечное). Выбор сетевого оборудования.
дипломная работа [2,1 M], добавлен 11.07.2015Концепция построения, назначение и типы компьютерных сетей. Архитектура локальной сети Ethernet. Обзор и анализ сетевого оборудования и операционных систем. Обоснование выбора аппаратно-программной платформы. Принципы и методы проектирования ЛВС Ethernet.
дипломная работа [162,5 K], добавлен 24.06.2010Обзор существующих аналогов программных средств, предназначенных для построения генеалогических деревьев, их достоинства и недостатки. Выбор программных средств, разработка и реализация архитектуры системы хранения данных, отладка и тестирование сервиса.
дипломная работа [177,1 K], добавлен 24.06.2012Виды сетевого и телекоммуникационного оборудования. Построение телекоммуникационных сетей с использованием сервисных программ, работающих в Интернет и сканирующих IP-сети. Nmap как программа-сканер, Ping – утилита для проверки соединений в сетях TCP/IP.
реферат [309,7 K], добавлен 16.12.2013Сравнительный анализ топологий сети. Описательная сущность эталонной модели взаимосвязи открытых систем (OSI) и сетевых протоколов. Разработка структурно-функциональной схемы локальной сети, расчет производительности каналов и подбор оборудования.
курсовая работа [1,1 M], добавлен 16.11.2010