
Como eu sei disso
'$sysctl | grep net.ipv4.tcp'
fornece o valor do parâmetro TCP para todo o sistema, preciso criar um script no Bash para o arquivo prático da minha faculdade no qual, se abrirmos o navegador e inserirmos o URL, comowww.google.comentão o tempo SYN deste estabelecimento de conexão e o tempo SYN+ACK precisam ser obtidos e comparados com o parâmetro de todo o sistema para tomar a decisão de atraso e exibir uma mensagem sobre SYN e SYN+ACK?
Responder1
tcpdump permitirá que você veja o tempo delta entre SYN e SYN/ACK, o que lhe dará o RTT inicial (assumindo que você está capturando do cliente).
Por exemplo, tcpdump -nS -s0 host www.google.com -ttt
mostra as informações que você procura.
Se você deseja extrair automaticamente apenas o tempo de ida e volta inicial, uma maneira simples (mas não à prova de erros) seria redirecionar a saída do tcpdump para um arquivo e usar grep e awk para extrair apenas o tempo delta para pacotes SYN/ACK. Por exemplo:
tcpdump -nS -s0 host www.google.com -ttt > /tmp/handshake.txt
cat /tmp/handshake.txt | egrep '\[S\.\]' | awk 'BEGIN { FS = " " } ; { print $1 }'
Os comandos acima podem ser adicionados a um script bash simples para atender às suas necessidades.
Não tenho certeza do que você quer dizer quando fala em comparação com o "parâmetro de todo o sistema". Não há valor sysctl que controle o tempo de ida e volta; ele também varia muito dependendo de qual servidor você está falando.