RFC: Range feature code for TCAM-based packet classification
Abstract Packet classification has been widely used in various Internet applications, including the recent hot topic SDN. Generally, TCAM is a typical device for high-speed packet classification. However, when it comes to some classification rules that contain ranges, since TCAM is not well designed to represent ranges, range expansion problem is caused. Range expansion could cost much more TCAM entries than the number of rules, thus impairing the utilization of TCAM. In practice, there are some unused bits in a TCAM entry, which could be used to reduce the range expansion. In this paper, we propose a scheme to efficiently represent ranges with such extra bits. Our scheme is based on the observation that in prior encoding schemes that use extra bits to represent ranges, the encoding in extra bits and its fallback scheme are always regarded as two totally separate processes. Even though the two encoding methods are different, as they both focus on the same rule, there actually exists some relevance in information of the two encoding process. In our scheme, the two encoding processes are brought together with range feature code (RFC) as the link, thus reducing the information redundancy between them. Experiment results show that when 36 extra bits are available in TCAM, our scheme reduces the redundancy of range rules by around 36% compared with the best prior scheme.