CN101213528A - 数据处理系统 - Google Patents
数据处理系统 Download PDFInfo
- Publication number
- CN101213528A CN101213528A CNA2005800509256A CN200580050925A CN101213528A CN 101213528 A CN101213528 A CN 101213528A CN A2005800509256 A CNA2005800509256 A CN A2005800509256A CN 200580050925 A CN200580050925 A CN 200580050925A CN 101213528 A CN101213528 A CN 101213528A
- Authority
- CN
- China
- Prior art keywords
- data
- communication control
- database
- packet
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital 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地址等的处理,从而提高数据包的处理速度。
上述通信控制装置可以不使用上述数据包的报头部分所储存的信息,而是使用其数据部所储存的信息来判断是否为自己应处理的数据包。上述通信控制装置可以参照对应的上述数据保持单元所保持的第一数据库,来判断是否为自己应处理的数据包。
判断数据包为自己应处理的数据包的数据处理单元可以对该数据包进行处理,而判断所获取的数据包不是自己应处理的数据包的数据处理单元可以将该数据包废弃。
上述数据提供单元可以不将获取的数据包变换为广播形式,而是将其作为单播向多个通信控制装置并行提供。因此,数据提供单元可以省去为对数据包进行广播变换而对报头进行加工等处理,从而提高数据包的处理速度。
另外,作为本发明的实施方式,以上构成要素的任意组合、以及将本发明的描述在方法、装置、系统、记录介质、计算机程序等之间进行变换的方式也是有效的。
发明的效果
根据本发明,提供一种可以适当地操作多个数据库的技术。
附图说明
图1是表示前提技术涉及的通信控制系统的构成的图。
图2是表示现有的通信控制装置的构成的图。
图3是表示前提技术涉及的通信控制装置的构成的图。
图4是表示数据包处理电路的内部构成的图。
图5是表示位置检测电路的内部构成的图。
图6是表示第一数据库的内部数据的例子的图。
图7是表示第一数据库的内部数据的另一个例子的图。
图8是表示第一数据库的内部数据的又一个例子的图。
图9是表示对分检索电路所含的比较电路的构成的图。
图10是表示第二数据库的内部数据的例子的图。
图11是表示第二数据库的内部数据的另一个例子的图。
图12是表示用于URL过滤的数据包处理电路的内部构成的图。
图13(a)是表示病毒网站清单的内部数据的例子的图,图13(b)是表示白清单的内部数据的例子的图,图13(c)是表示黑清单的内部数据的例子的图。
图14是表示公共类别清单的内部数据的例子的图。
图15(a)、(b)、(c)、(d)是表示第二数据库的内部数据的例子的图。
图16是表示病毒网站清单、白清单、黑清单以及公共类别清单的优先顺序的图。
图17是表示涉及实施方式的通信控制系统的构成的图。
图18是表示涉及实施方式的通信控制装置的构成的图。
图19是表示设置在操作监视服务器的管理表的内部数据例子的图。
图20是表示用于说明通信控制装置发生故障时操作方法的图。
图21(a)、(b)、(c)表示用于说明更新通信控制装置的数据库的方法的图。
图22表示用于通过多个通信控制装置处理数据包所设置的通信路径控制装置的构成图。
符号说明
10通信控制装置、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的现有通信控制装置不同,由于没有多余的功能,因此降低了安全漏洞等发生的可能性,对于恶意第三者通过网络的攻击具有优良的抵抗性。
图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等。
上述用于比较的数据可以用同样的压缩逻辑进行压缩。在进行比较时,如果比较源数据与比较目标数据用同样的方式压缩,则可以像通常一样进行比较。由此,比较时可以减少载入的数据量。如果载入的数据量变少,则从存储器读出数据所需的时间就会缩短,全部的处理时间也可以缩短。此外,由于可以削减比较器的数量,因而有助于装置的小型化、轻型化、低成本化。用于比较的数据可以用压缩的形式储存,也可以在从存储器读出后,在比较之前进行压缩。
作为上述的数据处理装置,可以考虑以下的方式。
[方式1]
一种数据处理装置,其特征在于,包括:
第一存储部,存储基准数据以作为决定的基准,来决定对获取的数据执行的处理内容;
检索部,通过对所述数据和所述基准数据进行比较,检索所述数据中是否包含所述基准数据;
第二存储部,将所述检索部的检索结果与所述处理的内容对应地存储;
处理部,根据所述检索结果,对所述数据执行与所述检索结果进行关联对应的处理,
所述检索部由布线逻辑电路构成。
[方式2]
在上述方式1的数据处理装置中,所述布线逻辑电路包括:多个第一比较电路,以位为单位对所述数据和所述基准数据进行比较。
[方式3]
在上述方式1的数据处理装置中,所述检索部包括:位置检测电路,从所述数据中检测应与所述基准数据进行比较的比较对象数据的位置。
[方式4]
在上述方式3的数据处理装置中,所述位置检测电路包括:对所述数据和用于确定所述比较对象数据位置的位置确定数据进行比较的多个第二比较电路,所述数据每错开预定数据长度的位输入到所述多个第二比较电路,并与所述位置确定数据同时并行地进行比较。
[方式5]
在上述方式1至方式2任一项的数据处理装置中,所述检索部包括:对分检索电路,通过对分检索对所述数据中是否包含所述基准数据进行检索。
[方式6]
在上述方式5的数据处理装置中,所述基准数据的数据数比所述第一存储部所能保持的数据数少时,从所述第一存储部的最后数据位置开始降序储存所述基准数据,并将0储存到剩余的数据中。
[方式7]
在上述方式1至方式6任一项的数据处理装置中,所述检索部包括:判断电路,当所述第一存储部所存储的多个基准数据分成3个以上的范围时,判断应与所述基准数据进行比较的对象数据属于这些范围中的哪一个。
[方式8]
在上述方式7的数据处理装置中,所述判断电路包括:对作为所述范围的边界的基准数据和所述比较对象数据进行比较的多个第三比较电路,由所述多个第三比较电路同时并行地对所述比较对象数据属于所述3个以上范围中的哪一个进行判断。
[方式9]
在上述方式7或方式8的数据处理装置中,根据所述数据中的所述基准数据的出现频率的分布来设定所述范围。
[方式10]
在上述方式1至方式9中任一方式的数据处理装置中,所述第一存储部还存储有表示所述数据中的比较对象数据位置的信息,所述检索部基于表示所述位置的信息提取所述比较对象数据。
[方式11]
在上述方式1至方式10中任一方式的数据处理装置中,所述第一存储部或者所述第二存储部被设置为能够从外部进行重写。
接下来,对使用上述通信控制装置10的URL过滤技术进行说明。
图12示出了用于URL过滤的数据包处理电路20的内部结构。数据包处理电路20包括作为第一数据库50的用户数据库57、病毒网站清单161、白清单162、黑清单163以及公共类别清单164。用户数据库57储存使用通信控制装置10的用户的信息。通信控制装置10从用户接收识别用户的信息,将检索电路30接收的信息与用户数据库57进行匹配来对用户进行认证。作为识别用户的信息,可以使用TCP/IP数据包的IP报头中储存的源地址,也可以从用户接收用户ID和口令。在前者的情况下,由于数据包中的源地址的储存位置已经确定了,因此在检索电路30中与用户数据库57进行匹配时,没有必要通过位置检索电路32检测位置,以偏移量51的方式来指定源地址的储存位置就可以了。当认证了是登记在用户数据库57中的用户时,接着参照病毒网站清单161、白清单162、黑清单163以及公共类别清单164对内容的URL进行核对,以判断对内容的访问是否许可。由于白清单162和黑清单163按每个用户设置,因此当用户被认证并唯一地确定了用户ID时,将该用户的白清单162和黑清单163提供给检索电路30。
病毒网站清单161储存包含计算机病毒的内容的URL清单。对储存在病毒网站清单161中的URL的内容的访问请求将被拒绝。白清单162是对每个用户设定的,储存了允许访问内容的URL清单。黑清单163也是对每个用户设定的,储存了禁止访问内容的URL清单。图13(a)示出了病毒网站清单161内部数据的例子,图13(b)示出了白清单162内部数据的例子,图13(c)示出了黑清单163内部数据的例子。在病毒网站清单161、白清单162和黑清单163中,分别设有类别号栏165、URL栏166和标题栏167。在URL栏166中储存允许访问或者禁止访问内容的URL。在类别栏165中储存内容的类别号。标题栏167中储存内容的标题。
公共类别清单164中储存用于将URL所示的内容按多个类别分类的清单。图14示出了公共类别清单164内部数据的例子。在公共类别清单164中也设有类别号栏165、URL栏166和标题栏167。
通信控制装置10在从“GET”请求消息中提取URL后,通过检索电路30来检索该URL是否包含在病毒网站清单161、白清单162、黑清单163或公共类别清单164中。此时,例如,可以由位置检测电路32检测“http://”的字符串,并提取该字符串后续的数据串作为对象数据。提取的URL通过索引电路34及对分检索电路36与病毒网站清单161、白清单162、黑清单163以及公共类别清单164的基准数据进行比对。
图15(a)、(b)、(c)及(d)示出了用于URL过滤的第二数据库60的内部数据的例子。图15(a)示出了对病毒网站清单161的检索结果和处理内容。当“GET”请求中包含的URL与病毒网站清单161中包含的URL一致时,对该URL的访问将被禁止。图15(b)示出了对白清单162的检索结果和处理内容。当“GET”请求中包含的URL与白清单162中包含的URL一致时,对该URL的访问将被许可。图15(c)示出了对黑清单163的检索结果和处理内容。当“GET”请求中包含的URL与黑清单163中包含的URL一致时,对该URL的访问将被禁止。
图15(d)示出了对公共类别清单164的检索结果和处理内容。如图15(d)所示,对于对公共类别清单164的检索结果,用户可以按各个类别对属于该类别的内容的访问是许可还是禁止分别进行设定。在与公共类别清单164有关的第二数据库60中,设置有用户ID栏168及类别栏169。在用户ID栏168中储存有用于识别用户的ID。在类别栏169中,对于被分为57种的各个类别,储存有表示用户对属于某类别的内容的访问是许可还是禁止的信息。当“GET”请求中包含的URL与公共类别清单164中包含的URL一致时,根据该URL的类别和用户ID,将判断对该URL的访问是否许可。此外,在图15(d)中,公共类别的个数是57,但也可以是其他个数。
图16示出了病毒网站清单161、白清单162、黑清单163以及公共类别清单164的优先级。在前提技术中,优先级的高低是按照病毒网站清单161、白清单162、黑清单163、公共类别清单164的顺序,例如,即使是白清单162中储存的允许访问内容的URL,如果该URL储存在病毒网站清单161中,则也将作为含有计算机病毒的内容而被禁止访问。
以往,当使用软件来进行考虑了这样的优先级的匹配时,例如可以采用以下方法之一:从优先级高的清单开始依次进行比对并采用最初命中者,或者从优先级低的清单开始依次进行比对并用后命中的替换先命中的。但是,在前提技术中,通过使用由专用的硬件电路构成的通信控制装置10,设置有进行病毒网站清单161比对的检索电路30a、进行白清单162比对的检索电路30b、进行黑清单163比对的检索电路30c和进行公共类别清单164比对的检索电路30d,在各检索电路30中同时并行地进行匹配。其次,在多个清单中都有命中的情况下,采用优先级最高的。由此,即使在设有多个数据库时,在对其设定了优先级的情况下,也可以大幅度缩短检索时间。
例如,可以在第二数据库60中设定病毒网站清单161、白清单162、黑清单163以及公共类别清单164的优先级,用于确定是否允许进行上述访问。根据哪个清单被设定为优先,可以对第二数据库60的条件进行修改。
当对内容的访问被许可时,处理执行电路40向消息输出服务器130输出用于通知该情况的信号。消息输出服务器130向保持有该内容的服务器发送“GET”请求消息。当对内容的访问被禁止时,处理执行电路40向消息输出服务器130输出用于通知该情况的信号,而消息输出服务器130不向访问目标的服务器发送“GET”请求消息而是将其废弃。此时,也可以将访问被禁止的响应消息发送给请求源。此外,也可以强制地转送到其他网页。这时,处理执行电路40将目的地址和URL更换为转送目标的目的地址和URL并发送“GET”请求消息。响应消息和转送目标的URL等信息也可以储存在第二数据库60等中。
通过以上的构成及操作,可以禁止对不适当的内容进行访问。此外,由于检索电路30是由FPGA等构成的专用硬件电路,因此,如上所述,可以实现高速的检索处理,并将对通信量的影响抑制到最小限度,而且可以执行过滤处理。因特网服务提供商等通过提供这样的过滤服务,可以提高附加价值,获取更多的用户。
白清单162或者黑清单163也可以设为对所有的用户共享。
(实施方式)
接下来,对通信控制系统100中设置多个通信控制装置10时的操作技术进行说明。例如,在上述的通过URL进行滤波控制的通信控制装置10中,假定用于储存数据库的RAM(Random Access Memory)等存储装置具有可容纳10万用户所对应的数据的容量。此时,如果通信控制装置10的用户超过10万人时,按以往技术,需要更换为设置有可容纳10万人以上的用户数据的存储装置的通信控制装置10。但是,根据本实施方式,设置多个通信控制装置,并在这些通信控制装置的存储装置中将白清单和黑清单等数据库分开来保持,通过它们的协同操作,可以实现1台大规模通信控制装置10的功能。因此,即使用户数超过了通信控制装置10的容量,通过新增加通信控制装置,可以适应用户的增加。这样,本实施方式中提出对具有通用性和高灵活性的通信控制系统10的操作技术方案。根据该技术,可以降低随着用户的增加而变更系统所需的工时和费用,同时,没有必要在最初就考虑到用户的增加而构筑大规模的系统,根据用户数量就可以设置适当的通信控制系统,因此能够控制最初的投资。
图17示出了涉及实施方式通信控制系统100的构成。在本实施方式的通信控制系统100中,设置有多个通信控制装置10a、10b、10c、…,并使它们协同操作,实现前提技术中说明的通信控制装置10的功能。其他的构成以及操作与图1所示的前提技术的通信控制装置100相同。
在本实施方式的通信控制系统100中,设置比用于将数据包处理所需的数据库中的至少一部分分开保持所需的台数至少多一台的通信控制装置。例如,对于上述的例子,当用户数在30万以上和不超过40万的场合,操作所需的通信控制装置的台数是4台,另外可设置一台以上的通信控制装置作为当某个通信控制装置发生故障时替代操作的待机用机,因此总计最少设置5台通信控制装置。在现有技术中,为了容错,需要对系统整体实行双机化,根据本实施方式的技术,只要冗余设置分开的通信控制装置10,就能够降低成本。这样多个通信控制装置10a、10b、10c、…的操作状况由操作监视服务器110管理。本实施方式的操作监视服务器110包含用于管理通信控制装置的操作状况的管理表。
图18示出了涉及本实施方式的通信控制装置10的构成。关于图18的构成,检索电路30及处理执行电路40相当于本发明的数据处理单元,保持第一数据库50及第二数据库60的构成相当于数据保持单元。在图18所示的例子中,每个通信控制装置10a、10b、10c中设置有数据保持单元以及与其对应的数据处理单元,这些通信控制装置也可以集中设置在一个装置内。此外,上述构成也可以是一个数据处理单元参照多个数据保持单元所保持的数据库来进行数据处理。此外,数据保持单元可以相当于RAM等存储装置,也可以相当于存储装置内部的一部分区域,多个存储装置也可以相当于一个数据保持单元。
在通信控制装置10的用于数据包处理的数据库中,第一数据库50的白清单162(图13(b))、黑清单163(图13(c))以及第二数据库60储存的对于每个用户确定可否访问的公共类别清单部分(图15(d))需要与用户数成比例的大容量。因此,将这些数据库分开保持在通信控制装置10a、10b、10c、…的数据保持单元中。也就是说,白清单162、黑清单163相当于本发明的第二数据库。病毒网站清单161(图13(a))及公共类别清单164(图14)由所有用户共同使用并且没有多大的容量,故共同保持在所有通信控制装置10a、10b、10c、…的数据保持单元中。
如下面所述,在本实施方式的通信控制装置100中,将要处理的通信数据包提供给操作中的所有通信控制装置10a、10b、10c、…,各个通信控制装置对提供的数据包是否处理进行判断。只有担任该数据包处理的通信控制装置(即保持有发送该数据包的用户的数据的通信控制装置)才对数据包进行处理,其他的通信控制装置将该数据包废弃。为此,用户数据库57是必须的,用户数据库57储存的数据用于判断是哪个通信控制装置应处理数据包,如果没有的话将无法处理数据包。也就是说,用户数据库57相当于本发明的第一数据库。
本实施方式中,在所有的通信控制装置10a、10b、10c、…中保持储存所有用户数据的用户数据库57。通信控制装置在得到操作监视服务器110通知的自己所应负责的用户的用户ID范围后,使用用户数据库57中被通知范围的用户ID的数据进行用户认证,判断是否处理接收的数据包。
图19示出了设在操作监视服务器110中的管理表111的内部数据的例子。在管理表111中设有装置ID栏112、操作状况栏113、用户ID栏114。在装置ID栏112中储存通信控制装置10a、10b、…的装置ID,在操作状况栏113中储存该通信控制装置的操作状况,在用户ID栏114中储存该通信控制装置应负责的用户的ID范围。操作状况例如有“操作中”、“待机中”、“故障中”、“数据更新中”等。在每次通信控制装置10a、10b、…的操作状况发生变化时,都由操作监视服务器110来更新操作状况栏113。在图19所示的例子中,由于有“465183”名用户在使用通信控制系统100,装置ID为“1”~“5”的5台通信控制装置10在操作中,装置ID为“6”的通信控制装置10处于待机状态。
操作监视服务器110监视多个通信控制装置10操作状况,在检测到某一个通信控制装置10发生了问题而处于不能操作的状态时,在将与停止的通信控制装置10相同的数据储存在处于待机状态的通信控制装置10中后,将该通信控制装置10切换为操作。例如,如图20所示,在装置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来负责,要向该待机中的通信控制装置10通知用户ID的范围。因此,可以使待机中的通信控制装置10立即投入操作,使得数据包不被处理的情况被限制在最小限度。
如果把白清单162和黑清单163等数据库完全储存到待机中的通信控制装置10后才开始切换的话,数据库的存储要花时间,有可能使数据包不被处理的情况长时间持续,因此,可以在只储存有用户数据库57的状态下将待机中的通信控制装置10切换为操作。由此,虽然不能提供完全的URL过滤服务,但是可以避免数据包不被处理的情况。而没有被储存的数据库可以在维护时或者后述的数据库更新时等储存。病毒网站清单161以及公共类别清单164等共同使用的数据库也可以预先储存到待机中的通信控制装置10中。这样,当操作切换后,可以提供拒绝访问储存在病毒网站清单161中的URL等一部分服务。
接下来,对更新通信控制装置10中包含的数据库的步骤进行说明。数据库服务器150在预定的时机从URL数据库160获取最新数据库并保持。此外,随着用户的新注册或者退出来更新和保持用户数据库。操作监视服务器110为了在预定的时机使数据库服务器150所保持的最新数据反映到通信控制装置10,由数据库服务器150向通信控制装置10传送数据并使其储存该数据。
图21(a)、(b)、(c)是用于说明更新数据库的情形的图。图21(a)与图19同样,装置ID为“1”~“5”的通信控制装置10处于操作中,装置ID为“6”的通信控制装置10处于待机中的状态。操作监视服务器110在更新数据库的时机到来时,确定处于待机中的通信控制装置10后,向数据库服务器150发出对该通信控制装置10储存数据的指示。在图21(a)的例子中,由于装置ID为“6”的通信控制装置10处于待机中,数据库服务器150将向该通信控制装置10储存数据。此时,操作监视服务器110将装置ID为“6”的操作状况栏113变更为“数据更新中”。
图21(b)示出了通信控制装置10的数据库是更新中的状态。数据库服务器150将操作中的通信控制装置10的其中某一个所负责的用户的数据储存到待机中的装置ID为“6”的通信控制装置10的用户数据库57中。同时,也储存病毒网站清单161、白清单162、黑清单163、公共类别清单164以及第二数据库60的数据。在图21(b)的例子中,装置ID为“1”的通信控制装置10所负责的用户ID为“000001~100000”的用户数据储存在装置ID为“6”的通信控制装置10中。
图21(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对该数据包不作处理。下面对实现这种结构的技术进行说明。
图22示出了通过多个通信控制装置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的比对处理,从而判断是否为要由自己处理的数据包。在图22示出的例子中,由于发出数据包的用户数据存在于通信控制装置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中预先准备有回信路径,所以不用记录路径,即不对数据包进行加工而在装置之间进行通信。这样,可以省去不必要的处理,从而提高处理速度。
在图22的例子中,描述了只在将用户发出的包含有内容获取要求的数据包向保持有内容的服务器发送时才处理数据包、而对保持有内容的服务器向用户发送的数据包则不作处理而使其通过。然而,通信控制装置10也可以对双方向的数据包进行处理。而且,也可以不设置由开关230至开关210的旁路路径。
这样,即使未预先确定多个通信控制装置之中应处理数据包的通信控制装置,通过对所有的通信控制装置并行传播相同的数据包,能够使应处理数据包的通信控制装置适当地处理该数据包。
以上,通过上述实施方式对本发明进行了说明。本领域的技术人员应该理解,这些实施方式仅为示例,本发明还存在对各构成元素或各处理过程进行组合的各种各样的变形实施例,这些变形实施例也包含在本发明的范围内。
在上述实施方式中,虽然对多台通信控制装置中的每一个设置有数据处理单元和数据保持单元的通信控制系统进行了说明,本发明的技术同样可以适用于一台数据处理装置内部包含多个数据保持单元的场合。此外,在一个数据处理单元参照多个数据保持单元所保持的数据库处理数据的场合,也同样可以适用本发明。此外,也可以设置两个以上的待机的数据保持单元。
产业上的可利用性
本发明可以适用于包含多个数据库的数据处理系统。
Claims (13)
1.数据处理系统,包括:
数据处理单元,处理获取的数据;
多个数据保持单元,储存处理所述数据所使用的数据库,
其特征在于,
所述多个数据保持单元共同保持第一数据库,并将第二数据库分开而分别保持,
所述数据处理系统还包括至少一个能够保持所述第一数据库和被分开的所述第二数据库的数据保持单元。
2.根据权利要求1所述的数据处理系统,其特征在于,在所述第一数据库中,储存有用于对要使用被分开的第二数据库中的哪个来处理所述数据进行判断的数据。
3.根据权利要求1或2所述的数据处理系统,其特征在于,还包括管理所述多个数据保持单元的操作状况的操作管理单元,
所述操作管理单元使用于将所述第二数据库分开和保持所需要个数的数据保持单元操作,并使除此以外的数据保持单元待机,以及
在所述数据保持单元中所保持的数据库被更新时,所述操作管理单元将操作中的数据保持单元中之一所保持的数据库的更新数据储存到待机中的数据保持单元后,从保持更新前数据库的所述数据保持单元的操作切换至保持更新后数据库的所述数据保持单元的操作。
4.根据权利要求3所述的数据处理系统,其特征在于,所述操作管理单元在检测到操作中的数据保持单元处于不能操作的状态时,将该数据保持单元所保持的数据库保持到待机中的数据保持单元中,并将待机中的数据保持单元切换为操作状态。
5.根据权利要求3或4所述的数据处理系统,其特征在于,将所述第一数据库预先储存在所述待机中的数据保持单元中。
6.根据权利要求3至5的任意一项所述的数据处理系统,其特征在于,设置有与所述多个数据保持单元分别相对应的多个所述数据处理单元,
所述数据处理系统还包括数据提供单元,其向所述多个数据处理单元并行提供所获取的数据。
7.根据权利要求6所述的数据处理系统,其特征在于,所述数据提供单元将获取的数据原样地并行提供给所述多个数据处理单元而不做任何加工。
8.根据权利要求6或7所述的数据处理系统,其特征在于,所述多个数据处理单元在从所述数据提供单元获取数据时,参照对应的所述数据保持单元所保持的数据库,来判断所获取的数据是否为自己应处理的数据。
9.根据权利要求8所述的数据处理系统,其特征在于,所述数据处理单元是获取数据包以控制通信的通信控制装置,在从所述数据提供单元获取数据包时,所述数据处理单元直接获取该数据包而不判断该数据包是否为发给自己的,并参照对应的所述数据保持单元所保持的数据库,来判断所获取的数据包是否为自己应处理的数据包。
10.根据权利要求所述的数据处理系统,其特征在于,所述通信控制装置不是使用所述数据包的报头部分所储存的信息,而是使用数据部分所储存的信息来判断所获取的数据包是否为自己应处理的数据包。
11.根据权利要求9或10所述的数据处理系统,其特征在于,所述通信控制装置参照对应的所述数据保持单元所保持的第一数据库,来判断所述数据包是否为自己应处理的数据包。
12.根据权利要求9至11的任意一项所述的数据处理系统,其特征在于,判断出数据包是自己应处理的数据包的数据处理单元对该数据包进行处理,判断出数据包不是自己应处理的数据包的数据处理单元将该数据包废弃。
13.根据权利要求9至12的任意一项所述的数据处理系统,其特征在于,所述数据提供单元不将获取的数据包变换为广播形式,而以单播的形式原样向所述多个通信控制装置并行提供。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2005/009246 WO2006123420A1 (ja) | 2005-05-20 | 2005-05-20 | データ処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101213528A true CN101213528A (zh) | 2008-07-02 |
CN101213528B CN101213528B (zh) | 2010-04-07 |
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 After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200580050928A Expired - Fee Related CN100590615C (zh) | 2005-05-20 | 2005-07-27 | 数据处理系统 |
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) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231199A (zh) * | 2011-06-27 | 2011-11-02 | 中国建设银行股份有限公司 | 一种交易信息异步处理的方法及装置 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2608156A1 (en) * | 2005-05-20 | 2006-11-23 | Duaxes Corporation | Data processing system |
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 |
WO2009066346A1 (ja) * | 2007-11-19 | 2009-05-28 | Duaxes Corporation | ログ出力制御装置及びログ出力制御方法 |
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 |
US9659175B2 (en) | 2012-05-09 | 2017-05-23 | 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)
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 | デジタルア−ツ株式会社 | インターネット閲覧制御方法、その方法を実施するプログラムを記録した媒体およびインターネット閲覧制御装置 |
JP3873027B2 (ja) | 2001-04-02 | 2007-01-24 | 株式会社インフォーエス | ビットストリングの検索装置および方法 |
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 | 恒生电子股份有限公司 | 离散数据集中处理系统 |
CA2608156A1 (en) * | 2005-05-20 | 2006-11-23 | Duaxes Corporation | Data processing system |
-
2005
- 2005-05-20 CA CA002608156A patent/CA2608156A1/en not_active Abandoned
- 2005-05-20 EP EP05741571A patent/EP1901172A1/en not_active Withdrawn
- 2005-05-20 WO PCT/JP2005/009246 patent/WO2006123420A1/ja active Application Filing
- 2005-05-20 JP JP2006552407A patent/JP4087427B2/ja not_active Expired - Fee Related
- 2005-05-20 CN CN2005800509256A patent/CN101213528B/zh not_active Expired - Fee Related
- 2005-05-20 US US11/914,912 patent/US20090132554A1/en not_active Abandoned
- 2005-07-27 CN CN200580050928A patent/CN100590615C/zh not_active Expired - Fee Related
- 2005-07-27 CA CA002609130A patent/CA2609130A1/en not_active Abandoned
- 2005-07-27 KR KR1020077029633A patent/KR20080021677A/ko not_active Application Discontinuation
- 2005-07-27 JP JP2006552413A patent/JP4087428B2/ja not_active Expired - Fee Related
- 2005-07-27 WO PCT/JP2005/013772 patent/WO2006123443A1/ja active Application Filing
- 2005-07-27 EP EP05767291A patent/EP1901173A1/en not_active Withdrawn
-
2006
- 2006-07-27 US US11/915,135 patent/US7865474B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231199A (zh) * | 2011-06-27 | 2011-11-02 | 中国建设银行股份有限公司 | 一种交易信息异步处理的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP4087428B2 (ja) | 2008-05-21 |
CN101213529A (zh) | 2008-07-02 |
CA2609130A1 (en) | 2006-11-23 |
JPWO2006123420A1 (ja) | 2008-12-25 |
EP1901173A1 (en) | 2008-03-19 |
WO2006123420A1 (ja) | 2006-11-23 |
WO2006123443A8 (ja) | 2007-07-05 |
CA2608156A1 (en) | 2006-11-23 |
JPWO2006123443A1 (ja) | 2008-12-25 |
JP4087427B2 (ja) | 2008-05-21 |
KR20080021677A (ko) | 2008-03-07 |
EP1901172A1 (en) | 2008-03-19 |
WO2006123443A1 (ja) | 2006-11-23 |
US20090216802A1 (en) | 2009-08-27 |
US7865474B2 (en) | 2011-01-04 |
CN100590615C (zh) | 2010-02-17 |
CN101213528B (zh) | 2010-04-07 |
US20090132554A1 (en) | 2009-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101213528B (zh) | 数据处理系统 | |
CN100580644C (zh) | 通信控制装置及通信控制系统 | |
CN100476771C (zh) | 通信控制装置 | |
CN1174302C (zh) | 用于软件代理和代理活动的验证的系统和方法 | |
US20080281716A1 (en) | Communication Control Device | |
CN102369703B (zh) | 通信流控制系统、通信流控制方法和通信流处理程序 | |
JP4571184B2 (ja) | 通信管理システム | |
CN100581144C (zh) | 邮件过滤系统和邮件过滤方法 | |
CN101589376A (zh) | 通信控制装置 | |
CN101305352A (zh) | 通信管理系统、通信管理方法及通信控制装置 | |
CN102413197A (zh) | 访问统计处理方法及装置 | |
CN106506647A (zh) | 一种客户端具有数据备份装置的智慧社区云存储系统 | |
US8019776B2 (en) | Determining device and determining method for determining processing to be performed based on acquired data | |
CN101589603B (zh) | 测试装置 | |
CN100570550C (zh) | 对分检索电路及方法 | |
JPWO2008075426A1 (ja) | 通信制御装置及び通信制御方法 | |
KR20080017046A (ko) | 데이터 프로세싱 시스템 | |
JP5156892B2 (ja) | ログ出力制御装置及びログ出力制御方法 | |
JPWO2009066347A1 (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100407 Termination date: 20160520 |