FPI - Fórum para Provedores de Internet
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
FPI - Fórum para Provedores de Internet


Você não está conectado. Conecte-se ou registre-se

Afinal, como e onde devo alterar o MSS .

2 participantes

Ir para baixo  Mensagem [Página 1 de 1]

silviola

silviola
MODERADOR
MODERADOR

Enquanto o mesmo MK era responsável por fazer a discagem dos Modens ADSL e também o controle de banda nos clientes, tudo andava bem.

Bastava inserir uma linha no mangle:
Código:
add action=change-mss chain=forward comment="======== Nivela MSS em 1452 ( para sites que requerem MSS mais baixo ) =========" disabled=no new-mss=1452 passthrough=no  protocol=tcp tcp-flags=syn
Ou fazer uma para saída / uma para entrada.

Bom, com o aumento da rede, precisamos lançar mão de uma equipamento ( no caso uma RB ) só para o Balance. E com isso, surgiu uma dúvida. Onde trocar o MSS:

Comecei fazendo a troca do MSS no Balance. Durante muito tempo mantive assim, até que um dia, resolvi, por ter precisado de uma modificação, colocar a troca do MSS no Servidor.
Senti uma melhora instantanea na navegação... e durante muito tempo, assim deixei.

Como sou o tipo de pessoa que gosta de correr atrás dos "porquês", comecei a conversar com muita gente sobre isso.
Alguns me sugeriram que trocasse o balance em todas as saídas e entradas do Balance e também do servidor.
Enquanto outros me sugeriram a deixar a troca do MSS apenas no Balance.

Ontem resolvi configurar a troca do MSS no Balance e hoje já tive reclamação de lentidão para abertura de página, segundo relatos: "Ontem abria na hora, hoje demora pra mostrar".

Eu tava tão convicto da explicação e justificativas para deixar só no balance, que agora, confesso, caiu meu saco

Mas afinal... onde trocar o MSS, e por que ?

Marco


Especialista
Especialista

Por causa do PPPoE sobre ADSL (overhead de 8 bytes) e do NAT feito no balance (40 bytes) e do NAT feitos nos clientes (40 bytes). De 1500 bytes (valor padrão de MTU para Ethernet) os seus clientes não podem enviar um pacote maior do que 1412 bytes. O MSS é o valor do MTU menos os cabeçalhos IP.

silviola

silviola
MODERADOR
MODERADOR

Tão baixo assim ? o.O

E onde fazer a troca ?

Lembrando que aqui, assim como em muitos locais, há NAT em:

1. balance
2. servidor
*3. antena

* não deixo os clientes em bridge.

40 bytes por NAT ? Não sabia disso não...

Marco


Especialista
Especialista

Sim, gambiarra NAT coloca um novo cabeçalho a cada roteamento. Note que eu nem considerei que seu cliente esteja usando um roteador próprio: menos 40 bytes…
Caso esteja usando PPPoE nos clientes é possível definir o MTU deles em 1400 bytes (resolveu aqui). Assim, mesmo que haja outro roteador este estará "ciente" de que precisa reduzir o MTU ainda mais para que o pacote passe na rede (MTU do PPPoE - 40 bytes).

silviola

silviola
MODERADOR
MODERADOR

Eu não uso PPPoE como autenticação para clientes.

Só que agora você introduziu MTU ao invéz de MSS... e ainda, onde trocar MSS ( ou MTU ) ?

E onde estes parâmetros errados refletem ?

Lembrando que meu cenário anterior com MTU em 1492 nas interfaces que discam os ADSL's e 1500 no resto todo, trocando MSS apenas no servidor, estava indo bem. E já haviam 3 ou 4 NATs até os clientes.

Marco


Especialista
Especialista

No seu setup antigo você tinha um NAT a menos e uma regra de redução de MSS no MANGLE alterando pacotes em FORWARD. Verifique.

Uma solução simples é definir o MTU no servidor DHCP.

silviola

silviola
MODERADOR
MODERADOR

Não uso DHCP... é IP fixo nas interfaces WAN dos clientes.

Mas estou perplexo com isso... :roll: 

Existe um problema sério em descer demais o MTU, que é a fragmentação excessiva. Não ?!

Ainda... descendo o MTU... preciso descer o MSS...  não consigo entender isso a fundo... mas gostaria muito.

Mas até agora vc não respondeu... onde desco o MSS ? Balance / Servidor ?

Onde Desco o MTU, Balance / Servidor / Radio Cliente ?

Se eu descer o Balance... o servidor elevando a 1500 novamente ( ou descer no servidor e o radio cliente novamente utilizar 1500 ) ? Isso se propaga ? Se muda de um lado, vai pra outro ?

Tenho um servidor web dentro da intranet, descer o MTU/MSS  dele também ?

São muitas dúvidas, mas que resposta, é necessário entendimento.

Marco


Especialista
Especialista

Só é preciso fragmentar pacotes caso eles sejam grandes demais para a rede.
Se o valor estiver correto ou menor não haverá fragmentação. O problema do MTU baixo é a carga útil reduzida. Mais pacotes são necessários para transferir o mesmo conteúdo.
Via de regra, os roteadores deveriam detectar a fragmentação e reduzir o MTU automaticamente usando a técnica "Path MTU Discovery". Mas o mundo não é um laboratório, onde NAT-over-NAT-over-XingLing seria uma situação esdrúxula.

Marco


Especialista
Especialista

silviola escreveu:
Ainda... descendo o MTU... preciso descer o MSS...  não consigo entender isso a fundo... mas gostaria muito.

Mas até agora vc não respondeu... onde desco o MSS ? Balance / Servidor ?

Onde Desco o MTU, Balance / Servidor / Radio Cliente ?

Se eu descer o Balance... o servidor elevando a 1500 novamente ( ou descer no servidor e o radio cliente novamente utilizar 1500 ) ? Isso se propaga ? Se muda de um lado, vai pra outro ?

Tenho um servidor web dentro da intranet, descer o MTU/MSS  dele também ?

São muitas dúvidas, mas que resposta, é necessário entendimento.

Serei simplório.
Uma máquina só é acessível na rede mundial com um endereço público e válido. Isso exclui as redes privadas.
A verdade é que não tem IPs para todos. Então criou-se uma gambiarra para tentar resolver isso.
Imagine aquelas bonequinhas russas. Uma cabe dentro da outra perfeitamente. A boneca de fora é o seu IP válido. O tamanho dela é de 1492 bytes. A boneca menor precisa ter 40 bytes menos para poder caber dentro da maior, é o seu IP privado. Isso é o NAPT, conhecido como NAT.
A questão é que cada vez que se faz um roteamento sem um IP válido é necessário uma boneca menor para que possa sair dentro da boneca maior. E cada uma deve ser 40 bytes menor do que a outra para poder caber dentro de uma boneca 40 bytes menor.

silviola

silviola
MODERADOR
MODERADOR

Blz, e no meu cenário então. Qual sua recomendação ?

1. Balance 3x ADSL's:
a. MTU discadores ?
b. Troca MSS ? Se sim, quais interfaces e direções ?
c. MTU da interface que conversa com o Servidor qual seria ?

2. Servidor recebendo do Balance em uma interface / Dedicado e webserver local juntos por outra ( switch antes )
a. MTU das interfaces acima e também da interface que sai os clientes ?
b. Troca MSS de alguma ? em que direção ?

3. Radio do cliente com NAT
a. Troco MTU ?
b. Neste caso não tem como trocar MSS ?

4. Bonus: Qual a diferença entre trocar MTU e mudar só o MSS ?

Marco


Especialista
Especialista

1. ADSL: MTU 1492, MSS 1452 (MTU - cabeçalho IP = MSS)
2. MTU 1452. O NAPT adiciona mais 40 bytes, remova 40 bytes do MSS para compensar e manter os 1492 bytes originais do nível 1.
3. MTU 1412. Novamente o NAPT adiciona 40 bytes. Remova 40 bytes para manter os 1452 do nível 2 e os 1492 do nível 1.
4. Faça uma promessa a São Longuinho. Se a rede funcionar dê três pulinhos.

É provável que o balance já faça a fragmentação do MSS. A questão é como ele faz isso e os problemas de decorrem na duplicação desse processo no nível abaixo.
NAT-sobre-NAT não é algo recomendado. Clamp de MSS sobre outro também não.
Informar ao cliente o tamanho máximo do pacote via MTU evita esses problemas e também a sobrecarga nos roteadores.

silviola

silviola
MODERADOR
MODERADOR

Ainda não estendi pois não ficou bem especificado... por partes então:

Balance:
Eth1 (pppoe1) => MTU 1492 / Change MSS para 1452 ( direção out interface e in interface separadamente )
Eth2 (pppoe2) => ídem acima
Eth3 (pppoe3) => idem acima
Eth4 ( saida para servidor ) => MTU quanto ? Change MSS pra algum lado ?
Eth5 desativada

Servidor:
Eth1 ( entrada do balance ) => MTU quanto ? Change MSS pra algum lado ?
Eth2 ( entrada dedicado / webserver local ) => MTU quanto ? Change MSS pra algum lado ?
Eth3 ( bridge1 ) - com filtros de camada2
Eth4 ( bridge1 ) - com filtros de camada2
Eht5 (bridge1) - com filtros de camada2
Bridge1 ( saída para clientes ) => MTU quanto ? Change MSS pra algum lado ?

Radios Clientes ( UBNT ):
MTU quanto ? Change MSS pra algum lado ?

Marco


Especialista
Especialista

silviola escreveu:Radios Clientes ( UBNT ):
MTU quanto ? Change MSS pra algum lado ?

MSS é um valor que depende do MTU e do NAT. É o máximo dado útil de um pacote.

Radios Clientes (UBNT):
MTU 1412 bytes na interface onde o cliente conecta seus equipamentos.

Se tiver que fazer clamp de MSS que seja uma vez só.

silviola

silviola
MODERADOR
MODERADOR

Ah Marcoooo Tu suga a tropa tchê kkkkkk

1. Troco MSS uma vez só então, ok; Onde, no balance ou no servidor ?

2. 1412 nos radios, ok. Nas demais interfaces, balance/servidor, deixo 1500 ?

Marco


Especialista
Especialista

MTU de 1400 bytes (padrão do Windows 2000) nas placas dos rádios onde o cliente se conecta já resolve seu problema.

silviola

silviola
MODERADOR
MODERADOR

Se eu trocar por exemplo na interface dos clientes no servidor, ao chegar nos rádios clientes que estão com 1500 adianta também ?

Se eu trocar nos clientes, seria na interface LAN dos radios ?

silviola

silviola
MODERADOR
MODERADOR

Achei uma postagem do Marcelus Trojahn  ( http://marcelustrojahn.blogspot.com.br/ ), onde ele diz o seguinte:

MTU depende muito de como a rede é estruturada...

Se o seu Mikrotik funciona apenas como roteador (ou seja, os clientes atras dele recebem IP valido) basta fazer um acerto de MSS no FORWARD dele... Ja se ele funciona fazendo NAT, quem faz a conexao pra fora é ele proprio, portanto a MTU tem que ser ajustada na interface de saida dele para Internet.


O mais comum é o seguinte, Mikrotik com interfaces em 1500, clientes com 1480... Isto funciona bem se o PPPOE estiver direto na maquina do cliente... Mas se o cliente possuir um roteador, isto provavelmente vai dar problema ja que a maquina do cliente (atras do roteador) nao sabe a MTU do "meio do caminho" e vai mandar 1500, de acordo com a sua placa de rede...

A forma mais simples de resolver isto é com a seguinte regra:
/ip firewall mangle add chain=postrouting action=change-mss new-mss=1440 tcp-flags=syn protocol=tcp tcp-mss=1441-1500

O que esta regra faz é simples... Todos os pacotes que passarem por este Mikrotik e possuirem MSS entre 1441-1500 terao seu MSS alterado para 1440... (MSS é sempre 40 bytes menos que a MTU que normalmente eh 1480 no Mikrotik). Os pacotes que tiverem MSS menor que 1440 nao sao alterados ja que, se estao menores, vao funcionar de qualquer forma...

Esta regra funciona apenas se o Mikrotik funciona como roteador... Se funcionar como NAT, basta mudar a MTU da interface dele para internet para 1480 que deve resolver...

A proposito, nao baixem muito a MTU... 1300 ou menos por exemplo... Quanto menor a MTU, maior sera a fragmentacao de pacotes e isto, no final das contas, diminui a banda total do cliente ja que se aumenta a quantidade de pacotes que tem que ser enviados e se perde muita banda apenas com cabecalhos.


Tá correto o raciocínio dele ?

silviola

silviola
MODERADOR
MODERADOR

Pingando o gateway da minha operadora, descobri que existe uma lacuna entre 1465 e 1472 que pingando com -f -l não respondia.

1464 respondia e 1473 respondia com a mensagem de necessidade de fragmentação.

Mudei o MTU da interface do servidor que se comunica com o Balance para 1492 e consegui fazer 1465 em diante responder com fragmentação necessária.

Ainda não estou entendendo ok ?

Pergunta... preciso mudar a MTU da interface do Balance que se comunica com o servidor para 1492 tb ?

Marco


Especialista
Especialista

silviola escreveu:Achei uma postagem do Marcelus Trojahn  ( http://marcelustrojahn.blogspot.com.br/ ), onde ele diz o seguinte:

MTU depende muito de como a rede é estruturada...

Tá correto o raciocínio dele ?

Sim. NAT-over-NAT é problema.
Caso você coloque algo entre 1400–1412 bytes no MTU das interfaces dos clientes (último NAT) o pacote será sempre menor do que o máximo aceito pelo caminho e não haverá processamento de PMTU nem quebra de pacote pela regra MSS. Os pacotes vão passar direto, sem precisar de processamento.

Conteúdo patrocinado



Ir para o topo  Mensagem [Página 1 de 1]

Permissões neste sub-fórum
Não podes responder a tópicos