《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > OBS核心節(jié)點(diǎn)控制系統(tǒng)的實(shí)現(xiàn)
OBS核心節(jié)點(diǎn)控制系統(tǒng)的實(shí)現(xiàn)
摘要:  我們對(duì)本設(shè)計(jì)進(jìn)行了硬件化實(shí)現(xiàn),。圖4為用QuartusII工具得到的電路時(shí)序仿真圖,。圖中1,、2、3,、4、5為狀態(tài)指示信號(hào),,依次對(duì)應(yīng)幀接收完成信號(hào),、讀取狀態(tài)信號(hào),,協(xié)議處理狀態(tài)信號(hào),路由和調(diào)度狀態(tài)信號(hào),,轉(zhuǎn)發(fā)狀態(tài)信號(hào);6,,7為輸出信號(hào),分別對(duì)應(yīng)調(diào)度完成信號(hào)和光開關(guān)設(shè)置信號(hào),。
關(guān)鍵詞: SoPC QuartusII OBS 控制系統(tǒng)
Abstract:
Key words :
 

  引言

  光突發(fā)交換(Optical Burst Switching,,OBS)網(wǎng)絡(luò)是基于現(xiàn)有的技術(shù)條件,結(jié)合光線路交換和光分組交換的優(yōu)點(diǎn),,有效實(shí)現(xiàn)IP over WDM的解決方案,。OBS網(wǎng)絡(luò)包括核心節(jié)點(diǎn)和邊緣節(jié)點(diǎn)。核心節(jié)點(diǎn)的主要功能是根據(jù)突發(fā)控制包(BCP:Burst Contro1 Packet)提供的信息進(jìn)行路由和信道資源調(diào)度,、設(shè)置光交換矩陣,,為突發(fā)數(shù)據(jù)包BDP (Burst Data Packet)預(yù)留全光通道。 

  考慮到JIT協(xié)議調(diào)度算法的簡(jiǎn)單性,,調(diào)度處理速度很快,,調(diào)度算法在獨(dú)立模塊中實(shí)現(xiàn)并沒有必要,反而會(huì)由于模塊的增加帶來額外的延時(shí),,而需要消耗更多的處理時(shí)間,。本文提出了一種面向JIT協(xié)議的核心節(jié)點(diǎn)控制器的結(jié)構(gòu),將網(wǎng)絡(luò)層路由功能和OBS層信道調(diào)度功能整合到同一個(gè)模塊中處理,,一方面,,模塊的整合可以縮短BCP的處理時(shí)間;另一方面,該結(jié)構(gòu)中,,轉(zhuǎn)發(fā)是在調(diào)度之后再執(zhí)行,,使得路由選擇可以在最優(yōu)的輸出端口沒有可用信道的情況下,選擇其它可行的輸出端口,,再進(jìn)行信道的調(diào)度,,從而減少丟包的概率。

  1 控制器的設(shè)計(jì)與實(shí)現(xiàn)

  實(shí)現(xiàn)中選用了顯式建立,、估算拆除的JIT(Just—In—Time)信令協(xié)議,,該協(xié)議只有SETUP消息,沒有REALEASE消息,。核心節(jié)點(diǎn)收到并完成SETUP消息的處理后,,立即為其預(yù)留資源,并根據(jù)SETUP消息中包含的偏置時(shí)間和數(shù)據(jù)包長(zhǎng)度估算出釋放資源的時(shí)間,。

  1.1 系統(tǒng)組成

  圖l為OBS核心控制器系統(tǒng)框圖,,分為接收模塊、幀解析模塊、交叉矩陣,、發(fā)送模塊,、路由和調(diào)度模塊。在各功能模塊之間都設(shè)置了緩存結(jié)構(gòu),,使得各個(gè)模塊可以獨(dú)立的工作,,從而在各模塊之間實(shí)現(xiàn)流水線式的工作方式。各模塊的主要功能如下:

  接收模塊接收控制信道上的數(shù)據(jù),,恢復(fù)成以太幀后,,寫入到接收緩存中。

OBS核心控制器系統(tǒng)框圖

  幀解析模塊從接收緩存中讀取以太幀,,解析出相應(yīng)協(xié)議域信息,,進(jìn)行相應(yīng)處理。如果不是BCP包,,直接進(jìn)行轉(zhuǎn)發(fā)操作;如果是BCP包,,把調(diào)度相關(guān)信息發(fā)送給路由和調(diào)度模塊,并根據(jù)路由和調(diào)度模塊返回的消息進(jìn)行轉(zhuǎn)發(fā)或丟棄,。

  路由和調(diào)度模塊負(fù)責(zé)實(shí)現(xiàn)網(wǎng)絡(luò)層的路由選擇功能和OBS層的信道調(diào)度功能,,其中包含一個(gè)轉(zhuǎn)發(fā)路由表和一個(gè)信道資源庫(kù),轉(zhuǎn)發(fā)路由表保存本節(jié)點(diǎn)的路由表信息,,用于路由查詢;信道資源庫(kù)記錄本節(jié)點(diǎn)各輸出端口的數(shù)據(jù)信道資源占用情況,,并負(fù)責(zé)控制光開關(guān)矩陣。

  交叉矩陣將輸入緩存中的分組交換到輸出緩存中,。發(fā)送模塊更新BCP包的偏置時(shí)間,,再將其組成以太幀發(fā)送到控制信道上。

  1.2 主要模塊的設(shè)計(jì)與實(shí)現(xiàn)

  1.2.1 幀解析模塊

  幀解析模塊負(fù)責(zé)解析幀的類型及幀的內(nèi)容,,并作部分網(wǎng)絡(luò)層協(xié)議及OBS層協(xié)議的處理,,同時(shí)控制路由和調(diào)度模塊的工作。其主要工作可分為如下幾個(gè)部分:l,、從接收緩存中讀取收到的數(shù)據(jù)包,,并記錄接收到的時(shí)間,用于更新BCP包的偏置時(shí)間;2,、網(wǎng)絡(luò)層協(xié)議的處理,,包括類型信息、包長(zhǎng),、目的網(wǎng)絡(luò)地址的獲取及TTL的更新等;3,、OBS層協(xié)議的處理,包括偏置時(shí)問的計(jì)算及更新,,對(duì)路由和調(diào)度模塊的控制等;4、對(duì)處理好的數(shù)據(jù)包,本地包上傳到本節(jié)點(diǎn)的網(wǎng)管模塊,,需要繼續(xù)轉(zhuǎn)發(fā)的,,則發(fā)送到輸出緩存中。

幀解析模塊的狀態(tài)轉(zhuǎn)移圖

  幀解析模塊的狀態(tài)轉(zhuǎn)移圖如圖2所示,。上電后首先進(jìn)入Idle狀態(tài),,在Idle狀態(tài)下檢查接收緩存是否有新的數(shù)據(jù)包,有的話則進(jìn)入ReadMAC狀態(tài),,讀取MAC頭信息,,判斷MAC幀類型,非IP數(shù)據(jù)包則將其丟棄,,否則進(jìn)入ReadIP狀態(tài),,這個(gè)狀態(tài)下讀取IP數(shù)據(jù)包的長(zhǎng)度,以及類型,,TTL等信息,,如果是不是BCP包,進(jìn)入Route狀態(tài),,進(jìn)行路由選擇,,如果是本地包,則上傳到網(wǎng)管模塊中,,否則進(jìn)入U(xiǎn)pdate狀態(tài);如果是BCP包,,則進(jìn)入Route&Schedule狀態(tài),啟動(dòng)路由和調(diào)度模塊的工作,。如果調(diào)度不成功,,則要將該BCP包丟棄,如果成功,,也進(jìn)入U(xiǎn)pdate狀態(tài);在Update狀態(tài)下,,對(duì)TTL進(jìn)行更新,如果調(diào)度出來的波長(zhǎng)號(hào)發(fā)生改變,,也要更新相應(yīng)信息,。之后,就進(jìn)入Forward狀態(tài),,將已更新好的數(shù)據(jù)包發(fā)送到輸出緩存中,,進(jìn)行下一幀的處理。

  1.2.2 路由和調(diào)度模塊

  圖3所示為路由表和信道資源庫(kù)的結(jié)構(gòu)示意圖,。路由表包含多條路由表項(xiàng),,每條表項(xiàng)包括目的網(wǎng)絡(luò)地址及輸出端口號(hào)兩部分信息。查找路由的過程為:從首條表項(xiàng)開始,,將目的網(wǎng)絡(luò)地址依次與各表項(xiàng)中網(wǎng)絡(luò)地址進(jìn)行匹配,,匹配成功即輸出端口號(hào)。Ptr用來指向當(dāng)前的匹配表項(xiàng),如需二次查找,,只需從Ptr指向的表項(xiàng)開始繼續(xù)查找,。

  信道資源庫(kù)包含所有端口的信道分配信息,每個(gè)端口作為一組,,包含一個(gè)控制單元CU及一組定時(shí)器,,每個(gè)定時(shí)器對(duì)應(yīng)于一個(gè)信道。信道空閑時(shí)定時(shí)器也處于空閑狀態(tài),,每次為BCP成功分配信道以后,,就需要打開光開關(guān)控制信號(hào),同時(shí)肩動(dòng)相應(yīng)定時(shí)器,,時(shí)間設(shè)置為偏置時(shí)間+預(yù)留時(shí)間,,定時(shí)結(jié)束,關(guān)閉光開關(guān)控制信號(hào),??刂茊卧筛鶕?jù)各定時(shí)器的工作狀態(tài)確定各信道的使用狀態(tài),進(jìn)行信道分配,。

  圖3路由表和信道資源庫(kù)的結(jié)構(gòu)示意圖路由和調(diào)度功能的實(shí)現(xiàn)過程如下:首先檢測(cè)各幀解析模塊的調(diào)度請(qǐng)求信號(hào),,如果有效,讀取目的網(wǎng)絡(luò)地址,,同時(shí)啟動(dòng)路由和調(diào)度過程,,先到路由表查找到第一個(gè)與目的網(wǎng)絡(luò)地址匹配的路由表項(xiàng),得到輸出端口;再到信道資源庫(kù)里檢查該端口是否有空閑的數(shù)據(jù)信道,,有的話預(yù)留該信道,,設(shè)置光開關(guān)矩陣,啟動(dòng)相應(yīng)定時(shí)器,,調(diào)度成功,,返回給幀解析模塊輸出端口和數(shù)據(jù)信道的信息;如果不存在空閑信道,則需要繼續(xù)到路由表中查找匹配表項(xiàng),,找到后再次到信道資源庫(kù)中搜索空閑信道,,如此繼續(xù);如果搜索完路由表中所有表項(xiàng)后仍無(wú)法找到空閑信道,則返回調(diào)度失敗信號(hào)給幀解析模塊,。

  2 實(shí)驗(yàn)測(cè)試

  我們對(duì)本設(shè)計(jì)進(jìn)行了硬件化實(shí)現(xiàn),。圖4為用QuartusII工具得到的電路時(shí)序仿真圖。圖中1,、2,、3、4,、5為狀態(tài)指示信號(hào),,依次對(duì)應(yīng)幀接收完成信號(hào),、讀取狀態(tài)信號(hào),協(xié)議處理狀態(tài)信號(hào),,路由和調(diào)度狀態(tài)信號(hào),,轉(zhuǎn)發(fā)狀態(tài)信號(hào);6,7為輸出信號(hào),,分別對(duì)應(yīng)調(diào)度完成信號(hào)和光開關(guān)設(shè)置信號(hào)。

  圖2 BCP包接收處理過程的工作時(shí)序(參見結(jié)尾)由圖4可見,,在一個(gè)OBS包的處理過程中,,依次經(jīng)歷了幀數(shù)據(jù)的讀取、協(xié)議處理,、路由和調(diào)度,、轉(zhuǎn)發(fā)等多個(gè)狀態(tài),其中從BCP包接收完成到發(fā)出光開關(guān)設(shè)置信號(hào)僅用了lOOns,,相比于現(xiàn)有的實(shí)現(xiàn)方案,,有了很大的提高。完全可以滿足現(xiàn)有OBS網(wǎng)絡(luò)對(duì)核心節(jié)點(diǎn)開關(guān)速度的要求,。

  3 總結(jié)

  測(cè)試結(jié)果表明:接收完BCP包到發(fā)出光開關(guān)設(shè)置信號(hào)的最短時(shí)間為lOOns,。顯著縮短了控制包在核心節(jié)點(diǎn)的處理時(shí)間。



 

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。