Database Tree Structure for Prefix Node Key Search
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing tree data structures, such as those based on the Patricia algorithm, face limitations in handling node keys that are prefixes of other keys, leading to inefficient search and storage requirements in IP routing applications, where a large number of IP addresses need to be efficiently matched and updated.
Innovation Solution
The method involves inserting new nodes into the tree structure with search key part identifiers that allow traversal without inspecting node keys, enabling nodes with prefix relationships to be stored and searched efficiently, using node pointers and search key part identifiers to determine the next node to traverse, thereby allowing nodes with prefix relationships to be represented and searched without increasing storage or computational complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If conventional Patricia tree data structures are used for IP routing, then search speed is improved, but the ability to handle node keys with prefix relationships is limited
Solution Approach 1:
The patent segments the node key into two parts: a prefix portion and a suffix portion. The prefix portion is used for efficient tree traversal using search key part identifiers, while the suffix portion stores the actual node key data. This segmentation allows the tree to maintain fast search performance while accommodating nodes with prefix relationships, as the prefix portion can be used to navigate to the correct position without inspecting the entire node key.
Solution Approach 2:
The patent introduces search key part identifiers as intermediary elements that mediate between the search key and the node key. These identifiers point to specific portions of the node key (prefix or suffix) without requiring inspection of the entire key structure. This intermediary mechanism enables efficient navigation through nodes with prefix relationships while maintaining the speed advantages of conventional Patricia trees.
2Measurement precision
If all IP addresses are stored in routing tables, then routing accuracy is improved, but storage requirements become impractical
Solution Approach 1:
The patent extracts only the necessary prefix information from full IP addresses and stores this in the tree structure. Instead of storing complete IP address entries for all possible addresses, the system stores prefix entries that represent ranges of addresses. The suffix portion of node keys stores only the remaining bits needed for precise matching, significantly reducing storage requirements while maintaining routing accuracy for individual address resolution.
Solution Approach 2:
The patent creates a universal tree structure that can handle multiple types of routing information efficiently. The same tree structure with prefix-suffix node key division can accommodate various routing scenarios including specific IP addresses, network prefixes, and hierarchical routing information. This multi-functional approach allows a single routing table to serve multiple purposes without requiring separate storage structures for different routing granularities.
3Adaptability or versatility
If routing tables are updated frequently to reflect network changes, then routing adaptability is improved, but processing complexity increases
Solution Approach 1:
The patent implements a dynamic tree structure where nodes can be efficiently inserted, deleted, or updated by modifying only the relevant prefix or suffix portions of node keys. The search key part identifiers enable rapid reconfiguration of the tree without requiring complete restructuring. This dynamic capability allows the routing table to adapt to network changes while maintaining processing efficiency through localized updates rather than global reprocessing.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
This invention relates to databases and methods for storing and searching data in database tree structures. In particular, but not exclusively, the invention relates to the processing of data stored in database tree structures for use in data packet routing applications. The invention allows searching of data in a database where one or more nodes stored in the database have associated node keys which are prefixes of node keys associated with other nodes stored in the database. The invention thus allows a wider range of node keys to be represented in the database. Limited access to node keys is required during searching of the database and the search speed is advantageously independent of search key length.