IP Library Granted Patent US 12,647,373
Granted Patent B2
US 12,647,373 · App. 17/751,774 · Granted Jun 2, 2026

Real-time, time aware, dynamic, context aware and reconfigurable ethernet packet classification

Inventors: Thomas Anton Leyrer (Geisenhausen, DE); William Cronin Wallace (Richardson, TX); Pratheesh Gangadhar Thalakkal Kottilaveedu (Bengaluru, IN)
Assignee: TEXAS INSTRUMENTS INCORPORATED
H04L49/251G05B19/4155H04L43/16H04L45/74H04L49/252G05B2219/33139H04L47/32
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 12,647,373
App. No.
17/751,774
Granted
Jun 2, 2026
Kind
B2
Abstract

An ultra-high speed electronic communications device includes: a network communications interface; a memory; and one or more processing units, communicatively coupled to the memory and the network communications interface, wherein the memory stores instructions configured to cause the one or more processing units to: receive a data packet using the network communications interface; determine a classification of the data packet based, at least in part, on a plurality of factors, wherein the plurality of factors comprises a rate at which the data packet was received and a time at which the data packet was received; select, based at least in part, on the classification, an operation from a plurality of operations, wherein the plurality of operations comprises a cut-through operation and a store-and-forward operation; and perform the selected operation.

Claims (48)

1 . A device comprising:

a network interface circuit configured to receive a packet that has a set of attributes that includes a time at which the packet was received;

a packet classifier circuit coupled to the network interface circuit; and

a set of processing units coupled to the packet classifier circuit, wherein the packet classifier circuit is configured to determine, based on the set of attributes:

whether to, during a communication cycle divided into a plurality of intervals including a first interval and a second interval that occurs after the first interval, cause the network interface circuit to begin to provide the packet to the set of processing units during the first interval prior to the packet being completely received by the network interface circuit and if a port is available, or to cause the network interface circuit to wait to provide the packet to the set of processing units during the second interval after the packet is completely received and if a port is available.

2 . The device of claim 1 , wherein the set of attributes includes an addressee of the packet.

3 . The device of claim 1 , wherein the set of attributes includes a rate at which the packet was received.

4 . The device of claim 1 , wherein the packet includes a header that specifies a subset of the set of attributes.

5 . The device of claim 1 , wherein the packet is an Ethernet packet.

6 . The device of claim 1 , wherein:

the first interval corresponds to a critical period of the communication cycle; and

the second interval corresponds to a non-critical period of the communication cycle.

7 . The device of claim 1 , wherein the plurality of intervals further includes a third interval that occurs before the first interval, the third interval being a scheduling interval during which the network interface circuit does not provide the packet.

8 . A device comprising:

a network interface circuit configured to receive a packet that has a set of attributes;

a packet classifier circuit coupled to the network interface circuit; and

a set of processing units coupled to the packet classifier circuit, wherein the packet classifier circuit is configured to determine, based on the set of attributes whether to cause the network interface circuit to begin to provide the packet to the set of processing units prior to the packet being completely received by the network interface circuit; and

a scheduling circuit coupled to the packet classifier circuit and configured to define:

a first time phase during which the packet is permitted to be provided by the network interface circuit prior to the packet being completely received;

a second time phase during which the packet is permitted to be provided by the network interface circuit prior to or after the packet is completely received; and

a third time phase during which the packet is permitted to be provided by the network interface circuit after the packet is completely received.

9 . The device of claim 8 , wherein the set of attributes includes at least one of: a time at which the packet was received, an addressee of the packet, or a rate at which the packet was received.

10 . A device comprising:

a network interface circuit configured to receive a packet that has a set of attributes that includes a time at which the packet was received; and

a packet classifier circuit coupled to the network interface circuit and configured to couple to a processing unit, wherein the packet classifier circuit is configured to determine, based on the set of attributes:

whether to, during a communication cycle divided into a plurality of intervals including a first interval and a second interval that occurs after the first interval, cause the network interface circuit to begin to provide the packet to the processing unit during the first interval prior to the packet being completely received by the network interface circuit and if a port if available, or to cause the network interface circuit to wait to provide the packet to the processing unit during the second interval after the packet is completely received and if a port is available.

11 . The device of claim 10 , wherein the set of attributes further includes at least one of: an addressee of the packet or a rate at which the packet was received.

12 . A method comprising:

receiving a packet at a network interface circuit, wherein the packet is associated with a set of attributes that includes a time at which the packet was received;

determining, based on the set of attributes and within a communication cycle divided into a plurality of intervals including a first interval and a second interval that occurs after the first interval, whether to begin to provide the packet, by the network interface circuit to a processing unit, during the first interval before the packet has been completely received by the network interface circuit and if a port is available, or to wait to provide the packet, by the network interface circuit to the processing unit, during the second interval after the packet is completely received and if a port is available; and

providing the packet, by the network interface circuit, to the processing unit.

13 . The method of claim 12 , wherein the set of attributes includes an addressee of the packet.

14 . The method of claim 12 , wherein the set of attributes includes a rate at which the packet was received.

15 . The method of claim 12 , wherein the packet includes a header that specifies a subset of the set of attributes.

16 . The method of claim 12 , wherein the packet is an Ethernet packet.

17 . The method of claim 12 , wherein:

the first interval corresponds to a critical period of the communication cycle; and

the second interval corresponds to a non-critical period of the communication cycle.

18 . The method of claim 12 , wherein the plurality of intervals further includes a third interval that occurs before the first interval, the third interval being a scheduling interval during providing the packet is not performed by the network interface circuit.

19 . A method comprising:

receiving a packet at a network interface circuit, wherein the packet is associated with a set of attributes;

determining whether to begin to provide the packet, by the network interface circuit to a processing unit, before the packet has been completely received by the network interface circuit based on the set of attributes;

defining:

a first time during which the packet is permitted to be provided by the network interface circuit prior to the packet being completely received;

a second time during which the packet is permitted to be provided by the network interface circuit prior to or after the packet is completely received; and

a third time during which the packet is permitted to be provided by the network interface circuit after the packet is completely received; and

providing the packet, by the network interface circuit, to the processing unit.

20 . The method of claim 19 , wherein the set of attributes includes at least one of: a time at which the packet was received, an addressee of the packet, or a rate at which the packet was received.

Continuity (4)
Continuation 16425734 · May 29, 2019
Provisional Application 62786395 · Dec 29, 2018
Provisional Application 62677878 · May 30, 2018
Related Publication 20220286412A1 · Sep 8, 2022
References Cited (48)
US 5521913A · Gridley · 1996 [cited by examiner]
US 6938197B2 · Doubler et al. · 2005 [cited by applicant]
US 8675648B1 · Goel et al. · 2014 [cited by applicant]
US 9009580B2 · Sauber et al. · 2015 [cited by applicant]
US 9313140B2 · Matthews · 2016 [cited by applicant]
US 9325449B2 · Birrittella · 2016 [cited by applicant]
US 9373395B1 · Augustine et al. · 2016 [cited by applicant]
US 10601713B1 · Turgeman et al. · 2020 [cited by applicant]
US 20020083175A1 · Afek et al. · 2002 [cited by applicant]
US 20020118640A1 · Oberman · 2002 [cited by examiner]
US 20040066746A1 · Matsunaga · 2004 [cited by applicant]
US 20050053081A1 · Andersson et al. · 2005 [cited by applicant]
US 20050080953A1 · Oner et al. · 2005 [cited by applicant]
US 20050271073A1 · Johnsen · 2005 [cited by examiner]
US 20070091802A1 · Pan et al. · 2007 [cited by applicant]
US 20080071924A1 · Chilukoor · 2008 [cited by applicant]
US 20080091857A1 · McDaniel · 2008 [cited by applicant]
US 20100329133A1 · Hao et al. · 2010 [cited by applicant]
US 20110261814A1 · Matthews · 2011 [cited by applicant]
US 20130177026A1 · Soni et al. · 2013 [cited by applicant]
US 20140098816A1 · Matthews · 2014 [cited by examiner]
US 20140122560A1 · Ramey et al. · 2014 [cited by applicant]
US 20140307740A1 · Li et al. · 2014 [cited by applicant]
US 20140355619A1 · Fukuda · 2014 [cited by examiner]
US 20150071283A1 · Hammond et al. · 2015 [cited by applicant]
US 20150078376A1 · Wisehart · 2015 [cited by applicant]
US 20150078383A1 · Wisehart · 2015 [cited by applicant]
US 20150304952A1 · Coster et al. · 2015 [cited by applicant]
US 20160093351A1 · Jung et al. · 2016 [cited by applicant]
US 20160093353A1 · Jung et al. · 2016 [cited by applicant]
US 20160093354A1 · Andre et al. · 2016 [cited by applicant]
US 20160315634A1 · Mei et al. · 2016 [cited by applicant]
US 20160373362A1 · Cheng et al. · 2016 [cited by applicant]
US 20170279712A1 · Nainar et al. · 2017 [cited by applicant]
US 20170359268A1 · Chan et al. · 2017 [cited by applicant]
US 20180077037A1 · Zhang et al. · 2018 [cited by applicant]
US 20180343198A1 · Stark et al. · 2018 [cited by applicant]
US 20190140979A1 · Levi et al. · 2019 [cited by applicant]
US 20190207864A1 · Taniguchi · 2019 [cited by examiner]
US 20190313285A1 · Gottwerth · 2019 [cited by applicant]
US 20200099626A1 · Yoneda · 2020 [cited by examiner]
US 20210073619A1 · Wang et al. · 2021 [cited by applicant]
US 20210110854A1 · Ranjan et al. · 2021 [cited by applicant]
US 20210407986A1 · Chien et al. · 2021 [cited by applicant]
CN 103141058A · 2013 [cited by applicant]
3GPP TS 29.272 V8.12.0 (Dec. 2012) 3rd Generation Partnership Project: Technical Specification Group Core Network and Terminals; Evolved Packet System (EPS); Mobility Management Entity (MME) and Serving GPRS Support Nod… [cited by applicant]
3GPP TSG-SA WG1 Meeting #67; Sophia-Antipolis, France; Aug. 18-22, 2014; 4 pages. [cited by applicant]
First Chinese Office Action for CN 2019113629353 dated Aug. 26, 2023. [cited by applicant]