Eu quero medir a latência de um único servidor de receber um pacote de solicitação TCP para enviar um pacote de resposta TCP. Observe que isso é diferente da latência usual de ida e volta ou unidirecional porque quero excluir o tempo gasto na estrada e no outro lado da rede. A configuração básica do teste é a seguinte, em que send
e recv
são funções de soquete padrão.
O servidor aguarda uma solicitação do cliente usando recv
. Ele envia uma resposta usando send
imediatamente depois que recv
retorna com sucesso. Os pacotes são tão pequenos quanto 1 byte. Durante esse teste, eu uso o Wireshark para capturar todos os pacotes entre o servidor e o cliente. A latência que eu me preocupo é o tempo entre o NIC do servidor recebendo um pacote de requisição e enviando o pacote de resposta. Então, eu uso apenas a diferença do timestamp dos dois pacotes, como mostrado no Wireshark para medir essa latência.
Pergunta: O cabo (sem fio, ethernet de 100Mb / 1000Mb / 10Gb, etc. etc.) entre o servidor e o cliente tem alguma influência na latência acima? Minha intuição é que, como os timestamps são obtidos depois que um pacote chega à NIC e antes que um pacote saia da NIC, o cabo não deve importar. Mas eu não sei se a velocidade do cabo terá influência no comportamento da NIC, portanto, na latência.