一种ftp模式配置方法、数据传输方法及设备的制作方法

文档序号:7982104阅读:153来源:国知局
专利名称:一种ftp模式配置方法、数据传输方法及设备的制作方法
技术领域
本发明涉及通信技术领域中的数据传输技术,尤其涉及一种FTP模式配置方法、 数据传输方法及设备。
背景技术
随着监控应用的广泛使用,监控组网规模越来越大,前端EC (Encoder,编码器)、 DC (Decoder,解码器)数目达到上千。对于这些大量的分散的设备,手动升级工作量非常大,于是自动批量升级成为趋势。自动批量升级是指用户将需要升级的版本上传到VM(Video Management,视频管理服务器)上,前端EC、DC等配置了自动升级功能的客户端判断自身的软件版本与VM上的软件版本不同时,使用FTP (File Transfer Protocol,文件传输协议)方式从VM服务器进行下载升级。FTP有两种不同工作模式P0RT (主动模式)与PASV(被动模式)。在PORT模式下,FTP文件传输过程主要包括客户端通过PORT命令,告诉FTP服务端使用PORT模式,同时给出客户端用来连接的指定端口 ;FTP服务端选择一个动态端口发起连接,连接客户端的指定端口,进行数据传输。在该模式下,如果客户端在私网、VM服务器在公网,则上述客户端与VM服务器的通信过程需要NAT (网络地址转换)设备启用FTP ALG(Application Layer Gateway,应用层网关)功能,这是因为在NAT的实际应用过程中,NAT设备仅对网络层报文的报文头进行IP地址/端口的识别和转换,对于应用层协议协商过程中报文载荷携带的地址信息则无法进行识别和转换,因此在有NAT设备处理的组网中,NAT设备利用ALG技术可以进行应用层的报文信息的解析和地址转换,保证应用层上通信的正确性。例如上述流程中,私网侧的客户端要访问公网的VM服务器,NAT设备上配置了私网地址192. 168. 0. 10到公网地址50. 10. 10. 10的映射,实现地址的NAT转换,在该组网中,如果NAT设备不支持ALG对报文载荷的处理,私网客户端发送的PORT报文到达服务器端后,VM服务器无法识别该报文载荷中的私网地址,也就无法建立正确的数据连接。在PASV模式下,FTP文件传输过程主要包括客户端通过PASV命令,告诉VM服务端使用PASV模式;VM服务端返回一个动态端口,客户端发起连接,连接VM服务端的该动态端口,实现文件传输。如果VM服务器在私网、客户端在公网,则上述客户端与VM服务器的通信过程需要NAT设备启用FTPALG功能,从而通过NAT设备将私网侧的VM服务器发送的 PASV报文中载荷部分携带的私网IP地址转换为公网IP地址,以使客户端能够与该VM服务器建立FTP连接。客户端上一般默认使用一种FTP模式,但是随着监控系统的广泛应用,会出现不同的NAT组网。如果NAT设备不支持FTP ALG,客户端的默认FTP模式将无法保证适用于所有的NAT组网,即无法保证通过默认FTP模式从FTP服务器下载文件。由此可见,现有基于FTP的数据传输对NAT设备存在依赖,若NAT设备不支持FTPALG,则可能导致客户端无法通过默认FTP模式实现文件下载。

发明内容
本发明提供了一种FTP模式配置方法、数据传输方法及设备,用以降低基于FTP的数据传输对NAT设备的依赖。本发明提供的FTP模式配置方法,应用于包含有FTP服务器和FTP客户端的网络系统,该方法包括FTP服务器接收到FTP客户端的注册请求报文后,根据该注册请求报文中携带的地址信息确定该FTP服务器和该FTP客户端的组网结构;所述FTP服务器根据确定出的组网结构,为所述FTP客户端配置FTP模式;其中, 若所述FTP服务器位于公网、所述FTP客户端位于私网,则为所述FTP客户端配置PASV模式,若所述FTP服务器位于私网、所述FTP客户端位于公网,则为所述FTP客户端配置PORT 模式;所述FTP服务器向所述FTP客户端返回响应报文,其中携带有为该FTP客户端配置的FTP模式的指示信息,以指示所述FTP客户端配置相应的FTP模式。本发明提供的FTP服务器,包括接收模块,用于接收到FTP客户端的注册请求报文;确定模块,用于根据所述注册请求报文中携带的地址信息确定该FTP服务器和该 FTP客户端的组网结构;分配模块,用于根据确定出的组网结构,为所述FTP客户端配置FTP模式;其中,若所述FTP服务器位于公网、所述FTP客户端位于私网,则为所述FTP客户端配置PASV模式, 若所述FTP服务器位于私网、所述FTP客户端位于公网,则为所述FTP客户端配置PORT模式;发送模块,用于向所述FTP客户端返回响应报文,其中携带有为该FTP客户端配置的FTP模式的指示信息,以指示所述FTP客户端配置相应的FTP模式。本发明提供的基于上述方法实现的FTP的数据传输方法,包括FTP客户端向FTP服务器发送注册请求,其中携带有地址信息;所述FTP客户端接收所述FTP服务器返回的携带有FTP模式指示信息的响应,并根据该FTP模式指示信息配置相应的FTP模式;当所述FTP客户端需要从所述FTP服务器下载文件时,根据其上配置的FTP模式, 采用相应FTP模式从所述FTP服务器下载文件。本发明提供的FTP客户端设备,包括发送模块,用于向FTP服务器发送注册请求,其中携带有地址信息;接收模块,用于接收所述FTP服务器返回的携带有FTP模式指示信息的响应;其中,所述FTP服务器根据确定出的组网结构,为所述FTP客户端配置FTP模式,其中,若所述 FTP服务器位于公网、所述FTP客户端位于私网,则为所述FTP客户端配置PASV模式,若所述FTP服务器位于私网、所述FTP客户端位于公网,则为所述FTP客户端配置PORT模式;配置模块,用于根据所述FTP模式指示信息配置相应的FTP模式;FTP模块,用于当需要从所述FTP服务器下载文件时,根据其上配置的FTP模式,采用相应FTP模式从所述FTP服务器下载文件。与现有技术相比,本发明的有益技术效果包括通过FTP服务器根据FTP客户端的注册请求报文确定自己和该客户端的组网结构为该客户端分配相应的FTP模式当FTP服务器位于公网、FTP客户端位于私网,则为FTP 客户端配置PASV模式,当FTP服务器位于私网、FTP客户端位于公网,则为FTP客户端配置 PORT模式,从而无需NAT设备支持NATALG功能,即在NAT设备不支持NATALG功能的情况下, 能够实现客户端从服务器进行FTP下载,降低了基于FTP的数据传输对NAT设备的依赖。


图1为本发明实施例提供的FTP模式配置以及基于配置的FTP模式进行数据传输的流程示意图;图2为本发明实施例提供的视频监控系统下的FTP模式配置流程示意图;图3为本发明实施例提供的FTP服务器的结构示意图;图4为本发明实施例提供的FTP客户端设备的结构示意图。
具体实施例方式下面结合附图对本发明实施例进行详细描述。参见图1,为本发明实施例提供的FTP模式配置以及基于配置的FTP模式进行数据传输的流程示意图,如图所示,该流程可包括步骤101,FTP客户端向FTP服务器注册时,FTP服务器接收到FTP客户端的注册请求后,根据该注册请求中携带的源地址和目的地址确定该FTP服务器和该FTP客户端的组网结构。其中,FTP服务器和FTP客户端的组网结构可以包括以下几种情况情况1 :FTP服务器位于公网,FTP客户端位于私网;情况2 =FTP服务器位于私网,FTP客户端位于公网;情况3 =FTP服务器位于私网,FTP客户端位于私网;情况4 =FTP服务器位于私网,FTP客户端位于私网。步骤102,FTP服务器根据自己和该FTP客户端的组网结构,为该FTP客户端配置 FTP模式。具体的,若FTP服务器位于公网、FTP客户端位于私网,则FTP服务器为FTP客户端配置PASV模式,若FTP服务器位于私网、FTP客户端位于公网,则FTP服务器为FTP客户端配置PORT模式,这样,NAT设备无需支持或无需启动FTPALG功能。若FTP服务器和FTP 客户端均位于私网或均位于公网,则对FTP客户端所采用的FTP模式无要求,即FTP服务器既可为FTP客户端配置PORT模式也可配置PASV模式。步骤103,FTP服务器将为FTP客户端配置的FTP模式通知给FTP客户端,如可将为FTP客户端配置的FTP模式的指示信息携带于注册响应消息返回给FTP客户端。步骤104,FTP客户端根据该通知配置本设备的FTP模式。具体的,如果FTP客户端在接收到该通知之前配置有默认FTP模式,则根据该通知所指示的FTP模式,更新该默认FTP模式;如果FTP客户端在接收到该通知之前未配置有默
6认FTP模式,则将该通知所指示的FTP模式配置为默认FTP模式。步骤105,当FTP客户端需要从FTP服务器下载文件时,根据其上配置的FTP模式, 采用相应方式从FTP服务器下载文件。本发明的上述实施例,可根据FTP服务器和FTP客户端的组网情况,自适应为FTP 客户端分配FTP模式,从而在NAT设备不支持FTP ALG功能的情况下,FTP客户端也可通过配置的FTP模式从FTP服务器下载文件。其原理如下FTP服务器位于公网、FTP客户端位于私网时,为FTP客户端配置PASV模式,这样, FTP客户端需要从FTP下载文件时,是由公网侧的FTP服务器发起连接请求,其载荷部分携带有该FTP服务器的公网地址和端口号,该载荷部分无需进行ALG处理,FTP客户端可根据该连接请求报文的载荷部分携带的地址和端口号,与FTP服务器建立FTP连接;FTP服务器位于私网、FTP客户端位于公网时,为FTP客户端配置PORT模式,这样, FTP客户端需要从FTP下载文件时,是由公网侧的FTP客户端发起连接请求,其载荷部分携带有该FTP客户端的公网地址和端口号,该载荷部分无需进行ALG处理,FTP服务器可根据该连接请求报文的载荷部分携带的地址和端口号,与FTP客户端建立FTP连接;FTP服务器均位于私网或均位于公网时,无论为FTP客户端配置PORT模式还是 PASV模式,都不会经过NAT设备进行网络地址转换,无论由哪端发起连接请求,对端都会与其建立FTP连接。下面以视频监控系统为例,对本发明实施例的上述流程进行详细描述。现有的视频监控系统主要由以下基本单元构成EC、VM、MS(Media Switch,媒体交换月艮务器)、IPSAN(Internet Protocol Storage Area Network,存储区域网络)、DM (Data Management Server,数据管理服务器)、DC(Decoder,解码器),VC(Video Client,视频客户端)等,以及相应的软件管理系统及网络传输设备。EC、DC等终端设备加入视频监控系统时,首先要向VM等服务器注册。基于上述视频监控系统架构,图2示出了 EC向VM注册过程中,VM为EC配置FTP 模式的流程,该流程可包括步骤201,EC向VM发送注册报文。步骤202,VM接收EC发送的注册报文后,提取该报文头部和载荷部分携带的IP地址。该注册报文的IP头中包含有源IP地址和目的IP地址(以下为描述方便,将报文头中的源IP地址称为IP1,将报文头中的目的IP地址称为IP2),该注册报文载荷部分的 SIP协议部分FR0M/T0字段携带有源IP地址(为描述方便,将该IP地址称为IP3),在SIP 协议部分Request-Line字段携带有目的IP地址(为描述方便,将该IP地址称为IP4)。步骤203 206,VM根据提取出的IP地址,判断自己与该EC的组网结构,如,自己和EC中哪个在公网、哪个在私网,并根据判断结果为该EC配置FTP模式。本步骤中,VM通过将报文IP头中的源IP地址和报文载荷中SIP协议部分的源IP 地址,以及报文IP头中的目的IP地址和报文载荷中SIP协议部分的目的IP地址进行比较, 得出EC是否在私网和VM是否在私网。具体的,如果EC与VM在同一个网络中,注册报文无需进行NAT转换,因而IP头中的源IP地址和目的IP地址为实际IP地址,此时IPl等于IP3,IP2等于IP4。此种情况下,VM为EC分配PORT模式或PASV模式(步骤204)。如果VM在公网、EC在私网,则注册报文会被NAT设备修改掉IP头中的源IP地址, 即将IP头中的私网源IP地址修改为公网IP地址,此时IPl不等于IP3,IP2等于IP4。此种情况下,VM为EC分配PASV模式(步骤205)。如果VM在私网、EC在公网,则注册报文会被NAT设备修改掉IP头中的目的IP地址,即将IP头中的私网目的IP地址修改为公网IP地址,此时IPl等于IP3,IP2不等于IP4。 此种情况下,VM为EC分配PORT模式(步骤206)。步骤207,VM向该EC发送注册响应报文,其中携带为该EC配置的FTP模式的指示
fn息O步骤208,EC接收到注册响应报文后,根据其中所指示的FTP模式配置本设备的默认FTP模式。当EC需要进行软件升级时,根据其上配置的默认FTP模式与VM建立FTP连接,并通过建立的FTP连接进行软件下载,以完成升级。其建立FTP连接以及FTP下载过程与现有技术相同,在此不再赘述。随着视频监控系统的发展,终端设备可能需要通过FTP方式从多个服务器下载文件。为了便于以后的扩展,在本发明的另一实施例中,客户端设备向各服务器发起注册,并接收到各服务器通过注册响应返回的为该客户端设备分配的FTP模式的指示信息后,可在客户端设备上生成FTP自适应的表项,即对应于多个FTP服务器的多个适应模式。客户端设备在下载文件时,先通过查询该表项,确定自己需要使用的FTP模式,然后使用该模式进行文件下载。表1示出了一种FTP自适应表项的实例。表 权利要求
1.一种文件传输协议FTP模式配置方法,应用于包含有FTP服务器和FTP客户端的网络系统,其特征在于,该方法包括FTP服务器接收到FTP客户端的注册请求报文后,根据该注册请求报文中携带的地址信息确定该FTP服务器和该FTP客户端的组网结构;所述FTP服务器根据确定出的组网结构,为所述FTP客户端配置FTP模式;其中,若所述FTP服务器位于公网、所述FTP客户端位于私网,则为所述FTP客户端配置PASV模式,若所述FTP服务器位于私网、所述FTP客户端位于公网,则为所述FTP客户端配置PORT模式;所述FTP服务器向所述FTP客户端返回响应报文,其中携带有为该FTP客户端配置的 FTP模式的指示信息,以指示所述FTP客户端配置相应的FTP模式。
2.如权利要求1所述的方法,其特征在于,该方法还包括若所述FTP服务器确定出的组网结构为所述FTP服务器和所述FTP客户端均位于私网或均位于公网,则为所述FTP客户端配置PASV模式和PORT模式中的任意一种。
3.如权利要求1所述的方法,其特征在于,所述根据注册请求报文中携带的地址信息确定FTP服务器和FTP客户端的组网结构,包括所述FTP服务器提取所述注册请求报文IP头部的第一 IP地址和第二 IP地址,以及该报文载荷部分的第三IP地址和第四IP地址;其中,第一、三IP地址为源IP地址,第二、四 IP地址为目的IP地址;所述FTP服务器比较提取出的IP地址,并根据比较结果确定所述FTP服务器和所述 FTP客户端的组网结构;其中,若第一 IP地址与第三IP地址不同、第二 IP地址与第四IP地址相同,则所述FTP服务器位于公网、所述FTP客户端位于私网;若第一 IP地址与第三IP 地址相同、第二 IP地址与第四IP地址不同,则所述FTP服务器位于私网、所述FTP客户端位于公网;若第一 IP地址与第三IP地址相同、第二 IP地址与第四IP地址相同,则所述FTP 服务器和所述FTP客户端位于同一网络。
4.如权利要求1-3之一所述的方法,其特征在于,所述网络系统为视频监控系统,所述 FTP服务器为所述视频监控系统中的服务器,所述FTP客户端为所述视频监控系统中的终端设备。
5.一种FTP服务器,其特征在于,包括接收模块,用于接收到FTP客户端的注册请求报文;确定模块,用于根据所述注册请求报文中携带的地址信息确定该FTP服务器和该FTP 客户端的组网结构;分配模块,用于根据确定出的组网结构,为所述FTP客户端配置FTP模式;其中,若所述 FTP服务器位于公网、所述FTP客户端位于私网,则为所述FTP客户端配置PASV模式,若所述FTP服务器位于私网、所述FTP客户端位于公网,则为所述FTP客户端配置PORT模式;发送模块,用于向所述FTP客户端返回响应报文,其中携带有为该FTP客户端配置的 FTP模式的指示信息,以指示所述FTP客户端配置相应的FTP模式。
6.如权利要求5所述的FTP服务器,其特征在于,所述分配模块还用于,若所述确定模块确定出的组网结构为所述FTP服务器和所述FTP客户端均位于私网或均位于公网,则为所述FTP客户端配置PASV模式和PORT模式中的任意一种。
7.如权利要求4所述的FTP服务器,其特征在于,所述确定模块具体用于,提取所述注册请求报文IP头部的第一 IP地址和第二 IP地址,以及该报文载荷部分的第三IP地址和第四IP地址;其中,第一、三IP地址为源IP地址,第二、四IP地址为目的IP地址;比较提取出的IP地址,并根据比较结果确定所述FTP服务器和所述FTP客户端的组网结构,其中, 若第一 IP地址与第三IP地址不同、第二 IP地址与第四IP地址相同,则所述FTP服务器位于公网、所述FTP客户端位于私网;若第一 IP地址与第三IP地址相同、第二 IP地址与第四 IP地址不同,则所述FTP服务器位于私网、所述FTP客户端位于公网;若第一 IP地址与第三IP地址相同、第二 IP地址与第四IP地址相同,则所述FTP服务器和所述FTP客户端位于同一网络。
8.如权利要求4所述的FIP月艮务器,其特征在于,所述FIP月艮务器为视频监控系统中的服务器。
9.一种基于如权利要求1-4之一所述的方法实现的FTP的数据传输方法,其特征在于, 该方法包括FTP客户端向FTP服务器发送注册请求,其中携带有地址信息;所述FTP客户端接收所述FTP服务器返回的携带有FTP模式指示信息的响应,并根据该FTP模式指示信息配置相应的FTP模式;当所述FTP客户端需要从所述FTP服务器下载文件时,根据其上配置的FTP模式,采用相应FTP模式从所述FTP服务器下载文件。
10.如权利要求9所述的方法,其特征在于,所述FTP客户端中配置有FTP服务器列表, 用于记录FTP服务器与该FTP服务器为该FTP客户端分配的FTP模式信息;所述FTP客户端接收到FTP服务器返回的响应报文后,还包括将该响应报文中携带的 FTP模式信息和该FTP服务器存储到所述FTP列表中;当所述FTP客户端需要从所述FTP服务器下载文件时,查询所述FTP列表,采用与所述 FTP服务器对应的FTP模式从所述FTP服务器下载文件。
11.一种FTP客户端设备,其特征在于,包括发送模块,用于向FTP服务器发送注册请求,其中携带有地址信息;接收模块,用于接收所述FTP服务器返回的携带有FTP模式指示信息的响应;其中,所述FTP服务器根据确定出的组网结构,为所述FTP客户端配置FTP模式,其中,若所述FTP服务器位于公网、所述FTP客户端位于私网,则为所述FTP客户端配置PASV模式,若所述FTP 服务器位于私网、所述FTP客户端位于公网,则为所述FTP客户端配置PORT模式;配置模块,用于根据所述FTP模式指示信息配置相应的FTP模式;FTP模块,用于当需要从所述FTP服务器下载文件时,根据其上配置的FTP模式,采用相应FTP模式从所述FTP服务器下载文件。
12.如权利要求11所述的FTP客户端设备,其特征在于,所述FTP客户端中配置有FTP 服务器列表,用于记录FTP服务器与该FTP服务器为该FTP客户端分配的FTP模式信息;所述配置模块还用于,将所述响应报文中携带的FTP模式信息和所述FTP服务器存储到所述FTP列表中;所述FTP模块具体用于,当所述FTP客户端需要从所述FTP服务器下载文件时,查询所述FTP列表,采用与所述FTP服务器对应的FTP模式从所述FTP服务器下载文件。
13.如权利要求11或12所述的FTP客户端设备,其特征在于,所述FTP客户端设备为视频监控系统中的终端设备。
全文摘要
本发明公开了一种FTP模式配置方法、数据传输方法及设备,该方法包括FTP服务器接收到FTP客户端的注册请求报文后,根据该注册请求报文中携带的地址信息确定该FTP服务器和该FTP客户端的组网结构;FTP服务器根据确定出的组网结构,为FTP客户端配置FTP模式;其中,若FTP服务器位于公网、FTP客户端位于私网,则为FTP客户端配置PASV模式,若FTP服务器位于私网、FTP客户端位于公网,则为FTP客户端配置PORT模式;FTP服务器向FTP客户端返回注册响应报文,其中携带有为该FTP客户端配置的FTP模式的指示信息,以指示FTP客户端配置相应的FTP模式。采用本发明可降低基于FTP的数据传输对NAT设备的依赖。
文档编号H04L29/08GK102420858SQ20111037317
公开日2012年4月18日 申请日期2011年11月22日 优先权日2011年11月22日
发明者任俊峰, 周迪 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1