Switchport em half duplex - Velocidade de download sofrendo, mas o upload foi bom

13

Um usuário teve problemas com a velocidade de download da Internet. A conexão com a Internet é de 100 Mbit / s. O usuário atingiu cerca de 7 Mbit / s a ​​jusante e cerca de 80 Mbit / s a ​​montante.

Eu testei no meu computador e ele ficou em torno de 70 Mbit / s a ​​jusante e 80 Mbit / s a ​​montante. Obviamente, o PC dos usuários era o culpado.

Eu verifiquei o switch que é um Catalyst 3560 e lá estava como eu esperava, a porta estava em half duplex. O usuário codificou seu PC para 100 / full e a porta estava usando auto. A velocidade é detectada pelos Fast Link Pulses (FLP), mas o duplex deve ser considerado como metade, para que a porta estivesse usando 100 / metade. Com o show controller eu pude ver colisões e colisões tardias conforme o esperado.

A largura de banda foi testada no site sueco www.bredbandskollen.se. Ele usa o TCP para testar a latência primeiro. Em seguida, ele abre um soquete via Flash e faz vários HTTP GET (TCP) e mede a largura de banda downstream por cerca de 10 segundos. Depois disso, ele faz quatro postagens HTTP no servidor e envia tráfego por 10 segundos e calcula a largura de banda upstream.

Sei que esses sites não são 100% precisos, mas geralmente eles podem pelo menos dar algum tipo de indicação se você estiver perto de receber o tipo de largura de banda que deveria e era um teste fácil de executar para garantir que fosse o usuário e não a rede com falha aqui.

  1. Por que apenas a jusante foi afetado e não a montante?

  2. São verdadeiras colisões? Como o cabo possui pares de transmissão e recepção separados.

Daniel Dib
fonte
70/80 são baseados em um único teste ou na média de vários testes? Considerando o tamanho variável da janela, um único teste seria muito vago.
precisa saber é o seguinte

Respostas:

14

Esse é um comportamento totalmente normal com uma incompatibilidade duplex.

Por que apenas a jusante foi afetado e não a montante?

Como o computador está operando no modo full duplex, não está utilizando o CSMA-CD. Isso significa que não verifica se o meio está ocioso antes de transmitir, nem perceberá os dados que recebe enquanto transmite como uma colisão. Como tal, o upload do computador permaneceria praticamente inalterado.

Por outro lado, o comutador está utilizando o CSMA-CD e aguardará a inatividade do meio antes de transmitir. Além disso, quando o interruptor detecta uma colisão, ele para imediatamente de transmitir o quadro e segue o procedimento de detecção de colisão CSMA-CD. Isso tem um impacto significativo no desempenho no tráfego enviado ao computador.

Quando o tráfego é TCP, o efeito negativo será multiplicado, uma vez que qualquer ACK TCP perdido no computador causará uma retransmissão TCP.

São verdadeiras colisões? Como o cabo possui pares de transmissão e recepção separados.

Sim, são colisões reais; mesmo em um ambiente half duplex completo (ou seja, hubs), existem pares separados de transmissão e recepção. O motivo é que, em um ambiente half duplex, os hubs repetirão o sinal recebido em uma porta e em todas as outras portas. Se duas estações tentarem transmitir ao mesmo tempo, o sinal repetido não será utilizável.

Como o switch está operando no modo half duplex, ele funciona como em um ambiente e só pode transmitir ou receber a qualquer momento. Sempre que o switch envia um quadro e detecta outro tráfego na mídia (ou seja, o computador, que não está procurando uma mídia inativa), isso é tratado como uma colisão e o switch segue o procedimento de detecção de colisão (que inclui um esperar ou recuar).

Como o computador não está operando dessa maneira (ou seja, começa a transmitir automaticamente quando há dados a serem enviados), você acaba com muito mais colisões do que em um ambiente totalmente composto por dispositivos half-duplex.

Edit: Me deparei com uma referência a estes neste fim de semana enquanto procurava um assunto não relacionado onde eles eram chamados de colisões falsas . Eu discordaria desse ponto de vista, já que o switch os vê claramente como uma colisão e os trata como tal. Em vez disso, eu pensaria nelas como colisões desnecessárias , pois elas não deveriam existir em uma rede comutada.


Além disso, esse é o tipo de incompatibilidade duplex mais frequentemente relatado (em que o comutador está definido como automático e o computador em full duplex). A maioria das pessoas baixa muito mais do que carrega, e costuma notar mais facilmente essa condição para denunciá-la.

YLearn
fonte
2
demorei um pouco para entender seu ponto de vista sobre a questão da diferença de velocidade, mas esta é uma boa resposta ... você pode aprimorá-lo para apontar explicitamente que o Tx do comutador é mais limitado por taxa do que o PC, porque deve aguarde mais devido à detecção de colisão CSMA / CD do que o PC aguardará os quadros de execução das colisões. Por outro lado, se apenas alguns dos ACKs TCP do PC colidirem com o download do PC, o download será penalizado duas vezes pelo CSMA / CD da TCP e da Ethernet. Os TCP ACKs descartados diminuem a velocidade das duas transferências, mas o backoff do CSMA / CD mata o download.
9118 Mike Pennington
Também depende de qual extremidade está Cheia e qual é a Metade. A Cheia envia / recebe sem problemas, enquanto a outra vê uma colisão para cada pacote. Isso significa que a transferência de dados da extremidade Cheia causará menos colisão na metade ( como a metade final tenta espremer o ACK entre pacotes grandes), enquanto o inverso completo causará muita colisão, pois tem mais chance de "atingir" um pacote grande com um reconhecimento menor. Pode não ser a explicação certa, mas se encaixa no que eu já vi.
Remi Letourneau
@RemiLetourneau, claramente se a direção da incompatibilidade fosse revertida, o efeito também seria revertido. Nesse caso, você poderia trocar os termos do computador / alternar na minha resposta (que era uma estrutura para responder à pergunta do OP). Não tenho certeza se eu sigo todo o resto do seu comentário.
YLearn
@YLearn O que eu quis dizer é que os sintomas de incompatibilidade frente e verso incluem o tráfego indo a uma velocidade relativamente normal de uma maneira e diminuindo a velocidade do rastreamento. Algo a fazer em que extremidade está enviando quadros grandes e que fim de bruxa está enviando reconhecimento. Como você diz, se você reverter a configuração de incompatibilidade, reverterá a lentidão do tráfego.
Remi Letourneau
3

Se o TCP foi testado, há muitas coisas que você não pode controlar ou nem imaginar. A diferença entre a jusante / a montante pode ser facilmente causada pelas configurações internas de prioridade da NIC, buffers para RX / TX e configurações essencialmente de baixo nível que determinam como lidar com o tráfego RX e TX.

'sh controllers' deve relatar qualquer condição RX e TX simultânea como colisão se estiver trabalhando no modo half-duplex.

Łukasz Bromirski
fonte