【发布时间】:2011-09-25 17:54:18
【问题描述】:
我想创建一个 32 位的哈希值。我有 16 字节的源和目标 ipv6 地址以及 2 字节的源和目标端口号。
32 位输出 = (Src IP,Dst Ip,Src Port,Dest Port)
如果散列函数沿着 32 位空间很好地分布实体会更好。我想将结果用作索引。
重新开始
【问题讨论】:
-
是否需要高性能?
-
为什么不使用 MD5 或 SHA-1 并删除不需要的位?虽然,我必须说,这会浪费很多信息。或者您还有其他要求,例如速度或内存消耗?
-
@RedX - 见 ^^ 是高性能要求 :)
-
是的,高性能很重要。这将用于网络应用程序。简单也很重要。我不希望它是一个复杂的算法/代码。它不必具有完美的分布。
标签: c++ c networking network-programming ipv6