Компьютерные сети можно разделить по таким признакам:
по масштабу и территориальной распространённости:
глобальныесети, WAN(Wide Area network);
городскиесети, MAN(Metroplitan Area network);
кампусныесети, CAN(Campus Area network);
локальные вычислительные сети, LAN(Local area network);
персональные сети;
по способу взаимодействия между собой компьютеров:
клиент‐серверные;
одноранговые;
по типу соединения компьютеров между собой, топологии:
кольцо;
шина;
звезда;
Можно найти ещё классификационные признаки, но они уже будут выходить из указанных. Сеть должна решать определённые задачи, а исходя из задач, и проектируют структуру сети. Это: какие элементы в неё должны войти, где эти элементы будут находиться, и как будет осуществляться связь между ними.
Как следует из приведенной классификации, сети бывают глобальные и локальные. Глобальные сети—это прежде всего объединения большого количества сетей, которые в свою очередь сами могут быть большими и малыми. Поэтому в глобальных сетях используются разные аппаратные средства, протоколы передач данных и т.д.. В локальных же сетях не такая разнообразная инфраструктура, эти сети более закрыты, доступ в глобальным сетям ограничен, в том числе и из‐забезопасности.
По взаимодействию между компьютерами, программного обеспечения на них установленного, аппаратных средств сети бывают одноранговые или клиент‐серверные. Водноранговыхсетях, какправило, нетярковыраженнойролиукомпьютеров, всекакбыравны, инеисправностьодного из них не окажет существенного воздействия на сеть.
Вклиент‐серверныхсвязяхужеестьуправляющийкомпьютер—сервер, ккоторомуобращаютсяостальныекомпьютеры. Этоможетбытьибазаданных(сервербазыданных) идоменныйконтроллёр(компьютер, организующий сеть для контроля безопасности, разделения доступа к информации, создание индивидуальной рабочей среды для пользователя на любом компьютере домена), выделенный почтовый сервер и другие роли.
По способу подключений сейчас чаще всего в локальных сетях используется звезда. Обычно это могут быть роутеры, маршрутизаторы к портам которых подключаются пользовательские компьютеры и различные сервера. Остальные виды подключений используются довольно редко, в основном в специализированных сетях. Для подключения не нужно иметь никаких роутеров, компьютеры подключаются между собой специальными разъёмами.
Различие между шиной и кольцом в том, что по существу, шина—это разорванное кольцо. Обычно информация которую сообщает компьютер для другого снабжена адресом, эту информацию получит каждый компьютер, находящийся между передающим и принимающим компьютером. По адресу такой компьютер определит ему ли предназначена информация или нет. Если нет, то передаст следующему компьютеру.
В топологии звезда, каждый адрес однозначно связан с портом, к которому присоединён конкретный компьютер. Поэтому нет такого «гуляния» пакетов.
В самом простом случае, для создания компьютерной сети необходимо иметь простой концентратор, сами компьютеры, присоединённые к концентратору кабелем «витая пара». Непосредственно подключение производится разъёмами RJ‐45. Эточтокасаетсяфизическогосоединения. Длятогочтобысетьработала, необходимосделатьряднастроеквоперационнойсистеме.
20.Компьютерные коммуникации.
Компьютерные коммуникации
Для соединения компьютеров в сеть требуется сетевое оборудование и программное обеспечение.
Любая коммуникационная сеть должна включать следующие основные компоненты: сообщение, передатчик, средства передачи, приемник.
Передатчик - устройство, являющееся источником данных.
Приемник - устройство, принимающее данные.
Приемником могут быть компьютер, терминал или какое-либо цифровое устройство.
Сообщение - цифровые данные определенного формата, предназначенные для передачи. Это может быть файл базы данных, таблица, ответ на запрос, текст или изображение.
Средства передачи - физическая передающая среда и специальная аппаратура, обеспечивающая передачу сообщений.
Для передачи сообщений в вычислительных сетях используются различные типы каналов связи. Наиболее распространены выделенные телефонные каналы и специальные каналы для передачи цифровой информации. Применяются также радиоканалы и каналы спутниковой связи.
Особняком в этом отношении стоят локальные вычислительные сети (ЛВС), где в качестве передающей среды используются витая пара проводов, коаксиальный кабель и оптоволоконный кабель.
Информацию можно передавать в цифровом (узкополосном способе передачи) или аналоговом виде. Цифровой способ передачи позволяет в каждый момент времени использовать передающую среду только двумя пользователями и допускает нормальную работу только на ограниченном расстоянии (длина линии связи не более 1000 м).
Аналоговый способ передачи цифровых данных обеспечивает широкополосную передачу за счет использования в одном канале сигналов различных несущих частот. При аналоговом способе передачи цифровых данных происходят изменения одного из параметров несущего сигнала (амплитуда, фазы, частоты) по закону передаваемого сообщения.
В сетях высокого уровня иерархии - глобальных и региональных используется широкополосная передача, которая предусматривает работу для каждого абонента по своей частоте в пределах одного канала. Это обеспечивает взаимодействие большого количества абонентов при такой скорости передачи данных. Широкополосная передача позволяет совмещать в одном канале передачу цифровых данных, изображения и звука.
Типичным аналоговым каналом является телефонный канал. Когда абонент снимает трубку, то слышит равномерный звуковой сигнал - это и есть сигнал несущей частоты. Так как он лежит в диапазоне звуковых частот, то его называют тональным сигналом. Для передачи по телефонному накалу речи необходимо управлять сигналом несущей частоты - модулировать его. Воспринимаемые микрофоном звуки преобразуются в электрические сигналы, а то, в свою очередь, и модулируют сигнал несущей частоты. Припередачи цифровой информации управление производят информационные байты - последовательность единиц и нулей.
Чтобы обеспечить передачу информации из ЭВМ в коммуникационную среду, необходимо согласовывать сигналы с выхода ЭВМ с параметрами сигналов передаваемых по каналам связи. При этом должно быть выполнено как физическое согласование (форма, амплитуда и длительность сигнала), так и кодовые.
Технические устройства, выполняющие функции сопряжения ЭВМ с каналами связи называют адаптерами или сетевыми адаптерами. Один адаптер обеспечивает сопряжение с ЭВМ одного канала связи.
Кроме одноканальных адаптеров используются и многоканальные устройства - мультиплексоры передачи данных или просто мультиплексоры.
Мультиплексор передачи данных - устройство сопряжения ЭВМ с несколькими каналами связи.
Как уже говорилось ранее, для передачи цифровой информации по каналу связи необходимо поток битов преобразовывать в аналоговые сигналы, а при приеме информации из канала связи в ЭВМ выполнить обратное действие - преобразовывать аналоговые сигналы в поток битов, которые может обрабатывать ЭВМ. Такие преобразования выполняет специальное устройство - модем.
Модем - устройство, выполняющее модуляцию и демодуляцию информационных сигналов припередачи их из ЭВМ в канал связи и при приеме в ЭВМ из канала связи.
Наиболее дорогим компонентом вычислительной сети является канал связи. Поэтому при построении ряда вычислительных сетей стараются сэкономить на каналах связи, коммутируя несколько внутренних каналов связи на один внешний. Для выполнения функций коммутации используются специальные устройства - концентраторы (или хабы).
Концентратор - устройство, коммутирующее несколько каналов связи на один путем частотного разделения.
В ЛВС, где физическая передающая среда представляет собой кабель ограниченной длины, для увеличения протяженности сети используются специальные устройства - повторители.
Повторитель - устройство, обеспечивающее сохранение формы и амплитуды сигнала при передаче его на большее, чем предусмотрено данным типом физической передающей среды, расстояние.
Существуют локальные и дистанционные повторители. Локальные повторители позволяют соединять фрагменты сетей, расположенные на расстоянии до 50 м, а дистанционные - до 2000.
Сеть сложной конфигурации, представляющая собой соединение нескольких сетей, нуждается в специальном устройстве. Задача этого устройства - отправить сообщение адресату в нужную сеть. Называется такое устройство маршрутизатор.
Маршрутизатор или роутер - устройство, соединяющее сети разного типа, но использующее одну операционную систему.
С помощью двух адресов - адреса сети и адреса узла маршрутизатор однозначно выбирает определенную станцию.
Узел - любое устройство, непосредственно подключенное к передающей среде сети.
Например, необходимо установить связь с абонентом телефонной сети, находящимся в другом городе. Сначала набирается адрес телефонной сети этого города - код города. Затем - адрес узла этой сети - телефонный номер абонента. Функции маршрутизатора выполняет оператор АТС.
21.Алгоритмические языки высокого уровня.
Алгоритмические языки это проблемно-ориентированные языки, т.е. языки более высокого уровня (они абстрагированы от машинных команд конкретных ЭВМ). Они содержат более сложные операторы, чем элементарные машинные команды и позволяют упростить и ускорить процесс составления программ по сравнению с Ассемблером. Программы, написанные на этих языках, транслируются в эквивалентные программы с машинными кодами. Программа транслятор преобразует каждый оператор в эквивалентную последовательность машинных команд.
Проблемно-ориентированные языки имеют ряд положительных свойств:
1. меньшее время записи программ;
2. меньшую вероятность ошибки;
3. простота отладки;
4. независимость от конкретных ЭВМ и т.д.
Проблемно-ориентированными языками являются Фортран, предназначенный для решения инженерных и научных задач, Паскаль и Си, предназначенные для решения инженерных задач и задач системного программирования, БЕЙСИК и Кобол, предназначенные для решения экономических задач и т.д.
Использование алгоритмических языков существенно повышают производительность программиста, обеспечивают мобильность программ, использовать современные технологии и методологии программирования. Применение интегрированной среды позволяет автоматизировать процесс конструирования отладки и обработки программ.
Одним из наиболее часто используемых языков является Паскаль, который удобен для обучения принципам программирования с методической точки зрения. Он позволяет легко освоить логику и принципы программирования и позволяет создавать хорошо структурированные и легко модифицируемые программы.
Широкое распространение получили версии этих языков, разработанные фирмой Borland, при этом приставка Turbo (быстрый) является ее торговой маркой : Turbo Pascal, Turbo C, Borland Pascal и др.
22.Средство модульного программирования.
Суть модульного программирования состоит в разбиении сложной задачи на некоторое число более простых подзадач и составлении программ для решения достаточно независимо друг от друга. Модульность является одним из основных принципов построения программных проектов. В общем случае модуль - отдельная функционально законченная программная единица, некоторым образом идентифицируемая и объединяемая с другими, средство определения логически связанной совокупности объектов, средство их выделения и изоляции. Модуль является средством декомпозиции не только структур управления, но и структур данных. Этому в значительной мере способствовало развитие понятия "тип данных".
Модуль является единицей компиляции, хранения, а также единицей проектирования и раздельной разработки программного проекта коллективом разработчиков. Таким образом, модуль понимается как средство определения логически связанной совокупности объектов, средство их выделения и изоляции.
Создание модулей и использование их объектов в программах является одним из приемов экономичного программирования что обуславливается следующими обстоятельствами.
Во-первых, в модуле обычно определяются объекты, являющиеся носителями базовых понятий некоторой "предметной" области, так что модуль задает контекст этой предметной области. Поэтому программы, которые будут выполнять различные алгоритмы обработки в этой области, смогут воспользоваться готовыми и, что важно, одинаковыми определениями базовых объектов.
Во-вторых, и модули, и использующие их программы компилируются независимо (модуль должен быть откомпилирован раньше использующей его программы). Благодаря этому время компиляции большой программы использующей готовые модули, существенно сокращается, что важно при отладке программ, когда приходится их компилировать многократно.
Третьим важным свойством модуля является то, что он скрывает, "инкапсулирует" представление и реализацию экспортируемых им объектов, так что их возможные изменения в модуле (при его настройке или адаптации к новым аппаратным возможностям) не требуют никаких переделок пользовательских программ.
Все модули используют мнемонические имена для определяемых ими объектов (констант, переменных, типов и подпрограмм), что облегчает понимание их назначения и запоминание, удовлетворяет требованию наглядности текста программ.
Языки программирования, поддерживающие модульный подход, описывают модуль как программную единицу, состоящую из двух основных частей - спецификации (интерфейса) и реализации. В спецификации приводятся такие характеристики объектов модуля, которые необходимы и достаточны для использования этих объектов в других модулях и программах. Это позволяет использовать объекты модулей только на основе информации об их интерфейсе (не ожидая их полного описания). В реализационной части модуля описывается представление и алгоритмы обработки, связанные с теми или иными объектами модуля.
Модуль является одним из средств, облегчающих верификацию программ. Модуль, как средство создания абстракции, выделяет спецификацию и локализует сведения о реализации.
Модули служат также целям создания проблемно-ориентированного контекста и локализации машинной зависимости.
23.Классификация компьютерных вирусов.
Компьютерные вирусы являются одной из самых больших угроз для вашего компьютера, если вы работаете в сети Интернет. Для определения понятия «компьютерный вирус» существуют различные формулировки. Будем придерживаться следующей:
вирус – это программный код, встроенный в программу или документ, который проникает на компьютер для несанкционированного уничтожения, блокирования, искажения, копирования данных и сбора информации, или для заражения компьютеров через Интернет. Главная особенность вируса – это способность различными путями распространяться из одного файла в другой на одном компьютере или с одного компьютера на другой без ведома и согласия пользователя компьютера. Часто действия вирусов приводят к значительным нарушениям в работе компьютера или компьютерных сетей.
Вирусы принято классифицировать по следующим признакам:
среда обитания, поражаемая операционная система, особенности алгоритма работы, деструктивные возможности.
По среде обитания, иначе говоря, по поражаемым объектам вирусы делятся на файловые, загрузочные, сетевые вирусы и макровирусы.
• Файловые вирусы являются одними из самых распространенных типов компьютерных вирусов. Их характерной чертой является то, что они инициируются при запуске заражённой программы. Код вируса обычно содержится в исполняемом файле этой программы (файл с расширением.exe или.bat), либо в динамической библиотеке (расширение.dll), используемой программой. В настоящее время такие вирусы, как правило, представляют собой скрипты, написаны с использованием скриптового языка программирования (JavaScript, к примеру) и могут входить в состав веб-страниц. Они внедряются в исполняемые файлы, создают дубликаты файлов или используют особенности организации файловой системы для выполнения несанкционированных действий.
• Загрузочные вирусы записываются в загрузочный сектор диска и запускаются при запуске операционной системы, становясь ее частью.
• Сетевые вирусы, которые ещё называют сетевыми червями, имеют своим основным местом «проживания» и функционирования локальную сеть. Сетевой вирус, попадая на компьютер пользователя, самостоятельно копирует себя и распространяется по другим компьютерам, входящим в сеть. Они используют для своего распространения электронную почту, системы обмена мгновенными сообщениями (например, ICQ), сети обмена данными, а также недостатки в конфигурации сети и ошибки в работе сетевых протоколов.
• Макровирусы поражают документы, выполненные в некоторых прикладных программах, имеющих средства для исполнения макрокоманд. К таким документам относятся файлы, созданные с помощью пакета программ Microsoft Office, который поддерживает создание макросов на языке программирования Visual Basic for Application. Весьма полезно перед открытием незнакомого файла, созданного в таких программах, как Word или Excel, удостовериться, что поддержка макросов отключена (Сервис – Параметры – Безопасность макросов). Либо, для версии Microsoft Word 2010, в разделе "Безопасность программы" проверьте, включен ли режим защищенного просмотра файлов и предотвращения выполнения данных.
Однако, можно сказать, что современный вирус зачастую можно отнести сразу к нескольким группам вирусов. Такими сочетаниями являются, например, файловые загрузочные вирусы или файловые сетевые черви. Пример последнего: сетевой макро- вирус, который не только заражает документы, созданные в программах Word или Excel, но и рассылает свои копии по электронной почте.
Еще одним классификационным признаком является вид операционной системы, так как любой вирус ориентирован на заражение файлов или выполнение несанкционированных действий в определенной операционной системе.
По алгоритмам работы выделяют резидентные вирусы и вирусы, использующие стелс-алгоритмы или полиморфичность.
Резидентные вирусы при заражении компьютера постоянно остаются в оперативной памяти, перехватывая обращения операционной системы к объектам заражения, чтобы выполнить несанкционированные действия. Такие вирусы являются активными до полного выключения компьютера.
Применение стелс-алгоритмов базируется на перехвате запросов ОС на чтение или запись зараженных объектов. При этом происходит временное лечение этих объектов, либо замена их незараженными участками информации. Это позволяет вирусам скрыть себя в системе.
Также очень сложно обнаружить в системе вирусы, основанные на применении алгоритмов полиморфичности. Такие вирусы не содержат ни одного постоянного участка кода, что достигается за счет шифрования кода вируса и модификации программы-расшифровщика. Как правило, два образца одного и того же вируса не будут иметь ни одного совпадения в коде.
По деструктивным, то есть разрушительным возможностям выделяют опасные и неопасные вирусы.
Опасные вирусы выводят из строя операционную систему, портят или уничтожают информацию, хранящуюся на диске.
Неопасные вирусы практически не влияют на работоспособность компьютера и не понижают эффективность работы операционной системы, кроме увеличения дискового пространства, которое они занимают и уменьшения объёма свободной памяти компьютера.
Разработчики антивирусных программ обычно создают собственные классификации детектируемых вирусов. Например, «Лаборатория Касперского» (www.kaspersky.com) использует классификацию, основанную на разделении вирусов по типу совершаемых ими на компьютере пользователей действий.