本書定位為NVIDIA BlueField DPU和NVIDA DOCA的入門學(xué)習(xí)參考,內(nèi)容涵蓋DPU的簡介、技術(shù)優(yōu)勢及未來技術(shù)發(fā)展路徑,包括NVIDIA BlueField DPU在結(jié)構(gòu)通用化、功能多樣化、應(yīng)用廣泛化和場景豐富化方面的前景展望,NVIDA DOCA軟件框架開發(fā)環(huán)境配置,以及基于NVIDIA BlueField DPU利用NVIDA DOCA軟件框架的應(yīng)用程序開發(fā)實踐案例。讀者可以通過本書對DPU硬件架構(gòu)與軟件開發(fā)有一個整體了解,學(xué)習(xí)如何啟用NVIDIA BlueField DPU以及搭建NVIDIA DOCA軟件開發(fā)環(huán)境,并通過深入了解NVIDIA DOCA應(yīng)用程序開發(fā)用例來掌握如何實現(xiàn)軟件定義、硬件加速數(shù)據(jù)中心基礎(chǔ)設(shè)施的應(yīng)用程序或服務(wù),并據(jù)此開啟自己的開發(fā)之旅。
隨著人工智能、大數(shù)據(jù)、5G等數(shù)字化技術(shù)在全球全產(chǎn)業(yè)中的持續(xù)發(fā)展和不斷滲透,虛擬化推進了軟件定義數(shù)據(jù)中心的發(fā)展,使業(yè)務(wù)應(yīng)用變得更靈活,使運維管理變得更簡便;微服務(wù)推進了業(yè)務(wù)應(yīng)用程序的解耦,使得數(shù)據(jù)中心東西數(shù)據(jù)流量暴增;深度學(xué)習(xí)推進了GPU加速計算的應(yīng)用,使得服務(wù)器面臨數(shù)據(jù)吞吐量的挑戰(zhàn)。因此,基礎(chǔ)設(shè)施逐步成為數(shù)據(jù)中心最大的工作負載之一,網(wǎng)絡(luò)負載也呈現(xiàn)指數(shù)級增長,網(wǎng)絡(luò)、存儲、安全、虛擬化、容器等數(shù)據(jù)中心基礎(chǔ)設(shè)施操作成為數(shù)據(jù)中心的瓶頸。 NVIDIA BlueField DPU的出現(xiàn)提供了一個很好的解決方案,把數(shù)據(jù)中心基礎(chǔ)設(shè)施操作從CPU卸載到BlueField DPU上,讓CPU和GPU算力集中到業(yè)務(wù)應(yīng)用程序和業(yè)務(wù)負載上,產(chǎn)生更大的算力價值。通過卸載、加速、隔離數(shù)據(jù)中心基礎(chǔ)設(shè)施,BlueField DPU使基礎(chǔ)設(shè)施操作獨立于CPU和GPU,實現(xiàn)了軟件定義、硬件加速數(shù)據(jù)中心基礎(chǔ)設(shè)施,以統(tǒng)一的數(shù)據(jù)中心架構(gòu)作為單元進行管理,并與CPU和GPU共同形成了新一代數(shù)據(jù)中心的三大支柱,適應(yīng)未來各種規(guī)模的云、數(shù)據(jù)中心或邊緣計算等部署環(huán)境,為各種工作負載提供安全加速的基礎(chǔ)設(shè)施。
隨著云計算的蓬勃發(fā)展,越來越多的企業(yè)和組織選擇將業(yè)務(wù)遷移到云端,以獲得更加穩(wěn)定和安全的服務(wù),同時大幅降低IT運維的成本。云計算帶來了大量的數(shù)據(jù)流量和計算負載,這給數(shù)據(jù)中心的網(wǎng)絡(luò)基礎(chǔ)設(shè)施和數(shù)據(jù)處理能力帶來了很大的挑戰(zhàn)。另外,隨著深度學(xué)習(xí)技術(shù)的成熟、GPU算力的提升以及大量訓(xùn)練數(shù)據(jù)的獲取,人工智能(AI)類應(yīng)用得到了蓬勃發(fā)展。AI類工作負載在數(shù)據(jù)中心中的計算占比也在顯著上升,這對數(shù)據(jù)中心的數(shù)據(jù)處理能力提出了更高的要求。DPU(Data Processing Unit)的出現(xiàn)正好能滿足這些需求。
DPU是一種相對較新的芯片類型,伴隨著云計算和人工智能的快速發(fā)展應(yīng)運而生。它的出現(xiàn)改變了數(shù)據(jù)中心的運行方式,使得數(shù)據(jù)中心的網(wǎng)絡(luò)基礎(chǔ)設(shè)施變得更加智能、高效和安全。NVIDIA BlueField DPU可以與CPU和GPU等處理芯片以及其他設(shè)備協(xié)同工作,緊密配合,實現(xiàn)數(shù)據(jù)處理任務(wù)在多個芯片之間的優(yōu)化、分配和協(xié)調(diào),進一步釋放CPU的處理能力,最小化延遲,從而提高數(shù)據(jù)中心集群的整體數(shù)據(jù)處理性能。另外,NVIDIA BlueField DPU還能夠讓IT人員更有效地管理、監(jiān)控和維護數(shù)據(jù)中心,從而簡化數(shù)據(jù)中心運營流程,同時提供先進、強大的安全功能,助力保護數(shù)據(jù)安全和隱私。在數(shù)據(jù)中心中,DPU扮演著越來越重要的角色。
NVIDIA DOCA是加速NVIDIA BlueField DPU應(yīng)用程序開發(fā)的軟件框架。DOCA之于BlueField DPU,就好比CUDA之于NVIDIA GPU。DOCA提供了一系列的工具、服務(wù)、API和開發(fā)庫,支持面向網(wǎng)絡(luò)數(shù)據(jù)包處理的硬件卸載和加速、面向存儲的開發(fā)套件及SNAP服務(wù)、面向安全加速的工具及開發(fā)庫,以及面向虛擬化的設(shè)備模擬等。NVIDIA DOCA為基于NVIDIA BlueField DPU進行開發(fā)的開發(fā)者提供了廣泛、深入的應(yīng)用程序開發(fā)支持,極大地簡化了開發(fā)流程。NVIDIA DOCA的出現(xiàn)使得面向數(shù)據(jù)中心網(wǎng)絡(luò)基礎(chǔ)設(shè)施的編程變得更加高效、簡單和靈活。
本書是為使用NVIDIA BlueField DPU和NVIDIA DOCA的開發(fā)人員和數(shù)據(jù)科學(xué)家提供的實用指南。除了必要的概念和背景介紹,本書還結(jié)合很多DPU實際落地場景給出了翔實的操作教程。無論你是資深開發(fā)人員,還是剛開始接觸NVIDIA BlueField DPU的應(yīng)用程序開發(fā)者,都能從本書中找到所需的必要知識。通過閱讀本書,你會更深刻地理解NVIDIA BlueField DPU和NVIDIA DOCA,以及如何利用與它們相關(guān)的強大的軟硬件技術(shù)來構(gòu)建云和AI應(yīng)用所需的數(shù)據(jù)中心網(wǎng)絡(luò)基礎(chǔ)設(shè)施。
賴俊杰
NVIDIA中國區(qū)工程和解決方案高級總監(jiān)
目 錄
序
在線資源
致謝
第一部分 DPU的技術(shù)發(fā)展背景
第1章 現(xiàn)代數(shù)據(jù)中心基礎(chǔ)設(shè)施變革2
1.1 現(xiàn)代數(shù)據(jù)中心面臨的全新挑戰(zhàn)2
1.2 DPU的提出與演進6
1.2.1 DPU定義的提出6
1.2.2 DPU演進的核心驅(qū)動力7
1.3 DPU的應(yīng)用場景與價值10
1.4 DPU應(yīng)用優(yōu)勢12
本章小結(jié)13
第二部分 NVIDIA BlueField DPU概述及應(yīng)用
第2章 NVIDIA BlueField DPU概述16
2.1 NVIDIA BlueField DPU產(chǎn)品簡介16
2.1.1 軟件定義網(wǎng)絡(luò)加速17
2.1.2 軟件定義存儲加速18
2.1.3 安全加速19
2.2 NVIDIA BlueField-3 DPU技術(shù)特性21
2.2.1 NVIDIA BlueField-3 DPU技術(shù)規(guī)格22
2.2.2 NVIDIA BlueField-3 DPU產(chǎn)品線24
2.3 NVIDIA BlueField-3 DPU的用例25
2.3.1 云原生超級計算25
2.3.2 數(shù)據(jù)科學(xué)與人工智能26
2.3.3 視頻流27
2.3.4 邊緣的智能服務(wù)29
本章小結(jié)29
第3章 NVIDIA BlueField DPU的安裝和使用30
3.1 NVIDIA BlueField DPU的工作模式30
3.1.1 DPU模式31
3.1.2 零信任DPU模式32
3.1.3 NIC模式33
3.2 NVIDIA BlueField DPU的硬件安裝35
3.2.1 NVIDIA BlueField DPU的硬件單元35
3.2.2 NVIDIA BlueField DPU的使用環(huán)境要求38
3.2.3 硬件安裝前準(zhǔn)備41
3.2.4 硬件安裝42
3.2.5 網(wǎng)絡(luò)接口線纜安裝44
3.3 NVIDIA BlueField DPU的BFB安裝45
3.3.1 什么是BFB45
3.3.2 通過主機Rshim安裝45
3.3.3 通過BMC Rshim安裝47
3.3.4 通過PXE安裝47
3.3.5 安裝后上電檢查50
3.4 使用NVIDIA SDK管理器圖形界面進行安裝52
3.4.1 NVIDIA SDK管理器的下載和安裝52
3.4.2 NVIDIA SDK管理器的圖形界面53
3.5 NVIDIA BlueField DPU的管理57
3.5.1 通過主機Rshim登錄DPU57
3.5.2 在主機端查看DPU日志58
3.5.3 DPU BMC59
3.5.4 BMC管理DPU常用的命令60
3.5.5 帶外登錄DPU61
3.5.6 帶內(nèi)登錄DPU61
本章小結(jié)62
第4章 NVIDIA BlueField DPU上的網(wǎng)絡(luò)卸載63
4.1 NVIDIA BlueField DPU上的網(wǎng)絡(luò)設(shè)備63
4.1.1 物理網(wǎng)絡(luò)設(shè)備和虛擬網(wǎng)絡(luò)設(shè)備64
4.1.2 VirtIO-net網(wǎng)絡(luò)設(shè)備65
4.2 代表口模型69
4.2.1 為何引入代表口70
4.2.2 代表口對應(yīng)的接口及其創(chuàng)建71
4.2.3 代表口與OVS72
4.3 OVS的卸載和加速72
4.3.1 實現(xiàn)OVS卸載的基本思路73
4.3.2 OVS卸載的概要配置75
4.3.3 流表的監(jiān)控及軟硬件同步77
4.3.4 硬件上的靈活性保證79
4.4 連接跟蹤79
4.4.1 連接跟蹤卸載的軟硬件同步設(shè)計80
4.4.2 連接跟蹤卸載的配置81
4.5 可擴展網(wǎng)絡(luò)設(shè)備82
4.5.1 環(huán)境準(zhǔn)備83
4.5.2 SF設(shè)備的使用和管理83
本章小結(jié)86
第5章 NVIDIA BlueField DPU上的SNAP技術(shù)87
5.1 什么是SNAP技術(shù)87
5.2 SNAP的工作模式89
5.2.1 SNAP的配置部署89
5.2.2 SNAP無卸載模式91
5.2.3 SNAP直通模式92
5.2.4 SNAP全卸載模式93
5.2.5 SNAP模擬VirtIO-blk設(shè)備95
5.3 SNAP技術(shù)的應(yīng)用場景96
5.3.1 高效的云存儲97
5.3.2 實現(xiàn)裸金屬云的關(guān)鍵技術(shù)98
5.3.3 企業(yè)級業(yè)務(wù)存儲擴展99
5.4 SNAP技術(shù)和用戶存儲系統(tǒng)的集成100
設(shè)備模擬SDK101
本章小結(jié)104
第三部分 NVIDIA DOCA概述及開發(fā)體驗
第6章 NVIDIA DOCA概述106
6.1 NVIDIA DOCA的定義及發(fā)展歷程106
6.1.1 什么是NVIDIA DOCA106
6.1.2 持續(xù)演進與迭代的NVIDIA DOCA 107
6.1.3 NVIDIA DOCA加速開放數(shù)據(jù)中心創(chuàng)新111
6.2 NVIDIA DOCA軟件框架組成112
6.3 NVIDIA DOCA開發(fā)環(huán)境115
6.3.1 硬件配置及互連115
6.3.2 軟件安裝116
6.4 NVIDIA DOCA服務(wù)116
6.4.1 DOCA HBN服務(wù)117
6.4.2 DOCA Firefly精準(zhǔn)計時服務(wù)124
6.4.3 DOCA遙測服務(wù)125
6.4.4 DOCA數(shù)據(jù)流檢測器服務(wù)126
6.5 NVIDIA零信任安全框架127
6.5.1 NVIDIA零信任網(wǎng)絡(luò)安全平臺127
6.5.2 NVIDIA BlueField DPU提供網(wǎng)絡(luò)安全基礎(chǔ)128
6.5.3 基于NVIDIA DOCA的零信任網(wǎng)絡(luò)安全框架129
6.5.4 結(jié)合NVIDIA Morpheus增強網(wǎng)絡(luò)威脅檢測130
本章小結(jié)130
第7章 NVIDIA DOCA開發(fā)環(huán)境體驗131
7.1 DOCA使用模式131
7.2 DOCA驅(qū)動和DOCA庫的關(guān)系133
7.3 DOCA驅(qū)動134
7.3.1 DPDK134
7.3.2 ASAP2135
7.3.3 SPDK135
7.3.4 RDMA136
7.3.5 UCX136
7.4 DOCA庫136
7.4.1 DOCA核心庫137
7.4.2 DOCA Flow138
7.4.3 DOCA DPI140
7.4.4 DOCA App Shield141
7.5 DOCA應(yīng)用程序卸載示例141
本章小結(jié)143
第四部分 NVIDIA DOCA開發(fā)實踐
第8章 基于NVIDIA BlueField DPU的DOCA應(yīng)用146
8.1 DOCA應(yīng)用概述146
8.2 應(yīng)用識別149
8.2.1 AR應(yīng)用架構(gòu)149
8.2.2 AR應(yīng)用的系統(tǒng)配置150
8.2.3 運行AR應(yīng)用152
8.2.4 AR應(yīng)用相關(guān)的其他介紹153
8.2.5 參考資料153
8.3 DNS過濾153
8.3.1 DNS過濾應(yīng)用架構(gòu)155
8.3.2 DNS過濾應(yīng)用的系統(tǒng)配置156
8.3.3 運行DNS過濾應(yīng)用157
8.3.4 DNS過濾應(yīng)用相關(guān)的其他介紹157
8.3.5 參考資料158
8.4 入侵防御系統(tǒng)158
8.4.1 IPS應(yīng)用架構(gòu)158
8.4.2 IPS應(yīng)用的配置159
8.4.3 運行IPS應(yīng)用161
8.4.4 IPS應(yīng)用相關(guān)的其他介紹163
8.4.5 參考資料163
8.5 安全通道164
8.5.1 安全通道應(yīng)用架構(gòu)164
8.5.2 運行安全通道應(yīng)用166
8.5.3 參考資料166
本章小結(jié)166
第五部分 生態(tài)體系與網(wǎng)絡(luò)平臺
第9章 NVIDIA DOCA生態(tài)體系解決方案168
9.1 平臺基礎(chǔ)設(shè)施解決方案168
9.1.1 VMware vSphere分布式服務(wù)引擎169
9.1.2 Red Hat OpenShift170
9.1.3 Arista Unified Cloud Fabric172
9.2 存儲解決方案175
9.2.1 極客天成高性能軟件定義存儲176
9.2.2 UCloud高可用、彈性擴展的云盤存儲179
9.3 網(wǎng)絡(luò)安全解決方案181
9.3.1 Palo Alto新一代防火墻181
9.3.2 Guardicore Centra安全平臺182
9.3.3 Custodio CyVestiGO安全調(diào)查平臺184
9.4 邊緣計算解決方案185
9.4.1 DPU與5G Aerial188
9.4.2 DPU的邊緣UPF加速192
本章小結(jié)194
第10章 網(wǎng)絡(luò)平臺及融合加速器產(chǎn)品195
10.1 NVIDIA Quantum-2 InfiniBand網(wǎng)絡(luò)平臺195
10.1.1 Quantum-2網(wǎng)絡(luò)平臺的超高性能與云原生功能196
10.1.2 Quantum-2 InfiniBand交換機197
10.1.3 ConnectX-7和BlueField-3 DPU198
10.2 NVIDIA Spectrum-4以太網(wǎng)網(wǎng)絡(luò)平臺199
10.2.1 Spectrum-4以太網(wǎng)交換機200
10.2.2 Spectrum以太網(wǎng)網(wǎng)絡(luò)平臺生態(tài)系統(tǒng)202
10.3 NVIDIA融合加速器203
10.3.1 融合加速器的架構(gòu)204
10.3.2 融合加速器的特點204
10.3.3 融合加速器產(chǎn)品206
10.3.4 開發(fā)者生態(tài)系統(tǒng)206
本章小結(jié)207
術(shù)語表208