問題
ポートの枯渇に関する症状
ポートの枯渇については、その兆候となりうる方法が多いため、原因を特定することが難しい場合があります。次のリストで、ポートの枯渇に関する一般的な症状について説明します。
-
サーバーへの接続に失敗した。たとえば、次のエラーが表示される場合があります。
Unable to connect to the remote server
System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted.
- サーバーへの接続がタイム アウトになった。
- パフォーマンスが予想以下に低下する。
- サーバーの応答が停止する。
ポートの枯渇が問題になっているかどうかの判別
どの症状がポートの枯渇の原因となっているかを判別するには、使用中のダイナミック ポートの数を決定する必要があります。これを決定するには、まずダイナミック ポートの範囲を特定してから現在使用しているポートを表示します。
ダイナミック ポートの範囲の特定
管理者としてコマンド プロンプトを開き、次のコマンドを入力してダイナミック ポートの範囲を決定します。
netsh int ipv4 show dynamicportrange tcp
または
netsh int ipv6 show dynamicportrange tcp
コマンドに、最初のダイナミック ポートのポート番号 (開始ポート) とポートの数が表示されます。
ポートの数を開始ポートに追加して、ダイナミック ポートの範囲を決定します。たとえば、開始ポートが 60000、ポートの数が 5000 の場合、範囲は 60000 ~ 65000 となります。
netsh コマンドの詳細については、Microsoft TechNet の「Netsh Command Reference (Netsh コマンド リファレンス)」を参照してください。
現在使用中のポートの表示
次のコマンドを実行して、現在使用しているポートを表示します。
netstat –n
ヒント: ファイルにコマンドの出力を送信するには、次のコマンドを入力します。
netstat –n > out.txt
現在使用しているポートとダイナミック ポートの範囲を比較します。大部分のポートまたはすべてのポートが使用中の場合、Tableau Server でポートの枯渇が発生していると言えます。netstat コマンドの出力の詳細については、Microsoft サポートの Web サイトで「TCP Connection States and Netstat Output (TCP 接続の状態と Netstat 出力)」を参照してください。
次の画像には、ESTABLISHED 状態および TIME_WAIT 状態のポートが表示されています。これらはアクティブな接続で使用中か、または再利用するシステムにまだリリースされていません。ダイナミック ポートの範囲全体と以下の画像が一致している場合は、Tableau Server がポートの枯渇状態と言えます。