Get-NetAdapterSriov

Get-NetAdapterSriov

Gets the Single-Root I/O Virtualization (SR-IOV) properties of the network adapter.

Syntax

Parameter Set: ByName
Get-NetAdapterSriov [[-Name] <String[]> ] [-AsJob] [-CimSession <CimSession[]> ] [-IncludeHidden] [-ThrottleLimit <Int32> ] [ <CommonParameters>]

Parameter Set: ByInstanceID
Get-NetAdapterSriov -InterfaceDescription <String[]> [-AsJob] [-CimSession <CimSession[]> ] [-IncludeHidden] [-ThrottleLimit <Int32> ] [ <CommonParameters>]

Detailed Description

The Get-NetAdapterSriov cmdlet gets the Single-Root I/O Virtualization (SR-IOV) properties of network adapters that support SR-IOV. SR-IOV enables network traffic to by-pass the software switch layer of the Hyper-V virtualization stack. As a result, the I/O overhead in the software emulation layer is diminished and can achieve network performance that is nearly the same performance as in non-virtualized environments. Run this cmdlet to display how the hardware is set to support SR-IOV. This cmdlet will display the properties of the network adapter that relate to SR-IOV, such as the number of ports, and virtual functions (VFs). The property SriovSupport indicates potential reasons for SR-IOV not functioning properly. The possible values for SriovSupport include the following.
- Unknown: Ensure that the computer has hardware support for SR-IOV and that I/O virtualization is enabled in the BIOS. Also ensure that the computer is running Windows Server® 2012 and later.
- Supported: SR-IOV is supported and should be functioning properly.
- MissingAcs: SR-IOV cannot be used on this network adapter as the PCI Express hardware does not support Access Control Services (ACS). This device may work in an alternate PCI Express slot. Contact your hardware vendor for further information.
- MissingPfDriver: SR-IOV cannot be used on this network adapter as the device or device driver does not support SR-IOV. If the network adapter supports SR-IOV, contact the hardware vendor for an updated driver.
- NoBusResources: SR-IOV cannot be used on this network adapter as there are not enough PCI Express bus numbers available.
- NoIoMmuSupport: SR-IOV cannot be used on this computer because of one or more of the following reasons.
- - The processor does not support second level address translation (SLAT). For processors manufactured by Intel Corporation™ (Intel™), this feature might be referred to as Extended Page Tables (EPT). For processors manufactured by Advanced Micro Devices™ (AMD™), this feature might be referred to as Rapid Virtualization Indexing (RVI) or Nested Page Tables (NPT).
- - The chipset on the computer does not do Interrupt and/or DMA remapping, without which SR-IOV cannot be supported.
- - This computer has been configured to disable the use of I/O remapping hardware.
- NoVfBarSpace: SR-IOV cannot be used on this network adapter as there are not enough PCI Express BAR resources available. This may be due to incorrect or partial configuration in the computer BIOS for Interrupt and DMA remapping. These settings may be referred to as SR-IOV or input/output memory management unit (IOMMU) support. If the computer BIOS is correctly configured, this device may work in an alternate PCI Express slot. Contact the original equipment manufacturer of the computer for further information.
- NoOscSupport: To use SR-IOV on this computer, the computer BIOS must be updated to allow Windows Server 2012 and later to control PCI Express using _OSC HandOff. Contact the original equipment manufacturer of the computer for an update.

Parameters

-AsJob

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CimSession<CimSession[]>

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-IncludeHidden

Specifies both visible and hidden network adapters. If a wildcard character is used to identify a network adapter, then the wildcard character is matched against both hidden and visible adapters.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InterfaceDescription<String[]>

Specifies the network adapter interface description. For a physical network adapter this is typically the name of the vendor of the network adapter followed by a part number and description, such as Contoso 12345 Gigabit Network Device.

Aliases

ifDesc

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

true (ByPropertyName)

Accept Wildcard Characters?

true

-Name<String[]>

Specifies the name of the network adapter. The name of the network adapter from which to retrieve the SR-IOV properties.

Aliases

ifAlias, InterfaceAlias

Required?

false

Position?

1

Default Value

none

Accept Pipeline Input?

true (ByPropertyName)

Accept Wildcard Characters?

true

-ThrottleLimit<Int32>

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see    about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

  • None

Outputs

The output type is the type of the objects that the cmdlet emits.

  • Microsoft.Management.Infrastructure.CimInstance#ROOT/StandardCimv2/MSFT_NetAdapterSriovSettingData

    The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign (#) provides the namespace and class name for the underlying WMI object.

Examples

EXAMPLE 1

This example displays the SR-IOV properties for all SR-IOV-capable network adapters.

PS C:\> Get-NetAdapterSriov –Name *

EXAMPLE 2

This example displays the SR-IOV properties for network adapter named Ethernet 2.

PS C:\> Get-NetAdapterSriov -Name "Ethernet 2"

EXAMPLE 3

This example displays the SR-IOV properties for the network adapter with the interface description Contoso 12345 Gigabit Network Device.

PS C:\> Get-NetAdpaterSriov -InterfaceDescription "Contoso 12345 Gigabit Network Device"

EXAMPLE 4

This example gets the SR-IOV properties for the network adapter with SR-IOV enabled.

PS C:\> Get-NetAdapterSriov –Name * | Where-Object -FilterScript { $_.Enabled –Eq $true }

Disable-NetAdapterSriov

Enable-NetAdapterSriov

Get-NetAdapterSriovVf

Set-NetAdapterSriov

Where-Object