numOfSupportPeers and numOfSupportTorrents
Minimum Memory: N * 8 Bytes
131,072 Peers: ~ 1MB
1,048,576 Peers: ~ 8MB
134,217,728 Peers: ~ 1GB
4,294,967,295 Peers: ~ 32GB
UINT32_MAX = 4,294,967,295
Minimum Memory: N * (1052) Bytes
1,024 Torrent: ~ 1MB
65,536 Torrent: ~ 66MB
1,048,576 Torrent: ~ 1GB
4,294,967,295 Torrent: ~ 4TB
16384 Torrents and Torrent-Peers Table: ~16.437MB
IPv4 UDP size: 28 bytes
AnnounceRequest: 28+98 = 126 bytes
AnnounceResponse: 28+20+(N*6)= 48+? bytes
28+20+(200*6)= 1248 bytes
Request(Download):
100Mbps: ~104,025 QPS
1Gbps: ~1,040,253 QPS
2.5Gbps: ~2,600,634 QPS
10Gbps: ~10,402,539 QPS
40Gbps: ~41,610,156 QPS
100Gbps:~104,025,390 QPS
Response(Upload):
100Mbps: ~10,502 QPS
1Gbps: ~105,025 QPS
2.5Gbps: ~262,564 QPS
10Gbps: ~1,050,256 QPS
40Gbps: ~4,201,024 QPS
100Gbps:~10,502,560 QPS
The execution time per query on a single physical core: ~20 μs(2.0Ghz)
(1,000,000(seconds factor) / 20 μs(Per query) * (Num of core) = QPS
Example:
1,000,000 / 20 * 8 = ~400,000 QPS
1,000,000 / 20 * 64 = ~3,200,000 QPS
1,000,000 / 20 * 128 = ~6,400,000 QPS
(Num of Online Peers) / (announce interval seconds) = Queries Per Second (QPS)
4,294,967,295 (Online Peers) / 300 ( 5 minutes) =~14,316,558 QPS
4,294,967,295 (Online Peers) / 600 (10 minutes) =~ 7,158,278 QPS
4,294,967,295 (Online Peers) / 900 (15 minutes) =~ 4,772,186 QPS