You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -16,33 +16,56 @@ This article describes how to use the free NTTTCP tool from Microsoft to test ne
16
16
17
17
## Prerequisites
18
18
19
-
To test throughput, you need two VMs of the same size to function as *sender* and *receiver*. The two VMs should be in the same [proximity placement group](/azure/virtual-machines/co-location) or [availability set](/azure/virtual-machines/availability-set-overview), so you can use their internal IP addresses and exclude load balancers from the test.
20
-
21
-
Note the number of VM cores and the receiver VM IP address to use in the commands. Both the sender and receiver commands use the receiver's IP address.
19
+
- An Azure account with an active subscription. [Create an account for free](https://azure.microsoft.com/free/?WT.mc_id=A261C142F).
20
+
- Two Windows or Linux virtual machines in Azure. [Create a Windows VM](/azure/virtual-machines/windows/quick-create-portal) or [create a Linux VM](/azure/virtual-machines/linux/quick-create-portal).
21
+
- To test throughput, you need two VMs of the same size to function as *sender* and *receiver*. The two VMs should be in the same [proximity placement group](/azure/virtual-machines/co-location) or [availability set](/azure/virtual-machines/availability-set-overview), so you can use their internal IP addresses and exclude load balancers from the test.
22
+
- Note the number of VM cores and the receiver VM IP address to use in the commands. Both the sender and receiver commands use the receiver's IP address.
22
23
23
24
>[!NOTE]
24
25
>Testing by using a virtual IP (VIP) is possible, but is beyond the scope of this article.
25
26
27
+
**Examples used in this article**
28
+
29
+
| Setting | Value |
30
+
|---|---|
31
+
| Receiver VM IP address |**10.0.0.5**|
32
+
| Number of VM cores |**2**|
33
+
26
34
## Test throughput with Windows VMs or Linux VMs
27
35
28
36
You can test throughput from Windows VMs by using [NTTTCP](https://github.com/microsoft/ntttcp) or from Linux VMs by using [NTTTCP-for-Linux](https://github.com/Microsoft/ntttcp-for-linux).
29
37
30
38
# [Windows](#tab/windows)
31
39
32
-
### Set up NTTTCP and test configuration
40
+
### Prepare VMs and install NTTTCP-for-Windows
33
41
34
-
1. On both the sender and receiver VMs, [download the latest version of NTTTCP](https://github.com/microsoft/ntttcp/releases/latest) into a separate folder like *c:\\tools*.
42
+
1. On both the sender and receiver VMs, [download the latest version of NTTTCP](https://github.com/microsoft/ntttcp/releases/latest) into a separate folder like **c:\\tools**.
35
43
36
-
1.On the receiver VM, create a Windows Defender Firewall `allow` rule to allow the NTTTCP traffic to arrive. It's easier to allow *nttcp.exe* by name than to allow specific inbound TCP ports. Run the following command, replacing `c:\tools` with your download path for *ntttcp.exe* if different.
44
+
1.Open the Windows command line and navigate to the folder where you downloaded **ntttcp.exe**.
1. On the receiver VM, create a Windows Firewall `allow` rule to allow the NTTTCP traffic to arrive. It's easier to allow **nttcp.exe** by name than to allow specific inbound TCP ports. Run the following command, replacing `c:\tools` with your download path for **ntttcp.exe** if different.
1. To confirm your configuration, test a single Transfer Control Protocol (TCP) stream for 10 seconds by running the following commands:
52
+
1. To confirm your configuration, use the following commands to test a single Transfer Control Protocol (TCP) stream for 10 seconds on the receiver and sender virtual machines:
43
53
44
-
- On the receiver VM, run `ntttcp -r -t 10 -P 1`.
45
-
- On the sender VM, run `ntttcp -s<receiver IP address> -t 10 -n 1 -P 1`.
54
+
**Receiver VM**
55
+
56
+
`ntttcp -r -m [<number of VM cores> x 2],*,<receiver IP address> -t 10 -P 1`
57
+
58
+
```cmd
59
+
ntttcp -r -m 4,*,10.0.0.5 -t 10 -P 1
60
+
```
61
+
62
+
**Sender VM**
63
+
64
+
`ntttcp -s -m [<number of VM cores> x 2],*,<receiver IP address> -t 10 -P 1`
65
+
66
+
```cmd
67
+
ntttcp -s -m 4,*,10.0.0.5 -t 10 -P 1
68
+
```
46
69
47
70
>[!NOTE]
48
71
>Use the preceding commands only to test configuration.
@@ -52,31 +75,65 @@ You can test throughput from Windows VMs by using [NTTTCP](https://github.com/mi
52
75
53
76
### Run throughput tests
54
77
55
-
Run *ntttcp.exe* from the Windows command line, not from PowerShell. Run the test for 300 seconds, or five minutes, on both the sender and receiver VMs. The sender and receiver must specify the same test duration for the `-t` parameter.
78
+
Run the test for 300 seconds, or five minutes, on both the sender and receiver VMs. The sender and receiver must specify the same test duration for the `-t` parameter.
56
79
57
80
1. On the receiver VM, run the following command, replacing the `<number of VM cores>`, and `<receiver IP address>` placeholders with your own values.
81
+
82
+
**`ntttcp -r -m [<number of VM cores> x 2],*,<receiver IP address> -t 300`**
83
+
84
+
```cmd
85
+
ntttcp -r -m 4,*,10.0.0.5 -t 300
86
+
```
87
+
88
+
1. On the sender VM, run the following command. The sender and receiver commands differ only in the `-s` or `-r` parameter that designates the sender or receiver VM.
89
+
90
+
**`ntttcp -s -m [<number of VM cores> x 2],*,<receiver IP address> -t 300`**
58
91
59
92
```cmd
60
-
ntttcp -r -m [<number of VM cores> x 2],*,<receiver IP address> -t 300
93
+
ntttcp -s -m 4,*,10.0.0.5 -t 300
61
94
```
62
95
63
-
The following example shows a command for a VM with four cores and an IP address of `10.0.0.4`.
96
+
1. Wait for the results.
64
97
65
-
`ntttcp -r -m 8,*,10.0.0.4 -t 300`
98
+
When the test is complete, the output should be similar as the following example:
99
+
100
+
```output
101
+
C:\tools>ntttcp -s -m 4,*,10.0.0.5 -t 300
102
+
Copyright Version 5.39
103
+
Network activity progressing...
66
104
67
-
1. On the sender VM, run the following command. The sender and receiver commands differ only in the `-s` or `-r` parameter that designates the sender or receiver VM.
68
105
69
-
```cmd
70
-
ntttcp -s -m [<number of VM cores> x 2],*,<receiver IP address> -t 300
71
-
```
106
+
Thread Time(s) Throughput(KB/s) Avg B / Compl
107
+
====== ======= ================ =============
108
+
0 300.006 29617.328 65536.000
109
+
1 300.006 29267.468 65536.000
110
+
2 300.006 28978.834 65536.000
111
+
3 300.006 29016.806 65536.000
72
112
73
-
The following example shows the sender command for a receiver IP address of `10.0.0.4`.
0 commit comments