專利名稱:傳輸控制方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域中傳輸與IP技術(shù),具體地,涉及一種傳輸控制方法及裝置。
背景技術(shù):
傳統(tǒng)的端到端(End to End,簡稱E2E)的擁塞控制機(jī)制的主要目標(biāo)是在因特網(wǎng)的兩個(gè)端點(diǎn)之間按照路徑上面的可用帶寬來調(diào)節(jié)發(fā)送速率。E2E中一個(gè)源節(jié)點(diǎn)只能夠從一個(gè)特定的目的節(jié)點(diǎn)獲取數(shù)據(jù),在一個(gè)會(huì)話期間,用戶必須按照這條固定的傳輸路徑上面的可用帶寬調(diào)節(jié)傳輸速率。E2E擁塞控制在提高鏈路的利用率、減少分組丟失和時(shí)延,以及使共享同一條鏈路的不同用戶能夠公平的分享帶寬和緩存資源方面具有重要意義。但是,P2P網(wǎng)絡(luò)環(huán)境是用傳輸控制協(xié)議CTransmission ControlProtocol,簡稱 TCP)、或者用戶數(shù)據(jù)報(bào)協(xié)議(User Data Protocol,簡稱UDP)實(shí)現(xiàn)對端點(diǎn)(Peer)之間的數(shù)據(jù)傳輸,一個(gè)特定的數(shù)據(jù)對象可能在多個(gè)節(jié)點(diǎn)上面都存在,一個(gè)用戶可以同時(shí)從多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)上面并發(fā)下載這個(gè)數(shù)據(jù)對象。當(dāng)P2P的客戶端到一個(gè)目的節(jié)點(diǎn)之間的路徑發(fā)生擁塞時(shí),P2P的客戶端可以從另一個(gè)目的節(jié)點(diǎn)下載;或者降低某些連接下載的速率等待擁塞的緩解。在傳統(tǒng)的E2E擁塞控制中由于只有一個(gè)連接用戶只能降低發(fā)送速率。目前P2P更傾向于發(fā)生擁塞的時(shí),客戶端選擇從另外一個(gè)目的節(jié)點(diǎn)下載以獲得更大的傳輸速率,多數(shù)P2P 網(wǎng)絡(luò)采用UDP以獲得更好的傳輸速率。由于UDP沒有擁塞控制機(jī)制,缺乏速率調(diào)整,一旦大量UDP競爭稀缺的網(wǎng)絡(luò)通路,很有可能導(dǎo)致因特網(wǎng)的崩潰。在實(shí)現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題1.不同的P2P應(yīng)用開發(fā)的基于UDP的數(shù)據(jù)傳輸方法,沒有統(tǒng)一的標(biāo)準(zhǔn),有的增加速率調(diào)整,有的沒有速率調(diào)整,導(dǎo)致網(wǎng)絡(luò)資源利用不規(guī)范,進(jìn)而可能導(dǎo)致網(wǎng)絡(luò)擁塞。2. UDP的傳輸速率不能自動(dòng)適應(yīng)網(wǎng)絡(luò)傳輸環(huán)境的變化,網(wǎng)絡(luò)傳輸?shù)男什贿m合 P2P應(yīng)用的要求。
發(fā)明內(nèi)容
本發(fā)明的第一目的是提出一種傳輸控制方法,以實(shí)現(xiàn)避免網(wǎng)絡(luò)擁塞,提高傳輸效率。本發(fā)明的第二目的是提出一種傳輸控制裝置,以實(shí)現(xiàn)避免網(wǎng)絡(luò)擁塞,提高傳輸效率。為實(shí)現(xiàn)上述第一目的,根據(jù)本發(fā)明的一個(gè)方面,提供了一種傳輸控制方法,包括 根據(jù)請求的數(shù)據(jù)對象,產(chǎn)生并發(fā)送請求分組;監(jiān)測請求分組對應(yīng)的數(shù)據(jù)分組的超時(shí)返回概率;根據(jù)監(jiān)測結(jié)果調(diào)整傳輸速率。優(yōu)選地,根據(jù)監(jiān)測結(jié)果調(diào)整傳輸速率可以包括根據(jù)監(jiān)測結(jié)果調(diào)整傳輸數(shù)據(jù)的線程數(shù)量;根據(jù)調(diào)整的線程數(shù)量控制傳輸速率。優(yōu)選地,監(jiān)測請求分組對應(yīng)的數(shù)據(jù)分組的超時(shí)返回概率可以包括監(jiān)測發(fā)送請求分組的次數(shù)、以及發(fā)送的請求分組在預(yù)設(shè)時(shí)間內(nèi)未返回對應(yīng)數(shù)據(jù)分組的超時(shí)次數(shù);根據(jù)超時(shí)次數(shù)以及發(fā)送請求分組的次數(shù)計(jì)算超時(shí)返回概率為實(shí)現(xiàn)上述第二目的,根據(jù)本發(fā)明的另一個(gè)方面,提供了一種傳輸控制裝置,包括生成模塊,用于根據(jù)請求的數(shù)據(jù)對象,產(chǎn)生請求分組;接口模塊,用于發(fā)送請求分組,接收請求分組對應(yīng)的數(shù)據(jù)分組;監(jiān)測模塊,用于監(jiān)測數(shù)據(jù)分組的超時(shí)返回概率;調(diào)整模塊,用于根據(jù)監(jiān)測模塊的監(jiān)測結(jié)果調(diào)整傳輸速率。優(yōu)選地,監(jiān)測模塊可以包括超時(shí)監(jiān)測子模塊,用于監(jiān)測發(fā)送的請求分組在預(yù)設(shè)的時(shí)間內(nèi)是否返回對應(yīng)的數(shù)據(jù)分組;統(tǒng)計(jì)子模塊,用于統(tǒng)計(jì)發(fā)送請求分組的次數(shù)、以及發(fā)送的請求分組在預(yù)設(shè)時(shí)間內(nèi)未返回對應(yīng)數(shù)據(jù)分組的超時(shí)次數(shù);計(jì)算子模塊,用于根據(jù)超時(shí)次數(shù)以及發(fā)送請求分組的次數(shù)計(jì)算超時(shí)返回概率。本發(fā)明各實(shí)施例的傳輸控制方法及裝置,通過監(jiān)測數(shù)據(jù)分組的超時(shí)返回概率,調(diào)整傳輸數(shù)據(jù)的線程數(shù)量,從而調(diào)整請求分組的發(fā)送速率,使得請求分組的發(fā)送速率處于最佳狀態(tài),在避免網(wǎng)絡(luò)鏈路擁塞的同時(shí)獲得最大的下載速率,可解決現(xiàn)有技術(shù)中P2P開發(fā)者不能根據(jù)用戶的不同接入帶寬設(shè)計(jì)不同的最優(yōu)數(shù)據(jù)傳輸速率的技術(shù)難題,且解決現(xiàn)有技術(shù)中UDP本身并不提供擁塞控制,不能達(dá)到最優(yōu)的下載速率,可能造成網(wǎng)絡(luò)擁塞的技術(shù)問題。 本發(fā)明可以滿足用戶的網(wǎng)絡(luò)接入帶寬和服務(wù)質(zhì)量要求,適用于任意同時(shí)傳輸多個(gè)請求或多條鏈路的應(yīng)用場景,包括TCP、UDP、基于UDP在P2P網(wǎng)絡(luò)環(huán)境下的應(yīng)用,以及基于TCP、UDP 擴(kuò)展的其他傳輸協(xié)議,如實(shí)時(shí)協(xié)議(Real Time Protocol,簡稱RTP)等其他應(yīng)用場景。本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。下面通過附圖和實(shí)施例,對本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
附圖用來提供對本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中圖1為根據(jù)本發(fā)明傳輸控制方法實(shí)施例一流程圖;圖2為根據(jù)本發(fā)明傳輸控制方法實(shí)施例二流程圖;圖3為根據(jù)本發(fā)明傳輸控制方法實(shí)施例三解析示意圖;圖4為根據(jù)本發(fā)明傳輸控制裝置實(shí)施例一結(jié)構(gòu)示意圖;圖5為根據(jù)本發(fā)明傳輸控制裝置實(shí)施例二結(jié)構(gòu)示意圖。
具體實(shí)施例方式以下結(jié)合附圖對本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。方法實(shí)施例圖1為根據(jù)本發(fā)明傳輸控制方法實(shí)施例一流程圖。如圖1所示,包括步驟S102 根據(jù)請求的數(shù)據(jù)對象,產(chǎn)生并發(fā)送請求分組;
步驟S104 監(jiān)測請求分組對應(yīng)的數(shù)據(jù)分組的超時(shí)返回概率;步驟S106 根據(jù)監(jiān)測結(jié)果調(diào)整傳輸速率,如超時(shí)返回概率較大則減少傳輸速率, 否則增大傳輸速率。本實(shí)施例通過監(jiān)測請求分組所對應(yīng)返回的數(shù)據(jù)分組的超時(shí)返回概率,進(jìn)而調(diào)整傳輸過程中的下載速率,可以減少網(wǎng)絡(luò)擁塞,并且由于根據(jù)超時(shí)情況自動(dòng)調(diào)整速率,因此還可以自動(dòng)調(diào)節(jié)下載到最佳值,滿足網(wǎng)絡(luò)接入帶寬和服務(wù)質(zhì)量要求。圖2為根據(jù)本發(fā)明傳輸控制方法實(shí)施例二流程圖。圖2為對圖1的細(xì)化流程,本實(shí)施例主要是通過調(diào)整并發(fā)傳輸數(shù)據(jù)的線程數(shù)量來調(diào)整和控制傳輸速率,具體流程如下步驟S202 在進(jìn)行傳輸前設(shè)置M個(gè)停頓/等待線程以及一個(gè)以上的測量線程;步驟S204 從應(yīng)用層獲得一個(gè)用戶地址列表、獲得一個(gè)請求的數(shù)據(jù)對象ID,從用戶地址列表中隨機(jī)抽取一個(gè)用戶地址作為目的地址;步驟S206:產(chǎn)生一個(gè)順序增加的數(shù)字作為表示本次請求分組的請求ID,根據(jù)目的地址、應(yīng)用層請求的數(shù)據(jù)對象ID、請求ID生成請求分組,M個(gè)線程同時(shí)發(fā)送該分組,并同時(shí)啟動(dòng)定時(shí)器;步驟S207 判斷定時(shí)器是否超時(shí),是則執(zhí)行步驟S210 ;否則執(zhí)行步驟S208 ;步驟S208 判斷是否接收到數(shù)據(jù)分組,是則執(zhí)行步驟S209 ;否則繼續(xù)執(zhí)行步驟 S207 ;步驟S209 判斷接收的數(shù)據(jù)分組中攜帶的請求ID是否與本地存儲(chǔ)的請求ID相等,如果相等,則向應(yīng)用層遞交數(shù)據(jù)結(jié)束本次傳輸,如果不相等,則丟棄該分組后返回步驟 S204 ;本實(shí)施例中接收端接收到發(fā)送端(請求節(jié)點(diǎn))的請求分組后,根據(jù)請求分組中攜帶的請求ID產(chǎn)生一個(gè)數(shù)據(jù)分組,并把請求ID填入到數(shù)據(jù)分組中,然后向返回該數(shù)據(jù)分組, 以此在發(fā)送請求端判斷數(shù)據(jù)分組是否正確,是否為本地發(fā)送的請求ID對應(yīng)的數(shù)據(jù)分組響應(yīng);步驟S210 測量線程根據(jù)超時(shí)情況統(tǒng)計(jì)所發(fā)送的請求分組的超時(shí)次數(shù),每發(fā)送一次請求分組在定時(shí)器超時(shí)仍未接收到返回的數(shù)據(jù)分組,則超時(shí)次數(shù)加一,依次累積統(tǒng)計(jì)所有請求分組的超時(shí)次數(shù),并計(jì)算超時(shí)概率具體地,測量線程統(tǒng)計(jì)在一定時(shí)間內(nèi)所有線程發(fā)送的總的請求分組的次數(shù)和總的超時(shí)次數(shù),并計(jì)算數(shù)據(jù)分組的超時(shí)返回概率超時(shí)返回概率=總的超時(shí)時(shí)間的次數(shù)/總的請求分組的次數(shù);其中,可以設(shè)置K輪統(tǒng)計(jì)、以及根據(jù)K輪統(tǒng)計(jì)的總的超時(shí)時(shí)間的次數(shù)、和總的請求分組的次數(shù)計(jì)算超時(shí)返回概率。每一輪可以是發(fā)出一個(gè)請求分組到接收到一個(gè)數(shù)據(jù)分組的整個(gè)過程,或者步驟S206中定時(shí)器設(shè)定的超時(shí)時(shí)間到達(dá)時(shí)的整個(gè)過程。如果將一輪設(shè)置為發(fā)送請求分組到接收數(shù)據(jù)分組到的時(shí)間過程,這個(gè)由于每個(gè)請求分組返回的數(shù)據(jù)分組時(shí)間過程不一致,因此采用K輪統(tǒng)計(jì)得出的結(jié)果計(jì)算超時(shí)返回概率;如果將一輪設(shè)置為定時(shí)器設(shè)定的超時(shí)時(shí)間到達(dá)時(shí)的整個(gè)過程,可以直接用定時(shí)器的超時(shí)時(shí)間乘以K,并采用K輪時(shí)間統(tǒng)計(jì)得出的結(jié)果計(jì)算超時(shí)返回概率。較大的K值可以增加超時(shí)返回概率的測量精度,但是將增加M的調(diào)整時(shí)間;較小的K值減少M(fèi)的調(diào)整時(shí)間,但是減少超時(shí)概率的測量精度。本領(lǐng)域技術(shù)人員可以根據(jù)經(jīng)驗(yàn)選取較為合適的K值,如20、25等等,具體可根據(jù)實(shí)際情況進(jìn)行調(diào)整,設(shè)置計(jì)算超時(shí)返回概率的固定周期,即監(jiān)測K輪的情況并進(jìn)行統(tǒng)計(jì)和計(jì)算;步驟S212 根據(jù)計(jì)算的超時(shí)返回概率調(diào)整M的值,即停頓/等待線程的數(shù)目,從而調(diào)整請求分組的發(fā)送速率以及數(shù)據(jù)分組的下載速率如需要增加M,則返回步驟S204 ;如減少M(fèi),則可不返回步驟S204。具體地,調(diào)整M的方法可以有很多,本實(shí)施例僅舉例說明M值的調(diào)節(jié)采用線性加乘性減的方法可以預(yù)先設(shè)置兩個(gè)參數(shù)0 <門限1 <門限2 < 1,門限2和門限1是0到1之間的實(shí)數(shù)。首先M從一個(gè)較小的初始值開始,只要超時(shí)返回概率不大于門限1,說明原有的請求分組發(fā)送較低,返回的數(shù)據(jù)分組超時(shí)較少,還可以增加傳輸速率,就增加M值一個(gè)常數(shù); 如果超時(shí)返回概率大于門限1小于門限2,則M值已經(jīng)在最佳下載速率的最優(yōu)值得附近,此時(shí)可以僅維持M值,保持原有的發(fā)送和下載速率;如果超時(shí)返回概率大于門限2,則請求分組的發(fā)送速率過快但返回下載超時(shí),需要降低發(fā)送速率,可以降低M為原來的值的l/x,x是大于1的整數(shù),具體調(diào)整如下1)如果超時(shí)返回概率小于第一個(gè)門限1(如設(shè)置為0. 1),則M增加一個(gè)固定的值 (例如1),當(dāng)確定需要增加M時(shí)可以通過新建立停頓/等待線程來實(shí)現(xiàn);2)如果超時(shí)返回概率大于第一個(gè)門限值(如0. 1)小于第二個(gè)門限制(如0.2), 則保持M不變;3)如果超時(shí)返回概率大于第二個(gè)門限值,則減少線程數(shù)量,如M變?yōu)樵瓉淼?/ χ(如χ = 2),即M降低為原來的一半。當(dāng)確定需要減少M(fèi)時(shí)可以通過關(guān)閉停頓/等待線程來實(shí)現(xiàn)。本實(shí)施例中,調(diào)整M的過程中,如果門限1定得太低將將導(dǎo)致M在較小階段就減少,從而降低用戶的下載速率;定得過高,將導(dǎo)致較多的超時(shí)事件。門限1和門限2之間的差決定M在最優(yōu)值附近振蕩的幅度,本領(lǐng)域技術(shù)人員可以根據(jù)具體應(yīng)用選取較為合適的門限1和門限2的值,如本實(shí)施例設(shè)置的門限1為0. 1、門限2為0. 2,具體應(yīng)用時(shí)可以根據(jù)實(shí)際情況靈活選取,不受本實(shí)施例所設(shè)置的門限值限制。本實(shí)施例通過上面的測量線程監(jiān)測結(jié)果并每過k輪調(diào)整M的值,不會(huì)過于頻繁,根據(jù)統(tǒng)計(jì)的超時(shí)返回概率進(jìn)行調(diào)整,使得停頓/等待線程達(dá)到數(shù)據(jù)的最佳下載速率,減少網(wǎng)絡(luò)擁塞。當(dāng)線程M很小時(shí),下載數(shù)據(jù)的速率也比較小,此時(shí),數(shù)據(jù)分組超時(shí)返回概率也比較??;而當(dāng)M較大時(shí),通過線程發(fā)送請求分組的發(fā)送速率較大,此時(shí)由于下載的數(shù)據(jù)率較大并已經(jīng)接近鏈路帶寬,這個(gè)時(shí)候?qū)?dǎo)致較多的數(shù)據(jù)分組超時(shí),可能導(dǎo)致實(shí)際有效的數(shù)據(jù)下載速率降低。因此,隨著M增加,超時(shí)返回概率會(huì)出現(xiàn)一個(gè)突然的增加,而在這個(gè)M時(shí),用戶的下載速率達(dá)到最大。本實(shí)施例就是通過調(diào)節(jié)線程數(shù)量,自適應(yīng)找到這個(gè)最優(yōu)的M值,從而獲得最優(yōu)的傳輸速率。圖3為根據(jù)本發(fā)明傳輸控制方法實(shí)施例三解析示意圖,如圖3所示,本實(shí)施例應(yīng)用在諸如BT下載,PPS網(wǎng)絡(luò)電視或者PPTV網(wǎng)絡(luò)電視等這些P2P網(wǎng)絡(luò)環(huán)境下,使得用戶能夠獲得最大的數(shù)據(jù)傳輸速率。為下面說明方便,將下面的傳輸控制稱為多點(diǎn)對多點(diǎn) (Multi-point to Multi-point,簡稱M2M)公共傳輸控制方式,可以解決現(xiàn)有技術(shù)中不同的 P2P的開發(fā)者設(shè)計(jì)不同的下載行為,導(dǎo)致網(wǎng)絡(luò)資源利用不規(guī)范,進(jìn)而導(dǎo)致網(wǎng)絡(luò)擁塞的技術(shù)問
如圖3所示,有(n+1)個(gè)節(jié)點(diǎn)通過有限的接入帶寬接入到網(wǎng)絡(luò)。每個(gè)節(jié)點(diǎn)都有其它節(jié)點(diǎn)需要的數(shù)據(jù)。每個(gè)節(jié)點(diǎn)的目的是盡可能快地從其它節(jié)點(diǎn)下載數(shù)據(jù)?;镜耐ㄐ拍J绞侨鐖D3中請求用戶作為一個(gè)請求節(jié)點(diǎn)從其他η個(gè)節(jié)點(diǎn)(用戶1到用戶η)中隨機(jī)選擇一個(gè)節(jié)點(diǎn)作為目的節(jié)點(diǎn),并向該目的節(jié)點(diǎn)發(fā)送一個(gè)請求分組,目的節(jié)點(diǎn)接受到請求分組后, 按照請求節(jié)點(diǎn)的請求分組產(chǎn)生一個(gè)數(shù)據(jù)分組并返回該數(shù)據(jù)分組。請求分組由于只需要表明請求節(jié)點(diǎn)需要的數(shù)據(jù)對象,因此請求分組一般都很小,而數(shù)據(jù)分組遠(yuǎn)大于請求分組。由于某些應(yīng)用有時(shí)延要求以及可能的網(wǎng)絡(luò)分組丟失,因此請求節(jié)點(diǎn)在發(fā)送出一個(gè)請求分組出去之后,啟動(dòng)一個(gè)定時(shí)器,在一定時(shí)間內(nèi)如果沒有接收到對應(yīng)的數(shù)據(jù)分組,定時(shí)器超時(shí),則將隨機(jī)選擇另外一個(gè)目的節(jié)點(diǎn)下載數(shù)據(jù)。對于多數(shù)流媒體應(yīng)用來說,如果一個(gè)節(jié)點(diǎn)在一定時(shí)間內(nèi)沒有接收到一個(gè)特定的數(shù)據(jù),該數(shù)據(jù)對于該節(jié)點(diǎn)來說就沒有意義了。如果一個(gè)數(shù)據(jù)分組在請求用戶客戶端的定時(shí)器超時(shí)之后到達(dá),該分組將被丟棄?!獋€(gè)請求節(jié)點(diǎn)向外發(fā)送的請求分組越多,它接收到的數(shù)據(jù)分組也就越多;但是當(dāng)節(jié)點(diǎn)接收到的數(shù)據(jù)分組速率接近用戶的接入鏈路的速率的時(shí)候,將在用戶的接入鏈路形成較大的排隊(duì)隊(duì)列,這將導(dǎo)致較大的數(shù)據(jù)分組超時(shí)返回概率和分組丟失,這反而導(dǎo)致用戶實(shí)際接收到的速率下降。因此,用戶向外發(fā)送的請求分組的速率太少了將導(dǎo)致用戶接收的數(shù)據(jù)速率較低,請求分組的速率太大也將導(dǎo)致用戶接收到的數(shù)據(jù)速率較低。因此,存在一個(gè)最佳的請求分組的發(fā)送速率。本實(shí)施例中由于每一個(gè)請求分組都要啟動(dòng)一個(gè)定時(shí)器,因此在具體應(yīng)用時(shí)每一個(gè)請求分組可以對應(yīng)一個(gè)停頓/等待線程,也可以使用多個(gè)相同的停頓/等待線程來實(shí)現(xiàn)一個(gè)較大的請求分組發(fā)送速率。線程數(shù)目越多,請求分組的發(fā)送速率就越大。如上一段的分析,存在一個(gè)最佳的發(fā)送速率,因此相對應(yīng)的,存在一個(gè)最優(yōu)線程數(shù)目??梢酝ㄟ^控制線程的數(shù)目來控制請求分組的發(fā)送速率,從而尋找最優(yōu)的數(shù)據(jù)分組下載速率。從圖3可以看出,請求用戶客戶端把請求散布到整個(gè)網(wǎng)絡(luò),但是距離客戶端越近, 鏈路傳輸流量的壓力越大。而所有的流量都得通過接入鏈路才能傳輸?shù)娇蛻舳恕A硪粋€(gè)方面,用戶都是通過有限的接入帶寬接入到網(wǎng)絡(luò)的,網(wǎng)絡(luò)鏈路的速率一般是大于用戶的接入帶寬的。本實(shí)施例提出的Μ2Μ的傳輸?shù)钠款i最終集中在接入鏈路的帶寬上面,因?yàn)榧词咕W(wǎng)絡(luò)中的某一條鏈路確實(shí)擁塞了,客戶端可以選擇切換到另外一個(gè)節(jié)點(diǎn)下載,從而避開這條擁塞的網(wǎng)絡(luò)鏈路。圖3的傳輸控制方法可以基于UDP進(jìn)行數(shù)據(jù)傳輸并適用Ρ2Ρ網(wǎng)絡(luò)環(huán)境下的傳輸數(shù)據(jù),本領(lǐng)域技術(shù)人員應(yīng)了解,本發(fā)明的傳輸控制方法適用于任意同時(shí)傳輸多個(gè)請求或多條鏈路的應(yīng)用場景,包括TCP、UDP、RTP等其他應(yīng)用場景。上述各方法實(shí)施例通過監(jiān)測數(shù)據(jù)分組的超時(shí)返回概率,通過改變執(zhí)行停頓等待的線程數(shù)目從而調(diào)整請求分組的發(fā)送速率,自動(dòng)探測最佳的數(shù)據(jù)分組下載速率并使工作在最佳傳輸速率上,在避免網(wǎng)絡(luò)鏈路擁塞的同時(shí)獲得最大的下載速率,滿足用戶的網(wǎng)絡(luò)接入帶寬和服務(wù)質(zhì)量要求。并且上述實(shí)施例對于具體的調(diào)整算法以及統(tǒng)計(jì)超時(shí)返回概率的具體技術(shù)內(nèi)容進(jìn)行了詳細(xì)的描述,可以根據(jù)需要調(diào)整線程M到最佳值,獲得最佳的下載速率。裝置實(shí)施例圖4為根據(jù)本發(fā)明傳輸控制裝置實(shí)施例一結(jié)構(gòu)示意圖,如圖4所示,包括生成模塊1,用于根據(jù)請求的數(shù)據(jù)對象,產(chǎn)生請求分組,具體可參見圖2實(shí)施例相關(guān)說明,在此不再對相同或相似內(nèi)容進(jìn)行重復(fù)描述;接口模塊2,用于發(fā)送請求分組,接收請求分組對應(yīng)的數(shù)據(jù)分組;監(jiān)測模塊4,用于監(jiān)測數(shù)據(jù)分組的超時(shí)返回概率;調(diào)整模塊6,用于根據(jù)監(jiān)測模塊的監(jiān)測結(jié)果調(diào)整傳輸速率。本實(shí)施例中的生成模塊1、監(jiān)測模塊4以及調(diào)整模塊6可集中成一 M2M模塊,具體可以應(yīng)用在同時(shí)傳輸多個(gè)請求或多條鏈路的設(shè)備內(nèi),如在基于UDP傳輸數(shù)據(jù)的P2P網(wǎng)絡(luò)環(huán)境的客戶端內(nèi),客戶端可以位于終端或網(wǎng)絡(luò)側(cè)設(shè)備內(nèi),如請求用戶終端、接收用戶終端,以及網(wǎng)關(guān)GPRS支持節(jié)點(diǎn)(Gateway GPRS Support Node,簡稱GGSN)、應(yīng)用網(wǎng)關(guān)、內(nèi)容分發(fā)網(wǎng)絡(luò) (Content Delivery Network, CDN)節(jié)點(diǎn)、路由器等網(wǎng)絡(luò)側(cè)設(shè)備,本實(shí)施例裝置的協(xié)議堆棧結(jié)構(gòu)可參見下表一
權(quán)利要求
1.一種傳輸控制方法,其特征在于,包括 根據(jù)請求的數(shù)據(jù)對象,產(chǎn)生并發(fā)送請求分組;監(jiān)測所述請求分組對應(yīng)的數(shù)據(jù)分組的超時(shí)返回概率; 根據(jù)監(jiān)測結(jié)果調(diào)整傳輸速率。
2.根據(jù)權(quán)利要求1所述的傳輸控制方法,其特征在于,所述根據(jù)監(jiān)測結(jié)果調(diào)整傳輸速率包括根據(jù)監(jiān)測結(jié)果調(diào)整傳輸數(shù)據(jù)的線程數(shù)量; 根據(jù)調(diào)整的線程數(shù)量控制傳輸速率。
3.根據(jù)權(quán)利要求1所述的傳輸控制方法,其特征在于,監(jiān)測所述請求分組對應(yīng)的數(shù)據(jù)分組的超時(shí)返回概率包括監(jiān)測發(fā)送請求分組的次數(shù)、以及發(fā)送的請求分組在預(yù)設(shè)時(shí)間內(nèi)未返回對應(yīng)數(shù)據(jù)分組的超時(shí)次數(shù);根據(jù)所述超時(shí)次數(shù)以及發(fā)送請求分組的次數(shù)計(jì)算所述超時(shí)返回概率。
4.根據(jù)權(quán)利要求2所述的傳輸控制方法,其特征在于,根據(jù)監(jiān)測結(jié)果調(diào)整傳輸數(shù)據(jù)的線程數(shù)量包括在所述超時(shí)返回概率小于第一預(yù)設(shè)值時(shí),增加所述傳輸數(shù)據(jù)的線程數(shù)量; 在所述超時(shí)返回概率大于第一預(yù)設(shè)值小于第二預(yù)設(shè)值時(shí),保持所述傳輸數(shù)據(jù)的線程數(shù)量;在所述超時(shí)返回概率大于第二預(yù)設(shè)值時(shí),減少所述傳輸數(shù)據(jù)的線程數(shù)量。
5.根據(jù)權(quán)利要求1-4任一項(xiàng)所述的傳輸控制方法,其特征在于,根據(jù)請求的數(shù)據(jù)對象, 產(chǎn)生并發(fā)送請求分組包括獲取目的地址以及請求的數(shù)據(jù)對象標(biāo)識(shí); 產(chǎn)生本次請求的請求標(biāo)識(shí);根據(jù)所述目的地址、請求的數(shù)據(jù)對象標(biāo)識(shí)以及所述請求標(biāo)識(shí)產(chǎn)生所述請求分組; 所述請求標(biāo)識(shí)用于判斷所述請求分組是否正確返回對應(yīng)的數(shù)據(jù)分組。
6.根據(jù)權(quán)利要求1-4任一項(xiàng)所述的傳輸控制方法,其特征在于,應(yīng)用于任意同時(shí)傳輸多個(gè)請求的傳輸控制,包括TCP、UDP、基于UDP的P2P、以及基于TCP或UDP擴(kuò)展協(xié)議的傳輸控制。
7.一種傳輸控制裝置,其特征在于,包括生成模塊,用于根據(jù)請求的數(shù)據(jù)對象,產(chǎn)生請求分組; 接口模塊,用于發(fā)送所述請求分組,接收所述請求分組對應(yīng)的數(shù)據(jù)分組; 監(jiān)測模塊,用于監(jiān)測所述數(shù)據(jù)分組的超時(shí)返回概率; 調(diào)整模塊,用于根據(jù)所述監(jiān)測模塊的監(jiān)測結(jié)果調(diào)整傳輸速率。
8.根據(jù)權(quán)利要求7所述的傳輸控制裝置,其特征在于,所述監(jiān)測模塊包括超時(shí)監(jiān)測子模塊,用于監(jiān)測發(fā)送的請求分組在預(yù)設(shè)的時(shí)間內(nèi)是否返回對應(yīng)的數(shù)據(jù)分組;統(tǒng)計(jì)子模塊,用于統(tǒng)計(jì)發(fā)送請求分組的次數(shù)、以及發(fā)送的請求分組在預(yù)設(shè)時(shí)間內(nèi)未返回對應(yīng)數(shù)據(jù)分組的超時(shí)次數(shù);計(jì)算子模塊,用于根據(jù)所述超時(shí)次數(shù)以及發(fā)送請求分組的次數(shù)計(jì)算所述超時(shí)返回概率。
9.根據(jù)權(quán)利要求7或8所述的傳輸控制裝置,其特征在于,所述調(diào)整模塊包括 判斷子模塊,用于判斷所述超時(shí)返回概率與第一預(yù)設(shè)值及第二預(yù)設(shè)值的關(guān)系;調(diào)整子模塊,用于所述超時(shí)返回概率小于第一預(yù)設(shè)值時(shí),增加所述傳輸數(shù)據(jù)的線程數(shù)量;所述超時(shí)返回概率大于第一預(yù)設(shè)值小于第二預(yù)設(shè)值時(shí),保持所述傳輸數(shù)據(jù)的線程數(shù)量; 或者所述超時(shí)返回概率大于第二預(yù)設(shè)值時(shí),減少所述傳輸數(shù)據(jù)的線程數(shù)量。
10.根據(jù)權(quán)利要求7或8所述的傳輸控制裝置,其特征在于,所述生成模塊包括 獲取子模塊,用于獲取目的地址以及請求的數(shù)據(jù)對象標(biāo)識(shí);生成子模塊,用于生成請求標(biāo)識(shí),并根據(jù)所述目的地址、請求的數(shù)據(jù)對象標(biāo)識(shí)以及所述請求標(biāo)識(shí)產(chǎn)生所述請求分組;所述請求標(biāo)識(shí)用于判斷所述請求分組是否正確返回對應(yīng)的數(shù)據(jù)分組。
11.根據(jù)權(quán)利要求7或8所述的傳輸控制裝置,其特征在于,位于終端或網(wǎng)絡(luò)側(cè)設(shè)備。
全文摘要
本發(fā)明公開了一種傳輸控制方法及裝置,其中,該方法包括根據(jù)請求的數(shù)據(jù)對象,產(chǎn)生并發(fā)送請求分組;監(jiān)測請求分組對應(yīng)的數(shù)據(jù)分組的超時(shí)返回概率;根據(jù)監(jiān)測結(jié)果調(diào)整傳輸速率。本發(fā)明可以實(shí)現(xiàn)降低網(wǎng)絡(luò)擁塞,并獲得最佳的傳輸速率,解決現(xiàn)有技術(shù)中網(wǎng)絡(luò)擁塞的技術(shù)問題。
文檔編號H04L12/56GK102404182SQ20101027531
公開日2012年4月4日 申請日期2010年9月7日 優(yōu)先權(quán)日2010年9月7日
發(fā)明者張?jiān)骑w, 趙永祥, 郝甲東, 陳常嘉, 魏冰 申請人:中國移動(dòng)通信集團(tuán)公司