本文主要是介绍【笔记】Android MTU 知识及常见问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
需求背景
运营商对MTU配置有需求。比如针对不同类型的APN或者是注册网络环境的不同存在需求差异。
模块功能知识
- 不配置时,默认MTU为1500(Default MTU size 1500 bytes)
- 测试命令:ping -s
frameworks/opt/telephony 客制化MTU,最终在packages/modules/Connectivity 模块会调用MTU配置
LinkProperties.java - OpenGrok cross reference for /packages/modules/Connectivity/framework/src/android/net/LinkProperties.java
解决方案
frameworks/opt/telephony 客制化MTU
参考资料
MTK平台
- 根据MTK CASE[FAQ25498] 介绍,客制化MTU的时候,interface MUT和route MTU要保持一致。
- MTK 平台 Android R :
- 模块:vendor/mediatek/proprietary/frameworks/opt/telephony/
- 功能代码:src/java/com/mediatek/internal/telephony/dataconnection/MtkDataConnection.java
//module:vendor/mediatek/proprietary/frameworks/opt/telephony
//com/mediatek/internal/telephony/dataconnection/MtkDataConnection.java@Overrideprotected void checkSetMtu(ApnSetting apn, LinkProperties lp) {//添加自定义的接口定制,符合条件的话,后面的流程都不用执行了if (opSetMtu(apn, lp)) {return;}if (lp.getMtu() != PhoneConstants.UNSET_MTU) {if (DBG) log("MTU set by call response to: " + lp.getMtu());return;}//MTK 提供了多种配置方法 /// M: check if EM set MTU
这篇关于【笔记】Android MTU 知识及常见问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!