|
|
| Zeile 15: |
Zeile 15: |
| ;IP Telefone können solche Dinge auch | | ;IP Telefone können solche Dinge auch |
|
| |
|
| =Umsetzung unter Linux=
| | *[[Qos Fallbeispiel Umsetzung unter Linux]] |
| *Wir können nur die ausgehenden Schnittstelle den Traffic einschränken. | |
| *Als ausgehende Schnittstelle nutzen wir eth0
| |
| *Wir nutzen unter Linux einen Traffic Shaper
| |
| =Umsetzung=
| |
| Um das Traffic Shaping auf Ihrer ausgehenden Schnittstelle eth0 umzusetzen und eine Bandbreitenbegrenzung von 30 Mbit/s für den VoIP-Datenverkehr zu erreichen, können Sie das Tool "tc" (Traffic Control) verwenden. "tc" ist ein leistungsstarkes Werkzeug zur Netzwerkverkehrskontrolle unter Linux.
| |
| | |
| =Vorgehensweise=
| |
| Überprüfen Sie zunächst, ob das Paket "tc" auf Ihrem Linux-Router installiert ist. Sie können dies mit dem Befehl "tc -v" überprüfen. Wenn "tc" nicht installiert ist, können Sie es mit dem Paketmanager Ihres Linux-Systems installieren.
| |
| =Legen Sie eine Klasse (Class) für den VoIP-Datenverkehr fest=
| |
| *tc qdisc add dev eth0 root handle 1: htb default 10
| |
| *tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbit
| |
| *tc class add dev eth0 parent 1:1 classid 1:10 htb rate 30mbit
| |
| =Erläuterung=
| |
| Dieser Code erstellt eine Hierarchische Token Bucket (HTB) Warteschlange auf der Schnittstelle eth0. Die Gesamtbandbreite wird auf 100 Mbit/s festgelegt, und eine Klasse mit einer Bandbreite von 30 Mbit/s (classid 1:10) wird erstellt.
| |
| =Definieren der Filterregel, um den VoIP-Datenverkehr zu kennzeichnen=
| |
| *tc filter add dev eth0 protocol ip parent 1: prio 1 u32 match ip dscp ef 0xff flowid 1:10
| |
| *tc filter add dev eth0 protocol ip parent 1: prio 2 u32 match ip dscp cs5 0xff flowid 1:10
| |
| Diese Filterregeln identifizieren den VoIP-Datenverkehr anhand der DSCP-Markierungen. Hier werden die DSCP-Markierungen CS5 (Class Selector 5) und EF (Expedited Forwarding) verwendet, die üblicherweise für VoIP-Verkehr verwendet werden.
| |
| ;ef wird durch die Priorisierung vor allem anderen behandelt.
| |
| =Der Rest kommt auch in die Priorisierung 2=
| |
| *tc filter add dev eth0 protocol ip parent 1: prio 2 flowid 1: default
| |
| | |
| =Überprüfung=
| |
| *tc qdisc show dev eth0
| |
| *tc class show dev eth0
| |
| *tc filter show dev eth0
| |