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