Validating multiple execution plans for database queries |
| This description and the accompanying drawing illustrate specific examples of embodiments in which ... |
|
Text analysis technique |
| OF SELECTED EMBODIMENTS For the purpose of promoting an understanding of the principles of the ... |
|
Flexible interchange of coded multimedia facilitating access and streaming |
| The data structures, file formats, systems and methods of this invention provide enhanced ... |
|
Real time processing and streaming of spliced encoded MPEG video and associated audio |
| In accordance with a first aspect, the invention provides a method of real-time seamless splicing ... |
|
Wireless communication device with markup language based man-machine interface |
| The present invention overcomes the various limitations of conventional wireless communication ... |
|
Mobile communication system enabling location associated messages |
| The invention seeks to offer new mobile services to users enabling people to convey messages and ... |
|
Method and system for associating related errors in a computer system |
| The present invention provides a method and system for associating related errors in a computer ... |
|
System and methods for interactively generating and testing help systems |
| The present invention overcomes the limitations and shortcomings of the prior art with an authoring ... |
|
|
Approximated per-flow rate limiting
| Details |
Inventors: Cheriton, David R.;
Assignee: Cisco Technology, Inc. (San Jose, CA)
Primary Examiner: Chin; Wellington
Assistant Examiner: Jain; Raj K.
Attorney, Agent or Firm: Campbell Stephenson Ascolese LLP
A method and apparatus to limit the throughput rate of non-adapting aggressive flows on a packet-by-packet basis. Each packet of an input flow is mapped to an entry in a flow table for each output queue. The mapping is based on a subset of the packet's header data, giving an approximation of per-flow management. Each entry contains a credit value. On packet reception, the credit value is compared to zero; if there are no credits, the packet is dropped. Otherwise, the size of the packet is compared to the credit value. If sufficient credits exist (i.e., size is less than or equal to credits), the credit value is decremented by the size of the packet in cells and the processing proceeds according to conventional methods, including but not limited to those disclosed in the co-pending DBL Application, incorporated herewith by reference in its entirety. If, however, the size of the packet exceeds the available credits, the credit value is set to zero and the packet is dropped. A periodic task adds credits to each flow table entry up to a predetermined maximum. The processing rate of each approximated flow is thus maintained to the rate determined by the number of credits present at each enqueuing decision, up to the allowed maximum. The scheme operates independently of packet flow type, providing packet-specific means for rapidly discriminating well-behaved flows that adapt to congestion situations signaled by packet drop from aggressive, non-adapting flows and managing throughput bandwidth accordingly. Bandwidth is shared fairly among well-behaved flows, large and small, and time-critical (low latency) flows, thereby protecting all from non-adapting aggressive flows. |
|
DETAILED DESCRIPTION Overview The present Application discloses a rate limit scheme, using actual flow data rate requirements rather than type/class of service identifiers, that adapts to varying traffic. This scheme prevents unauthorized use of and denial of service attacks on internetworking systems by malevolent users utilizing flow behavior and data rate to control the bandwidth of all flows in a queue. The present invention also avoids the high resource and setup overhead costs associated with true per-flow control by using an approximated flow control method. The present invention ensures good service for fragile voice flows (those sending few packets and those of a time critical nature) such as Voice-over-Internet Protocol (VoIP), thereby protecting them from non-adapting aggressive flows. In one embodiment of the present invention, a voice flow is assigned to a queue given high priority in order to give voice flows low latency and high immunity from packet drops. The rate-limiting flow table of the present invention is employed to prevent NAFs and aberrant flows masquerading as voice from overwhelming the high priority voice queue and/or causing starvation of other flows through the switch. Although the terms switch and/or router will be used generally in this specification, those skilled in the art will realize that other related internetworking devices may be used, in addition to routers or switches, to perform analogous functions. Accordingly, the invention is not limited to any particular type of internetworking device, router, or switch. Also, although the primary focus of the current invention is Internet Protocol (IP) packet flows, those skilled in the will art realize that protocols and flows other than IP can be benefit from the present invention and its alternate embodiments. Accordingly, the invention is not limited to any particular type of protocol or packet format. Although the circuit of FIG. 1 has been described as prior art, FIG. 1 may also be used to illustrate a router/switch device incorporating the present invention
|
| Related patents |
|
|
Network switch having system for automatically detecting change in network node connection
What is claimed is: 1. A multiport data communication system for transferring data packets between ports, the data communication system comprising: a plurality of ...
|
|
|
Method and apparatus for reordering packet data units in storage queues for reading and writing memory
The invention is directed to a method and system for reordering data units that are to be written to, or read from, selected locations in a memory. The data units are re-...
|
|
|
Enqueue operations for multi-buffer packets
Referring to FIG. 1, a network system 10 for processing data packets includes a source 12 of data packets coupled to an input of a network device 14. An output of the ...
|
|
|
High performance self balancing low cost network switching architecture based on distributed hierarchical shared
The present invention is directed to a communications component for network communications. The communications component comprises a first data port interface supporting ...
|
|
|
Methods and systems providing fair queuing and priority scheduling to enhance quality of service in a network
According to one embodiment of the present invention, there is provided an Integrated Bandwidth Latency Scheduler apparatus, method and system (collectively referred to ...
|
|
|
Method for aging table entries in a table supporting multi-key searches
The invention is for use with a table containing a plurality of data entries, each of the data entries made up of a string of data. Each string of data contains a first ...
|
|
|
Enhancing performance by pre-fetching and caching data directly in a communication processor's register set
OF THE INVENTION Various aspects of packet processing integrated circuits are discussed in U.S. Pat. No. 5,748,630, entitled "ASYNCHRONOUS TRANSFER MODE CELL PROCESSING ...
|
|
|
Coherency coverage of data across multiple packets varying in sizes
The present invention overcomes the disadvantages of the prior art by providing a technique that enables efficient resolution of data coherency for packet data ...
|
|
|
Scratchpad memory
According to one aspect, a integrated circuit includes a random-access memory (RAM) storage and a controller both located on the same semiconductor chip. The controller ...
|
|
|
Bus interface with a first-in-first-out memory
According to one aspect of the invention, a method is described of receiving bytes of data from a media device includes issuing N consecutive requests, each for M bytes, ...
|
|
|