安卓系统的手机如何修改MTU值?

安卓系统的手机如何修改MTU值?,第1张

进入系统后,输入ifconfig 命令查看可用网络

2. 利用ip link set dev 网卡名称 mtu N 命令修改MTU值,注意不能超过1500

3.手机重启后,即可恢复原设置

扩展资料:

通常来说MTU越小,设备所发送包的频率越快,在一些游戏和网络软件中可以通过更改MTU获得更好的效果。MTU代表的是封装包的大小,封闭包的大小决定你发送包的发送频率。

有条件的用户可以跟根据自己的需要来调整MTU值。以ISP(电信服务商)的MTU为基准,每下级设备的MTU都最好比上级设置的略低为好。例如在ISP=>猫=>路由器=>电脑的布局中,ISP的MTU是1466,那么下级的猫可以设置成1464,再下级的路由器可以设置成1462,再下级的电脑的MTU可以设置成1460,以此类推。

MTU是指在一个协议数据单元中( Protocol Data Unit, PDU ) 有效的最大传输 Byte 。

不同的蓝牙版本最大MTU不同,例如:蓝牙4.2的最大MTU=247Byte(不一定正确,也有说是257Byte、也有说是241Byte),蓝牙5.0的最大MTU=512Byte,有效的最大MTU还需要减去协议Byte、Opcode和Handler。

蓝牙4.2:1Byte(Opcode)+2Byte(Handler)+244Byte(BATT)=247Byte(不一定正确)

蓝牙5.0:512Byte不一定正确)

Added in API level 21

在 Android 中修改MTU很简单只需要调用 BluetoothGatt#requestMtu(int MTU) 方法即可。 requestMtu(intMTU) 必须在发现蓝牙服务并建立蓝牙服务连接之后才能调用,否则 MTU 会默认为 20Byte 。如果调用成功会自定回调 BluetoothGattCallback 类中的 onMtuChanged(BluetoothGatt gatt, int mtu, int status) 方法。

注意:我看到一些文档提到在 public void onServicesDiscovered(BluetoothGatt gatt, int status) { } 方法中设置 MTU ,但是亲自尝试之后不起作用。所以在连接成功之后立即设置 MTU ,成功之后再去搜索服务。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7886672.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存