Comportamento do buffer do switch Ethernet não gerenciado


0

Se eu tiver um switch não gerenciado típico conectado a um servidor a 1 Gps e vários clientes a 100 Mbps, o switch armazenará em buffer os pacotes?

Por exemplo, se dois clientes estão baixando arquivos, o servidor pode enviar um pacote para um segundo cliente antes que o primeiro pacote termine de descer a linha?


Essas informações geralmente estão disponíveis na Internet e são explicadas com mais profundidade e detalhes do que o que precisamos fazer aqui. Os switches fazem buffer de tráfego por vários motivos. A natureza full duplex do TCP significa que o remetente aguardará a resposta do receptor, causando a conexão entre os dois na velocidade mais lenta. Se suas perguntas forem: “Múltiplas conexões de 100 Mbps podem compartilhar a velocidade de um servidor de 1 Gbps?”. Sim, elas podem. Teoricamente, 10 computadores poderiam transferir um arquivo a toda velocidade simultaneamente.
Appleoddity

Respostas:


0

Se eu tiver um switch não gerenciado típico conectado a um servidor a 1 Gps e vários clientes a 100 Mbps, o switch armazenará em buffer os pacotes?

O switch armazena em buffer uma certa quantidade de quadros, dependendo do modelo.

se dois clientes estão baixando arquivos, o servidor pode enviar um pacote para um segundo cliente antes que o primeiro pacote termine de descer a linha?

"Abaixo da linha" é ambíguo. Assim que o servidor terminar de transmitir o pacote para o primeiro cliente (que é armazenado em buffer pelo switch e subsequentemente encaminhado na taxa mais baixa do cliente), ele pode transmitir o pacote para o segundo cliente.

Basicamente, um servidor conectado a 1 Gbit / s pode alimentar 10 clientes conectados a 100 Mbit / s na velocidade máxima - supondo que ele possa fornecer os dados com rapidez suficiente e apenas a rede esteja limitando a velocidade.


0

Há duas coisas que um comutador Ethernet pode fazer:

Armazenar e encaminhar - aguarde até que o quadro inteiro seja recebido antes de enviá-lo.

Cortar - comece a enviar o quadro assim que o endereço de destino for conhecido.

O endereço MAC de destino é a primeira coisa em um quadro Ethernet, portanto, não há muito buffer antes que um switch de corte comece a enviar o que recebe - alguns hubs tinham um recurso "Sem Fragmento" que aguarda 64 bytes antes de enviar para evitar incomodar o destino se ocorrer uma colisão.

o servidor pode enviar um pacote para um segundo cliente antes que o primeiro pacote termine de descer a linha

A comunicação entre, por exemplo, o seu PC e o comutador ao qual está conectado imediatamente, pode lidar apenas com 1 bit de cada vez, e o hardware da rede modula a mídia durante um período de tempo para "enviar" os dados. Qualquer protocolo de comunicação serial funciona assim.

Portanto, uma NIC nunca pode enviar mais de um quadro "de uma vez" - eles são colocados na fila (a Qualidade de Serviço afeta essa ordem de enfileiramento) e processados ​​pela pilha de rede e pelo hardware do servidor trabalhando juntos. (A associação / ligação da NIC pode fazer com que várias NICs funcionem juntas como uma NIC.)

Se você transmite algo para a Internet, quase sempre existem vários "saltos" - o servidor envia dados ao seu switch, que encaminha para o roteador, que encaminha para possivelmente mais roteadores, depois o roteador de ISPs, os ISPs a montante IXP, etc. , etc. A NIC do servidor não precisa aguardar a conclusão de todos esses saltos; é claro, ele pode enviar outro quadro para o switch assim que a NIC terminar com o quadro atual.

Definitivamente, vários pacotes podem estar em andamento entre todos esses "saltos" - e há uma chance de que eles possam ou não chegar em ordem do outro lado - isso é algo que os endereços TCP com números de seqüência e janelas (o UDP não). Cortar / armazenar e encaminhar afeta apenas a conexão imediata entre o servidor e o switch.

É necessário verificar as especificações do seu switch para saber o que ele faz. Este , por exemplo, "armazena e encaminha".


Bem, estou procurando decidir qual opção! Veja, eu ouvi dizer que comutadores não gerenciados baratos não têm espaço suficiente no buffer para armazenar um pacote (1508 bytes) para cada porta. Armazenar e encaminhar implica que o pacote é completamente armazenado em buffer antes de ser enviado em outra porta, mas isso implica especificamente que ele poderá receber outro pacote na porta de entrada assim que tiver 'transferido' o pacote para o buffer de a porta de destino? Ou devo procurar uma especificação adicional para garantir isso?
21418 Roger Irwin
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.