Posté le: Ven Juin 06, 2008 10:32 am Sujet du message: QoS VoIP sur routeurs Cisco
J'ai installé un serveur a Asterisk 1.4.18.1. sur un réseau avec 2 routeurs Cisco 1800 Series simulant 3 réseaux IP. Le premier relie les 2 routeurs, et sur les 2 autres il y a le serveur, des hardphones et des softphones. Les appels passent très bien.
Je veux maintenant charger/stresser le réseau pour dégrader/rendre impossible les appels VoIP, et en déduire la valeur d'une QoS à appliquer sur le flux SIP pour que la voix passe en toutes conditions. C'est ici que j'ai un problème.
Pour stresser le réseau plus facilement j'applique un "rate limit" (car bandwidth n'a pas fonctionné sur les interfaces, et speed limit ne peut pas limiter à moins de 10Mb/s) pour réduire la bande passante:
rate-limit output 92000 1500 2000 conform-action transmit exceed-action drop // environ 1 à 2% de 100Mo
Le signal voix est maintenant dégradé si on a des des pings continus + un gros flux FTP, j'applique alors la QoS ainsi :
conf t
class-map match-any voip
match protocol sip
conf t
policy-map qos_voip
class voip
priority percent 40
set dscp ef
class class-default
fair-queue
conf t
interface F0
service-policy output qos_voip // on applique la QoS sur une interface, et on fait de même pour les 3 autres interfaces
Lorsqu'on stresse à nouveau le réseau la voix est toujours perturbée, comme si la règle de QoS n'était pas appliquée.
Comment pourrait-on faire pour appliquer cette QoS (et assurer une qualité de voix en toutes conditions) ?
Posté le: Ven Juin 06, 2008 11:37 am Sujet du message:
En effet merci beaucoup pour cet article il est vraiment très bien, je vais le lire plus profondément dès que possible.
Il semble qu'il se base sur les access-lists pour matcher le protocole UDP (à ce que j'ai compris SIP ne passe qu'à l'établissement de l'appel, puis la voix est transmise par le protocole UDP).
J'avais également essayé de matcher le protocole UDP (sans plus de résultat) ainsi :
conf t
access-list 105 permit udp any any eq 5060
access-list 105 permit udp any any range 10000 50000
class-map match-any voip
match access-group 105
Je pense que je ne "match" pas ce qu'il me faut (la voix).
Inscrit le: 28 Juin 2007 Messages: 97 Localisation: Londres
Posté le: Ven Juin 06, 2008 3:54 pm Sujet du message:
Salut Vince
Alors il y a plusieurs chose que tu dois prendre en compte:
- le RTP payload est le traffic UDP des ports 16384 32767
- Par default la bande passante Max que l on peut reserver sur une interface est de 75%
Par default lorsque tu reserve de la bande passante sur une interface, la vitesse physique va etre utiliser. Donc si tu as une interface 100Mb/s et tu configure prio percent 40 cela va etre
75% de 100Mb = 75Mb
40% de 75Mb = 30Mb
Afin de changer ta valeur de base, tu dois changer la vitesse physique de ton interface
interface fa0/0
bandwidth 1000
Maintenant le router pense que tu as une interface de 1Mb, ms si ce n est pas vrai, et que ton traffic n est pas bloque a 1Mb
Maintenant ta QoS devient
75% de 1Mb = 750Kb
40% de 750Kb = 300Kb
Si tu veux que 100% de ta bande passante puisse etre reserve tu dois config
int fa0/0
max-reserved-bandwidth 100
Alors ds ton exemple ton rate-limit est de 92Kb/s ms ton QoS scheduler n a aucune idee que la bande passante est limite. Alors il ne pourra pas reserve 40% de 92kbits ms il pensera avoir 40Mb/s.
Alors ton output queue va etre sature et va dropper des packets.
En passant, je ne sais pas quel codec tu utilise ms 92Kb/s c est pas bcoup...
donc ce que tu peux faire c est
access-list 100 permit udp any any range 16384 32767
class-map match-all voip
match access-group 100
policy-map TEST
class voip
priority percent 40
int fa0/0
bandwidth 1000
max-reserved-bandwidth 100
rate-limit output 1000000 50000 50000 conform-action transmit exceed-action drop
service-policy output TEST
Essaye de voir si ca le fait. Tu devras ptre jouer avec ton tx-ring limit aussi vu que n utilise pas la vrai vitesse de ton interface
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum