Linux内核(含各种驱动)
Linux Libraries(c或c++ 共享库/动态库)
Framework(Java)
Java Applicant
1)Netd接收并处理来自Framework层NetworkManagementService或NsdService的命令
2)Netd进程 由init进程的init.rc配置项启动
创建三个TCP监听socket,处理客户端命令
Netd: CommandListener、、
Dnsproxyd :DnsProxyListener
Mdns :MDnsSdListener
NetlinkManager:接收并处理来自Kernel的UEvent消息。这些消息经
NetlinkManager解析后将借助它的Broadcaster(NetlinkManager设置的CommandListener))
发送给Framework层的NetworkManagementService
NetlinkManager:
Start函数:注册三个用于接收UEvent事件的socket
NETLINK_KOBJECT_UEVENT:代表kobject事件
NETLINK_ROUTE:代表Kernel中routing或link改变时对应的消息
NETLINK_NFLOG:和2.3.6节介绍的带宽控制有关
·