網卡介紹篇

1.什麼是網卡?

網卡是計算機與局域網互連的設備

網卡,又稱為網絡適配器或網絡接口卡NIC(Network interface Card),是構成計算機網絡系統中最基本的、最重要的和必不可少的連接設備,計算機主要通過網卡接入網絡.

網卡歷史:上世紀80年代末期,國外微機界已經預測,90年代計算機使用的環境就是網絡,事實上也確實如此.局域網的發展在整個計算機網絡領域中有相當大的影響。網卡即局域網與計算機的連接設備.

網卡是局域網中連接計算機和傳統介質的接口,不僅能實現與局域網傳輸介質之間的物理連接和電信號匹配,還涉及幀的發送與接收、幀的封裝與拆封、介質的訪問控制、數據的編碼與解碼以及數據緩存的功能.


2.網卡的演進

網絡在早期發展時,應用、數據都很少,網絡的速率也很低,隻有10M/100M等.而發展到現在,特別是大數據時代,數據成爆發性增長,這就要求網絡的速率更高,延時也更小.


3.網卡的主要功能

網卡在TCP/IP模型中,工作在物理層及數據鏈路層,用於接收和發送計算機數據.

發送數據時,加上首部和尾部;接收數據時,剝去首部和尾部

  • 鏈路管理:主要是CSMA/CD(沖突檢測的載波監聽多路訪問)的實現
  • 編碼與譯碼:物理層數據的編碼與譯碼

網卡主要功能

  • 代表固定的網絡地址
  • 數據的發送與接收
  • 數據的封裝與解封

網卡包括OSI模型的物理層和數據鏈路層。

  • 物理層定義瞭數據傳送與接收所需要的電與光信號、線路狀態、時鐘基準、數據編碼和電路等,並向數據鏈路層設備提供標準接口.
  • 數據鏈路層則提供尋址機構、數據幀的構建、數據差錯檢查、傳送控制、向網絡層提供標準的數據接口等功能.

4.服務器網卡介紹

服務器專用網卡 vs 普通網卡

相對於服務器專用網卡來說,普通網卡指應用在普通PC、工作站、消費級電子產品中的網卡,對網卡的可靠性、安全性等要求不高。而服務器與普通PC工作站的不同在於,服務器一直處於工作中,且要求長時間穩定運行,這就要求服務器網卡具有以下特點:

數據傳輸速度快

服務器時刻處於大數據計算、交換過程中,普通網卡的10Mbps、100Mbps的數據已不滿足大數據流量網絡,當前服務器常用的網卡速率為10Gbps、25Gbps等;

CPU占用率低

服務器的CPU是不停工作的,處理著大量的數據。如果一臺服務器的大部分時間都在為網卡提供數據響應,勢必會影響到對其他任務的處理速度。服務器網卡有自帶的控制芯片,可以處理一些CPU任務,從而減少CPU的計算開銷;

安全性能高

如果服務器的網卡出現故障,則服務器將無法接收、發送數據,相當於宕機,所以高可靠性是服務器網卡的一個要求。服務器網卡大都具有容錯功能,如intel的AFT(網卡出錯冗餘)、ALB(網卡負載均衡)等技術.


5.服務器網卡的分類


NIC:Network interface Card

特指以太網卡,支持TCP/IP協議,應用於以太網絡中

Network Card, Gigabit , LC Fiber Optic,2 Ports , PCIE 2.0 X4-8086-1522-2

CNA :Converged Network Adapter

融合網卡,本質上是以太網卡,但支持FCoE功能(FC over Ethernet)

Other Cards , FCoE-SFP Interface , 2 ports , PCIE 2.0 X8-Vendor ID 19a2-Device ID 0710|0714-4

HBA:Host Bus Adapter

特指FC網卡,支持FC協議,連接存儲或光纖交換機

Single Port FC HBA Card , PCIE 2.0 X4|PCIE 1.0 X8-Vendor ID 10DF-Device ID F100-1,8Gbps,Fiber Channel Multimode LC Optic Interface

HCA:Host Channel Adapter

特指Infiniband網卡,即IB卡,應用於高帶寬、低時延的高性能計算項目中;

Other Cards , Infiniband MCX353A-FCBT,FDR Single port-56Gb/sPCIE 3.0 X8-Vendor ID 15b3-Device ID 1003-1


6.網卡接口介紹


7.業界網卡主流廠商

當前主流芯片廠傢有intel、broadcom、cavium和Mellanox.

  • Intel是以太網卡領域重要廠商,基於DPDK構建生態,持續在網卡發力
  • Avago收購Emulex、broadcom後的以太業務後,成立新的母公司Broadcom,整合NIC業務,發力雲場景.
  • Cavium聚焦FC HBA業務,發力存儲HBA場景.
  • Mellanox:業界infiniband唯一廠商,應用於極致性能場景,如HPC,同時也提供以太解決方案.目前已被NVIDIA收購.

8.SmartNIC概念介紹

微軟Azure提出SmartNIC的概念,SmartNIC通過從服務器CPU卸載網絡處理工作負載提高數據中心的服務器性能。用FPGA等加速網卡處理能力;Azure的計算規模定義是Milion級計算實例,Exabyte級存儲空間,Pbps級網絡帶寬.VM之間通過vSwitch互連,vSwitch需要根據VM進行調度和流控.所以說到底復雜度會出現在vSwitch中,微軟實現這個調度的算法稱為VFP(Virtual Filtering Platform),通過VFP來給網卡調度數據流:

標準網卡(NIC)和智能網卡(Smart NIC)的根本區別在於Smart NIC從主機CPU卸載的處理量.Smart NIC是圍繞FPGA平臺設計的,FPGA被設計為接受本地化編程,在硬件實現上,NIC和FPGA不需要做在一起,FPGA通過CCIX連入一個自帶網卡的SoC.


9.SmartNIC產業發展趨勢

  • 2020年,全球市場SmartNIC總量約為25億美金,其中銷售收入以CAGR 10%的速度在增長
  • 高速率如25GE,50GE,100GE,200GE端口到2022年,占比約為45%左右發貨量,主要在新建公有雲中,總銷售占比在60%左右;
  • 未來幾年智能網卡保持60%-70%左右的增長率,普通網卡呈現下降趨勢

10.SmartNIC實現

10-1.實現形式

基於DPU(數據處理單元)的SmartNIC十分火熱,SmartNIC跟傳統NIC有什麼區別,它們的作用是什麼?

  • NIC是插入服務器或存儲盒以實現到以太網網絡連接的PCIe卡.
  • 基於DPU的SmartNIC不僅具有簡單的連接性,而且還可以在NIC上實現網絡流量處理實現數據加速.

由於SmartNIC卡提供商產品架構體系不同,導致業界對基於DPU的SmartNIC的定義完全集中在技術實現上,這導致基於某種技術實現SmartNIC的廠商認為,隻有他們制造的NIC類型才有資格成為SmartNIC,但這是有問題的,因為基於DPU(數據處理單元)的SmartNIC可以基於ASIC,FPGA和片上系統(SOC)技術實現.


10-2.SmartNIC不同實現技術對比

不同技術實現形式都在成本、編程的簡易性和靈活性方面有各種權衡

ASIC具有很高的成本效益,可以提供最佳的價格性能,但其靈活性有限。雖然基於ASIC的NIC(例如Mellanox ConnectX-5)可以具有相對容易配置的可編程數據路徑,但最終功能將受到基於ASIC中定義的功能的限制.

FPGA NIC(例如Mellanox Innova-2 Flex相比之下)是高度可編程的,並且可以花費足夠的時間和精力來相對有效地支持幾乎任何功能(在可用門的限制內),然而,眾所周知,FPGA難以編程且價格昂貴.

因此,對於更復雜的用例,SOC(如Mellanox BlueField DPU可編程SmartNIC)提供瞭似乎是基於DPU的最佳SmartSmart實施選項:良好的價格性能,易於編程且高度靈活.


11.Mellanox ConnectX-5 VPI/InnovaFlex FPGA卡

Innova-2具有PCIe 4.0 x8主機連接性和雙端口SFP28 25GbE功能。板載PCIe交換機允許管理員使用Xilinx FPGA在網絡流量路徑中配置卡以進行高速數據包處理,或者將其配置為暴露給主機系統和網絡以進行計算負載的設備.Xilinx FPGA具有4GB板載DDR4-2400存儲器.

MelaNox加速交換和分組處理(ASAP2)技術允許通過在NIC硬件中處理數據平面來卸載vSwitc/vRouter,同時保持控制平面未被修改.在沒有相關CPU負載的情況下,vSwitc/vRouter性能顯著提高.

由CONTROX-5支持的vSwitc/ vRouter卸載功能包括覆蓋網絡(例如,VxLAN、NVGRE、MPLS、GNYVE和NSH)報頭的封裝和去封裝,以及內部分組的無狀態卸載、分組報頭的NAT功能等等.

  • -每個端口高達100Gb/s連通性
  • -業界領先的吞吐量、低延遲、低CPU利用率和高消息率
  • -利用多主機技術最大化數據中心ROI
  • -基於主機鏈接技術的存儲和機器學習的創新架構設計
  • -X86、Power、ARM和基於GPU的計算和存儲平臺的智能互連
  • -先進的存儲能力,包括NVMe卸載能力
  • -支持靈活流水線編程的智能網絡適配器
  • -包括網絡功能虛擬化(NFV)在內的虛擬化網絡中的前沿性能
  • -啟用高效的服務鏈接能力
  • -高效的I/O合並,降低數據中心成本和復雜性


12.Intel Arria10 FPGA網卡

Intel Arria 10設備相比同類設備可提供高出一個速度等級的內核性能及高達 20% 的最高頻率優勢.

此外,Arria 10系列提供可編程邏輯行業的僅有20nm的基於ARM的SoC,可提供高達1.5 GHz的時鐘速度.Arria 10系列還為FPGA中的浮點運算提供瞭第一個強化支持,實現瞭新的DSP性能水平.

  • 功耗低,可編程功耗技術 — 降低瞭低性能電路的器件功耗,同時在需要的地方實現卓越性能
  • 智能電壓 ID — 器件以更低的電壓運行,而且不會影響性能
  • VCC 電源管理器 — 器件工作在不同電壓電平下,獲得更高性能或者更低功耗
  • 低靜態功耗 — 選擇具有較低最大靜態功耗的器件,業界唯一基於20nm ARM的SoC
  • 多種SoC選擇,具有雙核ARM® Cortex®-A9 MPCoreTM 硬核處理器系統 (HPS)
  • 現有的28nm Arria V SoC設計移植到Arria 10 SoC,無需修改處理器代碼

特性

  • 針對存儲NoF卸載場景
  • SoC FPGA,ARM核心運行Linux和NoF控制面
  • 第三方RoCEv2協議棧

13.Intel Stratix 10 FPGA網卡

英特爾 Stratix 10 FPGA和SoC在性能、功效、密度和系統集成度方面擁有業界領先的優勢.

產品宣傳特點:

  • 異構 3D 系統封裝 (SiP)集成
  • HBM2 DRAM 集成封裝帶來最高的內存帶寬
  • 支持58 Gbps PAM4和 30 Gbps NRZ 的雙模收發器
  • 具有550 萬個邏輯元件 (LE) 的最高密度 FPGA 架構
  • 符合 IEEE 754 標準的單精度 浮點數字信號處理 (DSP) 吞吐量高達每秒 10 萬億次浮點運算 (TFLOPS)
  • 具有最全面安全功能的安全設備管理器 (SDM)
  • 集成四核 64 位ARM* Cortex*-A53 硬處理器系統,主頻高達 1.5 GHz
  • 業經優化和驗證的補充型英特爾 Enpirion® 電源解決方案

14.SmartNIC網卡設計考慮

隨著VxLan等隧道協議的引入和虛擬交換的復雜行為,基於服務器的網絡數據平面的復雜性大大提高;增加網絡接口帶寬意味著在軟件中執行這些功能會在CPU資源上產生不能承受的負載,造成剩餘CPU資源過少;SDN的關鍵需求是網絡數據平面必須互換等需求,要求SmartNIC卡在設計時,需要考慮以下因素:

可編程硬件

Programmable ASIC (Mellanox/Broadcom/QLogic)

FPGA (Intel/Xilinx)

SOC (Huawei/Netronome)

通用處理器

ARM

ATOM(Intel x86)

功率能耗:>75w超出PCIe插槽供電,需外接電源,隨著處理性能提升,功耗必然增長,尤其又引入瞭多核處理器

安全隔離:SmartNIC(即NIC)是檢查網絡流量,阻止攻擊和加密傳輸的第一個/最簡單/最佳的位置.

  • 能夠實現復雜的基於服務器的網絡數據平面功能,包括多個匹配動作處理,隧道終止和發起,計量及流量統計
  • 通過固件加載或客戶編程來支持可替換的數據平面,對可執行的功能幾乎沒有預定的限制
  • 與現有的開源生態系統無縫集成,最大限度地提高軟件功能

15.SmartNIC進展綜述

  • 沒有SmartNIC配合純軟overlay轉發性能很差,必然無法推進
  • SmartNIC無論采用Programmable ASIC、FPGA、SOC,隻是實現手段不同,並無技術高低
  • 關鍵看落地推進速度

SmartNIC接口的標準化

  • 消除運營商被綁定的顧慮
  • 運營商自己不做,所以也明白或多或少被lock-in,但最低要求是接口標準的開放、不私有

SmartNIC技術成熟

  • 公有雲已開始灰度測試
  • 預計會在一兩年內成熟井噴

對電信雲承載網絡方案,還需要考慮控制面(路由協議、路由信息傳輸、路由規格)

  • 可把路由協議跑到SmartNIC上的通用CPU,下沉控制面,比如SRv6
  • SmartNIC獨立的DDR內存、存儲路由表項,不占用主機存儲資源

赞(0)