張 超 黃友銳 陳珍萍
1(安徽理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 安徽 淮南 232001)2(安徽理工大學(xué)電氣與信息工程學(xué)院 安徽 淮南 232001)3(蘇州科技大學(xué)電氣與信息工程學(xué)院 江蘇 蘇州 215009)
時(shí)間同步是無(wú)線傳感器網(wǎng)絡(luò)的一項(xiàng)基本技術(shù),也是一項(xiàng)極為重要的技術(shù)。時(shí)間同步是許多關(guān)鍵技術(shù)的基礎(chǔ),比如節(jié)點(diǎn)定位、數(shù)據(jù)融合、休眠調(diào)度和TDMA(Time Division Multiple Address)時(shí)間調(diào)度。無(wú)線傳感器網(wǎng)絡(luò)的主要作用是感知周圍的環(huán)境并將獲取的信息發(fā)送到處理中心以進(jìn)行進(jìn)一步處理[1]。由于無(wú)線傳感器網(wǎng)絡(luò)具有規(guī)模大、動(dòng)態(tài)性、能量有限、環(huán)境復(fù)雜等特點(diǎn)[2]。因此對(duì)于一些需要較高計(jì)算開(kāi)銷和較大能耗的網(wǎng)絡(luò)時(shí)間同步協(xié)議,比如網(wǎng)絡(luò)時(shí)間協(xié)議(Network Time Protocol,NTP)和全球定位系統(tǒng)(Global Position System,GPS),并不適用于WSN中。故必須設(shè)計(jì)針對(duì)WSN的時(shí)間同步算法,這將具有重要的理論意義和應(yīng)用價(jià)值。
現(xiàn)有的WSN時(shí)間同步算法可分為集中式算法和分類式算法兩類。集中式同步算法又可分為以下三種類型:(1) 基于僅發(fā)送端(ROS)的時(shí)間同步算法,比如延遲測(cè)量時(shí)間同步(Delay Measurement Time Synchronization,DMTS)[3]和洪泛時(shí)間同步協(xié)議(Flooding Time Synchronization Protocol,FTSP)[4]。該類同步算法實(shí)現(xiàn)簡(jiǎn)單、功耗較低,但是有一定的同步誤差。(2) 基于發(fā)送端-接收端(SRS)的時(shí)間同步,典型的算法就是TPSN(Timing-Sync Protocol for Sensor Network)[5]算法。它將NTP算法思想應(yīng)用到WSN中,具有相當(dāng)高的同步精度,且能夠很好地應(yīng)用到多跳傳感器網(wǎng)絡(luò)中去,但是功耗和開(kāi)銷也相當(dāng)大。(3) 基于接收端-接收端(RRS)的時(shí)間同步,代表算法就是參考廣播同步(Reference Broadcasting Synchronization,RBS)[6]算法。該算法最大的特點(diǎn)就是消除了影響同步精度的接入延遲和發(fā)送延遲,以此來(lái)保證同步精度,但是卻很難應(yīng)用到多跳網(wǎng)絡(luò)中去。在分布式同步算法中,主要有利用調(diào)整脈沖信號(hào)間隔來(lái)與周圍節(jié)點(diǎn)同步的螢火蟲(chóng)同步算法,還有通過(guò)利用鄰居節(jié)點(diǎn)信息交互來(lái)同步的一致性同步算法。
以上集中式算法能較好地應(yīng)用于單跳網(wǎng)絡(luò)中,但是應(yīng)用到多跳網(wǎng)絡(luò)中會(huì)存在比較大的缺陷,存在擴(kuò)展性和魯棒性以及開(kāi)銷大的問(wèn)題[7]。比如若將TPSN算法應(yīng)用到多跳網(wǎng)絡(luò)中,當(dāng)跳數(shù)較少時(shí)同步精度尚可,而當(dāng)跳數(shù)較多時(shí)累計(jì)誤差較大。而且節(jié)點(diǎn)之間需要頻繁通信,需要的通信開(kāi)銷非常大,所以有必要具體研究針對(duì)多跳網(wǎng)絡(luò)的時(shí)間同步算法。文獻(xiàn)[8]提出的LECTS(Low Energy Consumption Time Synchronization)算法雖然能有效降低節(jié)點(diǎn)的同步開(kāi)銷且可以應(yīng)用到多跳網(wǎng)絡(luò)中,但是同步精度卻非常低。文獻(xiàn)[9]將整個(gè)網(wǎng)絡(luò)分為主網(wǎng)絡(luò)和次網(wǎng)絡(luò),以簇首節(jié)點(diǎn)形成的網(wǎng)絡(luò)稱為主網(wǎng)絡(luò),單簇內(nèi)的所有節(jié)點(diǎn)形成的網(wǎng)絡(luò)稱為次網(wǎng)絡(luò)。在主網(wǎng)絡(luò)中使用類似于TPSN算法同步方式進(jìn)行同步,在次網(wǎng)絡(luò)中使用類似于DMTS算法同步方式進(jìn)行同步。將這兩種同步方式的有效結(jié)合減少了同步開(kāi)銷,但是并未消除TPSN算法累積誤差大的問(wèn)題。本文在文獻(xiàn)[8]和文獻(xiàn)[9]算法基礎(chǔ)上提出一種改進(jìn)的低能耗多跳時(shí)間同步算法(Low-energy Multi-hop Time Synchronization,LMTS),該算法在主網(wǎng)絡(luò)中估計(jì)簇首節(jié)點(diǎn)時(shí)鐘頻偏和相偏來(lái)保證同步精度,在次網(wǎng)絡(luò)中將ROS和SRS方法相結(jié)合來(lái)降低同步能量的消耗。
為了解決同步精度和能量消耗之間平衡的問(wèn)題,LMTS算法基于分簇網(wǎng)絡(luò)實(shí)現(xiàn)全局時(shí)間同步。算法將網(wǎng)絡(luò)中節(jié)點(diǎn)分為匯聚節(jié)點(diǎn)、簇首節(jié)點(diǎn)和普通節(jié)點(diǎn)三種類型,以簇首節(jié)點(diǎn)和匯聚節(jié)點(diǎn)生成的網(wǎng)絡(luò)稱為主網(wǎng)絡(luò),單個(gè)簇所生成的網(wǎng)絡(luò)稱為次網(wǎng)絡(luò)。LMTS算法分為兩個(gè)階段,分別為拓?fù)渖呻A段和時(shí)間同步階段。
在網(wǎng)絡(luò)拓?fù)渖蛇^(guò)程中,由于采用有效的拓?fù)渖刹呗阅軌蚱胶庹麄€(gè)網(wǎng)絡(luò)節(jié)點(diǎn)能量的消耗[10]。在文獻(xiàn)[11]提出的非均勻分簇方法基礎(chǔ)上,本文LMTS算法進(jìn)行簇首節(jié)點(diǎn)的選舉,以及動(dòng)態(tài)拓?fù)涞纳伞T谶M(jìn)行簇首節(jié)點(diǎn)的選舉時(shí),采用基于定時(shí)器的選舉方法,全局網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)自身相對(duì)剩余能量和與匯聚節(jié)點(diǎn)的距離設(shè)置競(jìng)爭(zhēng)簇首的等待時(shí)間,等待時(shí)間越小則競(jìng)爭(zhēng)成功概率越大。在競(jìng)爭(zhēng)簇首成功后,普通節(jié)點(diǎn)再選擇加入距離最近且通信半徑更大的簇。
簇首節(jié)點(diǎn)的選擇過(guò)程為:首先,匯聚節(jié)點(diǎn)廣播一個(gè)消息包分組,包中包含自身ID、層次號(hào)level和消息包序號(hào)Seq,其他節(jié)點(diǎn)在接收到該消息包后,根據(jù)信號(hào)的強(qiáng)度(RSSI)計(jì)算出與匯聚節(jié)點(diǎn)的距離[12];然后,開(kāi)啟定時(shí)器競(jìng)選簇首,當(dāng)成功競(jìng)選后,則向周圍節(jié)點(diǎn)發(fā)送廣播消息宣布成功競(jìng)選,當(dāng)其他節(jié)點(diǎn)接收到該消息后,未能成功競(jìng)選的節(jié)點(diǎn)立即清零定時(shí)器并退出競(jìng)爭(zhēng),如此可實(shí)現(xiàn)第一層次簇首節(jié)點(diǎn)的選擇;其他層次節(jié)點(diǎn)也重復(fù)上述競(jìng)選過(guò)程,直到選出全部簇首節(jié)點(diǎn)。
當(dāng)簇首節(jié)點(diǎn)競(jìng)選完成后,普通節(jié)點(diǎn)再根據(jù)到簇首節(jié)點(diǎn)的距離來(lái)選擇自己加入的簇。當(dāng)與多個(gè)簇首相等時(shí),則選擇加入通信半徑更大的簇。最后生成的網(wǎng)絡(luò)拓?fù)淙鐖D1所示,其中:“*”表示匯聚節(jié)點(diǎn),“+”表示簇首節(jié)點(diǎn),其余為普通節(jié)點(diǎn)。
圖1 網(wǎng)絡(luò)拓?fù)鋱D
LMTS算法將網(wǎng)絡(luò)拓?fù)鋭澐譃橹骶W(wǎng)絡(luò)和次網(wǎng)絡(luò)兩種類型,在主網(wǎng)絡(luò)中簇首節(jié)點(diǎn)通過(guò)SRS方法進(jìn)行同步,在次網(wǎng)絡(luò)中普通節(jié)點(diǎn)采用SRS和ROS相結(jié)合的方式與簇首節(jié)點(diǎn)進(jìn)行同步。通過(guò)這種方式進(jìn)行同步,能夠在保證同步精度的同時(shí)有效降低了同步能耗,也緩解了ROS方法累積誤差大的問(wèn)題。
1.2.1 主網(wǎng)絡(luò)同步
在主網(wǎng)絡(luò)中,簇首節(jié)點(diǎn)間通過(guò)雙向時(shí)間戳消息交換機(jī)制來(lái)估計(jì)節(jié)點(diǎn)的時(shí)鐘頻偏和時(shí)鐘相偏,從而完成節(jié)點(diǎn)的同步[13]。同步信息交換模型如圖2所示。
圖2 時(shí)間戳交換模型
圖2中,假設(shè)A為參考節(jié)點(diǎn),B為待同步節(jié)點(diǎn),A、B節(jié)點(diǎn)存在時(shí)鐘頻偏和時(shí)鐘相偏。信息交換的時(shí)間戳T1,k、T4,k均以節(jié)點(diǎn)A的本地時(shí)鐘為基準(zhǔn),T2,k、T3,k均以節(jié)點(diǎn)B的本地時(shí)鐘為基準(zhǔn),k表示第k次消息交換。在T1,k時(shí)刻,節(jié)點(diǎn)A向節(jié)點(diǎn)B發(fā)送同步請(qǐng)求分組,節(jié)點(diǎn)B在T2,k時(shí)刻接收到該分組,并在T3,k時(shí)刻回復(fù)一個(gè)包含{T1,k、T2,k、T3,k}的分組包,節(jié)點(diǎn)A在T4,k時(shí)刻接收到該分組包。
若以節(jié)點(diǎn)A為標(biāo)準(zhǔn)時(shí)間,則B節(jié)點(diǎn)時(shí)間戳T2,k可表示為:
T2,k=ω(T1,k+d+Xk)+φ
(1)
B節(jié)點(diǎn)的第k次下行信息的時(shí)間戳T3,k為:
T3,k=ω(T4,k-d-Yk)+φ
(2)
式中:d表示傳輸過(guò)程中的固定延遲;Xk和Yk分別表示第k次上行和下行過(guò)程中的隨機(jī)延遲;ω表示B節(jié)點(diǎn)相對(duì)于A節(jié)點(diǎn)的相對(duì)頻偏;φ表示B節(jié)點(diǎn)相對(duì)于A節(jié)點(diǎn)的相對(duì)相偏。
fX,Y(x,y)=(2πσ2)-N×
(3)
L(φ,ω,σ2)=(2πσ2)-N×
(4)
通過(guò)對(duì)式(4)求解可得時(shí)鐘相偏和時(shí)鐘頻偏的聯(lián)合最大似然估計(jì)為:
(5)
(6)
以上描述了主網(wǎng)絡(luò)中單跳時(shí)同步方法。當(dāng)擴(kuò)展到多跳網(wǎng)絡(luò)中時(shí),利用上述拓?fù)渖煞椒ㄉ扇鐖D3所示的主網(wǎng)絡(luò)拓?fù)洹J紫鹊谝粚哟厥坠?jié)點(diǎn)利用上述的同步方式與匯聚節(jié)點(diǎn)保持同步,當(dāng)同步完成后,第二層簇首節(jié)點(diǎn)再通過(guò)這種同步方式與第一層簇首節(jié)點(diǎn)進(jìn)行同步。按照此同步方式依次進(jìn)行下去,直至主網(wǎng)絡(luò)中所有節(jié)點(diǎn)都能與匯聚節(jié)點(diǎn)保持同步。因?yàn)樵谕竭^(guò)程中調(diào)整了時(shí)鐘頻偏和相偏,故而能很好地保證同步精度,同時(shí)也為每個(gè)簇首節(jié)點(diǎn)下的次網(wǎng)絡(luò)同步提供了同步精度的保障。
圖3 主網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
1.2.2 次網(wǎng)絡(luò)同步
在主網(wǎng)絡(luò)中節(jié)點(diǎn)完成同步后,簇首節(jié)點(diǎn)啟動(dòng)次網(wǎng)絡(luò)的同步。根據(jù)自身剩余能量和與簇首節(jié)點(diǎn)距離,次網(wǎng)絡(luò)中節(jié)點(diǎn)以競(jìng)爭(zhēng)簇首的方式來(lái)競(jìng)爭(zhēng)成為回應(yīng)節(jié)點(diǎn),簇首節(jié)點(diǎn)與回應(yīng)節(jié)點(diǎn)進(jìn)行雙向交換時(shí)間同步,其余節(jié)點(diǎn)基于偵聽(tīng)的方式間接同步到簇首節(jié)點(diǎn)。圖4描述了次網(wǎng)絡(luò)的同步模型。
圖4 次網(wǎng)絡(luò)同步模型
圖4中,假設(shè)節(jié)點(diǎn)B成功競(jìng)選為回應(yīng)節(jié)點(diǎn)后。同步過(guò)程如下:簇首節(jié)點(diǎn)P在TP1時(shí)刻廣播同步請(qǐng)求分組,簇內(nèi)節(jié)點(diǎn)A、B、C接收到該分組并標(biāo)記接收時(shí)刻TA2、TB2、TC2,回應(yīng)節(jié)點(diǎn)B在TB3時(shí)刻發(fā)送反饋分組,分組中包含TB1、TB2和TB3,節(jié)點(diǎn)P在TP4時(shí)刻接收到該分組后在TP5時(shí)刻再次發(fā)送包含{TP1、TB2、TB3、TP4、TP5}的消息包,簇內(nèi)節(jié)點(diǎn)A、B、C接收到該分組并標(biāo)記接收時(shí)刻TA6、TB6、TC6。由于傳播延遲極小故可忽略不計(jì),因此假設(shè)在第一個(gè)過(guò)程中A、B、C同時(shí)收到P節(jié)點(diǎn)發(fā)送的請(qǐng)求分組,故A、C與B的時(shí)間差可由下式計(jì)算:
ΔAB=TB2-TA2
(7)
ΔCB=TB2-TC2
(8)
在鏈路對(duì)稱的情況下,節(jié)點(diǎn)B根據(jù)時(shí)間戳{TP1、TB2、TB3、TP4、TP5、TB6}可由下式得到其與簇首節(jié)點(diǎn)之間的分組延遲時(shí)間。
(9)
故A、C節(jié)點(diǎn)與簇首節(jié)點(diǎn)P的時(shí)間差分別為:
ΔAP=ΔAB+ΔBP
(10)
ΔCP=TCB+ΔBP
(11)
則校正自身時(shí)間偏差為T=t+ΔnP,即可以與簇首節(jié)點(diǎn)進(jìn)行同步,其中:t為節(jié)點(diǎn)本地時(shí)間,n為次網(wǎng)絡(luò)中普通節(jié)點(diǎn)編號(hào)。
以上描述了單個(gè)次網(wǎng)絡(luò)中普通節(jié)點(diǎn)與簇首節(jié)點(diǎn)的同步方式,其他次網(wǎng)絡(luò)也采用這種同步方式與簇首節(jié)點(diǎn)進(jìn)行同步。因?yàn)樵谥骶W(wǎng)絡(luò)同步結(jié)束后簇首節(jié)點(diǎn)與匯聚節(jié)點(diǎn)保持了同步,所以次網(wǎng)絡(luò)同步結(jié)束后所有普通節(jié)點(diǎn)也相當(dāng)于間接與匯聚節(jié)點(diǎn)保持了同步。
至此,主網(wǎng)絡(luò)和次網(wǎng)絡(luò)中所有節(jié)點(diǎn)最終都和匯聚節(jié)點(diǎn)進(jìn)行了同步,保證了全局網(wǎng)絡(luò)時(shí)間的一致性。
為了驗(yàn)證本文所提LMTS算法的性能,在MATLAB平臺(tái)上進(jìn)行了算法的仿真驗(yàn)證,并與TPSN算法和LECTS算法進(jìn)行性能的比較。在250 m×250 m的正方形區(qū)域內(nèi),隨機(jī)部署100個(gè)節(jié)點(diǎn),匯聚節(jié)點(diǎn)部署在區(qū)域中心。仿真中考慮了時(shí)鐘頻偏對(duì)節(jié)點(diǎn)時(shí)間的影響,節(jié)點(diǎn)的頻率偏移量為0~30×10-6,隨機(jī)延遲設(shè)置為0~30 μs,構(gòu)建簇狀網(wǎng)絡(luò)進(jìn)行仿真實(shí)驗(yàn)。
圖5給出了不同跳數(shù)下不同算法的平均同步精度的變化。通過(guò)仿真結(jié)果可以看出,當(dāng)跳數(shù)大于3時(shí),本文算法同步精度要高于TPSN算法和LECTS算法。且隨著跳數(shù)的增多,LMTS算法的優(yōu)勢(shì)變得更加明顯。因?yàn)樗谥骶W(wǎng)絡(luò)中有效估計(jì)了頻偏和相偏,從而能夠長(zhǎng)期有效地精確同步,而TPSN和LECTS由于節(jié)點(diǎn)頻偏和跳數(shù)增加產(chǎn)生的累積誤差影響了同步精度。同時(shí)隨著同步報(bào)文數(shù)的增多,TPSN算法收斂速度也會(huì)變得很慢。
圖5 不同跳數(shù)下同步誤差對(duì)比
圖6給出了在不同節(jié)點(diǎn)數(shù)下三種同步算法的同步誤差變化量的對(duì)比。同時(shí)表1也是利用統(tǒng)計(jì)學(xué)統(tǒng)計(jì)了各個(gè)算法所有觀察次數(shù)的平均同步誤差、同步誤差標(biāo)準(zhǔn)差、最大同步誤差和最小同步誤差。可以看出,由于是單跳情況,TPSN算法和LECTS算法不存在累積誤差,所以LMTS優(yōu)勢(shì)并不明顯,但同步精度也優(yōu)于LECTS算法。雖然同步精度次于TPSN算法,但同步開(kāi)銷相對(duì)于TPSN算法來(lái)說(shuō)有極大的優(yōu)勢(shì)。
圖6 同步精度隨同步節(jié)點(diǎn)數(shù)變化趨勢(shì)
表1 不同算法同步精度對(duì)比 μs
由于傳感器節(jié)點(diǎn)一般成本都比較低,通常置于復(fù)雜的環(huán)境中,因此更換電池是不現(xiàn)實(shí)且沒(méi)必要的,所以節(jié)點(diǎn)能量是有限的。而節(jié)點(diǎn)的能量主要是在發(fā)射、接收及偵聽(tīng)的過(guò)程中所消耗的[14]。因此本文主要通過(guò)節(jié)點(diǎn)在信息傳輸時(shí)需要發(fā)送和接收的報(bào)文數(shù)量來(lái)衡量節(jié)點(diǎn)的能量消耗。參照文獻(xiàn)[15]提出的能耗模型來(lái)計(jì)算能耗開(kāi)銷,并給出發(fā)送(ETx)和接收(ERx)比特?cái)?shù)為k、距離為d的數(shù)據(jù)包所消耗的能量的計(jì)算公式:
(12)
ERx=k×Eelec
(13)
式(12)表示節(jié)點(diǎn)發(fā)送kbit數(shù)據(jù)時(shí)消耗的能量。式中:Eelct為節(jié)點(diǎn)發(fā)送或接收每比特?cái)?shù)據(jù)所消耗的能量;εfs和εmp分別為兩種不同信道傳播模型下的功率放大電路能耗系數(shù);d表示發(fā)送節(jié)點(diǎn)和接收節(jié)點(diǎn)間的距離,當(dāng)d小于閾值d0時(shí),采用自由空間模型,當(dāng)發(fā)送距離d大于等于d0時(shí),采用多路徑衰減模型。式(13)表示節(jié)點(diǎn)接收kbit數(shù)據(jù)的能耗。
在TPSN算法中,所有節(jié)點(diǎn)都需要雙向交換數(shù)據(jù)包才能同步,每個(gè)節(jié)點(diǎn)在發(fā)送和接收?qǐng)?bào)文時(shí)都要消耗能量。而LMTS算法中的簇內(nèi)節(jié)點(diǎn)只需要接收?qǐng)?bào)文而不需要發(fā)送報(bào)文,因此根據(jù)式(13)即可計(jì)算其接收能耗,且這些節(jié)點(diǎn)又都在參考節(jié)點(diǎn)的一跳范圍之內(nèi),因此可以采用式(12)的自由空間模型來(lái)計(jì)算簇首節(jié)點(diǎn)的發(fā)送能耗。本文算法在應(yīng)用到大規(guī)模網(wǎng)絡(luò)時(shí)相比于TPSN算法能大大降低能耗。
本文同時(shí)從同步過(guò)程中消息發(fā)送和接收數(shù)量上對(duì)TPSN、LECTS和本文算法做了對(duì)比分析。假設(shè)一個(gè)網(wǎng)絡(luò)中有1個(gè)匯聚節(jié)點(diǎn)和N個(gè)待同步節(jié)點(diǎn),以及M個(gè)簇首節(jié)點(diǎn)。LMTS算法與其他同步算法如TPSN、LECTS算法在單次同步時(shí)所需要發(fā)送和接收的報(bào)文數(shù)如表2所示。
表2 不同算法同步報(bào)文開(kāi)銷對(duì)比
由表2可知,不同算法所需的能耗取決于節(jié)點(diǎn)發(fā)送和接收的報(bào)文數(shù),且節(jié)點(diǎn)發(fā)送和接收?qǐng)?bào)文時(shí)能耗也不同。無(wú)線射頻模塊CC2530在發(fā)送狀態(tài)下的電流消耗為29 mA,在接收狀態(tài)下為24 mA[16]。若假設(shè)該網(wǎng)絡(luò)中簇首節(jié)點(diǎn)數(shù)量M約為總節(jié)點(diǎn)數(shù)量N的30%,則由表2可計(jì)算出LMTS算法相比于TPSN算法能節(jié)省20.4%的能量[17]。
本文通過(guò)仿真實(shí)驗(yàn)對(duì)不同算法進(jìn)行對(duì)比分析。實(shí)驗(yàn)條件為將不同數(shù)目節(jié)點(diǎn)隨機(jī)放置在100 m×100 m的正方形區(qū)域內(nèi),節(jié)點(diǎn)的通信范圍為25 m,并假設(shè)參考節(jié)點(diǎn)放置在模擬區(qū)域的正中央。每次增加25個(gè)傳感器節(jié)點(diǎn),統(tǒng)計(jì)每次同步時(shí)不同算法所需要的消息包數(shù)目,結(jié)果如圖7所示。
圖7 同步消息包數(shù)目隨節(jié)點(diǎn)數(shù)變化趨勢(shì)
通過(guò)圖7可以看出,隨著節(jié)點(diǎn)數(shù)目的增多,三種算法所需的消息包數(shù)目都逐漸增加。因?yàn)門PSN算法中每個(gè)節(jié)點(diǎn)都需要進(jìn)行雙向同步,所以所需的消息包開(kāi)銷呈線性增加。而LMTS主要銷耗在主網(wǎng)絡(luò)的簇首節(jié)點(diǎn)間雙向同步上,次網(wǎng)絡(luò)中普通節(jié)點(diǎn)只需要接收而不用發(fā)送消息包,因此相比于TPSN算法能大大減少開(kāi)銷。LECTS在全網(wǎng)絡(luò)中都只需要進(jìn)行單向廣播,因此僅需極低的消息包交換數(shù)量,但也因此會(huì)帶來(lái)同步精度降低的問(wèn)題。
本文算法在主網(wǎng)絡(luò)中對(duì)簇首節(jié)點(diǎn)進(jìn)行時(shí)鐘頻偏和時(shí)鐘相偏進(jìn)行估計(jì),有效提高了簇首節(jié)點(diǎn)的同步精度,降低了整個(gè)網(wǎng)絡(luò)的累積誤差。在次網(wǎng)絡(luò)中結(jié)合SRS和ROS同步機(jī)制,使得在應(yīng)用到多跳網(wǎng)絡(luò)中時(shí)能夠減少節(jié)點(diǎn)同步開(kāi)銷,同時(shí)還能有效保證同步精度,并且有較好的可擴(kuò)展性。本文算法能夠有效平衡同步精度和能耗的關(guān)系,能夠有效應(yīng)用到能耗有限的大規(guī)模網(wǎng)絡(luò)中。但對(duì)于一些對(duì)同步精度要求極高的場(chǎng)合還需要針對(duì)次網(wǎng)絡(luò)的同步方法做進(jìn)一步優(yōu)化,這也是下一步的研究方向。