Hi all, I haven't found a good way to do this yet. Is there a way to filter out TCP sessions that have no payload? (Basically, sessions that have the 3-way handshake and then immediately close via FIN or RST that didn't actually transmit any meaningful data). Thanks -VK asked 04 Jan '12, 13:04 VaporKnight |
2 Answers:
Unfortunately, display filters work on individual packets, and have no state, so there's no simple display filter to do that. I don't know enough about MATE to say whether it would support that. answered 04 Jan '12, 16:26 Guy Harris ♦♦ |
You could use tshark to create that filter for you :-) To find all TCP packets with data, use:
... we're only interested in the ID's of the TCP sessions that contain data:
Then use some shell magic to create a list of all these session ID's:
... and transform it into a display filter:
You can then use that filter in Wireshark. Or you can create a new tracefile with only the sessions containing data in one run with:
Hope this helps! answered 05 Jan '12, 03:33 SYN-bit ♦♦ showing 5 of 6 show 1 more comments |
That will work for me!
Thanks!
-VK
Hmm.. Actually this didn't work. When I do the -e tcp.stream I don't get Stream ID's returned. I just get a lot of empty lines.
When I do things like tcp.seq or tcp.ack I do see some values. So this seems specific to tcp.stream. In wireshark I can see the steam IDs.
-VK
This works for me with TShark 1.7.0 (SVN 39768) in Windows 7 (64-bit). I ran:
which yields:
Hmm.. maybe need to update then.
Running tshark 1.0.2 on Linux. I'll try that.
-VK
Works on 1.6.0 Thanks!
-VK
Yes, the
tcp.stream
field may not have existed in Wireshark 1.0.x.