Message Server Persistent Connection Bypasses Firewalls
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Firewalls and security mechanisms often prevent legitimate access to network services, making it difficult for devices behind them to receive desired content or services, such as media streaming and gaming, due to security concerns and complex configuration requirements.
Innovation Solution
A system and method using message servers to establish persistent connections with client devices, allowing network services to transmit messages directly to clients through pre-existing connections, enabling real-time communication and bypassing the need for frequent polling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If firewalls are configured to allow access from network services to clients, then legitimate access to network services is improved, but security risks increase due to potential exploitation of security gaps
Solution Approach 1:
The patent introduces a message server as an intermediary component that sits between network services and clients behind firewalls. The message server receives messages from services and relays them to clients through established connections, eliminating the need for services to directly penetrate firewalls. This mediator approach enables legitimate access while preserving firewall security architecture, as the firewall only needs to allow connections to the message server which is a controlled, known entity.
Solution Approach 2:
The system establishes persistent connections from clients to the message server in advance, before any service communication is needed. These pre-established connections are stored and reused when services need to communicate with clients. This preliminary action eliminates the need for dynamic firewall configuration changes, as the connection path is predetermined and secured through the message server intermediary.
2Reliability
If firewalls are configured to block all incoming connections, then security is maintained, but legitimate message transmission from services to clients is prevented
Solution Approach 1:
The message server acts as a trusted intermediary that receives messages from services and delivers them to clients through pre-established connections. This approach maintains strict firewall security by blocking all direct incoming connections to clients, while still enabling message transmission through the message server which operates with authorized connection permissions.
Solution Approach 2:
Instead of allowing services to initiate connections to clients (which would require firewall openings), the system inverts the connection model: clients initiate connections to the message server in advance, and the message server uses these established connections to deliver service messages. This inversion maintains security while enabling communication.
3Speed
If frequent polling is used to check for messages, then real-time communication is achieved, but network overhead and complexity increase
Solution Approach 1:
The system establishes persistent, continuous connections between clients and the message server that remain open and ready for communication. Unlike periodic polling that repeatedly opens and closes connections, the persistent connection maintains a continuous communication channel, enabling immediate message delivery without the overhead of repeated connection establishment and termination cycles.
Solution Approach 2:
Clients establish connections to the message server in advance, before any service interaction is needed. These pre-established connections are kept open and ready, eliminating the need for frequent polling to check for messages. When services need to communicate, messages are immediately pushed through the existing connection without waiting for a poll cycle.
Data Source
AI summary
Systems and methods are described for delivering messages from one or more service hosts to clients via a network. A first request identifying the client is received at the message server, and a connection is established and maintained between the message server and the client in response to the first request. When a subsequent request that identifies the client is received from the service host, a message is transmitted from the message server to the client over the previously-established connection. The methods and techniques may be used, for example, to provide messages from various services to placeshifting devices or other clients communicating via the network.


