一种虚拟机模板的传输方法、发送端和接收端的制作方法_2

文档序号:9631742阅读:来源:国知局
件校验和不同,则本发明通过判断每一个模板文件中当前模板文件对应的发送端生成的第一文件校验和与接收端生成的第二文件校验和是否相同,如果是,则确定所述虚拟机模板传输完整,否则,重新传输当前第一文件校验和对应的模板文件,通过这一过程则可以很直观的判断出在传输的过程中模板文件是否缺失或者被篡改,有效的保证了接收端接收到的模板文件的完整性。
【附图说明】
[0046]图1为本发明实施例提供的一种虚拟机模板的传输方法的流程图;
[0047]图2为本发明实施例提供的另一种虚拟机模板的传输方法的流程图;
[0048]图3为本发明实施例提供的一种虚拟机模板的模板配置文件内容示意图;
[0049]图4为本发明实施例提供的又一种虚拟机模板的传输方法的流程图;
[0050]图5为本发明实施例提供的另一种虚拟机模板的传输方法的流程图;
[0051]图6为本发明实施例提供的一种发送端的结构示意图;
[0052]图7为本发明实施例提供的一种接收端的结构示意图。
【具体实施方式】
[0053]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0054]如图1所示,本发明实施例提供一种虚拟机模板的传输方法,应用于虚拟机模板的发送端,该方法可以包括如下步骤:
[0055]步骤101:确定数据块阈值以及虚拟机模板对应的各个模板文件;
[0056]步骤102:为各个模板文件中每一个模板文件生成对应的第一文件校验和;
[0057]步骤103:将每一个模板文件中的内容切分成小于等于数据块阈值的数据块,并发送各个数据块和对应的第一文件校验和给接收端;
[0058]步骤104:利用各个数据块,触发接收端将接收到的各个数据块还原为对应的模板文件,为接收到的每一个模板文件生成对应的第二文件校验和;
[0059]步骤105:触发接收端判断每一个模板文件中当前模板文件对应的第一文件校验和与第二文件校验和是否相同,如果是,则执行步骤106 ;否则,执行步骤107 ;
[0060]步骤106:确定虚拟机模板传输完整,结束流程;
[0061]步骤107:重新传输当前第一文件校验和对应的模板文件。
[0062]在本发明一个实施例中,为了保证发送端发送的模板文件完整,以进一步保证接收端接收到的模板文件的完整,在步骤101之后,在步骤102之前,进一步包括:解析各个模拟文件中的模拟配置文件,并获取模拟配置文件中的文件列表;判断文件列表中的模拟文件数量和模拟文件名称与确定的各个模板文件是否一致,如果是,则直接执行为各个模板文件中每一个模板文件生成对应的第一文件校验和,否则,根据文件列表,重新确定模拟文件。
[0063]在本发明一个实施例中,为了保证发送端发送的模板文件完整,步骤101的【具体实施方式】:解析虚拟机模板对应的模拟配置文件,并获取配置文件中的文件列表;根据文件列表中的模拟文件数量和模拟文件名称,确定虚拟机模板对应的各个模板文件。
[0064]在本发明一个实施例中,为了提高模板文件的传输速率,在步骤103中,在将每一个模板文件中的内容切分成小于等于数据块阈值的数据块之后,在发送各个数据块和对应的第一文件校验和给接收端之前,进一步包括:为各个数据块中的每一个数据块生成对应的第一数据块校验和;而发送各个数据块和对应的第一文件校验和给接收端,包括:发送各个数据块、对应的第一数据块校验和和对应的第一文件校验和给接收端。
[0065]如图2所示,本发明实施例提供一种虚拟机模板的传输方法,应用于虚拟机模板的发送端,该方法可以包括如下步骤:
[0066]步骤201:确定数据块阈值以及虚拟机模板对应的各个模板文件;
[0067]在该步骤中,数据块阈值的大小往往跟传输的网络带宽有关系,网络带宽越大,数据块阈值越大,网络带宽越小,切分成的数据块也越小。
[0068]而在该步骤中,确认虚拟机模板对应的各个模板文件的方式可以包括但不限于:一种为人工选择的方式选择模板文件;另一种为解析虚拟机模板对应的模拟配置文件,并获取配置文件中的文件列表;该文件列表中一般包括文件名称和文件路径,根据文件列表中的模拟文件数量和模拟文件名称,确定虚拟机模板对应的各个模板文件。
[0069]步骤202:解析各个模拟文件中的模拟配置文件,并获取模拟配置文件中的文件列表;
[0070]如图3所示,为本发明实施例提供的模拟配置文件的内容,通过该内容可以解析模板文件名称、文件路径等信息,很容易统计出模板文件数量等,在该图3的模拟配置文件中主要包含有3个模板文件分别为:模板_重要_装软件(a6c28617-e5b4-45dl-a062-60c7c3e73953).vmdk ;模板 _ 重要 _ 装软件(a6c28617-e5b4-45dl-a062_60c7c3e73953).nvram ;模板 _ 重要 _ 装软件(a6c28617-e5b4-45dl-a062_60c7c3e73953).vmtx。
[0071]步骤203:判断文件列表中的模拟文件数量和模拟文件名称与确定的各个模板文件是否一致,如果是,则直接执行步骤205 ;否则,执行步骤204 ;
[0072]模拟配置文件中的文件列表主要包括虚拟机模板对应的所有模板文件地名称和路径,那么通过该步骤可以初步保证发送端选择了全部的模板文件,而且也可以避免不必要的文件的传输。
[0073]步骤204:根据文件列表,重新确定模拟文件;
[0074]步骤205:为各个模板文件中每一个模板文件生成对应的第一文件校验和;
[0075]该步骤生成的校验和与模板文件的内容相关,例如可以通过读取模板文件中的内容,将内容转换成唯一的字符串即为校验和,由于不同模板文件的内容不同,则不同文件对应的校验和不同,而同一文件的校验和相同。
[0076]步骤206:将每一个模板文件中的内容切分成小于等于数据块阈值的数据块;
[0077]例如:一个模板文件的大小为1MB,而数据块阈值为,则该大小为1MB的模板文件被切分为4个数据块,3个0.3MB的数据块和1个0.1MB的数据块。
[0078]步骤207:为各个数据块中的每一个数据块生成对应的第一数据块校验和;
[0079]例如:为大小为1MB的模板文件被切分成的4个数据块对应的第一数据块校验和分别为A1B2 ;C3D4 ;E5G6 ;H7,该1MB的模板文件对应的第一文件校验和为A1B2C3D4E5G6H7。
[0080]步骤208:发送各个数据块、对应的第一数据块校验和和对应的第一文件校验和给接收端;
[0081]步骤209:利用各个数据块,触发接收端将接收到的各个数据块还原为对应的模板文件,为接收到的每一个模板文件生成对应的第二数据块校验和以及第二文件校验和;
[0082]该步骤中的每一个模板文件的第二文件校验和是每一个模板文件对应的各个数据块的第二数据块校验和的加和,例如:一个模板文件对应的4个数据块,该4个数据块对应的第二数据块校验和依次为A1B2 ;C3D4 ;E5G6 ;H7,则该模板文件的第二文件校验和为A1B2C3D4E5G6H7。
[0083]步骤210:触发接收端判断每一个模板文件中当前模板文件对应的第一文件校验和与第二文件校验和是否相同,如果是,则执行步骤211 ;否则,执行步骤212 ;
[0084]如果在传输过程中模板文件内容被恶意更改或者模板文件内容传输不完全,将导致该模板文件对应的第二文件校验和与第一文件校验和不同。
[0085]步骤211:确定虚拟机模板传输完整,结束流程;
[0086]步骤212:重新传输当前第一文件校验和对应的模板文件。
[0087]如图4所示,本发明实施例提供一种虚拟机模板的传输方法,应用于虚拟机模板的接收端,可以包括如下步骤:
[0088]步骤401:接收发送端发送的各个数据块和对应的第一文件校验和;
[0089]步骤402:受到发送端利用数据块触发,将各个数据块还原为对应的模板文件,为接收到的每一个模板文件生成对应的第二文件校验和;
[0090]步骤403:判断每一个模板文件中当前模板文件对应的第一文件校验和与第二文件校验和是否相同,如果是,则执行步骤404 ;否则,执行步骤405 ;
[0091]步骤404:确定虚拟机模板传输完整,结束流程;
[00
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1