内核网络栈笔记
¶
内核版本:
v5.19
#240730 IP_TRANSPARENT 和策略路由
bind
accept
#240725 PMTU
DF 和 ICMP Packet Too Big
PMTU 存在内核中什么地方
利用 PMTU 实现动态 MTU
#240119 TSO & GSO
概述
TCP/IP 层
网络设备子系统层
#220923 路由
功能
到底两个还是一个路由表
路由 tracing
路由表的存储数据结构 LPC-trie
路由缓存
#220919 配置
数组的指定初始化 Designated Initializers
网络相关的配置都存在哪
#220915 UDP 隧道
收包处理路径
解包
GRO 没起作用?
外层 checksum 速算法与 LCO
TSO/GSO
各种隧道类型
发包处理路径
#220901 socket 和 sock
数据结构
构建一个 socket 的过程
从 socket 中接收数据
#220827 接收数据 RX | 协议栈
RPS 和 RFS
__netif_receive_skb_list_core: 往各种协议层投送包
ptype_* 网络层处理函数
奇怪的 pt_prev
L3 网络层
L4 传输层
网络栈的上下两部分
Netfilter 图中链路层的 Hook 哪去了?
#220824 接收数据 RX | GRO
INDIRECT_CALL_* 宏的作用是什么
从 napi_gro_receive 到 netif_receive_skb
#220817 接收数据 RX | 从网卡收到包到 net_rx_action
常见的几种 intel 网卡
收包过程
网卡中断处理程序
开始收包
各种处理函数、poll 函数都是怎么来的
MSI-X 中断是个什么东西
#220810 sk_buff 结构体及其基本操作
这个结构是什么干什么用的
如何使用 sk_buff 构建网络包
线性 skb 和非线性 skb
三个长度字段
skb_clone、skb_copy 复制 skb 的差别
skb_realloc_headroom 不会释放原来的 skb
This Page
Show Source
Quick search