2914

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

Курсовая

Коммуникация, связь, радиоэлектроника и цифровые приборы

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

Русский

2012-10-21

2.58 MB

22 чел.

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

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

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

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

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

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

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

  1.  
    Теоретическая часть

1.1 Жизненный цикл программных продуктов

Любой программный продукт обладает собственным жизненным циклом. Главной составляющей является создание единой программы и документации необходимой для её работы.

Жизненный цикл любого программного продукта включает в себя следующие основные компоненты:

  1.  Планирование разработки.
  2.  Определение требований к системе.
  3.  Сбор и анализ требований пользователей.
  4.  Проектирование программного продукта.
  5.  Разработка приложений.
  6.  Реализация.
  7.  Загрузка данных.
  8.  Тестирование.
  9.  Эксплуатация и сопровождение.

Конкретное наполнение каждого этапа зависит от сложности разрабатываемого продукта. Чем сложнее продукт, тем больше его жизненный цикл.

  1.  Планирование разработки программного продукта

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

  1.  Проверка технологической осуществимости. Она состоит в выяснении вопроса: «Существует ли оборудование и программное обеспечение, удовлетворяющее информационным потребностям фирмы?»
  2.  Проверка операционной осуществимости – это выяснение наличия экспертов и персонала, необходимых для работы с данным программным продуктом.
  3.  Проверка экономической целесообразности.

При исследовании этих проблем важно дать оценку ряду факторов, в том числе таким как:

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

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

  1.  Определение требований к системе

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

  1.  Сбор и анализ требований пользователей

Этот этап является предварительным этапом концептуального проектирования. Информационные потребности выясняются с помощью анкет, опросов менеджеров и работников фирмы, с помощью наблюдения за деятельностью предприятия, а также отчётов и форм, которыми фирма пользуется в текущий момент. На данном этапе необходимо создать для себя модель движения важных материальных объектов и уяснить процесс документа-оборота. По каждому документу необходимо установить периодичность его использования, определить данные необходимые для выполнения выделенных функций. Самое пристальное внимание должно быть уделено дублированию информации, возможности появления ложной информации и причину ведущую к их появлению. Также на этом этапе желательно представить общие параметры создаваемого программного продукта. В итоге собранная информация о каждой важной области применения приложения и пользовательской группе должна включать следующие компоненты: исходную и генерируемую информацию, подробные сведения о выполняемых операциях, а также список требований с указанием их приоритетов. На основании всей этой информации будут составлены спецификации требований пользователей в виде набора документов, описывающих деятельность предприятия с разных точек зрения. Формализация собранной на этом этапе информации может быть повышена с помощью методов составления спецификации требований, к числу которых относятся технология структурного анализа и проектирования, диаграммы потоков данных и графики «вход – процесс – выход».

  1.  Проектирование программного продукта

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

  •  представление данных и связи между ними, необходимых для всех основных областей применения данного приложения и любых существующих групп его пользователей;
  •  создание модели данных способных поддерживать выполнение любых требуемых команд обработки данных;
  •  разработка предварительно варианта проекта, структура которого позволяет удовлетворить требования предъявляемые к производительности системы.

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

Концептуальное проектирование

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

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

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

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

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

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

Логическое проектирование

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

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

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

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

  1.  Набора подсхем.
  2.  Спецификаций для физического проектирования приложений.
  3.  Руководство по разработке программ.
  4.  Руководство по сопровождению.

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

Физическое проектирование

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

  1.  Разработка приложений

Этот этап может выполнять параллельно с проектированием системы. Главной составляющей этого этапа является разработка пользовательского интерфейса.

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

  •  Содержательное название.
  •  Ясные и понятные инструкции.
  •  Логически-обоснованные группировки и последовательности полей.
  •  Визуально-привлекательный вид окна, формы.
  •  Легко узнаваемые названия полей.
  •  Согласование терминологий и сокращений.
  •  Согласование используемых цветов.
  •  Визуальное выделение пространства и группы полей ввода данных.
  •  Удобные средства перемещения курсора.
  •  Средства сообщения об ошибках.
  •  Средства вывода пояснительных сообщений с описанием полей.
  1.  Реализация

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

  1.  Загрузка данных

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

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

Данная задача получила название конвертирование данных.

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

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

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

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

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

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

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

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

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

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

  1.  Эксплуатация и сопровождение

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

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

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

1.2 Локальные вычислительные сети

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

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

Децентрализация процесса обработки данных реализовалась по двум направлениям:

  •  путём подключения к отдельным ЭВМ (или комплексу ЭВМ, объединённых в рамках ВС) множества абонентских пунктов пользователей, т.е. создание систем телеобработки данных;
  •  путём создания вычислительных и информационных сетей, в которых осуществлялось объединение между собой множества территориально удалённых друг от друга ЭВМ.

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

Компьютерная (вычислительная) сеть – это совокупность компьютеров и терминалов, соединённых с помощью каналов связи в единую систему, удовлетворяющую требованиям распределённой обработки данных.

Абоненты сети – это объекты, генерирующие или потребляющие информацию в сети.

Абонентами сети могут быть отдельные ЭВМ, комплексы ЭВМ, терминалы, промышленные роботы, станки с числовым программным управлением и т.д. Любой абонент сети подключается к станции.

Станция – это аппаратура, которая выполняет функции, связанные с передачей и приёмом информации.

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

Физическая передающая среда – это линии связи или пространство, в котором распространяются электрические сигналы, и аппаратура передачи данных.

В зависимости от территориального расположения абонентских систем вычислительные сети можно разделить на три основные классы:

  •  глобальные сети (WAN – Wide Area Network);
  •  региональные сети (MAN – Metropolitan Area Network);
  •  локальные сети (LAN – Local Area Network).

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

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

Локальная вычислительная сеть объединяет абонентов, расположенных в пределах небольшой территории. В настоящее время не существует чётких ограничений на территориальный разброс абонентов локальной вычислительной сети. Обычно такая сеть привязана к конкретному месту. К классу локальных вычислительных сетей относятся сети отдельных предприятий, фирм, банков, офисов и т.д. Протяжённость такой сети можно ограничить приделами 2 – 2,5 километров.

Основное назначение любой компьютерной сети — предоставление информационных и вычислительных ресурсов подключенным к ней пользователям.

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

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

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

Локальные сети (ЛВ ЭВМ) объединяют относительно небольшое число компьютеров (обычно от 10 до 100, хотя изредка встречаются и гораздо больше) в пределах одного помещения (кабинет предприятия), здания или учреждения. Традиционное название – локальная вычислительная сеть (ЛВС) – скорее дань тем временам, когда сети в основном использовались для решения вычислительных задач; сегодня же в 99 % случаев речь идёт исключительно об обмене информацией в виде текстов, графических и видео-образов, числовых массивов. Полезность ЛС объясняется тем, что от 60% до 90% необходимой учреждению информации циркулирует внутри него, не нуждаясь в выходе наружу.

Большое влияние на развитие ЛС оказало создание автоматизированных систем управления предприятиями (АСУ). АСУ включают несколько автоматизированных рабочих мест (АРМ), измерительных комплексов, пунктов управления. Другое важнейшее поле деятельности, в котором ЛС доказали свою эффективность – создание классов учебной вычислительной техники (КУВТ).

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

Характерная особенность ЛС – наличие связывающего всех абонентов высокоскоростного канала связи для передачи информации в цифровом виде. Существуют проводные и беспроводные (радио) каналы. Каждый из них характеризуется определёнными значениями существенных с точки зрения организации ЛС параметров:

  •  скорости передачи данных;
  •  максимальной длины линии;
  •  помехозащищённости;
  •  механической прочности;
  •  удобства и простоты монтажа;
  •  стоимости.

Конфигурации локальных сетей и организация обмена информацией

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

Однако в крупных сетях с большим числом компьютеров оказывается целесообразным выделять один (или несколько) мощных компьютеров для обслуживания потребностей сети (хранение и передачу данных, печать на сетевом принтере). Такие выделенные компьютеры называются серверами; они работают под управлением сетевой операционной системы (ОС). В качестве сервера обычно используется высокопроизводительный компьютер с большим ОЗУ и винчестером (или даже несколькими винчестерами) большой ёмкости. Клавиатура и дисплей для сервера сети не обязательны, поскольку они используются очень редко (для настройки сетевой ОС).

Все остальные компьютеры называются рабочими станциями. Рабочие станции могут не иметь винчестерских дисков или даже дисководов вовсе. Такие рабочие станции называют бездисковыми. Первичная загрузка ОС на бездисковые рабочие станции происходит по локальной сети с использованием специально устанавливаемых на сетевые адаптеры рабочих станций микросхем ПЗУ, хранящих программу начальной загрузки.

ЛС в зависимости от назначения и технических решений могут иметь различные конфигурации (или, как ещё говорят, архитектуру, или топологию).

В кольцевой ЛС (рис. 2) информация передаётся по замкнутому каналу. Каждый абонент непосредственно связан с двумя ближайшими соседями, хотя в принципе способен связаться с любым абонентом сети.

В звёздообразной (радиальной) ЛС (рис. 3) в центре находится центральный управляющий компьютер, последовательно связывающийся с абонентами и связывающий их друг с другом.

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

В древовидной конфигурации (рис. 5) компьютеров существует «главный» компьютер, которому подчинены компьютеры следующего уровня, и т.д.

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

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

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

Процесс передачи данных по сети определяют шесть компонентов:

  •  компьютер-источник;
  •  блок протокола;
  •  передатчик;
  •  физическая кабельная сеть;
  •  приёмник;
  •  компьютер-адресат.

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

Как показано на рис. 6, цикл передачи данных начинается с компьютера-источника, предающего исходные данные в блок протокола. Блок протокола организует данные в пакет передачи, содержащий соответствующий запрос к обслуживающим устройствам, информацию по обработке запроса (включая, если необходимо, адрес получателя) и исходные данные для передачи. Пакет затем направляется в передатчик для преобразования в сетевой сигнал. Пакет распространяется по сетевому кабелю, пока не попадает в приёмник, где перекодируется в данные. Здесь управление переходит к блоку протокола, который проверяет данные на сбойность, передаёт «квитанцию» о приёме пакета источнику, переформировывает пакет и передаёт их в компьютер-адресат.

В ходе процесса передачи блок протокола управляет логикой передачи по сети через схему доступа.

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

Наиболее часто применяются две основные схемы:

  •  конкурентная;
  •  с маркерным доступом.

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

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

Любая коммуникационная сеть должна включать следующие основные компоненты: передатчик, сообщение, средства передачи, приёмник.

Передатчик – устройство, являющееся источником данных.

Приёмник – устройство, принимающее данные.

Приёмником могут быть компьютер, терминал или какое-либо цифровое устройство.

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

Средства передачи – физическая передающая среда или специальная аппаратура, обеспечивающая передачу сообщений.

Любая вычислительная сеть должна обеспечивать режим передачи данных. Существует три режима передачи: симплексный, полудуплексный и дуплексный.

Симплексный режим (рис. 7) – передача данных только в одном направлении. В вычислительных сетях симплексная передача практически не используется.

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

Дуплексный режим (рис. 9) – одновременная передача и приём сообщений. Он является наиболее скоростным режимом работы и позволяет эффективно использовать вычислительные возможности быстродействующих ЭВМ в сочетании с высокой скоростью передачи данных по каналам связи.

1.3 Язык программирования Delphi

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

Языки программирования – формализованный язык для описания алгоритма решения задачи на компьютере.

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

Языки программирования, если в качестве признака классификации взять синтаксис образования его конструкций, можно условно разделить на классы:

  •  машинные языки – языки программирования, воспринимаемые аппаратной частью компьютера  (машинные коды);
  •  машинно-ориентированные языки – языки программирования, которые отражают структуру конкретного типа компьютера (ассемблеры);
  •  алгоритмические языки – не зависящие от архитектуры компьютера языки программирования для отражения структуры алгоритма (Паскаль, Фортран, Бейсик и др.);
  •  процедурно-ориентированные языки – языки программирования, где имеется возможность описания программы как совокупности процедур (подпрограмм);
  •  проблемно-ориентированные языки – языки программирования, предназначенные для решения задачи определенного цикла (Лисп, РПГ, Симула и др.);
  •  интегрированные системы программирования.

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

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

Трансляция может выполняться с использованием средств компиляторов или интерпретаторов. Компиляторы транслируют всю программу, но без её выполнения. Интерпретаторы, в отличие от компиляторов, выполняют пооператорную обработку и выполнение программы.

Существуют специальные программы, предназначенные для трассировки и анализа выполнения других программ, так называемые отладчики. Лучшие отладчики позволяют осуществить трассировку (отслеживание выполнения программы в пооператорном варианте), идентификацию места и вида ошибок в программе, «наблюдение» за изменением значений переменных, выражений и т.п. Для отладки и тестирования правильности работы программ создаётся база данных контрольного примера.

Системы программирования включают:

  •  компилятор;
  •  интегрированную среду разработки программ;
  •  отладчик;
  •  средства оптимизации кода программ;
  •  набор библиотек (возможно с исходными тестами программ);
  •  редактор связей;
  •  сервисные средства (утилиты) для работы с библиотеками, текстовыми и двоичными файлами;
  •  справочные системы;
  •  документатор исходного кода программы;
  •  систему поддержки и управления проектов программного комплекса.

Средства поддержки проектов – новый класс программного обеспечения, предназначен для:

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

Инструментальная среда пользователя представлена специальными средствами, встроенными в пакеты прикладных программ, таких, как:

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

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

Рассмотрим систему Delphi, позволяющую создавать приложения типа клиент-сервер. Разработчику программ с использованием Delphi предоставлены:

  •  объектно-ориентированный язык программирования;
  •  высокопроизводительный компилятор;
  •  объектно-ориентированная модель многократно используемых компонентов;
  •  средства наглядного (визуального) создания программ – набор визуальных средств для создания системы меню, экранных форм, отчётных форм  и т.п., использование библиотеки визуальных компонентов и визуальных объектов;
  •  масштабируемая технология работы с базами данных – использование реляционно-полного языка SQL, встроенная поддержка баз данных под управление СУБД Oracle, Informix, Sybase, Interbase; применение локального сервера Interbase для отладки приложений;
  •  принцип «открытой системы», возможность добавления новых средств и перенос на другие платформы.

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

Позднее были добавлены более сложные конструкции: Н. Вирт предложил структуру программы из модулей unit, для возможности реализации объектного программирования был введён тип object. В результате возможности Паскаля значительно возросли, и он по-прежнему мог удовлетворить запросы любого самого изощрённого системного программиста.

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

Чтобы исправить это положение, в 1996 г. фирма Borland, известная своими разработками в области реализации языков программирования, выпустила компилятор нового поколения Delphi. Прежде всего, это мощный компилятор языка Паскаль, дополненного рядом существенно новых возможностей для программирования в среде Windows. Delphi – это система, имеющая интерфейс качественно нового типа, позволяющий при составлении текста программы видеть те графические объекты, для которых она пишется – так называемая, система визуального программирования.

Delphi – это среда разработки программ, ориентированных на работу в операционных системах семейства Windows. Программы в Delphi создаются на основе современной технологии визуального проектирования, которая, в свою очередь, базируется на идеях объектно-ориентированного программирования. Программы в Delphi пишутся на языке Object Pascal, который является приемником и развитием языка Turbo Pascal. Язык программирования Turbo Pascal, а также одноимённая интегрированная среда разработки, в которой он использовался, в недавнем прошлом завоевал широкую популярность как средство разработки программных продуктов и особенно, как средство обучения программированию. Эта популярность была обусловлена простотой языка, высококачественным компилятором и удобной средой разработки. Но программистические технологии не стоят на месте, и фирма Borland (с апреля 1998 года – Inspires Corporation) делает очередное усилие: на смену языку Turbo Pascal приходит Object Pascal, воплотивший в себе концепцию объектно-ориентированного программирования.

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

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

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

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

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

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

Кроме того, Delphi является системой объектного программирования. Delphi позволяет не только использовать уже ставшие классическими объекты типа object, но и позволяет создавать новые, которые могут иметь графическое изображение и обладать свойствами стандартных элементов среды Windows. Такие объекты получили название визуальных компонентов; для их описания используется специально зарезервированное слово class. К Delphi прилагается целая библиотека стандартных визуальных компонентов – Visual Component Library. Очень важно, что библиотеку эту каждый пользователь может пополнить, добавляя в неё собственные компоненты.

Ещё одной существенной чертой системы программирования Delphi является её открытость, почти все имеющиеся в системе объекты реализованы на языке Паскаль, и могут быть легко дополнены новыми. Например, если вас по какой-либо причине не устраивает стандартный редактор чисел, вы можете написать собственный и подключить его к системе.

Таким образом, среда Delphi содержит в себе все наиболее передовые черты системы программирования. Она является мощным и в то же время несложным в использовании инструментальным средством для создания приложений с современным интерфейсом (в том числе и обучающих программ). Из-за высокого уровня системы программирования типа Delphi даже получили специальное название – Среда быстрой разработки приложений, RAD (Rapid Application Development).

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

  •  нажатие левой кнопки мыши один раз;
  •  двукратное нажатие левой кнопки мыши;
  •  перемещение мыши (уход от объекта, фокусировка объекта и т.п.).

Свойства объектов можно заранее фиксировать либо изменять программным способом во время работы программы. Для каждого события создаётся программный код.

В состав системы входит менеджер проектов, который  предназначен для управления проектами в среде Delphi, позволяя объединять ряд форм в единое приложение, добавлять и удалять файлы, перемещаться по файлам проекта, просматривая исходные тексты программ обработки событий и т.п. Для удобства редактирования объектов используется так называемый браузер объектов (Browser). Интегрированный отладчик позволяет выполнять пошаговую трассировку кода, задавать точки останова (Break points). Для создания пользовательских меню приложений служит редактор меню, позволяющий использовать готовые либо создавать новые шаблоны меню. Графический редактор даёт возможность разработчику приложения создавать графические изображения, кнопки, иконки, использовать масштабирование и вставку внешних графических изображений.

Локальная версия среды разработки – Delphi Desktop Edition, предназначен для создания приложений, работающих с локальными базами данных (dBase, Paradox). Разработчики могут создавать динамические библиотеки, которые будут доступны из программ, написанных на языках C++, Borland Pascal, Paradox for Windows, dBase for Windows.

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

  1.  
    Разработка программного продукта

 Программный продукт xSharez scanner - многопотоковый NetBIOS сканер, представляющий собой «twinware tool», утилиту, предназначенную одновременно как для  системных администраторов, так и для  пользователей интересующихся компьютерной безопасностью.

Программа позволяет:

  1.  Сканировать диапазоны IP адресов (классы B и C) на наличие разделяемых ресурсов (диски или папки специально открытые для доступа из локальной сети или Интернет).
  2.  Подключать найденные ресурсы в качестве сетевых дисков (виртуальный диск,  отображающий содержимое открытого для доступа диска или папки на удалённом компьютере) или просто просматривать их в Windows Explorer («Проводник»).
  3.  Получать дополнительную информацию о сканируемых компьютерах – NetBIOS name, Workgroup, User name, Mac address.  
  4.  Эффективно подбирать пароли к ресурсам с помощью дополнительно загружаемой с сайта разработчика программы - xIntruder.

Программный продукт xShrarez scanner – в отличие от аналогичных программных продуктов имеет несколько дополнительных возможностей и более дружественный и функциональный интерфейс.

2.1 Разработка интерфейсной части

Закладка «Сканер» – основное окно программы.

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

Закладка «Инфа».

В этом окне во время работы программы отображается информация о компьютерах найденных в сканируемом диапазоне IP адресов (рис. 12).

Информация организованна в виде таблицы имеющей следующие колонки:

  •  IP – IP адрес удаленного компьютера;
  •  имя компьютера – NetBIOS имя;
  •  рабочая группа – указывает, к какой рабочей группе принадлежит компьютер;
  •  имя пользователя – учетная запись пользователя работающего в данный момент. Имеет смысл только для серверных многопользовательских операционных систем (Windows NT/2000), в однопользовательских ОС (Windows 95/98) как правило, совпадает с NetBIOS именем;
  •  ресурсы – количество сетевых ресурсов предоставляемых компьютером;
  •  ошибка доступа – номер ошибки доступа возникшей при попытке получить список ресурсов. «ОК» обозначает отсутствие ошибок;
  •  адрес адаптера – MAC адрес (внутренний адрес сетевого адаптера (сетевой карты или модема). Для модемов всегда равен «44:45:53:54:00:00», для сетевой карты всегда уникален) сетевой карты.

Контекстное меню (Pop-Up menu) для каждой из строчек таблицы содержит следующие пункты:

  •  IP в буфер – копирует IP адрес компьютера в буфер обмена;
  •  строку в буфер – копирует всю информацию в буфер обмена;
  •  сохранить все – вызывает диалоговое окно предлагающее сохранить таблицу в виде текстового файла.

Таблица может быть отсортирована по любому столбцу нажатием на его заголовке.

Закладка «Настройки»

Окно настроек программы.

Группа настроек «Сканер»:

  1.  Количество потоков – позволяет регулировать количество одновременно выполняемых, параллельных запросов к IP адресам сканируемого диапазона. В случае, когда количество потоков будет равно 20-ти, программа будет посылать запросы 20-ти различным IP адресам одновременно. От этого параметра напрямую зависит скорость сканирования. Допустимые значения - от 1 до 50.
  2.  Таймаут – максимальное время ожидания ответа на NetBIOS запрос к каждому IP адресу (в секундах). Если таймаут равен 5-ти, то каждый поток после отправки запроса будет ожидать ответа 5 секунд. Получив ответ за более короткое время, программа обработает информацию и перейдет к следующему адресу раньше. В случае если ответ не поступит за это время, поток будет закрыт. Допустимые значения - от 1-й до 10-ти секунд.
  3.  Путь к xIntruder – путь к дополнительной программе для подбора паролей к сетевым ресурсам, бесплатно распространяемой разработчиком.

Группа настроек «Общие»:

  1.  Показывать подсказки – показывать короткие всплывающие описания элементов управления (кнопок, окон и т.д.).
  2.  Показывать предупреждения – показывать предупреждения о том, что просмотр сетевых ресурсов будет невозможен, если пользователь начинает работу с программой «не войдя в сеть». Такая ситуация возможна на компьютерах с операционными системами Windows 95/98 которые подключаются к сети (или Internet) через модем.
  3.  Свернуть при запуске – если этот флажок установлен, при запуске сканирования программа будет свернута («Minimized»). Процент выполнения будет виден на кнопке программы в панели задач («Task bar»). После завершения сканирования программа развернется («Restore») автоматически.
  4.  Шрифт – вывод диалога выбора шрифта, который будет использоваться в надписях, кнопках и окнах.

Группа настроек «Логи»:

  1.  Автозапись – выбор текстового файла для автоматической записи начала, окончания и результатов сканирования.
  2.  Показывать сокращенный лог – флажок меняет режим отображения данных на закладке «Инфа». Отображаются либо все найденные компьютеры, либо только компьютеры, имеющие возможность предоставлять сетевые ресурсы для общего доступа.


2.2 Программная документация

Предварительная настройка операционной системы

Данная часть программной документации рекомендуется, прежде всего, пользователям Windows 95/98, подключающимся к сети через модем. Если на вашем компьютере давно и успешно функционируют серверные операционные системы – Windows NT или 2000, либо подключение осуществляется из локальной сети (без использования программного обеспечения аналогичного WinGate), то этот раздел можно спокойно оставить без внимания.

Настройка состоит из 2-х частей: установка нескольких необходимых параметров и перезагрузка.

  1.  Для успешного взаимодействия с удаленными компьютерами по протоколу NetBIOS вам понадобится правильно сконфигурировать службы сетей Microsoft ™. На приведенном ниже рисунке 14 красными точками отмечены компоненты, которые необходимо установить, вызвав диалог «Панель управления/Сеть».
  2.  При загрузке, операционные системы Windows 95/98 не запускают сетевые службы автоматически. Запуск служб происходит при входе в локальную сеть, либо при модемном подключении с соответствующими установками ОС. Красной точкой отмечена опция которую желательно установить в свойствах Dial-Up соединения – «Проводник/Удаленный доступ к сети» (рис. 15).

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

Установка и запуск программы xSharez scanner

Установка программы xSharez scanner производится следующим образом:

  1.  С дискеты на «рабочий стол» копируется архив .
  2.  Архив «xSharez» разархивировывается в папку «xSharez».
  3.  Из папки «xSharez» копируется файл на «рабочий стол» и запускается для установки программы xSharez scanner.
  4.  После установки программы, она запускается – «Пуск/Программы/ xSharez scanner v 2.0.3.1./ xSharez scanner»

Работа в программе xSharez scanner

После запуска программы появляется основное окно программы – закладка «Сканер» (рис. 16).

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

Во время работы программы в нижней части окна будут видны: процент выполнения, время сканирования и количество найденных ресурсов. Скорость работы программы регулируется количеством одновременно запущенных потоков на закладке «Настройки».

Если сетевые ресурсы будут найдены, они начнут отображаться в виде «дерева» как это показано на рисунке 16.

Можно подключать сетевые диски, либо просто просматривать ресурсы в Windows Explorer («Проводнике») с помощью кнопок «Захват диска» и «Просмотр» соответственно.

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

Контекстное меню (Pop-Up menu) для дерева сетевых ресурсов содержит пункты, дублирующие описанные выше функции, а так же пункт «Копировать в буфер» сохраняющий в буфере обмена (Clipboard) информацию о ресурсах, найденных на том или ином компьютере. Более подробную информацию о компьютерах находящихся в сканируемом диапазоне IP адресов можно получить на закладке «Инфа» (рис. 17).

В окне «Инфа» во время работы программы отображается информация о компьютерах найденных в сканируемом диапазоне IP адресов.

На закладке «Инфа» указывается:

  •  IP – IP адрес удаленного компьютера;
  •  имя компьютера - NetBIOS имя;
  •  рабочая группа – указывает, к какой рабочей группе принадлежит компьютер;

  •  имя пользователя – учетная запись пользователя работающего в данный момент;
  •  ресурсы – количество сетевых ресурсов предоставляемых компьютером;
  •  ошибка доступа – номер ошибки доступа возникшей при попытке получить список ресурсов. «ОК» в строке столбца обозначает отсутствие ошибок;
  •  адрес адаптера – MAC адрес сетевой карты.

Также контекстное меню для каждой из строчек таблицы на закладке «Инфа» содержит следующие пункты:

  •  IP в буфер – копирует IP адрес компьютера в буфер обмена;
  •  строку в буфер - копирует всю информацию в буфер обмена;
  •  сохранить все - вызывает диалоговое окно предлагающее сохранить таблицу в виде текстового файла.

Таблица может быть отсортирована по любому столбцу нажатием на его заголовке.

Настройки для удобства работы с программой

Окно настроек данной программы представлено на рисунке 18.

На закладке «Настройки» в группе настроек «Скан» можно поменять количество одновременно выполняемых, параллельных запросов к IP адресам сканируемого диапазона (например, когда количество потоков будет равно 20-ти, программа будет посылать запросы 20-ти различным IP адресам одновременно). От этого напрямую зависит скорость сканирования. Допустимые значения - от 1 до 50 потоков.

Установить максимальное время ожидания ответа на NetBIOS запрос к каждому IP адресу (например, если таймаут равен 5-ти, то каждый поток после отправки запроса будет ожидать ответа 5 секунд). Получив ответ за более короткое время, программа обработает информацию и перейдет к следующему адресу раньше. В случае если ответ не поступит за это время, поток будет закрыт. Допустимые значения - от 1-й до 10-ти секунд.

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

В группе настроек «Общие» можно установить или снять флажки показывать подсказки, показывать предупреждения, свернуть при запуске.

Шрифт позволяет изменить шрифт, который будет использоваться в надписях, кнопках и окнах.

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


ЗАКЛЮЧЕНИЕ

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

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

Разработанный программный продукт xShrarez scanner для локальных вычислительных сетей позволяет:

  •  Сканировать диапазоны IP адресов (классы B и C) на наличие разделяемых ресурсов.
  •  Подключать найденные ресурсы в качестве сетевых дисков или просто просматривать их в Windows Explorer.
  •  Получать дополнительную информацию о сканируемых компьютерах – NetBIOS name, Workgroup, User name, Mac address.  
  •  Эффективно подбирать пароли к ресурсам с помощью дополнительно загружаемой с сайта разработчика программы - xIntruder.

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


ЛИТЕРАТУРА

  1.  Кандзюба С. П., Громов В. Н. Delphi 6. Базы данных и приложения. Лекции и упражнения. – К.: Издательство «ДиаСофт», 2001
  2.  Локальные вычислительные сети: Справочник в 3-х кн. – М.: Финансы и статистика, 1995
  3.  Нанс Б. Компьютерные сети. – М.: БИНОМ, 1996
  4.  Организация локальных сетей на базе персональных компьютеров. – М.: ИВК – СОФТ, 1991
  5.  Флинт Д. Локальные сети ЭВМ: архитектура, принципы построения, реализация. – М.: Финансы и статистика, 1983
  6.  Якубайтис Э. А. Информационные сети и системы: Справочная книга. – М.: Финансы и статистика, 1996
  7.  Фридман А. Л. Основы объектно-ориентированной разработки программных систем. – М.: Финансы и статистика, 2000
  8.  Информатика: Учеб. пособие для студ. сред. проф. учеб. заведений. – М.: Высш. шк., 2001
  9.  Информатика: Учебник. – 3-е перераб. изд. / Под ред. проф. Н. В. Макаровой. – М.: Финансы и статистика, 2001
  10.  Стен Шатт, «Мир компьютерных сетей», «BHV-Киев», 1996
  11.  Косарев В. П. И др. Компьютерные системы и сети: Учебное пособие. Под ред. В. П. Косарева и Л. В. Ерёмина – М.: Финансы и статистика, 1999
  12.  Симонович С. В., Евсеев Г.А. Занимательное программирование: Delphi. Книга для детей, родителей и учителей. – М.: АСТ-ПРЕСС КНИГА; Издательство «Развитие», 2003
  13.  Изучаем Delphi / А. Жуков. – СПб.: Питер, 2004


ПРИЛОЖЕНИЕ

Окна разработанного программного продукта xShrarez scanner

Закладка «Сканер» – основное окно программы.

Закладка «Инфа».

Закладка «Настройки»


 

А также другие работы, которые могут Вас заинтересовать

19856. Принцип действия атомно-силового микроскопа (АСМ). Схема реализации обратной связи в АСМ 878.5 KB
  Лекция 21 Принцип действия атомносилового микроскопа АСМ. Схема реализации обратной связи в АСМ. Параметры кантилеверов в АСМ. Контактные и бесконтактные методики измерения. Атомносиловой микроскоп АСМ был изобретён в 1986 году Гердом Биннигом Кэлвином Куэйтом и Кри...
19857. Принцип действия магнитно-силового микроскопа (МСМ). Квазистатические методики в МСМ 1.67 MB
  Лекция 22 Принцип действия магнитносилового микроскопа МСМ. Квазистатические методики в МСМ. Колебательные методики в МСМ. Магнитносиловой микроскоп МСМ был изобретен И. Мартином и К. Викрамасингхом в 1987 г. для исследования локальных магнитных свойств образцов. Дан...
19858. Принцип действия растрового электронного микроскопа. Схема РЭМ. Понятие увеличения в РЭМ 137.5 KB
  Лекция 23 Принцип действия растрового электронного микроскопа. Схема РЭМ. Понятие увеличения в РЭМ. Детектор электронов. Растровый электронный микроскоп РЭМ является одним из наиболее распространенных аналитических приборов используемых как в исследовательских ла
19859. Понятие контраста в растровом электронном микроскопе. Определение предельного разрешения РЭМ. Формирование топографического контраста в РЭМ 553 KB
  Лекция 24 Понятие контраста в растровом электронном микроскопе. Определение предельного разрешения РЭМ. Формирование топографического контраста в РЭМ. Для того чтобы на экране ЭЛТ можно было наблюдать картину отображения образца необходимо чтобы интенсивность свеч
19860. Физические основы рентгеновского микроанализа. Количественный рентгеновский микроанализ с использованием метода трех поправок 604 KB
  Лекция 25 Физические основы рентгеновского микроанализа. Количественный рентгеновский микроанализ с использованием метода трех поправок. Как было отмечено ранее при взаимодействии электронного пучка с образцом генерируется характеристическое рентгеновское излуче...
19861. Физические основы метода Оже-электронной спектроскопии. Необходимое оборудование. Модуляционная методика в Оже-электронной спектроскопии 189 KB
  Лекция 26 Физические основы метода Ожеэлектронной спектроскопии. Необходимое оборудование. Модуляционная методика в Ожеэлектронной спектроскопии. В прошлом семестре был подробно рассмотрен процесс Ожеэлектронной эмиссии. Кратко напомним схему образования Ожеэле
19862. Проведение количественного анализа в Оже-спектроскопии методом внешних эталонов и методом коэффициентов элементной чувствительности 255.5 KB
  Лекция 27 Проведение количественного анализа в Ожеспектроскопии методом внешних эталонов и методом коэффициентов элементной чувствительности. Растровая Ожеэлектронная спектроскопия. Метод ОЭС позволяет проводить как качественный так и количественный элементный
19863. Физические основы метода вторичной ионной масс-спектрометрии (ВИМС). Аппаратура, необходимая для реализации метода ВИМС 115 KB
  Лекция 28 Физические основы метода вторичной ионной массспектрометрии ВИМС. Аппаратура необходимая для реализации метода ВИМС. Возможности метода ВИМС. Массспектрометрический анализ нейтральных распыленных частиц. Метод вторичной ионной массспектрометрии ВИМС ...
19864. Метод резерфордовского обратного рассеяния (РОР). Форма спектра обратнорассеянных ионов. Аппаратура, необходимая для реализации метода РОР 194 KB
  Лекция 29 Метод резерфордовского обратного рассеяния РОР. Форма спектра обратнорассеянных ионов. Аппаратура необходимая для реализации метода РОР. Первая работа посвященная анализу образца с помощью обратнорассеянных ионов появилась в 1968 г. В основе метода лежит м