siemens x
傳感器

EthernetPON系統(tǒng)核心MAC控制器的設計與實現(xiàn)

2025China.cn   2007年10月25日

摘要:本文提出了一種EPON系統(tǒng)核心MAC控制器的設計方案,融合FPGA技術與嵌入式系統(tǒng)實現(xiàn)了EPON的點對多點MAC接入功能.幀校驗、加密、分類及仲裁等控制部分用FPGA完成,涉及復雜算法的注冊與動態(tài)帶寬分配利用嵌入式Linux平臺實現(xiàn).對MAC控制器設計中的關鍵技術點進行了全面闡述,提出了一種基于滑動窗機制的動態(tài)帶寬分配方案以改善網(wǎng)絡QoS性能.系統(tǒng)仿真結(jié)果表明,該設計方案可以采用低成本的FPGA來實現(xiàn),為開發(fā)MAC控制器專用芯片提供了實用參考.
關鍵詞:以太網(wǎng)無源光網(wǎng)絡;媒體接入控制;嵌入式系統(tǒng);現(xiàn)場可編程門列陣

近年來隨著傳輸技術和交換技術的不斷進步,核心網(wǎng)已經(jīng)基本實現(xiàn)了光纖化、數(shù)字化和寬度化,而傳統(tǒng)的接入網(wǎng)仍然是采用電纜傳輸?shù)哪M系統(tǒng),兩者在技術上的巨大差距導致接入網(wǎng)成為全球信息高速公路的瓶頸.目前盡管出現(xiàn)了一系列解決這一瓶頸問題的技術手段,如雙絞線上的xDSL系統(tǒng)、同軸電纜上的HFC系統(tǒng)以及五類線上的LAN,但都只能算是一些過渡性解決方案,不能滿足視頻點播、家庭購物、數(shù)字高清晰度電視播放等新業(yè)務對寬帶通信的需求,唯一能夠從根本上徹底解決接入瓶頸的長遠技術手段就是全光接入網(wǎng).基于以太網(wǎng)的無源光網(wǎng)絡(EPON)就是這一背景下應運而生的光纖接入技術.EPON與傳統(tǒng)以太網(wǎng)的主要區(qū)別在于傳統(tǒng)以太網(wǎng)是點到點(Peer-to-Peer,P2P)的對等網(wǎng)絡,而EPON是點到多點(Point-to-Multipoint,P2MP)的主從網(wǎng)絡,其技術創(chuàng)新就在于點對多點MAC接入控制的設計與實現(xiàn).本文提出了一種EPON系統(tǒng)MAC控制器的設計方案,詳細闡述了采用包含嵌入式CPU的FP2GA開發(fā)MAC控制器的設計全過程,并通過系統(tǒng)軟、硬件仿真驗證了該設計的可行性,為我國開發(fā)MAC控制器專用芯片提供實用參考.

EPON系統(tǒng)結(jié)構

如圖1所示,一個典型的EPON系統(tǒng)主要由三部分組成,即光線路終端(OLT)、無源光分路器(POS)和光網(wǎng)絡單元(ONU).其中OLT位于局端,一般放在中心機房(Central Office,CO),ONU位于用戶端,POS連接OLT和ONU,它的功能是分發(fā)下行數(shù)據(jù)和匯聚上行數(shù)據(jù).從OLT到ONU的方向為下行方向,反之為上行方向.OLT上行鏈路與各業(yè)務節(jié)點相連,ONU下行鏈路則與各用戶終端設備連接.

圖1 EPON系統(tǒng)架構

在EPON中,從OLT到多個ONU的下行數(shù)據(jù)傳輸過程與從多個ONU到OLT的上行數(shù)據(jù)傳輸過程有本質(zhì)的區(qū)別,如圖2所示.下行數(shù)據(jù)采用廣播方式以變長以太包的形式從OLT發(fā)給多個ONU,每個以太包帶有標識目標ONU的邏輯鏈路標識(LLID),通過識別LLID判斷信息包是發(fā)給某個或多個ONU的.當數(shù)據(jù)流到達ONU時,ONU只提取發(fā)給它的信息包而丟棄發(fā)給其他ONU的信息包;而上行數(shù)據(jù)則采用時分多址接入(TDMA)技術,每個ONU都分配一個傳輸時隙,所有時隙保持同步,彼此間留有間隙,保證不同ONU的數(shù)據(jù)包匯聚到公共光纖時不發(fā)生相互碰撞.

圖2 EPON的上、下行傳輸機制

OLT系統(tǒng)設計

為支持EPON的協(xié)議棧結(jié)構和工作模式,本文采用圖3所示的OLT系統(tǒng)設計,它主要由MAC控制器、EPON千兆位突發(fā)光收發(fā)器、存儲器和外圍接口電路組成.其中MAC控制器是采用Altera公司的EXCAL IBUR-ARM系列FPGA(帶ARM9硬核)芯片實現(xiàn).在CO端,OLT通過標準的千兆以太收發(fā)器與上層交換機相連;在EPON端,OLT通過專用的光收發(fā)器連接PON網(wǎng)絡.

圖3 OLT系統(tǒng)總體框圖

該系統(tǒng)可以實現(xiàn)以下功能:
(1)以廣播方式向ONU下行發(fā)送以太數(shù)據(jù)包,以TDMA方式接收來自ONU的以太包;
(2)發(fā)起并控制ONU的注冊過程,根據(jù)用戶的QoS要求為ONU分配帶寬;
(3)除了網(wǎng)絡的匯聚和接入功能,OLT還提供OAM功能.

核心MAC控制器的實現(xiàn)

圖4所示為本文設計的EPON系統(tǒng)核心MAC 控制器的功能框圖,它由硬件和軟件部分組成.硬件部分(圖中實線表示的模塊)由FPGA來完成[3],實現(xiàn)點對點仿真,以太幀的校驗、加/解密、分類/仲裁/復用等控制功能;軟件部分由嵌入式系統(tǒng)Monta Vista Linux來完成對ONU的注冊和動態(tài)帶寬分配(DBA).
  
首先對圖中各模塊的功能作一簡要說明.位寬變換模塊實現(xiàn)數(shù)據(jù)流的8bit位寬(字節(jié)為單位)與32bit位寬(雙字為單位)之間的互換;LLD添加/校驗模塊主要完成LLD的添加/校驗;分類/仲裁/復用模塊實現(xiàn)對以太幀的分類、發(fā)送優(yōu)先級仲裁和復用;測距模塊計算ONU至OLT的往復時間(RTT),以便進行上行時延補償.時標處理模塊實現(xiàn)OLT與ONU的時鐘同步.下面就MAC控制器在軟、硬件設計中涉及到的關鍵技術進行全面闡述.

圖4 核心MAC控制器功能框圖

位寬變換及時鐘設計

考慮到EXCAL IBUR-ARM系列FPGA內(nèi)嵌的ARM922T是一款RISC架構的32bit微處理器,為了方便FPGA與微處理器之間的數(shù)據(jù)交換,MAC控制器的內(nèi)部數(shù)據(jù)統(tǒng)一采用雙字為單位進行處理.OLT與ONU之間的線路傳輸速率是1.25Gbit/s,碼流在物理層經(jīng)過串/并變換、8B/10B編碼之后的速率為125Mbit/s,而進行位寬變換后,FPGA的工作頻率下降到31.25MHz.本文設計FPGA開發(fā)板時,采用了25MHz的晶振作為時鐘源.

值得一提的是,位寬變換模塊需用到125MHz和31.25MHz2個時鐘(分別由倍頻器和分頻器提供).輸入的8bit碼流以125MHz的頻率順序?qū)懭?個FIFO中,同時以31.25MHz的頻率從這4個FIFO中并行輸出,直至一幀結(jié)束.但必須考慮數(shù)據(jù)幀的幀長(以字節(jié)為單位)不能被4整除的情況,如最后只剩下3個8bit碼.這時將‘0x00’寫入最后的空閑FIFO中,使幀長滿足4的整數(shù)倍.為此,位寬變換模塊增加了以字節(jié)為單位的幀長和以雙字為單位的幀長統(tǒng)計功能,用于告知其后級聯(lián)的模塊只對幀有效數(shù)據(jù)進行處理.所有的變換處理均在FPGA內(nèi)部實現(xiàn),因而不增加FPGA的外部引腳.

分類、仲裁和復用技術

分類、仲裁及復用是MAC控制器最為關鍵的功能,FPGA與微處理器如何進行數(shù)據(jù)交換、數(shù)據(jù)流如何分類及緩沖、何種仲裁機制能夠?qū)崿F(xiàn)信道的最佳復用等技術細節(jié)都是模塊設計時必須考慮的問題.上行分類器收到以太幀后,首先根據(jù)幀類型(Type域)區(qū)分MAC幀、OAM幀和數(shù)據(jù)幀.如果是MAC幀或OAM幀,則直接寫入雙端口RAM的MAC幀隊列或OAM幀隊列,同時給出相應的中斷請求信號,通知ARM來處理;如果是數(shù)據(jù)幀,區(qū)分是發(fā)往核心網(wǎng)的SNI幀,還是送給其他ONU的P2P幀.SNI幀按照FIFO機制送往上層交換機;P2P幀則寫入SDRAM中,直接參與下行數(shù)據(jù)幀的仲裁和復用.圖5給出了幀分類、仲裁和復用處理流圖.

圖5 幀分類/仲裁/復用處理流程圖

圖中,下行仲裁/復用器首先對送給同一個ONU的數(shù)據(jù)幀(包括下行幀和P2P幀)、OAM幀和MAC幀進行優(yōu)先級仲裁,MAC幀優(yōu)先級最高,數(shù)據(jù)幀次之,OAM優(yōu)先級最低.然后要為發(fā)往不同ONU的幀優(yōu)先級進行二次仲裁,最終通過一條物理鏈路將這些幀以時分復用送出去,所以下行幀和P2P幀必須先緩存在SDRAM中,等待發(fā)送指示信號.將SNI幀放在SDRAM中也是可行的,但由于上行信道的帶寬分配過程已經(jīng)實現(xiàn)了對幀的優(yōu)先級仲裁,所以本文選擇用FIFO替代SDRAM,完成對SNI幀的緩沖,這樣可以大大減少FPGA芯片的外部引腳,降低了ASIC芯片的制造成本.

安全策略

在EPON系統(tǒng)中,各個ONU的上行通道是彼此獨立的,用戶無法竊取他人的信息;下行方向是媒質(zhì)共享網(wǎng)絡,數(shù)據(jù)以廣播形式發(fā)送,每個ONU都能接收到所有的下行數(shù)據(jù),802.3ah引入LLID來限制每個ONU只能接收屬于自己的數(shù)據(jù)包.然而用戶可以通過某種方式繞開LLID校驗,竊取其他ONU的信息,最為典型的解決方法就是在下行方向?qū)λ械臄?shù)據(jù)幀進行加密傳輸.事實上,這種加密方式存在許多安全隱患.首先,未經(jīng)加密的下行MAC幀和OAM幀如果被成功獲取的話,入侵者便可以輕易掌握其他用戶的關鍵信息,如ONU的LLID和終端用戶MAC地址,進而在上行方向通過盜用LLID和MAC地址來竊取其他用戶的帶寬;其次,在上行方向合法用戶可能通過偽造MAC幀或OAM幀,來更改EPON系統(tǒng)配置,甚至侵入電信管理網(wǎng)絡,擾亂整個電信網(wǎng).針對這兩種威脅,本文采用了一種加密與認證相結(jié)合的安全策略.

信息加密
加密算法本文采用的是AES算法,密鑰長度選取128bit.下行方向OLT對所有類型的幀進行加密,加密區(qū)域從目的MAC地址到FCS域.密鑰由ONU產(chǎn)生,上行發(fā)送給OLT,不可能被用戶截獲,不同的ONU使用不同的密鑰,從而保證了下行數(shù)據(jù)私密性的要求;上行方向,為了防止假冒用戶,ONU對MAC幀和OAM幀進行加密,加密區(qū)域也是目的MAC地址到FCS域.

為提供密鑰更新功能,本文定義了兩類新的MAC幀,密鑰更新請求幀(new_key_request)和密鑰更新響應幀(new_key_respond),類型代碼分別為07和08(802 3ah已經(jīng)采用了六類MAC幀,類型代碼01-06).ONU通過注冊過程將初始密鑰發(fā)送給OLT,OLT定期向下廣播密鑰更新請求幀,ONU則通過密鑰更新響應幀將新密鑰上傳給OLT,如圖6所示.為了保證密鑰的同步性,在Preamble中增加了1bit的flag域和1bit的keyindex域,flag為‘1’標識該幀已被加密,并通過keyindex告知接收端采用哪個密鑰解密,加/解密端同時存儲了2個密鑰以保證新舊密鑰的平穩(wěn)過渡.

圖6 密鑰的更新與同步過程

消息認證 
上行方向如果只是簡單地加密,顯然是不夠的,因為用戶可以盜用他人的合法LLID傳輸數(shù)據(jù).因而OLT還必須進一步對消息發(fā)送源的真?zhèn)芜M行鑒別和認證,即確認接收到的ONUn的數(shù)據(jù)確實是由ONUn發(fā)出的.本文通過FCS校驗來對消息源進行認證,這種方法簡單而有效.首先對Preamble進行CRC校驗,對加密區(qū)域進行解密處理,然后進行FCS校驗,如果Preamble的CRC校驗結(jié)果正確,加密域的FCS校驗錯誤,則說明加密錯誤或者該消息是用戶偽造的,應該予以丟棄,這樣就確保了消息的真實性與合法性.

動態(tài)帶寬分配
 
在802.3ah協(xié)議中,帶寬分配算法是開放的,協(xié)議不作明確規(guī)定,由制造商自行設計.目前802.3ah工作組討論較多的都是一種基于公平調(diào)度(FS)的動態(tài)帶寬分配算法,它在一個輪詢周期內(nèi)只給每個ONU一個發(fā)送機會以保證服務的公平性.這種分配方式算法簡單,易于實現(xiàn).然而它忽略了綜合業(yè)務網(wǎng)的一個非常重要的特征:網(wǎng)絡流量自相似特性導致的數(shù)據(jù)流突發(fā)性,無法根本解決公平性和數(shù)據(jù)流的突發(fā)性之間的矛盾.即使EPON出于小負荷狀態(tài),下述矛盾現(xiàn)象也是不可避免的:某些ONU處于零負荷狀態(tài),每個輪詢周期都報告零字節(jié)帶寬請求;另一些ONU負荷輕,經(jīng)過一次發(fā)送機會已經(jīng)將緩沖區(qū)內(nèi)所有的數(shù)據(jù)包全部上傳;還有一些重負荷ONU,恰好處于數(shù)據(jù)流持續(xù)突發(fā)和震蕩狀態(tài),即使每個輪詢周期都給這些ONU分配上限帶寬Wmax,它們的緩沖區(qū)內(nèi)仍然累積了大量等待發(fā)送的數(shù)據(jù)包.因此,整個上行信道將被“空閑”O(jiān)NU的MAC控制信息和GB帶寬大量占用,而那些真正急需帶寬資源的“突發(fā)”O(jiān)NU卻長時間處于等待狀態(tài).

為此,本文設計了一種基于滑動窗(SW)的動態(tài)帶寬分配算法,將一個周期的帶寬分配過程分成2個階段,第1個階段是預留階段,第2個階段是競爭階段.預留階段采用FS算法為所有ONU分配帶寬來保證公平性;競爭階段將為那些處于數(shù)據(jù)突發(fā)狀態(tài)的ONU安排第2次發(fā)送機會,其帶寬大小用滑動窗來加以限制.在競爭階段,為了將自相似性引發(fā)的數(shù)據(jù)持續(xù)突發(fā)性這一因素考慮在內(nèi),用SW算法取代FS算法,取消上限帶寬Wmax的限制,而采用一個滑動窗Bmax來對ONU當前最后N個周期授權的帶寬總和B進行限制.也就是說,SW算法將以ONU在最近的N個周期(包括當前這個周期在內(nèi))獲得的總帶寬不超過Bmax為條件,在當前周期的競爭階段為其分配帶寬. OLT在第j個ONU的第i個輪詢周期分配帶寬:

式中:Rj I表示在第i個周期的預留階段分配給ONUj的帶寬大小,它在不超過上限帶寬Wmax的前提下,根據(jù)ONUj申請的帶寬rji進行分配;Cji表示在第i個周期的競爭階段分配給ONUj的帶寬大小,它的值用滑動窗Bmax進行限制.Bmax代表ONUj在最近N個周期(包括預留和競爭階段)得到的帶寬總和.

仿真結(jié)果
 
本文采用Altera的型號為EPXA 10F 1020C1的FPGA,通過硬件描述語言Verilog  HDL對MAC控制器的硬件模塊進行了仿真.系統(tǒng)由1個OLT、2個ONU、4個用戶終端組成,時鐘頻率為125MHz.圖7是8~32bit的位寬變換模塊的仿真結(jié)果,wr_clk和rd_clk分別是125MHz的寫時鐘和31.25MHz的讀時鐘,bytei和seg_out分別是輸入的8bit碼流和輸出的32bit碼流.

圖7 位寬變換仿真結(jié)果

圖8為幀分類和RTT計算的仿真結(jié)果,MAC控制器根據(jù)幀類型域和LLID標識將上行幀分為MAC幀、OAM幀、SNI幀和P2P幀,并寫入相應的幀隊列;local_time是OLT的本地時鐘計數(shù)器,將local_time與ONU的MAC幀的time stamp值進行模減得到ONU的RTT.

圖8 幀分類與RTT計算的仿真結(jié)果

圖9給出了SW算法和FS算法在平均包延時和帶寬利用率方面的性能比較結(jié)果.

圖9 SW與FS算法的包延時和帶寬利用率性能分析

由圖可見,當ONU的載荷小于0.9時,SW算法的包延時明顯小于FS算法;在帶寬利用率方面,SW算法的性能也優(yōu)于FS算法,這是因為SW算法將FS算法中大量被“空閑”O(jiān)NU的MAC控制信息和GB帶寬占有的資源在競爭階段分配給了“繁忙”O(jiān)NU,從而提高了網(wǎng)絡的帶寬利用率.SW算法通過滑動窗機制將整個上行帶寬分2個階段進行動態(tài)分配,既滿足了網(wǎng)絡公平服務的要求,又緩解了數(shù)據(jù)突發(fā)性對網(wǎng)絡性能造成的負面影響,有效解決了公平性與突發(fā)性這一FS算法無法克服的矛盾,因而非常顯著地改善了網(wǎng)絡的服務質(zhì)量.

結(jié) 語

本文提出了一種基于FPGA技術與嵌入式系統(tǒng)的EPON核心MAC控制器設計方案,用于實現(xiàn)EPON下行廣播和上行TDMA的傳輸方式.對于幀校驗、加密、分類及仲裁等控制部分用FPGA實現(xiàn),注冊過程與動態(tài)帶寬分配在嵌入式Linux平臺上完成.文中對MAC控制器硬件設計的關鍵技術點進行了全面闡述,提出了一種基于滑動窗機制的動態(tài)帶寬分配方案以改善網(wǎng)絡QoS性能.系統(tǒng)的軟、硬件仿真驗證了該方案的可行性,為我國開發(fā)MAC控制器專用芯片提供了實用參考. 

(轉(zhuǎn)載)

標簽:Ethernet PON 系統(tǒng)核心 MAC控制器 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道