So funzt QOS mit VOIP auf dem WRT54GS unter DD-WRT

Bobo71

Neuer User
Mitglied seit
11 Jul 2005
Beiträge
57
Punkte für Reaktionen
0
Punkte
0
Ich frage mich nur, warum Du annimmst, daß die RTP-Ports der FBF 7050 die Ports 6000-8000 sind... Hmm... eigentlich ist das eher 7078-7087 und 7077 für DNS.

--gandalf.
 
nun ja, weil im status nach einem Telefonat über diesen Portbereich der Traffic markiert wurde.. hab das durch mehrere Versuche herausbekommen.
Und ausserdem sind
7078-7087 und 7077
im Bereich von 6000 bis 8000....
Habe bis jetzt auch nichts genaueres zu den RTP Ports der Boxen gefunden.
Weiterhin unterscheiden sich die Ports auch je nach Provider über den ich telefoniere...
 
Hi bobo
welche Firmware läuft auf deinem WRT54GS?

cu icecold
 
Hi icecold,

DD-WRT ab 01.03.06.

Steht aber auch im Originalthread...


Cu...;)
 
Hi,

kann hier noch jmd. die Wirksamkeit dieses Skripts bestätigen?

Nicht, dass ich Bobo nicht glauben würde, aber es gibt gerade in diesem Bereich soviele Konstellationen, die zu Problemen führen können.

Würde mich sehr über Antworten freuen und sollte das Skript wirklich so gut sein, wie hier geschrieben wird, dann wärs der Wahnsinn... ;)



Viele Grüße
ein hoffnungsvoller VoIPler
 
teste es doch, dann weißt ob es funzt...:-Ö
 
Hallo Bobo,

das Gerät steht zwar schon hier, allerdings noch OVP. Ich möchte mir die Arbeit nur machen, wenn ich weiß, dass ein VoIP Gespräch wirklich gut funktioniert, selbst wenn jmd. im Netzwerk meint FullSpeed Downloads zu starten.

Mein Draytek 2900V reguliert auch schon ganz ordentlich, allerdings bei einem FullSpeed Download kommts zu Jitter, Aussetzern und Knacksen. "Normales" Surfen & VoIP dagegen schafft der Draytek ohne Probleme.

Die Firma Hawking bietet ein Gerät an, das angeblich baugleich mit dem Linksys-QoS Chip oder allgemein mit der Hardware übereinstimmt (nen eigenen Chip gibts da ja denk ich mal nicht). Der Hawking Broadband Boost erntet in zahlreichen Foren höchstes Lob für seinen Dienst. VoIP soll damit unglaublich gut funktionieren.

Für 20¤ mehr zwar nur ein QoS Gerät, dafür ohne Konfiguration und angeblich das erste wirklich funktionierende QoS im Low-Budget Bereich, soweit man den Artikeln darüber glauben darf.


....
Viele Grüße
 
entscheidend ist der QOS Algo, und ist HFSc und CBQ im Moment das Maß nach meinem Kenntnisstand!
Ich nutze es bei mir im LAN mit 26 PCs und 3 FBFs und es geht...

Ich habe eine 3024/384 er Leitung! Bittorrent wird auch genutzt...:-Ö
 
Hi,

ja hab mich jetz an die Arbeit gemacht. Neues Terrain, etwas undurchsichtig noch, aber es wird.

Zuerst mit DD-WRT mini, nachfolgend mit der aktuellsten V23 VoIP geflasht. Soweit läuft alles - QoS hier noch nicht getestet. Allerdings hänge ich an der Integration von Deinem Script.

WinScp meldet bei Loginversuch den Fehler Networkerror: Connection refused. JFFS2 enabled ist auf enable und clean wurde durchgeführt. Kann ich Dein Script noch irgendwie anders aufspielen?

Vielen Dank für Deine Hilfe

Ciao
Andreas
 
versuch protokoll scp in winscp.
und die folgende fehlermeldung mit ok bestätigen.ssh muss auch aktiviert sein!!!
 
Bobo: RESPEKT!!!!!!!!!!!!!!!!!!!! Verehrung, Hochachtung, Anerkennung....


Seit über 2 Jahren ist VoIP fester Bestandteil unseres Netzes. 4 angebliche VoIP Router schmückten bereits unser Regal. Mehrere hundert Euros wurden schon investiert, immer in der Hoffnung ein funktionierendes QoS zu erhalten und bis jetzt wurde ich immer entäuscht. Der Draytek konnte geringfühgig eingreifen, bei großen Downloads war das Gerät überfordert.

Mit Deinem Skript ist ein FullSpeed Download möglich und das Telefonat funktioniert EINWANDFREI, kein Knacksen, keine Unterbrechung nichts...

Selbst der Download bricht kaum ein. Ich wäre ja schon zufrieden gewesen, wenn der Download total einbrechen würde, solange das Telefonat noch OK wäre....


Der Wahnsinn, wirklich! Ich bin restlos begeistert, kommt so doch nun endlich eine Jahrelange Suche langsam zu einem Ende.
Du solltest eine eigene Seite mit dem Skript veröffentlichen!


Ist es denn auch richtig, bei TDSL 6000/576 einfach Dein Skript von 380 auf 489 (-15%) umzuändern und sonst alles so belassen?

RTP Ports habe ich auch nicht verändert. Habe ein SNOM360, weiß allerdings auch nicht, wie ich die Ports rausfinde...

Eigentlich müssten bei mir nur 2 Daten unterschieden werden. VoIP und kein VoIP, aber Dein Skript funktioniert auch mit den Klassen gut.


Hochachtungsvoll,
Andreas
 
Zuletzt bearbeitet:
Das freut mich wirklich das es doch noch mehreren anderen hilft....:rock: :rock: :rock:

wenn du ein bischen experimentierst mit den Bandbreiten und Verzögerungszeiten kannst du es noch optimieren....:-Ö

Nutzt du auch das imq?

Grüße.... ;)
 
also ich konnte das skript nun ein weilchen testen und es läuft immer noch!


was meinst du mit imq?

viele grüße
andreas
 
Hi,

imq ist für eingehenden Traffic! Hilft wenn zB. jemand große FTPs mit max Bandbreite saugt...
 
Hi Bobo,

also ich wäre bereit mir ein Excel-Formular zu erstellen, mit dem man die individuellen Daten für sein Skript mit Eingabefeldern erstellen kann.

Dazu muss ich aber noch mehr über das Skript wissen. Bin kein Programmierer! Aber wenn Du Interesse hast, mach ich mich an die Arbeit... würde auch ne Seite dafür zu Verfügung stellen, wenn alles gut klappt!


Also nochmal zum Grundverständnis.

Hab das Skript an TDSL6000 mit 572kb Upload angepasst. Habe heute mal nachgeschaut welche Ports mein Snom nutzt. Also beim ersten LOG wurde mir folgende Ports angezeigt.

5060
58975

- 5060 zum Verbindungsaufbau ist klar, ansonsten wurde nur noch der andre Port genutzt.
- Der befindet sich wohl innerhalb einer bestimmten Range, die für die RTP Übertragung genutzt wird?
- welche Daten muss ich für die Port-Range ändern? die RTP Einträge oder?
- ich möchte außerdem noch FTP/HTTP niedriger prioritisieren, da große HTTP/FTP downloads sich genauso negativ auswirken können, wie der Esel und co...

so das wars; unten steht das Skript in meiner jetzigen Form, aber ich denke es muss umgeändert werden. Nach Beantwortung meiner Fragen, sollte das Grundverständnis für die Editierung der Daten da sein und ich würde mich mal an ein Excel Skript ranmachen...


#!/bin/sh
### Löschen
tc qdisc del dev ppp0 root 2> /dev/null > /dev/null
iptables -t mangle --delete POSTROUTING -o ppp0 -j SIPSHAPER 2> /dev/null > /dev/null
iptables -t mangle --flush SIPSHAPER 2> /dev/null > /dev/null
iptables -t mangle --delete-chain SIPSHAPER 2> /dev/null > /dev/null
### Rootqueue einrichten
tc qdisc add dev ppp0 root handle 1: hfsc default 10
### Parentclass einrichten mit 489kbps
tc class add dev ppp0 parent 1: classid 1:1 hfsc sc rate 489kbit ul rate 489kbit
### Einzelne classes
## Class 1:10 mit Prio 2, 10kbps garantiert, maxdelay 30ms
tc class add dev ppp0 parent 1:1 classid 1:10 hfsc sc umax 1492b dmax 30ms rate 20kbit ul rate 489kbit
## Class 1:11 mit Prio 1, 100kbps garantiert, maxdelay 30ms
tc class add dev ppp0 parent 1:1 classid 1:11 hfsc sc umax 1492b dmax 30ms rate 180kbit ul rate 489kbit
## Class 1:12 mit Prio 7, 5kbps garantiert, maxdelay 150ms, max 100kbps
tc class add dev ppp0 parent 1:1 classid 1:12 hfsc sc umax 1492b dmax 150ms rate 10kbit ul rate 489kbit
## Class 1:13 mit Prio 3, 20kbps garantiert, maxdelay 40ms
tc class add dev ppp0 parent 1:1 classid 1:13 hfsc sc umax 1492b dmax 40ms rate 30kbit ul rate 489kbit
## Class 1:14 mit Prio 4, 50kbps garantiert, maxdelay 40ms
tc class add dev ppp0 parent 1:1 classid 1:14 hfsc sc umax 1492b dmax 40ms rate 70kbit ul rate 489kbit
## Class 1:19 mit Prio 5, 10kbps garantiert, maxdelay 100ms
tc class add dev ppp0 parent 1:1 classid 1:19 hfsc sc umax 1492b dmax 100ms rate 20kbit ul rate 489kbit
###############################
### iptablechain einrichten ###
###############################
### QOS-Chain für ppp0
#iptables -t mangle --new-chain SIPSHAPER
#iptables -t mangle --insert POSTROUTING -o ppp0 -j SIPSHAPER
######################
### tc Zuordnungen ###
######################
### Match für 1:10 auf Mark 10
tc filter add dev ppp0 parent 1: prio 2 protocol ip handle 10 fw flowid 1:10
### Match für 1:11 auf Mark 11
tc filter add dev ppp0 parent 1: prio 1 protocol ip handle 11 fw flowid 1:11
### Match für 1:12 auf Mark 12
tc filter add dev ppp0 parent 1: prio 7 protocol ip handle 12 fw flowid 1:12
### Match für 1:13 auf Mark 13
tc filter add dev ppp0 parent 1: prio 3 protocol ip handle 13 fw flowid 1:13
### Match für 1:14 auf Mark 14
tc filter add dev ppp0 parent 1: prio 4 protocol ip handle 14 fw flowid 1:14
### Match für 1:19 auf Mark 19
tc filter add dev ppp0 parent 1: prio 5 protocol ip handle 19 fw flowid 1:19
########################
### QoS-Markierungen ###
########################
## HFC-S-Markierungen ##
########################
## L7-Filter ##
###############
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto bittorrent -j MARK --set-mark 12
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto edonkey -j MARK --set-mark 12
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto dns -j MARK --set-mark 10
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto ssh -j MARK --set-mark 10
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto sip -j MARK --set-mark 10
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto http -j MARK --set-mark 14
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto ftp -j MARK --set-mark 14
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto nntp -j MARK --set-mark 14
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto smtp -j MARK --set-mark 14
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto aim -j MARK --set-mark 13
iptables -t mangle -A POSTROUTING -m layer7 --l7dir /etc/l7-protocols/protocols --l7proto irc -j MARK --set-mark 13
##############################
### Mark 10 ###
# Prio 2 mit 10kbps Garantie #
##############################
### TCP ACKs
iptables -t mangle -A POSTROUTING -p tcp --tcp-flags ACK ACK -m length --length :64 -j MARK --set-mark 10
### DNS
iptables -t mangle -A POSTROUTING -p udp --dport 53 -j MARK --set-mark 10
### SSH
iptables -t mangle -A POSTROUTING -p tcp --dport 22 -j MARK --set-mark 10
iptables -t mangle -A POSTROUTING -p tcp --dport 222 -j MARK --set-mark 10
### ICMP
iptables -t mangle -A POSTROUTING -p icmp -j MARK --set-mark 10
### SIP
iptables -t mangle -A POSTROUTING -p udp --dport 5060 -j MARK --set-mark 10
iptables -t mangle -A POSTROUTING -p udp --sport 5060 -j MARK --set-mark 10
###############################
### Mark 11 ###
# Prio 1 mit 100kbps Garantie #
###############################
### RTP Datenstrom
iptables -t mangle -A POSTROUTING -p udp --sport 6000:8000 -j MARK --set-mark 11
###################
### Mark 12 ###
# Prio 7 #
###################
### Bittorrent
iptables -t mangle -A POSTROUTING -p tcp --sport 6881:6889 -j MARK --set-mark 12
### eDonkey TCP
iptables -t mangle -A POSTROUTING -p tcp --sport 4662 -j MARK --set-mark 12
### eDonkey UDP
iptables -t mangle -A POSTROUTING -p udp --sport 4666 -j MARK --set-mark 12
### eDonkey Kademilia
iptables -t mangle -A POSTROUTING -p udp --sport 4670 -j MARK --set-mark 12
### Overnet TCP
iptables -t mangle -A POSTROUTING -p tcp --sport 12168 -j MARK --set-mark 12
### Overnet UDP
iptables -t mangle -A POSTROUTING -p udp --sport 12168 -j MARK --set-mark 12
##############################
### Mark 13 ###
# Prio 3 mit 20kbps Garantie #
##############################
### AIM
iptables -t mangle -A POSTROUTING -p tcp --dport 5190 -j MARK --set-mark 13
### IRC
iptables -t mangle -A POSTROUTING -p tcp --dport 6667 -j MARK --set-mark 13
### NTP
iptables -t mangle -A POSTROUTING -p udp --dport 123 -j MARK --set-mark 13
##############################
### Mark 14 ###
# Prio 4 mit 30kbps Garantie #
##############################
### HTTP/HTTPS
iptables -t mangle -A POSTROUTING -p tcp --dport 80 -j MARK --set-mark 14
iptables -t mangle -A POSTROUTING -p tcp --dport 443 -j MARK --set-mark 14
### FTP
iptables -t mangle -A POSTROUTING -p tcp --dport 21 -j MARK --set-mark 14
### UUCP
iptables -t mangle -A POSTROUTING -p tcp --dport 540 -j MARK --set-mark 14
### SMTP
iptables -t mangle -A POSTROUTING -p tcp --dport 25 -j MARK --set-mark 14
iptables -t mangle -A POSTROUTING -p tcp --sport 25 -j MARK --set-mark 14
### NNTP
iptables -t mangle -A POSTROUTING -p tcp --dport 119 -j MARK --set-mark 14
#####################
## TOS-Bits setzen ##
#####################
### RTP-Daten
#/sbin/iptables -t mangle -A PREROUTING -p udp -j TOS --dport 3000:3015 --set-tos 4
#/sbin/iptables -t mangle -A POSTROUTING -p udp -j TOS --sport 3000:3015 --set-tos 4
### SSH
#/sbin/iptables -t mangle -A PREROUTING -p udp -j TOS --sport 22 --set-tos 4
#/sbin/iptables -t mangle -A POSTROUTING -p udp -j TOS --dport 22 --set-tos 4
### DNS
#/sbin/iptables -t mangle -A PREROUTING -p udp -j TOS --sport 53 --set-tos 4
#/sbin/iptables -t mangle -A POSTROUTING -p udp -j TOS --dport 53 --set-tos 4
### HTTP
#/sbin/iptables -t mangle -A PREROUTING -p udp -j TOS --sport 80 --set-tos 8
#/sbin/iptables -t mangle -A POSTROUTING -p udp -j TOS --dport 80 --set-tos 8
### ICMP
#/sbin/iptables -t mangle -A PREROUTING -p icmp -j TOS --set-tos 4
#/sbin/iptables -t mangle -A POSTROUTING -p icmp -j TOS --set-tos 4




Viele Grüße Andreas
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.