CN101345701B - 信息处理装置及信息处理系统 - Google Patents
信息处理装置及信息处理系统 Download PDFInfo
- Publication number
- CN101345701B CN101345701B CN2007101600775A CN200710160077A CN101345701B CN 101345701 B CN101345701 B CN 101345701B CN 2007101600775 A CN2007101600775 A CN 2007101600775A CN 200710160077 A CN200710160077 A CN 200710160077A CN 101345701 B CN101345701 B CN 101345701B
- Authority
- CN
- China
- Prior art keywords
- bag
- communications status
- processing
- buffer
- packet
- 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
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
- H04L49/254—Centralised controller, i.e. arbitration or scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/45—Arrangements for providing or supporting expansion
-
- 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种动态重构处理器搭载装置,可以小型节能而且高性能地实现数据库等应用层的服务器服务。在进行每个包的重构的动态重构处理器搭载装置的动态重构处理部(102)中,设置多个PE矩阵(178、179)。并且,在包I/O(100)设置调度部(142),当PE矩阵(178)处理第一包时,调度部(142)确定通过哪个PE矩阵进行后续包的处理。在第二包需要基于和第一包相同的构成信息的处理、且第三包需要基于和第一包不同的构成信息的处理的情况下,调度部(142)使第二包待机,使第三包优先使用第二PE矩阵,直到第一包的处理结束。
Description
技术领域
本发明涉及以下技术,连接于网络并接收通过网络传送的包,根据收发包的终端和主机之间的通信状态进行不同的处理,并进行存储在装置内部的数据的变更、新的包的生成及外部发送,由此提供数据库等服务器服务。
背景技术
伴随播放通信融合与普适计算机(ubiquitous computing)的并行发展,后端(back end)/存取(access)双方的用户要求服务多样化并提高运算性能。因此,需要利用在边缘网络上分散配置的应用装置(appliance)来实现使用了普适装置(射频识别(FRID)/传感器/摄像机)的服务器服务(数据库(DB)查询处理(query transaction)、对异常通信的防护等),提高服务器服务的运算性能和响应速度。
其中所谓的“应用装置”实现对异常通信的防护和数据库的功能。
在对异常通信的防护中,检测/排除来自攻击者的异常包。
在数据库中,进行从分散配置的多个RFID/固定传感器/图像传感器大量接收的数据更新包的SQL分析、对高速缓冲存储器的数据集合/上传、高速缓存数据对服务器的自动上传。并且,进行来自便携式终端等客户端的数据请求包的SQL分析、来自高速缓冲存储器的数据的XML翻译/下载、服务器数据对高速缓冲存储器的自动下载。
传感器/RFID的利用方法因每个用户而不同。并且,通信包的内容根据传感器/RFID的类型、使用应用、设置场所和昼夜等时间而不同。另外,收发包的各个终端之间的通信状态根据TCP的拥挤/变迁状态、使用中的L(Layer)7协议、正在执行中的命令、命令的执行状态而不同。
因此,对该应用装置所要求的功能因每个用户/应用/场所/时间/执行状态而不同。并且,搭载了上述功能的应用装置需要作为小型服务器或通信装置内置端口而分散配置在边缘网络中,以便实现运算处理的高效率化。因此,要求面向该应用装置的处理器具有以小型节能方式实现包的快速运算的性能,并且具有能够根据各个终端之间的通信状态对每个包执行多种处理的灵活性。
在同时实现这种小型节能式的快速运算性能和灵活性时,以往的通用处理器和专用集成电路(ASIC)存在缺少小型节能式的快速运算性能和灵活性之一的问题。
另一方面,动态重构处理器(Dynamic Reconfigurable Processor:DRP)具有通过选通器连接多个运算元件(Processing Element:PE)的运算矩阵,在较低的动作频率下,通过处理的并行化,节能地实现较高的运算性能。另外,以最短一个时钟来变更PE的运算功能和连接,实现可以在短时间内变更搭载功能的高度灵活性。即使不提高动作频率,利用多个运算器一并执行简单的命令,或组合多个运算器执行复杂的命令等,也能提高运算矩阵核心的运算并行程度,由此节能地实现较高的运算性能。因此,DRP被认为有望作为同时要求以小型节能方式实现包的快速运算的性能、及更新算法的灵活性的面向应用装置的处理器。
在把该DRP用于提供数据库等应用层的服务的装置时,需要根据收发包的各个主机之间的通信状态(传输端口层协议的变迁/拥挤状态、正在使用的应用层协议的类型、正在执行中的命令的类型、命令的执行的进展状态(文件收发到何种程度等)),变更搭载逻辑,针对每个包进行不同的处理。搭载逻辑的变更根据运算矩阵内部的运算器组生成的重构触发器而开始。因此,认为通过在运算矩阵外部预先生成用于生成重构触发器所需的信息(收发所接收的包的各个主机之间的通信状态),并直接输入运算矩阵,可以实现搭载逻辑的迅速变更。
因此,本发明人考虑到根据终端和主机(以下统称为“终端”)之间的通信状态来重构每个包的动态重构处理器搭载装置(非专利文献1)。本装置采用不经由存储器的通信数据的直接输入输出。另外,根据在运算矩阵外部预先生成的终端之间的通信状态,变更动态重构处理器内的运算矩阵的搭载逻辑,由此实现搭载逻辑的快速变更,以小型、节能的装置,高性能地实现数据库等应用层的服务器服务。
非专利文献1:“通信状態に基づくパケツト每自己再構成を用いた動的再構成プロセツサ搭載クエリトランザクション高速化装置”(“根据通信状态重构每个包自身的动态重构处理器搭载查询处理快速装置”),信学技報(信学技报),Vol.107,no.41,RECONF2007-1,PP.1-6,2007年5月
使用图19说明上述的根据终端之间的通信状态重构每个包的动态重构处理器搭载装置的问题。
本装置由交换每个包的交换器1901、执行各种运算的动态重构处理部即动态重构处理器(DRP)1902、进行交换器1901和DRP1902之间的包输入输出控制的包I/O 1900、和存储各种数据的外部存储器1903构成。
包I/O 1900包括:分类从交换器1901接收的包的分类器1904;临时存储所分类的包的缓冲器1905、1913;从缓冲器1905读出包的包读出部1906;存储通信状态的通信状态表1910;读出通信状态的通信状态读出部1907;变更通信状态的通信状态更新部1908;写入通信状态的通信状态写入部1909;临时存储所变更的通信状态的缓冲器1911;临时存储所读出的包的缓冲器1912;和集合包的集线器1914。
从交换器1901读出的包1915通过分类器1904被分类为需要处理的包1917和不需要处理的包1918。需要处理的包1917被存储在缓冲器1905中。
在处理开始后,包读出部1906读出存储在缓冲器1905中的包1919,并传送给通信状态读出部1907和通信状态更新部1908和缓冲器1912。
通信状态读出部1907根据从包读出部1906接收的包1920中记载的发送源/目标信息,从通信状态表1910读出对应的通信状态1922,传送给通信状态更新部1908。
通信状态更新部1908根据从通信状态读出部1907接收的通信状态1948和从包读出部1906接收的包1920,变更通信状态1948。已变更的通信状态1921、1949被传送给通信状态写入部1909和缓冲器1911。
通信状态写入部1909把从通信状态更新部1908接收的已变更的通信状态1921作为新的通信状态1923写入通信状态表1910。
DRP 1902包括:内置了多个小型运算器的PE矩阵1927;通用运算器1928;构成数据高速缓冲存储器1930;作为面向外部存储器的接口的SDRAMI/F 1931;连接以上各部分的总线交换器1929。
PE矩阵1927包括:用于实施程序重构的面向程序重构中断生成PE组1934;用于实施自律重构的面向自律重构中断生成PE组1935;执行用于实施多种功能的层(Layer)2-7函数的PE组1936;和发送TCP/IP校验和(check sum)计算完成包,并通知运算结束的PE组1937。
通用运算器1928执行OS 1932和进行用于重构的处理的面向重构函数1933。
面向自律重构中断生成PE组1935从通信状态更新部1908接收已变更的通信状态1949后,根据所接收的通信状态生成面向自律重构中断1941。
构成数据高速缓冲存储器(存储缓冲器)1930根据所生成的面向自律重构中断1941,把存储在内部的构成数据传送给PE矩阵1927。
PE矩阵1927根据来自构成数据高速缓冲存储器1930的构成数据1942,重构内部的运算器的功能和布线。
面向程序重构中断生成PE组1934从通信状态更新部1908接收已变更的通信状态1949后,根据所接收的通信状态,面向通用运算器1928生成面向程序重构中断1944。另外,根据所接收的通信状态1949,把外部存储器1903内部的构成数据指针1938改写为存储有必要的构成数据的地址值1943。
OS 1932从面向程序重构中断生成PE组1934接收面向程序重构中断1944后,执行面向重构函数1933。
面向重构函数1933从构成数据指针1938读出存储有下一次使用的构成数据的地址值1946,根据所读出的地址值1946,从构成数据区域1939读出构成数据1945。另外,根据所读出的构成数据1945,把构成数据高速缓冲存储器改写为新的构成数据1947。另外,把所改写的构成数据1942传送给PE矩阵。
PE矩阵1927根据来自构成数据高速缓冲存储器1930的构成数据1942,重构内部的运算器的功能、布线。
在PE矩阵1927的重构结束后,存储在缓冲器1911中的通信状态1924和存储在缓冲器1912中的包1925被读出,并传送给执行L2-7函数的PE组1936。
执行L2-7函数的PE组1936使用通信状态1924、包1925和外部存储器1903内的OS/应用数据区域1940的数据,进行各种运算。并且,把所变更的通信状态1926发送给通信状态写入部1909,更新通信状态表1910。
在执行L2-7函数的PE组1936的运算结束后,PE组1937对新生成的包计算TCP/IP校验和,把计算完毕的包1951逐一发送给集线器1914。在发送所有的包后,向包读出部1906发送运算结束通知1950。
集线器1914集合来自PE矩阵1927的包1951和来自缓冲器1913的包,输出给交换器1901。
包读出部1906接收运算结束通知1950,从缓冲器1905读出新的包。
根据上述方式,能够实现根据终端之间的通信状态重构每个包的动态重构处理器搭载装置。本装置采用不经由存储器的通信数据的直接输入输出。另外,根据在运算矩阵外部预先生成的主机之间的通信状态,变更动态重构处理器内的运算矩阵的搭载逻辑,由此实现搭载逻辑的快速变更,利用小型节能的装置高性能地实现数据库等应用层的服务器服务。
但是,上述根据终端之间的通信状态重构每个包的动态重构处理器搭载装置按照包的到达顺序进行运算处理。因此,将要使用的构成数据根据前后的包而不同,在进行运算处理的构成数据没有存储在构成数据高速缓冲存储器1930中的情况下,将成为高速缓冲存储器错误,产生从外部存储器1903向构成数据高速缓冲存储器1930装载构成数据的时间。由此,存在运算性能有时降低的问题。
并且,上述根据终端之间的通信状态重构每个包的动态重构处理器搭载装置只记载了DRP 1902包括一个PE矩阵1927的情况,没有记载具有多个PE矩阵1927的装置所需要的、向PE矩阵分配包的调度(schedule)方式。
发明内容
本发明的目的在于,提供一种可以解决上述根据终端之间的通信状态重构每个包的动态重构处理器搭载装置的问题,并提高运算效率的装置及系统。
为了达到上述目的,本发明在动态重构处理部设置多个运算(PE)矩阵,还具有将包适当地分配给这些运算矩阵的调度部,由此抑制高速缓冲存储器错误,削减构成数据的装载时间。并且,在运算处理第一包的过程中,先读出第二包的运算处理所需要的构成数据并传送,由此缩短基于构成数据的高速缓冲存储器错误的装载时间。
本发明提供一种对在终端之间收发的包进行处理的信息处理装置,在动态重构处理部设置多个运算矩阵,还具有调度部,当第一运算矩阵处理第一包时,确定在第一和第二运算矩阵中哪一方进行后续的第二和第三包的处理,在第二包需要基于和第一包相同的构成信息的处理、且第三包需要基于和第一包不同的构成信息的处理的情况下,调度部使第二包待机,使第三包优先使用第二运算矩阵,直到第一运算矩阵中的第一包的处理结束。
并且,本发明的信息处理装置也可以构成为具有:包输入输出部,包括存储收发包的终端之间的通信状态的通信状态表、和通信状态更新部,该通信状态更新部根据所接收的包的内部信息、和根据包的内部信息从通信状态表读出的通信状态的组合,进行通信状态的变更;动态重构处理部,对包进行对应于已变更的通信状态的处理,其包括存储多个构成信息的构成信息存储缓冲器、运算矩阵部和向构成信息存储缓冲器传送构成信息的运算部,该运算矩阵部分别具有可以改变功能和布线的运算器组,接收包和已变更的通信状态,根据已变更的通信状态,从构成信息存储缓冲器获取构成信息,根据所获取的构成信息重构运算器组的功能和布线;以及存储多个构成信息的存储部;该动态重构处理部的运算部在运算矩阵部进行基于第一通信状态的重构后处理第一包的期间,从存储部向构成信息存储缓冲器传送后续第二包的处理所需要的、基于第二通信状态的构成信息。
另外,本发明的信息处理系统由服务器、通过网络向服务器请求数据的终端、和信息处理装置构成,该信息处理装置接收在服务器和终端之间传送的包,执行与收发包的服务器和终端之间的通信状态对应的处理,信息处理装置具有:通信状态表,存储服务器和终端之间的通信状态;通信状态更新部,根据所接收的包的内部信息、和根据包的内部信息从通信状态表读出的通信状态的组合,进行通信状态的变更;动态重构处理部,包括具有可以改变功能和布线的运算器组的第一及第二运算矩阵、和存储多个运算矩阵的构成信息的构成信息存储缓冲器,接收包和已变更的通信状态,根据已变更的通信状态,从构成信息存储缓冲器获取构成信息,根据所获取的构成信息重构运算矩阵的运算器组的功能和布线;以及调度部,在第一运算矩阵处理第一包时,确定在第一和第二运算矩阵中哪一方进行后续的第二包的处理,在动态重构处理部中,对包执行对应已变更的通信状态的运算处理,将其处理结果经由网络发送给服务器或终端。
本发明的效果如下:
本发明可以提供一种装置,在进行基于通信状态的每个包的重构的动态重构处理器搭载装置中,能够提高运算效率,小型节能且高性能地实现数据库等应用层的服务器服务。
附图说明
图1是第一实施例的包I/O及动态重构处理器和存储器的结构方框图。
图2是第一实施例的信息处理装置的结构方框图。
图3是第一实施例的动态重构处理器的结构方框图。
图4是表示第一实施例的动态重构处理器的动作的示意图。
图5是第一实施例的应用系统的示意图。
图6是第一实施例的应用系统的示意图。
图7是第一实施例中的包数据的示意图。
图8是第一实施例中的处理中通信表的一例的示意图。
图9是第一实施例中的通信状态表的一例的示意图。
图10是第一实施例中的处理中通信状态表的一例的示意图。
图11是第一实施例中的通信状态的组合的一例的示意图。
图12是第一实施例中的通信状态的变迁的一例的示意图。
图13是第一实施例中的构成数据的重构循环的一例的示意图。
图14A是第一实施例中的构成数据目的地读出/装载时的流程图。
图14B是第一实施例中向缓冲器传送已变更的通信状态和包时的流程图。
图15是表示第一实施例中的TCP通信控制的序列图。
图16是表示第一实施例中向装置和前端终端下载服务器文件的序列图。
图17是表示第一实施例中的项目数据的登记/更新/选择/删除的序列图。
图18是表示第一实施例中向服务器上传项目数据的序列图。
图19是作为本发明的前提的、根据通信状态重构每个包自身的动态重构处理器搭载装置的结构方框图。
符号说明
200装置;100包I/O;102动态重构处理器;103存储器;501前端网络;502边缘网络;503后端系统。
具体实施方式
以下,使用附图说明本发明的实施方式。
【实施例1】
首先,说明第一实施例的信息处理装置。图2是实施例1的信息处理装置的结构方框图。
信息处理装置200包括作为动态重构处理部的动态重构处理器(DRP)102、包输入输出部(包I/O)100、作为存储部的存储器103、网络I/F-i(i=1~N)203(203-1~203-N)、通信线路连接部204(204-1~204-N)和交换器101。
本装置200连接于网络,把经由网络I/F 203从网络接收的(210-1~210-N)包传送给包I/O 100或其他网络I/F 203。另外,把来自包I/O 100和网络I/F 203的包经由网络I/F 203发送给网络(209-1~209-N)。
图3是装置200搭载的动态重构处理器(DRP)102的具体结构方框图。
动态重构处理器102包括:RISC处理器等通用运算器180;分别搭载了可以改变功能及彼此的布线的小型运算器的多个运算矩阵(PE矩阵#1、2)178、179;总线交换器193;对应于运算矩阵178、179的构成数据高速缓冲存储器(#1、2)195、196;PCI总线连接用的PCI I/F 302;外部存储器存取用的SDRAM I/F 194;DMA传送用的DMA控制器304;用于与其他接口连接的其他I/F 305。另外,在本实施例中,示例说明了运算矩阵(PE矩阵#1、2)和构成数据高速缓冲存储器(#1、2)为两个的情况,但也可以是3个以上。此外,有时把运算矩阵(PE矩阵#1、2)称为运算矩阵部。
图4是表示动态重构处理器102搭载的运算矩阵178、179按照每个处理内容401~403变更搭载逻辑404~406的示例。
运算矩阵178、179搭载有多个可以改变功能及彼此的布线的小型运算器,按照处理内容401~403重构每个小型运算器的功能和布线,由此变更搭载逻辑404~406。由此,实现基于并行运算的快速运算性能、和可以在短时间内变更搭载逻辑的高度灵活性。
图5表示在网络上使用本实施例的信息处理装置200的示例。
本装置200配置在前端网络501和后端系统503之间的边缘网络502中。在后端系统503中配置有作为后端终端的服务器504和存储器系统505,服务器504处理的数据存储在存储器系统505中(522)。
本装置200从RFID/固定传感器/图像传感器等前端终端接收数据更新包508、509、510后,根据包中记载的HTTP/SQL命令等,进行存储在装置内部的数据的变更,以HTML/XML等格式返回更新结果通知和动作指示包511、512、513。在从便携式终端等接收到数据请求包514后,根据包中记载的HTTP/SQL命令等,进行存储在装置内部的数据的检索,以HTML/XML等格式返回请求数据返回包515。并且,在从攻击者接收到异常包516时,判定为异常通信,不发送给服务器504(517)并将其废弃(507)。另外,对存储在装置内部的数据进行向服务器的上传518、520和来自服务器的下载519、521,经常将存储数据保持为最新状态。
图6是表示在后端系统中使用本实施例的信息处理装置200的示例。
本装置200配置在后端系统603内的服务器前级上、或者内置有服务器(602)。在内置服务器时,在装置200的交换器101上连接服务器212。
下面,说明本实施例的信息处理装置200的动态重构处理器102和包I/O 100和存储器103的动作。
图1是本实施例的动态重构处理器102、包I/O 100和存储器103的一个具体示例的具体结构方框图。
包I/O 100包括:执行是否是应该处理的包的判定和应该处理的包的分类的分类器104;存储已分类的包的包缓冲器#1~4(109、110、111、112);从包缓冲器#0~4读出包的包读出部119;存储正在处理的包数的处理中包数120;判定是否是正在处理的通信的通信重复判定部123;存储正在处理的通信的处理中通信表124;当是正在处理的通信时再次存储所读出的包的包缓冲器#0(113);将正在处理的通信记录在处理中通信表124中的处理中通信记录部128;进行通信状态的存储的通信状态表132;通信状态读出部131;通信状态更新部136;通信状态写入部138;存储与正在处理的包相对应的通信状态的处理中通信状态表143;根据与正在处理的包相对应的通信状态进行包的调度的调度部142;临时存储所调度的包和对应于包的通信状态的包缓冲器151、153;通信状态缓冲器150、152;按合适的定时面向运算矩阵(# 1、2)178、179传送通信状态和包的数据读出部(#1、2)158、159;临时存储来自PE矩阵(#1、2)178、179的输出包的输出包缓冲器170、171;集合包并输出的集线器175。
动态重构处理器102如上面所述,包括通用运算器180、搭载了多个可以改变功能和彼此的布线的小型运算器的运算矩阵(#1、2)178、179、构成数据高速缓冲存储器(#1、2)195、196、总线交换器193、和外部存储器存取用的SDRAM I/F 194。
外部存储器103具有:构成数据区域103-2,存储未能在构成数据高速缓冲存储器(#1、2)195、196中存储的构成信息;构成数据指针a,b,c,d103-1,记载构成数据区域103-2内的对构成数据的地址指针;和OS/应用数据区域103-3。
通用运算器180执行OS 182,在接收到运算矩阵(#1、2)178、179生成的重构触发器后,调出面向重构函数181。所调出的面向重构函数181从构成数据区域103-2读出构成数据,并进行向构成数据高速缓冲存储器(#1、2)195、196的装载和向运算矩阵的传送。
运算矩阵(#1、2)178、179包括:面向自律重构中断生成PE组178-2、179-2,根据通信状态生成面向自律重构中断185、188;面向程序重构中断生成PE组178-1、179-1,生成面向程序重构中断183、186;L2-7函数执行PE组178-3、179-3,根据通信状态和包,进行存储在存储器103中的数据的变更、新的包的生成及外部发送;PE组178-4、179-4,计算L2-7函数执行PE组178-3、179-3新生成的包的TCP/IP校验和,并发送包。
以下,具体说明包I/O、动态重构处理器、存储器103的各个部分。
包I/O 100的分类器104从交换器101接收包后(177),判定是否是应该处理的包。如果是不需要处理的包,则输出给集线器175(174)。如果是需要处理的包,则根据包的标题中记载的内容,输出给包缓冲器#1~4(109、11O、111、112)中某一方(105、106、107、108)。
图7表示分类器104从交换器101接收的包177的格式的一例。
包177包括InLine 701、OutLine 702、SMAC703、DMAC704、Proto705、SIP706、DIP707、Sport708、Dport709、TCP Flag710、PSEQ711、PACK712、OtherHeader713、各种命令714、Payload(有效载荷)715。另外,在本实施例中,把SIP706、DIP707、Sport708、Dport709统一表述为P.H.(Packet Header)716。该P.H.716表示包177的特征。
在此,InLine 701存储包输入的线路的识别序号即输入线路序号。OutLine 702存储输出包的线路的识别序号即输出线路序号。SMAC703存储数据链接层的发送源地址即发送源MAC地址。DMAC704存储目标地址即目标MAC地址。Proto705存储网络层的协议。SIP706存储目标地址、即作为发送侧终端的地址的发送源IP地址。DIP707存储目标地址、即作为接收侧终端的地址的目标IP地址。SPORT708存储TCP的发送源端口。DPORT709存储TCP的目标端口。TCP Flag710存储TCP标志。PSEQ711存储发送序列号(SEQ序号)。PACK712存储接收序列号(ACK序号)。OtherHeader713存储其他IP/TCP标题数据。各种命令714存储应用层的命令。Payload715存储包标题(Packet Header:P.H.)和各种命令之外的数据。
分类器104例如根据P.H.(Packet Header)716的内容即包的特征,将包分类,并根据分类结果输出给包缓冲器#1~4(109~112)中某一方(105~108)。
包读出部119在处理中包数120的值小于预先确定的值时,从包缓冲器#0~4(109~113)读出包。在包缓冲器#0(113)中存储有包时,优先从包缓冲器#0(113)读出包(118)。在包缓冲器#O(113)中没有存储包时,优先从过去的读出时间最早的包缓冲器#1~4(109~112)中读出包(114~117)。另外,将处理中包数120的值增大1(121)。
通信重复判定部123从包读出部119接收到包后(122),根据包中记载的P.H.716,从处理中通信表124检索对应的处理中的通信信息(125)。
图8是处理中通信表124的一例的示意图。
处理中通信表124包括与处理中的通信的数量相当的m个通信信息的表项(entry)801(801-1~801-m)。
表项801与上述的P.H.(Packet Header)相同,包括SIP802、DIP803、SPORT804和DPORT805。
SIP802记录正在处理的通信的发送源地址、即作为发送侧主机的地址的发送源IP地址。DIP803记录正在处理的通信的目标地址、即作为接收侧主机的地址的目标IP地址。SPORT804记录正在处理的通信的TCP发送源端口。DPORT805记录正在处理的通信的TCP目标端口。
通信重复判定部123判定是否存在与包中记载的P.H.716一致的正在处理的通信信息的表项801,如果存在,则向包缓冲器#0(113)传送所读出的包122(126)。如果不存在,则向处理中通信记录部128传送所读出的包122(127)。
处理中通信记录部128把从通信重复判定部123接收的包127中记载的P.H.716作为处理中的通信信息,记录在处理中通信表124中(129)。另外,把从通信重复判定部123接收的包127传送给通信状态读出部131、通信状态更新部136和调度部142(130、135、141)。
通信状态读出部131从通信状态表132读出与包中记载的P.H.716对应的通信状态(133)。在通信状态表132中不存在与包中记载的P.H.716对应的通信状态时,重新生成与包中记载的P.H.716对应的通信状态。
图9是通信状态表132的一例的示意图。
通信状态表132包括n个表项901(901-1~901-n)。
表项901包括F-IP902、F-PORT903、F-ID904、F-SEQ905、F-ACK906、F-WIN907、F-FLIGHT908、F-TIME909、F-POINTER910、F-STATE911、B-IP912、B-PORT913、B-ID914、B-SEQ915、B-ACK916、B-WIN917、B-FLIGHT918、B-TIME919、B-POINTER920、B-STATE921。
F-IP902记录前端侧终端的IP地址。B-IP912记录后端侧终端的IP地址。F-PORT903记录前端侧终端的TCP端口序号。B-PORT913记录后端侧终端的TCP端口序号。F-ID904记录已发送给前端侧终端的包的ID序号。B-ID914记录已发送给后端侧终端的包的ID序号。F-SEQ905记录与前端侧终端的发送源序列号。B-SEQ915记录与后端侧终端的发送源序列号。F-ACK906记录与前端侧终端的目标序列号。B-ACK916记录与后端侧终端的目标序列号。F-WIN907记录与前端侧终端的TCP连接的拥挤窗口大小。B-WIN917记录与后端侧终端的TCP连接的拥挤窗口大小。F-FLIGHT908记录表示已经发送给前端侧终端的数据大小的已发送窗口大小。B-FLIGHT918记录表示已经发送给后端侧终端的数据大小的已发送窗口大小。F-TIME909记录从前端侧终端接收包的最新时间。B-TIME919记录从后端侧终端接收包的最新时间。F-POINTER910记录对从前端侧终端接收的包执行各种运算的L2-7函数执行PE组178-3、179-3使用的地址指针。B-POINTER910记录对从后端侧终端接收的包执行各种运算的L2-7函数执行PE组178-3、179-3使用的地址指针。F-STATE911记录装置200与前端终端之间建立的通信的通信状态。B-STATE921记录装置200与后端终端之间建立的通信的通信状态。另外,在本实施例中,把F-IP902、B-IP912、F-PORT903和B-PORT913统一表述为T.H.(Table Header)922。
记录通信状态的F-STATE911和B-STATE921记录表示图11所示的任一种组合的一个意义的值。F-STATE911和B-STATE921记录表示以下状态的值(表示图11所示的任一种组合的一个意义的值):TCP连接的开始或停止(OPEN/CLOSE)1120,TCP连接的建立或未建立(FULL/HALF)1121,TCP连接的拥挤状态(Slow Start/Congestion Avoidance(Cong.Avoid.)/Fast Recovery)1122,应用层协议的有无及类型(HTTP/TELNET/FTP)1123,应用层协议正在执行中的命令和自变量的有无及类型(GET/POST、SELECT/INSERT/DELETE)1124,根据所述命令正在执行中的文件收发的状态(开始(Start)、未结束(Active)或结束(Passive))1125。
包I/O 100的通信状态更新部136根据从通信状态读出部131接收的通信状态134、和从处理中通信记录部128接收的包135,进行通信状态的变更。另外,把已变更的通信状态传送给通信状态写入部138和调度部140(137、140)。
通信状态写入部138把从通信状态更新部136接收的已变更的通信状态137写入通信状态表132(139)。
调度部142比较从通信状态更新部136接收的已变更的通信状态140的值、与处理中通信状态表143中记载的值,由此进行从处理中通信记录部128接收的包141的调度。
图10是处理中通信状态表143的一例的示意图。
处理中通信状态表143包括INI_POINT(#1、2)(1003、1008)、END_POINT(#1、2)(1004、1009)、CNT(#1、2)(1005、1010)、STATE#1(1002)(1002-1~1002-k)、和STATE#2(1007)(1007-1~1007-k)。
STATE#1(1002)记录在PE矩阵#1(178)、面向重构函数181中正在处理的通信状态。INI_POINT(#1)(1003)记录至STATE#1(1002)的地址指针,该STATE#1(1002)记录在PE矩阵#1(178)中正在执行运算处理的通信状态。END_POINT(#1)(1004)记录至STATE#1(1002)的地址指针,该STATE#1(1002)记录存储在通信状态缓冲器152的最末尾的通信状态。CNT(#1)(1005)记录在PE矩阵#1(178)、面向重构函数181中正在处理的通信状态的数量。
STATE # 2(1007)记录在PE矩阵#2(179)、面向重构函数181中正在处理的通信状态。INI_POINT(#2)(1008)记录至STATE#2(1007)的地址指针,该STATE#2(1007)记录在PE矩阵#2(179)中正在执行运算处理的通信状态。END_POINT(#2)(1009)记录至STATE#2(1007)的地址指针,该STATE#2(1007)记录存储在通信状态缓冲器150的最末尾的通信状态。CNT(#2)1010记录在PE矩阵#2(179)、面向重构函数181中正在处理的通信状态的数量。
图14B是调度部142从通信状态更新部136和处理中通信记录部128接收已变更的通信状态140和包141,并根据处理中通信状态表143中记载的值传送给缓冲器150~153时的流程图。
调度部142读入处理中通信状态表143(145),把从通信状态更新部136接收的已变更的通信状态140的值、与END_POINT(#1)(1004)中记载的通信状态STATE#1(1004)比较(步骤1421),并与END_POINT(#2)(1009)中记载的通信状态STATE#2(1007)比较(步骤1422)。
在已变更的通信状态140的值与END_POINT#1(1004)中记载的通信状态STATE#1(1002)一致时(步骤1421判定为“是”),把已变更的通信状态140传送给通信状态缓冲器#1(152)(148)。另外,把从处理中通信记录部128接收的包141传送给包缓冲器#1(153)(149)(步骤1424)。并且,增大END_POINT# 1(1004)。但是,在增大前的END_POINT#1(1004)中记载的通信状态为STATE#1(1002-k)时,把END_POINT#1(1004)变更为STATE#1(1002-1)的地址值(步骤1425)。另外,把已变更的END_POINT#1(1004)中记载的通信状态STATE#1(1002),变更为从通信状态更新部136接收的已变更的通信状态140记载的值(步骤1426)。
在已变更的通信状态140的值与END_POINT#2(1009)中记载的通信状态STATE#2(1007)一致时(步骤1422判定为“是”),把已变更的通信状态140传送给通信状态缓冲器#2(150)(146)。另外,把从处理中通信记录部128接收的包141传送给包缓冲器#2(151)(147)(步骤1427)。并且,增大END_POINT#2(1009)。但是,在增大前的END_POINT # 2(1009)中记载的通信状态为STATE # 2(1007-k)时,把END_POINT#2(1009)变更为STATE#2(1007-1)的地址值(步骤1428)。另外,把已变更的END_POINT#2(1009)中记载的通信状态STATE#2(1007),变更为从通信状态更新部136接收的已变更的通信状态140记载的值(步骤1429)。
在已变更的通信状态140的值与END_POINT#1(1004)表示的通信状态STATE#1(1002)和END_POINT#2(1009)表示的通信状态STATE#2(1007)不同时,比较CNT(#1)1005的值与CNT(#2)1010的值(步骤1423)。
在CNT(#1)1005的值小于CNT(#2)1010的值时(步骤1423判定为“是”),把已变更的通信状态140传送给通信状态缓冲器#1(152)(148)。另外,把从处理中通信记录部128接收的包141传送给包缓冲器#1(153)(149)(步骤1424)。并且,增大END_POINT#1(1004)。但是,在增大前的END_POINT#1(1004)中记载的通信状态为STATE#1(1002-k)时,把END_POINT #1(1004)变更为STATE#1(1002-1)的地址值(步骤1425)。另外,把已变更的END_POINT#1(1004)中记载的通信状态STATE#1(1002),变更为从通信状态更新部136接收的已变更的通信状态140记载的值(步骤1426)。
在CNT(#2)1010的值小于等于CNT(#1)1005的值时(步骤1423判定为“否”),把已变更的通信状态140传送给通信状态缓冲器#2(150)(146)。另外,把从处理中通信记录部128接收的包141传送给包缓冲器#2(151)(147)(步骤1427)。并且,增大END POINT#2(1009)。但是,在增大前的END_POINT# 2(1009)中记载的通信状态为STATE#2(1007-k)时,把END_POINT#2(1009)变更为STATE#2(1007-1)的地址值(步骤1428)。另外,把已变更的END_POINT# 2(1009)中记载的通信状态STATE#2(1007),变更为从通信状态更新部136接收的已变更的通信状态140记载的值(步骤1429)。
通过以上叙述的调度部142的处理,在第一运算矩阵处理第一包时,在第二包需要基于和第一包相同的构成信息的处理、且第三包需要基于和第一包不同的构成信息的处理的情况下,使第二包待机,使第三包优先使用第二运算矩阵,直到第一运算矩阵中的第一包的处理结束。
数据读出部(# 1、2)159、158从运算矩阵(# 1、2)178、179接收处理结束通知(165、162)时,开始从包缓冲器(# 1、2)153、151和通信状态缓冲器(# 1、2)152、150读出数据。
图14A是数据读出部(# 1、2)159、158从包缓冲器(# 1、2)153、151和通信状态缓冲器(# 1、2)152、150读出数据时的流程图。
数据读出部(# 1、2)159、158接收到处理结束通知(165、162)时,判定没有结束处理的正在运算处理或正在等待运算的包的数量是否为一个(步骤1401)。
在步骤1401,在没有结束处理的正在运算处理或正在等待运算的包的数量是一个时,判定存储在通信状态缓冲器(# 1、2)(152、150)中的通信状态的数量是否为2个以上(步骤1402)。
在步骤1402,当存储在通信状态缓冲器(#1、2)(152、150)中的通信状态的数量小于2时,判定存储在通信状态缓冲器(#1、2)(152、150)中的通信状态的数量是否为一个(步骤1403)。
在步骤1401,在没有结束处理的正在运算处理或正在等待运算的包的数量不是一个时,判定存储在通信状态缓冲器(# 1、2)(152、150)中的通信状态的数量是否为0个(步骤1404)。
在步骤1402,当存储在通信状态缓冲器(# 1、2)(152、150)中的通信状态的数量为2个以上时,从通信状态缓冲器(#1、2)152、150读出两个通信状态(156、154),并发送给PE矩阵(# 1、2)178、179(160、163)(步骤1406)。在读出后,处理没有结束的正在处理的通信状态的数量变为2。
在数据读出部(# 1、2)159、158执行步骤1406后,在DRP 102中执行步骤1410。
在步骤1410,PE矩阵(#1、2)178、179内部的PE组178-1、178-2、179-1、179-2根据所接收的第1个通信状态,生成面向自律重构中断185、188或面向程序重构中断183、186,对应于据第1个通信状态改写确定的构成数据的地址指针a,c103-1(184、187)。另外,根据所接收的第2个通信状态,生成面向程序重构中断183、186,对应于第2个通信状态改写确定的构成数据的地址指针b,d103-1(184、187)。
在生成了面向自律重构中断185、188的情况下,预先指定的构成数据被从构成数据高速缓冲存储器195、196装载到PE矩阵(#1、2)178、179中(197、198),进行重构。在重构后,对应于第1个通信状态的第1个包被从包缓冲器(#1、2)153、151读出(157、155),并传送给PE矩阵(#1、2)178、179内部的PE组178-3、179-3(161、164),进行运算处理。
在生成了面向程序重构中断183、186的情况下,0S 182接收中断183、186,调出面向重构函数181。
面向重构函数181读入构成数据指针a~d103-1(190),从构成数据区域103-2读出根据构成数据指针a,c103-1(第1个通信状态指定的)确定的构成数据(189),并装载到构成数据高速缓冲存储器195、196中(191、192)。另外,被装载到构成数据高速缓冲存储器195、196中的构成数据,又从构成数据高速缓冲存储器195、196被装载到PE矩阵(#1、2)178、179中(197、198),进行重构。在重构后,对应于第1个通信状态的第1个包被从包缓冲器(#1、2)153、151读出(157、155),并传送给PE矩阵(#1、2)178、179内部的PE组178-3、179-3(161、164),进行运算处理。
另外,面向重构函数181在PE组178-3、179-3执行第1个包的运算处理期间,从构成数据区域103-2先读出构成数据指针b,d103-1(第2个通信状态指定的)确定的构成数据(189),并装载到构成数据高速缓冲存储器195、196中(191、192)。
如上所述,步骤1410的处理结束。
在步骤1403,当存储在通信状态缓冲器(#1、2)152、150中的通信状态的数量为一个时,从通信状态缓冲器(#1、2)152、150读出一个通信状态(156、154),并向PE矩阵(#1、2)178、179发送(160、163)(步骤1407)。在读出后,处理没有结束的正在处理的通信状态的数量变为1。
在步骤1403,当存储在通信状态缓冲器(#1、2)152、150中的通信状态的数量不是一个而是0个时,或者在步骤1404,当存储在通信状态缓冲器(#1、2)152、150中的通信状态的数量为0个时,在通信状态缓冲器(#1、2)152、150中存储有通信状态后,读出通信状态(156、154),并向PE矩阵(#1、2)178、179发送(160、163)(步骤1409)。在读出后,处理没有结束的正在处理的通信状态的数量变为1。
在数据读出部(#1、2)159、158执行步骤1407或步骤1409后,在DRP 102中执行步骤1411。
在步骤1411,PE矩阵(#1、2)178、179内部的PE组178-1、178-2、179-1、179-2根据所接收的通信状态,生成面向自律重构中断185、188或面向程序重构中断183、186,根据通信状态改写确定的构成数据的地址指针a,c103-1(184、187)。
在生成了面向自律重构中断185、188的情况下,预先指定的构成数据被从构成数据高速缓冲存储器195、196装载到PE矩阵(#1、2)178、179中(197、198),进行重构。在重构后,对应于通信状态的包被从包缓冲器(#1、2)153、151读出(157、155),并传送给PE矩阵(#1、2)178、179内部的PE组178-3、179-3(161、164),进行运算处理。
在生成了面向程序重构中断183、186的情况下,0S 182接收中断183、186,调出面向重构函数181。
面向重构函数181读入构成数据指针a~d103-1(190),从构成数据区域103-2读出根据构成数据指针a,c103-1确定的构成数据(189),并装载到构成数据高速缓冲存储器195、196中(191、192)。另外,被装载到构成数据高速缓冲存储器195、196中的构成数据,又从构成数据高速缓冲存储器195、196被装载到PE矩阵(#1、2)178、179中(197、198),进行重构。在重构后,对应于通信状态的包被从包缓冲器(#1、2)153、151读出(157、155),并传送给PE矩阵(#1、2)178、179内部的PE组178-3、179-3(161、164),进行运算处理。
如上所述,步骤1411的处理结束。
在步骤1404,当存储在通信状态缓冲器(#1、2)152、150中的通信状态的数量不是0个而是1个以上时,从通信状态缓冲器(#1、2)152、150中读出一个通信状态(156、154),并向PE矩阵(# 1、2)178、179发送(160、163)(步骤1408)。在读出后,处理没有结束的正在处理的通信状态的数量变为2。
在数据读出部(#1、2)159、158的步骤1408后,在DRP 102中执行步骤1412。
在步骤1412,PE矩阵(#1、2)178、179内部的PE组178-1、178-2、179-1、179-2根据所接收的通信状态,生成面向程序重构中断183、186,根据通信状态改写确定的构成数据的地址指针b,d103-1(184、187)。
在生成了面向程序重构中断183、186的情况下,OS 182接收中断183、186,调出面向重构函数181。
面向重构函数181把在步骤1410中先读出189和装载191、192的构成数据,装载到PE矩阵(#1、2)178、179中(197、198),进行重构。在重构后,对应于以前接收的通信状态的包被从包缓冲器(#1、2)153、151读出(157、155),并传送给PE矩阵(#1、2)178、179内部的PE组178-3、179-3(161、164),进行运算处理。
另外,面向重构函数181在PE组178-3、179-3执行对应于以前接收的通信状态的包的运算处理期间,从构成数据区域103-2先读出构成数据指针b,d103-1(新接收的通信状态指定的)确定的构成数据(189),并向构成数据高速缓冲存储器195、196装载(191、192)。
如上所述,步骤1412的处理结束。
通过以上叙述的步骤1401~1412的处理,在运算矩阵运算处理第一包的期间,可以根据对应于第二包的通信状态,从外部存储器先读出第二包的运算所需要的构成信息,并传送给构成数据高速缓冲存储器。
在步骤1401~1412的处理之后,在PE组178-3、179-3进行运算处理,新的通信状态166、167被输出给通信状态写入部138。
通信状态写入部138把新的通信状态166、167写入通信状态表132(139)。
在PE组178-3、179-3的运算处理结束后,其他PE组178-4、179-4对新生成的包计算TCP/IP校验和,把计算完毕的包168、169逐一发送给包缓冲器170、171。在发送所有的包后,向数据读出部(#1、2)159、158、调度部142、处理中通信记录部128和包读出部119发送运算结束通知165、162。
调度部142接收运算结束通知165、162时,删除INI_POINT(#1、2)1003、1008指定的处理中通信状态STATE(#1、2)1002、1007,并且将INI_POINT(#1、2)1003、1008的值增大1。但是,在增大前的INI_POINT(#1、2)1003、1008中记载的通信状态为STATE(#1、2)1002-k、1007-k时,把INI_POINT(#1、2)1003、1008变更为STATE(#1、2)1002-1、1007-1的地址值。
处理中通信记录部128接收运算结束通知165、162时,删除前头表项801-1,将剩余表项801从前头表项801-1开始顺序排列。
包读出部119接收运算结束通知165、162后,将正在处理的包数120的值增大1。
最后,集线器175集合来自分类器104的包174、和从包缓冲器170、171读出的包172、173,并发送给交换器101(176)。
根据以上叙述的装置200,在根据通信状态重构每个包的动态重构处理器搭载装置中,在具有多个PE矩阵时,调度部将包适当分配给PE矩阵,由此可以抑制高速缓冲存储器错误,削减构成数据的装载时间。并且,该动态重构处理器搭载装置在运算处理第一包的过程中,先读出第二包的运算处理所需要的构成数据并传送,由此缩短基于高速缓冲存储器错误的装载时间。
图12表示通信状态表132存储的通信状态(F-STATE911、B-STATE921)的变迁的一例图。
F-STATE911根据包数据和通信状态表内的F-STATE911的值而变化。在最初阶段,F-STATE911为表示TCP连接状态的“CLOSED”(通信停止)的‘0x0000’(1201)。在接收到SYN包时(图12中的rcv SYN),F-STATE911变化为表示“SYN RCVD”(连接开始)的‘0x0001’(1202)。另外,在接收到ACK包时(图12中的rcv ACK),F-STATE911变化为表示“ESTAB”(建立通信)的‘0x0003’(1203)。
在F-STATE911变为‘0x0003’后,根据到达包的有效载荷而变化。
在包的有效载荷为HTTP协议中包括GET命令的情况下,F-STATE911变化为表示请求返回客户端要求的文件的“HTTP GET”的‘0x0007’(1204)。
在包的有效载荷为HTTP协议中包括具有自变量“/insert”的POST命令的情况下,F-STATE911变化为表示请求向数据库登记客户端发送来的项目数据的“HTTP POST INSERT”的‘0x000F’(1205)。
在包的有效载荷为HTTP协议中包括具有自变量“/select”的POST命令的情况下,F-STATE911变化为表示请求从数据库中选择项目数据的“HTTP POST SELECT”的‘0x001F’(1206)。
在包的有效载荷为HTTP协议中包括具有自变量“/check”的POST命令的情况下,F-STATE911变化为表示请求确认数据库的项目数据登记情况的“HTTP POST CHECK”的‘0x003F’(1207)。
在包的有效载荷为HTTP协议中包括具有自变量“/update”的POST命令的情况下,F-STATE911变化为表示请求更新数据库的项目数据的“HTTP POST UPDATE”的‘0x007F’(1208)。
在包的有效载荷为HTTP协议中包括具有自变量“/delete”的POST命令的情况下,F-STATE911变化为表示请求删除数据库的项目数据的“HTTP POST DELETE”的‘0x00FF’(1209)。
在包的有效载荷为HTTP协议中包括具有自变量“/UPLOAD”的GET命令的情况下,F-STATE911变化为表示请求向服务器上传数据库的项目数据的“HTTP GET UPLOAD”的‘0x00FF’(1210)。
并且,在F-STATE911变为‘0x0007’、‘0x000F’、‘0x001F’、‘0x003F’、‘0x007F’、‘0x00FF’、‘0x0107’后,根据HTTP协议的命令而要求的处理全部结束时,F-STATE911返回为‘0x0003’(1203)。另外,在具有重复ACK的包到来时,F-STATE911被加上‘0x0400’,处于附加了请求TCP拥挤控制的快速重新传输和快速恢复的“DUP”的状态(1211)。在FIN-ACK/RST-ACK包到达时,F-STATE911与此前的值无关地强制返回到“0x0000”(1201)。
B-STATE921在向高速缓冲存储器下载服务器数据、及向服务器上传存储在高速缓冲存储器中的数据库的内容时变化。
在最初阶段,B-STATE921为表示TCP连接状态的“CLOSED”(通信停止)的‘0x0000’(1212)。
在F-STATE911为‘0x0007’时,在客户端请求的文件没有存储在应用装置的存储器中的情况下,B-STATE921变化为表示“SYN SENT”(连接开始)的‘0x0001’(1213)。并且,在F-STATE911为‘0x0107’时,B-STATE921也变化为表示“SYN SENT”(连接开始)的‘0x0001’(1213)。
另外,在SYN包被从装置200发送给后端的服务器504后,在SYN-ACK包从服务器504到达时,在F-STATE911为‘0x0007’的情况下,B-STATE921变化为表示请求从服务器504向装置200下载文件的“DOWNLOAD”的‘0x000B’(1214)。在F-STATE911为‘0x0107’的情况下,B-STATE921变化为表示请求将在应用装置内的存储器中高速缓存的数据库上传给服务器的“UPLOAD”的‘0x010B’(1215)。
另外,在FIN-ACK/RST-ACK包到达时,B-STATE921与此前的值无关地强制返回到“0”。
图13表示对应于通信状态使用的构成数据根据每个包而变化的状态的、构成数据循环的一个示例图。
“Interrupt and Output Config.”(1301)经常在从包I/O向DRP输入通信状态时执行。本构成针对所有的包实施,执行生成中断的处理、和计算TCP/IP校验和并发送包的处理。另外,由于本构成的使用频率最高,所以优选一直在构成数据高速缓冲存储器中进行高速缓存。
“TCP Control Config.”(1302)特用于TCP连接控制,在通信状态的F-STATE911为‘0x0000’、‘0x0001’、‘0x0003’、‘0x04**’时使用。本构成除废弃具有异常的TCP字段序列/确认序号的包外,在通信状态为“SYN RCVD”时进行SYN-ACK包的生成,在通信状态为“CLOSED”时进行RST/FIN-ACK和ACK包的生成。另外,由于本构成的使用频率最高,所以优选一直在构成数据高速缓冲存储器中进行高速缓存。
“HTTP GET Control Config.”(1303)在通信状态的F-STATE911为‘0x0007’时使用。首先,判定客户端请求文件是否存储在高速缓冲存储器中。另外,在请求文件被高速缓存时,生成面向客户端的、包括存储在高速缓冲存储器中的请求文件的数据的包。在请求文件没有被高速缓存时,除生成要求与后端服务器连接的SYN包外,把B-STATE921设定为‘0x000B’。
“DOWNLOAD Control Config.”(1304)在通信状态的F-STATE911为‘0x000B’时使用。本构成从服务器向应用装置下载文件。
“HTTP POST/select Control Config.”(1305)在通信状态的F-STATE911为‘0x001F’时使用。本构成根据包的select命令指定的内容,从应用装置的存储器内的DB中选择项目数据,并生成由翻译为HTML/XML文本格式的项目数据构成的包。
“HTTP POST/check Control Config.”(1306)在通信状态的F-STATE911为‘0x003F’时使用。本构成判定客户端指定的项目数据是否登记在DB中,并生成通知判定结果的包。
“HTTP POST/delete Control Config.”(1307)在通信状态的F-STATE911为‘0x00FF’时使用。本构成将客户端指定的项目数据从DB中删除,并生成通知删除结果的包。
“HTTP GET/UPLOAD Control Config.”(1308)在通信状态的F-STATE911为‘0x0107’时使用。本构成将B-STATE921设定为‘0x000B’,并生成面向后端服务器的SYN包和面向客户端的通知已开始上传的包。
“UPLOAD Control Config.”(1309)在通信状态的F-STATE911为‘0x010B’时使用。本构成将存储在应用装置的存储器中的DB的内容上传给服务器。
“HTTP POST/insert Control Config.1”(1310)在通信状态的F-STATE911为‘0x000F’时使用。本构成判定从客户端插入的数据是否已经登记在DB中。根据判定结果,在从客户端插入的数据没有登记在DB中时,DRP使用“HTTP POST/insert Control Config.2”(1311)。本构成将从客户端发送的项目数据插入到应用装置的存储器内的DB中,并生成通知客户端已正确插入数据的包。另一方面,在从客户端插入的数据已登记在DB中时,DRP使用“HTTP POST/insert Control Config.3”(1312)。本构成生成输出错误短信的包。
“HTTP POST/update Control Config.1”(1313)在通信状态的F-STATE911为‘0x007F’时使用。本构成将客户端指定为上传对象的项目数据从DB中删除。然后,通过重构,切换为“HTTP POST/updateControl Config.2”(1314)并使用。本构成将客户端上传的项目数据登记在DB中。
在针对每个通信状态而不同的处理结束后,PE矩阵通过自律重构被重构为最初的构成“Interrupt and Output Config.”。
图15~图18表示装置200实现的服务器服务的序列的一个示例图。
图15表示基于“TCP Control Config.”(1302)的TCP连接控制。装置200从前端501的终端接收到面向作为后端终端的服务器504的连接请求包时(1501),返回把随机的值Y赋予给SEQ序号(1502)的SYN-ACK包(1503)。在连接请求包的发送源是伪装发送源的攻击者1500时,攻击者1500由于未能接收到SYN-ACK包,所以不知道Y的值(1504)。因此,来自攻击者1500的ACK包(1505)不具有正确的值Y+1,被判定为异常并废弃(1506)。另外,来自同一发送源的连续发送的SYN包(1507)也被废弃(1508)。装置200在接收到ACK序号为Y+1的ACK包(1509)的时间点,判定为正常通信(1510),建立TCP连接。
图16表示基于“DOWNLOAD Control Config.”(1304)的从服务器504向装置200的文件下载、和基于“HTTP GET Control Config.”(1303)的从装置200向前端终端501的文件下载。
首先,在存取终端501和装置200之间,通过TCP的3-Way-Handshake传递SYN包1601、SYN-ACK包1602、ACK包1603,建立TCP连接。然后,存取终端501利用HTTP的GET命令发送要求文件A的包1604。
装置200具有高速缓存服务器文件的文件表1607、和对每个文件记录地址指针的文件指针表1606。
在要求文件A的包1604到达后,检索文件指针表1606,判定有无高速缓存GET命令要求的文件A(1605)。
在文件A没有被高速缓存在文件表1607中时,通过使用了SYN包1608、SYN-ACK包1609和ACK包1610的TCP的3-Way-Handshake连接到服务器504。另外,发送要求文件A的包1611,按照TCP控制来下载服务器504具有的文件A(1618)(1611~1617),并记录在文件表1607中。另外,在文件指针表1606中记录文件A的名称和高速缓存了文件A的地址指针,并视为已经存储(1620)。
在文件A被高速缓存在文件表1607中时,按照TCP控制向前端终端501返回已经高速缓存在文件表中的文件A(1622)(1624~1630)。
图17表示基于“HTTP POST/insert Control Config.1-3”(1310~1312)的从前端终端504向装置200的项目数据的登记、基于“HTTP POST/select Control Config.”(1305)的装置200内的项目数据的选择、基于“HTTP POST/update Control Config.1,2”(1313、1314)的装置200内的项目数据的更新、以及基于“HTTP POST/delete ControlConfig.”(1307)的装置200内的项目数据的删除。
装置200具有对服务器的数据库的表项进行高速缓存的数据库表1713、和根据表项包括的项目记录多个指针的指针表1712。
在HTTP协议中,在带有请求由3个项目数据构成的表项登记的POST命令的包1701到达装置200时,装置200使用指针表1712判定具有登记请求的表项是否已登记在数据库表中。在没有登记时,使用3个项目数据生成多个指针,并登记在指针表1712中。另外,在数据库表1713中登记具有登记请求的表项。
在HTTP协议中,在带有请求删除具有特定的项目数据的表项的POST命令的包1702到达装置200时,从指针表1712和数据库表1713中,删除通过包括具有删除请求的项目数据的表项而生成的指针、和包括具有删除请求的项目数据的表项。
在HTTP协议中,在带有请求更新具有特定的项目数据的表项的POST命令的包1703到达装置200时,从指针表1712和数据库表1713中,删除通过包括具有更新请求的项目数据的表项而生成的指针、和包括具有更新请求的项目数据的表项。另外,把使用新的3个项目数据而生成的指针和由3个新的项目数据构成的表项,插入指针表1712和数据库表1713中。
在HTTP协议中,在带有请求选择具有特定的项目数据的表项的POST命令的包1704到达装置200时,从指针表1712和数据库表1713中选择包括具有选择请求的项目数据的表项。
在数据的登记/更新/选择/删除处理结束时,按照TCP控制,处理结果被返回给前端终端(1705~1711)。
图18表示基于“UPLOAD Control Config.”(1309)的、从装置200内的数据库表1713向服务器504的项目数据的上传。
装置200接收带有请求向服务器504中上传高速缓存在数据库表1713中的项目数据的GET命令的包1801。然后,通过使用了SYN包1812、SYN-ACK包1813和ACK包1814的TCP的3-Way-Handshake连接于服务器504。另外,发送请求上传项目数据的包1815,按照TCP控制来上传项目数据(1816-1823)。服务器504使用所上传的数据,更新数据库的内容。并且,装置200按照TCP控制把上传结果通知给存取终端504(1802-1808)。
动态重构处理器搭载装置实施以上叙述的图12和图13和图15~图18所示的处理,由此实现根据终端之间的通信状态重构每个包的多种服务器服务。
Claims (20)
1.一种对通过网络收发的包进行处理的信息处理装置,具有:
通信状态表,存储收发所述包的终端之间的通信状态;
通信状态更新部,根据所接收的所述包的内部信息、和根据所述包的所述内部信息从所述通信状态表读出的所述通信状态的组合,进行所述通信状态的变更;
动态重构处理部,包括具有功能和布线可改变的运算器组的第一及第二运算矩阵、和存储多个所述第一和第二运算矩阵的构成信息的构成信息存储缓冲器,接收所述包和已变更的所述通信状态,根据已变更的所述通信状态,从所述构成信息存储缓冲器获取所述构成信息,根据所获取的所述构成信息重构所述第一和第二运算矩阵的所述运算器组的功能和布线;及
调度部,在所述第一运算矩阵运算处理第一包时,确定在所述第一和第二运算矩阵中哪一方进行后续的第二包的运算处理。
2.根据权利要求1所述的信息处理装置,其中,
在所述第二包需要基于和所述第一包相同的所述构成信息的处理,后续的第三包需要基于和所述第一包不同的所述构成信息的处理的情况下,
所述调度部使所述第二包待机,使所述第三包优先使用所述第二运算矩阵,直到所述第一运算矩阵中的所述第一包的处理结束。
3.根据权利要求1所述的信息处理装置,其中还具有:
处理中通信表,记录处理中的所述包的包头;
处理中通信记录部,将已开始处理的所述包的包头记录在所述处理中通信表内,将已结束处理的所述包的包头从所述处理中通信表内删除;及
通信重复判定部,比较记录在所述处理中通信表内的所述包头和从所述网络输入的所述包的包头,在不一致时,开始所输入的所述包的处理。
4.根据权利要求1所述的信息处理装置,其中还具有:
处理中通信状态表,对在所述第一和第二运算矩阵中正在进行运算处理或正在等待运算的所述包的通信状态进行记录;
第一及第二通信状态缓冲器,临时存储所述通信状态更新部变更的所述通信状态;及
第一及第二包缓冲器,临时存储与已变更的所述通信状态相对应的所述包,
所述调度部比较已变更的所述通信状态和记录在所述处理中通信状态表中的所述通信状态,由此确定存储已变更的所述通信状态和对应的所述包的所述第一及第二通信状态缓冲器和所述第一及第二包缓冲器。
5.根据权利要求1所述的信息处理装置,其中还具有:
临时存储所述包的包缓冲器;
通信状态缓冲器,临时存储已变更的所述通信状态;及
数据读出部,从所述包缓冲器和所述通信状态缓冲器中读出所述包和已变更的所述通信状态,并传送给所述第一和第二运算矩阵,
所述数据读出部根据在所述第一和第二运算矩阵中正在进行运算处理或正在等待运算的所述包的数量、和存储在所述通信状态缓冲器中的所述通信状态的数量,确定从所述通信状态缓冲器中读出的所述通信状态的数量。
6.根据权利要求1所述的信息处理装置,其中,
还具有:存储部,连接于所述动态重构处理部,存储多个所述第一和第二运算矩阵的所述构成信息,
所述动态重构处理部还包括:运算部,从所述存储部向所述构成信息存储缓冲器传送所述构成信息,
所述运算部在所述第一和第二运算矩阵在进行基于第一通信状态的重构后运算处理所述第一包的期间,根据第二通信状态,从所述存储部向所述构成信息存储缓冲器传送所述第二包的运算处理所需要的所述构成信息。
7.一种对通过网络在终端之间收发的包进行处理的信息处理装置,其中,具有包输入输出部、动态重构处理部和存储部,
所述包输入输出部包括:通信状态表,存储收发所述包的所述终端之间的通信状态;通信状态更新部,根据所接收的所述包的内部信息、和根据所述包的所述内部信息从所述通信状态表读出的所述通信状态的组合,进行所述通信状态的变更,
所述动态重构处理部包括:存储多个构成信息的构成信息存储缓冲器;运算矩阵部,分别具有功能和布线可改变的运算器组,接收所述包和已变更的所述通信状态,根据已变更的所述通信状态,从所述构成信息存储缓冲器获取所述构成信息,根据所获取的所述构成信息重构所述运算器组的功能和布线;和运算部,向所述构成信息存储缓冲器传送所述构成信息,所述动态重构处理部对所述包进行与已变更的所述通信状态相对应的处理,
所述存储部存储多个所述构成信息,
所述动态重构处理部的所述运算部在所述运算矩阵部进行基于第一通信状态的重构后处理第一包的期间,从所述存储部向所述构成信息存储缓冲器传送后续第二包的处理所需要的、基于第二通信状态的所述构成信息。
8.根据权利要求7所述的信息处理装置,其中,
所述动态重构处理部的所述运算矩阵部由可根据所述构成信息重构所述运算器组的功能和布线的第一及第二运算矩阵构成,
所述包输入输出部还包括:调度部,在所述第一运算矩阵处理所述第一包时,确定在所述第一和第二运算矩阵中哪一方进行所述第二包的处理。
9.根据权利要求7所述的信息处理装置,其中,
所述包输入输出部还包括:
临时存储所述包的包缓冲器;
通信状态缓冲器,临时存储已变更的所述通信状态;及
数据读出部,从所述包缓冲器和所述通信状态缓冲器中读出一个或多个所述包、和已变更的所述通信状态,并传送给所述运算矩阵部,
所述数据读出部根据在所述运算矩阵部中正在进行运算处理或正在等待运算的所述包的数量、和存储在所述通信状态缓冲器中的所述通信状态的数量,确定从所述通信状态缓冲器中读出的所述通信状态的数量。
10.根据权利要求7所述的信息处理装置,其中,
所述包输入输出部还包括:
处理中通信表,记录处理中的所述包的包头;
处理中通信记录部,将已开始处理的所述包的包头记录在所述处理中通信表内,将已结束处理的所述包的包头从所述处理中通信表内删除;及
通信重复判定部,比较记录在所述处理中通信表内的所述包头和从所述网络输入的所述包的包头,仅在不一致时,开始所输入的所述包的处理。
11.根据权利要求7所述的信息处理装置,其中,
所述包输入输出部还包括:
分类器,进行从所述网络输入的所述包的分类;
多个包缓冲器,存储所述分类器分类的所述包;及
包读出部,从所述多个包缓冲器中读出已分类的所述包。
12.根据权利要求8所述的信息处理装置,其中,
在所述第二包需要基于和所述第一包相同的所述构成信息的处理,后续的第三包需要基于和所述第一包不同的所述构成信息的处理的情况下,
所述调度部使所述第二包待机,使所述第三包优先使用所述第二运算矩阵,直到所述第一运算矩阵中的所述第一包的处理结束。
13.根据权利要求8所述的信息处理装置,其中,
所述包输入输出部还包括:
处理中通信状态表,对在所述第一及第二运算矩阵中正在进行运算处理或正在等待运算的所述包的通信状态进行记录;
第一及第二通信状态缓冲器,临时存储所述通信状态更新部变更的所述通信状态;及
第一及第二包缓冲器,临时存储与已变更的所述通信状态相对应的所述包,
所述调度部比较已变更的所述通信状态和记录在所述处理中通信状态表中的所述通信状态,由此确定存储已变更的所述通信状态和对应的所述包的所述第一及第二通信状态缓冲器和所述第一及第二包缓冲器。
14.根据权利要求11所述的信息处理装置,其中,
所述包读出部从过去读出的时间为最早的所述包缓冲器中优先读出已分类的所述包,开始所述通信状态更新部的所述通信状态的变更。
15.根据权利要求11所述的信息处理装置,其中,
所述包输入输出部还包括集线器,将在所述分类器中被判定为不需要处理的所述包、和通过所述运算矩阵部的运算处理新生成的包集合并输出。
16.根据权利要求13所述的信息处理装置,其中,
所述包输入输出部还包括:第一和第二数据读出部,从所述第一及第二包缓冲器和所述第一及第二通信状态缓冲器中读出所述包和已变更的所述通信状态,并分别传送给所述第一和第二运算矩阵,
所述第一和第二数据读出部根据在所述第一和第二运算矩阵中正在进行运算处理或正在等待运算的所述包的数量、和存储在所述第一和第二通信状态缓冲器中的所述通信状态的数量,确定从所述第一和第二通信状态缓冲器中读出的所述通信状态的数量。
17.一种信息处理系统,包括服务器、通过网络向所述服务器请求数据的终端、和信息处理装置,所述信息处理装置接收在所述服务器和所述终端之间传送的包,执行与收发所述包的所述服务器和所述终端之间的通信状态对应的处理,其中,
所述信息处理装置具有:
通信状态表,存储所述服务器和所述终端之间的所述通信状态;
通信状态更新部,根据所接收的所述包的内部信息、和根据所述包的所述内部信息从所述通信状态表读出的所述通信状态的组合,进行所述通信状态的变更;
动态重构处理部,包括具有功能和布线可改变的运算器组的第一及第二运算矩阵、和存储多个所述第一和第二运算矩阵的构成信息的构成信息存储缓冲器,接收所述包和已变更的所述通信状态,根据已变更的所述通信状态,从所述构成信息存储缓冲器获取所述构成信息,根据所获取的所述构成信息重构所述第一和第二运算矩阵的所述运算器组的功能和布线;
调度部,在所述第一运算矩阵处理第一包时,确定在所述第一和第二运算矩阵中哪一方进行后续的第二包的处理,
在所述动态重构处理部中,对所述包执行与已变更的所述通信状态相对应的运算处理,将其处理结果经由所述网络发送给所述服务器或所述终端。
18.根据权利要求17所述的信息处理系统,其中,
所述通信状态表存储的所述通信状态包括:所述服务器和所述终端之间的传输端口层协议的变迁/拥挤状态;应用层协议的类型;所述应用层协议正在执行中的命令和所述命令的自变量的类型;和所述命令的执行进展状态。
19.根据权利要求17所述的信息处理系统,其中,
所述信息处理装置还具有存储多个所述构成信息的存储部,
所述动态重构处理部还包括从所述存储部向所述构成信息存储缓冲器传送所述构成信息的运算部,所述运算部在所述第一和第二运算矩阵正在运算处理所述第一包的期间,从所述存储部向所述构成信息存储缓冲器传送运算所述第二包所需要的所述构成信息。
20.根据权利要求17所述的信息处理系统,其中,
在所述第二包需要基于和所述第一包相同的所述构成信息的处理,后续的第三包需要基于和所述第一包不同的所述构成信息的运算处理的情况下,
所述信息处理装置的所述调度部使所述第二包待机,使所述第二运算矩阵进行所述第三包的运算处理,直到所述第一运算矩阵中的所述第一包的运算处理结束。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007182205A JP2009021774A (ja) | 2007-07-11 | 2007-07-11 | 情報処理装置、及び情報処理システム |
JP182205/2007 | 2007-07-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101345701A CN101345701A (zh) | 2009-01-14 |
CN101345701B true CN101345701B (zh) | 2011-05-11 |
Family
ID=40247595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101600775A Expired - Fee Related CN101345701B (zh) | 2007-07-11 | 2007-12-21 | 信息处理装置及信息处理系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090016354A1 (zh) |
JP (1) | JP2009021774A (zh) |
CN (1) | CN101345701B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2151941A1 (en) * | 2008-08-05 | 2010-02-10 | Nokia Siemens Networks OY | Communication network element and method transmitting data |
JP6102108B2 (ja) * | 2012-07-24 | 2017-03-29 | 富士通株式会社 | 情報処理装置、データ提供方法、及びデータ提供プログラム |
EP2999691A4 (en) | 2013-05-21 | 2017-02-08 | Virginia Commonwealth University | Cryopyrin inhibitors for preventing and treating inflammation |
US11533255B2 (en) | 2014-11-14 | 2022-12-20 | Nicira, Inc. | Stateful services on stateless clustered edge |
US9954771B1 (en) * | 2015-01-30 | 2018-04-24 | Marvell Israel (M.I.S.L) Ltd. | Packet distribution with prefetch in a parallel processing network device |
US11296984B2 (en) | 2017-07-31 | 2022-04-05 | Nicira, Inc. | Use of hypervisor for active-active stateful network service cluster |
US11570092B2 (en) * | 2017-07-31 | 2023-01-31 | Nicira, Inc. | Methods for active-active stateful network service cluster |
US10951584B2 (en) | 2017-07-31 | 2021-03-16 | Nicira, Inc. | Methods for active-active stateful network service cluster |
US11153122B2 (en) | 2018-02-19 | 2021-10-19 | Nicira, Inc. | Providing stateful services deployed in redundant gateways connected to asymmetric network |
US11799761B2 (en) | 2022-01-07 | 2023-10-24 | Vmware, Inc. | Scaling edge services with minimal disruption |
US11962564B2 (en) | 2022-02-15 | 2024-04-16 | VMware LLC | Anycast address for network address translation at edge |
CN115858193B (zh) * | 2022-11-24 | 2023-08-25 | 广州市易鸿智能装备有限公司 | 一种数据传输方法和实现业务类bussiness功能对接的方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1501646A (zh) * | 1997-05-05 | 2004-06-02 | ŵ���������绰����˾ | 一种调度分组数据发送的方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020083331A1 (en) * | 2000-12-21 | 2002-06-27 | 802 Systems, Inc. | Methods and systems using PLD-based network communication protocols |
US20030177258A1 (en) * | 2002-01-15 | 2003-09-18 | Chip Engines | Reconfigurable control processor for multi-protocol resilient packet ring processor |
US7154416B1 (en) * | 2005-09-22 | 2006-12-26 | Packeteer, Inc. | Adaptive control of codebook regeneration in data compression mechanisms |
JP5132055B2 (ja) * | 2005-12-26 | 2013-01-30 | 富士通株式会社 | 物理チャネルの再設定を行う装置および方法 |
-
2007
- 2007-07-11 JP JP2007182205A patent/JP2009021774A/ja not_active Withdrawn
- 2007-12-18 US US11/958,787 patent/US20090016354A1/en not_active Abandoned
- 2007-12-21 CN CN2007101600775A patent/CN101345701B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1501646A (zh) * | 1997-05-05 | 2004-06-02 | ŵ���������绰����˾ | 一种调度分组数据发送的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20090016354A1 (en) | 2009-01-15 |
CN101345701A (zh) | 2009-01-14 |
JP2009021774A (ja) | 2009-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101345701B (zh) | 信息处理装置及信息处理系统 | |
US11546189B2 (en) | Access node for data centers | |
US10727865B2 (en) | Data striping for matching techniques in data compression accelerator of a data processing unit | |
US8015303B2 (en) | High data rate stateful protocol processing | |
US6807581B1 (en) | Intelligent network storage interface system | |
CN115516832A (zh) | 网络和边缘加速瓦片(next)体系结构 | |
CN108833299B (zh) | 一种基于可重构交换芯片架构的大规模网络数据处理方法 | |
CN101426010A (zh) | 信息处理装置及信息处理系统 | |
CN1520112B (zh) | 网络协议卸载引擎 | |
US20230127722A1 (en) | Programmable transport protocol architecture | |
US20200162584A1 (en) | Merging techniques in data compression accelerator of a data processing unit | |
WO2020112596A1 (en) | Static dictionary-based compression hardware pipeline for data compression accelerator of a data processing unit | |
CN104011656B (zh) | 使用直接数据路径架构来存储数据以降低能量消耗和改进性能 | |
JP2019075109A (ja) | データ記憶装置及びブリッジ装置 | |
JP4779955B2 (ja) | パケット処理装置及びパケット処理方法 | |
US20150127649A1 (en) | Efficient implementations for mapreduce systems | |
US20080256271A1 (en) | Methods and apparatus for reducing storage usage in devices | |
CN110069441A (zh) | 一种用于流计算的fpga网络及流计算系统与方法 | |
CN115917473A (zh) | 用分布式lpm实现的高度可扩展算法构建数据结构的系统 | |
US11552907B2 (en) | Efficient packet queueing for computer networks | |
JP4740828B2 (ja) | 情報処理装置及び情報処理システム | |
WO2008073493A2 (en) | Methods and apparatus for reducing storage usage in devices | |
CN105307207B (zh) | 无线联网装置中的数据传输的方法和无线联网装置 | |
WO2015055008A1 (zh) | 一种存储控制芯片及磁盘报文传输方法 | |
CN115296956B (zh) | 一种内核的隧道转发方法、装置、电子设备及存储介质 |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110511 Termination date: 20121221 |