US11277500B2 - Integration of a standard network protocol layer in a web browser by compilation to webassembly and use of a websocket - Google Patents

Integration of a standard network protocol layer in a web browser by compilation to webassembly and use of a websocket Download PDF

Info

Publication number
US11277500B2
US11277500B2 US16/464,627 US201716464627A US11277500B2 US 11277500 B2 US11277500 B2 US 11277500B2 US 201716464627 A US201716464627 A US 201716464627A US 11277500 B2 US11277500 B2 US 11277500B2
Authority
US
United States
Prior art keywords
protocol
client device
standard
layer
websocket
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US16/464,627
Other versions
US20210099553A1 (en
Inventor
Christophe Grosjean
Serge ADDA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wallix SARL
Original Assignee
Wallix SARL
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wallix SARL filed Critical Wallix SARL
Assigned to WALLIX reassignment WALLIX ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: Adda, Serge, GROSJEAN, Christophe
Publication of US20210099553A1 publication Critical patent/US20210099553A1/en
Application granted granted Critical
Publication of US11277500B2 publication Critical patent/US11277500B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Definitions

  • the present disclosure relates to the field of computer network infrastructures and more precisely access to remote services via a web browser installed on a client computer.
  • U.S. Patent Application Serial No. 20080313545 describes a known example of systems and methods (“tools”) that enable a user to access and interact with a remote desktop or application, without the need to install a plug-in or software in addition to a web browser.
  • the tools include double buffering graphics that display the remote desktop or application, and caching images that are repeated.
  • These tools may also include identifying the portion of the desktop or application that has changed, and then transmitting the changed portion.
  • U.S. Patent Application Serial No. 20140372508 A1 describes a native client tunnel service for client-server communication.
  • an HTML-compatible client device loads an HTML script.
  • the client device executes the HTML script with a Native Client specification.
  • the client device receives user information specifying a connection.
  • the client device creates a port forward or a tunnel device, and connects to a target host through the port forward or the tunnel device.
  • a remote desktop protocol analysis module restores the remote desktop protocol data packet in a specific display command, and the display command is processed through a remote desktop display protocol module. The result is sent to the interactive page on the client side and displays images from a remote desktop to a user.
  • the gateway servers of the prior art must maintain a memory state corresponding to each open connection, due to the connected protocols used.
  • the capacity of the transcoding gateway servers reaches saturation and limits the number of connections, unless hardware is increased.
  • this protocol is less flexible and implies that all clients operate in the same way, without enabling clients of different generations to coexist on the same infrastructure.
  • the present disclosure in its broadest sense, relates to a method for connecting a local client device to a remote computing resource, by establishing a computing session in accordance with a standard protocol consisting of:
  • the server load required for transcoding is transferred to the client, which means that the server can support more simultaneous sessions for lower power consumption.
  • protocol flow uses only standard network infrastructures and is secured via the HTTPS security layer of the web browser.
  • the architecture which is the object of the present disclosure makes it possible, in particular, to remove this constraint within the framework of protocol network layers.
  • the Web application is executed on the local client and calculates data packets according to a standard protocol (e.g. RDP or SSH) and commands the transmission of the data packets to the remote resource in the native format of the protocol, without transcoding or transformation other than standard web socket processing, through the gateway server (Proxy websocket) ensuring the transfer without modification of the packet received from the client device to the remote server and in that:
  • a standard protocol e.g. RDP or SSH
  • the computer code of the standard protocol consists of a JavaScript component with three layers:
  • the server load required for transcoding is transferred to the client, which means that the server can support more simultaneous sessions for lower power consumption.
  • protocol flow uses only standard network infrastructures and is secured via the HTTPS security layer of the web browser.
  • FIG. 1 is a schematic view of the functional architecture of one infrastructure according to the disclosure
  • FIG. 2 shows a schematic view of the architecture of the client workstation.
  • a terminal application server ( 1 ) that comprises one or more websocket/TCP socket gateway computer server(s) ( 2 ), and a plurality of client workstations executing, in particular, a web browser application ( 4 ).
  • the terminal application server ( 1 ) communicates with the external environment using a standard protocol, for example, RDP or SSH.
  • a standard protocol for example, RDP or SSH.
  • the solution according to the disclosure does not involve any intervention or modification of the terminal application server ( 1 ) or its communication interfaces.
  • the main part of the disclosure is reflected in the modifications made to the application embedded in the browser ( 4 ), as detailed in FIG. 2 and executed by the client workstation ( 3 ).
  • This protocol layer preferably controls the protocol data preloading functions of the input/output layer ( 5 ).
  • An input/output layer ( 5 ) based on the HTML5 Websocket protocol. This input/output layer ( 5 ) preloads the protocol packets into the RAM of the client workstation, so as to enable asynchronous operation, and to adapt the solution according to the present disclosure to an essentially synchronous protocol.
  • the gateway server ( 2 ) provides a simple relay function of the underlying protocol, between the WEBSOCKET transport layer 5 and the transport layer between the gateway server ( 2 ) and the terminal application server ( 1 ). Unlike the solution of the prior art, the gateway server 2 does not provide any intelligent functions such as protocol decoding, bitmap caching, etc., functions that, according to the disclosure, are performed by the application embedded in the browser of the client workstation.
  • the gateway server ( 2 ) can execute a standard code of the APACHE module type ensuring the WEB SOCKET relay to the terminal application server 1 .

Abstract

A standard network protocol layer is integrated in a Web browser by compilation to Webassembly and use of a Websocket. A method for connecting a local client device to a remote computing resource, by establishing a computing session in accordance with a standard protocol includes: executing on the client device a Web browsing application; opening a first tunnel (websocket) with a server GATEWAY, wherein the opening of the first tunnel between the client device and the GATEWAY commands the opening of a network connection with the remote resource. The Web application executed on the local client calculates data packets in accordance with a standard protocol (RDP or SSH for example) and commands the transmission of the data packets to the remote resource in the native format of the protocol, without transcoding or transformation other than the standard processing of websockets, by way of the server gateway (Proxy websocket) ensuring the transfer without modification of the packet received from the client device, to the remote server.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a national phase entry under 35 U.S.C. § 371 of International Patent Application PCT/FR2017/053037, filed Nov. 7, 2017, designating the United States and published as International Patent Publication WO 2018/096232 A1 on May 31, 2018, which claims the benefit under Article 8 of the Patent Cooperation Treaty to French Patent Application Serial No. 1661563, filed Nov. 28, 2016.
TECHNICAL FIELD
The present disclosure relates to the field of computer network infrastructures and more precisely access to remote services via a web browser installed on a client computer.
BACKGROUND
Solutions using an intermediate transcoding server, for example, the web server or a specific server are known from the state of the art.
U.S. Patent Application Serial No. 20080313545 describes a known example of systems and methods (“tools”) that enable a user to access and interact with a remote desktop or application, without the need to install a plug-in or software in addition to a web browser. In some embodiments, the tools include double buffering graphics that display the remote desktop or application, and caching images that are repeated. These tools may also include identifying the portion of the desktop or application that has changed, and then transmitting the changed portion.
U.S. Patent Application Serial No. 20140372508 A1 describes a native client tunnel service for client-server communication.
In particular embodiments, an HTML-compatible client device loads an HTML script. The client device executes the HTML script with a Native Client specification. The client device receives user information specifying a connection. The client device creates a port forward or a tunnel device, and connects to a target host through the port forward or the tunnel device.
Chinese Patent Application Serial No. CN10283333338, which describes a method comprising the following steps, is also known from the state of the art:
    • a remote desktop server sends a packet of remote desktop protocol data to a Web server;
    • the web server acknowledges the HTTP/HTTPS protocol data packet;
    • a client-side protocol conversion unit converts the HTTP/HTTPS protocol data packet into a remote desktop protocol data packet.
A remote desktop protocol analysis module restores the remote desktop protocol data packet in a specific display command, and the display command is processed through a remote desktop display protocol module. The result is sent to the interactive page on the client side and displays images from a remote desktop to a user.
The solutions of the prior art are not totally satisfactory, as performance is limited by the computing, load-holding and memory capacities of the transcoding gateway servers.
The gateway servers of the prior art must maintain a memory state corresponding to each open connection, due to the connected protocols used.
When the number of client devices is large, the capacity of the transcoding gateway servers reaches saturation and limits the number of connections, unless hardware is increased.
In addition, when the protocol changes, it is necessary to rewrite the code in the browser language and to update the browsers on the client workstations from the web server.
On the other hand, in the solutions of the prior art, two protocols are implemented:
    • a first initial protocol between the terminal server and the intermediate server (gateway), which is a complete protocol; and
    • a second protocol between the client workstation and the intermediate server (gateway), which is a subset or a simplified equivalent of the initial protocol.
In simplifications, the negotiation functions of the protocol are generally removed. As a result, this protocol is less flexible and implies that all clients operate in the same way, without enabling clients of different generations to coexist on the same infrastructure.
The Chinese Patent Application Serial No. CN10283333338 does not disclose the characteristics of the invention and, in particular, the fact that the computer code of the standard protocol consists of a JavaScript component with three layers:
    • a layer for interfacing with the input-output devices;
    • a network interface layer ensuring the control of the websocket; and
    • a protocol layer consisting of a standard code compiled in ASM.js or Webassembly from a source code in a high-level language.
BRIEF SUMMARY
In order to remedy this drawback, the present disclosure, in its broadest sense, relates to a method for connecting a local client device to a remote computing resource, by establishing a computing session in accordance with a standard protocol consisting of:
    • executing, on the client device, a web browsing application;
    • opening a first tunnel [websocket] with a server GATEWAY; and
    • the opening of the first tunnel between the client device and the GATEWAY commanding the opening of a network connection with the remote resource.
This solution solves the bottleneck problem on the transcoding gateway server resulting from the shared use of the code, as the processing performed is minimal. Network latency depends on the characteristics of the client workstation, and the additional latency introduced by the GATEWAY is minimal.
The server load required for transcoding is transferred to the client, which means that the server can support more simultaneous sessions for lower power consumption.
Finally, the protocol flow uses only standard network infrastructures and is secured via the HTTPS security layer of the web browser.
The natural solutions for the skilled person would consist in:
    • either dividing the RDP client into two components: a restricted component embedded in the browser and a standalone server component running on a proxy server. The two components communicate with each other via a simplified protocol through a fast network link. This architecture is very common. It can be found not only for some RDP or SSH clients embedded in a web browser, but also for all webmail clients.
This is the solution adopted by the Chinese Patent Application Serial No. CN10283333338. Unlike this solution, the present disclosure provides to have the native RDP packets pass through a Websocket tunnel to the browser.
    • or to rely on a browser-specific extension layer (plugin) (Microsoft ActiveX, Google Native Client NaCL) that allows access to privileged system resources and communicating with a Web application.
It is known that the technique of compiling the C/C++ code to WebAssembly from an existing application does not work when the source code includes blocking operations (see U.S. Patent Application Serial No. 20170139693 “Code execution method and device).”
The architecture which is the object of the present disclosure makes it possible, in particular, to remove this constraint within the framework of protocol network layers.
According to the present disclosure, the Web application is executed on the local client and calculates data packets according to a standard protocol (e.g. RDP or SSH) and commands the transmission of the data packets to the remote resource in the native format of the protocol, without transcoding or transformation other than standard web socket processing, through the gateway server (Proxy websocket) ensuring the transfer without modification of the packet received from the client device to the remote server and in that:
the computer code of the standard protocol consists of a JavaScript component with three layers:
    • a layer for interfacing with the input-output devices;
    • a network interface layer ensuring the control of the websocket; and
    • a standard protocol code compiled in ASM.js or Webassembly from a source code in a high level language.
The method according to the present disclosure may have the following advantages:
    • the update of the browser code according to the evolutions of the protocol is carried out by a common strain and an update of the client code only. This avoids updating both the code executed by the transcoding gateway servers and the applications embedded by the browsers on the client workstations. Unlike the prior art, in the method of the present disclosure, it is not necessary to update the transcoding server.
    • the solution according to the present disclosure also enables a better use of the bandwidth, as the additional transcoding steps and the use of a second specific protocol for transferring to the Web client are avoided.
An important technical effect is that the bottleneck problem on the transcoding gateway server resulting from the shared use of the code is reduced, as the processing performed is minimal. Network latency depends on the characteristics of the client workstation, and the additional latency introduced by the GATEWAY is minimal.
The server load required for transcoding is transferred to the client, which means that the server can support more simultaneous sessions for lower power consumption.
Finally, the protocol flow uses only standard network infrastructures and is secured via the HTTPS security layer of the web browser.
BRIEF DESCRIPTION OF THE DRAWINGS
The present disclosure will be best understood upon reading the following detailed description of a non-restrictive exemplary embodiment, while referring to the appended drawings, wherein:
FIG. 1 is a schematic view of the functional architecture of one infrastructure according to the disclosure;
FIG. 2 shows a schematic view of the architecture of the client workstation.
DETAILED DESCRIPTION
Disclosed is a terminal application server (1) that comprises one or more websocket/TCP socket gateway computer server(s) (2), and a plurality of client workstations executing, in particular, a web browser application (4).
The terminal application server (1) communicates with the external environment using a standard protocol, for example, RDP or SSH. The solution according to the disclosure does not involve any intervention or modification of the terminal application server (1) or its communication interfaces.
The main part of the disclosure is reflected in the modifications made to the application embedded in the browser (4), as detailed in FIG. 2 and executed by the client workstation (3).
This embedded application consists of several layers:
    • a display layer (7) executing display commands from the protocol, e.g. bitmap, character, text, image plot, etc., according to the RDP or SSH protocol. This layer also performs functions of interaction with the keyboard, the mouse and more generally the input devices. This layer consists of a JavaScript program written specifically for the protocol, for example, in an HTML5 language. This layer is available for a variety of devices, such as computers, cell phones, touch screen tablets, etc.
    • a protocol layer (6) compiled to asm.js or Webassembly, using, for example, the Emscripten compilation string, assembled from a code strain written in a high-level language, typically in C or C++. This layer implements the decoding and encoding of the network protocol, from known libraries available as a source code, for example, the ReDemPtion code (trade name of the WALLIX company, available under free license, which is a free implementation of the RDP protocol of the MICROSOFT company).
This protocol layer preferably controls the protocol data preloading functions of the input/output layer (5).
An input/output layer (5) based on the HTML5 Websocket protocol. This input/output layer (5) preloads the protocol packets into the RAM of the client workstation, so as to enable asynchronous operation, and to adapt the solution according to the present disclosure to an essentially synchronous protocol.
When initiating a connection, three solutions are provided:
    • the first solution provides that the gateway server (2) imposes the target (predefined terminal application server (1), and not modifiable by the client device (3)).
    • the second solution provides for a prior negotiation for the configuration of the terminal application server (1), by a mechanism linked to the gateway server (2).
    • the third solution provides for the installation of a specific protocol extension, commanding the opening of the session, prior to the start of the main protocol.
The gateway server (2) provides a simple relay function of the underlying protocol, between the WEBSOCKET transport layer 5 and the transport layer between the gateway server (2) and the terminal application server (1). Unlike the solution of the prior art, the gateway server 2 does not provide any intelligent functions such as protocol decoding, bitmap caching, etc., functions that, according to the disclosure, are performed by the application embedded in the browser of the client workstation.
The gateway server (2) can execute a standard code of the APACHE module type ensuring the WEB SOCKET relay to the terminal application server 1.

Claims (13)

The invention claimed is:
1. A method for connecting a local client device to a remote computing resource, by establishing a computing session in accordance with a standard protocol comprising:
executing, on the local client device, a web browsing application; and
opening a first tunnel websocket with a server gateway, the opening of the first tunnel websocket between the local client device and the server gateway commanding opening of a network connection with the remote computing resource;
wherein the web browsing application executed on the local client device calculates data packets in accordance with the standard protocol and commands a transmission of the data packets to the remote computing resource in a native format of the standard protocol, without transcoding or transformation other than standard processing of websockets, by way of the server gateway ensuring a transfer without modification of the data packets received from the local client device to the remote computing resource;
wherein the server gateway transfers the data packets to the remote computing resource without providing protocol decoding or bitmap caching; and
wherein a computer code of the standard protocol comprises a JavaScript component including:
a layer for interfacing with input-output devices;
a network interface layer ensuring control of the first tunnel websocket; and
a protocol layer comprising a standard code compiled in ASM.js or Webassembly from a source code in a high-level language.
2. The method of claim 1, wherein the standard protocol comprises a remote desktop protocol (RDP) or a secure shell (SSH) protocol.
3. The method of claim 1, wherein the layer for interfacing with the input-output devices comprises a display layer executing display commands from the standard protocol.
4. The method of claim 1, wherein the layer for interfacing with the input-output devices performs a function of interaction with input devices.
5. The method of claim 4, wherein the input devices comprise a keyboard and/or a mouse.
6. The method of claim 1, wherein an input/output protocol code preloads a protocol packet into memory of the local client device to allow asynchronous operation.
7. The method of claim 1, further comprising securing, with a security layer of the web browsing application, a protocol flow of the standard protocol.
8. The method of claim 7, wherein the security layer comprises a hypertext transfer protocol secure (HTTPS) security layer.
9. The method of claim 1, wherein the high-level language includes one or more of C or C++.
10. A method for connecting a local client device to a remote computing resource, by establishing a computing session in accordance with a standard protocol comprising:
executing, on the local client device, a web browsing application;
opening a first tunnel websocket with a server gateway, the opening of the first tunnel websocket between the local client device and the server gateway commanding opening of a network connection with the remote computing resource; and
carrying out an update of browser code of the web browsing application of only a client code responsive to evolutions of the standard protocol without updating code executed by the server gateway and without updating code executed by applications embedded by the web browsing application on the local client device;
wherein the web browsing application executed on the local client device calculates data packets in accordance with the standard protocol and commands a transmission of the data packets to the remote computing resource in a native format of the standard protocol, without transcoding or transformation other than standard processing of websockets, by way of the server gateway ensuring a transfer without modification of the data packets received from the local client device to the remote computing resource; and
wherein a computer code of the standard protocol comprises a JavaScript component including:
a layer for interfacing with input-output devices,
a network interface layer ensuring control of the first tunnel websocket; and
a protocol layer comprising a standard code compiled in ASM.js or Webassembly from a source code in a high-level language.
11. A communication system, comprising:
a local client device configured to execute a web browsing application, the web browsing application configured to calculate data packets in accordance with a standard protocol and command a transmission of the data packets to a remote computing resource in a native format of the standard protocol, a computer code of the standard protocol comprising a JavaScript component including three layers, the three layers including:
a layer for interfacing with input-output devices;
a network interface layer ensuring control of a tunnel websocket between the local client device and the remote computing resource; and
a protocol layer comprising a standard code compiled in ASM.js or Webassembly from a source code in a high-level language; and
a server gateway device configured to: open the tunnel websocket, the opening of the tunnel websocket commanding an opening of a network connection with the remote computing resource; ensure transfer of the data packets to the remote computing resource without modification of the data packets; and transfer the data packets to the remote computing resource without providing protocol decoding or bitmap caching.
12. The communication system of claim 11, wherein the local client device is configured to provide one or more of the protocol decoding or the bitmap caching.
13. The communication system of claim 11, wherein the protocol layer is configured to implement decoding and encoding of the standard protocol from one or more libraries available as a source code.
US16/464,627 2016-11-28 2017-11-07 Integration of a standard network protocol layer in a web browser by compilation to webassembly and use of a websocket Active 2038-01-24 US11277500B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1661563A FR3059505B1 (en) 2016-11-28 2016-11-28 INTEGRATION OF A STANDARD NETWORK PROTOCOL LAYER IN A WEB BROWSER BY COMPILATION TO WEBASSEMBLY AND USE OF WEBSOCKET.
FR1661563 2016-11-28
PCT/FR2017/053037 WO2018096232A1 (en) 2016-11-28 2017-11-07 Integration of a standard network protocol layer in a web browser by compilation to webassembly and use of a websocket

Publications (2)

Publication Number Publication Date
US20210099553A1 US20210099553A1 (en) 2021-04-01
US11277500B2 true US11277500B2 (en) 2022-03-15

Family

ID=58054261

Family Applications (1)

Application Number Title Priority Date Filing Date
US16/464,627 Active 2038-01-24 US11277500B2 (en) 2016-11-28 2017-11-07 Integration of a standard network protocol layer in a web browser by compilation to webassembly and use of a websocket

Country Status (5)

Country Link
US (1) US11277500B2 (en)
EP (1) EP3545668A1 (en)
CA (1) CA3039277A1 (en)
FR (1) FR3059505B1 (en)
WO (1) WO2018096232A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109768999B (en) * 2019-03-14 2021-08-20 成都安恒信息技术有限公司 WebSocket-based SSH multichannel TCP proxy method
CN110399133B (en) * 2019-06-25 2020-10-27 西北大学 JavaScript code optimization method based on front-end byte code technology
CN112269602B (en) * 2020-11-10 2023-12-29 深圳晶泰科技有限公司 WebAssemble loading method, device and storage medium
US11552943B2 (en) * 2020-11-13 2023-01-10 Cyberark Software Ltd. Native remote access to target resources using secretless connections
CN113067834A (en) * 2021-04-09 2021-07-02 上海新炬网络信息技术股份有限公司 Method for remotely controlling server based on Web browser
US11489909B1 (en) 2021-04-15 2022-11-01 Cloudflare, Inc. Non-HTTP layer 7 protocol applications running in the browser
CN114531498B (en) * 2021-12-22 2024-01-09 杭州博盾习言科技有限公司 Data transmission method, device, electronic equipment and storage medium
CN114564156A (en) * 2022-02-10 2022-05-31 深圳市纵维立方科技有限公司 Model slicing method and device, 3D printing system and electronic equipment
US20230403138A1 (en) * 2022-06-13 2023-12-14 Cyberark Software Ltd. Agentless single sign-on techniques
CN116166907B (en) * 2023-04-23 2023-09-26 联动优势电子商务有限公司 Method and device for developing Web application by using WebAsssembly and service page compiling technology

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080313545A1 (en) 2007-06-13 2008-12-18 Microsoft Corporation Systems and methods for providing desktop or application remoting to a web browser
US7584294B2 (en) * 2007-03-12 2009-09-01 Citrix Systems, Inc. Systems and methods for prefetching objects for caching using QOS
CN102833338A (en) 2012-08-31 2012-12-19 福建升腾资讯有限公司 Remote desktop display method based on Web
US20140372508A1 (en) 2013-06-14 2014-12-18 Andrew T. Fausak Native client tunnel service for client-server communication
US9407725B2 (en) * 2013-06-14 2016-08-02 Dell Products L.P. Generic transcoding service for client-server communication
US9462089B1 (en) * 2013-03-15 2016-10-04 Kaazing Corporation Communication channels
US9459936B2 (en) * 2009-05-01 2016-10-04 Kaazing Corporation Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications
US9628810B1 (en) * 2015-11-02 2017-04-18 Dell Products L.P. Run-length encoded image decompressor for a remote desktop protocol client in a standards-based web browser
US20170139693A1 (en) 2015-11-18 2017-05-18 Shanghai Muji Network Technology Co., Ltd. Code execution method and device
US10015228B2 (en) * 2015-10-28 2018-07-03 Dell Products L.P. Remote desktop protocol client for a standards-based web browser
US10382521B2 (en) * 2015-12-14 2019-08-13 Wyse Technology, L.L.C. Gateway that enables a browser-based application to communicate with a server-side application using a non-browser-compatible protocol
US10382402B2 (en) * 2014-10-21 2019-08-13 Unify Gmbh & Co. Kg Telecommunication system and method for traversing an application layer gateway firewall during the establishment of an RTC communication connection between an RTC client and an RTC server
US10558824B1 (en) * 2019-02-04 2020-02-11 S2 Systems Corporation Application remoting using network vector rendering

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7584294B2 (en) * 2007-03-12 2009-09-01 Citrix Systems, Inc. Systems and methods for prefetching objects for caching using QOS
US20080313545A1 (en) 2007-06-13 2008-12-18 Microsoft Corporation Systems and methods for providing desktop or application remoting to a web browser
US9459936B2 (en) * 2009-05-01 2016-10-04 Kaazing Corporation Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications
CN102833338A (en) 2012-08-31 2012-12-19 福建升腾资讯有限公司 Remote desktop display method based on Web
US9462089B1 (en) * 2013-03-15 2016-10-04 Kaazing Corporation Communication channels
US20140372508A1 (en) 2013-06-14 2014-12-18 Andrew T. Fausak Native client tunnel service for client-server communication
US9407725B2 (en) * 2013-06-14 2016-08-02 Dell Products L.P. Generic transcoding service for client-server communication
US10382402B2 (en) * 2014-10-21 2019-08-13 Unify Gmbh & Co. Kg Telecommunication system and method for traversing an application layer gateway firewall during the establishment of an RTC communication connection between an RTC client and an RTC server
US10015228B2 (en) * 2015-10-28 2018-07-03 Dell Products L.P. Remote desktop protocol client for a standards-based web browser
US9628810B1 (en) * 2015-11-02 2017-04-18 Dell Products L.P. Run-length encoded image decompressor for a remote desktop protocol client in a standards-based web browser
US20170139693A1 (en) 2015-11-18 2017-05-18 Shanghai Muji Network Technology Co., Ltd. Code execution method and device
US10382521B2 (en) * 2015-12-14 2019-08-13 Wyse Technology, L.L.C. Gateway that enables a browser-based application to communicate with a server-side application using a non-browser-compatible protocol
US10558824B1 (en) * 2019-02-04 2020-02-11 S2 Systems Corporation Application remoting using network vector rendering

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
International Search Report for International Application No. PCT/FR2017/053037 dated Jan. 12, 2018, 2 pages.
International Written Opinion for International Application No. PCT/FR2017/053037 dated Jan. 12, 2018, 6 pages, (the translation in the "Incoming Written Opinion".

Also Published As

Publication number Publication date
CA3039277A1 (en) 2018-05-31
EP3545668A1 (en) 2019-10-02
FR3059505B1 (en) 2019-04-19
WO2018096232A1 (en) 2018-05-31
FR3059505A1 (en) 2018-06-01
US20210099553A1 (en) 2021-04-01

Similar Documents

Publication Publication Date Title
US11277500B2 (en) Integration of a standard network protocol layer in a web browser by compilation to webassembly and use of a websocket
US10277702B2 (en) Method and apparatus for accessing an enterprise resource planning system via a mobile device
CN103581265B (en) remote access method and system
EP2649502B1 (en) Methods and systems for a remote desktop session utilizing a http handler and a remote desktop client common interface
EP2649500B1 (en) Methods and systems for accessing and controlling a remote desktop of a remote machine in real time by a web browser at a client device via http api utilizing a transcoding server
US9350763B1 (en) HTTP tunnelling over websockets
EP2649532B1 (en) Methods and systems for remote desktop session redrawing via http headers
US9880796B2 (en) Rapid view mobilization for enterprise applications
EP2325724A2 (en) Local port browser interface
US20170046013A1 (en) Web-browser based desktop and application remoting solution
JP2015529878A (en) Providing access to remote applications via a web client
US9973563B2 (en) Implementing a java method
KR20140036220A (en) Web-browser based desktop and application remoting solution
CN102833338A (en) Remote desktop display method based on Web
US20160006788A1 (en) Client-server-communication system running a client-side-script-program
CN104394226A (en) System and method for achieving remote desktop control through web page
US8271574B1 (en) Content sharing and collaboration
Jia et al. A web service framework for astronomical remote observation in Antarctica by using satellite link
CN114253652A (en) Method and system for realizing cloud application window list of android mobile terminal by simulating local App
US9614900B1 (en) Multi-process architecture for a split browser
CN112394907A (en) Container-based delivery system construction method, application delivery method and delivery system
US8856651B2 (en) Remote user interface cooperative application
CN101997710B (en) Long-distance management system and method
US8825739B2 (en) Method and apparatus for controlling multiple systems in a low bandwidth environment
RU2813837C2 (en) Graphical object management system

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

AS Assignment

Owner name: WALLIX, FRANCE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GROSJEAN, CHRISTOPHE;ADDA, SERGE;REEL/FRAME:052868/0433

Effective date: 20190613

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STCF Information on status: patent grant

Free format text: PATENTED CASE

CC Certificate of correction