亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

文件傳輸方法和系統(tǒng)的制作方法

文檔序號(hào):9380318閱讀:571來(lái)源:國(guó)知局
文件傳輸方法和系統(tǒng)的制作方法
【專(zhuān)利說(shuō)明】
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)傳輸?shù)募夹g(shù)領(lǐng)域,特別是涉及一種文件傳輸方法,以及文件傳輸方法系統(tǒng)。
【【背景技術(shù)】】
[0002]隨著移動(dòng)終端處理能力的提升,移動(dòng)終端作為移動(dòng)互聯(lián)網(wǎng)的入口,并逐漸廣泛使用,進(jìn)而依賴(lài)于移動(dòng)互聯(lián)網(wǎng)進(jìn)行各種文件的傳輸。例如,在人們使用移動(dòng)互聯(lián)網(wǎng)的過(guò)程中,對(duì)上傳文件的需求更為強(qiáng)烈,常常希望通過(guò)移動(dòng)終端將某些文件傳至位于移動(dòng)互聯(lián)網(wǎng)中的某一接收端中進(jìn)行存儲(chǔ),以便于他人分享上傳的文件或者將文件備份存儲(chǔ)。
[0003]但是,由于移動(dòng)互聯(lián)網(wǎng)網(wǎng)絡(luò)帶寬窄小,且信道容易受到干擾造成傳輸?shù)牟环€(wěn)定,例如目前的2G和3G網(wǎng)絡(luò)的傳輸速度較固網(wǎng)寬帶低,而丟包率卻比固網(wǎng)寬帶高,此類(lèi)傳輸速度低丟包率高的網(wǎng)絡(luò),稱(chēng)為弱網(wǎng)絡(luò)。在弱網(wǎng)絡(luò)環(huán)境下上傳文件,需要耗費(fèi)大量的時(shí)間,且浪費(fèi)移動(dòng)網(wǎng)絡(luò)的帶寬。
[0004]現(xiàn)有弱網(wǎng)絡(luò)環(huán)境下,文件上傳的常用解決方案如下:步驟I)發(fā)送方與接收方建立一條TCP或者HTTP連接。2)順序獲取文件的一數(shù)據(jù)塊,發(fā)送到接收方,并把該次發(fā)送記入超時(shí)等待隊(duì)列。3)接收方判斷數(shù)據(jù)是否有效,若有效則回應(yīng)接收該數(shù)據(jù)塊成功,否則不回復(fù)或者回復(fù)數(shù)據(jù)塊無(wú)效。4)發(fā)送方若收到接收方的回復(fù)并且有效,則執(zhí)行步驟2),直到文件發(fā)送完畢;否則若收到接收方回復(fù)數(shù)據(jù)塊無(wú)效或者等待回復(fù)超時(shí)(發(fā)送方計(jì)時(shí)等待),則重發(fā)該數(shù)據(jù)塊?,F(xiàn)有弱網(wǎng)絡(luò)中的常用方案使用的是串行發(fā)送文件塊,不能有效利用帶寬,而且超時(shí)等待時(shí)間長(zhǎng),最終導(dǎo)致文件傳輸時(shí)間過(guò)長(zhǎng)。

【發(fā)明內(nèi)容】

[0005]基于此,有必要針對(duì)現(xiàn)有技術(shù)中弱網(wǎng)絡(luò)環(huán)境下文件傳輸不能有效利用帶寬,而且超時(shí)等待時(shí)間長(zhǎng),最終導(dǎo)致文件傳輸時(shí)間過(guò)長(zhǎng)問(wèn)題,提供一種文件傳輸方法與系統(tǒng),通過(guò)多連接、多窗口并發(fā),加快文件的傳輸速度。
[0006]一種文件傳輸方法,包括步驟:建立與接收端的至少兩個(gè)連接,每個(gè)所述連接至少包括一個(gè)發(fā)送窗口 ;將待發(fā)送文件分成至少兩個(gè)數(shù)據(jù)塊,在每個(gè)所述連接的發(fā)送窗口中填充相應(yīng)的數(shù)據(jù)塊,通過(guò)所述發(fā)送窗口將所述數(shù)據(jù)塊發(fā)送給接收端;獲取由接收端接收該數(shù)據(jù)塊后返回的確認(rèn)信息,所述確認(rèn)信息包括本次接收的數(shù)據(jù)塊信息和接收端期望接收的數(shù)據(jù)塊信息;根據(jù)所述確認(rèn)信息,清空所述本次接收的數(shù)據(jù)塊信息所對(duì)應(yīng)的發(fā)送窗口,將接收端期望接收的數(shù)據(jù)塊填充至已清空的發(fā)送窗口并通過(guò)該發(fā)送窗口發(fā)送給接收端。
[0007]相應(yīng)地,本發(fā)明還提供一種文件傳輸系統(tǒng),包括:連接模塊,用于建立與接收端的至少兩個(gè)連接,每個(gè)所述連接至少包括一個(gè)發(fā)送窗口 ;分塊發(fā)送模塊,用于將待發(fā)送文件分成至少兩個(gè)數(shù)據(jù)塊,在每個(gè)所述連接的發(fā)送窗口中填充相應(yīng)的數(shù)據(jù)塊,通過(guò)所述發(fā)送窗口將所述數(shù)據(jù)塊發(fā)送給接收端;獲取確認(rèn)模塊,用于獲取由接收端接收該數(shù)據(jù)塊后返回的確認(rèn)信息,所述確認(rèn)信息包括本次接收的數(shù)據(jù)塊信息和接收端期望接收的數(shù)據(jù)塊信息;發(fā)送模塊,用于根據(jù)所述確認(rèn)信息,清空所述本次接收的數(shù)據(jù)塊信息所對(duì)應(yīng)的發(fā)送窗口,將接收端期望接收的數(shù)據(jù)塊填充至已清空的發(fā)送窗口并通過(guò)該發(fā)送窗口發(fā)送給接收端。
[0008]本發(fā)明通過(guò)建立與接收端的至少兩個(gè)連接,每個(gè)所述連接至少包括一個(gè)發(fā)送窗口,以形成多連接和多窗口的傳輸;將待發(fā)送文件分成多個(gè)數(shù)據(jù)塊,并將數(shù)據(jù)塊分到不同的連接中并行發(fā)送。根據(jù)接收端的確認(rèn)信息,將接收端期望接收的數(shù)據(jù)塊填充至已清空的發(fā)送窗口并通過(guò)該發(fā)送窗口發(fā)送給接收端,直到所有數(shù)據(jù)塊被接收端接收。其中,每個(gè)連接與文件塊并沒(méi)有固定映射關(guān)系,而是哪個(gè)連接最先有被清空的發(fā)送窗口就把下一發(fā)送的數(shù)據(jù)塊填充至該發(fā)送窗口,即哪個(gè)連接的傳輸速度快,就給哪個(gè)連接派發(fā)更多的數(shù)據(jù)塊,所以整體待發(fā)送文件的傳輸時(shí)間就能有效減少。數(shù)據(jù)塊的派發(fā)依賴(lài)于連接的空閑程度和速度,尤其是當(dāng)有個(gè)別連接傳輸質(zhì)量差或者傳輸速度慢出現(xiàn)連接卡住的情況,本發(fā)明能通過(guò)將數(shù)據(jù)塊派發(fā)至傳輸速度快的連接,避免個(gè)別連接卡住帶來(lái)的整體耗時(shí)增大。本發(fā)明通過(guò)在不限于TCP、UDP、HTTP等連接方式下,并發(fā)多連接,多窗口的方式、通過(guò)合理的數(shù)據(jù)塊派發(fā)填充方式,提高帶寬利用率,有效地縮短了文件的傳輸時(shí)間。
【【附圖說(shuō)明】】
[0009]圖1是本發(fā)明一種文件傳輸方法的流程圖;
[0010]圖2是本發(fā)明一種文件傳輸方法的第一實(shí)施例的流程圖;
[0011]圖3是本發(fā)明一種文件傳輸方法的第二實(shí)施例的流程圖;
[0012]圖4是本發(fā)明一種文件傳輸方法的第三實(shí)施例的流程圖;
[0013]圖5是本發(fā)明一種文件傳輸方法第四實(shí)施例的文件傳輸過(guò)程示意圖;
[0014]圖6是圖5中其中一連接某一時(shí)間的數(shù)據(jù)塊傳輸過(guò)程示意圖;
[0015]圖7是本發(fā)明一種文件傳輸系統(tǒng)的結(jié)構(gòu)框圖;
[0016]圖8是本發(fā)明一種文件傳輸系統(tǒng)實(shí)施例的結(jié)構(gòu)框圖;
[0017]圖9是能實(shí)現(xiàn)本發(fā)明實(shí)施例的一個(gè)計(jì)算機(jī)系統(tǒng)1000的模塊圖。
【【具體實(shí)施方式】】
[0018]為了使本發(fā)明的目的、技術(shù)方案和有點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述。
[0019]請(qǐng)參閱圖1,其是本發(fā)明一種文件傳輸方法的流程圖。一種文件傳輸方法,包括步驟:
[0020]SlOl:建立與接收端的至少兩個(gè)連接,每個(gè)所述連接至少包括一個(gè)發(fā)送窗口 ;
[0021]建立發(fā)送端與接收端的連接,其中連接數(shù)量至少兩個(gè),每個(gè)所述連接至少包括一個(gè)發(fā)送窗口,根據(jù)開(kāi)發(fā)復(fù)雜度和收效比,優(yōu)選地連接個(gè)數(shù)不超過(guò)3個(gè),發(fā)送窗口個(gè)數(shù)可以盡可能大。若接收端為服務(wù)器,進(jìn)一步地,該連接可以是發(fā)送端與一個(gè)服務(wù)器的至少兩個(gè)連接;也可以是與至少兩個(gè)服務(wù)器連接,每個(gè)服務(wù)器與發(fā)送端有I個(gè)連接。
[0022]通過(guò)建立多個(gè)連接,可以將數(shù)據(jù)并行發(fā)出,在弱網(wǎng)絡(luò)的環(huán)境下,充分利用帶寬資源,加快待發(fā)送文件的傳輸速度。
[0023]所述發(fā)送窗口為連接的發(fā)送工具,用于承載待發(fā)送數(shù)據(jù),并將數(shù)據(jù)塊發(fā)送至接收端。
[0024]S102:將待發(fā)送文件分成至少兩個(gè)數(shù)據(jù)塊,在每個(gè)所述連接的發(fā)送窗口中填充相應(yīng)的數(shù)據(jù)塊,通過(guò)所述發(fā)送窗口將所述數(shù)據(jù)塊發(fā)送給接收端;
[0025]將待發(fā)送文件分成至少兩個(gè)數(shù)據(jù)塊,對(duì)每個(gè)所述連接派發(fā)不同的數(shù)據(jù)塊,并將數(shù)據(jù)塊填充至每個(gè)連接的發(fā)送窗口中,其中每個(gè)發(fā)送窗口填充一個(gè)數(shù)據(jù)塊。通過(guò)所述發(fā)送窗口將所述數(shù)據(jù)塊發(fā)送給接收端,使數(shù)據(jù)塊并行發(fā)送減少文件的傳輸時(shí)間。
[0026]S103:獲取由接收端接收該數(shù)據(jù)塊后返回的確認(rèn)信息,所述確認(rèn)信息包括本次接收的數(shù)據(jù)塊信息和接收端期望接收的數(shù)據(jù)塊信息;
[0027]接收端成功接收到數(shù)據(jù)塊后,向發(fā)送端返回的確認(rèn)信息,所述確認(rèn)信息包括本次接收的數(shù)據(jù)塊信息和接收端期望接收的數(shù)據(jù)塊信息;所述本次接收的數(shù)據(jù)塊信息可以是接收端本次接收的數(shù)據(jù)塊的序號(hào)信息;所述接收端期望接收的數(shù)據(jù)塊信息可以是接收端期望接收的數(shù)據(jù)塊的序號(hào)信息。
[0028]從確認(rèn)信息中發(fā)送端可明確知道已成功接收的數(shù)據(jù)塊信息和接收端期望接收的數(shù)據(jù)塊信息,發(fā)送端根據(jù)該信息,發(fā)送相應(yīng)的數(shù)據(jù)塊給接收端。
[0029]S104:根據(jù)所述確認(rèn)信息,清空所述連接的本次接收的數(shù)據(jù)塊信息所對(duì)應(yīng)的發(fā)送窗口,將接收端期望接收的數(shù)據(jù)塊填充至已清空的發(fā)送窗口并通過(guò)該發(fā)送窗口發(fā)送給接收端。
[0030]所述確認(rèn)信息中的本次接收的數(shù)據(jù)塊信息清楚地告訴了發(fā)送端哪一個(gè)數(shù)據(jù)塊已經(jīng)被接收端接收,所以清空該本次接收的數(shù)據(jù)塊信息對(duì)應(yīng)的發(fā)送窗口,只要哪個(gè)連接有已清空的發(fā)送窗口就將接收端期望接收的數(shù)據(jù)塊填充至該已清空的發(fā)送窗口并通過(guò)該發(fā)送窗口發(fā)送給接收端。
[0031]本發(fā)明通過(guò)建立與接收端的至少兩個(gè)連接,每個(gè)所述連接至少包括一個(gè)發(fā)送窗口,以形成多連接和多窗口的傳輸;將待發(fā)送文件分成至少兩個(gè)數(shù)據(jù)塊,并將數(shù)據(jù)塊分到不同的連接中并行發(fā)送。根據(jù)接收端的確認(rèn)信息,將接收端期望接收的數(shù)據(jù)塊填充至已清空的發(fā)送窗口并通過(guò)該發(fā)送窗口發(fā)送給接收端,直到所有數(shù)據(jù)塊被接收端接收。其中,每個(gè)連接與文件塊并沒(méi)有固定映射關(guān)系,而是哪個(gè)連接最先有被清空的發(fā)送窗口就把下一發(fā)送的數(shù)據(jù)塊填充至該發(fā)送窗口,即哪個(gè)連接的傳輸速度快,就給哪個(gè)連接派發(fā)更多的數(shù)據(jù)塊,所以整體待發(fā)送文件的傳輸時(shí)間就能有效減少。數(shù)據(jù)塊的派發(fā)依賴(lài)于連接的空閑程度和速度,尤其是當(dāng)有個(gè)別連接傳輸質(zhì)量差或者傳輸速度慢出現(xiàn)連接卡住的情況,本發(fā)明能通過(guò)將數(shù)據(jù)塊派發(fā)至傳輸速度快的連接,避免個(gè)別連接卡住帶來(lái)的整體耗時(shí)增大。本發(fā)明通過(guò)在不限于TCP、UDP、HTTP等連接方式下,并發(fā)多連接,多窗口的方式、通過(guò)合理的數(shù)據(jù)塊派發(fā)填充方式,提高帶寬利用率,有效地縮短了文件的傳輸時(shí)間。
[0032]請(qǐng)參閱圖2,其是本發(fā)明一種文件傳輸方法第一實(shí)施例的流程圖。
[0033]S201:建立與接收端的至少兩個(gè)連接,每個(gè)所述連接至少包括一
當(dāng)前第1頁(yè)1 2 3 4 5 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1