[tcpdump-workers] tool to reorder packets of a pcap?

2013-02-05 Thread rixed
I have a set of pcap files which packets are not stricly ordered according to 
packet timestamp.
I'd like a tool to reorder such packets according to timestamp (without 
altering packet timestamp
by by swapping packets in the file).

I couldn't find such tool - should I write one or did I missed something 
obvious?

___
tcpdump-workers mailing list
tcpdump-workers@lists.tcpdump.org
https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers


Re: [tcpdump-workers] "not vlan" filter expression broken catastrophically!

2013-02-05 Thread Gianluca Varenni
The problem with your syntax is that it's not backwards compatible, so such a 
change can break applications. My syntax should be backwards compatible, as the 
syntax "vlan " is not supported today.

GV

-Original Message-
From: fen...@gmail.com [mailto:fen...@gmail.com] On Behalf Of Bill Fenner
Sent: Monday, February 04, 2013 2:40 PM
To: Gianluca Varenni
Cc: Guy Harris; Michael Richardson; tcpdump-workers@lists.tcpdump.org; 
Francesco Ruggeri
Subject: Re: [tcpdump-workers] "not vlan" filter expression broken 
catastrophically!

On Sat, Feb 2, 2013 at 12:26 AM, Gianluca Varenni 
 wrote:
> What I'm talking about is not having the vlan keyword that has a global 
> effect to the whole filters.
> At the moment we write something like "vlan and ip" to capture ip packets 
> within vlan, and a filter like "(vlan and ip) or udp" is actually compiled 
> with the logic meaning "vlan and (ip or udp)".
> One proposal that I have is to support a syntax like the following
>
> vlan ip
>
> This is exactly like "vlan ip" but it sticks *only* to the "ip" 
> keyword. So a filter like "vlan ip or udp" means "accepts ip packets 
> within a vlan tag, or udp packets without a vlan tag". If you want to 
> specify the vlan id, you use
>
> vlan 23 ip
>
> if you want to "stick" vlan to multiple filters, you use the syntax
>
> vlan 23 (udp or tcp)
>
> this is equivalent to
>
> vlan 23 udp or vlan 23 udp
>
> Finally, if you want to filter QinQ packets, you use
>
> vlan vlan ip (ip packets within  2 vlan encapsulations)
>
>
> I know the syntax is not the most elegant (and I don't know how 
> easy/difficult it would be to parse), but I believe it solves the problem of 
> having the vlan keyword having a global effect during compilation.
>
>
> What do you guys think?

This sounds like my earlier suggestion: to make the vlan keyword associative.  
My syntax would have a few more "and"s than your examples, such as "vlan 23 and 
( udp or tcp )", or "vlan and vlan and ip".

  Bill

>
> Have a nice day
> GV
>
> -Original Message-
> From: Guy Harris [mailto:g...@alum.mit.edu]
> Sent: Friday, February 01, 2013 6:19 PM
> To: Bill Fenner
> Cc: Gianluca Varenni; Michael Richardson; 
> tcpdump-workers@lists.tcpdump.org; Francesco Ruggeri
> Subject: Re: [tcpdump-workers] "not vlan" filter expression broken 
> catastrophically!
>
>
> On Feb 1, 2013, at 4:49 AM, Bill Fenner  wrote:
>
>> We have wanted to fix the vlan support ever since it was added.
>
> The "vlan" keyword serves two purposes:
>
> 1) matching VLAN-encapsulated packets or VLAN-encapsulated 
> packets on a particular VLAN;
>
> 2) handling the extra MAC-layer header length due to the VLAN header.
>
> That's also the case for "pppoed" and "mpls".
>
> 2), in the best of all possible worlds, would be done by having filter 
> programs that can, without much performance penalty, check for higher-level 
> protocol types in the presence of 
> VLAN/MPLS/PPPoE/GTP/fill-in-your-encapsulation-layering headers, so that "tcp 
> port 80" would find all packets on the network that are going to or from TCP 
> port 80, regardless of how IP is encapsulated.  If you wanted only 
> VLAN-encapsulated packets going to or from TCP port 80, you'd do "vlan and 
> tcp port 80"; if you only wanted *non*-VLAN-encapsulated packets going to or 
> from TCP port 80, you'd do "not vlan and tcp port 80".  "vlan" (and "pppoed" 
> and "mpls") would only handle 1) (and its equivalents).
>
> Unfortunately, that requires changes to the machine code language for filter 
> programs, so you'd have to somehow deal with systems where the kernel has a 
> filtering engine but it doesn't support those changes.
>
> ___
> tcpdump-workers mailing list
> tcpdump-workers@lists.tcpdump.org
> https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers
___
tcpdump-workers mailing list
tcpdump-workers@lists.tcpdump.org
https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers


Re: [tcpdump-workers] tool to reorder packets of a pcap?

2013-02-05 Thread Guy Harris

On Jan 24, 2013, at 2:43 AM, ri...@happyleptic.org wrote:

> I have a set of pcap files which packets are not stricly ordered according to 
> packet timestamp.
> I'd like a tool to reorder such packets according to timestamp (without 
> altering packet timestamp
> by by swapping packets in the file).
> 
> I couldn't find such tool - should I write one or did I missed something 
> obvious?

According to


http://ask.wireshark.org/questions/18190/utility-to-sort-pcap-or-pcapng-capture-file-based-on-timestamp

there's a "reordercap" utility in the current development version of Wireshark 
that can do that:

   Reordercap is a program that reads an input capture file and rewrites
   the frames to an output capture file, but with the frames sorted by
   increasing timestamp.

   This functionality may be useful when capture files have been created
   by combining frames from more than one well-synchronised source, but
   the frames have not been combined in strict time order.
___
tcpdump-workers mailing list
tcpdump-workers@lists.tcpdump.org
https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers