0

私のアプリケーションがクライアントとして機能し、サーバーにトランザクションを送信しているクライアントサーバーアプリケーションで作業しています。私の側からのこの通信では、4443 バイのトランザクションを一度に送信していますが、サーバー側では、このトランザクションの詳細をチャンクで受け取ります。

Wireshark の助けを借りて自分の側で TCP ログを確認したところ、自分の側からもトランザクションがチャンクでサーバー側に送信されていることがわかりました。ソケット パケットのバッファ サイズを 8092 バイトに設定しましたが、まだこの問題が存在します。そのため、アプリケーションから完全なデータを 1 回のストロークで送信しているため、ネットワークでこのパケットがチャンクになる理由は何でしょうか。

参照用に Ethereal ログ ファイルを見つけてください

4

1 に答える 1

2

これは、基盤となるネットワークのプロパティである最大転送ユニットに依存します。通常、イーサネットネットワークの場合は1492バイトまたは1500バイトです。ストリーミングプロトコル(TCP)を使用するため、パケットが到着するとすぐにデータチャンクを取得します。ソケットではなく、アプリケーションがデータチャンクを整理します。

于 2013-02-11T08:43:30.377 に答える