Algorithm 为DDOS防御设计并行算法?

Algorithm 为DDOS防御设计并行算法?,algorithm,data-structures,parallel-processing,distributed-computing,Algorithm,Data Structures,Parallel Processing,Distributed Computing,我的多核机器正在接收数据包,并在其核心之间均匀地分配数据包(有点像循环)。每个核心应该决定是让数据包通过还是丢弃它,这完全取决于它的源地址 我需要找到无锁算法和数据结构来实现这一点。您能帮忙吗?如果您乐于使用Java,或者查看Java源代码的设计,您可以选择一个随机键,然后从中检索队列。给定队列,您可以将数据包添加到队列中,而不会阻塞它(如果它是一个队列) 大部分java.util.concurrent都归功于Doug Lea,他在网站上有关于它的信息 对于您的特定问题,可能会有过多的技巧,但可

我的多核机器正在接收数据包,并在其核心之间均匀地分配数据包(有点像循环)。每个核心应该决定是让数据包通过还是丢弃它,这完全取决于它的源地址


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

如果您乐于使用Java,或者查看Java源代码的设计,您可以选择一个随机键,然后从中检索队列。给定队列,您可以将数据包添加到队列中,而不会阻塞它(如果它是一个队列)

大部分java.util.concurrent都归功于Doug Lea,他在网站上有关于它的信息


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

如果您乐于使用Java,或者查看Java源代码的设计,您可以选择一个随机键,然后从中检索队列。给定队列,您可以将数据包添加到队列中,而不会阻塞它(如果它是一个队列)

大部分java.util.concurrent都归功于Doug Lea,他在网站上有关于它的信息


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

需要更多信息-您是否有阻止IP的列表?听起来很有趣,但我认为这个问题太广泛了。您应该为您的技术堆栈提供一些详细信息。@WeaselFox否。目的是通过阻止一小群地址,同时允许其他地址通过,来阻止来自这些地址的洪水。@home这是一个抽象问题,算法和数据结构是您感兴趣的内容。将问题改为:“我需要一个线程安全的无锁集合"? 检查.NET4中的
System.Collections.Concurrent
命名空间。如果我答对了,你问题中的所有内容都是无关紧要的。需要更多信息-你有被阻止IP的列表吗?听起来很有趣,但我觉得这个问题太广泛了。您应该为您的技术堆栈提供一些详细信息。@WeaselFox否。目的是通过阻止一小群地址,同时允许其他地址通过,来阻止来自这些地址的洪水。@home这是一个抽象问题,算法和数据结构是您感兴趣的内容。将问题改为:“我需要一个线程安全的无锁集合”?请检查.NET 4中的
System.Collections.Concurrent
命名空间。如果我没有弄错,您问题中的所有其他内容都是无关的。