新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > 分布式系統(tǒng)內(nèi)部以太網(wǎng)中的地址動態(tài)配置

分布式系統(tǒng)內(nèi)部以太網(wǎng)中的地址動態(tài)配置

作者: 時間:2006-10-13 來源:網(wǎng)絡 收藏

摘 要:結(jié)構(gòu)被廣泛應用于核心路由器等大型中,中各個子之間信息傳遞的良好平臺。本文結(jié)合工程實踐,提出系統(tǒng)中MAC和IP一種新的方法。通過實踐證明,該方法具有靈活、節(jié)約資源扣易于大規(guī)模生產(chǎn)等特點。
關(guān)鍵詞:分布式系統(tǒng)嵌入式結(jié)構(gòu) IP

引 言
以太網(wǎng)以其簡單靈活、成熟穩(wěn)定的特性成為許多分布式系統(tǒng)[-]通信的首選方式。在這些系統(tǒng)采用的以太網(wǎng)結(jié)構(gòu)中,如何合理利用與配置地址信息(包括MAC地址和IP地址)成為提高系統(tǒng)可用性與靈活性的關(guān)鍵。

在OSI七層網(wǎng)絡協(xié)議參考模型中,第2層為數(shù)據(jù)鏈路層。MAC地址位于此層,它由網(wǎng)絡設備制造商生產(chǎn)時寫在硬件內(nèi)部。MAC地址一般采用6字節(jié)48位,前24位是生產(chǎn)網(wǎng)絡設備的廠商向IEEE申請的廠商地址,后24位由廠商自行分配。這樣的分配使得世界上任意一個擁有48位MAC地址的網(wǎng)絡設備都有唯一的標識。

在TCP/IP網(wǎng)絡中,每個主機都有唯一的地址。IP協(xié)議要求在每次與TCP/IP網(wǎng)絡建立連接時,每臺主機都必須為這個連接分配一個唯一地址(IPV4為32位,IPV6為128位)。這個分配給各主機的地址就稱為IP地址。它分為互連網(wǎng)上的公共IP地址和局域網(wǎng)上的內(nèi)部IP地址兩種。

分布式系統(tǒng)的內(nèi)部結(jié)構(gòu)對用戶是完全透明的,其內(nèi)部一般采用嵌入式結(jié)構(gòu)。嵌入式結(jié)構(gòu)中的地址信息一般都固化在只讀存儲器ROM中,當系統(tǒng)啟動時自動加載這些信息。這種地址配置模式比較通用,適合于一般的分布式系統(tǒng);但對于某些復雜的分布式系統(tǒng),這種模式可能帶來一些問題,如增加生產(chǎn)成本、生產(chǎn)周期較長、調(diào)試過程復雜、工作效率低以及地址資源利用率低等。本文結(jié)合實際項目,提出分布式系統(tǒng)內(nèi)部以太網(wǎng)中MAC地址和IP地址的配置方法,從根本上解決了傳統(tǒng)配置方法所帶來的問題。下面介紹MAC地址和IP地址的動態(tài)配置方法。

1 項目背景
國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心(NDSC)承擔了國家863項目高性能IPv6核心路由器的研發(fā)工作。該核心路由器采用分布式系統(tǒng)結(jié)構(gòu),由線卡、轉(zhuǎn)發(fā)、交換、主控等模塊組成。其中線卡、轉(zhuǎn)發(fā)、交換模塊統(tǒng)稱為單板模塊。這些單板模塊利用自己的嵌入式處理機板的以太網(wǎng)網(wǎng)口單元,通過以太網(wǎng)和主控模塊相連。各處理機板用VxWorks嵌入式實時操作系統(tǒng),可單獨處理各單板模塊的實時任務。主控模塊用Linux操作系統(tǒng),有良好的人機對話窗口,可通過以太網(wǎng)和各單板模塊取得聯(lián)系,其結(jié)構(gòu)如圖l所示。


由于分布式系統(tǒng)中的各單板模塊需要通過內(nèi)部以太網(wǎng)和主控模塊進行通信,因此必須給各單板模塊上的嵌入式處理機板的網(wǎng)口單元分配相應的MAC地址和IP地址。這些地址信息一般固化在ROM當中,系統(tǒng)啟動時自動讀取。

這里需要指出的是,下面討論的MAC地址和IP地址配置與傳統(tǒng)意義上的地址分配出發(fā)點是不同的。傳統(tǒng)意義上的IP地址分配是指通過DHCP協(xié)議(動態(tài)主機配置協(xié)議)將與互聯(lián)網(wǎng)相連的計算機(可以是通過服務器與互聯(lián)網(wǎng)相連的局域網(wǎng)中的計算機)分配一個互聯(lián)網(wǎng)上的公共IP地址,使之在互連網(wǎng)上能唯一地標識自己。這里討論的分布式系統(tǒng)結(jié)構(gòu)中的內(nèi)部以太網(wǎng)和外部網(wǎng)絡是相隔離的,不需要將互聯(lián)網(wǎng)上的公共IP地址分配給各單板模塊上的嵌入式處理機板的網(wǎng)口單元。各網(wǎng)口單元只需要在局域網(wǎng)內(nèi)部唯一地標識自己,只對應一個局域網(wǎng)內(nèi)部IP地址;而MAC地址對于每個網(wǎng)絡設備都是唯一的。下面討論的配置方式是指如何將局域網(wǎng)內(nèi)部的IP地址和MAC地址配置給每個網(wǎng)口單元。

2 傳統(tǒng)靜態(tài)配置方法
根據(jù)項目的設計要求,首先要申請若干MAC地址,同時選定一些局域網(wǎng)內(nèi)部IP地址(由于是內(nèi)部以太網(wǎng),和外界是隔離的,IP地址也可任意選定)。然后將這些MAC地址和IP地址的信息固化在ROM中,由生產(chǎn)廠家生產(chǎn)這些ROM。ROM出廠后,將它們焊接在各嵌入式處理機板上進行調(diào)試。這種方法有以下缺點:

①根據(jù)MAC地址和IP地址的定義,每個處理機板上的以太網(wǎng)網(wǎng)口單元的MAC地址和IP地址是不一樣的。不能把相同的地址信息固化在不同的ROM當中,因此每個ROM的信息不同,只能單獨制作,不能進行批量生產(chǎn)。這樣一來就增加了成本,而且生產(chǎn)周期較長。

②由于制作好的各嵌入式處理機板的網(wǎng)口單元的MAC地址和IP地址不同,調(diào)試各嵌入式處理機板時要區(qū)別對待。因此要根據(jù)不同的地址分別設置不同的配置信
息,這樣的調(diào)試過程復雜、工作效率低。

③在具體應用中,為防止設備的損壞,備用設備是必不可少的,因此生產(chǎn)的嵌入式處理機板個數(shù)要多于實際需要的數(shù)量。因為處理機板上的網(wǎng)口單元個數(shù)要和處理機板個數(shù)相一致,所以需要申請的MAc地址數(shù)量也要和處理機板的生產(chǎn)數(shù)量相一致,要多于正常工作所需要的數(shù)量。如果工作中的處理機板都能工作正常,不需要使用備用處理機板,那樣分配給備用處理機板上的MAC地址資源就得不到應用。當工作中的處理機板出現(xiàn)問題時需要使用備用板時,有問題的處理機板的MAC地址一樣不能得到應用。因此多于工作所需數(shù)量的MAC地址必定得不到應用而被浪費。

針對以上問題,對核心路由器項目分布式系統(tǒng)中的嵌入式處理機板的網(wǎng)口地址信息采用了動態(tài)配置方法。

3 動態(tài)配置方法
Flash的可擦寫性和非易失性在當今的嵌入式系統(tǒng)中得到了廣泛的應用。由于ROM出廠時內(nèi)容已寫定,不能更改,因此復雜的嵌入式系統(tǒng)一般利用Flash的可擦寫性進行系統(tǒng)的配置。由于單板模塊的復雜性,需要調(diào)整嵌入式處理機板的配置信息來保證其正常工作,因此,可以充分利用Flash的作用,將其和ROM的配置有效地結(jié)合起來。在分布式路由器中采取以下.MAC地址和IP地址的動態(tài)配置方法:

①按照正常工作所需量申請MAC地址(與靜態(tài)配置相比,沒有備用的MAC地址),這樣資源可以得到有效利用。

②設置嵌入式處理機板嵌入式系統(tǒng)訪問MAC地址和IP地址信息的順序。系統(tǒng)啟動讀取ROM信息,當讀到網(wǎng)口地址信息時轉(zhuǎn)到Flash中相關(guān)地址訪問,如果存在相關(guān)信息則讀取;如果Flash中沒有相關(guān)信息則讀取ROM中的地址信息,過程如圖2所示。


③從申請到的MAC地址中任選一個,同時選一個局域網(wǎng)IP地址。將這些硬件信息和嵌入式系統(tǒng)訪問MAC地址和IP地址順序的信息統(tǒng)一編程固化到各個ROM當中,并成批量生產(chǎn)這些ROM。這樣可以有效降低成本,減少生產(chǎn)周期。

④將這些ROM分別焊接到各嵌入式處理機板上,并把處理機板上Flash中的相關(guān)MAC地址和IP地址信息置O,這樣處理機板就讀取ROM中的地址信息進行配置。因為各個ROM中的MAC地址和IP地址信息相同,因此各處理機板的調(diào)試過程相同。這樣步驟一致,簡單易行。

⑤處理機板調(diào)試完畢后,把申請到的MAC地址分配給各個單板模塊不同的處理機板的網(wǎng)口;同時選一些局域網(wǎng)IP地址,保證它們在以太網(wǎng)內(nèi)部是唯一的。然后可以通過調(diào)試工具(Linux下用Minicom,Windows下用遠程終端)將已分配好的MAC地址和IP地址等硬件信息分別寫到工作中的各處理機板上的Flash中。通過以上分配方式,所有工作的處理機板都將自己Flash中的地址作為唯一的MAC地址和IP地址了。嵌入式系統(tǒng)啟動時就讀到了分配給各自的地址信息。接下來就可以進行處理機板和各單板模塊的綜合調(diào)試了。

⑥當工作中的處理機板出現(xiàn)問題需要使用備用處理機板時,可以將出現(xiàn)問題的處理機板上Flash中MAC地址和IP地址重新分配給備用的處理機板。這樣就有效地利用了所申請的MAC地址資源。

通過以上MAC地址和IP地址的動態(tài)配置方法,可以有效地克服靜態(tài)配置方法中存在的各種問題。相對于靜態(tài)配置方法,動態(tài)配置方法結(jié)合了F1ash和ROM的靈活應用,有以下優(yōu)點:
①能成批量生產(chǎn)內(nèi)容一致的ROM,降低系統(tǒng)成本,減少生產(chǎn)周期。
②各個處理機板的調(diào)試步驟一致,簡單易行。
③所申請的MAC地址得到有效的利用,節(jié)省地址資源。

結(jié) 語
分布式系統(tǒng)中MAC地址和IP地址動態(tài)配置與靜態(tài)配置的根本區(qū)別在于F1ash的靈活應用。隨著分布式系統(tǒng)的應用日益廣泛和設計的日益復雜,動態(tài)配置方法所提供的低生產(chǎn)成本、短生產(chǎn)周期和高地址資源利用率以及簡公司提供的QHartus II和SOPC Builder開發(fā)工具可以在完成接口功能設計后,快速進行系統(tǒng)的集成設計和系統(tǒng)仿真,最終可以在Altera提供的Cyclone系列芯片上實現(xiàn)整個系統(tǒng)設計。對Nios處理器重新編程可以在不改變系統(tǒng)硬件框架的基礎(chǔ)上,方便地增加系統(tǒng)的功能和處理效率,對系統(tǒng)的升級和再開發(fā)有很大的便利。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉