亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于開源協(xié)議的三層以太網(wǎng)交換設(shè)備

        2020-06-28 05:39:49吳曉晶周利黔鄭江玥
        現(xiàn)代信息科技 2020年24期

        吳曉晶 周利黔 鄭江玥

        摘? 要:文章提出了一種采用開源路由協(xié)議結(jié)合傳統(tǒng)硬件平臺三層以太網(wǎng)交換機的方案。該方案上層路由協(xié)議采用開源Quagga路由協(xié)議,系統(tǒng)平臺采用Linux操作系統(tǒng),底層硬件采用博通交換芯片BCM56150,支持二層生成樹協(xié)議、鏈路發(fā)現(xiàn)協(xié)議等二層協(xié)議,RIP、OSPF、BGP等三層路由協(xié)議以及PIM-SM組播協(xié)議,硬件接口可以支持24路千兆以太網(wǎng)電口以及4個萬兆以太網(wǎng)光口。

        關(guān)鍵詞:以太網(wǎng)交換;Quagga;BCM56150

        中圖分類號:TN915.04 ? ? ? 文獻標識碼:A 文章編號:2096-4706(2020)24-0077-04

        Three Layer Ethernet Switching Equipment Based on Open Source Protocol

        WU Xiaojing,ZHOU Liqian,ZHENG Jiangyue

        (Guiyang Vocational and Technical College,Guiyang? 550081,China)

        Abstract:This paper proposes a scheme of using open source routing protocol combined with traditional hardware platform three-layer Ethernet switch. In this scheme,the upper layer routing protocol adopts open source Quagga routing protocol,the system platform adopts Linux operating system,the underlying hardware adopts Broadcom switching chip BCM56150,supports two-layer protocols such as spanning tree protocol and link discovery protocol,three-layer routing protocols such as RIP,OSPF and BGP,and PIM-SM multicast protocol. The hardware interfaces can support 24 channels of Gigabit Ethernet ports and 4 Gigabit Ethernet light ports.

        Keywords:Ethernet switch;Quagga;BCM56150

        0? 引? 言

        近年來,高密度端口的千兆、萬兆交換機逐漸走進人們的視野,具有路由功能的三層交換機的發(fā)展尤為引人關(guān)注。

        目前二層交換機的技術(shù)非常成熟,二層交換機已被廣泛應(yīng)用到通信行業(yè)的各個角落。二層交換機工作于OSI參考模型的第二層(數(shù)據(jù)鏈路層),它依據(jù)數(shù)據(jù)包中封裝的MAC地址進行數(shù)據(jù)轉(zhuǎn)發(fā),對數(shù)據(jù)包的轉(zhuǎn)發(fā)是通過硬件實現(xiàn)的,因此數(shù)據(jù)傳輸速度非常快,但是二層交換機不能處理不同子網(wǎng)間的數(shù)據(jù)。隨著局域網(wǎng)以及子網(wǎng)間業(yè)務(wù)的迅猛發(fā)展,二層交換機已不能滿足子網(wǎng)間高速度和大容量通信的需求,三層交換技術(shù)在這種情勢下應(yīng)運而生。

        三層交換機集二層交換技術(shù)與三層路由技術(shù)于一身,工作于OSI參考模型的第三層,通過分析IP包的包頭信息對數(shù)據(jù)進行轉(zhuǎn)發(fā)。三層交換機不僅可以實現(xiàn)第三層的路由功能,而且具有線速轉(zhuǎn)發(fā)報文的功能,在多數(shù)三層交換機中采用“一次路由,多次交換”的原理,減少了路由算法的使用頻率,在一定程度上提高了數(shù)據(jù)的交換速度,最為關(guān)鍵的是三層交換機使用ASIC來處理數(shù)據(jù)包的轉(zhuǎn)發(fā),大大提高了轉(zhuǎn)發(fā)速度。

        目前世界上生產(chǎn)交換機的廠商不可計數(shù),國外知名的網(wǎng)絡(luò)交換機設(shè)計廠商有思科、瞻博、惠普等公司,國內(nèi)知名的交換機設(shè)計廠商有華為、中興、H3C等公司,它們都陸續(xù)推出了類似的三層以太網(wǎng)交換機產(chǎn)品,而且這些產(chǎn)品的技術(shù)都非常成熟,在國內(nèi)市場上得到了廣泛的使用。

        1? 硬件設(shè)計方案

        三層以太網(wǎng)交換機的整機框圖如圖1所示。三層以太網(wǎng)交換機由AC/DC轉(zhuǎn)換模塊和路由交換板組成,電源采用功能可滿足需求的通用AC/DC轉(zhuǎn)換模塊,完成交流220V到直流12V的電壓轉(zhuǎn)換。路由交換板提供24路以太網(wǎng)電接口、4路以太網(wǎng)光接口、維護串口和維護網(wǎng)口,實現(xiàn)網(wǎng)絡(luò)功能及協(xié)議、二層功能、QoS特性、安全特性、設(shè)備管理和維護等功能,完成數(shù)據(jù)轉(zhuǎn)發(fā)。

        路由交換板主要由交換芯片、PHY芯片、存儲器芯片等部分組成,硬件框圖如圖2所示。

        1.1? BCM56150芯片

        路由交換板的核心器件是BCM56150交換芯片,該芯片集成了轉(zhuǎn)發(fā)控制器和Cortex-A9處理器。

        交換控制器部分支持L2交換、MAC地址管理、VLAN、風(fēng)暴抑制、生成樹協(xié)議、鏈路聚合、ACL、端口安全、QoS等功能。其主要包括Ingress Pipeline、Egress Pipeline、MMU、內(nèi)置PHY模塊、QSGMII、WC接口模塊等。內(nèi)置PHY模塊可提供16個符合IEEE802.3協(xié)議的1 GbE全雙工以太網(wǎng)接口,減少了外部PHY的數(shù)量,節(jié)約了單板空間,降低了單板功耗。QSGMII接口通過連接外部PHY,可提供8個1 GbE、全雙工以太網(wǎng)接口。WC0通過連接SFP+光模塊,可提供4個10 GbE以太網(wǎng)光接口,作為上行接口。

        內(nèi)置Cortex-A9處理器的最高頻率為1 GHz,提供了豐富的存儲器接口,如DDR2/3接口、串行/并行NOR Flash接口、NAND Flash接口,并提供了MII、UART接口,用于系統(tǒng)調(diào)試和維護。

        1.2? BCM54282芯片

        BCM54282芯片為以太網(wǎng)PHY芯片,BCM56150芯片通過2個QSGMII接口與BCM54282芯片連接,每個接口工作在5.0 Gbps速率下,相當于4個1.25 Gbps的SGMII接口的總速率。BCM54282芯片對外提供8個符合IEEE802.3協(xié)議的1 GbE全雙工以太網(wǎng)接口。BCM56150芯片與BCM 54282芯片的QSGMII接口連接圖如圖3所示。

        1.3? BCM5221芯片

        BCM5221芯片為以太網(wǎng)PHY芯片,與BCM56150內(nèi)置處理器的MII接口相連,提供10/100 Mbit/s自適應(yīng)網(wǎng)口,作為維護網(wǎng)口。

        1.4? ADM3202芯片

        ADM3202芯片為串口電平轉(zhuǎn)換芯片,與BCM56150內(nèi)置處理器的UART接口相連,作為維護串口。

        1.5? 光接口模塊

        BCM56150包含2個WarpCore(WC)模塊,WC模塊實現(xiàn)物理層功能,通過配置可作為上行接口或級聯(lián)接口,并可設(shè)置成不同速率。本應(yīng)用使用WC0接口外接4個SFP+光模塊,并將接口速率設(shè)置為10 GbE。SFP+光模塊負責(zé)完成光/電信號的轉(zhuǎn)換。

        1.6? 存儲芯片

        BCM56150的內(nèi)置Cortex-A9處理器外接4 Gbit的DDR3

        芯片NT5CB256M16BP、256 Mbit的NOR FLASH芯片N25Q 256A13ESF40F、8 Gbit NAND FLASH芯片MT29F8G08AB ACAWP,NOR FLASH用于存放UBOOT,NAND FLASH用于存放內(nèi)核和文件系統(tǒng)。

        1.7? 時鐘模塊

        BCM56150芯片有多種時鐘輸入和時鐘輸出,可以根據(jù)芯片完成的不同功能減少時鐘輸入和輸出數(shù)量。根據(jù)路由交換板實現(xiàn)的功能,輸入時鐘包括25 MHz的基本時鐘和PCIe總線上用到的100 MHz時鐘。輸出時鐘為提供給外部PHY芯片的125 MHz時鐘和提供給外部PCIe設(shè)備的100 MHz時鐘。

        1.8? 復(fù)位模塊

        為BCM56150芯片、BCM54282芯片以及光收發(fā)器單元等提供正確的上電復(fù)位。

        1.9? 電源模塊

        設(shè)備識別單元上的電源模塊為單板上各個功能單元提供穩(wěn)定的電源。電源模塊負責(zé)將12 V的直流輸入轉(zhuǎn)換為1.0 V、

        1.5 V、3.3 V等直流輸出,給單板上的Switch、CPU、PHY、FLASH、SDRAM和光收發(fā)器等提供電源。

        2? 軟件設(shè)計方案

        三層以太網(wǎng)交換機軟件實現(xiàn)二層功能、QoS特性、安全特性、各種網(wǎng)絡(luò)功能和協(xié)議、設(shè)備操作管理和維護等功能,軟件框圖如圖4所示。

        軟件采用模塊化設(shè)計,所有功能模塊均以獨立進程形式加入操作系統(tǒng)平臺,每個模塊都有獨立的地址空間和堆棧。這樣,即使某個功能模塊失效也不會影響到其他模塊。

        路由交換軟件從上到下分為管理平面、控制平面、數(shù)據(jù)平面3個層面:

        (1)管理平面。管理平面向用戶提供平臺的配置和管理功能,支持CLI、WEB、SNMP三種管理方式,其中CLI、SNMP采用開源軟件Quagga自帶的管理模塊,模塊已實現(xiàn)了各路由協(xié)議的配置管理,可在現(xiàn)有模塊的基礎(chǔ)上擴展其他業(yè)務(wù)模塊的維護管理功能。WEB管理模塊自行開發(fā),Web服務(wù)器可采用httpd來解析HTTP協(xié)議,通過CGI socket與各功能模塊互動,進行功能配置。

        (2)控制平面??刂破矫姘鄠€業(yè)務(wù)功能模塊,如路由協(xié)議(OSPF、RIP、BGP、PIM-SSM)、二層協(xié)議(LLDP、MSTP)以及兩個核心模塊BCMUSER、Zebra。

        路由協(xié)議及Zebra模塊采用開源代碼Quagga實現(xiàn),在此基礎(chǔ)上進行修改移植。守護進程Zebra作為三層抽象層,為路由協(xié)議進程交換路由信息,更新內(nèi)核路由表并維護三層接口。

        博通SDK提供API對交換芯片進行控制,BCMUSER模塊作為基礎(chǔ)功能及二層抽象層,根據(jù)配置信息調(diào)用SDK API對相關(guān)功能進行配置。

        (3)數(shù)據(jù)平面。從端口接收數(shù)據(jù),由數(shù)據(jù)平面決定是否將該報文從另一個端口送出。實際產(chǎn)品的轉(zhuǎn)發(fā)分為軟轉(zhuǎn)發(fā)和硬轉(zhuǎn)發(fā)。軟轉(zhuǎn)發(fā)由Linux內(nèi)核實現(xiàn),硬轉(zhuǎn)發(fā)由交換芯片實現(xiàn)。

        2.1? 軟件功能模塊

        2.1.1? Quagga

        Quagga是一款開源路由軟件包,提供的路由服務(wù)基于TCP/IP協(xié)議,支持RIP、OSPF、BGP、PIM-SSM路由協(xié)議。其中PIM-SSM協(xié)議Quagga雖已提供代碼,但還未能正常工作,須自行修改。Quagga采用多進程結(jié)構(gòu),通過一系列相互合作的后臺進程一起構(gòu)建路由表,包括各路由協(xié)議的后臺進程及內(nèi)核路由管理者進程,如ripd、ospfd、bgpd分別用來處理RIP、OSPF、BGP協(xié)議,內(nèi)核路由管理進程Zebra用于不同路由協(xié)議之間的路由重分發(fā)及內(nèi)核路由表的更新。

        Quagga提供了支持SMUX和AgentX協(xié)議的SNMP后臺程序snmpd,并提供了路由協(xié)議的MIBs。三層以太網(wǎng)交換機可在此基礎(chǔ)上拓展管理對象,作為整機的SNMP功能模塊。

        Quagga提供了綜合用戶接口——vtysh,除了提供對路由協(xié)議的配置支持,還可以配置接口標志、接口地址、靜態(tài)路由等,并提供兩種用戶模式,分別是normal模式和enable模式。noraml模式下用戶只能查看系統(tǒng)狀態(tài),enable模式下用戶可以改變系統(tǒng)配置。vtysh作為用戶輸入代理,通過socket連接到每一個后臺進程,三層以太網(wǎng)交換機可在此基礎(chǔ)上拓展其他業(yè)務(wù)模塊的維護管理命令,作為整機的CLI維護管理功能模塊。

        2.1.2? 二層協(xié)議

        三層以太網(wǎng)交換機支持的二層協(xié)議包括多生成樹協(xié)議MSTP和鏈路層發(fā)現(xiàn)協(xié)議LLDP。在所獲取的開源代碼基礎(chǔ)上進行修改移植,與BCMUSER模塊對接,收發(fā)協(xié)議報文并進行處理。

        2.1.3? IP應(yīng)用

        三層以太網(wǎng)交換機支持的IP應(yīng)用包括DHCP Server/Client、DNS,目前均有開源軟件,可在此基礎(chǔ)上修改配置接口,完成與CLI、SNMP、WEB維護管理模塊的對接。

        2.1.4? SDK

        博通SDK提供了BCM API、PHY DRIVER、SAL、HAL等功能。BCM API用于對交換設(shè)備進行控制,使軟件與硬件寄存器、存儲器布局、DMA操作等細節(jié)隔離。PHY DRVIER包含內(nèi)部PHY和外部PHY驅(qū)動,內(nèi)部PHY通過在配置文件中選擇正確的交換芯片即可,SDK若對外部PHY驅(qū)動未提供支持,則需進行移植。SAL提供系統(tǒng)抽象層功能,HAL提供硬件抽象層功能。需根據(jù)硬件交換平臺、交叉編譯環(huán)境、功能需求對SDK進行移植裁剪。SDK可工作于內(nèi)核模式和用戶模式,用戶模式下開發(fā)和調(diào)試相對簡單,本應(yīng)用采用用戶模式。在用戶模式下,SDK代碼被編譯為用戶應(yīng)用程序的一部分,所有的驅(qū)動代碼運行于用戶空間,由于在用戶空間一般不支持對物理設(shè)備的訪問,因此需要為用戶空間的驅(qū)動代碼提供一些機制來實現(xiàn)中斷、DMA、寄存器訪問的虛擬處理??赏ㄟ^編譯SDK后產(chǎn)生的BDE(Broadcom Device Enumerator)內(nèi)核來加載模塊,提供合適的接口,完成內(nèi)核和用戶空間的轉(zhuǎn)換。

        2.1.5? BCMUSER

        BCMUSER模塊是基于SDK提供的API開發(fā)出來的,作為基礎(chǔ)功能層及二層抽象層,該模塊的功能如下:提供適用于CLI、SNMP、WEB配置模塊的接口,根據(jù)配置參數(shù)調(diào)用相關(guān)的SDK API完成對物理端口、MAC地址、VLAN、Qos、安全等功能的設(shè)置;對MSTP、LLDP協(xié)議包進行過濾并將它們發(fā)送至相應(yīng)的協(xié)議進程;提供一個能夠與Zebra守護進程通信的接口,將內(nèi)核路由表里的路由信息寫入芯片的L3層地址表,實現(xiàn)三層硬轉(zhuǎn)發(fā);建立虛擬網(wǎng)絡(luò)接口,設(shè)置過濾規(guī)則,將路由協(xié)議、應(yīng)用報文過濾并經(jīng)過虛擬網(wǎng)口送入TCP/IP協(xié)議棧。

        2.1.6? 操作系統(tǒng)

        操作系統(tǒng)采用Linux,內(nèi)核版本為3.6.5,針對BootLoader、內(nèi)核及文件系統(tǒng)的制作,博通提供了LDK開發(fā)包,其中包含U-BOOT、內(nèi)核、平臺驅(qū)動及Buildroot工具。Buildroot的config文件夾分別針對不同系列的交換芯片,以及基于不同類型FLASH的UBOOT、內(nèi)核、文件系統(tǒng)的制作提供了defconfig文件,可根據(jù)硬件平臺對該文件進行修改。Buildroot工具還提供了第三方軟件的接口,如DHCP、TFTP等,可在配置內(nèi)核時選擇所需功能,Buildroot可自動從指定的服務(wù)器上下載源碼包,自動編譯,搭建需要的根文件系統(tǒng)。

        2.2? 報文收發(fā)機制

        2.2.1? 二層協(xié)議報文收發(fā)

        三層以太網(wǎng)交換機支持的二層協(xié)議包括MSTP、LLDP,BCMUSER設(shè)置過濾規(guī)則,決定哪些協(xié)議報文上送。在接收方向,BCMUSER模塊解析SDK轉(zhuǎn)交的報文,依據(jù)報文類型的不同將報文通過socket通道發(fā)送給相應(yīng)的協(xié)議模塊進行處理。在發(fā)送方向,協(xié)議模塊將報文通過socket通道下發(fā)給BCMUSER模塊,BCMUSER調(diào)用SDK API發(fā)送報文。二層協(xié)議報文收發(fā)如圖5所示。

        2.2.2? 三層協(xié)議報文收發(fā)

        與二層協(xié)議的收發(fā)相比,在BCMUSER模塊與其他模塊之間多了TCP/IP協(xié)議棧處理,所有報文收發(fā)通過TCP/IP協(xié)議棧。BCMUSER通過調(diào)用SDK的KNET API創(chuàng)建虛擬網(wǎng)口,設(shè)置過濾規(guī)則,使協(xié)議數(shù)據(jù)經(jīng)過TCP/IP協(xié)議棧分發(fā)至各協(xié)議模塊。三層協(xié)議報文收發(fā)如圖6所示。

        2.2.3? 數(shù)據(jù)報文轉(zhuǎn)發(fā)

        數(shù)據(jù)轉(zhuǎn)發(fā)可分為硬轉(zhuǎn)發(fā)和軟轉(zhuǎn)發(fā),硬轉(zhuǎn)發(fā)分為二層轉(zhuǎn)發(fā)和三層轉(zhuǎn)發(fā),由交換芯片根據(jù)L2層表和L3層表進行轉(zhuǎn)發(fā);軟轉(zhuǎn)發(fā)由Linux Kernel實現(xiàn)。

        3? 結(jié)果與分析

        根據(jù)上述方案實現(xiàn)的三層以太網(wǎng)交換機,通過與其他品牌的交換機組網(wǎng)互聯(lián),證明該設(shè)備既能夠很好地支持二層以太網(wǎng)數(shù)據(jù)交換(當端口切換到三層模式后,能夠?qū)W習(xí)到對端路由信息),又能夠?qū)崿F(xiàn)三層數(shù)據(jù)包的硬轉(zhuǎn)發(fā)。在協(xié)議方面,設(shè)備支持二層模式下的VLAN、LLDP、MSTP等協(xié)議,支持三層模式下的RIP、OSPF、BGP、PIM-SM等三層路由協(xié)議及組播協(xié)議。

        4? 結(jié)? 論

        本文根據(jù)現(xiàn)實需求,提出了一種基于開源路由協(xié)議的三層以太網(wǎng)交換機方案。通過實物測試表明,設(shè)備能夠滿足設(shè)計要求。開源路由協(xié)議的使用,大幅降低了設(shè)備的研制成本,使設(shè)備更具有經(jīng)濟性和靈活性。

        參考文獻:

        [1] 周潔瓊.基于交換式以太網(wǎng)的列車通信網(wǎng)絡(luò)實時通信技術(shù)研究 [D].北京:北京交通大學(xué),2014.

        [2] 王濤,王立德,周潔瓊,等.基于交換式以太網(wǎng)的列車通信網(wǎng)絡(luò)實時性研究 [J].鐵道學(xué)報,2015,37(4):39-45.

        [3] 張俊俊,陳慶華,喬廬峰,等.高性能星載IP交換機路由查找算法的研究與實現(xiàn) [J].通信技術(shù),2015,48(12):1395-1399.

        [4] 梅立春,喬廬峰,陳慶華,等.星載IP交換機中負載平衡CIOQ交換結(jié)構(gòu)的設(shè)計 [J].通信技術(shù),2017,50(4):720-728.

        [5] 吳振華,胡鵬.VANET中路由協(xié)議分析 [J].通信學(xué)報,2015,36(S1):75-84.

        [6] 李娜,王桐.VANET中基于動態(tài)傳輸范圍的可靠性路由協(xié)議 [J].哈爾濱商業(yè)大學(xué)學(xué)報(自然科學(xué)版),2019,35(6):677-682+688.

        [7] 李達,楊禎,劉輝席,等.嵌入式Linux的LoRaWAN集成網(wǎng)關(guān)系統(tǒng)設(shè)計 [J].單片機與嵌入式系統(tǒng)應(yīng)用,2019,19(7):10-14.

        [8] 鄭紅黨,劉燦斌,孫彥景,等.基于Linux的遠程控制系統(tǒng)綜合實驗設(shè)計 [J].實驗技術(shù)與管理,2019,36(2):137-140.

        作者簡介:吳曉晶(1984—),女,漢族,廣東揭陽人,講師,本科,研究方向:電子與通信;周利黔(1972—),女,漢族,江蘇無錫人,副教授,本科,研究方向:計算機網(wǎng)絡(luò);鄭江玥(1990—),女,漢族,浙江麗水人,講師,大學(xué)本科,研究方向:信息技術(shù)。

        成人免费毛片内射美女-百度| 久久久久久久综合日本| 亚洲视频在线观看青青草| 粗大挺进孕妇人妻在线| 91精品人妻一区二区三区久久久| 国产成人精品a视频| 欧美z0zo人禽交欧美人禽交| 中文字幕日韩精品美一区二区三区| 天堂av一区二区在线| 日韩av一区二区网址| 久久精品中文闷骚内射| 色悠久久久久综合欧美99| 91在线区啪国自产网页| 成人大片在线观看视频| 国产欧美成人一区二区a片 | 亚洲av无码乱码精品国产| 亚洲精品久久久久久久久av无码| 国产精品国产三级在线高清观看 | 成人无码av免费网站| 免费a级毛片无码a∨免费软件| 精品人妻少妇一区二区中文字幕| 日本黄色一区二区三区| 亚洲av国产av综合av卡| 亚洲国产高清在线观看视频| 日产精品一区二区三区免费| 在线观看麻豆精品视频| 最新精品国偷自产在线| 国模精品二区| 国产麻豆极品高清另类| 久久精品国产亚洲av麻豆色欲| 女邻居的大乳中文字幕| 国产亚洲视频在线观看网址| bbbbbxxxxx欧美性| 日韩一级黄色片一区二区三区| 色偷偷偷久久伊人大杳蕉| 456亚洲老头视频| 亚洲一区二区三区免费av| 欧美牲交a欧美牲交aⅴ| 无限看片在线版免费视频大全| 一区二区三区国产偷拍| 一区二区三区无码高清视频|