Claims (36)
1. Способ формирования таблиц маршрутизации/пересылки для поиска адреса протокола Интернет (IP-адреса) с использованием списка пропусков, включающий этапы разделения диапазона длин префикса IP- адреса заранее установленным способом; создания узла заголовка, имеющего максимальный уровень, на основе ряда кластеров, выделенных в диапазоне длин префикса, причем узел заголовка указывает каждый узел в списке пропусков, и создания подузлов с помощью ряда выделенных кластеров, причем каждый из подузлов имеет в качестве ключа выделенный диапазон длин префикса.1. A method of generating routing / forwarding tables to search for an Internet protocol address (IP address) using a skip list, including the steps of splitting the range of lengths of the IP address prefix in a predetermined manner; creating a header node with a maximum level based on a number of clusters allocated in the prefix length range, the header node indicating each node in the skip list, and creating subnodes using a number of selected clusters, each of the subnodes having a selected prefix length range as a key .
2. Способ по п.1, отличающийся тем, что дополнительно включает запоминание маршрутных записей, соответствующих соответствующим длинам префикса в соответствующем диапазоне длин префикса в хэш-таблицах, предусмотренных в каждом подузле в соответствии с длинами префикса.2. The method according to claim 1, characterized in that it further includes storing route entries corresponding to the corresponding prefix lengths in the corresponding range of prefix lengths in the hash tables provided in each subnode in accordance with the prefix lengths.
3. Способ по п.2, отличающийся тем, что маршрутные записи содержат 32 бита или 128 битов.3. The method according to claim 2, characterized in that the route entries contain 32 bits or 128 bits.
4. Способ по п.1, отличающийся тем, что уровень узла заголовка поду зла устанавливают случайным образом.4. The method according to claim 1, characterized in that the level of the header node of the sub-node is set randomly.
5. Способ по п.1, отличающийся тем, что диапазон длин префикса разделяют фиксированным, либо переменным образом.5. The method according to claim 1, characterized in that the range of prefix lengths is divided in a fixed or variable manner.
6. Способ по п.1, отличающийся тем, что диапазон длин префикса разделяют таким образом, что каждый диапазон длин префикса покрывается посредством подузлов.6. The method according to claim 1, characterized in that the range of prefix lengths is divided in such a way that each range of prefix lengths is covered by subnodes.
7. Способ по п.1, отличающийся тем, что таблицы маршрутизации/пересылки содержатся в процессоре маршрутизации и процессоре пересылки соответственно.7. The method according to claim 1, characterized in that the routing / forwarding tables are contained in the routing processor and the forwarding processor, respectively.
8. Способ формирования таблиц IP маршрутизации/пересылки с использованием списка пропусков, включающий этапы создания узла заголовка для указания каждого узла для обработки каждого узла в списке пропусков, создания множества подузлов, имеющих в качестве ключа диапазон префиксов IP-адреса, разделенный заранее установленным способом, и создания хэш-таблиц в соответствии с длинами префикса для запоминания маршрутных записей в соответствии с длинами префикса в соответствующем диапазоне длин префикса в каждом подузле.8. A method of generating IP routing / forwarding tables using the skip list, including the steps of creating a header node for specifying each node to process each node in the skip list, creating a plurality of subnodes having as key a range of IP address prefixes, divided by a predetermined method, and creating hash tables in accordance with the prefix lengths for storing route entries in accordance with the prefix lengths in the corresponding range of prefix lengths in each subnode.
9. Способ по п.8, отличающийся тем, что дополнительно включает запоминание маршрутных записей, совпадающих с соответствующим префиксом в хэш-таблицах.9. The method according to claim 8, characterized in that it further includes storing route entries matching the corresponding prefix in the hash tables.
10. Способ по п.8, отличающийся тем, что уровень узла заголовка подузла устанавливают случайным образом.10. The method according to claim 8, characterized in that the level of the header node of the sub-node is set randomly.
11. Способ по п.8, отличающийся тем, что диапазон длин префикса разделяют фиксированным или переменным образом.11. The method according to claim 8, characterized in that the range of prefix lengths is divided in a fixed or variable manner.
12. Способ по п.8, отличающийся тем, что диапазон длин префикса разделяют таким образом, что каждый диапазон длин префикса должен быть покрыт посредством множества подузлов.12. The method according to claim 8, characterized in that the range of prefix lengths is divided in such a way that each range of prefix lengths must be covered by a plurality of subnodes.
13. Способ по п.8, отличающийся тем, что маршрутные записи содержат 32 или 128 бит.13. The method according to claim 8, characterized in that the route entries contain 32 or 128 bits.
14. Способ по п.8, отличающийся тем, что узел заголовка имеет значение ключа +∞ и прямой указатель (указатели), проиндексированный от 0 до значения максимального уровня минус единица.14. The method of claim 8, wherein the header node has a key value + ∞ and a direct pointer (s) indexed from 0 to the maximum level value minus one.
15. Способ по п.8, отличающийся тем, что таблицы маршрутизации/пересылки находятся в процессоре маршрутизации и процессоре пересылки соответственно.15. The method according to claim 8, characterized in that the routing / forwarding tables are in the routing processor and the forwarding processor, respectively.
16. Способ поиска в таблицах маршрутизации/пересылки с использованием списка пропусков, в котором маршрутные записи запоминают в виде хэш-таблицы в соответствии с длиной префикса, установленной в каждом узле, созданном в соответствии с распределением диапазона префиксов IP-адреса, причем способ включает этапы нахождения узла, в котором установлен диапазон префикса, соответствующий длине префикса искомого маршрута; нахождения хэш-таблицы с той же длиной префикса, что и у искомого маршрута, в найденном узле и нахождения искомого маршрута из найденной хэш-таблицы.16. A method for searching routing / forwarding tables using a skip list, in which the route entries are stored as a hash table in accordance with the prefix length set in each node created in accordance with the distribution of the IP address prefix range, the method comprising the steps finding the node in which the prefix range corresponding to the length of the prefix of the desired route is set; finding a hash table with the same prefix length as the search route in the found node and finding the search route from the found hash table.
17. Способ по п.16, отличающийся тем, что этап нахождения узла включает нахождение узла для указания от максимального уровня узла заголовка списка пропусков, сравнение диапазона длин префикса найденного узла с длиной префикса искомого маршрута, и нахождение узла, указанного на следующем уровне узла заголовка, когда длина префикса искомого маршрута не соответствует диапазону длин префикса найденного узла.17. The method according to clause 16, wherein the step of finding the node includes finding a node to indicate the skip list header from a maximum node level, comparing the prefix length range of the found node with the prefix length of the desired route, and finding the node indicated at the next level of the header node when the prefix length of the desired route does not match the prefix length range of the found node.
18. Способ по п.16, отличающийся тем, что список пропусков включает узел заголовка и множество узлов, каждый из которых имеет ключ в диапазоне, заранее установленном в убывающем порядке, и сохраняет маршрутные записи, соответствующие соответствующим длинам префикса, в хэш-таблицах, связанных с соответствующими длинами префикса.18. The method according to clause 16, wherein the skip list includes a header node and a plurality of nodes, each of which has a key in a range predefined in descending order, and stores the route entries corresponding to the corresponding prefix lengths in hash tables, associated with the corresponding prefix lengths.
19. Способ по п.16, отличающийся тем, что таблицы маршрутизации/пересылки находятся в процессоре маршрутизации и процессоре пересылки соответственно.19. The method according to clause 16, wherein the routing / forwarding tables are in the routing processor and the forwarding processor, respectively.
20. Способ по п.16, отличающийся тем, что маршрутные записи содержат 32 бита или 128 бит.20. The method according to clause 16, wherein the route entries contain 32 bits or 128 bits.
21. Способ обновления таблиц маршрутизации/пересылки с использованием списка пропусков, в котором маршрутные записи запоминают в виде хэш-таблицы в соответствии с длиной префикса, установленной в каждом узле, созданном в соответствии с диапазоном длин префикса IP-адреса, причем способ включает этапы нахождения узла, в котором установлен диапазон префикса, соответствующий длине префикса обновляемого маршрута, поиска в хэш-таблице, имеющей ту же длину префикса, что и у обновляемого маршрута в найденном узле, и обновления соответствующего маршрута в хэш-таблице, когда хэш-таблица найдена.21. A method for updating routing / forwarding tables using a skip list, in which the route entries are stored as a hash table in accordance with the prefix length set in each node created in accordance with the IP address prefix length range, the method including the steps of finding the node in which the prefix range corresponding to the prefix length of the updated route is set, search in the hash table having the same prefix length as the updated route in the found node, and updates the corresponding ma the route in the hash table when the hash table is found.
22. Способ по п.21, отличающийся тем, что этап нахождения узла включает нахождение узла для указания от максимального уровня узла заголовка списка пропусков, сравнение диапазона длин префикса найденного узла с длиной префикса обновляемого маршрута, и нахождение узла, указанного на следующем уровне узла заголовка, когда длина префикса обновляемого маршрута не соответствует диапазону длин префикса найденного узла.22. The method according to item 21, wherein the step of finding the node includes finding a node to indicate the skip list header from a maximum node level, comparing the prefix length range of the found node with the prefix length of the updated route, and finding the node indicated at the next level of the header node when the prefix length of the updated route does not match the prefix length range of the found node.
23. Способ по п.21, отличающийся тем, что этап обновления маршрута включает добавление, изменение или удаление обновляемого маршрута.23. The method according to item 21, wherein the step of updating the route includes adding, changing or deleting the updated route.
24. Способ по п.21, отличающийся тем, что дополнительно включает этапы создания хэш-таблицы, имеющей тот же префикс, что и обновляемый маршрут, когда хэш-таблица не найдена, и вставки обновляемого маршрута в созданную хэш-таблицу.24. The method according to item 21, characterized in that it further includes the steps of creating a hash table having the same prefix as the updated route when the hash table is not found, and insert the updated route into the created hash table.
25. Способ по п.21, отличающийся тем, что список пропусков включает узел заголовка и множество узлов, каждый из которых имеет ключ в диапазоне, заранее установленном в убывающем порядке, и сохраняет маршрутные записи, соответствующие соответствующим длинам префикса, в хэш-таблицах, связанных с соответствующими длинами префикса.25. The method according to item 21, wherein the skip list includes a header node and a plurality of nodes, each of which has a key in a range predetermined in descending order, and stores the route entries corresponding to the corresponding prefix lengths in hash tables, associated with the corresponding prefix lengths.
26. Способ по п.21, отличающийся тем, что таблицы маршрутизации/пересылки находятся в процессоре маршрутизации и процессоре пересылки соответственно.26. The method according to item 21, wherein the routing / forwarding tables are in the routing processor and the forwarding processor, respectively.
27. Способ по п.21, отличающийся тем, что маршрутные записи содержат 32 бита или 128 бит.27. The method according to item 21, wherein the route entries contain 32 bits or 128 bits.
28. Способ поиска маршрута в таблицах маршрутизации/пересылки с использованием списка пропусков, в котором маршрутные записи запоминают в виде хэш-таблицы в соответствии с заранее установленными длинами префикса в каждом узле, созданном в соответствии с распределением диапазона префикса IP-адреса, причем способ включает этапы нахождения соседнего узла, начиная с первого узла списка пропусков, сравнения адреса назначения с соответствующими хэш-таблицами в соответствующем узле и принятие совпадающего префикса в качестве самого длинного префикса, когда хэш-таблица содержит адрес назначения.28. A method for finding a route in routing / forwarding tables using a skip list in which route entries are stored in a hash table according to predefined prefix lengths at each node created in accordance with the distribution of the IP address prefix range, the method including the steps of finding a neighboring node, starting from the first node of the skip list, comparing the destination address with the corresponding hash tables in the corresponding node, and accepting the matching prefix as the longest The prefix, when the hash table contains the destination address.
29. Способ поиска маршрута по п.28, отличающийся тем, что дополнительно включает нахождение следующего узла в списке пропусков, когда хэш-таблица не содержит IP-адрес назначения.29. The route search method according to claim 28, characterized in that it further includes finding the next node in the skip list when the hash table does not contain the destination IP address.
30. Способ поиска маршрута по п.28, отличающийся тем, что список пропусков включает узел заголовка и множество узлов, каждый из которых имеет ключ в диапазоне, заранее установленном в убывающем порядке, и сохраняет маршрутные записи, соответствующие соответствующим длинам префикса в хэш-таблицах, связанных с соответствующими длинами префикса.30. The route search method according to claim 28, wherein the skip list includes a header node and a plurality of nodes, each of which has a key in a range predetermined in descending order, and stores route entries corresponding to the corresponding prefix lengths in the hash tables associated with the corresponding prefix lengths.
31. Способ поиска маршрута по п.28, отличающийся тем, что этап сравнения включает сравнение адреса назначения с хэш-таблицей, имеющей максимальную длину префикса среди хэш-таблиц соответствующего узла, и сравнение следующей хэш-таблицы, имеющей следующую по величине длину префикса, с адресом назначения, когда адрес назначения не найден в хэш-таблице, имеющей максимальную длину префикса.31. The route search method according to claim 28, wherein the comparison step includes comparing the destination address with a hash table having the maximum prefix length among the hash tables of the corresponding node, and comparing the next hash table having the next largest prefix length, with the destination address when the destination address is not found in the hash table having the maximum prefix length.
32. Способ поиска маршрута по п.22, отличающийся тем, что поисковые таблицы маршрутизации/пересылки находятся в процессоре маршрутизации и процессоре пересылки соответственно.32. The route search method according to claim 22, wherein the routing / forwarding lookup tables are in the routing processor and the forwarding processor, respectively.
33. Способ поиска маршрута по п.28, отличающийся тем, что маршрутные записи содержат 32 бита или 128 бит.33. The route search method according to claim 28, characterized in that the route entries contain 32 bits or 128 bits.
34. Маршрутизатор протокола Интернет (IP), содержащий по меньшей мере модуль плат, каждый из которых снабжен процессором пересылки, предназначенным для ввода и вывода пакетов, при этом процессор пересылки имеет таблицу пересылки, имеющую архитектуру списка пропусков, которая содержит узел заголовка и множество узлов, каждый из которых создан в соответствии с диапазоном префикса IP-адреса, имеет диапазон длин префикса в качестве ключа и хранит маршрутные записи в виде хэш-таблицы в соответствии с установленной длиной префикса, коммутационную структуру для коммутации пакетов между внутренними портами, и процессор маршрутизации, включающий таблицу маршрутизации, имеющую архитектуру списка пропусков, которая содержит узел заголовка и множества узлов, кааждый из которых создан в соответствии с диапазоном префикса IP-адреса, имеет диапазон длин префикса в качестве ключа и хранит маршрутные записи в виде хэш-таблицы в соответствии с установленной длиной префикса, и управляет всей операцией маршрутизации линейных модулей плат и коммутационной структуры.34. An Internet Protocol (IP) router containing at least a module of cards, each of which is equipped with a forwarding processor for inputting and outputting packets, the forwarding processor having a forwarding table having a skip list architecture that includes a header node and a plurality of nodes , each of which is created in accordance with the IP address prefix range, has a prefix length range as a key and stores route entries in the form of a hash table in accordance with the set prefix length, switching a structure for switching packets between the internal ports, and a routing processor including a routing table having a skip list architecture that contains a header node and a plurality of nodes, each of which is created in accordance with the IP address prefix range, has a prefix length range as a key and stores route entries in the form of a hash table in accordance with the set prefix length, and controls the entire routing operation of the linear modules of the boards and the switching structure.
35. IP маршрутизатор, содержащий по меньшей мере модуль плат, снабженный процессором пересылки, имеющим таблицу пересылки с архитектурой списка пропусков, которая содержит узел заголовка и множество узлов, каждый из которых создан в соответствии с диапазоном префикса IP-адреса, имеет диапазон длин префикса в качестве ключа и хранит маршрутные записи в виде хэш-таблицы в соответствии с установленной длиной префикса, коммутационную структуру для коммутации пакетов между внутренними портами, и процессор маршрутизации для управления всей операцией маршрутизации линейных модулей плат и коммуникационной структуры.35. An IP router containing at least a module of cards equipped with a forwarding processor having a forwarding table with a skip list architecture that contains a header node and a plurality of nodes, each of which is created in accordance with the IP address prefix range, has a prefix length range of as a key and stores routing entries in the form of a hash table in accordance with the set prefix length, a switching structure for switching packets between internal ports, and a routing processor to control the entire opera atsiey routing line module cards and communication structure.
36. IP маршрутизатор по п.35, отличающийся тем, что процессор маршрутизации содержит таблицу маршрутизации, имеющую архитектуру списка пропусков, которая содержит узел заголовка и множество узлов, каждый из которых создан в соответствии с диапазоном префикса IP адреса, имеет диапазон длин префикса в качестве ключа и хранит маршрутные записи в виде хэш-таблицы в соответствии с установленной длиной префикса.36. The IP router of claim 35, wherein the routing processor comprises a routing table having a skip list architecture that contains a header node and a plurality of nodes, each of which is created in accordance with the IP address prefix range, has a prefix length range of key and stores the route entries in the form of a hash table in accordance with the set prefix length.