我想创建一个 32 位的哈希值。我有 16 字节的源和目标 ipv6 地址以及 2 字节的源和目标端口号。
32 位输出 = (Src IP,Dst Ip,Src Port,Dest Port)
如果散列函数能很好地沿着 32 位空间分布实体,那就更好了。我想将结果用作索引。
复习
最佳答案
另一个,可能有用的引用:
General Purpose Hash Function Algorithms
请注意,很难制作无碰撞保证的哈希函数(相同哈希码中没有不同的输入结果)。这个问题有很多解决方案,最简单的一种是开放寻址。
关于c++ - 需要一个散列函数来从 ipv6 16 字节地址和 TCP 2 字节端口号中创建 32 位值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6531147/