Каковы преимущества реализации проекта тестирования сетевых компьютеров
Обновлено: 21.11.2024
Что такое сетевое тестирование? Поскольку я не очень хорошо умею объяснять, я обратился к статье в Википедии о тестировании программного обеспечения и нашел следующее:
“ Тестирование программного обеспечения — это исследование, проводимое для предоставления заинтересованным сторонам информации о качестве тестируемого продукта или услуги. Тестирование программного обеспечения также может обеспечить объективное, независимое представление о программном обеспечении, позволяющее бизнесу оценить и понять риски, связанные с внедрением программного обеспечения. ” – Википедия – Тестирование программного обеспечения
По-моему, это неплохо. Но если мы возьмем этот отрывок и заменим «программное обеспечение» на «сеть», мы получим:
“ Сетевое тестирование — это исследование, проводимое для предоставления заинтересованным сторонам информации о качестве тестируемого продукта или услуги. Сетевое тестирование также может обеспечить объективное, независимое представление о сети, позволяющее бизнесу оценить и понять риски, связанные с внедрением сети. ”
Не может быть дальше от истины. В конце концов, сетевое тестирование позволяет убедиться, что ваша сетевая конфигурация работает так, как задумано. Сетевое тестирование очень похоже на тестирование программного обеспечения, за одним исключением: в отличие от тестирования программного обеспечения, сетевое тестирование часто должно проводиться в производственной среде после внесения изменений в конфигурацию. На самом деле иногда очень сложно или почти невозможно смоделировать сложную систему, такую как крупная корпоративная сеть или сам Интернет, в лабораторных условиях. Таким образом, тестирование сети является ОБЯЗАТЕЛЬНЫМ шагом в процессе реализации сети.
Случаи использования сетевого тестирования
Сетевое тестирование следует проводить сразу после изменения конфигурации, чтобы убедиться, что все прошло хорошо, а также постоянно, с помощью активного мониторинга сети, чтобы обнаруживать сетевые проблемы, как только они возникают. В первом случае, вот некоторые ситуации, в которых вы хотите проверить свои предположения о дизайне и реализации после изменения конфигурации:
- Подключение каналов или сайтов: после установки нового удаленного сайта или канала глобальной сети вы можете с помощью такого инструмента, как iPerf, убедиться, что вы получаете пропускную способность, запрошенную вашим оператором, и с помощью ping подтвердить, что в канале нет потери пакетов. ; также можно использовать одноплатные компьютеры с установленным iperf; Еще одна важная вещь, которую нужно протестировать на новом сайте, — это проверить максимально допустимый MTU (Maximum Transmission Unit).
- Изменение политики маршрутизации: из-за сложности сети, чем больше сеть, тем выше риск того, что изменение политики маршрутизации будет иметь неожиданные последствия для вашей таблицы маршрутизации. Полагаясь на распределенные агенты мониторинга, которые выполняют непрерывные тесты ping и traceroute в полносвязном режиме, вы можете в режиме реального времени проверять, что изменение политики маршрутизации изменяет вашу таблицу маршрутизации должным образом.
- Обновления правил брандмауэра. Всегда полезно убедиться, что новый набор правил брандмауэра успешно реализован, независимо от того, должен ли он блокировать или разрешать определенный трафик. Чтобы проверить успешное обновление брандмауэра, вы можете использовать сканер портов, такой как nmap , или выполнить ping-тест на основе TCP из незащищенной сети в защищенную.
- Качество обслуживания (QoS): применение конфигурации QoS в вашей сети — непростая задача. Существует так много зависимостей и мелочей, которые могут пойти не так, поэтому тестирование чрезвычайно важно для проверки того, что, в конце концов, сеть классифицирует, маркирует и ставит в очередь трафик, как задумано. Если вы хотите узнать больше об этом варианте использования, вы можете прочитать запись в блоге Мэтта Смита о том, как проверить QoS.
- Тесты скорости сети: измерение пропускной способности, например скорости загрузки и выгрузки в Интернет, очень важно при оценке взаимодействия с конечным пользователем; для измерения скорости сети доступны утилиты с открытым исходным кодом, такие как iperf (упомянутая выше), а также коммерческие; ознакомьтесь с этой статьей, в которой перечислены различные решения для тестирования скорости с открытым исходным кодом и коммерческие решения.
Итак, с чего начать тестирование сети? Один из инструментов, с которого вы можете начать, уже у вас в руках, и он называется терминалом. Независимо от того, работаете ли вы в среде Unix/Linux, Windows или Mac, стандартный интерфейс командной строки (CLI) предоставляет множество утилит, которые можно использовать для проверки сети, включая ping и traceroute. (Посмотрите статью, в которой я написал о пяти лучших утилитах командной строки Linux для сетевых инженеров.)
Единственная проблема с интерфейсом командной строки заключается в том, что он локальный, а не распределенный. Вы можете подключаться по telnet или SSH к различным удаленным хостам и удаленно выполнять те же тесты, что и локально. Однако этот метод не масштабируется и не предоставляет исторические данные. По этой причине важно использовать распределенное решение для тестирования с графическим интерфейсом, которое одновременно запускает команды сетевого тестирования на многих хостах и сохраняет их результаты для исторического обзора.NetBeez — это решение для мониторинга сети, которое предоставляет эти функции в интерфейсе на основе браузера. Вы можете запускать специальные или постоянные команды, такие как ping, traceroute и iPerf. Если вы хотите проверить это, просто запросите демонстрацию .
Процесс реализации (воплощение проекта сети в жизнь), вероятно, является наиболее важным этапом проекта, поскольку он требует огромных усилий с точки зрения человеческих и финансовых ресурсов и может сильно нарушить повседневную работу сети. организация. Ниже перечислены основные действия, которые вы могли бы разумно ожидать во время внедрения.
- закупка оборудования, материалов, программного обеспечения и услуг
- установка и тестирование сетевых кабелей
- установка размещения сетевого оборудования
- установка, настройка и тестирование сетевого оборудования
- установка, настройка и тестирование сетевых серверов, рабочих станций и периферийных устройств
- установка программного обеспечения операционной системы на серверах и рабочих станциях
- установка и тестирование прикладного программного обеспечения на серверах приложений и рабочих станциях
- создание сетевой файловой системы
- создание подходящей структуры домена
- создание и тестирование учетных записей пользователей и групп
- настройка и тестирование сетевых служб
- перенос данных из существующей системы в новую
- обучение пользователей
- финальное тестирование системы
Обратите внимание на приведенный выше список, что тестирование — это непрерывный процесс, который происходит на протяжении всего процесса внедрения. Его не следует оставлять до конца процесса внедрения, так как проблемы, которые не обнаруживаются и не решаются по мере их возникновения, будет сложнее диагностировать позже, а их устранение будет стоить гораздо дороже.
График реализации
Внедрение сети будет включать в себя множество задач, некоторые из которых не могут начаться, пока не будут выполнены другие задачи (это называется зависимостью задач). План реализации должен включать описание каждой задачи, предлагаемые даты начала и окончания задачи, а также сведения о любых зависимостях задач. Основным инструментом управления проектом, используемым для планирования реализации, является диаграмма Ганта, которая обеспечивает графическое представление каждого действия, которое должно быть выполнено на этапе реализации, показывая, когда каждая задача начинается и заканчивается, и выделяя любые зависимости задач. Простой пример показан ниже.
Упрощенное расписание проекта Диаграмма Ганта
График внедрения позволяет руководителям проектов отслеживать и контролировать процесс внедрения. Он может включать рабочий график для каждой основной задачи, в котором указываются детали предстоящей работы, персонал, необходимый для выполнения работы, и список оборудования и материалов, необходимых для выполнения работы. График также должен содержать подробную информацию о любом модульном тестировании, которое должно быть выполнено во время внедрения, а также о проверках системы после установки. В приведенном ниже отчете более подробно описаны задачи реализации сети муниципальных колледжей Рандуна.
В отчете более подробно описаны задачи внедрения
Тестирование и документация
Тестирование сетевых кабелей, оборудования, программного обеспечения и услуг будет непрерывным процессом на протяжении всего процесса внедрения. Установка сетевых кабелей обычно выполняется специализированной кабельной компанией, которая устанавливает и тестирует кабели и предоставляет документацию, подтверждающую соответствие установки требуемым стандартам. Основные элементы сетевого оборудования, такие как коммутаторы, маршрутизаторы и источники бесперебойного питания, необходимо будет протестировать на предмет правильной работы и настройки после установки. В случае некоторых дорогостоящих элементов оборудования (например, основного коммутатора стоимостью в десятки тысяч фунтов стерлингов) поставщик оборудования может выполнить установку и тестирование от имени клиента и предоставить всю необходимую документацию. Сетевое подключение и доступ к пользовательским данным и приложениям можно проверить, войдя в сеть со случайно выбранных рабочих станций, используя общую учетную запись пользователя (в большой сети может быть нецелесообразно проверять каждую учетную запись пользователя по отдельности). Доступ к электронной почте, Интернету, сетевой печати и другим службам также будет протестирован. После переноса данных организации из старой системы в новую необходимо тщательно протестировать процедуры резервного копирования, чтобы убедиться в их правильном функционировании.
Сетевая документация будет включать схемы кабелей, планы этажей с указанием расположения сетевого оборудования и подробные технические спецификации для каждого элемента сетевого оборудования. Следует также вести записи о программном обеспечении, установленном на каждом сетевом компьютере, вместе с подробной информацией о имеющихся лицензиях на программное обеспечение.MAC- и IP-адреса каждого устройства в сети также должны быть записаны и сопоставлены с физическим местоположением. Наличие подробной и точной сетевой документации значительно упрощает задачу управления сетью и устранения неполадок, а также регулярного обслуживания и ремонта. Поддержка может быть предоставлена пользователям гораздо быстрее и эффективнее, если служба поддержки может определить установленное программное обеспечение, конфигурацию оборудования, сетевой адрес и физическое местоположение рабочей станции пользователя до того, как ИТ-специалист отправится для изучения проблемы.
Безопасность сети
Сетевая безопасность должна обеспечивать баланс между обеспечением надлежащего уровня защиты ресурсов организации и упрощением доступа пользователей к этим ресурсам. Поэтому стратегия сетевой безопасности должна снижать уровень риска до минимума, не оказывая негативного влияния на производительность пользователей. Некоторые из мер безопасности, которые могут быть реализованы во время реализации, описаны ниже.
- Определите политику сетевой безопасности и внедрите процедуры безопасности. Копия политики и процедур безопасности организации должна быть распространена среди всех сотрудников, имеющих доступ к сети.
- Создайте культуру безопасности в организации, чтобы повысить осведомленность сотрудников об угрозах, существующих для сетевой безопасности.
- Внедрите соответствующие процедуры аудита. Это будет включать сбор статистической информации об использовании сетевых ресурсов.
Одним из способов повышения безопасности является максимально возможная изоляция локальной сети (или сетей) организации от общедоступных сетей путем установки брандмауэра между локальной сетью и внешними сетями. Брандмауэр можно использовать для реализации фильтрации пакетов, чтобы ограничить входящий или исходящий трафик на основе исходного или целевого сетевого адреса или типа содержимого. Кроме того, неиспользуемые коммуникационные порты можно отключить для предотвращения несанкционированного доступа в сеть по этим каналам. Доступ в Интернет можно сделать более безопасным, используя прокси-сервер для сокрытия внутренних сетевых адресов клиентов локальной сети. Исходящие запросы к веб-ресурсам направляются через прокси-сервер, поэтому удаленные сетевые узлы будут видеть только тот IP-адрес, который прокси-сервер представляет внешнему миру.
Локальная сетевая среда также должна быть защищена антивирусным программным обеспечением, которое должно быть установлено на всех сетевых компьютерах и регулярно обновляться. Обновления безопасности операционной системы также должны быть обновлены, а пользователи должны принимать все разумные меры предосторожности в отношении безопасности рабочей станции, регулярно менять пароль и не оставлять рабочую станцию, на которой выполнен вход, без присмотра.
Несмотря на то, что решение о многих реализуемых мерах безопасности будет принято на этапе проектирования, именно на этапе реализации будет происходить точная настройка, а применяемые меры безопасности должны быть протестированы в рабочих условиях, чтобы убедиться в отсутствии непредвиденные уязвимости.
Обучение пользователей
Обучение – важная часть внедрения сети. Пользователи получат максимальную выгоду от новой технологии только в том случае, если они будут должным образом обучены ее использованию. Плохое обучение заставит пользователей с трудом использовать сетевые службы, что отрицательно скажется на производительности и приведет к необходимости в дорогостоящей технической поддержке. Эффективная стратегия обучения начинается с определения требований к обучению отдельных сотрудников с целью выяснить, что необходимо знать каждому пользователю для эффективного использования сети. Это может включать в себя использование определенных пакетов программного обеспечения, как использовать сетевые услуги, такие как электронная почта и средства сетевой печати, или просто как войти в сеть и получить доступ к общим данным. Файлы персонала должны отражать уровень компетентности и опыта каждого пользователя, а также любое соответствующее формальное обучение или квалификацию. Описание работы для каждой роли пользователя должно содержать перечень приложений, ресурсов и служб, необходимых для выполнения своих обязанностей.
Хотя в графике внедрения, вероятно, будут указаны временные рамки, в которые должно проводиться обучение, следует разработать более подробный план обучения, в котором точно указано, какое обучение проводится, как и кем оно проводится, а также когда и где оно будет проводиться. доставлен. Ответственность за обучение персонала должна быть делегирована соответствующему отделу или отдельному лицу в организации, которое определит объем необходимого обучения, подготовит графики обучения и закупит необходимые учебные ресурсы.
Обучение может проводиться на дому, если в организации имеется персонал соответствующей квалификации. В качестве альтернативы или в дополнение к внутреннему обучению можно нанять соответствующую учебную организацию для проведения специализированного обучения (часто это более рентабельно, чем разработка подходящего внутреннего обучения).Эффективность обучения можно оценить только после его применения на практике, и не следует исключать необходимость дальнейшего обучения. Неизбежно возникнет постоянная потребность в обучении по мере найма нового персонала или перехода сотрудников на другие должности в организации.
Тестирование сети
[Grif00] Нэнси Гриффет, Рубинг Хао, Дэвид Ли и Ракеш Синха. Комплексное тестирование совместимости системы с приложениями для VOIP. В материалах FORTE/PSTV 2000, Пиза, Италия, октябрь 2000 г.; также в IEEE/ACM Trans. Сеть, 12(5):823–836, 2004.
[Djou 05a] Константинос Джувас и Нэнси Гриффет. Экспериментальный метод тестирования сетей. В материалах SERP’05 — Международная конференция по исследованиям и практике разработки программного обеспечения 2005 г., июнь 2005 г.
[Djou05b] Константинос Джувас, Нэнси Гриффет и Нэнси Линч. Использование самоподобия для повышения эффективности тестирования сети, сентябрь 2005 г.
[Grif06a] Нэнси Гриффет, Юрий Кантор и Константинос Джувас, "Тестирование сети путем определения ее конечного автомата по сетевым трассировкам", Международная конференция по достижениям в разработке программного обеспечения, ICSEA 2006.
[Grif06b] Константинос Джувас, Нэнси Д. Гриффет, Нэнси А. Линч. «Тестирование самоподобных сетей», опубликованное в электронном виде в Electronic Notes in Theoretical Computer Science, 2006 г.
Цели
Цель этого проекта — разработать теоретическую основу для тестирования сети, а также определить методологию и создать инструменты, поддерживающие экономически эффективное тестирование. В этой работе рассматривается проблема проверки правильности совместной работы сети, построенной из протестированных компонентов, для предоставления необходимых услуг. Первоначальные исследования в этой области были предприняты в Лаборатории тестирования совместимости сетей нового поколения компании Lucent Technologies. Эта работа и ее теоретическая основа описаны в [Grif00].
Проблема тестирования сети важна, потому что сети сложно построить правильно, и даже сети, которые, как кажется, работают большую часть времени, могут иметь тонкие ошибки, требующие периодических действий, таких как перезапуск сетевых элементов. Иногда ошибки мешают общению. Иногда баги мешают работе только одного приложения. Иногда ошибки не позволяют сети нести требуемую нагрузку. Иногда ошибки подвергают сеть нарушениям безопасности. Цель тестирования состоит в том, чтобы найти ошибки в сети, чтобы исправить их, но даже простое знание ограничений данного типа сети без исправления ошибок может избавить от бесконечных мучений, т. е. знание того, какие нагрузки она может нести, как часто устройства должны быть перезагружены, насколько они могут масштабироваться, какие у них есть уязвимости в системе безопасности.
Проблема тестирования сети особенно сложна, поскольку сети динамичны. Компонентные элементы сети изменяются. Конфигурация данного элемента сети также может измениться. Связность сети может измениться, поскольку компоненты входят и выходят; он также может измениться из-за сбоев. В этом контексте сетевое тестирование должно решать, как определить правильность набора протестированных сетевых компонентов, объединенных в любом диапазоне конфигураций. В этом проекте мы предполагаем, что отдельные компоненты сети уже протестированы, и вопрос, который необходимо определить, заключается в том, будет ли сеть в том виде, в каком она спроектирована и настроена, поддерживать желаемые услуги.
Подход
Для эффективного тестирования необходимо соблюдение ряда условий:
Тестировщики должны знать, для чего нужна сеть.
Тестировщики должны разработать план определения того, выполняет ли сеть то, что от нее требуется.
Тестировщики должны иметь возможность имитировать действия конечных пользователей, а иногда и некоторые сетевые элементы (если они недоступны во время тестирования).
Тестировщики должны иметь возможность определить, что система сделала в ответ на их действия.
Тестировщики должны иметь возможность измерять эффективность проведенного тестирования (и в целом).
Кроме того, тестировщикам нужны модели, инструменты и процессы, которые помогут им эффективно проводить тестирование.
Что требуется от сети
Моделирование позволяет тестировщику знать, что должна делать сеть. Первым шагом в тестировании является понимание тестером, какие сервисы должна поддерживать сеть, и планирование тестирования. Формальные модели сети могут быть доступны, но обычно их нет. Однако обычно ясно, что сеть должна обладать определенными высокоуровневыми свойствами. Например, DHCP должен по возможности выделять IP-адреса и не назначать какой-либо IP-адрес более чем одному хосту. TCP должен доставлять сообщения надежно, по порядку и без дублирования.
В [Grif00] мы использовали модель конечного автомата для моделирования сети, поддерживающей передачу голоса по IP. Модель зафиксировала сквозное поведение службы VoIP.Эта модель позволила нам формализовать определение тестового покрытия и сгенерировать минимально адекватный набор тестов в соответствии с этим определением тестового покрытия. Впоследствии мы попытались смоделировать поведение сети H.248 VoIP более подробно, используя SDL. Мы пришли к выводу, что детальное моделирование плохо масштабируется для больших протоколов со сложными структурами данных.
Мы экспериментируем с созданием моделей из самой сети, используя инструменты, которые автоматически генерируют модели из трассировки сети. Затем мы тестируем модели, чтобы убедиться, что они обладают необходимыми свойствами [SERP05].
Потенциальными альтернативами использованию SDL являются автоматы ввода-вывода [LYNC96] и алгебры процессов. Они обеспечат строгую формальную основу для определения тестового покрытия и проверки свойств набора тестовых случаев. Они также включают некоторые возможности модуляризации спецификации, которые могут способствовать лучшему масштабированию. Недостатком использования строгих формальных моделей является то, что они обычно недоступны для тестировщиков до начала тестирования; тестировщики обычно не имеют достаточной квалификации для их создания; их создание требует много времени и денег.
Планирование и выполнение тестов
Одна из сложных проблем планирования и выполнения тестов заключается в том, что в лучшем случае можно протестировать лишь небольшое количество сетей, даже если целью является тестирование определенного класса сетей. Например, когда поставщики тестируют свое сетевое оборудование, они пытаются убедиться, что оборудование работает во всем диапазоне сетевых топологий и конфигураций.
Сети различаются и в других контекстах. Сеть интернет-провайдера постоянно меняется. Даже небольшие организации регулярно добавляют новые хосты. Они также добавляют или заменяют новое сетевое оборудование по мере появления новых технологий или более высокой пропускной способности, например, добавляют новые точки беспроводного доступа. Остальное оборудование должно продолжать работать должным образом.
Эта проблема мотивирует вопрос о том, как выбрать сеть для тестирования, когда реальной целью является проверка работоспособности всего класса сетей. Центральная цель этой работы — найти единственного представителя класса сетей, корректность которого подразумевает корректность класса. Мы предлагаем использовать подсеть, общую для всех сетей класса и поведение которой похоже на поведение любой из сетей. Когда подсеть обладает этим свойством, мы называем сети «самоподобными», потому что каждая из них подобна своей подструктуре [Djou05].
Компьютерная сеть определяется как набор взаимосвязанных автономных систем, которые облегчают распределенную обработку информации. Это приводит к повышению производительности при высокой скорости обработки.
- Центральное хранилище данных.
Файлы могут храниться на центральном узле (файловом сервере), которым можно поделиться и сделать его доступным для каждого пользователя в организации. - Каждый может подключиться к компьютерной сети.
Для подключения к современной компьютерной сети требуется ничтожный набор способностей. Легкость присоединения позволяет даже маленьким детям начать использовать данные. - Быстрое решение проблем.
Поскольку обширная процедура разбивается на несколько более мелких процедур, каждая из которых обрабатывается всеми связанными гаджетами, явная проблема может быть решена за меньшее время. - Надежность.
Надежность подразумевает резервное копирование информации. По какой-то причине происходит сбой оборудования и т.д., информация становится недоступной или подрывается на одном ПК, на другой рабочей станции становится доступен другой дубликат аналогичной информации для дальнейшего использования, что способствует бесперебойной работе и дальнейшей обработке без перерыва. - Он очень гибкий.
Известно, что это нововведение действительно легко адаптируется, поскольку оно дает клиентам возможность исследовать все, что касается фундаментальных вещей, например, программирования, не влияя на их полезность. - Безопасность через авторизацию –
Безопасность и защита информации дополнительно регулируются через систему. Поскольку доступ к определенным записям или приложениям разрешен только системным клиентам, никто другой не может взломать защиту или безопасность информации. - Это увеличивает емкость хранилища.
Поскольку вы будете обмениваться данными, записями и активами с другими людьми, вам необходимо гарантировать, что вся информация и материалы законно размещены в структуре. Благодаря этому новшеству в области системного администрирования вы можете выполнять большинство задач без проблем, имея при этом все необходимое пространство для емкости.
- Ей не хватает надежности.
Если основной сервер системы ПК отделится, вся структура окажется бесполезной. Кроме того, в случае отказа устройства моста или центрального связующего сервера вся сеть также остановится.Чтобы справиться с этими проблемами, гигантские системы должны иметь новаторский ПК, который можно использовать в качестве сервера документов, чтобы влиять на настройку и поддерживать систему менее требовательной. - Ему не хватает независимости.
Организация ПК включает в себя процесс, который выполняется с использованием ПК, поэтому люди будут зависеть от большего объема работы с ПК, а не прилагать усилия для выполнения своей работы, которую необходимо выполнить. Кроме того, они будут подчиняться основному серверу документов, а это означает, что в случае его отделения платформа окажется бесполезной, что сделает клиентов неактивными. - Вирусы и вредоносное ПО.
Если хотя бы один компьютер в системе заражен вирусом, есть вероятность, что другие платформы также будут заражены. Инфекции могут эффективно распространяться по системе, учитывая наличие различных гаджетов. - Стоимость сети.
Стоимость системы, включая кабели и оборудование, может быть высокой.
Администрирование систем ПК, несомненно, будет быстрым и выгодным методом обмена и совместного использования данных, но люди также должны знать о его результатах.
Читайте также: