アプリ版:「スタンプのみでお礼する」機能のリリースについて

通信異常が発生するのでwiresharkでパケットモニタするとRetransmissionが発生していました。
そのデータには肯定応答コマンドとモニタコマンドが重複して送信されていました。単純に考えるとRetransmissionのパケットデータはそのままKEEPされてモニタコマンドのパケットとは区別されるような気がするんですが・・・。
そこでTCPが再送状態にあるならば上位からは新たなコマンドを出さないように修正したいと考えていますがいろいろ調べてもステータス取得出来るような物が見つかりません。
ご教授願います。

A 回答 (1件)

本当にTCPの再送が原因ですか?


TCPを使用するアプリケーションからは再送は見えない(気にしなくていい)ハズですが……
# TCPはそういうプロトコル…かと。

再送が繰り返された為にアプリ側でタイムアウト処理が走った…とか、そういうことはありませんか?
# または、再送繰り返している間にエラーで切断されてしまったとか。

この回答への補足

SENDの送信サイズをByte数にお応じて変更する方法で逃げることにしました

補足日時:2011/08/04 08:00
    • good
    • 0
この回答へのお礼

Wr5さん遅くなってすみません。
TCPのシーケンス番号等が同じ再送になっています。
アプリ側は、モニタコマンド要求ー>ドライバがコマンド送信ー>受信解釈ー>肯定応答ー>アプリに戻る
ような流れでネット上に他のPCからのUDP問い合わせ等が入るとたまに再送が発生します。
相手のウィンドウサイズ750バイトとが小さいからなのでしょうか?

お礼日時:2011/07/28 21:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!