国产91九色_日本68xxxx_欧美高清另类自拍视频在线看_欧美人禽_99久久婷婷国产综合精品青牛牛_亚洲射情

首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
中華工控網首頁
  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

主站蜘蛛池模板: 久久国产精品久久久久久 | 国产精品自在线拍国产 | 欧美一区二区三区的 | 成人福利一区 | www.射| 精品久久久久久亚洲综合网 | 日韩av一区在线 | 国产精品一二三区 | ww视频网站看禁片 | 久久成年 | 免费观看日韩 | 偷拍视频一区二区 | 一区免费观看 | 国产精品资源 | 国产精彩在线视频 | 国产黄色免费网站 | 精品久久久av | 日本精品一区二区三区在线观看视频 | 免费观看污污视频 | 一区二区三区免费 | 日韩高清在线免费观看 | 久久成年人视频 | 另类 欧美 日韩 国产 在线 | 91视频久久久久久 | 中文字幕乱码日本亚洲一区二区 | 精品久久久久久综合日本 | 亚洲精品久久久久国产 | 国产一区二区三区高清视频 | 午夜免费一区二区 | 免费黄网址| 91网站免费看| 99精品在线 | 亚洲国产精品99久久久久久久久 | 天堂一区二区三区 | 日韩精品一区二区三区免费视频 | 精品成人av一区二区在线播放 | 久久久久久久久久久网 | 国产欧美高清在线观看 | 欧美视频日韩视频 | 欧美成人国产va精品日本一级 | 欧洲成人午夜免费大片 |