首页 > 技术中心 > 系统架构
Anchiva AV引擎专注网络,并行扫描匹配
     如今,随着恶意程序(malware)样本数量的成倍上涨,恶意程序(malware)检测的特征数量也随之大量增加,而特征数量的多少直接影响到防病毒网关的扫描检测性能。在大量特征数量下,Anchiva专注于特征并行扫描技术的提升与优化,不仅推出了基于ASIC的硬件扫描引擎,还推出了专注网络的软件并行扫描引擎,能够充分利用多核硬件平台的多进程、多线程并行处理的软件病毒扫描引擎,因而使网关扫描性能与传统的病毒扫描更胜一筹。
        首先,我们先就市面上的几类病毒扫描引擎做以下简单了解:
        一、传统桌面端病毒扫描引擎的特点

               ▪ 对性能要求不高,扫描过程不能抢占太多的CPU资源,不能影响其他正常工作业务的运
                 行。
               ▪ 在病毒特征的制作时,不仅需要考虑病毒的检测,而且需要考虑对感染病毒文件的清除。
               ▪ 根据上述特征,传统的桌面病毒厂商,在设计病毒引擎时,并不会充分考虑对CPU资源的
                 利用,特别是没有特别考虑目前的多核硬件网络平台。

        二、基于传统桌面病毒引擎的网络扫描引擎的主要特点
              1、内嵌式架构
                这是一种单一进程的病毒扫描架构,将传统的桌面端病毒扫描引擎和特征直接移植到现有
                的网络硬件平台中,这种简单的内嵌式,在病毒扫描的过程中,仅限于本进程的调用,没
               有支持多进程的病毒扫描,显然不能充分利用目前流行的多核硬件网络平台的性能优势。
              2、独立后台程序的方式
               根据网络应用系统中多进程的需求而开发,被很多厂家广泛采用。主要的架构如下图1所
               示,多个需要病毒扫描的进程充当client端,分别将病毒扫描请求发给AV Engine Server,
              然后等待AV engine Server的扫描结果。这样的扫描引擎,解决了多进程并行扫描的问题,
              但是AV Engine Server成为整个系统的瓶颈,同时也增加了大量的AV engine client/server之
              间的进程切换的开销,以及I/O的开销。
图1:

       
        通过以上内容了解传统的病毒引擎后,下面我们看一下Anchiva的病毒扫描引擎。
        Anchiva在设计自己的病毒引擎时,充分考虑病毒网关的特点,专注于病毒的扫描检测,在病毒特征的扫描与匹配上,着重于大量特征与扫描数据的并行扫描,从而解决特征数量大量增加严重影响性能的问题。如下图2所示,首先通过AV Engine initializer创建一个共享的AV Scan Engine环境,其他进程可以自由的利用该环境系统,在AV 扫描检测过程中,每个进程都可以共享的、独立的访问AV Scan Engine的环境资源,并行扫描,这样不仅充分支持多进程的病毒扫描,减少了不必要的进程切换,减少了I/0  Block操作,而且通过这样的方式充分利用了多核网络硬件平台,并且随着平台硬件配置的提升,引擎的扫描性能随之同等级的提升。
图2:

2006-2012,北京安信华科技有限公司版权所有   网站地图  |  隐私惯例  |  使用条款  |  京ICP证10219248号  |  京公网安备110105005001