Patent Document ID: 9330760
Application ID: 14133188
Patent Status: 1

Claim One:
1. A method for setting a ternary content-addressable memory (TCAM) entry, comprising: acquiring a number set formed by values of a same field in at least two packets, wherein the packets undergo a same action, and the number set comprises at least two numbers; acquiring a longest continuous mask of the number set, wherein the longest continuous mask is a continuous mask with a largest quantity of Don't Care bits in all continuous masks in all masks of the number set, each of the continuous masks is a mask of continuous Don't Care bit or a mask of the continuous Don't Care bit after the mask undergoes a bitwise rotation operation, each of the masks of the number set is an element in a first mask set of the number set, the first mask set of the number set is a group of masks that can match all elements in the number set and do not match any number except the elements in the number set; obtaining an acquisition result according to the longest continuous mask of the number set; and storing the acquisition result in the TCAM entry corresponding to the same action; wherein acquiring the longest continuous mask comprises: performing a first bitwise rotation operation on all elements in the number set to acquire a first bitwise rotation operated number set, changing the first bitwise rotation operation to a second bitwise rotation operation, performing the second bitwise rotation operation on all elements in the number set to acquire a second bitwise rotation operated number set, and repeating the changing and performing a same bitwise rotation operation on all elements in the number set until all possible bitwise rotation operations are performed to acquire all bitwise rotation operated number sets; acquiring longest suffix masks of all the bitwise rotation operated number sets, wherein a longest suffix mask is a suffix mask, in all suffix masks of the all bitwise rotation operated number sets, with a largest quantity of Don't Care bits, each of suffix masks is a continuous mask of which least significant bit is in a Don't Care state; and performing a corresponding bitwise rotation inverse operation on the longest suffix mask to acquire the longest continuous mask, wherein the corresponding bitwise rotation inverse operation is an inverse operation of the bitwise rotation operation to obtain the longest suffix mask from the number set.