Performance comparison: RSplitCap (Rust) vs SplitCap (C#, via Wine)
Side-by-side comparison of shared SplitCap features. N× = RSplitCap is N times faster.
| Test | Strategy | Input | Size | Time (RSplitCap vs SplitCap) | Memory (RSplitCap vs SplitCap) | Files (RS) | Files (SC) |
|---|---|---|---|---|---|---|---|
| split_session | session | Facetime.pcap | 2.4 MB | 497 ms vs 14.93s 30.0× | 56.1 MB vs 1.9 MB | 8510 | 8504 |
| split_flow | flow | Facetime.pcap | 2.4 MB | 1.13s vs 27.43s 24.3× | 63.8 MB vs 1.9 MB | 16214 | 16213 |
| split_host | host | Facetime.pcap | 2.4 MB | 159 ms vs 17.01s 107.3× | 61.3 MB vs 1.9 MB | 93 | 92 |
| split_hostpair | hostpair | Facetime.pcap | 2.4 MB | 126 ms vs 9.43s 74.8× | 38.2 MB vs 1.9 MB | 90 | 89 |
| split_mac | mac | Facetime.pcap | 2.4 MB | 16 ms vs 2.15s 130.9× | 12.4 MB vs 1.9 MB | 8 | 7 |
| split_nosplit | nosplit | Facetime.pcap | 2.4 MB | 7 ms vs 2.15s 315.0× | 9.4 MB vs 1.9 MB | 1 | 1 |
| filter_ip | session | Facetime.pcap | 2.4 MB | 4 ms vs 1.49s 411.0× | 5.9 MB vs 1.9 MB | 0 | 0 |
| filter_port | session | Facetime.pcap | 2.4 MB | 3 ms vs 1.27s 375.4× | 5.9 MB vs 1.9 MB | 0 | 0 |
| filter_ip_port | session | Facetime.pcap | 2.4 MB | 3 ms vs 1.31s 455.8× | 6.0 MB vs 2.0 MB | 0 | 0 |
| split_l7 | session | Facetime.pcap | 2.4 MB | 394 ms vs 36.36s 92.3× | 46.2 MB vs 1.9 MB | 7252 | 7252 |
Features available only in RSplitCap: PCAP-NG, archive mode, pipelined streaming, mmap I/O, BSSID strategy, time/packet bucketing, secondary indexes.
| Feature | Strategy | Input | Size | Time | Memory | Files | Output Size |
|---|---|---|---|---|---|---|---|
| archive_create | session | Facetime.pcap | 2.4 MB | 21 ms | 10.2 MB | 1 | 3.6 MB |
| archive_with_index | session | Facetime.pcap | 2.4 MB | 18 ms | 10.3 MB | 1 | 3.6 MB |
| mmap_off | session | Facetime.pcap | 2.4 MB | 436 ms | 56.0 MB | 8510 | 2.8 MB |
| mmap_on | session | Facetime.pcap | 2.4 MB | 444 ms | 56.0 MB | 8510 | 2.8 MB |
| pipeline_off | session | Facetime.pcap | 2.4 MB | 237 ms | 12.9 MB | 8510 | 2.8 MB |
| pipeline_on | session | Facetime.pcap | 2.4 MB | 471 ms | 56.1 MB | 8510 | 2.8 MB |
| strategy_bssid | bssid | Facetime.pcap | 2.4 MB | 6 ms | 8.2 MB | 1 | 2.5 MB |
| RSplitCap binary | /home/pamisu/program/RSplitCap/target/release/rsplitcap |
| SplitCap binary | /home/pamisu/program/RSplitCap/bench/SplitCap.exe |
| Test data | /home/pamisu/program/RSplitCap/bench/USTC-TFC2016-master |
| Warmup runs | 1 |
| Measurement runs | 2 |
| Max sessions | 10000 |