基于路由層面的長連接的方法和系統(tǒng)的制作方法
【專利摘要】本申請(qǐng)公開了一種基于路由層面的長連接的方法和系統(tǒng),包括:在基于路由的局域網(wǎng)絡(luò)中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器;在所述服務(wù)器響應(yīng)該長連接請(qǐng)求并建立長連接后,將多個(gè)所述終端發(fā)送的所述訪問請(qǐng)求進(jìn)行協(xié)議適配處理通過所述長連接發(fā)送至所述服務(wù)器中,并通過該長連接接收所述服務(wù)器反饋的請(qǐng)求數(shù)據(jù);監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制。本申請(qǐng)解決了在基于路由的局域網(wǎng)絡(luò)環(huán)境中長連接由終端建立缺乏統(tǒng)一通訊管理且路由只能建立短連接的問題。
【專利說明】基于路由層面的長連接的方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及數(shù)據(jù)連接通信領(lǐng)域,更具體地,涉及一種基于路由層面的長連接的方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著通信技術(shù)的發(fā)展,人們可以通過終端與服務(wù)器之間建立網(wǎng)絡(luò)連接,實(shí)現(xiàn)數(shù)據(jù)、信息的交互傳輸,不僅如此,不同終端之間也可以采用數(shù)據(jù)傳輸?shù)姆绞竭M(jìn)行交互溝通,人們便可以通過上述傳輸方式建立的互聯(lián)網(wǎng)絡(luò)獲取所需的信息。
[0003]通常情況下,在互聯(lián)網(wǎng)絡(luò)中,當(dāng)通訊雙方有數(shù)據(jù)交互時(shí),就需要建立一個(gè)連接,數(shù)據(jù)傳輸完成后,則斷開此連接,即每次連接只完成一項(xiàng)業(yè)務(wù)的發(fā)送,這樣的連接稱為短連接。但是,就不同客戶端而言,尤其對(duì)于路由器建立的局域網(wǎng)絡(luò)環(huán)境,處在同一局域網(wǎng)絡(luò)環(huán)境下的不同用戶(客戶端)通過路由器與服務(wù)器連接,每個(gè)用戶進(jìn)行一次網(wǎng)絡(luò)通信時(shí),路由器就需要建立一次與服務(wù)器的連接,用戶可能在短時(shí)間內(nèi)進(jìn)行多次通信,如:運(yùn)行在終端系統(tǒng)中的具有聯(lián)網(wǎng)功能的程序或線程,會(huì)向服務(wù)器端發(fā)起多次訪問請(qǐng)求(TCP連接,Transmission Control Protocol,傳輸控制協(xié)議),相應(yīng)的,服務(wù)器端也會(huì)多次接收客戶端發(fā)起的訪問請(qǐng)求,并多次傳輸對(duì)應(yīng)的數(shù)據(jù)。如此一來,客戶端每一次發(fā)送訪問請(qǐng)求,都需要建立一次與服務(wù)器端的連接,即短連接,而每個(gè)TCP連接都需要一定時(shí)間,如果每次通信都是先連接,再傳輸?shù)脑?,那么?shù)據(jù)傳輸?shù)奶幚硭俣缺厝粚⑹艿絿?yán)重影響。同時(shí),頻繁的短連接創(chuàng)建,需要服務(wù)器端不斷監(jiān)聽,并不斷進(jìn)行連接確認(rèn),需要路由器不斷地建立短連接,這樣一來,不僅增加了路由器以及服務(wù)器在這一段時(shí)間內(nèi)的工作負(fù)擔(dān),而且浪費(fèi)了網(wǎng)絡(luò)帶寬資源。
[0004]雖然可以采用長連接的方式進(jìn)行通信避免短時(shí)間內(nèi)重復(fù)的連接請(qǐng)求,但是,長連接都是由終端建立,每一條長連接可以傳輸大量數(shù)據(jù),而終端中不同的訪問請(qǐng)求會(huì)建立不同的長連接,導(dǎo)致已建立的長連接資源的浪費(fèi),同時(shí),若多個(gè)終端發(fā)出的長連接(向服務(wù)器)請(qǐng)求量過大時(shí),那么在基于路由的局域網(wǎng)絡(luò)環(huán)境中,將造成局域網(wǎng)絡(luò)帶寬資源的嚴(yán)重消耗。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本申請(qǐng)所要解決的技術(shù)問題是提供了一種基于路由層面的長連接的方法和系統(tǒng),以解決在基于路由的局域網(wǎng)絡(luò)環(huán)境中長連接由終端建立缺乏統(tǒng)一通訊管理且路由只能建立短連接的問題。
[0006]為了解決上述技術(shù)問題,本申請(qǐng)公開了一種基于路由層面的長連接的方法,包括:
在基于路由的局域網(wǎng)絡(luò)中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器;
在所述服務(wù)器響應(yīng)該長連接請(qǐng)求并建立長連接后,將多個(gè)所述終端發(fā)送的所述訪問請(qǐng)求進(jìn)行協(xié)議適配處理通過所述長連接發(fā)送至所述服務(wù)器中,并通過該長連接接收所述服務(wù)器反饋的請(qǐng)求數(shù)據(jù);
監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制。
[0007]優(yōu)選地,其中,監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制,進(jìn)一步為:
當(dāng)監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量增加且超過當(dāng)前已建立的所述長連接的最大傳輸容量時(shí),再次生成一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器增加一條長連接。
[0008]優(yōu)選地,其中,還包括:當(dāng)監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量減少,關(guān)閉空閑的所述長連接,直到剩余一條所述長連接并保持該長連接不斷開。
[0009]優(yōu)選地,其中,還包括:當(dāng)監(jiān)測(cè)到剩余的一條所述長連接在至少30分鐘內(nèi)無數(shù)據(jù)傳輸時(shí),則斷開該長連接。
[0010]優(yōu)選地,其中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器,進(jìn)一步為:
接收位于局域網(wǎng)絡(luò)中的多個(gè)終端所發(fā)出的所述訪問請(qǐng)求,并統(tǒng)計(jì)接收到的所述訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量,根據(jù)該數(shù)據(jù)量生成匹配數(shù)量的多個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器。
[0011]為了解決上述技術(shù)問題,本申請(qǐng)還公開了一種基于路由層面的長連接的系統(tǒng),設(shè)置于終端與服務(wù)器之間,包括:長連接建立單元、傳輸單元以及監(jiān)測(cè)控制單元,其中,
所述長連接建立單元,用于在基于路由的局域網(wǎng)絡(luò)中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器;
所述傳輸單元,用于在所述服務(wù)器響應(yīng)該長連接請(qǐng)求并建立長連接后,將多個(gè)所述終端發(fā)送的所述訪問請(qǐng)求進(jìn)行協(xié)議適配處理通過所述長連接發(fā)送至所述服務(wù)器中,并通過該長連接接收所述服務(wù)器反饋的請(qǐng)求數(shù)據(jù);
所述監(jiān)測(cè)控制單元,用于監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制。
[0012]優(yōu)選地,其中,所述監(jiān)測(cè)控制單元,進(jìn)一步用于監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量增加且超過當(dāng)前已建立的所述長連接的最大傳輸容量時(shí),再次生成一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器增加一條長連接。
[0013]優(yōu)選地,其中,所述監(jiān)測(cè)控制單元,還用于監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量減少,關(guān)閉空閑的所述長連接,直到剩余一條所述長連接并保持該長連接不斷開。
[0014]優(yōu)選地,其中,所述監(jiān)測(cè)控制單元,還用于當(dāng)監(jiān)測(cè)到剩余的一條所述長連接在至少30分鐘內(nèi)無數(shù)據(jù)傳輸時(shí),則斷開該長連接。
[0015]優(yōu)選地,其中,所述長連接建立單元,進(jìn)一步用于接收位于局域網(wǎng)絡(luò)中的多個(gè)終端所發(fā)出的所述訪問請(qǐng)求,并統(tǒng)計(jì)接收到的所述訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量,根據(jù)該數(shù)據(jù)量生成匹配數(shù)量的多個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器。
[0016]與現(xiàn)有技術(shù)相比,本申請(qǐng)所述的一種基于路由層面的長連接的方法和系統(tǒng),達(dá)到了如下效果:
I)本申請(qǐng)?jiān)诙鄠€(gè)終端構(gòu)成的局域網(wǎng)絡(luò)環(huán)境中,通過在路由器與服務(wù)器之間建立長連接,其長連接支持http、TCP、代理協(xié)議等多種通信協(xié)議,可以減少連接建立時(shí)的握手次數(shù)(如:減少建立和關(guān)閉tcp連接的次數(shù))以及網(wǎng)絡(luò)流量,同時(shí),建立的長連接可以根據(jù)實(shí)際訪問請(qǐng)求量進(jìn)行增加或減少,有效解決了在基于路由的局域網(wǎng)絡(luò)環(huán)境中長連接由終端建立缺乏統(tǒng)一通訊管理且路由只能建立短連接的問題。
[0017]2)本申請(qǐng)所建立的長連接在數(shù)據(jù)通信較少時(shí),至少保持一條長連接,即路由器始終與服務(wù)器保持連接,當(dāng)有終端發(fā)出訪問請(qǐng)求時(shí),可以立即通過長連接與服務(wù)器進(jìn)行通信交互,而不用重新建立連接,減少后續(xù)請(qǐng)求的延時(shí)。
[0018]當(dāng)然,實(shí)施本申請(qǐng)的任一產(chǎn)品必不一定需要同時(shí)達(dá)到以上所述的所有技術(shù)效果。
[0019]【專利附圖】
【附圖說明】
[0020]此處所說明的附圖用來提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
圖1是本申請(qǐng)實(shí)施例一所述的基于路由層面的長連接的方法的流程框圖。
[0021]圖2是本申請(qǐng)實(shí)施例二所述的基于路由層面的長連接的方法的流程框圖。
[0022]圖3是本申請(qǐng)實(shí)施例三中所述的基于路由層面的長連接的方法的具體應(yīng)用示意圖。
[0023]圖4是本申請(qǐng)實(shí)施例五所述的基于路由層面的長連接的系統(tǒng)的結(jié)構(gòu)框圖。
[0024]【具體實(shí)施方式】
[0025]如在說明書及權(quán)利要求當(dāng)中使用了某些詞匯來指稱特定組件。本領(lǐng)域技術(shù)人員應(yīng)可理解,硬件制造商可能會(huì)用不同名詞來稱呼同一個(gè)組件。本說明書及權(quán)利要求并不以名稱的差異來作為區(qū)分組件的方式,而是以組件在功能上的差異來作為區(qū)分的準(zhǔn)則。如在通篇說明書及權(quán)利要求當(dāng)中所提及的“包含”為一開放式用語,故應(yīng)解釋成“包含但不限定于”?!按笾隆笔侵冈诳山邮盏恼`差范圍內(nèi),本領(lǐng)域技術(shù)人員能夠在一定誤差范圍內(nèi)解決所述技術(shù)問題,基本達(dá)到所述技術(shù)效果。此外,“耦接”一詞在此包含任何直接及間接的電性耦接手段。因此,若文中描述一第一裝置耦接于一第二裝置,則代表所述第一裝置可直接電性耦接于所述第二裝置,或通過其他裝置或耦接手段間接地電性耦接至所述第二裝置。說明書后續(xù)描述為實(shí)施本申請(qǐng)的較佳實(shí)施方式,然所述描述乃以說明本申請(qǐng)的一般原則為目的,并非用以限定本申請(qǐng)的范圍。本申請(qǐng)的保護(hù)范圍當(dāng)視所附權(quán)利要求所界定者為準(zhǔn)。
實(shí)施例一
如圖1所示,為本申請(qǐng)實(shí)施例一所述的一種基于路由層面的長連接的方法,該方法包
括:
步驟101,在基于路由的局域網(wǎng)絡(luò)中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器。
[0026]上述步驟101中所述的局域網(wǎng)絡(luò)是基于帶有路由功能的網(wǎng)絡(luò)設(shè)備所構(gòu)成的局域網(wǎng)絡(luò),包括但不限于:路由器、Hub (多端口網(wǎng)絡(luò)轉(zhuǎn)發(fā)器)等設(shè)備。
[0027]用戶使用位于該局域網(wǎng)絡(luò)中的終端(包括:計(jì)算機(jī)終端、移動(dòng)終端等,在此不作具體限定)進(jìn)行互聯(lián)網(wǎng)操作(如:訪問網(wǎng)站、下載數(shù)據(jù)等)時(shí),運(yùn)行于終端上的程序或線程,如:瀏覽器、下載線程,便會(huì)發(fā)送訪問請(qǐng)求,通過路由器訪問相應(yīng)的服務(wù)器,在路由器與服務(wù)器之間將建立用以傳輸數(shù)據(jù)的連接。
[0028]對(duì)于同一局域網(wǎng)絡(luò)環(huán)境中的多個(gè)終端而言,任一終端可能會(huì)在任意時(shí)刻發(fā)出向服務(wù)器的訪問請(qǐng)求,那么,當(dāng)路由器接收到任一終端的訪問請(qǐng)求后,便立即建立與服務(wù)器的長連接,從而將終端的訪問請(qǐng)求及時(shí)發(fā)送至服務(wù)器中以獲取相應(yīng)的數(shù)據(jù)。
[0029]需要說明的是,不同終端所發(fā)出的訪問請(qǐng)求將在服務(wù)器中獲取不同類型的數(shù)據(jù),如:獲取某網(wǎng)頁的數(shù)據(jù)以在瀏覽器中顯示該網(wǎng)站頁面;獲取一段視頻數(shù)據(jù)在終端中緩沖(或下載)以進(jìn)行播放。而建立的每一條長連接的傳輸容量有限,在局域網(wǎng)絡(luò)中的多個(gè)終端都獲取大量數(shù)據(jù)的情況下,若只以一條長連接傳輸,則會(huì)導(dǎo)致數(shù)據(jù)傳輸效率受到嚴(yán)重影響。所以在上述步驟101中,將生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器,以建立至少一條長連接。在實(shí)際應(yīng)用中,初始建立的長連接的數(shù)量將根據(jù)不同終端所放出的訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量而決定,訪問請(qǐng)求中通常含有對(duì)應(yīng)的數(shù)據(jù)的標(biāo)識(shí),通過標(biāo)識(shí),并可以獲知需要傳輸?shù)臄?shù)據(jù)量。
[0030]步驟102,在所述服務(wù)器響應(yīng)該長連接請(qǐng)求并建立長連接后,將多個(gè)所述終端發(fā)送的數(shù)據(jù)信息通過所述長連接分別發(fā)送至所述服務(wù)器中,并通過該長連接接收所述服務(wù)器反饋的通信數(shù)據(jù)。
[0031]在局域網(wǎng)絡(luò)中,由于各終端通信傳輸?shù)男枰?,其發(fā)出的訪問請(qǐng)求類型是多樣的:可以是基于http (Hypertext transfer protocol,超文本傳輸協(xié)議)的連接請(qǐng)求,也可以是基于TCP的連接請(qǐng)求,或者是基于代理協(xié)議的連接請(qǐng)求等等。通過在路由器和服務(wù)器之間的長連接,各終端所發(fā)出的不同類型的訪問請(qǐng)求均在長連接中實(shí)現(xiàn)通信傳輸,從而避免了每一類型的訪問請(qǐng)求分別向服務(wù)器進(jìn)行多次握手(連接建立過程中的一種交互方式)。
[0032]通信傳輸過程中,以一條長連接為例,在該長連接傳輸容量允許的情況下,不同終端所發(fā)送的數(shù)據(jù)信息將在該長連接內(nèi)并行傳輸,作為另一種方式,數(shù)據(jù)信息也可以按照不同終端所發(fā)出的訪問請(qǐng)求的時(shí)間順序進(jìn)行傳輸,只有在訪問請(qǐng)求量超過一條長連接的最大傳輸容量時(shí),建立新的長連接;服務(wù)器所反饋的通信數(shù)據(jù)將根據(jù)不同的訪問請(qǐng)求的處理速度來決定傳輸順序,即服務(wù)器建立傳輸隊(duì)列,對(duì)于先處理完成的訪問請(qǐng)求,服務(wù)器將該訪問請(qǐng)求所對(duì)應(yīng)的通信數(shù)據(jù)優(yōu)先通過該長連接進(jìn)行傳輸,其他訪問請(qǐng)求所對(duì)應(yīng)的通信數(shù)據(jù)根據(jù)處理完成的順序依次排列傳輸。
[0033]步驟103,監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合所述長連接的傳輸容量,對(duì)已建立的所述長連接的數(shù)量進(jìn)行控制。
[0034]終端所發(fā)出的訪問請(qǐng)求具有隨機(jī)性,可能出現(xiàn)在某一時(shí)間段進(jìn)行大量訪問請(qǐng)求或是在某一時(shí)間段內(nèi)無任何訪問請(qǐng)求的情況。對(duì)于終端在某一時(shí)間段內(nèi)發(fā)出大量訪問請(qǐng)求的情況,初始建立的長連接不足以將所有的訪問請(qǐng)求一并傳輸,所以為了不耽誤傳輸進(jìn)度,將長連接的數(shù)量;對(duì)于終端在某一時(shí)間段內(nèi)無任何訪問請(qǐng)求的情況(如在夜間,終端均不工作),若還持續(xù)保持多條長連接,那么必然會(huì)浪費(fèi)網(wǎng)絡(luò)帶寬,也增加路由器的工作負(fù)荷,所以將減少長連接的數(shù)量,甚至完全斷開長連接。對(duì)于上述控制方式,在實(shí)際應(yīng)用中可以根據(jù)需要進(jìn)行調(diào)整設(shè)置,并不限于以上描述的情況。
[0035]通過本實(shí)施例的上述步驟,可以在路由器與服務(wù)器之間建立長連接,其長連接支持http、TCP、代理協(xié)議等多種通信協(xié)議,可以減少連接建立時(shí)的握手次數(shù)(如:減少建立和關(guān)閉tcp連接的次數(shù))以及網(wǎng)絡(luò)流量;同時(shí),由于長連接的持續(xù)特性,也可以減少后續(xù)請(qǐng)求的延時(shí)。
[0036]實(shí)施例二
如圖2所示,為本申請(qǐng)實(shí)施例二所述的一種基于路由層面的長連接的方法,該方法包
括:
步驟201,接收位于局域網(wǎng)絡(luò)中的多個(gè)終端所發(fā)出的基于http和TCP協(xié)議的訪問請(qǐng)求,并統(tǒng)計(jì)接收到的所述訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量,根據(jù)該數(shù)據(jù)量生成匹配數(shù)量的長連接請(qǐng)求發(fā)送至服務(wù)器。
[0037]初始建立的長連接的數(shù)量將根據(jù)不同終端所放出的訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量而決定,雖然各終端發(fā)出的訪問請(qǐng)求的類型不同,但訪問請(qǐng)求通常以消息串的方式展現(xiàn),通過讀取位于消息串頭部的Content-Length (連接長度,表示需要傳輸?shù)臄?shù)據(jù)量),便可以獲知當(dāng)前訪問請(qǐng)求所需要傳輸?shù)臄?shù)據(jù)量。
[0038]步驟202,在建立對(duì)應(yīng)數(shù)量的長連接后,將不同的訪問請(qǐng)求進(jìn)行協(xié)議適配處理使不同訪問請(qǐng)求對(duì)應(yīng)的數(shù)據(jù)在長連接中傳輸,并實(shí)時(shí)監(jiān)測(cè)終端的訪問請(qǐng)求量。
[0039]協(xié)議適配處理使得基于不同協(xié)議的訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)可以在同一長連接中傳輸,在本實(shí)施例中的一種方式下,無論各終端發(fā)出的不同協(xié)議的訪問請(qǐng)求(如:http長連接、http短連接、SPDY協(xié)議等),均在基于TCP協(xié)議建立的長連接中傳輸,只是在TCP長連接中將不同協(xié)議設(shè)置成不同的通道,從而,多協(xié)議的訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)便可以在各自的傳輸通道中傳輸。
[0040]步驟203,當(dāng)監(jiān)測(cè)到終端的訪問請(qǐng)求量增加,且超過當(dāng)前的長連接的最大傳輸容量時(shí),再次生成一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器,并在增加的長連接建立后,一并進(jìn)行數(shù)據(jù)傳輸。
[0041]步驟204,當(dāng)監(jiān)測(cè)到終端的訪問請(qǐng)求量減少,關(guān)閉空閑的長連接,并至少保持一條長連接不斷開。
[0042]對(duì)于步驟204,當(dāng)監(jiān)測(cè)到所保持的至少一條長連接在至少30分鐘內(nèi)無數(shù)據(jù)傳輸時(shí),則斷開與所述服務(wù)器的連接。也就是說,在有多條長連接的情況下,將根據(jù)終端的訪問請(qǐng)求量的大小對(duì)長連接的數(shù)量進(jìn)行控制;對(duì)于所保持的一條長連接而言,將根據(jù)終端在一定時(shí)間段內(nèi)是否有訪問請(qǐng)求對(duì)該長連接進(jìn)行關(guān)斷控制。
[0043]實(shí)施例三
下面結(jié)合圖3,對(duì)所述基于路由層面的長連接的方法的具體應(yīng)用進(jìn)行詳細(xì)說明:
由終端1、終端2......終端N等N個(gè)終端構(gòu)成局域網(wǎng)絡(luò),并通過Hub Layer (多服務(wù)請(qǐng)
求統(tǒng)一轉(zhuǎn)發(fā)器層)建立與云端服務(wù)器的連接,其中,Hub Layer可以是具有路由功能的設(shè)備(如:路由器),也可以是具有路由功能的軟件,在本實(shí)施例中以路由器為例。
[0044]N個(gè)終端分別發(fā)出不同類型的訪問請(qǐng)求:終端I的訪問請(qǐng)求為http短連接請(qǐng)求、終端2的訪問請(qǐng)求為http長連接請(qǐng)求、終端3的訪問請(qǐng)求為SPDY協(xié)議請(qǐng)求、終端4的訪問請(qǐng)求為TCP連接請(qǐng)求、終端5的訪問請(qǐng)求為代理協(xié)議請(qǐng)求、終端N的訪問請(qǐng)求為基于TCP的連接協(xié)議請(qǐng)求。上述請(qǐng)求均發(fā)送至路由器中,并由路由器建立與云端服務(wù)器的長連接,本實(shí)施例中的長連接為TCP長連接,所以,路由器將對(duì)接收到的不同終端所發(fā)出的不同訪問請(qǐng)求進(jìn)行協(xié)議適配處理,以在當(dāng)前的TCP長連接中傳輸。
[0045]TCP長連接的數(shù)量可以根據(jù)訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量決定,也可以預(yù)先進(jìn)行設(shè)置,如:4臺(tái)終端共用一條長連接。路由器會(huì)監(jiān)測(cè)終端的訪問請(qǐng)求量,以對(duì)長連接的數(shù)量進(jìn)行控制。
[0046]云端服務(wù)器分別接收不同終端的訪問請(qǐng)求后將進(jìn)行協(xié)議解析,之后對(duì)解析得到的不同訪問請(qǐng)求進(jìn)行處理,由于不同的訪問請(qǐng)求所訪問獲取的數(shù)據(jù)不同,如:只獲取網(wǎng)站頁面的顯示內(nèi)容和獲取一段視頻數(shù)據(jù),因此服務(wù)器對(duì)不同訪問請(qǐng)求的處理速度也不相同,服務(wù)器將優(yōu)先處理完成的訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)通過長連接反饋至路由器中,在由路由器發(fā)送至對(duì)應(yīng)的終端。
[0047]需要說明的是,在路由器將不同終端的訪問請(qǐng)求發(fā)送至云端服務(wù)器的過程中,其遵循的發(fā)送方式為先接收先發(fā)送,即按照接收的訪問請(qǐng)求的時(shí)間順序進(jìn)行發(fā)送。
[0048]此外,路由器對(duì)不同終端的訪問請(qǐng)求可以進(jìn)行加密、壓縮處理,不僅增強(qiáng)了數(shù)據(jù)傳輸?shù)陌踩?,也增加了?shù)據(jù)的傳輸特性。
[0049]路由器監(jiān)測(cè)到N個(gè)終端的訪問請(qǐng)求量增加時(shí),便可以增加長連接的數(shù)量;監(jiān)測(cè)到N個(gè)終端的訪問請(qǐng)求量減少時(shí),關(guān)閉空閑的長連接,直到保留一條長連接,長連接的數(shù)量減少為一條后,路由器繼續(xù)監(jiān)測(cè)N個(gè)終端的訪問請(qǐng)求,只有當(dāng)30分鐘無任何終端發(fā)出訪問請(qǐng)求時(shí),才將該長連接關(guān)閉,即斷開與云端服務(wù)器的連接。
[0050]實(shí)施例四
如圖4所示,為本申請(qǐng)實(shí)施例四所述的一種基于路由層面的長連接的系統(tǒng),設(shè)置于終端與服務(wù)器之間,該系統(tǒng)包括:長連接建立單元401、傳輸單元402以及監(jiān)測(cè)控制單元403,其中,
所述長連接建立單元401,分別與多個(gè)終端、傳輸單元402以及服務(wù)器相耦接,用于在基于路由的局域網(wǎng)絡(luò)中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器。
[0051]所述傳輸單元402,分別與多個(gè)終端、長連接建立單元401以及服務(wù)器相耦接,用于在所述服務(wù)器響應(yīng)該長連接請(qǐng)求并建立長連接后,將多個(gè)所述終端發(fā)送的所述訪問請(qǐng)求進(jìn)行協(xié)議適配處理通過所述長連接發(fā)送至所述服務(wù)器中,并通過該長連接接收所述服務(wù)器反饋的請(qǐng)求數(shù)據(jù)。
[0052]所述監(jiān)測(cè)控制單元403,與長連接建立單元401相耦接,用于監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制。
[0053]不同終端所發(fā)出的訪問請(qǐng)求將在服務(wù)器中獲取不同類型的數(shù)據(jù),如:獲取某網(wǎng)頁的數(shù)據(jù)以在瀏覽器中顯示該網(wǎng)站頁面;獲取一段視頻數(shù)據(jù)在終端中緩沖(或下載)以進(jìn)行播放。而建立的每一條長連接的傳輸容量有限,在局域網(wǎng)絡(luò)中的多個(gè)終端都獲取大量數(shù)據(jù)的情況下,若只以一條長連接傳輸,則會(huì)導(dǎo)致數(shù)據(jù)傳輸效率受到嚴(yán)重影響。所以所述監(jiān)測(cè)控制單元403,具體用于監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量增加且超過當(dāng)前已建立的所述長連接的最大傳輸容量時(shí),再次生成一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器增加一條長連接。
[0054]在實(shí)際應(yīng)用中,初始建立的長連接的數(shù)量將根據(jù)不同終端所放出的訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量而決定,訪問請(qǐng)求中通常含有對(duì)應(yīng)的數(shù)據(jù)的標(biāo)識(shí),通過標(biāo)識(shí),并可以獲知需要傳輸?shù)臄?shù)據(jù)量。
[0055]所述監(jiān)測(cè)控制單元403,還用于監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量減少,關(guān)閉空閑的所述長連接,直到剩余一條所述長連接并保持該長連接不斷開。對(duì)于剩余的一條長連接而言,當(dāng)監(jiān)測(cè)控制單元403監(jiān)測(cè)到剩余的一條所述長連接在至少30分鐘內(nèi)無數(shù)據(jù)傳輸時(shí),則斷開該長連接。也就是說,在有多條長連接的情況下,將根據(jù)終端的訪問請(qǐng)求量的大小對(duì)長連接的數(shù)量進(jìn)行控制;對(duì)于所保持的一條長連接而言,將根據(jù)終端在一定時(shí)間段內(nèi)是否有訪問請(qǐng)求對(duì)該長連接進(jìn)行關(guān)斷控制。
[0056]初始建立的長連接的數(shù)量將根據(jù)不同終端所放出的訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量而決定,雖然各終端發(fā)出的訪問請(qǐng)求的類型不同,但訪問請(qǐng)求通常以消息串的方式展現(xiàn),通過讀取位于消息串頭部的Content-Length (連接長度,表示需要傳輸?shù)臄?shù)據(jù)量),便可以獲知當(dāng)前訪問請(qǐng)求所需要傳輸?shù)臄?shù)據(jù)量。所以,所述長連接建立單元401,用于接收位于局域網(wǎng)絡(luò)中的多個(gè)終端所發(fā)出的所述訪問請(qǐng)求,并統(tǒng)計(jì)接收到的所述訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量,根據(jù)該數(shù)據(jù)量生成匹配數(shù)量的多個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器。
[0057]由于方法部分已經(jīng)對(duì)本申請(qǐng)實(shí)施例進(jìn)行了詳細(xì)描述,這里對(duì)實(shí)施例中涉及的系統(tǒng)與方法對(duì)應(yīng)部分的展開描述省略,不再贅述。對(duì)于系統(tǒng)中具體內(nèi)容的描述可參考方法實(shí)施例的內(nèi)容,這里不再具體限定。
[0058]與現(xiàn)有技術(shù)相比,本申請(qǐng)所述的一種基于路由層面的長連接的方法和系統(tǒng),達(dá)到了如下效果:
I)本申請(qǐng)?jiān)诙鄠€(gè)終端構(gòu)成的局域網(wǎng)絡(luò)環(huán)境中,通過在路由器與服務(wù)器之間建立長連接,其長連接支持http、TCP、代理協(xié)議等多種通信協(xié)議,可以減少連接建立時(shí)的握手次數(shù)(如:減少建立和關(guān)閉tcp連接的次數(shù))以及網(wǎng)絡(luò)流量,同時(shí),建立的長連接可以根據(jù)實(shí)際訪問請(qǐng)求量進(jìn)行增加或減少,有效解決了在基于路由的局域網(wǎng)絡(luò)環(huán)境中長連接由終端建立缺乏統(tǒng)一通訊管理且路由只能建立短連接的問題。
[0059]2)本申請(qǐng)所建立的長連接在數(shù)據(jù)通信較少時(shí),至少保持一條長連接,即路由器始終與服務(wù)器保持連接,當(dāng)有終端發(fā)出訪問請(qǐng)求時(shí),可以立即通過長連接與服務(wù)器進(jìn)行通信交互,而不用重新建立連接,減少后續(xù)請(qǐng)求的延時(shí)。
[0060]還需要說明的是,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者系統(tǒng)中還存在另外的相同要素。
[0061]本領(lǐng)域技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
[0062]以上所述僅為本申請(qǐng)的實(shí)施例而已,并不用于限制本申請(qǐng)。對(duì)于本領(lǐng)域技術(shù)人員來說,本 申請(qǐng)可以有各種更改和變化。凡在本申請(qǐng)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的權(quán)利要求范圍之內(nèi)。
【權(quán)利要求】
1.一種基于路由層面的長連接的方法,其特征在于,包括: 在基于路由的局域網(wǎng)絡(luò)中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器; 在所述服務(wù)器響應(yīng)該長連接請(qǐng)求并建立長連接后,將多個(gè)所述終端發(fā)送的所述訪問請(qǐng)求進(jìn)行協(xié)議適配處理通過所述長連接發(fā)送至所述服務(wù)器中,并通過該長連接接收所述服務(wù)器反饋的請(qǐng)求數(shù)據(jù); 監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制。
2.如權(quán)利要求1所述的基于路由層面的長連接的方法,其特征在于, 監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制,進(jìn)一步為: 當(dāng)監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量增加且超過當(dāng)前已建立的所述長連接的最大傳輸容量時(shí),再次生成一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器增加一條長連接。
3.如權(quán)利要求2所述的基于路由層面的長連接的方法,其特征在于,還包括: 當(dāng)監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量減少,關(guān)閉空閑的所述長連接,直到剩余一條所述長連接并保持該長連接不斷開。
4.如權(quán)利要求3所述的基于路由層面的長連接的方法,其特征在于,還包括: 當(dāng)監(jiān)測(cè)到剩余的一條所述長連接在至少30分鐘內(nèi)無數(shù)據(jù)傳輸時(shí),則斷開該長連接。
5.如權(quán)利要求1所述的基于路由層面的長連接的方法,其特征在于, 接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器,進(jìn)一步為: 接收位于局域網(wǎng)絡(luò)中的多個(gè)終端所發(fā)出的所述訪問請(qǐng)求,并統(tǒng)計(jì)接收到的所述訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量,根據(jù)該數(shù)據(jù)量生成匹配數(shù)量的多個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器。
6.一種基于路由層面的長連接的系統(tǒng),設(shè)置于終端與服務(wù)器之間,其特征在于,包括:長連接建立單元、傳輸單元以及監(jiān)測(cè)控制單元,其中, 所述長連接建立單元,用于在基于路由的局域網(wǎng)絡(luò)中,接收多個(gè)終端發(fā)送的訪問請(qǐng)求,生成至少一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器; 所述傳輸單元,用于在所述服務(wù)器響應(yīng)該長連接請(qǐng)求并建立長連接后,將多個(gè)所述終端發(fā)送的所述訪問請(qǐng)求進(jìn)行協(xié)議適配處理通過所述長連接發(fā)送至所述服務(wù)器中,并通過該長連接接收所述服務(wù)器反饋的請(qǐng)求數(shù)據(jù); 所述監(jiān)測(cè)控制單元,用于監(jiān)測(cè)所述終端的訪問請(qǐng)求量并結(jié)合已建立的所述長連接的傳輸容量,對(duì)該長連接的數(shù)量進(jìn)行控制。
7.如權(quán)利要求6所述的基于路由層面的長連接的系統(tǒng),其特征在于, 所述監(jiān)測(cè)控制單元,進(jìn)一步用于監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量增加且超過當(dāng)前已建立的所述長連接的最大傳輸容量時(shí),再次生成一個(gè)長連接請(qǐng)求發(fā)送至服務(wù)器增加一條長連接。
8.如權(quán)利要求7所述的基于路由層面的長連接的系統(tǒng),其特征在于, 所述監(jiān)測(cè)控制單元,還用于監(jiān)測(cè)到所述終端的所述訪問請(qǐng)求量減少,關(guān)閉空閑的所述長連接,直到剩余一條所述長連接并保持該長連接不斷開。
9.如權(quán)利要求8所述的基于路由層面的長連接的系統(tǒng),其特征在于, 所述監(jiān)測(cè)控制單元,還用于當(dāng)監(jiān)測(cè)到剩余的一條所述長連接在至少30分鐘內(nèi)無數(shù)據(jù)傳輸時(shí),則斷開該長連接。
10.如權(quán)利要求6所述的基于路由層面的長連接的系統(tǒng),其特征在于, 所述長連接建立單元,進(jìn)一步用于接收位于局域網(wǎng)絡(luò)中的多個(gè)終端所發(fā)出的所述訪問請(qǐng)求,并統(tǒng)計(jì)接收到的所述訪問請(qǐng)求所對(duì)應(yīng)的數(shù)據(jù)量,根據(jù)該數(shù)據(jù)量生成匹配數(shù)量的多個(gè)長連接請(qǐng)求發(fā)送至服 務(wù)器。
【文檔編號(hào)】H04L12/24GK104009938SQ201410266737
【公開日】2014年8月27日 申請(qǐng)日期:2014年6月17日 優(yōu)先權(quán)日:2014年6月17日
【發(fā)明者】聶永, 姚鍵, 潘柏宇, 盧述奇 申請(qǐng)人:合一網(wǎng)絡(luò)技術(shù)(北京)有限公司