首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

一种快速精确的KVM远程鼠标同步方法

一种快速精确的KVM远程鼠标同步方法

表4 绝对鼠标同步的报告描述符


3 KVM 系统总体结构
本文设计并实现了基于该鼠标同步方法的KVM 系统,主要分为3 个模块:(1)运行于控制主机的客户端;(2)连接多台被控机的KVM 切换系统;(3)通过USB 接口与被控机相连,并且能模拟HID 设备的控制模块。KVM 系统总体结构如图2 所示。

图2 KVM 系统总体结构


KVM 系统3 个模块功能定义如下:
(1)控制主机客户端
本文设计的KVM 系统基于B/S 框架,控制主机组合鼠标、键盘、显示器等I/O 设备,通过Web 页面调用操作界面。
界面经TCP/IP 网络接收被控机屏幕画面并解码显示,同时检测本机鼠标、键盘事件,将数据发送至KVM 切换系统。由于被控机的视频流发送负荷达5 Mb/s~10 Mb/s,为避免鼠标数据延迟,因此,本系统采用独立的TCP/IP 连接发送鼠标键盘数据。
(2)KVM 切换系统
KVM 切换系统的核心是:运行主要内核程序及服务器程序,并通过HPI 接口连接多台被控机进行切换控制的嵌入式处理器。处理器网络接收鼠标数据并完成坐标处理算法,并将数据发送至与相应被控机连接的HID 设备控制模块。
(3)HID 设备控制模块
采用USB2.0 接口与被控机相连,支持480 Mb/s 的传输速率。经HPI 接收KVM 切换系统的鼠标数据并对报告描述符结构进行设置,通过中断传输方式传送至被控机,实现鼠标设备的模拟控制。该模块是KVM 系统中完成HID 设备数据通信的核心模块。
4 实验与结果分析
4.1 延时测试
本文分别对KVM 鼠标操作总体的延迟时间,以及同步方法模块的延迟时间进行测试,定义如下:
(1)总体延时
本文采用"回环模式"对总体延时进行测试。回环模式主要通过在主控机和被控机上形成对同一事件的循环响应,获取两者的响应时间差值,以得出延迟时间。具体实现方法为:在主控机和被控机上同时运行一个测试客户端,鼠标单击主控机的客户端界面,界面响应事件并发出UDP 数据包标识时间;事件传递至被控机客户端后,被控机客户端同样响应该事件并发出UDP 包。通过网络工具捕捉这2 个UDP包,并计算两者之间的时间差值,即得到总体的鼠标延时。
鼠标总体延时测试的实现流程如图3 所示。

图3 总体延时测试


(2)同步方法延时
考虑到控制主机性能和网络环境等不固定因素,本文同时对鼠标同步方法的延迟时间进行测试。同步方法延时测试主要采用硬件中断方式。同样在主控机和被控机上各运行一个客户端,并对主控机客户端进行鼠标单击操作。当鼠标操作数据由主控机客户端传输到处理器时,处理器产生中断并拉高电平;被控机客户端接收到鼠标操作数据,发出UDP 包作为回应,当处理器接收到被控机端的UDP 包时拉低电平,从而形成一个时间脉冲。忽略UDP 包的网络传输时间,则该时间脉冲宽度即可近似为同步方法的延迟时间。同步方法延时测试的实现流程如图4 所示。

图4 同步方法延时测试


"回环模式"测试最终所得的总体鼠标延时及同步方法延时测试结果如表5 所示。

表5 延时测试结果


4.2 同步精确度
KVM 测试运行12 h,并在被控机上播放MKV 视频以增加网络传输负荷。定期进行鼠标操作,且操作时间保持30 h以上。经测试评估,在绝对鼠标同步模式下,长时间使用鼠标不会出现位置偏差;在相对鼠标同步模式下,正常状态操作鼠标不会出现位置不同步现象,但在大范围区间内快速移动鼠标时会有约1 mm 的位置偏差,但鼠标可以在移动中自动更正重新达到重合。
5 结束语
本文提出一种快速精确的KVM 远程鼠标同步方法。采用USB2.0 接口实现数据高速传输,通过加入自适应"残差处理"和双字节坐标表示法改进传统相对鼠标同步方式,即实现鼠标同步方式绝对化。测试结果表明,该方法能提高鼠标定位的精准度,系统能够更快处理鼠标事务。以后将不断对本文方法进行优化,实现高速度与高精度更好的融合。
返回列表