專(zhuān)利名稱(chēng):一種數(shù)據(jù)傳輸?shù)姆椒?、http代理和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸?shù)姆椒?、HTTP代理 和系統(tǒng)。
背景技術(shù):
網(wǎng)頁(yè)瀏覽是現(xiàn)今因特網(wǎng)所使用的主要服務(wù),對(duì)于網(wǎng)頁(yè)瀏覽來(lái)說(shuō),其應(yīng)用 層是超文本傳輸協(xié)議(HTTP, Hypertext Transfer Protocol) , HTTP提供了客 戶(hù)端和服務(wù)器之間的處理服務(wù)。隨著因特網(wǎng)的不斷發(fā)展,用戶(hù)對(duì)網(wǎng)頁(yè)瀏覽的 性能要求也就越來(lái)越高,因此,如何優(yōu)化網(wǎng)頁(yè)瀏覽的性能,以獲得最佳的用 戶(hù)感受度就顯得非常重要。
HTTP是一種交互機(jī)制協(xié)議,而網(wǎng)頁(yè)文件一般包含主框架和內(nèi)嵌對(duì)象, 主框架和內(nèi)嵌對(duì)象都需要UE主動(dòng)發(fā)GET請(qǐng)求給WEB服務(wù)器后,WEB服務(wù) 器才會(huì)下發(fā)相應(yīng)的數(shù)據(jù)。
覽訪問(wèn)時(shí)間性能是評(píng)價(jià)無(wú)線(xiàn)系統(tǒng)重要的性能指標(biāo)之一,但由于HTTP是一種 交互機(jī)制協(xié)議,每個(gè)內(nèi)嵌對(duì)象都需要UE主動(dòng)發(fā)GET請(qǐng)求后WEB服務(wù)器才 會(huì)下發(fā)數(shù)據(jù),如果WEB服務(wù)器收到的UE發(fā)送的GET請(qǐng)求時(shí)間過(guò)長(zhǎng),例如 空口環(huán)境質(zhì)量較差或者外網(wǎng)時(shí)延大,就會(huì)造成較大的傳輸時(shí)間延遲,數(shù)據(jù)傳 輸?shù)男阅芫捅容^差,影響網(wǎng)頁(yè)瀏覽性能,降低用戶(hù)感受。
發(fā)明內(nèi)容
本發(fā)明是提供一種數(shù)據(jù)傳輸?shù)姆椒?,HTTP代理和系統(tǒng)。 本發(fā)明的方法包括
接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包;
解析所述主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息;
根據(jù)所述內(nèi)嵌對(duì)象信息,構(gòu)造內(nèi)嵌對(duì)象GET請(qǐng)求,并將所述GET請(qǐng)求 發(fā)送給所述WEB服務(wù)器;
接收所述WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包; 向UE發(fā)送所述接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包。
同吋,本發(fā)'明:還提供1'—種rrir:p代理,
所述HTTP代理包含解析單元、請(qǐng)求構(gòu)造單元、內(nèi)嵌對(duì)象獲取單元和數(shù) 據(jù)轉(zhuǎn)發(fā)單元,其中,
所述解析單元,用于接收并解析WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包,獲 得內(nèi)嵌對(duì)象信息;
所述請(qǐng)求構(gòu)造單元,用于根據(jù)所述解析單元獲得的內(nèi)嵌對(duì)象信息,為每 一個(gè)內(nèi)嵌對(duì)象構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器;
所述內(nèi)嵌對(duì)象獲取單元,用于接收WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包; 所述數(shù)據(jù)轉(zhuǎn)發(fā)單元,用于將所述內(nèi)嵌對(duì)象獲取單元接收的內(nèi)嵌對(duì)象數(shù)據(jù) 包轉(zhuǎn)發(fā)給用戶(hù)設(shè)備UE。
本發(fā)明還提供了 一種網(wǎng)絡(luò)節(jié)點(diǎn),所述網(wǎng)絡(luò)節(jié)點(diǎn)包含上述的HTTP代理。 本發(fā)明還提供了一種數(shù)據(jù)傳輸?shù)南到y(tǒng),該系統(tǒng)包括WEB服務(wù)器,用戶(hù) 設(shè)備UE ,并且該系統(tǒng)還包含上述的HTTP代理。
由上述本發(fā)明實(shí)施例提供的技術(shù)方案可以看出,本發(fā)明實(shí)施例通過(guò)設(shè)置 HTTP代理,接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息;根 據(jù)獲取的內(nèi)嵌對(duì)象信息,構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器,接收WEB 服務(wù)器發(fā)送的內(nèi)嵌對(duì)象的數(shù)據(jù)包;向UE發(fā)送從WEB服務(wù)器接收到的內(nèi)嵌對(duì) 象數(shù)據(jù)包。通過(guò)本發(fā)明實(shí)施例提供的方法、HTTP代理和系統(tǒng),增強(qiáng)了網(wǎng)頁(yè) 數(shù)據(jù)傳輸性能,提升了用戶(hù)網(wǎng)頁(yè)瀏覽的感受。
圖1為本發(fā)明實(shí)施例一的方法流程圖2為本發(fā)明實(shí)施例三的方法流程圖3為本發(fā)明實(shí)施例五中HTTP代理結(jié)構(gòu)示意圖4為本發(fā)明實(shí)施例六中凄t據(jù)傳輸?shù)南到y(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施例方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行 清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而 不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做 出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明實(shí)施例提供一種數(shù)據(jù)傳輸?shù)姆椒?,HTTP代理和系統(tǒng),通過(guò)設(shè)置 HTTP代理,接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息;根 據(jù)獲取的內(nèi)嵌對(duì)象信息,構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器,接收并緩存 WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象的數(shù)據(jù)包;向UE發(fā)送從WEB服務(wù)器接收到的 內(nèi)嵌對(duì)象數(shù)據(jù)包。通過(guò)本發(fā)明實(shí)施例提供的方法,HTTP代理和系統(tǒng),增強(qiáng) 了網(wǎng)頁(yè)數(shù)據(jù)傳輸性能,提升了用戶(hù)瀏覽網(wǎng)頁(yè)的感受。
以下以具體實(shí)施例的方式,對(duì)本發(fā)明實(shí)施例提供的技術(shù)方案進(jìn)行詳細(xì)描述。
實(shí)施例一
本發(fā)明實(shí)施例一提供一種數(shù)據(jù)傳輸?shù)姆椒ǎ鐖D1所示,該方法包括如 下步驟
步驟101:接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包;
在接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包之前,可以由UE向WEB服務(wù) 器發(fā)送HTTP網(wǎng)頁(yè)主框架的GET請(qǐng)求。由于增加了HTTP代理,該主框架的 GET請(qǐng)求可以通過(guò)HTTP代理透?jìng)鹘oWEB服務(wù)器。WEB服務(wù)器收到該GET 請(qǐng)求后,將按照TCP原理機(jī)制向UE發(fā)送主框架數(shù)據(jù)包,這樣,HTTP代理就可以接收WEB服務(wù)器發(fā)送給UE的主框架數(shù)據(jù)包。
步驟102:解析所述主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息;
HTTP代理解析主框架數(shù)據(jù)包,以此獲取內(nèi)嵌對(duì)象的信息。所述解析主
框架數(shù)據(jù)包獲取的內(nèi)嵌對(duì)象信息,包括內(nèi)嵌對(duì)象的名稱(chēng)和格式等,如對(duì)于內(nèi)
嵌對(duì)象about.gif來(lái)說(shuō),獲取的是about這個(gè)名字,以及它的圖片格式gif等。 步驟103:根據(jù)所述內(nèi)嵌對(duì)象信息,構(gòu)造內(nèi)嵌對(duì)象GET請(qǐng)求并發(fā)送給
WEB服務(wù)器;
由于HTTP是一種交互機(jī)制的協(xié)議,WEB服務(wù)器都需要收到內(nèi)嵌對(duì)象的 GET請(qǐng)求后,才會(huì)下發(fā)其對(duì)應(yīng)的數(shù)據(jù),所以,通過(guò)由HTTP代理主動(dòng)為內(nèi)嵌 對(duì)象構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器,可以提前發(fā)送內(nèi)嵌對(duì)象的GET請(qǐng) 求給WEB服務(wù)器并獲取內(nèi)嵌對(duì)象數(shù)據(jù)包,然后再轉(zhuǎn)發(fā)給UE,可以解決WEB 服務(wù)器收到的UE發(fā)送的GET請(qǐng)求時(shí)間過(guò)長(zhǎng),造成較大的傳輸時(shí)間延遲的問(wèn) 題。
步驟104:接收所述WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包;
WEB服務(wù)器收到HTTP代理為內(nèi)嵌對(duì)象構(gòu)造的GET請(qǐng)求后,就會(huì)下發(fā) 內(nèi)嵌對(duì)象的數(shù)據(jù)包,此時(shí)由HTTP代理接收WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù) 據(jù)包,并可以對(duì)所述數(shù)據(jù)包進(jìn)行緩存;
步驟105:向UE發(fā)送所述接收的內(nèi)嵌對(duì)象數(shù)據(jù)包;
通過(guò)本發(fā)明實(shí)施例一的方法,由HTTP代理主動(dòng)為內(nèi)嵌對(duì)象構(gòu)造GET請(qǐng) 求并發(fā)送給WEB服務(wù)器,可以提前發(fā)送內(nèi)嵌對(duì)象的GET請(qǐng)求給WEB服務(wù) 器并獲取內(nèi)嵌對(duì)象數(shù)據(jù)包,然后再轉(zhuǎn)發(fā)給UE,可以解決WEB服務(wù)器收到的 UE發(fā)送的GET請(qǐng)求時(shí)間過(guò)長(zhǎng),造成較大的傳輸時(shí)間延遲的問(wèn)題。
實(shí)施例二
根據(jù)TCP的數(shù)據(jù)收發(fā)機(jī)制,需要接收到針對(duì)發(fā)送對(duì)象數(shù)據(jù)包的ACK消 息后,才會(huì)繼續(xù)下發(fā)數(shù)據(jù),因此,為了保證內(nèi)嵌對(duì)象數(shù)據(jù)的連續(xù)發(fā)送,HTTP
代理在接收到內(nèi)嵌對(duì)象數(shù)據(jù)包后,可以主動(dòng)構(gòu)造ACK消息,發(fā)送給WEB服 務(wù)器,WEB服務(wù)器在接收到ACK消息后,繼續(xù)給HTTP代理發(fā)送內(nèi)嵌對(duì)象 數(shù)據(jù)包。
因此,在前面步驟104中,HTTP代理在接收到WEB服務(wù)器發(fā)送的內(nèi)嵌 對(duì)象數(shù)據(jù)包后,主動(dòng)構(gòu)造ACK消息并發(fā)送給WEB服務(wù)器,WEB服務(wù)器接 收到前面內(nèi)嵌對(duì)象數(shù)據(jù)包的ACK消息后,繼續(xù)發(fā)送后續(xù)的內(nèi)嵌對(duì)象數(shù)據(jù)包。
通過(guò)本發(fā)明實(shí)施例二的方法,主動(dòng)構(gòu)造ACK消息發(fā)送給WEB服務(wù)器, 從而保證了內(nèi)嵌對(duì)象數(shù)據(jù)包的連續(xù)接收。從而進(jìn)一步解決了 WEB服務(wù)器收 到的UE發(fā)送的GET請(qǐng)求時(shí)間過(guò)長(zhǎng),造成較大的傳輸時(shí)間延遲的問(wèn)題。
實(shí)施例三
為了使本發(fā)明實(shí)施例的方案更加清楚,本發(fā)明實(shí)施例三以具體實(shí)施例的 方式,對(duì)實(shí)施例一中HTTP代理向UE發(fā)送接收到內(nèi)嵌數(shù)據(jù)包進(jìn)行詳細(xì)描述。
由前述實(shí)施例一中的步驟102的描述可知,HTTP代理通過(guò)解析收到的 主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息,在本實(shí)施例三中,HTTP代理獲取內(nèi)嵌 對(duì)象信息后,還可以將該內(nèi)嵌對(duì)象信息發(fā)送給UE,以便UE根據(jù)收到的內(nèi)嵌 對(duì)象信息,構(gòu)造GET請(qǐng)求并發(fā)送給HTTP代理。HTTP代理在收到并緩存 WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包后,還可以根據(jù)UE發(fā)送的GET請(qǐng)求, 將相應(yīng)的內(nèi)嵌數(shù)據(jù)包發(fā)送給UE。參考附圖2,具體步驟如下
步驟201:接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包;
本步驟和步驟101大體相同,在此不再贅述。
步驟202:解析所述主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息,并將所述內(nèi)嵌 對(duì)象信息下發(fā)給UE;
本步驟和步驟102的區(qū)別在于,在收到內(nèi)嵌對(duì)象信息后,還需要將該內(nèi) 嵌對(duì)象信息下發(fā)給UE,以便UE根據(jù)內(nèi)嵌對(duì)象信息,構(gòu)造GET請(qǐng)求并發(fā)送 給HTTP代理,獲取內(nèi)嵌對(duì)象數(shù)據(jù)包。 步驟203:根據(jù)所述內(nèi)嵌對(duì)象信息,構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)
器;
本步驟與步驟103大體相同,在此不再贅述。
可以理解的是,步驟202中HTTP代理將內(nèi)嵌對(duì)象信息下發(fā)給UE和本 步驟中HTTP代理構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器,二者之間并沒(méi)有嚴(yán) 格的時(shí)序關(guān)系,可以在將內(nèi)嵌對(duì)象信息下發(fā)給UE之前、之后或者同時(shí),構(gòu) 造GET請(qǐng)求并發(fā)送給WEB服務(wù)器。
步驟204:接收所述WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包,主動(dòng)構(gòu)造ACK 消息并發(fā)送給WEB服務(wù)器;
本步驟和實(shí)施例二中的相應(yīng)描述大體相同,在此不再贅述。
步驟205:根據(jù)UE發(fā)送的GET請(qǐng)求,向UE發(fā)送接收的內(nèi)嵌對(duì)象數(shù)據(jù)
包;
由前述步驟202可知,UE仍會(huì)收到內(nèi)嵌對(duì)象信息,因此,仍會(huì)向HTTP 代理發(fā)送內(nèi)嵌對(duì)象的GET請(qǐng)求,當(dāng)HTTP代理收到UE發(fā)送的內(nèi)嵌對(duì)象的 GET請(qǐng)求后,對(duì)其進(jìn)行攔截,不再向WEB服務(wù)器發(fā)送。
對(duì)于HTTP協(xié)議的不同版本,數(shù)據(jù)包的下載方式略有不同,HTTP1.0中, 是在主框架下載完后,再串行的為每個(gè)內(nèi)嵌對(duì)象構(gòu)造TCP連接下載內(nèi)嵌對(duì)象, 同一個(gè)時(shí)刻只有一個(gè)TCP連接。而對(duì)于HTTPl.l來(lái)說(shuō),在主框架的TCP連 接過(guò)程中,可以同時(shí)利用該主框架的TCP連接串行的為內(nèi)嵌對(duì)象構(gòu)造GET 請(qǐng)求并發(fā)送給WEB服務(wù)器,另外還會(huì)建立一個(gè)新的TCP連接(即通常 HTTPl.l會(huì)建立兩個(gè)并行的TCP連接)下載內(nèi)嵌對(duì)象數(shù)據(jù)包,主框架的TCP 連接和新建立的TCP連接都會(huì)下載內(nèi)嵌對(duì)象數(shù)據(jù)包,因此HTTP代理根據(jù) UE發(fā)送的GET請(qǐng)求向UE發(fā)送接收到的內(nèi)嵌數(shù)據(jù)包的方式也有一些不同, 具體如下
對(duì)于HTTP 1.0版本,HTTP代理會(huì)對(duì)收到主框架數(shù)據(jù)包進(jìn)行解析,獲取 內(nèi)嵌對(duì)象信息,等主框架數(shù)據(jù)包下載完后,通過(guò)串行的為每個(gè)內(nèi)嵌對(duì)象構(gòu)造
GET請(qǐng)求并發(fā)送給WEB服務(wù)器,串行的對(duì)每個(gè)內(nèi)嵌對(duì)象都建立一個(gè)新的TCP 連接進(jìn)行下載。由于同一時(shí)刻只有一個(gè)TCP連接下載內(nèi)嵌對(duì)象數(shù)據(jù)包,所以 內(nèi)嵌對(duì)象數(shù)據(jù)包的TCP端口號(hào)和UE發(fā)送的GET請(qǐng)求的TCP端口號(hào)是一致 的。
對(duì)于HTTP 1.1版本,HTTP代理會(huì)對(duì)收到主框架數(shù)據(jù)包進(jìn)行解析,獲取 內(nèi)嵌對(duì)象信息,同時(shí)在主框架的TCP連接過(guò)程中,可以同時(shí)利用該主框架的 TCP連接串行的為每個(gè)內(nèi)嵌對(duì)象構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器,另外 還會(huì)建立一個(gè)新的TCP連接(即通常HTTP1.1會(huì)建立兩個(gè)并行的TCP連接) 下載內(nèi)嵌對(duì)象數(shù)據(jù)包,主框架的TCP連接和新建立的TCP連接都會(huì)下載內(nèi)嵌 對(duì)象數(shù)據(jù)包。
對(duì)于HTTPl.l的情況,由于同時(shí)存在兩個(gè)并行的TCP連接同時(shí)下載內(nèi)嵌 對(duì)象信息,因此HTTP代理獲取的內(nèi)嵌對(duì)象數(shù)據(jù)包和UE發(fā)送的GET請(qǐng)求可 能存在TCP端口號(hào)不一致的情況,如果端口號(hào)不一致,會(huì)導(dǎo)致UE不能接收 到相應(yīng)的內(nèi)嵌對(duì)象數(shù)據(jù)包,對(duì)于這種情況,HTTP代理會(huì)進(jìn)行相應(yīng)的處理, 具體的HTTP代理通過(guò)對(duì)UE發(fā)送的GET請(qǐng)求的TCP包頭的解析,獲得該 GET請(qǐng)求的TCP端口號(hào),在內(nèi)嵌對(duì)象數(shù)據(jù)包的TCP端口號(hào)和UE發(fā)送的GET 請(qǐng)求的TCP端口號(hào)不 一致的時(shí)候,HTTP代理將內(nèi)嵌對(duì)象數(shù)據(jù)包的TCP端口 號(hào)更改為UE發(fā)送過(guò)來(lái)的GET請(qǐng)求包的TCP端口號(hào),然后再將對(duì)應(yīng)的內(nèi)嵌對(duì) 象包下發(fā)給UE;如果前述內(nèi)嵌對(duì)象數(shù)據(jù)包的TCP端口號(hào)和UE發(fā)送的GET 請(qǐng)求的TCP端口號(hào)一致,則直接將對(duì)應(yīng)的內(nèi)嵌對(duì)象H據(jù)包下發(fā)給UE。
通過(guò)本發(fā)明實(shí)施例三的方法,將解析得到的內(nèi)嵌對(duì)象信息下發(fā)給UE,由 HTTP代理主動(dòng)為每個(gè)內(nèi)嵌對(duì)象構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器,并且 針對(duì)接收到的內(nèi)嵌數(shù)據(jù)對(duì)象數(shù)據(jù)包,主動(dòng)構(gòu)造ACK消息發(fā)送給WEB服務(wù)器, 然后根據(jù)UE發(fā)送的GET請(qǐng)求,向UE發(fā)送接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包,保證 了內(nèi)嵌對(duì)象數(shù)據(jù)包接收的連續(xù)性,解決WEB服務(wù)器收到的UE發(fā)送的GET 請(qǐng)求時(shí)間過(guò)長(zhǎng),造成較大的傳輸時(shí)間延遲的問(wèn)題。
實(shí)施例四
本發(fā)明實(shí)施例四的方法,前面步驟與實(shí)施例三中步驟201、 202、 203、 204中的描述大體相同,區(qū)別在于,本實(shí)施例向UE發(fā)送收到的內(nèi)嵌對(duì)象數(shù)據(jù) 包時(shí),可以根據(jù)UE的接收能力進(jìn)行下發(fā)。
具體的UE在收到內(nèi)嵌對(duì)象數(shù)據(jù)包后,按照TCP機(jī)制,會(huì)返回ACK消 息,此時(shí)HTTP代理將該ACK消息攔截,不再發(fā)往WEB服務(wù)器;另夕卜,HTTP 代理可以根據(jù)UE返回的TCP ACK包頭攜帶的UE側(cè)接收窗口大小,獲得 UE的接收能力信息。
正常情況下,接收端UE—般在如下兩種情況下發(fā)送ACK消息1、 UE 收到兩個(gè)數(shù)據(jù)包;2、 UE收到一個(gè)數(shù)據(jù)包,再過(guò)一定時(shí)間(通常是200ms) 還沒(méi)有收到其它數(shù)據(jù)包。上述方式?jīng)]有考慮到UE接收能力的大小。而在本 發(fā)明實(shí)施例四中,HTTP代理可以根據(jù)UE的接收能力,在UE接收窗口很大 的時(shí)候, 一次性的發(fā)送多個(gè)數(shù)據(jù)包(可以大于2個(gè))給UE,從而不需要UE 在每次收到小于或者等于2個(gè)數(shù)據(jù)包后就返回ACK消息后才能繼續(xù)接收數(shù) 據(jù),通過(guò)這種方法,可以節(jié)省幾個(gè)往返時(shí)延。
舉例說(shuō)明如下假設(shè)內(nèi)嵌對(duì)象有5個(gè)數(shù)據(jù)包,按照TCP原理機(jī)制,WEB 服務(wù)器剛開(kāi)始發(fā)2個(gè)數(shù)據(jù)包,UE收到這2個(gè)數(shù)據(jù)包后發(fā)這2個(gè)數(shù)據(jù)包的TCP ACK, WEB服務(wù)器收到TCP ACK后,按照TCP原理機(jī)制進(jìn)行計(jì)算,能發(fā)3 個(gè)數(shù)據(jù)包下去,這樣就需要兩個(gè)往返時(shí)延。而根據(jù)本發(fā)明實(shí)施例,由于HTTP 代理可以主動(dòng)構(gòu)造TCP ACK,內(nèi)嵌對(duì)象的5個(gè)數(shù)據(jù)包都會(huì)提前發(fā)送到HTTP 代理處,收到UE過(guò)來(lái)的GET請(qǐng)求后,判斷UE接收能力允許的情況下,可 以將這5個(gè)數(shù)據(jù)包一次性發(fā)給UE,這樣就只需要一個(gè)往返時(shí)延。
本發(fā)明實(shí)施例四通過(guò)根據(jù)UE能力向UE下發(fā)數(shù)據(jù),可以在UE能力許可 時(shí), 一次性的發(fā)送多個(gè)數(shù)據(jù)包給UE,從而提高了數(shù)據(jù)傳輸效率,降低了傳輸 時(shí)延。
實(shí)施例五
本發(fā)明實(shí)施例五提供一種HTTP代理,如圖3所示,所述HTTP代理包
括
解析單元301 ,用于接收并解析WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包,獲得 內(nèi)嵌對(duì)象信息;
請(qǐng)求構(gòu)造單元302,用于根據(jù)解析單元301獲得的內(nèi)嵌對(duì)象信息,為內(nèi) 嵌對(duì)象構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器;
內(nèi)嵌對(duì)象獲取單元303,用于接收WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包; 對(duì)于接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包,可以進(jìn)行緩存;
數(shù)據(jù)轉(zhuǎn)發(fā)單元304,用于將所述內(nèi)嵌對(duì)象獲取單元303接收到的內(nèi)嵌對(duì) 象數(shù)據(jù)包轉(zhuǎn)發(fā)給用戶(hù)設(shè)備UE;
另外,所述HTTP代理還可以包括
確認(rèn)消息構(gòu)造單元305,用于在所述內(nèi)嵌對(duì)象獲取單元303接收到內(nèi)嵌 對(duì)象數(shù)據(jù)包后,構(gòu)造ACK消息并發(fā)送給WEB服務(wù)器;
內(nèi)嵌對(duì)象信息下發(fā)單元306,用于將所述解析單元獲得的內(nèi)嵌對(duì)象信息 下發(fā)給UE;當(dāng)HTTP代理包含內(nèi)嵌對(duì)象信息下發(fā)單元306時(shí),由于UE收到 內(nèi)嵌對(duì)象信息后,會(huì)給HTTP代理發(fā)送GET請(qǐng)求,此時(shí)所述數(shù)據(jù)轉(zhuǎn)發(fā)單元304 將UE發(fā)送給HTTP服務(wù)器的GET請(qǐng)求攔截,不再發(fā)往WEB服務(wù)器,并根 據(jù)UE發(fā)送過(guò)來(lái)的GET請(qǐng)求,將對(duì)應(yīng)的內(nèi)嵌數(shù)據(jù)對(duì)象數(shù)據(jù)包按照UE的能力 下發(fā)給UE。并且,數(shù)據(jù)轉(zhuǎn)發(fā)單元304 —般是在UE的GET請(qǐng)求到達(dá)HTTP 代理后,才將緩存的對(duì)應(yīng)的內(nèi)嵌對(duì)象數(shù)據(jù)包發(fā)送給UE。
確認(rèn)消息攔截單元307,用于將UE發(fā)送給WEB服務(wù)器的ACK消息攔 截,不再發(fā)送到WEB服務(wù)器;
UE能力獲取單元308,用于根據(jù)UE返回的ACK消息中的UE接收能力 參數(shù)信息,將UE接收能力報(bào)告給數(shù)據(jù)轉(zhuǎn)發(fā)單元304,從而數(shù)據(jù)轉(zhuǎn)發(fā)單元304
可以根據(jù)UE的接收能力下發(fā)數(shù)據(jù)。
所述HTTP代理在邏輯上位于傳輸控制協(xié)議(TCP, Transmit Control Protocol)代理之上,由于HTTP協(xié)議占用的TCP端口號(hào)為80或者8080,通 過(guò)TCP代理解析數(shù)據(jù)包的功能即可得知傳輸?shù)臄?shù)據(jù)包是否為HTTP協(xié)議的數(shù) 據(jù)包;由于TCP代理可以適用于網(wǎng)絡(luò)中的不同位置,如部署在互聯(lián)網(wǎng)中,無(wú) 線(xiàn)核心網(wǎng)中,或者在無(wú)線(xiàn)接入網(wǎng)側(cè),因此,相應(yīng)的,所述HTTP代理也可以 相應(yīng)的部署于互聯(lián)網(wǎng),無(wú)線(xiàn)核心網(wǎng)或者無(wú)線(xiàn)接入網(wǎng)位置。如所述HTTP代理 可以部署于網(wǎng)絡(luò)節(jié)點(diǎn),如無(wú)線(xiàn)網(wǎng)絡(luò)控制器RNC中。
通過(guò)本發(fā)明實(shí)施例五中提供的HTTP代理,解決了 UE直接給WEB服務(wù) 器發(fā)送的GET請(qǐng)求時(shí)間過(guò)長(zhǎng)時(shí),傳輸效率低下的問(wèn)題,從而提升了網(wǎng)頁(yè)數(shù)據(jù) 傳輸性能,提升了用戶(hù)瀏覽網(wǎng)頁(yè)的感受。
實(shí)施例六
本發(fā)明實(shí)施例六提供一種數(shù)據(jù)傳輸?shù)南到y(tǒng),如圖4所示,所述系統(tǒng)包括 WEB服務(wù)器401, HTTP代理402,用戶(hù)設(shè)備UE403,所述HTTP代理402 一般位于TCP代理400之上。所述UE403向WEB服務(wù)器401發(fā)送網(wǎng)頁(yè)主框 架GET請(qǐng)求,WEB服務(wù)器401收到UE403的GET請(qǐng)求后,通過(guò)HTTP代理 402,按照TCP原理機(jī)制向UE發(fā)送數(shù)據(jù)包,所述HTTP代理402接收并轉(zhuǎn)發(fā) WEB服務(wù)器401發(fā)送給UE403的網(wǎng)頁(yè)數(shù)據(jù)。所述HTTP代理402的具體功 能實(shí)現(xiàn)已經(jīng)在前述實(shí)施例中進(jìn)行了詳細(xì)的描述,在此不再贅述。
本發(fā)明實(shí)施例六提供的系統(tǒng)通過(guò)在WEB服務(wù)器和UE之間設(shè)置HTTP代 理,接收并轉(zhuǎn)發(fā)WEB服務(wù)器發(fā)送給UE的網(wǎng)頁(yè)數(shù)據(jù),解決了 UE直接給WEB 服務(wù)器發(fā)送的GET請(qǐng)求時(shí)間過(guò)長(zhǎng)時(shí),傳輸效率低下的問(wèn)題,從而提升了網(wǎng)頁(yè) 數(shù)據(jù)傳輸性能,提升了用戶(hù)瀏覽網(wǎng)頁(yè)的感受。
是可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)
可讀存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),包括如下步驟 接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包; 解析所述主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息;
根據(jù)所述內(nèi)嵌對(duì)象信息,構(gòu)造內(nèi)嵌對(duì)象GET請(qǐng)求,并將所述GET請(qǐng)求 發(fā)送給所述WEB服務(wù)器;
接收所述WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包; 向UE發(fā)送所述接收的內(nèi)嵌對(duì)象數(shù)據(jù)包。 上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤(pán)或光盤(pán)等。 最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非對(duì)其進(jìn) 行限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技 術(shù)人員應(yīng)當(dāng)理解其依然可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換, 而這些修改或者等同替換亦不能使修改后的技術(shù)方案脫離本發(fā)明技術(shù)方案的 津青神和范圍。
權(quán)利要求
1.一種數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,包括接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包;解析主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息;根據(jù)所述內(nèi)嵌對(duì)象信息,構(gòu)造內(nèi)嵌對(duì)象GET請(qǐng)求,并將所述GET請(qǐng)求發(fā)送給所述WEB服務(wù)器;接收所述WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包;向UE發(fā)送所述接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包。
2、 如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,所述接收WEB服 務(wù)器發(fā)送的網(wǎng)頁(yè)數(shù)據(jù)之前包括向WEB服務(wù)器發(fā)送網(wǎng)頁(yè)主框架GET請(qǐng)求。
3、 如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,所述接收WEB服 務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包后還包括,向WEB服務(wù)器返回ACK消息。
4、 如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,所述方法還包括 將所述獲取的內(nèi)嵌對(duì)象信息下發(fā)給UE。
5、 如權(quán)利要求4所述的數(shù)據(jù)傳輸方法,其特征在于,所述向UE發(fā)送接 收到的內(nèi)嵌對(duì)象數(shù)據(jù)包具體包括根據(jù)UE發(fā)送的內(nèi)嵌對(duì)象GET請(qǐng)求,向 UE發(fā)送所述接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包。
6、 如權(quán)利要求5所述的數(shù)據(jù)傳輸方法,其特征在于,所述向UE發(fā)送接 收到的內(nèi)嵌對(duì)象數(shù)據(jù)包具體包括通過(guò)解析UE發(fā)送的GET請(qǐng)求中的TCP包頭獲得的其TCP端口號(hào),判 斷若內(nèi)嵌對(duì)象數(shù)據(jù)包的TCP端口號(hào)與所述UE發(fā)送的GET請(qǐng)求的TCP端口 號(hào)不一致時(shí),將所述內(nèi)嵌對(duì)象數(shù)據(jù)包的TCP端口號(hào)更改為UE發(fā)送的GET請(qǐng) 求的TCP端口號(hào),然后再將對(duì)應(yīng)的內(nèi)嵌對(duì)象數(shù)據(jù)包下發(fā)給UE。
7、 如權(quán)利要求1至6中任一項(xiàng)所述的數(shù)據(jù)傳輸方法,其特征在于,所述 向UE發(fā)送接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包具體包括根據(jù)UE的能力向其發(fā)送內(nèi)嵌 對(duì)象數(shù)據(jù)包。
8、 如權(quán)利要求4所述的數(shù)據(jù)傳輸方法,其特征在于,所述方法還包括 攔截UE發(fā)送的GET請(qǐng)求和ACK消息。
9、 一種HTTP代理,所述HTTP代理位于WEB服務(wù)器和用戶(hù)設(shè)備UE 之間,其特征在于,所述HTTP代理包含解析單元、請(qǐng)求構(gòu)造單元、內(nèi)嵌對(duì) 象獲取單元和數(shù)據(jù)轉(zhuǎn)發(fā)單元,其中,所述解析單元,用于接收并解析WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包,獲 得內(nèi)嵌對(duì)象信息;所述請(qǐng)求構(gòu)造單元,用于根據(jù)所述解析單元獲得的內(nèi)嵌對(duì)象信息,為內(nèi)嵌對(duì)象構(gòu)造GET請(qǐng)求并發(fā)送給WEB服務(wù)器;所述內(nèi)嵌對(duì)象獲取單元,用于接收WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包; 所述數(shù)據(jù)轉(zhuǎn)發(fā)單元,用于將所述內(nèi)嵌對(duì)象獲取單元接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包轉(zhuǎn)發(fā)給用戶(hù)設(shè)備UE。
10、 如權(quán)利要求9中所述的HTTP代理,其特征在于,所述HTTP代理 還包括確認(rèn)消息構(gòu)造單元,所述確認(rèn)消息構(gòu)造單元,用于在所述內(nèi)嵌對(duì)象獲 取單元接收到內(nèi)嵌對(duì)象數(shù)據(jù)包后,構(gòu)造ACK消息并發(fā)送給WEB服務(wù)器。
11 、如權(quán)利要求10中所述的HTTP代理,其特征在于,所述HTTP代理 還包括內(nèi)嵌對(duì)象信息下發(fā)單元,用于將所述解析單元獲得的內(nèi)嵌對(duì)象信息下 發(fā)給UE,所述內(nèi)嵌對(duì)象信息用于UE構(gòu)造內(nèi)嵌對(duì)象GET請(qǐng)求所使用;所述數(shù)據(jù)轉(zhuǎn)發(fā)單元,攔截所述UE構(gòu)造的內(nèi)嵌對(duì)象GET請(qǐng)求,并根據(jù)所 述UE構(gòu)造的內(nèi)嵌對(duì)象GET請(qǐng)求,向UE發(fā)送接收的內(nèi)嵌對(duì)象數(shù)據(jù)包。
12、如權(quán)利要求11中所述的HTTP代理,其特征在于,所述HTTP代理 還包括UE能力獲取單元,用于根據(jù)UE返回的ACK消息中的UE接收能 力參數(shù)信息,將UE接收能力報(bào)告給數(shù)據(jù)轉(zhuǎn)發(fā)單元;所述數(shù)據(jù)轉(zhuǎn)發(fā)單元,根據(jù)UE的接收能力將所述內(nèi)嵌對(duì)象獲取單元接收 的內(nèi)嵌對(duì)象數(shù)據(jù)包轉(zhuǎn)發(fā)給UE。
13、 如權(quán)利要求11中所述的HTTP代理,其特征在于,所述HTTP代理 還包括確認(rèn)消息攔截單元,用于將UE發(fā)送給WEB服務(wù)器的ACK消息攔截。
14、 一種網(wǎng)絡(luò)節(jié)點(diǎn),其特征在于,所述網(wǎng)絡(luò)節(jié)點(diǎn)包含如權(quán)利要求9至13 任一項(xiàng)所述的HTTP代理。
15、 一種數(shù)據(jù)傳輸?shù)南到y(tǒng),包括WEB服務(wù)器,用戶(hù)設(shè)備UE,其特征在 于,還包括如權(quán)利要求9至13任一項(xiàng)所述的HTTP代理。
全文摘要
本發(fā)明公開(kāi)了一種數(shù)據(jù)傳輸?shù)姆椒ǎ琀TTP代理和系統(tǒng)。本發(fā)明方法包括接收WEB服務(wù)器發(fā)送的主框架數(shù)據(jù)包;解析所述主框架數(shù)據(jù)包,獲取內(nèi)嵌對(duì)象信息;根據(jù)所述內(nèi)嵌對(duì)象信息,構(gòu)造GET請(qǐng)求并發(fā)送給所述WEB服務(wù)器;接收所述WEB服務(wù)器發(fā)送的內(nèi)嵌對(duì)象數(shù)據(jù)包,向UE發(fā)送所述接收到的內(nèi)嵌對(duì)象數(shù)據(jù)包,通過(guò)本發(fā)明的方法,可以提升網(wǎng)頁(yè)數(shù)據(jù)傳輸性能,增強(qiáng)用戶(hù)網(wǎng)頁(yè)瀏覽的感受。
文檔編號(hào)H04L29/06GK101370014SQ20081014174
公開(kāi)日2009年2月18日 申請(qǐng)日期2008年9月1日 優(yōu)先權(quán)日2008年9月1日
發(fā)明者明 劉, 廖軍華, 張巖強(qiáng), 童長(zhǎng)華 申請(qǐng)人:華為技術(shù)有限公司