Presume-se que suas "comunicações cliente-servidor" ocorram em uma rede, portanto, um snffer de rede, como o Wireshark , é provavelmente um bom começo . Espero que o protocolo específico que seu aplicativo está usando seja aquele que o Wireshark pode decodificar. Se não, então você precisará salvar o tráfego capturado e analisá-lo com uma ferramenta que pode decodificar os protocolos na pilha, preferencialmente até a camada 7. (Se qualquer pilha do protocolo ao longo do caminho é proprietária, você provavelmente com problemas para outra coisa senão a análise de tráfego.)
Se o seu protocolo é baseado em HTTP (S), o Fiddler também pode estar no seu caminho, embora seja muito fácil encapsular um protocolo proprietário e feio dentro de HTTP (S) de tal forma que é tão incompreensível quanto um protocolo binário (replicação baseada em HTTP Sage "ACT!", estou falando com você).
É difícil responder ao seu pedido de "teste falso". Usar uma ferramenta como o Wireshark com eficiência (especialmente alguns dos recursos avançados agradáveis como seguir fluxos TCP ou detectar anomalias ) você realmente precisa entender a pilha de camadas de protocolo eo que está acontecendo. Até que os computadores cheguem ao ponto de serem "inteligentes", não há um bom substituto de software para o conhecimento humano.
Editar:
Eu fiz algumas análises para Clientes que estavam enfrentando problemas de lentidão com protocolos opacos e proprietários da camada 7 (Olá, Bentley "AutoPlant", estou falando com você) e posso dizer que há um bom valor em análise de tráfego simples (quem fala quem, quando e quanto). A insinuação era de que "a rede" estava sendo um gargalo, então um pequeno sniffing do tráfego em combinação com a execução de um rastreamento "Process Monitor" em um PC cliente produzia alguns gráficos que mostravam comparações de carga de CPU do cliente, carga de CPU do servidor, E / S de rede e E / S de SAN de back-end. No final, tudo isso era apenas uma análise de tráfego de um tipo, mas ajudou a identificar um bug desagradável de "looping" no software cliente que não tinha nada a ver com "a rede".
Como outro exemplo, houve uma pergunta aqui sobre logons lentos com perfis de usuário móvel onde o comportamento de armazenamento em cache de perfis de usuários móveis do Windows XP entrou em questão. Não tendo acesso ao código-fonte do Windows (como muitas vezes não faço), optei por executar a análise de tráfego para determinar qual era o comportamento do cache. O protocolo cliente / servidor, SMB, não é opqaue, mas eu o tratei como tal, pois o que eu realmente estava procurando era uma métrica transferida de dados.
A profundidade do buraco de coelho vai depender do que você está procurando.