栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Android 9.0 网络架构

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android 9.0 网络架构

logcat -v time -s “EthernetTracker” “EthernetNetworkFactory” “IpClient” “ConnectivityService” “WifiStateMachine”
网卡 up 的流程:

Netd:Netd一方面接收处理内核上报的网络状态信息然后将相关指令发送给上层,另外一方面接收上层传递下来的指令执行对应的命令。Netd 的代码位于system/netd 下面。

NetworkManagementService: 1、NetdCallbackReceiver 继承 INativeDaemonConnectorCallbacks 接口去接收Netd 上报的网卡端口断开、连接状态变化等事件,并且作为发布者通过NetworkManagementEventCallback观察者模式发布出去。所有的观察者例如IPClient/EthernetTracker 都会收到网络端口的变化进行状态更新。

EthernetTracker:1、通过观察者模式的接口InterfaceObserver 监听NetworkManagementService网卡变化。网卡up上来后会先判断NetworkFactory 中没有 这个网卡,没有的话就会添加该网卡到网络路由中。这里会获取 hwAddress ,NetworkCapabilities、IpConfiguration(为空在创建默认)然后 在 NetworkFactory 中添加 这个网卡 interface。

EthernetNetworkFactory:NetworkFactory 相当于网络运营商,当一个网卡从netd up上来的时候就会创建一个NetworkFactory,并且注册到CS 中,它的本质是一个handler ,与CS 通过Asynchanel 通讯。

NetworkAgent:在NetworkFactory 中IPClient 中的回调如果IP 分配成功就会 被创建,实例化的时候就会注册到CS中,是网络代理。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/675942.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号