私のマルチコアマシンはパケットを受信しており、そのコアの間でパケットを均等に(一種のラウンドロビン)配信しています。各コアは、発信元アドレスだけに応じてパケットを通過させるか廃棄するかを決定する必要があります。DDoS防止のための並列アルゴリズムの設計?
これを可能にするために、ロックレスアルゴリズムとデータ構造を見つける必要があります。手伝ってくれますか?
私のマルチコアマシンはパケットを受信しており、そのコアの間でパケットを均等に(一種のラウンドロビン)配信しています。各コアは、発信元アドレスだけに応じてパケットを通過させるか廃棄するかを決定する必要があります。DDoS防止のための並列アルゴリズムの設計?
これを可能にするために、ロックレスアルゴリズムとデータ構造を見つける必要があります。手伝ってくれますか?
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の多くは、情報がhttp://gee.cs.oswego.edu/dl/concurrency-interest/index.htmlのDoug Leaによるものです。
おそらく、あなたの特定の問題については過剰ですが、このエリアのデータ構造に関する情報の一般的な要求を満たすかもしれません。
詳細情報が必要です - ブロックされたipsのリストはありますか? – WeaselFox
興味深いですが、IMHOはこの質問ははるかに広すぎます。テクノロジースタックの詳細を提供する必要があります。 – home
@ WeaselFox no。小さなグループのアドレスからの洪水をブロックし、他のアドレスを通過させることを阻止することを目的としています。 – liorda