博客专栏  >  运维   >  Linux内核协议栈

Linux内核协议栈

分析Linux内核协议栈的完整实现,源码为2.6.34 kernel;附带对内核协议栈的修改。

关注
61 已关注
23篇博文
  • Linux内核分析 - 网络[十七]:NetFilter之连接跟踪

    内核版本:2.6.34 转载请注明 博客:http://blog.csdn.net/qy532846454 by yoyo       前面章节介绍过Netfilter的框架,地址见:http:/...

    2012-12-04 14:43
    9767
  • Linux内核分析 - 网络[十六]:TCP三次握手

    内核:2.6.34       TCP是应用最广泛的传输层协议,其提供了面向连接的、可靠的字节流服务,但也正是因为这些特性,使得TCP较之UDP异常复杂,还是分两部分[创建与使用]来进行分析。这篇主...

    2012-08-19 13:23
    8434
  • Linux内核分析 - 网络[十五]:陆由表[再议]

    内核版本:2.6.34       陆由表作为三层协议的核心数据结构,理解它是至关重要的。前面已经分析过路由表,有兴趣的可以参考:       第一篇:路由表 http://blog.csdn.n...

    2012-05-15 16:01
    6330
  • Linux内核分析 - 网络[十四]:IP选项

    内核版本:2.6.34       在发送报文时,可以调用函数setsockopt()来设置相应的选项,本文主要分析IP选项的生成,发送以及接收所执行的流程,选取了LSRR为例子进行说明,主要分为选...

    2012-04-25 17:14
    6152
  • Linux内核分析 - 网络[八补]:IP协议补充

    内核版本:2.6.34 在前一篇”IP协议”中对报文接收时IP层的处理进行了分析,本篇分析将针对报文发送时IP层的处理。       传输层处理完后,会调用ip_push_pending_fram...

    2012-02-22 09:18
    11819
  • Linux内核分析 - 网络[十三]:校验和

    内核版本:2.6.34 报文的IP校验和、ICMP校验和、TCP/UDP校验和使用相同的算法,在RFC1071中定义,网上这方面的资料和例子很多,就不解释算法流程了,而是侧重于在实现的变化和技巧。 ...

    2011-11-25 10:25
    12562
  • Linux内核分析 - 网络[十二]:UDP模块 - 收发

    内核版本:2.6.34 UDP报文接收        UDP报文的接收可以分为两个部分:协议栈收到udp报文,插入相应队列中;用户调用recvfrom()或recv()系统调用从队列中取出报文,这...

    2011-11-20 19:40
    12119
  • Linux内核分析 - 网络[十二]:UDP模块 - socket

    内核版本:2.6.34 这部分内容在于说明socket创建后如何被内核协议栈访问到,只关注两个问题:sock何时插入内核表的,sock如何被内核访问的。对于核心的sock的插入、查找函数都给出了流程...

    2011-11-07 12:08
    7338
  • Linux内核分析 - 网络[十一]:ICMP模块

    内核版本:2.6.34   ICMP模块比较简单,要注意的是icmp的速率限制策略,向IP层传输数据ip_append_data()和ip_push_pending_frames()。 在net/...

    2011-10-28 22:24
    7254
  • Linux内核分析 - 网络[十]:ARP杂谈

    内核版本:2.6.34 杂谈一:重复地址检测   Linux协议栈中处理重复地址检测报文的是arp_process()中的一段代码,RFC2131是DHCP的草案,相应的sip==0是DHCP服务...

    2011-10-20 15:39
    6742
  • Linux内核分析 - 网络[九]:邻居表

    内核版本:2.6.34 这部分的重点是三个核心的数据结构-邻居表、邻居缓存、代理邻居表,以及NUD状态转移图。       总的来说,要成功添加一条邻居表项,需要满足两个条件:1. 本机使用该表项...

    2011-09-23 22:28
    13175
  • Linux内核分析 - 网络[八]:IP协议

    内核版本:2.6.34 这篇是关于IP层协议接收报文时的处理,重点说明了路由表的查找,以及IP分片重组。 ip_rcv进入IP层报文接收函数       丢弃掉不是发往本机的报文,skb->pk...

    2011-09-02 21:00
    10098
  • Linux内核分析 - 网络[四补]:路由表补充

    内核版本:2.6.34       前篇路由表http://blog.csdn.net/qy532846454/article/details/6423496说明了路由表的结构及路由表的创建。下面是...

    2011-08-28 08:46
    9859
  • Linux内核实践 - 如何添加网络协议[三]:实现

    内核版本:2.6.34 接上篇《添加网络协议》。         为了用户方便查看brcm设备的工作状态,使用proc文件系统是很好的方式。一个网络协议模块可以注册到网络空间中register_p...

    2011-08-04 09:40
    9860
  • Linux内核实践 - 如何添加网络协议[二]:实现

    内核版本:2.6.34 实现思路:       报文在网络协议栈中的流动,对于接收来讲,是对报文的脱壳的过程,由于报文是已知的输入,只要逐个解析协议号;对于发送来讲,是各层发送函数的嵌套调用,...

    2011-07-30 10:24
    7603
  • Linux内核实践 - 如何添加网络协议[一]:目的

    本文只是一个内核网络协议的实践的例子,先说明添加的目的,下篇开始具体的实现。         内核版本:2.6.34;在支持802.1主机上,报文的一般格式:          现在需...

    2011-07-23 10:44
    7835
  • Linux内核分析 - 网络[七]:NetFilter

    内核版本:2.6.34 NetFilter在2.4.x内核中引入,成为linux平台下进行网络应用的主要扩展,不仅包括防火墙的实现,还包括报文的处理(如报文加密、报文分类统计等)等。 Ne...

    2011-07-14 14:45
    10564
  • Linux内核分析 - 网络[六]:网桥

    看完了路由表,重新回到netif_receive_skb ()函数,在提交给上层协议处理前,会执行下面一句,这就是网桥的相关操作,也是这篇要讲解的内容。 skb = handle_bridge(sk...

    2011-07-07 11:54
    12548
  • Linux内核分析 - 网络[五]:vlan协议-802.1q

    内核版本:2.6.34 802.1q 1. 注册vlan网络系统子空间, err = register_pernet_subsys(&vlan_net_ops); static struct...

    2011-06-07 11:22
    12567
  • Linux内核分析 - 网络[四]:路由表

    路由表     在内核中存在路由表fib_table_hash和路由缓存表rt_hash_table。路由缓存表主要是为了加速路由的查找,每次路由查询都会先查找路由缓存,再查找路由表。这和cache...

    2011-05-16 08:52
    18011
img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部