0
未確認のデータバッファ(送信側のバッファ)をTCPに保持する最善の方法は何ですか?送信者のバッファ内の未確認データのTCP表現
私はデータ自体を保持し、パケット(ヘッダ+データ)を保持することを考えていますか?
パケットを保持するのではなくデータバイトだけを保持すれば、パケットの再送は難しいようです。
言語:C
未確認のデータバッファ(送信側のバッファ)をTCPに保持する最善の方法は何ですか?送信者のバッファ内の未確認データのTCP表現
私はデータ自体を保持し、パケット(ヘッダ+データ)を保持することを考えていますか?
パケットを保持するのではなくデータバイトだけを保持すれば、パケットの再送は難しいようです。
言語:C
パケット境界はTCPに無意味である:それは認められるべきパケットのデータの半分が可能です(によるフラグメンテーションに言う)、その後、あなたは残りの半分を再送信する必要があります。
答えは、パケットではなく生データを保持することです。あなたが求めているはずの真の質問は、どのようなデータが承認されたかを私はどのように知るのですか?ウィンドウ内のデータの各バイトごとにビットマスクが必要であり、確認済みのデータを1に、残りを0にマークすることができます。ウィンドウの先頭から連続したデータブロックが確認されると、その部分スライドさせることができます。
独自のTCP実装を作成していますか?野心的な...そしてクール! –
それはネットワークコースの割り当てです。また、実際のTCPほど複雑ではありません。すべての最適化や処理が行われています。 – Asterisk