專利名稱:發(fā)送數(shù)據(jù)的方法和網(wǎng)關(guān)設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實(shí)施例涉及通信技術(shù)領(lǐng)域,并且更具體地,涉及發(fā)送數(shù)據(jù)的方法和網(wǎng)關(guān)設(shè)備。
背景技術(shù):
傳感網(wǎng)網(wǎng)關(guān)在未來的物聯(lián)網(wǎng)時(shí)代將扮演非常重要的角色,它將成為連接傳感網(wǎng)與傳統(tǒng)通信網(wǎng)絡(luò)的紐帶。作為一種網(wǎng)關(guān)設(shè)備,傳感網(wǎng)網(wǎng)關(guān)可以實(shí)現(xiàn)傳感網(wǎng)與通信網(wǎng)絡(luò)、以及不同類型的傳感網(wǎng)之間的協(xié)議轉(zhuǎn)換,例如實(shí)現(xiàn)廣域互聯(lián)或局域互聯(lián)。物聯(lián)網(wǎng)中的傳感器把采集到的數(shù)據(jù)以數(shù)據(jù)包的形式發(fā)送給網(wǎng)關(guān),再通過網(wǎng)關(guān)轉(zhuǎn)發(fā)到基于其他協(xié)議的外部網(wǎng)絡(luò)(例如以太網(wǎng))中,此時(shí)網(wǎng)關(guān)負(fù)責(zé)不同網(wǎng)絡(luò)之間的協(xié)議轉(zhuǎn)換,然后轉(zhuǎn)發(fā)數(shù)據(jù)包。
網(wǎng)關(guān)在將傳感網(wǎng)采集的數(shù)據(jù)包轉(zhuǎn)發(fā)到外部網(wǎng)絡(luò)時(shí),沒有考慮到不同數(shù)據(jù)包的時(shí)間延遲特性,而是一律直接轉(zhuǎn)發(fā),當(dāng)網(wǎng)絡(luò)帶寬較窄時(shí),可能造成一些即時(shí)數(shù)據(jù)不能及時(shí)發(fā)送,而非緊急數(shù)據(jù)包會(huì)占用即時(shí)數(shù)據(jù)的資源,使得傳感網(wǎng)的緊急數(shù)據(jù)得不到及時(shí)上報(bào)。因此,網(wǎng)關(guān)處需要盡可能的對(duì)數(shù)據(jù)進(jìn)行管理和高效轉(zhuǎn)發(fā)以實(shí)現(xiàn)傳感器數(shù)據(jù)的及時(shí)有效調(diào)度和上報(bào)。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種發(fā)送數(shù)據(jù)的方法和網(wǎng)關(guān)設(shè)備,能夠基于傳感器網(wǎng)絡(luò)的數(shù)據(jù)包的特性需求合理轉(zhuǎn)發(fā)傳感器網(wǎng)絡(luò)的數(shù)據(jù)包。一方面,提供了一種發(fā)送數(shù)據(jù)的方法,包括接收來自傳感器網(wǎng)絡(luò)的數(shù)據(jù)包,并確定該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求;根據(jù)該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定該數(shù)據(jù)包所屬的時(shí)間窗口,在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包;在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)。另一方面,提供了一種網(wǎng)關(guān)設(shè)備,包括第一確定單元,用于接收來自傳感器網(wǎng)絡(luò)的數(shù)據(jù)包,并確定該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求;第二確定單元,用于根據(jù)該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定該數(shù)據(jù)包所屬的時(shí)間窗口,在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包;發(fā)送單元,用于在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)。本發(fā)明實(shí)施例使用基于時(shí)間窗口的轉(zhuǎn)發(fā)機(jī)制,根據(jù)數(shù)據(jù)包的屬性或延時(shí)要求確定數(shù)據(jù)包所屬的時(shí)間窗口,對(duì)時(shí)間窗口內(nèi)的數(shù)據(jù)包定時(shí)打包轉(zhuǎn)發(fā),從而合理的對(duì)不同數(shù)據(jù)包的發(fā)送時(shí)間進(jìn)行調(diào)度,并降低即時(shí)性高的數(shù)據(jù)包的發(fā)送時(shí)延,實(shí)現(xiàn)傳感器數(shù)據(jù)的及時(shí)合理—t手艮。
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)包轉(zhuǎn)發(fā)方法的流程圖。圖2是根據(jù)本發(fā)明實(shí)施例的時(shí)間窗口的一個(gè)例子的示意圖。圖3是根據(jù)本發(fā)明另一實(shí)施例的數(shù)據(jù)包轉(zhuǎn)發(fā)方法的示意流程圖。圖4是根據(jù)本發(fā)明實(shí)施例的網(wǎng)關(guān)設(shè)備的示意框圖。圖5是根據(jù)本發(fā)明另一實(shí)施例的網(wǎng)關(guān)設(shè)備的示意框圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例能夠?qū)?shù)據(jù)包轉(zhuǎn)發(fā)進(jìn)行合理調(diào)度,使得傳感器網(wǎng)絡(luò)中傳來的數(shù)據(jù)包通過合理的時(shí)間窗安排被打包并發(fā)送至另一網(wǎng)絡(luò)之中。圖I是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)包轉(zhuǎn)發(fā)方法的流程圖。圖I的方法由網(wǎng)關(guān)設(shè)備執(zhí)行。101,接收來自傳感器網(wǎng)絡(luò)的數(shù)據(jù)包,并確定該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求。 102,根據(jù)該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定該數(shù)據(jù)包所屬的時(shí)間窗口,在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包。103,在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)。本發(fā)明實(shí)施例使用基于時(shí)間窗口的轉(zhuǎn)發(fā)機(jī)制,根據(jù)數(shù)據(jù)包的屬性或延時(shí)要求確定數(shù)據(jù)包所屬的時(shí)間窗口,對(duì)時(shí)間窗口內(nèi)的數(shù)據(jù)包定時(shí)打包轉(zhuǎn)發(fā),從而合理的對(duì)不同數(shù)據(jù)包的發(fā)送時(shí)間進(jìn)行調(diào)度,并降低即時(shí)性高的數(shù)據(jù)包的發(fā)送時(shí)延。本發(fā)明實(shí)施例中,利用時(shí)間窗口解決數(shù)據(jù)包排隊(duì)問題。圖2是根據(jù)本發(fā)明實(shí)施例的時(shí)間窗口的一個(gè)例子的示意圖。在圖2的例子中,假設(shè)網(wǎng)關(guān)使用6個(gè)時(shí)間窗口,即圖2的左邊所示的時(shí)間窗口 O至?xí)r間窗口 5。每個(gè)時(shí)間窗口的單位時(shí)間是T,例如T= 10ms。假設(shè)時(shí)間窗口 O是當(dāng)前時(shí)間窗口。網(wǎng)關(guān)會(huì)為每一個(gè)時(shí)間窗口申請(qǐng)一定的存儲(chǔ)區(qū)域,用來存放接收到的數(shù)據(jù)包。每個(gè)時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的大小可以是能夠滿足外部網(wǎng)絡(luò)協(xié)議規(guī)定的最大包長(zhǎng)Lmax。圖2右邊所示的是一個(gè)時(shí)間窗口的例子,其中陰影部分是相應(yīng)存儲(chǔ)區(qū)域中已經(jīng)存儲(chǔ)的數(shù)據(jù)包,占據(jù)的空間大小為L(zhǎng)s??瞻撞糠质谴鎯?chǔ)區(qū)域中的剩余空間,大小為L(zhǎng)r。陰影部分和空白部分的大小總和是存儲(chǔ)區(qū)域的大小Lmax = Ls+Lr。網(wǎng)關(guān)接收到來自傳感網(wǎng)的數(shù)據(jù)包,讀取數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,把數(shù)據(jù)包依次保存到相應(yīng)的存儲(chǔ)區(qū)域中(圖2中的陰影部分),也就是說存儲(chǔ)區(qū)域中數(shù)據(jù)包排隊(duì)的順序就是網(wǎng)關(guān)接收到數(shù)據(jù)包的順序。網(wǎng)關(guān)可以按照時(shí)間窗口保存這些數(shù)據(jù)包,直至網(wǎng)關(guān)把這些數(shù)據(jù)包打包發(fā)送出去。時(shí)間窗口的滑動(dòng)和時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包的發(fā)送可通過定時(shí)器進(jìn)行控制。圖3是根據(jù)本發(fā)明另一實(shí)施例的數(shù)據(jù)包轉(zhuǎn)發(fā)方法的示意流程圖。圖3的方法由網(wǎng)關(guān)設(shè)備執(zhí)行,利用定時(shí)器循環(huán)控制時(shí)間窗口的滑動(dòng)。下面結(jié)合圖2描述圖3的方法。300,啟動(dòng)定時(shí)器,該定時(shí)器的長(zhǎng)度等于時(shí)間窗口的單位時(shí)間。例如,如果時(shí)間窗口的單位時(shí)間是T,則定時(shí)器的長(zhǎng)度也是T。在該定時(shí)器到期時(shí),將當(dāng)前時(shí)間窗口變?yōu)樵摦?dāng)前時(shí)間窗口的下一時(shí)間窗口,并重新啟動(dòng)定時(shí)器。另外,當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻是當(dāng)前時(shí)間窗口的定時(shí)器到期的時(shí)刻。換句話說,時(shí)間窗口是滑動(dòng)的,網(wǎng)關(guān)可以啟動(dòng)定時(shí)器,每經(jīng)過一個(gè)窗口時(shí)間T就發(fā)送該時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中的數(shù)據(jù)包(如果有的話)。例如,假設(shè)如圖2所示,時(shí)間窗口的滑動(dòng)順序是逆時(shí)針順序。網(wǎng)關(guān)啟動(dòng)定時(shí)器,定 時(shí)器長(zhǎng)度為T,即網(wǎng)關(guān)經(jīng)過時(shí)間T之后,發(fā)送時(shí)間窗口 0( S卩,當(dāng)前時(shí)間窗口)內(nèi)的數(shù)據(jù)包,此時(shí),時(shí)間窗口 0逆時(shí)針轉(zhuǎn)動(dòng)為最大編號(hào)的時(shí)間窗口,變?yōu)樾碌臅r(shí)間窗口 5。同時(shí),時(shí)間窗口 I逆時(shí)針轉(zhuǎn)動(dòng)為時(shí)間窗口 0( S卩,時(shí)間窗口號(hào)減去I),成為新的當(dāng)前時(shí)間窗口。其他時(shí)間窗口2-4依次轉(zhuǎn)動(dòng),變換自己的時(shí)間窗口號(hào)(例如,各自的時(shí)間窗口號(hào)減去I)。應(yīng)注意,本實(shí)施例的過程300可以在接收數(shù)據(jù)包之前執(zhí)行,可以在接收數(shù)據(jù)包的同時(shí)執(zhí)行(例如,由數(shù)據(jù)包的接收操作觸發(fā)啟動(dòng)定時(shí)器),也可能在接收數(shù)據(jù)包之后經(jīng)過一定時(shí)間后執(zhí)行,本發(fā)明對(duì)此不作限制。另外,雖然圖3中將過程300顯示為在過程301之前執(zhí)行,但本發(fā)明實(shí)施例不限于此。過程300也可以與過程301同時(shí)執(zhí)行或者在過程301之后執(zhí)行。這些變化均落入本發(fā)明實(shí)施例的范圍內(nèi)。301,類似于圖I的101,確定所接收的數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求。針對(duì)不同應(yīng)用場(chǎng)景而產(chǎn)生的數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性或延時(shí)要求可能是不一樣的。數(shù)據(jù)包的延時(shí)要求表示網(wǎng)關(guān)可以保存該數(shù)據(jù)包的時(shí)間,網(wǎng)關(guān)就可以在這個(gè)時(shí)間的范圍之內(nèi),對(duì)數(shù)據(jù)包進(jìn)行打包和轉(zhuǎn)發(fā)。例如,數(shù)據(jù)包的延時(shí)要求可以表現(xiàn)為具體的時(shí)間值,例如5ms、15ms等?;蛘?數(shù)據(jù)包的延時(shí)要求可以用優(yōu)先級(jí)表示,最高優(yōu)先級(jí)的延時(shí)要求表示該數(shù)據(jù)包是緊急數(shù)據(jù)包,需要立即轉(zhuǎn)發(fā)。優(yōu)先級(jí)越低,表示在網(wǎng)關(guān)處保存的時(shí)間可以越長(zhǎng)。數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性可以表示該數(shù)據(jù)包的業(yè)務(wù)性質(zhì),如表示該數(shù)據(jù)包是溫度、濕度等測(cè)量應(yīng)用產(chǎn)生的數(shù)據(jù)包。數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性是由傳感網(wǎng)來定義的,也可以反映出數(shù)據(jù)包轉(zhuǎn)發(fā)的緊急程度。例如,即時(shí)性要求較高的應(yīng)用(如安全報(bào)警等)所產(chǎn)生的數(shù)據(jù)包是緊急數(shù)據(jù)包,需要立即轉(zhuǎn)發(fā)。其他應(yīng)用產(chǎn)生的數(shù)據(jù)包可以適當(dāng)延遲發(fā)送。需要說明的是,根據(jù)當(dāng)前通信的實(shí)際情況,在傳感網(wǎng)與外部網(wǎng)絡(luò)通信時(shí),無法端到端地獲得并控制傳統(tǒng)的QoS(Quality of Service,業(yè)務(wù)質(zhì)量),但可以容易地提取數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性或延時(shí)要求。302,類似于圖I的102,根據(jù)在301中確定的數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定該數(shù)據(jù)包所屬的時(shí)間窗口,以在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包。如上所述,數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求反映了該數(shù)據(jù)包轉(zhuǎn)發(fā)的緊急程度??梢赃M(jìn)行量化處理,根據(jù)數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定該數(shù)據(jù)包的延時(shí)值D。例如,在延時(shí)要求是時(shí)間值的情況下,延時(shí)值D可以是該時(shí)間值?;蛘撸梢砸?guī)定不同應(yīng)用層數(shù)據(jù)屬性或延時(shí)要求優(yōu)先級(jí)所對(duì)應(yīng)的延時(shí)值D。得到延時(shí)值D之后,可根據(jù)數(shù)據(jù)包的延時(shí)值D和時(shí)間窗口的單位時(shí)間T之間的比值,確定數(shù)據(jù)包所屬的時(shí)間窗口。參照?qǐng)D2,時(shí)間窗口 O可對(duì)應(yīng)于O < D彡T,即O < D/T彡I ;時(shí)間窗口 I可對(duì)應(yīng)于!1 < D彡2T,即I < D/T ( 2 ;如此類推。在圖2的例子中,時(shí)間窗口3的數(shù)據(jù)包的包長(zhǎng)幾乎等于外部網(wǎng)絡(luò)的最大包長(zhǎng),但是時(shí)間窗口 2中沒有數(shù)據(jù)包,這表示網(wǎng)關(guān)收到的數(shù)據(jù)包中有很多數(shù)據(jù)包的延時(shí)值滿足3T < D < 4T,而沒有數(shù)據(jù)包的延時(shí)值滿足2T < D 彡 3T。此外,如果某些時(shí)間窗口(例如圖2所示的時(shí)間窗口 3)中的數(shù)據(jù)包較多,而后續(xù)仍接收到屬于時(shí)間窗口 3的數(shù)據(jù)包,可能導(dǎo)致該時(shí)間窗口 3所對(duì)應(yīng)的存儲(chǔ)區(qū)域沒有足夠的剩余空間來存儲(chǔ)后續(xù)的數(shù)據(jù)包,此時(shí)可將后續(xù)數(shù)據(jù)包放到后面的時(shí)間窗口(例如,時(shí)間窗口 4或時(shí)間窗口 5)中。這樣做的原因是在該時(shí)間窗口內(nèi)的數(shù)據(jù)包的延時(shí)要求都是一樣的,·而后續(xù)數(shù)據(jù)包相對(duì)于本時(shí)間窗口內(nèi)已存儲(chǔ)的數(shù)據(jù)包來說是后到的,所以只能放在后面的時(shí)間窗口內(nèi)。從而既滿足了外部網(wǎng)絡(luò)所規(guī)定的包長(zhǎng),也盡量保證了數(shù)據(jù)包的時(shí)效性。具體而言,可判斷數(shù)據(jù)包的長(zhǎng)度L是否大于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間Lr。在L < Lr時(shí),在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包。另一方面,在L > Lr時(shí),在所確定的時(shí)間窗口的下一時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包。另外,在下一時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域也沒有足夠的剩余空間時(shí),可以存儲(chǔ)至再下一個(gè)時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域,或者在下一時(shí)間窗口中插隊(duì)。303,類似于圖I的103,在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)(例如,以太網(wǎng))。當(dāng)前時(shí)間窗口 O的發(fā)送時(shí)刻是當(dāng)前時(shí)間窗口 O的定時(shí)器到期的時(shí)刻。如果定時(shí)器到期時(shí),當(dāng)前時(shí)間窗口 O所對(duì)應(yīng)的存儲(chǔ)區(qū)域中沒有存儲(chǔ)數(shù)據(jù)包,則可以不進(jìn)行打包發(fā)送操作。或者,可以從后續(xù)時(shí)間窗口 1-5中取出數(shù)據(jù)包,對(duì)所取出的數(shù)據(jù)包進(jìn)行打包發(fā)送。如果定時(shí)器到期時(shí),當(dāng)前時(shí)間窗口 O所對(duì)應(yīng)的存儲(chǔ)區(qū)域中有存儲(chǔ)數(shù)據(jù)包,則可以對(duì)所存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包發(fā)送。另外,在當(dāng)前時(shí)間窗口 O所對(duì)應(yīng)的存儲(chǔ)區(qū)域還有剩余空間的情況下,可以從后續(xù)時(shí)間窗口 1-5所對(duì)應(yīng)的存儲(chǔ)區(qū)域中取出數(shù)據(jù)包,并將當(dāng)前時(shí)間窗口 O所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包和取出的數(shù)據(jù)包一起進(jìn)行打包發(fā)送。這樣,可以在保證當(dāng)前時(shí)間窗口 O內(nèi)數(shù)據(jù)包被打包發(fā)送的情況下,將后面的數(shù)據(jù)包在資源允許的情況下也一起打包發(fā)送,也就是說盡量把打包的數(shù)據(jù)包裝滿。此時(shí),網(wǎng)關(guān)在對(duì)當(dāng)前時(shí)間窗口 O的數(shù)據(jù)包進(jìn)行打包發(fā)送時(shí),會(huì)做出如下的判斷如果當(dāng)前時(shí)間窗口 O的數(shù)據(jù)包已經(jīng)排滿,已經(jīng)不允許加入新的數(shù)據(jù)包,那么網(wǎng)關(guān)就只能打包當(dāng)前時(shí)間窗口 O的數(shù)據(jù)包;如果當(dāng)前時(shí)間窗口 O的數(shù)據(jù)包沒有排滿,可以允許加入新的數(shù)據(jù)包,那么網(wǎng)關(guān)在打包發(fā)送時(shí),就會(huì)判斷在資源允許的情況下能從后續(xù)的窗口取出多少數(shù)據(jù)包。從后續(xù)窗口取出數(shù)據(jù)包的順序是按照時(shí)間窗口的發(fā)送順序,依次從時(shí)間窗口中取出數(shù)據(jù)包后和當(dāng)前時(shí)間窗口 O內(nèi)的數(shù)據(jù)包一起打包發(fā)送。
這樣做不僅可以充分利用帶寬,尤其可以有效降低后續(xù)的待發(fā)時(shí)間窗口內(nèi)的數(shù)據(jù)包的轉(zhuǎn)發(fā)時(shí)延。上面描述了常規(guī)數(shù)據(jù)包的窗口排隊(duì)和窗口轉(zhuǎn)發(fā)機(jī)制。在數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求指示所述數(shù)據(jù)包為需要盡快轉(zhuǎn)發(fā)的緊急數(shù)據(jù)包的情況下,本發(fā)明實(shí)施例還可以進(jìn)行特殊處理,以保證緊急數(shù)據(jù)包的時(shí)效性??蛇x地,在一個(gè)實(shí)施例中,可以立即轉(zhuǎn)發(fā)所述緊急數(shù)據(jù)包至另一網(wǎng)絡(luò),而不論該緊急數(shù)據(jù)包所屬的時(shí)間窗口是否可以容納下該數(shù)據(jù)包,都不會(huì)把該數(shù)據(jù)包放入時(shí)間窗口內(nèi),以保證該數(shù)據(jù)包的時(shí)效性。在資源允許的情況下,還可以從時(shí)間窗口 0-5中取出合適的數(shù)據(jù)包,與該緊急數(shù)據(jù)包一起進(jìn)行打包發(fā)送,從而更充分地利用帶寬。作為另一實(shí)施例,判斷當(dāng)前時(shí)間窗口 0內(nèi)的存儲(chǔ)情況。在緊急數(shù)據(jù)包的長(zhǎng)度L小于或等于所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間Lr (LS Lr)的情況下,立即將緊急數(shù)據(jù)包和當(dāng)前時(shí)間窗口 0所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包一起進(jìn)行打包發(fā)送,而不再等計(jì)時(shí)器計(jì)時(shí)到時(shí)間T后發(fā)送這些數(shù)據(jù)包。由于L < Lr,因此此時(shí)一起打包的數(shù)據(jù)包的總 包長(zhǎng)不會(huì)超出外部網(wǎng)絡(luò)允許的最大包長(zhǎng)Lmax,能夠在保證緊急數(shù)據(jù)包的時(shí)效性的同時(shí),還保證了原有的時(shí)間窗口 0內(nèi)的數(shù)據(jù)包的時(shí)效性,同時(shí)提高了帶寬利用率。例如,假設(shè)當(dāng)網(wǎng)關(guān)計(jì)時(shí)到時(shí)間t時(shí),網(wǎng)關(guān)收到了一個(gè)緊急數(shù)據(jù)包,網(wǎng)關(guān)就會(huì)把時(shí)間窗口 0內(nèi)的數(shù)據(jù)包和這個(gè)緊急數(shù)據(jù)包一起打包發(fā)送。在剩余的時(shí)間(T-t)之內(nèi),網(wǎng)關(guān)依然會(huì)接收數(shù)據(jù)包,然后在時(shí)間T時(shí),網(wǎng)關(guān)把(T-t)這段時(shí)間內(nèi)收到的屬于時(shí)間窗口 0的數(shù)據(jù)包進(jìn)行打包發(fā)送。作為保證時(shí)間窗口內(nèi)的剩余空間能夠容納緊急數(shù)據(jù)包的一個(gè)實(shí)施例,可以在時(shí)間窗口 0或者時(shí)間窗口 I內(nèi),為這些緊急數(shù)據(jù)包預(yù)留一些資源。這些資源不會(huì)太多,也就是一個(gè)時(shí)間窗口內(nèi)會(huì)預(yù)留滿足I到2個(gè)數(shù)據(jù)包的資源。由于緊急數(shù)據(jù)包一般比較少,這些預(yù)留的資源可以滿足緊急數(shù)據(jù)包的要求。另外,在緊急數(shù)據(jù)包的長(zhǎng)度L大于當(dāng)前時(shí)間窗口 0所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間Lr (L > Lr)時(shí),立即轉(zhuǎn)發(fā)緊急數(shù)據(jù)包至另一網(wǎng)絡(luò),而不將緊急數(shù)據(jù)包放入時(shí)間窗口內(nèi)。作為另一實(shí)施例,在資源允許的情況下,可以從當(dāng)前時(shí)間窗口 0中取出部分?jǐn)?shù)據(jù)包,與該緊急數(shù)據(jù)包一起進(jìn)行打包發(fā)送,從而更充分地利用帶寬?;蛘?,在緊急數(shù)據(jù)包的長(zhǎng)度L大于當(dāng)前時(shí)間窗口 0所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間Lr(L>Lr)時(shí),允許緊急數(shù)據(jù)包插隊(duì)。具體地,可將當(dāng)前時(shí)間窗口 0所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的全部或部分?jǐn)?shù)據(jù)包轉(zhuǎn)移存儲(chǔ)到后續(xù)時(shí)間窗口 1-5中,以使得當(dāng)前時(shí)間窗口 0所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間Lr大于或等于緊急數(shù)據(jù)包的長(zhǎng)度L,然后在上述轉(zhuǎn)移處理之后的當(dāng)前時(shí)間窗口 0所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該緊急數(shù)據(jù)包。本發(fā)明實(shí)施例的發(fā)送數(shù)據(jù)的方法根據(jù)數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,對(duì)需要網(wǎng)關(guān)轉(zhuǎn)發(fā)的數(shù)據(jù)包進(jìn)行簡(jiǎn)單分類,并設(shè)計(jì)了一種基于時(shí)間窗口的轉(zhuǎn)發(fā)機(jī)制,網(wǎng)關(guān)在時(shí)間窗口內(nèi)對(duì)數(shù)據(jù)包進(jìn)行打包發(fā)送。本發(fā)明實(shí)施例能夠在考慮數(shù)據(jù)包的時(shí)效性的同時(shí),提高網(wǎng)關(guān)的轉(zhuǎn)發(fā)處理對(duì)帶寬的利用率。例如,在無線傳感網(wǎng)中,通過采用上述方法,傳感器采集到的各類數(shù)據(jù)可經(jīng)網(wǎng)關(guān)合理的安排和調(diào)度被傳送至外部網(wǎng)絡(luò),如以太網(wǎng),從而實(shí)現(xiàn)傳感器數(shù)據(jù)信息的有效傳遞。圖4是根據(jù)本發(fā)明實(shí)施例的網(wǎng)關(guān)設(shè)備的示意框圖。圖4的網(wǎng)關(guān)設(shè)備40包括第一確定單元41、第二確定單元42和發(fā)送單元43。第一確定單元41接收來自傳感器網(wǎng)絡(luò)的數(shù)據(jù)包,并確定該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求。第二確定單元42根據(jù)第一確定單元41所確定的該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定該數(shù)據(jù)包所屬的時(shí)間窗口,在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包。發(fā)送單元43在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)。本發(fā)明實(shí)施例使用基于時(shí)間窗口的轉(zhuǎn)發(fā)機(jī)制,根據(jù)數(shù)據(jù)包的屬性或延時(shí)要求確定數(shù)據(jù)包所屬的時(shí)間窗口,對(duì)時(shí)間窗口內(nèi)的數(shù)據(jù)包定時(shí)打包轉(zhuǎn)發(fā),從而合理的對(duì)不同數(shù)據(jù)包的發(fā)送時(shí)間進(jìn)行調(diào)度,并降低即時(shí)性高的數(shù)據(jù)包的發(fā)送時(shí)延。第一確定單元41、第二確定單元42和發(fā)送單元43可以分別是處理器。網(wǎng)關(guān)設(shè)備40可以實(shí)現(xiàn)上面所述的方法實(shí)施例的各個(gè)過程。例如,第二確定單元42可根據(jù)數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定數(shù)據(jù)包的延時(shí)值,并根據(jù)數(shù)據(jù)包的延時(shí)值和時(shí)間窗口的單位時(shí)間之間的比值,確定該數(shù)據(jù)包所屬的時(shí)間窗口。 可選地,作為一個(gè)實(shí)施例,第二確定單元42可判斷數(shù)據(jù)包的長(zhǎng)度是否大于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間,在該數(shù)據(jù)包的長(zhǎng)度小于或等于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包,并且在該數(shù)據(jù)包的長(zhǎng)度大于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),在所確定的時(shí)間窗口的下一時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該數(shù)據(jù)包。發(fā)送單元43還可以在當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域還有剩余空間的情況下,從后續(xù)時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中取出數(shù)據(jù)包,并將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包和取出的數(shù)據(jù)包一起進(jìn)行打包發(fā)送。圖5是根據(jù)本發(fā)明另一實(shí)施例的網(wǎng)關(guān)設(shè)備的示意框圖。在圖5的網(wǎng)關(guān)設(shè)備50中,除了圖4所示的第一確定單元41、第二確定單元42和發(fā)送單元43之外,還包括定時(shí)器51和緊急處理單元52。定時(shí)器51和緊急處理單元52可以分別是處理器。定時(shí)器51的長(zhǎng)度等于時(shí)間窗口的單位時(shí)間,在定時(shí)器51到期時(shí),將當(dāng)前時(shí)間窗口變?yōu)楫?dāng)前時(shí)間窗口的下一時(shí)間窗口,并重新啟動(dòng)定時(shí)器51。其中,所述當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻是當(dāng)前時(shí)間窗口的定時(shí)器51到期的時(shí)刻。在數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求指示該數(shù)據(jù)包為需要盡快轉(zhuǎn)發(fā)的緊急數(shù)據(jù)包的情況下,緊急處理單元52可立即轉(zhuǎn)發(fā)該緊急數(shù)據(jù)包至另一網(wǎng)絡(luò)?;蛘?,緊急處理單元52可在該緊急數(shù)據(jù)包的長(zhǎng)度大于當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),立即轉(zhuǎn)發(fā)該緊急數(shù)據(jù)包至另一網(wǎng)絡(luò)?;蛘?,緊急處理單元52可在該緊急數(shù)據(jù)包的長(zhǎng)度小于或等于當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間的情況下,立即將該緊急數(shù)據(jù)包和當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包一起進(jìn)行打包發(fā)送??蛇x地,在另一實(shí)施例中,在數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求指示所述數(shù)據(jù)包為需要盡快轉(zhuǎn)發(fā)的緊急數(shù)據(jù)包,且該緊急數(shù)據(jù)包的長(zhǎng)度大于當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間的情況下,緊急處理單元52可將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的全部或部分?jǐn)?shù)據(jù)包轉(zhuǎn)移存儲(chǔ)到后續(xù)時(shí)間窗口中,以使得當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間大于或等于該緊急數(shù)據(jù)包的長(zhǎng)度,并在當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)該緊急數(shù)據(jù)包。
本發(fā)明實(shí)施例的網(wǎng)關(guān)設(shè)備根據(jù)數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,對(duì)需要網(wǎng)關(guān)轉(zhuǎn)發(fā)的數(shù)據(jù)包進(jìn)行簡(jiǎn)單分類,并設(shè)計(jì)了一種基于時(shí)間窗口的轉(zhuǎn)發(fā)機(jī)制,網(wǎng)關(guān)在時(shí)間窗口內(nèi)對(duì)數(shù)據(jù)包進(jìn)行打包發(fā)送。本發(fā)明實(shí)施例能夠在考慮數(shù)據(jù)包的時(shí)效性的同時(shí),提高網(wǎng)關(guān)的轉(zhuǎn)發(fā)處理對(duì)帶寬的利用率。本領(lǐng)域普通技術(shù)人員可以意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來實(shí)現(xiàn)。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過程,在此不再贅述。在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的 劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。所述功能如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM, Random Access Memory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。以上所述,僅為本發(fā)明的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種發(fā)送數(shù)據(jù)的方法,其特征在于,包括 接收來自傳感器網(wǎng)絡(luò)的數(shù)據(jù)包,并確定所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求; 根據(jù)所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定所述數(shù)據(jù)包所屬的時(shí)間窗口,在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述數(shù)據(jù)包; 在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)。
2.如權(quán)利要求I所述的方法,其特征在于,所述根據(jù)所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定所述數(shù)據(jù)包所屬的時(shí)間窗口,包括 根據(jù)所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定所述數(shù)據(jù)包的延時(shí)值; 根據(jù)所述數(shù)據(jù)包的延時(shí)值和時(shí)間窗口的單位時(shí)間之間的比值,確定所述數(shù)據(jù)包所屬的時(shí)間窗口。
3.如權(quán)利要求I或2所述的方法,其特征在于,所述在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述數(shù)據(jù)包,包括 判斷所述數(shù)據(jù)包的長(zhǎng)度是否大于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間; 在所述數(shù)據(jù)包的長(zhǎng)度小于或等于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述數(shù)據(jù)包; 在所述數(shù)據(jù)包的長(zhǎng)度大于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),在所確定的時(shí)間窗口的下一時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述數(shù)據(jù)包。
4.如權(quán)利要求1-3任一項(xiàng)所述的方法,其特征在于,還包括 啟動(dòng)定時(shí)器,所述定時(shí)器的長(zhǎng)度等于時(shí)間窗口的單位時(shí)間; 在所述定時(shí)器到期時(shí),將當(dāng)前時(shí)間窗口變?yōu)樗霎?dāng)前時(shí)間窗口的下一時(shí)間窗口,并重新啟動(dòng)所述定時(shí)器, 其中,所述當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻是所述當(dāng)前時(shí)間窗口的定時(shí)器到期的時(shí)刻。
5.如權(quán)利要求1-4任一項(xiàng)所述的方法,其特征在于,在所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求指示所述數(shù)據(jù)包為需要盡快轉(zhuǎn)發(fā)的緊急數(shù)據(jù)包的情況下,還包括 立即轉(zhuǎn)發(fā)所述緊急數(shù)據(jù)包至所述另一網(wǎng)絡(luò);或者, 在所述緊急數(shù)據(jù)包的長(zhǎng)度大于所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),立即轉(zhuǎn)發(fā)所述緊急數(shù)據(jù)包至所述另一網(wǎng)絡(luò);或者, 在所述緊急數(shù)據(jù)包的長(zhǎng)度小于或等于所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間的情況下,立即將所述緊急數(shù)據(jù)包和所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包一起進(jìn)行打包。
6.如權(quán)利要求1-4任一項(xiàng)所述的方法,其特征在于,在所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求指示所述數(shù)據(jù)包為需要盡快轉(zhuǎn)發(fā)的緊急數(shù)據(jù)包,且所述緊急數(shù)據(jù)包的長(zhǎng)度大于當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間的情況下,還包括 將所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的全部或部分?jǐn)?shù)據(jù)包轉(zhuǎn)移存儲(chǔ)到后續(xù)時(shí)間窗口中,以使得所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間大于或等于所述緊急數(shù)據(jù)包的長(zhǎng)度; 在所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述緊急數(shù)據(jù)包。
7.如權(quán)利要求1-6任一項(xiàng)所述的方法,其特征在于,所述在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,包括 在所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域還有剩余空間的情況下,從后續(xù)時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中取出數(shù)據(jù)包; 將所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包和取出的數(shù)據(jù)包一起進(jìn)行打包。
8.—種網(wǎng)關(guān)設(shè)備,其特征在于,包括 第一確定單元,用于接收來自傳感器網(wǎng)絡(luò)的數(shù)據(jù)包,并確定所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求; 第二確定單元,用于根據(jù)所述第一確定單元所確定的數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定所述數(shù)據(jù)包所屬的時(shí)間窗口,在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述數(shù)據(jù)包; 發(fā)送單元,用于在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)。
9.如權(quán)利要求8所述的網(wǎng)關(guān)設(shè)備,其特征在于,所述第二確定單元,用于根據(jù)所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定所述數(shù)據(jù)包的延時(shí)值,并根據(jù)所述數(shù)據(jù)包的延時(shí)值和時(shí)間窗口的單位時(shí)間之間的比值,確定所述數(shù)據(jù)包所屬的時(shí)間窗口。
10.如權(quán)利要求8或9所述的網(wǎng)關(guān)設(shè)備,其特征在于,所述第二確定單元判斷所述數(shù)據(jù)包的長(zhǎng)度是否大于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間,在所述數(shù)據(jù)包的長(zhǎng)度小于或等于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述數(shù)據(jù)包,并且在所述數(shù)據(jù)包的長(zhǎng)度大于所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),在所確定的時(shí)間窗口的下一時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述數(shù)據(jù)包。
11.如權(quán)利要求8-10任一項(xiàng)所述的網(wǎng)關(guān)設(shè)備,其特征在于,還包括定時(shí)器,所述定時(shí)器的長(zhǎng)度等于時(shí)間窗口的單位時(shí)間,在所述定時(shí)器到期時(shí),將當(dāng)前時(shí)間窗口變?yōu)樗霎?dāng)前時(shí)間窗口的下一時(shí)間窗口,并重新啟動(dòng)所述定時(shí)器, 其中,所述當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻是所述當(dāng)前時(shí)間窗口的定時(shí)器到期的時(shí)刻。
12.如權(quán)利要求8-11任一項(xiàng)所述的網(wǎng)關(guān)設(shè)備,其特征在于,還包括緊急處理單元,在所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求指示所述數(shù)據(jù)包為需要盡快轉(zhuǎn)發(fā)的緊急數(shù)據(jù)包的情況下, 所述緊急處理單元用于立即轉(zhuǎn)發(fā)所述緊急數(shù)據(jù)包至所述另一網(wǎng)絡(luò),或者, 所述緊急處理單元用于在所述緊急數(shù)據(jù)包的長(zhǎng)度大于所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間時(shí),立即轉(zhuǎn)發(fā)所述緊急數(shù)據(jù)包至所述另一網(wǎng)絡(luò),或者, 所述緊急處理單元在所述緊急數(shù)據(jù)包的長(zhǎng)度小于或等于所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間的情況下,立即將所述緊急數(shù)據(jù)包和所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包一起進(jìn)行打包。
13.如權(quán)利要求8-11任一項(xiàng)所述的網(wǎng)關(guān)設(shè)備,其特征在于,還包括緊急處理單元,在所述數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求指示所述數(shù)據(jù)包為需要盡快轉(zhuǎn)發(fā)的緊急數(shù)據(jù)包,且所述緊急數(shù)據(jù)包的長(zhǎng)度大于當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間的情況下,所述緊急處理單元用于將所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的全部或部分?jǐn)?shù)據(jù)包轉(zhuǎn)移存儲(chǔ)到后續(xù)時(shí)間窗口中,以使得所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域的剩余空間大于或等于所述緊急數(shù)據(jù)包的長(zhǎng)度,并在所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)所述緊急數(shù)據(jù)包。
14.如權(quán)利要求8-13任一項(xiàng)所述的網(wǎng)關(guān)設(shè)備,其特征在于,所述發(fā)送單元還用于在所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域還有剩余空間的情況下,從后續(xù)時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中取出數(shù)據(jù)包,并將所述當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包和取出的數(shù)據(jù)包一起進(jìn)行打包。
全文摘要
本發(fā)明實(shí)施例提供一種發(fā)送數(shù)據(jù)的方法和網(wǎng)關(guān)設(shè)備。該方法包括接收來自傳感器網(wǎng)絡(luò)的數(shù)據(jù)包,并確定該數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求;根據(jù)數(shù)據(jù)包的應(yīng)用層數(shù)據(jù)屬性和/或延時(shí)要求,確定數(shù)據(jù)包所屬的時(shí)間窗口,在所確定的時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)數(shù)據(jù)包;在到達(dá)當(dāng)前時(shí)間窗口的發(fā)送時(shí)刻時(shí),將當(dāng)前時(shí)間窗口所對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的數(shù)據(jù)包進(jìn)行打包,并將打包后的數(shù)據(jù)包發(fā)送至另一網(wǎng)絡(luò)。本發(fā)明實(shí)施例使用基于時(shí)間窗口的轉(zhuǎn)發(fā)機(jī)制,根據(jù)數(shù)據(jù)包的屬性或延時(shí)要求確定數(shù)據(jù)包所屬的時(shí)間窗口,對(duì)時(shí)間窗口內(nèi)的數(shù)據(jù)包定時(shí)打包轉(zhuǎn)發(fā),從而合理的對(duì)不同數(shù)據(jù)包的發(fā)送時(shí)間進(jìn)行調(diào)度,并降低即時(shí)性高的數(shù)據(jù)包的發(fā)送時(shí)延。
文檔編號(hào)H04L12/66GK102754396SQ201180001275
公開日2012年10月24日 申請(qǐng)日期2011年6月23日 優(yōu)先權(quán)日2011年6月23日
發(fā)明者劉培, 牛旭亮 申請(qǐng)人:華為技術(shù)有限公司