1

着信 IPv6 接続を X ワーカー スレッドに委任するスレッドが 1 つあります。このスレッドでは、同じ IPv6 ソース アドレスを持つ接続は常に同じワーカー スレッドに送信する必要があります。ただし、インターネット全体からの大量の接続を考えると、すべての X ワーカー スレッドが負担しなければならない負荷の差を最小限に抑えたいと考えています (つまり、任意の大きな時間間隔で、すべてのワーカー スレッドに接続を任せる必要があります)。同数の一意の IPv6 アドレス)。

これを行う最も単純な方法は、IPv6 アドレスのすべてまたは一部を数値 N として解釈し、インデックス [N mod X] を使用してワーカー スレッドに送信することです。ただし、IP アドレスのエントロピーは低く (つまり、一部のビットは他のビットよりも頻繁に (未) 設定されるため、非常にランダムではない)、ワーカー スレッド間の負荷分散が不十分になります。

より高いエントロピーを持つキーを取得するには、アドレスに対して何らかの低コストのハッシュを実行する必要があることは明らかです。この問題の文書化された解決策はありますか? 素晴らしいランダム性をもたらす必要はなく、IPv6 アドレスで適切に機能することが知られているものだけです。

衝突の回避に関する文を削除するために編集されました (このシナリオでは、衝突は実際にはまったく問題ないため)。

4

0 に答える 0