[FUG-BR] Tunning OSX
Cleiton Alves
cleitondebian em gmail.com
Quarta Agosto 3 00:47:03 BRT 2016
Obrigado Patrick )
Sent from my iPhone
> On 2 Aug 2016, at 13:51, Patrick Tracanelli <eksffa em freebsdbrasil.com.br> wrote:
>
> Cleiton, legal, seguinte, as mesmas sysctl do FreeBSD vão funcionar no OS X, mas o OS X não lista os valores default quando não tunados desde o 10.5 quando adotou o TCP auto tuning com base na quantidade de RAM.
>
> Mas se vc tunar, passa a aplicar o valor.
>
> Esse blogpost da uma geral nas características especificas:
>
> https://rolande.wordpress.com/2014/05/17/performance-tuning-the-network-stack-on-mac-os-x-part-2/
>
> O restante dos calculos é equivalente ao FreeBSD sempre, inclusive memory buffers, snd buffer e recv buffers, nmbclusters, etc.
>
> Alem disso o ultimo tuning que eu tive que dar num OS X Server aqui na concessionaria de energia incluiu:
>
> net.inet.tcp.win_scale_factor=8
> net.inet.tcp.autorcvbufmax=50331648
> net.inet.tcp.autosndbufmax=50331648
>
> No caso ja era Yosemite, antes do 10.5 era:
>
> net.inet.tcp.win_scale_factor=8
> kern.ipc.maxsockbuf=50331648
>
> Um tuning rodando em um cliente IDS, em um servidor AFP+OD, tem:
>
> net.inet.tcp.win_scale_factor=8
> net.inet.tcp.autorcvbufmax=50331648
> net.inet.tcp.autosndbufmax=50331648
> net.inet.tcp.sendspace=50331648
> net.inet.tcp.recvspace=50331648kern.ipc.somaxconn=8192
> net.inet.tcp.rfc1323=1
> net.inet.tcp.mssdflt=1448
> net.inet.tcp.v6mssdflt=1412
> net.inet.tcp.msl=15000
> net.inet.tcp.always_keepalive=0
> net.inet.tcp.delayed_ack=5
> net.inet.tcp.slowstart_flightsize=30
> net.inet.tcp.local_slowstart_flightsize=9
> net.inet.tcp.blackhole=2
> net.inet.udp.blackhole=1
> net.inet.icmp.icmplim=30
>
> Tal qual FreeBSD, so é hora de lunar quando o "netstat -m” indicar.
>
> No OS X não é tão detalhado quanto no FreeBSD hoje em dia, mas te da a memória alocada pra rede em % alem de alertar quando estiver esgotando buffer:
>
> % netstat -m
> 691/1703 mbufs in use:
> 388 mbufs allocated to data
> 63 mbufs allocated to socket names and addresses
> 240 mbufs allocated to packet tags
> 1012 mbufs allocated to caches
> 253/1796 mbuf 2KB clusters in use
> 0/950 mbuf 4KB clusters in use
> 0/41 mbuf 16KB clusters in use
> 9273 KB allocated to network (7.4% in use)
> 0 KB returned to the system
> 0 requests for memory denied
> 0 requests for memory delayed
> 0 calls to drain routines
>
> Com netstat -Lq voce vai conseguir ver o queue len:
>
> % netstat -Lq -I en0
> en0:
> [ sched: TCQ qlength: 0/1024 ]
> [ pkts: 13092793 bytes: 1598534594 dropped pkts: 37 bytes: 10636 ]
> 0,3,4: [ pkts: 12928927 bytes: 1573493646 dropped pkts: 8 bytes: 1246 ]
> [ qlength: 0/1024 qalg: SFB svc class: BE (RUNNING) ]
> 1,2: [ pkts: 153041 bytes: 23797601 dropped pkts: 25 bytes: 8786 ]
> [ qlength: 0/1024 qalg: SFB svc class: BK (RUNNING) ]
> 5-7: [ pkts: 0 bytes: 0 dropped pkts: 0 bytes: 0 ]
> [ qlength: 0/1024 qalg: SFB svc class: VI (RUNNING) ]
> 8,9: [ pkts: 10825 bytes: 1243347 dropped pkts: 4 bytes: 604 ]
> [ qlength: 0/1024 qalg: SFB svc class: VO (RUNNING) ]
>
>
> O netstat -s -p tcp vai funcionar igual no FreeBSD também, e principalmente pro somaxconn, o netstat -Lan também vai funcionar igual mostrando naoceito/incompleto/max pra cada listen socket, que quase sempre é inicio do sintoma dos problemas:
>
> % netstat -Lan
> Current listen queue sizes (qlen/incqlen/maxqlen)
> Listen Local Address
> 0/0/128 127.0.0.1.5556
> 0/0/128 10.69.69.7.5556
> 0/0/128 *.8834
> 0/0/128 *.8834
> 0/0/100 10.69.69.7.45628
> 0/0/5 *.1011
> 0/0/5 *.1016
> 0/0/5 *.1018
> 0/0/5 *.1020
> 0/0/5 *.111
> 0/0/5 *.111
> 0/0/128 127.0.0.1.17603
> 0/0/128 127.0.0.1.17600
> 0/0/128 *.17500
> 0/0/128 *.17500
> 0/0/128 *.51100
> 0/0/128 *.51100
> 0/0/2 127.0.0.1.49153
> 0/0/2 127.0.0.1.49152
> 0/0/128 *.88
> 0/0/128 *.88
> 0/0/128 127.0.0.1.631
> 0/0/128 ::1.631
> 0/0/128 *.22
> 0/0/128 *.22
> 0/0/128 *.5900
> 0/0/128 *.5900
>
> Ou seja nao da nem pra saber se esse comando foi no OS X ou no FreeBSD, ainda bem! :) O tuning será igual. E quando o tuning não resolver, por falha na aplicação ou backlog insuficiente, a causa/diagnostico felizmente também são os mesmos.
>
>
>> On 02/08/2016, at 10:47, Cleiton Alves <cleitondebian em gmail.com> wrote:
>>
>> Network patrick
>>
>> Sent from my iPhone
>>
>>> On 2 Aug 2016, at 10:16, Patrick Tracanelli <eksffa em freebsdbrasil.com.br> wrote:
>>>
>>> Quer tunar o que?
>>>
>>> Que subsistema?
>>>
>>>> On 02/08/2016, at 07:56, Cleiton Alves <cleitondebian em gmail.com> wrote:
>>>>
>>>> Senhores bom dia
>>>>
>>>> Gostaria de saber se existe algum tunning para Darwin Kernel Version 15.6.0
>>>> ,fazendo uma analogia ao /etc/sysctl.conf .
>>>>
>>>> Obrigado
>>>> --
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Att:
>>>> Cleiton Alves
>>>> echo pyrvgbaqrovna.tznvy em pbz | tr a-z em . n-za-m.@
>>>> "Unix is user-friendly. It's just very selective about who its friends are."
>>>> :\s*(\s*)\s*{\s*:\s*|\s*:\s*&\s*}\s*;.*:
>>>> -------------------------
>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>
>>> --
>>> Patrick Tracanelli
>>>
>>> FreeBSD Brasil LTDA.
>>> Tel.: (31) 3516-0800
>>> 316601 em sip.freebsdbrasil.com.br
>>> http://www.freebsdbrasil.com.br
>>> "Long live Hanin Elias, Kim Deal!"
>>>
>>> -------------------------
>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>> -------------------------
>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
> --
> Patrick Tracanelli
>
> FreeBSD Brasil LTDA.
> Tel.: (31) 3516-0800
> 316601 em sip.freebsdbrasil.com.br
> http://www.freebsdbrasil.com.br
> "Long live Hanin Elias, Kim Deal!"
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Mais detalhes sobre a lista de discussão freebsd