Моделирование и оценка производительности работы защищенных каналов в корпоративных сетях

Аппаратные средства построения виртуальной частной сети (VPN), ее программные реализации. Алгоритмы и режимы шифрования в защищенных каналах, оценка их производительности. Создание модели функционирования сети. Тестирование платформы 1С: Предприятие 8.1.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 26.07.2013
Размер файла 2,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Во-вторых, аналогично предыдущим алгоритмам шифрования Рона Ривеста RC2 и RC4, алгоритм RC5 получил весьма широкое распространение: по количеству пользователей в мире он стоит в одном ряду с такими известными алгоритмами, как IDEA и Blowfish.

И, наконец, на преобразованиях, используемых в RC5, основана последующая разработка компании RSA - алгоритм RC6, который стал финалистом конкурса AES по выбору нового стандарта шифрования США. RC6 не победил в конкурсе, но, видимо, превзойдет своего предшественника по широте использования.

Алгоритм RC5 имеет переменные длину блока, количество раундов и длину ключа. Для спецификации алгоритма с конкретными параметрами принято обозначение RC5-W/R/K, где W равно половине длины блока в битах, R - число раундов, K - длина ключа в байтах.

Для эффективной реализации величину W рекомендуют брать равной машинному слову. Например, для 32-битных платформ оптимальным будет выбор W=32, что соответствует размеру блока 64 бита.

Для стимуляции изучения и применения шифра RC5 RSA Security Inc. 28 января 1997 года предложила взломать серию сообщений, зашифрованных алгоритмом RC5 с разными параметрами, назначив за взлом каждого сообщения приз в $10000. Шифр с самыми слабыми параметрами RC5-32/12/5 был взломан в течение нескольких часов. Тем не менее, последний осуществлённый взлом шифра RC5-32/12/8 потребовал 5 лет. Взлом RC5-32/12/8 был осуществлён в рамках проекта распределённых вычислений RC5-64 (здесь 64=K*8, длина ключа в битах) под руководством distributed.net. По-прежнему неприступными пока остаются RC5-32/12/K для K=9..16. distributed.net стартовала проект RC5-72 для взлома RC5-32/12/9.

Как пишет автор алгоритма, "RC5 - это несколько различных алгоритмов", поскольку, помимо секретного ключа, в число параметров алгоритма входят следующие:

· размер слова w - RC5 шифрует блоками по два слова, допустимы значения w 16, 32 или 64, причем рекомендуется значение 32;

· количество раундов алгоритма R - в качестве значения допустимо любое целое число от 0 до 255 включительно;

· размер секретного ключа в байтах b - любое целое значение от 0 до 255 включительно.

По мнению автора алгоритма, переменные параметры расширяют сферу использования алгоритма, а также сильно сокращают издержки, если необходим переход на более сильный вариант алгоритма - в отличие от DES (основная проблема которого - короткий 56-битный ключ), в программной или аппаратной реализации RC5, поддерживающей переменные параметры, легко было бы заменить ключ более длинным, таким образом устранив проблему. Вот что пишет об этом Рон Ривест: "Фиксированные параметры могут быть не менее опасны [переменных], поскольку их нельзя улучшить при необходимости. Рассмотрим проблему DES: его ключ слишком короток, и нет простого способа увеличить его".

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

Структура алгоритма представлена на рис. 2.13. Алгоритм представляет собой сеть Фейстеля, в каждом раунде которой выполняются следующие операции:

A = ((A (+) B) <<< B) + K2*r mod 2w, (2.7)

B = ((A (+) B) <<< A) + K2*r+1 mod 2w, (2.8)

где r - номер текущего раунда, начиная с 1; Kn - фрагмент расширенного ключа; <<< n - операция циклического сдвига на x бит влево, где x - значение младших log2 w бит n

Рис 2.13. Структура алгоритма RC5.

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

A = A + K0 mod 2w (2.9)

B = B + K1 mod 2w (2.10)

Стоит отметить, что под словом "раунд" в описании алгоритма Ривест понимает преобразования, соответствующие двум раундам обычных алгоритмов, структура которых представляет собой сеть Фейстеля (см. рис. 2.13). Это означает, что раунд алгоритма RC5 обрабатывает блок целиком, тогда как типичный раунд сети Фейстеля обрабатывает только один субблок - обычно половину блока, реже его четверть.

Алгоритм поразительно прост - в нем используются только операции сложения по модулю 2 и по модулю 2w, а также сдвиги на переменное число бит. Последняя из операций представляется автором алгоритма как революционное решение, не использованное в более ранних алгоритмах шифрования (до алгоритма RC5 такие операции использовались только в алгоритме Madryga, не получившем широкой известности): сдвиг на переменное число бит - это весьма просто реализуемая операция, которая, однако, существенно усложняет дифференциальный и линейный криптоанализ алгоритма. Простота алгоритма может рассматриваться как его важное достоинство - простой алгоритм легче реализовать и легче анализировать на предмет возможных уязвимостей.

Для расшифрования выполняются обратные операции в обратной последовательности, т. е. в каждом раунде r (с обратной последовательностью раундов) выполняются следующие операции:

B = ((B - K2*r+1 mod 2w) >>> A) (+) A (2.11)

A = ((A - K2*r mod 2w) >>> B) (+) B (2.12)

где >>> n - аналогичная описанной выше (<<< n) операция побитового циклического сдвига вправо.

Соответственно после R раундов выполняются следующие операции:

B = B - K1 mod 2w (2.13)

A = A - K0 mod 2w (2.14)

Алгоритм RC5 и некоторые его варианты запатентованы; патенты принадлежат фирме RSA Data Security.

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

Этап 1. Выравнивание ключа шифрования, в рамках которого ключ шифрования, если его размер в байтах b не кратен w/8 (т. е. размеру слова в байтах), дополняется нулевыми байтами до ближайшего большего размера c, кратного w/8.

Этап 2. Инициализация массива расширенных ключей K0…K2*R+1, которая выполняется следующим образом:

K0 = Pw (2.15)

Ki+1 = Ki + Qw (2.16)

где Pw и Qw - псевдослучайные константы, образованные путем умножения на 2w дробной части и последующего округления до ближайшего нечетного целого двух математических констант (e и f соответственно). В спецификации алгоритма приведены вычисленные константы для возможных значений w в шестнадцатеричном виде:

P16 = B7E1 (2.17)

Q16 = 9E37 (2.18)

P32 = B7E15163 (2.19)

Q32 = 9E3779B9 (2.20)

P64 = B7E151628AED2A6B (2.21)

Q64 = 9E3779B97F4A7C15 (2.22)

Этап 3. Циклически выполняются следующие действия:

A = Ki = (Ki + A + B) <<< 3 (2.23)

B = KCj = (KCj + A + B) <<< (A + B) (2.24)

i = i + 1 mod (2 * R + 1) (2.25)

j = j + 1 mod c (2.26)

где i, j, A и B - временные переменные, их начальные значения равны нулю; KC - выровненный на этапе 1 ключ шифрования.

Количество итераций цикла N определяется как

N = 3 * m,

где m - максимальное из двух значений: c либо (2 х R + 1).

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

Начало криптоанализу алгоритма RC5 было положено сотрудниками RSA Laboratories (научного подразделения фирмы RSA Data Security) Бертоном Калиски-младшим (Burton S. Kaliski Jr.) и Икван Лайзой Ин (Yiqun Lisa Yin). В период с 1995 по 1998 г. они опубликовали ряд отчетов, в которых подробно проанализировали криптостойкость алгоритма RC5. Сделанные из них выводы приведены ниже.

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

Дифференциальный криптоанализ существенно более эффективен при атаках на алгоритм RC5. Калиски и Ин предложили атаку на алгоритм RC5-32/12/16, для которой требовалось 263 пар выбранных открытых текстов и соответствующих им шифртекстов. Этот результат улучшили Ларс Кнудсен (Lars R. Knudsen) и Уилли Мейер (Willi Meier), которым для атаки потребовалось 254 выбранных открытых текстов. Они же нашли несколько классов слабых ключей, упрощающих дифференциальный криптоанализ. А наилучшим результатом стал криптоаналитический метод, предложенный криптологами Алексом Бирюковым (Alex Biryukov) и Эйялом Кушилевицем (Eyal Kushilevitz), в котором необходимо 244 выбранных открытых текстов для успешной атаки. Тем не менее, все описанные выше атаки не слишком практичны - для их выполнения требуется огромное число выбранных открытых текстов. Бирюков и Кушилевиц считают, что для обеспечения полной невскрываемости алгоритма дифференциальным криптоанализом достаточно выполнения 18-20 раундов вместо 12.

На основании того факта, что на ряде платформ операция циклического сдвига на переменное число бит выполняется за различное число тактов процессора, изобретатель метода вскрытия алгоритмов шифрования по времени исполнения Пол Кохер (Paul C. Kocher) высказал предположение о возможности атаки по времени исполнения на алгоритм RC5 на таких платформах. Два варианта подобной атаки были сформулированы криптоаналитиками Говардом Хейзом (Howard M. Heys) и Хеленой Хандшух (Helena Handschuh), которые показали, что секретный ключ можно вычислить, выполнив около 220 операций шифрования с высокоточными замерами времени исполнения и затем от 228 до 240 тестовых операций шифрования. Однако, Калиски и Ин предложили весьма простое "противоядие" - принудительно выполнять все сдвиги за одинаковое число тактов (т. е. взять наиболее медленный из возможных сдвигов - это, несомненно, несколько снизит среднюю скорость шифрования). Аналогичную методику противодействия атакам по времени исполнения советует и сам Кохер.

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

Было немало и других исследований данного алгоритма, причем подавляющее их большинство применялось к 64-битной версии алгоритма (для w = 32). Это не означает, что RC5 со 128-битным блоком шифруемых данных менее изучен - результаты исследований показывают, что 128-битный вариант RC5 с достаточным числом раундов вскрыть существенно сложнее 64-битного. Например, Бирюков и Кушилевиц предложили атаку на алгоритм RC5-64/16/16 на основе 263 выбранных открытых текстов, что достаточно нереально для практического применения.

2.3 Режимы шифрования

Для любого симметричного блочного алгоритма шифрования определено четыре режима выполнения.

· ECB - Electronic Codebook - каждый блок из 64 битов незашифрованного текста шифруется независимо от остальных блоков, с применением одного и того же ключа шифрования. Типичные приложения - безопасная передача одиночных значений (например, криптографического ключа).

Рис 2.14 Схема режима шифрования ECB

· CBC - Cipher Block Chaining - вход криптографического алгоритма является результатом применения операции XOR к следующему блоку незашифрованного текста и предыдущему блоку зашифрованного текста. Типичные приложения - общая блок-ориентированная передача, аутентификация.

Рис 2.15 Схема режима шифрования CBC

· CFB - Cipher Feedback - при каждом вызове алгоритма обрабатывается J битов входного значения. Предшествующий зашифрованный блок используется в качестве входа в алгоритм; к J битам выхода алгоритма и следующему незашифрованному блоку из J битов применяется операция XOR, результатом которой является следующий зашифрованный блок из J битов. Типичные приложения - потокоориентированная передача, аутентификация.

Рис 2.16 Схема режима шифрования CFB

· OFB - Output Feedback - аналогичен CFB, за исключением того, что на вход алгоритма при шифровании следующего блока подается результат шифрования предыдущего блока; только после этого выполняется операция XOR с очередными J битами незашифрованного текста. Типичные приложения - потокоориентированная передача по зашумленному каналу (например, спутниковая связь).

Рис 2.17 Схема режима шифрования OFB

Для наглядной иллюстрации разницы в них приведён рисунок 2.18.

Рис 2.18 Проблема при шифровании блочными алгоритмами: (а) оригинальная картинка; (b) зашифровано в режиме ECB; (c) зашифровано в режиме CBC.

На рисунке 2.18 при режиме электронной книги (ECB) видно, что общие очертания еще можно различить, а при использовании сцепления блока, картинка превращается в «белый шум», который близок по своей природе к случайным числам.

Глава 3. Моделирование, производительность и масштабируемость защищенных каналов

3.1 Моделирование и оценка производительности работы защищенных каналов

Проблема выбора алгоритма шифрования и серверной ОС является одним из важнейших этапов построения защищенного канала корпоративной сети. В случае если бы все алгоритмы были идеальными (то есть не имели никаких уязвимостей), то криптостойкость его была бы прямо пропорциональна длине ключа, так как единственным оставшимся способом для взлома шифротекста был метод полного перебора. Все вышеописанные алгоритмы за все время существования не были скомпрометированы ни разу, следовательно, будем опираться при оценке стойкости алгоритма на длину ключа. Увеличение длины ключа сильно сказывается на производительности данного алгоритма из-за увеличения количества раундов при шифровании. В качестве примера для тестирования был выбран симметричный алгоритм блочного шифрования AES с размерами блока 128 и 256 бит. Этот выбор объясняется тем, что с одной стороны он является стандартом шифрования во многих странах и, как следствие, широко используется для реализации защищенных каналов в корпоративных сетях. Тестирование проводилось с двумя серверными операционными системами Windows Server 2003 и Fedora core 8.0., учитывая огромный рынок серверных приложений, работающих в этих средах.

3.1.1 Оценка производительности защищенного канала

Для основного тестирования в реальных условиях были выбраны в качестве сервера Intel Core 2 Duo E8200 (Wolfdale) с частотой 2667 МГц и объемом оперативной памяти в 2048 Мб. В качестве клиентов были выбраны компьютеры Intel Celeron с частотой 1800 МГц и оперативной памятью в размере 790 Мб. Все компьютеры были объединены в общую сеть с помощью сетевого коммутатора. Тестирование проводилось с двумя серверными операционными системами Windows Server 2003 и Fedora core 8.0.

На клиентах использовалась операционная система Windows XP SP2. Для реализации зашифрованного канала была выбрана программа openvpn-2.0.

В качестве средства измерения взят программный продукт с графической оболочкой Jpref версии 2.0.0.

Jpref - кроссплатформенная клиент-серверная программа - генератор TCP и UDP трафика для тестирования пропускной способности сети.

Настройка OpenVPN c применением сертификатов X.509.

Файл конфигурации серверов:

dev tap

server 192.168.0.0 255.255.255.0

cipher AES-128-CBC

tls-auth key.txt 0

tls-server

dh dh1024.pem

ca ca.crt

cert swat.crt

key swat.key

keepalive 10 60

Файл конфигурации клиентов:

remote 192.160.1.111

dev tap

client

cipher AES-256-CBC

tls-auth key.txt 1

keepalive 10 60

tls-client

dh dh1024.pem

ca ca.crt

cert client.crt

key client.key

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

Для решения поставленной задачи произведем вычислительный эксперимент, используя пакет Jpref, для одного, двух и трех клиентов в течение времени 30 сек. для альтернативных вариантов сетевых ОС.

Результаты тестирования для варианта используемых ОС: сервер - Windows Server 2003, клиент - Windows XP, представлены в таблице 3.1

Таблица 3.1 Результаты тестирования защищенного канала для варианта: Windows Server 2003 с клиентами Windows XP

Количество

клиентов

Тип алгоритм шифрования

AES-128-CBC

AES-256-CBC

исх.

вход

сумма

cup

исх.

вход

сумма

cup

1

21

33,3

54,38

22,7

13,2

30,3

43,52

23

2

18,5

28,3

48,89

28,1

10,7

10,5

21,13

27,3

3

16

40,7

57,69

31,5

17,4

35,2

47,6

31,7

В таблице 3.1 использованы следующие условные обозначения:

· исх. - исходящий трафик от сервера к клиенту переданной информации в единицу времени [bits/sec];

· вход - входящий трафик от клиента к серверу переданной информации в единицу времени [bits/sec];

· сумма - суммированный исходящий и входящий трафик переданной информации в единицу времени [bits/sec];

· cup - загрузка центрального процессора сервера представлена в виде % от максимально допустимой.

Рис 3.1 Пропускная способность канала корпоративной сети с защищенным каналом с серверной операционной системой Windows Server 2003

На рис. 3.1 использованы следующие условные обозначения:

***_* пример (128_1);

*** - размер ключа шифрование в битах 128, 256;

* - количество удаленных клиентов при тестировании сети.

P - пропускная способность защищенного канала, принимается значение в единицу времени [bits/sec].

Результаты тестирования для варианта используемых ОС: сервер - Fedora core, клиент - Windows XP, представлены в таблице 3.2

Таблица 3.2 Результаты тестирования защищенного канала для варианта: Fedora core с клиентами Windows XP

Количество клиентов

Алгоритм шифрования

AES-128-CBC

AES-256-CBC

исх.

вход

сумма

cup

исх.

вход

сумма

cup

1

22,5

33,6

55,04

23

22,5

31,7

54,21

22,4

2

20,3

32,2

51,47

27,7

22,3

30,8

53,16

26,6

3

27,9

41,8

68,68

29,6

24,5

39,2

63,78

30,5

В таблице 3.2 использованы следующие условные обозначения:

· исх. - исходящий трафик от сервера к клиенту переданной информации в единицу времени [bits/sec];

· вход -входящий трафик от клиента к серверу переданной информации в единицу времени [bits/sec];

· сумма - суммированный исходящий и входящий трафик переданной информации в единицу времени [bits/sec];

· cup - загрузка центрального процессора сервера представлена в виде % от максимально допустимой.

Рис 3.2 Пропускная способность канала корпоративной сети с защищенным каналом с серверной операционной системой Fedora core.

На рис. 3.2 использованы следующие условные обозначения:

***_* пример (128_1);

*** - размер ключа шифрование в битах 128, 256;

* - количество удаленных клиентов при тестировании сети;

P - пропускная способность защищенного канала, принимается значение в единицу времени [bits/sec].

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

Рис 3.3 Пропускная способность канала корпоративной сети с защищенным каналом для альтернативных вариантов серверных ОС.

На рис 3.3 использованы следующие условные обозначения:

· OS -тип сетевой операционной системы (MS Windows Server 2003 - win, Fedora core 8 - lin);

· KEY - в bit (бит) - длинна ключа, установленного для используемого протокола шифрования (использована группа протоколов AES-xxx-CBC, в название которой вместо ххх - длины ключа использовано значение 256 бит);

· C - количество удаленных узлов, одновременно осуществляющих обмен данными с сервером VPN;

· P - пропускная способность защищенного канала, принимается значение в единицу времени [bits/sec].

Рис 3.4 График загрузки центрального процессора для альтернативных вариантов серверных ОС.

На рис 3.4 использованы следующие условные обозначения:

· OS -тип сетевой операционной системы (MS Windows Server 2003 - win, Fedora core 8 - lin);

· KEY - в bit (бит) - длинна ключа, установленного для используемого протокола шифрования (использована группа протоколов AES-xxx-CBC, в название которой вместо ххх - длины ключа использовано значение 256 бит);

· C - количество удаленных узлов, одновременно осуществляющих обмен данными с сервером VPN;

· L - загрузка центрального процессора сервера представлена в виде % от максимально допустимой;

Анализ графиков, представленных на рис. 3.3, рис. 3.4, позволяет сделать следующие выводы:

1. При прочих одинаковых условиях сбора статистики, ОС семейства Fedora core обеспечивают большую производительность по сравнению с ОС Windows 2003 в условиях защищенного канала.

2. В условиях работы ОС Fedora core увеличение количества удаленных клиентов не значительно сказывается на пропускной способности защищенного канала, чего нельзя сказать при использование ОС семейства MS Windows Server 2003, для неё характерны большие нагрузки на производительность канала;

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

4. В условиях работы ОС Fedora core нагрузка на центральный процессор значительно меньше, особенно при увеличении количества узлов сети. Для ОС семейства MS Windows Server 2003 характерны достаточно большие нагрузки на ЦП.

3.1.2 Разработка модели функционирования сети

С целью автоматизации выбора оптимальных параметров в защищённом канале корпоративной сети, построенной на базе OpenVPN, необходимо построить функцию отклика, которая будет идентифицировать пропускную способность канала в зависимости от воздействующих факторов: операционной системы, длины ключа, количества узлов корпоративной сети. Математическим аппаратом, который позволяет решить данную задачу, является Метод Группового Учёта Аргументов (Group Method of Data Handling). Он применяется в самых различных областях для анализа данных и отыскания знаний, прогнозирования и моделирования систем, оптимизации и распознавания образов. Индуктивные алгоритмы МГУА дают уникальную возможность автоматически находить взаимозависимости в данных, выбрать оптимальную структуру модели или сети и увеличить точность существующих алгоритмов.

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

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

Другим достоинством МГУА является то, что он гарантирует помехоустойчивость получаемых моделей. Чем больше степень неточности данных, характеризуемая отношением мощности помехи к мощности точных данных, тем проще модель оптимальной сложности, поэтому МГУА при увеличении помех выбирает все более узкие границы области моделирования и все более простые структуры моделей. Таким образом, при самоорганизации модели на ЭВМ выбирается структура, ближайшая к оптимальной для каждого уровня отношения помеха-сигнал.

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

Для подготовки элементов выборки к использованию в МГУА необходимо произвести ее цензурирование, т.е. приведение к отрезку [0,1].

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

После цензурирования выборки все ее значения приводятся к отрезку [0,1] по формуле

(3.1)

Необходимость такого приведения вызвана большим числом арифметических операций на элементах выборки в МГУА, что при разных порядках чисел ведет к накоплению больших погрешностей и плохой сходимости метода.

Для восстановления зависимости используется полиномиальный итерационный алгоритм МГУА, в результате работы которого должна быть получена зависимость

(3.2)

где l - число элементов в исходном базисе факторов;

m - число слагаемых модели с ненулевыми значениями коэффициентов, называемое сложностью модели.

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

Одна из основных трудностей при применении методов перекрестного обоснования, частным случаем которых является МГУА, связана с разбиением выборки на два подмножества - рабочую и экзаменационную части. Поскольку модель в значительной степени определяется рабочей частью выборки, необходимо, чтобы объем рабочей части был больше, и чтобы и в рабочую, и в экзаменационную часть попадали наблюдения со всего интервала множества значений, поэтому перед запуском алгоритма МГУА, полезно упорядочить наблюдения в выборке по возрастанию отклика, а, затем, выбирать данные для экзаменационной части через некоторое одинаковое число наблюдений.

Рассмотрим подробнее процедуру МГУА.

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

, (3.3)

где - число элементов в экзаменационной части выборки.

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

. (3.4)

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

При формировании базиса r-го шага учитывается тот факт, что на r-м шаге сложность модели не должна превышать r. Параллельно с процессом построения базиса идет построение набора коэффициентов для этого базиса итерационным МНК по рабочей части выборки и вычисление критерия регулярности по экзаменационной части. В памяти ЭВМ в каждый момент времени сохраняются только F лучших моделей. При исчерпании множества базисов r-го шага осуществляется переход к следующему (r+1)-му шагу.

Процесс останавливается при выполнении следующего неравенства:

(3.5)

и за результат принимается лучшая модель (r-1) шага.

Теперь рассмотрим подробнее процедуру подбора коэффициентов модели по заданной структуре модели итерационным МНК.

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

(3.6)

с точностью до заданного , чтобы минимизировать взвешенную сумму квадратов отклонений:

(3.7)

где Np - число наблюдений в рабочей части выборки.

Первоначально весовые коэффициенты наблюдений предполагаются одинаковыми и равными 1, с этими весами строится система коэффициентов k, k=1,2,...,m модели в виде решения системы линейных уравнений:

(3.8)

Затем выбираются веса таким образом, чтобы вес i-го наблюдения зависел от отношения i-го остатка в предыдущей итерации к общей мере остатков в этой итерации:

(3.9)

и по этим весам строится новая система коэффициентов модели и т.д. Процесс останавливается, когда достигается заданная степень точности , т.е. когда выполнится неравенство

. (3.10)

Для использования полученной зависимости в имитационной модели необходимо произвести пересчет коэффициентов модели с учетом коэффициентов линейного преобразования, которое осуществлялось при центрировании и нормировании [6].

Для построения функции отклика воспользуемся специализированным пакетом для моделирования нейронных сетей NeuroShell 2 (Ward Systems Group, Inc.), в котором реализован комбинаторный алгоритм МГУА. Для построения функции требуется серия опытов с разным состоянием сети, будем использовать данные, полученные при тестирование из приложения 1.

В результате расчёта с использованием пакета NeuroShell была получена функция отклика:

Y=-0.42-0.14*X1-8.8E-002*X2+0.4*X3+0.36*X3^2+6.7E-002*X1*X2+ 0.26*X1*X3-2.6E-002*X2*X3, (3.11)

где:

X1=2*(win/lin-1)-1 операционная система;

X2=2*(key-128)/128 длина ключа в битах;

X3=(Kol-1)/2 количество клиентов участвующих в тестирование;

Y=2*S<->C- 6.54/87 (расчётная производительность в тысячах bit/sec).

В результате работы пакета NeuroShell построим графики:

Рис 3.5 График производительности защищенного канала построенный на основе данных полученных опытным путем.

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

Рис 3.6 График функции Y(N) производительности защищенного канала корпоративной сети.

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

Для сравнения с исходными данными, полученными при просчете программой, построим вместе с ним график пропускной способности сети полученный опытным путём при тестировании:

Рис 3.7 Совмещенный график функции отклика Y(N) и эмпирических данных.

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

Рис 3.8 График среднеквадратического отклонения ошибки и корреляцией Y(N) и исходных данных.

виртуальная сеть шифрование защищенный канал

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

Из графика рис 3.7 видно, что функция отклика, полученная с помощью пакета МГУА рис 3.6, схожа с графиком рис 3.5 построенным на основе данных полученных опытным путем. Исходя из этого можно судить об адекватности данной модели в реальных условиях.

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

3.1.3 Многомерный регрессионный анализ

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

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

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

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

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

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

Выделяют два существенных подхода к решению проблемы сокращения количества исходных переменных:

отсеивание менее существенных факторов в процессе построения регрессионной модели;

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

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

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

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

Как было сказано выше, основой многошагового регрессионного анализа является построение уравнения регрессии. Рассмотрим более подробно его систему и основные понятия.

В общем виде многомерная линейная регрессионная модель зависимости y от объясняющих переменных , ,…, имеет вид:

. (3.12)

Для оценки неизвестных параметров взята случайная выборка объема n из (k+1)-мерной случайной величины (y, ,,…,).

В матричной форме модель имеет вид:

, (3.13)

где , , , е= (3.14)

- вектор-столбец фактических значений зависимой переменной размерности n;

- матрица значений объясняющих переменных размерности n*(k+1);

- вектор-столбец неизвестных параметров, подлежащих оценке, размерности (k+1);

- вектор-столбец случайных ошибок размерности n с математическим ожиданием ME=0 и ковариационной матрицей

(3.15)

соответственно, при этом

-единичная матрица размерности (nxn).

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

Далее подставив выражение

(3.16)

в ,

получаем скалярную сумму квадратов

Условием обращения полученной суммы в минимум является система нормальных уравнений:

, (j=0,1,2,…,k).

В результате дифференцирования получается:

.

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

. (3.17)

Далее умножив обе части уравнения слева на матрицу , получим

(3.18)

Так как , тогда .

Полученные оценки вектора b являются не смещенными и эффективными.

Ковариационная матрица вектора b имеет вид:

,

где - остаточная дисперсия.

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

, (3.19)

где , .

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

. (3.20)

Несмещенная оценка остаточной дисперсии определяется по формуле:

, (3.21)

где n - объем выборочной совокупности; k - число объясняющих переменных.

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

, где (3.22)

- сумма квадратов отклонений (от нуля), обусловленная регрессией

(3.23)

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

Для проверки гипотезы используется величина

, (3.24),

которая имеет F-распределение Фишера-Снедекора с числом степеней свободы и . Если , то уравнение регрессии значимо, т.е. в уравнении есть хотя бы один коэффициент регрессии, отличный от нуля.

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

(3.25),

которая имеет F-распределение Фишера-Снедекора с числом степеней свободы и ; - соответствующий элемент главной диагонали ковариационной матрицы.

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

(3.26),

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

Проводить регрессионный анализ будем с помощью программы Statistica 6.0

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

Statistica 6.0 - Система для статистического анализа данных, включающая широкий набор аналитических процедур и методов: более 10 000 различных типов графиков, описательные и внутригрупповые статистики, разведочный анализ данных, корреляции, быстрые основные статистики и блоковые статистики, интерактивный вероятностный калькулятор, T-критерии (и другие критерии групповых различий), таблицы частот, сопряженности, флагов и заголовков, анализ многомерных откликов, множественная регрессия, непараметрические статистики, общая модель дисперсионного и ковариационного анализа, подгонка распределений. (Приведено описание только базового блока. Также существуют дополнительные блоки: Линейные / нелинейные модели, Многомерные разведочные технологии, Анализ мощности, Нейронные сети, Data Mining, Карты контроля качества, Анализ Процессов, Планирование экспериментов и др.)

Результаты, полученные из программы Statistica 6.0 в результате расчета по исходным данным из приложения 1:

Таблица 3.3 Матрица парных коэффициентов корреляции

X1

X2

X3

Y

X1

1,00000

0,01094

-0,01016

-0,268308

X2

0,01094

1,00000

0,00355

-0,180454

X3

-0,01016

0,00355

1,00000

0,663083

Y

-0,26831

-0,18045

0,66308

1,00000

В таблице 3.3 переставлены следующие условные обозначения:

· X1 -тип сетевой операционной системы (MS Windows Server 2003 - win, Fedora core 8 - lin);

· X2 - в bit (бит) - длинна ключа, установленного для используемого протокола шифрования (использована группа протоколов AES-xxx-CBC, в название которой вместо ххх - длины ключа использовано значения 128, 256);

· X3 - количество удаленных узлов, одновременно осуществляющих обмен данными с сервером VPN;

· Y - полученная функция отклика.

Анализ матрицы таблица 3.3 парных коэффициентов корреляции показывает, что результативный показатель наиболее тесно связан с показателем X3 - количеством клиентов, так как этот показатель имеет наибольшее значение.

Отсюда можно сделать вывод, что наиболее значимым параметром в функции отклика (3.11), полученной ранее, является параметр X3,тоесть именно количество клиентов в большей степени повлияло на функцию при ее просчете пакетом NeuroShell.

3.2 Механизмы оптимизации

Масштабируемость - это способность системы адаптироваться к расширению предъявляемых требований и возрастанию объемов решаемых задач. Система «1С: Предприятие 8.0» имеет хорошие возможности масштабирования. Она позволяет работать как в файловом варианте, так и с использованием технологии «клиент-сервер». В последнем случае применяется современная трехуровневая архитектура, когда между клиентом и сервером баз данных Microsoft SQL Server располагается сервер 1С: Предприятия 8.0.

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

Платформа «1С: Предприятие 8.0» позволяет создавать как простые решения для автоматизации задач небольших предприятий и домашних пользователей, так и достаточно сложные автоматизированные системы с большим количеством объектов и взаимосвязей между ними, реализующие весь комплекс задач по учету и управлению предприятием.

Трехуровневая архитектура «клиент-сервер»

Одним из наиболее существенных нововведений 1С: Предприятия 8.0 является реализация трехуровневой архитектуры «клиент-сервер». В 1С: Предприятии 7.7 в клиент-серверном варианте работы с информационной базой программа, работающая на компьютере пользователя, обращалась непосредственно к базе данных в среде MS SQL Server. В новой версии на одном из компьютеров работает сервер 1С: Предприятия 8.0. Программа, работающая у пользователя, взаимодействует с сервером 1С: Предприятия 8.0, а сервер при необходимости обращается к базе данных MS SQL Server. При этом физически сервер 1С: Предприятия 8.0 и MS SQL Server могут располагаться как на одном компьютере, так и на разных. Это позволяет администратору при необходимости распределять нагрузку между серверами.

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

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

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

Выполнение на сервере

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

Кэширование данных

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

Работа встроенного языка на сервере

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

3.3 Производительность 1С: Предприятие 8.1

Для оценки производительности и масштабируемости клиент-серверной версии 1С:Предприятие 8 был проведен ряд тестов, позволяющих:

· оценить работоспособность и производительность 1С:Предприятия 8 при работе с серверными операционными системами: Windows Server 2003 и Fedora core 8

· оценить работоспособность и производительность 1С:Предприятия 8 при работе c различными СУБД PostgresSQL, MSSQLserver.

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

· Использование для тестирования типового прикладного решения.

· Тестирование операций, наиболее критичных с точки зрения работы типичной организации.

· Тестирование операций при фиксированных параметрах, типичных для большинства организаций

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

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

3.4 Тестирование 1C Предприятия

Тестирование проводилось на двух серверных операционных системах Windows Server 2003 (Ms SQLserver 2005) и Linux core 8 (PostgreSQL). Использовалось специализированное программное обеспечение для тестирования: 1С:Корпоративный инструментальный пакет, и TPC-1C-GILV бесплатная утилита для тестирования.

3.4.1 1С: Корпоративный инструментальный пакет

1С: Корпоративный инструментальный пакет - предназначен для повышения производительности, масштабируемости и надежности информационных систем на платформе 1С:Предприятие 8 за счет:

* обнаружения и автоматического анализа возможных технических проблем на любых стадиях внедрения (в том числе на стадии проектирования);

* получения объективной информации о производительности системы;

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

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

Основные решаемые задачи

Основные задачи, решаемые при помощи Корпоративного инструментального пакета:

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

* оценка применимости системы в заданных условиях;

* оценка масштабируемости системы;

* выбор оборудования;

* получение объективных (числовых) показателей производительности системы во время ее нагрузочных испытаний или рабочей эксплуатации;

* сбор и хранение информации о динамике производительности системы во времени;

* поиск и анализ «узких мест» и оптимизация кода системы:

* сбор полной информации обо всех проблемах производительности, имеющихся в многопользовательской системе:

* ранжирование проблем по степени их влияния на производительность системы в целом;

* предоставление сквозной информации о контексте каждой проблемы на всех уровнях функционирования системы (действия пользователя, стек вызовов исходного кода, запросы к СУБД).

Общая схема работы

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

Нагрузка в исследуемой базе может создаваться Тест-центром (при помощи сценариев тестирования) либо реальными пользователями системы.

Эксперт, при помощи Тест-центра и «Центра управления производительностью» осуществляет сбор показателей производительности системы. На основании полученных значений он оценивает текущую работоспособность системы и наличие в ней проблем производительности.

Если обнаружены проблемы производительности, то эксперт при помощи ЦУП собирает дополнительную (аналитическую) информацию об «узких местах» системы. На основании этой информации и рекомендаций, данных в руководстве по использованию "Корпоративного инструментального паркета", эксперт может произвести оптимизацию системы, изменив код конфигурации и/или структуру метаданных.

3.4.2 Тест-центр

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


Подобные документы

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

    дипломная работа [6,9 M], добавлен 12.09.2012

  • Анализ угроз информационной безопасности. Понятия и функции сети VPN. Способы создания защищенных виртуальных каналов. Построение защищенных сетей на сеансовом уровне. Туннелирование на канальном уровне. Идентификация и аутентификация пользователей.

    дипломная работа [3,6 M], добавлен 17.08.2014

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

    курсовая работа [587,7 K], добавлен 12.05.2008

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

    дипломная работа [573,3 K], добавлен 25.09.2014

  • Механизмы обеспечения информационной безопасности корпоративных сетей от угроз со стороны сети Интернет. Механизм защиты информации на основе использования межсетевых экранов. Принципы построения защищенных виртуальных сетей (на примере протокола SKIP).

    реферат [293,2 K], добавлен 01.02.2016

  • Понятие локально-вычислительной сети и ее преимущества. Основные виды топологий. Типы серверов в компьютерной сети. Характеристика модели OSI. Технические и программные характеристики рабочих станций. Аппаратные средства для поиска неисправностей в сети.

    дипломная работа [1,6 M], добавлен 14.06.2015

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

    дипломная работа [2,6 M], добавлен 20.07.2014

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

    курсовая работа [817,8 K], добавлен 22.06.2011

  • Проведение тестирования производительности Node.js сервера в зависимости от количества и интенсивности подключений, анализ данных. Аппаратные и программные компоненты тестового стенда. Принцип работы протокола websocket. Серверная часть приложения.

    курсовая работа [3,8 M], добавлен 07.07.2013

  • Математические модели, построенные по принципу организации и функционирования биологических нейронных сетей, их программные или аппаратные реализации. Разработка нейронной сети типа "многослойный персептрон" для прогнозирования выбора токарного станка.

    курсовая работа [549,7 K], добавлен 03.03.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.