- Lab
-
Libraries: If you want this lab, consider one of these libraries.
- Core Tech

Build a Bandwidth Monitoring Tool with iPerf and PowerShell
In this lab, you'll practice creating a bandwidth monitoring tool using iPerf and PowerShell. When you’re finished, you’ll have a PowerShell module capable of deploying iPerf and retrieving statistics.

Lab Info
Table of Contents
-
Challenge
Getting Started in the Lab Environment
Here are the initial instructions and explanation of the lab environment. Read this while your environment is busy creating itself from nothing. Yes, this violates physics; we know. How fun!
-
Challenge
Set up iPerf and Test it Out
In this challenge, you'll be stepping through the process of setting up the iPerf tool to monitor bandwidth. You'll get hands-on practice with PowerShell Remoting, copying files to a remote server, running a quick test with iPerf, and cleaning up afterward. By the end of this challenge, you'll have a working iPerf instance running on the remote server, allowing you to understand how to perform real-time network bandwidth measurements.
-
Challenge
Run a Bandwidth Check w/PowerShell
Now that you’ve gotten a taste of what iPerf is and how to use it, you’ll begin integrating PowerShell into the mix. In this challenge, you will begin “wrapping” PowerShell around iPerf to invoke a bandwidth test.
-
Challenge
Build Server Check Functionality
When thinking of automating iPerf bandwidth tests, it’s important to build “conditional code.” This is the kind of code that checks the status of processes to make intelligent decisions as to what to do next. For this tool, you must build functionality to test whether or not iPerf is running on a remote server.
-
Challenge
Parse Out a Single Bandwidth Number
You’ve been invoking bandwidth tests and inspecting the results throughout this lab. But those results are just a big string of unstructured data. To build a PowerShell tool (especially a wrapper tool like this one), you should always focus on converting the unstructured data that CLI commands give you into easily consumable output.
-
Challenge
Build a Comprehensive PowerShell Module
Now it’s time to wrap all of this hard work up with a nice bow, and build a nice PowerShell module from it.
About the author
Real skill practice before real-world application
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Learn by doing
Engage hands-on with the tools and technologies you’re learning. You pick the skill, we provide the credentials and environment.
Follow your guide
All labs have detailed instructions and objectives, guiding you through the learning process and ensuring you understand every step.
Turn time into mastery
On average, you retain 75% more of your learning if you take time to practice. Hands-on labs set you up for success to make those skills stick.