CN1961559A - 校验数据完整性 - Google Patents
校验数据完整性 Download PDFInfo
- Publication number
- CN1961559A CN1961559A CN200580012678.0A CN200580012678A CN1961559A CN 1961559 A CN1961559 A CN 1961559A CN 200580012678 A CN200580012678 A CN 200580012678A CN 1961559 A CN1961559 A CN 1961559A
- Authority
- CN
- China
- Prior art keywords
- data
- network interface
- interface unit
- agreement
- network
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
一种网络接口设备,用于与数据处理设备和数据网络的连接,以在数据处理设备和网络之间提供一个接口,以支持某一传送协议的分组的网络,把网络接口设备配置为能够:在这样的分组数据的有效载荷中标识一个进一步的协议的数据,该进一步的协议的数据包括进一步的协议的有效载荷数据和该进一步的协议的成帧数据,成帧数据包括准许验证有效载荷数据完整性的验证数据;当如此标识进一步的协议的数据时,至少处理用于确定其完整性的有效载荷数据,并且向数据处理设备传输至少某些成帧数据以及一个对所述处理的结果加以指示的指示信息。
Description
本发明涉及一种网络接口,例如将计算机连接到网络的接口设备。
图1是如网络接口卡(NIC)等网络接口设备及可将该设备用于其中的系统的总体架构的原理图。网络接口设备10通过数据链路5连接到处理设备如计算机1,并且通过数据链路14连接到数据网络20。另外的网络接口设备如处理设备30也与网络相连,用于在网络和另外的处理设备如处理设备40之间提供接口。
例如,计算机1可以是个人计算机、服务器或专用处理设备例如数据记录器或控制器。在本例中,它包括处理器2、程序存储器4和存储器3。程序存储器存储定义操作系统和可以在操作系统上运行的应用程序的指令。操作系统提供驱动程序和接口库等工具,利用该工具应用程序可以访问连接于计算机的外围硬件装置。
网络接口设备最好能够在用户级支持如TCP、RDMA和ISCSI等标准传输协议:即,通过一种方式可使它们能够访问运行在计算机1上的应用程序。这种支持使得能够进行需要使用标准协议的数据传送,而不需数据通过内核栈。在本例的网络接口设备中,在计算机1的操作系统可访问的传输库中实现标准传输协议。
图2说明了这样的一个实现。在这个架构中,实现了两次TCP(以及其它)协议:如图2中TCP1和TCP2所示。在一个典型的操作系统中,TCP2是内置于计算机的操作系统中的TCP协议的标准实现。为了控制网络接口设备和/或与网络接口设备通信,运行在计算机上的应用程序可发出API(应用程序编程接口)调用。已提供的支持网络接口设备的传输库能够处理一些API调用。对于应用程序直接可用的传输库所不能处理的API调用,通常通过应用程序和操作系统之间的接口传送由操作系统可用的库处理。对于具有多个操作系统的实现,方便的做法是令传输库经由OS接口,使用现有的基于Ethernet/IP的控制平面架构,例如SNMP和ARP协议。
在用户级实现传输协议具有很多困难。到目前为止的多数实现均是基于把预先存在的内核代码基础移植到用户级。这样的例子有Arsenic和Jet-stream。这证明了用户级传输的潜力,但是没有解决取得一个完善的、鲁棒的、高性能的、商业上可行的实现所需的诸多问题。
图3示出一个使用标准内核TCP传输(TCPk)的架构。
该架构的操作如下:
当从网络接口硬件(例如网络接口卡(NIC))进行分组接收时,NIC将数据送入预先分配的数据缓冲区(a),并通过中断线调用OS中断处理程序(步骤i)。中断处理程序管理硬件接口,例如公布新的接收缓冲区,并且传递已接收的(在本例中,通过Ethernet)寻找协议信息的分组。如果一个分组被识别为指定了有效的协议,例如TCP/IP,就将其传递(不复制)到适当的接收协议处理块(步骤ii)。
进行TCP接收侧的处理并且从分组识别目的部分。如果分组包含端口的有效数据,那么将分组加入到端口的数据队列(步骤iii),把该端口标记为(可能需要调度程序和被阻止的进程的唤醒)持有有效数据。
TCP接收处理可能需要其它分组已经传送(步骤iv),例如,如果应当再次传送此前已传送的数据或者可以现在传送之前已入队的数据(或许因为TCP窗口已经打开)。在这种情况下,分组与用于传送的OS“NDIS”驱动程序一起排队。
为了使一个应用程序能够检索数据缓冲区,它必须引用OS API(步骤v),例如使用recv(),select()或poll()等调用。如此做具有这样的效果:通知应用程序数据已经收到并且(在recv()调用的情况下)将数据从内核缓冲区复制到应用程序缓冲区。复制使内核(OS)能够重新使用它的网络缓冲区,该缓冲区具有如DMA可访问的特殊属性并意味着应用程序不必在网络所提供的单元中处理数据,否则应用程序需要预先知道数据的最终目的地,应用程序必须预先分配以后能够用于数据接收的缓冲区。
应当注意的是,在接收侧具有至少两个不同的异步交互的控制线程:来自中断的向上调用和来自应用程序的系统调用。许多操作系统也将向上调用分开,以避免在中断优先级执行太多的代码,例如通过“软中断”或“延迟程序调用”技术。
除了通常存在一条执行路径外,发送过程以类似的方式运作。应用程序通过加以要传送的数据调用操作系统API(例如,使用send()调用)(步骤vi)。该调用将数据复制到内核数据缓冲区中并且引用用TCP发送处理。此时,应用了协议且完好形成的TCP/IP分组与接口驱动程序一起排队用于传送。
如果成功的话,系统调用返回一个对经调度的(由硬件)用于传送的数据的指示。然而,在一些情况下,网络接口设备无法使数据入队。例如,传输协议使未决的确认或窗口更新进行排队,设备驱动程序使到硬件的未决的数据传送请求以软件的形式进行排队。
由必须根据时间变化执行的动作生成贯穿系统的一个第三控制流。一个例子是,对重发算法的触发。通常,操作系统为所有OS模块提供时间和调度服务(由硬件时钟中断驱动),使TCP栈能实现在基于每个连接的定时器。
如果在用户级实现标准内核栈,那么架构通常如图4中所示。应用程序与传输库链接而不是直接与OS接口链接。该架构与具有由用户级程序包提供的如定时器支持等服务的内核栈实现,以及由用户级虚拟接口模块替代的装置驱动程序接口很相似。然而,为了提供TCP实现所需要的一个异步处理模型,在传输库内必需有一些活动的执行线程:
(i)由应用程序提供的系统API调用
(ii)定时器生成协议代码的的调用
(iii)虚拟网络接口和协议代码内合成的向上调用的管理(对于一些架构,可将ii和iii组合)
然而,这样安排带来一些问题:
(a)在这些线程间的上下文转换和实现闭锁以保护共享数据架构的开销可能是巨大的,从而消耗了大量的处理时间。
(b)通常使用提供定时器/时间支持的操作系统来操作用户级定时器代码。来自定时器模块的系统调用所产生的大的开销导致系统不能获得满意的阻止操作系统和数据路径间相互作用的目的。
(c)可能有许多独立的应用程序,每个应用程序管理网络连接的一个子集;一些是通过它们自己的传输库,一些是通过现有的内核栈传输库。NIC必须能够有效地解析分组,并将他们传送到基于如IP端口和主地址位等协议信息的适当的虚拟接口(或OS)。
(d)一个应用程序可能将对特定网络连接的控制传送到另一个应用程序,例如在Unix操作系统上的fork()系统调用期间。这要求:将需要一个完全不同的传输库例访问连接状态。更糟糕的是,许多应用程序可能共享一个网络连接,意味着传输库通过(进程间通信)技术共享所有权。现有的用户级传输不支持这样。
(e)通常要求传输协议命令网络连接的寿命长于其所连接的应用程序。
例如,使用TCP协议,传输必须竭力进行发送,除了不被确认的数据,当发送应用程序退出或失效时适当的关闭一个连接。对于内核栈实现,不管应用程序的状态如何,都能够将“定时器”输入到协议栈是没有问题的,但是如果应用程序退出、失效或者在调试程序中终止,对于将消失(可能是不适当地)的传输库则存在问题。
另外,RDMA(远程直接存储器存取)和ISCSI(Internet小型计算机系统接口)为这样的协议:允许一个诸如计算机的设备直接存取网络上把该设备与其连接的另一个设备(“对象”)的存储器的内容。这些协议涉及向传统网络分组嵌入定义了根据协议所执行的操作的数据串。例如,为执行一个把数据写至远程计算机的存储器的RDMA操作,可以向该计算机发送一个TCP分组,该TCP分组具有一个包含由下列内容组成的串的有效载荷(payload):一个标记RDMA数据的开始的标记符、一个指示把数据写至存储器中何处的标签、数据本身、以及一个允许在接收时验证数据的完整性的CRC块。一个单一的TCP分组可以包括多个这样的串。当接收到TCP分组时,可以将其有效载荷中的数据标识为RDMA数据,并相应地对这些数据进行处理,以执行所希望的写操作。
可以由对象设备本身的一个处理器,或者由对象设备的一个网络接口设备执行对分组处理以抽取、验证以及解释RDMA数据。然而,这一处理一般都由网络接口设备执行,因为这样做可以使往返于对象的存储器的数据的传递效率更高。如果由对象设备的一个处理器执行这一处理,则将需要两个存储器写操作,因为首先必须把RDMA数据串传递于设备的存储器的一个缓冲区域中,以进行处理,然后,当已确定了数据的目标地址时,其会被拷贝至该地址。相比之下,如果在网络接口设备上执行RDMA处理,则可以在其中确定数据的目标地址,然后可以把数据直接写至该地址,从而节省了否则将需要的拷贝操作。出于这一原因,最好采用在网络接口设备上处理RDMA或ISCSI数据的方案。然而,其缺点是,要求网络接口设备具有相当大的处理能力。这增大的花费,特别是,由于在诸如网络接口设备的设备上所嵌入的处理能力通常比主处理器能力更为昂贵。
人们希望提供一种支持诸如RDMA和ISCSI的协议的改进的装置。
根据本发明的一个方面,提供了一种网络接口设备,用于与数据处理设备和数据网络的连接,以在数据处理设备和网络之间提供一个接口,以支持某一传送协议的分组的网络,把网络接口设备设置为能够:在这样的分组数据的有效载荷中标识一个进一步的协议,进一步的协议的数据包含该进一步协议的有效载荷数据和该进一步的协议的成帧数据,成帧数据包括准许验证有效载荷数据完整性的验证数据;当如此标识进一步的协议的数据时,至少处理用于确定其完整性的有效载荷数据,并且向数据处理设备传输至少某些成帧数据以及一个对所述处理的结果加以指示的指示信息。
权利要求中阐述了本发明的进一步的方面和优选特性。
本发明的其它方面和优选特征在权利要求中陈述。
现在结合附图通过例子来说明本发明,其中:
图1是一个通用的网络接口设备的原理图;
图2示出了传输库架构的一个实现;
图3示出使用用户级TCP传输的标准内核TCP传输的架构;
图4示出在用户级实现标准内核栈的架构;
图5示出一个TCP传输架构的例子;
图5示出一个TCP传输架构的例子,该架构适合在如图1中的设备10的网络接口设备和如图1的计算机1的计算机之间提供一个接口。该架构不限于这个实现。
图5中例子的架构和传统架构之间的主要区别如下。
(i)代表网络连接执行协议处理的TCP代码既位于传输库又在OS内核中。该代码执行协议处理的事实是非常重要的。
(ii)连接状态和数据缓冲区保持在内核存储器和映射在传输库的地址空间的存储器中。
(iii)内核与传输库代码均可访问针对和代表某一特殊网络连接的虚拟硬件接口。
(iv)通过虚拟硬件接口可管理定时器(这些定时器对应于网络接口设备上的真实定时器),不需系统调用来对他们设置和清零。NIC生成定时器事件,由网络接口设备驱动程序接收该事件并将其传送到设备的TCP支持代码上。
应当注意的是,网络接口设备的TCP支持代码是一般OS TCP的实现的补充。这能够很好的与网络接口设备栈共存。
为该架构的效果如下。
(a)要求多个线程活动于传输库中
由于既能作为系统API调用的结果在传输库中执行TCP代码(例如recv())(见图5步骤i),也可作为定时器事件的结果由内核执行TCP代码(见图5步骤ii),对于图5的架构,不存在这一需求。在这两种情况中,均可以管理VI(虚拟接口)且两个代码路径可以访问连接状态或数据缓冲区,可以由共享存储器锁管理对他们的保护和他们间的互斥。并且能够去除在传输库级的线程切换的开销,该特点能够应用程序制止它们的线程和信号处理假设的需求:例如在一些情况下,要求一个单线程的应用程序与一个多线程的库链接是不能接受的。
(b)替换针对定时器管理的系统调用
由于网络接口设备能够实现一些可分配在特殊虚拟接口例的多个定时器:例如,每个活动的TCP传输库可有一个定时器,因此这一需求没有表现在图5的架构中。可以通过由存储器映射的VI使这些定时器成为可编程的(见图5步骤iii),并且导致发布事件(见图5步骤iv)。因为不用系统调用就可以设置和清零定时器,可大大降低定时器管理的开销。
(c)至多传输库的分组的正确送达
网络接口设备可以包括或者访问内容可寻址存储器,这能够匹配从进入的分组标头所取得的比特,作为并行硬件匹配操作。可以将取得的匹配结果指示必须用于送达的目的虚拟接口,并且硬件可以开始将已经被推进VI的分组的送达缓冲区。下面将说明匹配处理的一种可能的配置。可以扩展下面说明的配置来对与IPv6关联的更大的主地址解复用,尽管与所描述的配置相比这将要求对应每个分组更宽的CAM查找或多CAM查找。
为了这个目的使用CAM的一个选择是使用散列算法,该算法允许来自分组标头的数据被处理以确定要被使用的虚拟接口。
(d)在进程/应用程序/线程之间连接的切换
当切换网络连接时,可以在应用程序间传送相同系统宽的资源句柄。例如,可以是文档描述符。网络接口设备的架构能够将所有与网络连接相关联的状态附加于(例如)该文件描述符,并要求传输库存储器映射至这个状态。网络连接切换后,尽管新的应用程序在不同的地址空间中执行,新的应用程序(无论是应用程序、线程或进程)也能够进行存储器映射并且继续使用该状态。另外,通过使用与在内核和传输库之间使用的相同的返回源语,任何应用程序能够共享具有由标准系统APIs指定的相同的语义的网络连接的使用。
(e)当传输库停止、失效或解除时,完成传输协议操作
在网络接口设备的架构中可以完成这个步骤,因为连接状态和协议代码能够驻留于内核。可以按照与通用TCP(TCPk)协议栈相同的方式通知OS内核代码应用程序状态的改变。被停止的应用程序将不会提供线程去进行协议执行,但是协议将通过定时器事件继续,例如,对于现有技术内核栈协议,这是人们所熟悉的。
有很多新出现的协议如IETF RDMA和iSCSI。至少其中一些协议设计为运行在TCP和其它协议代码执行在网络接口设备上的环境中。现在来说明这种协议能够在主CPU上执行的工具(即使用连接有网络接口卡的计算机的处理装置)。这种实现是先进的,因为其使用户能够利用主CPU技术相对于协处理器技术的价格性能比优势。
RDMA规范中给出了RDMA指令的格式,这一规范可得于www.rdmaconsortium.org。
如RDMA等协议涉及在TCP流内的成帧信息的嵌入和循环冗余校验。成帧信息在协议库内的计算是微不足道的,而CRC的计算(对比校验和)运算量大且最好由硬件完成。为了适应这一点,当TCP流带有RDMA或相似的封包(encapsulation)时,可以在虚拟接口内进行选择,例如通过标志位。当检测到这个选择时,NIC在传送期间将解析传送中的每个分组,恢复RDMA帧,使用RDMA CRC算法以及快速插入CCRC。相对如iSCSI等对误差校验数据的运算的运算密度相对较大的其它协议,使用类比程序是有益的。
根据这一系统,网络接口设备还能使用相似的逻辑验证所接收的分组上的CRC。例如,可以用类似于标准TCP校验和卸载技术的方式来执行校验。
为了执行这一设置,较佳的做法是令所执行的步骤如下。当按一个RDMA可兼容的模式进行操作时,NIC对每一个所接收的TCP分组的有效载荷进行分析,以识别其是否包含RDMA数据。可以通过校验RDMA成帧数据(即,RDMA头标和脚标),特别是RDMA头标是否存在于有效载荷中,进行这一识别。如果其不存在,则如通常那样处理分组。如果其存在,则由NIC根据RDMACRC算法处理分组的有效载荷,以针对所接收数据计算RDMA CRC。一旦已经进行了这一计算,则可以使用两条路线之一。在第一路线中,把RDMA数据随所计算的CRC一起传递于主计算机。然后,主计算机可以把所计算CRC与RDMA数据中所接收的CRC进行比较,以确定是否已正确地接收到数据。做为选择,在第二路线中,可在NIC处进行所述比较,并且把RDMA数据和所述比较结果的指示信息(例如在一个1比特的标志中)传递至主计算机。因此,接下来,在这两种情况的每一情况中,主计算机可以处理RDMA数据。因此,如果CRC校验的结果表明已经正确地接收到数据,则其可以执行数据所表示的RDMA命令(通常为一个读或写命令)。否则,其不能执行该命令,而且在该情况下,其可以自动地执行一个错误恢复动作,例如启动一个对数据进行重新传输的请求。
如果除了其计算外,NIC还执行对CRC的校验,则如果其断定还没有有效地接收到数据,则其不需要把相应RDMA数据的有效载荷传输至主计算机。其仅需要根据传送协议分组的头标(通常为一个TCP头标)以及RDMA成帧信息传输允许主计算机请求重新传输的足够的信息即可。其可以传输整个头标和成帧信息,其也可以只传输所述头标和成帧信息的某些部分。最好基于每RDMA数据单位进行这一操作。因此,如果一个TCP分组包含一个单一的RDMA数据单位,则其为传递于主计算机的同一数据单位的成帧数据和同一分组的头标(或其一部分)。如果一个TCP分组包含多个RDMA数据单位,则如果断定任何一个RDMA数据出现问题,则把其成帧数据和整个分组的头标(或其一部分)传输于主PC。
诸如RDMA的协议也可能要求附加的操作,例如在传统的实现中要求网络接口设备上附加智能的RDMA读操作。如以上所示,这一类型的实现已导致这样一个普遍的认同:应该通过一个协同处理器网络接口设备实现RDMA/TCP。在此处所描述的类型的架构中,可以对一个特定的硬件滤波程序进行编码,以捕获对某一具体网络连接的这样的较上级协议的请求。在这样一种情况下,NIC可以生成一个类似于定时器事件的事件,以通过运行在所附接计算机上的软件以及一条提交数据消息请求动作。通过以这样的一种方法触发一个事件,NIC可以实现这样一种效果:传输库或内核帮助程序,可以立即对请求采取动作。这可以避免内核扩展在调度传输库之前不执行的潜在问题,并且如果需要的话,可将其施用于其它较上级协议。
较佳的作法是,使用NIC的专用硬件进行CRC的计算,因为这样做为执行这样的逐比特操作提供了一种特别有效的方式。相类似,上述方法也适用于计算除CRC计算之外的计算,例如,这些其它的计算可以包括认证、加密以及解密操作。
尽管已参照RDMA描述了这一例子,但其也适用于其它协议。
据此,本申请人独立地公开了此处所描述的各个特性,以及两或两个以上这样的特性的任何组合,以致,总体上,依据这一技术领域中普通熟练技术人员共同的一般知识,能够根据本说明书执行这样的特性或组合,而不管这样的特性或特性组合是否解决此处所公开的任何问题,而且对权利要求的范围未加以限制。本申请人表示:本发明的各个方面可由任何这样的单个特性或特性的组合组成。鉴于以上的描述,这一技术领域中的熟练技术人员将会明显意识到,可以在本发明的范围内对本发明进行多方面的修改。
Claims (22)
1.一种网络接口设备,用于与数据处理设备和数据网络的连接,以在数据处理设备和网络之间提供一个接口,以支持某一传送协议的分组的网络,把网络接口设备设置为能够:
在这样的分组数据的有效载荷中标识一个进一步的协议的数据,该进一步的协议的数据包括进一步的协议的有效载荷数据和该进一步的协议的成帧数据,成帧数据包括准许验证有效载荷数据完整性的验证数据;
当如此标识进一步的协议的数据时,至少处理用于确定其完整性的有效载荷数据,并且向数据处理设备传输至少某些成帧数据以及一个对所述处理的结果加以指示的指示信息。
2.根据权利要求1中所要求的一种网络接口设备,其中,把网络接口设备设置为能够通过把一个预先确定的函数施用于有效载荷数据,处理有效载荷数据,以形成一个验证结果。
3.根据权利要求1中所要求的一种网络接口设备,其中,所述验证结果为结果的所述指示信息。
4.根据权利要求3中所要求的一种网络接口设备,其中,把网络接口设备设置为能够把有效载荷数据随至少某些成帧数据一起传输至数据处理设备。
5.根据权利要求2中所要求的一种网络接口设备,其中,把网络接口设备进一步设置为能够通过把验证结果与核实数据进行比较,处理有效载荷数据,这一比较的结果为结果的所述指示信息。
6.根据权利要求5中所要求的一种网络接口设备,其中,把网络接口设备设置为如果所述比较的结果为验证结果与验证数据相匹配,则把有效载荷数据随至少某些成帧数据一起传输至数据处理设备。
7.根据权利要求5或6中所述的一种网络接口设备,其中,把网络接口设备设置为如果所述比较的结果为验证结果与验证数据不相匹配,则不把有效载荷数据传输至数据处理设备。
8.根据权利要求2至7中任何一个权利要求中所述的一种网络接口设备,其中,预先确定的函数为一个循环冗余校验函数。
9.根据权利要求2至7中任何一个权利要求中所述的一种网络接口设备,其中,预先确定的函数为一个认证函数。
10.根据权利要求2~9中任何一个权利要求中所述的一种网络接口设备,其中,预先确定的函数为一个涉及有效载荷数据的逐字节处理的函数。
11.根据任何先前权利要求中所述的一种网络接口设备,其中,传送协议的分组包括该协议的分组头标,并且把网络接口设备设置为当标识进一步的协议的数据时,能够把载有有效载荷数据的传送协议的一或多个分组的一或多个头标的至少某些随有效载荷数据一起传输至数据处理设备。
13.一种网络接口设备,其中,把网络接口设备设置为能够通过把数据传输至一个数据处理设备所支持的传输库,执行向数据处理设备的传输。
14.根据任何先前权利要求中所述的一种网络接口设备,其中,传送协议为TCP(传输控制协议)协议。
15.一种网络接口设备,其中,进一步的协议为一个针对远程直接存储器存取的协议。
16.根据权利要求15中所述的一种网络接口设备,其中,进一步的协议为这样的协议:其支持存储器写指令,其中,成帧数据包括指示把至少某些有效载荷数据写至其中的数据处理设备的存储器地址的信息。
17.根据权利要求15或16中所述的一种网络接口设备,其中,进一步的协议为RDMA(远程直接存储器存取)或ISCSI(Internet小型计算机串行接口)协议。
18.根据任何先前权利要求中所述的一种网络接口设备,其中,把网络接口设备设置为当标识进一步的协议的至少某些形式的数据时,能够在数据处理装置上引发一个中断。
19.根据权利要求18中所述的一种网络接口设备,其中,所述形式的数据包括存储器读指令。
20.根据权利要求18中所述的一种网络接口设备,其中,所述形式的数据包括存储器写指令。
21.根据权利要求19或20中所述的一种网络接口设备,其中,所述指令包括指示在其处执行所述读/写的一个存储器地址的信息。
22.一种数据处理系统,包括一个网络接口设备,该网络接口设备用于与数据处理设备和数据网络的连接,以在数据处理设备和网络之间提供一个接口,以支持某一传送协议的分组的网络,把网络接口设备设置为能够:
在这样的分组数据的有效载荷中标识一个进一步的协议的数据,该进一步的协议的数据包括进一步的协议的有效载荷数据和该进一步的协议的成帧数据,成帧数据包括准许验证有效载荷数据完整性的验证数据;
当如此标识进一步的协议的数据时,至少处理用于确定其完整性的有效载荷数据,并且向数据处理设备传输至少某些成帧数据以及一个对所述处理的结果加以指示的指示信息。以及所述数据处理设备。
23.一种数据处理方法,使用了一个网络接口设备,该网络接口设备用于与数据处理设备和数据网络的连接,以在数据处理设备和网络之间提供一个接口,以支持某一传送协议的分组的网络,该方法包括通过网络接口设备执行下列步骤:
在这样的分组数据的有效载荷中标识一个进一步的协议的数据,该进一步的协议的数据包括进一步的协议的有效载荷数据和该进一步的协议的成帧数据,成帧数据包括准许验证有效载荷数据完整性的验证数据;
当如此标识进一步的协议的数据时,至少处理用于确定其完整性的有效载荷数据,并且向数据处理设备传输至少某些成帧数据以及一个对所述处理的结果加以指示的指示信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0408868.8 | 2004-04-21 | ||
GBGB0408868.8A GB0408868D0 (en) | 2004-04-21 | 2004-04-21 | Checking data integrity |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1961559A true CN1961559A (zh) | 2007-05-09 |
Family
ID=32344130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200580012678.0A Pending CN1961559A (zh) | 2004-04-21 | 2005-04-08 | 校验数据完整性 |
Country Status (5)
Country | Link |
---|---|
US (2) | US20070036159A1 (zh) |
EP (1) | EP1738552B1 (zh) |
CN (1) | CN1961559A (zh) |
GB (1) | GB0408868D0 (zh) |
WO (1) | WO2005104479A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304214A (zh) * | 2017-12-13 | 2018-07-20 | 华为技术有限公司 | 一种立即数的完整性的校验方法及装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7571377B2 (en) * | 2005-12-22 | 2009-08-04 | International Business Machines Corporation | Method and apparatus for transmitting data in an integrated circuit |
US8458149B2 (en) * | 2010-03-29 | 2013-06-04 | Welch Allyn, Inc. | Small footprint medical information transfer protocol stack |
CN103023613B (zh) * | 2012-12-14 | 2018-06-01 | 中兴通讯股份有限公司 | 一种对数据帧长度进行校验的方法及装置 |
Family Cites Families (204)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4574350A (en) | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
US5226161A (en) | 1987-08-21 | 1993-07-06 | Wang Laboratories, Inc. | Integration of data between typed data structures by mutual direct invocation between data managers corresponding to data types |
DE69031295T2 (de) | 1989-06-19 | 1998-04-02 | Digital Equipment Corp | Anordnung zur Integration von Anwendungsprogrammen in einem digitalen Datenverarbeitungssystem |
US5452455A (en) * | 1992-06-15 | 1995-09-19 | International Business Machines Corporation | Asynchronous command support for shared channels for a computer complex having multiple operating systems |
US5325532A (en) | 1992-09-25 | 1994-06-28 | Compaq Computer Corporation | Automatic development of operating system boot image |
DE4238942C1 (de) | 1992-11-19 | 1994-01-05 | Luwa Fahrzeugklimatech Gmbh | Schnellschlußventil zur Anordnung an Ansaug- und Ausblasöffnungen von Belüftungsanlagen |
EP0610677A3 (en) * | 1993-02-12 | 1995-08-02 | Ibm | Communication device management module operating in two modes. |
US5272599A (en) | 1993-03-19 | 1993-12-21 | Compaq Computer Corporation | Microprocessor heat dissipation apparatus for a printed circuit board |
JP3270216B2 (ja) | 1993-10-08 | 2002-04-02 | 富士通株式会社 | ファイル名検出方式 |
US5606668A (en) | 1993-12-15 | 1997-02-25 | Checkpoint Software Technologies Ltd. | System for securing inbound and outbound data packet flow in a computer network |
US5550816A (en) | 1994-12-29 | 1996-08-27 | Storage Technology Corporation | Method and apparatus for virtual switching |
US5535216A (en) | 1995-01-17 | 1996-07-09 | Digital Equipment Corporation | Multiplexed gapped constant bit rate data transmission |
US5680586A (en) | 1995-04-18 | 1997-10-21 | International Business Machines Corporation | Method and system for storing and accessing user-defined attributes within a data processing system |
US5802320A (en) | 1995-05-18 | 1998-09-01 | Sun Microsystems, Inc. | System for packet filtering of data packets at a computer network interface |
US6098112A (en) | 1995-10-19 | 2000-08-01 | Hewlett-Packard Company | Streams function registering |
US6170018B1 (en) | 1995-11-27 | 2001-01-02 | Sun Microsystems, Inc. | Remote procedure calling using an existing descriptor mechanism |
US5742817A (en) | 1995-12-08 | 1998-04-21 | Emc Corporation | Method and apparatus for file server addressing |
US6145088A (en) | 1996-06-18 | 2000-11-07 | Ontrack Data International, Inc. | Apparatus and method for remote data recovery |
US6070219A (en) | 1996-10-09 | 2000-05-30 | Intel Corporation | Hierarchical interrupt structure for event notification on multi-virtual circuit network interface controller |
US6687762B1 (en) | 1996-10-10 | 2004-02-03 | Hewlett-Packard Development Company, L.P. | Network operating system adapted for simultaneous use by different operating systems |
US6085217A (en) | 1997-03-28 | 2000-07-04 | International Business Machines Corporation | Method and apparatus for controlling the assignment of units of work to a workload enclave in a client/server system |
US5886872A (en) | 1997-04-23 | 1999-03-23 | Compaq Computer Corporation | Pivotable support and heat sink apparatus removably connectable without tools to a computer processor |
US6021446A (en) | 1997-07-11 | 2000-02-01 | Sun Microsystems, Inc. | Network device driver performing initial packet processing within high priority hardware interrupt service routine and then finishing processing within low priority software interrupt service routine |
US6785888B1 (en) | 1997-08-29 | 2004-08-31 | International Business Machines Corporation | Memory allocator for a multiprocessor computer system |
US7185266B2 (en) * | 2003-02-12 | 2007-02-27 | Alacritech, Inc. | Network interface device for error detection using partial CRCS of variable length message portions |
US7284070B2 (en) * | 1997-10-14 | 2007-10-16 | Alacritech, Inc. | TCP offload network interface device |
SE511098C2 (sv) | 1997-12-08 | 1999-08-02 | Ericsson Telefon Ab L M | Kommunikationssystem och förfarande för att sända meddelanden i ett kommunikationssystem |
US6160554A (en) | 1998-03-19 | 2000-12-12 | Hewlett Packard Company | Computer file content preview window |
US6002804A (en) | 1998-03-26 | 1999-12-14 | Hewlett-Packard Company | Tone dependent variable halftoning with adjustable algorithm selection |
US6498791B2 (en) * | 1998-04-03 | 2002-12-24 | Vertical Networks, Inc. | Systems and methods for multiple mode voice and data communications using intelligently bridged TDM and packet buses and methods for performing telephony and data functions using the same |
US6988274B2 (en) * | 1998-06-12 | 2006-01-17 | Microsoft Corporation | Method, system, and computer program product for representing and connecting an underlying connection-oriented device in a known format |
US6260127B1 (en) | 1998-07-13 | 2001-07-10 | Compaq Computer Corporation | Method and apparatus for supporting heterogeneous memory in computer systems |
US6768996B1 (en) | 1998-10-08 | 2004-07-27 | Hewlett-Packard Development Company, L.P. | System and method for retrieving an abstracted portion of a file without regard to the operating system of the current host computer |
US6424621B1 (en) | 1998-11-17 | 2002-07-23 | Sun Microsystems, Inc. | Software interface between switching module and operating system of a data packet switching and load balancing system |
US6539027B1 (en) | 1999-01-19 | 2003-03-25 | Coastcom | Reconfigurable, intelligent signal multiplexer and network design and maintenance system therefor |
US6360241B1 (en) | 1999-02-01 | 2002-03-19 | Compaq Information Technologies Goup, L.P. | Computer method and apparatus for division and square root operations using signed digit |
US6356951B1 (en) | 1999-03-01 | 2002-03-12 | Sun Microsystems, Inc. | System for parsing a packet for conformity with a predetermined protocol using mask and comparison values included in a parsing instruction |
AU4005100A (en) * | 1999-03-01 | 2000-09-21 | Sun Microsystems, Inc. | Method and apparatus for classifying network traffic in a high performance network interface |
US6466952B2 (en) | 1999-04-08 | 2002-10-15 | Hewlett-Packard Company | Method for transferring and indexing data from old media to new media |
US6502203B2 (en) | 1999-04-16 | 2002-12-31 | Compaq Information Technologies Group, L.P. | Method and apparatus for cluster system operation |
US6304945B1 (en) | 1999-05-13 | 2001-10-16 | Compaq Computer Corporation | Method and apparatus for maintaining cache coherency in a computer system having multiple processor buses |
US6768992B1 (en) | 1999-05-17 | 2004-07-27 | Lynne G. Jolitz | Term addressable memory of an accelerator system and method |
US7318102B1 (en) | 1999-05-24 | 2008-01-08 | Hewlett-Packard Development Company, L.P. | Reliable datagram |
AU7036400A (en) | 1999-09-08 | 2001-04-10 | Mellanox Technologies Ltd. | Synchronization of interrupts with data packets |
US6751701B1 (en) | 2000-06-14 | 2004-06-15 | Netlogic Microsystems, Inc. | Method and apparatus for detecting a multiple match in an intra-row configurable CAM system |
US6484224B1 (en) | 1999-11-29 | 2002-11-19 | Cisco Technology Inc. | Multi-interface symmetric multiprocessor |
US6560613B1 (en) | 2000-02-08 | 2003-05-06 | Ensim Corporation | Disambiguating file descriptors |
US6675200B1 (en) * | 2000-05-10 | 2004-01-06 | Cisco Technology, Inc. | Protocol-independent support of remote DMA |
US7216225B2 (en) | 2000-05-24 | 2007-05-08 | Voltaire Ltd. | Filtered application-to-application communication |
US7103626B1 (en) | 2000-05-24 | 2006-09-05 | Hewlett-Packard Development, L.P. | Partitioning in distributed computer system |
AU6420001A (en) | 2000-06-02 | 2001-12-11 | Mellanox Technologies Ltd. | Dma doorbell |
US6690757B1 (en) | 2000-06-20 | 2004-02-10 | Hewlett-Packard Development Company, L.P. | High-speed interconnection adapter having automated lane de-skew |
US6687849B1 (en) | 2000-06-30 | 2004-02-03 | Cisco Technology, Inc. | Method and apparatus for implementing fault-tolerant processing without duplicating working process |
US7236740B2 (en) * | 2000-07-05 | 2007-06-26 | Samsung Electronics Co., Ltd. | Data retransmission apparatus and method in a mobile communication system employing HARQ technique |
JP2004526218A (ja) | 2000-08-24 | 2004-08-26 | ボルテール アドバンスト データ セキュリティ リミテッド | 相互接続されたファブリックにおける高度にスケーラブルで高速のコンテンツ・ベース・フィルタリング及び負荷均衡化システム及び方法 |
US6765922B1 (en) | 2000-09-08 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | Speculative transmit for system area network latency reduction |
US20020059052A1 (en) | 2000-09-12 | 2002-05-16 | Mellanox Technologies Ltd. | Co-simulation of network components |
US6732211B1 (en) | 2000-09-18 | 2004-05-04 | Ensim Corporation | Intercepting I/O multiplexing operations involving cross-domain file descriptor sets |
US6349035B1 (en) | 2000-09-29 | 2002-02-19 | Compaq Information Technologies Group, L.P. | Method and apparatus for tooless mating of liquid cooled cold plate with tapered interposer heat sink |
US6718392B1 (en) | 2000-10-24 | 2004-04-06 | Hewlett-Packard Development Company, L.P. | Queue pair partitioning in distributed computer system |
JP3601445B2 (ja) | 2000-12-06 | 2004-12-15 | 日本電気株式会社 | パケット転送装置及びそれに用いる転送情報管理方法並びにその転送情報検索方法 |
US6728743B2 (en) | 2001-01-04 | 2004-04-27 | Mellanox Technologies Ltd. | Modulo remainder generator |
US6976174B2 (en) | 2001-01-04 | 2005-12-13 | Troika Networks, Inc. | Secure multiprotocol interface |
US7254237B1 (en) | 2001-01-12 | 2007-08-07 | Slt Logic, Llc | System and method for establishing a secure connection |
US6950961B2 (en) | 2001-02-13 | 2005-09-27 | Hewlett-Packard Development Company, L.P. | Highly available, monotonic increasing sequence number generation |
US20020129293A1 (en) | 2001-03-07 | 2002-09-12 | Hutton John F. | Scan based multiple ring oscillator structure for on-chip speed measurement |
US20020140985A1 (en) | 2001-04-02 | 2002-10-03 | Hudson Kevin R. | Color calibration for clustered printing |
US7543290B2 (en) | 2001-04-11 | 2009-06-02 | Mellanox Technologies Ltd. | Multiple queue pair access with single doorbell |
US7185013B2 (en) | 2001-04-12 | 2007-02-27 | International Business Machines Corporation | Method for constructing and caching a chain of file identifiers and enabling inheritance of resource properties in file systems |
US7042848B2 (en) | 2001-05-04 | 2006-05-09 | Slt Logic Llc | System and method for hierarchical policing of flows and subflows of a data stream |
US6901052B2 (en) | 2001-05-04 | 2005-05-31 | Slt Logic Llc | System and method for policing multiple data flows and multi-protocol data flows |
US6904057B2 (en) | 2001-05-04 | 2005-06-07 | Slt Logic Llc | Method and apparatus for providing multi-protocol, multi-stage, real-time frame classification |
US6944168B2 (en) | 2001-05-04 | 2005-09-13 | Slt Logic Llc | System and method for providing transformation of multi-protocol packets in a data stream |
US6438130B1 (en) | 2001-06-28 | 2002-08-20 | Mellanox Technologies Ltd. | Forwarding database cache |
US7441017B2 (en) | 2001-06-29 | 2008-10-21 | Thomas Lee Watson | System and method for router virtual networking |
US6980328B2 (en) | 2001-07-05 | 2005-12-27 | Hewlett-Packard Development Company, L.P. | Direction-dependent color conversion in bidirectional printing |
US7136397B2 (en) | 2001-08-20 | 2006-11-14 | Slt Logic Llc | Network architecture and system for delivering bi-directional xDSL based services |
US6744652B2 (en) | 2001-08-22 | 2004-06-01 | Netlogic Microsystems, Inc. | Concurrent searching of different tables within a content addressable memory |
US7099275B2 (en) | 2001-09-21 | 2006-08-29 | Slt Logic Llc | Programmable multi-service queue scheduler |
US7151744B2 (en) | 2001-09-21 | 2006-12-19 | Slt Logic Llc | Multi-service queuing method and apparatus that provides exhaustive arbitration, load balancing, and support for rapid port failover |
US7161719B2 (en) | 2001-09-26 | 2007-01-09 | Hewlett-Packard Development Company, L.P. | Generalized color calibration architecture and method |
US6904534B2 (en) | 2001-09-29 | 2005-06-07 | Hewlett-Packard Development Company, L.P. | Progressive CPU sleep state duty cycle to limit peak power of multiple computers on shared power distribution unit |
US7023584B2 (en) | 2001-10-02 | 2006-04-04 | Hewlett-Packard Development Company, L.P. | Color calibration method and apparatus |
US20030065856A1 (en) | 2001-10-03 | 2003-04-03 | Mellanox Technologies Ltd. | Network adapter with multiple event queues |
JP2003116247A (ja) * | 2001-10-04 | 2003-04-18 | Mabuchi Motor Co Ltd | 小型モータ及びその製造方法 |
US7054035B2 (en) | 2001-10-29 | 2006-05-30 | Hewlett-Packard Development Company, L.P. | Method and system for management of color through conversion between color spaces |
US7228550B1 (en) | 2002-01-07 | 2007-06-05 | Slt Logic, Llc | System and method for making communication streams available to processes executing under control of an operating system but without the intervention of the operating system |
WO2003060715A2 (en) | 2002-01-11 | 2003-07-24 | Sun Microsystems, Inc. | Value recycling facility for multithreaded computations |
US7719980B2 (en) | 2002-02-19 | 2010-05-18 | Broadcom Corporation | Method and apparatus for flexible frame processing and classification engine |
US7055085B2 (en) * | 2002-03-07 | 2006-05-30 | Broadcom Corporation | System and method for protecting header information using dedicated CRC |
US8244890B2 (en) * | 2002-03-08 | 2012-08-14 | Broadcom Corporation | System and method for handling transport protocol segments |
US7093158B2 (en) | 2002-03-11 | 2006-08-15 | Hewlett-Packard Development Company, L.P. | Data redundancy in a hot pluggable, large symmetric multi-processor system |
US7245627B2 (en) | 2002-04-23 | 2007-07-17 | Mellanox Technologies Ltd. | Sharing a network interface card among multiple hosts |
US6705703B2 (en) | 2002-04-24 | 2004-03-16 | Hewlett-Packard Development Company, L.P. | Determination of control points for construction of first color space-to-second color space look-up table |
US6667918B2 (en) | 2002-05-01 | 2003-12-23 | Mellanox Technologies Ltd. | Self-repair of embedded memory arrays |
US7149227B2 (en) | 2002-05-31 | 2006-12-12 | Mellanox Technologies Ltd. | Round-robin arbiter with low jitter |
US7487264B2 (en) * | 2002-06-11 | 2009-02-03 | Pandya Ashish A | High performance IP processor |
US7171439B2 (en) | 2002-06-14 | 2007-01-30 | Integrated Device Technology, Inc. | Use of hashed content addressable memory (CAM) to accelerate content-aware searches |
US7263103B2 (en) | 2002-07-23 | 2007-08-28 | Mellanox Technologies Ltd. | Receive queue descriptor pool |
US7143412B2 (en) | 2002-07-25 | 2006-11-28 | Hewlett-Packard Development Company, L.P. | Method and apparatus for optimizing performance in a multi-processing system |
US7313667B1 (en) | 2002-08-05 | 2007-12-25 | Cisco Technology, Inc. | Methods and apparatus for mapping fields of entries into new values and combining these mapped values into mapped entries for use in lookup operations such as for packet processing |
US7631106B2 (en) | 2002-08-15 | 2009-12-08 | Mellanox Technologies Ltd. | Prefetching of receive queue descriptors |
WO2004017220A1 (en) * | 2002-08-19 | 2004-02-26 | Broadcom Corporation | One-shot rdma |
US7299266B2 (en) | 2002-09-05 | 2007-11-20 | International Business Machines Corporation | Memory management offload for RDMA enabled network adapters |
US7386619B1 (en) | 2003-01-06 | 2008-06-10 | Slt Logic, Llc | System and method for allocating communications to processors in a multiprocessor system |
US7316017B1 (en) | 2003-01-06 | 2008-01-01 | Slt Logic, Llc | System and method for allocatiing communications to processors and rescheduling processes in a multiprocessor system |
US7343541B2 (en) * | 2003-01-14 | 2008-03-11 | Broadcom Corporation | Data integrity in protocol offloading |
US7190827B2 (en) | 2003-01-22 | 2007-03-13 | Hewlett-Packard Development Company, L.P. | Color space conversion using interpolation |
GB2398134A (en) | 2003-01-27 | 2004-08-11 | Hewlett Packard Co | Applying a data handing policy to predetermined system calls |
US7082563B2 (en) * | 2003-01-31 | 2006-07-25 | Italtel S.P.A. | Automated method for generating the cyclic redundancy check for transmission of multi-protocol packets |
US8023520B2 (en) | 2003-03-27 | 2011-09-20 | Hewlett-Packard Development Company, L.P. | Signaling packet |
US7103744B2 (en) | 2003-03-27 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | Binding a memory window to a queue pair |
US7502826B2 (en) | 2003-03-27 | 2009-03-10 | Hewlett-Packard Development Company, L.P. | Atomic operations |
US7554993B2 (en) | 2003-03-27 | 2009-06-30 | Hewlett-Packard Development Company, L.P. | Method and apparatus for performing connection management with multiple stacks |
US20040210754A1 (en) | 2003-04-16 | 2004-10-21 | Barron Dwight L. | Shared security transform device, system and methods |
US20040223462A1 (en) | 2003-05-09 | 2004-11-11 | International Business Machines Corporation | Auto negotiate extension for ethernet infrastructure |
US20050021558A1 (en) | 2003-06-11 | 2005-01-27 | Beverly Harlan T. | Network protocol off-load engine memory management |
US20040252685A1 (en) | 2003-06-13 | 2004-12-16 | Mellanox Technologies Ltd. | Channel adapter with integrated switch |
US7356818B2 (en) | 2003-06-24 | 2008-04-08 | International Business Machines Corporation | Virtual machine communicating to external device without going through other virtual machines by using a list of IP addresses managed only by a single virtual machine monitor |
US7251736B2 (en) | 2003-06-25 | 2007-07-31 | International Business Machines Corporation | Remote power control in a multi-node, partitioned data processing system via network interface cards |
US7388840B2 (en) | 2003-06-30 | 2008-06-17 | Intel Corporation | Methods and apparatuses for route management on a networking control plane |
US7352893B2 (en) | 2003-07-09 | 2008-04-01 | Hewlett-Packard Development Company, L.P. | Representing extended color gamut information |
US7446901B2 (en) | 2003-07-21 | 2008-11-04 | Hewlett-Packard Development Company | Conforming output intensities of pens |
WO2005015856A1 (ja) | 2003-08-08 | 2005-02-17 | Sony Corporation | 通信システム、通信方法、通信端末装置及びその制御方法並びにプログラム |
US7496903B2 (en) | 2003-08-12 | 2009-02-24 | Hewlett-Packard Development Company, L.P. | Synthesizing application response measurement (ARM) instrumentation |
US7484209B2 (en) | 2003-08-12 | 2009-01-27 | Hewlett-Packard Development Company, L.P. | Instrumenting java code by modifying bytecodes |
US20050039171A1 (en) | 2003-08-12 | 2005-02-17 | Avakian Arra E. | Using interceptors and out-of-band data to monitor the performance of Java 2 enterprise edition (J2EE) applications |
US7617376B2 (en) | 2003-08-14 | 2009-11-10 | Hewlett-Packard Development Company, L.P. | Method and apparatus for accessing a memory |
US7757232B2 (en) | 2003-08-14 | 2010-07-13 | Hewlett-Packard Development Company, L.P. | Method and apparatus for implementing work request lists |
US7139894B1 (en) | 2003-09-12 | 2006-11-21 | Microsoft Corporation | System and methods for sharing configuration information with multiple processes via shared memory |
US7404190B2 (en) | 2003-09-18 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | Method and apparatus for providing notification via multiple completion queue handlers |
US7437738B2 (en) * | 2003-11-12 | 2008-10-14 | Intel Corporation | Method, system, and program for interfacing with a network adaptor supporting a plurality of devices |
US7739684B2 (en) | 2003-11-25 | 2010-06-15 | Intel Corporation | Virtual direct memory access crossover |
US20050172181A1 (en) | 2004-01-16 | 2005-08-04 | Mellanox Technologies Ltd. | System and method for production testing of high speed communications receivers |
US20050219278A1 (en) | 2004-03-30 | 2005-10-06 | Hudson Kevin R | Image formation with a flexible number of passes |
US7168784B2 (en) | 2004-03-30 | 2007-01-30 | Hewlett-Packard Development Company, L.P. | Formation of images |
US7929161B2 (en) | 2004-04-15 | 2011-04-19 | Hewlett-Packard Development Company, L.P. | Image processing system and method |
US7656870B2 (en) | 2004-06-29 | 2010-02-02 | Damaka, Inc. | System and method for peer-to-peer hybrid communications |
US7447861B2 (en) | 2004-07-14 | 2008-11-04 | International Business Machines Corporation | Integrated multi-function object locks |
US7650386B2 (en) | 2004-07-29 | 2010-01-19 | Hewlett-Packard Development Company, L.P. | Communication among partitioned devices |
US20060045098A1 (en) | 2004-08-31 | 2006-03-02 | Krause Michael R | System for port mapping in a network |
US7835380B1 (en) | 2004-10-19 | 2010-11-16 | Broadcom Corporation | Multi-port network interface device with shared processing resources |
US7403535B2 (en) | 2004-12-14 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | Aggregation of network resources providing offloaded connections between applications over a network |
US7551614B2 (en) | 2004-12-14 | 2009-06-23 | Hewlett-Packard Development Company, L.P. | Aggregation over multiple processing nodes of network resources each providing offloaded connections between applications over a network |
US7886076B2 (en) | 2005-01-12 | 2011-02-08 | International Business Machines Corporation | Bypassing routing stacks using mobile internet protocol |
US20060193318A1 (en) | 2005-02-28 | 2006-08-31 | Sriram Narasimhan | Method and apparatus for processing inbound and outbound quanta of data |
US7674564B2 (en) | 2005-04-11 | 2010-03-09 | Hewlett-Packard Development Company, L.P. | Color filter |
US7580415B2 (en) | 2005-04-27 | 2009-08-25 | Hewlett-Packard Development Company, L.P. | Aggregation of hybrid network resources operable to support both offloaded and non-offloaded connections |
US7580495B2 (en) | 2005-06-30 | 2009-08-25 | Slt Logic Llc | Mixer-based phase control |
US7573967B2 (en) | 2005-07-01 | 2009-08-11 | Slt Logic Llc | Input threshold adjustment in a synchronous data sampling circuit |
JP4544072B2 (ja) | 2005-07-20 | 2010-09-15 | ブラザー工業株式会社 | ノード装置、コンピュータプログラム、情報配信システム、及びネットワーク参加方法 |
US8645964B2 (en) | 2005-08-23 | 2014-02-04 | Mellanox Technologies Ltd. | System and method for accelerating input/output access operation on a virtual machine |
US7285996B2 (en) | 2005-09-30 | 2007-10-23 | Slt Logic, Llc | Delay-locked loop |
US7813460B2 (en) | 2005-09-30 | 2010-10-12 | Slt Logic, Llc | High-speed data sampler with input threshold adjustment |
US20070110034A1 (en) | 2005-11-14 | 2007-05-17 | Broadcom Corporation, A California Corporation | Pathways analysis and control in packet and circuit switched communication networks |
US20070124545A1 (en) | 2005-11-29 | 2007-05-31 | Anton Blanchard | Automatic yielding on lock contention for multi-threaded processors |
US9104894B2 (en) | 2005-12-16 | 2015-08-11 | Hewlett-Packard Development Company, L.P. | Hardware enablement using an interface |
US7827442B2 (en) | 2006-01-23 | 2010-11-02 | Slt Logic Llc | Shelf management controller with hardware/software implemented dual redundant configuration |
US7518164B2 (en) | 2006-03-29 | 2009-04-14 | Mellanox Technologies Ltd. | Current-triggered low turn-on voltage SCR |
US9111602B2 (en) | 2006-04-07 | 2015-08-18 | Mellanox Technologies, Ltd. | Accurate global reference voltage distribution system with local reference voltages referred to local ground and locally supplied voltage |
US7514978B2 (en) | 2006-05-08 | 2009-04-07 | Mellanox Technologies Ltd. | Terminated input buffer with offset cancellation circuit |
US7567267B2 (en) | 2006-07-31 | 2009-07-28 | Hewlett-Packard Development Company, L.P. | System and method for calibrating a beam array of a printer |
US7822594B2 (en) | 2006-08-07 | 2010-10-26 | Voltaire Ltd. | Service-oriented infrastructure management |
US7801027B2 (en) | 2006-08-30 | 2010-09-21 | Mellanox Technologies Ltd. | Auto-negotiation by nodes on an infiniband fabric |
US8948199B2 (en) | 2006-08-30 | 2015-02-03 | Mellanox Technologies Ltd. | Fibre channel processing by a host channel adapter |
US8296849B2 (en) | 2006-10-31 | 2012-10-23 | Hewlett-Packard Development Company, L.P. | Method and apparatus for removing homogeneity from execution environment of computing system |
US8522042B2 (en) | 2006-10-31 | 2013-08-27 | Hewlett-Packard Development Company, L.P. | Method and apparatus for enforcement of software licence protection |
US20080115217A1 (en) | 2006-10-31 | 2008-05-15 | Hewlett-Packard Development Company, L.P. | Method and apparatus for protection of a computer system from malicious code attacks |
US8244825B2 (en) | 2006-11-06 | 2012-08-14 | Hewlett-Packard Development Company, L.P. | Remote direct memory access (RDMA) completion |
US8233380B2 (en) | 2006-11-06 | 2012-07-31 | Hewlett-Packard Development Company, L.P. | RDMA QP simplex switchless connection |
US7562075B2 (en) | 2006-12-07 | 2009-07-14 | International Business Machines Corporation | Change approvals for computing systems |
US20080135774A1 (en) | 2006-12-08 | 2008-06-12 | Asml Netherlands B.V. | Scatterometer, a lithographic apparatus and a focus analysis method |
US8909742B2 (en) | 2006-12-18 | 2014-12-09 | Hewlett-Packard Development Company, L.P. | Distributed configuration of network interface cards |
US7848322B2 (en) | 2007-03-26 | 2010-12-07 | Voltaire Ltd. | Device, system and method of UDP communication |
US7864787B2 (en) | 2007-03-26 | 2011-01-04 | Voltaire Ltd. | Device, system and method of multicast communication |
US7856488B2 (en) | 2007-03-30 | 2010-12-21 | Hewlett-Packard Development Company, L.P. | Electronic device profile migration |
WO2008127672A2 (en) | 2007-04-11 | 2008-10-23 | Slt Logic Llc | Modular blade for providing scalable mechanical, electrical and environmental functionality in the enterprise using advanced tca boards |
US8817817B2 (en) | 2007-06-06 | 2014-08-26 | Hewlett-Packard Development Company, L.P. | Method for ethernet power savings on link aggregated groups |
US7802071B2 (en) | 2007-07-16 | 2010-09-21 | Voltaire Ltd. | Device, system, and method of publishing information to multiple subscribers |
US20090165003A1 (en) | 2007-12-21 | 2009-06-25 | Van Jacobson | System and method for allocating communications to processors and rescheduling processes in a multiprocessor system |
KR101408390B1 (ko) | 2008-04-28 | 2014-06-17 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | 데이터 전송 레이트 모니터 및 최대 데이터 전송 레이트 제어 방법 |
US8248930B2 (en) | 2008-04-29 | 2012-08-21 | Google Inc. | Method and apparatus for a network queuing engine and congestion management gateway |
WO2009136933A1 (en) | 2008-05-08 | 2009-11-12 | Hewlett-Packard Development Company, L.P. | A method for interfacing a fibre channel network with an ethernet based network |
US8108538B2 (en) | 2008-08-21 | 2012-01-31 | Voltaire Ltd. | Device, system, and method of distributing messages |
US20100088437A1 (en) | 2008-10-06 | 2010-04-08 | Mellanox Technologies Ltd | Infiniband adaptive congestion control adaptive marking rate |
US7921178B2 (en) | 2008-12-04 | 2011-04-05 | Voltaire Ltd. | Device, system, and method of accessing storage |
US8201168B2 (en) | 2008-12-25 | 2012-06-12 | Voltaire Ltd. | Virtual input-output connections for machine virtualization |
US8370675B2 (en) | 2009-01-28 | 2013-02-05 | Mellanox Technologies Ltd. | Precise clock synchronization |
CN102369697B (zh) | 2009-01-29 | 2016-03-16 | 惠普开发有限公司 | 基于不同的操作模式把一个或多个电子装置的端口连接到网络的不同子集 |
US8000336B2 (en) | 2009-04-21 | 2011-08-16 | Voltaire Ltd. | Spanning tree root selection in a hierarchical network |
US8255475B2 (en) | 2009-04-28 | 2012-08-28 | Mellanox Technologies Ltd. | Network interface device with memory management capabilities |
US8407478B2 (en) | 2009-07-07 | 2013-03-26 | Mellanox Technologies Ltd. | Control message signature for device control |
US8365057B2 (en) | 2009-07-30 | 2013-01-29 | Mellanox Technologies Ltd | Processing of data integrity field |
US8644140B2 (en) | 2009-09-09 | 2014-02-04 | Mellanox Technologies Ltd. | Data switch with shared port buffers |
US8225182B2 (en) | 2009-10-04 | 2012-07-17 | Mellanox Technologies Ltd. | Processing of block and transaction signatures |
US7934959B2 (en) | 2009-10-06 | 2011-05-03 | Mellanox Technologies Ltd. | Adapter for pluggable module |
WO2011043768A1 (en) | 2009-10-07 | 2011-04-14 | Ziebel, As | Combination injection string and distributed sensing string |
US8576715B2 (en) | 2009-10-26 | 2013-11-05 | Mellanox Technologies Ltd. | High-performance adaptive routing |
US20120039036A1 (en) | 2009-10-30 | 2012-02-16 | Krause Michael R | Thermal bus bar for a blade enclosure |
CN102576313A (zh) | 2009-11-02 | 2012-07-11 | 惠普发展公司,有限责任合伙企业 | 采用分布式嵌入式切换的多处理计算 |
US9110860B2 (en) | 2009-11-11 | 2015-08-18 | Mellanox Technologies Tlv Ltd. | Topology-aware fabric-based offloading of collective functions |
US8811417B2 (en) | 2009-11-15 | 2014-08-19 | Mellanox Technologies Ltd. | Cross-channel network operation offloading for collective operations |
US8213315B2 (en) | 2009-11-19 | 2012-07-03 | Mellanox Technologies Ltd. | Dynamically-connected transport service |
US20110173352A1 (en) | 2010-01-13 | 2011-07-14 | Mellanox Technologies Ltd | Power Reduction on Idle Communication Lanes |
-
2004
- 2004-04-21 GB GBGB0408868.8A patent/GB0408868D0/en not_active Ceased
-
2005
- 2005-04-08 EP EP05731627.5A patent/EP1738552B1/en active Active
- 2005-04-08 CN CN200580012678.0A patent/CN1961559A/zh active Pending
- 2005-04-08 WO PCT/GB2005/001376 patent/WO2005104479A1/en active Application Filing
-
2006
- 2006-10-19 US US11/584,263 patent/US20070036159A1/en not_active Abandoned
-
2011
- 2011-08-05 US US13/204,135 patent/US8737431B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304214A (zh) * | 2017-12-13 | 2018-07-20 | 华为技术有限公司 | 一种立即数的完整性的校验方法及装置 |
CN108304214B (zh) * | 2017-12-13 | 2022-05-13 | 超聚变数字技术有限公司 | 一种立即数的完整性的校验方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US8737431B2 (en) | 2014-05-27 |
GB0408868D0 (en) | 2004-05-26 |
US20110296535A1 (en) | 2011-12-01 |
EP1738552B1 (en) | 2017-06-14 |
US20070036159A1 (en) | 2007-02-15 |
WO2005104479A1 (en) | 2005-11-03 |
EP1738552A1 (en) | 2007-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10013390B2 (en) | Secure handle for intra-and inter-processor communications | |
US20180375782A1 (en) | Data buffering | |
US7159030B1 (en) | Associating a packet with a flow | |
US6427169B1 (en) | Parsing a packet header | |
US6629125B2 (en) | Storing a frame header | |
JP5282115B2 (ja) | ユーザーレベルスタック | |
CN100476769C (zh) | 降低写操作的数量的方法和系统 | |
US7519650B2 (en) | Split socket send queue apparatus and method with efficient queue flow control, retransmission and sack support mechanisms | |
CN1710880A (zh) | 探索路径最大传输单元的方法和设备 | |
CN1787490A (zh) | 交换组构网络的分组处理 | |
CN1458590A (zh) | 用网络栈同步和上载已卸载网络栈连接的方法 | |
CN1324555A (zh) | 计算机网络中输入/输出链路重试、故障及恢复的方法和设备 | |
CN113490927A (zh) | 具有硬件集成和乱序放置的rdma输送 | |
US20070061439A1 (en) | Signalling data reception | |
CN1961559A (zh) | 校验数据完整性 | |
US20200220952A1 (en) | System and method for accelerating iscsi command processing | |
US20090240925A1 (en) | Device, method, and computer program product that process message | |
US20110258444A1 (en) | Network Controller Decryption | |
US7962656B1 (en) | Command encoding of data to enable high-level functions in computer networks | |
CN1695363A (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 | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20090313 Address after: American California Applicant after: Solarflare Communications Inc. Address before: American California Applicant before: LEVEL 5 Networks Inc. |
|
ASS | Succession or assignment of patent right |
Owner name: SOLFUREIL COMMUNICATION CO., LTD. Free format text: FORMER OWNER: LEVEL5 NETWORK CO., LTD. Effective date: 20090313 |
|
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070509 |