私はUDPクライアントとUDPサーバーを書いています。
2000 ~ 3000 の大きな UDP ペイロードがあります。簡単なテストをいくつか試しました。UDP クライアントにデータグラムで 2000 バイトを送信させ、tcpdump
パケットのキャプチャに使用しました。発信パケットが 1 つしかなく、UDP パケットに解析されていないことに気付きましたが、1514 バイトの IP パケットです。これは、約 500 バイトが失われていることを意味します。
すべてのペイロードを同じ UDP パケットに入れることは可能ですか (ペイロードを 2 つの部分に分割し、受信アプリケーション層でそれらを組み立てるには多少の労力がかかります)、IP に各 UDP パケットのフラグメントを複数の IP フラグメントにスタックさせることは可能ですか? . サーバー側では、IP スタックが IP フラグメントを組み立て、それらを UDP サーバーに処理します。
可能であれば、IP フラグメンテーションを有効にする方法を教えてください。