Je suis capturer le trafic http avec tcpdump et je suis intéressé à démarrage lent TCP et comment la fenêtre tailles augmentation:Wireshark et tcpdump -r: fenêtre tcp étrange taille
$ sudo tcpdump -i eth1 -w wget++.tcpdump tcp and port 80
Quand je regarde le fichier de vidage avec Wireshark la progression de la taille des fenêtres semble normal, à savoir 5840, 5888, 5888, 8576, 11264, etc ...
Mais quand je visionne le fichier de vidage via
$ tcpdump -r wget++.tcpdump -tnN | less
Je reçois ce qui semble être les fenêtres insensées tailles (adresses IP omis par souci de concision):
: S 1069713761:1069713761(0) win 5840 <mss 1460,sackOK,timestamp 24220583 0,nop,wscale 7>
: S 1198053215:1198053215(0) ack 1069713762 win 5672 <mss 1430,sackOK,timestamp 2485833728 24220583,nop,wscale 6>
: . ack 1 win 46 <nop,nop,timestamp 24220604 2485833728>
: . 1:1419(1418) ack 1 win 46 <nop,nop,timestamp 24220604 2485833728>
: P 1419:2002(583) ack 1 win 46 <nop,nop,timestamp 24220604 2485833728>
: . ack 1419 win 133 <nop,nop,timestamp 2485833824 24220604>
: . ack 2002 win 178 <nop,nop,timestamp 2485833830 24220604>
Est-il possible d'obtenir la taille des fenêtres normales/absolues sur la ligne de commande?
D'abord, pourquoi cela se fait? Deuxièmement, y a-t-il un moyen d'obtenir 'tcpdump' pour faire automatiquement la mise à l'échelle dans la sortie lors de l'affichage du fichier de vidage comme le fait Wireshark? –
@Robert: C'est fait de cette façon parce que la spécification TCP/IP originale fournissait un champ de 16 bits pour la taille de la fenêtre; Lorsque cela s'avérait insuffisant, le mécanisme de mise à l'échelle de la fenêtre permettait de représenter des nombres plus grands sans avoir à changer la taille du champ. Il ne semble pas qu'il y ait un moyen d'afficher les tailles de fenêtre redimensionnées dans 'tcpdump' - vous pouvez toujours soumettre un patch;) Vous pouvez toujours utiliser' tshark' (la version textuelle de Wireshark) à la place. – caf