亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法

文檔序號(hào):7764282閱讀:1055來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明涉及物聯(lián)網(wǎng)架構(gòu)中傳感器網(wǎng)絡(luò)接入領(lǐng)域,具體地說(shuō),本發(fā)明涉及一種傳感 器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法。
背景技術(shù)
傳感器網(wǎng)絡(luò)(Sensor Network, SN)是由大量傳感器節(jié)點(diǎn)通過(guò)無(wú)線(xiàn)通信技術(shù)組成的 自組織網(wǎng)絡(luò),它集數(shù)據(jù)的采集、傳輸、融合分析于一體,是信息技術(shù)的一個(gè)新領(lǐng)域,極大地?cái)U(kuò) 展了人們的信息獲取能力,它能將客觀世界的物理信息同傳輸網(wǎng)絡(luò)連接在一起,在下一代 互聯(lián)網(wǎng)中為人們提供最直接、最有效、最真實(shí)的信息。物聯(lián)網(wǎng)(Internet of Things),指的是將各種信息傳感設(shè)備,如射頻識(shí)別(RFID) 裝置、紅外感應(yīng)器、全球定位系統(tǒng)、激光掃描器等種種裝置與互聯(lián)網(wǎng)結(jié)合起來(lái)而形成的一個(gè) 巨大網(wǎng)絡(luò)。它利用了傳統(tǒng)的傳感器網(wǎng)絡(luò)技術(shù)讓所有的物品都與網(wǎng)絡(luò)連接在一起,方便識(shí)別 和管理。物聯(lián)網(wǎng)技術(shù)是當(dāng)前網(wǎng)絡(luò)研究的熱點(diǎn),但是目前還沒(méi)有統(tǒng)一的標(biāo)準(zhǔn)。本發(fā)明中傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合實(shí)現(xiàn)在連接傳感器網(wǎng)絡(luò)與物聯(lián)網(wǎng)的物聯(lián)網(wǎng)家庭網(wǎng) 關(guān)之上。物聯(lián)網(wǎng)中的家庭網(wǎng)關(guān)(Home Gateway)是實(shí)現(xiàn)家庭網(wǎng)絡(luò)內(nèi)部各設(shè)備與物聯(lián)網(wǎng)接入 網(wǎng)關(guān)相互通信的設(shè)備,是實(shí)現(xiàn)整個(gè)物聯(lián)網(wǎng)架構(gòu)的基礎(chǔ)。根據(jù)物聯(lián)網(wǎng)架構(gòu)的需求,該家庭網(wǎng)關(guān) 必須具有多種接入的功能。家庭網(wǎng)關(guān)用于家庭內(nèi)部網(wǎng)絡(luò)包括WiFi網(wǎng)絡(luò)、傳感器網(wǎng)絡(luò)、移動(dòng) 通信網(wǎng)絡(luò)在整個(gè)物聯(lián)網(wǎng)網(wǎng)絡(luò)中互聯(lián),實(shí)現(xiàn)了各種數(shù)據(jù)的轉(zhuǎn)換及轉(zhuǎn)發(fā)。對(duì)于傳感器網(wǎng)絡(luò)來(lái)說(shuō),傳感器節(jié)點(diǎn)在家庭網(wǎng)關(guān)內(nèi)部采集感知區(qū)域內(nèi)的數(shù)據(jù),進(jìn)行 簡(jiǎn)單的處理后發(fā)送至匯聚節(jié)點(diǎn);傳感器網(wǎng)絡(luò)匯聚節(jié)點(diǎn)將傳感器網(wǎng)絡(luò)采集的數(shù)據(jù)發(fā)送給家庭 網(wǎng)關(guān),如傳感器節(jié)點(diǎn)部署區(qū)域內(nèi)的溫度、濕度、光強(qiáng)等;接著家庭網(wǎng)關(guān)進(jìn)行遠(yuǎn)距離傳輸,傳輸 方式包括以太網(wǎng)、無(wú)線(xiàn)通信網(wǎng)等,最終到達(dá)遠(yuǎn)程物聯(lián)網(wǎng)區(qū)域服務(wù)器。在傳感器網(wǎng)絡(luò)中,家庭網(wǎng)關(guān)收到數(shù)據(jù)后,不再為每個(gè)數(shù)據(jù)幀啟動(dòng)傳輸,而是采用幀 聚合方式,從而減少通信開(kāi)銷(xiāo)。數(shù)據(jù)聚合減少傳感器網(wǎng)絡(luò)內(nèi)部節(jié)點(diǎn)轉(zhuǎn)發(fā)的數(shù)據(jù)冗余增加從 源節(jié)點(diǎn)到基站有用信息流,也減少節(jié)點(diǎn)的能量消耗、消除網(wǎng)絡(luò)中的數(shù)據(jù)冗余、延長(zhǎng)網(wǎng)絡(luò)的使 用壽命。數(shù)據(jù)聚合實(shí)現(xiàn)的方法在本質(zhì)上來(lái)看就是把多個(gè)數(shù)據(jù)包按照一定的幀格式重新封 裝成一個(gè)數(shù)據(jù)幀,待接收節(jié)點(diǎn)接收后,進(jìn)行反向的解聚合操作,還原成原始的多個(gè)數(shù)據(jù)包。家庭網(wǎng)關(guān)的數(shù)據(jù)聚合模塊借鑒了傳感器網(wǎng)絡(luò)的數(shù)據(jù)聚合思想。家庭網(wǎng)關(guān)的數(shù)據(jù)聚 合模塊就是要在轉(zhuǎn)發(fā)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)時(shí)先進(jìn)行數(shù)據(jù)處理,再進(jìn)行數(shù)據(jù)傳輸,從而減少 通信開(kāi)銷(xiāo),增加從傳感器網(wǎng)絡(luò)節(jié)點(diǎn)到物聯(lián)網(wǎng)控制設(shè)備_區(qū)域服務(wù)器之間的有用信息流。在物聯(lián)網(wǎng)架構(gòu)下融合傳感器網(wǎng)絡(luò)時(shí),由于傳感器網(wǎng)絡(luò)中傳感節(jié)點(diǎn)分布廣泛、節(jié)點(diǎn) 個(gè)數(shù)多,而每個(gè)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)包數(shù)據(jù)量不大,如果對(duì)每個(gè)傳感器節(jié)點(diǎn)收集的數(shù)據(jù)進(jìn)行數(shù) 據(jù)轉(zhuǎn)發(fā),將由于無(wú)線(xiàn)報(bào)頭開(kāi)銷(xiāo)的原因帶來(lái)大量額外信息,造成帶寬資源的浪費(fèi),也會(huì)增加網(wǎng) 絡(luò)的負(fù)載。因此本發(fā)明提出實(shí)時(shí)地進(jìn)行傳感器網(wǎng)絡(luò)數(shù)據(jù)報(bào)文的聚合處理,減少信息傳輸中 所攜帶的額外信息,提高網(wǎng)絡(luò)的傳輸效率和提高網(wǎng)絡(luò)吞吐量,減少骨干網(wǎng)絡(luò)出現(xiàn)擁塞的可

為方便理解,下面列出本發(fā)明中出現(xiàn)的一些術(shù)語(yǔ)的中英文對(duì)照 IP Internet Protocol,因特網(wǎng)辦議
SN =Sensor Network,傳感器網(wǎng)絡(luò)
IOT Jnternet of Things,物聯(lián)網(wǎng)
HGff =Home Gateffay,家庭網(wǎng)關(guān)
A-PDU =Aggregation-Protocol Data Unit,協(xié)議數(shù)據(jù)單元聚合 A-SDU =Aggregation-Service Data Unit,服務(wù)數(shù)據(jù)單元聚合

發(fā)明內(nèi)容
本發(fā)明的目的是提供一種傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,在物聯(lián)網(wǎng)中克服傳 感器網(wǎng)絡(luò)接入后大量節(jié)點(diǎn)數(shù)據(jù)帶來(lái)網(wǎng)絡(luò)擁塞以及無(wú)線(xiàn)資源的浪費(fèi),從而提出利用數(shù)據(jù)聚合 模塊來(lái)提高傳感器網(wǎng)絡(luò)數(shù)據(jù)轉(zhuǎn)發(fā)時(shí)有效信息量,提高網(wǎng)絡(luò)的傳輸效率和吞吐量。本發(fā)明的技術(shù)解決方案是1、一種傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,其特征在于, 所述的方法包括傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的建立、傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的添加、數(shù)據(jù)聚合 調(diào)度發(fā)送,所述的方法具體包括以下步驟步驟1)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的初始化創(chuàng)建完成當(dāng)前傳感器網(wǎng)絡(luò)中已經(jīng)存在 的節(jié)點(diǎn)信息表的建立;步驟2)在傳感器節(jié)點(diǎn)信息表中添加新節(jié)點(diǎn)信息當(dāng)收到傳感器數(shù)據(jù)時(shí),提取節(jié) 點(diǎn)ID,并根據(jù)節(jié)點(diǎn)ID計(jì)算哈希值,根據(jù)計(jì)算出的哈希值在信息表中查找該傳感器節(jié)點(diǎn)信 息,如果沒(méi)有找到,創(chuàng)建該節(jié)點(diǎn)信息實(shí)體,并插入信息表中;步驟3)對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度在傳感節(jié)點(diǎn)信息表中找到對(duì)應(yīng)的 節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體,根據(jù)信息結(jié)構(gòu)實(shí)體當(dāng)中聚合表示位的值,判斷是否滿(mǎn)足聚合條件,選擇 是以聚合報(bào)文鏈方式發(fā)送還是單數(shù)據(jù)包直接發(fā)送,對(duì)于滿(mǎn)足聚合條件的數(shù)據(jù)包,根據(jù)聚合 閥值進(jìn)行組裝成聚合鏈發(fā)送。所述的傳感器節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體包含節(jié)點(diǎn)ID,節(jié)點(diǎn)組ID,聚合標(biāo)識(shí);所述的聚合標(biāo)示的意義是長(zhǎng)度為16bit,0x00標(biāo)示不可以聚合,OxOl標(biāo)示僅可以 單節(jié)點(diǎn)聚合,0x02標(biāo)示可以多節(jié)點(diǎn)聚合;所述的聚合閥值包括聚合鏈數(shù)據(jù)包限制(一個(gè)聚合鏈中最多含有的數(shù)據(jù)包個(gè) 數(shù)),聚合鏈長(zhǎng)度限制(一個(gè)聚合鏈最大字節(jié)數(shù)),延遲時(shí)間限制(節(jié)點(diǎn)數(shù)據(jù)在緩存隊(duì)列內(nèi) 最大緩存時(shí)間);所述的傳感器信息表是一個(gè)鏈表結(jié)構(gòu),一個(gè)頭指針始終指向該表的第一個(gè)組播結(jié) 構(gòu)實(shí)體,一個(gè)尾指針始終指向該表中的最后一個(gè)組播結(jié)構(gòu)實(shí)體,整個(gè)信息表采用以節(jié)點(diǎn)ID 為哈希關(guān)鍵字的存儲(chǔ)方式;所述的緩存隊(duì)列包含聚合包個(gè)數(shù)、當(dāng)前聚合鏈長(zhǎng)度、定時(shí)器和當(dāng)前隊(duì)列內(nèi)聚合鏈 類(lèi)型、指向該隊(duì)列內(nèi)第一個(gè)數(shù)據(jù)報(bào)文的頭指針、指向隊(duì)列內(nèi)最后一個(gè)數(shù)據(jù)報(bào)文的尾指針;所述的聚合鏈意義是緩存隊(duì)列內(nèi)第二個(gè)報(bào)文開(kāi)始,都以組裝成聚合鏈的形式;所述的待處理報(bào)文時(shí)緩存隊(duì)列內(nèi)第一個(gè)數(shù)據(jù)包;所述的聚合報(bào)文鏈包括傳感數(shù)據(jù)報(bào)文、聚合分隔符;
所述的聚合分隔符包括聚合鏈報(bào)文個(gè)數(shù)8bit、聚合鏈20bit長(zhǎng)度、聚合鏈類(lèi)型 4bit。所述的傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法中步驟1)具體包括如下子步驟1. 1)所述的傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的初始化創(chuàng)建當(dāng)網(wǎng)關(guān)上電以后,完成當(dāng)前 網(wǎng)絡(luò)中傳感器節(jié)點(diǎn)信息的建立,每個(gè)傳感器的信息以信息結(jié)構(gòu)實(shí)體的形式記錄,包括節(jié)點(diǎn) ID、組ID和聚合標(biāo)識(shí),并以節(jié)點(diǎn)ID計(jì)算哈希值,存放在傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表中,設(shè)置新加 節(jié)點(diǎn)聚合默認(rèn)標(biāo)示,新加入的節(jié)點(diǎn)聚合表示會(huì)被系統(tǒng)按默認(rèn)標(biāo)示填寫(xiě)。所述的對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度的實(shí)現(xiàn)方法中步驟2)具體包括如下 子步驟2. 1)所述的在傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表中添加新的節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體當(dāng)收到某 傳感器節(jié)點(diǎn)數(shù)據(jù)時(shí),讀取所述的傳感器節(jié)點(diǎn)數(shù)據(jù)中每個(gè)數(shù)據(jù)包的源節(jié)點(diǎn)ID位,判斷發(fā)送節(jié) 點(diǎn)是否已在節(jié)點(diǎn)信息表內(nèi),如果收到該消息的節(jié)點(diǎn)已在節(jié)點(diǎn)信息表內(nèi),則直接返回,否則為 所述的傳感節(jié)點(diǎn)初始化一個(gè)消息結(jié)構(gòu)體,設(shè)置節(jié)點(diǎn)信息,并將所述的消息結(jié)構(gòu)體加入到消 息結(jié)構(gòu)體鏈表中。所述的對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度的實(shí)現(xiàn)方法中步驟3)具體包括如下 子步驟3. 1)提取傳感器節(jié)點(diǎn)信息,轉(zhuǎn)到3. 2);3. 2)判斷該數(shù)據(jù)包能否聚合,可以聚合轉(zhuǎn)到3. 3),否則轉(zhuǎn)到3. 11);3. 3)判斷緩存隊(duì)列當(dāng)前是否為空,如果為空轉(zhuǎn)到3. 5),否者轉(zhuǎn)到3. 4);3. 4)創(chuàng)建10分鐘定時(shí)器,轉(zhuǎn)到3. 5);3. 5)將待處理的數(shù)據(jù)包插入到緩存隊(duì)列頭部;3. 6)判斷當(dāng)前待處理數(shù)據(jù)包是否需要單節(jié)點(diǎn)多數(shù)據(jù)聚合,如果需要轉(zhuǎn)到3. 7), 否者轉(zhuǎn)到3. 8);3. 7)判斷緩存隊(duì)列是否為空或者當(dāng)前待處理數(shù)據(jù)包和緩存內(nèi)聚合鏈?zhǔn)欠裢琁D, 如果一個(gè)條件成立,轉(zhuǎn)到3. 11),否者轉(zhuǎn)到3. 8);3.8)判斷能否將待處理報(bào)文組裝到緩存隊(duì)里內(nèi)的聚合鏈中。如果當(dāng)前待處理數(shù) 據(jù)包是單節(jié)點(diǎn)多數(shù)據(jù)聚合類(lèi)型且和聚合鏈同ID,如果同時(shí)成立轉(zhuǎn)到3. 9),否者轉(zhuǎn)到3. 11);3. 9)將待處理的數(shù)據(jù)包插入聚合鏈,轉(zhuǎn)到3. 10);3. 10)判斷聚合鏈?zhǔn)欠癯^(guò)了聚合閥值要求,即聚合鏈長(zhǎng)度達(dá)到最大聚合長(zhǎng) 度,聚合鏈數(shù)據(jù)包個(gè)數(shù)達(dá)到最大聚合鏈數(shù)據(jù)包個(gè)數(shù),如果上面兩個(gè)條件有一個(gè)成立,轉(zhuǎn)到 3. 15),否者轉(zhuǎn)到3. 11);3. 11)根據(jù)待發(fā)送數(shù)據(jù)包類(lèi)型,設(shè)置發(fā)送信息,轉(zhuǎn)到3. 12);3. 12)判斷緩存隊(duì)列是否為空,如果為空轉(zhuǎn)到3. 15),否者轉(zhuǎn)到3. 13);3. 13)判斷緩存隊(duì)列是否設(shè)置了定時(shí)器,如果有轉(zhuǎn)到3. 14),否者轉(zhuǎn)到3. 15);3. 14)刪除定時(shí)器;3. 15)系統(tǒng)執(zhí)行結(jié)束。該方法包括傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的初始化建立,傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的添 加,數(shù)據(jù)聚合調(diào)度。所述的方法具體步驟1)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表初始化創(chuàng)建完成當(dāng)前 已知網(wǎng)絡(luò)中所有傳感節(jié)點(diǎn)的信息結(jié)構(gòu)實(shí)體的創(chuàng)建,并插入信息表中;2)在信息結(jié)構(gòu)表中添加新的節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體當(dāng)新的節(jié)點(diǎn)加入網(wǎng)絡(luò)中,在信息表中添加該節(jié)點(diǎn)的信息結(jié)構(gòu)實(shí) 體;3)數(shù)據(jù)聚合調(diào)度對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度,選擇是以A-PDU聚合方式發(fā)送 還是單數(shù)據(jù)包直接發(fā)送。所述的節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體包括節(jié)點(diǎn)ID信息,節(jié)點(diǎn)所屬組ID信 息,聚合標(biāo)志信息;所述的信息表采用鏈表結(jié)構(gòu)。與現(xiàn)有技術(shù)相比,本發(fā)明的一種傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,具有以下優(yōu)點(diǎn)。1、通過(guò)對(duì)傳感網(wǎng)絡(luò)數(shù)據(jù)報(bào)文進(jìn)行聚合,解決了在使用無(wú)線(xiàn)發(fā)送過(guò)程中因?yàn)閭鞲袛?shù) 據(jù)在整個(gè)無(wú)線(xiàn)數(shù)據(jù)包中比重過(guò)小,浪費(fèi)無(wú)線(xiàn)資源的問(wèn)題。2、傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表采用初始化創(chuàng)建的方式,可以事先人為的對(duì)已經(jīng)存在的 節(jié)點(diǎn)完成信息結(jié)構(gòu)實(shí)體的創(chuàng)建工作,區(qū)分了敏感節(jié)點(diǎn),可針對(duì)業(yè)務(wù)形成多節(jié)點(diǎn)多數(shù)據(jù)聚合 消息包和單節(jié)點(diǎn)多數(shù)據(jù)包。3、可以在傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表中添加新的節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體,可以支持對(duì)加入 新節(jié)點(diǎn),完成網(wǎng)絡(luò)的拓展。


結(jié)合附圖來(lái)詳細(xì)說(shuō)明本發(fā)明的實(shí)施例如下,其中圖1為本發(fā)明的傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息初始化創(chuàng)建表示意圖;圖2為本發(fā)明的在傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表中添加新節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體示意圖;圖3為本發(fā)明的聚合調(diào)度發(fā)送示意圖;圖4為本發(fā)明的對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度流程圖;圖5為本發(fā)明的聚合鏈結(jié)構(gòu)示意圖;圖6為本發(fā)明的一次實(shí)際聚合鏈結(jié)構(gòu)示意圖。
具體實(shí)施例方式本發(fā)明提出一種利用數(shù)據(jù)聚合的方法來(lái)提高傳感器網(wǎng)絡(luò)數(shù)據(jù)轉(zhuǎn)發(fā)時(shí)傳輸?shù)挠行?信息。該方法適用于傳感器網(wǎng)絡(luò)和IP網(wǎng)絡(luò)或移動(dòng)通信網(wǎng)融合的網(wǎng)絡(luò)中,總體說(shuō)來(lái),所述的 方法包含如下步驟1)初始化,網(wǎng)關(guān)在上電以后,初始化節(jié)點(diǎn)信息表;2)在傳感器節(jié)點(diǎn)信息表中添加新節(jié)點(diǎn)信息當(dāng)收到傳感器數(shù)據(jù)時(shí),提取節(jié)點(diǎn)ID, 在信息表中查找該傳感器節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體,如果沒(méi)有找到,創(chuàng)建該節(jié)點(diǎn)信息實(shí)體,填寫(xiě)節(jié) 點(diǎn)信息,并插入信息表中;3)對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度根據(jù)傳感節(jié)點(diǎn)信息表中的信息,判斷是 否需要聚合,進(jìn)行A-PDU聚合方式封裝后放入聚合隊(duì)列,在滿(mǎn)足聚合閾值條件時(shí)調(diào)用發(fā)送 模塊發(fā)送。傳感網(wǎng)絡(luò)具有節(jié)點(diǎn)多,數(shù)據(jù)量大,每個(gè)數(shù)據(jù)包小的特點(diǎn),因此在傳感網(wǎng)和互聯(lián)網(wǎng)融 合的過(guò)程當(dāng)中,為每個(gè)傳感數(shù)據(jù)包都啟動(dòng)一次發(fā)送,往往浪費(fèi)優(yōu)先的資源,尤其是在使用3G 或者WI-FI等方式接入互聯(lián)網(wǎng)時(shí),無(wú)線(xiàn)報(bào)頭的長(zhǎng)度往往比數(shù)據(jù)包本身還要大,很是浪費(fèi)有 限的無(wú)線(xiàn)信道資源,所以,對(duì)傳感數(shù)據(jù)包使用聚合方式就顯得尤為重要。聚合方式分為單節(jié)點(diǎn)多數(shù)據(jù)聚合和多節(jié)點(diǎn)多數(shù)據(jù)聚合兩種方式,第一種方式在一個(gè)聚合鏈中只能包含一個(gè)節(jié)點(diǎn)的數(shù)據(jù)包,第二種方式則可以包含多個(gè)節(jié)點(diǎn)的數(shù)據(jù)包。數(shù)據(jù) 包和數(shù)據(jù)包之間用分隔符(delimiter)分開(kāi),聚合鏈的格式見(jiàn)圖5所示。每個(gè)分隔符長(zhǎng)度為 4個(gè)字節(jié),0-3bit為聚合鏈的類(lèi)型0標(biāo)示單個(gè)數(shù)據(jù)包,1標(biāo)示單節(jié)點(diǎn)聚合方式,3標(biāo)示多節(jié) 點(diǎn)聚合方式。4-llbit為數(shù)據(jù)包個(gè)數(shù)域,數(shù)值標(biāo)示該聚合鏈包含的數(shù)據(jù)包的個(gè)數(shù),12-31bit 標(biāo)示聚合鏈的長(zhǎng)度。需要說(shuō)明的是,只有第一個(gè)聚合鏈的分隔符需要添寫(xiě)相應(yīng)的信息,而其 余的分隔符則不需要填寫(xiě),接收方根據(jù)每個(gè)數(shù)據(jù)包的大小自動(dòng)跳過(guò)該數(shù)據(jù)包和分隔符,獲 取下一個(gè)數(shù)據(jù)包。下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。圖1網(wǎng)關(guān)初始化建立節(jié)點(diǎn)信息表,網(wǎng)關(guān)和四個(gè)傳感器組成一個(gè)傳感網(wǎng),節(jié)點(diǎn)a,節(jié) b,節(jié)點(diǎn)c和節(jié)點(diǎn)d的ID假設(shè)分別為0x12,0x13,0x24,0x25,網(wǎng)關(guān)組ID為0x5。其中節(jié)點(diǎn)a 發(fā)往網(wǎng)關(guān)的傳感數(shù)據(jù)實(shí)時(shí)性要求較高,不能聚合,節(jié)點(diǎn)b只能單節(jié)點(diǎn)聚合,其余節(jié)點(diǎn)數(shù)據(jù)可 以多節(jié)點(diǎn)聚合,聚合閥值為一個(gè)數(shù)據(jù)聚合鏈最多含有15個(gè)傳感數(shù)據(jù)報(bào)文,整個(gè)數(shù)據(jù)鏈最 大為1500個(gè)字節(jié),最大延遲時(shí)間為10分鐘,新加入的傳感器默認(rèn)發(fā)送的數(shù)據(jù)可以多節(jié)點(diǎn)聚 合。所以可以將網(wǎng)關(guān)的初始節(jié)點(diǎn)信息表配置如表一所示,當(dāng)網(wǎng)關(guān)上電以后,自動(dòng)初始化節(jié)點(diǎn) 信息表,記錄當(dāng)前網(wǎng)絡(luò)各個(gè)節(jié)點(diǎn)的信息。表一節(jié)點(diǎn)信息
權(quán)利要求
一種傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,其特征在于,所述的方法包括傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的建立、傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的添加、數(shù)據(jù)聚合調(diào)度發(fā)送,所述的方法具體包括以下步驟步驟1)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的初始化創(chuàng)建完成當(dāng)前傳感器網(wǎng)絡(luò)中已經(jīng)存在的節(jié)點(diǎn)信息表的建立;步驟2)在傳感器節(jié)點(diǎn)信息表中添加新節(jié)點(diǎn)信息當(dāng)收到傳感器數(shù)據(jù)時(shí),提取節(jié)點(diǎn)ID,并根據(jù)節(jié)點(diǎn)ID計(jì)算哈希值,根據(jù)計(jì)算出的哈希值在信息表中查找該傳感器節(jié)點(diǎn)信息,如果沒(méi)有找到,創(chuàng)建該節(jié)點(diǎn)信息實(shí)體,并插入信息表中;步驟3)對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度在傳感節(jié)點(diǎn)信息表中找到對(duì)應(yīng)的節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體,根據(jù)信息結(jié)構(gòu)實(shí)體當(dāng)中聚合表示位的值,判斷是否滿(mǎn)足聚合條件,選擇是以聚合報(bào)文鏈方式發(fā)送還是單數(shù)據(jù)包直接發(fā)送,對(duì)于滿(mǎn)足聚合條件的數(shù)據(jù)包,根據(jù)聚合閥值進(jìn)行組裝成聚合鏈發(fā)送;所述的傳感器節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體包含節(jié)點(diǎn)ID,節(jié)點(diǎn)組ID,聚合標(biāo)識(shí);所述的聚合標(biāo)示的意義是長(zhǎng)度為16bit,0x00標(biāo)示不可以聚合,0x01標(biāo)示僅可以單節(jié)點(diǎn)聚合,0x02標(biāo)示可以多節(jié)點(diǎn)聚合;所述的聚合閥值包括聚合鏈數(shù)據(jù)包限制,聚合鏈長(zhǎng)度限制,延遲時(shí)間限制;所述的傳感器信息表是一個(gè)鏈表結(jié)構(gòu),一個(gè)頭指針始終指向該表的第一個(gè)組播結(jié)構(gòu)實(shí)體,一個(gè)尾指針始終指向該表中的最后一個(gè)組播結(jié)構(gòu)實(shí)體,整個(gè)信息表采用以節(jié)點(diǎn)ID為哈希關(guān)鍵字的存儲(chǔ)方式;所述的緩存隊(duì)列包含聚合包個(gè)數(shù)、當(dāng)前聚合鏈長(zhǎng)度、定時(shí)器和當(dāng)前隊(duì)列內(nèi)聚合鏈類(lèi)型、指向該隊(duì)列內(nèi)第一個(gè)數(shù)據(jù)報(bào)文的頭指針、指向隊(duì)列內(nèi)最后一個(gè)數(shù)據(jù)報(bào)文的尾指針;所述的聚合鏈意義是緩存隊(duì)列內(nèi)第二個(gè)報(bào)文開(kāi)始,都以組裝成聚合鏈的形式;所述的待處理報(bào)文時(shí)緩存隊(duì)列內(nèi)第一個(gè)數(shù)據(jù)包所述的聚合報(bào)文鏈包括傳感數(shù)據(jù)報(bào)文、聚合分隔符;所述的聚合分隔符包括聚合鏈報(bào)文個(gè)數(shù)8bit、聚合鏈20bit長(zhǎng)度、聚合鏈類(lèi)型4bit。
2.根據(jù)權(quán)利要求1所述的傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,其特征在于,所述的傳感 器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法中步驟1)具體包括如下子步驟1.1)所述的傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的初始化創(chuàng)建當(dāng)網(wǎng)關(guān)上電以后,完成當(dāng)前網(wǎng)絡(luò) 中傳感器節(jié)點(diǎn)信息的建立,每個(gè)傳感器的信息以信息結(jié)構(gòu)實(shí)體的形式記錄,包括節(jié)點(diǎn)ID、組 ID和聚合標(biāo)識(shí),并以節(jié)點(diǎn)ID計(jì)算哈希值,存放在傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表中,設(shè)置新加節(jié)點(diǎn) 聚合默認(rèn)標(biāo)示,新加入的節(jié)點(diǎn)聚合表示會(huì)被系統(tǒng)按默認(rèn)標(biāo)示填寫(xiě)。
3.根據(jù)權(quán)利要求1所述的傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,其特征在于,所述的對(duì)傳 感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度的實(shí)現(xiàn)方法中步驟2)具體包括如下子步驟2. 1)所述的在傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表中添加新的節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體當(dāng)收到某傳感 器節(jié)點(diǎn)數(shù)據(jù)時(shí),讀取所述的傳感器節(jié)點(diǎn)數(shù)據(jù)中每個(gè)數(shù)據(jù)包的源節(jié)點(diǎn)ID位,判斷發(fā)送節(jié)點(diǎn)是 否已在節(jié)點(diǎn)信息表內(nèi),如果收到該消息的節(jié)點(diǎn)已在節(jié)點(diǎn)信息表內(nèi),則直接返回,否則為所述 的傳感節(jié)點(diǎn)初始化一個(gè)消息結(jié)構(gòu)體,設(shè)置節(jié)點(diǎn)信息,并將所述的消息結(jié)構(gòu)體加入到消息結(jié) 構(gòu)體鏈表中。
4.根據(jù)權(quán)利要求1所述的傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,其特征在于,所述的對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度的實(shí)現(xiàn)方法中步驟3)具體包括如下子步驟 3. 1):提取傳感器節(jié)點(diǎn)信息,轉(zhuǎn)到3. 2);.3.2)判斷該數(shù)據(jù)包能否聚合,可以聚合轉(zhuǎn)到3.3),否則轉(zhuǎn)到3. 11);.3.3)判斷緩存隊(duì)列當(dāng)前是否為空,如果為空轉(zhuǎn)到3.5),否者轉(zhuǎn)到3. 4); 3. 4)創(chuàng)建10分鐘定時(shí)器,轉(zhuǎn)到3. 5);.3. 5)將待處理的數(shù)據(jù)包插入到緩存隊(duì)列頭部;.3.6)判斷當(dāng)前待處理數(shù)據(jù)包是否需要單節(jié)點(diǎn)多數(shù)據(jù)聚合,如果需要轉(zhuǎn)到3.7),否者 轉(zhuǎn)到3. 8);.3.7)判斷緩存隊(duì)列是否為空或者當(dāng)前待處理數(shù)據(jù)包和緩存內(nèi)聚合鏈?zhǔn)欠裢琁D,如果 一個(gè)條件成立,轉(zhuǎn)到3. 11),否者轉(zhuǎn)到3. 8);.3.8)判斷能否將待處理報(bào)文組裝到緩存隊(duì)里內(nèi)的聚合鏈中。如果當(dāng)前待處理數(shù)據(jù)包 是單節(jié)點(diǎn)多數(shù)據(jù)聚合類(lèi)型且和聚合鏈同ID,如果同時(shí)成立轉(zhuǎn)到3. 9),否者轉(zhuǎn)到3. 11);.3.9)將待處理的數(shù)據(jù)包插入聚合鏈,轉(zhuǎn)到3.10);.3. 10)判斷聚合鏈?zhǔn)欠癯^(guò)了聚合閥值要求,即聚合鏈長(zhǎng)度達(dá)到最大聚合長(zhǎng)度,聚合 鏈數(shù)據(jù)包個(gè)數(shù)達(dá)到最大聚合鏈數(shù)據(jù)包個(gè)數(shù),如果上面兩個(gè)條件有一個(gè)成立,轉(zhuǎn)到3. 15),否 者轉(zhuǎn)到3. 11);.3. 11)根據(jù)待發(fā)送數(shù)據(jù)包類(lèi)型,設(shè)置發(fā)送信息,轉(zhuǎn)到3. 12);.3.12)判斷緩存隊(duì)列是否為空,如果為空轉(zhuǎn)到3.15),否者轉(zhuǎn)到3. 13);.3.13)判斷緩存隊(duì)列是否設(shè)置了定時(shí)器,如果有轉(zhuǎn)到3.14),否者轉(zhuǎn)到3. 15); 3. 14)刪除定時(shí)器;.3. 15)系統(tǒng)執(zhí)行結(jié)束。
全文摘要
本發(fā)明涉及一種傳感器網(wǎng)絡(luò)數(shù)據(jù)聚合的實(shí)現(xiàn)方法,步驟1)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)信息表的初始化創(chuàng)建完成當(dāng)前傳感器網(wǎng)絡(luò)中已經(jīng)存在的節(jié)點(diǎn)信息表的建立;步驟2)在傳感器節(jié)點(diǎn)信息表中添加新節(jié)點(diǎn)信息當(dāng)收到傳感器數(shù)據(jù)時(shí),提取節(jié)點(diǎn)ID,并根據(jù)節(jié)點(diǎn)ID計(jì)算哈希值,根據(jù)計(jì)算出的哈希值在信息表中查找該傳感器節(jié)點(diǎn)信息,如果沒(méi)有找到,創(chuàng)建該節(jié)點(diǎn)信息實(shí)體,并插入信息表中;步驟3)對(duì)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合調(diào)度在傳感節(jié)點(diǎn)信息表中找到對(duì)應(yīng)的節(jié)點(diǎn)信息結(jié)構(gòu)實(shí)體,根據(jù)信息結(jié)構(gòu)實(shí)體當(dāng)中聚合表示位的值,判斷是否滿(mǎn)足聚合條件,選擇是以聚合報(bào)文鏈方式發(fā)送還是單數(shù)據(jù)包直接發(fā)送,對(duì)于滿(mǎn)足聚合條件的數(shù)據(jù)包,根據(jù)聚合閥值進(jìn)行組裝成聚合鏈發(fā)送。
文檔編號(hào)H04W28/02GK101990238SQ20101053260
公開(kāi)日2011年3月23日 申請(qǐng)日期2010年11月5日 優(yōu)先權(quán)日2010年11月5日
發(fā)明者唐暉, 唐鼎, 秦小偉, 譚紅艷, 趙志軍, 陳程 申請(qǐng)人:中國(guó)科學(xué)院聲學(xué)研究所
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1