当前位置: 首页 > news >正文

usb server

在平时的财务共享中心的实践中,我们经常会用到几十到几百个USB KEY,这些USB KEY都是不同的银行、机构提供的,每个USB KEY都有自己的驱动互相可能打架,不兼容,所以不管您电脑上有多少个USB接口,都不能同时把UKEY插入电脑上。必须有一套USB server管理系统。

现在市面上主要有二种类型的USB管理平台。

一种,USB电源控制HUB。这种原理是,给需要用的USB口加电,给不需要用的USB口断电。好处是实现简单,缺点也很明显:

无法远程控制,因为原理还是HUB,所以就必须连接PC,而且是一个HUB对应一个PC,无法实现财务共享、统一管理这个理念,还是分而治之。也没有什么权限、安全管理的功能。较为原始,算是USB管理的初级水平。

第二种,USB通过网络共享。这种的原理是通过IP协议模拟远程USB设备,这种方案往往需要一个专用的USB Server。这个USB Server通过特定的程序,把USB设备模拟成IP协议包,再通过PC端安装的特定的USB客户端,把IP协议包转化并模拟成本机的USB设备。这种的优势就非常明显,他可以完全实现财务共享、统一管理这个理念。就像Web服务器部署之后,只要能上网都可以访问网页一样;部署了USB Server之后,通过合适的配置,全公司的PC都可以使用了。而且通过IP协议,我们可以同时可以集成权限管理、端口控制和安全日志等高级功能。

第二种虽然好,不过目前来看掌握此类技术的国内供应商还是不多的。所以一台设备还是非常贵的。一台大于20USB端口的上万不是什么新鲜事。

USB Server是一款集USB hub扩展协议转换服务器于一体的USB虚拟化专用设备,而USB Hub为单纯的USB接口扩展设备,是不适用于虚拟化的。具体分析如下:

要做好虚拟化迁移必须要解决一些USB设备在虚拟系统里的正常连接,USBserver是通过协议转换把标椎的USB设备协议转换成网络信号通过网络传输到虚拟的终端系统通过客户端直接解析成标准的USB设备协议来使用的,这样以来就成功绕过了虚拟机管理软件的一些限制从而实现随虚拟系统动态漂移等动作。而USB hub要想实现虚拟机内正常识别使用USB设备就必须得再借助一台专门的pc机另加USB协议转换软件才能实现,或者通过直接映射,但是直接映射的话加密狗极其容易锁定也就是把设备分配给某个虚拟机时候,虚拟机物理层要进行加锁操作避免多人使用,用完后去锁释放资源别人才可以用,但是驱动出错,虚拟机关机等问题,会导致释放过程没有,这样就算拔出也不管用,需要重启服务器才可以恢复正常,就更不用说随虚拟系统动态漂移等动作了。USB Server 是专门为虚拟化设计的,实现过程中考虑了多人共享的需要和通过网络USB 设备的锁定问题,在数据中心虚拟化中得到大规模应用。

参考:https://www.zhihu.com/question/289000606/answer/2278316167

相关文章:

  • window api 文件操作之CreateFile、ReadFile和WriteFile
  • 服务器硬件基础知识
  • XPath详解
  • XML详解
  • 串口是什么
  • USB接口
  • ch340是什么芯片
  • 最大路径长度限制
  • 启动配置数据(BCD)存储
  • 什么是EV 代码签名证书
  • 代码签名是什么
  • 使用DD_XOFT实现带有安全控件、U盾的输入
  • Windows驱动开发入门指引
  • MapVirtualKey
  • 键盘扫描码与虚拟码的关系
  • JavaScript 如何正确处理 Unicode 编码问题!
  • Gradle 5.0 正式版发布
  • yii2中session跨域名的问题
  • 代理模式
  • 对超线程几个不同角度的解释
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 前端自动化解决方案
  • 如何利用MongoDB打造TOP榜小程序
  • 为什么要用IPython/Jupyter?
  • Oracle Portal 11g Diagnostics using Remote Diagnostic Agent (RDA) [ID 1059805.
  • 2017年360最后一道编程题
  • # Java NIO(一)FileChannel
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • $NOIp2018$劝退记
  • (145)光线追踪距离场柔和阴影
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (TOJ2804)Even? Odd?
  • (二)Linux——Linux常用指令
  • (二)pulsar安装在独立的docker中,python测试
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)springboot 基于HTML5的个人网页的网站设计与实现 毕业设计 031623
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (原創) 博客園正式支援VHDL語法著色功能 (SOC) (VHDL)
  • (转)大道至简,职场上做人做事做管理
  • .net CHARTING图表控件下载地址
  • .net core控制台应用程序初识
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .Net FrameWork总结
  • .NET 常见的偏门问题
  • .NET序列化 serializable,反序列化
  • [ JavaScript ] JSON方法
  • [<MySQL优化总结>]
  • [2019.3.5]BZOJ1934 [Shoi2007]Vote 善意的投票
  • [2021 蓝帽杯] One Pointer PHP
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [C#] 如何调用Python脚本程序
  • [C#基础知识系列]专题十七:深入理解动态类型
  • [CC2642R1][VSCODE+Embedded IDE+IAR Build+Cortex-Debug] TI CC2642R1基于VsCode的开发环境