關(guān)于無線Mesh網(wǎng)絡(luò)信道分配策略的探討
這在發(fā)送廣播消息的時(shí)候會(huì)帶來時(shí)延。
4 信道切換延遲
當(dāng)一個(gè)節(jié)點(diǎn)的接口數(shù)目少于信道數(shù)目時(shí),信道切換則成為必然。但是,可以通過盡可能的減少無線接口上信道切換的次數(shù)來減小信道切換的開銷。實(shí)驗(yàn)中,每個(gè)節(jié)點(diǎn)有兩個(gè)無線接口和5 個(gè)信道。其中一個(gè)接口連接固定信道,而另外一個(gè)接口需要在其余的4 個(gè)信道間進(jìn)行切換。當(dāng)一個(gè)節(jié)點(diǎn)上的接口收到一個(gè)數(shù)據(jù)包時(shí),它會(huì)檢測需要往哪個(gè)信道上發(fā)送這個(gè)數(shù)據(jù)包。
如果在固定信道上發(fā)送,那么就交付給無線網(wǎng)卡來處理連接固定信道的接口來發(fā)送這個(gè)數(shù)據(jù)包。否則,如果數(shù)據(jù)包在可換接口的某條信道上發(fā)送,需要在可換接口上切換到發(fā)送數(shù)據(jù)包的指定信道上發(fā)送。它還需要決定何時(shí)可換接口切換到指定信道上。如果當(dāng)收到數(shù)據(jù)包后需要在不同的信道上進(jìn)行傳送,則它會(huì)在可換接口上不停切換信道到對應(yīng)信道上,這樣,信道切換帶來的開銷會(huì)非常高的。當(dāng)一個(gè)節(jié)點(diǎn)要發(fā)送多個(gè)數(shù)據(jù)流且這些數(shù)據(jù)流要經(jīng)過的下一跳信道不同時(shí)這種情況就會(huì)發(fā)生。此外,如果將一個(gè)數(shù)據(jù)包放在緩存區(qū)中等待可換接口切換到指定信道上的時(shí)間過長,這種時(shí)延也是導(dǎo)致系統(tǒng)性能降低的原因。
4.1 信道切換開銷的降低
本文采取的策略是在決定切換信道前先等待一段時(shí)間再在可換接口上切換信道,在這個(gè)信道上停留的最少時(shí)間是一段固定的時(shí)間,這段固定時(shí)間用chan_min_time 表示,默認(rèn)設(shè)置為20ms,同時(shí),還限定一個(gè)數(shù)據(jù)包的最大時(shí)延。這個(gè)策略的細(xì)節(jié)如下。
一 旦在可換接口上切換到另一個(gè)信道時(shí), 那么, 在這個(gè)信道上至少停留chan_min_time(默認(rèn)設(shè)置為20ms)。事實(shí)上,無論何時(shí)收到一幀數(shù)據(jù)需要在可換接口上傳輸時(shí),它會(huì)檢測該幀是否要在可換接口的當(dāng)前信道上傳輸。這時(shí),有兩種情況可能發(fā)生:
(1) 如果當(dāng)前可換接口連接的信道就是要發(fā)送該幀的信道,無線網(wǎng)卡直接發(fā)送此幀。這么做的前提是,可換接口上沒有其他幀正在等待發(fā)送到其他信道上并且發(fā)送此幀的時(shí)間開銷沒有超過該信道允許的最大時(shí)間(chan_max_time 默認(rèn)設(shè)置為60ms) 。
chan_max_time 為一幀數(shù)據(jù)在可換接口上的信道隊(duì)列中等待被發(fā)送的最大時(shí)間。
(2) 另一種情況是,如果當(dāng)前可換接口連接的信道不是要發(fā)送該幀的信道,那么,把該幀放到一個(gè)緩沖區(qū)中,同時(shí)啟動(dòng)一個(gè)定時(shí)器。定時(shí)器運(yùn)行chan_min_time 后,可換接口可能切換到發(fā)送該幀的信道上,新切換過來的信道就會(huì)把緩沖區(qū)的這幀數(shù)據(jù)處理掉。
要降低信道切換的時(shí)延,可換接口應(yīng)該花盡可能多的時(shí)間在不同信道上發(fā)送數(shù)據(jù)以及盡可能少的空閑時(shí)間和信道切換時(shí)間。為了降低信道切換的時(shí)延,本文約定可換接口上信道間切換最小時(shí)間間隔為chan_min_time。這么做是希望在信道上能夠發(fā)送更多的數(shù)據(jù),但是系統(tǒng)負(fù)載會(huì)增加。對于一個(gè)系統(tǒng)來說,如果一條信道上很輕的負(fù)載而其他信道上很重的負(fù)載,這是不合時(shí)宜的。
4.2 信道切換延遲對往返時(shí)間的影響
信道切換延遲影響著兩節(jié)點(diǎn)之間路徑的往返時(shí)間,往返時(shí)間用rtt 表示。由于建立的mesh 網(wǎng)絡(luò)節(jié)點(diǎn)分布密度相當(dāng)高,節(jié)點(diǎn)之間的傳播時(shí)間可以忽略不計(jì)。不同路徑的rtt 由這條路徑上不同節(jié)點(diǎn)間處理和傳輸數(shù)據(jù)包的時(shí)間決定,而不是由傳播時(shí)延決定。