IP Library Granted Patent US 11,722,585
Granted Patent B2
US 11,722,585 · App. 17/651,212 · Granted Aug 8, 2023

Reliable communications using a point to point protocol

Inventors: Pradeep Sindhu (Los Altos Hills, CA); Deepak Goel (San Jose, CA); Srihari Raju Vegesna (San Jose, CA); Aibing Zhou (San Jose, CA); Shashi Kumar (Fremont, CA); Rohit Sunkam Ramanujam (Sunnyvale, CA)
Assignee: Fungible, Inc.
H04L69/08H04L1/1621H04L69/03H04L69/14H04L69/166H04L69/22H04L69/26H04L69/324H04L47/39H04L49/10H04L69/02
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 11,722,585
App. No.
17/651,212
Granted
Aug 8, 2023
Kind
B2
Abstract

This disclosure describes techniques for performing communications between devices using various aspects of Ethernet standards. As further described herein, a protocol is disclosed that may be used for communications between devices, where the communications take place over a physical connection complying with Ethernet standards. Such a protocol may enable reliable and in-order delivery of frames between devices, while following Ethernet physical layer rules, Ethernet symbol encoding, Ethernet lane alignment, and/or Ethernet frame formats.

Claims (31)

1. A system comprising:

a first device connected to an Ethernet physical layer connection, wherein the first device is configured to: construct a frame having a twelve-byte field, a two-byte field, and a data field, wherein the two-byte field includes information identifying whether the frame is to be interpreted as an Ethernet frame, output the frame over the Ethernet physical layer connection by transmitting the twelve-byte field, followed by the two-byte field, and followed by the data field, and output, over the Ethernet physical layer connection, an Ethernet frame check sequence calculated based on the frame; and a second device connected to the Ethernet physical layer connection, wherein the second device is configured to: receive the frame over the Ethernet physical layer connection, determine, based on the two-byte field, whether the frame is to be interpreted as an Ethernet frame, and communicate with the first device;

wherein the second device is further configured to: parse, from the data field, a plurality of messages included within the frame, wherein each of the plurality of messages includes a message header and a message payload;

wherein the plurality of messages includes a message marked with an error, and wherein the second device is further configured to: refrain from processing the message marked with an error.

2. The system of claim 1 , wherein to determine whether the frame is to be interpreted as an Ethernet frame, the second device is further configured to:

determine, based on the two-byte field, that the frame is not to be interpreted as an Ethernet frame.

3. The system of claim 2 , wherein the frame is a first frame, wherein the twelve-byte field is a first frame twelve-byte field, wherein the two-byte field is a first frame two-byte field, and wherein the data field is a first frame data field, and wherein to communicate with the first device, the second device is further configured to:

construct a second frame having a second frame twelve-byte field, a second frame two-byte field, and a second frame data field, wherein the second frame two-byte field includes information specifying that the second frame is not to be interpreted as an Ethernet frame; and

output the second frame over the Ethernet physical layer connection to the first device by transmitting the second frame twelve-byte field, followed by the second frame two-byte field, and followed by the second frame data field.

4. The system of claim 3 , wherein the Ethernet frame check sequence is a first frame Ethernet frame check sequence, and wherein to communicate with the first device, the second device is further configured to:

output, over the Ethernet physical layer connection, a second frame Ethernet frame check sequence calculated based on the second frame.

5. The system of claim 3 , wherein the second device is further configured to:

acknowledge receipt of the first frame.

6. The system of claim 5 , wherein to acknowledge receipt of the first frame, the second device is configured to:

include an acknowledgement of the first frame within the second frame twelve-byte field.

7. The system of claim 6 , wherein to construct the first frame, the first device is configured to:

include, within the first frame twelve-byte field, a sequence number identifying the first frame.

8. The system of claim 7 , wherein to include an acknowledgment of the first frame within the second frame, the second device is configured to:

include the sequence number identifying the first frame within the second frame twelve-byte field.

9. The system of claim 8 , wherein the sequence number is included within a plurality of earlier sequential numbers, and wherein the first device is further configured to:

receive, over the Ethernet physical layer connection, the second frame;

parse, from the second frame, the sequence number;

interpret the sequence number as acknowledging the first frame; and

interpret the sequence number as acknowledging another frame that has one of the earlier sequential numbers.

10. The system of claim 2 , wherein the frame is a first frame, wherein the twelve-byte field is a first frame twelve-byte field, wherein the two-byte field is a first frame two-byte field, and wherein the data field is a first frame data field, and wherein to communicate with the first device, the second device is further configured to:

construct a second frame having a second frame twelve-byte field, a second frame two-byte field, and a second frame data field, wherein the second frame two-byte field includes information specifying that the second frame is to be interpreted as an Ethernet frame; and

output the second frame over the Ethernet physical layer connection and to the first device by transmitting the second frame twelve-byte field, followed by the second frame two-byte field, and followed by the second frame data field.

11. The system of claim 1 , wherein the second device is further configured to:

establish communications with the first device over the Ethernet physical layer connection prior to receiving the frame.

12. The system of claim 1 , wherein the first device is further configured to:

allocate bandwidth between Ethernet frames and frames that are not to be interpreted as Ethernet frames.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2023
From: FUNGIBLE, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 064434/0430 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2023
From: SINDHU, PRADEEP; GOEL, DEEPAK; VEGESNA, SRIHARI RAJU; ZHOU, AIBING; KUMAR, SHASHI; RAMANUJAM, ROHIT SUNKAM
To: FUNGIBLE, INC.
Reel/Frame 063422/0144 →
Continuity (4)
Continuation 17063210 · Oct 5, 2020
Division 16295902 · Mar 7, 2019
Provisional Application 62640487 · Mar 8, 2018
Related Publication 20220174133A1 · Jun 2, 2022