CN100580644C - 通信控制装置及通信控制系统 - Google Patents
通信控制装置及通信控制系统 Download PDFInfo
- Publication number
- CN100580644C CN100580644C CN200580049496A CN200580049496A CN100580644C CN 100580644 C CN100580644 C CN 100580644C CN 200580049496 A CN200580049496 A CN 200580049496A CN 200580049496 A CN200580049496 A CN 200580049496A CN 100580644 C CN100580644 C CN 100580644C
- Authority
- CN
- China
- Prior art keywords
- data
- communication control
- control unit
- database
- circuit
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/912—Applications of a database
- Y10S707/922—Communications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/953—Organization of data
- Y10S707/959—Network
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99939—Privileged access
Abstract
本发明提供一种实现高速的通信控制装置的技术。通信控制装置的数据包处理电路(20)包括用户数据库(57)、病毒名单(161)、白名单(162)、黑名单(163)以及公共类别名单(164)。当获取了对内容的访问请求时,通过检索电路(30)将发出该访问请求的用户信息与用户数据库57进行匹配来认证用户。当认证成功时,检索电路(30)将访问目的地内容的URL与病毒名单(161)、白名单(162)、黑名单(163)以及公共类别名单(164)进行匹配。处理执行电路(40)根据检索电路(30)的检索结果和第二数据库中贮存的判定条件对是否允许访问进行控制。数据包处理电路(20)由布线逻辑电路构成。
Description
技术领域
本发明涉及通信控制技术,特别涉及对通过网络保持在能够访问位置的内容是否许可访问进行控制的通信控制装置及通信控制系统。
背景技术
在互联网的基础设施得以完善,便携式电话终端、个人电脑、VoIP(Voice over internet Protocal:基于internet协议的语音)电话终端等通信终端得到广泛普及的今天,互联网的用户正在暴增。在这种状况下,计算机病毒、黑客(ハッキング)、垃圾邮件等与安全有关的问题变得明显化,需要有对通信进行适当控制的技术。
虽然使用因特网易于对大量的信息进行访问,但是有害信息泛滥也是事实,处于一种来不及对有害信息的出处进行限制的状态。为了对谁都可以安心且有效地使用因特网的环境进行整顿,需要有对有害的内容的访问进行适当控制的技术。
例如,准备好允许访问的网站名单、禁止访问的网站名单、禁止语关键词、有用语关键词等的数据库,当通过因特网对外部信息进行访问时,参照这些数据库来控制访问,这样的技术已经被提出了(例如,参照专利文献1)。
专利文献1:特开2001-28797号公报
发明内容
发明所要解决的课题
在实现如专利文献1所公开的通信控制的情况下,由于随着近年来通信环境的改善通信量变得庞大,因而与用于判定是否允许访问的数据库的匹配处理将限制速度,访问所花费的时间增大。为了避免这种情况,需要能够高速处理大容量数据的通信控制装置。
本发明是鉴于这样的状况而提出的,其目的在于提供一种实现高速的通信控制装置的技术。
解决课题的方法
本发明的一个方面涉及通信控制装置。该通信控制装置包括:存储部,存储基准数据,所述基准数据作为决定对保持在能够通过网络访问的位置的内容是否许可访问的基准;检索部,获取用于请求对所述内容进行访问的通信数据,检索所述数据中是否包含所述基准数据;处理部,根据所述检索结果,控制对所述内容的访问。所述检索部由布线逻辑电路构成。
通过将进行判断访问是否许可的处理的检索部设置成由布线逻辑电路构成的专用硬件电路,由此可以提高处理速度。因此,可以将对通信量的影响抑制到最小,而且可以适当地进行访问的控制。
所述检索部可以在表示所述通信数据包含的待访问内容的位置的信息中检索是否包含所述基准数据。表示内容的位置的信息例如可以是URL(Uniform Resource Locator:统一资源定位器)。
所述存储部可以包括多个贮存所述基准数据的数据库,所述检索部可以包括检索电路,所述检索电路分别对于多个所述数据库检索在所述通信数据中是否包含该数据库中贮存的所述基准数据,多个所述检索电路可以并行地执行多个所述数据库的检索。由此,可以提高检索速度。
可以对所述多个数据库设定优先级,当多个所述检索电路并行地执行多个所述数据库的检索,结果与多个数据库的基准数据一致时,可以采用优先级高的检索结果。即使在设定优先级的情况下,也可以同时并行地执行检索,从而可以提高检索速度。
所述数据库可以贮存表示许可访问的内容的位置的数据。所述数据库可以贮存有表示禁止访问的内容的位置的数据。所述数据库可以贮存有表示包含计算机病毒且访问被禁止的内容的位置的数据。所述数据库可以贮存有用户分别对于每个类别设定对属于该类别的内容的访问是许可还是禁止的数据。
本发明的另一方面涉及通信控制系统,该通信控制系统包括:上述的任一种通信控制装置;以及连接到所述通信控制装置并对所述通信控制装置的动作进行控制的服务器装置。由周边的服务器装置控制由布线逻辑电路构成的通信控制装置,可以使通信控制装置实现各种功能,可以提供柔性高的系统。
另外,作为本发明的实施方式,以上构成要素的任意组合、以及将本发明的描述在方法、装置、系统、记录介质、计算机程序等之间进行变换的方式也是有效的。
发明的效果
根据本发明,能够提供一种实现可高速处理的通信控制装置的技术。
附图说明
图1是表示实施方式涉及的通信控制系统的构成的图。
图2是表示现有的通信控制装置的构成的图。
图3是表示实施方式涉及的通信控制装置的构成的图。
图4是表示数据包处理电路的内部构成的图。
图5是表示位置检测电路的内部构成的图。
图6是表示第一数据库的内部数据的例子的图。
图7是表示第一数据库的内部数据的另一个例子的图。
图8是表示第一数据库的内部数据的又一个例子的图。
图9是表示对分检索电路所含的比较电路的构成的图。
图10是表示第二数据库的内部数据的例子的图。
图11是表示第二数据库的内部数据的另一个例子的图。
图12是表示实施方式涉及的数据包处理电路的内部构成的图。
图13(a)是表示病毒名单的内部数据的例子的图,图13(b)是表示白名单的内部数据的例子的图,图13(c)是表示黑名单的内部数据的例子的图。
图14是表示公共类别名单的内部数据的例子的图。
图15(a)、(b)、(c)、(d)是表示第二数据库的内部数据的例子的图。
图16是表示病毒名单、白名单、黑名单以及公共类别名单的优先顺序的图。
符号说明
10通信控制装置、20数据包处理电路、30检索电路、32位置检测电路、33比较电路、34索引电路、35比较电路、36对分检索电路、40处理执行电路、50第一数据库、57用户数据库、60第二数据库、100通信控制系统、110运行监视服务器、120连接管理服务器、130信息输出服务器、140日志管理服务器、150数据库服务器、160URL数据库,161病毒名单、162白名单、163黑名单、164公共类别名单。
具体实施方式
图1示出了实施方式涉及的通信控制系统的构成。通信控制系统100包括通信控制装置10和为支援通信控制装置10的动作而设置的各种外围装置。本实施方式的通信控制装置10实现由因特网服务提供商等提供的URL过滤功能。设置在网络路径上的通信控制装置10,取得对内容的访问请求,对其内容进行分析,判断对该内容的访问是否许可。当对内容的访问被许可时,通信控制装置10将该访问请求发送给保持有该内容的服务器。当对内容的访问被禁止时,通信控制装置10将废弃该访问请求,并对请求源返回警告信息等。在本实施方式中,通信控制装置10接收HTTP(HyperText Transfer Protocol:超级文本传输协议)的“GET”,请求信息等访问请求,对将要访问的内容的URL是否与用于判断访问是否许可的基准数据的名单相一致进行检索,判断对内容的访问是否许可。
外围装置包括:运行监视服务器110、连接管理服务器120、信息输出服务器130、日志管理服务器140和数据库服务器150。连接管理服务器120管理对通信控制装置10的连接。连接管理服务器120例如当通信控制装置10对由便携式电话终端送出的数据包进行处理时,使用唯一识别数据包中所含的便携式电话终端的信息来对通信控制装置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进行控制,由此,通过适当替换服务器群的软件,可以由同样的构成实现各种功能。根据本实施方式,可以提供这种柔性高的通信控制系统。
以下,首先对通信控制装置10的概要进行说明,然后对本实施方式中特有的URL过滤技术进行说明。
图2示出了现有的通信控制装置1的构成。现有的通信控制装置1包括:接收侧的通信控制部2、数据包处理部3、和发送侧的通信控制部4。通信控制部2及4分别包括:PHY处理部5a及5b,进行数据包的物理层的处理;MAC处理部6a及6b,进行数据包的MAC层的处理。数据包处理部3包括:IP处理部7,进行IP(Internet Protocal:IP协议)的协议处理;TCP处理部8等,进行TCP(Transport Control Protocal:传送控制协议)的协议处理;协议处理部,进行与协议对应的处理;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.”,将通信数据“01 No.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个基准数据被以每250个分成4个范围52a~52d。索引电路34包括对范围的边界的基准数据与对象数据进行比较的多个比较电路35a~35c。通过比较电路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示出了本实施方式的数据包处理电路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名单。对贮存在病毒名单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)示出了本实施方式的第二数据库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中同时并行进行匹配。其次,在多个名单中命中时,采用优先级最高的。由此,即使在设有多个数据库,对其设定了优先级的情况下,也可以大幅度缩短检索时间。
对病毒名单161、白名单162、黑名单163以及公共类别名单164的哪个优先进行访问是否许可的判断,例如也可以在第二数据库60中设定。根据哪个名单设定为优先,可以对第二数据库60的条件进行修改。
当对内容的访问被许可时,处理执行电路40向信息输出服务器130输出用于通知该旨意的信号。信息输出服务器130向保持有该内容的服务器发送“GET”请求信息。当对内容的访问被禁止时,处理执行电路40向信息输出服务器130输出用于通知该意思的信号,信息输出服务器130不向访问目标的服务器发送“GET”请求信息而是将其废弃。此时,也可以将访问被禁止的响应信息发送给请求源。此外,也可以强制地转送到其他网页。这时,处理执行电路40将目的地址和URL更换为转送目的地的目的地址和URL发送。响应信息和转送目的地的URL等信息也可以贮存在第二数据库60等中。
通过以上的构成及动作,可以禁止对不适当的内容进行访问。此外,由于检索电路30是由FPGA等构成的专用硬件电路,因此,如上所述,可以实现高速的检索处理,将对通信量的影响抑制到最小限度,而且可以执行过滤处理。因特网服务提供商等通过提供这样的过滤服务,可以提高附加价值,获取更多的用户。
白名单162或者黑名单163也可以设为对所有的用户共享。
以上,通过实施方式对本发明进行了说明。本领域的技术人员应该理解,实施方式仅为示例,本发明还存在对各构成元素或各处理过程进行组合的各种各样的变形实施例,这些变形实施例也包含在本发明的范围内。
产业上的可利用性
本发明可以用作对内容的访问进行控制的通信控制装置。
Claims (8)
1.通信控制装置,其特征在于,包括:
存储部,存储基准数据,所述基准数据作为决定对保持在能够通过网络访问的位置的内容是否许可访问的基准;
检索部,获取用于请求对所述内容进行访问的通信数据,检索所述数据中是否包含所述基准数据;
处理部,根据所述检索结果,控制对所述内容的访问,
所述检索部由布线逻辑电路构成,
所述存储部包括多个贮存所述基准数据的数据库,
所述检索部包括检索电路,所述检索电路分别对于多个所述数据库检索在所述通信数据中是否包含该数据库中贮存的所述基准数据,
多个所述检索电路并行地执行多个所述数据库的检索。
2.根据权利要求1所述的通信控制装置,其特征在于,所述检索部在表示所述通信数据包含的待访问内容的位置的信息中检索是否包含所述基准数据。
3.根据权利要求1所述的通信控制装置,其特征在于,对所述多个数据库设定优先级,
当多个所述检索电路并行地执行多个所述数据库的检索,出现与多于一个数据库的基准数据一致的多于一个检索结果时,采用优先级高的检索结果。
4.根据权利要求1至3中任一项所述的通信控制装置,其特征在于,所述数据库贮存表示许可访问的内容的位置的数据。
5.根据权利要求1至3中任一项所述的通信控制装置,其特征在于,所述数据库贮存有表示禁止访问的内容的位置的数据。
6.根据权利要求1至3中任一项所述的通信控制装置,其特征在于,所述数据库贮存有表示包含计算机病毒且访问被禁止的内容的位置的数据。
7.根据权利要求1至3中任一项所述的通信控制装置,其特征在于,所述数据库贮存有用户分别对于每个类别设定对属于该类别的内容的访问是许可还是禁止的数据。
8.通信控制系统,其特征在于,包括:
权利要求1至3中任一项所述的通信控制装置;以及
连接到所述通信控制装置并对所述通信控制装置的动作进行控制的服务器装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2005/005789 WO2006103743A1 (ja) | 2005-03-28 | 2005-03-28 | 通信制御装置及び通信制御システム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101167063A CN101167063A (zh) | 2008-04-23 |
CN100580644C true CN100580644C (zh) | 2010-01-13 |
Family
ID=37053016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200580049496A Expired - Fee Related CN100580644C (zh) | 2005-03-28 | 2005-03-28 | 通信控制装置及通信控制系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8073855B2 (zh) |
EP (1) | EP1868103A1 (zh) |
JP (1) | JP4554675B2 (zh) |
CN (1) | CN100580644C (zh) |
CA (1) | CA2603106A1 (zh) |
WO (1) | WO2006103743A1 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100306209A1 (en) * | 2006-07-22 | 2010-12-02 | Tien-Fu Chen | Pattern matcher and its matching method |
US9092380B1 (en) * | 2007-10-11 | 2015-07-28 | Norberto Menendez | System and method of communications with supervised interaction |
CN101325495B (zh) * | 2008-07-10 | 2012-02-01 | 成都市华为赛门铁克科技有限公司 | 一种应用于检测黑客服务器的检测方法、装置及系统 |
JP2010117874A (ja) * | 2008-11-13 | 2010-05-27 | Hitachi Ltd | Urlフィルタリングシステム |
US8719365B1 (en) * | 2009-02-12 | 2014-05-06 | Adobe Systems Incorporated | Graphic output from remote execution of applications redirected with dynamically sized virtual screen |
US8650653B2 (en) * | 2009-12-24 | 2014-02-11 | Intel Corporation | Trusted graphics rendering for safer browsing on mobile devices |
US9251282B2 (en) * | 2010-06-21 | 2016-02-02 | Rapid7 LLC | Systems and methods for determining compliance of references in a website |
WO2012044248A1 (en) * | 2010-09-28 | 2012-04-05 | Empire Technology Development Llc | Data filtering for communication devices |
CN102469117B (zh) * | 2010-11-08 | 2014-11-05 | 中国移动通信集团广东有限公司 | 一种异常访问行为的识别方法及装置 |
US8688734B1 (en) * | 2011-02-04 | 2014-04-01 | hopTo Inc. | System for and methods of controlling user access and/or visibility to directories and files of a computer |
US8667592B2 (en) * | 2011-03-15 | 2014-03-04 | Symantec Corporation | Systems and methods for looking up anti-malware metadata |
JP5723306B2 (ja) * | 2012-02-22 | 2015-05-27 | 日本電信電話株式会社 | フィルタリング装置、および、フィルタリング方法 |
JP6146829B2 (ja) * | 2012-05-02 | 2017-06-14 | ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. | ネットワークデバイスを制御するための方法と装置 |
US8856907B1 (en) | 2012-05-25 | 2014-10-07 | hopTo Inc. | System for and methods of providing single sign-on (SSO) capability in an application publishing and/or document sharing environment |
US9419848B1 (en) | 2012-05-25 | 2016-08-16 | hopTo Inc. | System for and method of providing a document sharing service in combination with remote access to document applications |
US8713658B1 (en) | 2012-05-25 | 2014-04-29 | Graphon Corporation | System for and method of providing single sign-on (SSO) capability in an application publishing environment |
US9239812B1 (en) | 2012-08-08 | 2016-01-19 | hopTo Inc. | System for and method of providing a universal I/O command translation framework in an application publishing environment |
CN102915376A (zh) * | 2012-11-13 | 2013-02-06 | 北京神州绿盟信息安全科技股份有限公司 | 检测数据库异常行为的方法和设备 |
US9367542B2 (en) | 2013-01-10 | 2016-06-14 | International Business Machines Corporation | Facilitating access to resource(s) idenfitied by reference(s) included in electronic communications |
CN104253785B (zh) * | 2013-06-25 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 危险网址识别方法、装置及系统 |
CN103368957B (zh) * | 2013-07-04 | 2017-03-15 | 北京奇虎科技有限公司 | 对网页访问行为进行处理的方法及系统、客户端、服务器 |
CN103336693B (zh) * | 2013-07-04 | 2016-06-22 | 北京奇虎科技有限公司 | refer链的创建方法、装置及安全检测设备 |
CN103581321B (zh) * | 2013-11-06 | 2017-05-31 | 北京奇虎科技有限公司 | 一种refer链的创建方法、装置及安全检测方法和客户端 |
US9467453B2 (en) | 2014-02-19 | 2016-10-11 | Qualcomm Incorporated | Network access and control for mobile devices |
CN111629038B (zh) * | 2020-05-19 | 2023-08-08 | 北京达佳互联信息技术有限公司 | 虚拟资源分享处理方法、装置、服务器及存储介质 |
US20220046036A1 (en) * | 2020-08-04 | 2022-02-10 | Oracle International Corporation | Mirage Instance of a Database Server |
CN113763137B (zh) * | 2021-11-10 | 2022-10-14 | 山东派盟网络科技有限公司 | 信息推送方法及计算机设备 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4475237A (en) | 1981-11-27 | 1984-10-02 | Tektronix, Inc. | Programmable range recognizer for a logic analyzer |
US5341479A (en) | 1989-01-31 | 1994-08-23 | Storage Technology Corporation | Address mark triggered read/write head buffer |
JPH04180425A (ja) | 1990-11-15 | 1992-06-26 | Toshiba Corp | 通信システム |
US5802065A (en) | 1995-10-23 | 1998-09-01 | Kawasaki Steel Corporation | Data receiving device |
JP3491724B2 (ja) | 1995-10-23 | 2004-01-26 | 川崎マイクロエレクトロニクス株式会社 | データ受信装置 |
US5956336A (en) | 1996-09-27 | 1999-09-21 | Motorola, Inc. | Apparatus and method for concurrent search content addressable memory circuit |
US5951651A (en) * | 1997-07-23 | 1999-09-14 | Lucent Technologies Inc. | Packet filter system using BITMAP vector of filter rules for routing packet through network |
US6341130B1 (en) * | 1998-02-09 | 2002-01-22 | Lucent Technologies, Inc. | Packet classification method and apparatus employing two fields |
US6185552B1 (en) | 1998-03-19 | 2001-02-06 | 3Com Corporation | Method and apparatus using a binary search engine for searching and maintaining a distributed data structure |
US6236678B1 (en) | 1998-10-30 | 2001-05-22 | Broadcom Corporation | Method and apparatus for converting between byte lengths and burdened burst lengths in a high speed cable modem |
US6631466B1 (en) | 1998-12-31 | 2003-10-07 | Pmc-Sierra | Parallel string pattern searches in respective ones of array of nanocomputers |
JP2000250737A (ja) | 1999-03-01 | 2000-09-14 | Kawasaki Steel Corp | 半導体集積回路 |
US6278995B1 (en) * | 1999-03-02 | 2001-08-21 | Nms Communications Corporation | Apparatus and method for providing a binary range tree search |
JP2001168911A (ja) | 1999-12-09 | 2001-06-22 | Hitachi Cable Ltd | パケットフィルタ装置 |
US6697806B1 (en) * | 2000-04-24 | 2004-02-24 | Sprint Communications Company, L.P. | Access network authorization |
WO2002082750A1 (fr) * | 2001-04-02 | 2002-10-17 | Dcl Inc. | Dispositif de recherche de chaines binaires et procede associe |
JP2003280988A (ja) | 2002-03-25 | 2003-10-03 | Duaxes Corp | I/o装置の制御装置及びそのi/o制御装置を用いた制御システム |
US20040006621A1 (en) | 2002-06-27 | 2004-01-08 | Bellinson Craig Adam | Content filtering for web browsing |
JP2004140618A (ja) | 2002-10-18 | 2004-05-13 | Yokogawa Electric Corp | パケットフィルタ装置および不正アクセス検知装置 |
JP2004172917A (ja) | 2002-11-20 | 2004-06-17 | Nec Corp | パケット検索装置及びそれに用いるパケット処理検索方法並びにそのプログラム |
JP2004187201A (ja) | 2002-12-06 | 2004-07-02 | Nippon Telegr & Teleph Corp <Ntt> | データ列検索用ノード,これを用いるデータ列検索方法並びにデータ列検索処理装置 |
US20050060535A1 (en) * | 2003-09-17 | 2005-03-17 | Bartas John Alexander | Methods and apparatus for monitoring local network traffic on local network segments and resolving detected security and network management problems occurring on those segments |
US7454418B1 (en) * | 2003-11-07 | 2008-11-18 | Qiang Wang | Fast signature scan |
-
2005
- 2005-03-28 EP EP05727698A patent/EP1868103A1/en not_active Withdrawn
- 2005-03-28 US US11/910,240 patent/US8073855B2/en not_active Expired - Fee Related
- 2005-03-28 WO PCT/JP2005/005789 patent/WO2006103743A1/ja active Application Filing
- 2005-03-28 JP JP2007505311A patent/JP4554675B2/ja not_active Expired - Fee Related
- 2005-03-28 CA CA002603106A patent/CA2603106A1/en not_active Abandoned
- 2005-03-28 CN CN200580049496A patent/CN100580644C/zh not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
特开2003-280988 2003.10.03 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2006103743A1 (ja) | 2008-09-04 |
US20090132509A1 (en) | 2009-05-21 |
US8073855B2 (en) | 2011-12-06 |
WO2006103743A1 (ja) | 2006-10-05 |
JP4554675B2 (ja) | 2010-09-29 |
EP1868103A1 (en) | 2007-12-19 |
CA2603106A1 (en) | 2006-10-05 |
CN101167063A (zh) | 2008-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100580644C (zh) | 通信控制装置及通信控制系统 | |
CN100476771C (zh) | 通信控制装置 | |
CN101213528B (zh) | 数据处理系统 | |
US20080281716A1 (en) | Communication Control Device | |
US8336092B2 (en) | Communication control device and communication control system | |
CN101802837B (zh) | 通过对设备的动态地址隔离来提供网络和计算机防火墙保护的系统和方法 | |
CN107786545A (zh) | 一种网络攻击行为检测方法及终端设备 | |
CN107122221A (zh) | 用于正则表达式的编译器 | |
CN101589376A (zh) | 通信控制装置 | |
EP2023250A1 (en) | Communication management system, communication management method, and communication control device | |
EP1850234A1 (en) | Communication control device and communication control system | |
US20100138181A1 (en) | Testing apparatus | |
JP5156892B2 (ja) | ログ出力制御装置及びログ出力制御方法 | |
JPWO2009066347A1 (ja) | 負荷分散装置 | |
KR20070121806A (ko) | 통신 제어 장치 및 통신 제어 시스템 | |
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: 20100113 Termination date: 20160328 |
|
CF01 | Termination of patent right due to non-payment of annual fee |