エントロピーキーがオーバーロードされたことを確認する方法は?


10

いくつかのエントロピーキーの前にegdがあり、haproxyによってすべての負荷が分散されています。そして、エントロピーのネットワークソースとしてhaproxyサービスIPを使用している多くのクライアントマシンがあります。彼らがどれほどのエントロピーを要求しているのか私にはわかりません。

エントロピーキーは、限られた量の使用可能なエントロピーを生成できます。仕様では最低約30キロビット/秒とされています。私の知る限り、エントロピーキーには、要求されている量を照会する方法がありません。EGDプロトコルは、この情報を見つけるために盗聴するのが非常に難しいようです。クライアントは可変量のエントロピーを要求でき、同じ量を返さない場合があります。

エントロピーキーから要求されている量を測定する簡単な方法を見つけた人はいますか?

いつ追加のキーが必要かを計画し、ヘイワイヤークライアントを特定できるようにしておくとよいでしょう。


エントロピーキーとハードウェアRNGですか?
Hubert Kario 2012年

@HubertKario はい。英国のSimtec Electronicsが製造しています。
James O'Gorman 2012年

回答:


4

頭に浮かぶのは、エントロピーサーバーの応答時間を測定すること(それが追いつかない場合はレイテンシが大幅に増加するはずです)/proc/sys/kernel/random/entropy_availか、エントロピーの量をプールして監視することです(私はそれegd/dev/randomハードウェアを直接ではなく使用しています)。


ekeyd-egd-linuxはハードウェアに直接アクセスしています(そしてAFAIKはこの方法でしか機能しません)。残念ながら、私は多くのクライアントにアクセスできないので、クライアントの何人が要求したエントロピーを取得していないのかわかりません。個別のキーから直接エントロピーを要求し、提案するのにかかる時間を確認できると思います。それは少なくともそれが過負荷であるかどうかについて私にいくつかのヒントを与えるはずです。
grifferz 2012年

2

のソースtarballにekeydは、ekey統計を提供するmuninプラグインがあるようです。

muninを実行していない場合でも、インフラストラクチャで使用できるものにスクリプトを推定することは可能だと思います。

私たちはどちらもデバイスとソフトウェアの作者を知っていると思うので、それらを提案する価値があるかもしれません。:-)


私の知る限り、ekeydctl statsこれはsimtecがすでに確認したものから得られるものを公開するだけであり、私が知る必要があることを教えてくれません-私はすでに彼らに尋ねました。:(私は他の人が何をしたかと思いまして。
grifferz

0

試してください:

dd if=/dev/random of=/dev/null bs=1K count=1M

完了ddすると、読み取り帯域幅が報告されるため、提供されるエントロピーの量がわかります。サーバーで(クライアントから切断された状態で)実行してエントロピー生成を測定し、クライアントで実行して、クライアントが受け取っている量を測定できます。

実行中のddプロセスをSIGUSR1シグナルで強制終了すると、I / O統計を報告するように指示されるので、プロセスが終了するまで待つ必要はありません(を参照man dd)。

また、サーバーからエントロピーが読み取られるため(例:nethogsplus netstat)、クライアントはダウンロード帯域幅の消費の増加を公開する必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.