Uma conexão lenta e atrasada pode indicar que estou perdendo pacotes na transmissão. Embora algum nível de perda de pacotes seja aceitável em alguns cenários, isso pode prejudicar seriamente minha experiência de usuário em outros, especialmente ao fazer streaming de mídia. Além disso, meu sistema pode descartar pacotes totalmente para compensar a latência e os dados podem ser perdidos no processo.
Veja como determinar se houve queda ou perda de pacotes com o Wireshark para que você possa diagnosticar o problema imediatamente.
Pacotes perdidos? vamos pegá-los
Quando você reclama de serviço lento ou transmissão de dados ruim, é lógico assumir que a culpa é da perda de pacotes. Nem todos os pacotes perdidos são descartados, mas uma alta taxa de descarte ainda pode indicar vários problemas. Vamos ver como verificar se você descartou pacotes no Wireshark.
- Abro o aplicativo de desktop Wireshark.
- Verifique se você está no modo de captura.
- Procure a barra de status na parte inferior da janela.
Você verá algumas estatísticas sobre os pacotes capturados aqui. O número ao lado de “Dropped” indicará se os pacotes foram descartados. Em algumas versões, o contador “Dropped” só aparecerá se o Wireshark não tiver capturado todos os pacotes.
Se você tem certeza de que alguns pacotes foram descartados, mas a barra de status não ajuda, você pode encontrar as estatísticas de seus pacotes descartados como esta:
- Clique em “Estatísticas” na barra de menu.
- Selecione “Propriedades do arquivo de captura”. Uma nova janela se abrirá.
- Em “Interfaces”, você verá “Pacotes descartados”. O número abaixo informará quantos pacotes não foram capturados.
Mesmo que o Wireshark não capture todos os pacotes, isso não significa que eles não foram transmitidos. O programa pode simplesmente não ser capaz de acompanhar um fluxo rápido. No entanto, você ainda pode reconhecer pacotes que não foram capturados com um pacote. ACK, pois são pacotes menores e mais fáceis de capturar. Portanto, muitas vezes você pode identificar pacotes descartados procurando os ACKs na coluna de informações. O ACK informa que os dados foram transmitidos com sucesso, apesar do pacote ausente.
Investigação de pacotes perdidos
Pacotes não capturados não são iguais a pacotes perdidos. Enquanto os pacotes não capturados pelo Wireshark ainda podem chegar ao seu destino, os pacotes perdidos não. Em vez disso, eles geralmente são retransmitidos e descartados apenas no pior caso. Para investigar pacotes perdidos em um segmento TCP, você precisará examinar mais de perto a coluna de informações na tela de captura.
- Escolha uma conversa que deseja investigar e aplique-a como filtro. Isso não é obrigatório, mas ajudará você a obter uma visão geral melhor.
- Selecione qualquer um dos pacotes.
- Clique em “Internet Protocol Version 4” na seção Detalhes.
- Encontre o número de ID e clique com o botão direito nele e pressione “Aplicar como coluna”.
Agora, você poderá ver o número de identificação sequencial de cada transmissão. Examine os números para encontrar quaisquer discrepâncias. Lembre-se de que no TCP, os pacotes perdidos podem ser retransmitidos posteriormente, portanto, mesmo que uma transmissão esteja ausente, ela ainda pode estar lá. Você pode procurá-lo usando seu número de identificação.
Sempre que um pacote não for transferido, você verá uma mensagem “Segmento anterior não capturado” na coluna Informações da próxima linha. Você também pode procurar pacotes ausentes em todas as conversas, filtrando-os para esta mensagem de erro. Digite “tcp.analysis.lost_segment” na barra de filtro e pressione Enter. Você também pode combinar isso com o endereço IP ou filtros de conversa digitando “e” entre os dois filtros para um resultado mais preciso. Mais uma vez, você pode procurar por pacotes perdidos após determinar seus números de identificação.
Como mencionei, o TCP permite que segmentos perdidos sejam retransmitidos posteriormente. Você pode usar o filtro “tcp.analysis.retransmission” para encontrar suas retransmissões. Procurar pacotes retransmitidos às vezes pode ser mais produtivo do que procurar segmentos perdidos, pois os segmentos perdidos podem incluir mais de um pacote, enquanto as retransmissões são pacotes individuais.
Rastreie pacotes perdidos com o Wireshark
Determinar se o Wireshark perdeu ou deixou cair um pacote nem sempre é fácil. Geralmente não basta apenas olhar para uma métrica, você precisa considerar vários fatores. Os pacotes descartados geralmente chegam ao seu destino ilesos, enquanto muitos pacotes descartados podem levar a uma experiência de usuário insatisfatória.