Set-Smb
Bandwidth
Limit
Syntax
Set-SmbBandwidthLimit
-Category <BandwidthLimitCategory>
-BytesPerSecond <UInt64>
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Set-SmbBandwidthLimit cmdlet adds a Server Message Block (SMB) bandwidth cap for the traffic categories that you specify. SMB bandwidth caps limit the amount of data that the server can send for each traffic category.
Examples
Example 1: Add an SMB limit
PS C:\> Set-SmbBandwidthLimit -Category Default -BytesPerSecond 100MB
This command limits SMB traffic to 100 megabytes per second for traffic that is unrelated to Hyper-V over SMB or Live Migration.
Example 2: Add an SMB limit for live migration
PS C:\> Set-SmbBandwidthLimit -Category LiveMigration -BytesPerSecond 1GB
This command limits SMB traffic to 1 gigabyte per second for Live Migration.
Required Parameters
Specifies the maximum number of bytes per second that the server can send for the traffic categories that you specify. You can specify units after the number of bytes, such as KB, MB, and GB. You cannot specify a value smaller than 1MB (1048576 bytes) for this parameter.
Type: | UInt64 |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies an array of categories of the SMB bandwidth limits to add. The acceptable values for this parameter are:
- Default
- VirtualMachine
- LiveMigration
Type: | BandwidthLimitCategory |
Parameter Sets: | Default, VirtualMachine, LiveMigration, StorageReplication |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Optional Parameters
Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
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.
Type: | CimSession[] |
Aliases: | Session |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
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.
Type: | Int32 |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Notes
-
Before you can use this cmdlet, you must enable the feature by using the following command:
Add-WindowsFeature -Name FS-SMBBW
For more information, typeGet-Help Install-WindowsFeature
. When you enable the feature, the SMB server creates a new SMB performance counter set that has an instance per category. The performance counters in this set use the same counters as the SMB Client Shares performance counters.