为DDOS预防设计并行算法?

时间:2012-02-13 16:15:42

标签: algorithm data-structures parallel-processing distributed-computing

我的多核计算机正在接收数据包并在其核心之间均匀分布(排序循环)。每个核心应决定是否允许数据包通过或丢弃它,具体取决于其原始地址。

我需要找到无锁算法和数据结构来实现这一点。你能帮忙吗?

1 个答案:

答案 0 :(得分:1)

如果您乐意使用Java,或者查看Java源代码的设计,您可以选择随机密钥,然后从http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/ConcurrentHashMap.html检索队列。给定队列,如果是http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html

,您可以将数据包添加到它而不会阻塞

java.util.concurrent的大部分内容都归功于Doug Lea,他在http://gee.cs.oswego.edu/dl/concurrency-interest/index.html上有相关信息。

可能对您的特定问题有些过分,但可能会满足该领域数据结构信息的一般要求。