
linux网络子系统
whenloce
这个作者很懒,什么都没留下…
展开
-
linux网络子系统分析(三)—— 设备无关层
目录一、概述二、数据抽象和接口2.1 net_device2.2 API及说明2.2.1 net_device分配2.2.2 net_device 注册2.2.3 端口状态管理2.3 总结2.3.1 设备状态变迁2.3.2 发送和接收队列的建立2.3.3 通知链三、从qdisc到设备发送四、报文的接收流程4.1 NAPI4.2 netif...原创 2019-02-25 15:59:25 · 1865 阅读 · 0 评论 -
linux网络子系统分析(一)——协议栈分层实现综述
目录一、概述二、Linux网络子系统的分层2.1 为何要分层2.2 协议无关接口2.3 网络协议层2.4 设备无关接口2.5 设备层三、参考一、概述开篇,总结一下对linux协议栈的理解,备忘。关于符号约定,代码路径使用[]包含,结构体使用结构体定义名称+{}表示二、Linux网络子系统的分层2.1 为何要分层linux网络子系统实现需要:...原创 2019-02-18 11:32:40 · 2600 阅读 · 0 评论 -
linux网络子系统分析(二)—— 协议栈分层框架的建立
目录一、综述二、INET的初始化2.1 INET接口注册2.2 抽象实体的建立2.3 代码细节分析2.3.1 socket参数三、其他协议3.1PF_PACKET3.2 PF_NETLINK3.3 PF_UNIX四、参考一、综述在上一篇中,主要分析了linux网络协议栈层次划分,列举了层与层之间的主要接口,本文结合实际代码和数据结构进行进一步说...原创 2019-02-24 22:32:12 · 837 阅读 · 0 评论 -
linux网络子系统分析(五)——netfilter
目录一、概述二、netfilter2.1 结构2.2 数据抽象2.2.1 table的表示2.2.2 nf_hook_ops2.3 接口2.4 实现2.4.1 初始化2.4.2 table的注册2.4.2 处理流程一、概述二、netfilter2.1 结构第一个层次时table,有四个分别时filter,nat,mangle,r...原创 2019-03-17 16:00:10 · 2487 阅读 · 1 评论 -
linux网络子系统分析(三)—— INET连接建立API分析之bind & listen
目录一、概述二、bind2.1TCPbind2.1.2 UDPbind2.1.3 bind tips2.2 listen一、概述前面分析了socket流程,这里继续分析inet连接建立的其他socket API二、bindbind函数声明如下:int bind(int sockfd, const struct sockaddr *addr,soc...原创 2019-07-21 14:36:34 · 1154 阅读 · 0 评论 -
linux网络子系统分析(四)—— INET连接建立API分析之connect/accept
目录一、概述二、connect2.1 connect流程2.1.1 路由查找2.1.2connect端口分配2.1.3 再次查找路由2.1.4 初始化seq2.1.5 构造并发送SYN三、三次握手主要流程一、概述主要关注流程,其他如滑动窗口变化等后续文章统一分析。二、connectconnect的函数原型是:int connect(int ...原创 2019-07-21 15:11:42 · 1077 阅读 · 0 评论