首頁|必讀|視頻|專訪|運(yùn)營|制造|監(jiān)管|大數(shù)據(jù)|物聯(lián)網(wǎng)|量子|元宇宙|博客|特約記者
手機(jī)|互聯(lián)網(wǎng)|IT|5G|光通信|人工智能|云計(jì)算|芯片報(bào)告|智慧城市|移動互聯(lián)網(wǎng)|會展
首頁 >> 企業(yè)報(bào)道 >> 正文

瑞斯康達(dá):在云平臺上利用DPDK和CCK實(shí)現(xiàn)高速加解密

2015年9月22日 14:22  廠商供稿  

    現(xiàn)狀與需求

    云計(jì)算技術(shù)的發(fā)展越來越快,應(yīng)用也越來越廣泛。NFV即網(wǎng)絡(luò)功能虛擬化,就是在電信云的基礎(chǔ)上,實(shí)現(xiàn)傳統(tǒng)和創(chuàng)新的網(wǎng)絡(luò)功能。為了實(shí)現(xiàn)網(wǎng)絡(luò)功能的虛擬化,在電信云里如何實(shí)現(xiàn)高速流量轉(zhuǎn)發(fā),以及加解密功能就十分必要。本文主要介紹了在云平臺里利用DPDK和CCK如何實(shí)現(xiàn)高速加解密功能。

    技術(shù)介紹

    DPDK

    DPDK是X86平臺報(bào)文快速處理的庫和驅(qū)動的集合,使用UIO機(jī)制使網(wǎng)卡驅(qū)動程序運(yùn)行在用戶態(tài),并采用輪詢和零拷貝方式從網(wǎng)卡收取報(bào)文,提高收發(fā)報(bào)文的性能,并且使用hugepage和cpuaffinity機(jī)制提高應(yīng)用程序處理報(bào)文的性能。

    CCK

    IntelCaveCreek(CCK)是Intel推出的帶有加解密功能的高性能處理芯片,最高處理性能可達(dá)50Gbps。

    高性能虛擬網(wǎng)絡(luò)接口

    高性能虛擬網(wǎng)絡(luò)接口(AVP)是云平臺使用DPDK技術(shù)提供的高性能數(shù)據(jù)收發(fā)接口,其具有雙向20Gbps的線速收發(fā)能力。

    基于dpdk的數(shù)據(jù)處理方案

    數(shù)據(jù)收發(fā)

    每個I/Ocore處理一個NIC的數(shù)據(jù)收發(fā),I/Olcore與Workerlcore之間采用ring buffer通信,每個IO RX/TX core會與各個Worker lcore 之間創(chuàng)建一個無鎖的單生產(chǎn)者單消費(fèi)者ring隊(duì)列,用于報(bào)文的傳遞。

    I/Ocore采用輪詢的方式從網(wǎng)卡收包,收到報(bào)文后,直接將報(bào)文的內(nèi)存地址放入Workercore的RX隊(duì)列中;同樣采用輪詢的方式從Workercore的TX隊(duì)列中收取要發(fā)送的報(bào)文,再通過網(wǎng)卡將數(shù)據(jù)發(fā)出。數(shù)據(jù)的整個處理過程中傳遞的都是內(nèi)存指針,減少了內(nèi)存拷貝帶來的性能損失。

    數(shù)據(jù)分流

    對于上述方案,每個網(wǎng)卡對應(yīng)一個I/Ocore,但Workercore可能有多個,這就需要I/Ocore具備loadbalance功能,根據(jù)分流原則將收到的數(shù)據(jù)分發(fā)到不同的Worker core中。

    數(shù)據(jù)收發(fā)過程

  • I/ORX core從網(wǎng)卡收包,將報(bào)文放入內(nèi)存中,并對數(shù)據(jù)包進(jìn)行解包,解析出源目的ip地址、源目的port等信息;
  • I/ORX core根據(jù)分流原則將報(bào)文所在的內(nèi)存地址放入對應(yīng)Worker core的RX ring隊(duì)列,Worker core從RX ring隊(duì)列收包;
  • Workercore對數(shù)據(jù)進(jìn)行加解密處理;
  • I/OTX core從Worker core的TX隊(duì)列中取出報(bào)文,經(jīng)過路由查找等操作后從相應(yīng)網(wǎng)卡發(fā)出。

    基于CCK的加解密處理

    CCK加速卡使用QuickAssist技術(shù)提供高速的加解密功能。QuickAssist專為基于數(shù)據(jù)平面的加解密提供一套API,以提高加解密的性能。為提高數(shù)據(jù)的存取效率,報(bào)文和操作參數(shù)都是以物理地址的方式傳送到CCK加速引擎中。

    CCK的加解密過程:

    i. 加解密預(yù)處理,如報(bào)文頭修改、重建等;

    ii. 建立會話instance并構(gòu)建操作參數(shù);

    iii. 調(diào)用CCK驅(qū)動接口,將報(bào)文和操作參數(shù)交由CCK加速引擎執(zhí)行加解密操作;

    iv. 加解密完成后,CCK調(diào)用回調(diào)函數(shù)對報(bào)文進(jìn)行加解密后處理,如計(jì)算checksum。

    在云平臺上基于DPDK和CCK的IPsec加解密方案

    方案描述

    I/Ocore收到包后對數(shù)據(jù)包進(jìn)行解析、分流,并將報(bào)文送到相應(yīng)的Workercore隊(duì)列;Workercore收到報(bào)文后進(jìn)行CCK參數(shù)配置,并將報(bào)文交由CCK進(jìn)行加解密處理。加解密采用異步模式,Worker core將報(bào)文交給CCK后立即返回重新從網(wǎng)卡收包,待CCK執(zhí)行完加解密操作后將加解密后的數(shù)據(jù)放入ring中,Worker core下次輪詢時將ring中的報(bào)文讀出,再繼續(xù)進(jìn)行路由等處理。

    Demo測試

    Demo測試是在云平臺中進(jìn)行的,使用4個core(頻率2.5GHz,兩個用于I/O,兩個處理加解密),兩個10G的AVP接口,一塊CCK卡(DH8950)。單向數(shù)據(jù)轉(zhuǎn)發(fā)和加解密性能如下圖所示。從結(jié)果分析,對于512以下的報(bào)文最多可以達(dá)到50%的線速轉(zhuǎn)發(fā)和40%線速的加解密處理,但對于1400以上的大包可以做到線速轉(zhuǎn)發(fā)和加解密處理。

編 輯:孫秀杰
聲明:刊載本文目的在于傳播更多行業(yè)信息,本站只提供參考并不構(gòu)成任何投資及應(yīng)用建議。如網(wǎng)站內(nèi)容涉及作品版權(quán)和其它問題,請?jiān)?0日內(nèi)與本網(wǎng)聯(lián)系,我們將在第一時間刪除內(nèi)容。本站聯(lián)系電話為86-010-87765777,郵件后綴為#cctime.com,冒充本站員工以任何其他聯(lián)系方式,進(jìn)行的“內(nèi)容核實(shí)”、“商務(wù)聯(lián)系”等行為,均不能代表本站。本站擁有對此聲明的最終解釋權(quán)。
相關(guān)新聞              
 
人物
工信部張?jiān)泼鳎捍蟛糠謬倚聞澐至酥蓄l段6G頻譜資源
精彩專題
專題丨“汛”速出動 共筑信息保障堤壩
2023MWC上海世界移動通信大會
中國5G商用四周年
2023年中國國際信息通信展覽會
CCTIME推薦
關(guān)于我們 | 廣告報(bào)價(jià) | 聯(lián)系我們 | 隱私聲明 | 本站地圖
CCTIME飛象網(wǎng) CopyRight © 2007-2024 By CCTIME.COM
京ICP備08004280號-1  電信與信息服務(wù)業(yè)務(wù)經(jīng)營許可證080234號 京公網(wǎng)安備110105000771號
公司名稱: 北京飛象互動文化傳媒有限公司
未經(jīng)書面許可,禁止轉(zhuǎn)載、摘編、復(fù)制、鏡像