Dynamically controlling packet processing
First Claim
1. A method for processing a network packet comprising:
- receiving inbound packets from a network;
setting a rate-limiting operating mode based on a traffic level of the inbound packets; and
selectively invoking a packet service routine based on the rate-limiting operating mode by;
calling the packet service routine from a software process without issuing an interrupt when the traffic level of the inbound packets exceeds a threshold and controlling a usage rate by which the software process uses computing resources to process the packets, andissuing a software interrupt to invoke the packet service routing as an interrupt-driven service routine when the traffic level of the inbound packets does not exceed the threshold.
1 Assignment
0 Petitions
Accused Products
Abstract
A router includes a detection module to detect a presence of the network attack, such as a denial of service (DOS) attack. The detection module may, for example, include counters indicating a number of packets processed for various network protocols supported by the router. The detection module enables a rate-limiting operating mode for the router when one or more of the counters exceed a protocol-specific threshold. Under normal traffic levels, the router receives inbound packets using interrupt-driven service routines. When a network attack is detected, however, the router dynamically switches modes and processes the packets using a finely controlled software process. This allows the software process to control the computing resources allocated to servicing packets during a network attack, thereby reserving sufficient resources for lower priority software processes to process the packets and service other tasks.
50 Citations
14 Claims
-
1. A method for processing a network packet comprising:
-
receiving inbound packets from a network; setting a rate-limiting operating mode based on a traffic level of the inbound packets; and selectively invoking a packet service routine based on the rate-limiting operating mode by; calling the packet service routine from a software process without issuing an interrupt when the traffic level of the inbound packets exceeds a threshold and controlling a usage rate by which the software process uses computing resources to process the packets, and issuing a software interrupt to invoke the packet service routing as an interrupt-driven service routine when the traffic level of the inbound packets does not exceed the threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-readable medium comprising instructions for causing a programmable processor to:
-
receive inbound packets from a network; set a rate-limiting operating mode based on a traffic level of the inbound packets; selectively invoke a packet service routine based on the rate-limiting operating mode by; calling the packet service routine from a software process without issuing an interrupt when the traffic level of the inbound packets exceeds a threshold and controlling a usage rate by which the software process uses computing resources to process packets, and issuing a software interrupt to invoke the packet service routing as an interrupt-driven service routine when the traffic level of the inbound packets does not exceed the threshold. - View Dependent Claims (11, 12, 13, 14)
-
Specification