- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CLDMIND云思创想桌面云USB重定向特性设计文档CLDMIND Tech (Beijing) LTD.2013/1/26Revision SummaryDateRevision HistoryComments01/26/20131.0Initial Available12/22/20142.0More SupportContentsContents21引言31.1编写目的31.2背景31.3定义31.4参考资料32特性总体设计32.1需求规定32.1.1功能需求32.1.2性能需求42.2基本设计概念和处理流程42.3软件结构图42.4模块变更概述53客户端设计(新增模块)53.1模块描述53.2功能53.3性能63.4设计方法(算法)63.4.1USB设备抽象层63.4.2USB设备屏蔽层73.5流程逻辑73.6关键数据结构73.7关键函数73.8存储分配74服务端设计(新增模块)74.1模块描述74.2功能74.3性能74.4设计方法(算法)84.5流程逻辑84.6关键数据结构84.7关键函数84.8存储分配8引言编写目的USB重定向技术为云思创想桌面云支持USB外设,用户在桌面云环境能正常使用USB盘,手机,打印机等各类USB设备背景定义[列出本文件中用到的专门术语的定义和外文首字母组词的原词组。] CLDMIND云思创想科技(北京)有限公司的注册商标参考资料特性总体设计需求规定功能需求支持U盘,移动硬盘等大存储设备支持USB打印机支持安卓手机,主要支持以下厂商序列号安卓手机厂商1LG 2华为3联想4HTC5小米6魅族7中兴8三星9谷歌支持苹果手机序列号苹果手机型号1IPhone42Iphone4s3Iphone54Iphone5s5IPhone66IPhone6s支持USB摄像头支持扫描仪支持热插拔支持扫描枪性能需求USB2.0的U盘,拷贝速率不低于2MUSB3.0的移动硬盘, 拷贝速率不低于30M基本设计概念和处理流程通用串行总线(Universal Serial Bus,简称USB)是Intel、IBM、Microsoft等七家公司于1994年推出的主机与设备间的通信协议,被广泛地应用于计算机主机与外围设备上。USB协议支持热插拔,设备与主机间的交互简单易用。目前,已有数百种设备使用USB接口与主机通信,例如:移动硬盘、打印机、U盾、条形码扫描仪、触摸屏、手机等。USB协议的版本主要有1.1(1998),2.0(2000)和3.0(2008)。随着虚拟化技术的发展,越来越多的企业使用云桌面技术搭建信息系统。在云桌面的场景下,主机运行在一个虚拟的硬件环境下,用户通过轻量级的客户端与主机交互。因此,用户不能像在PC机上一样操作USB设备。这也成为限制云桌面技术推广的一个重要因素。云思创想的USB重定向程序很好地解决了这个问题。软件结构图云思创想USB重定向使用Windows的虚拟总线枚举技术,将客户端接入的USB重定向到远程主机中。其体系结构如图所示目前,该程序与云思创想远程交互协议客户端POND集成在一起。当客户端POND向远程主机发起连接请求后,调用重定向程序的接口,启动USB重定向的功能。USB重定向启动后,首先初始化USB设备重定向权限控制表,并扫描本地的USB设备,如果设备允许被重定向到远程主机,则读取USB设备的信息,向远程主机(windows xp或win 7)中的cldusbd程序发起重定向USB设备的请求。cldusbd接收到重定向请求后,将USB设备的信息(VendorID、ProductIDl)发送给cld虚拟总线枚举器。cld虚拟总线枚举器根据USB设备的信息创建相应的USB设备,并通知Windows的设备管理器有新的设备接入。设备管理器首先会根据USB的设备VendorID和ProductID查找驱动,如U盘(class:0x8,subclass:0x6,protocol:0x50)加载大容量存储的驱动(usbstorage)。如果USB设备是composite设备,则加载usbccgp驱动,usbccgp驱动枚举composite设备的所有的接口设备。至此,远程主机上的用户或程序就可以操作在客户端接入的USB设备了。用户或程序对USB设备的请求都经过cld虚拟总线枚举器和cldusbd通过网络传递到客户端的USB设备上。模块变更概述客户端设计(新增模块) 模块描述USB重定向客户端,是云思创想桌面云之USB重定向的组成部分。功能识别各类USB设备向服务端发起连接性能 设计方法(算法)USB设备抽象层,屏蔽USB设备的差异性。USB设备屏蔽层决定一个USB设备是否可以被重定向。重定向主线程与远程主机交互,接收和转发URB请求。热插拔事件处理发现USB设备,并创建重定向主线程。USB设备抽
文档评论(0)