协同CAD系统中“迟加入”算法的研究
计算机支持的协同工作(Computer SupportedCooperative Work,简称CSCW)致力于并发控制、群组安全、可靠通信以及高效协作等研究。协同系统为设计者之间的沟通创造了一个虚拟的群体共享环境,支持不同地域的协作者通过网络来共同高效地完成一个设计任务,大大缩短了产品的开发周期,提高开发效率。在协同设计过程中,并不是所有设计者都准备就绪后才同时开始设计。因此,必然会出现当一个新的参与者加入到一个已在进行的协同设计工作组中时,设计过程已经进行了部分操作,这时就产生了“迟加入问题”[1]。另外,由于用户的分布性以及网络延迟性,“迟加入问题”还可能出现在以下两种情况中:
(1) 当系统软、硬件或者所在网络发生故障时,站点有可能会非正常退出系统。当再次加入时,就需要在原来的基础上进行工作空间的状态同步。
(2) 由于协同系统的分布式布置以及网络状态的差异,因此设计进度有差异,此时设计者需要重新赶上设计进度,也需要进行工作空间的状态同步。
因此,为了保证迟到者正常地加入协同进程、非正常退出用户的再次加入以及其他用户的状态同步,有必要采用一种有效的“迟加入”算法使参与者的工作空间尽快与其他在线用户保持一致,而不影响协同系统设计组其他成员的正常工作。
1 “迟加入”算法的要求
“迟加入”算法应满足以下几个要求[2]:
(1) 一致性 迟加入者应能获得与其他站点一致的最新的应用状态。在这个应用状态基础上,后加入者能正常进行协同设计工作。
(2) 鲁棒性 系统中一个参与者的站点出现问题不会影响后续加入者进行协同初始状态的同步。
(3) 低网络负荷 一个“迟加入”算法的高效性体现在它只传送最小的数据量,并且只有确实需要的数据才被传送。
(4) 低应用负担 对于为迟加入者提供数据的应用程序端,不应由于传送迟加入者所需的应用数据而导致系统正常工作的效率大大地降低。
(5) 低初始化延迟 迟加入者场景初始化应在有限的时间内完成,延迟应限制在用户可以接受的范围内。
2 现有“迟加入”算法分析
现有的“迟加入”算法大致可以分为两类:
第1类,“迟加入”算法的处理主要依赖传输协议,如SRM(Scalable Reliable Multicastprotocol),所有的数据包从一开始设计就缓存起来,迟到者可以根据开始状态和缓存的数据包重建工程,称之为“协议级策略”。但此算法有很大的缺点:首先,缓存所有的数据包来进行重建的效率很差,因为很多传输的消息其实对重建当前工程作用不大,缓存空间严重浪费;其次,用户一旦加入系统,就要将从一开始设计至今的所有数据包在工程中重建,数据量太大;第三,当前工程的场景中依赖时序的操作并不是仅数据包就一定能重现的,因此作为复杂协同CAD系统中的“迟加入”算法是不现实的。
相关文章
- 2022-05-25步进式加热炉生产过程仿真系统设计与实现
- 2023-01-12基于智能模糊控制的嵌入式称重系统的研究
- 2024-08-21基于CAD模型的NURBS形状公差评定
- 2022-08-15HIVERT高压变频器在皮带机上的应用
- 2023-12-28航天发射场数字化环境平台建设研究
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。