The invention relates to a system in which given search keys are evaluated,
segment by segment, to search through tree-structured tables for finding
an output information corresponding to the longest matching prefix. For at
least one of the segments, only selected bits of the search key segment
are used as index for accessing an associated table where test values are
stored which are to be compared to the respective search key segment. The
bits to be selected are determined by an index mask, reflecting the
distribution of the valid test values in the table entries (and valid
search key segment values). This allows table compression for minimizing
storage requirements and search time. A procedure is disclosed for
generating an optimum index mask in response to the set of valid test
values.
La invención se relaciona con un sistema en el cual se evalúen las llaves de búsqueda dadas, segmento por el segmento, para buscar a través de las tablas tree-structured para encontrar una información de la salida el corresponder al prefijo que empareja más largo. Para por lo menos uno de los segmentos, solamente los pedacitos seleccionados del segmento de la llave de búsqueda se utilizan como índice para tener acceso a una tabla asociada donde se almacenan los valores de la prueba que deben para ser comparados al segmento respectivo de la llave de búsqueda. Los pedacitos que se seleccionarán son determinados por una máscara del índice, reflejando la distribución de los valores válidos de la prueba en las entradas de la tabla (y de los valores válidos del segmento de la llave de búsqueda). Esto permite la compresión de la tabla por requisitos de almacenaje y tiempo de reducción al mínimo de la búsqueda. Un procedimiento se divulga para generar una máscara óptima del índice en respuesta al sistema de valores válidos de la prueba.