# Data Transfer Optimization: Den Flaschenhals im Backup-Netz weiten
TL;DR / Management Summary Ein Backup-System ist nur so schnell wie die langsamste Komponente im Pfad. In Terabyte-Umgebungen ist dies oft das Netzwerk oder die Disk-I/O des Quell-Systems. Ein Senior Admin optimiert den Datentransfer durch TCP Window Scaling, den Einsatz von Jumbo Frames und die Maximierung von Parallel Streams. Ziel ist es, die verfügbare Bandbreite (10G/25G+) zu 100% auszulasten, um das Backup-Fenster so klein wie möglich zu halten.
# 1. Den Pfad analysieren
Wo geht die Zeit verloren?
Ein Datentransfer besteht aus:
- Read (Quelle Disk).
- Processing (CPU: Kompression/Verschlüsselung).
- Transfer (Netzwerk-Stack).
- Write (Ziel Disk).
# Der Bottleneck-Check (Shell)
Nutzen Sie iperf3 (Artikel 570), um das Netzwerk isoliert von den Festplatten zu testen.
- Erreichen Sie 9.4 Gbit/s in einem 10G Netz? Falls nein -> Netzwerk-Tuning nötig.
# 2. Netzwerk-Stack Tuning
TCP für Massendaten optimieren.
# 1. Jumbo Frames (MTU 9000)
Standard-Pakete sind 1500 Bytes groß. Das bedeutet Millionen von Interrupts für die CPU.
- Aktion: MTU auf 9000 am Switch, am Backup-Host und am Ziel-Storage setzen.
- Ergebnis: Reduziert die CPU-Last um bis zu 20% und erhöht den Netto-Durchsatz.
# 2. TCP Window Scaling
Bei Verbindungen mit hoher Latenz (z.B. Backup in die Cloud) muss das TCP Window groß genug sein, um “Pakete im Flug” zu halten.
# In /etc/sysctl.conf (Linux)
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# 3. Deep Dive: Parallelität & Streams
Mehrere Autobahnen nutzen.
Eine einzelne TCP-Session ist oft limitiert.
- Multi-Streaming: Moderne Backup-Tools (Veeam, Borg, PBS) können Daten über 8 oder 16 parallele Verbindungen schicken.
- Vorteil: Sättigt die Leitung auch dann, wenn ein einzelner CPU-Kern der Engpass ist.
# 4. Day-2 Operations: I/O Priorisierung
Backups vs. User.
Damit das Backup die Produktion nicht ausbremst:
- Aktion: Nutzen Sie
ioniceunter Linux oderSet-ProcessMitigationunter Windows, um dem Backup-Prozess eine niedrigere I/O-Priorität zu geben. - Technik: Das Backup nutzt dann nur die “freien” Zyklen der Festplatte.
# 5. Troubleshooting & “War Stories”
Wenn der Speed einbricht.
# Top 3 Fehlerbilder
-
Symptom: Transferrate sinkt auf exakt 100 Mbit/s oder 1 Gbit/s.
- Ursache: Ein defektes Kabel oder ein Port-Mismatch hat den Link gedrosselt.
- Lösung:
ethtool ethXprüfen.
-
Symptom: Hoher Packet Loss bei Jumbo Frames.
- Ursache: Ein Switch im Pfad unterstützt keine 9000 Bytes MTU (Fragmentation Error).
- Lösung: Pfad-MTU-Test mit
ping -s 8972 -M do IP.
-
Symptom: CPU auf dem Backup-Proxy ist bei 100%.
- Ursache: Zu starker Kompressions-Level (z.B. ZSTD 19).
- Fix: Auf
LZ4wechseln (Artikel 627).
# “War Story”: Der “Auto-Negotiation” Lag
Ein RZ-Betreiber wunderte sich, warum sein 10G-S3-Upload nur mit 300 Mbit/s lief. Die Entdeckung: Der ISP-Router und die OPNsense hatten den Link zwar auf 10G verhandelt, aber die Flow Control war auf einer Seite aktiv und auf der anderen nicht. Dies führte zu ständigen “Pause Frames”, die den TCP-Stack ausbremsten. Lösung: Flow Control auf allen Switchen im Backup-VLAN deaktivieren. Der Durchsatz sprang sofort auf 8 Gbit/s. Lehre: Im High-Performance Bereich sind Auto-Settings oft kontraproduktiv. Manuelle Optimierung ist Pflicht.
# 6. Monitoring & Reporting
Bandbreiten-Audit.
# Traffic Analyse
Nutzen Sie nload oder bmon auf der Shell, um den Live-Durchsatz während des Backups zu beobachten.
- KPI:
bits_per_second. Vergleichen Sie den Wert mit der theoretischen Max-Bandbreite.
# 7. Fazit & Empfehlung
Datentransfer-Optimierung ist die “letzte Meile” für kurze Backup-Fenster.
- Empfehlung: Nutzen Sie Jumbo Frames im lokalen RZ (Proxmox zu PBS).
- Strategie: Implementieren Sie Multi-Streaming in Ihren Skripten (z.B.
rclone --transfers 16).
# Anhang: Cheatsheet (Performance Tuning)
| Komponente | Optimierung | Befehl |
|---|---|---|
| Netzwerk | MTU 9000 | ip link set ethX mtu 9000 |
| TCP | Fast Open | sysctl -w net.ipv4.tcp_fastopen=3 |
| Disk | Read-Ahead | blockdev --setra 4096 /dev/sdX |
| NIC | RSS Queues | ethtool -L ethX combined 8 |