[解決済み】既存の接続がリモートホストによって強制的に切断されました。
質問
商用アプリケーションで作業していますが、メッセージとともにSocketExceptionがスローされます。
既存の接続はリモートホストによって強制的に閉じられました。
これは、クライアントとサーバー間のソケット接続で発生します。接続は正常で、大量のデータが転送されていますが、突然切断されます。
このような現象を見たことがある方はいらっしゃいますか?原因は何でしょうか?私はいくつかの原因を推測することができますが、また、原因を解決するために、このコードにさらに追加する方法はありますか?
ご意見・ご感想をお待ちしております。
... 最新の ...
私はいくつかの.NETトレースからいくつかのログを持っています。
System.Net.Sockets Verbose: 0 : [8188] Socket#30180123::Send() DateTime=2010-04-07T20:49:48.6317500Z
System.Net.Sockets Error: 0 : [8188] Exception in the Socket#30180123::Send - An existing connection was forcibly closed by the remote host DateTime=2010-04-07T20:49:48.6317500Z
System.Net.Sockets Verbose: 0 : [8188] Exiting Socket#30180123::Send() -> 0#0
と書いてあることを、私が見たログの他の部分から判断すると
0#0
は、長さ0バイトのパケットを送信していることを意味します。しかし、それは実際には何を意味するのでしょうか?
2つの可能性のどちらかが発生しており、どちらかわからない。
-
接続は閉じられるが、データはソケットに書き込まれるため、上記のような例外が発生します。そのため
0#0
は、ソケットがすでに閉じられているため、何も送信されなかったことを意味します。 -
接続はまだ開いていて、0バイトのパケットを送信中(つまりコードにバグがある)であり
0#0
は、0バイトのパケットを送信しようとしていることを意味します。
どうでしょう?結論は出ないかもしれませんが、もしかしたら、このようなことを見たことがある人がいるかもしれませんね。
解決方法は?
これは一般的に、リモート側が接続を閉じたことを意味します(通常、TCP/IPの
RST
パケットを送信します)。サードパーティーのアプリケーションを使用している場合、考えられる原因は以下の通りです。
- アプリケーションに不正なデータを送信している(HTTPサーバーへのHTTPSリクエストの送信などが考えられる)。
- クライアントとサーバー間のネットワークリンクが何らかの理由でダウンしている
- サードパーティアプリケーションのバグを誘発し、クラッシュさせた。
- サードパーティアプリケーションがシステムリソースを使い果たした
最初のケースに該当する可能性が高いです。
を起動させることができます。 ワイヤーシャーク を使用して、ワイヤ上で何が起こっているかを正確に確認し、問題を絞り込むことができます。
より具体的な情報がない場合、ここにいる誰も本当の意味であなたを助けることはできないでしょう。
関連
-
[解決済み】「未割り当てのローカル変数を使用」とはどういう意味ですか?
-
[解決済み】指定されたキャストが有効でない?
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み】Ajax処理で「無効なJSONプリミティブ」と表示される件
-
[解決済み] 'IEnumerable<SelectListItem>' 型の ViewData アイテムで、キーが国であるものは存在しない。
-
[解決済み] UnityでOnCollisionEnterが呼ばれない
-
[解決済み】Swashbuckle/Swagger + ASP.Net Core: "Failed to load API definition" (API定義の読み込みに失敗しました
-
[解決済み】IntPtrとは一体何なのか?
-
[解決済み】Unityでゲームオブジェクトのすべての子をループスルーして破壊する方法?
-
[解決済み】画像のペイントにTextureBrushを使用する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】C#で四捨五入する方法
-
[解決済み】文字列が有効な DateTime " format dd/MM/yyyy " として認識されなかった。
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み】取り消せないメンバはメソッドのように使えない?
-
[解決済み】なぜこのコードはInvalidOperationExceptionを投げるのですか?
-
[解決済み】Socket.Selectがエラー "An operation was attempted on something that is not a socket" を返す。
-
[解決済み】Visual Studio: 操作を完了できませんでした。パラメータが正しくありません
-
[解決済み】「namespace」なのに「type」のように使われる。
-
[解決済み】データが存在しないのに読み込もうとする試みが無効である
-
[解決済み] C# ホストマシンのソフトウェアによって確立された接続が中止された