Система и способ выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы
SYSTEM AND METHOD OF ANTIVIRUS SERVER PRODUCTIVITY RESERVE PART ISOLATION FOR ANTI-VIRUS SCANNING OF WEB-PAGE

Область техники
Изобретение относится к системам и способам управления производительностью антивирусного сервера, в частности к системам и способам выделения резерва производительности антивирусного сервера.
Уровень техники
Ежедневный объем обрабатываемой серверами информации непрерывно возрастает. Нерегулируемый поток запросов в ходе обработки данных нередко приводит сервер в нерабочее состояние. Сбой возникает по причине переполнения очереди запросов и физической ограниченности ресурсов компьютерной техники. Для контроля нагрузки на ресурсы серверов используют методы анализа потока и очереди запросов. Процесс контроля усложняется из-за неконтролируемого роста количества запросов.
Остановка компьютерных систем типа сервер, которые ведут обработку запросов, наносит ущерб производительности сложных вычислительных систем, работа которых основана на оправке или получении запросов. В этой связи некоторые упомянутые системы прерывают выполнение задач и входят в режим ожидания завершения выполнения запроса. Одной из таких систем является система, которая выполняет проверку файлов на наличие вредоносного кода с использованием удаленных компьютерных систем или серверов. В таком случае возникает падение одного из основных показателей эффективности подобных систем - уровня обнаружения.
Для выполнения запросов необходимо как минимум три составляющих: элемент, который формирует и осуществляет запрос; канал связи и элемент, который обрабатывает полученный запрос и выдает ответ. Элементом, который формирует и осуществляет запрос может быть приложение, установленное на компьютерной системе. Элементом, который обрабатывает полученный запрос может быть компьютерная система серверного типа, которая содержит хранилище данных или функционал, в результате работы которого будет обработан запрос и получен ответ на запрос. Канал передачи информации - известный тип соединения, который позволяет осуществить передачу данных от одного элемента к другому.
В настоящее время существует ряд решений, предназначенных для контроля или управления процессом выполнения запроса. В публикации WO 2016040743 А1 описана система, в рамках функционирования которой планируют динамическое использование виртуальных компьютерных ресурсов, в том числе коммуникационных и сетевых (контроль скорости запросов). Когда виртуальному компьютеру необходимо функционировать в режиме высокой производительности, система разрешает использование имеющихся ресурсов, либо их выделенное количество. В ином случае, когда необходимо функционирование в более гибком режиме производительности, система позволяет аккумулировать и использовать ограниченные ресурсы без растрат.
В публикации US 7852764 B2 описана система, в которой при достижении предельных минимального или максимального значений коэффициентов (lower_threshold, upper_threshold) регулируют переполнение количества пакетов при их передаче путем анализа количества оставшихся пакетов и частоту их передачи.
Указанные решения осуществляют контроль за процессом выполнения запросов, но не выявляют оптимальное выделение резерва производительности антивирусного сервера при выполнении антивирусной проверки веб-страниц. Настоящее изобретение позволяет эффективно решить эту задачу.
Раскрытие изобретения
Изобретение относится к системам и способам управления производительностью антивирусного сервера. Технический результат настоящего изобретения заключается в повышении эффективности использования резерва производительности антивирусного сервера при выполнении антивирусной проверки веб-страницы. Указанный технический результат достигается за счет выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы в соответствии с выбранной скоростью отправки информации от модуля антивирусной системы для проверки веб-страниц к антивирусному серверу. Скорость отправки информации определяют на основании сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки, пропускной способности канала передачи информации между модулем антивирусной систем для проверки веб-страниц и антивирусным сервером, резерва производительности антивирусного сервера с использованием правил выбора скорости.
В одном из вариантов реализации предоставляется система выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы, которая содержит: средство выявления, предназначенное для выявления текста на языке разметки открываемой веб-страницы, формирования набора текста открываемой веб-страницы на языке разметки для антивирусной проверки, передачи сформированного набора текста на язык разметки открываемой веб-страницы для антивирусной проверки средству выбора; средство определения, предназначенное для определения пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц и антивирусным сервером, определения резерва производительности антивирусного сервера, передачи данных об определенной пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц и антивирусным сервером, данных об определенном резерве производительности антивирусного сервера средству выбора; средство выбора, предназначенное для выбора скорости отправки информации от модуля антивирусной системы для проверки веб-страниц на антивирусный сервер на основании сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки, определенной пропускной способности канала передачи информации, определенного резерва производительности антивирусного сервера с использованием правил выбора скорости из базы данных правил, подсчета части определенного резерва производительности антивирусного сервера, требуемой для выполнения антивирусной проверки сформированного набора текста на языке разметки открываемой веб-страницы, с учетом выбранной скорости отправки информации, выделения подсчитанной части определенного резерва производительности антивирусного сервера; базу данных правил, предназначенную для хранения правил выбора скорости.
В другом варианте реализации системы средство выявления выполняет выявление текста на языке разметки открываемой веб-страницы путем фиксирования успешного выполнения последовательности действий по открытию веб-страницы в веб-браузере.
Еще в одном варианте реализации системы средство выявления выполняет выявление текста на языке разметки открываемой веб-страницы путем фиксирования перехода по гиперссылке, расположенной на открываемой веб-странице.
В другом варианте реализации системы средство выявления выполняет выявление текста на языке разметки открываемой веб-страницы путем анализа событий изменения открываемой веб-страницы.
Еще в одном варианте реализации системы средство выявления формирует набор текста на языке разметки открываемой веб-страницы для антивирусной проверки путем добавления строк, которые содержат вставку с текстом программы на языке программирования.
В другом варианте реализации системы средство выявления формирует набор текста на языке разметки открываемой веб-страницы для антивирусной проверки путем добавления символов и строк текста на языке разметки открываемой веб-страницы, которые содержат тег.
Еще в одном варианте реализации системы средство определения расположено на модуле антивирусной системы для проверки веб-страниц.
В другом варианте реализации системы средство определения расположено на антивирусном сервере.
Еще в одном варианте реализации системы средство определения выполняет определение пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц и антивирусным сервером путем отправки запросов, содержащих проверенный набор текста на языке разметки известного размера, подтверждения о получении запросов и вычислении времени, затраченного на передачу проверенного набора текста на языке разметки известного размера.
В другом варианте реализации системы средство определения выполняет определение резерва производительности антивирусного сервера путем принудительной антивирусной проверки проверенного набора текста на языке разметки известного размера и вычисления времени, затраченного на его проверку.
Еще в одном варианте реализации системы правило выбора скорости состоит из перечня условий, при выполнении которых средство выбора осуществляет выбор скорости отправки информации.
В одном из вариантов реализации предоставляется способ выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы, в котором: при помощи средства выявления выявляют текст на языке разметки открываемой веб-страницы; при помощи средства выявления формируют набор текста на языке разметки открываемой веб-страницы для антивирусной проверки; при помощи средства определения определяют пропускную способность канала передачи информации между модулем антивирусной системы для проверки веб-страниц и антивирусным сервером; при помощи средства определения определяют резерв производительности антивирусного сервера; при помощи средства выбора выбирают скорость отправки информации от модуля антивирусной системы для проверки веб-страниц на антивирусный сервер на основании сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки, определенной пропускной способности канала передачи информации, определенного резерва производительности антивирусного сервера с использованием правил выбора скорости из базы данных правил; при помощи средства выбора подсчитывают часть определенного резерва производительности антивирусного сервера, требуемую для выполнения антивирусной проверки сформированного набора текста на языке разметки открываемой веб-страницы, с учетом выбранной скорости отправки информации; при помощи средства выбора выделяют подсчитанную часть определенного резерва производительности антивирусного сервера.
В другом варианте реализации способа при помощи средства выявления выполняют выявление текста на языке разметки открываемой веб-страницы путем фиксирования успешного выполнения последовательности действий по открытию веб-страницы в веб-браузере.
Еще в одном варианте реализации способа при помощи средства выявления выполняют выявление текста на языке разметки открываемой веб-страницы путем фиксирования перехода по гиперссылке, расположенной на открываемой веб-странице.
В другом варианте реализации способа при помощи средства выявления выполняют выявление текста на языке разметки открываемой веб-страницы путем анализа событий изменения открываемой веб-страницы.
Еще в одном варианте реализации способа при помощи средства выявления формируют набор текста на языке разметки открываемой веб-страницы для антивирусной проверки путем добавления строк, которые содержат вставку с текстом программы на языке программирования.
В другом варианте реализации способа при помощи средства выявления формируют набор текста на языке разметки открываемой веб-страницы для антивирусной проверки путем добавления символов и строк текста на языке разметки открываемой веб-страницы, которые содержат тег.
Еще в одном варианте реализации способа при помощи средства определения выполняют определение пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц и антивирусным сервером путем отправки запросов, содержащих проверенный набор текста на языке разметки известного размера, подтверждения о получении запросов и вычислении времени, затраченного на передачу проверенного набора текста на языке разметки известного размера.
В другом варианте реализации способа при помощи средства определения выполняют определение резерва производительности антивирусного сервера путем принудительной антивирусной проверки проверенного набора текста на языке разметки известного размера и вычисления времени, затраченного на его проверку.
Еще в одном варианте реализации способа правило выбора скорости, состоит из перечня условий, при выполнении которых средство выбора осуществляет выбор скорости отправки информации.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1 отображает схему процесса выполнения запроса между модулем антивирусной системы для проверки веб-страниц и антивирусным сервером.
Фиг. 2 представляет структурную схему системы выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы.
Фиг. 3 алгоритм системы выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы.
Фиг. 4 представляет пример компьютерной системы общего назначения.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
Веб-браузер (браузер, англ. web-browser) - приложение (аппаратное устройство или программное средство), предназначенное для принятия и обработки обращений пользователя для входа в сеть Интернет (для посещения веб-страницы), передачи обращения в сеть Интернет и предоставления ответа на это обращение из сети Интернет (сервера, содержащего веб-страницу). Основной функцией веб-браузера является обработка и отображение веб-страницы, полученной в ответе на обращение (источник: ISO/IEC 15445:2000(Е), https://www.cs.tcd.ie/misc/15445/15445.html).
Расширение для браузера (англ. web-browser extension) - приложение небольшого размера, запускаемое веб-браузером, которая может изменить или расширить функциональные возможности веб-браузера (источник: https://developer.chrome.com/extensions, https://msdn.microsoft.com/en-us/library/aa753587(VS.85).aspx). Разработчики программного обеспечения под расширением для веб-браузера понимают дополнения к веб-браузеру (англ. web-bowser add-on), плагины к веб-браузеру (англ. web-browser plug-in).
Некоторые веб-страницы, открываемые в веб-браузере, могут быть специально созданы или модифицированы для выполнения вредоносных действий. Создание или модификация веб-страницы для выполнения вредоносных действий - создание и внедрение в текст открываемой веб-страницы на языке разметки иного текста на языке разметки, обработка веб-браузером которого приводит к выполнению вредоносных действий. Текст на языке разметки, обработка браузером которого приводит к выполнению вредоносных действий, - символы или строки на языке разметки, при обработке веб-браузером которых выполняется вредоносное действие.
Другим примером текста на языке разметки, обработка браузером которого приводит к выполнению вредоносных действий, являются символы или строки текста языке разметки, в которых использование тех или иных тегов сомнительно, например <iframe>, <object>, <embed>. Текст внутри тегов может содержать ссылки на неизвестные или сомнительные ресурсы. Особый интерес представляют атрибуты, используемые в тегах. Например атрибуты влияющие на внешний вид отображаемой информации (скрытность при просмотре страницы или сверхмалые значения атрибутов width/height (0-10 пикселей): positiomabsolute; display:none).
Для обеспечения безопасности при открытии веб-страниц необходимо выполнять антивирусную проверку открываемых веб-страниц. Антивирусная проверка веб-страниц - проверка текста веб-страниц на языке разметки на наличие текста на языке разметки, обработка веб-браузером которого приводит к выполнению вредоносных действий. Антивирусную проверку веб-страниц выполняют при помощи антивирусной системы для антивирусной проверки веб-страниц. Фиг. 1 отображает пример антивирусной системы для проверки веб-страниц, в которой, модуль антивирусной системы для проверки веб-страниц 110 выполняет запросы 130 к антивирусному серверу 140 на проверку веб-страниц с использованием доступного соединения 120.
В общем случае модуль антивирусной системы для проверки веб-страниц 110 не имеет функциональной возможности осуществлять антивирусную проверку веб-страниц на компьютерной системе с веб-браузером, который был использован для открытия веб-страниц. На основе собранного и обработанного текста открываемых веб-страниц модуль антивирусной системы для антивирусной проверки веб-страниц 110 формирует и выполняет запросы на проверку текста веб-страниц на языке разметки 130 к антивирусному серверу 140 с использованием доступного соединения 120.
Доступное соединение 120 является каналом передачи информации между модулем антивирусной системы для проверки веб-страниц 110 и антивирусным сервером 140. Канал передачи информации (англ. transmission channel) - канал связи, в котором передают информацию или данные. В общем случае под каналом связи понимают всю совокупность технических средств, обеспечивающих передачу электрических сигналов от источника сообщений к потребителю. (Игнатов В.А. Теория информации и передачи сигналов. Учебник для ВУЗов. М., изд-во Сов. радио, 1979. - 280 с.). Пропускная способность канали передачи информации (англ. transmission channel capacity) - предельное количество единиц информации в единицу времени, передаваемое через канал передачи информации.
Антивирусный сервер 140 в системе антивирусной проверки веб-страниц - компьютерная система типа сервер, содержащая функционал для выполнения антивирусной проверки символов и строк текста открываемых веб-страниц, содержащихся в запросах 130, полученных от модуля антивирусной системы для выполнения проверки 110. Антивирусный сервер 140 может содержать или быть связан с базами данных, используемыми при выполнении антивирусной проверки, например, с базой данных описаний вредоносных веб-приложений или базой данных текста на языке разметки, обработка браузером которого приводит к выполнению вредоносных действий.
Для того, чтобы обеспечить управление производительностью антивирусного сервера 140 при выполнении антивирусной проверки веб-страниц используют систему выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы.
Фиг. 2 отображает структурную схему системы выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы. Система выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы содержит средство выявления 220, средство определения 230, средство выбора 240, базу данных 250.
Средство выявления 220 предназначено для выявления текста на языке разметки открываемой веб-страницы 210, формирования набора текста на языке разметки открываемой веб-страницы для антивирусной проверки и передачи сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки средству выбора 240.
Средство выявления 220 может быть расположено на модуле антивирусной системы для проверки веб-страниц 110 и использовать его функции. Пользователь, при помощи веб-браузера открывает веб-страницу 210. Средство выявления 220 осуществляет выявление текста на языке разметки открываемой веб-страницы 210.
В одном из вариантов реализации выявление текста на языке разметки открываемой веб-страницы 210 выполняют путем фиксирования успешного выполнения последовательности действий по открытию веб-страницы в веб-браузере, например: активации поля ввода строки URL веб-браузера, ввода символов строки URL в активное поле ввода и нажатия клавиши <Enter>. В случае, когда запрошенная веб-страница существует, и доступен сервер, который хранит текст на языке разметки запрошенной веб-страницы, либо инструмент для его динамического создания, результатом выполнение вышеупомянутых действий будет выявление текста на языке разметки открываемой веб-страницы 210. В другом варианте реализации выявление текста на языке разметки открываемой веб-страницы 210 выполняют путем фиксирования перехода по гиперссылке, расположенной на уже открытой веб-странице. Каждый успешный переход по гиперссылке на веб-странице позволяет выявить текст на языке разметки открываемой веб-страницы 210. В случае, если открываемых веб-страниц несколько, выявление текста на языке разметки каждой веб-страницы будет выполнено поочередно по мере открытия. Еще в одном варианте реализации выявление текста на языке разметки открываемой веб-страницы 210 выполняют путем анализа событий изменения открываемой веб-страницы (англ. mutations, https://www.w3.org/TR/DOM-Level-3-Events/#events-mutationevents). В ходе анализа выявляют дополнительные новые символы или строки веб-страницы на языке разметки, полученные при наступлении указанного события.
Формирование набора текста на языке разметки открываемой веб-страницы выполняют путем добавления в набор отдельных строк или символов текста открываемой веб-страницы на языке разметки. В одном из вариантов реализации, в набор добавляют весь текст открываемой веб-страницы, например в случае, когда размер всего текста на языке разметки открываемой веб-страницы не превышает заданного значения. В другом варианте реализации, формирование набора текста на языке разметки открываемой веб-страницы выполняют путем добавления только тех строк, которые содержат вставки с текстом программ на языках программирования, а также несколько строк текста на языке разметки открываемой веб-страницы, предшествующие им и следующие за ними. В ином варианте реализации, формирование набора текста на языке разметки открываемой веб-страницы для антивирусной проверки выполняют путем добавления только символов и строк текста открываемой веб-страницы на языке разметки, которые содержат теги, например <iframe>, </iframe> и т.д. Еще в одном варианте реализации, формирование набора текста на языке разметки открываемой веб-страницы для антивирусной проверки выполняют путем исключения тех строк и столбцов текста на языке разметки открываемой веб-страницы, которые были отправлены ранее, например при повторном открытии веб-страницы (обновлении отображения веб-страницы). В случае, если открываемых веб-страниц несколько, либо веб-страница имеет сложную структуру со множеством вложенных веб-страниц и гиперссылок, набор текста на языке разметки открываемой веб-страницы для антивирусной проверки формируют путем поочередного добавления строк или символов текста на языке разметки каждой из открываемых веб-страниц.
В ходе формирования набор текста на языке разметки открываемой веб-страницы для антивирусной проверки может быть ограничен по размеру или по периоду времени. Максимальный размер набора текста на языке разметки открываемой веб-страницы для антивирусной проверки - максимальное количество символов или байтов информации, которое может содержать набор текста на языке разметки открываемой веб-страницы для антивирусной проверки. Период времени формирования набора текста на языке разметки открываемой веб-страницы для антивирусной проверки - период времени, в течение которого формируют набора текста на языке разметки открываемой веб-страницы для антивирусной проверки.
После завершения формирования средство выявления 220 передает сформированный набора текста на языке разметки открываемой веб-страницы для антивирусной проверки средству выбора 240.
Средство определения 230, предназначено для определения пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц 110 и антивирусным сервером 140, определения резерва производительности антивирусного сервера 140 и передачи данных о вычисленной пропускной способности канала передачи информации и определенном резерве производительности антивирусного сервера 140 средству выбора 240.
Производительность - объем работ, осуществляемых ЭВМ в единицу времени. Например, можно определять этот параметр числом задач, выполняемых за определенное время. (Е.С. Шандаров. Архитектура вычислительных систем, 2007 г., учебное пособие). Производительность антивирусного сервера 140 при выполнении антивирусной проверки веб-страниц - количество символов или байт текста на языке разметки, антивирусную проверку которого может выполнить антивирусный сервер 140 за период времени.
Пиковая производительность антивирусного сервера при выполнении антивирусной проверки веб-страниц - максимальное количество символов или байт текста на языке разметки, антивирусную проверку которого может выполнить антивирусный сервер без перегрузки. Текущая производительность антивирусного сервера при выполнении антивирусной проверки веб-страниц - количество символов или байт текста на языке разметки, антивирусную проверку которых антивирусный сервер выполняет на текущий момент времени.
Резерв производительности - разница между значением пиковой и текущей производительности антивирусного сервера, измеряемая дополнительным количеством символов или байт текста на языке разметки, антивирусную проверку которых антивирусный сервер способен выполнять до достижения пиковой производительности.
В одном из вариантов реализации средство определения 230 расположено на модуле антивирусной системы для проверки веб-страниц 110 и использует его функции. В этом случае средство определения 230 выполняет определение пропускной способности канала передачи информации между модулем антивирусной системы для выполнения проверки веб-страниц 110 и антивирусным сервером 140 путем отправки запросов, содержащих проверенный набор текста на языке разметки известного размера, с модуля антивирусной системы для проверки веб-страниц 110 на антивирусный сервер 140, подтверждения о получении запросов и вычисления времени, затраченного на передачу проверенного набора текста на языке разметки известного размера. Средство определения 230 выполняет определение резерва производительности антивирусного сервера 140 путем периодической принудительной антивирусной проверки полученного проверенного набора текста на языке разметки известного размера и вычисления времени, затраченного на его проверку. Размер полученного набора известен, антивирусный сервер 140 имеет возможность оповестить об окончании проверки или о текущей производительности во время выполнения антивирусной проверки, что позволяет вычислить резерв производительности антивирусного сервера 140.
В другом варианте реализации средство определения 230 расположено на антивирусном сервере 140 и использует его функции. В этом случае средство определения 230 выполняет определение пропускной способности канала передачи информации между модулем антивирусной системы для выполнения проверки веб-страниц 110 и антивирусным сервером 140 путем отправки запросов (ответов на запрос), содержащих проверенный набор текста на языке разметки известного размера, с антивирусного сервера 140 на модуль антивирусной системы для выполнения проверки 110, подтверждения получения проверенного набора текста на языке разметки известного размера и вычисления времени, затраченного на передачу. В этом случае, средство определения 230 имеет постоянный доступ к данным о резерве производительности антивирусного сервера 140.
Средство определения 230 постоянно имеет актуальную информацию о пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц 110 и антивирусным сервером 140, и никак не зависит от результатов работы средства выявления 220. Средство определения 230 передает данные о вычисленной пропускной способности канала передачи информации и определенном резерве производительности антивирусного сервера 140 средству выбора 240.
Средство выбора 240, предназначенное для выбора скорости отправки информации от модуля антивирусной системы для проверки веб-страниц 110 на антивирусный сервер 140 на основании сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки, определенной пропускной способности канала передачи информации, определенного резерва производительности антивирусного сервера 140 с использованием правил выбора скорости из базы данных правил 250, подсчета части определенного резерва производительности антивирусного сервера 140, требуемой для выполнения антивирусной проверки сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки, с учетом выбранной скорости отправки информации, выделения подсчитанной части определенного резерва производительности антивирусного сервера 140.
В одном из вариантов реализации средство выбора 240 расположено на антивирусном сервере 140 и выполняет выбор скорости отправки информации от модуля антивирусной системы для проверки веб-страниц 110 на антивирусный сервер 140 на основании полученных от средства выявления 220 и средства определения 230 данных с использованием правил выбора скорости из базы данных правил 250.
Скорость отправки информации от модуля антивирусной системы для проверки веб-страниц 110 на антивирусный сервер 140 - количество байт, которое занимает текст на языке разметки открываемой веб-страницы для антивирусной проверки, отправляемое в секунду модулем антивирусной системы для проверки веб-страниц 110 на антивирусный сервер 140 в виде запросов.
Обмен информации между модулем антивирусной системы для проверки веб-страниц 110 и антивирусным сервером 140 осуществляют путем выполнения запросов на антивирусный сервер 140 и получения ответов. Например, вновь обращаясь к Фиг. 1 под запросом (англ. request) 130 понимают HTTP-сообщение, отправленное модулем антивирусной системы для антивирусной проверки веб-страниц 110 антивирусному серверу 140. HTTP-сообщение - основная единица HTTP связи, состоящая из структурной последовательности октетов, составленных согласно синтаксису HTTP, передаваемой по доступному соединению. HTTP-сообщения могут быть двух типов: запросом от клиента к серверу и ответом от сервера клиенту. Сущность запроса (ответа) 130 - информация, передаваемая в качестве полезной нагрузки запроса или ответа (RFC 822, RFC 2616). Помимо протокола HTTP, может быть использован протокол, с другим синтаксисом запросов и ответов (например SNMP).
Скорость отправки информации изменяют путем задания размера полезной нагрузки запроса 130 (англ. request payload size, RPS) и периода времени между отправкой запросов 130 (англ. request sending time interval, RSTI). Полезная нагрузка запроса 130 - количество байт полезной информации, передаваемой помимо служебных команд и информации, необходимых для отправки запроса. Например, полезной нагрузкой могут быть строки и символы набора текста на языке разметки открываемой веб-страницы. Период времени между отправкой запросов 130 - отрезок времени между двумя последовательными отправками запросов 130.
Правило выбора скорости - набор условий, при выполнении которых средство выбора 240 осуществляет выбор скорости отправки информации с модуля антивирусной системы для проверки веб-страниц 110 на антивирусный сервер 140. Основными условиями являются резерв производительности антивирусного сервера 140, пропускная способность канала передачи информации, размер набора текста на языке разметки открываемой веб-страницы для антивирусной проверки.
Одним из примеров правила выбора скорости может быть следующий перечень значений условий: если резерв производительности антивирусного сервера 140 больше, чем пропускная способность канала передачи информации, а размер набора текста на языке разметки открываемой веб-страницы имеет большее значение, чем значение пропускной способности за одну секунду, то выбирают скорость отправки информации равную или меньше пропускной способности канала передачи информации. Например, резерв производительности составляет 500000 байт в секунду, пропускная способность канала передачи информации - 125000 байт в секунду, размер набора текста на языке разметки открываемой веб-страницы для антивирусной проверки - 1000000 байт. В этом случае пропускная способность канала передачи информации ограничивает использование всего резерва производительности антивирусного сервера 140 на уровне 125000 байт в секунду. Поэтому скорость отправки информации составит 125000 байт в секунду, для этого изменяют размер полезной нагрузки запроса 130 (RPS) до значения 12500 байт, а период времени между отправкой запросов 130 (RSTI) - до 0.1 секунды.
Другим примером правила выбора скорости может быть следующий перечень значений условий: если резерв производительности антивирусного сервера 140 меньше пропускной способности канала передачи информации, а размер набора текста на языке разметки открываемой веб-страницы для антивирусной проверки имеет большее значение, чем значение пропускной способности за одну секунду, то выбирают скорость отправки информации равную или меньше резерва производительности антивирусного сервера 140. Например, резерв производительности составляет 100000 байт в секунду, пропускная способность канала передачи информации - 250000 байт в секунду, размер набора текста на языке разметки открываемой веб-страницы для антивирусной проверки - 1000000 байт. В этом случае значение резерва производительности антивирусного сервера не позволяет использовать пропускную способность канала передачи информации в полной мере и ограничивает на уровне 100000 байт в секунду. Поэтому скорость отправки информации составит 100000 байт в секунду, для этого изменяют размер полезной нагрузки запроса 130 (RPS) до значения 10000 байт, а период времени между отправкой запросов 130 (RSTI) - до 0.1 секунды.
Третьим примером правила выбора скорости может быть следующий перечень значений условий: если резерв производительности стремится к нулевому значению, пропускная способность канала передачи информации отлична от нулевого значения, размер набора текста на языке разметки открываемой веб-страницы для антивирусной проверки имеет большее значение, чем значение пропускной способности за одну секунду, то выбирают скорость отправки информации равную нулю, а сформированный набор текста на языке разметки открываемой веб-страницы передают на дополнительное формирование на несколько секунд. Например, резерв производительности составляет 0 байт в секунду, пропускная способность канала передачи информации - 250000 байт в секунду, размер набора текста на языке разметки открываемой веб-страницы для антивирусной проверки 1000000 байт. В этом случае антивирусный сервер 140 нежелательно использовать по назначению по причине угрозы возникновения перегрузок. Поэтому скорость отправки информации составит 0 байт в секунду, для этого изменяют размер полезной нагрузки запроса 130 (RPS) до значения 0 байт, период времени между отправкой запросов 130 (RSTI) - до 0 секунд, а сформированный набор текста на языке разметки веб-страниц отправляют на дополнительное формирование на 10 секунд.
Помимо этого, средство выбора 240 выполняет подсчет части определенного резерва производительности антивирусного сервера 140 для выполнения антивирусной проверки сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки с учетом выбранной скорости отправки информации. Затем средство выбора 240 выделяет подсчитанную часть определенного резерва производительности антивирусного сервера 140.
На основании выбранной скорости отправки информации средство выбора 240 подсчитывает часть резерва производительности антивирусного сервера 140 для выполнения антивирусной проверки сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки. Например, если скорость отправки информации равна 100000 байт в секунду, резерв производительности антивирусного сервера равен 500000 байт в секунду, размер набора текста веб-страницы на языке разметки для антивирусной проверки равен 1000000 байт, то часть резерва производительности антивирусного сервера 140, которую необходимо выделить, равна 100000 байт в секунду на 10 секунд.
Далее средство выбора 240 выделяет часть резерв производительности антивирусного сервера в 100000 байт в секунду на 10 секунд и инициирует выполнение антивирусной проверки открываемой веб-страницы. Таким образом, резерв антивирусного сервера 140 после выделения вышеупомянутой части составит 400000 байт в секунду на 10 секунд. Через 10 секунд антивирусная проверка будет окончена и антивирусный сервер вновь будет иметь резерв производительности в 500000 байт в секунду.
В одном из вариантов реализации выделение и использование части резерва производительности антивирусного сервера 140 выполняют путем выставления приоритетов получаемым запросам. В другом варианте реализации выделение и использование части резерва производительности антивирусного сервера 140 выполняют путем задействования неиспользуемых ресурсов антивирусного сервера 140 (оперативной памяти, процессорного времени и т.д.)
База данных правил 250, предназначенная для хранения правил выбора скорости. В качестве базы данных правил 250 могут быть использованы различные виды баз данных, а именно: иерархические (IMS, TDMS, System 2000), сетевые (Cerebrum, Cronospro, DBVist), реляционные (DB2, Informix, Microsoft SQL Server), объектно-ориентированные (Jasmine, Versant, POET), объектно-реляционные (Oracle Database, PostgreSQL, FirstSQL/J, функциональные и т.д. База данных правил 250 может быть дополнена или обновлена при помощи антивирусного сервера 140.
В другом варианте реализации, антивирусная система для проверки веб-страниц может иметь несколько модулей антивирусной системы для проверки веб-страниц 110 и соответствующее каждому модулю отдельное доступное соединение 120, через которое каждый из модулей антивирусной системы для проверки веб-страниц 110 соединен с одним антивирусным сервером 140. Например, когда три пользователя на персональных компьютерных системах с установленным веб-браузером и модулем антивирусной системы для проверки веб-страниц 110, который реализован в виде расширения к веб-браузеру, открывают веб-страницы, и доступен в данный момент только один антивирусный сервер 140 из нескольких. В этом случае система выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы может состоять из трех средств выявления 220, трех средств определения 230 и одного средства выбора 240, связанного с базой данных правил 250. В таких случаях для равномерного распределения резерв производительности антивирусного сервера 140 разделяют на количество средств определения 220. Например, значение резерва производительности антивирусного сервера 140 разделяют на три равные части.
Еще в одном варианте реализации, антивирусная система для проверки веб-страниц может иметь один модуль антивирусной системы для проверки веб-страниц 110, соответствующее доступное соединение 120 через которое модуль антивирусной системы для проверки веб-страниц 110 соединен с несколькими антивирусными серверами 140. Например, когда один пользователь на компьютерной системе с установленным веб-браузером и модулем антивирусной системы для проверки веб-страниц 110, который реализован в виде расширения к веб-браузеру, открывает веб-страницы, и доступно три антивирусных сервера 140. В этом случае система выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы может состоять из одного средства выявления 220, одного средства определения 230 и трех средств выбора 240, связанных с базой данных правил 250. В таких случаях для равномерного распределения сформированный набор текста на языке разметки открываемой веб-страницы для антивирусной проверки разделяют на количество средств определения 220. Например, сформированный набор текста на языке разметки открываемой веб-страницы разделяют на три равные части.
Фиг. 3 иллюстрирует алгоритм работы системы выделения части резерва производительности антивирусного сервера для выполнения антивирусной проверки веб-страницы. На этапе 310 средство выявления 220 выявляет текст на языке разметки открываемой веб-страницы 210. На этапе 311 средство выявления 220 формирует набор текста на языке разметки открываемой веб-страницы для антивирусной проверки и передает сформированный набор текста открываемой веб-страницы для антивирусной проверки средству выбора 240. На этапе 312 средство определения 230 выполняет определение пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц 110 и антивирусным сервером 140. На этапе 313 средство определения 230 определяет есть ли резерв производительности у антивирусного сервера 140. При наличии резерва производительности антивирусного сервера на этапе 313 средство определения 230 передает данные об определенной пропускной способности канала передачи информации между модулем антивирусной системы для проверки веб-страниц 110 и антивирусным сервером 140 и данные об определенном резерве производительности антивирусного сервера 140 средству выбора 240. На этапе 314 средство выбора 240 выбирает скорость отправки информации от модуля антивирусной системы для проверки веб-страниц 110 на антивирусный сервер 140 на основании сформированного набора текста открываемой веб-страницы на языке разметки для антивирусной проверки, определенной пропускной способности канала передачи информации, определенного резерва производительности антивирусного сервера 140 с использованием правил выбора скорости из базы данных правил 250. На этапе 315 средство выбора 240 подсчитывает часть определенного резерва производительности антивирусного сервера 140, требуемую для выполнения антивирусной проверки сформированного набора текста открываемой веб-страницы на языке разметки, с учетом выбранной скорости отправки информации. На этапе 316 средство выбора 240 выделяет подсчитанную часть определенного резерва производительности антивирусного сервера 140. При отсутствии резерва производительности антивирусного сервера на этапе 317 средство определения 230 передает сформированный набор текста открываемой веб-страницы для антивирусной проверки средству выявления 220 для возобновления формирования сформированного набора текста на языке разметки открываемой веб-страницы для антивирусной проверки.
Фиг. 4 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая, в свою очередь, память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20, в свою очередь, содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш-карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который, в свою очередь, подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 4. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
Под средствами системы выделения части резерва производительности антивирусного сервера для выполнения антивирусной, а именно: средство выявления 220, средство определения 230, средство выбора 240 - в настоящем изобретении понимаются реальные устройства, системы, компоненты, группы компонентов, реализованные с использованием аппаратных средств, таких как интегральные микросхемы (англ. application-specific integrated circuit, ASIC) или программируемые вентильные матрицы (англ. field-programmable gate array, FPGA) или, например, в виде комбинации программных и аппаратных средств, таких как микропроцессорная система и набор программных инструкций, а также на нейроморфных чипах (англ. neurosynaptic chips) Функциональность указанных средств системы может быть реализована исключительно аппаратными средствами, а также в виде комбинации, где часть функциональности средств системы реализована программными средствами, а часть - аппаратными. В некоторых вариантах реализации часть средств, или все средства, могут быть исполнены на процессоре компьютера общего назначения (например, который изображен на Фиг. 4).