サービスロケーションプロトコルの管理

ランダム待ち時間の上限の構成

トラフィックの重いネットワークや衝突率の高いネットワークでは、DA との通信が影響を受けることがあります。衝突率が高い場合、送信エージェントは、UDP データグラムを再転送する必要があります。再転送が発生しているかどうかは、snoop を使用して、SA サーバーとして slpd を実行しているホスト、および DA として slpd を実行しているホストのネットワークトラフィックを監視することにより判断できます。SA サーバーとして slpd を実行しているホストから同じサービスについて複数のサービス登録メッセージが snoop トレースに現れる場合は、衝突の問題があると考えられます。

衝突は、起動時の主要な問題となる場合があります。DA が最初に出てくると、DA は請求されていない通知を送り出し、SA はそれらの登録に応答します。SLP は、DA 通知を受け取ってから応答するまでにランダムな時間だけ、SA を待たせます。このランダムな待ち時間は、net.slp.randomWaitBound によって制御される最大値を使用して均等に分散されます。デフォルトのランダム待ち時間の上限は 1000 ミリ秒 (1 秒) です。

プロパティを構成することにより、この最大待ち時間を長くできます。たとえば、次のように構成します。


net.slp.randomWaitBound=5000

この例は、ランダム待ち時間を 5000 ミリ秒 (5 秒) に延長します。

ランダム待ち時間の上限を長くすると、DA を使用した登録において遅延が長くなるので、SA は新しく検出された DA を使用した登録をより時間をかけて完了できるので、衝突およびタイムアウトを回避することができます。