IP Library › Granted Patent US 12,712,820
Granted Patent B1
US 12,712,820 · App. 18/401,586 · Granted Aug 18, 2026

Reflected packets

Inventors: William Brad Matthews (Los Gatos, CA); Puneet Agarwal (Santa Clara, CA)
Assignee: Innovium, Inc.
H04L47/31H04L43/0882H04L45/02H04L45/121H04L45/24H04L45/74H04L47/125H04L47/26H04L47/32H04L49/9057
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,712,820
App. No.
18/401,586
Granted
Aug 18, 2026
Kind
B1
Abstract

Nodes within a network are configured to adapt to changing path states, due to congestion, node failures, and/or other factors. A node may selectively convey path information and/or other state information to another node by annotating the information into packets it receives from the other node. A node may selectively reflect these annotated packets back to the other node, or other nodes that subsequently receive these annotated packets may reflect them. A weighted cost multipathing selection technique is improved by dynamically adjusting weights of paths in response to feedback indicating the current state of the network topology, such as collected through these reflected packets. In an embodiment, certain packets that would have been dropped may instead be transformed into “special visibility” packets that may be stored and/or sent for analysis. In an embodiment, insight into the performance of a network device is enhanced through the use of programmable visibility engines.

Claims (52)

1 . A networking apparatus comprising:

a plurality of communication ports configured to send and receive packets;

forwarding logic configured to:

based at least on destination address information in one or more packets, identify a destination for each of the one or more packets;

identify a destination port, of the communication ports, that is associated with the destination for each of the one or more packets;

send a particular packet among the one or more packets out an identified destination port associated with the destination of the particular packet;

packet analysis logic configured to determine that the networking apparatus is a reflection node for a packet of the one or more packets based on an analysis of information in the packet and one or more reflecting node rules;

reflection logic configured to, based on a determination that the networking apparatus is a reflection node for the packet, send a copy of the packet back to a sending device from which the packet was sent, the reflection logic further configured to evaluate the information in the packet to determine whether to instruct the forwarding logic to send the packet to an original destination indicated in the packet information.

2 . The networking apparatus of claim 1 , further comprising annotation logic configured to insert, into the copy of the packet, one or both of: state information of the networking apparatus, or state information of a path traversed by the packet.

3 . The networking apparatus of claim 1 , further comprising annotation logic configured to insert, into the copy of the packet, one or more of: a size of a queue in the networking apparatus, a delay associated with a queue in the networking apparatus, a count of packets that the network apparatus has dropped, a port utilization level of one or more of the communication ports, a delay experienced by the packet, a congestion measure, or a tag indicating that the copy of the packet has been reflected.

4 . The networking apparatus of claim 1 , wherein the one or more reflecting node rules are based on one or both of: statistics kept by the networking apparatus or characteristics of the packet.

5 . The network apparatus of claim 1 , wherein the one or more reflecting node rules include one or more of: a traffic flow associated with the packet, a queue to which the packet is assigned, a measure of delay associated with the packet, a measure of congestion at the networking apparatus, a queue fill level of the queue to which the packet is assigned, a link utilization level associated with the destination, or an annotation frequency.

6 . The network apparatus of claim 1 , wherein the copy of the packet does not include at least a portion of a payload of the packet.

7 . The network apparatus of claim 1 , wherein the reflection logic is further configured to:

manipulate a destination address field in a packet header of the copy of the packet to specify the sending device.

8 . The network apparatus of claim 1 , wherein the reflection logic is further configured to:

identify a particular network device along a path traversed by the packet;

encapsulate the copy of the packet in a tunnel header addressed to the particular network device.

9 . The network apparatus of claim 1 , wherein the reflection logic is further configured to:

duplicate at least a portion of the packet to generate the copy of the packet;

address the copy of the packet to indicate that the copy of the packet is destined for the sending device of the packet;

send the copy of the packet to a preceding hop using the reverse path of a path in the network that the packet traversed from the sending device to the networking apparatus.

10 . The network apparatus of claim 9 , wherein the path traversed by the packet from the sending device to the networking apparatus includes a collecting device configured to intercept the copy of the packet and generate one or more metrics based on the copy of the packet.

11 . A method comprising:

at a source port of a network device comprising a plurality of communication ports, receiving packets over a network;

based at least on destination address information in one or more packets, identifying a destination for each of the one or more packets;

identifying a destination port, of the communication ports, that is associated with the destination for each of the one or more packets;

sending a particular packet among the one or more packets out an identified destination port associated with the destination of the particular packet;

determining that the network device is a reflection node for a packet of the one or more packets based on an analysis of information in the packet and one or more reflecting node rules;

based on a determination that the network device is a reflection node for the packet, sending a copy of the packet back to a sending device from which the packet was sent;

evaluating the information in the packet to determine whether to send the packet to an original destination indicated in the packet information.

12 . The method of claim 11 , further comprising inserting, into the copy of the packet, one or both of: state information of the network device, or state information of a path traversed by the packet.

13 . The method of claim 11 , wherein the one or more reflecting node rules are based on one or both of: statistics kept by the network device or characteristics of the packet.

14 . The method of claim 11 , wherein the copy of the packet does not include at least a portion of a payload of the packet.

15 . The method of claim 11 , addressing the copy of the packet to indicate that the copy of the packet is destined for the sending device of the packet comprises manipulating a destination address field in a packet header of the copy of the packet to specify the sending device.

16 . The method of claim 11 , further comprising:

identifying a particular network device along a path traversed by the packet;

encapsulating the copy of the packet in a tunnel header addressed to the particular network device.

17 . The method of claim 11 , further comprising, at a collecting device traversed by the packet from the network device to the network device, intercepting the copy of the packet and generating one or more metrics based on the copy of the packet.

18 . The method of claim 11 , further comprising:

duplicating at least a portion of the packet to generate the copy of the packet;

addressing the copy of the packet to indicate that the copy of the packet is destined for the sending device of the packet;

sending the copy of the packet to a preceding hop using the reverse path of a path in the network that the packet traversed from the sending device to the networking apparatus.

19 . One or more non-transitory computer-readable media storing instructions that, when executed by one or more computing devices, cause performance of:

at a source port of a network device comprising a plurality of communication ports, receiving packets over a network;

based at least on destination address information in one or more packets, identifying a destination for each of the one or more packets;

identifying a destination port, of the communication ports, that is associated with the destination for each of the one or more packets;

sending a particular packet among the one or more packets out an identified destination port associated with the destination of the particular packet;

determining that the network device is a reflection node for a packet of the one or more packets based on an analysis of information in the packet and one or more reflecting node rules;

based on a determination that the network device is a reflection node for the packet, sending a copy of the packet back to a sending device from which the packet was sent;

evaluating the information in the packet to determine whether to send the packet to an original destination indicated in the packet information.

20 . The one or more non-transitory computer-readable media of claim 19 , wherein the instructions, when executed by the one or more computing devices, further cause performance of inserting, into the copy of the packet, one or both of: state information of the network device, or state information of a path traversed by the packet.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2024
From: MATTHEWS, WILLIAM BRAD; AGARWAL, PUNEET
To: INNOVIUM, INC.
Reel/Frame 066179/0749 →
Continuity (4)
Continuation 17352583 · Jun 21, 2021
Continuation 16527278 · Jul 31, 2019
Continuation 15410686 · Jan 19, 2017
Provisional Application 62289199 · Jan 30, 2016
References Cited (195)
US 5805602A · Cloutier et al. · 1998 [cited by applicant]
US 6011805A · Esteve et al. · 2000 [cited by applicant]
US 6373399B1 · Johnson et al. · 2002 [cited by applicant]
US 6625151B1 · Alowersson et al. · 2003 [cited by applicant]
US 6650621B1 · Maki-Kullas · 2003 [cited by applicant]
US 6721316B1 · Epps et al. · 2004 [cited by applicant]
US 6865160B1 · Bare · 2005 [cited by applicant]
US 6977930B1 · Epps et al. · 2005 [cited by applicant]
US 7149187B1 · Jacobson et al. · 2006 [cited by applicant]
US 7295562B1 · Acharya et al. · 2007 [cited by applicant]
US 7360217B2 · Melvin et al. · 2008 [cited by applicant]
US 7382244B1 · Donovan et al. · 2008 [cited by applicant]
US 7813348B1 · Gupta et al. · 2010 [cited by applicant]
US 7898959B1 · Arad · 2011 [cited by applicant]
US 8004990B1 · Callon · 2011 [cited by applicant]
US 8281033B1 · Riordan et al. · 2012 [cited by applicant]
US 8588242B1 · Izenberg et al. · 2013 [cited by applicant]
US 9489401B1 · Garcia et al. · 2016 [cited by applicant]
US 9565114B1 · Kabbani et al. · 2017 [cited by applicant]
US 9805018B1 · Richfield · 2017 [cited by applicant]
US 9979624B1 · Volpe et al. · 2018 [cited by applicant]
US 10063488B2 · Oran et al. · 2018 [cited by applicant]
US 10313255B1 · Matthews et al. · 2019 [cited by applicant]
US 10320691B1 · Matthews et al. · 2019 [cited by applicant]
US 10389643B1 · Matthews et al. · 2019 [cited by applicant]
US 10505849B1 · Iny et al. · 2019 [cited by applicant]
US 10673770B1 · Matthews et al. · 2020 [cited by applicant]
US 10713079B2 · Muramatti et al. · 2020 [cited by applicant]
US 10721187B1 · Goldman et al. · 2020 [cited by applicant]
US 10735339B1 · Matthews et al. · 2020 [cited by applicant]
US 11044204B1 · Matthews et al. · 2021 [cited by applicant]
US 11621904B1 · Matthews et al. · 2023 [cited by applicant]
US 11665104B1 · Matthews et al. · 2023 [cited by applicant]
US 20020133617A1 · Davies · 2002 [cited by applicant]
US 20030093567A1 · Lolayekar et al. · 2003 [cited by applicant]
US 20030131122A1 · Kondo et al. · 2003 [cited by applicant]
US 20030142685A1 · Bare · 2003 [cited by applicant]
US 20030152076A1 · Lee et al. · 2003 [cited by applicant]
US 20030154328A1 · Henderson et al. · 2003 [cited by applicant]
US 20030210695A1 · Henrion · 2003 [cited by applicant]
US 20030231646A1 · Chandra et al. · 2003 [cited by applicant]
US 20040196790A1 · Balakrishnan et al. · 2004 [cited by applicant]
US 20040218925A1 · Nahm · 2004 [cited by applicant]
US 20050007959A1 · Tomonaga et al. · 2005 [cited by applicant]
US 20050007961A1 · Scott et al. · 2005 [cited by applicant]
US 20050013248A1 · Mekkittikul et al. · 2005 [cited by applicant]
US 20050068970A1 · Srikrishna et al. · 2005 [cited by applicant]
US 20050086363A1 · Ji · 2005 [cited by applicant]
US 20050281279A1 · Dennison et al. · 2005 [cited by applicant]
US 20060036821A1 · Frey et al. · 2006 [cited by applicant]
US 20060067213A1 · Evans et al. · 2006 [cited by applicant]
US 20060117099A1 · Mogul · 2006 [cited by applicant]
US 20060218556A1 · Nemirovsky et al. · 2006 [cited by applicant]
US 20060274760A1 · Loher · 2006 [cited by applicant]
US 20070028003A1 · Rudkin · 2007 [cited by applicant]
US 20070091802A1 · Pan et al. · 2007 [cited by applicant]
US 20070195778A1 · Tatar et al. · 2007 [cited by applicant]
US 20070280117A1 · Katz et al. · 2007 [cited by applicant]
US 20080112343A1 · Oleszczuk · 2008 [cited by applicant]
US 20080212613A1 · Perkinson et al. · 2008 [cited by applicant]
US 20080259800A1 · Clark et al. · 2008 [cited by applicant]
US 20090010248A1 · Kanai · 2009 [cited by applicant]
US 20090028045A1 · Stellenberg et al. · 2009 [cited by applicant]
US 20090063431A1 · Erol et al. · 2009 [cited by applicant]
US 20090075668A1 · Rao · 2009 [cited by applicant]
US 20090109858A1 · Yamasaki et al. · 2009 [cited by applicant]
US 20090190591A1 · Sankaran · 2009 [cited by applicant]
US 20090304014A1 · Evans et al. · 2009 [cited by applicant]
US 20100046524A1 · Rune et al. · 2010 [cited by applicant]
US 20100091782A1 · Hiscock · 2010 [cited by applicant]
US 20100309783A1 · Howe · 2010 [cited by applicant]
US 20110051602A1 · Matthews et al. · 2011 [cited by applicant]
US 20110205895A1 · Chen et al. · 2011 [cited by applicant]
US 20110280126A1 · Fefer et al. · 2011 [cited by applicant]
US 20120008496A1 · Saavedra · 2012 [cited by applicant]
US 20120063451A1 · Keesara et al. · 2012 [cited by applicant]
US 20120201241A1 · Subramanian et al. · 2012 [cited by applicant]
US 20120236860A1 · Kompella et al. · 2012 [cited by applicant]
US 20120254931A1 · Oztaskent et al. · 2012 [cited by applicant]
US 20130088977A1 · Baillargeon · 2013 [cited by examiner]
US 20130259037A1 · Natarajan et al. · 2013 [cited by applicant]
US 20130329577A1 · Suzuki et al. · 2013 [cited by applicant]
US 20140092736A1 · Baillargeon · 2014 [cited by applicant]
US 20140105025A1 · Lavian et al. · 2014 [cited by applicant]
US 20140115654A1 · Rogers · 2014 [cited by examiner]
US 20140126396A1 · Matthews et al. · 2014 [cited by applicant]
US 20140126573A1 · Matthews et al. · 2014 [cited by applicant]
US 20140169189A1 · Kalkunte · 2014 [cited by applicant]
US 20140219087A1 · Matthews et al. · 2014 [cited by applicant]
US 20140247740A1 · Koo · 2014 [cited by applicant]
US 20140369426A1 · Li et al. · 2014 [cited by applicant]
US 20150016258A1 · Okner et al. · 2015 [cited by applicant]
US 20150016266A1 · Dumitrescu et al. · 2015 [cited by applicant]
US 20150043330A1 · Hu et al. · 2015 [cited by applicant]
US 20150124608A1 · Agarwal et al. · 2015 [cited by applicant]
US 20150139540A1 · Moraleda et al. · 2015 [cited by applicant]
US 20150295827A1 · Zhu et al. · 2015 [cited by applicant]
US 20160044695A1 · Gunner · 2016 [cited by applicant]
US 20160072717A1 · Ansari et al. · 2016 [cited by applicant]
US 20160087894A1 · Chen et al. · 2016 [cited by applicant]
US 20160134915A1 · Oran · 2016 [cited by applicant]
US 20160164792A1 · Oran · 2016 [cited by applicant]
US 20160254992A1 · Torvi et al. · 2016 [cited by applicant]
US 20160261500A1 · Revah et al. · 2016 [cited by applicant]
US 20160269284A1 · Cheng et al. · 2016 [cited by applicant]
US 20160308769A1 · Versteeg et al. · 2016 [cited by applicant]
US 20160373199A1 · Olofsson et al. · 2016 [cited by applicant]
US 20170048147A1 · Vaidya · 2017 [cited by applicant]
US 20170111264A1 · Shankarappa et al. · 2017 [cited by applicant]
US 20170126547A1 · Wood et al. · 2017 [cited by applicant]
US 20170134282A1 · Agarwal et al. · 2017 [cited by applicant]
US 20170149678A1 · Dumitrescu et al. · 2017 [cited by applicant]
US 20170279728A1 · Oran · 2017 [cited by applicant]
US 20170339074A1 · Melman et al. · 2017 [cited by applicant]
US 20180091388A1 · Levy et al. · 2018 [cited by applicant]
US 20180159800A1 · Tietz et al. · 2018 [cited by applicant]
US 20180356837A1 · Lisewski et al. · 2018 [cited by applicant]
US 20190089644A1 · Shpiner et al. · 2019 [cited by applicant]
US 20200007454A1 · Frink · 2020 [cited by applicant]
US 20200053026A1 · Rangachari et al. · 2020 [cited by applicant]
US 20200106710A1 · Ryoo et al. · 2020 [cited by applicant]
US 20200136973A1 · Rahman et al. · 2020 [cited by applicant]
US 20200249979A1 · Muramatti et al. · 2020 [cited by applicant]
US 20200274811A1 · Srivastava et al. · 2020 [cited by applicant]
US 20210021545A1 · Srivastava et al. · 2021 [cited by applicant]
US 20210243094A1 · Holness et al. · 2021 [cited by applicant]
US 20210409313A1 · Iorga et al. · 2021 [cited by applicant]
US 20220045972A1 · Aibester et al. · 2022 [cited by applicant]
US 20220150171A1 · Matthews et al. · 2022 [cited by applicant]
US 20240039852A1 · Matthews et al. · 2024 [cited by applicant]
CN 111183624A · 2020 [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/741,510, Notice of Allowance dated Feb. 18, 2021. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/091,904, Non-Final Office Action dated Apr. 28, 2022. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/091,904, Notice of Allowance dated Nov. 17, 2022. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/091,916, Non-Final Office Action dated Mar. 15, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/091,916, Notice of Allowance dated May 26, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/091,916, Restriction Requirement dated Sep. 22, 2022. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/352,583, Final Office Action dated May 15, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/352,583, Non-Final Office Action dated Dec. 22, 2022. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/352,583, Notice of Allowance dated Aug. 9, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/367,330, Notice of Allowance dated Mar. 24, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/385,503, Non-Final Office Action dated Apr. 7, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 17/385,503, Notice of Allowance dated Aug. 10, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 18/108,546, Non-Final Office Action dated Jun. 23, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 18/108,546, Notice of Allowance dated Nov. 14, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 18/141,276, Notice of Allowance dated Dec. 20, 2023. [cited by applicant]
Chinese Patent Office, Application No. 202180089206.4, Office Action dated Jan. 26, 2024. [cited by applicant]
European Patent Office, Application No. 21890201.3, European Search Report dated Dec. 12, 2023. [cited by applicant]
Sinha et al. “Harnessing TCP's Burstiness with Flowlet Switching.” (2004). [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/407,149, Non-Final Office Action dated Aug. 28, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/407,149, Notice of Allowance dated Jan. 25, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/407,156, Notice of Allowance dated Jan. 24, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/407,159, Advisory Action dated Nov. 1, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/407,159, Final Office Action dated Aug. 13, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/407,159, Non-Final Office Action dated Jan. 4, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/407,159, Notice of Allowance dated Mar. 25, 2020. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,607, Final Office Action dated Dec. 18, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,607, Non-Final Office Action dated May 17, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,607, Notice of Allowance dated Apr. 3, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,644, Final Office Action dated Oct. 11, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,644, Non-Final Office Action dated May 3, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,644, Notice of Allowance dated Jan. 28, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,651, Final Office Action dated Oct. 11, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,651, Final Office Action dated Jun. 6, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,651, Non-Final Office Action dated May 15, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,651, Non-Final Office Action dated Feb. 15, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,651, Notice of Allowance dated Sep. 24, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,686, Final Office Action dated Nov. 8, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,686, Non-Final Office Action dated May 9, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/410,686, Notice of Allowance dated Apr. 9, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,888, Advisory Action dated Mar. 15, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,888, Final Office Action dated Nov. 23, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,888, Non-Final Office Action dated May 10, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,888, Notice of Allowance dated Sep. 24, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,894, Non-Final Office Action dated Jul. 27, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,894, Notice of Allowance dated Feb. 19, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,901, Advisory Action dated Mar. 28, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,901, Final Office Action dated Jan. 15, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,901, Non-Final Office Action dated Aug. 29, 2018. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 15/446,901, Notice of Allowance dated May 28, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/288,165, Non-Final Office Action dated Aug. 22, 2019. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/288,165, Notice of Allowance dated Jan. 27, 2020. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/527,278, Non-Final Office Action dated Oct. 13, 2020. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/527,278, Notice of Allowance dated Feb. 19, 2021. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Advisory Action dated Jun. 29, 2021. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Advisory Action dated Jul. 25, 2022. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Final Office Action dated Mar. 31, 2021. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Final Office Action dated May 10, 2022. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Non-Final Office Action dated Sep. 30, 2020. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Non-Final Office Action dated Sep. 28, 2021. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Non-Final Office Action dated Sep. 6, 2022. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/575,343, Notice of Allowance dated Jan. 11, 2023. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/595,127, Non-Final Office Action dated Oct. 16, 2020. [cited by applicant]
United States Patent and Trademark Office, U.S. Appl. No. 16/595,127, Notice of Allowance dated Mar. 23, 2021. [cited by applicant]
World Intellectual Property Organization, Application No. PCT/US22/20087, International Search Report dated Jul. 19, 2022. [cited by applicant]