環(huán)形菊花鏈網(wǎng)絡(luò)是工業(yè)常用網(wǎng)絡(luò)結(jié)構(gòu),每個(gè)交換節(jié)點(diǎn)可以方便的接入以太網(wǎng)設(shè)備,構(gòu)成星形結(jié)構(gòu),而交換節(jié)點(diǎn)與節(jié)點(diǎn)之間相互連接,又構(gòu)成環(huán)形結(jié)構(gòu)。環(huán)形菊花鏈設(shè)備接入方便,減少了單純星形結(jié)構(gòu)冗長(zhǎng)的布線(xiàn)。同時(shí),又能通過(guò)交換節(jié)點(diǎn)之間的環(huán)形結(jié)構(gòu)達(dá)到鏈路冗余備份的功能,相對(duì)線(xiàn)性菊花鏈網(wǎng)絡(luò)成本更低。
通常需要采用具有環(huán)網(wǎng)功能的交換機(jī)作為環(huán)形菊花鏈網(wǎng)絡(luò)中的交換節(jié)點(diǎn),運(yùn)行STP/RSTP/MSTP協(xié)議,以防止二層的廣播風(fēng)暴。英創(chuàng)公司結(jié)合自身產(chǎn)品特點(diǎn),以EM9287工控主板為核心,提出了一種小型、低成本的環(huán)形菊花鏈組網(wǎng)方案。
英創(chuàng)公司采用Davicom公司的DM8606作為交換芯片(支持RSTP協(xié)議),開(kāi)發(fā)了一個(gè)小型交換機(jī)環(huán)網(wǎng)擴(kuò)展模塊ETA713。如圖1所示,ETA713具有5個(gè)以太網(wǎng)口,其中P0、P1作為環(huán)網(wǎng)接口,P2、P3作為普通網(wǎng)口,P4作為CPU port,與EM9287的eth0傳輸數(shù)據(jù)。同時(shí),EM9287通過(guò)DM8606的SMI接口對(duì)其進(jìn)行控制。將P0-P3在ETA713的評(píng)估底板上以RJ45的接口引出,可以組建如圖2所示的環(huán)形菊花鏈網(wǎng)絡(luò)。
圖1 EM9287 & ETA713
圖2 EM9287 & ETA713組建環(huán)形菊花鏈網(wǎng)絡(luò)
為防止環(huán)形網(wǎng)絡(luò)可能造成的二層網(wǎng)絡(luò)風(fēng)暴,我們移植了RSTP協(xié)議,作為后臺(tái)程序運(yùn)行在EM9287上。RSTP為每個(gè)端口分配一個(gè)端口角色,包括:根端口(ROOT Port)、指定端口(DESIGNED Port)、替換端口(ALTERNATED Port)、備份端口(BACKUP Port)和禁用端口(DISABLED Port)。每個(gè)端口有3個(gè)狀態(tài):轉(zhuǎn)發(fā)狀態(tài)(Forwarding)、學(xué)習(xí)狀態(tài)(Learning)和丟棄狀態(tài)(Discarding)。
RSTP協(xié)議狀態(tài)機(jī)根據(jù)DM8606傳輸過(guò)來(lái)的BPDU幀,決定端口的角色和狀態(tài),選擇既非ROOT又非DESIGNED的端口作為ALTERNATED端口,禁止其轉(zhuǎn)發(fā)功能,消除“環(huán)路”,如下圖所示。此時(shí),如果中斷SW2交換節(jié)點(diǎn)的P1口,其P0口將迅速轉(zhuǎn)變?yōu)镽OOT PORT(P1變?yōu)镈ISABLED Port,不參與RSTP運(yùn)算),SW2的網(wǎng)絡(luò)幀將迅速?gòu)腜0端口經(jīng)環(huán)路的另一邊傳輸?shù)侥康牡豏OOT BRIDGE。
圖3 網(wǎng)絡(luò)收斂原始狀態(tài)
圖4 中斷SW2 P1后的網(wǎng)絡(luò)狀態(tài)
此外,因?yàn)镽STP是作為后臺(tái)程序運(yùn)行在EM9287上,且CPU占用資源低于1%,EM9287仍然可以運(yùn)行用戶(hù)所需的其他應(yīng)用程序。而本質(zhì)上,我們也是用一個(gè)擴(kuò)展模塊實(shí)現(xiàn)了簡(jiǎn)單的環(huán)網(wǎng)交換功能,取代了原來(lái)的環(huán)網(wǎng)交換機(jī)。
-
嵌入式主板
+關(guān)注
關(guān)注
7文章
6084瀏覽量
35154
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論