On Windows 7, we can view network link speed easily and conveniently using the Windows Task Manager, as shown in the figure below,
On Windows 8, the Task Manager has different interface and does not show the link speed any more. If we want to know the link speed, we can view it using the Windows Control Panel, which works on both Windows 7 and Windows 8. A shortcut is to right-click on the "network" icon in the system tray, then open the "Network and Sharing Center", finally click on the Wi-Fi connection on the right. The result will be something similar to below,
which clealy shows the link speed.
The following methods may be more interesting,
- using the netsh command
- querying the Windows Management Instrumentation (WMI) with WQL
- using the GetAdaptersAddresses API
netsh
Open a Windows Command Prompt window, you can issue the following command,
netsh wlan show interface
which list all Wi-Fi interfaces and their properties.
Querying WMI with WQL
We can use Windows PowerShell to issue WMI queries. Below is an example,
C:\>powershell
Windows PowerShell
Copyright (C) 2013 Microsoft Corporation. All rights reserved.
PS C:\> $query = "SELECT Description, DeviceID, Speed FROM CIM_NetworkAdapter
WHERE Description like '%Wi-Fi%' OR Description like '%802.11%'";
PS C:\> Get-WmiObject -Query $query
These two posts are particularly helpful for me to write WQL queries to query the WMI.
GetAdaptersAddresses API
To me, this is the most interesting one. This stackoverflow thread provides a sample program in C# that uses P/Invoke to call the GetAdaptersAddresses API. I made some simple revisions and put all the code together,You can create a project in Visual Studio to compile the program. However, for this simple example, I would prefer a command line approach,
C:\notes\wifistatus\windows>"c:\Program Files (x86)\Microsoft Visual
Studio 12.0\Common7\Tools\vsvars32.bat"
C:\notes\wifistatus\windows>csc /warn:4 WifiStatus.cs IPIntertop.cs
Microsoft (R) Visual C# Compiler version 12.0.30501.0
for C# 5
Copyright (C) Microsoft Corporation. All rights reserved.
C:\notes\wifistatus\windows>WifiStatus.exe
GetAdaptersAddresses yields:
Length of the IP_ADAPTER_ADDRESS struct: 448
IfIndex (IPv4 interface): 4
Adapter name: {......}
DNS Suffix: foo.com
Description: Broadcom 802.11n Network Adapter
Friendly name: Wi-Fi
Physical address: ......
Flags: 453
Mtu: 1500
IfType: IF_TYPE_IEEE80211
OperStatus: IfOperStatusUp
Ipv6IfIndex (IPv6 interface): 4
ZoneIndices (hex): 4 4 4 4 1 1 1 1 1 1 1 1 1 1 0 1
Transmit link speed: 65000000
Receive link speed: 144000000
Number of IP Adapter Prefix entries: 5
GetAllNetworkInterfaces yields:
Current Wi-Fi Speed on Broadcom 802.11n Network Adapter: 144000000
C:\notes\wifistatus\windows>
Alternatively, perhaps, more naturally, you can do the same in C/C++,
To compile and run it on the Windows Command Prompt command line, do,
C:\notes\wifistatus\windows>"c:\Program Files (x86)\Microsoft Visual
Studio 12.0\Common7\Tools\vsvars32.bat"
C:\notes\wifistatus\windows>cl /W4 getwifiadapteraddress.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 18.00.30501 for x86
Copyright (C) Microsoft Corporation. All rights reserved.
getwifiadapteraddress.cpp
Microsoft (R) Incremental Linker Version 12.00.30501.0
Copyright (C) Microsoft Corporation. All rights reserved.
/out:getwifiadapteraddress.exe
getwifiadapteraddress.obj
C:\notes\wifistatus\windows>getwifiadapteraddress.exe
Length of the IP_ADAPTER_ADDRESS struct: 376
IfIndex (IPv4 interface): 4
Adapter name: {......}
DNS Suffix: foo.com
Description: Broadcom 802.11n Network Adapter
Friendly name: Wi-Fi
Physical address: ......
Flags: 453
Mtu: 1500
IfType: 71
OperStatus: 1
Ipv6IfIndex (IPv6 interface): 4
ZoneIndices (hex): 4 4 4 4 1 1 1 1 1 1 1 1 1 1 0 1
Transmit link speed: 65000000
Receive link speed: 144000000
Number of IP Adapter Prefix entries: 8
C:\notes\wifistatus\windows>
Thanks for sharing & Its Great information. And Look on right now!
ReplyDeleteCan help you BlogSpot Blog, Sbcglobal email not working on iPhone/Mac/Phone, and Sbcglobal.net not sending and receiving emails| How to Reset My Spotify Password? How to Recover My Spotify Password?