发明名称 Optimization of packet processing by delaying a processor from entering an idle state
摘要 Some embodiments facilitate high performance packet-processing by enabling one or more processors that perform packet-processing to determine whether to enter an idle state or similar state. As network packets usually arrive or are transmitted in batches, the processors of some embodiments determine that more packets may be coming down a multi-stage pipeline upon receiving a first packet for processing. As a result, the processors may stay awake for a duration of time in anticipation of an incoming packet. Some embodiments keep track of the last packet that entered the first stage of the pipeline and compare that with a packet that the processor just processed in a pipeline stage to determine whether there may be more packets coming that need processing. In some embodiments, a processor may also look at a queue length of a queue associated with an upstream stage to determine whether more packets may be coming.
申请公布号 US9396010(B2) 申请公布日期 2016.07.19
申请号 US201414194077 申请日期 2014.02.28
申请人 Amazon Technologies, Inc. 发明人 Vincent Pradeep;Becker David D.
分类号 G06F9/38;G06F9/455;G06F9/50 主分类号 G06F9/38
代理机构 Kilpatrick Townsend & Stockton LLP 代理人 Kilpatrick Townsend & Stockton LLP
主权项 1. A non-transitory computer-readable storage medium storing computer-executable instructions that, when executed by a processor, cause the processor to perform operations, comprising: receiving a network packet for processing at a first pipeline stage in a plurality of pipeline stages, the plurality of pipeline stages being respectively associated with a corresponding queue of a plurality of queues of network packets to be processed by the processor, the plurality of pipeline stages being distinct from the plurality of queues; processing the network packet by a current pipeline stage: upon completion of processing the network packet by the current pipeline stage, determining a queue length of a particular queue associated with an upstream pipeline stage for identifying an amount of processing time for the first pipeline stage in the plurality of pipeline stages, the upstream pipeline stage configured to process the network packet after the first pipeline stage; and delaying the processor from entering the idle state for a duration of time based at least in part on determining that the queue length of the particular queue exceeds a threshold value.
地址 Reno NV US