linux XFRM整体框架简单分析
2012-02-20 16:50
351 查看
原文地址:http://hi.baidu.com/jonathan2004/blog/item/7893eeed35c28626adafd578.html
Linux 的 XFRM框架多简单阿。6年前整理过,到现在还记得基本原理,说明xfrm设计的是多么简单明了。
不过网上都是基于代码的分析,很少有从整体框架上来描述,大家都被code淹没了。
0 前言
Linux引入XFRM是在不打乱原有的网络协议结构和HOOK点安全架构设计前提下,成功引入了一种基于策略的高扩展性的网络安全架构。
有人会说在HOOK点也能实现IPSEC的问题,为何还要XFRM?!!好问题,但是不是一两句话能把你说明白,只有去设计一安全网络系统才能深深体会到好处。这里就不过多描述。
1 静态框架
1.1 组建构成
XFRM 框架数据接收协议(如AH/ESP,与TCP/UDP并列属于4层网络协议)
XFRM 框架数据发送协议(相当于虚拟网卡驱动)
XFRM 框架策略引擎(与策略路有整合再一起)
1.2 结构图
此图还真不好画,简单描述一下就OK。有问题自己去解决把。
/* ------------------------------------------------------------------------ */
XFRM 框架策略引擎 TCP/UDP/XFRM
OUT点 IN点
forward点
(XFRM 框架策略引擎)
POST点 PRE点
XFRM 框架数据发送协议 其它网卡驱动
/* ------------------------------------------------------------------------ */
2 动态流程
2.1 发送数据
skb_buff XFRM 框架策略引擎命中策略(skb_buff明文) -> XFRM 框架数据发送协议处理->再次回到OUT点处理(skb_buff已经加密)->其它网卡驱动发送出去
2.2 接收数据
skb_buff PRE点(skb_buff加密)->路由查询 是本地数据 -> XFRM四层协议处理 ->再次回到PRE点处理(skb_buff已经解密)->根据路由转发/本地接收
2.3 转发数据
在forward点策略查询,然后根据是否命中策略,决点在POST点后是否加密还是直接发送出去。
3 总结
XFRM具有极大的扩展性,我现在的产品就是在此基础上实现了网络安全管理。学习架构,学习思想,永无止境。
可以此XFRM基础上设计添加新的架构,就看你的思维是否开阔;
可以把XFRM体现的思想应用到其他方面,就看你的思维是否灵活;
学习不是最终目的,创造才是追求的。不是为了学习而学习,是为了创造而学习。
Linux 的 XFRM框架多简单阿。6年前整理过,到现在还记得基本原理,说明xfrm设计的是多么简单明了。
不过网上都是基于代码的分析,很少有从整体框架上来描述,大家都被code淹没了。
0 前言
Linux引入XFRM是在不打乱原有的网络协议结构和HOOK点安全架构设计前提下,成功引入了一种基于策略的高扩展性的网络安全架构。
有人会说在HOOK点也能实现IPSEC的问题,为何还要XFRM?!!好问题,但是不是一两句话能把你说明白,只有去设计一安全网络系统才能深深体会到好处。这里就不过多描述。
1 静态框架
1.1 组建构成
XFRM 框架数据接收协议(如AH/ESP,与TCP/UDP并列属于4层网络协议)
XFRM 框架数据发送协议(相当于虚拟网卡驱动)
XFRM 框架策略引擎(与策略路有整合再一起)
1.2 结构图
此图还真不好画,简单描述一下就OK。有问题自己去解决把。
/* ------------------------------------------------------------------------ */
XFRM 框架策略引擎 TCP/UDP/XFRM
OUT点 IN点
forward点
(XFRM 框架策略引擎)
POST点 PRE点
XFRM 框架数据发送协议 其它网卡驱动
/* ------------------------------------------------------------------------ */
2 动态流程
2.1 发送数据
skb_buff XFRM 框架策略引擎命中策略(skb_buff明文) -> XFRM 框架数据发送协议处理->再次回到OUT点处理(skb_buff已经加密)->其它网卡驱动发送出去
2.2 接收数据
skb_buff PRE点(skb_buff加密)->路由查询 是本地数据 -> XFRM四层协议处理 ->再次回到PRE点处理(skb_buff已经解密)->根据路由转发/本地接收
2.3 转发数据
在forward点策略查询,然后根据是否命中策略,决点在POST点后是否加密还是直接发送出去。
3 总结
XFRM具有极大的扩展性,我现在的产品就是在此基础上实现了网络安全管理。学习架构,学习思想,永无止境。
可以此XFRM基础上设计添加新的架构,就看你的思维是否开阔;
可以把XFRM体现的思想应用到其他方面,就看你的思维是否灵活;
学习不是最终目的,创造才是追求的。不是为了学习而学习,是为了创造而学习。
相关文章推荐
- linux XFRM整体框架简单分析
- Java集合框架的知识总结(1) 说明:先从整体介绍了Java集合框架包含的接口和类,然后总结了集合框架中的一些基本知识和关键点,并结合实例进行简单分析。 1、综述 所有集合类
- linux XFRM整体框架简单分析
- linux XFRM整体框架简单分析
- Linux防火墙的框架简单分析
- 一个 Linux 上分析死锁的简单方法
- Spring学习之旅(四) 完成简单微博项目的整体框架
- spring.net 框架分析(四) AOP 简单示例
- Linux USB驱动框架分析(一)
- Linux 内核 Makefile 体系简单分析 (写得好)
- DIY.NETORM框架——整体分析
- Linux驱动修炼之道-SPI驱动框架源码分析(下)
- 【Linux驱动】LCD驱动框架分析
- Linux USB驱动框架分析 下
- Linux 内核 Makefile 体系简单分析
- linux TCP头部的构造的简单分析
- ecshop 框架 简单分析
- Python 超级简单的网站html分析框架BeautifulSoup
- Linux环境下文件权限的简单分析
- 学习笔记 --- LINUX MTD子系统框架分析