接近開關三色法所形成的簇之間存在重疊區(qū)域。為了增大簇之間的間隔,減少重疊區(qū)域,接近開關的TOPDISC算法同時也提出了四色法。顧名思義,節(jié)點可以處于四種不同的狀態(tài),分別用白色、黑色、灰色和深灰色表示。前三種顏色代表的含義跟三色法相同,增加的深灰色表示節(jié)瞇收到過拓撲發(fā)現(xiàn)請求,但不被任何標記為黑色的節(jié)點覆蓋。
與三色法類似,在初始階段,所有節(jié)點都被標記為白色,算法由一個初始節(jié)點發(fā)起,算法結(jié)束后所有節(jié)點都將被標記為黑色或者灰色(前提假設整個網(wǎng)絡拓撲是連通的,注意最終沒有標記為深灰色的節(jié)點)。四色法的詳細過程描述如下:
1、初始節(jié)點被標記為黑色,并向網(wǎng)絡廣播拓撲發(fā)現(xiàn)請求;
2、當白色節(jié)點收到來自黑色節(jié)點的拓撲發(fā)現(xiàn)請求時,將被標記為灰色,并在延時時間TWB后繼續(xù)廣播拓撲發(fā)現(xiàn)請求,TWB反比于它與黑色節(jié)點之間的距離;
3、當白色節(jié)點收到來自灰色節(jié)點的拓撲發(fā)現(xiàn)請求時,將被標記為深灰色并繼續(xù)廣播拓撲發(fā)現(xiàn)請求,然后等待一段時間(同樣與距離成反比);如果在等待期間收到來自黑色節(jié)點的拓撲發(fā)現(xiàn)請求,則改變?yōu)榛疑駝t它自己成為黑色;
4、當白色節(jié)點收到來自深灰色節(jié)點的拓撲發(fā)現(xiàn)請求時,等待一段時間(同樣與距離成反比),如果在等待期間收到來自黑色節(jié)點的拓撲發(fā)現(xiàn)請求,則改變?yōu)榛疑,否則它自己成為黑色;
5、所有已經(jīng)被標記為黑色或者灰色的節(jié)點,都將忽略其他節(jié)點的拓撲發(fā)現(xiàn)請求。 |