CN100590615C - 数据处理系统 - Google Patents

数据处理系统 Download PDF

Info

Publication number
CN100590615C
CN100590615C CN200580050928A CN200580050928A CN100590615C CN 100590615 C CN100590615 C CN 100590615C CN 200580050928 A CN200580050928 A CN 200580050928A CN 200580050928 A CN200580050928 A CN 200580050928A CN 100590615 C CN100590615 C CN 100590615C
Authority
CN
China
Prior art keywords
data
communication control
database
packet
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200580050928A
Other languages
English (en)
Other versions
CN101213529A (zh
Inventor
名古屋贡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Duaxes Corp
Original Assignee
Duaxes Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Duaxes Corp filed Critical Duaxes Corp
Publication of CN101213529A publication Critical patent/CN101213529A/zh
Application granted granted Critical
Publication of CN100590615C publication Critical patent/CN100590615C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供适当地操作多个数据库的技术。通信控制系统(100)包括用于处理数据包的多个通信控制装置10a、10b、10c、…以及管理多个通信控制装置(10)的操作状况的操作监视服务器(110)。多个通信控制装置(10)将数据包的处理所使用的数据库拆分开进行保持。为分开保持数据库,设置比必需的台数至少多一台以上的通信控制装置(10)。操作监视服务器(110)操作分开保持数据库所需台数的通信控制装置(10)的同时,至少使一台通信控制装置(10)待机。操作监视服务器(110)在更新数据库的同时,将操作中的通信控制装置(10)之一所保持的数据库更新数据保存到待机中的通信控制装置(10)中后,从保持更新前的数据库的通信控制装置(10)的操作切换至保持更新后的数据库的通信控制装置(10)的操作。

Description

数据处理系统
技术领域
本发明涉及数据处理技术,尤其涉及操作多个数据库的技术。
背景技术
在互联网的基础设施得以完善,便携式电话终端、个人电脑、VoIP(Voice over Internet Protocol:基于因特网协议的语音传输)电话终端等通信终端得到广泛普及的今天,互联网的用户正在激增。在这种状况下,计算机病毒、黑客、垃圾邮件等与安全有关的问题越来越显著,因此需要有对通信进行适当控制的技术。
虽然使用因特网易于对大量的信息进行访问,但是有害信息泛滥也是事实,呈现出一种来不及对有害信息的发出源进行限制的状态。为了对任何人都能够安心且有效地使用因特网的环境进行整顿,需要有对有害的内容的访问进行适当控制的技术。
例如,准备好允许访问的网站清单、禁止访问的网站清单、禁止语关键词、有用语关键词等的数据库,当通过因特网对外部信息进行访问时,参照这些数据库来控制访问,这样的技术已经被提出了(例如,参照专利文献1)。
专利文献1:特开2001-282797号公报
发明内容
发明要解决的课题
在专利文献1所记载的实现访问控制的系统中,当用户数量增加时,数据库将变得庞大,可能会超出可储存的容量。此时,如果是必须更换系统整体的话,将造成不必要的浪费,因而效率低。而且,当必须停止操作时,再准备一台代为操作的系统,这样,系统规模变得越大浪费就越多,因而效率也越低。
本发明是鉴于这样的状况而提出的,其目的在于提供一种适当地操作多个数据库的技术。
解决课题的方法
本发明的一个方面涉及数据处理装置。这种数据处理系统包括:处理获取的数据的数据处理单元;多个数据保持单元,储存所述数据的处理所使用的数据库,其特征在于,所述多个数据保持单元共同保持第一数据库,并将第二数据库分开而分别保持,所述数据处理系统还包括至少一个能够保持所述第一数据库和分开后的所述第二数据库的数据保持单元。
通过将数据库分开保持到多个数据保持单元中并使多个数据保持单元协同操作,可以控制各个数据保持单元的规模,可以在由于数据量的增大等原因带来系统规模增大时,降低费用和节省工时。而且,没有必要为了数据库更新等目的而对大规模的数据处理装置整体进行双重备份和使其待机,只要另外准备至少一台较小规模的数据保持单元使其处于待机状态就可以,使得系统构成单纯化,能够控制初期投资和操作费用。
在上述第一数据库中可以储存用于判断应使用被分开的第二数据库中的哪个来处理上述数据的数据。例如,在第一数据库中储存用于认证用户的数据,在第二数据库中,可以储存对于每个用户的数据处理内容等的信息。
数据处理系统的特征在于,还可包括管理上述多个数据保持单元的操作状况的操作管理单元,上述操作管理单元在使分开保持上述第二数据库所需个数的数据保持单元操作的同时,使其它的数据保持单元处于待机状态。上述操作管理单元可以在更新上述数据保持单元中所保持的数据库时,将操作中的数据保持单元中的某一个所保持的数据库更新数据储存到待机中的数据保持单元后,将从保持更新前数据库的上述数据保持单元的操作切换至保持更新后数据库的数据保持单元的操作。因此,不停止操作也能够更新数据库。
上述操作管理单元在检测到操作中的数据保持单元处于不能操作的状态时,可以将该数据保持单元所保持的数据库保持到待机中的数据保持单元,并将待机中的数据保持单元切换为操作状态。因此,即使是某个数据保持单元由于故障等原因而停止的场合,也可以适当地继续操作。
在上述待机的数据保持单元中可以预先储存上述第一数据库。所述第一数据库为共同使用的数据库,并储存有用于判断使用分开的第二数据库中哪一个来对数据进行处理的数据。通过预先将第一数据库储存起来,当某个数据保持单元处于不能操作的状态时,可以立即将待机中的数据保持单元切换为操作状态。
上述数据处理单元可以设置有多个,并与上述多个数据保持单元的分别相对应。上述数据处理系统还可以包括数据提供单元,其将获取的数据向上述多个数据处理单元并行提供。因此,即使追加数据保持单元,以及由于数据库的更新导致各个数据保持单元所保持的数据库内容发生变化时,也可以适当地通过数据处理单元处理数据。
上述数据提供单元,可以对获取的数据不作任何加工,以原样向所述多个数据处理单元并行提供。因此,数据提供单元省去了对数据进行加工的处理,能够提高数据处理速度。
上述多个数据处理单元在从上述数据提供单元获取数据时,可以参照对应的上述数据保持单元所保持的数据库,来判断是否为自己应处理的数据。因此,可以使应进行处理的数据处理单元适当地处理数据。
上述数据处理单元可以是获取数据包以控制通信的通信控制装置,在从上述数据提供单元获取数据包时,可以不判断数据包是否是发给自己的而直接获取该数据包,然后参照对应的上述数据保持单元所保持的数据库,来判断所获取数据包是否为自己应处理的数据包。因此,数据处理单元可以省去核对MAC地址或者IP地址等的处理,从而提高数据包的处理速度。
上述通信控制装置可以不使用上述数据包的报头部分所储存的信息,而是使用其数据部所储存的信息来判断是否为自己应处理的数据包。上述通信控制装置可以参照对应的上述数据保持单元所保持的第一数据库,来判断是否为自己应处理的数据包。
判断数据包为自己应处理的数据包的数据处理单元可以对该数据包进行处理,而判断所获取的数据包不是自己应处理的数据包的数据处理单元可以将该数据包废弃。
在上述第一数据库中,可以储存用于识别数据应由上述多个处理单元中的哪一个来处理的ID清单。上述数据处理单元可以在得到关于所述第一数据库所储存的ID清单中包含的应由自己处理的ID范围的通知、并获取含有位于所述应处理的ID范围中的相应ID的数据包时,对该数据包进行处理。上述多个数据处理单元中至少之一可以在获取的数据包中不包含上述第一数据库所储存的ID清单中的任何一个ID时,不对该数据包作处理而使其按原样通过。
上述数据提供单元可以对获取的数据包不进行广播变换,而是将其作为单播向多个通信控制装置并行提供。因此,数据提供单元可以省去为对数据包进行广播变换而对报头进行加工等处理,从而提高数据包的处理速度。
另外,作为本发明的实施方式,以上构成要素的任意组合、以及将本发明的描述在方法、装置、系统、记录介质、计算机程序等之间进行变换的方式也是有效的。
发明的效果
根据本发明,提供一种可以适当地操作多个数据库的技术。
附图说明
图1是表示前提技术涉及的通信控制系统的构成的图。
图2是表示现有的通信控制装置的构成的图。
图3是表示前提技术涉及的通信控制装置的构成的图。
图4是表示数据包处理电路的内部构成的图。
图5是表示位置检测电路的内部构成的图。
图6是表示第一数据库的内部数据的例子的图。
图7是表示第一数据库的内部数据的另一个例子的图。
图8是表示第一数据库的内部数据的又一个例子的图。
图9是表示对分检索电路中所包含的比较电路的构成的图。
图10是表示第二数据库的内部数据的例子的图。
图11是表示第二数据库的内部数据的另一个例子的图。
图12是表示前提技术涉及的通信控制装置的另外构成例子的图。
图13是表示用于URL过滤的数据包处理电路的内部构成的图。
图14(a)是表示病毒/网络钓鱼网站清单的内部数据的例子的图,图14(b)是表示白清单的内部数据的例子的图,图14(c)是表示黑清单的内部数据的例子的图。
图15是表示公共类别清单的内部数据的例子的图。
图16(a)、(b)、(c)、(d)是表示第二数据库的内部数据的例子的图。
图17是表示病毒/网络钓鱼网站清单、白清单、黑清单以及公共类别清单的优先顺序的图。
图18是表示涉及实施方式的通信控制系统的构成的图。
图19是表示涉及实施方式的通信控制装置的构成的图。
图20是表示设置在操作监视服务器的管理表的内部数据例子的图。
图21是表示用于说明通信控制装置发生故障时运行方法的图。
图22(a)、(b)、(c)表示用于说明更新通信控制装置的数据库的方法的图。
图23表示用于通过多个通信控制装置处理数据包而设置的通信路径控制装置的构成图。
图24表示通过多个通信控制装置中的某一个来处理数据包的示意图。
图25表示通过多个通信控制装置中的某一个来使数据包透传的示意图。
符号说明
10 通信控制装置、12 通信控制单元、14 切换控制部、20 数据包处理电路、30 检索电路、32 位置检测电路、33 比较电路、34 索引电路、35 比较电路、36 对分检索电路、40 处理执行电路、50 第一数据库、57 用户数据库、60 第二数据库、100 通信控制系统、110 操作监视服务器、111 管理表、120 连接管理服务器、130 信息输出服务器、140 日志管理服务器、150 数据库服务器、160 URL数据库,161 病毒/网络钓鱼网站清单、162 白清单、163 黑清单、164 公共类别清单、200 通信路径控制装置、210 开关、220 光分路器、230 开关。
具体实施方式
(前提技术)
首先,作为前提技术,对作为数据处理装置一例的通信控制装置及其外围装置的构成和操作概要进行说明,而且,对使用通信控制装置的URL过滤技术进行说明,然后,作为实施方式,对运用多个通信控制装置的技术进行说明。
图1示出了前提技术涉及的通信控制系统的构成。通信控制系统100包括通信控制装置10和为支持通信控制装置10的操作而设置的各种外围装置。作为前提技术的通信控制装置10实现由因特网服务提供商等提供的URL过滤功能。设置在网络路径上的通信控制装置10获取对内容的访问请求,对该内容进行分析,判断对该内容的访问是否许可。当对内容的访问被许可时,通信控制装置10将该访问请求发送给保持有该内容的服务器。当对内容的访问被禁止时,通信控制装置10将废弃该访问请求,并对请求源返回警告信息等。在前提技术中,通信控制装置10接收HTTP(HyperText Transfer Protocol:超级文本传输协议)的“GET”请求消息等访问请求,对要被访问的内容的URL是否与用于判断访问是否许可的基准数据的清单相一致进行检索,判断是否允许访问该内容。
外围装置包括:操作监视服务器110、连接管理服务器120、消息输出服务器130、日志管理服务器140和数据库服务器150。连接管理服务器120管理对通信控制装置10的连接。例如当通信控制装置10对由移动电话终端送出的数据包进行处理时,连接管理服务器120使用数据包中所含的唯一识别移动电话终端的信息来对通信控制装置10的用户进行认证。一旦认证成功,则从暂时赋予该移动电话终端的IP地址送出的数据包在一定的期间内无需通过连接管理服务器120认证而发送到通信控制装置10进行处理。消息输出服务器130根据由通信控制装置10判断的访问是否许可的结果,对访问的被请求目标或者请求源输出消息。日志管理服务器140管理通信控制装置10的操作历史。数据库服务器150从URL数据库获取最新的数据库,并将其输入到通信控制装置10。为了在不停止通信控制装置10的情况下更新数据库,通信控制装置10可以有备份用的数据库。操作监视服务器110对通信控制装置10、连接管理服务器120、消息输出服务器130、日志管理服务器140和数据库服务器150等外围装置的操作状况进行监视。操作监视服务器110在通信控制系统100中优先级最高,并对通信控制装置10及全部的外围装置进行监视控制。通信控制装置10如下面所述,由专用的硬件电路构成,而操作监视服务器110使用本申请人的专利第3041340号等技术,通过利用边界扫描电路使用于监视的数据在通信控制装置10等之间进行输入输出,从而即使在通信控制装置10的操作中,也可以对操作状况进行监视。
前提技术的通信控制系统100如以下所述,由在外围连接的具有各种功能的服务器群对为实现高速化而以专用硬件电路构成的通信控制装置10进行控制,由此,通过适当替换服务器群的软件,可以由同样的构成实现各种功能。根据前提技术,可以提供这种灵活性好的通信控制系统。
图2示出了现有的通信控制装置1的构成。现有的通信控制装置1包括:接收侧的通信控制部2、数据包处理部3、和发送侧的通信控制部4。通信控制部2及4分别包括:PHY处理部5a及5b,进行数据包的物理层的处理;MAC处理部6a及6b,进行数据包的MAC层的处理。数据包处理部3包括:IP处理部7,进行IP(Internet Protocol:互联网协议)的协议处理;TCP处理部8等,进行TCP(Transport Control Protocol:传送控制协议)的协议处理;协议处理部,进行与协议对应的处理;AP处理部9,进行应用层的处理。AP处理部9根据数据包中包含的数据,执行过滤等处理。
在现有的通信控制装置1中,数据包处理部3是利用作为通用处理器的CPU和在CPU上操作的OS,通过软件来实现的。但是,在这种构成中,通信控制装置1的性能将依赖于CPU的性能,想要实现能够高速地对大容量的数据包进行处理的通信控制装置,自然存在限制。例如,如果是64位的CPU,一次同时能够处理的数据量最大是64位,具有在此以上性能的通信装置不存在。而且,由于将具有通用功能的OS的存在作为前提,因此存在安全漏洞等的可能性不是绝对没有的,OS的版本升级等的维护作业是必要的。
图3示出了前提技术的通信控制装置的构成。通信控制装置10包括由基于布线逻辑电路的专用硬件构成的数据包处理电路20,以取代图2所示的现有通信控制装置1中由包含CPU及OS的软件实现的数据包处理部3。不是通过在作为通用处理电路的CPU中操作的OS和软件来处理通信数据,而是设置对通信数据进行处理的专用硬件电路,由此能够克服由CPU和OS等造成的性能限制,实现高处理能力的通信控制装置。
例如,在为了执行数据包过滤等而检索数据包所含的数据中是否含有作为过滤判断基准的基准数据的情况下,在使用CPU对通信数据和基准数据进行比较时,一次最多只能比较64比特,所以存在的问题是,即使想提高处理速度也将受到CPU性能的限制。由于在CPU中必须无数次重复进行以下处理,即,从通信数据将64比特读入到存储器,将其与基准数据进行比较,接着再把下一64比特读入到存储器,因此读入到存储器的时间将制约速度,处理速度存在极限。
相反,在前提技术中,设置了由布线逻辑电路构成的专用硬件电路,以对通信数据和基准数据进行比较。该电路包括并列设置的多个比较器,以能够对比64位更长的数据长度、例如1024位的数据长度进行比较。这样,通过设置有专用的硬件,可以同时并行执行许多的位匹配。可以从现有的使用CPU的通信控制装置1一次只能处理64位提高到一次可以处理1024位,可以使处理速度有一个飞跃。虽然增多比较器的数量也能够提高处理能力,但是成本和尺寸也会增大,因此可以在考虑预期的处理性能和成本、尺寸等条件下,设计最适当的硬件电路。专用的硬件电路可以使用FPGA(Field Programmable Gate Array:现场可编程门阵列)等实现。
此外,由于前提技术的通信控制装置10是由布线逻辑电路形成的专用硬件构成的,因此不需要OS(Operating System:操作系统)。为此,不需要OS的安装、故障处理、版本升级等作业,从而可以减少用于管理和维护的费用和工时。此外,与要求具有通用功能的CPU不同,由于不包含不必要的功能,因此有望实现不使用多余的资源、低成本化、电路面积减小、以及处理速度的提高。而且,与使用OS的现有通信控制装置不同,由于没有多余的功能,因此降低了安全漏洞等发生的可能性,对于恶意第三者通过网络的攻击具有优良的抵抗性。
现有的通信控制装置1通过基于CPU和OS的软件对数据包进行处理,在进行协议处理之前需要接收所有数据包数据,然后将数据交给应用程序。相反,在本前提技术的通信控制装置10中,由于使用专用的硬件电路进行处理,因此没有必要在协议处理之前接收数据包的所有数据。如果接收到处理所需的数据,则不用等待接收后续的数据就可以在任何时候开始处理。例如,在后述的位置检测电路中进行的位置检测处理可以是在接收到用于确定比较对象数据位置的位置确定数据时开始。这样,由于不用一直等到接收完所有的数据就可以动态地执行各种各样的处理,因此能够缩短处理数据包的数据所需的时间。
图4示出了数据包处理电路的内部构成。数据包处理电路20包括:第一数据库50,存储基准数据,所述基准数据作为基准,用于决定对通信数据执行的处理内容;检索电路30,通过比较通信数据和基准数据,对接收的通信数据中是否含有基准数据进行检索;第二数据库60,将检索电路30的检索结果和对通信数据执行处理的内容进行关联对应存储;处理执行电路40,基于检索电路30的检索结果和第二数据库60所存储的条件对通信数据进行处理。
检索电路30包括:位置检测电路32,从通信数据中检测应与基准数据进行比较的比较对象数据的位置;作为判断电路的实施例的索引电路34,当把所述第一数据库50所存储的基准数据分成3个以上的范围时,判断比较对象数据属于这些范围中的哪一个;对分检索电路36,在所判断的范围中,检索与比较对象数据一致的基准数据。作为从基准数据中检索比较对象数据的方法,可以使用任意的检索技术,但在前提技术中使用的是对分检索法。
图5示出了位置检测电路的内部构成。位置检测电路32包括:多个比较电路33a~33f,用于将确定比较对象数据位置的位置确定数据和通信数据进行比较。在此,设置有6个比较电路33a~33f,但如后所述,比较电路的个数可以是任意的。通信数据以各错开预定的数据长度(例如1字节)的形式输入到各比较电路33a~33f中。然后,在这些比较电路33a~33f中,同时并行地进行应检测的位置确定数据和通信数据的比较。
在前提技术中,将进行以下处理时的情况作为用于说明通信控制装置10操作的例子进行说明,即,检测通信数据中包含的“No.# # #”的字符串,将该字符串中包含的数字“# # #”与基准数据进行比较,与基准数据一致时允许数据包通过,不一致时将数据包废弃。
在图5的例子中,为了从通信数据中检测用于确定数字“# # #”位置的位置确定数据“No.”,将通信数据“01No.361...”各错开1个字符而输入到比较电路33a~33f中。即,比较电路33a中输入“01N”,比较电路33b中输入“1No”,比较电路33c中输入“No.”,比较电路33d中输入“o.”,比较电路中33e输入“.3”,比较电路33f中输入“36”。在此,比较电路33a~33f同时执行与位置确定数据“No.”的比较。由此,比较电路33c进行比对,从而检测出在通信数据的最前头开始第3个字符处存在“No.”的字符串。这样,在由位置检测电路32检测出的位置确定数据“No.”之后,将检测出存在作为比较对象数据的数字数据。
如果由CPU进行同样的处理,则首先将字符串“01N”与“No.”进行比较,然后将字符串“1No”与“No.”进行比较,由于必须从最前头开始依次逐一执行比较处理,因此无法期待提高检测速度。相反,在前提技术的通信控制装置10中,通过并列设置多个比较电路33a~33f,使得CPU中无法实现的同时并列的比较处理成为可能,可以极大地提高处理速度。虽然比较电路越多能够同时比较的位置就越多,检测速度也将提高,但是在考虑到成本和尺寸等条件下,设置用于获得所需检测速度的足够数量的比较电路就可以了。
位置检测电路32不只用于检测位置确定数据,也可以用作检测通用的字符串的电路。此外,不仅可以检测字符串,而且还可以检测以位为单位的位置确定数据。
图6示出了第一数据库的内部数据的例子。作为用于决定数据包的过滤、路径选择、交换、置换等处理内容基准的基准数据按照某种分类条件进行分类并储存在第一数据库50中。在图6的例子中,存储有1000个基准数据。
在第一数据库50的最前面的纪录中,储存有表示通信数据中的比较对象数据位置的偏移量51。例如,在TCP数据包中,由于数据包内的数据结构以位为单位确定,因此如果将用于决定数据包的处理内容的标记信息等位置以偏移量51的形式设定,则可以只比较必要的位来决定处理内容,从而可以提高处理效率。此外,即使在数据包的数据结构变更的情况下,也可以通过改变偏移量51来进行对应。在第一数据库50中,也可以储存比较对象数据的数据长度。由此,可以只使必要的比较器操作来进行比较,从而可以提高检索效率。
索引电路34在将第一数据库50储存的基准数据分成3个以上的范围52a~52d时,判断比较对象数据属于这些范围中的哪一个。在图6的例子中,1000个基准数据被分成4个范围52a~52d,每个范围有250个基准数据。索引电路34包括对范围的边界的基准数据与对象数据进行比较的多个比较电路35a~35c。通过比较电路35a~35c对比较对象数据与边界的基准数据同时并行地进行比较,从而用一次比较处理就可以判断比较对象数据属于哪个范围。
输入到索引电路34的比较电路35a~35c中的边界基准数据可以通过通信控制装置10外部所设置的装置来设定,也可以事先将第一数据库50预定位置的基准数据自动地输入。在后一种情况下,即使更新第一数据库50,也可以自动地将第一数据库50预定位置的基准数据输入到比较电路35a~35c中,因此无需进行初始设定就能立即执行通信控制处理。
如上所述,在由CPU执行对分检索的场合,不能同时执行多个比较,而在前提技术的通信控制装置10中,通过并列设置有多个比较电路35a~35c,可以同时并行地进行比较处理,从而极大地提高了检索速度。
当由索引电路34判断了范围时,对分检索电路36以对分检索法执行检索。对分检索电路36将由索引电路34判断的范围进一步分成2个,通过对位于该边界位置的基准数据和比较对象数据进行比较,来判断比较对象数据属于哪个范围。对分检索电路36包括以位为单位对基准数据和比较对象数据进行比较的多个比较电路,例如在前提技术中包括1024个,同时执行1024位的位比对。当判断了比较对象数据属于被分成2个的范围中的哪一个时,进一步将该范围分成2个并读出位于边界位置的基准数据,将其与对象数据进行比较。之后,通过重复该处理来进一步限定范围,最后检索出与比较对象数据一致的基准数据。
使用上述的例子进一步对操作进行详细说明。在图5所示的通信数据中,位置确定数据“No.”之后的比较对象数据是数字“361”。由于在确定数据“No.”与比较对象数据“361”之间存在一个字符的空格,因此为了从比较对象数据中除去该空格,偏移量51被设定为“8”位。对分检索电路36从位置确定数据“No.”之后的通信数据跳过“8”位,即1个字节,将之后的“361”作为比较对象数据读入。
在索引电路34的比较电路35a~35c中,输入“361”作为比较对象数据,作为基准数据,在比较电路35a中输入位于范围52a和52b边界的基准数据“378”,在比较电路35b中输入位于范围52b和52c边界的基准数据“704”,在比较电路35c中输入位于范围52c和52d边界的基准数据“937”。由比较电路35a~35c同时进行比较,判断出比较对象数据“361”属于范围52a。之后,对分检索电路36将检索基准数据中是否存在比较对象数据“361”。
图7示出了第一数据库内部数据的另一个例子。在图7的例子中,基准数据的数据个数比第一数据库50所能够保持的数据数1000个少。此时,在第一数据库50中,从最后数据位置开始降序储存基准数据。然后,将剩余的数据位置中储存0。作为数据库的加载方法,不是从最前面配置数据而是从加载区域的后方配置,当加载区域的开头产生空位时,对所有的空位进行清零,由此使数据库一直处于满的状态,从而可以使对分检索时的最大时间恒定。此外,当对分检索电路36在检索中读入“0”作为基准数据时,由于比较结果是明显的,因此可以不进行比较而确定范围,并转到下一比较。由此,可以提高检索速度。
在基于CPU的软件处理中,在将基准数据储存到第一数据库50时,从最初的数据位置以升序储存基准数据。在剩余的数据中例如储存最大值,在这种情况下,在对分检索中不可能省略上述的比较处理。上述的比较技术通过由专用的硬件电路构成检索电路30来实现。
图8示出了第一数据库内部数据的又一个例子。在图8的例子中,不是把基准数据均等地分成3个以上的范围,而是范围所属的基准数据的个数是不均等的,例如范围52a为500个,范围52b为100个。这些范围可以根据通信数据中的基准数据的出现频度的分布来进行设定。也就是说,可以对范围进行设定以使各范围所属的基准数据的出现频度的和大致相同。由此,可以提高检索效率。输入到索引电路34的比较电路35a~35c中的基准数据,也可以从外部进行变更。由此,能够动态地设定范围,从而可以使检索效率最佳化。
图9示出了对分检索电路中包含的比较电路的构成。如上所述,对分检索电路36包括1024个比较电路36a、36b、...、。在各个比较电路36a、36b、...、中,基准数据54和比较对象数据56按每1位来输入,并比较其大小。索引电路34的各比较电路35a~35c的内部构成也是同样的。这样,通过以专用的硬件电路执行比较处理,可以使多个比较电路并行操作,同时对多位进行比较,从而可以使比较处理高速化。
图10示出了第二数据库内部数据的例子。第二数据库60包括储存检索电路30的检索结果的检索结果栏62、以及储存对通信数据执行的处理内容的处理内容栏64,并将检索结果和处理内容对应地保持。在图10的例子中设定如下条件:当通信数据中包含基准数据时,允许该数据包通过;当不包含基准数据时,将该数据包废弃。处理执行电路40根据检索结果从第二数据库60检索处理内容,对通信数据执行处理。处理执行电路40也可以由布线逻辑电路来实现。
图11示出了第二数据库内部数据的另一个例子。在图11的例子中,对每个基准数据设定处理内容。当进行数据包的置换时,可以将待置换的数据储存到第二数据库60中。在进行数据包的路径选择或者交换时,可以将与路经有关的信息储存到第二数据库60中。处理执行电路40根据检索电路30的检索结果,执行第二数据库60中储存的过滤、路径选择、交换、置换等处理。如图11所示,当对每个基准数据设定处理内容时,可以对第一数据库50和第二数据库60进行合并。
第一数据库及第二数据库被设置为可以从外部进行重写。通过对这些数据库进行替换,可以使用相同的通信控制装置10实现各种各样的数据处理或者通信控制。此外,也可以设置2个以上储存作为检索对象的基准数据的数据库,来进行多阶段的检索处理。此时,也可以设置2个以上关联对应储存了检索结果和处理内容的数据库,来实现更复杂的条件分支。这样,当设置多个数据库进行多阶段的检索时,也可以设置多个位置检测电路32、索引电路34、对分检索电路36等。
上述用于比较的数据可以用同样的压缩逻辑进行压缩。在进行比较时,如果比较源数据与比较目标数据用同样的方式压缩,则可以像通常一样进行比较。由此,比较时可以减少载入的数据量。如果载入的数据量变少,则从存储器读出数据所需的时间就会缩短,全部的处理时间也可以缩短。此外,由于可以削减比较器的数量,因而有助于装置的小型化、轻型化、低成本化。用于比较的数据可以用压缩的形式储存,也可以在从存储器读出后,在比较之前进行压缩。
图12示出了前提技术的通信控制装置的另外的构成例子。本图所示的通信控制装置10包括两个具有与图3所示的通信控制装置10同样构成的通信控制单元12。此外,设有对各通信控制单元12的操作进行控制的切换控制部14。各通信控制单元12包括两个输入输出接口16,通过各输入输出接口16连接到上游侧和下游侧两个网络上。通信控制单元12从任一侧的网络输入通信数据,将处理后的数据输出到另一侧的网络。切换控制部14通过切换各通信控制单元12设置的输入输出接口16的输入输出,对通信控制单元12中的通信数据的流向进行切换。由此,不仅可以进行单向的通信控制,而且还可以进行双向的通信控制。
切换控制部14也可以进行控制以使通信控制单元12之一处理入站的数据包、另一个则处理出站的数据包,也可以进行控制以使双方都处理出站的数据包。由此,例如根据业务量的状况或者目的等,可以使进行控制的通信方向变化。
切换控制部14也可以通过获取各通信控制单元12的操作状况、并根据该操作状况对通信控制的方向进行切换。例如,在使通信控制单元12之一处于待机状态,而使另一通信控制单元12操作的情况下,当检测到该通信控制单元12由于故障等原因停止时,可以使待机中的通信控制单元12工作以作为替代。由此,可以提高通信控制装置10的容错度。此外,当对一方的通信控制单元12进行数据库的更新等维护时,也可以使另一方通信控制单元12工作以作为替代。由此,在不停止通信控制装置10运行的情况下,能够适当地进行维护。
在通信控制装置10中也可以设置3个以上的通信控制单元12。切换控制部14例如可以获取业务量的状况,并对各通信控制单元12的通信方向进行控制,以便将更多的通信控制单元12分配给通信量多的方向的通信控制处理。由此,即使某个方向的通信量增加,也可以将通信速度的降低限制到最小程度。
另外,在多个通信控制单元12之间可以共用通信控制部2或者4的一部分。此外,数据包处理电路20的一部分也可以共用。
作为上述的数据处理装置,可以考虑采用以下的方式实现。
[方式1]
一种数据处理装置,其特征在于,包括:
第一存储部,存储基准数据以作为决定的基准,来决定对获取的数据执行的处理内容;
检索部,通过对所述数据和所述基准数据进行比较,检索所述数据中是否包含所述基准数据;
第二存储部,将所述检索部的检索结果与所述处理的内容对应地存储;
处理部,根据所述检索结果,对所述数据执行与所述检索结果进行关联对应的处理,
所述检索部由布线逻辑电路构成。
[方式2]
在上述方式1的数据处理装置中,所述布线逻辑电路包括:多个第一比较电路,以位为单位对所述数据和所述基准数据进行比较。
[方式3]
在上述方式1的数据处理装置中,所述检索部包括:位置检测电路,从所述数据中检测要与所述基准数据进行比较的比较对象数据的位置。
[方式4]
在上述方式3的数据处理装置中,所述位置检测电路包括:对所述数据和用于确定所述比较对象数据位置的位置确定数据进行比较的多个第二比较电路,所述数据每错开预定数据长度的位输入到所述多个第二比较电路,并与所述位置确定数据同时并行地进行比较。
[方式5]
在上述方式1至方式2任一项的数据处理装置中,所述检索部包括:对分检索电路,通过对分检索对所述数据中是否包含所述基准数据进行检索。
[方式6]
在上述方式5的数据处理装置中,所述基准数据的数据数比所述第一存储部所能保持的数据数少时,从所述第一存储部的最后数据位置开始降序储存所述基准数据,并将0储存到剩余的数据中。
[方式7]
在上述方式1至方式6任一项的数据处理装置中,所述检索部包括:判断电路,当所述第一存储部所存储的多个基准数据分成三个以上的范围时,判断应与所述基准数据进行比较的对象数据属于这些范围中的哪一个。
[方式8]
在上述方式7的数据处理装置中,所述判断电路包括:对作为所述范围的边界的基准数据和所述比较对象数据进行比较的多个第三比较电路,由所述多个第三比较电路同时并行地对所述比较对象数据属于所述三个以上范围中的哪一个进行判断。
[方式9]
在上述方式8的数据处理装置中,所述第一存储部的预定位置储存的所述基准数据输入到所述第三比较电路,以作为所述边界的基准数据。
[方式10]
在上述方式7或方式8的数据处理装置中,根据所述数据中的所述基准数据的出现频率的分布来设定所述范围。
[方式11]
在上述方式1至方式10中任一方式的数据处理装置中,所述第一存储部还存储有表示所述数据中的比较对象数据位置的信息,所述检索部基于表示所述位置的信息提取所述比较对象数据。
[方式12]
在上述方式1至方式11中任一方式的数据处理装置中,所述第一存储部或者所述第二存储部被设置为能够从外部进行重写。
[方式13]
在上述方式1至方式12任一项的数据处理装置中,所述检索部不等到获取通信数据包的所有数据,而是在获取了应与所述基准数据进行比较的数据时,就开始对该数据和所述基准数据进行比较。
[方式14]
一种数据处理装置,其特征在于,包括:多个上述方式1至13任一项所述的数据处理装置,各所述数据处理装置包括两个在与通信线路之间输入输出数据的接口,通过切换各所述接口的输入和输出,对处理所述数据的方向进行可变控制。
接下来,对使用上述通信控制装置10的URL过滤技术进行说明。
图13示出了用于URL过滤的数据包处理电路20的内部结构。数据包处理电路20包括:作为第一数据库50的用户数据库57、病毒/网络钓鱼网站清单161、白清单162、黑清单163以及公共类别清单164。用户数据库57储存使用通信控制装置10的用户的信息。通信控制装置10从用户接收识别用户的信息,将检索电路30接收的信息与用户数据库57进行匹配来对用户进行认证。作为识别用户的信息,可以使用TCP/IP数据包的IP报头中储存的源地址,也可以从用户接收用户ID和口令。在前者的情况下,由于数据包中的源地址的储存位置已经确定了,因此在检索电路30中与用户数据库57进行匹配时,没有必要通过位置检索电路32检测位置,以偏移量51的方式来指定源地址的储存位置就可以了。当认证了是登记在用户数据库57中的用户时,接着将内容的URL参照病毒/网络钓鱼网站清单161、白清单162、黑清单163以及公共类别清单164进行核对,以判断对内容的访问是否许可。由于白清单162和黑清单163按每个用户设置,因此当用户被认证并唯一地确定了用户ID时,将该用户的白清单162和黑清单163提供给检索电路30。
病毒/网络钓鱼网站清单161储存包含计算机病毒的内容的URL清单,以及网络钓鱼诈骗中使用的“陷阱”网站的URL清单。对储存在病毒/网络钓鱼网站清单161中的URL的内容的访问请求将被拒绝。这样,即使在用户不注意或者被骗而要访问病毒网站或者网络钓鱼网站的情况下,也可以适当地禁止访问,保护用户免受病毒网站或者网络钓鱼诈骗所害。此外,由于不是在用户终端中储存病毒或网络钓鱼网站清单从而在终端侧进行访问限制,而是由设置在通信路径上的通信控制装置10集中进行访问限制,从而能够可靠且高效地进行访问限制。通信控制装置10可以获取并保持由认证机构证明为不是病毒或者网络钓鱼网站而是正当网站的认证后的网站清单,从而许可对该清单中保存的URL进行访问。此外,当正当的网站被黑客等攻陷、被嵌入病毒、被用于网络钓鱼诈骗等事态发生时,正当网站的运营者等可以将被攻陷的网站的URL登记到病毒/网络钓鱼网站清单161中,在网站恢复到正常状态之前,暂时禁止对网站的访问。此外,可以将IP号、TCP号、MAC地址等信息与URL的清单组合进行校验。由此,可以设定更高精度的检索条件,从而能够更可靠地对病毒或者网络钓鱼网站进行过滤。
白清单162是对每个用户设定的,储存了允许访问其内容的URL清单。黑清单163也是对每个用户设定的,储存了禁止访问其内容的URL清单。图14(a)示出了病毒/网络钓鱼网站清单161内部数据的例子,图14(b)示出了白清单162内部数据的例子,图14(c)示出了黑清单163内部数据的例子。在病毒/网络钓鱼网站清单161、白清单162和黑清单163中,分别设有类别号栏165、URL栏166和标题栏167。URL栏166中储存允许访问或者禁止访问内容的URL。类别栏165中储存内容的类别号。标题栏167中储存内容的标题。
公共类别清单164中储存用于将URL所示的内容按多个类别分类的清单。图15示出了公共类别清单164内部数据的例子。在公共类别清单164中也设有类别号栏165、URL栏166和标题栏167。
通信控制装置10在从“GET”请求消息中提取URL后,通过检索电路30来检索该URL是否包含在病毒/网络钓鱼网站清单161、白清单162、黑清单163或公共类别清单164中。此时,例如,可以由位置检测电路32检测“http://”的字符串,并提取该字符串后续的数据串作为对象数据。提取的URL通过索引电路34及对分检索电路36与病毒/网络钓鱼网站清单161、白清单162、黑清单163以及公共类别清单164的基准数据进行比对。
图16(a)、(b)、(c)及(d)示出了用于URL过滤的第二数据库60的内部数据的例子。图16(a)示出了对病毒/网络钓鱼网站清单161的检索结果和处理内容。当“GET”请求中包含的URL与病毒/网络钓鱼网站清单161中包含的URL一致时,对该URL的访问将被禁止。图16(b)示出了对白清单162的检索结果和处理内容。当“GET”请求中包含的URL与白清单162中包含的URL一致时,对该URL的访问将被许可。图16(c)示出了对黑清单163的检索结果和处理内容。当“GET”请求中包含的URL与黑清单163中包含的URL一致时,对该URL的访问将被禁止。
图16(d)示出了对公共类别清单164的检索结果和处理内容。如图16(d)所示,对于对公共类别清单164的检索结果,用户可以按各个类别对属于该类别的内容的访问是许可还是禁止分别进行设定。在与公共类别清单164有关的第二数据库60中,设置有用户ID栏168及类别栏169。在用户ID栏168中储存有用于识别用户的ID。在类别栏169中,对于被分为57种的各个类别,储存有表示用户对属于某类别的内容的访问是许可还是禁止的信息。当“GET”请求中包含的URL与公共类别清单164中包含的URL一致时,根据该URL的类别和用户ID,将判断对该URL的访问是否许可。此外,在图16(d)中,公共类别的个数是57,但也可以是其他个数。
图17示出了病毒/网络钓鱼网站清单161、白清单162、黑清单163以及公共类别清单164的优先级。在前提技术中,优先级的高低是按照病毒/网络钓鱼网站清单161、白清单162、黑清单163、公共类别清单164的顺序,例如,即使是白清单162中储存的允许访问内容的URL,如果该URL储存在病素/网络钓鱼网站清单161中,则也将被视作含有计算机病毒或用于网络钓鱼诈骗的内容而被禁止访问。
以往,当使用软件来进行考虑了这样的优先级的匹配时,例如,可以采用以下方法之一:从优先级高的清单开始依次进行比对并采用最初命中者,或者从优先级低的清单开始依次进行比对并用后命中的替换先命中的。但是,在前提技术中,通过使用由专用的硬件电路构成的通信控制装置10,设置有进行病毒/网络钓鱼网站清单161比对的检索电路30a、进行白清单162比对的检索电路30b、进行黑清单163比对的检索电路30c和进行公共类别清单164比对的检索电路30d,在各检索电路30中同时并行地进行匹配。其次,在多个清单的比对中都有命中的情况下,则采用优先级最高的。由此,即使在设有多个数据库时,在对其设定了优先级的情况下,也可以大幅度缩短检索时间。
对病毒/网络钓鱼网站清单161、白清单162、黑清单163以及公共类别清单164中之一是否许可访问进行判断的优先级例如可以在第二数据库60中设定。根据哪个清单被设定为优先,可以对第二数据库60的条件进行修改。
这样,当使用多个数据库进行基于URL的过滤时,可以对数据库设定优先级并根据所设定的优先级进行过滤处理。而且,通过将病毒/网络钓鱼网站清单161的过滤设定为最优先,而不管用户对白清单162等的设定状况如何,都能够可靠地禁止对病毒网站或者网络钓鱼网站的访问。由此,可以适当地保护用户免受病毒或者网络钓鱼诈骗所害。
当对内容的访问被许可时,处理执行电路40向消息输出服务器130输出用于通知该情况的信号。消息输出服务器130向保持有该内容的服务器发送“GET”请求消息。当对内容的访问被禁止时,处理执行电路40向消息输出服务器130输出用于通知该情况的信号,而消息输出服务器130不向访问目标的服务器发送“GET”请求消息而是将其废弃。此时,也可以将访问被禁止的响应消息发送给请求源。此外,也可以强制地转送到其他网页。这时,处理执行电路40将目的地址和URL更换为转送目标的目的地址和URL并进行发送。诸如响应消息和转送目标的URL等信息也可以储存在第二数据库60或消息输出服务器130中。
消息输出服务器130也可以使用ping命令等来确认实际存在请求源,并且当请求源存在时对其状态进行确认,然后对该请求源输出信息。从消息输出服务器130向请求源发送的消息也可以按每个用户进行设定,也可以按每个访问目标的内容、按每个类别、或者按每个白清单162或黑清单163等的数据库进行设定。例如,在访问被禁止时,用户可以对显示的画面进行定制并登记到消息输出服务器130。此外,如上所述,当正当的网站被黑客攻击并且暂时限制访问时,可以输出向正当网站的镜像网站引导的消息。
消息输出服务器130可以管理信息的输送历史,并可以将该消息输送历史信息用于各种控制。例如,当从相同的请求源在短时间内发出多次访问请求时,由于有可能是服务妨碍攻击(Denial of Service attack:Dos攻击)等,因而可以将该请求源登记到访问拒绝清单中,截断来自该请求源的数据包而不将其向请求目的地发送。另外,可以对信息输送历史进行统计处理,并将其提供给WEB网站的管理者等。由此,用户的访问历史可以用于市场营销或者或用于通信状况的控制等。此外,可以根据状况减少消息送出的次数,或者相反也可以增加次数。例如,从特定的IP号码发出访问请求时,对其一条请求消息,可以发送多倍的消息。
通过以上的构成及操作,可以禁止对不适当的内容进行访问。此外,由于检索电路30是由FPGA等构成的专用硬件电路,因此,如上所述,可以实现高速的检索处理,并将对通信量的影响抑制到最小限度,而且可以执行过滤处理。因特网服务提供商等通过提供这样的过滤服务,可以提高附加价值,争取更多的用户。
白清单162或者黑清单163也可以设为对所有的用户共享。
(实施方式)
接下来,对通信控制系统100中设置多个通信控制装置10时的操作技术进行说明。例如,上述的通过URL进行滤波控制的通信控制装置10,假定用于储存数据库的RAM(Random Access Memory)等存储装置具有可容纳10万用户所对应的数据的容量。此时,如果通信控制装置10的用户超过10万人时,按以往技术,需要更换为设置有可容纳10万人以上的用户数据的存储装置的通信控制装置10。但是,根据本实施方式,设置多个通信控制装置,并在这些通信控制装置的存储装置中将白清单和黑清单等数据库分开来保持,通过它们的协同操作,可以实现1台大规模通信控制装置10的功能。因此,即使用户数超过了通信控制装置10的容量,通过新增加通信控制装置,可以适应用户的增加。这样,本实施方式中提出对具有通用性和高灵活性的通信控制系统10的操作技术方案。根据该技术,可以降低随着用户的增加而变更系统所需的工时和费用,同时,没有必要在最初就考虑到用户的增加而构筑大规模的系统,根据用户数量来设置适当的通信控制系统就可以,能够控制最初的投资。
图18示出了涉及实施方式通信控制系统100的构成。在本实施方式的通信控制系统100中,设置有多个通信控制装置10a、10b、10c、...,并使它们协同操作,实现前提技术中说明的通信控制装置10的功能。其他的构成以及操作与图1所示的前提技术的通信控制装置100相同。
在本实施方式的通信控制系统100中,设置比用于将数据包处理所需的数据库中的至少一部分分开保持所需的台数至少多一台的通信控制装置。例如,对于上述的例子,当用户数在30万以上和不超过40万的场合,操作所需的通信控制装置的台数是4台,另外可设置一台以上的通信控制装置作为当某个通信控制装置发生故障时替代操作的待机用机,因此总计最少设置5台通信控制装置。在现有技术中,为了容错,需要对系统整体实行双机化,根据本实施方式的技术,只要冗余设置分开的通信控制装置10,就能够降低成本。这样多个通信控制装置10a、10b、10c、...的操作状况由操作监视服务器110管理。本实施方式的操作监视服务器110包含用于管理通信控制装置的操作状况的管理表。
图19示出了涉及本实施方式的通信控制装置10的构成。关于图18的构成,检索电路30及处理执行电路40相当于本发明的数据处理单元,保持第一数据库50及第二数据库60的构成相当于数据保持单元。在图18所示的例子中,每个通信控制装置10a、10b、10c中设置有数据保持单元以及与其对应的数据处理单元,这些通信控制装置也可以集中设置在一个装置内。此外,上述构成也可以是一个数据处理单元参照多个数据保持单元所保持的数据库来进行数据处理。此外,数据保持单元可以相当于RAM等存储装置,也可以相当于存储装置内部的一部分区域,多个存储装置也可以相当于一个数据保持单元。
在通信控制装置10的用于数据包处理的数据库中,第一数据库50的白清单162(图14(b))、黑清单163(图14(c))以及第二数据库60储存的对于每个用户确定可否访问的公共类别清单部分(图16(d))需要与用户数成比例的大容量。因此,将这些数据库分开保持在通信控制装置10a、10b、10c、...的数据保持单元中。也就是说,白清单162、黑清单163相当于本发明的第二数据库。病毒/网络钓鱼网站清单161(图14(a))及公共类别清单164(图15)由所有用户共同使用并且没有多大的容量,故共同保持在所有通信控制装置10a、10b、10c、...的数据保持单元中。
如下面所述,在本实施方式的通信控制装置100中,将要处理的通信数据包提供给操作中的所有通信控制装置10a、10b、10c、...,各个通信控制装置对提供的数据包是否处理进行判断。只有担任该数据包处理的通信控制装置(即保持有发送该数据包的用户的数据的通信控制装置)才对数据包进行处理,其他的通信控制装置将该数据包废弃。为此,用户数据库57是必须的,用户数据库57储存的数据用于判断是哪个通信控制装置应处理数据包,如果没有的话将无法处理数据包。也就是说,用户数据库57相当于本发明的第一数据库。
本实施方式中,在所有的通信控制装置10a、10b、10c、...中保持储存所有用户数据的用户数据库57。通信控制装置在得到操作监视服务器110通知的自己所应负责的用户的用户ID范围后,使用用户数据库57中被通知范围的用户ID的数据进行用户认证,判断是否处理接收的数据包。
图20示出了设在操作监视服务器110中的管理表111的内部数据的例子。在管理表111中设有装置ID栏112、操作状况栏113、用户ID栏114。在装置ID栏112中储存通信控制装置10a、10b、...的装置ID,在操作状况栏113中储存该通信控制装置的操作状况,在用户ID栏114中储存该通信控制装置应负责的用户的ID范围。操作状况例如有“操作中”、“待机中”、“故障中”、“数据更新中”等。在每次通信控制装置10a、10b、...的操作状况发生变化时,都由操作监视服务器110来更新操作状况栏113。在图20所示的例子中,由于有“465183”名用户在使用通信控制系统100,装置ID为“1”~“5”的5台通信控制装置10在操作中,装置ID为“6”的通信控制装置10处于待机状态。
操作监视服务器110监视多个通信控制装置10操作状况,在检测到某一个通信控制装置10发生了问题而处于不能操作的状态时,在将与停止的通信控制装置10相同的数据储存在处于待机状态的通信控制装置10中后,将该通信控制装置10切换为操作。例如,如图21所示,在装置ID为“2”的通信控制装置10由于故障停止操作的场合,向待机中的装置ID为“6”的通信控制装置10储存用户ID为“100001~200000”的数据并使其开始操作。因此,即使由于某种问题使通信控制装置10处于停止的状态,也能够适当地继续操作。在通信控制装置10中,可以预先将某个通信控制装置10的数据储存起来,使其处于热待机状态,也可以使其处于冷待机状态。
在本实施方式中,在待机中的通信控制装置10的数据保持单元中预先储存有用户数据库57。因此,即使某个通信控制装置10处于不能操作的状态,也可以立即将待机中的通信控制装置10切换为操作。如上所述,由于每个通信控制装置10使用用户ID判断是否处理数据包,则当某个通信控制装置10成为不能操作的状态的情况下,在接收该通信控制装置10负责的用户的数据包时,处理该数据包的通信控制装置10将处于不存在的状态,从而将发生数据包不被处理的情况。为了能尽快从这种情况中恢复,在待机中的通信控制装置10的数据保持单元中也预先将用户数据库57储存起来。这样,操作监视服务器110为使处于不能操作状态的通信控制装置10所负责的用户改由待机中的通信控制装置10来负责,要通知用户ID的范围。因此,可以使待机中的通信控制装置10立即投入操作,使得数据包不被处理的情况被限制在最小限度。
如果把白清单162和黑清单163等数据库完全储存到待机中的通信控制装置10后才开始切换的话,数据库的存储要花费时间,有可能使数据包不被处理的情况长时间持续。因此,可以在只储存有用户数据库57后的状态下将待机中的通信控制装置10切换为操作。由此,虽然不能提供完全的URL过滤服务,但是可以避免数据包不被处理的情况。而没有被储存的数据库可以在维护时或者后述的数据库更新时等储存。病毒/网络钓鱼网站清单161以及公共类别清单164等共同使用的数据库也可以预先储存到待机中的通信控制装置10中。这样,当操作切换后,可以提供拒绝访问储存在病毒/网络钓鱼网站清单161中的URL等一部分服务。
接下来,对更新通信控制装置10中包含的数据库的步骤进行说明。数据库服务器150在预定的时机从URL数据库160获取最新数据库并保持。此外,随着用户的新注册或者退出来更新和保持用户数据库。操作监视服务器110为了在预定的时机使数据库服务器150所保持的最新数据反映到通信控制装置10,由数据库服务器150向通信控制装置10传送数据并使其储存该数据。
图22(a)、(b)、(c)是用于说明更新数据库的情形的图。图22(a)与图20同样,装置ID为“1”~“5”的通信控制装置10处于操作中,装置ID为“6”的通信控制装置10处于待机中的状态。操作监视服务器110在更新数据库的时机到来时,确定处于待机中的通信控制装置10后,向数据库服务器150发出对该通信控制装置10储存数据的指示。在图22(a)的例子中,由于装置ID为“6”的通信控制装置10处于待机中,数据库服务器150将向该通信控制装置10储存数据。此时,操作监视服务器110将装置ID为“6”的操作状况栏113变更为“数据更新中”。
图22(b)示出了通信控制装置10的数据库是更新中的状态。数据库服务器150将操作中的通信控制装置10的其中某一个所负责的用户的数据储存到待机中的装置ID为“6”的通信控制装置10的用户数据库57中。同时,也储存病毒/网络钓鱼网站清单161、白清单162、黑清单163、公共类别清单164以及第二数据库60的数据。在图22(b)的例子中,装置ID为“1”的通信控制装置10所负责的用户ID为“000001~100000”的用户数据储存在装置ID为“6”的通信控制装置10中。
图22(c)示出了装置ID为“6”的通信控制装置10的数据库被更新并且开始操作,而装置ID为“1”的通信控制装置10成为待机状态的状况。操作监视服务器110在对装置ID为“6”的通信控制装置10储存完数据后,在启动保持有更新后数据库的装置ID为“6”的通信控制装置10的同时,停止保持有更新前数据的装置ID“1”的通信控制装置10的操作并使其处于待机状态。这样,切换至数据库更新后的通信控制装置10的操作。接下来,在将用户ID为“100001~200000”的用户数据储存到装置ID为“1”的通信控制装置10后,启动装置ID为“1”的通信控制装置10的操作,停止装置ID为“2”的通信控制装置10的操作。之后,同样以巡回的方式对数据库进行更新,在不停止通信控制系统100操作的情况下,能够将所有的通信控制装置10的数据库进行后台更新。
这样,在本实施方式的通信控制装置10中,各个通信控制装置10中储存的数据不是固定的,某个用户的数据储存在哪个通信控制装置10中是随时间而变化的。在向各个通信控制装置10发送数据包之前,如果要对该用户的数据存在于哪个通信控制装置10中进行判断,则该处理将更费时间。为此,在本实施方式中,将接收的数据包提供给所有的通信控制装置10,各通信控制装置10对其是否保持有发出数据包的用户的数据进行判断,只有保持有该用户数据的通信控制装置10才对该数据包进行处理,没有保持有该用户数据的通信控制装置10对该数据包不作处理。下面对实现这种结构的技术进行说明。
图23示出了通过多个通信控制装置10对数据包进行处理而设置的通信路径控制装置的构成。通信路径控制装置200包括:开关210、作为数据提供单元一例的光分路器220和开关230。开关210将接收的数据包发送给通信控制装置10。在此,在开关210与通信控制装置10之间,设置有向多个通信控制装置10a、10b、10c并行提供数据包的光分路器220,实际上,开关210向光分路器220发送数据包,光分路器220向各个通信控制装置并行发送数据包。
为了向多个通信控制装置10a、10b、10c发送数据包,如果将数据包进行广播变换,将会发生诸如将时间标记附加到报头中等多余的处理,从而降低处理速度。为此,对数据包不作变更,通过光分路器220进行分路后,按单播原样向多个通信控制装置10a、10b、10c发送数据包。这种方式在本说明书中称作“并行传播(パラレルキャスト)”。
各个通信控制装置不限于只接收发给自己的MAC地址的数据包的模式,而可以设定为对所有的数据包进行接收而不管其发送目标的MAC地址,即所谓的混杂模式。各个通信控制装置在从光分路器220接收混杂模式变换后的数据包时,省去MAC地址的匹配处理,而是在暂时获取所有的数据包后,参照数据保持单元所保持的用户数据库57进行在前提技术中说明的用户ID的比对处理,从而判断是否为要由自己处理的数据包。在图23示出的例子中,由于发出数据包的用户数据存在于通信控制装置10c中,所以,通信控制装置10a以及10b将该数据包废弃,通信控制装置10c执行上述的URL过滤处理。
通信控制装置10c在访问被禁止等情况下向用户返回数据包时,不经过光分路器220而是向开关210发送应答数据包。通信控制装置10c在处理数据包的结果为允许访问的场合,将该数据包向请求该内容的目标方发送。在通信控制装置10c与上游通信线路之间设置有用于汇总由多个通信控制装置10a、10b、10c发出数据包的开关230。实际上,通信控制装置10c向开关230发送数据包,而开关230将数据包向上游的通信线路送出。
当开关230接收到由请求该内容的目标方返回的数据包时,由于该数据包没有必要通过通信控制装置10处理,所以从开关230的端口232向开关210的端口212发送,由开关210向用户送出。一般来讲,在因特网中,为了确保回信路径以保证将对于数据包的应答数据包可靠地返回给发信源,要将发送的路径记录在数据包中。但是,在本实施方式中,由于在通信控制路径装置200中预先准备有回信路径,所以不用记录路径,即不对数据包进行加工而在装置之间进行通信。这样,可以省去不必要的处理,从而提高处理速度。
在图23的例子中,描述了只在将用户发出的包含有内容获取要求的数据包向保持有内容的服务器发送时才处理数据包、而对保持有内容的服务器向用户发送的数据包则不作处理而使其通过。然而,通信控制装置10也可以对双方向的数据包进行处理。而且,也可以不设置由开关230至开关210的旁路路径。
这样,即使不是预先确定多个通信控制装置之中应处理数据包的通信控制装置,通过对所有的通信控制装置并行传播相同的数据包,能够使应处理数据包的通信控制装置适当地处理该数据包。
当多个通信控制装置中的至少一个通信控制装置接收到数据包,而该数据包中不包含用户数据库57中所储存的用户ID清单中的任何一个用户ID时,可以将数据包按原样向网络送出。因此,在接收到任何一个通信控制装置都没有必要处理的数据包时,都可以使该数据包适当地透传。当多个通信控制装置使数据包透传时,将会有多个相同的数据包被送出,因而优选只由其中的某一个通信控制装置使数据包透传。具有这种功能的通信控制装置称作“主装置”,其他通信控制装置称作“次装置”。
操作监视服务器110可以进行控制,将任意一个通信控制装置指定为主装置并使其执行上述功能,将其他通信控制装置指定为次装置并使其只对自己应负责的数据包进行处理。在这种情况下,主装置对与储存于用户数据库57中的ID清单中自己应处理的用户ID范围相符合的数据包进行处理,而废弃具有与储存于用户数据库57中的ID相一致、但不属于自己应负责范围的用户ID的数据包。此外,在数据包的用户ID与储存于用户数据库57中的任何用户ID都不一致的场合,对该数据包不作处理而使其透传。次装置只对符合储存于用户数据库57的ID清单中自己应处理的用户ID范围的数据包进行处理,而废弃其他的数据包。
图24示出了由多个通信控制装置中的任意一个对数据包进行处理的情形。在图24的例子中,通信控制装置10包括通信控制装置10a、10b、10c的3台,在用户数据库57中储存有“000001-300000”的用户ID清单。通信控制装置10a处理用户ID为“000001-100000”的用户的数据包,通信控制装置10b处理用户ID为“100001-200000”的用户的数据包,通信控制装置10c处理用户ID为“200001-300000”的用户的数据包。此外,通信控制装置10a被指定为主装置,通信控制装置10b和10c为次装置。
在此,假定接收了用户ID为“148890”的用户的数据包。由于该用户ID包含在储存于用户数据库57的清单中,所以,该数据包必须由某个通信控制装置处理。在此,处理用户ID为“100001-200000”的数据包的通信控制装置10b对该数据包进行处理,而通信控制装置10a和10c废弃该数据包。
图25示出了由多个通信控制装置中的任意一个使数据包通过的情形。与图24的例子同样,假定接收了用户ID为“513482”的用户的数据包。由于该用户ID未包含在储存于用户数据库57的清单中,所以任何通信控制装置都没有必要处理。于是,为了对该数据包不作处理而使其透传,只有被指定为主装置的通信控制装置10a使该数据包通过,其他的通信控制装置10b、10c则废弃该数据包。通过这样的技术,可以对应处理的数据包通过某一个通信控制装置进行适当处理的同时,而使不应处理的数据包按原样通过。
如上所述,这些通信控制装置由于对通过通信路径控制装置200进行并行传播的所有数据包进行处理或者废弃,因此没有必要预先赋予在互联网上唯一地识别该装置的IP地址。在如上所述的通过服务器装置等执行数据包处理的场合,有必要考虑服务器装置受到的攻击,而本实施方式的通信控制装置不会受到来自恶意第三者通过互联网的直接攻击,因而能够安全地进行通信控制。
以上,通过实施方式对本发明进行了说明。本领域的技术人员应该理解,实施方式仅为示例,本发明还存在对各构成元素或各处理过程进行组合的各种各样的变型实施例,这些变型实施例也包含在本发明的范围内。
虽然在实施方式中对于为多台通信控制装置中的每一台设置数据处理单元和数据保持单元的通信控制系统进行了说明,本发明的技术同样可以适用于一台数据处理装置内部包含多个数据保持单元的场合。此外,在一个数据处理单元参照多个数据保持单元所保持的数据库处理数据的场合,本发明也同样可以适用。此外,也可以设置两个以上的用于待机的数据保持单元。
产业上的可利用性
本发明可以适用于包含多个数据库的数据处理系统。

Claims (5)

1.数据处理系统,包括:
多个通信控制装置,
数据提供单元,其不将获取的数据包变换为广播形式,而以单播形式原样向多个所述通信控制装置并行提供,
所述通信控制装置包括:
数据保持单元,其包括:第一数据库,储存有用于判定应该用多个所述通信控制装置中的哪一个来处理获取的数据包的ID清单;以及第二数据库,按每个所述ID存储有对获取的数据包应执行的处理的内容,
判定部,获取该数据包而不判断该数据包是否为发给自己的,参照所述第一数据库,不是使用所述数据包的报头部分所储存的信息,而是使用数据部分所储存的ID来判断所获取的数据包是否为自己应处理的数据包,
处理部,将判定为不是自己应处理的数据包废弃,对于判定为是自己应处理的数据包,执行参照所述第二数据库进行判定的处理,
多个通信控制装置中的每一个均保持完整的第一数据库,并将所述第二数据库分开而分别保持,
该数据处理系统还包括管理所述多个数据保持单元的操作状况的操作管理单元,
所述操作管理单元使分开并保持所述第二数据库所需要个数的数据保持单元操作,并使除此以外的数据保持单元待机,
在所述数据保持单元中所保持的数据库被更新时,所述操作管理单元将操作中的数据保持单元中的任意之一所保持的数据库的更新数据储存到待机中的数据保持单元后,从保持更新前数据库的所述数据保持单元的操作切换至保持更新后数据库的所述数据保持单元的操作。
2.根据权利要求1所述的数据处理系统,其特征在于,所述操作管理单元在检测到操作中的数据保持单元处于不能操作的状态时,将该数据保持单元所保持的数据库保持到待机中的数据保持单元中,并将待机中的数据保持单元切换为操作状态。
3.根据权利要求1所述的数据处理系统,其特征在于,将所述第一数据库预先储存在所述待机中的数据保持单元中。
4.根据权利要求1所述的数据处理系统,其特征在于,所述数据提供单元将获取的数据原样地并行提供给所述多个数据处理单元而不做任何加工。
5.根据权利要求1所述的数据处理系统,其特征在于,所述多个数据处理单元中的至少之一在获取的数据包中不包含所述第一数据库所储存的ID清单中的任何一个ID时,不对该数据包作处理而使其按原样通过。
CN200580050928A 2005-05-20 2005-07-27 数据处理系统 Expired - Fee Related CN100590615C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPPCT/JP2005/009246 2005-05-20
PCT/JP2005/009246 WO2006123420A1 (ja) 2005-05-20 2005-05-20 データ処理システム

Publications (2)

Publication Number Publication Date
CN101213529A CN101213529A (zh) 2008-07-02
CN100590615C true CN100590615C (zh) 2010-02-17

Family

ID=37431004

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2005800509256A Expired - Fee Related CN101213528B (zh) 2005-05-20 2005-05-20 数据处理系统
CN200580050928A Expired - Fee Related CN100590615C (zh) 2005-05-20 2005-07-27 数据处理系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2005800509256A Expired - Fee Related CN101213528B (zh) 2005-05-20 2005-05-20 数据处理系统

Country Status (7)

Country Link
US (2) US20090132554A1 (zh)
EP (2) EP1901172A1 (zh)
JP (2) JP4087427B2 (zh)
KR (1) KR20080021677A (zh)
CN (2) CN101213528B (zh)
CA (2) CA2608156A1 (zh)
WO (2) WO2006123420A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101213528B (zh) * 2005-05-20 2010-04-07 Duaxes株式会社 数据处理系统
US20080060062A1 (en) * 2006-08-31 2008-03-06 Robert B Lord Methods and systems for preventing information theft
WO2008075426A1 (ja) * 2006-12-20 2008-06-26 Duaxes Corporation 通信制御装置及び通信制御方法
US7470320B1 (en) 2007-06-07 2008-12-30 Xerox Corporation Nanosized particles of monoazo laked pigment with tunable properties
US8126860B2 (en) * 2007-07-17 2012-02-28 Ricoh Company, Limited Method and apparatus for processing data
JP5156892B2 (ja) * 2007-11-19 2013-03-06 デュアキシズ株式会社 ログ出力制御装置及びログ出力制御方法
WO2009066338A1 (ja) * 2007-11-19 2009-05-28 Duaxes Corporation 通信制御装置
US8286219B2 (en) * 2008-02-16 2012-10-09 Xencare Software Inc. Safe and secure program execution framework
JP4894826B2 (ja) 2008-07-14 2012-03-14 ソニー株式会社 通信装置、通信システム、報知方法、及びプログラム
US8381292B1 (en) * 2008-12-30 2013-02-19 The Uab Research Foundation System and method for branding a phishing website using advanced pattern matching
US8386429B2 (en) * 2009-03-31 2013-02-26 Microsoft Corporation Generic editor for databases
CN102231199A (zh) * 2011-06-27 2011-11-02 中国建设银行股份有限公司 一种交易信息异步处理的方法及装置
AU2013259469A1 (en) 2012-05-09 2014-11-27 SunStone Information Defense Inc. Methods and apparatus for identifying and removing malicious applications
US20170193041A1 (en) * 2016-01-05 2017-07-06 Sqrrl Data, Inc. Document-partitioned secondary indexes in a sorted, distributed key/value data store
US10419410B2 (en) * 2016-12-15 2019-09-17 Seagate Technology Llc Automatic generation of unique identifiers for distributed directory management users

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6343446A (ja) * 1986-08-11 1988-02-24 Mitsubishi Electric Corp パケツト交換装置
JPH03131141A (ja) * 1989-10-16 1991-06-04 Nippon Telegr & Teleph Corp <Ntt> 光論理バス通信方式
JPH04180425A (ja) 1990-11-15 1992-06-26 Toshiba Corp 通信システム
JPH0675840A (ja) * 1992-08-26 1994-03-18 Hitachi Ltd データベースメンテナンス方式
JP4000223B2 (ja) * 1997-09-24 2007-10-31 富士通株式会社 情報検索方法,情報検索システムおよび同システム用検索管理装置
JPH11232279A (ja) 1998-02-12 1999-08-27 Kawasaki Steel Corp 分割探索方法及び装置
JP2001051890A (ja) * 1999-08-10 2001-02-23 Toshiba Corp 仮想分散ファイルサーバシステム
JP2001168911A (ja) 1999-12-09 2001-06-22 Hitachi Cable Ltd パケットフィルタ装置
JP3776278B2 (ja) * 2000-02-07 2006-05-17 日本電信電話株式会社 データベース処理システム
JP3605343B2 (ja) 2000-03-31 2004-12-22 デジタルア−ツ株式会社 インターネット閲覧制御方法、その方法を実施するプログラムを記録した媒体およびインターネット閲覧制御装置
WO2002082750A1 (fr) 2001-04-02 2002-10-17 Dcl Inc. Dispositif de recherche de chaines binaires et procede associe
JP3829702B2 (ja) 2001-11-29 2006-10-04 横河電機株式会社 フレーム同期装置及び方法
JP2003258997A (ja) * 2002-02-27 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> サービス制御ノードシステムの予備方式
US6978396B2 (en) * 2002-05-30 2005-12-20 Solid Information Technology Oy Method and system for processing replicated transactions parallel in secondary server
JP2004140618A (ja) 2002-10-18 2004-05-13 Yokogawa Electric Corp パケットフィルタ装置および不正アクセス検知装置
JP2004164435A (ja) 2002-11-14 2004-06-10 Nec Software Kyushu Ltd 接続要求中継装置、フィルタリングシステム、方法、及びプログラム
GB0227048D0 (en) * 2002-11-20 2002-12-24 3Com Corp Network units for use in and organisation of cascade systems
JP2004172917A (ja) 2002-11-20 2004-06-17 Nec Corp パケット検索装置及びそれに用いるパケット処理検索方法並びにそのプログラム
JP2004187201A (ja) 2002-12-06 2004-07-02 Nippon Telegr & Teleph Corp <Ntt> データ列検索用ノード,これを用いるデータ列検索方法並びにデータ列検索処理装置
JP4346975B2 (ja) 2003-06-27 2009-10-21 株式会社ルネサステクノロジ 連想メモリ機能付き集積回路及び侵入検知装置
JP2005084841A (ja) * 2003-09-05 2005-03-31 Patolis Corp データベース検索システム、データベース検索プログラム、データベース検索方法
CN100448238C (zh) * 2004-09-06 2008-12-31 恒生电子股份有限公司 离散数据集中处理系统
CN101213528B (zh) * 2005-05-20 2010-04-07 Duaxes株式会社 数据处理系统

Also Published As

Publication number Publication date
JP4087428B2 (ja) 2008-05-21
EP1901172A1 (en) 2008-03-19
EP1901173A1 (en) 2008-03-19
WO2006123443A8 (ja) 2007-07-05
WO2006123420A1 (ja) 2006-11-23
CA2608156A1 (en) 2006-11-23
JP4087427B2 (ja) 2008-05-21
KR20080021677A (ko) 2008-03-07
CA2609130A1 (en) 2006-11-23
JPWO2006123443A1 (ja) 2008-12-25
US7865474B2 (en) 2011-01-04
CN101213529A (zh) 2008-07-02
CN101213528A (zh) 2008-07-02
US20090132554A1 (en) 2009-05-21
CN101213528B (zh) 2010-04-07
WO2006123443A1 (ja) 2006-11-23
US20090216802A1 (en) 2009-08-27
JPWO2006123420A1 (ja) 2008-12-25

Similar Documents

Publication Publication Date Title
CN100590615C (zh) 数据处理系统
CN100476771C (zh) 通信控制装置
CN100580644C (zh) 通信控制装置及通信控制系统
CN101674307B (zh) 计算机网络内的安全服务的分级应用程序
US8336092B2 (en) Communication control device and communication control system
US20080281716A1 (en) Communication Control Device
EP1911241B9 (en) Method for defending against denial of service attacks in ip networks by target victim self-identification and control
US8572759B2 (en) Communication management system and communication management method
CN101589376A (zh) 通信控制装置
CN101305352A (zh) 通信管理系统、通信管理方法及通信控制装置
US8463727B2 (en) Communication management system and communication management method
CN101277302A (zh) 一种分布式网络设备安全集中防护的装置与方法
US8019776B2 (en) Determining device and determining method for determining processing to be performed based on acquired data
CN101589603A (zh) 测试装置
JP5156892B2 (ja) ログ出力制御装置及びログ出力制御方法
JPWO2009066347A1 (ja) 負荷分散装置
JPWO2009069178A1 (ja) 通信制御装置及び通信制御方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100217

Termination date: 20160727

CF01 Termination of patent right due to non-payment of annual fee