




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
FTP協(xié)議分析鄔猛(呼倫貝爾學(xué)院計算機科學(xué)與技術(shù)學(xué)院10級軟件工程2010121406)摘要:本論文的目的是描述FTP協(xié)議的基礎(chǔ)理論知識,分析FTP數(shù)據(jù)傳輸時所捕獲的不同數(shù)據(jù)包,通過數(shù)據(jù)包的分析了解「?。康墓ぷ髟?。FTP(文件傳輸協(xié)議)使得主機間可以共享文件。使用TCP生成一個虛擬連接用于控制信息,然后再生成一個單獨的TCP連接用于數(shù)據(jù)傳輸??刂七B接使用類似TELNET協(xié)議在主機間交換命令和消息。文件傳輸協(xié)議是TCP/IP網(wǎng)絡(luò)上兩臺計算機傳送文件的協(xié)議,F(xiàn)TP是在TCP/IP網(wǎng)絡(luò)和INTERNET上最早使用的協(xié)議之一,它屬于網(wǎng)絡(luò)協(xié)議組的應(yīng)用層OFTP客戶機可以給服務(wù)器發(fā)出命令來下載文件,上傳文件,創(chuàng)建或改變服務(wù)器上的目錄。關(guān)鍵詞:FTP協(xié)議分析文件傳輸1引言早期在Internet上傳輸文件,并不是一件容易的事,我們知道Internet是一個非常復(fù)雜的計算機環(huán)境,有PC、工作站、MAC、服務(wù)器、大型機等等,而這些計算機可能運行不同的操作系統(tǒng),有Unix、Dos、Windows、MacOS等等,各種操作系統(tǒng)之間的文件交流,需要建立一個統(tǒng)一的文件傳輸協(xié)議,用來從一個主機把文件復(fù)制到另一個主機。雖然從一個系統(tǒng)向另一個系統(tǒng)傳送文件看起來直截了當(dāng),但還有一些問題必須先解決。例如,兩個文件系統(tǒng)可能使用不同的文件名約定,不同的方法表示文件和數(shù)據(jù),不同的目錄結(jié)構(gòu)。所有這些問題已經(jīng)由FTP以一種簡單巧妙的方法解決了,F(xiàn)TP是應(yīng)用層的協(xié)議,它基于傳輸層,為用戶服務(wù),它們負(fù)責(zé)進行文件的傳輸。本文就介紹7FTP的數(shù)據(jù)報文結(jié)構(gòu)及其工作原理。FTP的工作模型FTP采用了和HTTP一樣的客戶機/服務(wù)器方式,通過一系列的請求與響應(yīng)來完成數(shù)據(jù)的傳輸。和Telnet一樣,F(xiàn)TP需要提供一種登陸機制,即需要輸入用戶名和口令,才能進入遠(yuǎn)程FTP服務(wù)器,與其它客戶機——服務(wù)器模型不同的是,F(xiàn)TP客戶機與服務(wù)器之間用TCP建立了雙重連接,一個是控制連接、一個是數(shù)據(jù)連接。圖2.1給出7FTP的基本模型??蛻粲腥齻€構(gòu)件:用戶接口、客戶控制進程和客戶數(shù)據(jù)傳輸進程。服務(wù)器有兩個構(gòu)件:服務(wù)器控制進程和服務(wù)器數(shù)據(jù)傳輸進程??刂七B接是在控制進程之間進行的。數(shù)據(jù)連接是在數(shù)據(jù)傳送進程間進行的。
用尸t客戶IK務(wù)就圖2.1FTP基本模型整個會話過程是以控制連接來維持的,控制連接負(fù)責(zé)傳送控制信息,例如用戶名和口令,取文件和放文件等命令。當(dāng)客戶端每次請求傳送文件是,服務(wù)器就與客戶端建立一條數(shù)據(jù)連接,進行數(shù)據(jù)傳送,一旦數(shù)據(jù)傳送完畢,數(shù)據(jù)連接會話就會被關(guān)閉,但控制連接依然存在,客戶端可以繼續(xù)發(fā)出命令,直到客戶端退出FTP會話,此時雙方就關(guān)閉控制進程。FTP的連接傳送過程3.1客戶端主動連接服務(wù)器客戶端主動連接服務(wù)器,服務(wù)器以被動方式打開21號端口,以建立控制連接。因為FTP是基于TCP可靠傳輸?shù)奈募鬏攨f(xié)議,所以,要通過TCP的三次握手來建立控制連接。如圖3.1、圖3.2和圖3.3是客戶端與服務(wù)器用過三次握手建立控制連接的過程。它們采用3937和21號端口發(fā)送控制信息。包總;散」1口肉序dr.用蘇圖3.1請求端發(fā)送的SYN報文(第一次握手)當(dāng)服務(wù)器收到圖3.1的SYN報文后,發(fā)回一個如圖3.2包含服務(wù)器初始序號的SYN報文段作為應(yīng)答。同時,將確認(rèn)序號設(shè)置為客戶的ISN加1以對客戶的SYN報文段進行確認(rèn)。皿網(wǎng)暗崗抓自n-ptaoi■g3Xk■用功RH■序號Wl司泡g瞬口日做口日睇MSEUATE.024:SL&nTCP胡1Q2.Lh&.Li.J^q:£T::FC...:!■?ieas.3£2:100:La檢.C口2Q:Se.67LIDPeeLIE.LEB.B.32E]施:LAM..JKi憤.]L.it33J?Qi:ST:JU...洲1供成E1S2L13XSCII.2西強anTCP51皿L6B.L1.UJJ3T牧87:fC…1?】E$832£3?31A仲.3M】L獺網(wǎng)£!明釁豎.32fl-5E&7I.TCP]O3L旺.LEB.B3EE]DD:LA:JS.:1?]6flIL44331744:BT:K.E<I47E5S3SJ5ZLI33Eaa—.4網(wǎng)w*TCFSIL12.LBH.L1.相溯牧er;瓦…]?832□DO:UJd9.制"刨24]-17Kf^5.E河5STMTCP翊L43.LE&.£^231dDLAM.i醐n41303744BT兀.由IWS實部:3S2LIM第毆S乳E.T9CICfTOLIE.LED.LI.44用,T■iq.&T.K...JKL3M.O.3ZZ1DO:JAM:ME]L33Wa此4THffl5.I網(wǎng)參T'ftTCP卻LIZ.LS&Ji:3Z21anla禪.1俊UMHH知r林BTK.郁TEKrffi暗LI蹄&8洲:*TXICPL旺.LEP.LI.14而ST4q:er:K...JKL】吹.8.酩DC:1A.:X9.滋】*7106叫也&OT5■d由愛SL2TCP凱21anla4】的1LU縮44:BTK...郁恤部IDm實aisTCP的L旺.LHB.11.44393T44:er:ic...IKi1朋0.3E21DOIAX9.3EEiL33T2il]L£4%3L2TCFT5192.W以.笈21anla的.謎】&ILtl■M6TK.即如跪知源113戲.?1224:E£SL2TCP60U2.LEB.LI.1-1?B74七ST;應(yīng)…iw:iea832£1DO:IAXQ.SS31L3ZT¥24147B6LI&J3.,_■!_icrT3LIE.LQD.BL3Z二-QD.LA.A3...JKLJM.M.UMJ7■M.QT.JE...2-U47GG3LG35ZLlJJ7tl?H24SB8L2TCP6SLIE.LBB.LJ.H44:87:K...3?IM83£3DO:1A福.制期仙24H766L-5瀉2Q:Se.3L2ICP3&L92.LEB.B.3E-UD:LA:A9...JKi]6fl.2L113SJ7?:日T:JE...24147EE33S15ZL13375]It-咨3L2TCP5d觀.LBB.LI.41用37H67;fC…rs?】&832□in:m用.:物口河S414TBLAT療村SB3L£TCPasHE.LEB.a32Z1ODLA炯.1彼1朋IL41333f744:BT兀.24lt7EGlB7352LI337S516£4%3L2TCPe?L12.LBB.L1.4J朝4。67:fC...1?】&8弗£3in:u網(wǎng).湖L明段S4HTB6L09?19閔5SSL2TCPLg.LGE.&3221(IDLAM.IQ21醐1L41303744BTJT.3S2LI士舛。VISLlltl二TCPIK1&3S.322L-M92lbs.leamPHJrw.i一ODOO44C7P:MED嶇ODLL1915如f9an0D45?3D隊>ata■Ba0uu■E4■—■ALM2<x0D1QCO34ID8ECOOD7F06S999COABOB2DCDAB_4.-□Aldr?iT44STTC:KHD12-0030CBSCML5OF61SFEE65DFcaED:3CTfi3012Hr.B』.gB.r<Sr,—裊Aditis:如:J&招:L5:W:n0D3040DOWOC00OBOZ0*105D4.□1D303OD0101FL,-T呼CPiD口J0D40gD2.曰IPv45潮叩Vh-13E-1:4Tyr*誠sHfEsfrus〕o江IlCO.=RdhI;ina?...P....=ll31UIL£4慶],-111iy0.■■也i?i.E吧TtupxihpU用md.?:hroxifihj'Ai.{■..?D.=lu-ibl:■?thalilyH*?naltr-hllaLLlily一[圖3.2服務(wù)器發(fā)回的ACK報文(第二次握手)當(dāng)客戶端收到如圖3.2的報文后,客戶必須將確認(rèn)序號設(shè)置為服務(wù)器的ISN加1以對服務(wù)器的SYN報文進行確認(rèn)。如圖3.3所示報文。
圖3.3客戶端對服務(wù)器的確認(rèn)報文(第三次握手)此時,客戶與服務(wù)器之間就建立了控制連接,在整個過程中,控制連接是一直打開的。3.2控制連接當(dāng)客戶與服務(wù)器之間建立了控制連接以后,雙方開始在控制連接上進行建立數(shù)據(jù)連接前的準(zhǔn)備,首先服務(wù)器向客戶端返回代碼為220的服務(wù)器準(zhǔn)備就緒報文,如圖3.4所示,表明服務(wù)就緒,服務(wù)器準(zhǔn)備接受新用戶。之后客戶端對服務(wù)器的報文會送確認(rèn)消息。?■「國X'wU縱序號ft£J巧,口譚IUC目的If目m口目SUMEIQACX0知鈿671192I&3/1]44MTI<4:ffTPC192I&3B.3E21.□CTLA.IA9.淺】LJ3&B9□1咨1涕671i建168札3E日00:3h柏LBS.1W11料:3?TT牌flT:K.M476KS35EL13S?2找Sfl67:1寧I&21弦1144S93I44:BTFC…132168B.2221.DQIA蛆.3EEjL3?M547SSS*3網(wǎng):我上咒L03LK2.UW9.32£100:U0呢瞬11瀏ST44flT:TC.間啊必物13淺鼠|iMSflT9G宇1IS21度U144331U:EfFK...132l&SB.2S21.DQIAX9.3EEjL]K?E4H7&5SK的Fnw?瘁ZL00:]A陽gIMJJqi罰m■MnT:TT.W啊5W53SZIJ35I590=2453TQG7Uia2.IES.1144M3IM:E702…102ISS.B.3221.DQIAM.m花段嗎.1上;L1Z.1M.D.3ZZL?:J*.?...LK.lM.J3.qi7331■H.OT.JE...Z-U47G5W5352L133TK-M58TQ6102」卒.1144M3IM:E7土…102iss.E.sa21.DQIAA3.3SJL33?花叫]防ZI.'M.eiLZML1Z.1M.D.32ZLCO:J*.ffi...LaZ.lM.J].q<叫31■H.OT.H:...Z-UATGWM3SEL135T30?加網(wǎng)做SL2glflS.II.牝如tt:ET:rc...LB2.1&5S.32LCO:IK期.制Lmsn?1L£q:5B.8LE75L92.1&S.B.3E■21?:j*:?...L92.168.J].q<胡nq4:BT:K...2<li7EEO9E3S2L13373C-12河做8L2成1強,.*933744:BT:BC...ISI&5快522LDO:LA:福.制燃咄21=^76611633E<I:S8.SLE73LM.168.B.3E21CO:J*:ffi...LE.16S.J].q<331■U:BT:H:...2<L475tJLE352L1337W網(wǎng)W8L2I9S-1&31]非沸JT44:明FC…LDS.iwH.ae£LDO:LA:福.湖伽枝牌H7661箝]£MSBSLESG192l&SB.3E2\00:Ik-491921部1】4i胡Tl4i:BT:7E.£4l47Eb]3S3S2II3375]16映W8L2段愜.10811.44M3T+4:WPC...LB2.1MH.9C2LDO:LA:網(wǎng).湖河孑24H7W-16117村TflSLESS132I&SB.3E2100:IkA3132168:|j44:39TF4<ATTT.aiW661部3521:133796的5fl.BL£L蛭1盼1]-H393144:w:rc...LGe.iwH.ae£LDO:LLJdfl.心修催均相崩SLE741^21由&.笑21CCi:IkA31^21部”4455rr4iATJT.找1打的1犧3S2II337B4|《|,|十-TCP1泌3明一*.於11罪?3?OCOOT457FC施BDA20Q1ft.如9154F四0800錨00irainain0inaOn□DID□□59ail8F4UODTF債4573CDUOBZDCDUDD2DOB2CDD15QF613FEE6SEDDIED3IC7k5DIB..■:zF.0030FF:FFU9S50000323230SHS36572763H55r,.r,.220-9h-tir-rr0W0EQ54?丸MD33W73KE73EDTS33EE31FTP'TscjceKhJ.□D5D2Q昂SF7ZZD5769SE53SFS3€BZQ7ZbSblCol:UlTlSOEl!:EM0D6064Tffl21ZE2EQDQA嘰…曰Jrwrfl日ILMTM.gDi.3UalLlmMdrnx:qi:37:JI::IC:BI>:A2SixurctAdifes00:1k帕15AFJfl!Dx&OdUljDIP)5-ITH.JUn.dkxi-■Ifsirsa£<x-1[ln^h:5C2D切LM】ATnuc-furvL-z-ilTQSJzQxJ]WB...=Rc-idx-a0.^lLtL*initaD-hlHimkl包崢mir■T'lrrjirlwii4'Hnra■"!IKr3■■■r*kn■■b圖3.4服務(wù)器發(fā)回代碼為220的服務(wù)就緒數(shù)據(jù)包
隨后,客戶端發(fā)送一個用戶名user命令,如圖3.5所示。用戶名為anonymous,表明用戶為匿名用戶,服務(wù)器應(yīng)答,代碼為331,表明用戶名被接受,要求輸入口令,如圖3.6所示。同樣,客戶端回送一個TCP確認(rèn)消息,然后客戶端輸入密碼,服務(wù)器會送一個如圖3.7,代碼為230的登陸成功報文。圖3.5客戶端發(fā)送的user命令報文圖3.6代碼為331的用戶名正確并要求口令報文
圖3.7代碼為230的登陸成功報文登陸成功后,服務(wù)器發(fā)送一個命令,如圖3.8所示,可以看到,這個命令為EnteringPassiveMode(192,168,8,32,8,82)代碼為227。這個,命令包含了兩部分,一個部分為服務(wù)器的IP地址,即2,另一個部分即為服務(wù)器打開數(shù)據(jù)連接時使用的端口,數(shù)據(jù)連接端口號為8*256+82=2130。
圖3.8進入被動模式的數(shù)據(jù)包當(dāng)客戶端向服務(wù)器發(fā)送一個如圖3.9的LIST請求命令后,就開始數(shù)據(jù)連接了。3.3數(shù)據(jù)連接通過上面的控制連接我們可以得知,服務(wù)器通過被動打開模式將進行數(shù)據(jù)傳輸?shù)呐R時端口號發(fā)送給客戶端,通過圖3.9中的三個數(shù)據(jù)包我們可以得知,F(xiàn)TP用于傳輸數(shù)據(jù)的連接同樣是通過TCP的三次握手建立的,我們每次傳送文件,客戶端與服務(wù)器之間就會建立一條臨時的數(shù)據(jù)連接,用于傳輸數(shù)據(jù)。四:58.&世ET6619116:114393844:BT:IC...192.舊B.32我0DI)溯95幽D232t58.8L2n6610:16:&3J213000:U(,:1B2.IM.11.U393BEU..41477150121B49514H52150.812EP璀192.168.11.U3938U:BT:IC1B2.1EEB.322L3D01)..Wl瀏,炳圖3.9建立數(shù)據(jù)連接的三次握手當(dāng)我們在端口3938與端口2130間的數(shù)據(jù)連接上傳輸完數(shù)據(jù)之后,服務(wù)器和客戶端通過TCP的4次握手關(guān)閉數(shù)據(jù)連接。數(shù)據(jù)傳輸完畢之后,當(dāng)客戶端發(fā)送一個如圖3.10的QUIT請求命令,服務(wù)器發(fā)送一個如圖3.11的回應(yīng)報文,告訴客戶端斷開連接。接著,通過TCP的四次握手,結(jié)束整個FTP回話,F(xiàn)TP協(xié)議的回話過程就到此結(jié)束了。3.4主動模式與被動模式的區(qū)別在FTP建立數(shù)據(jù)連接是,有兩種模式,一種主動模式,一種被動模式。我們上面所描述的是被動模式,它與主動模式的區(qū)別在于,主動模式時,客戶端發(fā)送的為PORT命令給服務(wù)器端,服務(wù)器依據(jù)命令中制定的端口與客戶端建立數(shù)據(jù)連接,在被動模式下,客戶端發(fā)送PASV命令給服務(wù)器端,進入被動模式。服務(wù)器應(yīng)答時,包括IP地址和一個用于建立數(shù)據(jù)連接的端口。而不是使用我們熟知的20號端口,客戶端的端口為自己選擇的一個端口。FTP的通信問題我們知道在不同的計算機上運行FTP客戶端,我們必須保證客戶端和服務(wù)器能進行通信,F(xiàn)TP需要解決的是使不同的操作系統(tǒng)、不同的字符集、不同的文件結(jié)構(gòu)以及不同的文件格式得到兼容的問題。在FTP的控制連接上,它使用NVTASCII字符集。通過命令與響應(yīng)來完成通信。FTP每次只發(fā)送一條命令或者響應(yīng),每一條都是一個短行,因此我們不必?fù)?dān)心它的文件格式或文件結(jié)構(gòu)。在FTP的數(shù)據(jù)連接上,可以傳送的文件類型有:ASCII文件這是傳送文本文件的默認(rèn)格式。每一個字符使用NVTASCII進行編碼。EBCDIC文件如果連接的兩端使用EBCDIC編碼,則可以使用EBCDIC編碼傳送。圖像文件這是傳送二進制文件的默認(rèn)格式,這種文件作為連續(xù)的比特流傳送而沒有任何編碼或解釋。FTP的命
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園實習(xí)老師聘用合同協(xié)議
- 區(qū)域戰(zhàn)略合作框架合同
- 房屋買賣合同補充協(xié)議書
- 企業(yè)短期借款合同協(xié)議
- 裝飾裝修材料供需合同范本
- 廣告公司員工培訓(xùn)合同范本
- 水資源綜合利用工程合同書
- 道路交通事故雙方和解合同書
- 農(nóng)業(yè)觀光園土地租賃合同
- 小學(xué)生每日教育課件
- DZ∕T 0215-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 煤(正式版)
- 品質(zhì)部組織架構(gòu)圖構(gòu)
- 《無損檢測》緒論
- 《幼兒園性教育》
- (高清版)TDT 1040-2013 土地整治項目制圖規(guī)范
- 《漏》公開課一等獎創(chuàng)新教案設(shè)計
- 暖氣維修常識知識培訓(xùn)課件
- 兒童合理用藥知識培訓(xùn)課件
- 中藥飲片的銷售方案
- 園林植物識別-園林植物的分類
- 2024年湖南省普通高中學(xué)業(yè)水平考試政治試卷(含答案)
評論
0/150
提交評論