MTU に基づいた最大パケットサイズ - KBA203312 - Community Translated (JA)
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
Community Translated by HiOm_1802421 Version: **
Translation - English: Maximum Packet Size According to MTU – KBA203312
質問:
MTUに基づいた最大パケットサイズは?
回答:
最大伝送単位(MTU)は、上位層エンティティが受け入れられる、オクテット単位のペイロードデータの最大サイズです。この値は、GATTクライアントからのMTU交換要求に応答するために使用されます。サーバがMTUサイズ Server_MTUを使用し、クライアントがMTUサイズ Client_MTUを使用する場合、交渉されたMTUはServer_MTUとClient_MTUの最小値と等しくなります。Cypress BLE接続のネゴシエートされたMTUサイズの有効範囲は、23から512バイトです。
ハンドル値の通知(ノティフィケーション)と通告(インジケーション):
サーバは、属性値の通知をいつでも送信できます。同様に、サーバは属性値の通告を送信できます。通知と通告のフォーマットを以下に示します。1バイトはオペコード用、2バイトはハンドル用、残りバイトはデータ用です。従って、BLE通知のインフォメーションペイロードの最大サイズは、ATT_MTU - 3バイトです。23のMTUサイズを使用している場合、データの最大サイズは20です。属性値が(ATT_MTU)サイズより長い場合、この属性値の最初の(ATT_MTU -3)バイトのみ通知または通告で送信できます。
オペコード (1バイト) | ハンドル (2バイト) | 値 (1からATT_MTU - 3) |
属性値の読み出し:
1. 読み出し要求
これは、属性の値を読み出し、その値を「読み取り応答」で返すようサーバへ要求するために使用されます。フォーマットは次の通りです。
オペコード (1バイト) | 属性ハンドル (2バイト) |
長い属性値を取得するには、クライアントは Blob 読み出し要求を使用する必要があります。
2. 読み出し応答
これは、「読み出し要求」への返信として送信され、読み出された属性の値が含まれます。
オペコード (1バイト) | 属性値 (0からATT_MTU -1) |
属性値が(ATT_MTU -1)より長い場合、最初の(ATT_MTU -1) オクテットがこの応答に含まれます。
属性値の書き込み:
1. 書き込み要求
これは、属性の値を書き込むようサーバへ要求し、これが「書き込み応答」で達成されたことを確認するために使用されます。
フォーマットは次の通りです。属性値フィールドは属性に書き込まれる値です。
オペコード (1バイト) | ハンドル (2バイト) | 属性値 (1からATT_MTU - 3) |
2. 書き込み応答
これは、有効な「書き込み要求」への返信として送信され、属性が正常に書き込まれたことを確認します。書き込み応答のフォーマットは以下です。「書き込み応答」は、属性値が書き込まれた後に送信されます。
属性オペコード (1バイト) |
3. 書き込み命令
これは、属性の値を通常はコントロールポイント属性に書き込むようサーバへ要求するために使用されます。フォーマットは次の通りです。
オペコード (1バイト) | ハンドル (2バイト) | 属性値 (1からATT_MTU - 3) |