Маршрутизатор ipv6 сохраняет количество маршрутов в качестве первых n
битов адреса. В 2000 году исследователи обнаружили только 14 различных длин префикса в 1500 маршрутах ipv6. Входящие пакеты направляются в разные исходящие порты на основе совпадения самого длинного префикса, поэтому, если первые 8 битов пакета x соответствуют 8-битному маршруту, а первые 48 битов того же пакета соответствуют 48-битному маршруту, маршрутизатор должен выбрать 48-битный маршрут.
Мой маршрутизатор обрабатывает так много пакетов, что скорость поиска памяти в таблице маршрутизации является ограничивающим фактором. Каков хороший алгоритм для нахождения самого длинного совпадающего префикса в моей таблице маршрутизации?