Hi Tanja, Benoit, all,
I have two questions regarding the configuration of hash-based filtering.
1) Are IP header fields/bits fixed or configurable?
RFC 5475, Section 7.2 says:
http://tools.ietf.org/html/rfc5475#section-7.2
Case hashing:
- Hash Domain (input bits from packet)
- <Header type = IPv4>
- <Input bit specification, header part>
- <Header type = IPv6>
- <Input bit specification, header part>
- <payload byte number N>
- <Input bit specification, payload part>
=> header bits seems to be configurable
RFC 5476, Section 6.5.2.6 says:
http://tools.ietf.org/html/rfc5476#section-6.5.2.6
In Hash-based Selection, a Hash Function is run on IPv4 traffic. The
following fields MUST be used as input to that Hash Function:
- IP identification field
- Flags field
- Fragment offset
- Source IP address
- Destination IP address
- A number of bytes from the IP payload. The number of bytes and
starting offset MUST be configurable if the Hash Function
supports it.
=> header fields seems to be fixed.
2) Is the output range of the hash function a configuration parameter
or just an invariant property of the hash function itself?
If yes, should it be configured as min and max or as length and bitmask?
RFC 5475, Section 7.2 says:
http://tools.ietf.org/html/rfc5475#section-7.2
- Hash Function
- Hash Function name
- Length of input key (eliminate 0x bytes)
- Output value (length M and bitmask)
- Hash Selection Range, as a list of non-overlapping
intervals [start value, end value] where value is in
[0,2^M-1]
- Additional parameters are dependent on specific Hash
Function (e.g., hash input bits (seed))
=> output value length and bitmask seem to correspond to the output
range defined by hashOutputRangeMin and hashOutputRangeMax
Thanks,
Gerhard