專利名稱:確定家庭網(wǎng)絡(luò)的連接拓撲的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種確定以太網(wǎng)的連接拓撲的方法,更具體來說涉及一種確定家庭網(wǎng)絡(luò)的連接拓撲的方法。
背景技術(shù):
在家庭網(wǎng)絡(luò)的環(huán)境中,期望具有關(guān)于網(wǎng)絡(luò)的連接拓撲的信息。在家庭環(huán)境中通常圍繞像集線器或者交換機那樣的無源設(shè)備來布置家用電器。大多數(shù)時候,這些設(shè)備沒有用于遠程控制和管理的任何軟件,它們沒有它們自己的IP地址,一句話,它們對于所述電器來說是透明的。
然而,就網(wǎng)絡(luò)拓撲和消息傳播而言,它們不是透明的。在此考慮的兩個主要設(shè)備是集線器和交換機。如圖1a中所示,集線器在一個節(jié)點中集中所有的業(yè)務(wù),即在任何接口上接收的每個分組被發(fā)送到所有的其它接口。如圖1b所示,交換機進行更加智能的工作,這是因為只在可能存在感興趣節(jié)點的接口上傳送分組(在插入了目標的接口上路由單播分組并且將廣播分組發(fā)送至所有接口)。在IP或者以太網(wǎng)級別上進行過濾。
為一般消費者提供的多數(shù)產(chǎn)品在以太網(wǎng)級別上進行過濾,并且大多數(shù)時候它們是不受管理的。因此期望提供一種用于確定由圍繞集線器和交換機布置的各種家用電器構(gòu)成的家庭網(wǎng)絡(luò)的以太網(wǎng)拓撲的方法。
要從網(wǎng)絡(luò)拓撲中提取的最感興趣的信息是知道某個終端的哪個節(jié)點被交換機隔離。在那個情況下,當連接在集線器上的目標設(shè)備發(fā)送單播分組時,可以避免以太網(wǎng)總線上的任何業(yè)務(wù)沖突。
存在一些用在諸如以太網(wǎng)、令牌環(huán)網(wǎng)或令牌總線網(wǎng)那樣的計算機網(wǎng)絡(luò)系統(tǒng)中的傳統(tǒng)拓撲確定方法。
如在歐洲專利申請NO.EP0892523中所指出的那樣,提供一種用于檢測橋接(bridged)并且重復(repeated)網(wǎng)絡(luò)設(shè)備連接的方法和系統(tǒng)。根據(jù)上述的專利申請,術(shù)語“橋接網(wǎng)絡(luò)設(shè)備”可以與術(shù)語“交換機”互換,并且術(shù)語“重復網(wǎng)絡(luò)設(shè)備”被用來擴展物理線纜介質(zhì)的長度、拓撲或者互連性,并且因此對應于術(shù)語“集線器”。所提及的發(fā)明的一個優(yōu)選實施例是通過發(fā)出測試分組和注記特殊限定符來完成的。為了測試任何給定連接,在附接(attached)交換機的情況下最初發(fā)出“啟動(priming)”分組,以便使該交換機更新它的地址表。然后在一個鏈路上發(fā)出具有相同源地址(SA)和目的地址(DA)的第一測試分組以便測試該連接是否是重復回路。然后根據(jù)第一測試分組的測試結(jié)果,發(fā)出使用廣播DA、多點傳送DA或者不存在的單播DA的第二測試分組,以便對所交換的連接執(zhí)行測試。
在2002年5月30日提交的NO.US2003/0225916的美國專利申請中,提供一種用于實現(xiàn)諸如被設(shè)計用在雙方向的、反旋轉(zhuǎn)環(huán)網(wǎng)中的空間重用協(xié)議(Spatial Reuse Protocol,SRP)那樣的數(shù)據(jù)鏈路層通信協(xié)議的系統(tǒng)和方法。本發(fā)明的一個實施例公開了一種拓撲發(fā)現(xiàn)過程,其以反映該結(jié)果的雙重鏈接的列表的形式產(chǎn)生拓撲圖。在此申請中要求保護的拓撲發(fā)現(xiàn)過程包括步驟發(fā)送拓撲發(fā)現(xiàn)分組;在由耦接到該計算機系統(tǒng)的網(wǎng)絡(luò)中的一個或多個節(jié)點更新所述拓撲發(fā)現(xiàn)分組之后接收所述拓撲發(fā)現(xiàn)分組;并且生成該網(wǎng)絡(luò)的拓撲圖。
然而,上述的兩個現(xiàn)有技術(shù)都很復雜。而且,現(xiàn)有技術(shù)的所有現(xiàn)存的拓撲確定方法也不能給出用于本發(fā)明的任何啟示和教學。因此,極其希望一種用于確定家庭網(wǎng)絡(luò)的連接拓撲的簡單和有效的方法。
發(fā)明內(nèi)容
根據(jù)本發(fā)明,提供一種方法以便確定家庭網(wǎng)絡(luò)的連接拓撲,所述家庭網(wǎng)絡(luò)由圍繞多個集線器和交換機布置的多個節(jié)點構(gòu)成。
本發(fā)明的方法包括步驟由多個節(jié)點以隨機的順序逐一地發(fā)送拓撲確定消息,其中所述拓撲確定消息包括兩個相繼的分組,第一個是具有將其標識為拓撲確定分組的預定凈荷(payload)的廣播分組,和第二個是具有相同的內(nèi)容和不存在的目的MAC地址的單播分組。在接收到拓撲確定消息時根據(jù)以下的規(guī)則確定所有節(jié)點的連接拓撲,所述規(guī)則為i)如果節(jié)點從發(fā)送節(jié)點接收到廣播分組和單播分組二者,那么確定發(fā)送節(jié)點與所述接收節(jié)點在同一物理鏈路上;ii)如果所述接收節(jié)點只接收到廣播分組,那么確定發(fā)送節(jié)點與所述接收節(jié)點不在同一物理鏈路上。之后,當確定發(fā)送節(jié)點與所述接收節(jié)點在同一物理鏈路上時,通過將發(fā)送節(jié)點的MAC地址加入到所述接收節(jié)點的列表而生成并更新每個節(jié)點的本地節(jié)點的列表。
有利的是,通過前述的拓撲確定過程確定了家庭網(wǎng)絡(luò)的連接拓撲,并且在示出哪些節(jié)點在同一物理鏈路上和哪些節(jié)點被交換機隔離的本地節(jié)點的列表中清楚地進行展示。
圖1a和1b是示出用在家庭網(wǎng)絡(luò)中的傳統(tǒng)集線器和交換機的工作原理的圖解;圖2示出了圖解根據(jù)本發(fā)明的方法的處理步驟的流程圖;和圖3a到圖3e給出了解釋根據(jù)本發(fā)明的過程的操作的家庭網(wǎng)絡(luò)的示例。
具體實施例方式
本發(fā)明提供一種用于確定以太網(wǎng),特別是家庭網(wǎng)絡(luò)的連接拓撲的方法,所述網(wǎng)絡(luò)包括圍繞多個集線器和交換機布置的多個節(jié)點。
本發(fā)明方法的處理基于以下規(guī)則·在同一物理鏈路上或者當被插在集線器(假定邏輯鏈路)上時,所有節(jié)點都能夠看到其它節(jié)點的業(yè)務(wù),即使業(yè)務(wù)的目標設(shè)備不存在也是如此。
·單播分組被路由至在其上目標節(jié)點被插入交換機的接口。如果該目標不存在,則交換機丟棄該消息。
·廣播分組被網(wǎng)絡(luò)中的每個節(jié)點所看見。
本發(fā)明的主要思想在于在網(wǎng)絡(luò)的每個鏈路上發(fā)出拓撲確定消息,以便找出哪些節(jié)點看見該消息,其中該拓撲確定消息由兩個相繼的分組構(gòu)成,第一個是具有將其標識為拓撲確定分組的預定凈荷的廣播分組,第二個是具有相同的內(nèi)容和不存在的目的MAC地址的單播分組。在該網(wǎng)絡(luò)上能夠看見此拓撲確定消息的節(jié)點被確定為在相同的物理/邏輯鏈路上。
圖2是圖解根據(jù)本發(fā)明的方法的處理步驟的流程圖。首先,當拓撲確定過程開始時,如在步驟10中所見,網(wǎng)絡(luò)上的所有業(yè)務(wù)通信停止。在步驟20中,當網(wǎng)絡(luò)上的通信停止時啟動兩個定時器T0和T1。T0是定義該過程的整個持續(xù)時間的固定延時。T1是定義該過程的開始和在網(wǎng)絡(luò)上發(fā)送拓撲確定消息的開始之間的時間周期的隨機有界延時,并且很明顯T1<T0。應當理解T1隨機有界延時目的在于避免在同一物理鏈路上的沖突,這是因為T1是隨機計算的,已經(jīng)對多個節(jié)點Ni(i=1到n)中的每一個賦予不同的T1隨機有界延時,使得不同的節(jié)點Ni具有很小的機會同時訪問以太網(wǎng)總線。在步驟30中,當節(jié)點Ni的相應的T1隨機有界延時分別到期時,它們分別發(fā)出拓撲確定消息,以這樣的方式發(fā)送即從發(fā)送節(jié)點Ni以隨機的順序逐一地分別發(fā)出該拓撲確定消息。通常,在拓撲確定消息的傳輸中,必須接連地發(fā)送廣播和單播分組,而在它們之間沒有沖突或其它分組。如果檢測到?jīng)_突,那么用新的隨機有界延時T1′重啟先前的定時器T1,所述T1′根據(jù)定時器T0的到期之前的剩余時間來計算。
隨后,在步驟40中,每次接收節(jié)點Ni+j(j≠i & i+j=1至n)從發(fā)送節(jié)點Ni接收廣播分組時,具有T2延時的定時器都被自動觸發(fā),然后,如果在此T2延時期間沒有收到單播分組,那么認為發(fā)送節(jié)點Ni不在所述接收節(jié)點Ni+j的同一物理/邏輯鏈路上,其在步驟50中被確定,否則,如果在T2到期之前,從發(fā)送節(jié)點Ni接收到單播分組,那么認為發(fā)送節(jié)點Ni在所述接收節(jié)點Ni+j的同一物理/邏輯鏈路上,其在步驟60中被確定。在確定發(fā)送節(jié)點Ni和接收節(jié)點Ni+j在相同的物理/邏輯鏈路上的情況下,在步驟70中,將發(fā)送節(jié)點Ni的目的MAC地址添加到所述接收節(jié)點Ni+j的本地節(jié)點的列表中。在此方案中,T2<<T1,其中定時器T2是例如幾毫秒。
接著,步驟80要確定此過程的T0固定延時是否已經(jīng)到期,如果是,那么它進行到步驟90,并且網(wǎng)絡(luò)的通信重新開始,從而結(jié)束拓撲確定的過程。
參照圖3a至圖3e,將通過簡化的示例詳細描述拓撲確定過程的操作。如圖3a所示,同一邏輯鏈路上(同一物理鏈路或者用集線器連接)的所有節(jié)點被畫在同一鏈路上,并且不同的邏輯鏈路圍繞交換機布置。當過程開始時,所有節(jié)點停止通信并且啟動定時器T0和T1。為了簡化,我們將假設(shè)對于節(jié)點來說不同的T1定時器以如下次序到期A、B、C、D、E和F。
如圖3b所示,當定時器T1到期時,節(jié)點A作出到發(fā)送消息狀態(tài)的轉(zhuǎn)變,而所有其它節(jié)點保持在等待狀態(tài)?,F(xiàn)在如圖3c所示,處于發(fā)送消息狀態(tài)的節(jié)點A在網(wǎng)絡(luò)的每條鏈路上發(fā)出廣播分組。已經(jīng)接收到該廣播分組的其余節(jié)點B、C、D、E和F作出從等待狀態(tài)到等待單播狀態(tài)的轉(zhuǎn)變,并且啟動T2定時器。如圖3d所示,在定時器T2期間節(jié)點A發(fā)出單播分組。單播分組被交換機阻斷,但是在沒有被交換機隔離的本地鏈路上不被阻斷。因此,只有節(jié)點B和C將接收此單播分組并且作出到本地鏈路(link local)狀態(tài)的轉(zhuǎn)變。其它節(jié)點D、E和F將停留在等待單播狀態(tài)下,并且保持它們的本地節(jié)點的列表為空直到定時器T2到期為止。之后,如圖3e所示,節(jié)點B和C響應于節(jié)點A所發(fā)送的消息完成轉(zhuǎn)變的狀態(tài)本地鏈路,發(fā)送節(jié)點A的MAC地址被添加到接收節(jié)點B、C的本地節(jié)點的列表。當定時器T2到期時,節(jié)點D、E和F的本地節(jié)點的列表保持為空,該結(jié)果在如下的表1中可以看到表1
該過程對節(jié)點B繼續(xù),其遵循與前面的描述相同的步驟。在此過程期間,A和C將完成本地鏈路狀態(tài),因此之后先前的表被更新如下表2
當在節(jié)點C處定時器T1到期時,只有A和B將完成本地鏈路狀態(tài),結(jié)果如下表3
然后,在節(jié)點D處定時器T1到期,因為只有節(jié)點E在同一鏈路上,所以其是作出通過狀態(tài)本地鏈路轉(zhuǎn)變的唯一節(jié)點,并且本地節(jié)點的列表只在節(jié)點E處被更新,如在下表中所見表4
當在節(jié)點E處定時器T1到期時,只有D完成本地鏈路狀態(tài),節(jié)點E的MAC地址被添加到如下的節(jié)點D的本地節(jié)點的列表中表5
最后,當在節(jié)點F處定時器T1到期時,其中由于F在其鏈路上是單獨的,所以沒有節(jié)點更新其列表,該結(jié)果如下表6
最后,所有節(jié)點具有包含與其共享共同鏈路的節(jié)點的MAC地址的列表。就沖突檢測和沖突避免而言,此本地節(jié)點的列表將被用來優(yōu)化與這些節(jié)點的通信。例如,因為節(jié)點F具有空列表,所以它可以避免實現(xiàn)任何沖突避免機制,并且只依賴用于來自交換機的幀的微弱的(light)沖突檢測機制,從而最小化此鏈路上以太網(wǎng)傳輸中的延時。
權(quán)利要求
1.一種用于確定家庭網(wǎng)絡(luò)的連接拓撲的方法,所述家庭網(wǎng)絡(luò)由圍繞多個集線器和交換機布置的多個節(jié)點構(gòu)成,該方法包括步驟由多個節(jié)點以隨機的順序逐一地發(fā)送拓撲確定消息;在接收到拓撲確定消息時逐一地確定所有節(jié)點的連接拓撲;生成并更新所有節(jié)點的本地節(jié)點的列表;其特征在于所述拓撲確定消息包括兩個相繼的分組第一個是具有將其標識為拓撲確定分組的預定凈荷的廣播分組;和第二個是具有相同的內(nèi)容和不存在的目的MAC地址的單播分組。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于在接收到拓撲確定消息時基于以下的規(guī)則確定所有節(jié)點的連接拓撲,所述規(guī)則為i)如果節(jié)點從發(fā)送節(jié)點接收到廣播分組和單播分組二者,那么確定發(fā)送節(jié)點與所述接收節(jié)點在同一物理鏈路上;ii)如果所述接收節(jié)點只接收到廣播分組,那么確定發(fā)送節(jié)點與所述接收節(jié)點不在同一物理鏈路上。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于當確定發(fā)送節(jié)點與所述接收節(jié)點在同一物理鏈路上時,通過將發(fā)送節(jié)點的MAC地址加入到列表中,來生成并且更新接收節(jié)點的本地節(jié)點的列表。
4.根據(jù)前述權(quán)利要求之一所述的方法,其特征在于提供具有定義該過程的整個持續(xù)時間的固定延時的第一定時器T0。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于提供第二定時器T1,其是定義該過程的開始和傳送該拓撲確定消息的開始之間的時間周期的隨機有界延時。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于第二定時器T1的最大長度小于第一定時器T0的長度。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于每次所述接收節(jié)點從發(fā)送節(jié)點接收到廣播分組時,自動觸發(fā)第三定時器T2,以便定義目的在于等待單播分組的持續(xù)時間。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于第三定時器T2小于第二定時器T1,并且最好小于百分之一秒。
9.根據(jù)權(quán)利要求5至8所述的方法,其特征在于如果檢測到拓撲確定消息的沖突,則以新的隨機有界延遲T1′來重啟第二定時器T1,所述隨機有界延遲T1′在第一定時器T0的到期之前到期。
全文摘要
提供了一種用于確定家庭網(wǎng)絡(luò)的連接拓撲的方法。本發(fā)明的主要思想在于在網(wǎng)絡(luò)的每條鏈路上發(fā)出拓撲確定消息,其中該拓撲確定消息由兩個相繼的分組構(gòu)成,第一個是具有將其標識為拓撲確定分組的預定凈荷的廣播分組,第二個是具有相同的內(nèi)容和不存在的目的MAC地址的單播分組。如果節(jié)點從發(fā)送節(jié)點接收到廣播分組和單播分組二者,那么該發(fā)送節(jié)點被確定為與所述接收節(jié)點在相同的物理鏈路上,并且發(fā)送節(jié)點的MAC地址被添加到所述接收節(jié)點的本地鏈路節(jié)點列表中,否則,如果所述接收節(jié)點只從發(fā)送節(jié)點接收到廣播分組,那么該發(fā)送節(jié)點被確定為與所述接收節(jié)點不在同一物理鏈路上。
文檔編號H04L29/12GK1874288SQ200610082790
公開日2006年12月6日 申請日期2006年5月19日 優(yōu)先權(quán)日2005年6月1日
發(fā)明者讓-弗朗科伊斯·弗勒里, 尼古拉斯·伯丁, 讓-巴普蒂斯特·亨利 申請人:湯姆森特許公司