MTU é 1500, porque o comprimento do primeiro fragmento é 1496 no IPv6?
4
ping6 ipv6Address -s 1500
Este comando resultará em um fragmento. Observado por wireshark, o comprimento do primeiro pacote de fragmentos é 1496 (da camada 3). Como o MTU é 1500, estou confuso com esse comprimento de 1496. De onde isso vem?
Não. Se eu usar -s 1452, não haverá fragmento e o comprimento total é de 1500.
deepsky
1
Eu não sei IP6, mas com IP4 eu tenho que ajustar meu TCP MTUs de parâmetro a 1480 porque meu comutador, é como um 15 'caminhão não ajustará debaixo da ponte * / clunk * mas um 14' 11 "um voa direito por. Ele ainda vai 99mph dessa maneira top 1% em testes de velocidade para a minha
conexão.Então
Respostas:
6
Isto é apenas para minha própria referência sobre IPv6 MTU. Eu precisava de alguma pergunta para adicionar - e eu escolho você.
O primeiro é o nosso pacote Ethernet, que normalmente ignoramos:
E, no meu caso, estou usando o tunelamento 6 em 4 da Hurricane Electric , já que meu ISP não oferece conectividade IPv6 nativa. Isso significa que meu tráfego IPv6 é envolto em um pacote IPv4:
Em seguida é a confusão sobre o tamanho da carga útil , usado ao pingar alguém com o sinalizador não fragmentado . O ICMP opera sobre IP e adiciona sua própria sobrecarga de cabeçalho:
Você veria isso se tiver uma marcação de VLAN em uma interface que não a suporte nativamente. As tags de VLAN 802.1Q recebem um adicional de 4 bytes. Se sua NIC oferecer suporte nativamente, ela suportará quadros Ethernet de 1522 bytes (em vez de mais antigos de 1518 bytes) para que você ainda possa ter uma MTU de 1500 bytes. Se a sua NIC não suportar nativamente, você poderá apoiá-la no software, mas terá que reduzir a MTU para 1496, de modo que a coisa toda caiba nos velhos quadros de 1518 bytes que a NIC suporta.
Não há VLAN configurada na minha rede. E o quadro Ethernet não contém informações 802.1q. São 14Bytes observados do wireshark.
deepsky
4
Na verdade, acho que é porque qualquer novo segmento criado deve ter um limite de 8 bytes e ainda ser menor que o MTU. 1500 é 187 div 8 com um resto de 4. Assim, 1500-4 = 1496 teria que ser o novo limite. Há mais detalhes sobre a fragmentação em erg.abdn.ac.uk/~gorry/eg3567/inet-pages/ip-fragmentatiion.html .
Paul
Eu acho que isso faz sentido. Não há reputação suficiente para votar ....
deepsky
1
A unidade máxima de transmissão (MTU) de um protocolo de comunicações de uma camada é o tamanho em bytes da maior unidade de dados de protocolo que a camada pode transmitir em frente. Para o exemplo de IP sobre conexões DSL usando PPPoA / VC-MUX, novamente optando por preencher 31 células ATM como antes, obtemos um valor de MTU reduzido ideal de 1478 = 31 * 48-10 levando em conta uma sobrecarga de 10 bytes consistindo de uma sobrecarga do protocolo ponto a ponto de 2 bytes e uma sobrecarga AAL5 de 8 bytes. Isto dá um custo total de 31 * 53 = 1643 bytes transmitidos via ATM de um pacote de 1478 bytes passado para PPPoA. No caso de IP enviado por ADSL usando PPPoA, o valor de 1478 seria o comprimento total do pacote IP, incluindo os cabeçalhos IP. Então, neste exemplo,
A RFC 2516 prescreve uma MTU máxima para conexões PPPoE / DSL de 1492 bytes: a carga útil máxima de Ethernet de 1500 bytes menos 8 bytes de cabeçalhos PPPoE (2 bytes para a sobrecarga de PPP e 6 bytes para o cabeçalho PPPoE). Isso não necessariamente preencherá um número inteiro de células ATM. A camada de enlace de dados é a camada 2 do modelo OSI de sete camadas de redes de computadores. Corresponde ou faz parte da camada de enlace do modelo de referência TCP / IP. Você mede na camada 3, de modo que a diferença é óbvia. Por causa do tipo de rede que você está usando, 4 bytes são usados para fins de gerenciamento de rede.
Respostas:
Isto é apenas para minha própria referência sobre IPv6 MTU. Eu precisava de alguma pergunta para adicionar - e eu escolho você.
O primeiro é o nosso pacote Ethernet, que normalmente ignoramos:
Agora adicionamos o cabeçalho IPv4 ou IPv6:
Em seguida, adicionamos a realidade de uma conexão PPPoE, que retira 8 bytes do pacote para a tag PPPoE PADS:
O que reduz o MTU disponível para o nosso tráfego IPv4 e IPv6:
E, no meu caso, estou usando o tunelamento 6 em 4 da Hurricane Electric , já que meu ISP não oferece conectividade IPv6 nativa. Isso significa que meu tráfego IPv6 é envolto em um pacote IPv4:
Mas o número importante é o MTU , que é o tamanho que o IPv4 ou IPv6 tem disponível para si mesmo (incluindo seus cabeçalhos):
Em seguida é a confusão sobre o tamanho da carga útil , usado ao pingar alguém com o sinalizador não fragmentado . O ICMP opera sobre IP e adiciona sua própria sobrecarga de cabeçalho:
Nota : É por isso que você pode executar o ping com
1,452
carga útil de byte antes de precisar fragmentar.No meu caso, com a sobrecarga de uma tag PPPoE PADS:
E minha sobrecarga adicional de 6 em 4 :
E você vê porque eu só posso pingar com uma carga útil de 1.424 bytes.
fonte
Você veria isso se tiver uma marcação de VLAN em uma interface que não a suporte nativamente. As tags de VLAN 802.1Q recebem um adicional de 4 bytes. Se sua NIC oferecer suporte nativamente, ela suportará quadros Ethernet de 1522 bytes (em vez de mais antigos de 1518 bytes) para que você ainda possa ter uma MTU de 1500 bytes. Se a sua NIC não suportar nativamente, você poderá apoiá-la no software, mas terá que reduzir a MTU para 1496, de modo que a coisa toda caiba nos velhos quadros de 1518 bytes que a NIC suporta.
fonte
A unidade máxima de transmissão (MTU) de um protocolo de comunicações de uma camada é o tamanho em bytes da maior unidade de dados de protocolo que a camada pode transmitir em frente. Para o exemplo de IP sobre conexões DSL usando PPPoA / VC-MUX, novamente optando por preencher 31 células ATM como antes, obtemos um valor de MTU reduzido ideal de 1478 = 31 * 48-10 levando em conta uma sobrecarga de 10 bytes consistindo de uma sobrecarga do protocolo ponto a ponto de 2 bytes e uma sobrecarga AAL5 de 8 bytes. Isto dá um custo total de 31 * 53 = 1643 bytes transmitidos via ATM de um pacote de 1478 bytes passado para PPPoA. No caso de IP enviado por ADSL usando PPPoA, o valor de 1478 seria o comprimento total do pacote IP, incluindo os cabeçalhos IP. Então, neste exemplo,
A RFC 2516 prescreve uma MTU máxima para conexões PPPoE / DSL de 1492 bytes: a carga útil máxima de Ethernet de 1500 bytes menos 8 bytes de cabeçalhos PPPoE (2 bytes para a sobrecarga de PPP e 6 bytes para o cabeçalho PPPoE). Isso não necessariamente preencherá um número inteiro de células ATM. A camada de enlace de dados é a camada 2 do modelo OSI de sete camadas de redes de computadores. Corresponde ou faz parte da camada de enlace do modelo de referência TCP / IP. Você mede na camada 3, de modo que a diferença é óbvia. Por causa do tipo de rede que você está usando, 4 bytes são usados para fins de gerenciamento de rede.
fonte
Você está usando DSL? O cabeçalho PPPoE consome 8 bytes.
fonte