net 源码目录与模块索引
源码根:rk3588/kernel-6.1/net/(约 1887 文件,70+ 顶层子目录)
1. 按文件量排序(Top 25)
| 文件数 | 目录 | 职责 |
|---|---|---|
| 253 | netfilter/ | iptables/nft、conntrack、NAT、ipset、ipvs |
| 135 | ipv4/ | TCP/UDP/ICMP、FIB、ARP、IPv4 netfilter |
| 107 | ipv6/ | ND、addrconf、fib6、扩展头 |
| 81 | mac80211/ | 802.11 软 MAC |
| 80 | sched/ | tc qdisc、分类器、action |
| 66 | sunrpc/ | NFS ONC RPC |
| 66 | bridge/ | Linux bridge、STP、ebtables 挂钩 |
| 66 | bluetooth/ | HCI/L2CAP/BNEP 等 |
| 57 | core/ | sock、skb、dev、rtnl、XDP、GRO |
| 55 | batman-adv/ | Mesh 路由 |
| 47 | tipc/ | 集群 IPC |
| 42 | wireless/ | cfg80211、nl80211 |
| 41 | rds/ | Reliable Datagram Sockets |
| 36 | smc/ | SMC-R |
| 35 | nfc/ | Near Field Communication |
| 34 | sctp/ | SCTP |
| 34 | dccp/ | DCCP |
| 34 | ceph/ | libceph 网络层 |
| 32 | rxrpc/ | AFS RxRPC |
| 30 | ethtool/ | ethtool ioctl/netlink |
| 29 | atm/ | ATM |
| 28 | dsa/ | Distributed Switch Architecture |
| 27 | openvswitch/ | OVS 内核 datapath |
| 25 | ieee802154/ | 802.15.4 |
| 22 | 6lowpan/ | IPv6 over 802.15.4 |
2. 根目录关键文件
| 文件 | 作用 |
|---|---|
Makefile |
子目录 obj-y / obj-$(CONFIG_*) |
Kconfig |
CONFIG_NET 及 Networking options |
socket.c |
sys_socket、sock_sendmsg 等 |
devres.c |
网络设备 devm 资源 |
compat.c |
32 位 compat socket |
sysctl_net.c |
/proc/sys/net 聚合 |
3. core/ 对象清单(Makefile)
| 对象 | 功能 |
|---|---|
| sock.o, skbuff.o | 套接字与 skb |
| dev.o | net_device 注册、收发 |
| neighbour.o | 邻居子系统 |
| rtnetlink.o | RTNETLINK 配置 |
| dst.o | 路由缓存 |
| xdp.o, gro.o | XDP、GRO |
| flow_offload.o | 硬件流卸载 |
| sock_map.o | BPF sockmap(CONFIG_BPF_SYSCALL) |
4. Rockchip 相关(net/ 内)
| 路径 | 说明 |
|---|---|
| rfkill/rfkill-wlan.c | WiFi 电源、OOB IRQ、MAC、GRF |
| rfkill/rfkill-bt.c | 蓝牙射频控制 |
| rfkill/Kconfig | CONFIG_RFKILL_RK |
| wireless/Kconfig | Thunder Boot 相关 default |
5. 与 drivers/net 分界
| 层次 | 路径 | 内容 |
|---|---|---|
| 协议 / 框架 | net/ |
协议状态机、hook、套接字 |
| 设备驱动 | drivers/net/ethernet/ |
MAC 驱动(RK: stmmac、r8169…) |
| PHY | drivers/net/phy/ |
MDIO PHY |
| 无线芯片 | drivers/net/wireless/ |
iwlwifi、brcmfmac、bcmdhd… |
数据路径:tcp_sendmsg → IP 层 → dev_queue_xmit → 驱动 ndo_start_xmit。
6. 子目录 → 既有专文(linuxDoc/net)
每个子目录大多已有 rk3588-kernel-6.1-net-<name>分析_zh.md,见 README.md 完整表。
7. 快速定位
| 问题 | 入口 |
|---|---|
| 包从网卡进内核 | 驱动 NAPI → netif_receive_skb → eth_type_trans |
| TCP 连接 | net/ipv4/tcp_*.c |
| 路由/FIB | net/ipv4/fib_*.c、net/ipv6/ip6_fib.c |
| iptables | net/netfilter/、net/ipv4/netfilter/ |
| tc 限速 | net/sched/ |
| WiFi 配置 | net/wireless/ + iw/nl80211 |
| RK WiFi 上电 | net/rfkill/rfkill-wlan.c |
正在加载留言…