UDP Transport for Web Service Search Queries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current TCP-based data transmission for search queries results in high latency and network loading due to its reliability mechanisms, which are not suitable for time-sensitive applications, and often requires multiple round trips, leading to timeouts and increased network overhead.
Innovation Solution
Implementing UDP transport for routing search queries and responses, allowing queries to be transmitted as DNS requests in UDP packets, bypassing intermediate servers and enabling direct communication between clients and search servers, thus reducing latency and network load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If TCP transport is used for search queries, then reliable data transfer is achieved, but latency and network loading increase
Solution Approach 1:
The patent uses UDP packets as disposable, connectionless transmission units for search queries. Each query is sent as a standalone UDP packet without establishing persistent connections or requiring complex acknowledgment handshakes. This approach sacrifices some reliability mechanisms of TCP but dramatically reduces latency and network overhead, making it suitable for time-sensitive search operations where retransmission can be handled at higher protocol layers if needed.
2Reliability
If TCP transport with multiple round trips is used, then complete data transmission is achieved, but network overhead and timeout risks increase
Solution Approach 1:
The patent extracts the essential data transmission function from the complex TCP protocol stack and implements it using simple UDP packets. By taking out only the necessary payload transmission capability and removing the burdensome connection management, sequencing, and acknowledgment mechanisms, the system achieves complete data transmission with significantly reduced protocol complexity and network overhead.
Solution Approach 2:
The UDP packet format is designed to be universal and multi-functional, handling search queries, responses, and error handling within a single flexible protocol framework. This eliminates the need for separate TCP connection establishment, data transfer, and termination phases, reducing overall network complexity while maintaining complete data transmission capability.
3Ease of operation
If traditional DNS resolution is used for each query, then server location is determined, but additional latency is introduced
Solution Approach 1:
The patent performs domain name resolution in advance and caches the resulting IP addresses for reuse. Instead of resolving domain names for every search query, the system pre-resolves and stores the mapping between domain names and server IP addresses. This preliminary action eliminates repeated DNS lookup latency while maintaining accurate server routing information.
Solution Approach 2:
The patent creates and uses copies of resolved domain name to IP address mappings in local caches. Rather than performing the expensive DNS resolution operation repeatedly, the system makes copies of the resolution results and reuses them across multiple queries, dramatically reducing the time cost while preserving the ease of operation for server routing.
Data Source
AI summary
Systems, methods, and computer program products for routing of search requests and replies using UDP transport are provided. In some implementations, a method is provided. The method includes receiving a query at a client, converting the query into the form of a domain name in a DNS format, transmitting the query as a DNS request for a DNS record to a first server, where the DNS request is transmitted in the payload of a UDP packet, appending information identifying the client and the first server to the UDP packet, transmitting the UDP packet from the first server to one or more second servers to respond to the query, generating one or more DNS replies in response to the query, and transmitting the one or more DNS replies to the client in the payload of one or more UDP packets, the transmitted replies bypassing the first server.


