Remote Application State Synchronization via Difference Programs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Healthcare institutions face limitations in providing remote access to diagnostic information due to high bandwidth requirements and security concerns, leading to inefficient use of network resources and restricted access for off-site specialists.
Innovation Solution
A method for providing remote access to an application's state by establishing a network connection between a server and client device, using difference programs to synchronize changes in the application's state, optimizing data transmission based on client hardware capabilities, and ensuring secure communication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If remote network access to the workstation screen or console is provided, then remote access to diagnostic information is enabled, but network bandwidth is inefficiently used and performance for the remote user is poor
Solution Approach 1:
The patent extracts and transmits only the essential state information and change events from the application program to the remote client, rather than transmitting the entire application state or screen content. This selective extraction of necessary data elements enables remote access while minimizing network bandwidth consumption.
Solution Approach 2:
The application state is segmented into discrete state elements and change events that can be independently transmitted. The system divides the application state into manageable components that are synchronized incrementally, allowing efficient use of network resources while maintaining remote access functionality.
2Ease of operation
If sensitive diagnostic data is downloaded to a remote system, then remote access to diagnostic information is enabled, but security risks increase and network bandwidth requirements exceed capacity
Solution Approach 1:
The patent extracts only the necessary state information and change events from the application program, rather than transmitting complete diagnostic datasets. This selective data extraction reduces the amount of sensitive information transmitted over the network, thereby maintaining security while enabling remote access.
Solution Approach 2:
The system acts as an intermediary that synchronizes application state changes between the server and remote client without requiring direct access to or download of the complete diagnostic database. This intermediary approach allows remote users to view and interact with diagnostic information while the actual data remains secured on the server.
3Loss of information
If complete diagnostic data is transmitted to remote systems, then full access to diagnostic information is enabled, but transmission requirements exceed network capacity
Solution Approach 1:
The patent extracts and transmits only the essential state elements and change events that represent the current state of the application program, rather than transmitting complete diagnostic datasets. This selective extraction maintains the necessary information for remote users while dramatically reducing network bandwidth requirements.
Solution Approach 2:
The system transmits state changes periodically or on-demand based on application events, rather than continuously transmitting all data. This periodic synchronization approach ensures that remote users receive updates when changes occur, maintaining information completeness while optimizing network bandwidth usage.
Data Source
AI summary
A method and system for providing remote access to a state of an application executing on a remote server. A client computer includes a client remote access program that is used to connect to a server remote access program. At the client computer, a client difference program having encoded data indicative of a change of a state of the application last received from the server computer is generated and transmitted to the server remote access program. At the server computer, the client difference program is executed to update the state of the application and a server difference program is generated having encoded a difference between the updated state of the application and the state of the application last sent to the client computer. The server difference program is transmitted to the client computer to update the state of the application since it was last received from the server computer.


