[AsteriskBrasil] QOS para SIP

Bernardo Vieira bernardo.vieira em terra.com.br
Quarta Junho 28 10:48:41 BRT 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Rodrigo,
Da forma que o pessoal daqueles grupos fizeram você tem que alterar:

Para a packetização:
asterisk/fame.c
asterisk/rtp.c
asterisk/channels/chan_sip.c
asterisk/include/asterisk/frame.h
asterisk/include/asterisk/rtp.h

Para o Jitter Buffer:
asterisk/rtp.c
asterisk/include/asterisk/rtp.h
asterisk/channels/chan_sip.c

E você vai precisar dos arquivos, do link que eu te passei:

asterisk/scx_jitterbuf.h
asterisk/scx_jitterbuf.c

Mas pelo que eu andei olhando não é tão simples assim. No momento eu
estou tentando adaptar o patch de packetização do RTP para a versão
1.2.9.1, mas está dando um trabalho infernal, tanto que eu já estou
cogitando usar a versão do svn mesmo. Estou configurando em uma
plataforma testes aqui.


Rodrigo Santos de Souza wrote:
> Bernardo, muito obrigado pela atenção. Dá pre ver que tu entende do
> assunto. Eu estava justamente vendo como mecher no buffer de
> jitter. Eu já havia notado que isto está sendo implementado e terá
> parametros configuráveis no sip.conf mas ainda não está em nenhuma
> versão do Asterisk. Pelo que pude ver no patch que tu citou, é algo
> que está em desenvolvimento ainda e por isso não dá para saber nem
> para que versão do chan_sip ele é. Tu sabe se tem algo direto no
> código que possa ser feito para mecher no tamanho do buffer de
> jitter? Tu sabe onde fica isto?
>
> Obrigado
>
>
>
>
> ----Original Message Follows---- From: Bernardo Vieira
> <bernardo.vieira em terra.com.br> Reply-To:
> asteriskbrasil em listas.asteriskbrasil.org To:
> asteriskbrasil em listas.asteriskbrasil.org Subject: Re:
> [AsteriskBrasil] QOS para SIP Date: Mon, 26 Jun 2006 20:38:11 -0300
>
>
> Rodrigo, QoS é daquelas coisas bem chatas de se acertar e cada caso
> é um caso. Como está sua configuração? Você está com o * na borda
> ou tem um gateway depois dele? Você está tendo problemas na rede
> interna ou externa? Para a rede interna: 1) Seu switch respeita a
> marcação de pacotes? 2) Os softphones/ATAs/IPphones que você está
> usando marcam pacotes? 3) Qual codec você está usando? (sugiro usar
> gsm, a qualidade é boa, gasta pouca banda e pouco processamento,
> sem contar que grande parte das funções internas do * usam gsm
> então você reduz a quantidade de transcoding)
>
> Para a rede externa: 1) Seu gateway respeita a marcação dos
> pacotes? 2) O que você está usando para fazer o encaminhamento? 3)
> Não há nada que você possa fazer quanto aos pacotes que você recebe
>  na WAN. 4) Não há nenhuma garantia que os rotedores fora da sua
> rede respeitem a marcação dos pacotes. 5) Dificilmente você vai
> conseguir uma conexão que realmente te ofereça a banda contratada,
> por exemplo, uma conexão de 1 Mbps da net te garante uma banda de
> apenas 15~25% da banda contratada (dependendo do plano), o resto é
> compartilhado. 6) Normalmente o seu upstream é livre enquanto o
> downstream passa por firewalls e transparent proxies do seu
> provedor, o que quer dizer que a latência do seu canal de saída é
> menor que a latência do seu canal de entrada, e isso causa
> desconforto em quem está conversando, mais uma vez não há muito o
> que se possa fazer a respeito.
>
> Considerando tudo isso, seguem algumas recomendações sobre QoS para
> o asterisk:
>
> No sip.conf: Para a versão do svn (não sei se funciona na versão do
> último release, ainda não testei): tos_sip=cs3 tos_audio=ef
> tos_video=af41 Para versões mais antigas: tos=ef
>
> No seu switch/gateway: serviço: sip_control - ToS: cs3 (decimal:
> 24) - Prioridade (CoS):  3 serviço: sip_audio - ToS: ef (decimal:
> 46) - Prioridade (CoS): 5 serviço: sip_video - ToS: af41 (decimal:
> 34) - Prioridade (CoS): 4
>
> Referências:
> http://www.cisco.com/univercd//cc/td/doc/product/metro/me2400/12225ex/2400scg/swqos.htm
> 
> http://www.aarnet.edu.au/engineering/networkdesign/qos/precedence.html
>  http://lartc.org/howto/
> http://svn.digium.com/view/asterisk/team/oej/iptos/doc/README.tos?rev=8975&view=markup
>
>
> Algumas coisas que podem melhorar a qualidade de voz (não
> necessariamente QoS): Você pode alterar o tamanho dos pacotes RTP
> que o * manda, por padrão o frame que o * é de 20 ms, você pode
> enviar pacotes maiores em menor frequência e ter um ganho na
> qualidade, para isso utilize o patch descrito aqui:
> http://bugs.digium.com/print_bug_page.php?bug_id=5162
>
> Outra coisa que você pode fazer é usar o jitter buffer, que também
> não é nativo para o sip no *, esse patch:
> http://bugs.digium.com/view.php?id=3854 implementa o jitter buffer
> para o sip.
>
>
>
>
> Rodrigo Santos de Souza wrote:
>
>> Pessoal estou implemantando um sistema de QOS para rodar o meu
>> Asterisk junto com a rede da empresa. Fiz uma limitação de banda
>> para melhorar o audio na recepção mas embora tenha limitado minha
>>  banda de tcp em apenas 20% do total aida falha o audio do lado
>> do asterisk. Por tcpdump verifiquei que a grande diferença quando
>>  estou fazendo um download junto com a voz e quando não estou, é
>> a cadencia dos pacotes. Só com voz,  para cada pacote rtp de
>> saida tem um pacote rtp de entrada, já quado estou fazendo um
>> donload junto com a voz os pacotes não vem varios de saida
>> agrupados e depois os de entrada sem nenhuma cadencia. Ouvi falar
>> que pode ser problema de buffer de jitter. Alguem sabe como posso
>> resolver isso e qual a melhor forma para fazer um QOS de
>> qualidade para o asterisk?
>
>
>> _______________________________________________ LIsta de
>> discussões AsteriskBrasil.org
>> AsteriskBrasil em listas.asteriskbrasil.org
>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
>> _______________________________________________ Acesse o  wiki
>> AsteriskBrasil.org: http://www.asteriskbrasil.org
>
>
>
>
> _______________________________________________ LIsta de discussões
> AsteriskBrasil.org AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
> _______________________________________________ Acesse o  wiki
> AsteriskBrasil.org: http://www.asteriskbrasil.org
>
>
> _______________________________________________ LIsta de discussões
> AsteriskBrasil.org AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
> _______________________________________________ Acesse o  wiki
> AsteriskBrasil.org: http://www.asteriskbrasil.org
>
>
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFEooi42QVs8jsa1mQRAknAAJ0Xxu6+RvMfDfJecURvSEsrICqCRwCfdn58
qVyrBDKMORhhf3vUqfIrJj8=
=bxX7
-----END PGP SIGNATURE-----



Mais detalhes sobre a lista de discussão AsteriskBrasil