Mask indicates which bits are allowed to be modified. It’s useful for setting the upper limit on the increment.
Spirent TestCenter can automatically generate a large number of addresses quickly based on a few configuration parameters. These include:
A mask is a binary value that uses a one to indicate that values in that position can be incremented and a zero indicate that values in that position must be ignored. Masks are often expressed in decimal or hexadecimal, but regardless of how they are expressed, they work at the binary level.
The first two examples are contiguous bitwise masks because the ones are all contiguous. At no point in the mask is a zero interposed between ones.
The last two examples are noncontiguous bitwise masks. One or more zeroes appear between sets of ones.
On the first increment, the value of 128 is added to the 1 in the second octet, resulting in the value of 129. On the second increment, the sum produces a 1 in the second octet and carries over to the third octet, incrementing the 85 to an 86. The result is five addresses with a 1 in the second octet, and five with a 129 in the second octet.
00:10:94:00:00:01
00:10:94:00:00:81
00:10:94:00:01:01
00:10:94:00:01:81
00:10:94:00:02:01
00:10:94:00:02:81
:
00:10:94:01:f3:01
00:10:94:01:f3:81
In this example, Spirent TestCenter generates 512 addresses in the 00:10:94:00:xx:xx range and 488 in the 00:10:94:01:xx:xx range.
00:10:94:01:00:01
00:10:94:01:00:81
This example uses a noncontiguous bitwise mask. Four addresses are generated.