999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

三層交換機的軟件設計與實現﹡

2013-09-25 02:14:06馮國仕
通信技術 2013年8期
關鍵詞:信息

馮國仕, 李 璞, 吳 海

(中國電子科技集團公司第三十研究所,四川 成都 610041)

0 引言

各種網絡應用需要借助網絡通信設備來完成端到端的信息交互,隨著網絡應用的豐富,對網絡帶寬和傳輸時延提出了更高的要求。為了滿足應用對網絡的高帶寬等需求,二層交換技術得到了迅速的發展,其中以太網速率從10/100 Mb/s提高到1 Gb/s等更高速率,極大地提高了局域交換的吞吐量。相比于成本相對低廉的二層交換機,三層路由器的價格更為昂貴,而低端的路由器的轉發性能又不能滿足較高的帶寬需求,因此業界將三層路由與二層交換機功能進行融合,形成了三層交換機[1],以達到成本相對較低同時又能快速路由和交換的目的。

相較于商業應用,工業應用往往對設備的結構尺寸、溫度等環境適應性等要求更為苛刻,因此往往在商業應用中成熟的產品滿足不了特定的工業需求,筆者也因此參與研發了一款千兆三層交換機。文中描述了該設備的軟硬件體系架構,并深入闡述三層交換核心驅動模塊的開發方法。

1 三層交換原理

在局域網中往往利用 VLAN[2]技術來實現網段的劃分,達到隔離廣播域的目的。同一個VLAN內的站點之間直接通過二層交換完成通信,而位于不同VLAN之間的站點則借助于三層路由功能進行通信。三層交換機通過在二層交換機上引入路由功能,利用三層協議中的信息來完成路由和交換,以實現不同VLAN網段之間主機的通信。三層交換的路由通過軟件學習獲取,但IP報文轉發通過硬件實現,從而達到三層線速轉發。

三層交換機具有多張表,分為二層表和三層表兩大類。其中三層有兩種核心表,分別是三層接口表和三層交換表:三層接口表為VLAN虛擬接口的集合,其條目可抽象為,其中VID表示該VLAN的ID,MAC表示從該接口轉發出去的報文的源MAC地址;三層交換表的條目可抽象為,IP/MaskLen用于匹配三層地址,Intf-id用于表示該報文應從哪一個三層接口轉發出去,MACn為下一跳網關或者目標主機的MAC地址,Port表示從哪個二層接口發送該報文。當三層交換機收到一個報文后,交換芯片首先用目的IP地址在三層交換表中查找:如果找到匹配的三層轉發表項,則利用該信息修改并轉發報文;不存在則上報給 CPU路由轉發,CPU路由轉發的同時下發該三層轉發信息給三層交換芯片,以便后續由芯片通過硬件完成報文轉發,從而實現“一次路由、多次交換”。

2 軟硬件平臺

該三層交換機的硬件平臺如圖1所示,主要包括主控制和以太網交換兩個模塊。

圖1 硬件結構

主控制模塊由MPC8271[3]等芯片構成,主要負責三層交換機的控制和管理,運行生成樹協議(STP[4])、動態主機配置協議(DHCP[5])等協議,并運行RIP、OSPF等多種路由協議。通過PCI連接以太網交換模塊,以完成2層和3層表的配置,并利用DMA完成交換芯片與CPU之間的IP報文的收發。

以太網交換模塊的交換芯片為BCM56224[6],該芯片是Broadcom公司推出的具有多層交換能力的以太網交換芯片,具有28路以太網接口,接口速率自適應 10/100/1000 Mb/s,其中有 4路可以配置為2.5 Gb/s以支持級聯。BCM56224通過 SGMII連接BCM54680E PHY芯片,以提供對外連接的以太網接口。

軟件平臺操作系統采用VxWorks5.5,使用風河公司的Tornado 2.2完成軟件開發與調試,交換芯片的配置管理則采用Broadcom公司提供的SDK[7]。

3 軟件系統框架

軟件系統結構圖如圖2所示,主要包括基礎支撐層、中間層和應用層,其中應用層分為業務協議處理和管理兩大部分。

圖2 軟件結構

基礎支撐層是軟硬件之間的接口,為 VxWorks運行于特定的硬件平臺提供支撐,實現系統對硬件底層的透明性。

中間層通過調用底層接口函數,結合本層的功能給上層應用提供各種系統服務,主要包含三層交換芯片支持包(SSP)、三層交換驅動模塊、二層管理支撐模塊等。其中三層交換芯片支持包為Broadcom公司提供的SDK,是三層交換開發中的一個核心中間件,用于完成交換芯片的配置管理,三層交換驅動模塊也基于此模塊進行開發。

應用層:主要包括協議處理模塊和配置管理模塊。協議處理模塊包括鏈路層協議和路由協議處理;配置管理模塊用于給設備提供各種外部管理接口,包括命令行接口、WEB管理接口、SNMP網絡管理接口,便于用戶對設備的狀態進行監控和維護。

由上述的軟件體系結構可以看出,該軟件體系結構具有良好的可移植性和可擴展性,能充分利用其它產品(路由器、交換機)的開發成果,便于產品線的平滑升級。

4 三層交換核心模塊

三層交換核心模塊基于Broadcom公司的SDK進行開發,因此重點工作是完成SDK基于VxWorks環境的編譯與集成,并基于SDK提供的管理接口開發三層驅動模塊。

4.1 移植SDK

由于BCM56224通過PCI總線連接CPU,因此需要移植PCI驅動,依據硬件連接設PCI的基地址、中斷號和設備號等。

依據SDK中提供的Makefile模板,創建自己的Make.local文件,通過該文件來配置支持的芯片和功能模塊,利用編譯開關可以極大地壓縮可執行代碼的尺寸。

完成SDK移植后,首先需要驗證芯片能正確初始化,以確保系統可以正常運行,方法是在VxWorks系統啟動后,調用SDK的初始化函(diag_shell)完成交換芯片的初始化,并通過SDK提供的CLI對芯片進行配置與測試,如果驗證通過即完成了 SDK的移植。

4.2 三層交換驅動

三層交換機由硬件完成三層數據的轉發,但需要軟件配置三層交換接口,并依據路由和主機等信息配置三層交換表,因此三層驅動的核心設計是如何融合路由、出接口、網關MAC地址等信息生成并下發相關表項,并當網關等信息發生變更時快速更新相關的三層交換表項。本模塊構建并維護三層交換表采用的方法如下:

1)利用RouteInfo_st、HostInfo_st、L3Intf-Info_st三種數據結構分別表示路由信息、主機信息和三層接口信息。其中RouteInfo_st中包含IP/MaskLen、如果為非直連路由則包括指向其網關的指針(類型為 HostInfo_st),直連路由則包括指向三層接口的指針;HostInfo_st信息包括主機的IP地址、指向三層接口的指針、MAC地址和出二層端口號,并維護一個以本機為網關的路由項列表,便于網關的信息改變時能快速更新所有以該主機作為網關的路由的三層轉發表項;L3IntfInfo_st表示一個三層接口,包括Intf-id、VLAN-ID、MAC等信息。

2)當收到路由管理模塊下發的新增路由消息,則依據是否是直連路由進行不同處理:直連路由則完成路由登記并與出接口信息關聯起來;非直連路由則完成路由登記并與網關關聯起來。如果網關信息完整,則依據這三項信息可以得出完整的三層轉發項,并下發給交換芯片。

3)當收到路由管理模塊下發的刪除路由消息,且該路由條目對應的信息已下發到交換芯片,則從交換芯片中刪除該路由對應的三層轉發表項。

4)監聽發往CPU的IP報文,判斷其源IP地址是否屬于某一個直連網段,是則創建或者修改到該主機的三層轉發信息,如果該主機信息屬于新建或者發生改變,則更新所有以該主機作為網關的三層轉發表項。

5 測試結果

業界往往用以下三個指標衡量路由交換設備的性能:①吞吐量:是指在沒有幀丟失的情況下,設備能接收并轉發的最大數據速率;②轉發時延:在最大吞吐量情況下,轉發一個報文的平均時延;③丟包率:是指因系統資源不足等原因而導致的包丟失率。這幾個性能指標采用安捷倫公司的N2X測試獲得,端口速率為1 Gb/s,測試結果見表1。

表1 交換機性能測試結果

6 結語

文中介紹了三層交換機的工作原理,并詳細描述了自主研發的三層交換機的軟件體系架構[8-9],深入介紹了三層交換驅動的實現方法。經過功能和性能測試,表明該三層交換機實現了二層、三層線速交換,軟硬件架構設計合理,為后續的深入開發提供了可靠的基礎平臺。

[1] METZLE J, DENOIA L. Layer 3 switching: A guide for IT professionals[M].[s.l.]: Prentice Hall, 1999.

[2] IEEE Std 802.1Q-1998.IEEE Standards for Local and Metro-politan Area Networks: Virtual bridged local area networks[S].USA:IEEE,1998.

[3] MPC8272 PowerQUICC IITMFamily Reference Manual[S].[s.l.]:Freescale Semiconductor, Inc , 2005.

[4] IEEE 802.1D-1998. IEEE Standard for Information Technology——Telecommunications and Information Exchange Between Systems——LocalandMetropolitan Area NetworksCommon Specifications Part 3: Media Access Control(MAC) Bridges[S]. iso/iec 15802-3.USA:IEEE, 1998.

[5] DROMS R.Dynamic Host Configuration Protocol[S].[s.l.]:IETF RFC2131,1997.

[6] BCM56220/56020 Programmer’s Reference Guide[S].[s.l.]: Broadcom Corporation ,2002.

[7] Network Switching Software Development Kit Release 6.0.0[S]. [s.l.]:Broadcom Corporation ,2012.

[8] 易克非,胡慶鋒.基于 DSP的實時多任務調度內核設計[J].通信技術,2011,44(06):135-137.

[9] 王勝銀,付國晴,陳周國,等.基于linux平臺的雙機雙工的實現[J].通信技術,2009,42(12):232-234,233.

猜你喜歡
信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息超市
大眾創業(2009年10期)2009-10-08 04:52:00
展會信息
展會信息
展會信息
展會信息
展會信息
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 国产在线观看人成激情视频| 亚洲日韩精品伊甸| 国产成人艳妇AA视频在线| 国产麻豆aⅴ精品无码| AV无码国产在线看岛国岛| 色综合a怡红院怡红院首页| 99re66精品视频在线观看 | 亚洲成人免费在线| 狂欢视频在线观看不卡| 最新无码专区超级碰碰碰| 久久福利片| 成人午夜免费视频| 亚洲无线一二三四区男男| 一本色道久久88| 日本www在线视频| 久久婷婷六月| 性欧美精品xxxx| 精品成人一区二区| 精品一區二區久久久久久久網站| 91麻豆精品国产91久久久久| 真实国产乱子伦视频| 国产精品va免费视频| 国产区人妖精品人妖精品视频| 激情综合网址| 67194亚洲无码| 亚洲妓女综合网995久久| 亚洲最大福利网站| aa级毛片毛片免费观看久| 亚洲综合18p| 欧美三级自拍| 国产真实乱子伦视频播放| 欧美第二区| av尤物免费在线观看| 日韩东京热无码人妻| 免费一级毛片在线播放傲雪网 | 99热这里只有成人精品国产| 国产精品免费露脸视频| 色亚洲成人| 久久狠狠色噜噜狠狠狠狠97视色 | 操国产美女| 五月婷婷丁香色| 国产亚洲视频中文字幕视频| 欧美日本在线观看| 天天干天天色综合网| 亚洲人成网站色7799在线播放| 国产成人综合在线观看| 国产精品香蕉在线| 三级视频中文字幕| 2022精品国偷自产免费观看| 国产波多野结衣中文在线播放| 亚洲高清在线天堂精品| av一区二区人妻无码| 青青草久久伊人| 最新加勒比隔壁人妻| 久久频这里精品99香蕉久网址| 91娇喘视频| 中文字幕无码电影| 国产成人精品视频一区视频二区| 中文字幕在线一区二区在线| 成年午夜精品久久精品| 91亚洲影院| 谁有在线观看日韩亚洲最新视频| 亚洲欧美日韩视频一区| 中国黄色一级视频| 九月婷婷亚洲综合在线| 亚洲国产成人精品无码区性色| 亚洲欧美精品一中文字幕| 欧美性色综合网| 一区二区午夜| 国产在线欧美| 91麻豆国产视频| 在线a视频免费观看| 青青青国产精品国产精品美女| 久久久久亚洲AV成人人电影软件 | 久久午夜夜伦鲁鲁片无码免费| 欧美一级黄片一区2区| 亚洲中文字幕97久久精品少妇| 亚洲中文字幕久久无码精品A| 91视频青青草| 99久久无色码中文字幕| 免费看一级毛片波多结衣| 国产精品毛片一区|