一种文件传输方法和管理服务器.pdf

上传人:1520****312 文档编号:672136 上传时间:2018-03-03 格式:PDF 页数:14 大小:1.17MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410384681.6

申请日:

2014.08.06

公开号:

CN104158868A

公开日:

2014.11.19

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||著录事项变更IPC(主分类):H04L 29/08变更事项:申请人变更前:杭州华三通信技术有限公司变更后:新华三技术有限公司变更事项:地址变更前:310052 浙江省杭州市滨江区长河路466号变更后:310052 浙江省杭州市滨江区长河路466号|||实质审查的生效IPC(主分类):H04L 29/08申请日:20140806|||公开

IPC分类号:

H04L29/08

主分类号:

H04L29/08

申请人:

杭州华三通信技术有限公司

发明人:

徐燕成; 吴文欢

地址:

310052 浙江省杭州市滨江区长河路466号

优先权:

专利代理机构:

北京博思佳知识产权代理有限公司 11415

代理人:

林祥

PDF下载: PDF下载
内容摘要

本发明提供一种文件传输方法和管理服务器,其中方法包括:管理服务器接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;所述管理服务器根据所述文件信息,请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;所述管理服务器接收所述第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分,并将所述子文件发送至所述客户端。本发明实施例提高了文件传输效率。

权利要求书

1.  一种文件传输方法,其特征在于,包括:
管理服务器接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;
所述管理服务器根据所述文件信息,请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;
所述管理服务器接收所述第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分,并将所述子文件发送至所述客户端。

2.
  根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述管理服务器记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;
在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,所述管理服务器与所述第二虚拟机建立连接,并且根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。

3.
  根据权利要求1所述的方法,其特征在于,所述管理服务器接收客户端发送的文件请求报文之前,还包括:
所述管理服务器向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至所述管理服务器。

4.
  根据权利要求1所述的方法,其特征在于,所述管理服务器请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件,包括:
所述管理服务器将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识;
所述管理服务器向所述第一虚拟机发送更改报文源端信息后的所述文件请求报文,以使得所述第一虚拟机根据更改报文源端信息后的所述文件请求报文获取所述目标文件的子文件,并根据所述服务器标识将所述目标文件的子文件 发送至所述管理服务器。

5.
  根据权利要求1所述的方法,其特征在于,所述管理服务器将所述子文件发送至所述客户端,包括:
所述管理服务器将所述子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;
所述管理服务器将所述文件报文发送至所述客户端。

6.
  一种管理服务器,其特征在于,包括:
接收单元,用于接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;以及,接收第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分;
发送单元,用于根据所述文件信息请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;并将所述子文件发送至所述客户端。

7.
  根据权利要求6所述的服务器,其特征在于,还包括:处理单元;
所述处理单元,用于记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;以及,在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,与所述第二虚拟机建立连接;
所述发送单元,还用于根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。

8.
  根据权利要求7所述的服务器,其特征在于,
所述处理单元,还用于将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识,以使得所述第一虚拟机根据所述服务器标识将所述目标文件的子文件发送至所述管理服务器。

9.
  根据权利要求7所述的服务器,其特征在于,
所述处理单元,还用于将所述目标文件的子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;
所述发送单元,具体用于将所述文件报文发送至所述客户端。

10.
  根据权利要求6所述的服务器,其特征在于,
所述发送单元,还用于在所述接收单元接收客户端发送的文件请求报文之前,向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至管理服务器。

说明书

一种文件传输方法和管理服务器
技术领域
本发明涉及网络技术,特别涉及一种文件传输方法和管理服务器。
背景技术
虚拟化技术是一种实现计算资源彼此隔离的技术,例如,服务器虚拟化技术是通过专用的虚拟化软件(例如VMware)在一台物理服务器上虚拟出多台虚拟机(Virtual Machine,简称:VM),每台VM都独立运行,拥有自己的配置信息(该配置信息例如包括:操作系统以及内存、网卡等虚拟硬件环境)。
相关技术中也已经开始使用虚拟化技术来提供业务服务,例如,文件传输服务就使用了上述的虚拟化技术。客户端向VM发送文件下载请求,VM根据该请求从文件服务器获取客户端请求的文件,并将文件发送至客户端;有时出于各种原因例如为使得负载均衡,需要进行虚拟机的迁移,即需要将客户端的文件传输服务转由另一个VM来执行,那么此时原VM将断开与客户端的连接,等新VM配置完成并启动后,客户端再与新VM连接通过该新VM获取文件,那么这个过程中将会造成文件传输业务的中断,使得文件传输的效率较低。
发明内容
有鉴于此,本发明提供一种文件传输方法和管理服务器,以提高文件传输效率。
具体地,本发明是通过如下技术方案实现的:
第一方面,提供一种文件传输方法,包括:
管理服务器接收客户端发送的文件请求报文,所述文件请求报文携带目的 地址信息、以及将要获取的目标文件的文件信息;
所述管理服务器根据所述文件信息,请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;
所述管理服务器接收所述第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分,并将所述子文件发送至所述客户端。
可选的,所述方法还包括:所述管理服务器记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,所述管理服务器与所述第二虚拟机建立连接,并且根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。
可选的,所述管理服务器接收客户端发送的文件请求报文之前,还包括:所述管理服务器向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至所述管理服务器。
可选的,所述管理服务器请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件,包括:所述管理服务器将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识;所述管理服务器向所述第一虚拟机发送更改报文源端信息后的所述文件请求报文,以使得所述第一虚拟机根据更改报文源端信息后的所述文件请求报文获取所述目标文件的子文件,并根据所述服务器标识将所述目标文件的子文件发送至所述管理服务器。
可选的,所述管理服务器将所述子文件发送至所述客户端,包括:所述管理服务器将所述子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;所述管理服务器将所述文件报文发送至所述客户端。
第二方面,提供一种管理服务器,包括:
接收单元,用于接收客户端发送的文件请求报文,所述文件请求报文携带 目的地址信息、以及将要获取的目标文件的文件信息;以及,接收第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分;
发送单元,用于根据所述文件信息请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;并将所述子文件发送至所述客户端。
可选的,还包括:处理单元;所述处理单元,用于记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;以及,在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,与所述第二虚拟机建立连接;所述发送单元,还用于根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。
可选的,所述处理单元,还用于将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识,以使得所述第一虚拟机根据所述服务器标识将所述目标文件的子文件发送至所述管理服务器。
可选的,所述处理单元,还用于将所述目标文件的子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;所述发送单元,具体用于将所述文件报文发送至所述客户端。
可选的,所述发送单元,还用于在所述接收单元接收客户端发送的文件请求报文之前,向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至管理服务器。
本发明实施例的文件传输方法和管理服务器,管理服务器与客户端之间建立连接,由管理服务器执行文件请求、传送文件给客户端,这种方式使得即使发生了VM的迁移,也仅是管理服务器与VM之间的连接可能会中断,但是管理服务器与客户端的连接是保持的,那么客户端就会感觉其文件传输业务的连接一直是连续的,未发生中断;VM的迁移也不会如现有技术那样触发客户端侧重新执行连接的建立流程,节省了信令程序,从而提高了文件传 输效率。
附图说明
图1为本发明实施例提供的文件传输方法的可选应用场景示意图;
图2为发明实施例提供的一种文件传输方法的流程示意图;
图3为本发明实施例提供的另一种文件传输方法的信令示意图;
图4为本发明实施例提供的一种管理服务器的结构示意图;
图5为本发明实施例提供的另一种管理服务器的结构示意图。
具体实施方式
本发明实施例提供了一种文件传输方法,以使得在虚拟机迁移的场景下提高文件传输效率;参见图1,图1示例了一种可选的应用场景,该场景中包括了文件传输业务所涉及到的一些设备,如下:
文件服务器:用于存储文件,客户端(例如,某个用户所使用的电脑)想要获取某个文件时,比如用户通过客户端上设置的下载软件想要获取某个PDF文档;那么这个文件是存储在文件服务器的。
虚拟机VM:图1中示例了两个物理服务器,分别是服务器A和服务器B,其中的服务器A上设置有VM1,服务器B上设置有VM2和VM3,VM是通过在物理服务器上采用虚拟化软件虚拟出的设备,各台VM都独立运行,拥有自己的操作系统、应用程序、内存、网卡等等。
虚拟交换机VSwitch:执行与普通交换机类似的功能,例如转发报文,因此,虚拟交换机与各个VM连接。
智能管理中心(intelligence Management Center,IMC):可以将IMC称为管理服务器,该IMC可以具有多种管理功能,其中一种管理功能例如是管理图1中所示的各个VM。VM的配置信息(例如操作系统、内存、网卡等)可以是从IMC下发的,并且存储在IMC;如果新建一个VM,也是由IMC来负责启动, 下发配置信息。其中,在IMC管理VM时,IMC对应每个VM有一个逻辑口(该逻辑口可以认为相当于VM的标识),IMC将VM的配置信息通过该VM对应的逻辑口下发到该VM。
客户端:例如是,用户使用的电脑;其通过internet与虚拟交换机连接。
客户端如果要进行文件传输,会通过虚拟交换机向VM1(以VM1为例)发送文件请求报文,携带客户端将要获取的目标文件对应的文件信息(该文件信息例如是,文件的存储地址、或者文件名称等),该目标文件存储在文件服务器中。VM1根据该请求从文件服务器获取到目标文件后反馈给客户端。
那么本发明实施例的文件传输方法的方案思想是,截断上述VM1和客户端之间的直接交互通信,由管理服务器IMC执行“文件代答功能”。比如,在上面描述的客户端获取目标文件的过程中,管理服务器截获客户端向VM1发送的文件请求报文后,由管理服务器向VM1发送该请求,相当于“管理服务器代客户端请求文件”;同理,VM1获取到文件后也是发送给管理服务器,由管理服务器将文件发送至客户端,相当于“管理服务器代VM1反馈客户端的文件”,因此可以形象的称为“文件代答功能”。
下面的各实施例将更加详细的描述本发明实施例的文件传输方法:
实施例一
图2为本发明实施例提供的一种文件传输方法的流程示意图,本实施例的方法是由管理服务器来执行的,本实施例的管理服务器以IMC为例,可以包括如下步骤:
201、管理服务器接收客户端发送的文件请求报文,该文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;
其中,客户端发送的文件请求报文,实际上客户端是发往虚拟机的,以VM1为例,客户端会在该文件请求报文中携带目的地址信息,例如上述的VM1的地址信息,以指示VM1从文件服务器获取文件。而在本实施例中,该发往VM1的文件请求报文可以被虚拟交换机(VSwitch)转发至管理服务器例如IMC,该报文中携带目的地址信息(例如VM1的地址信息)、以及将要获取的目标文件 的文件信息(例如目标文件的地址信息、或者文件名称等)。
可选的,如果要实现虚拟交换机将客户端发送的文件请求报文转发至IMC,可以预先由IMC向虚拟交换机下发报文过滤规则,该报文过滤规则在虚拟交换机上例如以ACL的形式存在;虚拟交换机在接收到的报文匹配该规则时,就会向IMC上报该报文。例如,如果设置规则是“源IP地址是****的报文,转发至IMC”,那么交换机将接收到的源IP地址为****的报文上送IMC,IMC接收到该报文。
202、管理服务器根据文件信息,请求目的地址信息对应的第一虚拟机,从文件服务器获取目标文件;
例如在本步骤中,IMC根据文件请求报文中携带的VM1的地址信息,请求VM1从文件服务器获取报文中携带的文件信息对应的目标文件。
可选的,IMC可以将虚拟交换机转发过来的客户端的文件请求报文,稍加改动后再指示虚拟交换机发送至VM1,以使得VM1根据该报文从文件服务器获取目标文件。上述的稍加改动的意思是,文件请求报文最初携带的作为报文源端信息的客户端标识,例如客户端的IP地址,IMC可以将该客户端标识修改为用于标识IMC自己的服务器标识,比如IMC自己的IP地址,这样做的目的是使得VM1以为文件请求报文是由IMC发送的,而不是客户端发送,VM1反馈的文件才会发送至IMC。
203、管理服务器接收所述第一虚拟机发送的子文件,该子文件是目标文件的其中一个文件部分;
本实施例中,第一虚拟机从文件服务器获取目标文件时,可以采用文件传输协议(File Transfer Protocol,FTP)的文件传输方式,将要下载的目标文件(或者文件压缩包)划分成几个文件部分,每一个文件部分可以称为子文件,各个子文件可以分开传送,例如,每一子文件采用一个线程进行下载,因此管理服务器在接收目标文件时也是接收子文件。
此外,如上所述的,管理服务器在202中请求VM1获取目标文件时,已经将报文中的报文源端信息设置为IMC自己的标识,那么VM1就会认为是IMC 在请求文件,因此会在获取到目标文件的子文件反馈至IMC,而不是客户端。
204、管理服务器将所述子文件发送至所述客户端。
本步骤中,再由IMC将目标文件的子文件返回至客户端。此外,管理服务器在将子文件返回至客户端之前,也可以先将携带子文件的文件数据的文件报文的报文源端信息设置为用于标识VM1的标识(例如,将该文件报文的源IP地址设置为第一虚拟机的IP地址),使得从客户端看来,其本来请求的是向VM1请求报文,而现在也是由VM1来返回报文,客户端是不会感知到IMC的代答功能的,其仍然是认为与VM1直接交互。
上述本实施例的文件传输方法,管理服务器与客户端之间建立连接,由管理服务器执行文件请求、传送文件给客户端,这种方式使得即使发生了VM的迁移,也仅是管理服务器与VM之间的连接可能会中断,但是管理服务器与客户端的连接是保持的,那么客户端就会感觉其文件传输业务的连接一直是连续的,未发生中断;VM的迁移也不会如现有技术那样触发客户端侧重新执行连接的建立流程,节省了信令程序,从而提高了文件传输效率。
实施例二
图3为本发明实施例提供的另一种文件传输方法的信令示意图,本实施例示出了在文件传输的过程中各设备之间的交互,并且本实施例以一种可选的传输方式为例,详细描述了该文件传输方法,如图3所示,包括:
301、IMC向虚拟交换机发送报文过滤规则;
其中,在虚拟交换机开始工作前,可以由IMC向虚拟交换机下发报文过滤规则,以用于虚拟交换机根据该规则将一些指定的报文上送至IMC。
例如,虚拟交换机可能会接收到很多种类型的报文,而IMC只想要虚拟交换机上送其中的“文件传输业务”的报文,则会将该业务的报文所具有的特点对应的一些字段信息设置在报文过滤规则中;比如,如果报文中的“源端口号”字段是“21”,则表明该报文是FTP业务报文,IMC据此可以设置规则为“如果报文的源端口号字段的值是21,则上送”。
又例如,IMC可以通过设置规则只对某些特定用户的报文进行过滤,比如 对于IP地址是****的客户端,IMC想要虚拟交换机上送报文,那么可以设置规则为“如果报文中的源IP地址是****,则上送”。
通过上述设置,可以采用本发明实施例的文件传输方法,来保证一些重要的指定用户或者特殊业务的业务使用,使得其业务不会发生中断。
302、虚拟交换机接收客户端发送的文件请求报文;
其中,该文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;该目的地址信息例如是第一虚拟机的地址信息,该第一虚拟机例如是图1中所示的VM1,该文件信息例如是文件地址或者文件名称等。
303、虚拟交换机将报文转发至IMC;
其中,虚拟交换机在从客户端接收到文件请求报文后,将根据报文过滤规则来查看报文是否与该规则匹配;例如查看报文中的源IP地址是否是规则中设置的IP地址。如果匹配报文过滤规则,则虚拟交换机将文件请求报文转发至管理服务器。
304、IMC应答报文,建立与客户端的连接;
其中,IMC在接收到文件请求报文后,可以向客户端返回应答,建立与客户端的连接;这里的连接流程当然也是经过虚拟交换机进行的,通过连接流程IMC可以与客户端协商一些通信参数,例如,在本实施例的文件传输业务中,可以协商当IMC经过某个时间段(例如,1小时)不向客户端传送文件时,两者可以断开连接。
305、IMC对文件请求报文进行处理;
本步骤中,IMC可以将报文中的作为报文源端信息的客户端标识,更改为标识IMC的服务器标识。这里的客户端标识或服务器标识,可以包括IP地址和端口号。如下:
IMC可以将报文中的源IP地址进行修改,如果将客户端对应的源IP地址称为第一源IP地址,将IMC自己的IP地址称为第二IP地址,那么就是将第一源IP地址更改为第二IP地址。
此外,报文中的源端口号,在处理之前是21,可以将其更改为IMC对应的 端口号2000。并且,IMC还可以通过建立表项来存储这些信息,比如IMC在将客户端的IP地址更改为自己的IP地址后,还需要将客户端对应的IP地址也记录下来,以用于在后续给客户端返回文件时使用。
306、IMC将向VM1请求获取目标文件;
例如,IMC可以根据客户端发送的文件请求报文中携带的VM1的地址信息,向VM1发送获取目标文件的请求,该请求中携带目标文件的文件信息,并且,经过在305中的处理,该请求的源地址也已经是IMC的地址,这样VM1就会认为是IMC请求获取目标文件。
307、VM1从文件服务器获取文件;
其中,VM1根据文件信息获取文件。本实施例中,可以采用文件传输协议(File Transfer Protocol,FTP)方式的文件传输,将要下载的目标文件(或者文件压缩包)划分成几个文件部分,每一个文件部分可以称为子文件,各个子文件可以分开传送,例如,每一子文件采用一个线程进行下载。
308、VM1将文件发送至IMC;
其中,VM1根据在306中请求文件的报文中携带的IMC的IP地址(即第二源IP地址),将从文件服务器获取的文件发送至IMC。在发送文件时,可以是将各个子文件逐个发送,形象的说,也就是可以将目标文件一段一段地逐步发送至IMC。
309、IMC重新组装报文;
本步骤中,IMC在接收到VM1发送的子文件后,将记录子文件对应的传输位置信息,该传输位置信息用于表示目标文件的传输进度;例如,目标文件总共是320k,那么在接收到第一个子文件时,IMC收到了该目标文件的其中50k,可以记录传输位置信息是“50k”对应的位置,当接收到第二个子文件时,IMC总共收到了该目标文件中的100k,则记录传输位置信息是“100k”对应的位置。以上只是举例,具体实施中可能数值与上述不同,但需要说明的是,记录传输位置信息,是用于记录该目标文件传输到哪个位置了(或者称为断点位置)。
IMC可以通过表项来记录为客户端下载文件时的信息对应关系,如表1:

客户端IP客户端口号源IP源端口号断点位置1.1.1.2212.2.2.220000Oxabc34d89

参见上述的表1,在为IP地址是1.1.1.2的客户端下载文件,并且当前的断点位置是Oxabc34d89,传了该文件的其中一部分;客户端口号21表示这是一个FTP文件下载方式;源IP和源端口号是IMC自己的标识。IMC每次接收到子文件,都会刷新断点位置字段的数值,即实时更新传输位置信息。
本步骤中,IMC将目标文件的文件数据(例如子文件的数据)携带在文件报文中,并且将该文件报文的报文源端信息设置为用于标识VM1(该VM1可以称为第一虚拟机)的第一虚拟机标识,例如将文件报文中的源IP地址设置为VM1的IP地址,并将报文中的源端口号设置为VM1对应的端口号,这样是为了使得在将文件报文发送至客户端时,客户端仍然是认为该报文是从VM1直接发送过来的,不会感知到IMC的代答功能。
310、IMC将报文发送至客户端;
其中,IMC可以在接收到VM1逐个发送的子文件时,将子文件也逐个发送至客户端。
311、VM1迁移到VM3;
其中,本步骤发生了VM的迁移操作,参见图1,此时想要让物理服务器B上的VM3来代替VM1负责客户端的文件传输,那么也是由IMC向VM3下发配置信息。
需要说明的是,本实施例中的IMC在执行VM3的配置、启动等过程中,始终继续保持与VM1的连接,也就是说,客户端的文件传输是不会停止的,FTP仍然通过VM1访问文件服务器获取文件。
312、IMC建立与VM3的连接;
其中,在VM3配置完成启动后,IMC可以建立与VM3的连接。
313、IMC断开与VM1的连接;
例如,在VM3连接后,IMC可以断开与VM1的连接,以节省传输资源。
314、IMC向VM3发送文件获取请求;
本步骤中,由于VM1迁移至VM3,因此VM3的IP地址与VM1的IP地址相同。在IMC与VM1断开连接后,IMC根据文件请求报文携带的目的地址信息向VM3(可以称为第二虚拟机)继续请求获取该文件。具体的,IMC根据当前的传输位置信息对应的位置请求VM3继续获取目标文件的其余文件部分。例如,IMC通过VM1获取了目标文件的150k的前半部分,则可以指示VM3从150k对应的位置开始,继续获取目标文件中未获取的文件部分。
315、VM3从文件服务器获取文件;
316、VM3反馈文件给IMC;
317、IMC将文件发送至客户端;
在该步骤中,IMC会将文件数据封装在文件报文中发送给客户端,并且该报文的源IP地址是VM3的IP地址,客户端会认为报文是VM3发送的。
由上述的例子可以看到,首先,IMC与客户端之间的连接是保持一直不断的,而且,IMC在建立了与新的VM3的连接后才断开与VM1的连接,使得文件传输不会中断;并且从客户端来看,由于客户端与IMC的连接一直维持,客户端是感知不到VM的切换的。
此外,上述的在VM迁移时VM1保持与IMC的连接,直至VM3与IMC连接完成,这种方式使得从IMC侧来看,文件传输的源头不会中断,也就是一直有VM可以从文件服务器获取文件,提高了文件传输效率。
但是,即使VM迁移时发生连接的暂时断开,本实施例的方法也可以提高文件传输效率。举例如下:假设要进行VM的迁移,从VM1迁移到VM3,在这个迁移过程中,VM3配置完成并启动之前,IMC可以先断开与VM1的连接,此时就会出现一个空档期(VM1已经断开,但是VM3还未连接),假设这个空档期需要3分钟。
再看IMC侧,由于空档期的存在,文件传输的源头是暂时中断的,没有VM从文件服务器获取还未传输完成的目标文件,但是IMC与客户端的连接是一直保持的,并且假设IMC与客户端预先已经协商好了所能容忍的空档期间隔是5 分钟,即在5分钟内即使获取不到文件两者的连接依旧保持,那么即使前述的存在空档期,IMC与客户端的控制面连接依然存在。这样,在3分钟以后IMC建立与VM3的连接,文件传输重新开始,继续传输文件。
这种方式,客户端不需要再重新执行连接建立流程,因为与IMC的连接是一直存在的,而且能够尽快的开始文件传输;与现有的传输方式比较的话,现有IMC与VM3连接后,客户端还要重新开始与VM3的建立流程,并且VM3要从文件源头重新开始传输,不会从断点位置继续传输,因此,本实施例的方法提高了文件传输效率。
实施例三
图4为本发明实施例提供的一种管理服务器的结构示意图,该服务器可以执行本发明实施例的文件传输方法,其具体的工作原理可以结合方法实施例;该服务器例如是IMC。如图4所示,该管理服务器可以包括:接收单元41和发送单元42;其中,
接收单元41,用于接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;以及,接收第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分;
发送单元42,用于根据所述文件信息请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;并将所述子文件发送至所述客户端。
图5为本发明实施例提供的另一种管理服务器的结构示意图,在图4所示结构的基础上,该服务器还可以包括:处理单元43;
处理单元42,用于记录与子文件对应的传输位置信息,传输位置信息用于表示目标文件的传输进度;以及,在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,与所述第二虚拟机建立连接;
发送单元43,还用于根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。
可选的,处理单元43,还用于将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识,以使得所 述第一虚拟机根据所述服务器标识将所述目标文件的子文件发送至所述管理服务器。例如,可以将文件请求报文中包括的第一源IP地址更改为第二源IP地址,所述第一源IP地址是所述客户端的IP地址,所述第二源IP地址是所述管理服务器的IP地址,以使得第一虚拟机根据所述第二源IP地址将所述目标文件的文件部分发送至所述管理服务器。
可选的,处理单元43,还用于将所述目标文件的子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;例如,将所述目标文件的子文件的文件数据携带在文件报文中,并且将所述文件报文的源IP地址设置为第一虚拟机的IP地址;
所述发送单元42,具体用于将所述文件报文发送至所述客户端。
可选的,发送单元42,还用于在所述接收单元接收客户端发送的文件请求报文之前,向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至管理服务器。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

一种文件传输方法和管理服务器.pdf_第1页
第1页 / 共14页
一种文件传输方法和管理服务器.pdf_第2页
第2页 / 共14页
一种文件传输方法和管理服务器.pdf_第3页
第3页 / 共14页
点击查看更多>>
资源描述

《一种文件传输方法和管理服务器.pdf》由会员分享,可在线阅读,更多相关《一种文件传输方法和管理服务器.pdf(14页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104158868A43申请公布日20141119CN104158868A21申请号201410384681622申请日20140806H04L29/0820060171申请人杭州华三通信技术有限公司地址310052浙江省杭州市滨江区长河路466号72发明人徐燕成吴文欢74专利代理机构北京博思佳知识产权代理有限公司11415代理人林祥54发明名称一种文件传输方法和管理服务器57摘要本发明提供一种文件传输方法和管理服务器,其中方法包括管理服务器接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;所述管理服务器根据所述文件信息,请求所。

2、述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;所述管理服务器接收所述第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分,并将所述子文件发送至所述客户端。本发明实施例提高了文件传输效率。51INTCL权利要求书2页说明书8页附图3页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书8页附图3页10申请公布号CN104158868ACN104158868A1/2页21一种文件传输方法,其特征在于,包括管理服务器接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;所述管理服务器根据所述文件信息,请求所述目的。

3、地址信息对应的第一虚拟机从文件服务器获取所述目标文件;所述管理服务器接收所述第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分,并将所述子文件发送至所述客户端。2根据权利要求1所述的方法,其特征在于,所述方法还包括所述管理服务器记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,所述管理服务器与所述第二虚拟机建立连接,并且根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。3根据权利要求1所述的方法,其特征在于,所述管理服务器接收客户端发送的文件请求。

4、报文之前,还包括所述管理服务器向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至所述管理服务器。4根据权利要求1所述的方法,其特征在于,所述管理服务器请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件,包括所述管理服务器将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识;所述管理服务器向所述第一虚拟机发送更改报文源端信息后的所述文件请求报文,以使得所述第一虚拟机根据更改报文源端信息后的所述文件请求报文获取所述目标文件的子文件,并根据所述服务器标识将所述目标文。

5、件的子文件发送至所述管理服务器。5根据权利要求1所述的方法,其特征在于,所述管理服务器将所述子文件发送至所述客户端,包括所述管理服务器将所述子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;所述管理服务器将所述文件报文发送至所述客户端。6一种管理服务器,其特征在于,包括接收单元,用于接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;以及,接收第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分;发送单元,用于根据所述文件信息请求所述目的地址信息对应的第一虚拟机从文件服务器。

6、获取所述目标文件;并将所述子文件发送至所述客户端。7根据权利要求6所述的服务器,其特征在于,还包括处理单元;所述处理单元,用于记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;以及,在所述管理服务器将所述第一虚拟机迁移至第二虚权利要求书CN104158868A2/2页3拟机时,与所述第二虚拟机建立连接;所述发送单元,还用于根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。8根据权利要求7所述的服务器,其特征在于,所述处理单元,还用于将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务。

7、器的服务器标识,以使得所述第一虚拟机根据所述服务器标识将所述目标文件的子文件发送至所述管理服务器。9根据权利要求7所述的服务器,其特征在于,所述处理单元,还用于将所述目标文件的子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;所述发送单元,具体用于将所述文件报文发送至所述客户端。10根据权利要求6所述的服务器,其特征在于,所述发送单元,还用于在所述接收单元接收客户端发送的文件请求报文之前,向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至管理服务器。权利要。

8、求书CN104158868A1/8页4一种文件传输方法和管理服务器技术领域0001本发明涉及网络技术,特别涉及一种文件传输方法和管理服务器。背景技术0002虚拟化技术是一种实现计算资源彼此隔离的技术,例如,服务器虚拟化技术是通过专用的虚拟化软件例如VMWARE在一台物理服务器上虚拟出多台虚拟机VIRTUALMACHINE,简称VM,每台VM都独立运行,拥有自己的配置信息该配置信息例如包括操作系统以及内存、网卡等虚拟硬件环境。0003相关技术中也已经开始使用虚拟化技术来提供业务服务,例如,文件传输服务就使用了上述的虚拟化技术。客户端向VM发送文件下载请求,VM根据该请求从文件服务器获取客户端请求。

9、的文件,并将文件发送至客户端;有时出于各种原因例如为使得负载均衡,需要进行虚拟机的迁移,即需要将客户端的文件传输服务转由另一个VM来执行,那么此时原VM将断开与客户端的连接,等新VM配置完成并启动后,客户端再与新VM连接通过该新VM获取文件,那么这个过程中将会造成文件传输业务的中断,使得文件传输的效率较低。发明内容0004有鉴于此,本发明提供一种文件传输方法和管理服务器,以提高文件传输效率。0005具体地,本发明是通过如下技术方案实现的0006第一方面,提供一种文件传输方法,包括0007管理服务器接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;。

10、0008所述管理服务器根据所述文件信息,请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;0009所述管理服务器接收所述第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分,并将所述子文件发送至所述客户端。0010可选的,所述方法还包括所述管理服务器记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,所述管理服务器与所述第二虚拟机建立连接,并且根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。0011可选的,所述管理服务器接收客户端发。

11、送的文件请求报文之前,还包括所述管理服务器向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至所述管理服务器。0012可选的,所述管理服务器请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件,包括所述管理服务器将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识;所述管理服务器向所述说明书CN104158868A2/8页5第一虚拟机发送更改报文源端信息后的所述文件请求报文,以使得所述第一虚拟机根据更改报文源端信息后的所述文件请求报文获取所述目标文件的子文件,并根。

12、据所述服务器标识将所述目标文件的子文件发送至所述管理服务器。0013可选的,所述管理服务器将所述子文件发送至所述客户端,包括所述管理服务器将所述子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;所述管理服务器将所述文件报文发送至所述客户端。0014第二方面,提供一种管理服务器,包括0015接收单元,用于接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;以及,接收第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分;0016发送单元,用于根据所述文件信息请求所述目的地址信息。

13、对应的第一虚拟机从文件服务器获取所述目标文件;并将所述子文件发送至所述客户端。0017可选的,还包括处理单元;所述处理单元,用于记录与所述子文件对应的传输位置信息,所述传输位置信息用于表示所述目标文件的传输进度;以及,在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,与所述第二虚拟机建立连接;所述发送单元,还用于根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。0018可选的,所述处理单元,还用于将所述文件请求报文中包括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识,以使得所述第一虚拟机根据所述服务器标识将所述目标文件。

14、的子文件发送至所述管理服务器。0019可选的,所述处理单元,还用于将所述目标文件的子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;所述发送单元,具体用于将所述文件报文发送至所述客户端。0020可选的,所述发送单元,还用于在所述接收单元接收客户端发送的文件请求报文之前,向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至管理服务器。0021本发明实施例的文件传输方法和管理服务器,管理服务器与客户端之间建立连接,由管理服务器执行文件请求、传送文件给客户端,这种。

15、方式使得即使发生了VM的迁移,也仅是管理服务器与VM之间的连接可能会中断,但是管理服务器与客户端的连接是保持的,那么客户端就会感觉其文件传输业务的连接一直是连续的,未发生中断;VM的迁移也不会如现有技术那样触发客户端侧重新执行连接的建立流程,节省了信令程序,从而提高了文件传输效率。附图说明0022图1为本发明实施例提供的文件传输方法的可选应用场景示意图;0023图2为发明实施例提供的一种文件传输方法的流程示意图;0024图3为本发明实施例提供的另一种文件传输方法的信令示意图;0025图4为本发明实施例提供的一种管理服务器的结构示意图;说明书CN104158868A3/8页60026图5为本发明。

16、实施例提供的另一种管理服务器的结构示意图。具体实施方式0027本发明实施例提供了一种文件传输方法,以使得在虚拟机迁移的场景下提高文件传输效率;参见图1,图1示例了一种可选的应用场景,该场景中包括了文件传输业务所涉及到的一些设备,如下0028文件服务器用于存储文件,客户端例如,某个用户所使用的电脑想要获取某个文件时,比如用户通过客户端上设置的下载软件想要获取某个PDF文档;那么这个文件是存储在文件服务器的。0029虚拟机VM图1中示例了两个物理服务器,分别是服务器A和服务器B,其中的服务器A上设置有VM1,服务器B上设置有VM2和VM3,VM是通过在物理服务器上采用虚拟化软件虚拟出的设备,各台V。

17、M都独立运行,拥有自己的操作系统、应用程序、内存、网卡等等。0030虚拟交换机VSWITCH执行与普通交换机类似的功能,例如转发报文,因此,虚拟交换机与各个VM连接。0031智能管理中心INTELLIGENCEMANAGEMENTCENTER,IMC可以将IMC称为管理服务器,该IMC可以具有多种管理功能,其中一种管理功能例如是管理图1中所示的各个VM。VM的配置信息例如操作系统、内存、网卡等可以是从IMC下发的,并且存储在IMC;如果新建一个VM,也是由IMC来负责启动,下发配置信息。其中,在IMC管理VM时,IMC对应每个VM有一个逻辑口该逻辑口可以认为相当于VM的标识,IMC将VM的配置。

18、信息通过该VM对应的逻辑口下发到该VM。0032客户端例如是,用户使用的电脑;其通过INTERNET与虚拟交换机连接。0033客户端如果要进行文件传输,会通过虚拟交换机向VM1以VM1为例发送文件请求报文,携带客户端将要获取的目标文件对应的文件信息该文件信息例如是,文件的存储地址、或者文件名称等,该目标文件存储在文件服务器中。VM1根据该请求从文件服务器获取到目标文件后反馈给客户端。0034那么本发明实施例的文件传输方法的方案思想是,截断上述VM1和客户端之间的直接交互通信,由管理服务器IMC执行“文件代答功能”。比如,在上面描述的客户端获取目标文件的过程中,管理服务器截获客户端向VM1发送的。

19、文件请求报文后,由管理服务器向VM1发送该请求,相当于“管理服务器代客户端请求文件”;同理,VM1获取到文件后也是发送给管理服务器,由管理服务器将文件发送至客户端,相当于“管理服务器代VM1反馈客户端的文件”,因此可以形象的称为“文件代答功能”。0035下面的各实施例将更加详细的描述本发明实施例的文件传输方法0036实施例一0037图2为本发明实施例提供的一种文件传输方法的流程示意图,本实施例的方法是由管理服务器来执行的,本实施例的管理服务器以IMC为例,可以包括如下步骤0038201、管理服务器接收客户端发送的文件请求报文,该文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;0。

20、039其中,客户端发送的文件请求报文,实际上客户端是发往虚拟机的,以VM1为例,客户端会在该文件请求报文中携带目的地址信息,例如上述的VM1的地址信息,以指示VM1说明书CN104158868A4/8页7从文件服务器获取文件。而在本实施例中,该发往VM1的文件请求报文可以被虚拟交换机VSWITCH转发至管理服务器例如IMC,该报文中携带目的地址信息例如VM1的地址信息、以及将要获取的目标文件的文件信息例如目标文件的地址信息、或者文件名称等。0040可选的,如果要实现虚拟交换机将客户端发送的文件请求报文转发至IMC,可以预先由IMC向虚拟交换机下发报文过滤规则,该报文过滤规则在虚拟交换机上例如以。

21、ACL的形式存在;虚拟交换机在接收到的报文匹配该规则时,就会向IMC上报该报文。例如,如果设置规则是“源IP地址是的报文,转发至IMC”,那么交换机将接收到的源IP地址为的报文上送IMC,IMC接收到该报文。0041202、管理服务器根据文件信息,请求目的地址信息对应的第一虚拟机,从文件服务器获取目标文件;0042例如在本步骤中,IMC根据文件请求报文中携带的VM1的地址信息,请求VM1从文件服务器获取报文中携带的文件信息对应的目标文件。0043可选的,IMC可以将虚拟交换机转发过来的客户端的文件请求报文,稍加改动后再指示虚拟交换机发送至VM1,以使得VM1根据该报文从文件服务器获取目标文件。。

22、上述的稍加改动的意思是,文件请求报文最初携带的作为报文源端信息的客户端标识,例如客户端的IP地址,IMC可以将该客户端标识修改为用于标识IMC自己的服务器标识,比如IMC自己的IP地址,这样做的目的是使得VM1以为文件请求报文是由IMC发送的,而不是客户端发送,VM1反馈的文件才会发送至IMC。0044203、管理服务器接收所述第一虚拟机发送的子文件,该子文件是目标文件的其中一个文件部分;0045本实施例中,第一虚拟机从文件服务器获取目标文件时,可以采用文件传输协议FILETRANSFERPROTOCOL,FTP的文件传输方式,将要下载的目标文件或者文件压缩包划分成几个文件部分,每一个文件部分。

23、可以称为子文件,各个子文件可以分开传送,例如,每一子文件采用一个线程进行下载,因此管理服务器在接收目标文件时也是接收子文件。0046此外,如上所述的,管理服务器在202中请求VM1获取目标文件时,已经将报文中的报文源端信息设置为IMC自己的标识,那么VM1就会认为是IMC在请求文件,因此会在获取到目标文件的子文件反馈至IMC,而不是客户端。0047204、管理服务器将所述子文件发送至所述客户端。0048本步骤中,再由IMC将目标文件的子文件返回至客户端。此外,管理服务器在将子文件返回至客户端之前,也可以先将携带子文件的文件数据的文件报文的报文源端信息设置为用于标识VM1的标识例如,将该文件报文。

24、的源IP地址设置为第一虚拟机的IP地址,使得从客户端看来,其本来请求的是向VM1请求报文,而现在也是由VM1来返回报文,客户端是不会感知到IMC的代答功能的,其仍然是认为与VM1直接交互。0049上述本实施例的文件传输方法,管理服务器与客户端之间建立连接,由管理服务器执行文件请求、传送文件给客户端,这种方式使得即使发生了VM的迁移,也仅是管理服务器与VM之间的连接可能会中断,但是管理服务器与客户端的连接是保持的,那么客户端就会感觉其文件传输业务的连接一直是连续的,未发生中断;VM的迁移也不会如现有技术那样触发客户端侧重新执行连接的建立流程,节省了信令程序,从而提高了文件传输效率。说明书CN10。

25、4158868A5/8页80050实施例二0051图3为本发明实施例提供的另一种文件传输方法的信令示意图,本实施例示出了在文件传输的过程中各设备之间的交互,并且本实施例以一种可选的传输方式为例,详细描述了该文件传输方法,如图3所示,包括0052301、IMC向虚拟交换机发送报文过滤规则;0053其中,在虚拟交换机开始工作前,可以由IMC向虚拟交换机下发报文过滤规则,以用于虚拟交换机根据该规则将一些指定的报文上送至IMC。0054例如,虚拟交换机可能会接收到很多种类型的报文,而IMC只想要虚拟交换机上送其中的“文件传输业务”的报文,则会将该业务的报文所具有的特点对应的一些字段信息设置在报文过滤规。

26、则中;比如,如果报文中的“源端口号”字段是“21”,则表明该报文是FTP业务报文,IMC据此可以设置规则为“如果报文的源端口号字段的值是21,则上送”。0055又例如,IMC可以通过设置规则只对某些特定用户的报文进行过滤,比如对于IP地址是的客户端,IMC想要虚拟交换机上送报文,那么可以设置规则为“如果报文中的源IP地址是,则上送”。0056通过上述设置,可以采用本发明实施例的文件传输方法,来保证一些重要的指定用户或者特殊业务的业务使用,使得其业务不会发生中断。0057302、虚拟交换机接收客户端发送的文件请求报文;0058其中,该文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息。

27、;该目的地址信息例如是第一虚拟机的地址信息,该第一虚拟机例如是图1中所示的VM1,该文件信息例如是文件地址或者文件名称等。0059303、虚拟交换机将报文转发至IMC;0060其中,虚拟交换机在从客户端接收到文件请求报文后,将根据报文过滤规则来查看报文是否与该规则匹配;例如查看报文中的源IP地址是否是规则中设置的IP地址。如果匹配报文过滤规则,则虚拟交换机将文件请求报文转发至管理服务器。0061304、IMC应答报文,建立与客户端的连接;0062其中,IMC在接收到文件请求报文后,可以向客户端返回应答,建立与客户端的连接;这里的连接流程当然也是经过虚拟交换机进行的,通过连接流程IMC可以与客户。

28、端协商一些通信参数,例如,在本实施例的文件传输业务中,可以协商当IMC经过某个时间段例如,1小时不向客户端传送文件时,两者可以断开连接。0063305、IMC对文件请求报文进行处理;0064本步骤中,IMC可以将报文中的作为报文源端信息的客户端标识,更改为标识IMC的服务器标识。这里的客户端标识或服务器标识,可以包括IP地址和端口号。如下0065IMC可以将报文中的源IP地址进行修改,如果将客户端对应的源IP地址称为第一源IP地址,将IMC自己的IP地址称为第二IP地址,那么就是将第一源IP地址更改为第二IP地址。0066此外,报文中的源端口号,在处理之前是21,可以将其更改为IMC对应的端口。

29、号2000。并且,IMC还可以通过建立表项来存储这些信息,比如IMC在将客户端的IP地址更改为自己的IP地址后,还需要将客户端对应的IP地址也记录下来,以用于在后续给客户端返回文件时使用。说明书CN104158868A6/8页90067306、IMC将向VM1请求获取目标文件;0068例如,IMC可以根据客户端发送的文件请求报文中携带的VM1的地址信息,向VM1发送获取目标文件的请求,该请求中携带目标文件的文件信息,并且,经过在305中的处理,该请求的源地址也已经是IMC的地址,这样VM1就会认为是IMC请求获取目标文件。0069307、VM1从文件服务器获取文件;0070其中,VM1根据文件。

30、信息获取文件。本实施例中,可以采用文件传输协议FILETRANSFERPROTOCOL,FTP方式的文件传输,将要下载的目标文件或者文件压缩包划分成几个文件部分,每一个文件部分可以称为子文件,各个子文件可以分开传送,例如,每一子文件采用一个线程进行下载。0071308、VM1将文件发送至IMC;0072其中,VM1根据在306中请求文件的报文中携带的IMC的IP地址即第二源IP地址,将从文件服务器获取的文件发送至IMC。在发送文件时,可以是将各个子文件逐个发送,形象的说,也就是可以将目标文件一段一段地逐步发送至IMC。0073309、IMC重新组装报文;0074本步骤中,IMC在接收到VM1发。

31、送的子文件后,将记录子文件对应的传输位置信息,该传输位置信息用于表示目标文件的传输进度;例如,目标文件总共是320K,那么在接收到第一个子文件时,IMC收到了该目标文件的其中50K,可以记录传输位置信息是“50K”对应的位置,当接收到第二个子文件时,IMC总共收到了该目标文件中的100K,则记录传输位置信息是“100K”对应的位置。以上只是举例,具体实施中可能数值与上述不同,但需要说明的是,记录传输位置信息,是用于记录该目标文件传输到哪个位置了或者称为断点位置。0075IMC可以通过表项来记录为客户端下载文件时的信息对应关系,如表10076客户端IP客户端口号源IP源端口号断点位置111221。

32、222220000OXABC34D890077参见上述的表1,在为IP地址是1112的客户端下载文件,并且当前的断点位置是OXABC34D89,传了该文件的其中一部分;客户端口号21表示这是一个FTP文件下载方式;源IP和源端口号是IMC自己的标识。IMC每次接收到子文件,都会刷新断点位置字段的数值,即实时更新传输位置信息。0078本步骤中,IMC将目标文件的文件数据例如子文件的数据携带在文件报文中,并且将该文件报文的报文源端信息设置为用于标识VM1该VM1可以称为第一虚拟机的第一虚拟机标识,例如将文件报文中的源IP地址设置为VM1的IP地址,并将报文中的源端口号设置为VM1对应的端口号,这样。

33、是为了使得在将文件报文发送至客户端时,客户端仍然是认为该报文是从VM1直接发送过来的,不会感知到IMC的代答功能。0079310、IMC将报文发送至客户端;0080其中,IMC可以在接收到VM1逐个发送的子文件时,将子文件也逐个发送至客户端。0081311、VM1迁移到VM3;说明书CN104158868A7/8页100082其中,本步骤发生了VM的迁移操作,参见图1,此时想要让物理服务器B上的VM3来代替VM1负责客户端的文件传输,那么也是由IMC向VM3下发配置信息。0083需要说明的是,本实施例中的IMC在执行VM3的配置、启动等过程中,始终继续保持与VM1的连接,也就是说,客户端的文件。

34、传输是不会停止的,FTP仍然通过VM1访问文件服务器获取文件。0084312、IMC建立与VM3的连接;0085其中,在VM3配置完成启动后,IMC可以建立与VM3的连接。0086313、IMC断开与VM1的连接;0087例如,在VM3连接后,IMC可以断开与VM1的连接,以节省传输资源。0088314、IMC向VM3发送文件获取请求;0089本步骤中,由于VM1迁移至VM3,因此VM3的IP地址与VM1的IP地址相同。在IMC与VM1断开连接后,IMC根据文件请求报文携带的目的地址信息向VM3可以称为第二虚拟机继续请求获取该文件。具体的,IMC根据当前的传输位置信息对应的位置请求VM3继续获。

35、取目标文件的其余文件部分。例如,IMC通过VM1获取了目标文件的150K的前半部分,则可以指示VM3从150K对应的位置开始,继续获取目标文件中未获取的文件部分。0090315、VM3从文件服务器获取文件;0091316、VM3反馈文件给IMC;0092317、IMC将文件发送至客户端;0093在该步骤中,IMC会将文件数据封装在文件报文中发送给客户端,并且该报文的源IP地址是VM3的IP地址,客户端会认为报文是VM3发送的。0094由上述的例子可以看到,首先,IMC与客户端之间的连接是保持一直不断的,而且,IMC在建立了与新的VM3的连接后才断开与VM1的连接,使得文件传输不会中断;并且从客。

36、户端来看,由于客户端与IMC的连接一直维持,客户端是感知不到VM的切换的。0095此外,上述的在VM迁移时VM1保持与IMC的连接,直至VM3与IMC连接完成,这种方式使得从IMC侧来看,文件传输的源头不会中断,也就是一直有VM可以从文件服务器获取文件,提高了文件传输效率。0096但是,即使VM迁移时发生连接的暂时断开,本实施例的方法也可以提高文件传输效率。举例如下假设要进行VM的迁移,从VM1迁移到VM3,在这个迁移过程中,VM3配置完成并启动之前,IMC可以先断开与VM1的连接,此时就会出现一个空档期VM1已经断开,但是VM3还未连接,假设这个空档期需要3分钟。0097再看IMC侧,由于空。

37、档期的存在,文件传输的源头是暂时中断的,没有VM从文件服务器获取还未传输完成的目标文件,但是IMC与客户端的连接是一直保持的,并且假设IMC与客户端预先已经协商好了所能容忍的空档期间隔是5分钟,即在5分钟内即使获取不到文件两者的连接依旧保持,那么即使前述的存在空档期,IMC与客户端的控制面连接依然存在。这样,在3分钟以后IMC建立与VM3的连接,文件传输重新开始,继续传输文件。0098这种方式,客户端不需要再重新执行连接建立流程,因为与IMC的连接是一直存在的,而且能够尽快的开始文件传输;与现有的传输方式比较的话,现有IMC与VM3连接后,客户端还要重新开始与VM3的建立流程,并且VM3要从文。

38、件源头重新开始传输,不会从断点位置继续传输,因此,本实施例的方法提高了文件传输效率。说明书CN104158868A108/8页110099实施例三0100图4为本发明实施例提供的一种管理服务器的结构示意图,该服务器可以执行本发明实施例的文件传输方法,其具体的工作原理可以结合方法实施例;该服务器例如是IMC。如图4所示,该管理服务器可以包括接收单元41和发送单元42;其中,0101接收单元41,用于接收客户端发送的文件请求报文,所述文件请求报文携带目的地址信息、以及将要获取的目标文件的文件信息;以及,接收第一虚拟机发送的子文件,所述子文件是所述目标文件的其中一个文件部分;0102发送单元42,用。

39、于根据所述文件信息请求所述目的地址信息对应的第一虚拟机从文件服务器获取所述目标文件;并将所述子文件发送至所述客户端。0103图5为本发明实施例提供的另一种管理服务器的结构示意图,在图4所示结构的基础上,该服务器还可以包括处理单元43;0104处理单元42,用于记录与子文件对应的传输位置信息,传输位置信息用于表示目标文件的传输进度;以及,在所述管理服务器将所述第一虚拟机迁移至第二虚拟机时,与所述第二虚拟机建立连接;0105发送单元43,还用于根据当前的传输位置信息,请求所述第二虚拟机从所述文件服务器继续获取所述目标文件中未获取的文件部分。0106可选的,处理单元43,还用于将所述文件请求报文中包。

40、括的作为报文源端信息的客户端标识,更改为用于标识所述管理服务器的服务器标识,以使得所述第一虚拟机根据所述服务器标识将所述目标文件的子文件发送至所述管理服务器。例如,可以将文件请求报文中包括的第一源IP地址更改为第二源IP地址,所述第一源IP地址是所述客户端的IP地址,所述第二源IP地址是所述管理服务器的IP地址,以使得第一虚拟机根据所述第二源IP地址将所述目标文件的文件部分发送至所述管理服务器。0107可选的,处理单元43,还用于将所述目标文件的子文件的文件数据携带在文件报文中,并且将所述文件报文的报文源端信息设置为用于标识所述第一虚拟机的第一虚拟机标识;例如,将所述目标文件的子文件的文件数据。

41、携带在文件报文中,并且将所述文件报文的源IP地址设置为第一虚拟机的IP地址;0108所述发送单元42,具体用于将所述文件报文发送至所述客户端。0109可选的,发送单元42,还用于在所述接收单元接收客户端发送的文件请求报文之前,向虚拟交换机发送报文过滤规则,以使得所述虚拟交换机在从客户端接收到的文件请求报文匹配所述报文过滤规则时,将所述文件请求报文转发至管理服务器。0110以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。说明书CN104158868A111/3页12图1图2说明书附图CN104158868A122/3页13图3说明书附图CN104158868A133/3页14图4图5说明书附图CN104158868A14。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1