SIP Proxy Push Service Bypassing NAT Restrictions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current push technologies struggle to initiate communication sessions with mobile terminals within private and cellular networks due to limitations in public IP addresses and firewall/gateway functionality, as servers cannot typically initiate sessions across Network Address Translators (NAT) without consuming excessive resources or compromising network performance.
Innovation Solution
A system and method that allows network nodes, such as SIP proxies, to establish network-initiated data sessions with mobile terminals across public networks, utilizing push services and registration mechanisms to bypass NAT and firewall restrictions, enabling the delivery of content while maintaining firewall and gateway functionality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a server initiates a communication session with a client across a NAT in accordance with push techniques, then content can be pushed to the client, but the server cannot identify the desired client to the NAT because clients lack static and public IP addresses
Solution Approach 1:
Instead of the server attempting to initiate a session to the client across the NAT (which fails due to lack of public IP), the client initiates a session to the server first. This inversion of the communication direction allows the client to establish connectivity and receive push notifications, as the NAT can translate the client's private IP to a public IP when the client initiates the connection.
Solution Approach 2:
The patent introduces an intermediary mechanism where the client first establishes a SIP session with the server, creating a NAT translation entry. This intermediary session acts as a bridge, allowing subsequent push notifications to be delivered to the client through the established translation path, circumventing the NAT identification problem.
2Ease of operation
If IP-connectivity is enabled to clients within the network, then servers can initiate sessions with clients, but it consumes an undesirable amount of resources or reduces performance of the network
Solution Approach 1:
Instead of maintaining continuous IP-connectivity and open session states for all clients (which consumes network resources), the system uses periodic action where clients establish sessions on-demand. The push notification mechanism triggers session establishment only when content needs to be pushed, rather than maintaining persistent connections, thus reducing overall network resource consumption.
Solution Approach 2:
The client performs self-service by initiating its own session to the server when needed. This eliminates the need for the server to maintain active session states or continuously probe for client availability, allowing the network to release resources when not in use while still enabling push functionality when required.
3Reliability
If the network uses NAT, dynamically allocated IP addresses and/or private IP addresses, then security needs and policies are met, but servers cannot initiate SIP communication sessions with respective clients
Solution Approach 1:
The patent applies inversion by reversing the session initiation direction: instead of the server attempting to initiate the SIP session to the client behind the NAT (which is blocked), the client initiates the session to the server. This allows the NAT to function as intended for security while still enabling bidirectional communication through the established session.
Solution Approach 2:
The client performs preliminary action by initiating and completing a SIP session establishment with the server before push notifications are sent. This preliminary session creation establishes the necessary NAT translation entries and authentication, enabling subsequent push operations without compromising the NAT's security function.
Data Source
AI summary
A system is provided for pushing content to a terminal located within a mobile network or a private network. The system includes a network node, such as a Session Initiation Protocol (SIP) proxy, located across a public network from the network including the terminal. The network node is capable of subscribing to a push service on behalf of the terminal such that the network node is also capable of receiving push content in accordance with the push service. Thereafter, the network node is capable of establishing a network-initiated data session with the terminal. In response to the network-initiated data session, the network node is further capable of registering the terminal such that the terminal is capable of receiving the push content based upon the registration.


