o tamanho do pacote afeta o atraso final a final?

0

Suponha que a máquina A queira enviar dados para a máquina B. Existem muitos roteadores no meio, digamos 100.

A quantidade de dados que precisa ser enviada é de 1000000 bytes. Minha pergunta é se dividir os dados em tamanho de pacote, por exemplo, pacote de 1000 bytes, diminuirá o atraso de ponta a ponta em vez de enviar todos os dados de uma só vez?

Agradeço qualquer informação sobre esta dúvida que tenho.

Obrigado!

    
por user734861 24.04.2017 / 09:01

2 respostas

0

Você pode estar perguntando se é aconselhável usar quadros Jumbo Ethernet ( link da Wikipedia ), definidos como pacotes com mais de 1500 bytes de carga útil. Quadros jumbo geralmente carregam cargas de 9000 bytes.

As medições mostraram que a latência é melhorada por pacotes maiores para desempenho TCP de ponta a ponta. No entanto, eles podem ter um impacto negativo ao passar por links de baixa largura de banda (o que hoje em dia é menos provável).

Você pode encontrar mais informações no link da Wikipedia acima e Seção de referências.

Minha opinião: ao jogar com tamanhos de MTU, Eu nunca consegui melhorar muito em grandes transferências ao configurar o tamanho da MTU para mais do que o padrão (1500). No entanto, sem fazer medições precisas, acredito que usar tamanho de pacote muito pequeno é mais lento. Então eu não acredito que você deveria mudar o MTU do padrão.

Se eu entendi corretamente sua questão de enviar tudo ou em partes, Eu aconselharia a enviar cargas que preencham completamente um Pacote Ethernet. Lembre-se que os dados que você está enviando são a carga que será então embrulhado com os cabeçalhos de protocolo, que são maiores para o IPv6 do que o IPv4 ( veja isto ). O envio de grandes blocos de dados fará isso automaticamente por você como o sistema operacional irá cortá-lo para máximo reempacotamento por tamanho de MTU. Então, envie grandes pedaços, mas não haverá ganhos de melhoria para enviando gigantescos.

    
por 24.04.2017 / 12:44
0

em suma: sim tamanho dos pacotes afetam a velocidade efetiva de transferência quanto maiores os pacotes, menor a quantidade de pacotes necessários e, portanto, dependendo dos protocolos usados, etc., a menor sobrecarga geral é necessária

Os quadros jumbo podem ser usados em alguns casos (nem todos os suportes de mídia / hardware) para reduzir ainda mais essa sobrecarga.

No entanto, existem outros fatores que podem ter um efeito ainda maior na velocidade de transferência. se houver 100 saltos / dispositivos entre você recebe outros problemas como roteamento e comutação de pacotes que se tornam um grande fardo na velocidade de transferência. Nesse ponto, não apenas quadros jumbo podem não ser permitidos, mas é duvidoso que você será capaz de usar os pacotes completos de 1500 bytes e apenas o processamento se torna tão proibitivo que a MTU não importa mais.

para bytes de 1000000, o MTU nem importa tanto assim, porque tem apenas 1mb e isso levará cerca de 1 segundo para passar. para 1Tb em uma base regular, então você olharia para otimizar. mesmo se você "pré segmentar" o arquivo em múltiplos, ele não o fará mais rápido. mas na verdade pode torná-lo mais lento, porque mesmo se você dividir em 1 arquivos de pacote, sua interface pode considerar que o pacote pode ser dividido ainda mais. a conexão é calculada pelo MTU "menos disponível", o que significa que o menor "gap" (MTU de um determinado link) no caminho que o pacote tomará é o tamanho com o qual a conexão será negociada. isto é, se não for fragmentado ainda por causa de sobrecarga "invisível" por outras coisas, como conexões ppp, redes mpls, criptografia e túneis, etc ...

    
por 25.04.2017 / 09:23

Tags