The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Oct. 22, 2019

Filed:

Jan. 20, 2017
Applicant:

Google Llc, Mountain View, CA (US);

Inventors:

Carlo Contavalli, Redwood City, CA (US);

Nandita Dukkipati, Menlo Park, CA (US);

Ahmed Said Mohamed Tawfik Issa, Atlanta, GA (US);

Vytautas Valancius, Redwood City, CA (US);

Assignee:

Google LLC, Mountain View, CA (US);

Attorney:
Primary Examiner:
Assistant Examiner:
Int. Cl.
CPC ...
H04L 12/26 (2006.01); H04L 12/815 (2013.01); H04L 12/801 (2013.01); H04L 12/875 (2013.01);
U.S. Cl.
CPC ...
H04L 47/225 (2013.01); H04L 47/22 (2013.01); H04L 47/193 (2013.01); H04L 47/564 (2013.01); H04L 47/568 (2013.01);
Abstract

Systems and methods of performing rate limiting traffic shaping with a time-indexed data structure in a network device are provided. A network interface driver of the network device can received packets at the packet layer of a network host from a plurality of applications. The network interface driver can prevent one of the applications from sending additional packets for transmission until the application received a transmission completion notification indicating a packet previously forwarded to the packet layer of the network host has been transmitted. The network interface driver can process the received packets to determine a transmission time for each packet based on at least on rate limit policy. The network interface driver can store an identifier associated with the respective packet in a time-indexed data structure at a position associated with the transmission time determined for the packet. The network interface driver can determine that a time indexed in the time-indexed data structure has been reached and in response transmit a packet associated with the identifier stored in the time-indexed data structure at a position associated with the reached time. The network interface driver can communicate a transmission completion notification subsequent to the network interface driver transmitting the packet.


Find Patent Forward Citations

Loading…