Den Erfolg einer Tuning-Maßnahme können letztendlich nur Messungen belegen. Dafür kann man zum einen das Antwortverhalten der Applikation heranziehen, die zu beschleunigen war, zum anderen eignen sich Benchmarks dafür. Häufig eingesetzte I/O-Benchmarks sind beispielsweise Bonnie++ [3] oder etwa Iozone [4], das automatisch die verschiedenen I/O-Operationen bei unterschiedlichen File- und Blockgrößen misst (Abbildung 4). Sehr flexibel ist auch »fio« [5], mit dem sich unterschiedliche Workload-Charakteristiken nachstellen lassen.
Auch noch in die Kategorie I/O fällt das Netzwerk. Dieser Beitrag konzentriert sich auf den Linux-Server und lässt aktive Komponenten wie Router oder Switches außen vor – praktisch spielen sie natürlich eine Rolle und sind mit zu berücksichtigen. Dasselbe trifft auf WAN-Verbindungen und das Internet zu, zumal nicht erreichbare DNS- oder hängende NFS-Server leicht zu Folgeproblemen führen, die nicht immer sofort als solche erkennbar sind. Eine isolierte Betrachtung des Servers kann aber durchaus sinnvoll sein, um die Problemstellen einzugrenzen. Im Hinterkopf sollte man dabei das siebenstufige ISO/OSI-Referenzmodell oder das auf vier Schichten reduzierte Modell (Abbildung 5) haben.
Ein guter Ausgangspunkt ist eine Bestandsaufnahme, die klärt: