usbredir client 功能说明书
来源:互联网 发布:雨林木风linux系统下载 编辑:程序博客网 时间:2024/04/30 17:26
什么是usb重定向?
usb redirection协议,定义了重定向一台机器上的usb设备的各种控制数据报文到另一台机器(或者虚拟机)规范,协议规范里定义了两个角色,通常物理usb设备挂载的机器可以称为源主机(usb redirection协议也称为usb-host),虚拟usb设备挂载的机器可以成为目的主机(usb redirection协议也称为usb-guest),源主机和目的主机的通信基于可靠安全的传输层协议TCP,重定向成功后,目的主机就可以看到操作被重定向的usb外设。
什么是usbredir client?
usbredir client是运行在源主机一个程序,它能重定向各类usb 设备到目的主机。它的功能有下面几方面:
1)监控管理物理usb设备的状态
2)usb控制数据报文处理
3)外部操作处理
目的主机,可以是物理主机,也可以是虚拟机,各种虚拟化Hypervisor管理虚拟外设会有不同的机制,现在的实现和测试是基于开源的Qemu/KVM。
这里需要区分说明下,usb redirection协议里所定义的usb-host指的是物理设备挂载的主机,usbredir client是从功能实现程序的角度看,它是基于TCP传输连接的client,因此就定义为usbredir client。
支持哪些类别usb总线标准的设备?
UHCI
OHCI
EHCI
XHCI(暂不支持)
各类usb外设管控
usb外设种类分门别类有不少,需要有个策略加以管控,什么类型的设备哪个设备可以或者不可以被重定向。策略规则定义如下:
规则形式:
<rule1>|<rule2>|<rule3>
规则定义:
*@class,@vendor,@product,@version,@allow
* Use -1 for@class/@vendor/@product/@version to accept any value.
* 0: denyredir for this device, non 0: allow
例子1:
"-1,-1,-1,-1,1" 表示所有设备都会被重定向(缺省策略)
下面的例子,鼠标和键盘不会重定向(设备的vendor&product用来过滤)
"-1,0x093a,0x2510,0|1,0x11ba,0x0002,0|-1,-1,-1,-1,1"
例子2:
"-1,-1,-1,-1,0" 表示所有设备都不会被重定向(缺省策略)
下面的例子,只有存储设备会重定向(设备的class用来过滤)
"3,-1,-1,-1,1|-1,-1,-1,-1,0"
结合实际应用,usb鼠标键盘和某些U盘(ukey认证)及移动硬盘(譬如该硬盘作为系统盘)不应被重定向,别的设备应被重定向。
系统缺省设定所有设备不会被重定向,有哪类或者哪个设备需要重定向的,就添加这些个设备到规则中。
并发支持
并发支持,就是支持同时有多个usb设备重定向,互相间独立正常运行。
在Qemu/KVM虚拟机环境下,最多支持并发的数量由Qemu能模拟的usb hcd及usb hub决定,参考Qemu资料,一个虚拟机最多EHCI接口usb-redirect设备支持<=3,OHCI和UHCI接口usb-redirect设备>=1。系统缺省设定,一个虚拟机并发同时支持4个usb设备重定向,其中最多允许3个EHCI接口设备,4个OHCI,4个UHCI。
- usbredir client 功能说明书
- usbredir client设计实现
- spicy client usbredir 参数说明
- 《业务功能说明书》修订
- 功能说明书样本
- 协同工作平台功能说明书
- SD功能增强业务说明书
- FI功能增强业务说明书
- spice/qemu--usbredir(续)
- 软件功能需求说明书编写体会
- 书写功能规格说明书的注意事项总结
- MoodNotes产品分析及功能说明书
- 为什么需要功能需求设计说明书
- SQ项目-MM功能增强业务说明书
- 说明书
- spice/qemu--usbredir(3)
- OSX上开启X11 client功能
- canal-client的HA功能验证
- mac 文件批量改名
- Oracle 权限设置
- 如何禁止 Mac OS X 在外接设备上生成 .DS_Store 文件?以及如何批量删除 .DS_Store 文件?
- 通过经纬度解析出地址
- Android Gallery
- usbredir client 功能说明书
- 精明的程序员——重复的工作
- Linux是怎么启动的
- hdu 5012(广搜,西安网络赛)
- 这个我真不知道
- uva502DEL command
- html5学习前概述
- VS2010进行远程调试方法总结
- HDU 5017 Ellipsoid