协议栈
文章平均质量分 84
shao326
未婚
展开
-
EXPORT_SYMBOL 与 EXPORT_SYMBOL_GPL 转载
1.EXPORT_SYMBOLEXPORT_SYMBOL( my_pub_func);在预编译阶段会解析为:extern void *__crc_my_pub_func __attribute__((weak)); static const unsigned long __kcrctab_my_pub_func __attribute__((__used__)) __attribute_...原创 2010-12-12 15:04:56 · 109 阅读 · 0 评论 -
ipv6 分片
519 static int ip6_fragment(struct sk_buff *skb, int (*output)(struct sk_buff *))520 {521 struct net_device *dev;522 struct sk_buff *frag;523 struct rt6_info *rt = (str...2010-12-07 21:13:50 · 985 阅读 · 0 评论 -
ipv6 处理扩展头
160 static int ip6_input_finish(struct sk_buff *skb)161 {162 struct inet6_protocol *ipprot; //注册协议结构体163 unsigned int nhoff;164 int nexthdr, raw;165 u8 hash...2010-12-06 09:47:50 · 598 阅读 · 0 评论 -
IPV6详解 --转
一、IPv6基本头 IPv6基本头标包含40字节的头标,包括如下域: 1. Version (版本号),4bit,表明当前IP的协议版本,需要置为6 2. Traffice Class (业务量等级),8bit,指示IPv6数据流通信类别或优先级。功能类似于IPv4的服务类型(TOS)字段。 3. Flow Label (流标记),20...原创 2010-12-02 14:11:00 · 292 阅读 · 0 评论 -
Linux内核中的IPSEC实现(7) ---转载
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn9. IPSEC封装流程 IPSEC数据包的封装过程是在数据包发出前完成的, 是和路由选择密切相关的, 根据前面的发出分析可知封装是通过对数据设置安全路由链表...原创 2010-11-16 20:19:30 · 194 阅读 · 0 评论 -
Linux内核中的IPSEC实现(6) --转载
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn8. 安全协议与IPSEC相关的安全协议是AH(51)和ESP(50), IPSEC使用这两个协议对普通数据包进行封装, AH只认证不加密, ESP既加密又认证...原创 2010-11-16 20:09:35 · 268 阅读 · 0 评论 -
Linux内核中的IPSEC实现(5) ---转载
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn7. IPV4下的xfrm支持处理在xfrm中各种和地址相关的操作是和协议族相关的, 因此这部分的具体实现就放在相关的协议族实现中, 然后通过状态和策略...原创 2010-11-15 15:48:26 · 322 阅读 · 0 评论 -
Linux内核中的IPSEC实现(4) ---转载
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn 6. XFRM的其他操作6.1 HASH处理关于HASH值的计算方法主要在net/xfrm/xfrm_hash.h中定义:// IPV4地...原创 2010-11-15 15:46:37 · 195 阅读 · 0 评论 -
Linux内核中的IPSEC实现(3) ---转载
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn5. 安全策略(xfrm_policy)处理本节所介绍的函数都在net/xfrm/xfrm_policy.c中定义。5.1 策略分配策略分配函数...原创 2010-11-15 15:42:27 · 274 阅读 · 0 评论 -
Linux内核中的IPSEC实现(2) ---转载
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn4. 状态(xfrm_state)处理本节所介绍的函数都在net/xfrm/xfrm_state.c中定义。4.1 状态分配状态分配函数为xfrm_stat...原创 2010-11-15 15:35:14 · 518 阅读 · 0 评论 -
Linux内核中的IPSEC实现(1) ---转载
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn 1. 前言在Linux2.6内核中自带了IPSEC的实现,这样就不用象2.4那样打补丁来实现了。该实现包括以下几个部分: PF_KEY类型套接口, 用来提供和...原创 2010-11-15 15:31:34 · 259 阅读 · 0 评论 -
Linux发送函数dev_queue_xmit分析 --转
当上层准备好一个包之后,交给下面这个函数处理:int dev_queue_xmit(struct sk_buff *skb) { struct net_device *dev = skb->dev; struct netdev_queue *txq; struct Qdisc *q; int rc = -ENOMEM...原创 2010-12-14 21:44:34 · 264 阅读 · 0 评论 -
内核污染错误
一些oops报告在程序记数器之后包含字符串'Tainted: '。这表明内核已经被一些东西给污染了。 该字符串之后紧跟着一系列的位置敏感的字符,每个代表一个特定的污染值。 1:'G'如果所有装载的模块都有GPL或相容的许可证,'P'如果装载了任何的专有模块。没有模块MODULE_LICENSE或者带有insmod认为是与GPL不相容的的MODULE_LICENSE的模块被认定是专有的。...原创 2010-12-12 21:48:39 · 1240 阅读 · 0 评论 -
TCP和UDP在网络层实现的不同--基于linux内核 --转
由于4层协议实现复杂度的不对称性,导致3层协议实现也不易统一,换句话说就是同样的3层协议比如IP要为不同的4层协议提供不同的实现,这是因为我们熟知的4层协议分为流和数据报两种类型,流式协议比如tcp在4层就处理了大量的逻辑,比如分段等等,而数据报协议比如 udp却不处理这些,因此当它们被交付到3层的时候,针对于分段来讲,3层逻辑对tcp需要作的事就很少了,而对udp就要有大量的工作要做...原创 2010-12-11 20:01:04 · 88 阅读 · 0 评论