IP Library Granted Patent US 8,751,909
Granted Patent B2
US 8,751,909 · App. 13/489,474 · Granted Jun 10, 2014

Processing of block and transaction signatures

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,751,909
App. No.
13/489,474
Granted
Jun 10, 2014
Kind
B2
Abstract

A network communication device includes a host interface, which is coupled to communicate with a host processor, having a host memory, so as to receive a work request to execute a transaction in which a plurality of data blocks are to be transferred over a packet network. Processing circuitry is configured to process multiple data packets so as to execute the transaction, each data packet in the transaction containing a portion of the data blocks, and the multiple data packets including at least first and last packets, which respectively contain the first and last data blocks of the transaction. The processing circuitry is configured to compute a transaction signature over the data blocks while processing the data packets so that at least the first data block passes out of the network communication device through one of the interfaces before computation of the transaction signature is completed.

Claims (18)

1. A network communication device, comprising:

a host interface, which is coupled to communicate with a host processor so as to receive a work request to execute a transaction in which data are transferred over a packet network;

a network interface, coupled to the packet network; and

processing circuitry, which is configured to process one or more data packets containing the data so as to execute the transaction subject to a signature that is defined over an integer number of data blocks of a given size, and which is configured to pad the data in order to fit the integer number of the data blocks, and to compute the signature over the padded data.

2. The device according to claim 1 , wherein the processing circuitry is configured to pad the data with padding that is signature-invariant with respect to the defined signature.

3. The device according to claim 1 , wherein the processing circuitry is configured to receive the data from a heterogeneous protection domain, in which different data blocks may have different sizes, and to pad the data for transmission in a homogeneous protection domain, in which all the data blocks have the same size.

4. The device according to claim 1 , and comprising a control memory, which is configured to store a signature context specifying a definition of the signature for the transaction, wherein the processing circuitry is configured to read and apply the signature context in order to compute the signature.

5. The device according to claim 1 , wherein the data are received by the processing circuitry with a first signature, and the processing circuitry is configured to remove, read and verify the first signature, to pad the data after removing the first signature, and to compute and append a second signature, different from the first signature, to the integer number of the data blocks that contain the padded data.

6. A method for communication, comprising:

receiving a work request from a host processor to execute a transaction in which data are transferred, subject to a signature that is defined over an integer number of data blocks of a given size, over a packet network via a network interface device;

padding the data in the network interface device in order to fit the integer number of the data blocks;

computing the signature in the network interface device over the padded data; and

processing, in the network interface device, one or more data packets containing the data with the signature so as to execute the transaction.

7. The method according to claim 6 , wherein the padding the data comprises appending to the data padding that is signature-invariant with respect to the defined signature.

8. The method according to claim 6 , wherein processing the one or more data packets comprises receiving the data from a heterogeneous protection domain, in which different data blocks may have different sizes, and wherein padding the data comprises preparing the data for transmission in a homogeneous protection domain, in which all the data blocks have the same size.

9. The method according to claim 6 , and comprising reading a definition of the signature for the transaction from a signature context stored in a control memory, wherein the data are padded and the signature is computed in accordance with the definition in the signature context.

10. The method according to claim 6 , wherein processing the one or more data packets comprises receiving the data with a first signature, verifying the first signature, and removing the first signature from the data, and

wherein the data are padded after removing the first signature, and wherein computing the signature comprises computing and appending a second signature, different from the first signature, to the integer number of the data blocks that contain the padded data.

Assignments (3)
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 37900/0720 Recorded Jul 13, 2018
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MELLANOX TECHNOLOGIES, LTD.
Reel/Frame 046542/0792 →
PATENT SECURITY AGREEMENT Recorded Feb 24, 2016
From: MELLANOX TECHNOLOGIES, LTD.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 037900/0720 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2012
From: KAGAN, MICHAEL; BLOCH, NOAM; SHACHAR, ARIEL
To: MELLANOX TECHNOLOGIES LTD.
Reel/Frame 028323/0643 →