Wenn Datenpakete über ein TCP/IP-Netzwerk verschickt werden, werden sie vom System in einem sogenannten Buffer zwischengespeichert. Standardmässig haben diese Buffer für eingehende und ausgehende Pakete Platz für je 32768 Bit (4KB). Dieser Wert ist für Modemverbindungen ideal; wenn man jedoch über DSL oder Cable ins Internet geht, nicht optimal.
Die optimalen Werte lassen sich theoretisch kaum errechnen, sondern nur durch ausprobieren ermitteln. Welche Einstellungen optimal sind, hängt schliesslich von vielen Faktoren ab.
Um den Computer dazu zu veranlassen, bei jedem Systemstart die entsprechenden Werte zu setzen, erstellen wir eigenhändig ein StartupItem:
Wenn nicht bereits vorhanden, erstellen Sie im Ordner /Library einen Ordner 'StartupItems'
In diesem Ordner (/Library/StartupItems) erstellen Sie einen Ordner mit dem Namen 'BBO'. BBO steht für BroadBandOptimizer oder BreitBandOptimierer; Sie können auch einen anderen Namen verwenden.
Erstellen Sie mit einem TextEditor (zum Beispiel BBEdit oder pico) eine Textdatei mit folgendem Inhalt:
#!/bin/sh
. /etc/rc.common
/usr/sbin/sysctl -w net.inet.tcp.sendspace=65536 > /dev/null
/usr/sbin/sysctl -w net.inet.tcp.recvspace=65536 > /dev/null
/usr/sbin/sysctl -w net.inet.tcp.delayed_ack=0 > /dev/null
/usr/sbin/sysctl -w net.inet.udp.recvspace=73728 > /dev/null
echo "Network settings optimized"
Anstatt der angegebenen Werte können Sie auch andere ausprobieren. Beachten Sie aber den Hinweis weiter unten!
Speichern Sie diese Datei unter dem Namen 'BBO' in den Ordner '/Library/StartupItems/BBO'.
Erstellen Sie eine weitere Textdatei mit diesem Inhalt:
{
Description = "BBO";
Provides = ("BBO");
Requires = (Network, "Network Configuration");
OrderPreference = "none";
Messages =
{
start = "Starting BBO";
stop = "Stopping BBO";
};
}
Diese Datei bekommt den Namen StartupParameters.plist und wir auch im Ordner '/Library/StartupItems/BBO' gespeichert.
Nun müssen noch die korrekten Zugriffsrechte gesetzt werden. Am einfachsten geht das im terminal mit dem Befehl
sudo chmod -R 775 /Library/StartupItems/BBO
Nach dem nächsten Systemstart weerden die neuen Werte eingestellt sein. Überprüfen Sie dies, indem sie im Terminal den Befehl
sysctl net.inet.tcp.sendspace net.inet.tcp.recvspace net.inet.tcp.delayed_ack net.inet.udp.recvspace
eingeben. Die Werte werden dann angezeigt.
Um das StartupItem zu deaktivieren, kann man es einfach aus dem Ordner /Library/StartupItems löschen. Nach einem Systemstart sind dann wieder die Standardwerte eingestellt.
Wichtiger Hinweis:
Die Werte für net.inet.tcp.sendspace und net.inet.tcp.recvspace sollten jeweils ein Vielfaches von 16384 sein (also eine ganzzahlige, gerade KB-Zahl). Sinnvoll sind also die Werte 32768 (4KB, Standard), 49152 (6KB) oder 65536 (8KB).
Der Wert für net.inet.udp.recvspace sollte etwas (ca. +8192, also 1KB) grösser sein als net.inet.tcp.recvspace.
net.inet.tcp.delayed_ack kann 1 oder 0 sein.