problème de micro-coupure avec la Qos, tc et Voip

problème de micro-coupure avec la Qos, tc et Voip - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 19-06-2008 à 19:55:11    

Salut a tous
 
Je voulais savoir si il y a certains d'entre vous qui on déjà mi en place de la qos avec les commendes tc, j'ai fait un petit script perso et ça marche vraiment bien( jeu, ping, ssh etc...), et je marque donc les paquets avec iptables, mais mon problème c'est que quand j'appelle avec la Voip et que je met un fichier sur un serveur ftp j'ai des micro coupure toutes les 2 s, donc l'appelle est haché.
 
Pour tant j'ai mi les connexion ftp en dernier prio ( gâce a : iptables -t mangle -A PREROUTING -j MARK --set-mark 0x6) avec un débits max de 100kbits sur les 220Kbits que j'ai et la voip est premier prio avec un débits max de 220Kbits.
et pourtant avec ça j'ai des problème de micro coupure, quand j'ai que la voip qui émet j'ai pas de problème. Voilà la config :
 
qos.sh
 

Code :
  1. tc qdisc add dev $DEV root handle 1: htb default 15
  2. tc class add dev $DEV parent 1: classid 1:1 htb rate ${UPLINK}kbit ceil ${UPLINK}kbit
  3. tc class add dev $DEV parent 1:1 classid 1:10 htb rate 120kbit ceil 220kbit prio 0
  4. tc class add dev $DEV parent 1:1 classid 1:11 htb rate 80kbit ceil 150kbit prio 1
  5. tc class add dev $DEV parent 1:1 classid 1:12 htb rate 30kbit ceil 180kbit prio 2
  6. tc class add dev $DEV parent 1:1 classid 1:13 htb rate 30kbit ceil 100kbit prio 3
  7. tc class add dev $DEV parent 1:1 classid 1:14 htb rate 10kbit ceil 50kbit prio 4
  8. tc class add dev $DEV parent 1:1 classid 1:15 htb rate 10kbit ceil 100kbit prio 5
  9. tc qdisc add dev $DEV parent 1:12 handle 120: sfq perturb 10
  10. tc qdisc add dev $DEV parent 1:13 handle 130: sfq perturb 10
  11. tc qdisc add dev $DEV parent 1:14 handle 140: sfq perturb 10
  12. tc qdisc add dev $DEV parent 1:15 handle 150: sfq perturb 10
  13. tc filter add dev $DEV parent 1:0 protocol ip prio 1 handle 1 fw classid 1:10
  14. tc filter add dev $DEV parent 1:0 protocol ip prio 2 handle 2 fw classid 1:11
  15. tc filter add dev $DEV parent 1:0 protocol ip prio 3 handle 3 fw classid 1:12
  16. tc filter add dev $DEV parent 1:0 protocol ip prio 4 handle 4 fw classid 1:13
  17. tc filter add dev $DEV parent 1:0 protocol ip prio 5 handle 5 fw classid 1:14
  18. tc filter add dev $DEV parent 1:0 protocol ip prio 6 handle 6 fw classid 1:15


 
Iptables  

Code :
  1. #############  QOS #################
  2. #
  3. iptables -t mangle -A PREROUTING -m tos --tos Minimize-Delay -j MARK --set-mark 0x2
  4. iptables -t mangle -A PREROUTING -m tos --tos Minimize-Delay -j RETURN
  5. iptables -t mangle -A PREROUTING -m tos --tos Minimize-Cost -j MARK --set-mark 0x5
  6. iptables -t mangle -A PREROUTING -m tos --tos Minimize-Cost -j RETURN
  7. iptables -t mangle -A PREROUTING -m tos --tos Maximize-Throughput -j MARK --set-mark 0x6
  8. iptables -t mangle -A PREROUTING -m tos --tos Maximize-Throughput -j RETURN
  9. iptables -t mangle -I PREROUTING -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j MARK --set-mark 0x2
  10. iptables -t mangle -I PREROUTING -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j RETURN
  11. #  Ping
  12. iptables -t mangle -A FORWARD -p icmp -j MARK --set-mark 0x2
  13. iptables -t mangle -A FORWARD -p icmp -j RETURN
  14. iptables -t mangle -A OUTPUT -p icmp -j MARK --set-mark 0x2
  15. iptables -t mangle -A OUTPUT -p icmp -j RETURN
  16. # SSH
  17. iptables -t mangle -A FORWARD -p tcp --dport 22 -j MARK --set-mark 0x2
  18. iptables -t mangle -A FORWARD -p tcp --dport 22 -j RETURN
  19. #  SIP
  20. iptables -t mangle  -A FORWARD -s xx.xx.xx.xx -j MARK --set-mark 0x1
  21. iptables -t mangle  -A FORWARD -s xx.xx.xx.xx -j RETURN
  22. iptables -t mangle  -A FORWARD -d xx.xx.xx.xx -j MARK --set-mark 0x1
  23. iptables -t mangle  -A FORWARD -d xx.xx.xx.xx -j RETURN                                     
  24. # HTTP
  25. iptables -t mangle -A FORWARD -p tcp --dport 80 -j MARK --set-mark 0x4
  26. iptables -t mangle -A FORWARD -p tcp --dport 80 -j RETURN
  27. #  HTTPS
  28. iptables -t mangle -A FORWARD -p tcp --dport 443 -j MARK --set-mark 0x4
  29. iptables -t mangle -A FORWARD -p tcp --dport 443 -j RETURN
  30. # DNS
  31. iptables -t mangle -A FORWARD -p udp --dport 53 -j MARK --set-mark 0x4
  32. iptables -t mangle -A FORWARD -p udp --dport 53 -j RETURN
  33. #  OpenVPN
  34. iptables -t mangle -A OUTPUT -p udp --dport 4020 -j MARK --set-mark 0x3
  35. iptables -t mangle -A OUTPUT -p udp --dport 4020 -j RETURN
  36. iptables -t mangle -A OUTPUT -p udp --sport 4020 -j MARK --set-mark 0x3
  37. iptables -t mangle -A OUTPUT -p udp --sport 4020 -j RETURN
  38. # CSS
  39. iptables -t mangle -A FORWARD -p udp --dport 27000:27050 -j MARK --set-mark 0x2
  40. iptables -t mangle -A FORWARD -p udp --dport 27000:27050 -j RETURN
  41. # WoW
  42. # Jeu
  43. iptables -t mangle -A FORWARD -p tcp --dport 3724 -j MARK --set-mark 0x2
  44. iptables -t mangle -A FORWARD -p tcp --dport 3724 -j RETURN
  45. iptables -t mangle -A FORWARD -p tcp --dport 8085 -j MARK --set-mark 0x2
  46. iptables -t mangle -A FORWARD -p tcp --dport 8085 -j RETURN
  47. iptables -t mangle -A FORWARD -p udp --dport 8085 -j MARK --set-mark 0x2
  48. iptables -t mangle -A FORWARD -p udp --dport 8085 -j RETURN
  49. # Voix
  50. iptables -t mangle -A FORWARD -p udp --dport 3724 -j MARK --set-mark 0x2
  51. # Update
  52. #iptables -t mangle -A FORWARD -p tcp --dport 6112 -j MARK --set-mark 0x2
  53. #iptables -t mangle -A FORWARD -p tcp --dport 6881:6999 -j MARK --set-mark 0x2
  54. #iptables -t mangle -A FORWARD -p udp --dport 6112 -j MARK --set-mark 0x2
  55. #iptables -t mangle -A FORWARD -p udp --dport 6881:6999 -j MARK --set-mark 0x2
  56. #  Tous mettre en bas prio
  57. iptables -t mangle -A PREROUTING -j MARK --set-mark 0x6


 
Merci de me dire si j'ai loupé un truc. Merci beaucoup  :hello:

Reply

Marsh Posté le 19-06-2008 à 19:55:11   

Reply

Marsh Posté le 20-06-2008 à 10:03:12    

Parce que la voix c'est du RTP et que les ports sont dynamiques et donc matchent pas tes règles et passent donc en 0x6 ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed