System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种can设备的虚拟化方法、装置及介质制造方法及图纸_技高网

一种can设备的虚拟化方法、装置及介质制造方法及图纸

技术编号:44532185 阅读:1 留言:0更新日期:2025-03-07 13:21
本发明专利技术提供了一种can设备的虚拟化方法、装置及介质,虚拟化方法包括:调度器根据can应用部署请求,调度物理节点;被调度物理节点基于can应用部署请求创建容器组,并分配虚拟can设备;虚拟can设备对can协议报文进行封装处理后,得到vcan协议报文;can代理模块根据vcan协议报文进行选路操作和转发控制。本发明专利技术通过虚拟can设备对can协议进行封装,通过can代理模块的对应用和物理can设备之间的耦合关系进行屏蔽,避免了调度的复杂度,并且通过can代理模块,实现对不同can应用的通信请求的转发控制。

【技术实现步骤摘要】

本专利技术属于设备虚拟化,具体涉及一种can设备的虚拟化方法、装置及介质


技术介绍

1、目前,can(controller area network)设备在kubernetes环境中的虚拟化主要依赖于两种方法:设备透传和虚拟化技术。设备透传(device passthrough)允许将物理can设备直接分配给容器,确保容器可以直接访问物理can设备的功能。这种方法通过将can设备的文件描述符(如/dev/can0)挂载到容器中,使得容器可以像访问本地设备一样访问can设备。此外,vxcan(虚拟can)技术也被用来虚拟化can设备,它通过创建虚拟can网络接口,使多个容器可以在虚拟can总线上进行通信。

2、尽管现有技术在某种程度上解决了can设备虚拟化的问题,但仍存在以下几个主要缺陷:

3、1、非对等拓扑管理复杂:很多环境中can设备的配置是不对等的,有些can设备在a节点,有些can设备在b节点,对于全局维护can设备的拓扑结构来说,非常复杂。

4、2、调度复杂度高:在kubernetes环境中,用户需要感知并指定调度到存在目标can设备的节点,否则会出现目标节点没有所需can设备的错误调度。即便是通过deviceplugin技术进行调度,也需要结合复杂拓扑进行调度,其调度复杂度很高,经常会调度失败。尤其对于同时需要挂载多个can设备的应用来说,只有少数节点满足其调度需求。

5、3、容灾性差:当容器所在节点宕机时,触发迁移的目标节点可能没有所需can设备,或容器不足。由于容器和can设备的强绑定,导致宕机迁移功能受限,影响业务运行。

6、4、共享can设备的qos问题:can设备通过vxcan实现的共享功能,由于vxcan不支持qos控制,对于多任务共享下的qos问题无法响应,导致多任务之间会互相影响。


技术实现思路

1、鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种can设备的虚拟化方法和相应的一种can设备的虚拟化装置以及一种计算机可读介质。

2、本专利技术公开了一种can设备的虚拟化方法,包括:

3、调度器根据can应用部署请求,调度物理节点;

4、被调度物理节点基于can应用部署请求创建容器组,并分配虚拟can设备;

5、虚拟can设备对can协议报文进行封装处理后,得到vcan协议报文;

6、can代理模块根据vcan协议报文进行选路操作和转发控制。

7、作为本专利技术的进一步改进,在所述调度器根据can应用部署请求,调度物理节点的步骤前,还包括步骤:

8、can代理模块采集本机的物理can设备拓扑并上报至调度器中。

9、作为本专利技术的进一步改进,所述调度器根据can应用部署请求,调度物理节点的步骤,包括:

10、选择满足can应用部署请求的物理节点进行调度;

11、如所有物理节点均不满足can应用部署请求,则选择can设备最少的物理节点进行调度。

12、作为本专利技术的进一步改进,所述can应用部署请求包括:can设备数量,所述分配虚拟can设备的步骤,包括:

13、根据can设备数量,对等分配对应数量的虚拟can设备。

14、作为本专利技术的进一步改进,所述虚拟can设备对can协议报文进行封装处理后,得到vcan协议报文的步骤,包括:

15、物理节点上的容器组应用向容器组内部指定的虚拟can设备发起请求;

16、虚拟can设备接收到can协议报文后,将物理can设备和qos信息封装到报文头中,并转换为vcan协议报文;

17、虚拟can设备通过tcp协议转发给物理节点上的can代理模块。

18、作为本专利技术的进一步改进,在can代理模块根据vcan协议报文进行选路操作和转发控制时,can代理模块对vcan协议报文进行解封装,以获取目标物理can设备、qos信息、can报文。

19、作为本专利技术的进一步改进,所述can代理模块根据vcan协议报文进行选路操作和转发控制的步骤,包括:

20、can代理模块中的选路模块根据目标物理can设备进行选路;

21、can代理模块中的qos控制单元控制报文的转发速率和带宽。

22、作为本专利技术的进一步改进,所述can代理模块中的选路模块根据目标物理can设备进行选路的步骤,包括:

23、如本机存在目标物理can设备,则将报文转发至目标物理can设备中;

24、如本机不存在目标物理can设备,则根据全局拓扑关系,寻找到具有目标物理can设备的物理节点,将原始报文转发至目标物理节点的can代理模块中;

25、目标物理节点的can代理模块对原始报文进行二次解封装、选路和转发。

26、本专利技术还提供了一种can设备的虚拟化装置,其特征在于,用于实现上述的虚拟化方法,所述虚拟化装置包括:

27、调度器,用于根据can应用部署请求,调度物理节点;

28、can代理模块,设置在每一台can设备中,用于为容器组分配虚拟can设备,同时,还用于根据虚拟can设备的请求,对报文进行转发;

29、虚拟can设备,根据can应用部署请求挂载到容器中;

30、vcan协议报文模块,用于对can协议报文进行封装和转换。

31、作为本专利技术的进一步改进,所述can代理模块包括:

32、解封装模块,用于对vcan协议报文进行解封装;

33、选路模块,用于根据目标物理can设备进行选路;

34、qos控制单元,用于对报文转发的转发率和带宽进行控制。

35、本专利技术还提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述的虚拟化方法。

36、与现有技术相比,本专利技术具有以下有益效果:本专利技术通过虚拟can设备对can协议进行封装,通过can代理模块对用户应用和物理can设备之间的耦合关系进行屏蔽,避免了调度的复杂度,并且通过can代理模块,实现对不同can应用的通信请求的转发控制。

本文档来自技高网...

【技术保护点】

1.一种can设备的虚拟化方法,其特征在于,包括:

2.根据权利要求1所述的虚拟化方法,其特征在于,在所述调度器根据can应用部署请求,调度物理节点的步骤前,还包括步骤:

3.根据权利要求1所述的虚拟化方法,其特征在于,所述调度器根据can应用部署请求,调度物理节点的步骤,包括:

4.根据权利要求1所述的虚拟化方法,其特征在于,所述can应用部署请求包括:can设备数量,所述分配虚拟can设备的步骤,包括:

5.根据权利要求1所述的虚拟化方法,其特征在于,所述虚拟can设备对can协议报文进行封装处理后,得到vcan协议报文的步骤,包括:

6.根据权利要求1所述的虚拟化方法,其特征在于,在can代理模块根据vcan协议报文进行选路操作和转发控制时,can代理模块对vcan协议报文进行解封装,以获取目标物理can设备、Qos信息、can报文。

7.根据权利要求6所述的虚拟化方法,其特征在于,所述can代理模块根据vcan协议报文进行选路操作和转发控制的步骤,包括:

8.根据权利要求7所述的虚拟化方法,其特征在于,所述can代理模块中的选路模块根据目标物理can设备进行选路的步骤,包括:

9.一种can设备的虚拟化装置,其特征在于,用于实现如权利要求1至8任一项所述的虚拟化方法,所述虚拟化装置包括:

10.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至8任一所述的虚拟化方法。

...

【技术特征摘要】

1.一种can设备的虚拟化方法,其特征在于,包括:

2.根据权利要求1所述的虚拟化方法,其特征在于,在所述调度器根据can应用部署请求,调度物理节点的步骤前,还包括步骤:

3.根据权利要求1所述的虚拟化方法,其特征在于,所述调度器根据can应用部署请求,调度物理节点的步骤,包括:

4.根据权利要求1所述的虚拟化方法,其特征在于,所述can应用部署请求包括:can设备数量,所述分配虚拟can设备的步骤,包括:

5.根据权利要求1所述的虚拟化方法,其特征在于,所述虚拟can设备对can协议报文进行封装处理后,得到vcan协议报文的步骤,包括:

6.根据权利要求1所述的虚拟化方法,其特征在于,在can代理模块根据vcan协议报文...

【专利技术属性】
技术研发人员:刘忻黄继承林冬艺
申请(专利权)人:广州市品高软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1