CN112836161A - 一种实现在远程浏览器系统的高速渲染方法 - Google Patents

一种实现在远程浏览器系统的高速渲染方法 Download PDF

Info

Publication number
CN112836161A
CN112836161A CN202110130437.7A CN202110130437A CN112836161A CN 112836161 A CN112836161 A CN 112836161A CN 202110130437 A CN202110130437 A CN 202110130437A CN 112836161 A CN112836161 A CN 112836161A
Authority
CN
China
Prior art keywords
module
remote browser
visual information
rendering
remote
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.)
Pending
Application number
CN202110130437.7A
Other languages
English (en)
Inventor
汤湘祁
周小平
金鹰
刘祖明
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.)
Beijing Titanium Star Digital Safety Technology Co ltd
Original Assignee
Beijing Titanium Star Digital Safety Technology Co ltd
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 Beijing Titanium Star Digital Safety Technology Co ltd filed Critical Beijing Titanium Star Digital Safety Technology Co ltd
Priority to CN202110130437.7A priority Critical patent/CN112836161A/zh
Publication of CN112836161A publication Critical patent/CN112836161A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/544Remote

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了高速渲染技术领域的一种实现在远程浏览器系统的高速渲染方法,步骤一:本地浏览模块在地址栏输入访问地址;步骤二:Websocket传输模块同步信息;步骤三:远程浏览器模块访问地址之后开始在虚拟空间里面渲染网页;步骤四:视觉信息提取模块主要是用于远程浏览器模块实时提取远程浏览器模块的视觉信息;步骤五:消息重组模块主要是将远程浏览器模块传输过来的视觉信息转化为本地浏览模块可以识别的渲染元素;步骤六:事件抓取模块对键盘和鼠标事件进行拦截,本地浏览模块通过远程浏览器模块来访问页面,与用户直接访问原网页体验完全相同,该系统具有较好的高速渲染作用。

Description

一种实现在远程浏览器系统的高速渲染方法
技术领域
本发明涉及高速渲染技术领域,具体为一种实现在远程浏览器系统的高速渲染方法。
背景技术
远程浏览器是在网站应用服务器和访问者之间构建了一个虚拟的交互空间。当用户访问网站应用时,这个虚拟的交互空间会执行网站应用的所有代码及相关数据资源,并通过重绘渲染和高速显示协议技术,向用户输出镜像页面视觉流,完全隐藏网站应用服务器可被攻击的弱点,使用户与服务器的交互仅停留在视觉层面。攻击者无法找到突破口,更无法对网站应用服务器发起有效攻击。
当前的技术以及学术界对于对于远程浏览器的实现主要是基于远程桌面技术,也就是做在服务端启动一个裁剪版的虚拟机,并安装一个浏览器以及远程桌面服务端软件,并只给最低的打开浏览器的权限,本地浏览器通过远程桌面技术连接到虚拟机,在虚拟机中打开远程浏览器来访问网页,这种技术本质上就是把远程桌面协议的客户端对浏览器进行适配而实现的。
该技术的缺点主要有:系统虽然是裁剪版,但是再小的系统都需要300MB左右的内存,同时还需要安装远程桌面的服务,用户在使用时必须要先登陆虚拟机。对资源的利用率不够,操作很繁琐。远程桌面协议本质上是基于视屏流的传输,而浏览器中的js语言对视屏流的处理不够高效;由于远程桌面协议不是原生为web打造的,在转化过程中必然会有大量的损耗,基于此,本发明设计了一种实现在远程浏览器系统的高速渲染方法以解决上述问题。
发明内容
本发明的目的在于提供一种实现在远程浏览器系统的高速渲染方法,以解决上述背景技术中提出的当网络的另外一端不是一个完整的操作系统,而是一个单纯浏览器,这时候RDP/VNC等协议都无法实现远程浏览器的浏览和控制操作。
为实现上述目的,本发明提供如下技术方案:一种实现在远程浏览器系统的高速渲染方法,包括本地浏览模块、事件抓取模块、消息重组模块、Websocket传输模块、视觉信息提取模块、远程浏览器模块,其渲染实施方法为以下步骤:
步骤一:所述本地浏览模块在地址栏输入访问地址之后,通过Websocket连接模块连接到远程浏览器模块中,并在远程浏览器模块中访问该地址所在的路径;
步骤二:Websocket传输模块同步信息;
步骤三:所述远程浏览器模块访问地址之后开始在虚拟空间里面渲染网页;
步骤四:所述视觉信息提取模块主要是用于远程浏览器模块在渲染页面的过程中,实时提取远程浏览器模块的视觉信息,并将视觉信息编号之后通过websocket传输模块发送到客户端;
步骤五:所述消息重组模块主要是将远程浏览器模块传输过来的视觉信息转化为本地浏览模块可以识别的渲染元素,并将远程浏览器模块的界面变化重新在本地浏览模块进行实时渲染;
步骤六:所述事件抓取模块对键盘和鼠标事件进行拦截。
优选的,所述Websocket传输模块是基于TCP的长链接协议,主要用于本地浏览和远程浏览时实时同步信息,并传输视觉编码。
优选的,所述远程浏览器模块在渲染网页的同时提取视觉信息,并对视觉信息进行编号,并通过Websocket传输模块发送到客户端浏览器。
优选的,所述事件抓取模块主要是用于抓取本地浏览模块所有的键盘和鼠标事件。
优选的,所述事件抓取模块用于在键盘和鼠标事件拦截之后,通过Websocket传输模块发送到远程浏览器模块上,远程浏览器模块触发该事件,并重新渲染页面发送到客户端。
与现有技术相比,本发明的有益效果是:远程浏览器模块在网络的另一端在渲染页面;远程浏览器模块将实时提取视觉信息并进行编号,然后通过网络传输到本地浏览模块;在网络的另一端必须是一个浏览器,并可以正常渲染网站;远程浏览器模块可以实时提取视觉信息,并对视觉信息进行编号,并传输到本地浏览模块;本地浏览模块通过接收视觉信息之后进行解码,并重新生成浏览器可以识别的渲染树,浏览器通过渲染树来实现高速渲染;本地浏览模块将视觉信息转化为本地浏览模块可以识别的视觉渲染元素;本地浏览模块将视觉渲染元素按照顺序生成渲染出远程浏览器模块的页面;本地浏览模块与远程浏览器模块的页面内容、页面大小都是完全相同,并实时同步,类似镜子里外;本地浏览模块通过远程浏览器模块来访问页面,与用户直接访问原网页体验完全相同,该系统具有较好的高速渲染作用;
远程浏览器模块并不依赖虚拟机的远程桌面协议,也不依赖虚拟机作为中转,而是本身就作为一个服务运行,本地浏览模块直接使用websocket协议直接连接到远程浏览器模块,并通过视觉信息提取模块的原生渲染指令并传输到客户端来实现高速显示;
在传输协议我们选择基于TCP的websocket长链接实时传输协议而抛弃了http协议,尽可能消除由于协议设计缺陷导致的延迟问题;
视觉提取速度提升:直接在远程浏览器模块的内核中抓取渲染指令信息,远程浏览器模块在渲染的同时抓取渲染指令信息,这样大大的降低了渲染的延迟;
传输数据:数据传输抛弃文本传输格式,全部采用二进制格式传输;在所有的固定指令信息编码成8/16位的二进制数据,这样可以极大的降低数据的传输大小。
把远程浏览的体验和本地浏览完全一致,有高速显示通信协议可以确保本地浏览模块与远程浏览器模块的实时通信并快速重绘页面,让用户在使用远程浏览器模块时有原生体验,用户使用远程浏览器模块访问邮件和本地浏览模块的体验没有任何区别,两者可以进行无缝切换。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明整体系统连接框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明提供一种实现在远程浏览器系统的高速渲染方法技术方案:一种实现在远程浏览器系统的高速渲染方法,包括本地浏览模块、事件抓取模块、消息重组模块、Websocket传输模块、视觉信息提取模块、远程浏览器模块,其渲染实施方法为以下步骤:
步骤一:所述本地浏览模块在地址栏输入访问地址之后,通过Websocket连接模块连接到远程浏览器模块中,并在远程浏览器模块中访问该地址所在的路径;
步骤二:Websocket传输模块同步信息,所述Websocket传输模块是基于TCP的长链接协议,主要用于本地浏览和远程浏览时实时同步信息,并传输视觉编码;
步骤三:所述远程浏览器模块访问地址之后开始在虚拟空间里面渲染网页,所述远程浏览器模块在渲染网页的同时提取视觉信息,并对视觉信息进行编号,并通过Websocket传输模块发送到客户端浏览器;
步骤四:所述视觉信息提取模块主要是用于远程浏览器模块在渲染页面的过程中,实时提取远程浏览器模块的视觉信息,并将视觉信息编号之后通过websocket传输模块发送到客户端;
步骤五:所述消息重组模块主要是将远程浏览器模块传输过来的视觉信息转化为本地浏览模块可以识别的渲染元素,并将远程浏览器模块的界面变化重新在本地浏览模块进行实时渲染;
步骤六:所述事件抓取模块对键盘和鼠标事件进行拦截,所述事件抓取模块主要是用于抓取本地浏览模块所有的键盘和鼠标事件,所述事件抓取模块用于在键盘和鼠标事件拦截之后,通过Websocket传输模块发送到远程浏览器模块上,远程浏览器模块触发该事件,并重新渲染页面发送到客户端。
在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

Claims (5)

1.一种实现在远程浏览器系统的高速渲染方法,其特征在于,包括本地浏览模块、事件抓取模块、消息重组模块、Websocket传输模块、视觉信息提取模块、远程浏览器模块,其渲染实施方法为以下步骤:
步骤一:所述本地浏览模块在地址栏输入访问地址之后,通过Websocket连接模块连接到远程浏览器模块中,并在远程浏览器模块中访问该地址所在的路径;
步骤二:Websocket传输模块同步信息;
步骤三:所述远程浏览器模块访问地址之后开始在虚拟空间里面渲染网页;
步骤四:所述视觉信息提取模块主要是用于远程浏览器模块在渲染页面的过程中,实时提取远程浏览器模块的视觉信息,并将视觉信息编号之后通过websocket传输模块发送到客户端;
步骤五:所述消息重组模块主要是将远程浏览器模块传输过来的视觉信息转化为本地浏览模块可以识别的渲染元素,并将远程浏览器模块的界面变化重新在本地浏览模块进行实时渲染;
步骤六:所述事件抓取模块对键盘和鼠标事件进行拦截。
2.根据权利要求1所述的一种实现在远程浏览器系统的高速渲染方法,其特征在于:所述Websocket传输模块是基于TCP的长链接协议,主要用于本地浏览和远程浏览时实时同步信息,并传输视觉编码。
3.根据权利要求1所述的一种实现在远程浏览器系统的高速渲染方法,其特征在于:所述远程浏览器模块在渲染网页的同时提取视觉信息,并对视觉信息进行编号,并通过Websocket传输模块发送到客户端浏览器。
4.根据权利要求1所述的一种实现在远程浏览器系统的高速渲染方法,其特征在于:所述事件抓取模块主要是用于抓取本地浏览模块所有的键盘和鼠标事件。
5.根据权利要求4所述的一种实现在远程浏览器系统的高速渲染方法,其特征在于:所述事件抓取模块用于在键盘和鼠标事件拦截之后,通过Websocket传输模块发送到远程浏览器模块上,远程浏览器模块触发该事件,并重新渲染页面发送到客户端。
CN202110130437.7A 2021-01-29 2021-01-29 一种实现在远程浏览器系统的高速渲染方法 Pending CN112836161A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110130437.7A CN112836161A (zh) 2021-01-29 2021-01-29 一种实现在远程浏览器系统的高速渲染方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110130437.7A CN112836161A (zh) 2021-01-29 2021-01-29 一种实现在远程浏览器系统的高速渲染方法

Publications (1)

Publication Number Publication Date
CN112836161A true CN112836161A (zh) 2021-05-25

Family

ID=75932413

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110130437.7A Pending CN112836161A (zh) 2021-01-29 2021-01-29 一种实现在远程浏览器系统的高速渲染方法

Country Status (1)

Country Link
CN (1) CN112836161A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2975534A1 (en) * 2014-07-14 2016-01-20 X and Me Technology AG Method and device for secure browsing
CN110598135A (zh) * 2018-05-24 2019-12-20 腾讯科技(深圳)有限公司 网络请求处理方法、装置、计算机可读介质及电子设备
CN111294616A (zh) * 2020-01-16 2020-06-16 北京钛星数安科技有限公司 一种自适应远程浏览视觉流传输方法
CN111931170A (zh) * 2020-07-15 2020-11-13 北京钛星数安科技有限公司 一种网站应用隔离防护系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2975534A1 (en) * 2014-07-14 2016-01-20 X and Me Technology AG Method and device for secure browsing
CN110598135A (zh) * 2018-05-24 2019-12-20 腾讯科技(深圳)有限公司 网络请求处理方法、装置、计算机可读介质及电子设备
CN111294616A (zh) * 2020-01-16 2020-06-16 北京钛星数安科技有限公司 一种自适应远程浏览视觉流传输方法
CN111931170A (zh) * 2020-07-15 2020-11-13 北京钛星数安科技有限公司 一种网站应用隔离防护系统

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
CN102164167B (zh) 一种用于远程控制的分类传输方法和系统
CN107040584B (zh) 客户端下载图片的方法及装置
US10983810B2 (en) Implementing web browser in virtual machine
CN102833338A (zh) 基于Web的远程桌面展示方法
CN105190530B (zh) 传输硬件渲染的图形数据
CN107770563A (zh) 一种弹幕消息处理方法及装置
EP1902378A1 (en) A method and system of computer remote control that optimized for low bandwidth network and low level personal communication terminal device
US8156250B2 (en) Arrangements for a 3270 compatible terminal with browser capability
CN103366019A (zh) 一种基于iOS设备的网页拦截方法和设备
CN104426985A (zh) 显示网页的方法、装置及系统
CN104135536A (zh) 一种基于json数据协议的Web管理系统数据交互方法
CN112783602A (zh) 一种敏感数据发现与检测的方法及系统
CN104243475A (zh) 基于web反向代理的动态混淆的方法及系统
CN115248714A (zh) 一种利用vgpu提升vdi远程桌面性能的方法
US20140156736A1 (en) Apparatus and method for managing threads to perform divided execution of software
CN112836161A (zh) 一种实现在远程浏览器系统的高速渲染方法
CN112492055A (zh) 一种传输协议重定向的方法、装置、设备及可读存储介质
WO2011152684A2 (en) Remote user interface cooperative application
CN103049262A (zh) 基于远程帧缓存的窗口还原方法
CN114217997B (zh) 提高kvm显示数据实时性的方法、系统、设备和存储介质
CN113596181B (zh) 一种数据重定向方法、终端、服务器及存储介质
CN108376090A (zh) 网页图片的操作方法、装置、终端及存储介质
CN109190338B (zh) 一种虚拟化桌面屏幕水印生成方法及系统
CN104247364A (zh) 一种应用于远程桌面的视频传输方法及设备、系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination