一种网络块设备的数据传输方法、装置、储存介质及计算设备制造方法及图纸

技术编号:38759812 阅读:13 留言:0更新日期:2023-09-10 09:44
本发明专利技术公开了一种网络块设备的数据传输方法、装置、储存介质及计算设备,属于OpenBMC虚拟媒体软件技术领域,包括:接收来自NBD客户端的数据请求后,获取当前操作系统类型及待传输文件类型;根据当前操作系统的类型和待传输文件类型,将待传输文件进行数据格式打包处理;将已打包的待传输文件发送至NBD客户端。本发明专利技术在收来自NBD客户端的数据请求后,通过获取当前操作系统类型及待传输文件类型,并根据当前操作系统及待传输文件的类型将待传输文件进行数据格式打包处理,具有跨平台特性,可以根据不同操作系统、传输设备类型动态选择合适的读写设备的方法进行数据传输。适的读写设备的方法进行数据传输。适的读写设备的方法进行数据传输。

【技术实现步骤摘要】
一种网络块设备的数据传输方法、装置、储存介质及计算设备


[0001]本专利技术涉及一种网络块设备的数据传输方法、装置、储存介质及计算设备,属于OpenBMC虚拟媒体软件


技术介绍

[0002]目前OpenBMC的虚拟媒体软件采用NBD协议通过两种方式实现,第一种方式为使用浏览器与BMC(基板管理控制器)之间建立单个文件的NBD(网络块设备)链接。第二种方式是下载单独的虚拟媒体软件建立NBD连接,这种方式支持多种文件格式访问,如昆仑BMC虚拟媒体软件。
[0003]当前OpenBMC的虚拟媒体功能的通用性比较差。主流网页实现方式只能支持单个块设备文件访问,如ISO镜像文件,不支持U盘,硬盘,文件夹等块设备文件的访问。如需要实现块设备文件支持,则需要下载独立的虚拟媒体软件。由于Linux平台和Windows平台对块设备文件管理方法上的差异,需要为每一种平台准备不同版本的软件供用户下载使用,这种方法比较浪费BMC闪存空间并且在用户使用和开发人员维护上带来不少麻烦。

技术实现思路

[0004]本专利技术的目的在于克服现有技术中的不足,提供一种网络块设备的数据传输方法、装置、储存介质及计算设备,具有跨平台特性,可以根据不同操作系统、传输设备类型动态选择合适的读写设备的方法进行数据传输。
[0005]为达到上述目的/为解决上述技术问题,本专利技术是采用下述技术方案实现的:
[0006]第一方面,一种网络块设备的数据传输方法,包括:
[0007]接收来自NBD客户端的数据请求后,获取当前操作系统类型及待传输文件类型;
[0008]根据当前操作系统的类型和待传输文件类型,将待传输文件进行数据格式打包处理;
[0009]将已打包的待传输文件发送至NBD客户端。
[0010]进一步地,在接收来自NBD客户端的数据请求前,还需进行用户数据解析。
[0011]更进一步地,所述用户数据解析的方法包括:
[0012]获取BMC用户信息,所述BMC用户信息包括用户名,密码,IP地址;
[0013]验证BMC用户信息与预设信息是否匹配。
[0014]更进一步地,所述用户数据解析的方法还包括:
[0015]获取待传输的设备文件路径信息,所述待传输的设备文件路径信息包括待传输设备的在位情况、用户权限信息和读写权限信息;
[0016]验证待传输的设备文件路径信息与预设信息是否匹配,若存在不匹项,则输出相应的错误代码。
[0017]进一步地,所述根据当前操作系统的类型和待传输文件类型,将待传输文件进行数据格式打包处理的方法包括:
[0018]对于LINUX系统的所有块设备文件和WINDOWS系统的普通块文件,使用JAVA标准IO库方法对待传输文件进行数据读写;
[0019]对于WINDOWS系统中硬盘、U盘块设备文件,使用JAVA的FileSystemView库方法对待传输文件进行数据读写;
[0020]打包已读写的数据。
[0021]进一步地,将已打包的待传输文件发送至NBD客户端前,还需对已打包的待传输文件进行SSL加密处理。
[0022]第二方面,一种网络块设备的数据传输装置,包括:
[0023]获取模块,用于在接收来自NBD客户端的数据请求后,获取当前操作系统类型及待传输文件类型;
[0024]读写模块,用于根据当前操作系统的类型和待传输文件类型,将待传输文件进行数据格式打包处理;
[0025]传输模块,用于将已打包的待传输文件发送至NBD客户端。
[0026]第三方面,一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
[0027]第四方面,一种计算设备,包括:
[0028]一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行上述方法中的任一方法的指令。
[0029]与现有技术相比,本专利技术所达到的有益效果:
[0030]本专利技术在收来自NBD客户端的数据请求后,通过获取当前操作系统类型及待传输文件类型,并根据当前操作系统及待传输文件的类型将待传输文件进行数据格式打包处理,具有跨平台特性,可以根据不同操作系统、传输设备类型动态选择合适的读写设备的方法进行数据传输,解决了当前不同操作平台在与块设备进行数据传输时,浪费BMC闪存空间并且为用户使用及开发人员维护带来不便的问题。
附图说明
[0031]图1是本专利技术实施例提供的一种网络块设备的数据传输方法的流程图。
具体实施方式
[0032]下面结合附图对本专利技术作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。
[0033]实施例1
[0034]如图1所示,一种网络块设备的数据传输方法,包括:
[0035]接收来自NBD客户端的数据请求后,获取当前操作系统类型及待传输文件类型,具体的,使用JAVA中Properties库提供的方法获取当前操作系统类型,使用JAVA中的System库提供的方法获取需要传输文件的类型;
[0036]根据当前操作系统的类型和待传输文件类型将待传输文件进行数据格式打包处理,具体的:对于LINUX系统的所有块设备文件和WINDOWS系统的普通块设备文件,WINDOWS
系统的普通块设备文件为ISO镜像文件,使用JAVA标准IO库方法对待传输文件进行数据读写;
[0037]对于WINDOWS系统中硬盘、U盘块设备文件,使用JAVA的FileSystemView库方法对待传输文件进行数据读写;
[0038]打包已读写的数据,并对已打包的待传输文件进行SSL加密处理;
[0039]将进行SSL加密处理后的已打包的待传输文件发送至NBD客户端。
[0040]在接收来自NBD客户端的数据请求前,还需进行用户数据解析;具体的:
[0041]获取BMC用户信息,BMC用户信息包括用户名,密码,IP地址;
[0042]验证BMC用户信息与预设信息是否匹配;
[0043]获取待传输的设备文件路径信息,待传输的设备文件路径信息包括待传输设备的在位情况、用户权限信息和读写权限信息;
[0044]验证待传输的设备文件路径信息与预设信息是否匹配,若存在不匹项,则输出相应的错误代码;
[0045]当BMC用户信息、用户权限信息与预设信息匹配时,才能接收来自NBD客户端的数据请求。
[0046]实施例2
[0047]一种网络块设备的数据传输装置,包括:
[0048]获取模块,用于在接收来自NBD客户端的数据请求后,获取当前操作系统类型及待传输文件类型;
[0049]传输模块,用于根据当前操作系统的类型将待传输文件进行数据格式打包,将已打包的待传输文件发送至NBD客户端。...

【技术保护点】

【技术特征摘要】
1.一种网络块设备的数据传输方法,其特征在于,包括:接收来自NBD客户端的数据请求后,获取当前操作系统类型及待传输文件类型;根据当前操作系统的类型和待传输文件类型,将待传输文件进行数据格式打包处理;将已打包的待传输文件发送至NBD客户端。2.根据权利要求1所述的网络块设备的数据传输方法,其特征在于,在接收来自NBD客户端的数据请求前,还需进行用户数据解析。3.根据权利要求2所述的网络块设备的数据传输方法,其特征在于,所述用户数据解析的方法包括:获取BMC用户信息,所述BMC用户信息包括用户名,密码,IP地址;验证BMC用户信息与预设信息是否匹配。4.根据权利要求2所述的网络块设备的数据传输方法,其特征在于,所述用户数据解析的方法还包括:获取待传输的设备文件路径信息,所述待传输的设备文件路径信息包括待传输设备的在位情况、用户权限信息和读写权限信息;验证待传输的设备文件路径信息与预设信息是否匹配,若存在不匹项,则输出相应的错误代码。5.根据权利要求1所述的网络块设备的数据传输方法,其特征在于,所述根据当前操作系统的类型和待传输文件类型,将待传输文件进行数据格式打包处理的方法包括:对于LINUX系统的所有块设备文...

【专利技术属性】
技术研发人员:丁琳姚子平曹泽轩
申请(专利权)人:无锡先进技术研究院
类型:发明
国别省市:

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

1