- •Билет № 1
- •Билет № 2
- •Билет № 3
- •Билет № 4
- •Билет № 5
- •Билет № 6
- •1.1. Методами и способами зашиты информации от несанкционированного доступа являются:
- •Билет № 7
- •Билет № 8
- •1. Непосредственное воздействие на объект атаки.
- •1. На асои в целом через механизмы доступа.
- •2. На объекты асои.
- •3. На субъекты асои.
- •Билет № 9
- •Билет № 10
- •2. Файловый сервер
- •Технология «клиент-сервер»
- •Билет № 11
- •Билет № 12
- •Билет № 13
- •Билет № 14
- •Билет № 15
- •Билет № 16
- •Билет № 17
- •1. По характеру воздействия
- •2. По причине появления используемой ошибки защиты
- •Билет № 18
- •Билет № 19
- •Проблема потери результатов обновления:
- •Проблема незафиксированной зависимости (чтение “грязных” данных, неаккуратное считывание):
- •Билет № 20
- •Операция соединения по двум отношениям (таблицам)
- •Операция тета-соединения
- •Естественное соединение
- •Левое внешнее соединение
- •Полусоединение
- •Билет № 21
- •Билет № 22
- •Билет № 23
- •Билет № 24
- •Билет № 25
- •Билет № 26
- •Билет № 27
- •Билет № 28
- •Билет № 29
- •Билет № 30
- •Билет № 31
- •Билет № 32
- •Билет № 33
- •Билет № 34
- •Билет № 35
- •1. По характеру воздействия
- •2. По причине появления используемой ошибки защиты
- •Билет № 36
- •6. Основные элементы политики безопасности по «Оранжевой книге».
- •Билет № 37
- •Билет № 38
- •Билет № 39
- •Реализация запросов средствами sql (хранимые процедуры, функции, представления).
- •Билет № 41
- •Операция соединения по двум отношениям (таблицам)
- •Операция тета-соединения
- •Естественное соединение
- •Левое внешнее соединение
- •Полусоединение
- •Билет № 42
- •2. Файловый сервер
- •Технология «клиент-сервер»
- •Билет № 43
Каноническое – неизбыточное покрытие, состоящее из полной ФЗ, правая часть которой содержит только один атрибут. Канонические покрытия выполняют вспомогательную роль, при получении минимального покрытия и неизбыточного. Декомпозицию на таком покрытии не производят. Алгоритм получения:
применяя аксиомы проективности, все ФЗ приводят к виду «XA»;
из полученного множества удаляются все избыточные ФЗ;
в оставшихся ФЗ, удаляются все избыточные атрибуты.
Т.о., вновь полученное множество ФЗ, становится редуцированным.
Пример: F5 = {ABCD, ACBE, AC, CDK}
1 шаг |
2 шаг |
3 шаг |
4 шаг (мин) |
ABC ABD ACB ACE AC CDK |
ABC ABD AB AE AC CDK |
AC AD AB AE CDK |
ACDBE CDK |
F6 = {AC, AD, AB, CDK} – каноническое покрытие.
Оптимальное – покрытие, для которого не существует эквивалентного ему множества с еще меньшим числом вхождений атрибутных символов.
F7 = {ABCD, ABE, EAB}. (10 симв);
Оптимальное: F8 = { ECD, ABE, EAB} (9 симв)
Кольцевое – используется в качестве основания для декомпозиции на минимальном покрытии ФЗ с эквивалентными левыми частями. Множество ФЗ называется кольцевым покрытием множества F, если оно эквивалентно ему и представлено виде комплексных ФЗ. Например, для множества F9 = {AB, BA, BC, CD} кольцевое покрытие будет иметь вид: G1 = {(A; B) C; (C) D}. Кольцевые покрытия могут быть: неизбыточными, минимальными, редуцированными, оптимальными.
F= {A->BDC, B->ACE}. G={(B)->ACE, (A)->BCD} - неизб, G={(B)->AE, (A)->BCD} - редуцир,
G={(B, A)-> CE, D} – мин-но.
Создание объектов в языке C++. Распределение объектов в динамической памяти (куче) и автоматическое распределение памяти под объекты (на стеке). Сильные и слабые стороны.
В С++ распределение памяти для переменных осуществляется в стеке и в куче. Когда переменные распределяются в стеке, то при распределении вызывается их конструктор и при выходе их из области видимости вызывается их деструктор. Наибольшее распространение для объекта получил способ выхода из области видимости ч/з возврат функции. Например:
void main {
MyClass Object; // MyClass
SomeFunction(Object); // вызываем функцию SomeFunction с
// параметром типа MyClass
Return 0;}
В данном тексте сначала объект создается в стеке при объявлении (вызов конструктора), затем используется конструктор копирования для передачи параметра в функцию (в области видимости функции появляется экземпляр объекта типа MyClass), а затем переменная Object уничтожается (выход за пределы видимости – процедуры Main). Кроме того, деструктор вызывается в SomeFunction после возврата функции (оператора return).
Замечание: нет необходимости указывать ключевое слово auto перед объявлением имени переменной. Компилятор в его отсутствие автоматически определяет, что распределение идет на стеке. Пример аналогичных конструкций: 1) auto int a; 2) int a;
Второй способ – создание объекта в куче с использованием оператора new:
myClass *pObject = new MyClass;
someFunction(*pObject);
delete pObject;
Использование оператора new приводит к вызову конструктора класса myClass. Для передачи параметра в функцию надо разадресовать указатель pObject. Далее опять происходит вызов конструктора копирования и деструктора в теле функции. Delete pObject освобождает память. Если же определить функцию someFunction(myClass *c), в которую передается указатель на объект, то при ее использовании конструктор копии не будет вызван, т.к. new объект не создается. Поэтому и при возвращении управления функцией не вызывается деструктор.
Использование оператора new подразумевает необходимость освобождения памяти с помощью delete. Иначе происходит утечка памяти – область памяти, использованная для данного объекта, становится недоступной до окончания программы. Часто такие ошибки приводят к замедлению или даже завершению программы, они малозаметны. В случае обработки исключений необходимо дублировать операторы delete для всех используемых указателей, что не является идеальным решением. Кроме того, копирование указателей (Н-Р, при передаче их в функцию) усложняет управление памятью – может случайно удалить уже удаленный указатель. Для того, чтобы избежать таких ошибок, рекомендуется удаленные указатели устанавливать в NULL. Работа с указателями часто бывает небезопасна: передача указателя подразумевает возможность изменения объекта, что может быть нежелательно.
В свою очередь, использование автоматического распределения (в стеке) часто приводит к уменьшению производительности и доступной памяти: при каждой передаче объекта в функцию по значению создается копия этого объекта (конструктором копий), а при возврате управления функцией создается другая копия. Это занимает время и память. Во избежание этого рекомендуется использовать передачу указателя const. В этом случае копирование объекта не происходит, а объект не может быть изменен.
Методы и способы защиты информации от утечки по техническим каналам.
Защита речевой информации и информации, представленной в виде информативных электрических сигналов и физических полей, осуществляется в случаях, когда при определении угроз безопасности персональных данных и формировании модели угроз применительно к информационной системе являются актуальными угрозы утечки акустической речевой информации, угрозы утечки видовой информации и угрозы утечки информации по каналам побочных электромагнитных излучений и наводок, определенные на основе методических документов, утвержденных в соответствии с пунктом 2 Постановления Правительства Российской Федерации от 17 ноября 2007 г. N 781.
Для исключения утечки персональных данных за счет побочных электромагнитных излучений и наводок в информационных системах 1 класса могут применяться следующие методы и способы защиты информации:
использование технических средств в защищенном исполнении; использование средств защиты информации, прошедших в установленном порядке процедуру оценки соответствия;
размещение объектов защиты в соответствии с предписанием на эксплуатацию;
размещение понижающих трансформаторных подстанций электропитания и контуров заземления технических средств в пределах охраняемой территории;
обеспечение развязки цепей электропитания технических средств с помощью защитных фильтров, блокирующих (подавляющих) информативный сигнал;
обеспечение электромагнитной развязки между линиями связи и другими цепями вспомогательных технических средств и систем, выходящими за пределы охраняемой территории, и информационными цепями, по которым циркулирует защищаемая информация.
3.3. В информационных системах 2 класса для обработки информации используются средства вычислительной техники, удовлетворяющие требованиям национальных стандартов по электромагнитной совместимости, по безопасности и эргономическим требованиям к средствам отображения информации, по санитарным нормам, предъявляемым к видеодисплейным терминалам средств вычислительной техники.
3.4. При применении в информационных системах функции голосового ввода персональных данных в информационную систему или функции воспроизведения информации акустическими средствами информационных систем для информационной системы 1 класса реализуются методы и способы защиты акустической (речевой) информации.
Методы и способы защиты акустической (речевой) информации заключаются в реализации организационных и технических мер для обеспечения звукоизоляции ограждающих конструкций помещений, в которых расположена информационная система, их систем вентиляции и кондиционирования, не позволяющей вести прослушивание акустической (речевой) информации при голосовом вводе персональных данных в информационной системе или воспроизведении информации акустическими средствами.
Величина звукоизоляции определяется оператором исходя из характеристик помещения, его расположения и особенностей обработки персональных данных в информационной системе.
3.5. Размещение устройств вывода информации средств вычислительной техники, информационно-вычислительных комплексов, технических средств обработки графической, видео- и буквенно-цифровой информации, входящих в состав информационной системы, в помещениях, в которых они установлены, осуществляется таким образом, чтобы была исключена возможность просмотра посторонними лицами текстовой и графической видовой информации, содержащей персональные данные.
Основные виды топологий.
1
.
Шинная топология (шина) – наипростейшая
топология при которой все участники
среды передачи данных (СПД) подключаются
к единому кабелю. Под СПД понимается
ее физическая часть, т.е. участок кабеля.
При построении используется коаксиальный
кабель, концы которого закрываются
специальными заглушками – терминаторы.
Преимущества: min количество затрат на приобретение и прокладку физической СПД.
Недостатки: при выходе из строя одного узла в сети.. сеть недееспособна;
2
.
Звезда – каждый компьютер соединен
через кабель (луч) с центральным узлом,
через который проходят все данные.
Преимущества: работа сети не прерывается при аварии на любом из участков кабеля;
Недостатки: увеличение расходов на прокладку сети;
На данный момент топология типа звезда является самой распространенной при построении ЛВС.
3
.
Кольцо – каждый компьютер соединен
как с последующим, так и с предшествующим
компьютерами по замкнутому кольцу. В
сети на базе кольца данные проходят по
кольцу через каждый компьютер, пока
либо не достигнут компьютера-получателя,
который их перехватит, либо не вернутся
к отправителю, который их остановит.
Наиболее старый тип топологии.
Преимущества – простота реализации; отсутствие необходимости в дополнительном оборудовании;
Недостатки – выход из строя одного участка сети приводит к полной или частичной потере работоспособности.
4. Смешанная
– позволяет объединять между собой
несколько видов топологий. Самая
распространенная такак комбинация -
«шина – звезда».
В
озможность
комбинации топологий появляется
посредством установки дополнительного
оборудования, которое ставится на
границе этих технологий.
5. Полносвязная – все участки сети связываются со всеми отдельными участками кабелем сети или линиями передачи.
Преимущества – повышенная надежность за счет многократного резервирования, т.е. выход из строя любого или нескольких участков сети не приведет ни к какой потери функционирования. Так же не приведет к отказу сети, если откажет одно или несколько узлов сети. Недостатки – затратное мероприятие; (АТМ.)
Билет № 26
Разработка функциональной части автоматизированной системы управления (АСУ).
Как любая сложная система АСУ состоит из двух частей:
Функциональная часть.
Обеспечивающая часть.
Структура функциональной части определяется на основе анализа целей для обеспечения деятельности, для которой эта система создаётся, и включает в себя подсистемы и задачи, выбранные для автоматизации.
Обе задачи должны решаться во взаимодействии, поскольку обеспечивающая часть определяется функциональной частью, также как функциональная часть зависит от потенциальных возможностей обеспечивающей части.
Как любая сложная система АСУ состоит из двух частей: функциональная часть и обеспечивающая часть.
Структура функциональной части определяется на основе анализа целей для обеспечения деятельности, для которой эта система создаётся, и включает в себя подсистемы и задачи, выбранные для автоматизации.
Формирование структуры функциональной части
Данный процесс является итерационным и состоит из двух пунктов:
1. Формирование первоначального варианта или уточненного.
2. Оценка этого варианта.
После анализа результатов возвращаемся к пункту 1, в результате чего получаем уточнённую модель. Итерация заканчивается при достижении удовлетворяющей нас структуры. Для этого используется обобщённый метод формирования целей и функций. Для оценки выбирают критерии.
Результатом разработки функциональной части является многоуровневая структура функциональной части с описанием целей, функций системы и их взаимосвязи между собой. В общем случае получаем декартово произведение множества целей на множество функций, где для каждой пары цель-функция оценивают влияние этих компонентов на достижение цели.
Функции и компоненты СУБД.
СУБД – ПО, с помощью которого пользователи могут определять, создавать и поддерживать БД, а также осуществлять к ней контролируемый доступ.
Функции СУБД (первые 8 предложены Коддом – сервисы, которые должны быть реализованы в любой полномасштабной СУБД; остальные 2 – добавлены Коннолли):
1. Хранение, извлечение и обновление данных. СУБД должна предоставлять пользователям возможность сохранять, извлекать и обновлять данные в БД. Способ реализации этой функции должен позволять скрывать от конечного пользователя внутренние детали физической реализации системы (н-р, файловую организацию, используемые структуры хранения).
2. Каталог, доступный конечным пользователям. СУБД должна иметь доступный конечным пользователям каталог, в котором хранится описание элементов данных. Системный каталог (словарь данных) является хранилищем информации, описывающей данные в БД (это данные о данных, т.е. метаданные). Обычно в системном каталоге хранятся следующие сведения: 1) имена, типы и размеры элементов данных; 2) имена связей; 3) накладываемые на данные ограничения поддержки целостности; 4) имена санкционированных пользователей, которым предоставлено право доступа к данным; 5) внешняя, концептуальная и внутренняя схемы и отображения между ними; 6) статистические данные, например частота транзакций и счетчики обращений к объектам БД.
Преимущества применения системного каталога: 1) информация о данных может быть централизованно собрана и сохранена, что позволит контролировать доступ к этим данным, как и к любому другому ресурсу; 2) можно определить смысл данных, что поможет другим пользователям понять их предназначение; 3) упрощается сообщение, т.к. сохраняются точные определения смысла данных; 4) благодаря централизованному хранению избыточность и противоречивость описания отдельных элементов могут быть легко обнаружены; 5) внесенные в БД изменения могут быть запротоколированы; 6) последствия любых изменений могут быть определены еще до их внесения; 7) меры обеспечения безопасности могут быть дополнительно усилены; 8) появляются новые возможности организации поддержки целостности данных; 9) может выполняться аудит сохраняемой информации.
3. Поддержка транзакций. СУБД должна иметь механизм, который гарантирует выполнение либо всех операций обновления данной транзакции, либо ни одной из них, т.е. при сбое транзакции БД должна быть возвращена в непротиворечивое состояние.
4. Сервисы управления параллельностью. СУБД должна иметь механизм, который гарантирует корректное обновление БД при параллельном выполнении операций обновления многими пользователями.
5. Сервисы восстановления. СУБД должна предоставлять средства восстановления БД на случай какого-либо ее повреждения или разрушения.
6. Сервисы контроля доступа к данным. СУБД должна иметь механизм, гарантирующий возможность доступа к БД только санкционированных пользователей.
7. Поддержка обмена данными. СУБД должна обладать способностью к интеграции с коммуникационным ПО. Т.е., необходимо чтобы была возможность установить одну централизованную БД и использовать ее как общий ресурс для всех существующих пользователей, т.е. обеспечить распределенную обработку.
8. Службы поддержки целостности данных. СУБД должна обладать инструментами контроля за тем, чтобы данные и их изменения соответствовали заданным правилам. Целостность БД означает корректность и непротиворечивость хранимых данных. Она выражается обычно в виде ограничений или правил сохранения непротиворечивости данных, которые не должны нарушаться в базе.
9. Службы поддержки независимости от данных. СУБД должна обладать инструментами поддержки независимости программ от фактической структуры БД. Независимость от данных обычно достигается за счет реализации механизма поддержки представлений или подсхем.
10. Вспомогательные службы. Вспомогательные утилиты обычно предназначены для оказания помощи администратору БД в эффективном администрировании БД. Примеры подобных утилит: 1) утилиты импортирования - для загрузки БД из плоских файлов и утилиты экспортирования для выгрузки БД в плоские файлы; 2) средства мониторинга - отслеживание характеристик функционирования и использования БД; 3) программы статистического анализа - оценка производительности или степени использования БД; 4) инструменты реорганизации индексов - для перестройки индексов и обработки случаев их переполнения; 5) инструменты сборки мусора и перераспределения памяти для физического устранения удаленных записей с запоминающих устройств, объединения освобожденного пространства и перераспределения памяти в случае необходимости.
Компоненты СУБД (основные программные компоненты среды СУБД представлены на рисунке).
1. Процессор запросов. Основной компонент СУБД, который преобразует запросы в последовательность низкоуровневых инструкций для контроллера БД
2. Контроллер БД. Взаимодействует с запущенными пользователем прикладными программами и запросами. Принимает запросы и проверяет внешние и концептуальные схемы для определения тех концептуальных записей, которые необходимы для удовлетворения требований запроса. Затем вызывает контроллер файлов для выполнения поступившего запроса.
3. Контроллер файлов. Манипулирует предназначенными для хранения данных файлами и отвечает за распределение доступного дискового пространства. Создает и поддерживает список структур и индексов, определенных во внутренней схеме. Не управляет физическим вводом и выводом данных непосредственно, а передает запросы соответствующим методам доступа.
4. Препроцессор языка DML. Преобразует внедренные в прикладные программы DML-операторы в вызовы стандартных функций базового языка. Для генерации соответствующего кода должен взаимодействовать с процессором запросов.
5. Компилятор языка DDL. Преобразует DDL-команды в набор таблиц, содержащих метаданные. Затем эти таблицы сохраняются в системном каталоге, а управляющая информация – в заголовках файлов с данными.
6. Контроллер словаря. Управляет доступом к системному каталогу и обеспечивает работу с ним. Системный каталог доступен большинству компонентов СУБД.
Технологический скачок в программировании. Признаки технологического скачка. Исторические факты технологических скачков.
ТС это совокупность приёмов и средств, использование которых вместе резко повышает производительность труда программиста, позволяя реализовать более длинные и сложные программы за реальное время. Косвенные последствия ТС: упрощение сопровождения программы, а также её использования. Основные признаки технологического скачка:
Наличие новых приёмов, идей, средств в программировании.
Наличие новых технических средств или качественное изменение старых.
Увеличение производительности труда программиста – обычно, на порядок.
Смена технологии программирования.
Первым ТС в программировании стал переход от программирования в коде на алгоритмические языки в совокупности с появлением системы IBM/360. Простой переход на алгоритмические языки, без смены техники, не мог быть ТС, так как не привёл к увеличению производительности труда в программировании. Потребовалось появление системы IBM 360 с совершенно новой архитектурой ЭВМ, ОС, наличием нескольких трансляторов с разных языков. Резко сменилась технология разработки и отладки программ и, конечно, увеличилась производительность труда. Следующим ТС было появление ПЭВМ. Они принесли новые принципы архитектуры ЭВМ. На рынке появились ЭВМ различных конструкций: от чисто игровых – Spectrum, до профессиональных – Risc – архитектура: это машины клона Sun, IBM RISC 6000. Некоторое время полагали, что ПЭВМ так и останется в «любительской» сфере. Жизнь, однако, показала другое: произошло внедрение ПЭВМ в производство. Появление ПЭВМ в производстве привело к широкому использованию сетевых технологий. Сетевое взаимодействие большого количества машин поставило на повестку дня решение задач, которые плохо решались в рамках процедурного программирования. ООП является ТС в программировании. Можно выделить все признаки ТС: новые приёмы в технологии, качественное изменение техники. Смена в технологии программирования, увеличение производительности труда
Проектирование средств защиты информации. Вертикальная структура.
Для повышения надёжности защиты информации в сети необходимо защищать её на каждом уровне модели OSI.
На физическом уровне, который отвечает за кодирование передаваемых сигналов в среде передачи данных, то есть за преобразование электрических сигналов в биты данных. В здании предприятия используется экранированная витая пара, что защищает от искажения передаваемой информации и возникновения электрических полей, которые обеспечивают возможность считывания передаваемых данных с помощью специальных устройств. Кабеля не следует прокладывать вблизи окон, для избегания вероятности считывать передаваемую информацию, находясь за пределами здания.
На канальном уровне необходимо предусмотреть привязку к конкретным портам коммутаторов MAC-адресов, что устраняет угрозу подмены рабочего места пользователя. После выполнения такой операции к порту 1 коммутатора будут иметь доступ только компьютеры с адресами сетевых интерфейсов MAC1. Устройства с другими сетевыми картами уже не смогут получить доступ к порту данного коммутатора.
Сетевой уровень отвечает за маршрутизацию и доставку пакета данных адресату. На этом уровне для лучшего функционирования можно произвести сегментацию сети, так как, некоторым пользователям нужен изолированный сегмент сети (к примеру, оператору нашей системы необходима отдельная подсеть, чтобы не допустить пользователей из сети предприятия к ресурсам данной рабочей станции). С помощью маршрутизатора Cisco 1841 сеть была разбита на 3 VLAN сети: на подсеть серверов, подсеть компьютера, работающего с нашей системой и остальную подсеть предприятия.
На транспортном уровне необходимо организовать списки доступа (ACCESS – листы) аналогичные листам доступа на сетевом уровне, однако, здесь можно указывать не адреса сетей, а адреса конкретных сервисов, то есть прописать какому адресу разрешается доступ к услугам сервиса. Такие списки доступа можно настроить на серверах. Обязательно в конце любого ACCESS – листа необходимо указать «Все остальное запретить».
Прикладной уровень
Это уровень сетевой модели, отвечающий за взаимодействие пользовательского приложения и сетью. На данном уровне при доступе к приложению применяется Windows аутентификация на сервере (проверка наличия данного пользователя в списке Active Directory, проверка достоверности имени и пароля) пользователей, и в соответствии с группой, к которой относится пользователь, ему предоставляются соответствующие права на клиенте и на сервере (доступ к соответствующим данным).
Сюда также можно отнести аудит регистрации в системе, при котором регистрируются события успеха или отказа при входе пользователя в систему, а так же аудит доступа к объектам в частности к каким таблицам обращался пользователь и какие данные изменял. Аудит осуществляется средствами СУБД и средствами контроллера домена Active Directory.
Разбиение сети на подсети.
Существуют ситуации, когда стандартной классификации адресов не хватает для организации каналов связи между всеми сегментами сети. Наиболее часто данная ситуация возникает при большой территориальной распределенности сегментов сети предприятия с малым количеством узлов. Если сумма узлов нескольких сегментов меньше максимальной емкости классической сети получить отдельный диапазон адресов для каждого из сегментов не представляется возможным. Выходом из данной ситуации является отступление от классификации адресного пространства и разделение классических диапазонов на несколько отдельных независимых участков. В этом случае получаемый диапазон адресов называется подсетью. При бесклассовой адресации адрес будет состоять из 3-х частей:
,
где
идентификатор
сети,
идентификатор
подсети,
идентификатор
узла.
При этом указатель подсети выбирается из части классического адреса, отнесенный к идентификатору узла. Для того, чтобы определить, какая часть адреса относится к номеру подсети, а какая является номером узла, используют дополнительный 32-битный идентификатор, называемый маска подсети со структурой, сходной с IP-адресом. При сопоставлении маски и адреса к номеру подсети в адресе будут относиться те биты, соответствующие которым биты маски имеют значение 1. Соответственно, к номеру узла будет относиться та часть, соответствующие биты маски которой равны 0.
С помощью такой системы любую классическую сеть можно разделить на количество подсетей, кратных числу 2.
Билет № 27
Этапы и принципы формирования логистических систем. Декомпозиция, синтез Функции и архитектура распределенных баз данных.
Распределенная СУБД (СУРБД) – программный комплекс, предназначенный для управления распределенными БД и позволяющий сделать распределенность информации прозрачной для конечного пользователя. Типичная СУРБД должна обеспечивать, по крайней мере тот же набор функциональных возможностей, что и централизованная СУБД.
Функции СУБД: обеспечивает хранение информации; должна позволять организовывать структуры данных; обеспечивать эффективный доступ к данным и модернизировать их; удаление, добавление, редактирование; обеспечивает санкционированный доступ к данным; позволяет создавать пользовательский интерфейс; позволяет осуществлять управление транзакциями, при этом обеспечивает поддержание основных свойств транзакций. + СУРБД должна предоставлять следующий набор функциональных возможностей:
Расширенные службы установки соединений должны обеспечивать доступ к удаленным сайтам позволять передавать запросы и данные между сайтами, входящими в сеть.
Расширенные средства ведения каталога, позволяющие сохранять сведения о распределенности данных в сети.
Средства обработки распределенных запросов, включая механизмы оптимизации запросов и организации удаленного доступа.
Расширенные функции управления параллельностью, позволяющие поддерживать целостность реплицируемых данных.
Расширенные функции восстановления, учитывающие возможность отказов работ отдельных сайтов и отказов линий связи.
Архитектура СУРБД
Трехуровневая архитектура ANSI-SPARС для СУБД представляет собой типовое решение для централизованных СУБД.
Один из примеров рекомендуемой архитектуры включает: набор глобальных внешних схем; глобальную концептуальную схему; схему фрагментации и схему распределения; набор схем для каждой локальной СУБД, отвечающих требованиям трёхуровневой архитектуры ANSI-SPARС.
Глобальная концептуальная схема. Представляет собой логическое описание всей БД, представляющее её так, как будто она не является распределённой. Этот уровень СУРБД соответствует концептуальному уровню архитектуры ANSI-SPARС содержит определения сущностей, связей, требования защиты и ограничений поддержки целостности информации.
Схемы фрагментации и распределения. Схемы фрагментации - описание того, как данные должны логически распределяться по разделам.
Локальные схемы. Локальная схема отображения исп-ся для отражения фрагментов в схеме распр-ния во внутренние объекты локальной БД. Эти элементы являются зависимыми от типа используемой СУБД и служат основой для построения гетерогенных СУРБД.
Архитектуры OLAP.
В MOLAP все данные хранятся в виде упорядоченных многомерных массивов. Такие массивы подразделяются на гиперкубы и поликубы. В гиперкубе все хранимые в кубе меры (ячейки) имеют одинаковую мерность, то есть одинаковое количество измерений. В поликубе каждая мера хранится с собственным набором измерений, и все связанные с этим сложности обработки перекладываются на внутренние механизмы системы. Физически данные хранятся в «плоских» файлах. При этом куб представляется в виде одной плоской таблицы, в которую построчно вписываются все комбинации членов всех измерений с соответствующими им значениями мер. Достоинства:
Недостатки
ROLAP
Множество таблиц измерений, ссылки на которые обычно содержит таблица фактов. MOLAP — это классическая форма OLAP, так что её часто называют просто OLAP. Она использует суммирующую БД, специальный вариант процессора пространственных БД и создаёт требуемую пространственную схему данных с сохранением как базовых данных, так и агрегатов. ROLAP работает напрямую с реляционным хранилищем, факты и таблицы с измерениями хранятся в реляционных таблицах, и для хранения агрегатов создаются дополнительные реляционные таблицы. HOLAP использует реляционные таблицы для хранения базовых данных и многомерные таблицы для агрегатов. Особым случаем ROLAP является ROLAP реального времени (Real-time ROLAP — R-ROLAP). В отличие от ROLAP в R-ROLAP для хранения агрегатов не создаются дополнительные реляционные таблицы, а агрегаты рассчитываются в момент запроса. При этом многомерный запрос к OLAP-системе автоматически преобразуется в SQL-запрос к реляционным данным. Каждый тип хранения имеет определённые преимущества, хотя есть разногласия в их оценке у разных производителей. MOLAP лучше всего подходит для небольших наборов данных, он быстро рассчитывает агрегаты и возвращает ответы, но при этом генерируются огромные объёмы данных. ROLAP оценивается как более масштабируемое решение, использующее к тому же наименьшее возможное пространство. При этом скорость обработки значительно снижается. HOLAP находится посреди этих двух подходов, он достаточно хорошо масштабируется и быстро обрабатывается. Архитектура R-ROLAP позволяет производить многомерный анализ OLTP-данных в режиме реального времени.
|
Понятие модуля. Модуль как средство борьбы со сложностью программной системы. Принципы проектирования модулей. Модули в языке C++. Модульность и инкапсуляция как связанные понятия.
Приступая к разработке каждой программы, следует иметь ввиду, что она, как правило, является большой системой, поэтому нужно принять меры для ее упрощения. Для этого программу разрабатывают по частям, которые называются программными модулями. Программный модуль - это любой фрагмент описания процесса, оформляемый как самостоятельный программный продукт, пригодный для использования в описаниях процесса. Это означает, что каждый программный модуль программируется, компилируется и отлаживается отдельно от других модулей программы, и тем самым, физически разделен с другими модулями программы. Более того, каждый разработанный программный модуль может включаться в состав разных программ, если выполнены условия его использования, декларированные в документации по этому модулю. Т.о., программный модуль может рассматриваться и как средство борьбы со сложностью программ, и как средство борьбы с дублированием в программировании.
Модульное программирование является воплощением в процессе разработки программ обоих общих методов борьбы со сложностью и обеспечение независимости компонент системы, и использование иерархических структур. Для воплощения первого метода формулируются определенные требования, которым должен удовлетворять программный модуль, т.е. выявляются основные характеристики "хорошего" программного модуля. Для воплощения второго метода используют древовидные модульные структуры программ (включая деревья со сросшимися ветвями).
Модульность – это свойство системы, которая была разложена на внутренне связные, но слабо связанные между собой модули.
Т.о., принципы абстрагирования, инкапсуляции и модульности являются взаимодополняющими. Объект логически определяет границы определенной абстракции, а инкапсуляция и модульность делают их физически незыблемыми.
Модули в языке C++ позволяют программисту оформлять собственные функции, константы и типы данных в независимые программные единицы, которые могут быть использованы как в программах, так и в других модулях. Желательно, чтобы набор функций, констант и типов данных в модуле был логически связан. Например, функции и типы данных для работы с комплексными числами следует размещать одном модуле, а функции и типы данных с матрицами в другом.
При создании модуля используются два типа файлов: с телом модуля (*.c) и заголовочный (*.h). Имена файлов относительно одного модуля должны совпадать.
В файле тела модуля описываются функции, а также константы и типы данных, которые эти функции используют. Все описанные в теле модуля константы и типы данных не будут доступны в используемой этот модуль программе. Поэтому экспортируемые типы данных и константы описываются в заголовочном файле, который может быть включен в код программы. Для того, чтобы экспортировать функции необходимо использовать оператор extern.
Для того, чтобы не было проблем с компиляцией модулей, все файлы с телом этих модулей помещают в тот же проект что и основную программу. В тоже время не следует в проект помещать заголовочные файлы. Пример реализации модуля. Заголовочный файл
// complex.h - Пример реализации заголовочного файла модуля.
// Модуль содержит тип данных комплексного числа,
// а также функцию вывода комплексного числа на экран.
typedef struct {
double Re, Im;
} complex;
extern void OutComplex(complex);
Для использования модуля в программе достаточно включить в текст программы директиву перепроцессора #include с указанием соответствующего заголовочного файла. В отличие от стандартных модулей собственные модули указываются в двойных кавычках.
Уголовный кодекс РФ и информационная безопасность.
Преступления в сфере компьютерной информации регламентируются следующими статьями УК:
Статья 272. Неправомерный доступ к компьютерной информации
1. Неправомерный доступ к охраняемой законом компьютерной информации (информации на машинном носителе, в ЭВМ, системе ЭВМ или их сети), если это деяние повлекло уничтожение, блокирование, модификацию либо копирование информации, нарушение работы ЭВМ, системы ЭВМ или их сети, - наказывается штрафом в размере от двухсот до пятисот МРОТ или в размере заработной платы или иного дохода осужденного за период от двух до пяти месяцев, либо исправительными работами на срок от шести месяцев до одного года, либо лишением свободы на срок до двух лет.
2. То же деяние, совершенное группой лиц по предварительному сговору или организованной группой либо лицом с использованием своего служебного положения, системе ЭВМ или их сети, - наказывается штрафом в размере от пятисот до восьмисот МРОТ или в размере заработной платы или иного дохода осужденного за период от пяти до восьми месяцев, либо исправительными работами на срок от одного года до двух лет, либо арестом на срок от трех до шести месяцев ???, либо лишением свободы на срок до пяти лет.
Статья 273. Создание, использование и распространение вредоносных программ для ЭВМ
1. Создание программ для ЭВМ или внесение изменений в существующие программы, заведомо приводящих к несанкционированному уничтожению, блокированию, модификации либо копированию информации, нарушению работы ЭВМ, системы ЭВМ или их сети, а также использование либо распространение таких программ или машинных носителей с такими программами - наказываются лишением свободы на срок до трех лет со штрафом в размере от двухсот до пятисот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от двух до пяти месяцев.
2. Те же деяния, повлекшие по неосторожности тяжкие последствия, - наказываются лишением свободы на срок от трех до семи лет.
Статья 274. Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети
1. Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети лицом, имеющим доступ к ЭВМ, системе ЭВМ или их сети, повлекшее уничтожение, блокирование или модификацию охраняемой законом информации ЭВМ, если это деяние причинило существенный вред, - наказывается лишением права занимать определенные должности или заниматься определенной деятельностью на срок до пяти лет, либо обязательными работами на срок от ста восьмидесяти до двухсот сорока часов, либо ограничением свободы на срок до двух лет.
2. То же деяние, повлекшее по неосторожности тяжкие последствия, - наказывается лишением свободы на срок до четырех лет.
Статья 183. Незаконные получение и разглашение сведений, составляющих коммерческую, налоговую или банковскую тайну
1. Собирание сведений, составляющих коммерческую, налоговую или банковскую тайну, путем похищения документов, подкупа или угроз, а равно иным незаконным способом -наказывается штрафом в размере до 80 т. руб. или в размере з/п или иного дохода осужденного за период 1-6 месяцев либо лишением свободы на срок до 2 лет.
2. Незаконные разглашение или использование сведений, составляющих коммерческую, налоговую или банковскую тайну, без согласия их владельца лицом, которому она была доверена или стала известна по службе или работе, - наказываются штрафом в размере до 120 т. руб. или в размере з/п или иного дохода осужденного за период до 1 года с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до 3 лет либо лишением свободы на срок до 3 лет.
3. Те же деяния, причинившие крупный ущерб или совершенные из корыстной заинтересованности, - наказываются штрафом в размере до 200 т. руб. или в размере з/п или иного дохода осужденного за период до 18 месяцев с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до 3 лет либо лишением свободы на срок до 5 лет.
4. Деяния, предусмотренные частями второй или третьей настоящей статьи, повлекшие тяжкие последствия, - наказываются лишением свободы на срок до 10 лет.
Статья 138. Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений
1. Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений граждан - наказывается штрафом в размере до 80 т. руб. или в размере з/п или иного дохода осужденного за период до 6 месяцев, либо обязательными работами на срок 120-180 часов, либо исправительными работами на срок до 1 года.
2. То же деяние, совершенное лицом с использованием своего служебного положения или специальных технических средств, предназначенных для негласного получения информации, - наказывается штрафом в размере 100-300 т. руб. или в размере з/п или иного дохода осужденного за период 1-2 лет, либо лишением права занимать определенные должности или заниматься определенной деятельностью на срок 2-5 лет, либо обязательными работами на срок 180-240 часов, либо арестом на срок 2-4 месяцев.
3. Незаконные производство, сбыт или приобретение в целях сбыта специальных технических средств, предназначенных для негласного получения информации, - наказываются штрафом в размере до 200 т. руб. или в размере з/п или иного дохода осужденного за период до 18 месяцев, либо ограничением свободы на срок до 3 лет, либо лишением свободы на срок до 3 лет с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до 3 лет.
Технология FDDI.
Стандарт IEEE-802.9. Для построения сети FDDI используют оптоволоконный кабель. С помощью данного кабеля можно построить сеть с любой скоростью доступа. Для подключения к оптоволоконному кабелю используется внешний трансивер. Преобразование электрической энергии в световую производится в специальных излучателях, обратное преобразование – в специальных фотодетекторах.
Технология FDDI использует маркерный метод доступа с максимальной скоростью до 200 Мбит/с.
Технические средства FDDI.
Физически сеть FDDI состоит их двух физических колец, поэтому эксплуатация сети может производиться 2 способами. При использовании устройств класса A оборудование подключается и использует оба кольца одновременно (одно - на прием, другое – на передачу). В этом случае общая скорость сети может достигать 200 Мбит/с (100 – на прием, 100 – на передачу). Основным недостатком такого метода является прекращение работы всех колец при повреждении любого участка кабеля.
Устройства класса B подключаются к обоим кольцам, но используют для работы только одно из них (второе кольцо используется как горячий резерв). В случае автоматического повреждения первого кольца оборудование автоматически переходит на использование второго. Максимальная скорость – 100 Мбит/с. Плюс: 100%-ное резервирование.
Технология FDDI в основном используется для построения основной высокоскоростной магистрали сети, а так же используется для построения backbone.
В качестве метода доступа используется маркерный метод без приоритетов.
Стандартный маркер в технологии FDDI имеет вид:
Преамбула |
SD |
FC |
ED |
Преамбула используется для синхронизации между собой передающего и принимающего коммутатора. При передаче на большие расстояния возможны потери битов в фрейме, что ведет к ситуации неузнаваемости фреймов получателем, поэтому в любой трансивер в технологии FDDI включена функция сглаживания, позволяющая корректировать преамбулу маркера перед передачей маркера получателю.
SD – флаг начала маркера
ED – флаг конца маркера
FC – поле типа маркера (фреймы) – с помощью него определяется размерность МАС-адресов в сети и класс используемого оборудования.
Билет № 28
Общая классификация систем. Классификация по степени организованности.
Системы разделяются по признакам в зависимости от рассматриваемой задачи:
по виду отображаемого объекта (экономические, технические, биологические, промышленные и др.);
по виду научного направления (математические, физические, химические и др.);
по виду формального аппарата представления системы (стохастические, детерминированные);
по виду целеустремленности (открытые, закрытые);
по сложности структуры и поведения (простые, сложные);
по степени организованности (хорошо ~, плохо ~ и само организующиеся).
Классификация по степени организованности:
Хорошо организованные – предсказуемые системы, с четко описанным критерием функционирования (как правило, математически описаны), легко управляемые.
Примером является модель солнечной системы. Солнечная система имеет возмущающие воздействия и шумы. Для описания движения планет вокруг солнца, например, метеориты и кометы не имеют большого значения, а следовательно не существенны, кроме того, состояние планет можно определить на несколько лет вперед.
Плохо организованные (диффузные) - перед такими системами не ставится задача изучения всех компонентов и связей между системой и целями системы. Очень часто статистические данные отсутствуют, и приходится рассматривать вероятность вероятностей – доверительную вероятность. Диффузные системы широко используются, в виду того, что не всегда можно создать хорошо организованные системы (система массового обслуживания).
Самоорганизующиеся - в данных системах используется подход, позволяющий исследовать наименее изученные процессы. Невозможно представить, как поведёт себя система, поэтому её представляют в виде самоорганизующейся системы. Выделяют самоприспосабливающиеся, самовосстанавливающиеся и самовоспроизводящиеся системы (популяция животных, биосфера и т.д.).
Целостность базы данных. Средства обеспечения целостности средствами SQL.
Основное из требований предъявляемых к БД – надежность хр-ния инф-ции, что в свою очередь невозможно без согласованности данных. Целостность базы – взаимная согласованность отдельных фрагментов данных и их корректность. Полагая также, что согласованность имеет место, когда все порции данных в БД единообразно смоделированы и включены в систему, а данные корректны, если они достоверны, точны и значимы, сформ-ем ниже ряд правил, к-ые позволяют поддерживать согласованность и корректность данных в БД. Сущ-ют 2 осн. правила поддержания целостности БД:
1) Целостности объектов. В частности оно задает ограничение на значения атрибутов, которые должны принадлежать определенному домену и накладывает запрет на неопределенные значения атрибутов первичного ключа отношения. Первичный ключ – минимальный идентификатор, который используется для уникальной идентификации картежа. Это значит, что никакое подмножество первичного ключа не может быть достаточным для уникальной идентификации картежей. Если допустить присутствие определителя NULL в любой части первичного ключа, это равноценно утверждению, что не все его атрибуты необходимы для уникальной идентификации картежей, что противоречит определению первичного ключа.
2) Ссылочная целостность. Значения внешних ключей отношения должны быть адекватны значениям соответствующих первичных ключей. С целью обеспечения этой согласованности накладывается целый ряд ограничений на выполнение основных операций (удаление, добавление, редактирование) над кортежами отношений.
Так, например, для избежания несогласованности при выполнении операции удаления следует выполнить одну из следующих операций:
Запретить удаление записи в ссылочном отношении, если в ссылающемся отношении есть кортеж, в котором значение внешнего ключа совпадает со значением первичного ключа в ссылочном отношении.
Выполнить каскадное удаление. При удалении записи в ссылочном отношении, удалить все соответствующие записи в ссылающемся отношении.
При выполнении операции редактирования следует:
Запретить обновление первичного ключа записи в ссылочном отношении, если в ссылающемся отношении есть кортеж, в котором значение внешнего ключа совпадает со значением первичного ключа в ссылочном отношении.
Выполнить каскадное редактирование. При редактировании записи в ссылочном отношении, отредактир-ть все соответствующие записи в ссылающемся отношении.
При выполнении операции добавления следует: запретить добавление записи в ссылающееся отношение, если в ссылочном отношении нет кортежа, в к-ом значение первичного ключа совпадает со значением внешн. ключа в ссылающемся отношении.
Кроме 2-х основных правил существует корпоративное ограничение целостности - дополнительные правила поддержки целостности данных, определяемые пользователями или администратором БД. Например, если в одном отделении не может работать больше 20 сотрудников, то пользователь может указать это правило, а СУБД следить за его выполнением.
Понятие алгоритмического языка. Основные достоинства и недостатки программирования на алгоритмическом языке.
Алгоритмический язык (АЯ) – формализованный язык для однозначной записи алгоритмов. Состоит из набора символов (алфавит алгоритмического языка), синтаксических правил и семантических определений; теоретическая основа языков программирования. Нередко термины «алгоритмический язык» и «язык программирования» используют как синонимы.
При появлении компьютеров программы писались в «машинных кодах» - т.е. сразу на языке компьютера. При этом кодирование занимало очень много времени, а выигрыш достигался только за счет того, что комп. умел выполнять все эти простые действия очень быстро. Но таким способом м. было решать только относительно простые вычислительные задачи.
Ввиду ограниченного числа команд процессора, многие комбинации повторялись в разных программах. В первую очередь это относилось к стандартным функциям и часто используемым действиям. Возникла разумная идея: сделать некий набор макрокоманд, который бы включал такие часто используемые комбинации. Отсюда пошли языки программирования. Т.е. была написана специальная программа «транслятор», которая получала программу, написанную на каком-то языке программирования и «переводила» ее на язык компьютера.
Помимо языков «низкого уровня», которые автоматизировали кодирование стандартных машинных операций, появились языки "высокого уровня", которые были уже намного ближе как к естественному человеческому, так и к математическому языку. Это дало возможность использовать компьютеры во все больших областях. Стали проявляться различные часто используемые функции, но уже более сложные и выполняющие какие-то прикладные задачи. Они выделялись в библиотеки стандартных функций, что позволяло программистам использовать уже готовые подпрограммы.
Каждый из этих шагов облегчал жизнь программистам и позволял писать более сложные программы, но в то же время приводил к тому, что эти программы работали медленнее и занимали больше места. Все дело в том, что алгоритм программы, как правило, не линейный, а включает циклы, ветвления и т.п. Поэтому, когда комп. транслирует написанную на языке высокого уровня программу в машинный код, то код получается далеко не оптимальным, причем, чем «выше» язык, на котором программа писалась изначально, тем ниже производительность готовой программы.
Преимущества АЯ: 1) алфавит алгоритмического языка значительно шире алфавита машинного языка, что существенно повышает наглядность текста программы; 2) набор операций не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса; 3) формат предложений достаточно гибок и удобен для использования, что позволяет с помощью одного предложения задать достаточно содержательный этап обработки данных; 4) требуемые операции задаются с помощью общепринятых математических обозначений; 5) данным в алгоритмических языках присваиваются индивидуальные имена, выбираемые программистом; 6) в языке может быть предусмотрен значительно более широкий набор типов данных по сравнению с набором машинных типов данных. АЯ в значительной мере являются машинно-независимыми. Они облегчают работу программиста.
(-): 1) при программ-нии в коде нах-ся т. программа, которая непосредственно запускается на машине программистом или инженером по сопровождению. 2) программирование на АЯ требует наличия трансляторов, редакторов и загрузчиков. 3) на функционирование трех указанных выше программ требуется машинное время и другие ресурсы. 4) программы написанные в ручную на машинном языке короче и работают быстрее тех, что генерирует транслятор.
Классы безопасности по «Оранжевой книге».
"Критерии оценки безопасности компьютерных систем" Министерства обороны США открыли путь к ранжированию ИС по степени надежности. В "Оранжевой книге" определяется четыре уровня надежности (безопасности) - D, C, B и A. Уровень D - системы, признанных неудовлетворительными, т.е. к которым не предъявляется никаких требований. В наст. время он пуст. При переходе от уровня C к A к надежности систем предъявляются все более жесткие требования. Уровни C и B подразделяются на классы (C1, C2, B1, B2, B3) с постепенным возрастанием надежности. Т.о., всего имеется 6 классов безопасности - C1, C2, B1, B2, B3, A1.
D1 – неудовлетворительная безопасность; C1, С2 – произвольное управление доступом; B1, B2, B3 – принудительное управление доступом; A1 – верифицированная защита. Уровни В и А – для гос.тайны США, продажа этих опции какому-либо др. гос-ву запрещена законодательством США; классы С1и С2 относятся к коммерческой тайне. При переходе к каждому следующий классу требования только добавляются.
Класс C1 - вычислительная база д. управлять доступом именованных польз-лей к именованным объектам. Механизм управления (права для владельца/группы/прочих, списки управления доступом) д. позволять специфицировать разделение файлов м/у индивидами и/или группами. Класс C2 - в дополнение к C1, права доступа должны гранулироваться с точностью до польз-ля. Механизм управления должен ограничивать распространение прав доступа - только авторизованный пользователь, например владелец объекта, может предоставлять права доступа другим пользователям. Все объекты должны подвергаться контролю доступа. Класс B1 – в дополнение к С2 подразумевает использование меток безопасности ассоциируемыми с каждым субъектом; кроме того должна быть обеспечена взаимная изоляция процессов, а так же реализация принудительного управления доступом всех субъектов ко всем объектам. должна существовать неформальная или формальная модель политики безопасности, исходные и объектные коды должны быть проанализированы и тестированы. Класс B2 - в дополнение к В1 метками должны снабжаться все ресурсы системы (н-р, ПЗУ), прямо или косвенно доступные субъектам; д.б. предусмотрена возможность регистрации событий, связанных с организацией тайных каналов обмена с памятью; к доверенной вычислительной базе должен поддерживаться доверенный коммуникационный путь для пользователя, выполняющего операции начальной идентификации и аутентификации; тесты должны подтверждать действенность мер по уменьшению пропускной способности тайных каналов передачи информации. Класс B3 - в дополнение к В2, обязательно должны использоваться списки управления доступом с указанием разрешенных режимов. Должна быть возможность явного указания польз-лей или их групп, доступ которых к объекту запрещен. Класс А1 - в дополнение к В3 тестирование д. продемонстрировать, что реализация доверенной вычислительной базы соответствует формальным спецификациям верхнего уровня. Необходимо использовать современные методы формальной спецификации и верификации систем; механизм конфигурационного управления д. распространяется на весь ЖЦ и все компоненты системы, имеющие отношение к обеспечению безопасности.
Приведенные классы безопасности образуют единую шкалу оценки безопасности компьютерных систем, они надолго определили основные концепции безопасности и ход развития средств защиты.
Стандарты Ethernet.
Исторически сложилось два стандарта Ethernet сетей:
1. стандарт Ethernet, определяющий канальный уровень без подуровней;
2. стандарт 802.3, определяющий внутри канального уровня два подуровня: MAC и LLC.
В зависимости от стандарта одновременно в сети может формироваться два вида фреймов:
1. старый фрейм Ethernet
2. фрейм стандарта 802.3
1) Старый фрейм Ethernet
1 |
2 |
3 |
4 |
5 |
6 |
1. - размер 8 байт – преамбула – служит для синхронизации канала связи между отправителем фрейма и получателем.
2. - 6 байт – информация о МАС-адрес получателя – физический адрес сетевой карты, которая должна получить фрейм.
3. - 6 байт – МАС-адрес отправителя. Используется для обратной связи с отправителем.
4. - 2 байта – тип фрейма. Используется для определения служебных фреймов в сети или типа сервиса канального уровня.
5. - 1474 байта – данные.
6. - 4 байта – контрольная сумма фрейма. Используется для проверки качества передачи информации.
2) Фрейм стандарта 802.3
4. - 2 байта – длина фрейма. Указывает истинную длину фрейма (не более 1500 байт)
5. - информация. Может иметь переменную длину. Поле состоит из двух частей:
5.1 – подуровень LLC канального уровня – 4 байта – состоит из следующих элементов:
DSAP – 1 байт – указатель доступа сервиса получателя
SSAP – 1 байт – указатель доступа сервиса источника
CTRL – 2 байта – поле контроля – управляет уровнями качества связи и обеспечивает два уровня качества:
5.2 – собственно данные.
6. - 4 байта – контрольная сумма фрейма.
1 |
2 |
3 |
4 |
5 |
6 |
|
|
|
|
|
|
|
|
|
1 |
2 |
|
|
|
|
|
|
|
|
|
DSAP |
SSAP |
CTRL |
|
|
|
|
|
|
|
Билет № 29
Закономерности систем.
целостность:
Свойство системы (целого) не является суммой свойств элементов или частей системы:
Свойства системы (целого) зависят от свойств элементов или частей, т.е. изменение в одной части влияет на изменения в других частях:
эмерджентность: появление новых функций и свойств у системы, не присущих её компонентам.
интегративность: совокупность системообразующих и системосохраняющих факторов (например, неоднородность и противоречивость элементов). Позволяет системе не рассыпаться.
коммуникативность: система образует единство с внешней средой.
иерархичность: элементы системы образованы и упорядочены в ней определенным образом – иерархическим (не хаотичны);
эквифинальность: невозможность детерминированной системы прийти в состояние равновесия при наступление критических условий; характеризует предельные возможности системы определенного класса сложности;
историчность: наличие внутренних противоречий между компонентами системы (закон необходимого разнообразия: что бы создать систему, способную справиться с решением сложной проблемы необходимо, что бы система обладала большей сложностью, большим разнообразием, чем решаемая проблема);
осуществимость и потенциальная эффективность: функции системы должны осуществляться с некоторой эффективностью, т.е. если функции осуществляются не эффективно, то система умирает.
цель образования: любая система имеет цель существования.
Практическая значимость понятий: замыкания ФЗ, замыкание атрибутов.
Понятие ФЗ: ФЗ определяют однозначное соответствие м/у значениями атрибутов. ПР2: ТАБ_№→ФИО, ТАБ_№→квалификация
Множество ФЗ, которое не может быть дополнено ни одной новой ФЗ с помощью аксиом рефлексивности, пополнения и псевдотранзитивности, называется замыканием множества ФЗ и обозначается F+.
Для получения замыкания F+ используются аксиомы Армстронга. Эти аксиомы могут быть использованы для практического вычисления замыкания, т.к. эти правила являются полными (для заданного множества ФЗ F минимальный набор ФЗ, которые подразумевают все зависимости из множества F, может быть выведен из ФЗ множества F на основе этих правил) и исчерпывающими (никакие ФЗ, которые не подразумеваются ФЗ множества F, с их помощью не могут быть выведены).
Практическая значимость замыкания ФЗ – используется для доказательства эквивалентности покрытий, но применяется редко из-за проблем временного характера.
Замыкание множества атрибутов {A1, A2, …, An} на схеме R есть полное множество атрибутов, принадлежащих схеме R и функционально зависящих от A1, A2, …, An. Обозначается замыкание как {A1,A2,…,An}+.
Два множества ФЗ эквивалентны, если имеют одно и тоже замыкание множеств ФЗ (если кажд ФЗ в F мож получ из F’). F={X->YZ, X->Y, X->Z} F’={X->Y, X->Z}
Два множества атрибутов (принадлежат одному классу эквивалентности) эквивалентны, если они имеют одинаковое замыкание.
Если замыканием того или иного множества атрибутов является вся схема отношения, то очевидно, что это множество, по крайней мере, является суперключом. Для того, чтобы определить ключ, необходимо проверить, есть ли в исходном множестве атрибутов собственное подмножество, у которого замыканием является также вся схема отношения, и оно в свою очередь не содержит аналогичного собственного подмножества.
Пусть дано множество функциональных зависимостей F={AB, BC} , на схеме R={ABC} отношения r. Докажем, что ключом данного отношения будет атрибут А. С этой целью построим замыкания для всех атрибутов левых частей ФЗ:
-
AA
1
BB
1
AB
Дано
BC
Дано
AAB
2
BBC
2
BC
Дано
AABC
2
Т.о., атрибут А является ключом отношения, т.к. от него функционально зависят все атрибуты схемы отношения. Замыканием множеств AB, AC, ABC тоже будет вся схема отношения, но они не будут явл-ся ключами, т.к. содержат внутри себя ключи.
Методы (члены-функции) в классах языка C++. Специальные методы, статические (static) методы, виртуальные методы и неизменные (immutable) методы в C++.
Внутри класса можно объявить функции, которые обычно, называются функциями-членами (memberfunction). В визуальном программировании этому понятию соответствуют методы.
Поскольку разные структуры могут иметь функции-члены с одинаковыми именами, при определении функции-члена нужно указывать имя структуры. В теле функции-члена имена членов можно использовать без указания имени объекта. В таком случае имя относится к члену того объекта, для которого была вызвана функция.
Функции-члены можно объявлять статическими (static), но обычно это не делается. Доступ к объявленной статической функции — члену класса возможен только для других статических членов этого класса. У статической функции-члена нет указателя this. Статические функции-члены не могут быть виртуальными. Статические функции-члены не могут объявляться с идентификаторами const (постоянный) и volatile (переменный).
Виртуальная функция (virtual function) является членом класса. Она объявляется внутри базового класса с ключевым словом virtual и переопределяется в производном классе. Если класс, содержащий виртуальную функцию, наследуется, то в производном классе виртуальная функция переопределяется. По существу, виртуальная функция реализует идею "один интерфейс, множество методов", которая лежит в основе полиморфизма. Виртуальная функция внутри базового класса определяет вид интерфейса этой функции. Каждое переопределение виртуальной функции в производном классе определяет ее реализацию, связанную со спецификой производного класса.
Виртуальная функция может вызываться так же, как и любая другая функция-член. Однако наиболее интересен вызов виртуальной функции через указатель, благодаря чему поддерживается динамический полиморфизм. Если виртуальная функция не подменяется в производном классе, то используется версия функции, определенная в базовом классе.
Функции – члены класса могут объявляться постоянными (с идентификатором const). Если функция объявлена постоянной, она не может изменить вызывающий ее объект. Кроме этого, постоянный объект не может вызвать непостоянную функцию-член. Тем не менее, постоянная функция-член может вызываться как постоянными, так и непостоянными объектами. Пример:
class X {
int some_var; public:
int f1 () const; // постоянная функция-член };
Ключевое слово const указывают следом за списком параметров функции, а не перед именем функции. Возможна ситуация, когда понадобится, чтобы функция-член, оставаясь постоянной, тем не менее была способна изменить один или несколько членов класса. Это достигается заданием модифицируемых членов класса (ключевое слово mutable). Модифицируемый член класса можно изменить с помощью постоянной функции-члена.
Организационно-распорядительные мероприятия.
Организационная защита - это регламентация производственной деятельности и взаимоотношений исполнителей на нормативно-правовой основе, исключающей или существенно затрудняющей неправомерное овладение конфиденциальной информацией и проявление внутренних и внешних угроз.
Организационная защита обеспечивает:
• охрану, режим, работу с кадрами, с документами;
• использование технических средств безопасности и информационно-аналитическую деятельность по выявлению внутренних и внешних угроз производственной деятельности.
Организационные мероприятия играют существенную роль в создании надежного механизма защиты информации, т.к. возможности несанкционированного использования конфиденциальных сведений в значительной мере обусловливаются не техническими аспектами, а злоумышленными действиями, нерадивостью, небрежностью и халатностью пользователей или персонала защиты. Влияния этих аспектов практически невозможно избежать с помощью технических средств. Для этого необходима совокупность организационно-правовых и организационно-технических мероприятий, которые исключали бы (или, по крайней мере, сводили бы к минимуму) возможность возникновения опасности конфиденциальной информации.
Организационные меры защиты базируются на законодательных и нормативных документах по безопасности информации. Они должны охватывать все основные пути сохранения информационных ресурсов и включать:
- ограничение физического доступа к объектам АСОД и реализацию режимных мер;
- ограничение возможности перехвата информации вследствие существования физических полей;
- ограничение доступа к информационным ресурсам и другим элементам АСОД путем установления правил разграничения доступа, криптографическое закрытие каналов передачи данных, выявление и уничтожение "закладок";
- создание твердых копий важных с точки зрения утраты массивов данных;
- проведение профилактических и других мер от внедрения "вирусов".
В каждом конкретном случае организационные мероприятия носят специфические для данной организации форму и содержание, направленные на обеспечение безопасности информации в конкретных условиях.
Сетевые карты.
Для присоединения рабочих станций к сети используют специальные устройства, называемые сетевые интерфейсные карты NIC.
NIC – бывают следующих типов в зависимости от технологии канального уровня:
По разрядности или типу данных:
8,16,32 – битные сетевые интерфейсы.
По типу подключения:
Сетевые интерфейсы с BNC (коаксиал), RJ-45 (витая), AUI-разъемами. AUI – универсальный сетевой разъем для подключения любой технологии, обычный разъем ТВ-15.
По типу системной шины
ISA(8-16 разряд.), PCI(32 разряд.), PCI-Express (последовательная)
Существуют сетевые интерфейсы с несколькими типами подключения. В один момент может работать один из типов подключения. Основным элементом сетевых интерфейсных карт является трансивер – специальное устройство для приема/передачи сигналов из/в среду передачи данных.
Для каждой технологии физического уровня существует собственный тип трансивера. Основные интерфейсы BNC, RJ-45 имеют встроенный трансивер. Внешний трансивер подключается к разъему AUI (AUI кабелем).
Трансивер и вся кабельная система относятся к физическому уровню модели.
Билет № 30
Особенности разработки автоматизированной системы управления (АСУ).
Информационная система – это система, функционирование которой во времени заключается в сборе, хранении, обработки и распространении информации о деятельности какого-либо объекта.
АСУ состоит из 2 частей:1) система обработки данных; и 2)модуль формирования управляющих решений.
Система обработки данных – это обычная база данных, в задачи которой входят сбор, классификация информации, составление некоторых отчетов.
Модуль формирования управляющих решений
Задачи:
Ограничение внешней среды от системы;
Решить вопрос, рассматривается ли система как изолированная или как открытая, со взаимосвязями с внешней средой.
Среда – совокупность тех объектов, изменение свойств которых влияет на систему (чьи свойства меняются с изменением системы).
Задача управления:
Прогноз системы, причем, если система неизолированная, то прогноз состояний системы и среды;
Формирование управляющего воздействия:
- корректировка управляющего воздействия для того чтобы получить желаемую реакцию ; - задача модуля управления.
Обратная связь – это основа саморегулирования развития системы, приспособление их к изменяющимся условиям существования.
В АСУ - вырабатывается искусственно;
В самоорганизующихся системах - - находится внутри системы.
Таким образом, цель модуля формирования управляющих решений – модель желаемого будущего.
Особенности затруднений при разработке АСУ:
Неоднозначность понятий цель и средства, система и подсистема.
Трудность прогнозирования поведения системы при изменении её компонентов.
Для обеспечения адаптивности АСУ, т.е. способности её к самоорганизации необходимо обеспечить следующие свойства системы:
Целеобразование – формирование цели в зависимости от условий.
Вариативность – это устойчивость системы к различным вариантам реализации.
Развиваемость – это способность изменять структуру без катастрофических последствий для системы.
Необходимость обеспечения этих свойств должна быть учтена в начале разработки системы, следовательно, необходим системный подход, который обеспечит все особенности функционирования. Такая система должна рассматриваться как сложная система, следовательно, необходим коллектив разработчиков, что приводит к неизбежности выработки единых принципов проектирования и терминологии. В этом заключается предварительный этап разработки, который должен быть документирован, т.е. должны быть разработаны методические материалы (как проектировать те или иные компоненты). Методические материалы также необходимы для обоснования выбора методик проектирования.
Как любая сложная система АСУ состоит из двух частей: 1.Функциональная часть. 2.Обеспечивающая часть.
Структура функциональной части определяется на основе анализа целей для обеспечения деятельности, для которой эта система создаётся, и включает в себя подсистемы и задачи, выбранные для автоматизации. Структура обеспечивающей части включает основные виды обеспечения, такие как информационное, техническое, программное, лингвистическое, эргономическое и прочее, т.е. предоставляет средства для достижения целей АСУ.
Должны быть решены две проблемы: 1.Формирование структуры функциональной части. 2.Формирование структуры обеспечивающей части. Обе задачи должны решаться во взаимодействии, поскольку обеспечивающая часть определяется функциональной частью, также как функциональная часть зависит от потенциальных возможностей обеспечивающей части.
Аксиомы вывода, RAP-последовательность вывода. Примеры вывода функциональных зависимостей.
При декомпозиции исходные отношения опираются не на все ФЗ, а только на те, которые являются подмножеством так называемого минимального покрытия. Чтобы осуществить переход от множества ФЗ к минимальному покрытию необходимо установить избыточные ФЗ. Пусть дано множество ФЗ F на схеме R. При этом X и Y принадлежат данной схеме. ФЗ XY избыточна, если она следует из множества: F – (XY).
Для вывода ФЗ используются правила вывода или аксиомы вывода.
Аксиомы Армстронга:
Рефлексивность: XX (F1);
Пополнение: если XY, то XZY (F2);
Аддитивность: если XY, XZ, то XYZ (F3);
Проективность: если XYZ, то XY, XZ (F4);
Транзитивность: если XY, YZ, то XZ (F5);
Псевдотранзитивность: если XY, YZW, то XZW (F6).
Из всех представленных 6 аксиом, 3 являются независимыми (F1, F2, F6), а остальные можно вывести на основании этих. При выводе одних ФЗ на основании других, выстраиваются цепочки ФЗ полученных на основании аксиом вывода. Их называются выводы.
ß-аксиомы:
Рефлексивность: XX (ß1);
Накопление: если XYZ, ZCW, то XYZCW (ß2);
Проективность: если XYZ, то XZ (ß3).
На основании β - аксиом так же, как и на основании аксиом Армстронга, осуществляется вывод одних функциональных зависимостей из других. Поскольку названия β - аксиом имеют на английском языке следующее написание:
R eflexiviti,
A ccum ulation,
P rojectivity,
то по первым буквам этих названий получили название последовательности вывода, выполняемые с помощью β - аксиом RAP последовательности.
Порядок построения RAP последовательности вывода.
• Первая функциональная зависимость получается путем применения аксиомы β 1.
• Каждая последующая функциональная зависимость вычисляется из предыдущих функциональных зависимостей путем применения аксиомы β 2, или вводится из исходного множества функциональных зависимостей, или генерируется на основании аксиомы β 1.
• На последнем шаге вывода может быть применена аксиома проективности β 3.
Ниже приведен пример построения RAP последовательности вывода, позволяющей доказать, что если имеют место функциональные зависимости X>Y, Y->Z, то будет иметь место и функциональная зависимость X->Z.
№ |
ФЗ |
Основание |
1 |
XX |
1 |
2 |
X-Y |
Дано |
3 |
XXY |
Накопление (2) |
4 |
YZ |
Дано |
5 |
XXYZ |
Накопление (2) |
6 |
XZ |
Проективность (3), это и требовалось доказать |
Эволюция системного программного продукта. Понятие и составляющие программы, программного комплекса, программного продукта, системного программного продукта (по Ф. Бруксу)
Эволюция системного программного продукта ->
Программа – завершенный продукт, пригодным для запуска своим автором на системе, на которой она была разработана. Это тот объект, посредством которого программист оценивает свою производительность.
При пересечении горизонтальной границы программа превращается в программный продукт.
Программный продукт – это программа, которую любой человек может запускать, тестировать, исправлять и развивать. Она может использоваться в различных операционных средах и со многими наборами данных. Чтобы стать общеупотребительным программным продуктом, программа должна быть написана в обобщенном стиле. В частности, диапазон и вид входных данных должны быть настолько обобщенными, насколько это допускается базовым алгоритмом. Затем программу нужно тщательно протестировать, чтобы быть уверенным в ее надежности. Для этого нужно подготовить достаточное количество контрольных примеров для проверки диапазона допустимых значений входных данных и определения его границ, обработать эти примеры и зафиксировать результаты. Наконец, развитие программы в программный продукт требует создания подробной документации, с помощью которой каждый мог бы использовать ее, делать исправления и расширять. Следовательно, программный продукт стоит, по меньшей мере, втрое дороже, чем просто отлаженная программа с такой же функциональностью.
При пересечении вертикальной границы программа становится компонентом программного комплекса. Последний представляет собой набор взаимодействующих программ, согласованных по функциям и форматам, составляющих полное средство для решения больших задач. Чтобы стать частью программного комплекса, синтаксис и семантика ввода и вывода программы должны удовлетворять точно определенным интерфейсам. Программа должна быть также спроектирована таким образом, чтобы использовать заранее оговоренный бюджет ресурсов – объем памяти, устройства ввода/вывода, процессорное время. Наконец, программу нужно протестировать вместе с прочими системными компонентами во всех сочетаниях, которые могут встретиться. Это тестирование может оказаться большим по объему, поскольку количество тестируемых случаев растет экспоненциально. Оно также занимает много времени, так как скрытые ошибки выявляются при неожиданных взаимодействиях отлаживаемых компонентов. Компонент программного комплекса стоит, по крайней мере, втрое дороже, чем автономная программа с теми же функциями. Стоимость может увеличиться, если в системе много компонентов. В правом нижнем углу рисунка находится системный программный продукт. От обычной программы он отличается во всех перечисленных выше отношениях. И стоит, соответственно, в десять раз дороже. Но это действительно полезный объект, который является целью большинства системных программных проектов.
Категории ИСПД
Классификация информационных систем персональных данных проводится государственными органами, муниципальными органами, юридическими и физическими лицами, организующими и (или) осуществляющими обработку персональных данных, а также определяющими цели и содержание обработки персональных данных (далее - оператор).
Классификация проводится на этапе создания информационных систем или в ходе их эксплуатации (для ранее введенных в эксплуатацию и (или) модернизируемых информационных систем) с целью установления методов и способов защиты информации, необходимых для обеспечения безопасности персональных данных. Проведение классификации ИСПД включает в себя следующие этапы: сбор и анализ исходных данных по информационной системе; присвоение информационной системе соответствующего класса и его документальное оформление.
При проведении классификации ИСПД учитывается категория обрабатываемых в информационной системе персональных данных - Xпд;
Определяются следующие категории обрабатываемых в информационной системе персональных данных (Xпд): категория 1 - персональные данные, касающиеся расовой, национальной принадлежности, политических взглядов, религиозных и философских убеждений, состояния здоровья, интимной жизни; категория 2 - персональные данные, позволяющие идентифицировать субъекта ПД и получить о нем дополнительную информацию, за исключением персональных данных, относящихся к категории 1; категория 3 - персональные данные, позволяющие идентифицировать субъекта персональных данных; категория 4 - обезличенные и (или) общедоступные персональные данные.
Протокол RIP.
Является протоколом дистанционно-векторного типа. Т.о. у него нет необходимости держать в памяти полную структуру всей сети. Для работы RIP использует достаточно упрощенное представление. На сетевом уровне каждый сегмент сети получает от администратора собственный уникальный идентификатор, называемый адресом сети. Т.о. протоколу RIP необязательно знать адреса всех получателей в сети и он запоминает только пути достижения сегмента.
Маршрутизаторы RIP узнают соответствующие направления путем взаимного обучения. Обмен информацией производится путем рассылки специальных широковещательных RIP-пакетов. У Broadcast нет собственного адреса получателя, т.е. его принимают все станции сети. Внутри RIP-пакета передается информация о всех известных маршрутизаторах в сетях и расстоянии до них, т.о. определяя порт, на который приходит пакет, и выбрав из него расстояние, протокол RIPстроит таблицу маршрутизации.
Расстояние в протоколе RIP определяется количеством переходов до сегмента получателя (количеством маршрутизаторов, которые нужно пройти до сегмента получателя).
Преимуществами протокола являются: простота в настройке.
Недостатки: увеличение служебного трафика за счет использования широковещательных пакетов; невозможность работы с достаточно большими сетями за счет ограничения в подсчете количества переходов.
Билет № 31
Формальное определение системы, различные способы.
В общем случае система – множество с введенным организационным порядком.
S = (орг, М), где М – семейство объектов системы
М = {Mi ; i I} Mi – разбиение множества М.
Mi Mj = i≠j
Mi Mj = M
S x {Mi ; i I}
S: XY
S X x Y
X - множество входов Y – множество выходов.
Определить входные и выходные объекты для S
Пусть
Ix I – разбиение Ix Iy =
Iy I – разбиение Ix Iy = I – множество индексов I
X =x { Mi, i Ix } - вход
Y =x { Mi, i Iy } – выход – декартово произведение
Определим глобальное состояние и глобальную реакцию системы. C – множество всех подмножеств М.
R: (CxX)Y
(X,Y)S C: R(C,X)=Y R- реакция системы C – множество глобальных состояний системы.
Отсюда следует, что система представляет собой множество входов, множество выходов, множество состояний системы, множество функций.
S={X,Y,C,R}
Сюда может быть добавлено множество переходов (Т), тогда такие системы называются временные.
Часто функция R делится на:
-Функцию, определяющую множество Х для срабатывания перехода (F).
-Функцию, определяющую множество Y после срабатывания перехода (H). F: (XxC){0,1}
F:{x}S F(X,C)=1
Если х влияет на состояние системы в данный момент, то F(X,C)=0
H: (CxY){0,1}
H:{y}S H(C,Y)=1
Если состояние не меняется, то H (CхY)=0
Трёхуровневая архитектура ANSI-SPARC.
Выделяются 3 уровня абстракции, т.е. 3 различных уровня описания элементов данных. Эти уровни формируют трехуровневую архитектуру, которая охватывает внешний, концептуальный и внутренний уровни.
Цель трехуровневой архитектуры заключается в отделении пользовательского представления БД от ее физического представления. Причины, по которым желательно выполнять такое разделение:
Каждый пользователь должен иметь возможность обращаться к одним и тем же данным, используя свое собственное представление о них. Каждый пользователь должен иметь возможность изменять свое представление о данных, причем это изменение не должно оказывать влияние на других пользователей.
Пользователи не должны непосредственно иметь дело с такими подробностями физического хранения данных в БД, как индексирование и хеширование. Иначе говоря, взаимодействие пользователя с БД не должно зависеть от особенностей хранения в ней.
Администратор базы данных (АБД) должен иметь возможность изменять структуру хранения данных в базе, не оказывая влияния на пользовательские представления.
Внутренняя структура БД не должна зависеть от таких изменений физических аспектов хранения информации, как переключение на новое устройство хранения.
АБД должен иметь возможность изменять концептуальную или глобальную структуру БД без какого-либо влияния на всех пользователей.
Внешний уровень – представление БД с т.з. пользователей. Этот уровень описывает ту часть БД, которая относится к каждому пользователю. Внешний уровень состоит из нескольких различных внешних представлений БД. Каждый пользователь имеет дело с представлением “реального мира”, выраженным в наиболее удобной для него форме. Внешнее представление содержит только те сущности, атрибуты и связи “реального мира”, которые интересны пользователю.
Концептуальный уровень – обобщающее представление данных. Этот уровень описывает то, какие данные хранятся в БД, а также связи, существующие между ними, т.е. логическую структуру всей БД. Фактически это полное представление требований, которое не зависит от любых соображений относительно способа их хранения. На концептуальном уровне представлены следующие компоненты: все сущности, их атрибуты, связи; накладываемые на данные ограничения; семантическая информация о данных; информация о мерах обеспечения безопасности и поддержки целостности данных. Однако этот уровень не содержит никаких сведений о методах хранения данных (например, объем занятого пространства в байтах).
Внутренний уровень – физическое представление БД в компьютере. Этот уровень описывает, как информация хранится в БД, содержит описание структур данных и организации отдельных данных, используемых для хранения данных в запоминающих устройствах.
На внутреннем уровне хранится следующая информация:
Распределение дискового пространства для хранения данных и индексов;
Описание подробностей сохранения записей (с указанием реальных размеров сохраняемых элементов данных);
Сведения о размещении записей;
Сведения о сжатии данных и выбранных методах шифрования.
Ниже внутреннего уровня находится физический уровень, который контролируется операционной системой, но под руководством СУБД.
Коцепт-ная схема связана с внутр схемой посредством концепт-но внутр-го отображ-я (позв-ет СУБД найти запись на устр-ве хран-я, которая образ-ет логич-кую запись в концепт-ной схеме). Кажд внешняя схема связана с концепт-ной схемой с помощью концепт-но внеш-го изображ-я (с его помощью СУБД может отображать имена польз-го представл-я на соотв-щую часть концепт-ной схемы.).
Основным назначением трехуровневой архитектуры является обеспечение независимости данных, которая означает, что изменения на нижних уровнях никак не влияют на верхние уровни. Различают два типа независимости от данных: логическую и физическую.
Логическая независимость от данных – означает полную защищенность внешних схем от изменений, вносимых в концептуальную схему (например, добавление или удаление новых сущностей, атрибутов или связей).
Физическая независимость от данных – означает защищенность концептуальной схемы от изменений, вносимых во внутреннюю схему (например, использование различных файловых систем или структур хранения, разных устройств хранения, модификация индексов или хеширование).
Модели управления в программных системах: централизованное управление, управление, основанное на событиях.
Централизованное управление чаще всего используется в СРВ, различных диспетчерских системах (например, опрос датчиков). В системах с централизованным управлением выделяют: координатор (некую центральную подсистему или модуль) и множество программных компонент (ПК). ПК пассивны, для получения от них сообщения. Координатор должен сам регулярно опрашивать их.
В случае событийного управления активную роль играют ПК, а вместо Координатора используется диспетчер сообщений. Он не ведет опрос ПК – они сами передают сообщения. Такая модель управления более распространена в Windows-приложениях, распределенных системах. Здесь события называются сообщениями (message). Windows посылает программе сообщения, связанные либо с тем, что произошло что-то внешнее (мышь/клавиатура), либо с тем, что самой системе потребовались от программы какие-то действия. Самым распространённым таким действием является предоставление информации или уведомление о начале какого-то действия.
В Windows одна процедура, называемая оконной, обрабатывает все сообщения. Каждое сообщение имеет свой уникальный номер, а оконная процедура обычно целиком состоит из оператора case, и каждому сообщению соответствует своя альтернатива этого оператора. Обычной программе приходится обрабатывать довольно много сообщений, поэтому оконная процедура бывает, очень длинной и громоздкой. Обработка сообщения требует времени, иногда довольно значительного. За это время окну может быть отправлено ещё несколько сообщений. Чтобы они не пропали, Windows организует так называемую очередь сообщений. Очередь сообщений своя для каждой нити. Нить должна сама выбирать сообщения из этой очереди, транслировать их и затем вызывать функцию DispatchMessage, чтобы направить это сообщение в нужную оконную процедуру.
Отправка сообщения другому окну может осуществляться достаточно разнообразными способами. Можно послать сообщение в очередь, а можно заставить Windows вызвать оконную процедуру напрямую, в обход очереди. Можно установить max-ное время ожидания отклика от окна, которому послано сообщение. Использование сообщений очень удобно в тех случаях, когда нужно заставить окно выполнить какое-то действие. Поэтому Windows предоставляет возможность программисту создавать свои сообщения, которые м.б. локальными или глобальными. Использование локальных сообщений связано с некоторым риском. Дело в том, что эти сообщения должны посылаться только «своим» окнам, т.е. тем, оконные процедуры которых написаны так, чтобы правильно интерпретировать это сообщение. Если послать такое сообщение «чужому» окну, его реакция м.б. непредсказуемой, т.к. человек, писавший его оконную процедуру, мог использовать сообщение с этим же номером для своих целей. Чтобы избежать таких последствия следует использовать глобальные пользовательские сообщения, называемые также строковыми.
Особенности защиты информации от несанкционированного доступа для ИСПД 1 класса.
4.1. Для информационных систем 1 класса при однопользовательском режиме обработки персональных данных применяются следующие основные методы и способы защиты информации:
а) управление доступом:
идентификация и проверка подлинности пользователя при входе в систему по паролю условно-постоянного действия длиной не менее шести буквенно-цифровых символов;
б) регистрация и учет:
регистрация входа (выхода) пользователя в систему (из системы) либо регистрация загрузки и инициализации операционной системы и ее программного останова. Регистрация выхода из системы или останова не проводится в моменты аппаратурного отключения информационной системы. В параметрах регистрации указываются дата и время входа (выхода) пользователя в систему (из системы) или загрузки (останова) системы, результат попытки входа (успешная или неуспешная);
регистрация выдачи печатных (графических) документов на бумажный носитель. В параметрах регистрации указываются дата и время выдачи (обращения к подсистеме вывода), краткое содержание документа (наименование, вид, код), спецификация устройства выдачи (логическое имя (номер) внешнего устройства);
учет всех защищаемых носителей информации с помощью их маркировки и занесение учетных данных в журнал учета;
дублирующий учет защищаемых носителей информации;
очистка (обнуление, обезличивание) освобождаемых областей оперативной памяти информационной системы и внешних носителей информации; в) обеспечение целостности:
обеспечение целостности программных средств системы защиты персональных данных, обрабатываемой информации, а также неизменность программной среды. При этом целостность программных средств проверяется при загрузке системы по наличию имен (идентификаторов) компонентов средств защиты информации, а целостность программной среды обеспечивается отсутствием в информационной системе средств разработки и отладки программ;
физическая охрана технических средств информационных систем (устройств и носителей информации), предусматривающая постоянное наличие охраны территории и здания;
периодическое тестирование функций системы защиты персональных данных при изменении программной среды и пользователей информационной системы с помощью тест-программ, имитирующих попытки несанкционированного доступа;
наличие средств восстановления системы защиты персональных данных, предусматривающих ведение двух копий программных компонентов средств защиты информации, их периодическое обновление и контроль работоспособности.
4.2. Для информационных систем 1 класса при многопользовательском режиме обработки персональных данных и равных правах доступа к ним пользователей применяются следующие основные методы и способы защиты информации:
а) управление доступом:
идентификация и проверка подлинности пользователя при входе в систему по идентификатору (коду) и паролю условно-постоянного действия длиной не менее шести буквенно-цифровых символов;
идентификация технических средств информационных систем и каналов связи, внешних устройств информационных систем по их логическим адресам (номерам);
идентификация программ, томов, каталогов, файлов, записей, полей записей по именам;
б) регистрация и учет:
регистрация входа (выхода) пользователя в систему (из системы) либо регистрация загрузки и инициализации операционной системы и ее программного останова. Регистрация выхода из системы или останова не проводится в моменты аппаратурного отключения информационной системы. В параметрах регистрации указываются дата и время входа (выхода) пользователя в систему (из системы) или загрузки (останова) системы, результат попытки входа (успешная или неуспешная), идентификатор (код или фамилия) пользователя, предъявленный при попытке доступа;
регистрация выдачи печатных (графических) документов на бумажный носитель. В параметрах регистрации указываются дата и время выдачи (обращения к подсистеме вывода), спецификация устройства выдачи (логическое имя (номер) внешнего устройства), краткое содержание документа (наименование, вид, шифр, код), идентификатор пользователя, запросившего документ;
регистрация запуска (завершения) программ и процессов (заданий, задач), предназначенных для обработки персональных данных. В параметрах регистрации указываются дата и время запуска, имя (идентификатор) программы (процесса, задания), идентификатор пользователя, запросившего программу (процесс, задание), результат запуска (успешный, неуспешный);
регистрация попыток доступа программных средств (программ, процессов, задач, заданий) к защищаемым файлам. В параметрах регистрации указываются дата и время попытки доступа к защищаемому файлу с указанием ее результата (успешная, неуспешная), идентификатор пользователя, спецификация защищаемого файла;
регистрация попыток доступа программных средств к дополнительным защищаемым объектам доступа (терминалам, техническим средствам, узлам сети, линиям (каналам) связи, внешним устройствам, программам, томам, каталогам, файлам, записям, полям записей). В параметрах регистрации указываются дата и время попытки доступа к защищаемому объекту с указанием ее результата (успешная, неуспешная), идентификатор пользователя, спецификация защищаемого объекта (логическое имя (номер));
учет всех защищаемых носителей информации с помощью их маркировки и занесение учетных данных в журнал учета с отметкой об их выдаче (приеме);
дублирующий учет защищаемых носителей информации;
очистка (обнуление, обезличивание) освобождаемых областей оперативной памяти информационных систем и внешних носителей информации; в) обеспечение целостности:
обеспечение целостности программных средств системы защиты персональных данных, обрабатываемой информации, а также неизменность программной среды. При этом целостность системы защиты персональных данных проверяется при загрузке системы по наличию имен (идентификаторов) ее компонент, а целостность программной среды обеспечивается отсутствием в информационной системе средств разработки и отладки программ;
физическая охрана технических средств информационной системы (устройств и носителей информации), предусматривающая постоянное наличие охраны территории и здания;
периодическое тестирование функций системы защиты персональных данных при изменении программной среды и пользователей информационной системы с помощью тест-программ, имитирующих попытки несанкционированного доступа;
наличие средств восстановления системы защиты персональных данных, предусматривающих ведение двух копий программных компонентов средств защиты информации, их периодическое обновление и контроль работоспособности.
4.3. Для информационных систем 1 класса при многопользовательском режиме обработки персональных данных п разных правах доступа к ним пользователей Применяются следующие основные методы и способы защиты информации:
а) управление доступом:
идентификация и проверка подлинности пользователя при входе в систему по идентификатору (коду) и паролю условно-постоянного действия длиной не менее шести буквенно-цифровых символов;
идентификация терминалов, технических средств, узлов сети, канатов связи, внешних устройств по логическим именам;
идентификация программ, томов, каталогов, файлов, записей, полей записей по именам;
контроль доступа пользователей к защищаемым ресурсам в соответствии с матрицей доступа;
б) регистрация и учет:
регистрация входа (выхода) пользователей в систему (из системы), либо регистрация загрузки и инициализации операционной системы и ее программного останова. Регистрация выхода из системы или останова не проводится в моменты аппаратурного отключения информационной системы. В параметрах регистрации указываются дата и время входа (выхода) пользователя в систему (из системы) или загрузки (останова) системы, результат попытки входа (успешная или неуспешная), идентификатор (код или фамилия) пользователя, предъявленный при попытке доступа, код или пароль, предъявленный при неуспешной попытке;
регистрация выдачи печатных (графических) документов на бумажный носитель. В параметрах регистрации указываются дата и время выдачи (обращения к подсистеме вывода), спецификация устройства выдачи (логическое имя (номер) внешнего устройства), краткое содержание документа (наименование, вид, шифр, код), идентификатор пользователя, запросившего документ;
регистрация запуска (завершения) программ и процессов (заданий, задач), предназначенных для обработки персональных данных. В параметрах регистрации указываются дата и время запуска, имя (идентификатор) программы (процесса, задания), идентификатор пользователя, запросившего программу (процесс, задание), результат запуска (успешный, неуспешный);
регистрация попыток доступа программных средств (программ, процессов, задач, заданий) к защищаемым файлам. В параметрах регистрации указываются дата и время попытки доступа к защищаемому файлу с указанием ее результата (успешная, неуспешная), идентификатор пользователя, спецификация защищаемого файла;
регистрация попыток доступа программных средств к дополнительным защищаемым объектам доступа (терминалам, техническим средствам, узлам сети, линиям (каналам) связи, внешним устройствам, программам, томам, каталогам, файлам, записям, полям записей). В параметрах регистрации указываются дата и время попытки доступа к защищаемому объекту с указанием ее результата (успешная, неуспешная), идентификатор пользователя, спецификация защищаемого объекта (логическое имя (номер));
учет всех защищаемых носителей информации с помощью их маркировки и занесение учетных данных в журнал учета с отметкой об их выдаче (приеме);
очистка (обнуление, обезличивание) освобождаемых областей оперативной памяти информационной системы и внешних накопителей;
в) обеспечение целостности:
обеспечение целостности программных средств системы защиты персональных данных, обрабатываемой информации, а также неизменность программной среды. При этом целостность системы защиты персональных данных проверяется при загрузке системы по контрольным суммам компонентов системы защиты, а целостность программной среды обеспечивается использованием трансляторов с языков высокого уровня и отсутствием средств модификации объектного кода программ в процессе обработки и (или) хранения персональных данных;
физическая охрана технических средств информационной системы (устройств и носителей информации), предусматривающая контроль доступа в помещения посторонних лиц, наличие надежных препятствий для несанкционированного проникновения в помещения и хранилище носителей информации;
периодическое тестирование функций системы защиты персональных данных при изменении программной среды и пользователей информационной системы с помощью тест-программ, имитирующих попытки несанкционированного доступа;
наличие средств восстановления системы защиты персональных данных, предусматривающих ведение двух копий программных компонентов средств защиты информации, их периодическое обновление и контроль работоспособности.
4.4. Безопасное межсетевое взаимодействие для информационных систем 1 класса при их подключении к сетям международного информационного обмена достигается путем применения средств межсетевого экранирования, которые обеспечивают выполнение следующих функций:
фильтрацию на сетевом уровне для каждого сетевого пакета независимо (решение о фильтрации принимается на основе сетевых адресов отправителя и получателя или на основе других эквивалентных атрибутов);
фильтрацию пакетов служебных протоколов, служащих для диагностики и управления работой сетевых устройств;
фильтрацию с учетом входного и выходного сетевого интерфейса как средства проверки подлинности сетевых адресов;
фильтрацию с учетом любых значимых полей сетевых пакетов;
фильтрацию на транспортном уровне запросов на установление виртуальных соединений с учетом транспортных адресов отправителя и получателя;
фильтрацию на прикладном уровне запросов к прикладным сервисам с учетом прикладных адресов отправителя и получателя;
фильтрацию с учетом даты и времени;
аутентификацию входящих и исходящих запросов методами, устойчивыми к пассивному и (или) активному прослушиванию сети;
регистрацию и учет фильтруемых пакетов (в параметры регистрации включаются адрес, время и результат фильтрации);
регистрацию и учет запросов на установление виртуальных соединений;
локальную сигнализацию попыток нарушения правил фильтрации;
идентификацию и аутентификацию администратора межсетевого экрана при его локальных запросах на доступ по идентификатору (коду) и паролю условно-постоянного действия;
предотвращение доступа неидентифицированного пользователя или пользователя, подлинность идентификации которого при аутентификации не подтвердилась;
идентификацию и аутентификацию администратора межсетевого экрана при его удаленных запросах методами, устойчивыми к пассивному и активному перехвату информации;
регистрацию входа (выхода) администратора межсетевого экрана в систему (из системы) либо загрузки и инициализации системы и ее программного останова (регистрация выхода из системы не проводится в моменты аппаратурного отключения межсетевого экрана);
регистрацию запуска программ и процессов (заданий, задач);
регистрацию действия администратора межсетевого экрана по изменению правил фильтрации;
возможность дистанционного управления своими компонентами, в том числе возможность конфигурирования фильтров, проверки взаимной согласованности всех фильтров, анализа регистрационной информации;
контроль целостности своей программной и информационной части;
контроль целостности программной и информационной части межсетевого экрана по контрольным суммам;
восстановление свойств межсетевого экрана после сбоев и отказов оборудования;
регламентное тестирование реализации правил фильтрации, процесса регистрации, процесса идентификации и аутентификации запросов, процесса идентификации и аутентификации администратора межсетевого экрана, процесса регистрации действий администратора межсетевого экрана, процесса контроля за целостностью программной и информационной части, процедуры восстановления.
IP-адресация.
Каждый узел, работающий по IP – протоколу имеет свой собственный уникальный адрес, при этом IP – протокол адресует не узел целиком, а только соединение. На данный момент в основном используется тип IP – адресации IP v.4. В этом случае IP – адрес представляет собой универсальный 32-битный идентификатор, структура которого максимально оптимизирована для решения задач IP – маршрутизации. Для удобства используется цифровое написание адреса в десятичном виде, где каждый байт является десятичным числом, байты разделяются между собой точками. (192.168.0.1).
На данный момент используется в основном только 4 класса IP – адресов.
Билет № 32
Методы исследования систем.
Методы анализа делятся на качественные и количественные. В качественных основное внимание уделяется постановке задачи, начальной стадии оценки. Они заключаются в формировании вариантов, их оценки с учетом мнений экспертов. Количественные связаны с количественными характеристиками.
Качественные методы:
-Метод типа сценария. Представления о проблеме в виде определенного сценария изменения состояния. Сценарий является предварительной информацией, на основе которой проводится дальнейшая работа по прогнозированию развития объекта.
-Метод экспертных оценок. Использования мнения группы экспертов. Мнение группы надежнее одного эксперта.
-Метод типа Делфи. Предполагает полный отказ от коллективных обсуждений. Делается для уменьшения психологических факторов. Программа последовательных индивидуальных опросов. Итеративная процедура экспертных оценок.
-Методы типа дерева целей. Подразумевает использование иерархической структуры, полученной путем детализации, декомпозиции цели. Как правило, этот метод дает хорошие результаты, как и метод Делфи.
-Морфологические методы. Выделяется множество наиболее вероятных вариантов.
Количественные методы решают:
1.задачу оценивания показания, характеризующего свойства системы
2.задачу выбора оптимальной структуры
3.задачу выбора оптимальных параметров.
Эти задачи связаны с конкретными системами. Используются абстрактные уровни системы.
Математическую модель большой системы построить невозможно. Это плохо организованная модель. Ее невозможно описать аналитически. Возможностями предсказания занимался Ньютон. Предполагалось, что для выяснения количественной оценки z=f(x) можно оценить ее посредством эксперимента. Если существуют внешние переменные, то определенными способами можно стабилизировать систему. Т.о. были введены многие аналитические зависимости. Должны быть выявлены факторы, слабо влияющие на результат эксперимента. Для системы с латентными факторами существуют 2 метода:
- метод многомерного статистического анализа. Сведение многофакторной задачи к однофакторной. Перебор вариантов.
- кибернетический метод. Логический анализ управления – какое воздействие необходимо применить, чтобы достигнуть цели. Направленный перебор. После каждого этапа попытка предсказать реакцию. Если предсказание оправдалось, то идут по пути усложнения далее.
Использование подзапросов, коррелированные подзапросы.
Подзапрос – это команда SELECT, вложенная в предложение другой команды SQL. Подзапрос может возвращать одну и более строк или один и более столбцов. Допускается до 255 уровней вложенности подзапросов.
Подзапросы могут использоваться в командах SELECT,UPDATE, INSERT, DELETE, CREATE TABLE.
Правила создания подзапросов:
Подзапрос помещается в круглые скобки и должен стоять в правой части оператора сравнения внешнего запроса.
Подзапрос может обращаться к таблицам отличным от тех, к которым обращается основной запрос.
Подзапрос может задаваться в сложных критериях поиска внешних запросов с использованием логических связок AND и OR.
Предложение ORDER BY ставится последним в основном запросе и не может содержаться в подзапросе.
Подзапрос может содержать группы и групповые функции.
Имена столбцов в предложении SELECT внутреннего запроса должны стоять в той же последовательности, что и имена столбцов в левой части оператора сравнения внешнего запроса. Типы столбцов должны попарно соответствовать.
В критерии поиска могут использоваться логические операторы, операторы ANY (SOME), ALL.
В команде SELECT подзапрос может стоять в предложениях FROM, WHERE, HAVING.
INSERT INTO Student
SELECT NRecordBook, Sname, CodeGroup
FROM Student1;
Коррелированные подзапросы обращаются к данным внешнего (главного) запроса. Поэтому они выполняются для каждой строки внешнего запроса отдельно. Пример: Вывести имена студентов с оценками, которые выше, чем средняя оценка в их группе.
SELECT Sname, Mark
FROM Student St,Progress Pr
WHERE St.NRecordBook=Pr.NRecordBook
AND mark>(SELECT AVG(mark)
FROM Progress P1, Student S1
WHERE S1.CodeGroup=St.CodeGroup AND S1.NRecordBook=P1.NRecordBook)
П оследовательность выполнения:
Внешний запрос выбирает строку;
Выполняется внутренний запрос, используя значение строки внешнего запроса;
Результат выполнения внутреннего запроса возвращается во внешний запрос, где проверяется его соответствие выбранной строке;
Выбирается следующая строка внешнего запроса.
При задании вложенных запросов допускаются применение операторов АNY, EXIST, ALL и др. логические операторы.
Задачи тестирования программного обеспечения. Тестирование как процесс, а не этап. Тестирование модулей, интерфейсов, сборки. Нисходящее и восходящее тестирование. Метирики тестирования и окончание тестирования.
Тестирование — процесс выполнения программы, с целью обнаружения ошибок. В тестировании участвуют представители Заказчика (конечные пользователи) и разработчики. Тестирование ПО производится на заранее подготовленных тестах.
Каждый тест определяет: 1). свой набор исходных данных и условий для запуска, программы; 2). набор ожидаемых результатов работы программы.
Тестирование обеспечивает: 1). обнаружение ошибок; 2). демонстрацию соответствия функций программы ее назначению; 3). демонстрацию реализации требований к характеристикам программы; 4). отображение надежности как индикатора качества программы.
Процесс тестирования состоит из трёх этапов: проектирование тестов (решается вопрос о выборе некоторого подмножества множества тестов); исполнение тестов (проводят, запуск тестов и отлавливают ошибки в тестируемом программном продукте) и анализ полученных результатов.
Тестирование как процесс, а не этап. Тестирование нельзя рассматривать как вполне самостоятельный этап ЖЦ, который осуществляется в строгой последовательности выполнения этапов. Скорей, процедуры, предусмотренные в тестировании, применяются на всех других этапах ЖЦ. Например, после проектирования и анализа, можно производить тестирование спецификаций. По завершению этапа реализации и отладки, возможно проведение тестирование работоспособности системы. На конечном этапе (приемка) производятся приемочные испытания, которые так же являются элементами тестирования.
Тестирование модулей, интерфейсов, сборки. Тестирование модулей – применяется для выявления ошибок в работе группы методов, объединенных в модули или отдельные подсистемы. Тестирование можно проводить методами “черного ~” и “белого ящика”. Тестирование интерфейсов – применяется, когда модули или подсистемы интегрируются в большие системы. Каждый модуль или подсистема имеет заданный интерфейс, который вызывается другими компонентами системы. Цель тестирования – выявить ошибки, возникающие в системе, вследствие ошибок в интерфейсах или неправильных предложениях об интерфейсах. Тестирование сборки – осуществляется после тестирования всех компонентов, когда система собирается из компонентов. Во время сборки системы возникает проблема локализации выявленных ошибок. Между компонентами существуют сложные взаимоотношения, где и могут возникать ошибки. Такое тестирование выявляет ошибки при интеграции компонентов.
Нисходящее и восходящее тестирование. Известны два подхода к совместному тестированию модулей: пошаговое и монолитное тестирование. При монолитном тестировании сначала по отдельности тестируются все модули программного комплекса, а затем все они объединяются в рабочую программу для комплексного тестирования.
При пошаговом тестировании каждый модуль для своего тестирования подключается к набору уже проверенных модулей. В целом более целесообразным является выбор пошагового тестирования. При его использовании возможны две стратегии подключения модулей: нисходящая и восходящая.
Нисходящее тестирование начинается с главного (или верхнего) модуля программы, а выбор следующего подключаемого модуля происходит из числа модулей, вызываемых из уже протестированных. Одна из основных проблем, возникающих при нисходящем тестировании, - создание заглушек. Другая проблема, которую необходимо решать при нисходящем тестировании, - форма представления тестов в программе, так как, как правило, главный модуль получает входные данные не непосредственно, а через специальные модули ввода, которые при тестировании в начале заменяются заглушками. Для передачи в главный модуль разных тестов нужно или иметь несколько разных заглушек, или записать эти тесты в файл во внешней памяти и с помощью заглушки считывать их.
При восходящем тестировании проверка программы начинается с терминальных модулей (т.е. тех, которые не вызывают не каких других модулей программы). Эта стратегия во многом противоположна нисходящему тестированию. Основными недостатком восходящего тестирования является то, что проверка всей структуры разрабатываемого программного комплекса возможна только на завершающей стадии тестирования.
Метрики и окончания тестирования.
Чтобы принять решение о прекращении тестирования, чтобы выбрать оптимальный набор тестов и для многих других целей используются метрики тестирования и качества. Они позволяют оценить покрытие кода продукта тестами, спрогнозировать число ненайденных дефектов, оценить характеристики тестируемой системы.
В качестве метрик могут использоваться такие количественные характеристики, как количество проведенных тестов, из них количество успешных и не успешных, процентное соотношение данных показателей. Можно рассматривать так же динамику результатов тестов, как показатели меняются – увеличиваются или уменьшаются. На основе анализа данных показатели можно принять решение о завершении, или продление этапа тестирования.
Проектирование средств защиты информации. Горизонтальная структура.
Информация, передаваемая по сети, подвержена различным угрозам. Она может быть подвергнута изменению или удалению, что может привести к дезинформации среди сотрудников предприятия, а, следовательно, и к финансовым потерям. Ниже приведены основные типы угроз, которым может быть подвергнута система:
несанкционированный доступ к системе;
систему аутентификации, идентификации и авторизации, для локальной сети построить на базе Active Directory, управляющую доменом в головном здании. Доступ к данным, разрабатываемой системы осуществляется средствами СУБД;
установка антивирусного ПО Kaspersky Antivirus 6.0 и регулярное обновление его баз с локального зеркала, которое обновляет системный администратор при помощи USB flash накопителя. Локальное зеркало организуется при помощи папки открытой для общего доступа.
пароли на BIOS длиной не менее 6 символов;
опечатывать USB – порты на пользовательских рабочих станциях, в системных блоках не устанавливать CD-ROM.
угроза целостности данных;
регулярное создание инкрементных резервных копий баз данных, в виде архивов под паролем;
для избегания потери данных в случае отказа какого-либо жесткого диска на сервере БД, необходимо использовать RAID массив уровня 1;
использование только лицензированного и сертифицированного программного обеспечения.
угроза несанкционированного копирования;
аудит регистрации в системе, при котором регистрируются события успеха или отказа при входе пользователя в систему. Аудит осуществляется средствами контроллера домена Active Directory (настраивается в политике аудита домена) и средствами СУБД, традиционно для этих целей используются SQL Trace (Profiler), триггеры на DDL, а также анализаторы логов;
вести аудит доступа к объектам в частности к каким таблицам обращался пользователь и какие данные изменял.
блокировка рабочего стола при отсутствии пользователя (при отсутствии пользователя необходимо перевести компьютер в режим ожидания, то есть, включить screen-saver c опцией ввода пароля при выходе из этого режима);
угроза целостности программных средств;
угроза выхода из строя активного оборудования;
несанкционированный доступ к основному оборудованию (коммутаторы, маршрутизаторы, сервера).
физическая защита помещения с целью предотвращения присутствия в нем посторонних лиц (проверка пропусков на вахте, доступ в помещение только определенных лиц);
в целях предотвращения НСД к системе сервера и сетевое оборудование необходимо держать изолированно от всех в специально оборудованных помещениях, доступ к которым может предоставляться только ответственным лицам;
в нерабочее время (или при отсутствии сотрудников) кабинеты предприятия должны запираться на ключ (ОРМ);
Технологии Ethernet.
Еthernet использует множественный метод доступа, точнее один из этих вариантов – это множественный метод с обнаружением коллизий (CSMA/CD – контроль несущий, множественный доступ разрешения коллизий).
CS (контроль несущей) Каждый трансивер любого устройства Еthernet постоянно прослушивает сеть. Если в сети отсутствует напряжение, то она считается свободной. Если в сети присутствует напряжение, то сеть считается занятой и в ней производится передача данных. Если сеть занята, а у станции есть данные для передачи, то она будет ожидать освобождения сети. Если сеть свободна, то станция начнет попытку передачи данных.
МА (множественный доступ) Данное понятие означает, что любая станция в любой момент времени может начать передачу данных при условии, что сеть свободна, не ожидая при этом чьего-либо разрешения.
Если две и более станций пытаются выставить несущую, то в сети будет выявлен резкий скачок напряжения. Такая ситуация называется коллизией. А высокий уровень напряжения позволяет её определить.
CD (обнаружение/разрешение коллизий) В случае возникновения коллизий трансиверы станций, осуществляющих попытку выставить несущую, определяет высокий уровень напряжения. В этом случае данные станции производят откат, т.е. приостанавливают попытки передачи данных. Повторная попытка передачи будет производиться каждой станцией через некоторое случайное время, индивидуальное для каждой из них. Т.о. вероятность повторной коллизии значительно снижается.
Исторически технология Еthernet работала до стандарта 802.3. После принятия стандарта изменилась структура фрейма Еthernet. Хотя и старый, и новый фрейм могут существовать в сети одновременно.
Основным их отличием является присутствие в фрейме стандарта 802.3 структуры, описывающей подуровень LLC канального уровня по стандарту IEEE-802.2.
Билет № 33
Виды информационного обеспечения.
Необходимость использования информационных ресурсов была осознана человечеством постепенно. Информации не существует самой по себе, измерить ее невозможно. Информация существует в некоторой информационной среде, которая есть на самом деле: технические, программные ресурсы с их взаимосвязями друг с другом и с окружающей средой. В таком понимании информационные ресурсы являются информационным обеспечением. Развитие методов обработки информационного обеспечения:
- создавались АСУ (технологические процессы);
- появление фактографических ИС. Хранятся только сами факты.
- появляется понятие архивации;
- информационно-поисковые системы;
Развиваются методы поиска:
- простая система индексирования
- тематическое комплектование
- выработка режимов распространения информации
- критериальный поиск
- контекстный поиск – принцип гипертекста
- семантический поиск.
На основе сказанного выше появилась теория информационного поиска ТИП. Методы ТИП:
- регламентированное обслуживание по стандартному запросу;
- методы с критериями избирательного распространения информации
- дифференциальное обслуживание – регламентируемый доступ по паролю;
- информационное обеспечение технологических процессов
производственные процессы
научные исследования
менеджмент
компьютерные вычисления
Функции и архитектура распределённых СУБД.
Распределенная СУБД (СУРБД) – программный комплекс, предназначенный для управления распределенными БД и позволяющий сделать распределенность информации прозрачной для конечного пользователя. Типичная СУРБД должна обеспечивать, по крайней мере тот же набор функциональных возможностей, что и централизованная СУБД.
Функции СУБД: обеспечивает хранение информации; должна позволять организовывать структуры данных; обеспечивать эффективный доступ к данным и модернизировать их; удаление, добавление, редактирование; обеспечивает санкционированный доступ к данным; позволяет создавать пользовательский интерфейс; позволяет осуществлять управление транзакциями, при этом обеспечивает поддержание основных свойств транзакций. + СУРБД должна предоставлять следующий набор функциональных возможностей:
Расширенные службы установки соединений должны обеспечивать доступ к удаленным сайтам позволять передавать запросы и данные между сайтами, входящими в сеть.
Расширенные средства ведения каталога, позволяющие сохранять сведения о распределенности данных в сети.
Средства обработки распределенных запросов, включая механизмы оптимизации запросов и организации удаленного доступа.
Расширенные функции управления параллельностью, позволяющие поддерживать целостность реплицируемых данных.
Расширенные функции восстановления, учитывающие возможность отказов работ отдельных сайтов и отказов линий связи.
Архитектура СУРБД
Трехуровневая архитектура ANSI-SPARС для СУБД представляет собой типовое решение для централизованных СУБД.
Один из примеров рекомендуемой архитектуры включает: набор глобальных внешних схем; глобальную концептуальную схему; схему фрагментации и схему распределения; набор схем для каждой локальной СУБД, отвечающих требованиям трёхуровневой архитектуры ANSI-SPARС.
Глобальная концептуальная схема. Представляет собой логическое описание всей БД, представляющее её так, как будто она не является распределённой. Этот уровень СУРБД соответствует концептуальному уровню архитектуры ANSI-SPARС содержит определения сущностей, связей, требования защиты и ограничений поддержки целостности информации.
Схемы фрагментации и распределения. Схемы фрагментации - описание того, как данные должны логически распределяться по разделам.
Локальные схемы. Локальная схема отображения исп-ся для отражения фрагментов в схеме распр-ния во внутренние объекты локальной БД. Эти элементы являются зависимыми от типа используемой СУБД и служат основой для построения гетерогенных СУРБД.
Процесс отладки программного обеспечения. Сложность отладки ПО. Методы поиска и устранения ошибок. Связь отладки с тестированием.
Процесс отладки ПО. Связь отладки с тестированием. Отладка ПО – это процесс тестирования, с целью поиска ошибок в работе системы и принятия мер по их устранению. Не стоит путать с тестированием как таковым. Отладка неразрывно связана с процессом написания системы. Оба процесса идут параллельно друг другу, и в процессе отладки никто, кроме как программиста не принимает участия. Отладка направлена на создание работающей системы. Но такая система все равно может содержать ошибки: технические и бизнес-логики. Их, как правило, выявляют уже на этапе тестирования с привлечением конечных пользователей (β-тестирование).
Сложность отладки ПО.
Невозможно проверить разрабатываемую систему на наличие всех ошибок, т.к. число входов в систему может достигать большое количество. Причем домен значений каждого такого входа может быть так же большим. Следуя комбинаторике, число переборов, которое нужно сделать программисту, чтобы проверить работу системы может потребовать нескольких лет отладки. Соответственно, отладка заканчивается тогда, когда программист проведет достаточное большое количество тестов, покрывающих все основные ситуации пользователя.
Методы поиска и устранения ошибок.
1. С помощью средств среды разработки (все современные средства разработки, такие как Delphi, Builder или Visual Studio поддерживают механизмы точек остановки, просмотра промежуточных значений данных, пошаговое выполнение, замер производительности).
2. С помощью промежуточной печати (применяется особенно тогда, когда среда разработки не имеет в своем составе перечисленные выше средства). Метод основывается на выводе промежуточных значений данных на консоль пользователя. Метод полностью аналогичен встроенному механизму среды Delphi или Builder.
.Устранение ошибки заключается в ее локализации и непосредственном исправлении: кода или условий выполнения кода (окружения). Локализация – это поиск. Исправление включает анализ: почему этот код отрабатывает именно так, а не как требуется. Результатом такого анализа должна стать инструкция (возможно и формально закрепленная), указывающая что нужно менять, и как именно. Важным замечанием является тот факт, что локализованный участок кода, не всегда содержит ошибку. Порой он только проявляет ее и косвенно указывает на то место, где она возникла. Только анализ программистом локализованного участка, позволяет обнаружить истину, и принять соответствующие корректирующие действия.
Наиболее типичные ошибки: не заданы начальные значения переменных; не восстановление начального состояния переменных или окружения; Зацикливание программы; выход за границы массива; ошибки, связанные с распределением памяти; ошибки, связанные с вводом/выводом; ошибка в формате представления данных; ошибка в единицах измерения; ошибки, связанные с инструментом программирования; ошибки, связанные со средой программирования.
Методы и способы защиты информации от утечки по техническим каналам.
Защита речевой информации и информации, представленной в виде информативных электрических сигналов и физических полей, осуществляется в случаях, когда при определении угроз безопасности персональных данных и формировании модели угроз применительно к информационной системе являются актуальными угрозы утечки акустической речевой информации, угрозы утечки видовой информации и угрозы утечки информации по каналам побочных электромагнитных излучений и наводок, определенные на основе методических документов, утвержденных в соответствии с пунктом 2 Постановления Правительства Российской Федерации от 17 ноября 2007 г. N 781.
Для исключения утечки персональных данных за счет побочных электромагнитных излучений и наводок в информационных системах 1 класса могут применяться следующие методы и способы защиты информации:
использование технических средств в защищенном исполнении; использование средств защиты информации, прошедших в установленном порядке процедуру оценки соответствия;
размещение объектов защиты в соответствии с предписанием на эксплуатацию;
размещение понижающих трансформаторных подстанций электропитания и контуров заземления технических средств в пределах охраняемой территории;
обеспечение развязки цепей электропитания технических средств с помощью защитных фильтров, блокирующих (подавляющих) информативный сигнал;
обеспечение электромагнитной развязки между линиями связи и другими цепями вспомогательных технических средств и систем, выходящими за пределы охраняемой территории, и информационными цепями, по которым циркулирует защищаемая информация.
3.3. В информационных системах 2 класса для обработки информации используются средства вычислительной техники, удовлетворяющие требованиям национальных стандартов по электромагнитной совместимости, по безопасности и эргономическим требованиям к средствам отображения информации, по санитарным нормам, предъявляемым к видеодисплейным терминалам средств вычислительной техники.
3.4. При применении в информационных системах функции голосового ввода персональных данных в информационную систему или функции воспроизведения информации акустическими средствами информационных систем для информационной системы 1 класса реализуются методы и способы защиты акустической (речевой) информации.
Методы и способы защиты акустической (речевой) информации заключаются в реализации организационных и технических мер для обеспечения звукоизоляции ограждающих конструкций помещений, в которых расположена информационная система, их систем вентиляции и кондиционирования, не позволяющей вести прослушивание акустической (речевой) информации при голосовом вводе персональных данных в информационной системе или воспроизведении информации акустическими средствами.
Величина звукоизоляции определяется оператором исходя из характеристик помещения, его расположения и особенностей обработки персональных данных в информационной системе.
3.5. Размещение устройств вывода информации средств вычислительной техники, информационно-вычислительных комплексов, технических средств обработки графической, видео- и буквенно-цифровой информации, входящих в состав информационной системы, в помещениях, в которых они установлены, осуществляется таким образом, чтобы была исключена возможность просмотра посторонними лицами текстовой и графической видовой информации, содержащей персональные данные.
Мосты.
Обеспечивающим соединение двух или более сегментов возможно с различными протоколами канального уровня. Например:
Мост, в отличие от повторителей, не пропускает через себя фреймы, если получатель не находится в другом сегменте.
Производится за счет того, что мост знает все MAC-адреса всех подключенных к нему устройств во всех сегментах.
Мосты выпускаются двух видов:
Мосты с маршрутизацией от источника на канальном уровне. Источник фрейма размещает в нем информацию о пути его маршрутизации
Мосты с прозрачной передачей фреймов. Осуществляют передачув случае отсутствия получателя в сегменте
Отличие первых от вторых заключается в том, что мосты с возможностью маршрутизации могут найти оптимальное направление для передачи фреймов на основе информации о MAC-адресе получателя. Второй тип мостов передает фрейм во все соседние сегменты.
Мост, в отличие от хаба, работает на канальном уровне.
По принципу действия мосты делятся на два типа:
Транслирующие.
Инкапсулирующие.
Транслирующие мосты при прохождении фрейма производят пересборку структуры фрейма в необходимую технологию канального уровня. Таким образом, информация при прохождении транзитного сегмента полностью видна и обрабатывается в нем.
Инкапсулирующие мосты производят упаковку транзитного фрейма во фрейм технологии канального уровня транзитного сегмента. Таким образом, данные внутри транзитного сегмента не видны, и обрабатываться не могут.
Билет № 34
Проектирование информационных систем: методика постепенной формализации. Алгоритм реализации метода постепенной формализации для разработки АСУ.
Обеспечивающая часть АСУ сама является системой, поэтому для её проектирования также необходим системный подход. Структура обеспечивающей части включает основные виды обеспечения, такие как информационное, техническое, программное, лингвистическое, эргономическое и прочее, т.е. представляет средства для достижения целей АСУ. Модель постепенной формализации заключается в процессе выращивания структуры, исходя из целей и задач системы.
Эта методика системного анализа, которая должна сочетать методы активной интуиции и опыта специалистов и методы формального представления модели с процедурами оценки и решения. Принципиальная особенность модели постепенной формализации заключается в том, что она ориентирована на развитие представления исследователя об объекте непосредственно в процессе проектирования.
Модель постепенной формализации процесс итерационный:
1. вывод и формирование представлений об объекте и методах моделирования (должны получить несколько возможных вариантов);
2. выбор критериев оценки вариантов;
3. моделирование проблемной ситуации;
4. оценка результатов моделирования по выбранным критериям;
5. возврат к первому пункту, т.е. новые представления об объекте.
Пример:
1.В начале проектирования мы представляем нашу ИС как систему сбора информации, обработки информации и формирования отчётов. При этом система представляется нам как “чёрный ящик”, т.е. определяют начальные пункты сбора информации и конечные пункты формирования отчётов. Затем происходит отделение системы от внешней среды и деление её на компоненты, т.е. из каких систем она состоит.
2. Определяем связи, деля их на внешние и внутренние. Связываем компоненты (“поставить рядом”). Определим тип связи: сильная, слабая, количественная мера связи, которая оценивает близость компонентов. Эти описания можно строить на основе теоретико-множественных решений.
3. После построения структуры должен быть этап активизации лица, принимающего решения, который должен проанализировать и соединить компоненты в системно-структурное представление. Для этого необходимо ввести лингвистическое представление для разработки правил формирования вариантов. Разработка формального языка моделирования процессов (язык моделирования путей прохождения информации).
4. Системно-структурное представление должно быть представлено в формально-лингвистическом представлении. Результатом должна стать формально многоуровневая модель, описывающая пути и следования информации.
5. Выбор варианта оценки.
6. Оценка. Возврат на этап активации лица, принимающего решения.
Процесс завершается, когда степень удовлетворённости заказчика достаточна. Т. о. был получен алгоритм, обеспечивающий возможность программной реализации за счёт повторяемости процесса формирования и анализа модели при изменении первичных элементов и их оценок. Это алгоритм динамического программирования. Если на первом шаге выбираем структуру, то на втором этапе выбираем средства, которые могут эту структуру оптимальным образом обеспечить.
Составные части языка SQL и основные операторы.
SQL является примером языка предназначенного для работы с таблицами с целью преобразования входных данных к требуемому выходному виду. Язык SQL имеет два основных компонента:
язык DDL (Data Definition Language) - предназначенный для определения БД:
CREATE – создание таблицы;
CREATE TABLE [<имя базы данных>.[<имя владельца>] <имя таблицы>
({<имя столбца> <тип данных> (<размер>) [<ограничение для столбца>]}
[,…n])
[,<ограничение для таблицы>];
CREATE VIEW <имя представления>
[(<имя столбца> [,…n ])
[WITH {ENCRYPTION | SCHEMABINDING | VIEW_METADATA}]
AS
< команда SELECT>
[WITH CHECK OPTION];
DROP – удаление таблицы;
ALTER – внесение изменений в описание таблицы, в т.ч.: добавление и изменение столбцов; добавление, разрешение, запрет и удаление ограничений.
ALTER TABLE <имя таблицы>
[WITH CHECK| WITH NOCHECK]
ALTER| ADD| DROP {CONSTRAINT <имя ограничения>}
FOREIGN KEY [REFERENCES<имя таблицы> (<имя столбца> [,…n])] | PRIMARY KEY | UNIQUE | CHECK (<имя столбца> [,…n])}
[ON DELETE CASCADE]
язык DML (Data Manipulation Language) - для выборки и обновления данных:
INSERT – ввод новых строк в таблицу;
INSERT INTO {<имя таблицы>[(<имя столбца> [псевдоним] [, …n]] |[<подзапрос>]}
VALUES (<значение>[,…n]);
DELETE – удаление строк из таблицы;
DELETE FROM{<имя таблицы>
WHERE <условие>};
UPDATE – редактирование данных в таблице;
UPDATE {<имя таблицы>
[SET (<имя столбца>)] = <выражение> [,…n]|<подзапрос>]
WHERE <условие>};
SELECT – оператор выбора - спорный оператор (можно выделить в отдельную группу).
Параметризованные классы (template) и функции в языке C++ как средство статического полиморфизма.
Для обеспечения параметрического полиморфизма в С++ используется ключевое слово template. Параметрический полиморфизм позволяет одному и тому же коду использоваться относительно различных типов, где тип - параметр тела кода. В случае параметрического полиморфизма функция реализуется для всех классов одинаково, и, таким образом, реализована вообще для произвольного типа данных. Н-р, функция сортировки одинакова для данных любого типа, если функция сравнения данных задана отдельно.
Статический полиморфизм – выражается в перегрузке операторов, функций.
Шаблоны классов часто называют параметризованными типами, т.к. они имеют один или большее количество параметров типа, определяющих настройку родового шаблона класса на специфический тип данных при создании объекта класса.
Чтобы использовать шаблонные классы программисту достаточно один раз описать шаблон класса. Каждый раз, когда требуется реализация класса для нового типа данных, программист, использует простую краткую запись, сообщает об этом компилятору, который и создает исходный код для требуемого шаблонного класса.
Шаблоны: template <class имя переменной>
Далее может следовать либо определение класса, либо определение функции, либо определение структуры, либо объединения. Имя переменной – обычное имя, которое обозначает тип данных.
Родовая (шаблонная, параметризованная) функция определяет базовый набор операций, который можно применить к разным типам данных.
template <class T> <возвращаемый тип> <имя функции> (список входных параметров)
где class T – имя типа, для которого будет создаваться функция. Пример:
Template <class T> void sort (T a[], int n) {}
// sort - функция сортировки, параметры которой будут определены позже,
// н-р, sort <int> (a, 10); // если необходимо отсортировать массив целых чисел
// или sort <student>(a, 10); // сортировка массива студентов из 10 человек
Основные «свойства» шаблонов:
Шаблоны дают возможность определять при помощи одного фрагмента кода целый набор взаимосвязанных функций (перегруженных), называемых шаблонными функциями, или набор связанных классов, называемых шаблонными классами.
Чтобы использовать шаблоны функций, программист должен написать всего одно описание шаблона функции. Основываясь на типах аргументов, использованных при вызове этой функции, компилятор будет автоматически генерировать объектные коды функций, обрабатывающих каждый тип данных.
Все описания шаблонов функций начинаются с ключевого слова template, за которым следует список формальных параметров шаблона, заключаемый в угловые скобки (< и >); каждому формальному параметру должно предшествовать ключевое слово class. Ключевое слово class, используемое при определении типов параметров шаблона функции означает: «любой встроенный тип или тип, определяемый пользователем». Формальные параметры в описании шаблона используются для определения типов параметров функции, типа возвращаемого функцией.
Сам шаблон функций может быть перегружен несколькими способами. Можно определить другие шаблоны, имеющие то же самое имя функции, но различные наборы параметров. Шаблон функции может также быть перегружен.
Описание шаблона класса выглядит как традиционное описание класса, за исключением заголовка template <class T>, указывающего на то, что это описание является шаблоном класса с параметром типа Т, обозначающим тип классов, которые будут создаваться на основе этого шаблона.
Каждое описания функции-элемента вне заголовка шаблона класса начинается с заголовка template <class T>, за которым следует описание функции, подобное стандартному описанию, но как тип элемента класса всегда указывается параметр типа Т.
Классификация автоматизированных систем по уровню защищенности от НСД.
Выбор класса производится заказчиком и разработчиком с привлечением специалистов по защите информации. К числу определяющих признаков относятся:
наличие в системе информации различного уровня конфиденциальности;
уровень полномочий субъектов на доступ к конфиденциальной информации;
режим обработки данных в системе - коллективный или индивидуальный.
Устанавливается девять классов защищенности АС от НСД к информации.
Каждый класс характеризуется определенной минимальной совокупностью требований по защите.
Классы подразделяются на три группы, отличающиеся особенностями обработки информации в АС. В пределах каждой группы соблюдается иерархия требований по защите в зависимости от ценности (конфиденциальности) информации и, следовательно, иерархия классов защищенности АС.
Третья группа классифицирует АС, в которых работает один пользователь, допущенный ко всей информации АС, размещенной на носителях одного уровня конфиденциальности. Группа содержит два класса — 3Б и 3А.
Вторая группа классифицирует АС, в которых пользователи имеют одинаковые права доступа (полномочия) ко всей информации АС, обрабатываемой и (или) хранимой на носителях различного уровня конфиденциальности. Группа содержит два класса — 2Б и 2А.
Первая группа классифицирует многопользовательские АС, в которых одновременно обрабатывается и (или) хранится информация разных уровней конфиденциальности и не все пользователи имеют право доступа ко всей информации АС. Группа содержит пять классов — 1Д, 1Г, 1В, 1Б и 1А.
В зависимости от степени секретности информации, каждая группа делится на классы (А – самый секретный).
Классы В,Б,А используются для защиты гос. тайны. Если стоит гриф “секретно” – это должны быть классы 3А, 2А и не ниже 1В.
С грифом “совершенно секретно” 3А, 2А и не ниже 1Б. С грифом “особой важности” 3А, 2А, 1А.
1Г – конфиденциальная информация, 1Д – информация общего пользования.
Маршрутизация.
Маршрутизация – это функция сетевого уровня, которая заключается в том, что информация должна быть отправлена по наиболее оптимальному пути при любой сложности структуры сети и любом количестве возможных путей прохождения информации.
Для выполнения поиска оптимального пути соединения между собой двух станций в сети используются спец. устройства, называемые маршрутизаторами, которые строят в своей памяти спец. таблицу, называемую таблицей маршрутизации,
Статическая маршрутизация
Настройка статической маршрутизации осуществляется администратором соответствующего сегмента сети посредством прямого внесения информации обо всех имеющихся маршрутах непосредственно в таблицы маршрутизации. Главный недостаток: невозможность динамического обновления информации о маршрутах. Т.о. если прописанный маршрут оказывается недостижимым, информация о нем в таблице не обновляется (в случае с динамической маршрутизацией данная информация удаляется) и получатели по этому маршруту считаются недостижимы.
Динамическая маршрутизация
Построение таблицы маршрутизации происходит посредство обмена информацией между соседними маршрутизаторами и выполняется с помощью спец. протоколов, называемых протоколами маршрутизации.
Наиболее популярными протоколами этого класса являются протоколы RIP1, RIP2 и OSРF. RIP1 выбирает наилучший путь из таблицы маршрутизации до заданной сети путем вычисления “стоимости”, затраченной на путь. Максимальная цена – количество сегментов в маршруте, которое пакет может пройти.
Более совершенным является протокол маршрутизации OSPF (Open Shortest Path First), который основан на построении каждым маршрутизатором графа связей в сети с учетом их состояний и выборе кратчайшего пути на графе связей OSPF.
Билет № 35
Компоненты информационно-поисковых языков. Оценка эффективности информационно-поисковых языков. Меры оценки.
ИПЯ обладают высокими смысловыразительными способностями. В настоящее время под ИПЯ понимают формализованные семантические системы, обеспечивающие передачу (запись) информации в объеме, необходимом для цели поиска. В качестве стандартных единиц используют непосредственно ключевые слова или их сочетание в некоторых стандартных отношениях (стандартизированные предложения запросов).
Алфавит
языка:
алфавит того языка, который используется
в данный момент, которые используются
для построения запросов и для отражения
взаимоотношения слов в предложении.
Как любой формальный язык, ИПЯ должен
быть описан своей грамматикой, которая
состоит из синтаксиса и морфологии.
Синтаксис
– структура предложения. Морфология
– правила, по которым предложения могут
соединяться в синтаксические структуры.
Словарь: это те множество слов, которые могут быть использованы. Словарь состоит из слов и их дескрипторов. Словарь поделен на статьи, и статья указывает на дескрипторы, которые в ней находятся. (Основой словаря является тезаурус, предоставляющий допустимую лексику. Словарь = Тезаурус + Грамматика , ИПЯ = Синтаксис + Словарь).
Тезаурус: словарь, с некоторыми грамматическими свойствами (ограниченной грамматикой).
Для оценки эффективности ИПЯ используют четыре параметра:
семантическая мощность;
многозначность значений;
компактность;
стоимость.
Семантическая мощность и многозначность значений коррелируют друг с другом. Компактность и стоимость входят в противоречия с семантической мощностью и друг с другом.
Компактность – простота реализации.
Наиболее сложная оценка – семантическая мощность. Она является частью более общей оценки – эффективности инф. ресурсов.
В теории НТИ применяются две меры оценки удовлетворения инф. потребностей:
Мера релевантности – соответствие выдачи запросу;
Мера пертинентности – соответствие выдачи потребностям пользователя.
Кроме того, используются: частота обращений, число обслуженных пользователей, объем хранимой информации. Можно оценивать по стоимостной мере – либо экономическая эффективность, либо время окупаемости.
Виды декомпозиций. Правила декомпозиции без потерь.
Декомпозиция отношений проводится, чтобы исключить избыточное дублирование в отношениях. Выделяют два типа декомпозиций отношений: без потерь и с потерями. Декомпозиция без потерь происходит тогда, когда после соединения вновь полученных отношений получается исходное отношение. В ряде случаев невозможно провести декомпозицию без потерь. В этом случае надо решить: или поддерживать избыточное дублирование; или теряем ФЗ и поддерживаем ее программным путем. Выбор должен быть обоснован.
Существуют следующие виды декомпозиций:
Декомпозиция на минимальном покрытии (если в отношении только один ключ);
Декомпозиция на кольцевом покрытии (если в отношении несколько ключей и существуют эквивалентные левые части ФЗ);
Декомпозиция по теореме Хеза (если ни один из вышеперечисленных методов неприемлем или не дает желаемого результата).
Процесс декомпозиции следует всегда начинать со следующих операций:
с определения (идентификации) всех атрибутов, подлежащих хранению в БД.
установления между ними функциональных зависимостей.
Критерий, по которому определяют необходимость декомпозиции отношения, - нахождение отношения в той или иной НФ.
Процесс декомпозиции осуществляется поэтапно, при этом на каждом этапе (в большинстве случаев) исходное отношение разбивается только на 2 отношения, затем делается вывод о необходимости продолжения декомпозиции, если она необходима - процесс продолжается.
Декомпозиция снимает большинство проблем, связанных с выполнением операций – удаление, добавление и редактирование, за счет исключения избыточного дублирования информации.
Примеры декомпозиций:
1. На минимальном покрытии: R={ABC}, F={A->B, B->C} => R1={AB} R2={BC}
2. Декомпозиция на кольцевом покрытии: {ABCD}, F={A->B, B->AC, C->D}. В отношении присутствуют два эквивалентных атрибута А и В. Декомпозиция этого отношения путём выделения каждой ФЗ в отдельное отношение приведёт к избыточному дублированию, но уже на уровне отношения. В том случае декомпозиция осуществляется на минимальном кольцевом покрытии: G={(A,B)->C, (C)->D} => G1={(A,B)->C } {ABC} и G2={(C)->D } {CD}
3. Пусть дано отношение со схемой R={ABC} и множеством ФЗ {A->B}. Данное отношение декомпозируется без потерь по т.Хеза на два отношения R1={AB} и R2={AC}
4. Декомпозиций без потерь и с потерями: R={ABC} и F={AB C; C B}. Без потерь: R1={CB} и R2={AC}. С потерями: R1/={AB} и R2/={CB}
Жизненный цикл программного обеспечения. Фазы жизненного цикла, их характеристики и артефакты.
ЖЦ ПО определяется как период времени, который начинается с момента принятия решения о необходимости создания ПО и заканчивается в момент его полного изъятия из эксплуатации. ЖЦ включает в себя последовательность процессов, действия и задач, которые должны быть выполнены. Сегодня существует большое количество подходов, методов и технологий создания ПО, однако базовым наборов таких процессов являются:
процесс приобретения ПО, средств разработки и общесистемного ПО;
процесс поставки (инициирование поставки, подготовка договора, планирование, выполнение и контроль, проверка и оценка);
процесс разработки (подготовительные работы, анализ требований, проектирование архитектуры системы, кодирование и тестирование, интеграция, установка и приемка);
процесс эксплуатации (обучение персонала, эксплуатационное тестирование, эксплуатация, поддержка пользователей);
процесс сопровождения (анализ проблем и запросов на модификацию ПО, модификация ПО, проверка и приемка, перенос ПО в другую среду, снятие ПО с эксплуатации);
Выделяют еще вспомогательные процессы, такие как:
документирование процессов проектирования и разработки;
обеспечения качества продукта (системы) и процесса (работ);
верификации (формальное доказательство соответствия системы требованиям Заказчика) и аттестации (подтверждение и оценка проведенного тестирования);
аудит (определение соответствия требованиям, планами условиям договора);
разрешение проблем (анализ и решение проблем, независимо от их происхождения или источника, которые обнаружены в ходе разработки, эксплуатации, сопровождения или других процессов).
Классификация угроз и механизмы защиты (по характеру воздействия, по причине появления используемой ошибки защиты).
1. По характеру воздействия
Пассивные угрозы. Это угрозы, связанные с ошибками:
Процесса проектирования, разработки и изготовления систем и их компонентов (здания, сооружения, помещения, компьютеры, средства связи, ОС, прикладные программы и др.).
В работе аппаратуры из-за некачественного ее изготовления.
Процесса подготовки и обработки информации (ошибки программистов и пользователей из-за недостаточной квалификации и некачественного обслуживания, ошибки операторов при подготовке, вводе и выводе данных, корректировке и обработке информации).
Механизмы защиты: Периодически повышать квалификацию программистов, проводить обучение пользователей, вести дополнительное тестирование ПО. Для данных, вводимых в программу четко определять и устанавливать область допустимых значений. В программе предусматривать обработку всех возможных исключений. Вести контроль качества поступающей от поставщиков аппаратуры и разрабатывать регламенты ее эксплуатации.
Активные угрозы. Это угрозы:
Связанные с НСД к ресурсам АИС (внесение технических изменений в СВТ и средства связи, подключение к СВТ и каналам связи, хищение различных видов носителей информации: дискет, описаний, распечаток и других материалов, просмотр вводимых данных, распечаток, просмотр «мусора»).
Реализуемые бесконтактным способом (сбор электромагнитных излучений, перехват сигналов, наводимых в цепях (токопроводящие коммуникации), визуально-оптические способы добычи информации, подслушивание служебных и научно-технических разговоров и т. п.).
Механизмы защиты: Организовать политику безопасности на предприятии, в т.ч. организовать охрану помещений предприятия и охрану внешней территории. Выделить отдельное помещение для пользователей, сгруппировав пользователей, работающих с одинаковой конфиденциальной информацией (туда же поставить принтер). Организовать регламент доступа сотрудников в помещения (кто, куда имеет право входить, где хранятся ключи от помещения и как их получить), регламент для хранителя экрана. Для управления доступом организовать дискретный метод доступа (идентификация и аутентификация). Если не требуется частый выход в Интернет, то целесообразно иметь отдельный компьютер, не подключенный к сети предприятия. Для сохранности данных использовать резервное копирование и архивирование. Для избежания проблемы прослушивания сетевого трафика необходимо вместо hub’ов использовать коммутаторы. В этом случае информация от отправителя будет направляться только получателю. Для избежания маскировки (подмены) привязать MAC-адреса сетевых устройств к портам коммутатора, т.е. каким MAC-адресам разрешено отправлять и получать пакеты. Для надежности каналов связи между ЛВС можно организовать VPN. Во избежание наводок использовать экранированный кабель и прокладывать так, чтобы к нему не было физического доступа (лучше всего по коридору), упаковывать в короба, для каждого пользователя выделять Ethernet розетку. Во избежание прослушивания не прокладывать кабель вблизи окон и батарей. Можно сделать экранированными стены, пол, потолок. Использовать межсетевые экраны для фильтрации трафика. Производить очистку памяти после использования. И т.д.
2. По причине появления используемой ошибки защиты
Неадекватность политики безопасности реальной АСОИБ.
Это означает, что разработанная для данной АСОИБ политика безопасности настолько не отражает реальные аспекты обработки информации, что становится возможным использование этого несоответствия для выполнения несанкционированных действий. Все системы в той или иной степени имеют несоответствия подобного рода (модель никогда не может точно соответствовать реальной системе), но в одних случаях это не может привести к нарушениям, а в других - может. С другой стороны, такие действия нельзя назвать несанкционированными, поскольку защита от них не предусмотрена политикой безопасности и система защиты в принципе не способна их предотвратить.
Механизмы защиты: Если такое несоответствие является опасным, то необходимо разработать новую политику безопасности, в которой оно будет не столь явным и сменить средства защиты для реализации новой политики безопасности.
Ошибки административного управления.
Под ними понимается некорректная реализация или поддержка принятой политики безопасности в данной АСОИБ. Например, согласно политике безопасности, в АСОИБ должен быть запрещен доступ пользователей к определенному набору данных, а на самом деле (по невнимательности администратора безопасности) этот набор данных доступен всем пользователям.
Механизмы защиты: Исправлять ошибки. Обычно на исправление такой ошибки требуется очень мало времени, как и на ее обнаружение, но ущерб от нее может быть огромен.
Ошибки в алгоритмах программ, в связях между ними и т.д.
Возникают на этапе проектирования программы или комплекса программ и благодаря ним программы можно использовать совсем не так, как описано в документации.
Механизмы защиты: Такие ошибки могут быть очень опасны, но их трудно найти. Чтобы их устранить, надо менять программу или комплекс программ.
Ошибки реализации алгоритмов программ (ошибки кодирования), связей между ними и т.д.
Возникают на этапе реализации или отладки и также могут служить источником недокументированных свойств.
Механизмы защиты: Тестировать, исправлять ошибки. Однако подобные ошибки обнаружить труднее всего.
Обеспечение надежной доставки данных. Метод квитирования.
Метод квитирования – данный метод позволяет осуществить надежную доставку данных от отправителя к получателю путем отсылки подтверждения принятия каждого из пакетов, который называется квитанцией. После отсылки пакета отправитель приостанавливает передачу до получения квитанции о принятии данного пакета. После получения квитанции ее содержимое анализируется и в случае необходимости пакет отправляется заново.
пакет был получен, но квитанция на него не была сформирована;
пакет был получен, квитанция сформирована, но не дошла до отправителя.
В этом случае отправитель сколь угодно долго может ожидать получения квитанции, прекратив при этом любую передачу по данному виртуальному каналу. Для того чтобы корректно разрешить данную ситуацию в добавление к механизму квитирования используют механизм таймаутов.
Билет № 36
Системный анализ и системный подход. Пять принципов системного подхода. Методология проведения исследований на базе системного подхода.
Системный подход (СП) – способ решения практических задач с использованием элементов общей теории систем. Существует пять принципов системного подхода:
1. Совокупность элементов системы рассматривается как единое целое, а не как простое объединение элементов.
2. Свойства системы не есть сумма свойств его элементов.
3. Цель существования системы определяется как достижение максимума функции ценности. При этом функция ценности определяется как зависимость эффективности системы от условий построения и функционирования.
4. Необходимость учета внешних связей, так как изолированных систем не существует.
5. Так как должны учитываться внешние связи, то система может являться подсистемой другой глобальной системы.
Системный анализ (СА) – направление общей теории систем наиболее конструктивное и предлагающее методологию проведения исследований на базе системного подхода.
Эта методология включает в себя следующее:
- Способы выделения этапов исследования;
- Методики выполнения этапов;
- Методы формализации представления целей;
- Критерии оценки эффективности.
Ключи. Неопределенность значений атрибутов в ключах.
Подмножество атрибутов схемы отношения, однозначно идентифицирующее любую запись в отношении и не имеющее собственного подмножества, также идентифицирующего любую запись в отношении, называется ключом отношения.
Из определения следует - ключ отношения должен отвечать следующим требованиям: идентифицировать кортеж; не содержать "лишних" атрибутов.
Одно отношение может иметь несколько ключей. Ключ может состоять как из одного атрибута, так и нескольких (составной ключ).
Первичный ключ - ключ, который используется в данный момент. Все остальные ключи являются возможными. При выборе первичного ключа учитывается: чтобы ключ был несоставной (желательно); его значение не должно меняться в процессе жизни БД.
Когда невозможно найти идентификатор, отвечающий этим требованиям, вводится суррогатный ключ, значение которого является внутренним делом системы.
Т.к. БД представляет собой совокупность отношений, которые должны быть связаны между собой, то должен существовать механизм организации этой связи, в котором основное место занимает внешний ключ. Внешний ключ отношения есть множество атрибутов, которые являются первичным ключом в другом отношении. Пример:
R(Студент) = {№ зачетки, Фамилия, Имя, Отчество, …}
R(Успеваемость) = {№ зачетки, Название предмета, Название вида отчетности, Оценка}
Внешний ключ - № зачетки.
Отношение, содержащее внешний ключ, называется ссылающимся отношением (Успеваемость). Отношение, содержащее первичный ключ, адекватный внешнему ключу другого отношения, называется ссылочным отношением (Студент).
Если некий атрибут присутствует в нескольких отношениях, то его наличие обычно отражает определенную связь между кортежами этих отношений.
Недопустимо, чтобы атрибуты, входящие в первичный или внешний ключ принимали NULL значения. Если в каком-то кортеже отсутствуют данные о значении атрибута, то говорят, что его значение NULL (не определено, неизвестно, неприемлемо для данного кортежа). Определитель NULL следует воспринимать как логическую величину «неизвестно». Т.е. либо это значение не входит в область определения некоторого кортежа, либо никакое значение еще не задано. Ключевое слово NULL представляет собой способ обработки неполных или необычных данных. Значение NULL не эквивалентно не нулевому численному значению, не пустой строке. Для избежания NULL значений в первичном и внешнем ключах целесообразно вводить суррогатный ключ.
Понятие супреключа. Суперключ - содерж внутри себя подмнож-во атр, однозн-но идентиф кортеж отнош-я. Суперключ – не ключ.
Понятие интерфейса. Язык описания интерфейсов IDL (MIDL).
Ключевым моментом, на котором основана модель COM, является понятие интерфейса.
Интерфейс, образно говоря, является «контрактом» между программистом и компилятором. Программист обязуется реализовать все методы, описанные в интерфейсе, и следовать требованиям, предъявляемым к реализации некоторых их них.
Компилятор обязуется создать в программе внутренние структуры, позволяющие обращаться к методам этого интерфейса из любого поддерживающего те же соглашения средства программирования. Таким образом, COM является языково-независимой технологией и может использоваться в качестве «клея», соединяющего программы, написанные на разных языках.
Объявление интерфейса включает в себя описание методов и их параметров, но не включает их реализации. Кроме того, в объявлении может указываться идентификатор интерфейса — уникальное 16-байтовое число, сгенерированное по специальным правилам, гарантирующим его статистическую уникальность (GUID — Global Unique Identifier). Тип данных GUID, который применяется для идентификации COM-интерфейсов называется IID.
Интерфейсы могут наследоваться. Наследование интерфейсов — это декларация, указывающая, что унаследованный интерфейс должен включать в себя все методы предка.
Спецификация COM предполагает, что компоненты могут выполняться в разных адресных пространствах. При этом, при передаче управления (запуске) компонента возникает ситуация передачи параметров из одного адресного пространства в другое. Это процесс называется маршаллингом. Маршаллинг основывается на шаблоне Remote Proxy. В COM представлены спецификации стандартной реализации IMarshal, а для некоторых интерфейсов и код заместителей/заглушек. Программисту остается это только реализовать. Однако, язык определения COM-интерфейсов IDL (MS Interface Definition Language) позволяет этот процесс упростить. Описав компонент на IDL, после компиляции можно получить реализацию компонента на C/C++ с кодом заглушки/заместителя. На вход компилятора-IDL подается код на языке IDL. На выходе (после компиляции) получается программный код на языке высокого уровня. Чаще всего это C++. Замечание: язык IDL не является частью спецификации COM. Он является первичным языком технологии CORBA. Однако, в COM может быть использован факультативно.
Ниже приведен пример описания интерфейса на MIDL.
[
uuid(F3792A83-69C9-11D2-AC8C-525400DDA17A),
helpstring("Этот интерфейс определяет методы работы со стеком.")
]
interface IStack : IUnknown
{
HRESULT Push([in] VARIANT Val);
HRESULT Pop([out, retval] VARIANT *pVal);}
Критерии оценки надежных компьютерных систем. Оранжевая книга.
В "Оранжевой книге" надежная система определяется как "система, использующая достаточные аппаратные и программные средства, чтобы обеспечить одновременную обработку информации разной степени секретности группой пользователей без нарушения прав доступа".
Надежность систем оценивается по двум основным критериям:
Политика безопасности - набор законов, правил и норм поведения, определяющих, как организация обрабатывает, защищает и распространяет информацию. Политика безопасности – это активный компонент защиты, включающий в себя анализ возможных угроз и выбор мер противодействия.
Уровень гарантированности – мера доверия, которая может быть оказана архитектуре и реализации ИС. Показывает, насколько корректны механизмы, отвечающие за проведение в жизнь политики безопасности. Это пассивный элемент защиты, надзирающий за своим защитником.
В "Оранжевой книге" рассматривается два вида гарантированности:
Операционная гарантированность - это способ убедиться в том, что архитектура системы и ее реализация действительно реализуют избранную политику безопасности.
Включает в себя проверку следующих элементов: Архитектура системы; Целостность системы; Анализ тайных каналов передачи информации; Надежное администрирование; Надежное восстановление после сбоев.
Технологическая гарантированность охватывает весь жизненный цикл ИС, то есть периоды проектирования, реализации, тестирования, продажи и сопровождения. Все перечисленные действия должны выполняться в соответствии с жесткими стандартами, чтобы исключить утечку информации и нелегальные "закладки".
Включает: Тестирование; Доступность системы; Надежность системы; Верификация описания системы.
Концепция надежной вычислительной базы (НВБ) является ключевой при оценке степени гарантированности, с которой система может считаться надежной. НВБ – совокупность защитных механизмов компьютерной системы (включая аппаратное и программное обеспечение), отвечающих за проведение в жизнь политики безопасности.
Граница НВБ – периметр безопасности. Компоненты вне НВБ могут быть ненадежными, но это не должно менять ее надежность в целом.
Основное назначение НВБ - выполнять функции монитора обращений, то есть контролировать допустимость выполнения субъектами определенных операций над объектами. Каждое обращение пользователя к программам или данным проверяется на предмет согласованности со списком действий, допустимых для пользователя.
От монитора обращений требуется выполнение 3 свойств:
Изолированность - монитор д. б. защищен от отслеживания своей работы;
Полнота - монитор должен вызываться при каждом обращении, не должно быть способов его обхода;
Верифицируемость - монитор должен быть компактным, чтобы его можно было проанализировать и протестировать, будучи уверенным в полноте тестирования.
Реализация монитора обращений называется ядром безопасности. Ядро безопасности - это основа, на которой строятся все защитные механизмы. Помимо перечисленных выше свойств монитора обращений, ядро должно гарантировать собственную неизменность.
6. Основные элементы политики безопасности по «Оранжевой книге».
Согласно "Оранжевой книге", политика безопасности должна включать в себя, по крайней мере, следующие элементы:
1. произвольное управление доступом;
2. безопасность повторного использования объектов;
3. метки безопасности;
4. принудительное управление доступом.
Произвольное управление доступом - это метод ограничения доступа к объектам, основанный на учете личности субъекта или группы, в которую субъект входит. Произвольность управления состоит в том, что некоторое лицо (обычно владелец объекта) может по своему усмотрению давать другим субъектам или отбирать у них права доступа к объекту.
Безопасность повторного использования объектов - предохраняет от случайного или преднамеренного извлечения секретной информации из "мусора". Безопасность повторного использования должна гарантироваться для областей оперативной памяти, в частности для буферов с образами экрана, расшифрованными паролями и т.п., для дисковых блоков и магнитных носителей в целом.
Метки безопасности
Для реализации принудительного управления доступом с субъектами и объектами используются метки безопасности. Метка субъекта описывает его благонадежность, метка объекта - степень закрытости содержащейся в нем информации.
Согласно "Оранжевой книге", метки безопасности состоят из двух частей: уровня секретности и списка категорий. Уровни секретности, поддерживаемые системой, образуют упорядоченное множество, которое может выглядеть, например, так:
совершенно секретно;
секретно;
конфиденциально;
несекретно.
Категории образуют неупорядоченный набор. Их назначение описать предметную область, к которой относятся данные.
Принудительное управление доступом основано на сопоставлении меток безопасности субъекта и объекта.
Субъект может читать информацию из объекта, если уровень секретности субъекта не ниже, чем у объекта, а все категории, перечисленные в метке безопасности объекта, присутствуют в метке субъекта.
Субъект может записывать информацию в объект, если метка безопасности объекта доминирует над меткой субъекта.
Принудительное управление доступом реализовано во многих вариантах операционных систем и СУБД, отличающихся повышенными мерами безопасности.
Алгоритм исключения станции из сети ArcNet.
Станция, владеющая маркером при передаче его следующей станции, проверяет был ли маркер принят. Если маркер не был принят, то станция-последователь исключается из цепочки. Для восстановления целостности цепи в сеть отправляется запрос, называемый «Поиск последователя последователю». Если такая станция обнаруживается, то она становится последователем текущей и цепочка восстанавливается. Если такая станция не обнаруживается, то такая ситуация является нерешаемой. В данном случае в сеть отправляется специальный маркер, который сигнализирует о реконфигурации логического кольца. Реконфигурация является новой организацией логического кольца в порядке физических адресов.
Билет № 37
Общая структурная схема информационной поисковой системы. Компоненты информационной поисковой системы. Словарь информационно-поисковой системы.
ИПЯ обладают высокими смысловыразительными способностями. В настоящее время под ИПЯ понимают формализованные семантические системы, обеспечивающие передачу (запись) информации в объеме, необходимом для цели поиска. В качестве стандартных единиц используют непосредственно ключевые слова или их сочетание в некоторых стандартных отношениях (стандартизированные предложения запросов).
Алфавит языка: алфавит того языка, который используется в данный момент, которые используются для построения запросов и для отражения взаимоотношения слов в предложении. Как любой формальный язык, ИПЯ должен быть описан своей грамматикой, которая состоит из синтаксиса и морфологии. Синтаксис – структура предложения. Морфология – правила, по которым предложения могут соединяться в синтаксические структуры.
Словарь: это те множество слов, которые могут быть использованы. Словарь состоит из слов и их дескрипторов. Словарь поделен на статьи, и статья указывает на дескрипторы, которые в ней находятся. (Основой словаря является тезаурус, предоставляющий допустимую лексику. Словарь = Тезаурус + Грамматика , ИПЯ = Синтаксис + Словарь).
Тезаурус: словарь, с некоторыми грамматическими свойствами (ограниченной грамматикой).
Для оценки эффективности ИПЯ используют четыре параметра:
семантическая мощность;
многозначность значений;
компактность;
стоимость.
Семантическая мощность и многозначность значений коррелируют друг с другом. Компактность и стоимость входят в противоречия с семантической мощностью и друг с другом.
Компактность – простота реализации.
Наиболее сложная оценка – семантическая мощность. Она является частью более общей оценки – эффективности инф. ресурсов.
В теории НТИ применяются две меры оценки удовлетворения инф. потребностей:
Мера релевантности – соответствие выдачи запросу;
Мера пертинентности – соответствие выдачи потребностям пользователя.
Кроме того, используются: частота обращений, число обслуженных пользователей, объем хранимой информации. Можно оценивать по стоимостной мере – либо экономическая эффективность, либо время окупаемости.
OLAP и OLTP системы, хранилище данных.
Первоначально в теории БД была сформирована концепция
OLTP (On-Line Transaction Processing) систем или систем оперативной обработки транзакций. Эти системы предназначены для решения задач сбора, хранения и поиска оперативных данных. Они используются в повседневной деятельности предприятия.
Обычно в таких системах предусмотрено архивирование данных, которые обычно уже не используются. Так, например, данные о студентах, которые уже завершили свое обучение.
Но для выполнения полного анализа деятельности организации, определения ее деловых показателей и тенденций их изменения необходимо иметь доступ не только к текущим данным, но и к ранее накопленным. Для упрощения подобного анализа Коддом была разработана концепция хранилища данных (data warehouse).
Хранилище данных – предметно-ориентированный, интегрированный, неизменчивый, поддерживающий хронологию набор данных, организованный для целей поддержки принятия решений. Попросту говоря, хранилище данных – это глобальный репозиторий, предназначенный для хранения сводных данных по всему предприятию в целом. Предполагается, что такое хранилище может содержать сведения, поступающие из самых разных источников данных, а также различные накопительные и сводные данные.
Хранилище оперативных данных (Operational Data Store — ODS) представляет собой репозитарий для текущих и интегрированных оперативных данных, применяемых при анализе. Чаще всего оно структурируется и заполняется данными по такому же принципу≫ как и обычное хранилище данных, но фактически применяется просто как область накопления данных перед их передачей в обычное хранилище. Это что-то среднее между хранилищем и реляционной БД.
Однако лицам, ответственным за принятие корпоративных решений, необходимо иметь мощные инструменты анализа накопленных данных. Основными средствами анализа в последние годы стали инструменты оперативной аналитической обработки (On-Line Analytical Processing — OLAP) и инструменты разработки данных (data mining).
OLAP – технология оперативной аналитической обработки данных, использующая методы и средства для сбора, хранения и анализа многомерных данных в целях поддержки процессов принятия решений. Основное назначение OLAP систем – поддержка аналитичекой деятельности, произвольных запросов пользователей-аналитиков. Целью является помощь в генерации и проверке возникающих гипотез.
Соглашения по преобразованию (приведению) типов данных в языке C++. Операторы const_cast, reinterpret_cast, static_cast, dynamic_cast.
С помощью механизма приведения типов можно явно преобразовывать данные одного типа в данные другого. Есть два равнозначных способа:
(имяТипа) значение // была определена еще в языке С
имяТипа (значение) // введена в С++ для сходства с вызовом функции
Оператор const_cast() используется для добавления или удаления из типа модификаторов const (и volatile). Другими словами – для устранения постоянства объекта. Например, если член-функция класса объявлена как const, она не может изменять данные в этом классе. Однако, с помощью оператора const_cast можно преобразовать ее к объекту, отличному от const и имеющему тот же тип. Это позволит член-функции const изменить данные класса:
Void f() const // член-функция класса myClass
{ Somevalue++; // запрещено
Const_cast<myClass*>(this)->SomeValue++; // можно!!}
Данный пример преобразовывает объект класса myClass в объект такого же типа, но без модификатора const в методе f().
Оператор reinterpret_cast() выполняет преобразование между указателями, их типами и числами в указатели и наоборот. Синтаксис: reinterpret_cast<Type>(Object);
Type может быть указателем, ссылкой, арифметическим типом, указателем на функцию или на число. Если существует неявное преобразование из Object в Type, то оператор работает, иначе – генерирует ошибку времени компиляции. Результат является системозависимым (то есть зависит от реализации). Пример – преобразование указателя к целому типу и наоборот:
int func(void* p)
{ Return reinterpret_cast<int>(p) }
int main()
{ int value=8;
int j=Func(reinterpret_cast<void*>(value));// 8
int j=Func(reinterpret_cast<void*>(&value)); // вернет непредсказуемый адрес (н-р, 1234567)
}
Оператор dynamic_cast() позволяет определить во время выполнения, указывает ли ссылка (или указатель) базового класса на объект указанного порожденного. Оператор можно применять только тогда, когда базовый класс является полиморфным (т.е. есть в базовом классе хотя бы одна виртуальная функция).
Синтаксис: dynamic_cast <Type> (Object)
Аргумент Type – это тип, к которому выполняется приведение. Аргумент Object – преобразуемый объект. Type должен быть указателем или ссылкой на тип определенного класса. Аргумент Object должен быть выражением для указателя или ссылки. В случае успеха dynamic_cast преобразует Object к желаемому типу. Поскольку в случае неудачного приведения ссылки возбуждается исключение bad_cast, то применение данного оператора безопаснее традиционного приведения, которое терпит неудачу и не указывает на ошибку. Использование оператора dynamic_cast также называется безопасным приведением типа. Преобразование указателя или ссылки порожденного класса в указатель или ссылку базового класса выполняется во время компиляции, а результат направляется в указатель или ссылку на подобъект базового класса. Такое преобразование называется преобразованием вверх (upcast). По аналогии обратное преобразование – преобразование вниз (downcast).
В отличие от dynamic_cast(), оператор static_cast() используется в контексте типа объекта времени компиляции (т.е. компилятору заранее известно, какой тип объекта будет преобразовываться).
Синтаксис аналогичен dynamic_cast(). И Type, и Object должны быть известны на стадии компиляции. Если существует определенный в C++ метод, обеспечивающий запрашиваемый перевод, то он будет использован (например, из float в double).
Структура информационных ресурсов и соответствующих законодательных актов.
Информационные ресурсы являются объектами отношений физических, юридических лиц, государства, составляют информационные ресурсы России и защищаются законом наряду с другими ресурсами. (дальше идет схема):
0. Информация, информационные ресурсы. Закон РФ "Об онформации, информационных технологиях и о защите информации" от 27.07.06 №149-ФЗ. В нее входит:
1. Открытая общего пользования. Закон РФ "О СМИ"; УК РФ ст. 140, 144, 237, 242
2. Охраняемая (ограниченного пользования). Закон РФ "Об онформации, информационных технологиях и о защите информации" от 27.07.06 №149-ФЗ
2.1 Конфиденциальная (специальные нормы законодательства). УК РФ ст. 138, 183 и Указ президента РФ № 188 от 06.03.1997
2.1.1 Личного характера (Персональные данные). УК РФ ст. 137, 155, Трудовой кодекс РФ, закон РФ "О Персональных данных" от 27.07.06 №152-ФЗ
2.1.2 Связанная с производственно-хозяйственной деятельностью. Глава 28 УК РФ
2.1.2.1 Объекты авторского права и смежных прав. Закон РФ "Об авторском праве и смежных правах", УК РФ ст. 146
2.1.2.2 Объекты патентованного права (промышленной собственности). "Патентный закон РФ", УК РФ ст. 147, 180
2.1.2.3 Коммерческая тайна. ст. 139 п. 1 Гражданского кодекса РФ, УК РФ ст. 183, Закон РФ "О коммерческой тайне"
2.1.2.3.1 Торговая, финансовая информация
2.1.2.3.2 "НОУ-ХАУ" (беспатентные технологии)
2.1.3 Для служебного пользования. Указ Президента РФ № 1233 от 03.11.94
2.1.4 Сведения о частной жизни, тайна следствия и судопроизводства, ДСП, профессиональная (врачебная, адвокатская тайна, тайна переписки, телефонных переговоров, почтовых отправлений и т.д.), коммерческая тайна, об изобретениях и промышленных образцах до официальной публикации информации о них. Указ Президента РФ № 168 от 06.03.97
2.2 Гос. тайна. Закон РФ "О гос. тайне". Грифы:
2.2.1 Особой важности
2.2.2 Совершенно секретно
2.2.3 Секретно
Типичные схемы построения многосегментных LAN.
Пример: Предприятие располагается в трехэтажном здании.
Схема 1: LAN на основе сервера или моста.
Все задачи коммутационного оборудования (в т.ч. маршрутизации) возлагаются на сервер.
Н е требует настройки, т.к. мост работает на канальном уровне и знает все MAC-адреса подключенных к нему устройств.
Схема 2: LAN на основе коммутаторов.
В зависимости от трафика возможны варианты:
Ускорить работу данной системы можно, подключив сервера к коммутаторам по более скоростной технологии.
(Для небольшого трафика)
Схема 3: LAN на основе маршрутизаторов.
Проблемы: безопасность, наличие резервных каналов связи.
Схема 4: На основе Backbone.
Между сегментами сети прокладывается основная высокоскоростная магистраль - Backbone.
Билет № 38
Основные понятия теории информационных систем: система, информация, информационная система, информационный обмен, состояние системы.
Система – единство взаимосвязанных и взаимозависимых элементов, расположенных в определённой последовательности в пространстве и времени, совместно действующих для достяжения общей цели.
Информация – понятие философское и выводится посредством умозаключений:
1. Информация не существует сама по себе и при этом не тождественна ни веществу, ни энергии, хотя является третьей составляющей материи.
2. Информация существует только посредством и в форме материальных носителей, то есть не существует информации, как абстракции.
3. Понятие информации можно ввести только при наличии двух сторон информационного обмена: источника и приёмника, следовательно, информация существует лишь внутри совокупности объектов.
Целью информационного обмена является вызвать некоторые желательные для объекта-источника изменения в объекте–приемнике, т.е. управление.
Следовательно информация – это воздействие одного объекта информационного обмена (источник) на другой объект (приемник) с целью вызова в нём желаемых изменений.
Информационный обмен – контролируемое и целенаправленное изменение состояния одного объекта со стороны другого.
Другое определение информации – материальная модель реального изменения объекта.
Система, в которой происходит информационный обмен – информационная система.
Информационные системы обладают всеми свойствами систем, но также имеют и ряд особенностей:
Используют такой ресурс как информация;
Потенциальная эффективность – если обычные ресурсы амортизируются, то инф. ресурсы можно использовать многократно без износа;
Тиражируемость – требует незначительного вложения средств и существенно снижает себестоимость.
Состояние системы: множество существенных свойств, которыми система обладает в данный момент времени. Характеризует срез системы (остановку в ее развитии) в некоторый момент времени. Его определяют через входные воздействия и выходные реакции в момент времени t. Может так же характеризоваться макропараметрами, макросвязями системы.
Транзакция и её свойства.
Транзакция - действие или серия действий, выполняемых одним пользователем или прикладной программой, которые осуществляют доступ или изменение содержимого БД.
Любая транзакция всегда должна переводить БД из одного согласованного состояния в другое, хотя допускается, что согласованность состояния БД будет нарушаться в ходе выполнения транзакции. Любая транзакция завершается одним из двух возможных способов. В случае успешного завершения результаты транзакции фиксируются (commit) в БД, и транзакция переходит в новое согласованное состояние. Если выполнение транзакции не прошло успешно, она отменяется, в этом случае в БД должно быть восстановлено то согласованное состояние, в котором она находилась до начала данной транзакции - откат (roll back) транзакции. Зафиксированная транзакция не может быть отменена. Если оказывается, что зафиксированная транзакция была ошибочной, потребуется выполнить другую транзакцию, отменяющую действия, выполненные первой транзакцией. В большинстве языков манипулирования данными для указания границ отдельных транзакций используются операторы BEGIN TRANSACTION, COMMIT и ROLLBACK.
Свойства транзакций ACID: Атомарность. Свойство типа «все или ничего». Любая транзакция представляет собой неделимую единицу работы, которая может быть выполнена либо вся целиком, либо не выполнена вовсе. Согласованность. Каждая транзакция должна переводить БД из одного согласованного состояния в другое согласованное состояние. Внутри транзакции система может находиться в несогласованном состоянии. Изолированность. Все транзакции выполняются независимо одна от другой - промежуточные результаты незавершенной транзакции не должны быть доступны другим транзакциям. Долговечность. Результаты успешно завершенной транзакции должны сохраняться в БД постоянно и не должны быть утеряны в результате последующих сбоев.
Синтаксис осн команд:
Begin Tran [saction] [<имя транз>],
Commit Tran [saction] [<имя транз>],
RollBack Tran [saction] [<имя транз>] [<имя т сохр>],
Save Tran [saction] [<имя т сохр>]
Неявн транз – не треб наличия Begin Tran. Нач-ся с 1-го опер-ра, заканч традиц-но. Без Begin Tran кажд опер-р SQL счит-ся отд странз. Неявн начало: set implicit_transaction on. Опер-ры, инициир транз-ю: Create, insert, update, delete, trunicate, drop, open, fetch, grant, select, revoke.
Статические модели надежности программного обеспечения (Миллса).
Перед началом тестирования искусственно вносятся в программу некоторое количество известных ошибок.
Ошибки вносятся случайным образом и фиксируются в протоколе искусственных ошибок.
Ошибки вводятся специалистами не участвующими в тестировании.
Предполагается, что все ошибки могут быть обнаружены в процессе тестирования и имеют равную вероятность быть обнаруженной.
Тестируя программу в течение некоторого времени, собирают статистику об ошибках.
Все найденные ошибки делятся на собственные и искусственные ошибки.
Первоначальное число ошибок N
в программе оценивается по соотношению:
,
где
- число найденных собственных ошибок;
- число внесенных искусственных ошибок,
- число обнаруженных к моменту оценки
искусственных ошибок.
Вероятность, с которой можно утверждать, что найденное число первоначальных ошибок в программе N есть верным, определяется по формуле:
где К есть число первоначальных ошибок в программе, т.е. равно N.
Величина С является мерой доверия к модели Миллса. Эти два связанных между собой по смыслу соотношения образуют полезную модель ошибок: первое предсказывает возможное первоначально имевшихся в программе ошибок, а второе используется для установления доверительного уровня прогноза.
(+) модели является простота применения математического аппарата, наглядность и возможность использования в процессе тестирования. Недостатки – необходимость внесения искусственных ошибок (этот процесс плохо формализуется).
Распределение функций безопасности по уровням эталонной семиуровневой модели OSI.
Функции безопасности |
Уровни OSI |
||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
Аутентификация |
- |
- |
+ |
+ |
- |
- |
+ |
Управл-е доступом |
- |
- |
+ |
+ |
- |
- |
+ |
Конфиденц-ть соединения |
+ |
+ |
+ |
+ |
- |
+ |
+ |
-//- вне соединения |
- |
+ |
+ |
+ |
- |
+ |
+ |
Избирательная конфиденц-ть |
- |
- |
- |
- |
- |
+ |
+ |
Конфиденц-ть трафика |
+ |
- |
+ |
- |
- |
- |
+ |
Целостность с восстановлением |
- |
- |
- |
+ |
- |
- |
+ |
Целостность без восстановления |
- |
- |
+ |
+ |
- |
- |
+ |
Избирательная целостность |
- |
- |
- |
- |
- |
- |
+ |
Целостность вне соединения |
- |
- |
+ |
+ |
- |
- |
+ |
Неотказуемость |
- |
- |
- |
- |
- |
- |
+ |
Уровень - в модели OSI - набор структур и программ, обеспечивающих обработку определенного класса событий. Уровень выступает единицей декомпозиции совокупности функций, обеспечивающих информационное взаимодействие прикладных процессов.
Физический уровень. Отвечает за кодирование передаваемых сигналов в среде передачи данных.
Канальный уровень. Этот уровень определяет способ передачи данных между компьютером пользователя и коммутатором пакетов. Сетевой уровень. Функция - определение взаимодействия между узлом и сетью. На этом уровне оговаривается единица передачи данных по сети, вводятся концепции адреса получателя и маршрутизации.
Транспортный уровень. Этот уровень обеспечивает надежную транспортировку пакетов между двумя конечными точками сети благодаря установке соединения между узлами отправителя и получателя.
Сеансный уровень. Отвечает за организацию логического (виртуального) канала связи между отправителем и получателем информации.
Уровень представлений. Уровень представлений отвечает за реализацию функций, необходимых программам при работе в сети.
Уровень приложений. Относятся прикладные программы, предназначенные для работы в сети.
Прямая и косвенная маршрутизация.
Прямая маршрутизация происходит при передаче данных между двумя машинами по одной физической сети. Таким образом, прямая доставка между двумя компьютерами может осуществляться только в том случае, если они подключены к одному сегменту сети (например, сети Ethernet).
Отправитель преобразует IP-адрес получателя в физический адрес и посылает по нему фрейм, используя сетевое оборудование. Чтобы определить, находится ли получатель в одной физической сети с отправителем, последний должен выделить номер сети из IP-адреса получателя и сравнить его с номером сети, выделенным из собственного IP-адреса. Если номера сетей совпадают, значит, дейтограмма может быть послана получателю напрямую.
Косвенная маршрутизация происходит в том случае, когда конечный получатель дейтограммы в другой физической сети (принадлежит другому сегменту). При этом отправитель пересылает дейтограмму ближайшему узлу маршрутизации, который выполняет ее дальнейшую доставку до конечного получателя.
Как только одному из компьютеров нужно отправить дейтаграмму другому компьютеру, он инкапсулирует ее в сетевой фрейм и пересылает его по физической сети ближайшему маршрутизатору. По определению, данную операцию может выполнить любой компьютер, поскольку все физические сети соединены между собой посредством маршрутизаторов. Таким образом, отправитель всегда может связаться с маршрутизатором по одной физической сети. Приняв дейтаграмму, маршрутизатор с помощью своего программного обеспечения извлекает ее из сетевого фрейма и передает на обработку программам протокола IP. После этого программы маршрутизации выполняют поиск адреса следующего маршрутизатора, находящегося на пути следования пакета до конечного получателя. Как только будет определен IP-адрес следующего узла маршрутизации, дейтаграмма снова помещается в сетевой фрейм и пересылается этому узлу по соответствующему участку физической сети. Этот процесс повторяется многократно до тех пор, пока дейтаграмма не будет отправлена конечному получателю методом прямой доставки.
Билет № 39
Различие классического (децентрализованного) и системного (централизованного) подходов решения задач на примере.
Классический подход заключается в переходе от частного к общему (индукция). Формирование самой системы происходит путем слияния подсистем в единую систему:
1.определяются цели функционирования отдельных подсистем,
2.анализируется информация, необходимая для формирования отдельных подсистем.
3.формируются подсистемы, которые в совокупности образуют работоспособную систему.
Системный подход предполагает переход от общего к частному (дедукция). Сущность метода: все элементы системы и все операции в ней должны рассматриваться только как одно целое, только в совокупности, только во взаимосвязи друг с другом.
1.определяются и формулируются общие цели функционирования системы
2.на основании анализа цели функционирования системы и ограничений определяются требования, которым должна удовлетворять система.
3.на базе этих требований формируются ориентировочно некоторые подсистемы.
4.синтез системы, анализ различных вариантов и выбор подсистем, организация их в единую систему
Пример: снабжение магазинов бакалейными товарами со складов оптовой базы. Участники этого процесса: оптовая база, транспортное предприятие и сеть магазинов.
1. Классический подход («самовывоз»)
-отсутствует единый орган, обеспечивающий оптимальное использование транспорта;
-магазины сами договариваются насчет транспорта;
-не рассчитываются рациональные размеры партий, завоз товаров производится по необходимости;
-не согласованы процессы загрузки и разгрузки товаров на складах;
-не везде есть условия для подъезда транспорта, быстрой разгрузки и т.д.;
При данном подходе отсутствует единая цель — рациональная организация снабжения магазинов товарами. Каждый магазин организует только свое снабжение. Существуют отдельные подсистемы, отвечающие за процессы подготовки товаров на оптовой базе, в магазинах на транспорте. В целом эти подсистемы образуют работоспособную систему, снабжение магазинов бакалейными товарами по мере надобности.
2. Системный подход (централизованная доставка)
-создается единый орган, цель которого оптимизация процесса снабжения магазинов бакалейными товарами;
-разрабатываются оптимальные маршруты и графики завоза товаров в магазины;
-определяются рациональные размеры партий и частота завоза;
-согласуются процессы загрузки и разгрузки товаров на складах;
-создается парк специализированных автомобилей;
При данном подходе задается общая цель - рациональная организация снабжения магазинов товарами.
Системный подход позволяет:
-повысить степень использования транспорта, складских и торговых площадей;
-оптимизировать товарные запасы у всех участников процесса;
-повысить качество и уровень сервиса.
Реализация запросов средствами sql (хранимые процедуры, функции, представления).
Назначение оператора SELECT состоит в выборке и отображении данных одной или более таблиц БД. Это мощный оператор, способный выполнять действия, эквивалентные операторам реляционной алгебры. Общий формат оператора SELECT имеет следующий вид:
SELECT [DISTINCT] *|<столбец> [<псевдоним>]
[,<групповая функция>] [,…n]
FROM <таблица>[, …n]| (<подзапрос>)
[WHERE <условие>]
[GROUP BY<выражение группировки>]
[HAVING <условие отбора группы>]
[ORDER BY < столбец >[,…n]]
Ключевое слово DISTINCT используется для возвращения запросом только уникальных строк. При необходимости вывести все записи из отношения используется команда SELECT *. SELECT устанавливает, какие столбцы должны присутствовать в выходных данных. FROM определяет имена используемой таблицы или нескольких таблиц. WHERE выполняет фильтрации строк объекта в соответствии с заданными условиями. GROUP BY образ-ся группы строк, имеющих одно и то же значение в указанном столбце. HAVING фильтрует группы строк объекта в соответствии с указанным условием. ORDER BY определяет упорядоченность результатов выполнения оператора. Порядок предложений и фраз в операторе SELECТ не может быть изменен. Только предложения SELECT и FROM являются обязательными, все остальные предложения и фразы могут быть опущены. Операция SELECT является закрытой, т.е. результат запроса к таблице представляет собой др. таблицу. Пример запроса: вывести названия всех предметов, по которым сред. оценка меньше 4.
SELECT Name_Subject, AVG(Mark)
FROM Progress Pr, Subject S
WHERE Pr.Code_Subject=S.Code_Subject
GROUP BY Name_Subject
HAVING AVG(Mark)<4
Стандарт ISO содержит определение 5 обобщающих функций: COUNT возвращает количество значений в указанном столбце. Функция COUNT() с аргументом отличным от *, игнорирует строки с признаком NULL, в то время как функция вида COUNT(*) посчитает все строки, в том числе и строки, в которых есть атрибуты с признаком NULL.
. SUM возвращает сумму значений в указанном столбце. AVG возвращает усредненное значение в указанном столбце. MIN возвращает минимальное значение в указанном столбце. MAX возвращает максимальное значение в указанном столбце.
Запрос, в котором присутствует фраза GROUP BY называется группирующим запросом; столбцы, перечисленные в данной фразе называются группируемыми столбцами. Все имена столбцов, приведенные в предложении SELECT, должны присутствовать и во фразе GROUP BY. За исключением случаев, когда имя столбца используется в обобщающей функции.
Предложение ORDER BY всегда ставится в конец команды SELECT. По умолчанию сортировка идет по возрастанию. Для изменения порядка сортировки используется опция DESC. При сортировке по нескольким столбцам столбцы перечисляются через запятую. ORDER BY всегда стоит в конце запроса. Пример: Вывести список имен студентов, имеющих оценки, расположив их по возрастанию имен: SELECT DISTINCT Sname ФИО
FROM Student, Progress
WHERE Student.N_record_book= Progress.N_record_book;
ORDER BY Sname
Запросы с подзапросами:
Внутрь каждого запроса может входить другой запрос, называемый подзапрос. подзапросы создаются на уровне опций: where, having, from. Порядок выполнения: сначала подзапрос, потом запрос, куда подзапрос передает свои данные. Отличие составляют коррелированные подзапросы – внеш запрос выбирает строку; вып-ся внутр запрос, используя знач-е строки внеш запроса; рез-т вып-я внутр запроса возвращ-ся во внеш запрос, где провер-ся его соотв-е выбранной строке; выбир-ся след строка внеш запроса. Коррелированный подзапрос выполняется столько раз, сколько строк-кандидатов в основном подзапросе. Пример: вывести имена студентов и их средние оценки: Select Sname, Amk.Amark
From Student, (select N_record_book, avg(mark) Amark
From Progress
Group by N_record_book) Amk
Where Student. N_record_book = Amk. N_record_book;
Вывести имена студентов, чьи оценки выше, чем средняя оценка в их группе.
SELECT DISTINCT SName,Mark FROM Student s,Progress p
WHERE S.NRecordBook=P.NRecordBook
AND Mark>(SELECT AVG(Mark) FROM Progress P1,Student S1
WHERE S1.IDGroup=S.IDGroup AND S1.NRecordBook=P1.NRecordBook)
Подзапрос (пз) помещ в кругл скобки и долж стоять в прав части опер-ра сравнения внеш запроса, пз мож обращ к табл отличн от тех, к котор обращ основн запрос, пз может задав в слож критериях поиска внеш запросов с использ логич связок AND и OR, предл ORDER BY став-ся последн в основн запросе и не может содерж в пз. В команде SELECT пз мож стоять в предл FROM, WHERE, HAVING, пз мож содерж группы и групповые функции. Имена столбцов в предл SELECT внутр запр долж стоять в той же послед-ти, что и имена столбцов в левой части опер-ра сравн-я внешнего запроса. Типы столбцов должны попарно соотв-ть. В критерии поиска могут использ-ся логич опер-ры, операторы ANY (SOME), ALL.
Выборка данных из нескольких таблиц
Синтаксис предложения FROM:
FROM <первая таблица> [[AS] <псевдоним>] <тип объединения> <вторая таблица>[[AS] <псевдоним>] [ON <условие объединения>]
Псевдоним должен быть уникален в рамках одного запроса. INNER JOIN, OUTER JOIN (LEFT – RIGHT), FULL JOIN (включ-е всех данных из соед-мых таблиц) CROSS JOIN
Объединение двух или более запросов с помощью UNION – опер-р, с помощью котор. можно из двух или более запросов постр. единое результ-щее множ-во. Осн. правила: запросы должны им. одинак. кол-во столбцов в предл SELECT; возвращ комбинир результат будет иметь заголовки столбцов первого предлож-я SELECT; тип данных каждого столбца должен быть совместим с типом данных соотв-го столбца др запроса; по умолчанию режимом вывода для UNION является DISTINCT, иначе, после оператора UNION поставить опцию ALL. Предложение ORDER BY в операциях над множествами может стоять только в последнем предложении запроса, при этом вместо имен столбцов используются их номера из предложения SELECT.
Получить все записи о студентах, фамилии которых начинаются на букву 'М' или 'И'.
SELECT NRecordBook,SName FROM Student WHERE SUBSTRING(SName,1,1)= 'М'
UNION
SELECT NRecordBook,SName FROM Student WHERE SUBSTRING2(SName,1,1)= 'И'
Транслятор. Редактор связей. Загрузчик. Назначение и принципы функционирования.
Процесс преобразования операторов исходного языка программирования в машинные коды называется трансляцией исходного текста. В настоящее время ручная трансляция программ практически не используется. Трансляция производится специальными программами-трансляторами. Существует два больших класса программ-трансляторов: компиляторы и интерпретаторы. При использовании компиляторов весь исходный текст программы преобразуется в машинные коды, и именно эти коды записываются в память микропроцессора. При использовании интерпретатора в память микропроцессора записывается исходный текст программы, а трансляция производится при считывании очередного оператора. Естественно, что быстродействие интерпретаторов намного ниже по сравнению с компиляторами, т.к. при использовании оператора в цикле он транслируется многократно.
Поскольку результатом трансляции является модуль на языке, близком к машинному, в нем уже не остается признаков того, на каком исходном языке был написан программный модуль. Это даёт возможность создавать программы из модулей, написанных на разных языках. Однако, специфика исходного языка, может сказываться на физическом представлении базовых типов данных, способах обращения к процедурам/функциям и т.п. Для совместимости разноязыковых модулей должны выдерживаться общие соглашения. Большая часть объектного модуля это команды и данные машинного языка именно в той форме, в какой они будут существовать во время выполнения программы. Однако, программа в общем случае состоит из многих модулей. Поскольку транслятор обрабатывает только один конкретный модуль, он не может должным образом обработать те части этого модуля, в которых запрограммированы обращения к данным или процедурам, определенным в другом модуле. Такие обращения называются внешними ссылками. Те места в объектном модуле, где содержатся внешние ссылки, транслируются в некоторую промежуточную форму, подлежащую дальнейшей обработке. Говорят, что объектный модуль представляет собой программу на машинном языке с неразрешенными внешними ссылками. Разрешение внешних ссылок выполняется на следующем этапе подготовки, который обеспечивается редактором связей (Компоновщиком). Редактор Связей соединяет вместе все объектные модули, входящие в программу. Поскольку Редактор связей «видит» уже все компоненты программы, он имеет возможность обработать те места в объектных модулях, которые содержат внешние ссылки. Результатом работы Редактора связей является загрузочный модуль. Загрузочный модуль сохраняется в виде файла на внешней памяти. Для выполнения программа должна быть загружена в ОП. Иногда при этом требуется некоторая дополнительная обработка (например, настройка адресов в программе на ту область ОП, в которую программа загрузилась). Эта функция выполняется загрузчиком, который обычно входит в состав ОС. Возможен также вариант, в котором редактирование связей выполняется при каждом запуске программы на выполнение и совмещается с загрузкой. Это делает Связывающий Загрузчик. Вариант связывания при запуске более расходный, т.к. затраты на связывание тиражируются при каждом запуске. Но он обеспечивает: во-первых, большую гибкость в сопровождении, т.к. позволяет менять отдельные объектные модули программы, не меняя остальных модулей; во-вторых, экономию внешней памяти, т.к. объектные модули, используемые во многих программах не копируются в каждый загрузочный модуль, а хранятся в одном экземпляре.
Персональные данные и информационные системы персональных данных (ИСПД). Общие понятия.
1. Персональные данные – любая информация, относящаяся к определенному или определяемому на основании такой информации физическому лицу (субъекту персональных данных), в том числе его фамилия, имя, отчество, дата и место рождения, адрес, семейное, социальное, имущественное положение, образование, профессия, доходы, другая информация.
2. Оператор – государственный орган, муниципальный орган, юридическое или физическое лицо, организующие и (или) осуществляющие обработку персональных данных, а также определяющие цели и содержание обработки персональных данных.
3. Обработка ПД – действия (операции) с персональными данными, включая сбор, систематизацию, накопление, хранение, уточнение (обновление, изменение), использование, распространение (в том числе передачу), обезличивание, блокирование, уничтожение персональных данных.
4. Распространение ПД – действия, направленные на передачу персональных данных определенному кругу лиц (передача персональных данных) или на ознакомление с персональными данными неограниченного круга лиц, в том числе обнародование персональных данных в средствах массовой информации, размещение в информационно-телекоммуникационных сетях или предоставление доступа к персональным данным каким-либо иным способом.
5. Использование ПД – действия (операции) с персональными данными, совершаемые оператором в целях принятия решений или совершения иных действий, порождающих юридические последствия в отношении субъекта персональных данных или других лиц либо иным образом затрагивающих права и свободы субъекта персональных данных или других лиц.
6. Блокирование ПД – временное прекращение сбора, систематизации, накопления, использования, распространения ПД, в том числе их передачи.
7. Уничтожение ПД – действия, в результате которых невозможно восстановить содержание ПД в ИСПД или в результате которых уничтожаются материальные носители персональных данных.
8. Обезличивание ПД – действия, в результате которых невозможно определить принадлежность персональных данных конкретному субъекту персональных данных.
9. Информационная система персональных данных – это информационная система, представляющая собой совокупность персональных данных, содержащихся в базе данных, а также информационных технологий и технических средств, позволяющих осуществлять обработку таких персональных данных с использованием средств автоматизации или без использования таких средств.
10. Конфиденциальность персональных данных – обязательное для соблюдения оператором или иным получившим доступ к ПД лицом требование не допускать их распространения без согласия субъекта ПД или наличия иного законного основания.
11. Трансграничная передача ПД – передача персональных данных оператором через Государственную границу Российской Федерации органу власти иностранного государства, физическому или юридическому лицу иностранного государства.
12. Общедоступные ПД – персональные данные, доступ неограниченного круга лиц к которым предоставлен с согласия субъекта персональных данных или на которые в соответствии с федеральными законами не распространяется требование соблюдения конфиденциальности.
Алгоритм захвата маркера в сети Token Ring.
В станции Token Ring реализуется приоритетное обслуживание маркера доступа. В связи с этим каждой рабочей станции в кольце присваивается определенный уровень приоритета.
Для реализации приоритетного доступ в стандартный маркер вводится спец.поле. Внутри этого поля используются 3 бита для указания текущего приоритета в сети и называются биты приоритета (РРР). Чтобы станции с более высоким приоритетом могли захватывать маркер у станций с более низким приоритетом используются еще 3 бита поля, называемые биты резервирования (RRR). И используются спец. регистры для хранения информации о приоритетах:
регистр Rr используется для хранения значения битов резервирования;
регистр Pr используется для хранения информации из битов приоритета;
регистр Sr ─ стековый регистр для хранения значения Pr; используется в случае двойного перехвата маркера
Sx ─ стековый регистр для хранения предыдущего приоритета маркера при захвате;
Pm ─ содержит уровень приоритета сетевого интерфейса, т.е. приоритет рабочей станции.
1 Станция имеющая данные для передачи сравнивает значение битов приоритета маркера со своим приоритетом.
Если приоритет станции больше то она сравнивает биты резервирования, чтобы проверить е захватила ли уже другая станция этот маркер на следующем круге.
Если биты резервирования станции больше, то она записывает свои биты в маркер, а предыдущие значения складываются в соответствующие стеки, чтобы была возможность вернуть маркер предыдущей станции.
Станция, перехватившая маркер после передачи данных освобождает его и происходит восстановление битов приоритетов и резервирования предыдущего значения. Т.е. фактически маркер возвращается станции, которая должна была им завладеть
Билет № 41
Информационно-поисковые языки как основа информационно-поисковых систем. Сложность задачи индексирования.
Исходно в истории развития поиска существовало два направления:
Системы поиска для систем управления;
Системы поиска для систем научно-технической информации.
Системы управления должны были иметь цель управления, т.е. функциональную часть, и средство для достижения цели – обеспечивающая часть. Основные этапы: сбор, анализ и подготовка рекомендаций. Для получения упр. рекомендаций развивались математические методы.
Системы НТИ исходно были чисто информационными. Основные этапы: создание, хранение и поиск информации. Развивались семантический анализ, компьютерная лингвистика, теория информационного поиска, семиотика.
Следствие: необходимость разработки ИПЯ.
ИПЯ обладают высокими смысловыразительными способностями. В настоящее время под ИПЯ понимают формализованные семантические системы, обеспечивающие передачу (запись) информации в объеме, необходимом для цели поиска, то есть для формирования запросов поиска должно употребляться такое количество информации для организации поиска наиболее эффективным образом. В качестве стандартных единиц используют ключевые слова или ключевые слова в некоторых стандартных отношениях (стандартизированные предложения запросов).
Система индексирования. Под индексированием понимается процесс перевода с естественного языка на ИПЯ (Пример: система шифров УДК библиотеки). Процесс должен быть автоматизирован, поскольку является весьма трудоемким. Автоматизация процесса – есть система индексирования.
Типы систем индексирования:
Свободное индексирование – использование ключевых слов;
Полусвободное индексирование (ключевые слова анализируются, если они совпадают со словами тезауруса, иначе они игнорируются). Первое и второе недостаточно используют ключевые слова;
Статистический подход. Ключевые слова сами вырабатываются системой на основе статистического анализа текста. Анализируемый текст и слова из тезауруса встречаются и относятся к ключевым словам;
Индексирование, контролируемое тезаурусом. Каждое слово текста с точностью до основы сравнивается со словарём и вырабатывается весовой коэффициент совпадения. Совпадения записываются в поисковый образ документа. Такая система индексирования применяется в глобальных сетях.
Оператор соединения в SQL.
Существует несколько способов соединения таблиц, наиболее применяемый способ INNER JOIN, который также может быть реализован и с помощью предложения WHERE.
В предложении FROM должны быть указаны все таблицы, участвующие в запросе, даже если данные из той или иной таблицы не обозначены в предложении SELECT.
№ |
Варианты JOIN |
Назначение |
1 |
INNER JOIN |
Внутреннее соединение, включающее только совпадающие по условию соединения записи из соединяемых таблиц |
2 |
OUTER JOIN(LEFT – RIGHT) |
Включающее все записи левой (правой) таблицы и совпадающие с ними по условию соединения записи правой (левой) таблицы |
3 |
FULL JOIN |
Включение всех данных из соединяемых таблиц |
4 |
CROSS JOIN |
Декартово произведение |
Операция соединения по двум отношениям (таблицам)
Соединение - это процесс, когда две или более таблицы объединяются в одну. Способность объединять информацию из нескольких таблиц или запросов в виде одного логического набора данных обусловливает широкие возможности SQL.
В языке SQL для задания типа соединения таблиц в логический набор записей, из которого будет выбираться необходимая информация, используется операция JOIN в предложении FROM.
Формат операции:
FROM имя_таблицы_1 {INNER | LEFT | RIGHT}
JOIN имя_таблицы_2
ON условие_соединения
Существуют различные типы операций соединения:
тета-соединение ;
соединение по эквивалентности ;
естественное соединение ;
внешнее соединение , ;
полусоединение .
Операция тета-соединения
Операция тета-соединения определяет отношение, которое содержит кортежи из декартова произведения отношений R и S, удовлетворяющие предикату F. Предикат F имеет вид , где вместо может быть указан один из операторов сравнения ( >, >=, <, <=, =, <> ).
Если предикат F содержит только оператор равенства ( = ), то соединение называется соединением по эквивалентности.
Таблица 5.2. |
|||
|
|||
R.a1 |
R.a2 |
S.b1 |
S.b2 |
a |
1 |
1 |
h |
a |
2 |
2 |
g |
b |
3 |
3 |
h |
b |
1 |
1 |
h |
Операция тета-соединения в языке SQL называется INNER JOIN (внутреннее соединение ) и используется, когда нужно включить все строки из обеих таблиц, удовлетворяющие условию объединения. Внутреннее соединение имеет место и тогда, когда в предложении WHERE сравниваются значения полей из разных таблиц. В этом случае строится декартово произведение строк первой и второй таблиц, а из полученного набора данных отбираются записи, удовлетворяющие условиям объединения.
В условиях объединения могут участвовать поля, относящиеся к одному и тому же типу данных и содержащие один и тот же вид данных, но они не обязательно должны иметь одинаковые имена.
Блоки данных из двух таблиц объединяются, как только в указанных полях будут найдены совпадающие значения.
Если в предложении FROM перечислено несколько таблиц и при этом не употребляется спецификация JOIN, а для указания соответствия полей из таблиц используется условие в предложении WHERE, то некоторые реляционные СУБД (например, Access) оптимизируют выполнение запроса, интерпретируя его как соединение.
Если перечислять ряд таблиц или запросов и не указывать условия объединения, в качестве исходной таблицы будет выбрано декартово (прямое) произведение всех таблиц.
SELECT R.a1, R.a2, S.b1, S.b2
FROM R, S
WHERE R.a2=S.b1
или
SELECT R.a1, R.a2, S.b1, S.b2
FROM R INNER JOIN S ON R.a2=S.b1
Пример 5.4. Тета-соединение отношений в SQL. (html, txt)
Естественное соединение
Естественным соединением называется соединение по эквивалентности двух отношений R и S, выполненное по всем общим атрибутам, из результатов которого исключается по одному экземпляру каждого общего атрибута.
Таблица 5.3. |
||
|
||
R.a1 |
R.a2 или S.b1 |
S.b2 |
a |
1 |
h |
a |
2 |
g |
b |
3 |
h |
b |
1 |
h |
SELECT R.a1, R.a2, S.b2
FROM R, S
WHERE R.a2=S.b1
или
SELECT R.a1, S.b1, S.b2
FROM R INNER JOIN S ON R.a2=S.b1
Пример 5.5. Естественное соединение отношений в SQL. (html, txt)
Пример 5.6. Вывести информацию о проданных товарах.
SELECT *
FROM Сделка, Товар
WHERE Сделка.КодТовара=Товар.КодТовара
Или (что эквивалентно)
SELECT *
FROM Товар INNER JOIN Сделка
ON Товар.КодТовара=Сделка.КодТовара
Пример 5.6. Выборка информации о проданных товарах. (html, txt)
Внешнее соединение похоже на внутреннее, но в результирующий набор данных включаются также записи ведущей таблицы соединения, которые объединяются с пустым множеством записей другой таблицы.
Какая из таблиц будет ведущей, определяет вид соединения. LEFT - левое внешнее соединение, ведущей является таблица, расположенная слева от вида соединения ;RIGHT - правое внешнее соединение, ведущая таблица расположена справа от вида соединения.
Левое внешнее соединение
Левым внешним соединением называется соединение, при котором кортежи отношения R, не имеющие совпадающих значений в общих столбцах отношения S, также включаются в результирующее отношение.
Таблица 5.4. |
|||
|
|||
R.a1 |
R.a2 |
S.b1 |
S.b2 |
a |
1 |
1 |
h |
a |
2 |
2 |
g |
b |
1 |
1 |
h |
b |
3 |
3 |
h |
b |
4 |
null |
null |
SELECT R.a1, R.a2, S.b1, S.b2
FROM R LEFT JOIN S ON R.a2=S.b1
Пример 5.9. Левое внешнее соединение отношений в SQL. (html, txt)
Существует и правое внешнее соединение , называемое так потому, что в результирующем отношении содержатся все кортежи правого отношения. Кроме того, имеется и полное внешнее соединение, в его результирующее отношение помещаются все кортежи из обоих отношений, а для обозначения несовпадающих значений кортежей в нем используются определители NULL.
SELECT R.a1, R.a2, S.b1, S.b2
FROM R RIGHT JOIN S ON R.a2=S.b1
Пример 5.10. Правое внешнее соединение отношений в SQL. (html, txt)
Пример 5.11. Вывести информацию о всех товарах. Для проданных товаров будет указана дата сделки и количество. Для непроданных эти поля останутся пустыми.
SELECT Товар.*, Сделка.*
FROM Товар LEFT JOIN Сделка
ON Товар.КодТовара=Сделка.КодТовара;
Пример 5.11. Выборка информации о всех товарах. (html, txt)
Полусоединение
Операция полусоединения определяет отношение, содержащее те кортежи отношения R, которые входят в соединение отношений R и S .
Таблица 5.5. |
|
|
|
R.a1 |
R.a2 |
a |
1 |
a |
2 |
b |
3 |
b |
1 |
SELECT R.a1, R.a2
FROM R, S
WHERE R.a2=S.b1
или
SELECT R.a1, R.a2
FROM R INNER JOIN S ON R.a2=S.b1
Пример 5.12. Полусоединение отношений в SQL. (html, txt)
Язык UML. История создания. Область применения. Виды диаграмм UML для описания системы.
“Унифицированный язык моделирования UML (Unified Modeling Language)—это язык для определения, визуализации, конструирования и документирования артефактов программных систем, а также для моделирования экономических процессов и других не программных систем". UML — это важный фактический и юридический стандарт для ОО моделирования.
CASE-средства, поддерживающие UML (а именно, Rational Rose, Microsoft Visual), являются вспомогательным средством практически на всех этапах анализа и разработки проекта и дают возможность работать со множеством языков программирования, таких как C++, Java, Visual Basic, и других, а также осуществлять генерацию БД на большинстве из существующих SQL-серверов. Модели, разработанные в UML, позволяют значительно упростить процесс кодирования и направить усилия программистов непосредственно на реализацию системы.
UML поддерживает все стадии ЖЦ проекта, его применения достаточно для полной поддержки разработки приложения. Особенность UML в том, что он оптимизирован для применения при разработке программных систем, что дает возможность максимально ускорить разработку программных продуктов и заметно улучшить качество получаемой системы. Описание предметной области с использованием UML хорошо воспринимается экспертам предметной области и не требует от них никакой специальной подготовки для понимания представленных им на рассмотрение моделей.
UML содержит стандартный набор диаграмм и нотаций самых разнообразных видов. Стандарт UML версии 1.1, предлагает следующий набор диаграмм для моделирования:
Диаграмма вариантов использования – для моделирования бизнес-процессов организации (требований к системе);
Диаграмма классов – для моделирования статической структуры классов системы и связей между ними;
Диаграмма поведения системы;
Диаграмма взаимодействия – для моделирования процесса обмена сообщениями между объектами. Существует 2 вида диаграмм взаимодействия:
Диаграмма последовательности;
Кооперативные диаграммы.
Диаграммы состояний – для моделирования поведения объектов системы при переходе из одного состояния в другое;
Диаграмма деятельности – для моделирования поведения системы в рамках различных вариантов использования или моделирования деятельностей;
Диаграмма реализации;
Диаграмма компонентов – для моделирования иерархии компонентов системы;
Диаграмма размещения – для моделирования физической архитектуры системы.
Классы безопасности по «Оранжевой книге».
"Критерии оценки безопасности компьютерных систем" Министерства обороны США открыли путь к ранжированию ИС по степени надежности. В "Оранжевой книге" определяется четыре уровня надежности (безопасности) - D, C, B и A. Уровень D - системы, признанных неудовлетворительными, т.е. к которым не предъявляется никаких требований. В наст. время он пуст. При переходе от уровня C к A к надежности систем предъявляются все более жесткие требования. Уровни C и B подразделяются на классы (C1, C2, B1, B2, B3) с постепенным возрастанием надежности. Т.о., всего имеется 6 классов безопасности - C1, C2, B1, B2, B3, A1.
D1 – неудовлетворительная безопасность; C1, С2 – произвольное управление доступом; B1, B2, B3 – принудительное управление доступом; A1 – верифицированная защита. Уровни В и А – для гос.тайны США, продажа этих опции какому-либо др. гос-ву запрещена законодательством США; классы С1и С2 относятся к коммерческой тайне. При переходе к каждому следующий классу требования только добавляются.
Класс C1 - вычислительная база д. управлять доступом именованных польз-лей к именованным объектам. Механизм управления (права для владельца/группы/прочих, списки управления доступом) д. позволять специфицировать разделение файлов м/у индивидами и/или группами. Класс C2 - в дополнение к C1, права доступа должны гранулироваться с точностью до польз-ля. Механизм управления должен ограничивать распространение прав доступа - только авторизованный пользователь, например владелец объекта, может предоставлять права доступа другим пользователям. Все объекты должны подвергаться контролю доступа. Класс B1 – в дополнение к С2 подразумевает использование меток безопасности ассоциируемыми с каждым субъектом; кроме того должна быть обеспечена взаимная изоляция процессов, а так же реализация принудительного управления доступом всех субъектов ко всем объектам. должна существовать неформальная или формальная модель политики безопасности, исходные и объектные коды должны быть проанализированы и тестированы. Класс B2 - в дополнение к В1 метками должны снабжаться все ресурсы системы (н-р, ПЗУ), прямо или косвенно доступные субъектам; д.б. предусмотрена возможность регистрации событий, связанных с организацией тайных каналов обмена с памятью; к доверенной вычислительной базе должен поддерживаться доверенный коммуникационный путь для пользователя, выполняющего операции начальной идентификации и аутентификации; тесты должны подтверждать действенность мер по уменьшению пропускной способности тайных каналов передачи информации. Класс B3 - в дополнение к В2, обязательно должны использоваться списки управления доступом с указанием разрешенных режимов. Должна быть возможность явного указания польз-лей или их групп, доступ которых к объекту запрещен. Класс А1 - в дополнение к В3 тестирование д. продемонстрировать, что реализация доверенной вычислительной базы соответствует формальным спецификациям верхнего уровня. Необходимо использовать современные методы формальной спецификации и верификации систем; механизм конфигурационного управления д. распространяется на весь ЖЦ и все компоненты системы, имеющие отношение к обеспечению безопасности.
Приведенные классы безопасности образуют единую шкалу оценки безопасности компьютерных систем, они надолго определили основные концепции безопасности и ход развития средств защиты.
Основные виды топологий.
1 . Шинная топология (шина) – наипростейшая топология при которой все участники среды передачи данных (СПД) подключаются к единому кабелю. Под СПД понимается ее физическая часть, т.е. участок кабеля. При построении используется коаксиальный кабель, концы которого закрываются специальными заглушками – терминаторы.
Преимущества: min количество затрат на приобретение и прокладку физической СПД.
Недостатки: при выходе из строя одного узла в сети.. сеть недееспособна;
2 . Звезда – каждый компьютер соединен через кабель (луч) с центральным узлом, через который проходят все данные.
Преимущества: работа сети не прерывается при аварии на любом из участков кабеля;
Недостатки: увеличение расходов на прокладку сети;
На данный момент топология типа звезда является самой распространенной при построении ЛВС.
3 . Кольцо – каждый компьютер соединен как с последующим, так и с предшествующим компьютерами по замкнутому кольцу. В сети на базе кольца данные проходят по кольцу через каждый компьютер, пока либо не достигнут компьютера-получателя, который их перехватит, либо не вернутся к отправителю, который их остановит. Наиболее старый тип топологии.
Преимущества – простота реализации; отсутствие необходимости в дополнительном оборудовании;
Недостатки – выход из строя одного участка сети приводит к полной или частичной потере работоспособности.
4. Смешанная – позволяет объединять между собой несколько видов топологий. Самая распространенная такак комбинация - «шина – звезда».
В озможность комбинации топологий появляется посредством установки дополнительного оборудования, которое ставится на границе этих технологий.
5. Полносвязная – все участки сети связываются со всеми отдельными участками кабелем сети или линиями передачи.
Преимущества – повышенная надежность за счет многократного резервирования, т.е. выход из строя любого или нескольких участков сети не приведет ни к какой потери функционирования. Так же не приведет к отказу сети, если откажет одно или несколько узлов сети. Недостатки – затратное мероприятие; (АТМ.)
Билет № 42
Методика постепенной формализации. Задачи моделирования информационных потоков.
МПФ – это методика системного анализа, которая основывается на интуиции и опыте специалистов, а так же методах формализованного представления проекта с процедурами оценки решения (например, компьютерное моделирование). Процесс МПФ итерационный.
Принципиальная особенность МПФ в том, что она ориентирована на развитие представлений разработчика об объекте на постепенное выращивание решения задачи в процессе проектирования, т.е. это не разовый выбор метода решения, а итерационный процесс, который состоит из:
выбор и формирование представлений и методов моделирования;
выбор критериев оценки вариантов;
моделирование проблемных ситуаций;
оценка модели и, если необходимо, возврат к 1-ому пункту (уточнение).
Процесс завершается, когда степень удовлетворённости заказчика достаточна. В результате процесса получаем систему алгоритмов, которая обеспечивает возможность программной её реализации. Методика постепенной формализации для задачи моделирования информационных потоков делится на 2 больших этапа:
Формирование модели и отбор возможных вариантов прохождения информации (определение границ системы; группировка элементов внутри системы; группировка внутри групп; анализ результатов);
Оценка модели и выбор наилучшего варианта пути прохождения информации (выбор критериев и их согласование с целями).
Архитектуры многопользовательских СУБД.
Типовые архитектурные решения, используемые при реализации многопользовательских СУБД – телеобработка, файловый сервер и технология «клиент-сервер».
1 . Телеобработка. Один компьютер с единственным процессором соединен с терминалами (см. рисунок). Терминалы – неинтеллектуальные устройства, не способные функционировать самостоятельно. С ЦП терминалы связываются с помощью кабелей, по которым посылаются сообщения пользовательским приложениям. В свою очередь пользовательские приложения обращаются к необходимым службам СУБД. При такой архитектуре основная нагрузка возлагается на центральный компьютер, который должен выполнять не только действия прикладных программ и СУБД, но значительную работу по обслуживанию терминалов (форматирование данных, выводимых на экран терминалов).
2. Файловый сервер
В среде файлового сервера обработка данных распределена в ЛВС. Файловый сервер содержит файлы, необходимые для работы приложений и самой СУБД. Пользовательские приложения и СУБД размещены и функционируют на отдельных рабочих станциях, и обращаются к файловому серверу по мере необходимости получения доступа к нужным файлам. Т.о., файловый сервер функционирует просто как совместно используемый ЖД. СУБД на каждой рабочей станции посылает запросы файловому серверу по всем необходимым ей данным, которые хранятся на диске файл-сервера. Подход характеризуется значительным сетевым трафиком - может привести к снижению производительности всей системы. Недостатки файл-серверной архитектуры: большой объем сетевого трафика; на каждой рабочей станции должна находиться полная копия СУБД; управление параллельностью, восстановлением и целостностью усложняется, т.к. доступ к одним и тем же файлам могут осуществлять сразу несколько экземпляров СУБД.
Технология «клиент-сервер»
« Клиент/сервер» означает такой способ взаимодействия программных компонентов, при котором они образуют единую систему. Существует некий клиентский процесс, требующий определенных ресурсов, а также серверный процесс, который эти ресурсы предоставляет.В контексте БД клиент управляет пользовательским интерфейсом и логикой приложения, действуя как сложная рабочая станция, на которой выполняются приложения БД. Клиент принимает от пользователя запрос, проверяет синтаксис и генерирует запрос к БД. Затем он передает сообщение серверу, ожидает поступления ответа и форматирует полученные данные для представления их пользователю. Сервер принимает и обрабатывает запросы к БД, а затем передает полученные результаты обратно клиенту.
Преимущества: 1) более широкий доступ к существующим БД; 2) повышение общей производительности системы (из-за нахождения клиентов и сервера на разных компьютерах их процессоры способны выполнять приложения параллельно); 3) снижение стоимости аппаратного обеспечения (мощный компьютер необходим только серверу для хранения и управления БД); 4) сокращение коммуникационных расходов (приложения выполняют часть операций на клиентских машинах и посылают через сеть только запросы к БД); 5) повышение уровня непротиворечивости данных (сервер может самостоятельно управлять проверкой целостности данных, каждому приложению не придется выполнять собственную проверку); 6) данная архитектура естественно отображается на архитектуру открытых систем.
Двухуровневая архитектура «клиент/сервер» может быть расширена до трехуровневой, при которой функциональная часть прежнего, толстого (интеллектуального) клиента разделяется на две части. В трехуровневой архитектуре тонкий (неинтеллектуальный) клиент на рабочей станции управляет только пользовательским интерфейсом, а средний уровень обработки данных управляет всей остальной логикой приложения. Третий уровень – сервер БД.
Понятие надежности программного обеспечения. Различие между надежностью аппаратуры и программного обеспечения.
Функциональную надежность ПО можно определить степенью доверия к ней, т.е. уверенностью, что система будет работать так, как предполагается, и что сбоев не будет. Существует 4 основные составляющие функциональной надежности ПО:
Работоспособность – свойство системы выполнять свои функции в любое время эксплуатации (способность предоставлять пользователю все необходимые системные сервисы по мере возникновения потребности в них).
Безотказность – свойство системы корректно (так, как ожидает того пользователь) работать весь заданный период эксплуатации (способность системы предоставлять именно те сервисы, которые заложены в систему ее спецификацией).
Безопасность – свойство системы, гарантирующее, что она безопасна для людей и окружающей среды (требования о безопасности, говорит о том, что ПО является критическим).
Защищенность – свойство системы противостоять случайным или намеренным вторжениям в нее (вирусов, сетевых атак, НСД и пр.).
Отличие надежности ПО и аппаратуры заключается в появлениях отказов. Для аппаратуры он может быть любым, а вот для ПО он всегда внезапен. Другая особенность заключается в том, что для аппаратуры существует три периода времени появления отказов: приработок, наработка, старение. Первый период характеризуется частым отказом, но интенсивность отказов уменьшается. Во втором промежутке интенсивность постоянна, а вот на заключительном этапе – интенсивность растет, что говорит о необходимости замены аппаратуры. Для ПО характерна постоянная интенсивность отказов. Периодами времени, интенсивность отказов ПО может увеличиваться, но при качественном ее обслуживании, интенсивность должна приходить к норме, приближаясь к 0. Для аппаратуры же, при каком бы не было качестве обслуживания, старение оборудования неизбежно, а следовательно, грозит полная его замена.
Особенности защиты информации от несанкционированного доступа для ИСПД 2 класса.
Для информационных систем 2 класса при однопользовательском режиме обработки персональных применяются все методы и способы защиты информации от несанкционированного доступа, соответствующие информационным системам 3 класса при однопользовательском режиме обработки.
Для информационных систем 2 класса при многопользовательском режиме обработки персональных данных и равных правах доступа к ним пользователей применяются все методы и способы защиты информации от несанкционированного доступа, соответствующие информационным системам 3 класса при многопользовательском режиме обработки персональных данных и равных правах доступа к ним пользователей.
Для информационных систем 2 класса при многопользовательском режиме обработки персональных данных и разных правах доступа к ним пользователей реализуются все методы и способы защиты информации от несанкционированного доступа, соответствующие информационным системам 3 класса при многопользовательском режиме обработки персональных данных и разных правах доступа к ним пользователей.
3.4. Безопасное межсетевое взаимодействие для информационных систем 2 класса при их подключении к сетям международного информационного обмена достигается путем применения средств межсетевого экранирования, которые обеспечивают:
фильтрацию на сетевом уровне независимо для каждого сетевого пакета (решение о фильтрации принимается на основе сетевых адресов отправителя и получателя или на основе других эквивалентных атрибутов);
фильтрацию пакетов служебных протоколов, служащих для диагностики и управления работой сетевых устройств;
фильтрацию с учетом входного и выходного сетевого интерфейса как средства проверки подлинности сетевых адресов;
фильтрацию с учетом любых значимых полей сетевых пакетов;
регистрацию и учет фильтруемых пакетов (в параметры регистрации включаются адрес, время и результат фильтрации);
идентификацию и аутентификацию администратора межсетевого экрана при его локальных запросах на доступ по идентификатору (коду) и паролю условно-постоянного действия;
регистрацию входа (выхода) администратора межсетевого экрана в систему (из системы) либо загрузки и инициализации системы и ее программного останова (регистрация выхода из системы не проводится в моменты аппаратурного отключения межсетевого экрана);
регистрацию запуска программ и процессов (заданий, задач);
контроль целостности своей программной и информационной части;
восстановление свойств межсетевого экрана после сбоев и отказов оборудования;
регламентное тестирование реализации правил фильтрации, процесса регистрации, процесса идентификации и аутентификации администратора межсетевого экрана, процесса регистрации действий администратора межсетевого экрана, процесса контроля за целостностью программной и информационной части, процедуры восстановления.
Классы IP-адресов.
Первый класс адресов это класс А. А: 0.0.0.0 – 127.255.255.255
корневые провайдеры из нескольких стран.
Адреса класса В. В: 128.0.0.0 – 191.255.255.255
крупным провайдерам.
Адреса класса С. С: 192.0.0.0 – 223.255.255.255
любая организация.
Адреса класса Д .224.0.0.0 – 239.255.255.255
Используется для адресации групповых адресов.
Существуют и классы Е, но они не используются
Е: 240.0.0.0 – 255.255.255.255
Билет № 43
Общая классификация систем. Классификация по степени организованности.
Системы разделяются по признакам в зависимости от рассматриваемой задачи:
по виду отображаемого объекта (экономические, технические, биологические, промышленные и др.);
по виду научного направления (математические, физические, химические и др.);
по виду формального аппарата представления системы (стохастические, детерминированные);
по виду целеустремленности (открытые, закрытые);
по сложности структуры и поведения (простые, сложные);
по степени организованности (хорошо ~, плохо ~ и само организующиеся).
Классификация по степени организованности:
Хорошо организованные – предсказуемые системы, с четко описанным критерием функционирования (как правило, математически описаны), легко управляемые.
Примером является модель солнечной системы. Солнечная система имеет возмущающие воздействия и шумы. Для описания движения планет вокруг солнца, например, метеориты и кометы не имеют большого значения, а следовательно не существенны, кроме того, состояние планет можно определить на несколько лет вперед.
Плохо организованные (диффузные) - перед такими системами не ставится задача изучения всех компонентов и связей между системой и целями системы. Очень часто статистические данные отсутствуют, и приходится рассматривать вероятность вероятностей – доверительную вероятность. Диффузные системы широко используются, в виду того, что не всегда можно создать хорошо организованные системы (система массового обслуживания).
Самоорганизующиеся - в данных системах используется подход, позволяющий исследовать наименее изученные процессы. Невозможно представить, как поведёт себя система, поэтому её представляют в виде самоорганизующейся системы. Выделяют самоприспосабливающиеся, самовосстанавливающиеся и самовоспроизводящиеся системы (популяция животных, биосфера и т.д.).
Нормальные формы. Общая классификация. Пример построения.
Критерием, по котор. опр-ют необх-ть деком-ции отнош-я, явл. нахожд-е отнош-я в той или иной НФ. Наибольший интерес и практ-кую знач-ть пред-ют первая, вторая и третья исправленная (НФБК) НФ.
1НФ: отнош-е нах-ся в 1НФ, если все знач-я его атрибутов атомарны. Понятие атомарности условно. Атомарность или огранич-ие на атомарность устан-ся исходя из анализа информац-го обесп-я системы и структуры вых-ой документации (если никогда не возникнет необх-ть выводить отдельно фам-ю, имя и отч-во, то мож. принять, что ФИО атомарно). При приведении к атомарному значению необходимо следить, чтобы не был утерян смысл атрибутов.
2НФ: отношение находится во 2НФ, если оно находится в 1НФ, и каждый его неосновной атрибут функционально полно зависит от возможного ключа, т.е. не зависит ни от какого его сомножества. Если ключ отношения состоит из одного атрибута, то оно всегда находится во 2НФ. Однако 2НФ не освобождает от избыточного дублирования. Пример: R={ABCD}, F={AB→D, A→ C}. Анализ: D функционально полно зависит от ключа, C – нет, т.е. отношение не находится во 2НФ. Здесь целесообразно вторую ФЗ вынести в отдельное отношение: R1={ABD} и R2={AC}. Оба отношения нормализованы до 2НФ.
3НФ: отнош-е нах-ся в 3НФ, если оно нах-ся во 2НФ, и каждый неосновной атрибут его схемы нетранзит-но зависит от возм-го ключа (т.е. напрямую). Пример: R={ABC}, F={A→B, B→C}. Декомп-ся на R/={AB}, R//={BC}. 3НФ неадекв: отнош-е им 2 и более потенц ключа, эти потенц ключи явл составн, 2 и более потенц ключа перекр-ся (им общ атрибут).
Декомпозиция до 2НФ и 3НФ осуществляется на минимальном покрытии путем последовательного выделения в отдельное отношение крайних ФЗ, т.е. ФЗ, правая часть которых в исходном отношении не является детерминантом другой ФЗ. Во многих случаях, приводя отношение ко 2НФ, можно получить сразу 3НФ.
НФБК (Нормальная форма Бойса-Кодда): отношение находится в НФБК, если оно находится в 1НФ и каждый детерминант является возможным ключом (или ключом является вся схема отношения). Методы декомпозиции до НФБК: декомпозиция до НФБК осуществляется на минимальном покрытии. В исходном отношении выявляется множество возможных ключей и детерминант. Если выясняется, что эти два множества неэквивалентны, то в отдельное отношение выделяется крайняя ФЗ. Если после этого множества детерминантов и ключей оказываются эквивалентными, то декомпозиция заканчивается. В противном случае, продолжается выделение ФЗ пошагово, по одной на каждом шаге. Любая декомпозиция прошла успешно, если все ФЗ, имеющиеся в исходной БД были сохранены в новом проекте, т.е. говорят, что все ФЗ навязаны БД. Пример: R={ABC} F={A→B, B→C}. Декомпозируется на 2 отношения: R={AB}, R={BC}. Все ФЗ, имеющие место в исходном отношении сохранены: F/={A→B}, F//={B→C}.
Признаки сложных систем согласно общей теории систем. Примеры систем (выделить в них признаки).
Можно вывести пять (5 основных и более) общих признаков любой сложной системы:
1. "Сложные системы часто являются иерархическими и состоят из взаимозависимых подсистем, которые в свою очередь также могут быть разделены на подсистемы, и т.д., вплоть до самого низкого уровням. Архитектура складывается из компонентов, и из иерархических отношений этих компонентов. Выбор, какие компоненты в данной системе считаются элементарными, относительно произволен и в большой степени оставляется на усмотрение исследователя.
2. Одной из важнейших характеристик сложной системы является непредсказуемость. Образ поведения системы складывается как результат взаимодействия и взаимоотношений между ее компонентами.
3. "Внутрикомпонентная связь обычно сильнее, чем связь между компонентами. Это обстоятельство позволяет отделять "высокочастотные" взаимодействия внутри компонентов от "низкочастотной" динамики взаимодействия между компонентами". Это различие внутрикомпонентных и межкомпонентных взаимодействий обуславливает разделение функций между частями системы и дает возможность относительно изолированно изучать каждую часть.
4. Отношения не являются линейными; следовательно, небольшое возмущающее воздействие может вызвать заметный эффект, и наоборот, большой воздействующий импульс может оказаться нерезультативным.
5. Отношения между компонентами могут включать обратные связи, причем как положительные (раскачивающие систему), так и отрицательные (демпфирующие) ее.
6. "Иерархические системы обычно состоят из немногих типов подсистем, по-разному скомбинированных и организованных". Т.е., разные сложные системы содержат одинаковые структурные части. Эти части могут использовать общие более мелкие компоненты.
7. "Любая работающая сложная система является результатом развития работавшей более простой системы. Сложная система, спроектированная "с нуля", никогда не заработает. Следует начинать с работающей простой системы". В процессе развития системы объекты, первоначально рассматривавшиеся как сложные, становятся элементарными, и из них строятся более сложные системы.
8. Сложная система является открытой; ее границы в зависимости от природы системы должны быть проницаемы или для информации, или для энергии. По этой причине она подвергается изменениям, однако средствами управления ее можно удерживать в стабильном состоянии. Ни один из элементов не обладает полнотой информации о системе в целом.
Примеры: 1. Структура персонального компьютера. Большинство ПК состоит из одних и тех же основных элементов: системной платы, монитора, клавиатуры и устройства внешней памяти. Можно взять любую из этих частей и разложить ее в свою очередь на составляющие. Это пример сложной иерархической системы. Персональный компьютер нормально работает благодаря четкому совместному функционированию всех его составных частей. Вместе эти части образуют логическое целое. Можно понять, как работает компьютер, только потому, что можно рассматривать отдельно каждую его составляющую. Т.о., можно изучать устройства монитора и жесткого диска независимо друг от друга.
2. Структура растений и животных. Растения - это сложные многоклеточные организмы. В результате совместной деятельности различных органов растений происходят такие сложные типы поведения, как фотосинтез и всасывание влаги. Растение состоит из трех основных частей: корни, стебли и листья. Каждая из них имеет свою особую структуру. Так же, как у компьютера, части растения образуют иерархию, каждый уровень которой обладает собственной независимой сложностью.
При изучении морфологии растения мы не выделяем в нем отдельные части, отвечающие за отдельные фазы единого процесса, например, фотосинтеза. Фактически не существует централизованных частей, которые непосредственно координируют деятельность более низких уровней. Вместо этого мы находим отдельные части, которые действуют как независимые посредники, каждый из которых ведет себя достаточно сложно и при этом согласованно с более высокими уровнями. Только благодаря совместным действиям большого числа посредников образуется более высокий уровень функционирования растения. Поведение целого сложнее, чем поведение суммы его составляющих.
Многоклеточные животные, как и растения, имеют иерархическую структуру: клетки формируют ткани, ткани работают вместе как органы, группы органов определяют систему (например, пищеварительную) и так далее. Основной строительный блок всех растений и животных - клетка. Это пример общности в разных сферах.
3. Структура социальных институтов. Люди объединяются в группы для решения задач, которые не могут быть решены индивидуально. Чем больше организация, тем отчетливее проявляется в ней иерархическая структура. Транснациональные корпорации состоят из компаний, которые в свою очередь состоят из отделений, содержащих различные филиалы и т.д. Характерно, что степень взаимодействия между сотрудниками одного учреждения несомненно выше, чем между сотрудниками двух разных учреждений. Это пример различных связей – внутрикомпонентных и между отдельными компонентами.
Определение классов и типов ИСПД.
При проведении классификации ИС, предназначенной для обработки персональных данных, учитываются следующие исходные данные:
категория обрабатываемых в информационной системе персональных данных (Xпд);
объём обрабатываемых ПД (количество субъектов, персональные данные которых обрабатываются в ИС) (Xнпд); ·
заданные владельцем информационной системы характеристики безопасности персональных данных, обрабатываемых в ИС; ·
структура информационной системы; ·
наличие подключений ИС к сетям связи общего пользования и (или) сетям международного информационного обмена; ·
режим обработки ПД; ·
режим разграничения прав доступа пользователей информационной системы; ·
местонахождение технических средств ИС.
Определяются следующие категории обрабатываемых в ИСПД:
категория 1 — ПД, касающиеся расовой, национальной принадлежности, политических взглядов, религиозных и философских убеждений, состояния здоровья, интимной жизни; ·
категория 2 — ПД, позволяющие идентифицировать субъекта персональных данных и получить о нём дополнительную информацию, за исключением персональных данных, относящихся к категории 1; ·
категория 3 — персональные данные, позволяющие идентифицировать субъекта персональных данных; ·
категория 4 — обезличенные и (или) общедоступные ПД.
Объем обрабатываемых ПД может принимать следующие значения:
— в ИС одновременно обрабатываются персональные данные более чем 100 000 субъектов или персональные данные субъектов в пределах региона Российской Федерации или Российской Федерации в целом; ·
— в ИС одновременно обрабатываются персональные данные от 1000 до 100 000 субъектов или персональные данные субъектов, работающих в отрасли экономики Российской Федерации, в органе государственной власти, проживающих в пределах муниципального образования; ·
— в ИС одновременно обрабатываются данные менее чем 1000 субъектов или персональные данные субъектов конкретной организации.
По заданным оператором характеристикам безопасности персональных данных, обрабатываемых в информационной системе, информационные системы подразделяются на типовые и специальные информационные системы.
Типовые информационные системы - информационные системы, в которых требуется обеспечение только конфиденциальности персональных данных.
Специальные информационные системы - информационные системы, в которых вне зависимости от необходимости обеспечения конфиденциальности персональных данных требуется обеспечить хотя бы одну из характеристик безопасности персональных данных, отличную от конфиденциальности (защищенность от уничтожения, изменения, блокирования, а также иных несанкционированных действий).
К специальным информационным системам должны быть отнесены:
информационные системы, в которых обрабатываются персональные данные, касающиеся состояния здоровья субъектов персональных данных;
информационные системы, в которых предусмотрено принятие на основании исключительно автоматизированной обработки персональных данных решений, порождающих юридические последствия в отношении субъекта персональных данных или иным образом затрагивающих его права и законные интересы.
По результатам анализа исходных данных типовой информационной системе присваивается один из следующих классов:
класс I (К1) - информационные системы, для которых нарушение заданной характеристики безопасности персональных данных, обрабатываемых в них, может привести к значительным негативным последствиям для субъектов персональных данных;
класс 2 (К2) - информационные системы, для которых нарушение заданной характеристики безопасности персональных данных, обрабатываемых в них, может привести к негативным последствиям для субъектов персональных данных;
класс 3 (КЗ) - информационные системы, для которых нарушение заданной характеристики безопасности персональных данных, обрабатываемых в них, может привести к незначительным негативным последствиям для субъектов персональных данных;
класс 4 (К4) - информационные системы, для которых нарушение заданной характеристики безопасности персональных данных, обрабатываемых в них, не приводит к негативным последствиям для субъектов персональных данных.
Класс типовой информационной системы определяется в соответствии с таблицей.
Xпд \Хнпд |
3 |
2 |
1 |
категория 4 |
К4 |
К4 |
К4 |
категория 3 |
КЗ |
КЗ |
К2 |
категория 2 |
КЗ |
К2 |
К1 |
категория 1 |
К1 |
К1 |
К1 |
Обеспечение надежной доставки данных. Метод скользящего окна
Окном в протоколе TCP называется максимальный набор пакетов, которые может передать отправитель без ожидания квитанции на предыдущие. Квитанция оформляется на весь набор отправляемых пакетов. Размером окна называется количество одновременно отправляемых пакетов. Если какой-либо из пакетов в окне по каким-либо причинам был принят неправильно, повторная передача осуществляется, начиная с этого пакета. При этом скользящее окно уменьшается до размера правильно переданной части, если получатель информации не может достаточно правильно ее принять, отправителю отсылается ответ с рекомендуемым значением окна. Таким образом, окно может быть сокращено до нуля. При этом логическая связь между отправителем и получателем не разрывается. В ожидании восстановления канала отправитель отсылает получателю пакеты с нулевой длиной. Как только получатель ответит хотя бы на один из них, окно будет автоматически расширено, и передача продолжиться.
1
2
