国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

SR-IOV技術(shù)在數(shù)據(jù)中心網(wǎng)絡(luò)中的應(yīng)用

2021-01-24 03:34:00中訊郵電咨詢設(shè)計院有限公司北京100048
郵電設(shè)計技術(shù) 2020年12期
關(guān)鍵詞:宿主機網(wǎng)絡(luò)設(shè)備網(wǎng)卡

湯 泳,郭 寧(中訊郵電咨詢設(shè)計院有限公司,北京 100048)

0 前言

云計算技術(shù)經(jīng)過十多年發(fā)展已經(jīng)逐漸成熟,由于其能夠給企業(yè)IT 運營、業(yè)務(wù)創(chuàng)新等帶來明顯效用,上云已經(jīng)成為企業(yè)常態(tài)。近幾年公有云、私有云、混合云、行業(yè)云的建設(shè)如火如荼,但是隨著云計算的深入使用,應(yīng)用規(guī)模不斷增加,現(xiàn)有數(shù)據(jù)中心網(wǎng)絡(luò)應(yīng)用在達到一定規(guī)模后遇到性能瓶頸。

1 網(wǎng)絡(luò)虛擬化技術(shù)

虛擬化技術(shù)將計算機物理資源如服務(wù)器、網(wǎng)絡(luò)、內(nèi)存及存儲等映射為虛擬資源,實現(xiàn)多用戶共享物理資源。虛擬化是實現(xiàn)云計算的基本技術(shù),目前主流VM 的網(wǎng)絡(luò)虛擬化都是使用虛擬交換機技術(shù),借助虛擬交換機,可以為服務(wù)器上運行的VMs 或容器提供邏輯的虛擬以太網(wǎng)接口,這些邏輯接口都連接到虛擬交換機上。比較流行的虛擬交換機包括VMware virtual switch、Cisco Nexus 1000V 和Open vSwitch。其中Openvswitch(簡稱OVS)是一個優(yōu)秀的開源軟件交換機,支持絕大多數(shù)的交換機功能如二層交換、網(wǎng)絡(luò)隔離、QoS、流量監(jiān)控、3 層路由控制等,同時支持多種Linux 虛擬化技術(shù),包括Xen、KVM 以及VirtualBox,所以在市場上應(yīng)用較為廣泛。一般基于虛擬交換機技術(shù)的典型的數(shù)據(jù)中心IaaS云計算網(wǎng)絡(luò)如圖1所示。

圖1 基于虛擬交換機數(shù)據(jù)中心網(wǎng)絡(luò)組織架構(gòu)圖

數(shù)據(jù)中心云計算網(wǎng)絡(luò)一般采用分層設(shè)計,底層網(wǎng)絡(luò)采用Spine-Leaf 兩層扁平化網(wǎng)絡(luò)架構(gòu),以保證節(jié)點內(nèi)的任意2個端口之間可提供延遲非常低的無阻塞性能;同時考慮數(shù)據(jù)中心網(wǎng)絡(luò)的擴展性會在數(shù)據(jù)轉(zhuǎn)發(fā)平面引入VxLAN 技術(shù),在控制層面引入EVPN 技術(shù)以構(gòu)建一個全互通的大二層的底層網(wǎng)絡(luò)架構(gòu)。

業(yè)務(wù)網(wǎng)絡(luò)則通過虛擬網(wǎng)絡(luò)技術(shù)以O(shè)verlay 底層網(wǎng)絡(luò)的方式來實現(xiàn)網(wǎng)絡(luò)的部署。從圖1可以看出網(wǎng)絡(luò)業(yè)務(wù)控制主要由計算資源上部署的軟件虛擬交換機來實現(xiàn)。宿主機除了分配提供虛擬機外,還需要承擔虛擬交換機的任務(wù)。通過開啟虛擬交互機服務(wù)在服務(wù)器端模擬物理交換機的功能,在虛擬機之間、虛擬機和外部網(wǎng)絡(luò)之間實現(xiàn)網(wǎng)絡(luò)的連通。

隨著管理節(jié)點的擴充,相關(guān)的網(wǎng)絡(luò)管理控制功能會消耗更多的計算資源,導(dǎo)致整個平臺的運行效率下降。有資料表明當管理節(jié)點數(shù)量超過200 個時,網(wǎng)絡(luò)性能開始明顯下降,但底層的網(wǎng)絡(luò)利用率卻不是很高,造成資源的浪費。經(jīng)過分析網(wǎng)絡(luò)性能下降的原因主要有以下2方面。

a)采用軟件虛擬交換機方式應(yīng)用部署比較方便,但是軟件的運行效率比專用的網(wǎng)絡(luò)設(shè)備差。

b)在傳統(tǒng)網(wǎng)橋模式下,網(wǎng)絡(luò)穩(wěn)定一般是沒有問題的,但網(wǎng)橋模式本身會消耗宿主機的CPU,在實際場景下,隨著節(jié)點資源的增加,虛擬化平臺所需的計算資源也會大幅增加,虛機交換機的計算資源也會增加,當宿主機的CPU 壓力(>60%)比較大時,虛擬機內(nèi)部網(wǎng)卡的發(fā)包率(PPS)會下降,極端情況會出現(xiàn)丟包現(xiàn)象。

為了保證云平臺系統(tǒng)的線性擴展能力,將網(wǎng)絡(luò)虛擬化能力從計算資源中剝離,采用專用的網(wǎng)絡(luò)設(shè)備進行替代是一個思路;如何有效保證網(wǎng)絡(luò)虛擬化帶來的快速靈活部署能力,高效實現(xiàn)云網(wǎng)結(jié)合涉及到多個方面的問題,本文主要關(guān)注VM網(wǎng)絡(luò)虛擬化的解決方案。

2 基于硬件的網(wǎng)絡(luò)虛擬化技術(shù)

2.1 SR-IOV技術(shù)介紹

為了解決網(wǎng)絡(luò)性能問題,首先可以考慮網(wǎng)卡直通技術(shù),這項技術(shù)能讓VM 獨占物理網(wǎng)卡,以達到最優(yōu)性能,建議在網(wǎng)卡性能要求非常高的場景中使用。然而一臺服務(wù)器主板上的空間比較有限,允許添加的PCI和PCIe 設(shè)備是有限的,如果一臺宿主機上的VM 數(shù)量較多,那主機很難向每臺VM 都分配獨立網(wǎng)卡。另外,分配大量網(wǎng)卡給客戶機獨立使用會增加硬件投資成本。為解決物理網(wǎng)卡數(shù)量和成本問題考慮使用虛擬化網(wǎng)絡(luò)I/O 的硬件技術(shù)方案SR-IOV(Single Root I/O Virtualization)。

SR-IOV 技術(shù)是一種基于硬件的網(wǎng)卡虛擬化解決方案,允許在虛擬機之間高效共享PCIe 設(shè)備,這樣每個VM 都可訪問唯一的虛擬資源;因此啟用了SRIOV 并且具有適當?shù)挠布蚈S 支持的PCIe 設(shè)備(如網(wǎng)卡)可以顯示為多個單獨的物理設(shè)備。SR-IOV 技術(shù)原理如圖2所示。

SR-IOV 技術(shù)引入了以下3 個功能(function)類型。

a)物理功能(PF——Physical Function):擁有包含SR-IOV 擴展能力在內(nèi)的所有完整的PCIe 功能,簡單說PF 就是一個普通的PCIe 設(shè)備,可以放在宿主機中配置和管理其他VF,它本身也可以作為一個完整獨立的功能使用。

b)虛擬功能(VF——Virtual Function):由PF衍生而來的“輕量級”的PCIe 功能,包含數(shù)據(jù)傳送所必需的資源,但是僅擁有最小化的配置資源。簡言之,VF 通過PF的配置之后,可以分配到客戶機中作為獨立功能使用。SR-IOV 為VM 中使用的VF 提供了獨立的內(nèi)存空間、中斷、DMA 流,從而不需要Hypervisor 介入數(shù)據(jù)的傳送過程。SR-IOV 架構(gòu)設(shè)計的目的是允許一個設(shè)備支持多個VF,同時也盡量減小每個VF的硬件成本。

圖2 SR-IOV 技術(shù)原理圖

c)交換功能(Layer 2 switch):交換機功能其實是物理網(wǎng)卡內(nèi)置的。流量進入物理網(wǎng)卡后,經(jīng)過這個交換機后分發(fā)到不同的VF上。

2.2 基于虛擬網(wǎng)卡的網(wǎng)絡(luò)功能

對宿主機來講,網(wǎng)絡(luò)虛擬化要解決虛擬網(wǎng)絡(luò)在宿主機內(nèi)/外的隔離和互通2 個問題。引入SR-IOV 技術(shù)可以使每個VM 擁有專有網(wǎng)絡(luò)硬件資源,可以使網(wǎng)絡(luò)層面的隔離更徹底。但如何實現(xiàn)多VM 之間的網(wǎng)絡(luò)控制管理就沒有那么簡單了。

傳統(tǒng)的OVS 只有一個虛擬交換機,所以網(wǎng)絡(luò)控制比較容易。由于VM 直接操作專屬網(wǎng)卡,可以通過引入外部的物理交換機的方式進行控制,比如可以為每個VM 虛擬網(wǎng)卡創(chuàng)建對應(yīng)交換機的子端口,然后對每個VM 的流量打上VLAN-ID 標識來區(qū)分不同虛擬機的流量,從而實現(xiàn)網(wǎng)絡(luò)控制。宿主機內(nèi)部同網(wǎng)段的VM 的互通可以通過SR-IOV 內(nèi)置的交換功能實現(xiàn)。虛擬機網(wǎng)絡(luò)之間的連接如圖3所示。

目前很多主流的中高端網(wǎng)卡都支持SR-IOV,如Intel 82576 網(wǎng)卡、I350 網(wǎng)卡、82599 網(wǎng)卡、X540 網(wǎng)卡等。在宿主機Linux環(huán)境中,可以通過“l(fā)spci-v-s$BDF”的命令來查看網(wǎng)卡PCI 信息的“Capabilities”項目,以確定設(shè)備是否具備SR-IOV 的能力。同時主流的虛擬化平臺/方案(如KVM、Xen、VMware、Hyper-V 等)都實現(xiàn)了對SR-IOV技術(shù)的支持,在平臺中可以將1個或多個VF 分配給1 個客戶機,客戶機通過自身的VF 驅(qū)動程序直接操作設(shè)備的VF而不需要Hypervisor的參與。

圖3 虛機網(wǎng)絡(luò)之間連接模式

SR-IOV技術(shù)有以下優(yōu)點。

a)良好的性能,虛擬機可以繞過虛擬化層和系統(tǒng),直接訪問硬件,沒有虛擬化層軟件模擬的開銷。

b)降低成本,減少了設(shè)備數(shù)量,例如網(wǎng)卡的SRIOV 減少了網(wǎng)卡數(shù)量、交換機端口和網(wǎng)線。既能提高訪問效率,又能提高網(wǎng)卡的利用率。

1 個設(shè)備可支持多個VF,PCI-SIG 的SR-IOV 規(guī)范指出每個PF 最多能擁有256 個VF,而實際支持的VF數(shù)量是由設(shè)備的硬件設(shè)計及其驅(qū)動程序共同決定的。例如使用“igb”驅(qū)動的82576、I350 等千兆以太網(wǎng)卡的每個PF 最多支持7 個VF,而使用“ixgbe”驅(qū)動的82599、X540等萬兆以太網(wǎng)卡的每個PF最多支持63個VF。目前的服務(wù)器主流配置都是支持63 個VF 的網(wǎng)卡,基本可以滿足虛擬化平臺創(chuàng)建VM的需求。

3 SR-IOV技術(shù)應(yīng)用示例

在SR-IOV 的實際應(yīng)用中硬件平臺需要支持Intel VT-x 和VT-d(或AMD 的SVM 和IOMMU),另外還需要支持SR-IOV 規(guī)范的設(shè)備。下面舉例說明如何在Centos7上的KVM 虛擬化環(huán)境中用SR-IOV 技術(shù)為VM綁定虛擬網(wǎng)卡并打上VLAN-ID。需要說明的是后續(xù)配置中使用的網(wǎng)卡是Intel Corporation 82599ES。

3.1 環(huán)境準備

首先檢查網(wǎng)卡是否支持SR-IOV,然后通過yum命令進行KVM 虛擬化環(huán)境的安裝,開啟libvirtd 服務(wù)并設(shè)置為開機自啟動模式。

3.2 配置SR-IOV創(chuàng)建VF

在BIOS 中啟用英特爾VT-d 功能,重新生成配置文件grub2.cfg;運行l(wèi)spci命令進行網(wǎng)絡(luò)信息查看,確保對應(yīng)網(wǎng)絡(luò)設(shè)備可以被系統(tǒng)識別。同時根據(jù)網(wǎng)卡的驅(qū)動參數(shù)在/etc/udev/rules.d/目錄下創(chuàng)建以.rules 為后綴的配置文件,完成VF的創(chuàng)建。

3.3 虛擬機分配VF

首先需要將VF從宿主機中解綁,同時編輯虛擬機的XML 文件,進行參數(shù)配置;使用編輯的XML 文件啟動虛擬機。經(jīng)過以上步驟,一個基于SR-IOV 網(wǎng)卡就與對應(yīng)的虛擬機綁定成功。

其中網(wǎng)卡部分配置示例如下:

3.4 SR-IOV 性能驗證

本文對比測試萬兆網(wǎng)絡(luò)中SR-IOV 虛擬機和OVS虛擬機在網(wǎng)絡(luò)負載較高情況下的虛擬網(wǎng)絡(luò)表現(xiàn),也為后續(xù)SR-IOV 虛擬機和其他類型的虛擬機對比給出參考。

3.4.1 測試環(huán)境

宿主機配置:2 個Intel(R)Xeon(R)Gold 5218 CPU,內(nèi)存576 G,1 個Ethernet Connection X722 for 1GbE 網(wǎng)卡用于管理宿主機,2 塊82599ES 10-Gigabit SFI/SFP+Network Connection 網(wǎng)卡用于流量測試,這2塊網(wǎng)卡都接入到同一臺交換機上,交換機配置為CE6855-48S6Q-HI。

3.4.2 網(wǎng)絡(luò)吞吐率性能測試

在宿主機上創(chuàng)建2 臺VM 分別發(fā)包和收包來進行網(wǎng)絡(luò)吞吐的壓力測試。VM 配置均為4 核4G,測試工具為modprobe pktgen,測試包為UDP 包,大小為64 B。測試場景如圖4 所示。場景1 為SR-IOV+VF 直通方式,2臺VM分別使用1塊物理網(wǎng)卡;場景2為SR-IOV+VF 直通方式,2 臺VM 共同使用1 塊物理網(wǎng)卡;場景3為OVS+虛擬網(wǎng)卡方式,2 臺VM 分別使用1 塊物理網(wǎng)卡;場景4 為OVS+虛擬網(wǎng)卡方式,2 臺VM 共同使用1塊物理網(wǎng)卡。

圖4 性能測試場景示意圖

通過測試工具分別統(tǒng)計不同場景下的發(fā)包性能和收包性能,結(jié)果如表1所示。

表1 網(wǎng)絡(luò)吞吐數(shù)據(jù)統(tǒng)計表

本次測試得出以下結(jié)論。

a)采用SR-IOV+VF 直通方式可以顯著提升轉(zhuǎn)發(fā)率,相同配置條件下,發(fā)包提升865%,收包提升470%。

b)SR-IOV+VF 直通方式在1 塊物理網(wǎng)卡和2 塊物理網(wǎng)卡的表現(xiàn)基本一致,證明VF性能可以實現(xiàn)線性增長。

c)OVS+虛擬網(wǎng)卡方式下,同一物理網(wǎng)卡的轉(zhuǎn)發(fā)性能相比于不同物理網(wǎng)卡的轉(zhuǎn)發(fā)性能有略微提升。

4 主機CPU資源占用測試

對1 臺宿主機上的1 對或多對VM 進行網(wǎng)格吞吐測試,對比SR-IOV 及OVS 方式在主機CPU 占用率和網(wǎng)絡(luò)吞吐率方面的表現(xiàn)。

在宿主機上創(chuàng)建12 臺VM(配置均為2 核4G),每臺VM 一塊網(wǎng)卡,2 臺VM 一組共6 組,組內(nèi)分A、B 兩端,其中A 端的VM 發(fā)包,B 端的VM 收包,每組A 端的VM 使用同一塊網(wǎng)卡,每組B 端的VM 使用另一塊網(wǎng)卡。依據(jù)使用的技術(shù)和網(wǎng)卡分配方式不同分以下2個場景分別進行測試。測試包規(guī)格為UDP包256 B。

a)場景1:12 臺VM 都使用SR-IOV+VF 直通方式,第1 次使用1 組VM 收發(fā)包(共涉及VM 2 臺),第2次使用2組VM 收發(fā)包(共涉及VM 4臺),第3次使用3組VM 開始收發(fā)包,依次類推直到6 組VM 都開始收發(fā)包,分別觀察流量及宿主機CPU使用率。

b)場景2:12 臺VM 都使用OVS+虛擬網(wǎng)卡方式,第1次使用1組VM收發(fā)包(共涉及VM 2臺),第2次使用2 組VM 收發(fā)包(共涉及VM 4 臺),第3 次使用3 組VM 收發(fā)包,依次類推直到6 組VM 都開始收發(fā)包,分別觀察流量及宿主機CPU使用率。

具體采集數(shù)據(jù)如表2所示。

由表2 可以看出使用SR-IOV+VF 直通方式可以明顯減少CPU 使用率;同時SR-IOV+VF 直通方式每增加1 組VM,宿主機CPU 使用率增長9.5%左右,而OVS+虛擬網(wǎng)卡方式每增加1 組VM,宿主機CPU 使用率增長12%左右。

表2 主機CPU資源占用率統(tǒng)計表

同時采用SR-IOV+VF直通方式網(wǎng)絡(luò)吞吐率更高,1 組VM 時流量為4 602.5 Mbit/s;在3 組VM 時流量已達到9 006 Mbit/s 左右,接近萬兆網(wǎng)卡的最大帶寬,此時CPU 負載為28.2%,網(wǎng)卡吞吐能力成為了瓶頸。OVS+虛擬網(wǎng)卡方式1 組VM 時,流量僅為875 Mbit/s,直到6 組VM 時,流量為4 643.5 Mbit/s,而此時宿主機CPU使用率已達70.95%。

從以上測試中可以發(fā)現(xiàn),相比OVS 方式,SR-IOV對網(wǎng)絡(luò)性能的提升更明顯,同時SR-IOV 方式可以減少對主機CPU的占用。

5 數(shù)據(jù)中心網(wǎng)絡(luò)方案建議

引入SR-IOV 技術(shù)后可以實現(xiàn)為每一個虛機創(chuàng)建一個獨立的網(wǎng)卡,數(shù)據(jù)中心的網(wǎng)絡(luò)初步具備了以傳統(tǒng)網(wǎng)絡(luò)設(shè)備為基礎(chǔ)進行整個IaaS層網(wǎng)絡(luò)管理的條件。數(shù)據(jù)中心的網(wǎng)絡(luò)架構(gòu)可以調(diào)整為如圖5所示的模式。

圖5 基于網(wǎng)絡(luò)設(shè)備數(shù)據(jù)中心網(wǎng)絡(luò)組織架構(gòu)圖

從圖5可以看出,網(wǎng)絡(luò)的組織架構(gòu)變化很小,但是網(wǎng)絡(luò)運行發(fā)生了實質(zhì)的改變。傳統(tǒng)網(wǎng)絡(luò)的具體業(yè)務(wù)處理都是由虛擬化平臺(IT 方式)進行處理,有較為成熟的解決方案但IT 方案標準化程度低,多虛擬化平臺網(wǎng)絡(luò)互通一直是困擾數(shù)據(jù)中心建設(shè)的一個問題。而網(wǎng)絡(luò)設(shè)備的規(guī)范性高,設(shè)備互通性好,通過以網(wǎng)絡(luò)設(shè)備為核心的方式可以徹底解決多個虛擬化平臺的網(wǎng)絡(luò)互通問題。用專用的網(wǎng)絡(luò)設(shè)備實現(xiàn)數(shù)據(jù)包的轉(zhuǎn)發(fā)、控制可以進一步提高數(shù)據(jù)中心網(wǎng)絡(luò)的效率,同時可以省去宿主機的計算資源,提供給業(yè)務(wù)應(yīng)用,從而進行一步提升服務(wù)器資源的利用率。

但以網(wǎng)絡(luò)設(shè)備為核心的架構(gòu)中,需要使用網(wǎng)絡(luò)設(shè)備實現(xiàn)業(yè)務(wù)網(wǎng)絡(luò)的管理控制,為了保證業(yè)務(wù)開通的靈活性和業(yè)務(wù)開通的效率,必須引入SDN 等技術(shù)。本文提出一個分層的數(shù)據(jù)中心的整體結(jié)構(gòu),把計算資源與網(wǎng)絡(luò)資源分層,云管平臺負責管理計算資源,并且可以通過網(wǎng)絡(luò)接口調(diào)用SDN 網(wǎng)絡(luò)控制器,從而在實現(xiàn)數(shù)據(jù)中心高效管理的同時保持網(wǎng)絡(luò)的彈性和性能,具體架構(gòu)如圖6所示。

圖6 數(shù)據(jù)中心分層組織架構(gòu)示意圖

6 結(jié)束語

本文通過對數(shù)據(jù)中心網(wǎng)絡(luò)現(xiàn)狀進行分析,總結(jié)數(shù)據(jù)中心網(wǎng)絡(luò)虛擬化在實際應(yīng)用中所面臨的問題,提出通過SR-IOV 技術(shù)實現(xiàn)VM 網(wǎng)絡(luò)虛擬化的思路,并給出了SR-IOV 技術(shù)具體應(yīng)用示例及性能測試結(jié)果,驗證了SR-IOV 技術(shù)應(yīng)用的效果,最后提出云網(wǎng)一體分層的網(wǎng)絡(luò)構(gòu)建思路。

猜你喜歡
宿主機網(wǎng)絡(luò)設(shè)備網(wǎng)卡
在DDS 中間件上實現(xiàn)雙冗余網(wǎng)卡切換的方法
一種基于C# 的網(wǎng)絡(luò)設(shè)備自動化登錄工具的研制
Server 2016網(wǎng)卡組合模式
虛擬網(wǎng)絡(luò)實驗室在農(nóng)村職校計算機網(wǎng)絡(luò)技術(shù)教學(xué)中的應(yīng)用研究
嵌入式計算機軟件測試關(guān)鍵技術(shù)的思考
數(shù)據(jù)中心唯“快”不破
挑戰(zhàn)Killer網(wǎng)卡Realtek網(wǎng)游專用Dragon網(wǎng)卡
嵌入式計算機軟件測試關(guān)鍵技術(shù)研究
基于列車監(jiān)測網(wǎng)絡(luò)設(shè)備的射頻功放模塊設(shè)計
基于三層交換技術(shù)架構(gòu)數(shù)字化校園網(wǎng)絡(luò)設(shè)備的配置與管理
望江县| 合作市| 安塞县| 洛南县| 贵溪市| 静宁县| 怀宁县| 象州县| 读书| 洞口县| 华池县| 桃园市| 嘉义县| 合作市| 邻水| 佛山市| 栖霞市| 福州市| 合肥市| 建瓯市| 肇州县| 泽州县| 丹巴县| 定南县| 礼泉县| 全椒县| 个旧市| 德清县| 瑞丽市| 上犹县| 罗平县| 抚松县| 溆浦县| 民乐县| 正镶白旗| 霍州市| 绥芬河市| 日土县| 韩城市| 城口县| 宁国市|