Iperf3
The iperf3
sensor integration集成将 Home Assistant 与您的设备、服务等连接和集成。 [Learn more] allows you to measure network bandwidth performance against a private or public Iperf3
Enabling this integration集成将 Home Assistant 与您的设备、服务等连接和集成。 [Learn more] will automatically create the Iperf3 sensors for the monitored conditions (below). By default, it will run every hour. The user can change the update frequency in the configuration by defining the scan_interval
for a Iperf3 test to run.
Setup
This integration requires the iperf3
command to be installed on your OS. Please, refer to the official Iperf3 documentation
Configuration
To add the iperf3
sensor to your installation, add the following to your configuration.yaml
configuration.yaml 文件是 Home Assistant 的主要配置文件。它列出了要加载的集成及其特定配置。在某些情况下,需要直接在 configuration.yaml 文件中手动编辑配置。大多数集成可以在 UI 中配置。 [Learn more] file.
在更改了configuration.yaml
configuration.yaml 文件是 Home Assistant 的主要配置文件。它列出了要加载的集成及其特定配置。在某些情况下,需要直接在 configuration.yaml 文件中手动编辑配置。大多数集成可以在 UI 中配置。 [Learn more] 文件后,重启 Home Assistant 以应用更改。 该集成现在显示在集成页面的 设置 > 设备与服务 下。其实体在集成卡片上以及实体标签上列出。
Once per hour, on the hour (default):
# Example configuration.yaml entry
iperf3:
hosts:
- host: iperf.he.net
Configuration Variables
Sensors to display in the frontend.
Minimum time interval between updates. Supported formats: scan_interval: 'HH:MM:SS'
, scan_interval: 'HH:MM'
and Time period dictionary (see example below).
Configuration variables (host):
Configuration Variables
Specify the test duration in seconds. Default is 10 and the valid range is from 5 to 10.
Specify the number of concurrent streams to connect to the server. Default is 1 and the valid range is from 1 to 20.
Specify the protocol to be used on the test. Default is TCP and the valid values are TCP or UDP. If your Iperf3 server is located in the Internet, consider to use TCP instead of UDP. If the protocol is set to use UDP, the sensor may not get updated due to package retransmission issues due to its nature.
Time period dictionary example
scan_interval:
# At least one of these must be specified:
days: 0
hours: 0
minutes: 3
seconds: 30
milliseconds: 0
You can find a list of public Iperf3 servers hereiperf3
command’s man page.
The frequency when the test will be automatically triggered can be adjusted by setting the value scan_interval
in seconds.
Parallel streams can help in some situations. As TCP attempts to be fair and conservative, you may consider increasing the parallel
attribute. Use this value with careful and refer to Iperf3 man page for more information.
You can use the sensor.iperf3_update
action to trigger a manual speed test for all sensors. Iperf3 has its own action that allows performing a speed test on a particular entity.
Action
Once loaded, the iperf3
integration will expose an action (iperf3.speedtest
) that can be called to run a speed test on demand. This can be useful if you have enabled manual mode.
Data attribute | Description |
---|---|
host |
String that point at a configured host from configuration.yaml . Otherwise, tests will be run against all configured hosts. |
Example action data:
{"host": "192.168.0.121"}