[FUGSPBR] Re: [FUGSPBR] ipfw2 e limitação de banda.
Capriotti
capriotti em fugspbr.org
Seg Dez 16 11:03:14 BRST 2002
(hehehehe, o velho truque da documentação ? hehehe)
Pô ! Eu realemente me apliquei na documentação !
Tanto é que descobri que existe um
net.inet.ip.fw.dyn_udp_lifetime (conteúdo dessa variável é em segundos)
e isso é usado exclusivamenta para regras dinâmicas, portanto
obrigatoriamente utilizando o keep-state/check-state. Mas eu concordo, UDP
é stateless sim. Agora, como explicar isso existir E funcionar no ipfw (1 e
2, com o mesmo comportamento) eu não sei.
Eu realmente não havia atentado para o fato de que a sintaxe de um pipe
pode ter duplo sentido, ou seja, todos estarem compartilanhdo o mesmo pipe,
muito embora eu acho que não seja verdade pelo seguinte:
o comando ipfw pipe list (para ipfw2) ou ipfw pipe show (para ipfw1) mostra
realmente um pipe para cada conexão !
Vejamos:
00010: 40.000 Kbit/s 0 ms 50 sl. 1 queues (1 buckets) droptail
mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
0 udp 10.249.61.85/2863 200.174.147.10/27015 10 426 0 0 0
00020: 40.000 Kbit/s 0 ms 50 sl. 1 queues (1 buckets) droptail
mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
0
udp 200.174.147.10/27015 24.126.211.218/3680 25945 3699591 0 0 694
Ao qu eme parece os pipes estão lá, dinâmicos (eles REALMENTE desaparecem
depois de algum tempo), mas é estranho que tenha esses "soluços" de
conexão, *E* também, porque diabos ele diz que está fazendo a limitação a
40.000 Kbits/s ? Ou será que eu estou interpretando errado ?
Ainda em tempo: O jogo em questão é o Counter-Strike, e a performance de
rede tem que ser muito limpa.
At 10:05 PM 12/15/2002, you wrote:
>On Sun, 15 Dec 2002 20:45:22 -0300
>Capriotti <capriotti em cee.com> wrote:
>
> > Pois é, gente...
> >
> > Que fiasco essas regras de controle de velocidade, para mim...
> >
> > Por algum motivo as regras, do jeito que estão descritas aí embaixo, ficam
> > interrompendo a conexão, e a performance final é deplorável, para quem
> > depende de conexão estável e fluída (para jogo).
> >
> > >
> > > ${fwcmd} add check-state
> > >
> > > # create a 5.5Kbps limit for CS gammers
> > > ${fwcmd} add pipe 10 udp from any to me 27015 keep-state
> > > ${fwcmd} add pipe 20 udp from me 27015 to any keep-state
> > >
> > > ${fwcmd} pipe 10 config bw 5Kbytes/s
> > > ${fwcmd} pipe 20 config bw 5Kbytes/s
> > >
> > >O objetivo ;e criar uma regra dinêmica para cada pessoa que se conecta
> > >para que cada um só possa usar 5 Kbytes/s de banda, mas não sei até que
> > >ponto está realmente funcionando... Tenho uns resultados estranhos, com
> > >banda ABAIXO do especificado, dentre outros...
> > >
> > >Fiz algo de errado ou alguém sabe tem algum bug mesmo ?
>
>parefraseando Maxell Smart (agente 86) :
>"O velho truque da documentação do ipfw..."
>
>-----
>(tirado do man ipfw)
> The pipe and queue configuration commands are the following:
> pipe number config pipe-configuration
>-----
>note: "number" é o número *do pipe* e não *de pipes*
>
>
>Somente olhando as regras (sem ter realmente acompanhado as mensagens
>anteriores):
>
>voce criou regras para que *todas* as conexões na porta 27015 compartilhem
>5kbps !!!
>voce só tem 2 pipes: 1 de entrada e 1 de saida
>
>não sei que jogo é, mas qualquer jogo rodando "em um unico modem de
>4800bps" deve realmente ficar lento.
>
>
>*se* a ideia é ter *um pipe por conexão* as regras deveriam ser muito
>diferentes:
>
>1 - definir o numero maximo de conexões simultãneas
>2 - criar 1 pipe para cada conexão possivel
>3 - (aqui está o problema) identificar o IP de cada conexão e criar uma
>regra para ele.
>
>acho que para fazer isso, somente as regras do ipfw *não são suficientes*;
>provavelmente vai ser necessario um script que fique acrescentando e
>removendo regras.
>
>Mais uma nota: UDP, por definição, é 'stateless' ; as opções de
>'check-state', 'keep-state' etc. , com UDP, só servem para diminuir, muito
>pouco, o processamento do ipfw.
_______________________________________________________________
Sair da Lista: http://www2.fugspbr.org/mailman/listinfo/fugspbr
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/
Mais detalhes sobre a lista de discussão freebsd