Multithreaded Network Connection Establishment via Caching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Establishing end-to-end network connections within complex networks is time-consuming due to the need to determine initial data routes and implement them, which involves significant start-up time and resource management.
Innovation Solution
A method and system utilizing software threads to determine cross-connection and link information, process this information into network resource groups, and establish end-to-end connections across networks, leveraging a software-defined network (SDN) controller and network caches to optimize data routes and connections.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If traditional single-threaded methods are used to determine and establish network connections, then the system is simpler to manage, but the connection establishment time is significantly increased
Solution Approach 1:
The patent divides the network connection establishment process into multiple independent software threads, each responsible for specific tasks such as determining cross-connection information, determining link information, processing network resources, identifying end-to-end connections, and establishing connections. This segmentation allows parallel execution of connection establishment tasks, significantly reducing the overall time required while maintaining manageable system complexity through modular design.
Solution Approach 2:
The patent implements preliminary action by pre-determining and caching network resource information (cross-connection information and link information) before actual connection establishment is needed. The system processes and stores network resource data in advance, so when connection requests occur, the threads can quickly retrieve pre-processed information from caches rather than computing everything from scratch, thereby reducing connection establishment time.
2Productivity
If multiple software threads are used to establish network connections in parallel, then the connection establishment speed is improved, but the resource management complexity increases
Solution Approach 1:
The patent introduces an intermediary layer in the form of network resource caches that mediate between the multiple software threads and the underlying network resources. The caches store pre-processed cross-connection and link information, allowing threads to efficiently access and share network resource data without direct complex interactions. This intermediary mechanism enables parallel thread execution while simplifying resource management through centralized caching.
Solution Approach 2:
The patent creates copies of network resource information (cross-connection data and link data) and stores them in caches that can be accessed by multiple threads simultaneously. Instead of having threads directly manipulate shared network resources, each thread works with copied data from the caches, which reduces contention and simplifies resource management while maintaining high connection establishment speed.
3Reliability
If comprehensive network resource processing is performed to identify optimal end-to-end connections, then the connection quality is improved, but the processing time before connection establishment increases
Solution Approach 1:
The patent applies preliminary action by performing comprehensive network resource processing in advance and storing the results in caches. Cross-connection information and link information are processed beforehand to identify optimal paths and resources, so when connection requests arrive, threads can quickly retrieve pre-analyzed information rather than performing comprehensive analysis in real-time. This maintains connection quality while reducing processing time.
Solution Approach 2:
The patent implements dynamics by allowing the system to adapt its processing depth based on conditions. For routine connections, the system uses pre-processed cached information for rapid establishment. For complex or changing network conditions, the system can dynamically perform additional processing. This dynamic approach balances connection quality with processing time requirements.
Data Source
AI summary
A method for connecting endpoints. The method may include determining, using a first group of software threads, cross-connection information regarding various cross-connections among various network elements. The network elements may include a first network element and a second network element. The method may further include determining, using the first group of software threads, link information regarding various links between the network elements. The method may further include processing, within a network cache, the cross-connection information and the link information into various network resources groups. Each network resource group of the network resources groups may describe adjacent cross-connections for a link among the links.


