Telephone Number Registry Using Tree Data Structure for VoIP Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing telephony routing systems, particularly in packet-switched networks like the Internet, face inefficiencies due to the inability to dynamically select optimal paths for VoIP calls based on factors beyond shortest path routing, such as network load, latency, and contractual agreements, leading to performance constraints and delayed voice streams.
Innovation Solution
A telephone number registry using a tree data structure with memory-mapped files and a data index map to store and retrieve routing and policy data associated with telephone numbers, allowing for efficient aggregation and generation of route vectors that consider multiple influencing factors, thereby optimizing call routing decisions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional shortest path routing is used in packet-switched networks, then routing simplicity is maintained, but call quality and performance are degraded due to network load and latency
Solution Approach 1:
The patent pre-calculates and stores optimal routing paths in a registry database before calls are established. The system evaluates multiple routing options considering network load, latency, and contractual agreements in advance, storing the results as pre-computed route vectors. When a call needs to be routed, the system simply retrieves the pre-determined optimal path rather than performing complex real-time calculations, thus improving call quality without adding runtime complexity.
Solution Approach 2:
The patent introduces a registry database as an intermediary component between the routing decision maker and the actual call establishment. This registry stores pre-evaluated routing information that mediates between the complex factors (network load, latency, contracts) and the simple routing action. The registry acts as a lookup table that translates complex routing considerations into simple retrieval operations, resolving the contradiction between reliable routing decisions and operational simplicity.
2Productivity
If real-time evaluation of multiple routing factors is performed, then optimal call routing is achieved, but processing time and system complexity increase
Solution Approach 1:
The system performs routing evaluations in advance and stores the results in a registry database. Instead of evaluating network load, latency, and contractual agreements in real-time when a call is initiated, the system pre-computes these factors and stores the optimal routing paths. This preliminary action transforms a time-consuming real-time evaluation process into a fast database lookup operation, significantly reducing call setup time while maintaining routing efficiency.
Solution Approach 2:
The patent implements a dynamic registry that can be updated with new routing information as network conditions change. The registry stores routing evaluations that can be refreshed periodically or triggered by specific events, allowing the system to adapt to changing network conditions without performing full re-evaluations. This dynamic approach maintains routing efficiency by updating only when necessary while keeping call setup times low through rapid registry lookups.
3Loss of information
If simple DNS lookup is used for number translation, then translation speed is fast, but routing policy and contractual agreement information is lost
Solution Approach 1:
The patent implements a nested data structure where the registry database contains multiple levels of information. The outer structure stores routing policy and contractual agreement information, while the inner structure contains the actual route vectors and translation data. This nesting allows the system to store comprehensive routing information (including policies and contracts) within a structured format that can be efficiently queried. The nested structure preserves all necessary information while maintaining organizational efficiency, resolving the contradiction between information completeness and structural complexity.
Solution Approach 2:
The patent extends the traditional single-dimension DNS lookup by adding multiple dimensions to the data structure. Instead of simply mapping numbers to addresses, the registry stores multi-dimensional information including routing policies, contractual agreements, network conditions, and multiple potential routes. This dimensional expansion transforms a flat lookup table into a rich, multi-layered data structure that captures comprehensive routing information while providing systematic access methods to retrieve the necessary data.
Data Source
Figure 1
Figure 2~3
Figure 4
AI summary
An Internet telephony registry (190) comprises a server (140) and an associated data store (160). Routing and/or policy data associated with telephone number strings are stored in the data store (160) in a tree data structure (240) and a data index map (230). The tree data structure (240) comprises parent nodes and leaf nodes and each parent node of the tree data structure (240) has ten child nodes. The tree data structure (240) stores an index associated with each telephone number string and the data index map stores routing and/or policy attributes (233) represented by the indices (232).