Linux netfilter 学习笔记 之十 ip层netfilter的连接跟踪模块 学习小结
2014-06-29 21:31
501 查看
对于linux代码,如果说只是为了理解连接跟踪模块的工作原理,总感觉是少点东西的,还需要分析其编码思想。
下面就分析一下连接跟踪模块的一些编程理解
1. 使用链表的方式将期望连接跟踪项、连接跟踪项连接在一起,且对于连接跟踪项来说,对于未被确认的连接跟踪项,专门放置在一个链表中而已被确认的连接跟踪项放置在确认连接跟踪表中
2.需要维护连接跟踪项的状态,即需要设计好连接跟踪项的状态机机制
3.因为连接跟踪项是需要占用内存的,那肯定要有一个垃圾回收机制,既要有异步垃圾回收,也要有同步垃圾回收,还要考虑好什么时候更新异步垃圾回收对应的超时定时器等
功能。
在内核模块中链表被大量的应用,作为阅读代码的基础,首先需要理解链表原理以及内核中的实现机制。而在网络模块中,一般都要涉及到状态机的设计以及垃圾回收机制等(邻居子系统中也使用的状态机以及垃圾回收机制,而CAM表同样设计垃圾回收机制,所以当我们设计网络相关模块时,一定要考虑垃圾回收机制等)。
下面就分析一下连接跟踪模块的一些编程理解
1. 使用链表的方式将期望连接跟踪项、连接跟踪项连接在一起,且对于连接跟踪项来说,对于未被确认的连接跟踪项,专门放置在一个链表中而已被确认的连接跟踪项放置在确认连接跟踪表中
2.需要维护连接跟踪项的状态,即需要设计好连接跟踪项的状态机机制
3.因为连接跟踪项是需要占用内存的,那肯定要有一个垃圾回收机制,既要有异步垃圾回收,也要有同步垃圾回收,还要考虑好什么时候更新异步垃圾回收对应的超时定时器等
功能。
在内核模块中链表被大量的应用,作为阅读代码的基础,首先需要理解链表原理以及内核中的实现机制。而在网络模块中,一般都要涉及到状态机的设计以及垃圾回收机制等(邻居子系统中也使用的状态机以及垃圾回收机制,而CAM表同样设计垃圾回收机制,所以当我们设计网络相关模块时,一定要考虑垃圾回收机制等)。
相关文章推荐
- Linux netfilter 学习笔记 之八 ip层netfilter的连接跟踪模块初始化
- Linux netfilter 学习笔记 之七 ip层netfilter的连接跟踪模块的概念及相关的数据结构分析
- Linux netfilter 学习笔记 之九 ip层netfilter的连接跟踪模块代码分析
- Linux netfilter 学习笔记 之七 ip层netfilter的连接跟踪模块的概念及相关的数据结构分析
- Linux netfilter 学习笔记 之九 ip层netfilter的连接跟踪模块代码分析
- Linux netfilter 学习笔记 之八 ip层netfilter的连接跟踪模块初始化
- Linux netfilter 学习笔记 之十二 ip层netfilter的NAT模块代码分析
- Linux netfilter 学习笔记 之十一 ip层netfilter的NAT模块初始化以及NAT原理
- Linux netfilter 学习笔记 之十一 ip层netfilter的NAT模块初始化以及NAT原理
- Linux netfilter 学习笔记 之十一 ip层netfilter的NAT模块初始化以及NAT原理
- Linux netfilter 学习笔记 之二 ip 层netfilter的hook 注册以及执行hook函数的概要分析
- Linux netfilter 学习笔记 之二 ip 层netfilter的hook 注册以及执行hook函数的概要分析
- Linux netfilter 学习笔记 之六 ip层netfilter的filter表的创建及其hook函数分析
- Linux netfilter 学习笔记 之十五 netfilter模块添加一个match
- Linux netfilter 学习笔记 之五 ip层netfilter的table中规则的匹配检查
- Linux netfilter 学习笔记 之四 ip层netfilter的table注册及规则的添加
- Linux netfilter 学习笔记 之十四 netfilter模块会修改数据包关联的路由缓存吗
- Linux netfilter 学习笔记 之十三 netfilter的SNAT模块是否支持UDP打洞
- Linux netfilter 学习笔记 之五 ip层netfilter的table中规则的匹配检查
- Linux netfilter 学习笔记 之三 ip层netfilter的table、rule、match、target结构分析