<nobr id="zkazv"></nobr>

      午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
      首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
      中華工控網首頁
        P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
        D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
        電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
      凌華科技服務器刀片完美搭配DPDK技術 顯著提升包轉發服務性能
      凌華科技(中國)有限公司
      收藏本文     查看收藏

        前言

      近年來,隨著市場和技術的發展,越來越多的網絡基礎架構開始向基于通用計算平臺或模塊化計算平臺的架構方向融合,用以支持和提供多樣的網絡單元和豐富的功能,如應用處理、控制處理、包處理、信號處理等。除了節約成本和縮短產品上市時間之外,在機架式系統和不同尺寸的網絡設備上,此架構還可以提供模塊化架構的靈活性以及隨需而定的系統組件獨立升級能力。在傳統的網絡架構中,交換模塊處理In-bandout-of-band系統模塊之間的路由交換,處理器模塊提供應用層和控制層功能,包處理模塊用于數據平面,DSP模塊提供定制化的信號層功能。通過使用Intel® DPDK(Intel® Data Plane Development Kit,Intel® 數據平面開發套件),基于Intel® x86架構的處理器模塊不僅可以實現傳統的處理應用和控制功能,還可以實現智能和高效的包處理。

      該白皮書以IP轉發作為包處理的一個典型示例,說明了如何將凌華科技aTCA-6200刀片式服務器與Intel® DPDK技術整合為單一平臺,提供所需的處理性能,并實現包處理服務性能的提升。首先,我們來比較在沒有使用Intel® DPDK做任何優化時,采用原生 Linux(Native Linux) IP轉發時aTCA-6200的第三層轉發性能。然后,我們再分析采用Intel® DPDK技術之后所獲得的IP轉發性能提升的原因。最后,我們將介紹凌華科技基于Intel® DPDK技術的自己的開發工具包,該工具包可以協助用戶輕松地開發自己的基于Intel® DPDK的應用程序。

       

      凌華科技aTCA-6200

      凌華科技aTCA-6200是一款高集成度的AdvancedTCA處理器刀片,支持2Intel® Xeon® E5-2648L處理器(Sandy Bridge-EP,32nm),每一個處理器可以最多提供820MB的共享緩存。通過使用Intel®超線程技術(Intel® HT技術),每個處理器可以最多支持16個物理線程。除此之外,aTCA-6200還支持8通道的DDR3-1600 VLP RDIMM內存,每個處理器可以支持最大64GB的系統內存。aTCA-6200還包含了豐富的網絡I/O接口,包含2個兼容PICMG 3.1 option 1/910GbE口(XAUI,10GBase-KX4),以及最多610/100/1000BASE-T千兆以太網端口,可分別連接至前面板,AdvancedTCA Base接口通道和后走線千兆以太網口。

      凌華科技aTCA-6200處理器刀片主要針對運營商級別的安全和電信應用,同樣在網絡基礎設施中也可作為IMS服務器、媒體網關、包檢測服務器、流量管理服務器和WLAN接入點控制器等。

      下圖1的功能示意圖展示了凌華科技aTCA-6200的詳細架構。


      1:aTCA-6200功能示意圖

       

      Intel DPDK

      Intel® DPDK(Intel® Data Plane Development Kit,Intel® 數據平面開發套件)是一個專為Intel®架構處理器提供的輕量級運行環境。它提供了低功耗和Run-to-Completion(RTC,運行到完成)模式,以此最大限度的提升數據包的處理性能。而且Intel® DPDK還包含了優化的和高效的函數庫,為用戶提供豐富的選擇,例如我們熟知的環境抽象層(EAL,Environment Abstraction Layer),它負責初始化和分配低級資源,同時隱藏來自應用和函數庫的環境特性,并且獲取低級資源,如內存空間,PCI設備,定時器和控制臺。

      環境抽象層(EAL)提供優化的輪詢模式驅動(PMD,Poll Mode Driver),內存和緩存管理,定時器,調試和包處理API,其中有些功能也可以由Linux操作系統提供。為使應用層間的相互協作更加便利,環境抽象層(EAL)與標準的GNU C Library(GLIBC)一起,提供集成了更高級別應用的完整API

      下圖2為軟件層級結構圖。


      2:Linux應用環境中的EALGLIBC

       

      測試拓撲結構

      為了測量aTCA-6200在第三層進行處理和轉發IP包的速度,我們使用圖3中所示的環境進行測試。


      3: IP轉發測試環境

      如圖3所示,兩片凌華科技aTCA-3400交換刀片,通過使用FASTPATH®網絡軟件,為安裝在凌華科技aTCA-8505機箱中的3片處理器刀片上自帶的10GbE Fabric1GbE Base接口通道提供了無阻礙的互連交換,并支持全網(Full-Mesh)拓撲結構。因此,每個aTCA-3400交換刀片可以提供至少一個FabricBase接口,用以連接到每個處理器刀片,例如安裝在第5槽的aTCA-6200刀片(被測設備)。

      Lxia XM12測試系統,兼容RFC 2544吞吐量基準,通常被用來作為包數據的模擬器,用以發送不同幀大小的IP數據包,并收集最終的統計數據,如每秒幀數和吞吐量。

      根據上圖所示的測試環境拓撲結構,aTCA-6200作為處理器刀片,包含了四個千兆以太網口:兩個來自前面板(Flow 1Flow 2),另外兩個是通過aTCA-3400 Base交換實現的Base接口(Flow 3Flow 4)。除了這41GbE的接口之外,aTCA-6200還有210GbE的接口通過aTCA-3400交換板連至lxia XM12(Flow 5Flow 6)

      在這個測試配置中,aTCA-6200作為被測設備(DUT),負責接收來自lxia測試系統的IPv4數據包,并在第三層處理這些數據包(例如數據包解封裝,IPv4報頭校驗和驗證,路由表查找和數據包封裝),然后根據路由表查找結果將數據包返回至lxia XM12。所有的六個流向都是雙向的:例如,lxia XM12通過1/2/3/4/5/6接口發送幀數據給aTCA-6200,并分別通過1/2/3/4/5/6接口接收幀數據。

       

       

      測試方法

       
       

      為了評估Intel® DPDK如何在凌華科技aTCA-6200上實現包轉發服務的提升,在下面的兩個測試案例中我們使用了基于Intel® DPDKIP包轉發應用:

      Native Linux下的性能

      在這個測試環境中,aTCA-6200安裝了64Ubuntu Server 11.10。同目前Linux其他版本一樣,IP轉發功能默認是禁用的,需啟用IP轉發功能,同時使用以下命令禁用ufw服務。

      # sudo ufw disable
      # sysctl net.ipv4.ip_forward
      net.ipv4.ip_forward = 0

      同上,將net.ipv4.ip_forward設置為0,當前內核配置下的IP轉發功能將被禁用。但是通過以下命令可以立即啟用:


      # sysctl -w net.ipv4.ip_forward = 1
      or
      # echo 1 > /proc/sys/net/ipv4/ip_forward

      如果在/etc/sysctl.conf中將net.ipv4.ip_forward設置為1,并重啟網絡服務,IP轉發功能將默認啟用,如下所示:

      #echo "net.ipv4.ip_forward = 1">/etc/sysctl.conf
      # /etc/init.d/network restart

       
      使用Intel® DPDK后的性能
       
      Intel® DPDK可以在不同的模式下運行,如裸機(Bare Metal),帶裸機實時(Bare Metal Run-Time)的LinuxLinux 用戶空間(User Space)。在最初的開發階段,Linux用戶空間(User Space)模式是最容易使用的,請參看Intel Data Plane Development Kit - Getting Started Guide for Linux。中的相關描述。下圖4描述了Intel® DPDKLinux用戶空間(User Space)模式下的詳細功能。


      4:Intel® DPDK 運行在Linux User Space模式下

      如需在aTCA-6200處理器刀片中建立Intel® DPDK,請在該內核中設置如下參數:

      • GLIBC >=2.7

      啟用HPETHPET MMAP配置選項

      # grep HPET /boot/config-`uname -r`
      CONFIG_HPET_TIMER=y
      CONFIG_HPET_EMULATE_RTC=y
      CONFIG_HPET=y
      CONFIG_HPET_MMAP=y
      • HUGETLBFS enabled:
      # mkdir /mnt/huge
      # mount -t hugetlbfs nodev /mnt/huge
      # echo 1024 > /sys/kernel/mm/hugepages/hugepages-\ 2048kB/nr_hugepages
      • 內核驅動程序加載(UIO):
      # sudo /sbin/modprobe uio # needed if uio is built as a module
      # sudo insmod <$RTE_HOME>/x86_64-default-linuxapp-\ gcc/kmod/igb_uio.ko

      在執行Intel® DPDK目標環境后,IP轉發應用就能夠作為Linux用戶空間(User Space)的應用被運行。詳細請參考Intel® Data Plane Development Kit - Getting Started Guide for Linux。

       

      # ./build/l3fwd -c 0x1 -- -p=0xF --config="(0,0,0)"
      Notes:
      • "-c=0x1" means the CPU mask is 0x1, i.e. only the first CPU thread is used for this Layer 3 forwarding application
      • "-p=0xF" means the port mask is 0xF, i.e. only the first four Gigabit ports are initialized and used for this Layer 3 forwarding application
      • --config="(portid, queueid, coreid)"

       

       
      結果
       

      在原生 Linux(Native Linux)和Intel® DPDK兩種不同的環境下測試了aTCA-6200刀片之后,我們比較了4個1GbE端口(2個來自前面板,2個來自Base接口)和2個10GbE Fabric端口在這兩種不同配置下的IP轉發性能。除此之外,我們還測試了當同時使用aTCA-6200 6個網絡端口(4個1GbE和2個10GbE)時,aTCA-6200的合并IPv4轉發性能。

      使用4個1GbE端口時的性能比較


      5: 使用4x 1GbEIP轉發能比較

      原生 Linux(Native Linux)啟用IP轉發功能,并在aTCA-6200的4個1GbE接口上運行IPv4轉發, 64字節大小的幀可以以每秒100萬個的速度被轉發。當幀大小增加到1024字節時,原生 Linux(Native Linux)的IP轉發可以達到100%的線率。但是在實際環境中,幀大小通常小于1024字節,因此100%的線率是無法實現的。但是,在同樣的Linux操作系統下使用Intel® DPDK并運行在僅有的兩個CPU線程上,aTCA-6200能夠以100%的線率轉發幀數據,并且無論幀大小如何設置,都沒有任何的丟幀現象發生,如上面圖5所示。

      相比Native Linux的IP轉發性能,使用了Intel® DPDK之后的aTCA-6200可以將轉發性能提升6倍。

      使用2個10GbE接口時的性能比較


      6:使用2x 10GbEIP轉發能比較

      在2個10GbE Fabric接口上進行IP轉發測試時,無論是在原生 Linux(Native Linux)下還是基于Intel® DPDK,IP的轉發性能相比使用4個1GbE接口時都有很大的提升。如上圖6所示,相比原生 Linux(Native Linux)使用所有的CPU線程,采用了Intel® DPDK的aTCA-6200只需要兩個線程就可以獲得10倍性能的提升。

      aTCA-6200全部的IPv4轉發性能


      7: 使用2x 10GbE + 4x 1GbEIP轉發能比較

      使用aTCA-6200全部的接口(2個10GbE Fabric接口,2個1GbE前置面板接口和2個1GbE Base接口)測試合并的IP轉發性能時,使用Intel® DPDK后的aTCA-6200每秒可以傳輸2700萬個64字節的數據幀。換言之,理論上24Gbps的數據吞吐量有18Gbps可以被轉發(即75.3%的線率)。此外,當數據幀分別為128字節和256字節時,吞吐量的線率可以提升到92.3%,甚至高達99%。


      換言之,理論上24 Gbps的吞吐量高達18 Gbps的可轉發(即線率 75.3%)。此外,即線率的吞吐量提高到92.3%,甚至高達99%,當幀的大小分別設置為128字節,256
      字節。

       

      分析

       

      相比原生 Linux(Native Linux),采用Intel® DPDK技術后能夠大幅提升IP轉性能的主要原因在于Intel® DPDK采用了如下描述的主要特征。

      輪詢模式取代中斷
      通常當數據包進入的時候,Native Linux會從網絡接口控制器(NIC,Network Interface Controller)接收到中斷,然后調度軟中斷,對所得的中斷進行上下文切換,并喚醒系統調用,如read()和write()。

      相比之下,Intel® DPDK采用了優化的輪詢模式驅動(PMD,Poll Mode Driver)代替默認的以太網驅動程序,從而可以不斷地接收數據包,避免軟件中斷,上下文切換和喚醒系統調用,從而大大的節省重要的CPU資源,并且降低了延遲。

      HugePage取代傳統頁
      相比Native Linux的4kB 頁,采用更大的頁尺寸意味著可以節省頁的查詢時間,并減少轉譯查找緩存(TLB,Translation Lookaside Buffer)丟失的可能。


      Intel® DPDK作為用戶空間(User-space)應用運行時,在自己的內存空間中分配HugePage至存儲幀緩沖區,環形和其他相關緩沖區,這些緩沖區是由其他應用程序控制,甚至是Linux內核。本白皮書描述的測試中,總計1024@2MB的HugePage被保留用于運行IP轉發應用。


      零拷貝緩沖區
      在傳統的數據包處理過程中,原生 Linux(Native Linux)解封包的報頭,然后根據Socket ID將數據復制到用戶空間(User Space)緩沖區。一旦用戶空間(User Space)應用程序完成了數據的處理,一個write()系統調用將被喚醒并把數據送至內核,負責將數據從用戶空間(User Space)拷貝至內核緩沖區,封裝包的報頭,最后借助相關的物理端口將數據發出去。顯然,原生 Linux(Native Linux)在內核緩沖區和用戶空間(User Space)緩沖區之間進行拷貝動作,犧牲了很多的時間和資源。

      相比之下,Intel® DPDK在自己保留的內存區域接收數據包,這個區域位于用戶空間(User Space)緩沖區,之后根據配置規則將這些數據包分類到每一個Flow中。在處理完解封包之后,在相同的用戶空間(User Space)緩沖區中使用正確的報頭進行包封裝,最后通過相關的物理端口發送這些數據。


      Run-to-Completion(RTC,運行到完成)和Core Affinity
      在執行應用之前,Intel® DPDK會進行初始化,分配所有的低級資源,如內存空間,PCI設備,定時器,控制臺,這些資源將被保留且僅用于那些基于Intel® DPDK的應用。初始化完成之后,每一個核(或線程,當BIOS設置中啟用了Intel®超線程技術時)將被啟用來負責每一個執行單元,并根據實際應用的需求,運行相同的或不同的工作負載。


      此外,Intel® DPDK還提供了一種方法,即可以設置每個執行單元運行在每一個核心上,以維持更多的Core Affinity,從而避免緩存丟失。在此白皮書描述的測試中,aTCA-6200處理器刀片的物理端口根據Affinity被綁定在兩個不同的CPU線程上。


      無鎖執行和緩存校準
      Intel® DPDK提供的庫和API,被優化成無鎖,以防止多線程應用程序死鎖現象的發生。對于緩沖區、環形和其他數據結構,Intel® DPDK也進行了優化,執行了緩存校準,以達到緩存行(Cache-Line)的效率最大化,同時最大限度減少緩存行(Cache-Line)的沖突。

       

       
      結論
       

      通過對在凌華科技aTCA-6200的4個1GbE和2個10GbE Fabric端口使用和不使用Intel® DPDK(圖5和圖6)的測試結果進行分析,我們可以得出結論,在相同的硬件平臺下,使用Intel® DPDK后的Linux僅用兩個CPU線程進行IP轉發的性能,與原生 Linux(Native Linux)使用全部的CPU線程進行IP轉發的性能相比,前者是后者的10倍。


      從圖7中我們可以很容易的了解到,aTCA-6200采用Intel® DPDK技術后的IPv4轉發性能,可以讓用戶在遷移包處理應用時(從基于NPU的硬件遷移到基于Intel® x86的平臺上),獲得更好的成本和性能優勢。同時可以采用統一的平臺部署不同的服務,如應用處理,控制處理和包處理服務。

      但是,值得注意的是,Intel® DPDK是一個數據層的開發工具包,并在用戶空間運行,它不是一個用戶可以直接建立應用程序的完整產品。需要特別指出的是,Intel® DPDK不包含需要與控制層(包括內核和協議堆棧)進行交互的工具。


      8:凌華科技開發工具包與控制層和數據層協同工作的原理圖

      如圖8所示,凌華科技已經開發出基于Intel® DPDK的開發工具包,用以管理控制層和數據層,如同控制層的克隆虛擬網卡一樣執行任務,可以在數據層同步物理端口。使用該開發工具包,用戶可以輕松地開發基于Intel® DPDK的應用,并與控制層和數據層進行交互,不僅可以有效提升包處理性能,還能讓開發更簡單,縮短產品上市時間。


       

      狀 態: 離線

      公司簡介
      產品目錄

      公司名稱: 凌華科技(中國)有限公司
      聯 系 人: 張福強
      電  話: 010-58858666轉8830
      傳  真: 010-58858626
      地  址: 北京海淀區上地東路1號盈創動力大廈E座八層西
      郵  編: 100085
      主  頁:
       
      該廠商相關技術文摘:
      基于凌華科技PCI-9846 的航空導航VOR信號綜測儀設計
      通過電源管理和工作負載整合,大幅提升電信業務處理性能
      IEEE 1394b標準及應用簡介
      更多文摘...
      立即發送詢問信息在線聯系該技術文摘廠商:
      用戶名: 密碼: 免費注冊為中華工控網會員
      請留下您的有效聯系方式,以方便我們及時與您聯絡

      關于我們 | 聯系我們 | 廣告服務 | 本站動態 | 友情鏈接 | 法律聲明 | 不良信息舉報
      工控網客服熱線:0755-86369299
      版權所有 中華工控網 Copyright©2022 Gkong.com, All Rights Reserved

      主站蜘蛛池模板: 综合色一色综合久久网| av中文字幕在线二区| 国产又色又刺激高潮视频| 中文字幕一区二区三区久久蜜桃 | 国产自在自线午夜精品| 日韩成人一区二区二十六区| 亚洲综合网一区中文字幕| jizzjizz少妇亚洲水多| 老色鬼在线精品视频| 精品少妇爆乳无码aⅴ区| 日本久久精品一区二区三区| 中文人妻av高清一区二区| 92精品国产自产在线观看481页 | L日韩欧美看国产日韩欧美| 国产大学生自拍三级视频| 十八禁国产一区二区三区| 久久99热只有频精品8| 亚洲精品日本久久久中文字幕| 日韩精品中文字幕第二页| 另类专区一区二区三区| 精品免费看国产一区二区| 中文字幕无码不卡在线| 国产极品粉嫩尤物一区二区| 久热这里只有精品12| 四虎亚洲精品高清在线观看| 欧美一区二区三区成人久久片 | 激情国产一区二区三区四| 欧美成人午夜在线观看视频| 色综合视频一区二区三区| 国产成人高清亚洲一区二区| 精品国产一区av天美传媒| 国内精品视频一区二区三区| 欧美黑人又粗又大又爽免费| 亚洲精品一区二区三区色| 亚洲欧美人成电影在线观看| 又黄又爽又色的少妇毛片| 18禁视频一区二区三区| 天堂久久久久VA久久久久| 亚洲最大成人av在线天堂网| 国产精品白嫩极品在线看| 小嫩批日出水无码视频免费|