專利名稱:一種在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,更具體地說,涉及一種在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào) 度的方法及系統(tǒng)。
背景技術(shù):
網(wǎng)絡(luò)應(yīng)用中包含很多的網(wǎng)絡(luò)包收發(fā)操作,特別是流媒體以及p2p直播等軟 件。在這些軟件中良好的帶寬調(diào)度和限制方法,將極大的改善這類軟件的響應(yīng) 速度、對(duì)帶寬的占用,減少對(duì)用戶其他網(wǎng)絡(luò)應(yīng)用和操作的干擾。
現(xiàn)有技術(shù)的系統(tǒng)如附圖l所示,包括互聯(lián)網(wǎng)100、應(yīng)用編程接口 (Application Programming Interface, API) 200和業(yè)務(wù)層300。其中應(yīng)用編程接口200是一種中 間件,為各種不同平臺(tái)提供數(shù)據(jù)共享,根據(jù)單個(gè)或分布式平臺(tái)上不同軟件應(yīng)用 程序間的數(shù)據(jù)共享性能,可以將應(yīng)用編程接口200分為四種類型(l)遠(yuǎn)程過 程調(diào)用通過作用在共享數(shù)據(jù)緩存器上的過程(或任務(wù))實(shí)現(xiàn)程序間的通信; (2)標(biāo)準(zhǔn)查詢語言是標(biāo)準(zhǔn)的訪問數(shù)據(jù)的查詢語言,通過通用數(shù)據(jù)庫實(shí)現(xiàn)應(yīng)用 程序間的數(shù)據(jù)共享;(3)文件傳輸文件傳輸通過發(fā)送^"式化文件實(shí)現(xiàn)應(yīng)用程 序間數(shù)據(jù)共享(4)信息交付指+W禹合或緊耦合應(yīng)用程序間的小型格式化信息, 通過程序間的直接通信實(shí)現(xiàn)數(shù)據(jù)共享?,F(xiàn)有技術(shù)多是采用內(nèi)置式的帶寬調(diào)度方 法,也即,在生成代碼初期,收發(fā)網(wǎng)絡(luò)包的每個(gè)地方都把這些搡作緩沖排隊(duì)到 一個(gè)調(diào)度中心,然后由調(diào)度中心來進(jìn)行帶寬的調(diào)度和控制。
但是,現(xiàn)有技術(shù)中內(nèi)置式的帶寬調(diào)度方法,與系統(tǒng)的各環(huán)節(jié)耦合性太強(qiáng), 使得實(shí)現(xiàn)的靈活性低;另外,需要修改代碼中所有網(wǎng)絡(luò)包收發(fā)的地方,容易產(chǎn) 生新的程序缺陷,從而導(dǎo)致帶寬調(diào)度時(shí)出錯(cuò)、效率降低,使得該內(nèi)置式的帶寬 調(diào)度方法可靠性低。
因此需要一種新的在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法,降低程序的耦合 性,能夠在相對(duì)獨(dú)立的環(huán)境中進(jìn)行,從而提高實(shí)現(xiàn)的靈活性;另外,通過獨(dú)立 的實(shí)現(xiàn)方式,進(jìn)一步保障帶寬調(diào)度方法的可靠性。發(fā)明內(nèi)容本發(fā)明的目的在于提供一種在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng),旨在解 決現(xiàn)有技術(shù)在帶寬調(diào)度的過程中存在的耦合性太強(qiáng),導(dǎo)致實(shí)現(xiàn)方式的靈活性較 低、帶寬調(diào)度方法的可靠性不足的問題。本發(fā)明的目的還在于提供一種在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法,以更 好地解決現(xiàn)有技術(shù)中存在的上述問題。為了實(shí)現(xiàn)發(fā)明目的,所述在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng),包括互聯(lián) 網(wǎng)、應(yīng)用編程接口、業(yè)務(wù)層,所述系統(tǒng)還包括帶寬調(diào)度單元,與應(yīng)用編程接口 進(jìn)行數(shù)據(jù)交互,用于攔截互聯(lián)網(wǎng)與業(yè)務(wù)層之間傳輸?shù)呐c應(yīng)用編程接口調(diào)用操作 相關(guān)的數(shù)據(jù)包,并存入到數(shù)據(jù)緩存隊(duì)列中,然后通過帶寬限制算法對(duì)數(shù)據(jù)緩存 隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選。優(yōu)選地,所述帶寬調(diào)度單元進(jìn)一步包括數(shù)據(jù)包攔截模塊、篩選才莫塊;所述數(shù)據(jù)包攔截模塊用于攔截與應(yīng)用編程接口調(diào)用操作相關(guān)的數(shù)據(jù)包,并 存入到 一個(gè)數(shù)據(jù)緩存隊(duì)列中;所述篩選模塊與數(shù)據(jù)包攔截模塊進(jìn)行數(shù)據(jù)交互,其利用帶寬限制算法對(duì)數(shù) 據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選。優(yōu)選地,所述篩選模塊具有以下三個(gè)接口中的至少一者上行帶寬限制接 口、下行帶寬限制接口、套接字優(yōu)先級(jí)接口;所述上行帶寬限制接口設(shè)置有一個(gè)上行帶寬限制閾值,用于對(duì)數(shù)據(jù)緩存隊(duì) 列中的上行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留所述上行帶寬限制閾值內(nèi)的數(shù)據(jù)包;所述下行帶寬限制接口設(shè)置有一個(gè)下行帶寬限制閾值,用于對(duì)數(shù)據(jù)緩存隊(duì) 列中的下行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留所述下行帶寬限制閾值內(nèi)的數(shù)據(jù)包;所述套接字優(yōu)先級(jí)接口設(shè)置有與不同類型操作對(duì)應(yīng)的套接字優(yōu)先級(jí),用于 根據(jù)所述套接字優(yōu)先級(jí)對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行排序。為了更好的實(shí)現(xiàn)發(fā)明目的,所述在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法包括 以下步驟相關(guān)的數(shù)據(jù)包,并存入到數(shù)據(jù)緩存隊(duì)列中;B. 通過帶寬限制算法對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選. 優(yōu)選地,所述步驟B之后進(jìn)一步包括C. 按照處理后的緩存隊(duì)列中數(shù)據(jù)包的排序,對(duì)數(shù)據(jù)包進(jìn)行收發(fā)。優(yōu)選地,所述步驟A之前進(jìn)一步包括,啟動(dòng)外掛的帶寬調(diào)度單元,并對(duì)其帶 寬調(diào)度算法進(jìn)行參數(shù)設(shè)置。優(yōu)選地,所述參數(shù)設(shè)置是指,在帶寬調(diào)度單元中設(shè)置以下三個(gè)閾值中的至 少一者上行帶寬限制閾值、下行帶寬限制閾值及套接字優(yōu)先級(jí)。優(yōu)選地,所述步驟B進(jìn)一步包括根據(jù)所述上行帶寬限制闊值,對(duì)數(shù)據(jù)緩存隊(duì)列中的上行數(shù)據(jù)包進(jìn)行監(jiān)測(cè), 僅保留所述上行帶寬限制閾值內(nèi)的數(shù)據(jù)包;和/或根據(jù)所述帶寬限制閾值,對(duì)數(shù)據(jù)緩存隊(duì)列中的下行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保 留所述下行帶寬限制閾值內(nèi)的數(shù)據(jù)包;和/或根據(jù)所述套接字優(yōu)先級(jí),對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行排序。本發(fā)明通過在系統(tǒng)中引入一個(gè)單獨(dú)的帶寬調(diào)度單元,其用于攔截與應(yīng)用編 程接口調(diào)用操作相關(guān)的數(shù)據(jù)包,并存入到一個(gè)數(shù)據(jù)緩存隊(duì)列中,然后執(zhí)行"帶 寬限制算法"集中對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選,從而實(shí)現(xiàn)對(duì)帶寬的調(diào) 度。由于該方法是基于外掛式的獨(dú)立的帶寬調(diào)度單元而實(shí)現(xiàn),因此提高了實(shí)現(xiàn) 方式的靈活性,也進(jìn)一步保證了帶寬調(diào)度過程的可靠性。
圖1是現(xiàn)有技術(shù)在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng)結(jié)構(gòu)圖; 圖2是本發(fā)明在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng)結(jié)構(gòu)圖; 圖3是本發(fā)明的一個(gè)實(shí)施例中帶寬調(diào)度單元的結(jié)構(gòu)圖; 圖4是本發(fā)明在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法流程圖; 圖5是本發(fā)明的一個(gè)實(shí)施例在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法流程圖; 圖6是本發(fā)明的一個(gè)實(shí)施例中帶寬調(diào)度單元所存儲(chǔ)的數(shù)據(jù)緩存隊(duì)列示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí) 施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅 僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明通過在系統(tǒng)中引入一個(gè)單獨(dú)的帶寬調(diào)度單元,其用于攔截與應(yīng)用編 程接口調(diào)用操作相關(guān)的數(shù)據(jù)包,并存入到一個(gè)數(shù)據(jù)緩存隊(duì)列中,然后執(zhí)行"帶寬限制算法"集中對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選,從而實(shí)現(xiàn)對(duì)帶寬的調(diào)度。由于該方法是基于外掛式的獨(dú)立的帶寬調(diào)度單元而實(shí)現(xiàn),因此提高了實(shí)現(xiàn) 方式的靈活性,也進(jìn)一步保證了帶寬調(diào)度過程的可靠性。圖2示出了本發(fā)明在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng)結(jié)構(gòu),包括互聯(lián)網(wǎng) 100、應(yīng)用編程接口200、業(yè)務(wù)層300和帶寬調(diào)度單元400。應(yīng)當(dāng)說明的是,本發(fā) 明所有圖示中各設(shè)備之間的連接關(guān)系是為了清楚闡釋其信息交互及控制過程的 需要,因此應(yīng)當(dāng)視為邏輯上的連接關(guān)系,而不應(yīng)僅限于物理連接。其中(1) 互聯(lián)網(wǎng)100與應(yīng)用編程接口200進(jìn)行數(shù)據(jù)交互,用于為用戶提供各種網(wǎng) 絡(luò)服務(wù)。(2) 應(yīng)用編程接口200與互聯(lián)網(wǎng)100、業(yè)務(wù)層300進(jìn)行數(shù)據(jù)交互,為各種不 同的平臺(tái)提供數(shù)據(jù)共享。(3) 業(yè)務(wù)層300用于存儲(chǔ)和處理業(yè)務(wù)。該層與用戶的各種軟件應(yīng)用息息相 關(guān),本發(fā)明中用戶可登錄到各種客戶端中發(fā)起業(yè)務(wù)操作,包括與應(yīng)用編程接口 200的調(diào)用有關(guān)的操作。(4) 帶寬調(diào)度單元400與應(yīng)用編程接口200進(jìn)行數(shù)據(jù)交互,用于攔截互聯(lián)網(wǎng) IOO與業(yè)務(wù)層300之間傳輸?shù)呐c應(yīng)用編程接口200的調(diào)用操作相關(guān)的數(shù)據(jù)包,并存 入到其所建立的數(shù)據(jù)緩存隊(duì)列中,然后通過帶寬限制算法對(duì)數(shù)據(jù)緩存隊(duì)列中的 數(shù)據(jù)包進(jìn)行篩選。在一個(gè)實(shí)施例中,如圖3所示,該帶寬調(diào)度單元400進(jìn)一步包 括數(shù)據(jù)包攔截模塊401、篩選模塊402,其中數(shù)據(jù)包攔截^t塊401用于攔截與應(yīng) 用編程接口200的調(diào)用揭:作相關(guān)的數(shù)據(jù)包,并存入到一個(gè)數(shù)據(jù)緩存隊(duì)列中;篩選 模塊402與數(shù)據(jù)包攔截模塊401進(jìn)行數(shù)據(jù)交互,其利用帶寬限制算法對(duì)數(shù)據(jù)緩存 隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選。篩選模塊402具有以下三個(gè)接口中的至少一者上行帶寬限制接口 SetMaxUploadBandwidth()、下行帶寬限制接口 SetMaxDownloadBandwidth()、套 接字優(yōu)先級(jí)接口SetSocketPriority()。其中上行帶寬限制接口設(shè)置有一個(gè)上行帶 寬限制閾值,用于對(duì)數(shù)據(jù)緩存隊(duì)列中的上行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留所述上行 帶寬限制閾值內(nèi)的數(shù)據(jù)包;下行帶寬限制接口設(shè)置有一個(gè)下行帶寬限制閾值, 用于對(duì)數(shù)據(jù)緩存隊(duì)列中的下行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留下行帶寬限制閾值內(nèi)的 數(shù)據(jù)包;套接字優(yōu)先級(jí)接口設(shè)置有與不同類型操作對(duì)應(yīng)的套接字優(yōu)先級(jí),用于 根據(jù)套接字優(yōu)先級(jí)對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行排序。圖4示出了本發(fā)明在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法流程,該方法流程基 于圖2、圖3所示的系統(tǒng)結(jié)構(gòu),具體過程如下在執(zhí)行本發(fā)明的所有步驟之前,啟動(dòng)外掛的帶寬調(diào)度單元400,并對(duì)其帶寬 調(diào)度算法進(jìn)行參數(shù)設(shè)置。該參數(shù)設(shè)置是指,在帶寬調(diào)度單元400中設(shè)置以下三個(gè) 閾值中的至少一者上行帶寬限制閾值、下行帶寬限制閾值及套接字優(yōu)先級(jí)。在步驟S401中,帶寬調(diào)度單元400攔截互聯(lián)網(wǎng)100與業(yè)務(wù)層300之間傳輸?shù)呐c 應(yīng)用編程接口 200的調(diào)用搮:作相關(guān)的數(shù)據(jù)包,并存入到其所建立的數(shù)據(jù)緩存隊(duì)列 中。在步驟S402中,帶寬調(diào)度單元400通過帶寬限制算法對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù) 據(jù)包進(jìn)行篩選。篩選過程包括根據(jù)上行帶寬限制閾值,對(duì)數(shù)據(jù)緩存隊(duì)列中的 上行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留上行帶寬限制閾值內(nèi)的數(shù)據(jù)包;根據(jù)帶寬限制閾 值,對(duì)數(shù)據(jù)緩存隊(duì)列中的下行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留下行帶寬限制閾值內(nèi)的 數(shù)據(jù)包;和/或根據(jù)套接字優(yōu)先級(jí),對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行排序,例如 若將傳輸控制協(xié)議(Transmission Control Protocol, TCP)數(shù)據(jù)包的優(yōu)先級(jí)設(shè)置的比 較高,則將其排到數(shù)據(jù)緩存隊(duì)列中靠前的位置。在步驟S403中,按照處理后的緩存隊(duì)列中數(shù)據(jù)包的排序,對(duì)數(shù)據(jù)包進(jìn)行收 發(fā)。至此, 一次收發(fā)過程結(jié)束。此后,則根據(jù)運(yùn)行實(shí)踐,調(diào)整帶寬調(diào)度算法的 參數(shù),對(duì)帶寬調(diào)整效果進(jìn)行優(yōu)化。因?yàn)槊總€(gè)網(wǎng)絡(luò)應(yīng)用的特點(diǎn)不一樣,帶寬的測(cè) 量和統(tǒng)計(jì)也不能夠太準(zhǔn)確,所以調(diào)度算法設(shè)計(jì)好之后,需要針對(duì)不同的網(wǎng)絡(luò)類 型和帶寬參數(shù)情況下的用戶情況,進(jìn)行實(shí)際的測(cè)試,然后調(diào)試算法中的參數(shù)到 一個(gè)合理的值,以優(yōu)化調(diào)度的效果。圖5示出了本發(fā)明的一個(gè)實(shí)施例在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法流程, 該方法流程基于圖4所示的方法流程,具體包括在步驟S501中,在調(diào)用應(yīng)用程序之前,啟動(dòng)外掛式的帶寬調(diào)度單元400,并 進(jìn)行帶寬控制設(shè)置。在本實(shí)施例中,將上行帶寬限制閾值設(shè)置為10Kbit/s,將下 行帶寬限制閾值也設(shè)置為10Kbit/s,并且將TCP數(shù)據(jù)包的套接字優(yōu)先級(jí)設(shè)置為最 高。在步驟S502中,攔截應(yīng)用編程接口200調(diào)用操作過程中收發(fā)的數(shù)據(jù)包,包括 上行數(shù)據(jù)包和下行數(shù)據(jù)包。在步驟S503中,把攔截到的數(shù)據(jù)包分別存入上行數(shù)據(jù)緩存隊(duì)列、下行數(shù)據(jù)緩存隊(duì)列中。如圖6所示,上行數(shù)據(jù)緩存隊(duì)列中存儲(chǔ)的是上行數(shù)據(jù)流,其 中U (Upload)代表上行,包括以下數(shù)據(jù)包UOOl、 U002……U009……。而 下行數(shù)據(jù)緩存隊(duì)列中存儲(chǔ)的是下行數(shù)據(jù)流,其中D (Download)代表下行, 包括以下數(shù)據(jù)包DOOl、 D002……D009......。上述的數(shù)據(jù)緩存隊(duì)列中,各數(shù)據(jù)包占用的帶寬并不一致,另外數(shù)據(jù)包的類型也包括多種,例如TCP數(shù)據(jù) 包、用戶數(shù)據(jù)才艮協(xié)i義(UserDatagramProtocol, UDP )數(shù)據(jù)包、網(wǎng)際控制消息 協(xié)議(Internet Control Message Protocol, ICMP)數(shù)據(jù)包。在后續(xù)流程中,將 分別對(duì)上述的兩個(gè)數(shù)據(jù)緩存隊(duì)列進(jìn)行帶寬限制,其中步驟S504 - S506針對(duì)上 行數(shù)據(jù)緩存隊(duì)列,步驟S507 - S509針對(duì)下行數(shù)據(jù)緩存隊(duì)列。 在步驟S504中,帶寬調(diào)度單元400對(duì)其存儲(chǔ)的上行數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包 所占帶寬進(jìn)行檢測(cè),并將其與此前設(shè)置的上行帶寬限制閾值進(jìn)行比較,判斷上 行數(shù)據(jù)包所占帶寬是否大于上行帶寬限制閾值若是,則執(zhí)行步驟S505;若否, 則轉(zhuǎn)步驟S506。在步驟S505中,將該上行數(shù)據(jù)包從上行數(shù)據(jù)緩存隊(duì)列中剔除出去,只保留 上行帶寬限制閾值之內(nèi)的數(shù)據(jù)包。在步驟S506中,根據(jù)套接字優(yōu)先級(jí),對(duì)上行數(shù)緩存隊(duì)列中的數(shù)據(jù)包重新排 序。在本實(shí)施例中,由于實(shí)現(xiàn)設(shè)置TCP數(shù)據(jù)包的套接字優(yōu)先級(jí)最高,因此將TCP 數(shù)據(jù)包排到隊(duì)列前端。在步驟S507中,帶寬調(diào)度單元400對(duì)其存儲(chǔ)的下行數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包 所占帶寬進(jìn)行檢測(cè),并將其與此前設(shè)置的下行帶寬限制閾值進(jìn)行比較,判斷下 行數(shù)據(jù)包所占帶寬是否大于下行帶寬限制閾值若是,則執(zhí)行步驟S508;若否, 則轉(zhuǎn)步驟S509。在步驟S508中,將該下行數(shù)據(jù)包從下行數(shù)據(jù)緩存隊(duì)列中剔除出去,只保留 下行帶寬限制閾值之內(nèi)的數(shù)據(jù)包。在步驟S509中,根據(jù)套接字優(yōu)先級(jí),對(duì)下行數(shù)緩存隊(duì)列中的數(shù)據(jù)包重新排 序。在本實(shí)施例中,由于實(shí)現(xiàn)設(shè)置TCP數(shù)據(jù)包的套接字優(yōu)先級(jí)最高,因此將TCP 數(shù)據(jù)包排到隊(duì)列前端。在步驟S510中,按照數(shù)據(jù)緩存隊(duì)列中數(shù)據(jù)包的排序,對(duì)數(shù)據(jù)包執(zhí)行收發(fā)操 作。此時(shí)的數(shù)據(jù)緩存隊(duì)列中所有數(shù)據(jù)包占用帶寬都在閾值之內(nèi),而且對(duì)TCP數(shù)據(jù) 包進(jìn)行優(yōu)先處理。本發(fā)明的帶寬調(diào)度功能,能夠使得用戶自主的分配其運(yùn)行的各種軟件應(yīng)用對(duì)帶寬的使用情況,減少因?yàn)閭€(gè)別應(yīng)用對(duì)帶寬的大多需求,而影響其他應(yīng)用的 網(wǎng)絡(luò)操作功能。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā) 明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明 的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng),包括互聯(lián)網(wǎng)、應(yīng)用編程接口、業(yè)務(wù)層,其特征在于,所述系統(tǒng)還包括帶寬調(diào)度單元,與應(yīng)用編程接口進(jìn)行數(shù)據(jù)交互,用于攔截互聯(lián)網(wǎng)與業(yè)務(wù)層之間傳輸?shù)呐c應(yīng)用編程接口調(diào)用操作相關(guān)的數(shù)據(jù)包,并存入到數(shù)據(jù)緩存隊(duì)列中,然后通過帶寬限制算法對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選。
2、 根據(jù)權(quán)利要求l所述的在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng),其特征在 于,所述帶寬調(diào)度單元進(jìn)一步包括數(shù)據(jù)包攔截模塊、篩選模塊;所述數(shù)據(jù)包攔截模塊用于攔截與應(yīng)用編程接口調(diào)用操作相關(guān)的數(shù)據(jù)包,并 存入到 一個(gè)數(shù)據(jù)緩存隊(duì)列中;所述篩選模塊與數(shù)據(jù)包攔截模塊進(jìn)行數(shù)據(jù)交互,其利用帶寬限制算法對(duì)數(shù) 據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選。
3、 根據(jù)權(quán)利要求l所述的在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的系統(tǒng),其特征在 于,所述篩選模塊具有以下三個(gè)接口中的至少一者上行帶寬限制接口、下行 帶寬限制接口、套接字優(yōu)先級(jí)接口;所述上行帶寬限制接口設(shè)置有一個(gè)上行帶寬限制閾值,用于對(duì)^t據(jù)緩存隊(duì) 列中的上行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留所述上行帶寬限制閾值內(nèi)的數(shù)據(jù)包;所述下行帶寬限制接口設(shè)置有一個(gè)下行帶寬限制閾值,用于對(duì)數(shù)據(jù)緩存隊(duì) 列中的下行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保留所述下行帶寬限制闊值內(nèi)的數(shù)據(jù)包;所述套接字優(yōu)先級(jí)接口設(shè)置有與不同類型操作對(duì)應(yīng)的套接字優(yōu)先級(jí),用于 根據(jù)所述套接字優(yōu)先級(jí)對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行排序。
4、 一種基于權(quán)利要求l所述系統(tǒng)在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法,其 特征在于,所述方法包括以下步驟A. 帶寬調(diào)度單元攔截互聯(lián)網(wǎng)與業(yè)務(wù)層之間傳輸?shù)呐c應(yīng)用編程接口調(diào)用操作 相關(guān)的數(shù)據(jù)包,并存入到數(shù)據(jù)緩存隊(duì)列中;B. 通過帶寬限制算法對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選。
5、 根據(jù)權(quán)利要求4所述的在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法,其特征在 于,所述步驟B之后進(jìn)一步包括C. 按照處理后的緩存隊(duì)列中數(shù)據(jù)包的排序,對(duì)數(shù)據(jù)包進(jìn)行收發(fā)。
6、 根據(jù)權(quán)利要求4所述的在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法,其特征在于,所述步驟A之前進(jìn)一步包括,啟動(dòng)外掛的帶寬調(diào)度單元,并對(duì)其帶寬調(diào)度算 法進(jìn)行參數(shù)設(shè)置。
7、 根據(jù)權(quán)利要求6所述的在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法,其特征在 于,所述參數(shù)設(shè)置是指,在帶寬調(diào)度單元中設(shè)置以下三個(gè)閾值中的至少一者 上行帶寬限制閾值、下行帶寬限制閾值及套接字優(yōu)先級(jí)。
8、 根據(jù)權(quán)利要求7所述的在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法,其特征在 于,所述步驟B進(jìn)一步包括根據(jù)所述上行帶寬限制閾值,對(duì)數(shù)據(jù)緩存隊(duì)列中的上行數(shù)據(jù)包進(jìn)行監(jiān)測(cè), 僅保留所述上行帶寬限制閾值內(nèi)的數(shù)據(jù)包;和/或根據(jù)所述帶寬限制閾值,對(duì)數(shù)據(jù)緩存隊(duì)列中的下行數(shù)據(jù)包進(jìn)行監(jiān)測(cè),僅保 留所述下行帶寬限制閾值內(nèi)的數(shù)據(jù)包;和/或根據(jù)所述套接字優(yōu)先級(jí),對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行排序。
全文摘要
本發(fā)明涉及通信領(lǐng)域,提供了一種在網(wǎng)絡(luò)應(yīng)用中對(duì)帶寬進(jìn)行調(diào)度的方法及系統(tǒng)。所述方法包括以下步驟A.帶寬調(diào)度單元攔截互聯(lián)網(wǎng)與業(yè)務(wù)層之間傳輸?shù)呐c應(yīng)用編程接口調(diào)用操作相關(guān)的數(shù)據(jù)包,并存入到數(shù)據(jù)緩存隊(duì)列中;B.通過帶寬限制算法對(duì)數(shù)據(jù)緩存隊(duì)列中的數(shù)據(jù)包進(jìn)行篩選。該方法是基于外掛式的獨(dú)立的帶寬調(diào)度單元而實(shí)現(xiàn),提高了實(shí)現(xiàn)方式的靈活性,也進(jìn)一步保證了帶寬調(diào)度過程的可靠性。
文檔編號(hào)H04L12/56GK101217456SQ200710125679
公開日2008年7月9日 申請(qǐng)日期2007年12月29日 優(yōu)先權(quán)日2007年12月29日
發(fā)明者慶 張, 張志東, 彭建波, 郭偉軍 申請(qǐng)人:騰訊科技(深圳)有限公司