Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products

SR-IOV-verkon I/O-parannus virtualisoidussa ympäristössä Windows Server 2012:ssa

Summary: Dellin käyttöjärjestelmä- ja sovellusratkaisut Dell TechCenterissä – Project Sputnik, Microsoft Windows, Red Hat Linux, SUSE, Ubuntu ja niin edelleen

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Tämän viestin on alun perin kirjoittanut Abhijit Khande &; Vineeth V Acharya DELL Windows Engineering Teamista.

Kommentit ovat tervetulleita! Jos haluat ehdottaa aihetta tai esittää muita kommentteja, ota yhteyttä WinServerBlogs@dell.com
.


Microsoft® Windows Server® 2012 Beta -käyttöjärjestelmässä Microsoft on ottanut käyttöön tuen useille verkkotilan ominaisuuksille. Yksi tällainen merkittävä ja mielenkiintoinen piirre on Yhden juuren I/O-virtualisointi (SR-IOV), jonka avulla virtuaalikoneet voivat jakaa yhden PCI-e-laitteen. Tämä viesti tarjoaa peruskatsauksen SR-IOV: stä Windows Server 2012 Betassa ja siitä, miten se vähentää merkittävästi suorittimen käyttöä virtualisoidussa ympäristössä verkon I/O: n aikana.

SR-IOV-liitäntä on PCI Express (PCIe) -spesifikaation laajennus. SR-IOV:n avulla yksittäinen PCIe-laite, kuten verkkosovitin, voi tarjota useita kevyitä laitepintoja PCI-väylään ja erillisen pääsyn resursseihinsa eri instanssien välillä. Se saavutetaan käyttämällä useita virtuaalitoimintoja (VF) (tavallisen) fyysisen toiminnon (PF) lisäksi. Koska PCIe-laite on laitteistoriippuvainen, sekä PCIe-laitteen että alustan on tuettava tätä ominaisuutta. 

Perinteisesti virtuaalikoneelle tarkoitettu paketti vastaanotetaan isäntäkäyttöjärjestelmässä olevalla fyysisellä verkkosovittimella (fyysisen toiminnon avulla). Tätä pakettia käsittelee NDIS (Network Driver Interface Specification for NICs) -ohjainmoduuli. Paketti toimitetaan sitten Hyper-V-kytkimelle, joka käsittelee paketin (kuten reitityksen, VLAN-suodatuksen) ja välittää paketin määrättyyn virtuaalikoneeseen VMBusin kautta, kuten kuvassa 1 esitetään. Käänteistä polkua noudatetaan, kun virtuaalikoneen on lähetettävä paketti.

 SR-IOV:n avulla virtuaalikone voi käyttää virtuaalitoimintoa (VF) pakettien lähettämiseen ja vastaanottamiseen suoraan fyysiseen verkkosovittimeen ohittaen perinteisen polun kokonaan, kuten kuvassa 1 esitetään. Tämä paitsi tehostaa verkon I/O-toimintoja myös vähentää isäntäkoneen suorittimen kuormitusta.
SLN312240_en_US__1i_OSandApplications_Virtualized_Environment1_2012_N_V1
Kuva 1: Tietopolku SR-IOV:n kanssa ja ilman sitä

Reaaliaikainen siirto > SR-IOV

Windows Server 2012 Beta -versiossa reaaliaikainen siirto voidaan suorittaa virtuaalikoneen SR-IOV:n avulla. Jos lähde- ja kohdejärjestelmät tukevat SR-IOV:tä ja kohteella on vapaa VF, virtuaalikone käyttää virtuaalitoimintoa. Jos ei, virtuaalikone palaa perinteiseen polkuun (VM-Bus).

Jokainen SR-IOV-yhteensopiva verkkosovitin paljastaa kiinteän määrän virtuaalitoimintoja, jotka voidaan suorittaa PowerShell-komennolla "Get-NetAdapterSriov".


Suorituskykyanalyysi

Teimme laboratoriossamme muutamia testejä verrataksemme suorituskykyä SR-IOV:n kanssa ja ilman sitä. Testiympäristö koostuu yhdestä testipalvelimesta (jossa testit suoritetaan) ja yhdestä tiedostopalvelimesta. Testipalvelin on Dell PowerEdge™ R710 II, jossa on Intel® X520 10 Gt Ethernet -sovitin ja Windows Server 2012 Beta OS. Tiedostopalvelin isännöi useita jaettuja SMB-resursseja, ja se on yhteydessä testipalvelimeen 10 Gt:n verkon kautta Dell PowerConnect™ 8024 -kytkimen kautta.

Tallensimme suorituskykytiedot verkkotiedonsiirtoon osallistuvien eri ohjainmoduulien ajoittamien DPC: iden (Deferred Procedure Call) käyttämänä prosessorina. Nämä tiedot tallennettiin sekä vieras- että isäntäkäyttöjärjestelmässä seuraavissa tilanteissa kuvatulla tavalla. Testipalvelimessa on 4 identtistä virtuaalikonetta, joissa Windows Server 2012 Beta on vieraskäyttöjärjestelmä. Nämä neljä virtuaalikonetta yhdistetään 10 gigatavun verkkoon virtuaalikytkimellä. Tämä testikokoonpano on esitetty kuvassa 2.
SLN312240_en_US__2i_OSandApplications_Virtualized_Environment2_2012_N_V1
Kuva 2: Testin kokoonpano
Ennen suorituskykytietojen esittelyä on tärkeää esitellä erittäin kriittinen parametri, jota käytetään tässä testauksessa. Vuonna Microsoft Windows Käyttöjärjestelmässä on järjestelmämekanismi nimeltä Deferred Procedure Call (DPC), joka mahdollistaa korkean prioriteetin tehtävät (esim. Keskeytyskäsittelijä) lykätäkseen pakollisia mutta vähemmän tärkeitä tehtäviä myöhempää suorittamista varten. Tämän ansiosta laiteohjaimet ja muut matalan tason tapahtumien kuluttajat voivat suorittaa käsittelynsä korkean prioriteetin osan nopeasti ja ajoittaa ei-kriittisen lisäkäsittelyn suoritettavaksi pienemmällä prioriteetilla.


Skenaario 1 – suorituskyky johtaa virtuaalikoneeseen (vieraskäyttöjärjestelmä):

Käytimme tässä skenaariossa neljää virtuaalikonetta (VM 1–VM 4). SR-IOV otettiin käyttöön VM 1:ssä ja VM 2:ssa (valitsemalla "Enable SR-IOV" -vaihtoehto VM-asetuksissa) ja SR-IOV käytöstä VM 3:ssa ja VM 4:ssä (poistamalla valinta samasta vaihtoehdosta). Siksi VM 1 ja VM 2 käyttävät virtuaalitoimintoa (jonka Intel-sovitin paljastaa), kun taas VM 3 ja VM 4 käyttävät synteettistä polkua (VMBus) mihin tahansa verkkoviestintään, kuten kuvassa 2 esitetään.

Aloimme kopioida tietoja (kooltaan 20 Gt) yhdestä jaetusta SMB-resurssista virtuaalikoneisiin ja tallensimme järjestelmän suorittimen käyttölokit vieraskäyttöjärjestelmään.
SLN312240_en_US__3i_OSandApplications_Virtualized_Environment3_2012_N_V1
Kuva 3: DPC-suorittimen käyttö virtuaalikoneissa

Kuvassa 3 SR-IOV viittaa keskimääräiseen DPC-suorittimen käyttöön VM-1:ssä ja VM-2:ssa ja ei-SR-IOV keskimääräiseen DPC-suorittimen käyttöön VM-3:ssa ja VM-4:ssä. Jos tarkastelemme kaaviota, näemme, että suorittimen käytössä ei ole paljon eroa näiden kahden tapauksen välillä, mutta emme ole vielä ottaneet huomioon suorittimen käyttöä isäntäkoneessa.


Skenaario 2 – suorituskykytulos isäntäkoneessa (isäntäkäyttöjärjestelmä):

Käytimme tässä skenaariossa yhtä virtuaalikonetta. Aloimme kopioida tietoja (kooltaan 20 Gt) jaetusta SMB-resurssista virtuaalikoneeseen ja tallensimme DPC-suorittimen käytön kahdelle moduulille, NDIS: lle ja VMBUS: lle, joita käytetään verkon I/O: ssa.
SLN312240_en_US__4i_OSandApplications_Virtualized_Environment4_2012_N_V1
Kuva 4: DPC-suorittimen käyttö isäntäkoneessa
Tulokset on esitetty kuvassa 4. Kuten odotettiin, suorittimen käytössä on suuri ero näiden kahden tapauksen välillä (SR-IOV ja ei-SR-IOV). Suorittimen käyttö on luokkaa 102 SR-IOV: n tapauksessa ja luokkaa 103-104 ei-SR-IOV: n tapauksessa. Tämä johtuu pääasiassa siitä, että SR-IOV: n tapauksessa virtuaalikone kommunikoi suoraan fyysisen verkkokortin kanssa virtuaalitoiminnon kautta. Näin ollen isännän suoritinsyklejä ei käytetä verkkopakettien käsittelyyn. Jos kyseessä on muu kuin SR-IOV (kuten kuvassa 1) vieraskäyttöjärjestelmä kommunikoi isäntäkäyttöjärjestelmän kanssa VM-väylän kautta, joka puolestaan käsittelee paketit ja lähettää ne fyysisen verkkokortin kautta. Siksi moduuleja, kuten VM Bus ja NDIS, käytetään laajasti.

Suorittimen kokonaiskäyttöä laskettaessa havaitaan, että suorittimen käyttö verkon I/O:n aikana on paljon pienempi SR-IOV:tä käytettäessä. Kun SR-IOV on käytössä, Windows Server 2012 Beta auttaa asiakkaita vähentämään suorittimen kuormitusta verkon I/O-toimintojen aikana ja parantamaan siten järjestelmän yleistä suorituskykyä.

 

Cause

SR-IOV:n määrittäminen PowerShellin avulla

Seuraavien PowerShell-komentojen avulla voit luoda uuden virtuaalikytkimen, jossa SR-IOV on käytössä, ja liittää virtuaalikytkimen olemassa olevan virtuaalikoneen virtuaaliverkkosovittimeen.

HUOMAUTUS: Ennen seuraavien komentojen suorittamista seuraavat asetukset on otettava käyttöön BIOSissa
  • Virtualisointitekniikka
  • SR-IOV Global Ota käyttöön
(Olettaen, että yksi verkkosovitin (Intel X520) on kytketty)

$NetAdap = Get-NetAdapter | Missä-objekti { $_. Status -eq "Up"}(-EnableIOV-valitsinta käytetään SR-IOV:n käyttöönottoon virtuaalikytkimessä)

New-VMSwitch -Name "SRIOV Switch" -NetAdapterName $NetAdap.Name -AllowManagementOS $True -Notes "SRIOV switch on X520" -EnableIov $True

$VMSw = Get-VMSwitch
Uuden verkkosovittimen lisääminen VM-1:een ja sen kytkeminen virtuaalikytkimeen.





Add-VMNetworkAdapter -SwitchName $VMSw.Name -VMName VM-1 -Name "SRIOV Adapter"


HUOMAUTUS:Jotta tämä komento toimisi, virtuaalikone on poistettava käytöstä)
Voit myös käyttää jo olemassa olevaa VM-verkkosovitinta seuraavilla komennoilla)

$VMNet = Get-VMNetworkAdapter -VMName VM-1

Connect-VMNetworkAdapter -VMName VM-1 -SwitchName $VMSw.Name -Name $VMNet.Name

Jokaisella VM-verkkosovittimella on kaksi ominaisuutta, IovWeight ja VmqWeight, jotka vastaavat SR-IOV: tä ja VMQ: ta.  Näiden painojen säätäminen ottaa ominaisuudet käyttöön tai poistaa ne käytöstä.

Resolution

Ota SR-IOV käyttöön asettamalla IovWeight-arvoksi 100. Poista SR-IOV käytöstä asettamalla IovWeight-arvoksi 0 (oletus)

Set-VMNetworkAdapter -VMName VM-1 -VMNetworkAdapterName $VMNetName -IovWeight 100

, jossa $VMNetName on SRIOV-kytkimeen liitetyn VM-verkkosovittimen nimi.

 
Lisätietoja on seuraavissa linkeissä:

Affected Products

Servers
Article Properties
Article Number: 000129905
Article Type: Solution
Last Modified: 20 Sept 2021
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.