Bluetooth MTU vs MPS: Key Differences & Optimization
Advertisement
To optimize your data throughput, you need to understand how the Bluetooth Logical Link Control and Adaptation Protocol (L2CAP) handles data. Specifically, you need to understand two critical parameters viz. MTU (Maximum Transmission Unit) and MPS (Maximum PDU Payload Size).
While they sound similar, they serve entirely different purposes in the Bluetooth protocol stack. Here is exactly how they work, how they differ and how you can use them to optimize your application.
What is MTU (Maximum Transmission Unit)?
In the Bluetooth specification, MTU refers to the maximum size of a Service Data Unit (SDU) that the upper layer application can accept.
Think of the MTU as the maximum size of the complete “box” of data your application wants to hand off to the Bluetooth stack, or the maximum size of the box it is willing to receive from the remote device.
Key facts of MTU:
- It is Asymmetric and Informational: MTU isn’t strictly negotiated. Instead, each device independently declares the maximum MTU it can receive.
- Minimum Requirements: All Bluetooth Low Energy (LE) implementations must support a minimum MTU of 23 bytes (octets), while Basic Rate/Enhanced Data Rate (BR/EDR) must support at least 48 bytes.
- Exceeding the Limit: If a device attempts to send an SDU that is larger than the receiver’s declared MTU, the receiver will abruptly disconnect the channel.
What is MPS (Maximum PDU Payload Size)?
MPS operates one layer deeper. It defines the maximum payload size of a Protocol Data Unit (PDU) that the L2CAP layer is capable of accepting.
If the MTU is the complete “box” of data from the application, the MPS determines the size of the “shipping envelopes” that L2CAP uses to actually send that data over the air.
Key facts of MPS:
- Segmentation: If your application tries to send a packet (SDU) that is larger than the MPS, L2CAP performs a process called Segmentation and Reassembly (SAR). It chops the large SDU into smaller, MPS sized PDU segments, transmits them and the receiving device stitches them back together.
- Limits: Like MTU, the absolute minimum MPS for LE connections is 23 bytes, but it can theoretically be configured up to 65,533 bytes.
- Basic Mode Rule: If your connection is using Basic L2CAP mode (where segmentation is not used), the MTU and MPS are forced to be the exact same value.
How MTU and MPS Work Together (Segmentation)
To visualize how these two parameters interact, imagine you want to send a 500 byte data payload from Device A to Device B.
- Device B has told Device A: “My MTU is 600 bytes, and my MPS is 200 bytes.”
- Because your 500-byte payload is smaller than Device B’s 600-byte MTU, the application layer accepts the data.
- However, the data must pass through the L2CAP layer, which enforces the 200-byte MPS limit.
- The L2CAP layer breaks your 500-byte SDU into three separate PDUs:
- PDU 1: 200 bytes of payload (marked as a “Start” segment)
- PDU 2: 200 bytes of payload (marked as a “Continuation” segment)
- PDU 3: 100 bytes of payload (marked as an “End” segment)
- Device B receives the three PDUs, reassembles them back into the 500 byte SDU, and hands it to the upper layer application.
Summary: The Major Differences
Following table summarize differences between MTU and MPS used in bluetooth standard.
| Feature | MTU (Maximum Transmission Unit) | MPS (Maximum PDU Payload Size) |
|---|---|---|
| Associated Data Type | SDU (Service Data Unit) | PDU (Protocol Data Unit) |
| Protocol Layer | Upper Layer / Application level | L2CAP Layer / Protocol level |
| What it represents | The maximum size of the complete data payload the app can handle. | The maximum size of the individual chunks of data sent over the air. |
| Trigger for Segmentation | N/A (If data > MTU, the channel disconnects). | If data > MPS, the L2CAP layer chops it into smaller pieces. |
| Basic L2CAP Mode | Equals the MPS. | Equals the MTU. |
How to Optimize Throughput Using MTU and MPS
If you want to maximize your data transfer speeds over Bluetooth LE, you need to minimize protocol overhead. Every time L2CAP segments an SDU into multiple PDUs, it has to attach header information to every single segment.
The Optimization Strategy:
To get the highest throughput possible, you should configure your connection so that segmentation rarely happens.
- Request a larger MTU so your application can send bigger blocks of data at once.
- Negotiate an MPS that is large enough to handle your MTU without needing to slice it into tiny pieces.
- Align these values with the underlying Link Layer capabilities (like the Data Length Extension feature in Bluetooth 4.2+) so that your L2CAP PDUs fit perfectly into the radio packets without requiring further fragmentation at the hardware level.
By understanding the difference between the application’s data limit (MTU) and the protocol’s chunk limit (MPS), you can fine tune your Bluetooth implementation for blazing fast, reliable data transfers.
References & Further Reading
- Bluetooth SIG : Bluetooth Core Specification Version 6.3, May 5, 2026.
- Bluetooth SIG : Bluetooth Core Specification change history
- Bluetooth SIG : Bluetooth Technology Overview
Continue Learning Bluetooth Basic Concepts
- What are new features in Bluetooth 6.3 Version
- Bluetooth GATT Vs. ATT Vs. GAP : Key Comparison
- Bluetooth Service Vs. Characteristic Vs. Descriptor
- Bluetooth Central Vs. Peripheral : Key Differences
- Bluetooth pairing Vs. Bonding Phase
- Bluetooth Notifications Vs. Indications
- Bluetooth Channel Sounding Vs. RSSI
- Bluetooth Direction Finding Methods : AoA Vs. AoD
- Bluetooth HID Over GATT
- Bluetooth IRK Vs. LTK : Key Differences
- Bluetooth PHY : 1M Vs. 2M Vs. Coded Differences
- What is ATT MTU Size in Bluetooth
- Bluetooth Ranging : Phase Based Vs. RTT Based
- Bluetooth Error Codes Guide : Meanings, Causes & Fixes
- Bluetooth L2CAP and HCI : Key Differences
Continue Learning Bluetooth Technology
- Bluetooth Basics Tutorial
- Bluetooth Low Energy (BLE) Basics Tutorial
- Bluetooth Protocol Stack & Device State Diagram
- Bluetooth Physical Layer Modules
- Bluetooth MAC Layer Overview
- Bluetooth Channel Frequency List
- Bluetooth Network Security
- Bluetooth Low Energy (BLE) Connection Establishment Procedure
- Bluetooth Profiles: HFP, HSP, A2DP, AVRCP, PBAP & MAP
- Bluetooth Mesh Node Types & Protocol Stack Layer Functions
Compare Bluetooth With Other Technologies
- Bluetooth V5.0 Vs. V5.1 Vs. V5.2 Vs. V5.3
- Bluetooth Vs BLE : Key Differences
- Bluetooth Vs UWB Technology : Key Differences
- Bluetooth Vs Wi-Fi Vs UWB
- Comparison Between All Bluetooth Versions from 1.0 to 6.3
Explore Deep Insight Bluetooth Technology
- Bluetooth Error Recovery : ARQ, ACK, NAK
- Bluetooth Bit Stream Processing: HEC, CRC, FEC & More
- Bluetooth Routing: How Devices Know a Packet is for Them
- Bluetooth Flow Control: Understanding GO & STOP Bits
- Bluetooth Power Management: Sniff, Hold & Active Modes
- Bluetooth Packets Decoded: Structure, Types & Routing
- Decoding Bluetooth Packet Types: Control, ACL, SCO & eSCO
