I'm in the same boat as you :)
Here's what the most recent paper I found on dummynet states:
Reference: http://info.iet.unipi.it/~luigi/papers/20100304-ccr.pdf
Setting mask on a pipe to destination gives: mask: 0x00 0x00000000/0x0000 -> 0xffffffff/0x0000
While setting mask to source gives: mask: 0x00 0xffffffff/0x0000 -> 0x00000000/0x0000
I will stay away from dynamic pipes until I can fully understand how they work.
Here's what the most recent paper I found on dummynet states:
QuoteIn some situations it is useful to aggregate traffic into flows, and pass each flow through a separate pipe. This is achieved with a feature called "dynamic pipes": "mask" parameters can be specified in the configuration of a pipe, which indicate the bits in the 5-tuple of a packet (protocol, addresses and ports) that should be used to group packets into flows. For each pattern resulting after masking, a new pipe will be created, and matching traffic will be directed to it. As an example, the rule:Code Selectipfw pipe 4 config mask src-ip 0x000000ff bw 1Mbit/s
will group packets with the same value of the least significant 8 bits in the source address, and direct each flow to a new instance of pipe 4. The bandwidth of each instance is 1 Mbit/s.
Reference: http://info.iet.unipi.it/~luigi/papers/20100304-ccr.pdf
Setting mask on a pipe to destination gives: mask: 0x00 0x00000000/0x0000 -> 0xffffffff/0x0000
While setting mask to source gives: mask: 0x00 0xffffffff/0x0000 -> 0x00000000/0x0000
I will stay away from dynamic pipes until I can fully understand how they work.