Skip to content
A module for testing network bandwidth over the internet as well as private networks.
PowerShell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode
PSSpeedTest
tests
Invoke-BootstrapPackageManagement.ps1
LICENSE
PSSpeedTest.Build.ps1
README.md
appveyor.yml
build.Depend.psd1
build.ps1
deploy.PSDeploy.ps1

README.md

PSSpeedTest

A module for testing network bandwidth over the internet as well as private networks.

Author: Matthew Bobke

Build status

Description

Whenever I've needed to run a network bandwidth test, I've defaulted to services such as Speedtest by Ookla and fast.com. While effective, I spend a lot of time in the shell and I don't want to have to open an internet browser just to see if my network speeds are slow. iPerf3 is a simple command-line utility for testing network bandwidth and has been combined with PowerShell to form PSSpeedTest. Behind the scenes, the executable is retrieved using the ChocolateyGet PackageProvider.

Installation

Install-Module -Name PSSpeedTest -Repository PSGallery

NOTE: Installing this module will not automatically install ChocolateyGet or iPerf3. Running Invoke-SpeedTest or Install-SpeedTestServer will prompt for the installation of these two items if they are not installed and the global $ConfirmationPreference is not 'None'.

Usage (Public Functions)

Get-Help FunctionName -Full for detailed help.

Get-SpeedTestConfig

Returns a list of your configured default speed test servers/ports for Invoke-SpeedTest.

Set-SpeedTestConfig

Used to set the default speed test servers/ports for Invoke-SpeedTest when using the -Internet or -Local switch arguments.

Invoke-SpeedTest

Runs a speed test against a server that is running iPerf3. The -Internet or -Local switches will use stored defaults, or a server can be specified with -Server and -Port. -Port can be left out to use the default iPerf3 port 5201.

Install-SpeedTestServer

Sets up iPerf3 as a server process on the local computer. This performs the following:

  • Installs the ChocolateyGet PackageProvider if not already present.
  • Installs the iPerf3 package if not already present.
  • Sets the inbound/outbound firewall rules for the given port (5201 if the -Port parameter is not used.)
  • Creates a Scheduled Task to run iperf3.exe with the necessary parameters for server usage on computer startup.

Remove-SpeedTestServer

Removes all items configured by Install-SpeedTestServer with the exception of the ChocolateyGet PackageProvider.

Building

.\build.ps1

Testing

.\build.ps1 -Task Test

Contributing

Contributions are welcome and encouraged. Please submit issues and pull requests!

You can’t perform that action at this time.