IP Library › Granted Patent US 12,218,829
Granted Patent B2
US 12,218,829 · App. 17/594,758 · Granted Feb 4, 2025

System and method for facilitating data-driven intelligent network with per-flow credit-based flow control

Inventors: Jonathan P. Beecroft (Bristol, GB); Thomas L. Court (Three Lakes, WI); Abdulla M. Bataineh (Vista, CA); David Charles Hewson (Bristol, GB)
Assignee: Hewlett Packard Enterprise Development LP
H04L45/28G06F9/505G06F9/546G06F12/0862G06F12/1036G06F12/1063G06F13/14G06F13/16G06F13/1642G06F13/1673G06F13/1689G06F13/28G06F13/385G06F13/4022G06F13/4068G06F13/4221G06F15/17331H04L1/0083H04L43/0876H04L43/10H04L45/02H04L45/021H04L45/028H04L45/122H04L45/123H04L45/125H04L45/16H04L45/20H04L45/22H04L45/24H04L45/38H04L45/42H04L45/46H04L45/566H04L45/70H04L45/745H04L45/7453H04L47/11H04L47/12H04L47/122H04L47/18H04L47/20H04L47/22H04L47/24H04L47/2441H04L47/2466H04L47/2483H04L47/30H04L47/32H04L47/323H04L47/34H04L47/39H04L47/52H04L47/621H04L47/6235H04L47/626H04L47/6275H04L47/629H04L47/76H04L47/762H04L47/781H04L47/80H04L49/101H04L49/15H04L49/30H04L49/3009H04L49/3018H04L49/3027H04L49/90H04L49/9005H04L49/9021H04L49/9036H04L49/9047H04L67/1097H04L69/22H04L69/40G06F2212/50G06F2213/0026G06F2213/3808H04L69/28
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,218,829
App. No.
17/594,758
Filed
Oct 28, 2021
Granted
Feb 4, 2025
Kind
B2
Examiner
LI, GUANG W
Art Unit
2478
USPC
709/238
Abstract

Data-driven intelligent networking systems and methods are provided. The system can accommodate dynamic traffic with fast, effective per-flow credit-based flow control. The system can maintain state information of individual packet flows, which can be set up or released dynamically based on injected data. Each flow can be provided with a flow-specific input queue upon arriving at a switch. Packets of a respective flow can be acknowledged after reaching the egress point of the network, and the acknowledgement packets can be sent back to the ingress point of the flow along the same data path. As a result, each switch can obtain state information of each flow and perform flow control on a per-flow basis.

Claims (74)

1. A method, comprising:

monitoring an input queue for a flow of packets received by a physical ingress port of a switch, wherein packets in the flow of packets comprise a source identifier indicating the source of the flow of packets and exclude a flow identifier;

upon receiving the flow of packets, assigning, by the switch, the flow identifier to the packets in the flow, the flow identifier being unique to the physical ingress port, and the flow identifier being local to the physical ingress port of the switch;

determining that an amount of data of the flow stored in the input queue exceeds a threshold;

setting an indicator which indicates that flow control is in effect with respect to an upstream switch; and

generating a flow control message for the upstream switch, wherein the flow control message comprises the flow identifier and a headroom value that indicates an amount of data of the flow the upstream switch is allowed to forward toward an input port of a downstream switch, thereby controlling a rate at which acknowledgement (ACK) packets of the flow are forwarded by the upstream switch to the downstream switch, the ACK packets having been generated upon receipt of packets of the flow at the flow's destination,

when a packet is delivered to a destination egress switch, the destination egress switch enabled to generate and send back an acknowledgement (ACK) in an upstream direction along a same data path to the switch being an ingress edge device.

2. The method of claim 1 , further comprising:

forwarding a second packet of the flow from the input queue to an output port;

determining, subsequent to forwarding the second packet, that the amount of data of the flow stored in the input queue is less than a target watermark value; and

setting the headroom value in the flow control message to be greater than a size of the forwarded packet.

3. The method of claim 1 , further comprising:

forwarding a second packet of the flow from the input queue to a physical egress port;

determining, subsequent to forwarding the second packet, that the amount of data of the flow stored in the input queue is greater than a target watermark value; and

setting the headroom value in the flow control message to be less than a size of the forwarded packet.

4. The method of claim 1 , further comprising:

determining that the data of the flow stored in the input queue is greater than a high watermark value; and

setting the headroom value to indicate that the upstream switch is precluded from forwarding any data of the flow toward the physical ingress port.

5. The method of claim 1 , further comprising:

determining that the amount of data of the flow stored in the input queue is less than a drop watermark value;

clearing the indicator; and

generating a flow control message for the upstream switch to discontinue flow control, thereby allowing the upstream switch to transmit data of the flow without restriction.

6. The method of claim 1 , wherein the packets in the flow are assigned the flow identifier that corresponds with a dedicated, stream-specific input buffer that is configured to individually control the packets in the flow that are associated with the flow identifier.

7. The method of claim 1 , wherein the packets in the flow are acknowledged after reaching an egress point of a network where the switch is located.

8. The method of claim 1 , further comprising:

upon determining that the input queue excludes packets in the flow of packets, releasing the flow identifier for reuse of the flow identifier for a second flow of packets.

9. A switch, comprising:

an input queue monitor to monitor an input queue for a flow of packets corresponding to a physical ingress port of the switch, wherein packets in the flow of packets comprise a source identifier indicating the source of the flow of packets and exclude a flow identifier;

an input queue management logic block to:

upon receiving the flow of packets, assigning, by the switch, the flow identifier to the packets in the flow, the flow identifier being unique to the physical ingress port, and the flow identifier being local to the physical ingress port of the switch;

determine that an amount of data of the flow stored in the input queue exceeds a threshold; and

a flow control logic block to:

set an indicator which indicates that flow control is in effect with respect to an upstream switch; and

generate a flow control message for the upstream switch, wherein the flow control message comprises the flow identifier and a headroom value that indicates an amount of data, including acknowledgement (ACK) packets of the flow the upstream switch is allowed to forward toward an input port of a downstream switch, thereby controlling a rate at which the flow is forwarded by the upstream switch to the downstream switch, the ACK packets having been generated upon receipt of packets of the flow at the flow's destination,

when a packet is delivered to a destination egress switch, the destination egress switch enabled to generate and send back an acknowledgement (ACK) in an upstream direction along a same data path to the switch being an ingress edge device.

10. The switch of claim 9 , wherein the flow control logic block is further to:

determine, subsequent to a second packet of the flow being forwarded from the input queue to an output port, that the amount of data of the flow stored in the input queue is less than a target watermark value; and

set the headroom value in the flow control message to be greater than a size of the forwarded packet.

11. The switch of claim 9 , wherein the flow control logic block is further to:

determine, subsequent to a second packet of the flow being forwarded from the input queue to an output port, that the amount of data of the flow stored in the input queue is greater than a target watermark value; and

set the headroom value in the flow control message to be less than a size of the forwarded packet.

12. The switch of claim 9 , wherein the flow control logic block is further to:

determine that the data of the flow stored in the input queue is greater than a high watermark value; and

set the headroom value to indicate that the upstream switch is precluded from forwarding any data of the flow toward the input port.

13. The switch of claim 9 , wherein the flow control logic block is further to:

determine that the amount of data of the flow stored in the input queue is less than a drop watermark value;

clear the indicator; and

generate a flow control message for the upstream switch to discontinue flow control, thereby allowing the upstream switch to transmit data of the flow without restriction.

14. A non-transitory computer-readable storage medium storing a plurality of instructions executable by a processor, the plurality of instructions when executed by the processor cause the processor to:

monitor an input queue for a flow of packets received by a physical ingress port of a switch, wherein packets in the flow of packets comprise a source identifier indicating the source of the flow of packets and exclude a flow identifier;

upon receiving the flow of packets, assign the flow identifier to the packets in the flow, the flow identifier being unique to the physical ingress port, and the flow identifier being local to the physical ingress port of the switch;

determine that an amount of data of the flow stored in the input queue exceeds a threshold;

set an indicator which indicates that flow control is in effect with respect to an upstream switch; and

generate a flow control message for the upstream switch, wherein the flow control message comprises the flow identifier and a headroom value that indicates an amount of data of the flow the upstream switch is allowed to forward toward an input port of a downstream switch, thereby controlling a rate at which acknowledgement (ACK) packets of the flow are forwarded by the upstream switch to the downstream switch, the ACK packets having been generated upon receipt of packets of the flow at the flow's destination,

when a packet is delivered to a destination egress switch, the destination egress switch enabled to generate and send back an acknowledgement (ACK) in an upstream direction along a same data path to the switch being an ingress edge device.

15. The non-transitory computer-readable storage medium of claim 14 , the processor is further configured to:

forward a second packet of the flow from the input queue to an output port;

determine, subsequent to forwarding the second packet, that the amount of data of the flow stored in the input queue is less than a target watermark value; and

set the headroom value in the flow control message to be greater than a size of the forwarded packet.

16. The non-transitory computer-readable storage medium of claim 14 , the processor is further configured to:

forward a second packet of the flow from the input queue to a physical egress port;

determine, subsequent to forwarding the second packet, that the amount of data of the flow stored in the input queue is greater than a target watermark value; and

set the headroom value in the flow control message to be less than a size of the forwarded packet.

17. The non-transitory computer-readable storage medium of claim 14 , the processor is further configured to:

determine that the data of the flow stored in the input queue is greater than a high watermark value; and

set the headroom value to indicate that the upstream switch is precluded from forwarding any data of the flow toward the physical ingress port.

18. The non-transitory computer-readable storage medium of claim 14 , the processor is further configured to:

determine that the amount of data of the flow stored in the input queue is less than a drop watermark value;

clear the indicator; and

generate a flow control message for the upstream switch to discontinue flow control, thereby allowing the upstream switch to transmit data of the flow without restriction.

19. The non-transitory computer-readable storage medium of claim 14 , wherein the packets in the flow are assigned the flow identifier that corresponds with a dedicated, stream-specific input buffer that is configured to individually control the packets in the flow that are associated with the flow identifier.

20. The non-transitory computer-readable storage medium of claim 14 , wherein the packets in the flow are acknowledged after reaching an egress point of a network where the switch is located.

21. The non-transitory computer-readable storage medium of claim 14 , the processor is further configured to:

upon determining that the input queue excludes packets in the flow of packets, release the flow identifier for reuse of the flow identifier for a second flow of packets.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2022
From: CRAY INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 060815/0133 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2021
From: BEECROFT, JONATHAN P.; COURT, THOMAS L.; BATAINEH, ABDULLA M.; HEWSON, DAVID CHARLES
To: CRAY INC.
Reel/Frame 057954/0370 →
Continuity (4)
Provisional Application 62852273 · May 23, 2019
Provisional Application 62852289 · May 23, 2019
Provisional Application 62852203 · May 23, 2019
Related Publication 20220217079A1 · Jul 7, 2022
References Cited (400)
US 4807118A · Lin et al. · 1989 [cited by applicant]
US 5138615A · Lamport et al. · 1992 [cited by applicant]
US 5457687A · Newman · 1995 [cited by applicant]
US 5937436A · Watkins · 1999 [cited by applicant]
US 5960178A · Cochinwala et al. · 1999 [cited by applicant]
US 5970232A · Passint et al. · 1999 [cited by applicant]
US 5983332A · Watkins · 1999 [cited by applicant]
US 6112265A · Harriman et al. · 2000 [cited by applicant]
US 6230252B1 · Passint et al. · 2001 [cited by applicant]
US 6246682B1 · Roy et al. · 2001 [cited by applicant]
US 6493347B2 · Sindhu et al. · 2002 [cited by applicant]
US 6545981B1 · Garcia et al. · 2003 [cited by applicant]
US 6563835B1 · Chen · 2003 [cited by examiner]
US 6633580B1 · Toerudbakken et al. · 2003 [cited by applicant]
US 6674720B1 · Passint et al. · 2004 [cited by applicant]
US 6714553B1 · Poole et al. · 2004 [cited by applicant]
US 6728211B1 · Peris et al. · 2004 [cited by applicant]
US 6732212B2 · Sugahara et al. · 2004 [cited by applicant]
US 6735173B1 · Lenoski et al. · 2004 [cited by applicant]
US 6894974B1 · Aweva et al. · 2005 [cited by applicant]
US 7023856B1 · Washabaugh et al. · 2006 [cited by applicant]
US 7133940B2 · Blightman et al. · 2006 [cited by applicant]
US 7218637B1 · Best et al. · 2007 [cited by applicant]
US 7269180B2 · Bly et al. · 2007 [cited by applicant]
US 7305487B2 · Blumrich et al. · 2007 [cited by applicant]
US 7337285B2 · Tanoue · 2008 [cited by applicant]
US 7397797B2 · Alfieri et al. · 2008 [cited by applicant]
US 7430559B2 · Lomet · 2008 [cited by applicant]
US 7441006B2 · Biran et al. · 2008 [cited by applicant]
US 7464174B1 · Ngai · 2008 [cited by applicant]
US 7483442B1 · Torudbakken et al. · 2009 [cited by applicant]
US 7562366B2 · Pope et al. · 2009 [cited by applicant]
US 7593329B2 · Kwan et al. · 2009 [cited by applicant]
US 7596628B2 · Aloni et al. · 2009 [cited by applicant]
US 7620791B1 · Wentzlaff et al. · 2009 [cited by applicant]
US 7633869B1 · Morris et al. · 2009 [cited by applicant]
US 7639616B1 · Manula et al. · 2009 [cited by applicant]
US 7734894B1 · Wentzlaff et al. · 2010 [cited by applicant]
US 7774461B2 · Tanaka et al. · 2010 [cited by applicant]
US 7782869B1 · Chitlur Srinivasa · 2010 [cited by applicant]
US 7796579B2 · Bruss · 2010 [cited by applicant]
US 7856026B1 · Finan et al. · 2010 [cited by applicant]
US 7933282B1 · Gupta et al. · 2011 [cited by applicant]
US 7953002B2 · Opsasnick · 2011 [cited by applicant]
US 7975120B2 · Sabbatini, Jr. et al. · 2011 [cited by applicant]
US 8014278B1 · Subramanian et al. · 2011 [cited by applicant]
US 8023521B2 · Woo et al. · 2011 [cited by applicant]
US 8050180B2 · Judd · 2011 [cited by applicant]
US 8077606B1 · Litwack · 2011 [cited by applicant]
US 8103788B1 · Miranda · 2012 [cited by applicant]
US 8160085B2 · Voruganti et al. · 2012 [cited by applicant]
US 8175030B2 · Terry · 2012 [cited by examiner]
US 8175107B1 · Yalagandula et al. · 2012 [cited by applicant]
US 8249072B2 · Sugumar et al. · 2012 [cited by applicant]
US 8281013B2 · Mundkur et al. · 2012 [cited by applicant]
US 8352727B2 · Chen et al. · 2013 [cited by applicant]
US 8353003B2 · Noehring et al. · 2013 [cited by applicant]
US 8443151B2 · Tang et al. · 2013 [cited by applicant]
US 8473783B2 · Andrade et al. · 2013 [cited by applicant]
US 8493847B1 · Kondapalli · 2013 [cited by examiner]
US 8543534B2 · Alves et al. · 2013 [cited by applicant]
US 8619793B2 · Lavian et al. · 2013 [cited by applicant]
US 8626957B2 · Blumrich et al. · 2014 [cited by applicant]
US 8634335B1 · Kondapalli · 2014 [cited by examiner]
US 8650582B2 · Archer et al. · 2014 [cited by applicant]
US 8706832B2 · Blocksome · 2014 [cited by applicant]
US 8719543B2 · Kaminski et al. · 2014 [cited by applicant]
US 8811183B1 · Anand et al. · 2014 [cited by applicant]
US 8948175B2 · Bly et al. · 2015 [cited by applicant]
US 8971345B1 · McCanne et al. · 2015 [cited by applicant]
US 9001663B2 · Attar et al. · 2015 [cited by applicant]
US 9053012B1 · Northcott et al. · 2015 [cited by applicant]
US 9088496B2 · Vaidya et al. · 2015 [cited by applicant]
US 9094327B2 · Jacobs et al. · 2015 [cited by applicant]
US 9178782B2 · Matthews et al. · 2015 [cited by applicant]
US 9208071B2 · Talagala et al. · 2015 [cited by applicant]
US 9218278B2 · Talagala et al. · 2015 [cited by applicant]
US 9231876B2 · Mir et al. · 2016 [cited by applicant]
US 9231888B2 · Bogdanski et al. · 2016 [cited by applicant]
US 9239804B2 · Kegel et al. · 2016 [cited by applicant]
US 9269438B2 · Nachimuthu et al. · 2016 [cited by applicant]
US 9276864B1 · Pradeep · 2016 [cited by applicant]
US 9436651B2 · Underwood et al. · 2016 [cited by applicant]
US 9455915B2 · Sinha et al. · 2016 [cited by applicant]
US 9460178B2 · Bashyam et al. · 2016 [cited by applicant]
US 9479426B2 · Munger et al. · 2016 [cited by applicant]
US 9496991B2 · Plamondon et al. · 2016 [cited by applicant]
US 9544234B1 · Markine · 2017 [cited by applicant]
US 9548924B2 · Pettit et al. · 2017 [cited by applicant]
US 9594521B2 · Blagodurov et al. · 2017 [cited by applicant]
US 9635121B2 · Mathew et al. · 2017 [cited by applicant]
US 9742855B2 · Shuler et al. · 2017 [cited by applicant]
US 9762488B2 · Previdi et al. · 2017 [cited by applicant]
US 9762497B2 · Kishore et al. · 2017 [cited by applicant]
US 9830273B2 · Bk et al. · 2017 [cited by applicant]
US 9838500B1 · Ilan et al. · 2017 [cited by applicant]
US 9853900B1 · Mula et al. · 2017 [cited by applicant]
US 9887923B2 · Chorafakis et al. · 2018 [cited by applicant]
US 10003544B2 · Liu et al. · 2018 [cited by applicant]
US 10009270B1 · Stark et al. · 2018 [cited by applicant]
US 10031857B2 · Menachem et al. · 2018 [cited by applicant]
US 10050896B2 · Yang et al. · 2018 [cited by applicant]
US 10061613B1 · Brooker et al. · 2018 [cited by applicant]
US 10063481B1 · Jiang et al. · 2018 [cited by applicant]
US 10089220B1 · McKelvie et al. · 2018 [cited by applicant]
US 10169060B1 · Vincent et al. · 2019 [cited by applicant]
US 10178035B2 · Dillon · 2019 [cited by applicant]
US 10200279B1 · Aljaedi · 2019 [cited by applicant]
US 10218634B2 · Aldebert et al. · 2019 [cited by applicant]
US 10270700B2 · Burnette et al. · 2019 [cited by applicant]
US 10305772B2 · Zur et al. · 2019 [cited by applicant]
US 10331590B2 · MacNamara et al. · 2019 [cited by applicant]
US 10353833B2 · Hagspiel et al. · 2019 [cited by applicant]
US 10454835B2 · Contavalli et al. · 2019 [cited by applicant]
US 10498672B2 · Graham et al. · 2019 [cited by applicant]
US 10567307B2 · Fairhurst et al. · 2020 [cited by applicant]
US 10728173B1 · Agrawal et al. · 2020 [cited by applicant]
US 10802828B1 · Volpe et al. · 2020 [cited by applicant]
US 10817502B2 · Talagala et al. · 2020 [cited by applicant]
US 11057318B1 · Matthews · 2021 [cited by examiner]
US 11128561B1 · Matthews et al. · 2021 [cited by applicant]
US 11271869B1 · Agrawal et al. · 2022 [cited by applicant]
US 11416749B2 · Bshara et al. · 2022 [cited by applicant]
US 11444886B1 · Stawitzky et al. · 2022 [cited by applicant]
US 20010010692A1 · Sindhu et al. · 2001 [cited by applicant]
US 20010047438A1 · Forin · 2001 [cited by applicant]
US 20020174279A1 · Wynne et al. · 2002 [cited by applicant]
US 20030016808A1 · Hu et al. · 2003 [cited by applicant]
US 20030041168A1 · Musoll · 2003 [cited by applicant]
US 20030110455A1 · Baumgartner et al. · 2003 [cited by applicant]
US 20030174711A1 · Shankar · 2003 [cited by applicant]
US 20030200363A1 · Futral · 2003 [cited by applicant]
US 20030223420A1 · Ferolito · 2003 [cited by applicant]
US 20040008716A1 · Stiliadis · 2004 [cited by applicant]
US 20040059828A1 · Hooper et al. · 2004 [cited by applicant]
US 20040095882A1 · Hamzah et al. · 2004 [cited by applicant]
US 20040133634A1 · Luke et al. · 2004 [cited by applicant]
US 20040223452A1 · Santos et al. · 2004 [cited by applicant]
US 20050021837A1 · Haselhorst et al. · 2005 [cited by applicant]
US 20050047334A1 · Paul et al. · 2005 [cited by applicant]
US 20050088969A1 · Carlsen et al. · 2005 [cited by applicant]
US 20050091396A1 · Nilakantan et al. · 2005 [cited by applicant]
US 20050108444A1 · Flauaus et al. · 2005 [cited by applicant]
US 20050108518A1 · Pandya · 2005 [cited by applicant]
US 20050141510A1 · Narsinh · 2005 [cited by examiner]
US 20050152274A1 · Simpson, III · 2005 [cited by examiner]
US 20050182854A1 · Pinkerton et al. · 2005 [cited by applicant]
US 20050270974A1 · Mayhew · 2005 [cited by applicant]
US 20050270976A1 · Yang et al. · 2005 [cited by applicant]
US 20060023705A1 · Zoranovic et al. · 2006 [cited by applicant]
US 20060067347A1 · Naik et al. · 2006 [cited by applicant]
US 20060075480A1 · Noehring et al. · 2006 [cited by applicant]
US 20060174251A1 · Pope et al. · 2006 [cited by applicant]
US 20060203728A1 · Kwan et al. · 2006 [cited by applicant]
US 20070061433A1 · Reynolds et al. · 2007 [cited by applicant]
US 20070070901A1 · Aloni et al. · 2007 [cited by applicant]
US 20070198804A1 · Moyer · 2007 [cited by applicant]
US 20070211746A1 · Oshikiri et al. · 2007 [cited by applicant]
US 20070242611A1 · Archer et al. · 2007 [cited by applicant]
US 20070268825A1 · Corwin et al. · 2007 [cited by applicant]
US 20080013453A1 · Chiang et al. · 2008 [cited by applicant]
US 20080013549A1 · Okagawa et al. · 2008 [cited by applicant]
US 20080071757A1 · Ichiriu et al. · 2008 [cited by applicant]
US 20080084864A1 · Archer et al. · 2008 [cited by applicant]
US 20080091915A1 · Moertl et al. · 2008 [cited by applicant]
US 20080147881A1 · Krishnamurthy et al. · 2008 [cited by applicant]
US 20080159138A1 · Shepherd et al. · 2008 [cited by applicant]
US 20080253289A1 · Naven et al. · 2008 [cited by applicant]
US 20090003212A1 · Kwan et al. · 2009 [cited by applicant]
US 20090010157A1 · Holmes et al. · 2009 [cited by applicant]
US 20090013175A1 · Elliott · 2009 [cited by applicant]
US 20090055496A1 · Garg et al. · 2009 [cited by applicant]
US 20090092046A1 · Naven et al. · 2009 [cited by applicant]
US 20090141621A1 · Fan et al. · 2009 [cited by applicant]
US 20090198958A1 · Arimilli et al. · 2009 [cited by applicant]
US 20090259713A1 · Blumrich et al. · 2009 [cited by applicant]
US 20090285222A1 · Hoover et al. · 2009 [cited by applicant]
US 20100061241A1 · Sindhu et al. · 2010 [cited by applicant]
US 20100169608A1 · Kuo et al. · 2010 [cited by applicant]
US 20100172260A1 · Kwan et al. · 2010 [cited by applicant]
US 20100183024A1 · Gupta · 2010 [cited by applicant]
US 20100220595A1 · Petersen · 2010 [cited by applicant]
US 20100274876A1 · Kagan et al. · 2010 [cited by applicant]
US 20100302942A1 · Shankar et al. · 2010 [cited by applicant]
US 20100316053A1 · Miyoshi et al. · 2010 [cited by applicant]
US 20110051724A1 · Scott et al. · 2011 [cited by applicant]
US 20110066824A1 · Bestler · 2011 [cited by applicant]
US 20110072179A1 · Lacroute et al. · 2011 [cited by applicant]
US 20110099326A1 · Jung et al. · 2011 [cited by applicant]
US 20110110383A1 · Yang et al. · 2011 [cited by applicant]
US 20110128959A1 · Bando et al. · 2011 [cited by applicant]
US 20110158096A1 · Leung et al. · 2011 [cited by applicant]
US 20110158248A1 · Vorunganti et al. · 2011 [cited by applicant]
US 20110164496A1 · Loh et al. · 2011 [cited by applicant]
US 20110173370A1 · Jacobs et al. · 2011 [cited by applicant]
US 20110264822A1 · Ferguson et al. · 2011 [cited by applicant]
US 20110276699A1 · Pedersen · 2011 [cited by applicant]
US 20110280125A1 · Jayakumar · 2011 [cited by applicant]
US 20110320724A1 · Mejdrich et al. · 2011 [cited by applicant]
US 20120039173A1 · Danzig · 2012 [cited by examiner]
US 20120093505A1 · Yeap et al. · 2012 [cited by applicant]
US 20120102506A1 · Hopmann et al. · 2012 [cited by applicant]
US 20120117423A1 · Andrade et al. · 2012 [cited by applicant]
US 20120137075A1 · Vorbach · 2012 [cited by applicant]
US 20120144064A1 · Parker et al. · 2012 [cited by applicant]
US 20120144065A1 · Parker et al. · 2012 [cited by applicant]
US 20120147752A1 · Ashwood-Smith et al. · 2012 [cited by applicant]
US 20120170462A1 · Sinha · 2012 [cited by applicant]
US 20120170575A1 · Mehra · 2012 [cited by applicant]
US 20120213118A1 · Lindsay et al. · 2012 [cited by applicant]
US 20120250512A1 · Jagadeeswaran et al. · 2012 [cited by applicant]
US 20120287821A1 · Godfrey et al. · 2012 [cited by applicant]
US 20120297083A1 · Ferguson et al. · 2012 [cited by applicant]
US 20120300669A1 · Zahavi · 2012 [cited by applicant]
US 20120314707A1 · Epps et al. · 2012 [cited by applicant]
US 20130010636A1 · Regula · 2013 [cited by applicant]
US 20130039169A1 · Schlansker et al. · 2013 [cited by applicant]
US 20130060944A1 · Archer et al. · 2013 [cited by applicant]
US 20130103777A1 · Kagan et al. · 2013 [cited by applicant]
US 20130121178A1 · Mainaud et al. · 2013 [cited by applicant]
US 20130136090A1 · Liu et al. · 2013 [cited by applicant]
US 20130182704A1 · Jacobs et al. · 2013 [cited by applicant]
US 20130194927A1 · Yamaguchi et al. · 2013 [cited by applicant]
US 20130203422A1 · Masputra et al. · 2013 [cited by applicant]
US 20130205002A1 · Wang et al. · 2013 [cited by applicant]
US 20130208593A1 · Nandagopal · 2013 [cited by applicant]
US 20130246552A1 · Underwood et al. · 2013 [cited by applicant]
US 20130290673A1 · Archer et al. · 2013 [cited by applicant]
US 20130301645A1 · Bogdanski et al. · 2013 [cited by applicant]
US 20130304988A1 · Totolos et al. · 2013 [cited by applicant]
US 20130311525A1 · Neerincx et al. · 2013 [cited by applicant]
US 20130329577A1 · Suzuki et al. · 2013 [cited by applicant]
US 20130336164A1 · Yang et al. · 2013 [cited by applicant]
US 20140019661A1 · Hormuth et al. · 2014 [cited by applicant]
US 20140032695A1 · Michels et al. · 2014 [cited by applicant]
US 20140036680A1 · Lih et al. · 2014 [cited by applicant]
US 20140064082A1 · Yeung et al. · 2014 [cited by applicant]
US 20140095753A1 · Crupnicoff et al. · 2014 [cited by applicant]
US 20140098675A1 · Frost et al. · 2014 [cited by applicant]
US 20140119367A1 · Han et al. · 2014 [cited by applicant]
US 20140122560A1 · Ramey et al. · 2014 [cited by applicant]
US 20140129664A1 · McDaniel et al. · 2014 [cited by applicant]
US 20140133292A1 · Yamatsu et al. · 2014 [cited by applicant]
US 20140136646A1 · Tamir et al. · 2014 [cited by applicant]
US 20140169173A1 · Naouri et al. · 2014 [cited by applicant]
US 20140185621A1 · DeCusatis · 2014 [cited by examiner]
US 20140189174A1 · Ajanovic et al. · 2014 [cited by applicant]
US 20140207881A1 · Nussle et al. · 2014 [cited by applicant]
US 20140211804A1 · Makikeni et al. · 2014 [cited by applicant]
US 20140226488A1 · Shamis et al. · 2014 [cited by applicant]
US 20140241164A1 · Cociglio et al. · 2014 [cited by applicant]
US 20140258438A1 · Ayoub · 2014 [cited by applicant]
US 20140301390A1 · Scott et al. · 2014 [cited by applicant]
US 20140307554A1 · Basso et al. · 2014 [cited by applicant]
US 20140325013A1 · Tamir et al. · 2014 [cited by applicant]
US 20140328172A1 · Kumar et al. · 2014 [cited by applicant]
US 20140347997A1 · Bergamasco et al. · 2014 [cited by applicant]
US 20140362698A1 · Arad · 2014 [cited by applicant]
US 20140369360A1 · Carlstrom · 2014 [cited by applicant]
US 20140379847A1 · Williams · 2014 [cited by applicant]
US 20150003247A1 · Mejia et al. · 2015 [cited by applicant]
US 20150006849A1 · Xu et al. · 2015 [cited by applicant]
US 20150009823A1 · Ganga et al. · 2015 [cited by applicant]
US 20150026361A1 · Matthews et al. · 2015 [cited by applicant]
US 20150029848A1 · Jain · 2015 [cited by applicant]
US 20150055476A1 · Decusatis et al. · 2015 [cited by applicant]
US 20150055661A1 · Boucher et al. · 2015 [cited by applicant]
US 20150067095A1 · Gopal et al. · 2015 [cited by applicant]
US 20150089495A1 · Persson et al. · 2015 [cited by applicant]
US 20150103667A1 · Elias · 2015 [cited by examiner]
US 20150124826A1 · Edsall et al. · 2015 [cited by applicant]
US 20150146527A1 · Kishore et al. · 2015 [cited by applicant]
US 20150154004A1 · Aggarwal · 2015 [cited by applicant]
US 20150161064A1 · Pope · 2015 [cited by applicant]
US 20150172954A1 · Zhang · 2015 [cited by examiner]
US 20150180782A1 · Rimmer · 2015 [cited by examiner]
US 20150186318A1 · Kim et al. · 2015 [cited by applicant]
US 20150193262A1 · Archer et al. · 2015 [cited by applicant]
US 20150195388A1 · Snyder et al. · 2015 [cited by applicant]
US 20150208145A1 · Parker et al. · 2015 [cited by applicant]
US 20150220449A1 · Stark et al. · 2015 [cited by applicant]
US 20150222533A1 · Birrittella · 2015 [cited by examiner]
US 20150237180A1 · Swartzentruber et al. · 2015 [cited by applicant]
US 20150244617A1 · Nakil et al. · 2015 [cited by applicant]
US 20150244804A1 · Warfield et al. · 2015 [cited by applicant]
US 20150261434A1 · Kagan et al. · 2015 [cited by applicant]
US 20150263955A1 · Talaski et al. · 2015 [cited by applicant]
US 20150263994A1 · Haramaty et al. · 2015 [cited by applicant]
US 20150288626A1 · Aybay · 2015 [cited by applicant]
US 20150365337A1 · Pannell · 2015 [cited by applicant]
US 20150370586A1 · Cooper et al. · 2015 [cited by applicant]
US 20160006664A1 · Sabato et al. · 2016 [cited by applicant]
US 20160012002A1 · Arimilli et al. · 2016 [cited by applicant]
US 20160028613A1 · Haramaty et al. · 2016 [cited by applicant]
US 20160065455A1 · Wang et al. · 2016 [cited by applicant]
US 20160094450A1 · Ghanwani et al. · 2016 [cited by applicant]
US 20160134518A1 · Callon et al. · 2016 [cited by applicant]
US 20160134535A1 · Callon · 2016 [cited by applicant]
US 20160134559A1 · Abel et al. · 2016 [cited by applicant]
US 20160134573A1 · Gagliardi et al. · 2016 [cited by applicant]
US 20160142318A1 · Beecroft · 2016 [cited by applicant]
US 20160154756A1 · Dodson et al. · 2016 [cited by applicant]
US 20160182383A1 · Pedersen · 2016 [cited by applicant]
US 20160205023A1 · Janardhanan · 2016 [cited by applicant]
US 20160226797A1 · Aravinthan et al. · 2016 [cited by applicant]
US 20160254991A1 · Eckert et al. · 2016 [cited by applicant]
US 20160259394A1 · Ragavan · 2016 [cited by applicant]
US 20160283422A1 · Crupnicoff et al. · 2016 [cited by applicant]
US 20160285545A1 · Schmidtke et al. · 2016 [cited by applicant]
US 20160285677A1 · Kashyap et al. · 2016 [cited by applicant]
US 20160294694A1 · Parker et al. · 2016 [cited by applicant]
US 20160294926A1 · Zur et al. · 2016 [cited by applicant]
US 20160301610A1 · Amit et al. · 2016 [cited by applicant]
US 20160344620A1 · G. Santos et al. · 2016 [cited by applicant]
US 20160381189A1 · Caulfield et al. · 2016 [cited by applicant]
US 20170024263A1 · Verplanken · 2017 [cited by applicant]
US 20170039063A1 · Gopal et al. · 2017 [cited by applicant]
US 20170041239A1 · Goldenberg et al. · 2017 [cited by applicant]
US 20170048144A1 · Liu · 2017 [cited by applicant]
US 20170054633A1 · Underwood et al. · 2017 [cited by applicant]
US 20170091108A1 · Arellano et al. · 2017 [cited by applicant]
US 20170097840A1 · Bridgers · 2017 [cited by applicant]
US 20170103108A1 · Datta et al. · 2017 [cited by applicant]
US 20170118090A1 · Pettit et al. · 2017 [cited by applicant]
US 20170118098A1 · Littlejohn et al. · 2017 [cited by applicant]
US 20170153852A1 · Ma et al. · 2017 [cited by applicant]
US 20170177541A1 · Berman et al. · 2017 [cited by applicant]
US 20170195259A1 · Florea · 2017 [cited by examiner]
US 20170220500A1 · Tong · 2017 [cited by examiner]
US 20170237654A1 · Turner et al. · 2017 [cited by applicant]
US 20170237671A1 · Rimmer et al. · 2017 [cited by applicant]
US 20170242753A1 · Sherlock et al. · 2017 [cited by applicant]
US 20170250914A1 · Caulfield et al. · 2017 [cited by applicant]
US 20170251394A1 · Johansson et al. · 2017 [cited by applicant]
US 20170270051A1 · Chen et al. · 2017 [cited by applicant]
US 20170272331A1 · Lissack · 2017 [cited by applicant]
US 20170272370A1 · Ganga et al. · 2017 [cited by applicant]
US 20170286316A1 · Doshi et al. · 2017 [cited by applicant]
US 20170289066A1 · Haramaty et al. · 2017 [cited by applicant]
US 20170295098A1 · Watkins et al. · 2017 [cited by applicant]
US 20170324664A1 · Xu et al. · 2017 [cited by applicant]
US 20170371778A1 · McKelvie et al. · 2017 [cited by applicant]
US 20180004705A1 · Menachem et al. · 2018 [cited by applicant]
US 20180019948A1 · Patwardhan et al. · 2018 [cited by applicant]
US 20180026878A1 · Zahavi et al. · 2018 [cited by applicant]
US 20180077064A1 · Wang · 2018 [cited by applicant]
US 20180083868A1 · Cheng · 2018 [cited by applicant]
US 20180097645A1 · Rajagopalan et al. · 2018 [cited by applicant]
US 20180097912A1 · Chumbalkar et al. · 2018 [cited by applicant]
US 20180113618A1 · Chan et al. · 2018 [cited by applicant]
US 20180115469A1 · Erickson et al. · 2018 [cited by applicant]
US 20180131602A1 · Civanlar et al. · 2018 [cited by applicant]
US 20180131678A1 · Agarwal et al. · 2018 [cited by applicant]
US 20180150374A1 · Ratcliff · 2018 [cited by applicant]
US 20180152317A1 · Chang et al. · 2018 [cited by applicant]
US 20180152357A1 · Natham et al. · 2018 [cited by applicant]
US 20180173557A1 · Nakil et al. · 2018 [cited by applicant]
US 20180183724A1 · Callard et al. · 2018 [cited by applicant]
US 20180191609A1 · Caulfield et al. · 2018 [cited by applicant]
US 20180198736A1 · Labonte et al. · 2018 [cited by applicant]
US 20180212876A1 · Bacthu et al. · 2018 [cited by applicant]
US 20180212902A1 · Steinmacher-Burow · 2018 [cited by applicant]
US 20180219804A1 · Graham et al. · 2018 [cited by applicant]
US 20180225238A1 · Karguth et al. · 2018 [cited by applicant]
US 20180234343A1 · Zdornov et al. · 2018 [cited by applicant]
US 20180254945A1 · Bogdanski et al. · 2018 [cited by applicant]
US 20180260324A1 · Marathe et al. · 2018 [cited by applicant]
US 20180278540A1 · Shalev et al. · 2018 [cited by applicant]
US 20180287928A1 · Levi et al. · 2018 [cited by applicant]
US 20180323898A1 · Dods · 2018 [cited by applicant]
US 20180335974A1 · Simionescu et al. · 2018 [cited by applicant]
US 20180341494A1 · Sood et al. · 2018 [cited by applicant]
US 20180368109A1 · Kim · 2018 [cited by examiner]
US 20180368205A1 · Park · 2018 [cited by examiner]
US 20190007349A1 · Wang et al. · 2019 [cited by applicant]
US 20190018808A1 · Beard et al. · 2019 [cited by applicant]
US 20190036771A1 · Sharpless et al. · 2019 [cited by applicant]
US 20190042337A1 · Dinan et al. · 2019 [cited by applicant]
US 20190042518A1 · Marolia · 2019 [cited by applicant]
US 20190044809A1 · Willis et al. · 2019 [cited by applicant]
US 20190044827A1 · Ganapathi et al. · 2019 [cited by applicant]
US 20190044863A1 · Mula et al. · 2019 [cited by applicant]
US 20190044872A1 · Ganapathi et al. · 2019 [cited by applicant]
US 20190044875A1 · Murty et al. · 2019 [cited by applicant]
US 20190052327A1 · Motozuka et al. · 2019 [cited by applicant]
US 20190058663A1 · Song · 2019 [cited by applicant]
US 20190068501A1 · Schneider et al. · 2019 [cited by applicant]
US 20190081903A1 · Kobayashi · 2019 [cited by examiner]
US 20190095134A1 · Li · 2019 [cited by applicant]
US 20190104057A1 · Goel et al. · 2019 [cited by applicant]
US 20190104206A1 · Goel · 2019 [cited by examiner]
US 20190108106A1 · Aggarwal et al. · 2019 [cited by applicant]
US 20190108332A1 · Glew et al. · 2019 [cited by applicant]
US 20190109791A1 · Mehra et al. · 2019 [cited by applicant]
US 20190121781A1 · Kasichainula · 2019 [cited by applicant]
US 20190140979A1 · Levi et al. · 2019 [cited by applicant]
US 20190146477A1 · Cella et al. · 2019 [cited by applicant]
US 20190171612A1 · Shahar et al. · 2019 [cited by applicant]
US 20190196982A1 · Rozas et al. · 2019 [cited by applicant]
US 20190199646A1 · Singh et al. · 2019 [cited by applicant]