摘 要:在傳統(tǒng)的FTP服務(wù)中主要使用TCP協(xié)議進(jìn)行文件傳輸,但由于TCP協(xié)議的3次握手很是耗時(shí),在長(zhǎng)傳輸鏈路上傳輸效率較低。本文介紹利用UDP協(xié)議進(jìn)行可靠、快速、多線程、多鏈路的文件傳輸,較好的解決了傳統(tǒng)文件傳輸中可靠性和效率高之間的矛盾。
關(guān)鍵詞:文件傳輸;FTP;UDP協(xié)議;上傳;下載;線程
中圖分類號(hào):TP368.1
傳統(tǒng)的FTP服務(wù)中進(jìn)行文件傳輸?shù)膮f(xié)議主要是TCP協(xié)議,隨著互聯(lián)網(wǎng)應(yīng)用的越來越普及,以及人們對(duì)帶寬和傳輸效率的要求越來越高,傳統(tǒng)的FTP服務(wù)已經(jīng)不能滿足人們需求的不斷增長(zhǎng)。本文通過介紹基于UDP協(xié)議進(jìn)行可靠的文件傳輸實(shí)現(xiàn),較好的解決了對(duì)帶寬和傳輸效率方面的需求。
1 FTP上傳實(shí)現(xiàn)
1.1 登錄FTP服務(wù)
客戶端連接服務(wù)端,連接成功后,服務(wù)端返回字符串“220 Welcome to FTP Server”。客戶端發(fā)送用戶命令“USER xxx”,F(xiàn)tpserver返回一個(gè)字符串“331 User name ok,need password”??蛻舳税l(fā)送密碼命令“PASS xxx”。Ftpserver 返回字符串“230 User successfully logged in”登錄成功返回的數(shù)值必須是230(以上步驟為登錄ftpserver,采用標(biāo)準(zhǔn)的ftp命令,上載和下載都是一樣的。)客戶端發(fā)送命令“UPUDPBUF 0”
1.2 創(chuàng)建UDP傳輸鏈路
UPUDPBUF表示udp上載方式,0表示normal傳輸。在這里我們都是使用normal傳輸方式。Ftpserver返回字符串“200 transfer code Permission”。客戶端發(fā)送“UDPPORT xxxx”。UDPPORT表示本地開始的udp端口,xxxx表示端口號(hào)。返回:”UDPPORT xxxx150 Opening BINARY mode data connection for file transfer.”其中xxxx是ftpserver上的udp端口號(hào)碼。
1.3 文件分割
參考文獻(xiàn):
[1]張漢萍.點(diǎn)對(duì)點(diǎn)報(bào)文傳輸系統(tǒng)的開發(fā)[J].科學(xué)大眾,2007(05).
[2]馬勇.基于UDP多播文件傳輸方法的研究[J].福建電腦,2009(02).
[3]周錦才.可靠UDP協(xié)議的設(shè)計(jì)思路與實(shí)現(xiàn)方法[J].周口師范學(xué)院學(xué)報(bào),2006(02).
[4]馮浩,蘇磊.基于TCP的多線程網(wǎng)絡(luò)文件傳輸系統(tǒng)[J].軟件導(dǎo)刊,2008(08).
[5]王海軍,劉彩霞,程?hào)|年.一種基于UDP的可靠傳輸協(xié)議分析與研究[J].計(jì)算機(jī)應(yīng)用研究,2005(11).
作者簡(jiǎn)介:程小恩(1984.03-),女,教師,碩士研究生,計(jì)算機(jī)應(yīng)用技術(shù)專業(yè),主要從事計(jì)算機(jī)應(yīng)用方面的相關(guān)工作和教學(xué)科研。
作者單位:四川商務(wù)職業(yè)學(xué)院,成都 611131