Routing Device for Web Browser Data Exchange via STUN Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
WebRTC communications often require TURN servers to facilitate peer-to-peer data exchanges, which are costly and inefficient due to the need for media relays, especially in networks with NATs or firewalls.
Innovation Solution
A routing device is used to manage routing decisions between web browsers, allowing for a replacement communications path that bypasses the need for a TURN server by verifying connectivity with a specific attribute and modifying routing tables to enforce data exchanges through a pre-determined intermediate device.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If TURN servers are used to facilitate peer-to-peer data exchanges, then connectivity is improved in networks with NATs or firewalls, but device complexity and cost increase due to the need for media relays
Solution Approach 1:
The patent extracts the TURN server component from the WebRTC architecture and replaces it with a routing device that uses standard IP routing tables. The routing device intercepts STUN messages and dynamically modifies routing tables to establish direct peer-to-peer connections, eliminating the need for TURN server infrastructure while maintaining connectivity through NATs and firewalls.
Solution Approach 2:
The routing device acts as an intermediary between peers and the network infrastructure. It intercepts STUN connectivity verification messages, modifies routing tables based on these messages, and directs traffic flow without requiring TURN server mediation. This intermediary approach enables direct peer-to-peer communication while working around NAT and firewall restrictions.
2Reliability
If TURN servers are deployed for WebRTC communications, then data exchange reliability is improved, but operational cost increases due to the need for dedicated media relay infrastructure
Solution Approach 1:
The routing device provides self-service functionality by automatically monitoring STUN messages and dynamically adjusting routing tables without requiring external TURN server control. The system uses existing network infrastructure and standard routing protocols to achieve reliable data exchange, eliminating the need for dedicated TURN server operations and associated costs.
Solution Approach 2:
The routing device performs multiple functions: it acts as a standard router, intercepts STUN messages for connectivity verification, dynamically modifies routing tables, and directs peer-to-peer traffic flow. This multi-functional approach replaces the specialized TURN server infrastructure with a versatile routing device that uses existing network resources.
3Device complexity
If direct peer-to-peer data exchanges are implemented without TURN servers, then device complexity is reduced, but connectivity reliability deteriorates in networks with NATs or firewalls
Solution Approach 1:
The routing device implements dynamic routing table modification based on intercepted STUN messages. Instead of static routing configurations, the system continuously monitors connectivity verification attempts and adjusts routing tables in real-time to establish direct peer-to-peer paths through NATs and firewalls, maintaining reliability without complex infrastructure.
Data Source
AI summary
A method for exchanging data between a first web browser and a second web browser of a communications network. The method includes a phase of initialization, implementing the following acts in a routing device of the network placed on a default communications path between the first and second browsers: receiving a message for verifying connectivity between the browsers, the message carrying a specific attribute authorizing data exchanges between the browsers; and verifying an authorization of data exchanges between the browsers, from the specific attribute; and in the event of positive verification, modifying at least one routing table for routing data between the first browser and the second browser so as to define a replacement communications path between the browsers, passing through the routing device.


