IP Library Granted Patent US 8,958,440
Granted Patent B2
US 8,958,440 · App. 13/903,454 · Granted Feb 17, 2015

System and method for identifying upper layer protocol message boundaries

Inventor: Uri Elzur (Irvine, CA)
Assignee: Broadcom Corporation
H04L29/06217H04L69/16H04L69/166H04L69/22H04L69/161
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,958,440
App. No.
13/903,454
Granted
Feb 17, 2015
Kind
B2
Abstract

Systems and methods that identify the Upper Layer Protocol (ULP) message boundaries are provided. In one example, a method that identifies ULP message boundaries is provided. The method may include one or more of the following steps: attaching a framing header of a frame to a data payload to form a packet, the framing header being placed immediately after the byte stream transport protocol header, the framing header comprising a length field comprising a length of a framing protocol data unit (PDU); and inserting a marker in the packet, the marker pointing backwards to the framing header and being inserted at a preset interval.

Claims (50)

1. A method comprising:

formatting a message including a transport protocol header;

attaching a framing header to the message, the framing header being placed immediately after the transport protocol header and before a message payload;

inserting a marker in the message payload pointing backwards to the framing header; and

sending the message including the attached framing header and the inserted marker from a first electronic device to a second electronic device via a network.

2. The method of claim 1 , further comprising:

receiving the message at the second electronic device;

locating the marker;

using the marker to locate the framing header;

using the framing header to locate a separate protocol header; and

determining, at the second electronic device, whether the separate protocol header of the message identifies the message as a remote Direct Memory Access operation.

3. The method of claim 2 , further comprising:

performing, at the second electronic device, a remote Direct Memory Access operation in accordance with data elements included in the message if the transport protocol header of the message identifies the message as the remote Direct Memory Access (rDMA) operation.

4. The method of claim 3 , wherein the data elements in the message identify a set of buffers in the second electronic device which reference a memory of the second electronic device.

5. The method of claim 4 , wherein data from the received message payload is written directly into the memory of the second electronic device without making an intermediate copy of the data.

6. The method of claim 3 , wherein the data elements in the message indicate in which memory buffer and in which location within the memory buffer payload data should be directly placed.

7. The method of claim 1 , wherein the framing header comprises at least one of control information or data information.

8. The method of claim 1 , wherein the message comprises a TCP segment.

9. The method of claim 1 , wherein the marker comprises a delta value indicating a number of bytes before a marker location to a particular location within the framing header.

10. The method of claim 1 , further comprising:

processing a TCP segment such that message payload data is placed in a pre-designated memory location specific to the message payload data independent of other TCP segments.

11. The method of claim 10 , wherein the message payload data is placed in the predesignated memory location specific to the message payload even if TCP segments arrive out of order.

12. An electronic device comprising:

a communication interface configured to receive a message from another electronic device; and

a processor configured to

locate a marker within the message;

use the marker to locate a framing header of the message;

use the framing header to locate a separate protocol header of the message;

determine whether the separate protocol header of the message identifies the message as a remote Direct Memory Access operation; and

cause the remote Direct Memory Access operation to be performed at the electronic device in accordance with data elements included in the message if the transport header of the message identifies the message as the remote Direct Memory Access (rDMA) operation.

13. The electronic device of claim 12 , wherein the data elements in the message identify a set of buffers in the electronic device which reference a memory in the electronic device.

14. The electronic device of claim 13 , wherein data from the received message payload is written directly into the memory of the electronic device without making an intermediate copy of the data.

15. The electronic device of claim 13 , wherein the data elements in the message indicate in which memory buffer and in which location within the memory buffer payload data should be directly placed.

16. The electronic device of claim 12 , wherein the framing header comprises at least one of control information or data information.

17. The electronic device of claim 12 , wherein the message comprises a TCP segment.

18. The electronic device of claim 12 , wherein the marker comprises a delta value indicating a number of bytes before a marker location to a particular location within the framing header.

19. The electronic device of claim 12 , wherein the processor is configured to process a TCP segment such that message payload data is placed in a pre-designated memory location specific to the message payload data independent of other TCP segments.

20. A method comprising:

receiving, at a first electronic device, a message from a second electronic device;

locating a marker within the message;

using the marker to locate a framing header of the message;

using the framing header to locate a separate protocol header of the message;

determining whether the separate protocol header of the message identifies the message as a remote Direct Memory Access operation; and

causing the remote Direct Memory Access operation to be performed at the first electronic device in accordance with data elements included in the message if the transport header of the message identifies the message as the remote Direct Memory Access (rDMA) operation.

21. An electronic device comprising:

a processor configured to

format a message including a transport protocol header;

attach a framing header to the message, the framing header being placed immediately after the transport protocol header and before a message payload;

insert a marker in the message payload pointing backwards to the framing header; and

a communication interface configured to send the message including the attached framing header and the inserted marker from a first electronic device to a second electronic device via a network.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2013
From: ELZUR, URI
To: BROADCOM CORPORATION
Reel/Frame 030735/0449 →
Continuity (8)
Continuation 12758484 · Apr 12, 2010
Continuation 11868655 · Oct 8, 2007
Continuation 10230643 · Aug 29, 2002
Provisional Application 60372851 · Apr 16, 2002
Provisional Application 60372852 · Apr 16, 2002
Provisional Application 60363356 · Mar 11, 2002
Provisional Application 60363381 · Mar 8, 2002
Related Publication 20130262607A1 · Oct 3, 2013