Android BLE MTU大小,有人嗅过吗?

Android BLE MTU大小,有人嗅过吗?,android,bluetooth-lowenergy,Android,Bluetooth Lowenergy,对智能手机上的BLE参数进行跨平台研究 我有iOS设备,因此嗅探到了iOS的ATT_Exchange_MTU_Req/Rsp 有人对Android做过同样的操作并得到了值吗?我在嗅探时无法获得MTU交换数据包。但我在代码中发现: #定义GATT_最大值_MTU_尺寸517 我在嗅探时无法获取MTU交换数据包。但我在代码中发现: #定义GATT_最大值_MTU_尺寸517 ATT_MTU定义为客户端和服务器之间发送的任何数据包的最大大小 较高的层规范定义了默认的ATT_MTU值 如果客户机或服务器

对智能手机上的BLE参数进行跨平台研究

我有iOS设备,因此嗅探到了iOS的ATT_Exchange_MTU_Req/Rsp


有人对Android做过同样的操作并得到了值吗?

我在嗅探时无法获得MTU交换数据包。但我在代码中发现:

#定义GATT_最大值_MTU_尺寸517


我在嗅探时无法获取MTU交换数据包。但我在代码中发现:

#定义GATT_最大值_MTU_尺寸517


ATT_MTU定义为客户端和服务器之间发送的任何数据包的最大大小

较高的层规范定义了默认的ATT_MTU值

如果客户机或服务器的MTU值不是默认值,则客户机和服务器交换可使用exchange MTU请求和响应PDU接收的最大数据包大小。然后,这两个设备将这些交换值中的最小值用于所有其他设备
通信。

ATT_MTU定义为客户端和服务器之间发送的任何数据包的最大大小

较高的层规范定义了默认的ATT_MTU值

如果客户机或服务器的MTU值不是默认值,则客户机和服务器交换可使用exchange MTU请求和响应PDU接收的最大数据包大小。然后,这两个设备将这些交换值中的最小值用于所有其他设备
通信。

传输数据的MTU大小始终随外围设备的容量而变化。您始终可以请求增加MTU大小并传输更多字节


默认MTU为23字节

传输数据的MTU大小始终随外围设备的容量而变化。您始终可以请求增加MTU大小并传输更多字节


默认MTU为23字节

非常有趣,谢谢-那么在嗅探时是否没有使用ATT_Exchange_MTU_Req(如果没有的话),我不知道android如何使用MTU?目前,在尝试连接两个android设备(一个外围设备,另一个中央设备)时,我在日志中看到以下一行:
BluetoothGatt:onConfigureMTU()-Device=55:FC:8A:0C:7D:18 mtu=517 status=0
尽管我自己没有调用
requestMtu
。这意味着Android本身试图协商最大可能的ATT MTU大小,但在任何情况下,MTU请求都是由客户端发起的,无论是Android还是iOS。外围设备只接受或拒绝它,如果拒绝,双方继续使用默认大小(23,我猜)。有趣的感谢-所以没有使用ATT_交换_MTU_请求(嗅探时),如果没有,我不知道android如何使用MTU?目前在尝试连接两个android设备时(一个外围设备,另一个中央设备)我在日志中看到以下一行:
BluetoothGatt:onConfigureMTU()-Device=55:FC:8A:0C:7D:18 mtu=517 status=0
虽然我自己没有调用
requestMtu
。这意味着Android本身试图协商最大可能的ATT mtu大小,但无论如何,mtu请求都是由客户端发起的,不管是Android还是iOS。外围端只是接受或拒绝它,如果拒绝的话双方继续使用默认大小(我猜是23)。iOS上的ATT_Exchange_MTU_Req值是多少?iOS上的ATT_Exchange_MTU_Req值是多少?