mirror of
https://github.com/rakshasa/rtorrent.git
synced 2026-10-22 17:16:17 +00:00
Updated Socket Manager and Resource Allocation (markdown)
@@ -33,20 +33,35 @@
|
|||||||
|
|
||||||
## Categories
|
## Categories
|
||||||
|
|
||||||
* **`generic`** (Index 0)
|
* **`generic`**
|
||||||
Peer connections and uncategorized connections. Constraints are immutable.
|
Peer connections and uncategorized connections. This category does not have `min/max_alloc` as it receives the remaining allocation.
|
||||||
|
|
||||||
* **`http`**
|
* **`http`**
|
||||||
libcurl HTTP connections.
|
HTTP connections.
|
||||||
|
|
||||||
* **`internal`**
|
* **`internal`**
|
||||||
DHT, UDP trackers, internal thread interrupt signals, and BitTorrent listen sockets.
|
DHT, UDP trackers, listening and various internal sockets.
|
||||||
|
|
||||||
* **`scgi`**
|
* **`rpc`**
|
||||||
SCGI transport layers and RPC interface backends.
|
RPC related sockets.
|
||||||
|
|
||||||
* **`files`**
|
* **`files`**
|
||||||
File descriptors, including memory-mapped filesystem operations (`mmap`).
|
File descriptors.
|
||||||
|
|
||||||
|
|
||||||
|
## Default Allocation Constraints
|
||||||
|
|
||||||
|
| open_max | generic minimum | reserved | http | internal | rpc | files |
|
||||||
|
| :--- | :--- | :--- | :--- | :--- | :--- | :--- |
|
||||||
|
| **$\ge$ 32768** | 12288 | 512 | 128 | 64 | 64 | 4096 |
|
||||||
|
| **16384 to 32767** | 12288 | 512 | 128 | 64 | 64 | 2048 |
|
||||||
|
| **8096 to 16383** | 6144 | 256 | 64 | 32 | 48 | 1024 |
|
||||||
|
| **1024 to 8095** | 512 | 128 | 32 | 32 | 32 | 128 |
|
||||||
|
| **< 1024** | 256 | 64 | 16 | 16 | 16 | 64 |
|
||||||
|
|
||||||
|
The baseline descriptor limits for each socket category are auto-calculated at startup or when calling `adjust_alloc` using _ulimit open files_.
|
||||||
|
|
||||||
|
Allocation to other categories result in `generic` receiving less than `generic minimum` an `internal_error` is thrown.
|
||||||
|
|
||||||
|
|
||||||
## Examples
|
## Examples
|
||||||
|
|||||||
Reference in New Issue
Block a user