1. ホーム
  2. networking

[解決済み】インターネット上で最大の安全なUDPパケットサイズとは?

2022-04-06 05:59:59

質問

UDPのパケットサイズに関する記事をいくつか読みましたが、何が正しいのか結論が出ません。

多くのサービスでは、最大のUDPパケットを512バイトに制限しています(DNSなど)。

最小の MTU で、IPv4ヘッダーは20バイト、UDPヘッダーは8バイトです。 このため、ユーザーデータとして利用できるのは548バイトとなります。

パケットの断片化を起こさずに、548のサイズまでのパケットを使用することができるでしょうか? それとも、DNSの開発者が何か知っていて、512バイトに制限したのでしょうか。

548バイト以上でも大丈夫でしょうか?

どのように解決するのですか?

たしかに 典型的 IPv4ヘッダーは20バイト、UDPヘッダーは8バイトです。 しかし、IPオプションを含めると、IPヘッダのサイズは60バイトまで増加する可能性があります。 さらに、中間ノードがデータグラムを他のプロトコル(例えば IPsec (VPNなどで使われる)パケットを宛先までルーティングするためです。 そのため、もしあなたが MTU そのため、予想外のヘッダ情報にも対応できるよう、適度な余裕を持たせておくとよいでしょう。 512バイトのUDPペイロードは、一般的にそのように考えられていますが、それでも最大サイズのIPヘッダには十分なスペースが確保されていません。