CN102647465A - 应用于堆叠系统中的ftp数据传输方法和装置 - Google Patents
应用于堆叠系统中的ftp数据传输方法和装置 Download PDFInfo
- Publication number
- CN102647465A CN102647465A CN201210091670XA CN201210091670A CN102647465A CN 102647465 A CN102647465 A CN 102647465A CN 201210091670X A CN201210091670X A CN 201210091670XA CN 201210091670 A CN201210091670 A CN 201210091670A CN 102647465 A CN102647465 A CN 102647465A
- Authority
- CN
- China
- Prior art keywords
- file
- ftp server
- ftp
- transmission
- notice
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/60—Software-defined switches
- H04L49/602—Multilayer or multiprotocol switching, e.g. IP switching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了应用于堆叠系统中的FTP数据传输方法和装置。其中,该方法包括:A,堆叠系统中的FTP服务器Server主进程接收来自FTP客户端的文件传输请求;B,所述FTP Server主进程针对所述文件传输请求的文件,判断该文件是否和本FTP Server主进程处于同一机框,如果否,执行步骤C;C,向堆叠系统中运行在所述文件所处机框上的FTP Server备进程发送文件传输通知,由该FTP Server备进程接收到所述文件传输通知后通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输。
Description
技术领域
本发明涉及网络通信技术,特别涉及应用于堆叠系统中的文件传输协议(FTP:File Transfer Protocol)数据传输方法和装置。
背景技术
FTP为用于在FTP服务器(Server)和FTP客户端之间传输文件的通用协议,其在RFC959中被详细描述。FTP可应用于堆叠系统,其中,堆叠系统是指将一台以上机框式设备(简称机框)组合起来所形成的系统。在堆叠系统中,按照预设的选举原则确定出一个机框作为主用机框(简称Master)框,剩余的机框作为备用机框(简称Slave框)。其中,Master框上运行FTPServer主进程,而Slave框上运行FTP Server备进程。
参见图1,图1为FTP应用于堆叠系统的组网示意图。在图1中,PC A作为FTP客户端连接至堆叠系统中的Slave框,FTP Server主进程运行在Master框,而FTP Server备进程运行在Slave框,在正常情况下,FTP Server主进程处于工作状态,而FTP Server备进程作为FTP Server主进程的备份,处于备用状态。
如图1所示,若PC A试图获取存放至Slave框上的文件xxx.log,则PCA首先发送文件下载请求至FTP Server主进程,FTP Server主进程接收到该PC A发送的文件下载请求时,发现PC A请求的文件在Slave框上,由于Slave框上的FTP Server备进程处于备份状态,不进行工作,因此,需要FTP Server主进程通过与Slave框之间的堆叠链路如IRF链路从Slave框上获取文件xxx.log,之后再通过与Slave框之间的堆叠链路如IRF链路将获取的文件xxx.log传送给Slave框,通过Slave框转发给PC A。
从上面描述的PC A获取文件xxx.log过程可以看出,在PC A获取文件xxx.log过程中,会频繁占用Master框和Slave框之间的堆叠链路,比如FTPServer主进程通过与Slave框之间的堆叠链路如IRF链路从Slave框上获取文件xxx.log,以及通过与Slave框之间的堆叠链路如IRF链路将获取的文件xxx.log传送给Slave框,这会导致Master框和Slave框之间堆叠链路上的交互报文增多,加大了堆叠链路的报文压力,导致堆叠分裂的风险增大。
发明内容
本发明提供了应用于堆叠系统中的FTP数据传输方法和装置,以减轻文件传输过程中对堆叠系统中堆叠链路的压力。
本发明提供的技术方案包括:
一种应用于堆叠系统中的FTP数据传输方法,包括:
A,堆叠系统中的FTP服务器Server主进程接收来自FTP客户端的文件传输请求;
B,所述FTP Server主进程针对所述文件传输请求的文件,判断该文件是否和本FTP Server主进程处于同一机框,如果否,执行步骤C;
C,向堆叠系统中运行在所述文件所处机框上的FTP Server备进程发送文件传输通知,由该FTP Server备进程接收到所述文件传输通知后通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输。
一种应用于堆叠系统中的FTP数据传输装置,该装置包括:FTP服务器Server主进程和FTP Server备进程;
所述FTP Server主进程包括:请求接收单元、判断单元和传输通知单元;
所述请求接收单元,用于接收来自FTP客户端的文件传输请求;
所述判断单元,用于针对所述文件传输请求的文件,判断该文件是否和所述FTP Server主进程处于同一机框;
所述传输通知单元,用于在所述判断单元的判断结果为否时,向堆叠系统中运行在所述文件所处机框上的FTP Server备进程发送文件传输通知;
所述FTP Server备进程包括:通知接收单元和传输单元;
所述通知接收单元,用于接收来自所述FTP Server主进程的文件传输通知;
所述传输单元,用于在所述通知接收单元接收到文件传输通知后,通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输。
由以上技术方案可以看出,本发明中,在需要传输的文件和FTP Server主进程不处于同一框时,不再由FTP Server主进程执行该文件的传输,而是由该文件所处机框上的FTP Server备进程代替FTP Server主进程执行该文件的传输。这相比于现有文件传输方式,显然不会出现Slave框和Master框之间堆叠链路被频繁占用传输文件的问题,减轻了堆叠链路的压力。
附图说明
图1为FTP应用于堆叠系统的组网示意图;
图2为本发明实施例提供的方法流程图;
图3为本发明实施例提供的详细方法流程图;
图4为本发明实施例提供的Socket格式示意图;
图5为本发明实施例提供的示例图;
图6为本发明提供的装置结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
FTP Server和FTP客户端之间传输文件时会建立两种链路,一种是控制链路,用于传输FTP的控制信息,另一种是数据链路,用于传输文件。因数据连接发起方的不同,数据链路的建立方式分为主动模式(简称PORT)和被动模式(简称PASV)。其中,主动模式是指建立数据链路时由FTP Server主动发起数据连接,而被动模式是指建立数据链路时由FTP客户端发起主动发起数据连接。
本发明提供的应用于堆叠系统中的FTP数据传输方法,主要是修改文件传输请求情况下数据链路的建立,对控制链路和其他情况下数据链路的建立没有任何改变。其中,该数据链路的建立可以采用主动模式,也可以采用被动模式,本发明并不具体限定。
另外,本发明中,文件传输请求可为:文件下载请求,或者为文件上传请求,这里的文件下载请求或者文件上传请求均可为单一文件/批量文件下载请求或上传请求。
下面对本发明提供的方法进行描述:
参见图2,图2为本发明实施例提供的方法流程图。该流程可应用于堆叠系统中,如图2所示,该流程可包括以下步骤:
步骤201,堆叠系统中的FTP服务器Server主进程接收来自FTP客户端的文件传输请求。
其中,文件传输请求可为:文件下载请求,或者为:文件上传请求。
步骤202,FTP Server主进程针对所述文件传输请求的文件,判断该文件是否和本FTP Server主进程处于同一机框,如果否,执行步骤203。
如果步骤202中的判断结果为是,则表示该文件和所述FTP Server主进程处于同一机框,可直接由FTP Server主进程执行所述文件的传输,具体可按照现有FTP Server主进程执行文件传输的方式执行。
而如果步骤202中的判断结果为否,则表示该文件和所述FTP Server主进程不处于同一机框,比如,该文件处于堆叠系统中的Slave框,而FTP Server主进程处于堆叠系统中的Master框,如果按照现有文件传输方式,就会导致Slave框和Master框之间堆叠链路被频繁占用传输文件,会加大堆叠链路的报文压力,为了避免这种问题,本发明执行步骤203。
步骤203,向堆叠系统中运行在所述文件所处机框上的FTP Server备进程发送文件传输通知,由该FTP Server备进程接收到所述文件传输通知后通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输。
也就是说,本发明中,在需要传输的文件和FTP Server主进程不处于同一机框时,不再由FTP Server主进程执行该文件的传输,而是由该文件所处机框上的FTP Server备进程代替FTP Server主进程执行该文件的传输。这相比于现有文件传输方式,显然不会出现Slave框和Master框之间堆叠链路被频繁占用传输文件的问题,减轻了堆叠链路的压力。
下面以文件传输请求为文件下载请求为例对图2所示的流程进行详细描述,文件上传请求的原理类似:
参见图3,图3为本发明实施例提供的详细方法流程图。该流程可应用于图1所示的组网中。如图3所示,该流程可包括以下步骤:
步骤301,PC A作为FTP客户端,在开始一个新的FTP连接时,为本FTP客户端随机分配一个TCP端口,并使用该TCP端口向FTP Server主进程发出连接请求。
步骤302,FTP Server主进程运行于Master框,在接收连接请求后通过三次握手与PC A建立一条控制链路。
步骤303,PC A通过与FTP Server主进程之间的控制链路向FTP Server主进程发送其对应用户的登录用户名和密码进行验证。
在PC A发送的登录用户名和密码通过验证后,表示PC A对应的用户成功登录FTP Server主进程,该用户可相应称为登录用户。
以上步骤301至步骤303为PC A和FTP Server主进程在发送文件下载请求之前的准备工作,其还包括其他步骤,由于和本发明关系不大,所以在此省略描述。
步骤304,PC A将来自登陆用户的文件下载请求发送至FTP Server主进程,该文件下载请求中携带PC A上用于数据链路的端口标识和需要下载的文件标识。
步骤305,FTP Server主进程针对所述文件下载请求中的每一文件标识,通过解析登录用户的工作目录确定该文件标识对应的文件(记为文件1)所处的机框。
优选地,本步骤305中,通过解析登录用户的工作目录确定该文件标识对应的文件(记为文件1)所处的机框具体可为:判断该文件标识是否携带该文件标识对应文件所处的机框标识,如果是,则直接将该携带的机框标识确定为该文件标识对应文件(记为文件1)所处的机框,之后执行下述步骤306,否则,通过解析登录用户的工作目录确定该文件标识对应文件(记为文件1)所处的机框。
另外,本发明中,FTPS Server主进程采用串行方式处理FTP客户端的请求,即FTP客户端发送一次请求,FTP Server主进程在处理完成该请求或者中止该请求后,FTP客户端才能进行下一次请求。这里所描述的一次请求是指从用户角度看到的一次操作,并不是一个命令字,一次请求可能对应有多个命令字和多个应答。以文件重命名请求为例:用户在FTP客户端上输入了修改前的文件名和修改的文件名之后,FTP客户端会首先发送RNFR命令字,携带需要修改的文件名;然后再发送RNTO命令字,携带修改后的文件名;FTP Server主进程对这两个命令字都进行应答,才表示该文件重命名请求完成。
基于此,本步骤305中,不管该文件下载请求为单一文件下载请求还是批量下载请求,该文件下载请求携带的文件标识都有可能为多个,基于此,FTP Server主进程就会针对该文件下载请求携带的每一文件标识执行本步骤305中的确定操作。
另外,登录用户的工作目录在堆叠系统中的哪一个机框,则该文件下载请求每一文件标识对应的文件就处在哪一个机框上。
步骤306,FTP Server主进程判断该确定的机框是否与本FTP Server主进程所处的机框一致,如果是,则按照现有文件下载方式执行,否则,执行步骤307。
步骤307,FTP Server主进程发送文件传输通知至堆叠系统中运行在文件1所处机框上的FTP Server备进程,以告知该FTP Server备进程准备接管文件1的下载。
该通知1中携带PC A上用于数据链路的端口标识和文件1的文件标识。
步骤308,FTP Server备进程接收文件传输通知后,判断本FTP Server备进程和FTP客户端之间是否存在用于传输文件1的数据链路,如果否,执行步骤309,如果是,执行步骤311。
步骤309,FTP Server备进程开启本地端口20,与文件传输通知中端口标识对应的端口建立数据链路,将该数据链路作为用于传输文件1的数据链路,并返回针对文件传输通知的响应消息给FTP Server主进程。
本步骤309中,响应消息携带了PC A上用于数据链路的端口标识和文件1的文件标识。
可以看出,在执行完本步骤309时,FTP Server备进程本地的端口20与PC A上对应文件传输通知中端口标识的端口之间建立了数据链路,用于传输文件1。
需要说明的是,本步骤309以采用主动模式建立数据链路为例,被动模式建立数据链路的原理类似,不再赘述。
步骤310,FTP Server主进程接收到FTP Server备进程的响应消息后,通过本FTP Server主进程与PC A之间的控制链路通知PC A,以告知PC A用于传输文件1的数据链路已建立,并通知FTP Server备进程通过该用于传输文件1的数据链路开始执行文件1的传输。之后执行步骤311。
步骤311,FTP Server备进程通过用于传输文件1的数据链路传输文件1至PC A。
步骤312,FTP Server备进程在文件1传输完毕后,关闭本FTP Server备进程与PC A之间已建立的用于传输文件1的数据链路,并发送文件传输完毕通知至FTP Server主进程,以告知FTP Server主进程文件1传输完毕。
步骤313,FTP Server主进程接收所述文件传输完毕通知后,通过与PCA之间的控制链路通知FTP客户端已完成传输的文件。
需要说明的是,本发明中,在步骤311的文件传输过程中,FTP Server主进程处于休眠状态,当接收到文件传输完毕通知时,被重新唤醒。
至此,通过上述步骤即可完成文件的下载。
需要说明的是,在图3所示的流程中,FTP Server主进程向FTP Server备进程发送的各个通知、以及FTP Server备进程向FTP Server主进程发送的响应消息和各个通知均采用套接字(Socket)比如进程间Socket发送,该Socket格式如图4所示,包括:FLAG字段、Type字段、文件标识字段和FTP客户端上用于数据链路的端口标识字段。
其中,FLAG字段占用1个字节,其取值情况可为:当bit0取值为1即FLAG字段取值为1时,表示FTP Server备进程通知FTP Server主进程文件传输完毕(简称fin),当bit1取值为1即FLAG字段取值为2时,表示FTPServer主进程通知FTP Server备进程文件(简称syn),当bit2取值为1即FLAG字段取值为4时,表示FTP Server备进程响应FTP Server主进程,其他的bit比如bit3至bit7均可为保留。而Type字段占用1个字节,取值情况可为:取值为1时,可表示数据链路建立,取值为0时,表示数据链路关闭。文件标识字段占用255个字节,用于携带文件标识和文件路径,FTP客户端上用于数据链路的端口标识字段占用2个字节。
下面基于图4,对图3所示的流程进行示例描述:
参见图5,图5为本发明实施例提供的示例图。在图5中,PC A作为FTPClient与堆叠系统中的Slave框直接相连,FTP Server主进程运行在堆叠系统中的Master框,FTP Server备进程运行在Slave框,PC A试图下载获取文件标识为cmdtree.txt的文件,该文件存放位置为Slave框主控板。基于此,则如图5所示,该流程可包括:
步骤501,PC A(地址为192.168.10.1)发起FTP连接之前,首先会为自己随机分配一个TCP端口,并使用这个TCP端口向FTP Server主进程(地址为192.168.10.33)的FTP端口(默认为21)发出连接请求。
步骤502,FTP Server主进程接收连接请求后与PC A建立一条控制链路。
步骤503,PC A输入登录用户名及密码,通过控制链路发送至FTP Server进行验证。
步骤504,PC A将验证成功后登录用户发送的文件下载请求发送至FTPServer主进程,该请求中携带PC A上用于数据链路的端口号比如1215和文件cmdtree.txt。
步骤505,FTP Server主进程获取登录用户根目录(root)的默认工作路径,通过解析该工作路径确定文件cmdtree.txt所处的框为Slave框,框标识为2,而本FTP Server主进程所处的框为Master框,框标识为1,如此得到文件cmdtree.txt与本FTP Server主进程不在同一框。
FTP Server主进程只能在登录用户默认工作路径以下获取文件,如果默认工作路径是Master框的CF卡,而文件位于slave框,则FTP Server主进程按照本地用户的工作原理需要首先更改默认工作路径为slave框CF卡。
步骤506,FTP Server主进程发送文件传输通知至框标识为2的Slave框上的FTP Server备进程。
基于图4,则本步骤506中的文件传输通知格式如表1所示:
表1
步骤507,FTP Server备进程接收到通知后,查看本地端口20是否已与PCA上的端口1215即192.168.10.1-1215建立了数据链路,如果未建立,则执行步骤508,如果已建立,则执行步骤510。
步骤508,FTP Server备进程开启本地端口20,并与PCA上的端口1215即192.168.10.1-1215建立数据链路,并在完成建立后,给FTP Server主进程返回一个响应消息,告知数据链路建立完毕。
基于图4,则本步骤508中的响应消息格式如表2所示:
表2
步骤509,FTP Server主进程收到上述响应消息后,通过与PC A之间的控制链路告知PC A用于传输文件cmdtree.txt的数据链路已建立,并通知FTP Server备进程开始文件cmdtree.txt的传输。
本步骤509中FTP Server主进程向FTP Server备进程发送的通知格式可如上述表1所示。
步骤510,FTP Server备进程通过本地端口20与192.168.10.1-1215即PC A上的端口1215之间的数据链路传输文件cmdtree.txt。
步骤511,FTP Server备进程在文件cmdtree.txt传输完毕后关闭本FTP Server备进程与PC A之间用于传输该文件cmdtree.txt的数据链路即本地端口20与192.168.10.1-1215之间的数据链路,并发送文件传输完毕通知至所述FTP Server主进程。
基于图4,本步骤511中的文件传输完毕通知格式如表3所示:
表3
步骤512,FTP Server主进程收到文件传输完毕通知时,通过与FTP客户端之间的控制链路通知PCA已完成传输的文件。
至此,完成图5所示的流程描述。
优选地,在上述图3或图5所示的流程中,FTP Server备进程在关闭数据链路后可通知给FTP Server主进程,其中,该通知可采用表4所示:
另外,在上述图3或图5所示的流程中,FTP Server备进程可在文件1传输完毕后等待设定时间之后关闭本FTP Server备进程与PC A之间已建立的用于传输文件1的数据链路。其中,该等待的设定时间具体可根据实际情况设置,比如可为立即、或者一定的时间比如1分钟、30秒等,本发明并不具体限定,或者,该设定时间也可为接收FTP Server主进程发送的链路关闭通知的时间。其中,FTP Server主进程可在以下情况发送链路关闭通知:FTPServer主进程通过接收该文件传输完毕通知被重新唤醒,并判断文件下载请求中的所有文件标识对应的文件是否已被完成下载,如果是,向所述文件下载请求中每一文件标识对应文件所处框上的FTP Server备进程发送链路关闭通知,以告知FTP Server备进程关闭该FTP Server备进程和PC A之间用于传输所述文件下载请求中文件标识对应文件的数据链路。优选地,如果FTPServer主进程判断出文件下载请求中的所有文件标识对应的文件还存在一些文件未被完成下载,则针对未被完成下载的文件对应的文件标识,返回上述确定该文件标识对应文件所处机框的操作。
以上对本发明提供的方法进行了描述,下面对本发明提供的装置进行描述:
参见图6,图6为本发明提供的装置结构图。如图6所示,该装置可包括:FTP Server主进程和FTP Server备进程;
其中,所述FTP Server主进程包括:请求接收单元、判断单元和传输通知单元;
所述请求接收单元,用于接收来自FTP客户端的文件传输请求;
所述判断单元,用于针对所述文件传输请求的文件,判断该文件是否和所述FTP Server主进程处于同一机框;
所述传输通知单元,用于在所述判断单元的判断结果为否时,向堆叠系统中运行在所述文件所处机框上的FTP Server备进程发送文件传输通知;
所述FTP Server备进程包括:通知接收单元和传输单元;
所述通知接收单元,用于接收来自所述FTP Server主进程的文件传输通知;
所述传输单元,用于在所述通知接收单元接收到文件传输通知后,通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输。
优选地,所述传输单元在执行文件传输时可包括以下子单元:
判断子单元,用于判断所述FTP Server备进程和FTP客户端之间是否存在用于传输所述文件的数据链路;
建立子单元,用于在所述判断子单元的判断结果为否时,在所述FTP Server备进程和FTP客户端之间建立用于传输所述文件的数据链路;
传输子单元,用于在所述判断子单元的判断结果为是时,或者在所述建立子单元完成建立用于传输所述文件的数据链路时,利用该用于传输所述文件的数据链路执行所述文件的传输。
本发明中,所述FTP Server备进程进一步包括:链路通知单元;
其中,所述链路通知单元,用于在所述建立子单元完成数据链路建立后、且在所述传输子单元利用所述建立子单元建立的数据链路执行文件传输之前,发送数据链路完成建立通知至FTP Server主进程;
基于此,所述FTP Server主进程中的请求接收单元进一步接收所述数据链路完成建立通知,传输通知单元进一步在所述请求接收单元接收到所述数据链路完成建立通知后通过所述FTP Server主进程与FTP客户端之间的控制链路通知FTP客户端数据链路已建立,并在完成通知FTP客户端数据链路已建立后通知所述传输子单元通过所述建立子单元建立的数据链路开始执行文件的传输。
另外,本发明中,所述FTP Server备进程进一步包括:
链路管理单元,用于在所述传输子单元在完成文件传输后关闭所述FTPServer备进程和FTP客户端之间用于传输该文件的数据链路,并发送文件传输完毕通知至所述FTP Server主进程;
基于此,所述FTP Server主进程中的请求接收单元进一步接收所述文件传输完毕通知;所述传输通知单元进一步在所述请求接收单元接收到文件传输完毕通知后,通过与FTP客户端之间的控制链路通知FTP客户端已完成传输的文件。
优选地,本发明中,FTP Server主进程向FTP Server备进程发送的通知、以及FTP Server备进程向FTP Server主进程发送的通知采用Socket发送。
至此,完成本发明提供的装置描述。
由以上技术方案可以看出,本发明中,在需要传输的文件和FTP Server主进程不处于同一框时,不再由FTP Server主进程执行该文件的传输,而是由该文件所处框上的FTP Server备进程代替FTP Server主进程执行该文件的传输。这相比于现有文件传输方式,显然不会出现Slave框和Master框之间堆叠链路被频繁占用传输文件的问题,减轻了堆叠链路的压力。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种应用于堆叠系统中的文件传输协议FTP数据传输方法,其特征在于,该方法包括:
A,堆叠系统中的FTP服务器Server主进程接收来自FTP客户端的文件传输请求;
B,所述FTP Server主进程针对所述文件传输请求的文件,判断该文件是否和本FTP Server主进程处于同一机框,如果否,执行步骤C;
C,向堆叠系统中运行在所述文件所处机框上的FTP Server备进程发送文件传输通知,由该FTP Server备进程接收到所述文件传输通知后通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输。
2.根据权利要求1所述的方法,其特征在于,步骤C中,FTP Server备进程通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输包括:
FTP Server备进程判断本FTP Server备进程和FTP客户端之间是否存在用于传输所述文件的数据链路,如果是,则直接利用该存在的数据链路执行所述文件的传输,否则,在本FTP Server备进程和FTP客户端之间建立用于传输所述文件的数据链路,通过该建立的数据链路执行所述文件的传输。
3.根据权利要求2所述的方法,其特征在于,所述FTP Server备进程在完成数据链路建立之后,且在通过建立的数据链路执行文件的传输之前进一步包括:发送数据链路完成建立通知至FTP Server主进程;
所述FTP Server备进程通过以下步骤开始通过建立的数据链路执行文件的传输包括:
所述FTP Server主进程接收到所述数据链路完成建立通知后,通过与FTP客户端之间的控制链路通知FTP客户端数据链路已建立,并在完成通知FTP客户端数据链路已建立后,通知FTP Server备进程通过建立的数据链路开始执行文件的传输,以由FTP Server备进程开始执行所述文件的传输。
4.根据权利要求1至3任一所述的方法,其特征在于,该方法进一步包括:
所述FTP Server备进程在完成文件传输后关闭本FTP Server备进程与FTP客户端之间用于传输该文件的数据链路,并发送文件传输完毕通知至所述FTPServer主进程;
所述FTP Server主进程通接收所述文件传输完毕通知后,通过与FTP客户端之间的控制链路通知FTP客户端已完成传输的文件。
5.根据权利要求4所述的方法,其特征在于,FTP Server主进程向FTP Server备进程发送的通知、以及FTP Server备进程向FTP Server主进程发送的通知采用Socket发送。
6.一种应用于堆叠系统中的文件传输协议FTP数据传输装置,其特征在于,该装置包括:FTP服务器Server主进程和FTP Server备进程;
所述FTP Server主进程包括:请求接收单元、判断单元和传输通知单元;
所述请求接收单元,用于接收来自FTP客户端的文件传输请求;
所述判断单元,用于针对所述文件传输请求的文件,判断该文件是否和所述FTP Server主进程处于同一机框;
所述传输通知单元,用于在所述判断单元的判断结果为否时,向堆叠系统中运行在所述文件所处机框上的FTP Server备进程发送文件传输通知;
所述FTP Server备进程包括:通知接收单元和传输单元;
所述通知接收单元,用于接收来自所述FTP Server主进程的文件传输通知;
所述传输单元,用于在所述通知接收单元接收到文件传输通知后,通过本FTP Server备进程和FTP客户端之间用于传输所述文件的数据链路接管执行所述文件的传输。
7.根据权利要求6所述的装置,其特征在于,所述传输单元包括:
判断子单元,用于判断所述FTP Server备进程和FTP客户端之间是否存在用于传输所述文件的数据链路;
建立子单元,用于在所述判断子单元的判断结果为否时,在所述FTP Server备进程和FTP客户端之间建立用于传输所述文件的数据链路;
传输子单元,用于在所述判断子单元的判断结果为是时,或者在所述建立子单元完成建立用于传输所述文件的数据链路时,利用该用于传输所述文件的数据链路执行所述文件的传输。
8.根据权利要求7所述的装置,其特征在于,所述FTP Server备进程进一步包括:链路通知单元;
所述链路通知单元,用于在所述建立子单元完成数据链路建立后、且在所述传输子单元利用所述建立子单元建立的数据链路执行文件传输之前,发送数据链路完成建立通知至FTP Server主进程;
所述FTP Server主进程中的请求接收单元进一步接收所述数据链路完成建立通知;所述传输通知单元进一步在所述请求接收单元接收到所述数据链路完成建立通知后通过所述FTP Server主进程与FTP客户端之间的控制链路通知FTP客户端数据链路已建立,并在完成通知FTP客户端数据链路已建立后通知所述传输子单元通过所述建立子单元建立的数据链路开始执行文件的传输。
9.根据权利要求7或8任一所述的装置,其特征在于,所述FTP Server备进程进一步包括:
链路管理单元,用于在所述传输子单元在完成文件传输后关闭所述FTPServer备进程和FTP客户端之间用于传输该文件的数据链路,并发送文件传输完毕通知至所述FTP Server主进程;
所述FTP Server主进程中的请求接收单元进一步接收所述文件传输完毕通知;所述传输通知单元进一步在所述请求接收单元接收到文件传输完毕通知后,通过与FTP客户端之间的控制链路通知FTP客户端已完成传输的文件。
10.根据权利要求9所述的装置,其特征在于,FTP Server主进程向FTPServer备进程发送的通知、以及FTP Server备进程向FTP Server主进程发送的通知采用Socket发送。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210091670.XA CN102647465B (zh) | 2012-03-30 | 2012-03-30 | 应用于堆叠系统中的ftp数据传输方法和装置 |
US14/372,823 US9426206B2 (en) | 2012-03-30 | 2013-03-25 | FTP data transmission in stack system |
DE112013000517.4T DE112013000517B4 (de) | 2012-03-30 | 2013-03-25 | FTP-Datenübertragung in einem Stack-System |
PCT/CN2013/073121 WO2013143427A1 (en) | 2012-03-30 | 2013-03-25 | Ftp data transmission in stack system |
GB1413352.4A GB2512791B (en) | 2012-03-30 | 2013-03-25 | FTP data transmission in stack system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210091670.XA CN102647465B (zh) | 2012-03-30 | 2012-03-30 | 应用于堆叠系统中的ftp数据传输方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102647465A true CN102647465A (zh) | 2012-08-22 |
CN102647465B CN102647465B (zh) | 2014-12-10 |
Family
ID=46660038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210091670.XA Active CN102647465B (zh) | 2012-03-30 | 2012-03-30 | 应用于堆叠系统中的ftp数据传输方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9426206B2 (zh) |
CN (1) | CN102647465B (zh) |
DE (1) | DE112013000517B4 (zh) |
GB (1) | GB2512791B (zh) |
WO (1) | WO2013143427A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023735A (zh) * | 2012-12-11 | 2013-04-03 | 四川长虹电器股份有限公司 | 局域网内传输多媒体文件的方法 |
WO2013143427A1 (en) * | 2012-03-30 | 2013-10-03 | Hangzhou H3C Technologies Co., Ltd. | Ftp data transmission in stack system |
CN103809986A (zh) * | 2012-11-07 | 2014-05-21 | 江苏仕德伟网络科技股份有限公司 | 一种自动安装统计代码的方法 |
WO2016206381A1 (zh) * | 2015-06-26 | 2016-12-29 | 中兴通讯股份有限公司 | 文件处理方法及装置 |
CN107360151A (zh) * | 2017-07-07 | 2017-11-17 | 黄淮学院 | 一种内网文件远程访问的方法及系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104320398B (zh) * | 2014-10-29 | 2017-08-11 | 国家电网公司 | 一种以太网防窃入双链路通讯控制系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060092832A1 (en) * | 2004-10-28 | 2006-05-04 | Ignatius Santoso | Stack manager protocol with automatic set up mechanism |
CN1794663A (zh) * | 2005-12-31 | 2006-06-28 | 杭州华为三康技术有限公司 | 堆叠系统中文件的访问方法 |
CN101217411A (zh) * | 2008-01-02 | 2008-07-09 | 杭州华三通信技术有限公司 | 实现堆叠设备软件升级的方法、设备及系统 |
CN102244669A (zh) * | 2010-05-12 | 2011-11-16 | 杭州华三通信技术有限公司 | 一种堆叠设备中软件升级的方法和堆叠设备 |
CN102316035A (zh) * | 2011-09-06 | 2012-01-11 | 中兴通讯股份有限公司 | 集群路由器系统中前后台通讯及数据安全处理方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6339785B1 (en) * | 1999-11-24 | 2002-01-15 | Idan Feigenbaum | Multi-server file download |
US6826195B1 (en) * | 1999-12-28 | 2004-11-30 | Bigband Networks Bas, Inc. | System and process for high-availability, direct, flexible and scalable switching of data packets in broadband networks |
US7225244B2 (en) * | 2000-05-20 | 2007-05-29 | Ciena Corporation | Common command interface |
US20030120822A1 (en) * | 2001-04-19 | 2003-06-26 | Langrind Nicholas A. | Isolated control plane addressing |
DE10151116A1 (de) * | 2001-10-15 | 2003-05-08 | Siemens Ag | Verfahren zur Inbetriebnahme eines Bedien- und Beobachtungssystems von Feldgeräten |
US7254636B1 (en) * | 2003-03-14 | 2007-08-07 | Cisco Technology, Inc. | Method and apparatus for transparent distributed network-attached storage with web cache communication protocol/anycast and file handle redundancy |
US20050262148A1 (en) * | 2004-05-03 | 2005-11-24 | Davitt Harold H | Simplified, secure electronic project data exchange |
TW200814690A (en) * | 2006-09-01 | 2008-03-16 | Teco Elec & Machinery Co Ltd | System and method for push-broadcasting advertisement based on a hierarchical network structure |
US8682916B2 (en) * | 2007-05-25 | 2014-03-25 | F5 Networks, Inc. | Remote file virtualization in a switched file system |
US7895298B1 (en) * | 2008-03-14 | 2011-02-22 | Duane Allen Murray | Publicly accessible delivery confirmation system for virtual digital download items |
CN102130817B (zh) | 2010-01-20 | 2013-09-11 | 杭州华三通信技术有限公司 | 堆叠系统中保持流量不中断的方法和机框交换机 |
CN102148845B (zh) | 2010-02-08 | 2015-06-10 | 中兴通讯股份有限公司 | 一种实现ftp数据传输的方法和系统 |
US8654680B2 (en) * | 2010-03-16 | 2014-02-18 | Force10 Networks, Inc. | Packet forwarding using multiple stacked chassis |
CN102647465B (zh) | 2012-03-30 | 2014-12-10 | 杭州华三通信技术有限公司 | 应用于堆叠系统中的ftp数据传输方法和装置 |
-
2012
- 2012-03-30 CN CN201210091670.XA patent/CN102647465B/zh active Active
-
2013
- 2013-03-25 GB GB1413352.4A patent/GB2512791B/en active Active
- 2013-03-25 US US14/372,823 patent/US9426206B2/en active Active
- 2013-03-25 WO PCT/CN2013/073121 patent/WO2013143427A1/en active Application Filing
- 2013-03-25 DE DE112013000517.4T patent/DE112013000517B4/de active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060092832A1 (en) * | 2004-10-28 | 2006-05-04 | Ignatius Santoso | Stack manager protocol with automatic set up mechanism |
CN1794663A (zh) * | 2005-12-31 | 2006-06-28 | 杭州华为三康技术有限公司 | 堆叠系统中文件的访问方法 |
CN101217411A (zh) * | 2008-01-02 | 2008-07-09 | 杭州华三通信技术有限公司 | 实现堆叠设备软件升级的方法、设备及系统 |
CN102244669A (zh) * | 2010-05-12 | 2011-11-16 | 杭州华三通信技术有限公司 | 一种堆叠设备中软件升级的方法和堆叠设备 |
CN102316035A (zh) * | 2011-09-06 | 2012-01-11 | 中兴通讯股份有限公司 | 集群路由器系统中前后台通讯及数据安全处理方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013143427A1 (en) * | 2012-03-30 | 2013-10-03 | Hangzhou H3C Technologies Co., Ltd. | Ftp data transmission in stack system |
GB2512791A (en) * | 2012-03-30 | 2014-10-08 | Hangzhou H3C Tech Co Ltd | FTP data transmission in stack system |
US9426206B2 (en) | 2012-03-30 | 2016-08-23 | Hangzhou H3C Technologies Co., Ltd. | FTP data transmission in stack system |
GB2512791B (en) * | 2012-03-30 | 2020-06-03 | Hangzhou H3C Tech Co Ltd | FTP data transmission in stack system |
CN103809986A (zh) * | 2012-11-07 | 2014-05-21 | 江苏仕德伟网络科技股份有限公司 | 一种自动安装统计代码的方法 |
CN103023735A (zh) * | 2012-12-11 | 2013-04-03 | 四川长虹电器股份有限公司 | 局域网内传输多媒体文件的方法 |
CN103023735B (zh) * | 2012-12-11 | 2015-07-15 | 四川长虹电器股份有限公司 | 局域网内传输多媒体文件的方法 |
WO2016206381A1 (zh) * | 2015-06-26 | 2016-12-29 | 中兴通讯股份有限公司 | 文件处理方法及装置 |
CN107360151A (zh) * | 2017-07-07 | 2017-11-17 | 黄淮学院 | 一种内网文件远程访问的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102647465B (zh) | 2014-12-10 |
GB2512791A (en) | 2014-10-08 |
DE112013000517T5 (de) | 2014-09-25 |
GB2512791B (en) | 2020-06-03 |
GB201413352D0 (en) | 2014-09-10 |
WO2013143427A1 (en) | 2013-10-03 |
US9426206B2 (en) | 2016-08-23 |
US20140379832A1 (en) | 2014-12-25 |
DE112013000517B4 (de) | 2021-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102647465B (zh) | 应用于堆叠系统中的ftp数据传输方法和装置 | |
EP3190766B1 (en) | Method, device and system for invoking local service assembly by browser | |
EP3179701B1 (en) | File upload and download methods and associated server | |
CN104836814B (zh) | 智能硬件云端接入控制方法及其相应的装置 | |
EP3252997B1 (en) | An iot-enabled device | |
CN110808948B (zh) | 远程过程调用方法、装置及系统 | |
EP3253095A1 (en) | An iot-enabled device and a method for manufacturing an iot device | |
CN113872735B (zh) | 数据传输方法、装置及设备 | |
CN105338121A (zh) | Ftp服务端及文件传输方法 | |
KR20170104180A (ko) | 전자 장치 및 전자 장치 간의 인증 수행 방법 | |
CN106850554B (zh) | 双系统定向连接的方法和装置 | |
CN107508916B (zh) | 用于智能机器人的服务器链接管理方法 | |
CN105812413B (zh) | 通信方法及设备 | |
JP2015524113A (ja) | 汎用デバイスにおけるファイル送受信装置及び方法 | |
CN105245568A (zh) | 一种文件传输方法 | |
US9261948B2 (en) | Image forming apparatus and control method for executing a proxy in response to a heartbeat | |
CN110324302B (zh) | 一种iot设备通信方法 | |
EP2916514A2 (en) | A method for processing URL and an associated server and a non-transitory computer readable storage medium | |
CN105471718A (zh) | 一种全双工消息队列的实现方法 | |
US20240048990A1 (en) | Bluetooth connection method and system, intelligent terminal, and computer storage medium | |
CN106899635B (zh) | 文件传输协议数据链路实现固定通信端口的方法及装置 | |
CN111143857B (zh) | 一种数据分享方法、机器人控制器及存储介质 | |
EP3000025B1 (en) | Remote update of a portable storage device | |
CN110572440B (zh) | 用于数据传输的方法及装置、家电设备、存储介质 | |
CN110022310B (zh) | 基于云计算开放网络操作系统的授权方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address |