vfs_aio_ratelimit - Man Page
Implement async-I/O rate-limiting for Samba
Synopsis
vfs objects = aio_ratelimit
Description
This VFS module is part of the samba(7) suite.
The aio_ratelimit VFS module enables run-time rate-limiting on specific shares by enforcing upper limit on async I/O operations. An administrator may define this limit as operations per-second or bytes-per-second. When one of those limits is exceeded, a delay value (in milliseconds) is calculated based on current I/O load and injected to async I/O operations, yielding an implicit throughput ceiling.
This module operates only on asynchronous VFS READ/WRITE operation.
This module is stackable.
Configuration
Straight forward use:
[share] path = /path/to/share vfs objects = aio_ratelimit
Options
- aio_ratelimit:read_iops_limit = count
Upper limit of READ operations-per-second before injecting delays. Zero value implies no limit.
Default: 0, Max: 1000000
Example: aio_ratelimit:read_iops_limit = 1000
- aio_ratelimit:read_bw_limit = count
Upper limit of READ bandwidth (bytes-per-second) before injecting delays. Zero value implies no limit.
Default: 0, Max: 1T
Example: aio_ratelimit:read_bw_limit = 1000000
- aio_ratelimit:read_delay_max = seconds
Maximal allowed delay value, in seconds, for READ.
Default: 30, Max: 300
Example: aio_ratelimit:read_delay_max = 15
- aio_ratelimit:write_iops_limit = count
Upper limit of WRITE operations-per-second before injecting delays. Zero value implies no limit.
Default: 0, Max: 1000000
Example: aio_ratelimit:write_iops_limit = 1000
- aio_ratelimit:write_bw_limit = count
Upper limit of WRITE bandwidth (bytes-per-second) before injecting delays. Zero value implies no limit.
Default: 0, Max: 1T
Example: aio_ratelimit:write_bw_limit = 1000000
- aio_ratelimit:write_delay_max = seconds
Maximal allowed delay value, in seconds, for WRITE.
Default: 30, Max: 300
Example: aio_ratelimit:write_delay_max = 20
Version
This man page is part of version 4.24.0rc3 of the Samba suite.
Author
The original Samba software and related utilities were created by Andrew Tridgell. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed.