14. データグラムサイズ
14. データグラムサイズ
UDPデータグラムには、1つ以上のQUICパケットを含めることができます。データグラムサイズとは、QUICパケットを運ぶ単一のUDPデータグラムの合計UDPペイロードサイズを指します。データグラムサイズには、1つ以上のQUICパケットヘッダーと保護されたペイロードが含まれますが、UDPまたはIPヘッダーは含まれません。
最大データグラムサイズは、単一のUDPデータグラムを使用してネットワークパス上で送信できるUDPペイロードの最大サイズとして定義されます。QUICは、最大データグラムサイズよりも大きいデータグラムを送信してはなりません (MUST NOT)。
14.1 初期データグラムサイズ
クライアントは、Initialパケットを運ぶすべてのUDPデータグラムのペイロードを少なくとも1200バイトに拡張しなければなりません (MUST)。このサイズのUDPデータグラムを送信することで、ネットワークパスが双方向で妥当なPath Maximum Transmission Unit (PMTU) をサポートすることが保証されます。これはまた、未検証のクライアントアドレスへのサーバー応答によって引き起こされる増幅攻撃の振幅を減らすのに役立ちます; セクション 8 を参照してください。
14.2 パス最大伝送ユニット
PMTUは、IPヘッダー、UDPヘッダー、UDPペイロードを含むIPパケット全体の最大サイズです。UDPペイロードには、1つ以上のQUICパケットヘッダーと保護されたペイロードが含まれます。
データグラムで送信されるすべてのQUICパケットは、最大データグラムサイズ内に収まらなければなりません (MUST)。QUICパケットが最大データグラムサイズに収まらない場合、別のデータグラムで送信しなければなりません (MUST)。
14.2.1 PMTUDによるICMPメッセージの処理
実装は、パケットが大きすぎることを示すICMPメッセージ (PTB) [RFC1191][RFC8201] を処理すべきです (SHOULD)。
14.3 データグラムパケット化レイヤーPMTU発見
データグラムパケット化レイヤーPMTU発見 (DPLPMTUD) [RFC8899] は、PMTUプローブで運ばれるQUICパケットの損失または確認応答の追跡に依存します。
14.3.1 DPLPMTUDと初期接続性
DPLPMTUDの観点から、QUICは確認応答されたパケット化レイヤー (PL) です。したがって、QUICセンダーは、QUIC接続が確立されるとDPLPMTUD BASEステート ([RFC8899] のセクション 5.2) に入ることができます。
14.3.2 DPLPMTUDによるネットワークパスの検証
QUICは確認応答されたPLであるため、QUIC確認応答は、特定のサイズのパケットが正常に受信されたことの確認として使用できます。
14.3.3 DPLPMTUDによるICMPメッセージの処理
DPLPMTUDを使用するエンドポイントは、パス上で送信できるUDPペイロードの最大サイズの知識を必要とします。
14.4 QUIC PMTUプローブの送信
PMTUプローブはACK要求パケットです。エンドポイントは、少なくともそのサイズのPMTUプローブを使用することで、パスが特定のPMTUをサポートできることを検証します。
14.4.1 ソース接続IDを含むPMTUプローブ
サーバーの優先アドレス (セクション 9.6) または新しいパスへの接続移行 (セクション 9) に依存するエンドポイントは、これらのパス上で少なくともPMTUサイズのパケットが送信可能であることを確認すべきです (SHOULD)。