Posição do IP de origem e destino em um pacote IP


7

Em um cabeçalho de quadro Ethernet, o MAC de destino (DMAC) é colocado antes do MAC de origem por razões óbvias (as estações aceitam com base no DMAC). Mas por que a mesma coisa não é mantida para o IP de destino (DIP) e o IP de origem (SIP) no cabeçalho IP?

Por que o SIP está à frente do DIP em um cabeçalho de quadro IP, diferente de um quadro Ethernet em que o DMAC está à frente do SMAC?


4
Eu acho que os caras da ethernet imaginaram 'cut-through' desde o início. Com o IP, o 'corte' não é realmente possível, pois o 'checksum do cabeçalho' está antes de qualquer endereço IP, mas inclui endereços IP; portanto, você precisa ler o cabeçalho IP inteiro antes de poder determinar o valor no cabeçalho, o que realmente torna a ordem do cabeçalho neste contexto irrelevante. Mas ele ainda levanta a questão: por que o cabeçalho IP não foi projetado para ser amigável? E a resposta provavelmente é: não era remotamente interessante / importante na época e é discutível se for hoje.
— ytti

2
@ytti: Que melhoria faria se o IP suportasse 'cut-through'? IP é raramente usado sem uma camada 2.
— BatchyX

2
Para a Ethernet, acho que colocar o destino em primeiro lugar se deve ao fato de os hubs estarem na moda e tornar mais eficiente para os hosts determinar se um quadro é adequado para eles. As versões anteriores do IP e TCP tinham o endereço de destino primeiro. Não há uma explicação real por que ele foi trocado na v4. Não acredito que a eficiência ou a velocidade tenham sido um ponto de ênfase em IP.
— Santino

@BatchyX enquanto o IP é usado com L2, se você precisar tomar uma decisão de roteamento L3, não poderá fazê-lo por causa do design do quadro, pessoalmente não estou muito convencido de que o corte seja útil mesmo em L2, mas Eu também não me sinto muito fortemente sobre isso. Talvez algumas pessoas tenham um bom caso de uso para interrupção de IP.
— ytti

Alguma resposta o ajudou? Nesse caso, você deve aceitar a resposta para que a pergunta não apareça para sempre, procurando uma resposta. Como alternativa, você pode fornecer e aceitar sua própria resposta.
— Ron Maupin

Respostas:


3

A idéia era saber o mais rápido possível se um quadro era multicast; a ordem dos bytes da rede foi estragada levemente no design, de modo que é o segundo, e não o primeiro.


3
O TokenRing enviava o MAC da esquerda para a direita, para que o bit multicast fosse visto como 1º bit, em vez de 8º bit.
— ytti
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.