T),選擇可以使用的信道(CJJSE),并將此信息加入到路由信息中,使用公共控制信道進(jìn)行本地廣播,尋找節(jié)點(diǎn)B。
[0061]在該步驟中,A的干擾范圍內(nèi)的所有鄰居節(jié)點(diǎn)都會(huì)收到A的路由信息,并根據(jù)收到的信息更新自己的CIT。這樣節(jié)點(diǎn)A干擾范圍以內(nèi)的節(jié)點(diǎn)可以根據(jù)自己的CIT分配其他信道;A干擾范圍以外的節(jié)點(diǎn)如果監(jiān)聽(tīng)到控制信道被使用,則采用規(guī)避算法等待信道讓出,直到此信道被讓出。
[0062]S203、節(jié)點(diǎn)B收到路由信息包后,根據(jù)收到的信道信息查詢自己CIT中的當(dāng)前被占用信道(C_CUR),確定能夠使用的信道C_USE,更新自身的CIT,并以此信道進(jìn)行通信。
[0063]S204、當(dāng)通信完畢后,節(jié)點(diǎn)A通知節(jié)點(diǎn)B信道C_USE使用完畢,讓出此信道的控制權(quán),兩個(gè)節(jié)點(diǎn)更新CIT。
[0064]以上步驟便是本發(fā)明實(shí)施例中多通信節(jié)點(diǎn)之間進(jìn)行通信時(shí)的一個(gè)完整的信道分配及通信過(guò)程。
[0065]下面我們將結(jié)合附圖,通過(guò)具體實(shí)施例進(jìn)一步詳細(xì)介紹節(jié)點(diǎn)間判斷信道信息和路由信息的過(guò)程。如圖3、圖4所示。
[0066]其中圖3為路由發(fā)起階段。每個(gè)節(jié)點(diǎn)有一個(gè)CIT表,CIT中各個(gè)數(shù)據(jù)的初始值均為0。當(dāng)節(jié)點(diǎn)A要建立與D節(jié)點(diǎn)的路由時(shí),通過(guò)以下步驟完成:
[0067]S301、節(jié)點(diǎn)A選擇可以使用的信道作為預(yù)約信道,然后源節(jié)點(diǎn)A在控制信道上廣播一個(gè)攜帶信道狀態(tài)信息的RREQ消息(S卩,本發(fā)明方案中的路由信息)給下一跳鄰居節(jié)點(diǎn)B。
[0068]S302、節(jié)點(diǎn)B從接收到源節(jié)點(diǎn)A的RREQ后,通過(guò)對(duì)比自己的信道信息表,得出可以使用的信道,并計(jì)算信道預(yù)約時(shí)間T_PRE。
[0069]S302、節(jié)點(diǎn)B更新自己的相應(yīng)的數(shù)據(jù),選擇另一個(gè)可用信道作為預(yù)約信道與下一個(gè)節(jié)點(diǎn)進(jìn)行下一步協(xié)調(diào)工作,并將更新后信道信息和預(yù)約時(shí)間的值附在RREQ中,廣播給下一跳鄰居節(jié)點(diǎn)C。
[0070]S303、當(dāng)C節(jié)點(diǎn)收到B的信息后,如B節(jié)點(diǎn)處理后廣播給下一跳節(jié)點(diǎn)D。
[0071]S304、節(jié)點(diǎn)D接收到節(jié)點(diǎn)C的RREQ后,通過(guò)對(duì)比自己的信道信息表,得出可以使用的信道,并計(jì)算信道預(yù)約時(shí)間!^?!?。然后,節(jié)點(diǎn)D更新自己的CIT表。由于D是目的節(jié)點(diǎn),不需要再轉(zhuǎn)發(fā)RREQ。
[0072]圖4所示為當(dāng)每個(gè)節(jié)點(diǎn)都有可以使用的信道可以選擇時(shí),節(jié)點(diǎn)D向節(jié)點(diǎn)A發(fā)送RREP包的過(guò)程。如圖所示,每個(gè)節(jié)點(diǎn)將自己信道信息附在RREP中向上一跳節(jié)點(diǎn)進(jìn)行回復(fù),建立反向鏈路。此時(shí),整個(gè)鏈路的信道則分配完畢。由于每?jī)蓚€(gè)節(jié)點(diǎn)之間的鏈路都使用了不同的信道,所以避免了干擾。
[0073]至此,子網(wǎng)絡(luò)內(nèi)的一次節(jié)點(diǎn)間的鏈路建立結(jié)束,當(dāng)每個(gè)子網(wǎng)絡(luò)的鏈路為最優(yōu)時(shí),整個(gè)網(wǎng)絡(luò)的鏈路為最優(yōu)。
[0074]為了達(dá)到上述目的,本發(fā)明還提出了一種信道分配系統(tǒng)01,如圖5所示,該系統(tǒng)包括:第一處理模塊02、第二處理模塊03、第三處理模塊04。
[0075]第一處理模塊02,用于檢查自身保存的信道信息表;根據(jù)信道信息表中的數(shù)據(jù)選擇可以使用的信道,并更新自身的信道信息表;將更新后的信道信息表的信息加入第一路由信息中,通過(guò)公共控制信道對(duì)第一路由信息進(jìn)行本地廣播。
[0076]第二處理模塊03,用于接收到第一路由信息后檢查自身保存的信道信息表,根據(jù)信道信息表中的數(shù)據(jù)選擇可以使用的信道,并更新自身的信道信息表;將更新后的信道信息表的信息加入第二路由信息中,通過(guò)公共控制信道對(duì)第二路由信息進(jìn)行本地廣播。
[0077]第三處理模塊04,用于接收到第二路由信息后檢查自身保存的信道信息表,根據(jù)信道信息表中的數(shù)據(jù)選擇可以使用的信道,并更新自身的信道信息表;將更新后的信道信息表的信息加入第三路由信息中,通過(guò)公共控制信道對(duì)第三路由信息進(jìn)行本地廣播。
[0078]其中,第一處理模塊02包含在第一節(jié)點(diǎn)中,第二處理模塊03包含在第二節(jié)點(diǎn)中,第三處理模塊04包含在第三節(jié)點(diǎn)中。
[0079]優(yōu)選地,該系統(tǒng)還包括:確定模塊05。
[0080]通過(guò)公共控制信道對(duì)路由信息進(jìn)行本地廣播后,以路由信息相對(duì)應(yīng)的節(jié)點(diǎn)為中心,在預(yù)設(shè)的中心的干擾范圍內(nèi)的全部節(jié)點(diǎn)都能接收到所述路由信息。
[0081]確定模塊05,用于并根據(jù)接收到的路由信息確定自己是否為路由信息中所包含的下一跳節(jié)點(diǎn),當(dāng)確定自己不是下一跳節(jié)點(diǎn)時(shí),在分配信道時(shí),根據(jù)自身所保存的信道信息表選擇該路由信息中包含的信道以外的其他信道,并更新自身所保存的信道信息表。
[0082]優(yōu)選地,該系統(tǒng)還包括:等待模塊06 ;等待模塊06,用于在預(yù)設(shè)的中心的干擾范圍以外的節(jié)點(diǎn)監(jiān)聽(tīng)到公共控制信道被使用時(shí),采取規(guī)避算法等待公共控制信道被讓出。
[0083]優(yōu)選地,該系統(tǒng)還包括:計(jì)算模塊07和釋放模塊08。
[0084]計(jì)算模塊07,處于通信中的每一跳節(jié)點(diǎn)接收到上一跳節(jié)點(diǎn)的路由信息時(shí),根據(jù)自身的通道信息表獲得一個(gè)可以使用的信道后,計(jì)算通道的預(yù)約時(shí)間,并將預(yù)約時(shí)間記錄在該節(jié)點(diǎn)相對(duì)應(yīng)的路由信息中;并且選擇另一個(gè)可以使用的信道,計(jì)算另一個(gè)可以使用的通道的預(yù)約時(shí)間,并將另一個(gè)可以使用的通道的預(yù)約時(shí)間記錄在該節(jié)點(diǎn)相對(duì)應(yīng)的路由信息中;其中,另一個(gè)可以使用的通道是當(dāng)前節(jié)點(diǎn)與下一跳節(jié)點(diǎn)的預(yù)約通道。
[0085]釋放模塊08,用于當(dāng)通信結(jié)束時(shí),每一跳節(jié)點(diǎn)釋放所選擇的通道的控制權(quán),并再次更新自身所保存的信道信息表。
[0086]優(yōu)選地,該系統(tǒng)還包括:反饋模塊09。
[0087]反饋模塊09,用于當(dāng)通信中的每一跳節(jié)點(diǎn)根據(jù)自身所保存的信道信息表都能夠獲得可以使用的信道時(shí),根據(jù)獲得可以使用的信道建立反向通道,向源節(jié)點(diǎn)發(fā)送反饋信息;其中,在反向通道上的每一跳節(jié)點(diǎn)依次將自身所保存的信道信息表的信息加入反饋信息中。
[0088]與現(xiàn)有技術(shù)相比,本發(fā)明包括:需要通信的第一節(jié)點(diǎn)檢查自身保存的信道信息表;根據(jù)所述信道信息表中的數(shù)據(jù)選擇可以使用的信道,并更新自身的信道信息表;將更新后的信道信息表的信息加入第一路由信息中,通過(guò)公共控制信道對(duì)第一路由信息進(jìn)行本地廣播。第二節(jié)點(diǎn)接收到所述第一路由信息后檢查自身保存的信道信息表,根據(jù)所述信道信息表中的數(shù)據(jù)選擇可以使用的信道,并更新自身的信道信息表;將更新后的信道信息表的信息加入第二路由信息中,通過(guò)公共控制信道對(duì)所述第二路由信息進(jìn)行本地廣播。第三節(jié)點(diǎn)接收到第二路由信息后檢查自身保存的信道信息表,根據(jù)所述信道信息表中的數(shù)據(jù)選擇可以使用的信道,并更新自身的信道信息表;將更新后的信道信息表的信息加入第三路由信息中,通過(guò)公共控制信道對(duì)所述第三路由信息進(jìn)行本地廣播;直至路由信息到達(dá)目的節(jié)點(diǎn)。其中,第一節(jié)點(diǎn)為源節(jié)點(diǎn),第二節(jié)點(diǎn)為所述第一信道中第一節(jié)點(diǎn)的下一跳節(jié)點(diǎn);第三節(jié)點(diǎn)為第二信道中第二節(jié)點(diǎn)的下一跳節(jié)點(diǎn);第一節(jié)點(diǎn)、第二節(jié)點(diǎn)、第三節(jié)點(diǎn)和目的節(jié)點(diǎn)都包含在一個(gè)最小子網(wǎng)絡(luò)內(nèi),最小子網(wǎng)絡(luò)是預(yù)先根據(jù)貪心算法將整個(gè)網(wǎng)絡(luò)進(jìn)行劃分后獲得的多個(gè)能夠通信的最小網(wǎng)絡(luò),每一個(gè)最小網(wǎng)絡(luò)作為一個(gè)最小子網(wǎng)絡(luò)。通過(guò)本發(fā)明的方案,能夠有效降低網(wǎng)絡(luò)干擾,提升網(wǎng)絡(luò)容量。
[0089]總之,本發(fā)明的有益效果是:(1)將網(wǎng)絡(luò)劃分成若干最優(yōu)子網(wǎng)絡(luò)。(2)信道只有在有需要時(shí)才被分配,使用完后則被釋放,不會(huì)造成信道的浪費(fèi)。(3)利用跨層設(shè)計(jì)的思想,在路由協(xié)議中增加MAC層的信道信息,使節(jié)點(diǎn)能夠根據(jù)當(dāng)前網(wǎng)絡(luò)的容量進(jìn)行路由,合理地分配信道。⑷算法中的每個(gè)節(jié)點(diǎn)只需要和自身信號(hào)干擾內(nèi)的節(jié)點(diǎn)交換信息,對(duì)范圍外的節(jié)點(diǎn)沒(méi)有影響