虚机浏览器内容重定向调研
功能比对
› 比对
VMWare | Citrix | Sangfor | |
---|---|---|---|
HTML5 多媒体重定向 | 只支持带地址格式、或自建MediaSource视频; 不支持目前主流视频站blob源以及加密的视频 | 只支持重定向mp4格式视频;不支持目前主流视频站blob源以及加密的视频 | 功能合并到浏览器内容重定向;可能全支持 |
浏览器内容(标签页)重定向 | 在 content 区域内置一个地址编辑与按钮来进行重定向显示 | 重定向整个标签页 |
› 参考链接
架构
› 浏览器内容重定向通用原理架构
›› 示意图
›› 优点
- 结构简单,实现容易。
- 保留浏览器对标签页url的收藏、历史记录等功能。
›› 缺点
- 客户端网络与虚拟机网络不同。解决方法:客户端webview 使用虚拟机同等网络代理。
- 客户端webview 的网页用户认证等cookie内容保留在客户端。最好能确保用户登录与认证的地址都被重定向。(citrix 也可使用基于 windows 域管理的单点登录。)
- Android webview 与 Windows chrome 的行为有些不同, 比如 webview 没有右键菜单。
› 猜测的Sangfor浏览器内容重定向架构
›› 示意图
›› 优点
- 保留浏览器对标签页url的收藏、历史记录等功能。
- 页面内容及视频数据的获取是在虚拟机端而不是客户端,不用考虑客户端网络与虚拟机网络的不同。
- 网页用户认证等cookie内容保留在虚拟机端。
- 自制浏览器可以在解码层(VideoDecoder)截取视频未解码帧数据,可绕过数据源获取与EME阶段,规避各个视频站的加密机制与防下载机制导致的问题。
- 自制浏览器在虚拟机后台运行,并不直接给用户呈现,不影响用户安装升级最新chrome浏览器,或 edge 浏览器。
- 猜测:也可只进行video视频重定向(但配置上没有此选项)。
›› 缺点
- 结构与交互复杂,需自制chrome浏览器在解码层截获视频帧源数据,并要考虑解码同步问题,实现有一定难度。
- 相比通用架构,虽然少了客户端加载url的流量,但多了虚拟机加载网络数据的流量、以及虚拟机往客户端传输页面内容与视频数据的流量。
- 相比通用架构,叠加在视频画面上的弹幕将显示不了。
- Android webview 与 Windows chrome 的行为有些不同, 比如 webview 没有右键菜单。