 command). This would completely inhibit the intended functionality of the tag bit. Tag bits can also be used as the following: Validity bits, which are set to 1 for valid entry and to 0 for empty, which would allow the elimina- tion of empty or inappropriate positions from participating in a search. Skip bits, which can be quite useful when multiple matches have been scored and they must be sequentially read out from a subtable of a larger table. The process starts with the skip bits for all entries cleared to 0. As soon as the highest priority match is read, the user sets the skip bit to 1 by performing a read/modify/write sequence and reinitiates the search, which will yield the next lower priority. The process can continue until all matches have been read. SYSTEMS ENGINEERING ISSUES SURROUNDING THE USE OF CAMS We will conclude our short overview of CAM-based search engines by discussing some issues that systems designers must consider in order to make the best decisions. Downloaded from Digital Engineering Library @ McGraw-Hill (www.digitalengineeringlibrary.com Copyright © 2004 The McGraw-Hill Companies. All rights reserved. Any use is subject to the Terms of Use as given at the website. SEARCH ENGINES 228 NETWORK PROCESSORS In many high-speed network-processing systems, several searches must occur simultaneously in order for the equipment to guarantee deep packet inspection and processing at wire speeds. Traditional classification applications need to look up a destination address to make a decision. With the current flow management implied by the differentiated services that carriers want to offer, which are based on stringent QoS and CoS requirements that are imposed onto the equipment designer, the packet clas- sifier must be able to dive deep into the packet content and extract specific fields for subsequent pro- cessing. This means that the search engine that supports the classifier must be able to produce results within extremely short amounts of time. In many newer applications, several tables will n