說起服務(wù)器,大家首先想到的就是“三大件”,即CPU, 內(nèi)存,硬盤,但是作為服務(wù)器不可或缺的部件,網(wǎng)卡也應(yīng)該占據(jù)一席之地,網(wǎng)卡的功能主要有兩個:
一是將服務(wù)器的數(shù)據(jù)封裝為幀,并通過網(wǎng)線將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上去;
二是接收網(wǎng)絡(luò)上其它設(shè)備傳過來的幀,并將幀重新組合成數(shù)據(jù),發(fā)送到所在的服務(wù)器中。
網(wǎng)卡最重要的參數(shù)是速率,代表著服務(wù)器網(wǎng)絡(luò)的整體處理能力。云計算,大數(shù)據(jù)處理,高速存儲的需求推動了網(wǎng)絡(luò)帶寬的發(fā)展,云上客戶對網(wǎng)絡(luò)速度及網(wǎng)絡(luò)帶寬的關(guān)注度不斷提升。業(yè)務(wù)對數(shù)據(jù)中心的流量產(chǎn)生巨大的沖擊,企業(yè)需要大量、大帶寬的服務(wù)器組成集群系統(tǒng),協(xié)同完成工作。網(wǎng)卡速率從1G到10G普及用了十年時間,但是從10G到加速普及到25G,只用了不到3年時間,互聯(lián)網(wǎng)頭部公司已經(jīng)基本切換到25G網(wǎng)絡(luò),甚至已經(jīng)開始部署50G和100G網(wǎng)卡。
光潤通科技光纖網(wǎng)卡展示
網(wǎng)卡速率的增長可以解決傳輸帶寬的問題,但是數(shù)據(jù)包處理的延時卻不能很好解決,在一些在線交易業(yè)務(wù)中,如金融證券行業(yè),要求數(shù)據(jù)包能夠最快的得到處理。在云計算場景下,由于天然是分布式的系統(tǒng),有大量的數(shù)據(jù)在東西向流轉(zhuǎn),如果延時過大,將導致業(yè)務(wù)不可用。在此情況下傳統(tǒng)的x86服務(wù)器已經(jīng)不能很好滿足業(yè)務(wù)的需求,于是出現(xiàn)了如DPDK這種軟件的解決方案,采用輪訓方式和在用戶態(tài)實現(xiàn)數(shù)據(jù)包處理,能夠明顯提高服務(wù)器網(wǎng)絡(luò)性能。DPDK最大的好處就是投入少,收益大,傳統(tǒng)網(wǎng)卡加上軟件套件就可以實現(xiàn)性能提升,缺點在于需要專門劃出一部分CPU核來處理數(shù)據(jù)包。但是隨著VXLAN等overlay協(xié)議以及OpenFlow、Open vSwitch(OVS)等虛擬交換技術(shù)的引入,使得基于服務(wù)器的網(wǎng)絡(luò)數(shù)據(jù)平面的復雜性急劇增加,傳統(tǒng)網(wǎng)卡固定功能的流量處理功能無法適應(yīng)SDN和NFV ,而且網(wǎng)絡(luò)接口帶寬的增加意味著在軟件中執(zhí)行這些功能會占用大量的CPU資源,和當前云計算的理念背道而馳,于是智能網(wǎng)卡的概念應(yīng)運而生。
不同于傳統(tǒng)網(wǎng)卡,智能網(wǎng)卡同時具備高性能及可編程的能力,既能處理高速的網(wǎng)絡(luò)數(shù)據(jù)流,又能對網(wǎng)卡進行編程,實現(xiàn)定制化的處理邏輯。
目前,智能網(wǎng)卡設(shè)計采用以下三種形式之一:
多核智能網(wǎng)卡,基于包含多個CPU內(nèi)核的ASIC
基于現(xiàn)場可編程門陣列(FPGA)的智能網(wǎng)卡
SOC,即片上系統(tǒng),它將硬件可編程FPGA與ASIC網(wǎng)絡(luò)控制器相結(jié)合
不同的實現(xiàn)方式在成本、可編程性和靈活性方面各有優(yōu)劣,ASIC具有價格優(yōu)勢,但靈活性有限,盡管基于ASIC的NIC相對容易配置,但最終功能將受到基于ASIC中定義的功能的限制,某些較復雜的負載可能無法得到支持, 相比之下,F(xiàn)PGA NIC是高度可編程的,并且可以相對有效地支持幾乎任何功能,不過FPGA最大的問題是編程難度大且價格昂貴,對一些小客戶不太友好,針對更復雜的用例,SOC是最佳的SmartNIC選擇,價格與性能兼具、易于編程且高度靈活。
具體說來,智能網(wǎng)卡為數(shù)據(jù)中心網(wǎng)絡(luò)提供了幾項重要優(yōu)勢,包括:
1.通過直接在網(wǎng)絡(luò)接口卡上執(zhí)行任務(wù)來加速網(wǎng)絡(luò)、存儲和計算任務(wù),消除了在服務(wù)器上運行這些工作負載的需要,并釋放了CPU周期,從而顯著提高服務(wù)器性能并降低總體功耗,進而降低總體擁有成本。
2.卸載日益復雜的網(wǎng)絡(luò)任務(wù),包括諸如VxLAN等復雜隧道協(xié)議和OVS虛擬交換機等,使服務(wù)器處理器能夠執(zhí)行實際的創(chuàng)收性任務(wù)。
3.通過在更快速的硬件而不是較慢的軟件中去執(zhí)行卸載功能,從而提高有效網(wǎng)絡(luò)帶寬和吞吐量,并提供附加的、靈活的功能,以適應(yīng)新的和不斷變化的網(wǎng)絡(luò)和存儲協(xié)議。
其實智能網(wǎng)卡在大型互聯(lián)網(wǎng)公司及頭部CSP上已經(jīng)開始應(yīng)用,核心思想就是把業(yè)務(wù)負載卸載到專用硬件上,如微軟在Azure上使用FPGA來實現(xiàn)CPU卸載、網(wǎng)絡(luò)加速,而AWS甚至發(fā)展出一套Nitro 架構(gòu)來實現(xiàn)VPC, EBS,存儲等業(yè)務(wù)的硬件卸載,國內(nèi)阿里巴巴的神龍架構(gòu)思想類似,其架構(gòu)核心就是一塊MOC卡,整個Hypervisor完完全全運行在這張卡上面,服務(wù)器的CPU和內(nèi)存完全可以釋放出來給客戶。
FPGA作為硬件加速平臺,對網(wǎng)絡(luò)功能進行卸載和加速。這樣能大幅提高硬件資源的利用率,同時能帶來性能的提升和能耗的下降,降低了部署和運行成本。同時結(jié)合業(yè)界其他公司的動態(tài),各大互聯(lián)網(wǎng)公司、云服務(wù)提供商、電信網(wǎng)絡(luò)提供商都開始嘗試在他們的數(shù)據(jù)中心中部署光潤通FPGA進行硬件加速。可編程網(wǎng)卡在加速虛擬網(wǎng)絡(luò)之外,還可以加速網(wǎng)絡(luò)功能、數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)等。為此,F(xiàn)PGA可編程網(wǎng)卡實現(xiàn)云計算數(shù)據(jù)中心計算、網(wǎng)絡(luò)、內(nèi)存存儲節(jié)點的全棧加速。
光潤通FPGA網(wǎng)卡
光潤通(GRT)始創(chuàng)于2008年,致力于光通信產(chǎn)品的研發(fā)與制造,提供服務(wù)器網(wǎng)卡標準化及FPGA定制服務(wù),擁有資深研發(fā)及技術(shù)支持團隊,可針對不同用戶需求提供FPGA網(wǎng)卡定制開發(fā)服務(wù),滿足客戶多樣化需求,開發(fā)周期短,效率高。可以,已成功為幾百家國內(nèi)外大中小型客戶提供定制化服務(wù),獲得客戶的好評與信賴。光潤通始終以技術(shù)為核心,客戶需求為向?qū)ВT就業(yè)內(nèi)定制化標桿。