"As I understand it, when one PC sends a frame to another PC through a switch, the frame remains unchanged."
Você está correto; Os switches não modificam os quadros que encaminham de qualquer maneira. Isso é conhecido como ponte transparente , conforme explicado neste artigo da O'Reilly intitulado Operação Básica do Comutador :
Ethernet switches are designed so that their operations are invisible to the devices on the network, which explains why this approach to linking networks is also called transparent bridging. “Transparent” means that when you connect a switch to an Ethernet system, no changes are made in the Ethernet frames that are bridged.
"But what happens if we have two PCs connected to a router and we send something between them?"
TL; DR
Qualquer pacote encaminhado por um roteador será modificado. As modificações necessárias incluem um novo endereço MAC de destino e uma nova sequência de verificação de quadros. Mas isso é apenas uma pequena parte do que acontece no roteador ...
Ao contrário dos switches, os roteadores decidem o que fazer com um pacote com base em seu endereço de destino Camada 3 do OSI . Nesse caso, trata-se de um endereço Protocolo de Internet (IP). Portanto, o que acontece com o pacote depende de onde o pacote está indo. Vamos usar a imagem a que você se refere como exemplo:
Aquitemosumroteadorcomduasinterfaces:e1/1/1(aoqualnosreferimoscomoE1)ee1/1/2(aoqualmereferireicomoE2).Observequeasduasinterfacesdoroteadorestãoemsub-redesseparadas,oquedevesempreserocasodeumroteador:
- E1estáconectadoàsub-rede10.0.0.0/24
- E2estáconectadoàsub-rede10.0.1.0/24
Agora,suponhaqueoComputadorA(comoendereçoIP10.0.0.2/24e,portanto,nasub-rede10.0.0.0/24)envieumpacoteparaoendereçoIPdedestino10.0.1.2.Quandoopacotechegaaoroteador,aconteceoseguinte:
- OpacotecheganainterfaceE1
- Oroteadordeterminaqueoendereçodedestinoé10.0.1.2
- Oroteadorexaminasuatabeladeroteamentoparadeterminarparaondeopacotedeveir
- AtabeladeroteamentoindicaqueainterfaceE2estáconectadaàsub-rede10.0.0.0/24
- OroteadorpreparaopacoteparatransmissãonainterfaceE2.Issorequermodificaropacotedeváriasmaneiras.Porexemplo,onovopacoteterá:
- Oendereço Camada 2 (MAC) do destino antigo, substituído por um novo endereço de destino, que será o endereço de broadcast
FF:FF:FF:FF:FF:FF
para o primeiro pacote enviado na interface
- Uma nova Seqüência de verificação de quadros (FCS) calculada e adicionada ao pacote
- O novo pacote é transmitido na interface E2
Quando o pacote é enviado para o segmento de rede conectado à interface do roteador E2, ele é recebido pelo Computador B com o endereço IP 10.0.1.2.
Suponha que o Computador A envie um pacote para o endereço IP de destino 10.0.7.44. Quando o pacote chega ao roteador, ocorre o seguinte:
- O pacote chega na interface E1
- O roteador determina que o endereço de destino é 10.0.7.44
- O roteador examina sua tabela de roteamento para determinar para onde o pacote deve ir
Agora, o que acontece?
Bem, se, como mostrado no gráfico, o roteador realmente tiver apenas duas interfaces, o roteador descartará o pacote porque ele não tem uma rota válida para a rede de destino.
No mundo real, no entanto, é provável que um roteador tenha pelo menos uma interface configurada para ser a
rota padrão ou
rota de último recurso . Na tabela de roteamento, esta é a interface com a qual a rede 0.0.0.0/0 está associada. Se o roteador não tiver uma rota específica para uma rede válida para o pacote destinado a 10.0.7.44, como sua ação de "último recurso", ele transmitirá o pacote na interface associada à rota padrão.
A funcionalidade de rota padrão é muito importante. Sem ele, o roteador precisaria ter uma entrada na tabela de roteamento para muitas redes de IP (embora não todas) na Internet. Tal tabela seria muito grande. Comparado a um roteador com uma rota padrão, esse roteador exigiria:
- Mais memória para armazenar a tabela de roteamento
- Mais tempo de CPU para examinar a tabela (isso é feito para cada pacote de entrada!)
- Atualizações de tabela de roteamento excessivas e freqüentes de muitos outros roteadores na Internet para manter sua tabela de roteamento precisa. Caso contrário, os pacotes podem ser encaminhados por meio de uma interface que, de fato, não tenha mais conectividade com a rede de destino.