Use filtro restrito autorizado, ative Drop com chance baixa, execute uma ação, confira logs de cliente e servidor, pare o Clumsy e comprove o retorno da referência.
01
O que significa perda de pacotes no Clumsy
Com Drop ativo, os pacotes correspondentes são descartados conforme a chance. Dependendo do protocolo e aplicativo, o efeito aparece como nova tentativa, pausa, qualidade menor, reconexão, operação incompleta ou timeout. TCP retransmite, mas muda o tempo e não garante experiência clara. UDP pode mostrar perda diretamente.
Perda não é latência. Pacote atrasado ainda chega; descartado não. O aplicativo pode tentar novamente, usar cache, trocar transporte, reconectar ou informar erro. Teste Drop separado de Lag para identificar a recuperação responsável.
As notas 0.3 citam drop-throttled para rajadas e chance mais precisa. Use e registre os ajustes exatos da versão verificada.
| Sintoma | Explicação | Evidência |
|---|---|---|
| Requisição demora | Nova tentativa | Horários e logs |
| Ação aparece duas vezes | Primeira concluiu, resposta perdida | Chave idempotente e servidor |
| Qualidade cai | Pacotes de mídia ausentes | Métricas e contadores |
| Sessão reconecta | Heartbeat perdido | Logs de conexão |
| Erro permanente | Limite ou timeout | Erro do cliente e servidor |
02
Planejar teste com limite claro
Comece com ação de resultado conhecido. Exemplo: ao carregar mensagens com perda baixa, o cliente deve mostrar progresso, tentar com segurança, evitar duplicatas e concluir ou oferecer ação clara. Defina aprovação e tempo máximo.
Escolha tráfego próprio ou autorizado. Limite de host, protocolo ou porta protege outros aplicativos. Feche trabalho sensível e prepare Stop. Não use filtro global nem receita supostamente indetectável.
Colete os dois lados. O cliente não sabe se o servidor concluiu uma operação cuja resposta sumiu. IDs, chaves idempotentes, registros e horários distinguem tentativa segura e efeito duplicado.
- Uma operação e resultado.
- Chance baixa primeiro.
- Lag e Tamper desligados.
- IDs de cliente e servidor.
- Stop e recuperação obrigatórios.
03
Executar o simulador passo a passo
Baixe e extraia Clumsy 0.3 oficial para a arquitetura do Windows. Verifique fonte e checksum. Crie filtro WinDivert restrito com sintaxe oficial e confirme o alvo autorizado.
Ative Drop com chance baixa e outros módulos desligados. Pressione Start, execute uma ação e observe contadores, cliente e servidor. Não aumente a porcentagem durante a execução; pare e crie outro cenário.
Pressione Stop e repita a referência. Confirme que tentativas, filas e conexões normalizaram. Se o aplicativo travar, capture o estado antes de reiniciar. O defeito só é interpretável depois que a falha de rede terminou.
- ReferênciaExecutar normalmente e capturar IDs.
- Limitar tráfegoFiltro autorizado mais restrito.
- Ativar DropChance baixa, sem outros módulos.
- Uma operaçãoObservar tentativas e efeitos no servidor.
- Parar e conciliarRestaurar e buscar duplicatas.

04
Criar matriz de perda
Use cenários progressivos em vez de conexão inútil. Perda baixa testa resistência normal, moderada revela problemas de tentativa e severa verifica falha clara. A porcentagem depende do protocolo e produto.
Repita para separar comportamento determinístico do acaso. Uma requisição bem-sucedida não prova resistência. Registre tentativas, conclusões, duplicatas, erros e recuperação.
Separe tipos de requisição. Leitura, upload, mutação semelhante a pagamento, streaming e heartbeat têm riscos diferentes. Documente cada tipo e o estado final.
| Cenário | Objetivo | Evidência |
|---|---|---|
| Perda baixa | Resistência | Tentativa transparente |
| Moderada | Limite | Sem duplicatas e erro útil |
| Rajada | Interrupção curta | Reconexão e conciliação |
| Severa | Falha | Timeout limitado e estado preservado |
05
Observar tentativas e operações duplicadas
O problema mais importante pode ocorrer quando o servidor conclui e a resposta se perde. O cliente não vê sucesso e tenta novamente. Sem idempotência, outra solicitação cria segundo pedido, mensagem, trabalho ou pagamento. O sintoma pode ser um carregamento seguido de dois registros.
Use IDs estáveis e verifique o servidor depois de cada mutação. Um sistema robusto reconhece a tentativa como a mesma operação ou permite conciliar. Clumsy cria o sintoma, não substitui rastreamento.
Teste também após reabrir ou reconectar. O estado final claro importa tanto quanto o erro. Se a operação pode ter concluído, a interface não deve sugerir repetição cega.
Resposta ausente não prova falha do servidor. Concilie IDs e registros.
06
Interpretar TCP, UDP e aplicativo
TCP retransmite e ordena, então perda baixa pode parecer atraso. Aplicativos UDP tratam recuperação na camada de aplicação, deixando sintomas em tempo real visíveis. Isso não substitui telemetria.
Bibliotecas têm políticas próprias. Um cliente pode repetir GET, mas não mutação; websocket pode reconectar e perder estado. Registre versões, limite, espera e tentativa em segundo plano.
Use Clumsy junto de contadores, logs, traces e interface. Alinhe horários, registre estatísticas e estado após Stop para distinguir repetição inofensiva de operação incompleta. Para cada tipo de requisição, anote quantidade de tentativas, respostas recebidas, operações concluídas, efeitos duplicados, mensagens exibidas e tempo de recuperação. Verifique se a biblioteca usa espera exponencial, limite fixo ou repetição em segundo plano. Em uma mutação, abra o registro no servidor depois do teste e compare com o que o cliente mostra. Em streaming, capture métricas do player e eventos de reconexão. Em websocket, observe mensagens não enviadas e restauração da sessão. A mesma chance de Drop pode produzir resultados diferentes por protocolo e política do cliente, por isso versões das bibliotecas e configurações precisam acompanhar o relatório.
07
Evitar testes inseguros
Não comece com Drop alto em todo tráfego. Isso desconecta ferramentas e esconde o comportamento. Não combine módulos antes de uma referência e não aceite um sucesso como prova estatística.
Não desligue segurança para fork desconhecido nem use perda para manipular jogos ou serviços. Escopo autorizado, hipótese e recuperação distinguem teste legítimo.
Após cada execução, Stop e referência. Se continuar instável, capture logs, feche o Clumsy e verifique outras ferramentas. O teste responsável termina restaurado.
Perguntas frequentes
Perguntas sobre o simulador de perda de pacotes Clumsy
Qual porcentagem primeiro?
Comece baixa e aumente conforme requisito, protocolo e risco.
Por que parece latência?
TCP ou aplicativo recupera dados, mas a tentativa adiciona tempo. Use logs.
Testa rajadas?
As notas 0.3 citam drop-throttled. Registre configuração exata.
Por que ocorreu duas vezes?
O servidor pode ter concluído e perdido a resposta. Verifique idempotência e registros.
É lag switch seguro?
Não apoiamos lag switching, desvio ou prejuízo a terceiros. Use somente em testes autorizados.