Code Monkey home page Code Monkey logo

reading-and-comprehense-linux-kernel-network-protocol-stack's Introduction

DDD# Reading-and-comprehense-linux-Kernel-network-protocol-stack

nginx高并发设计优秀**应用于其他高并发代理中间件:

redis、nginx、memcache、twemproxy、mongodb等更多中间件,分布式系统,高性能服务端核心**实现博客:

=================================== linux内核网络协议栈阅读理解

本代码是linux内核网络协议栈源码(版本为2.6.35),本代码对三层及其以上部分主要功能做

了详细注释,并对重要数据结构的各个成员进行了备注,同时对各个函数的调用关系都有详尽备注。主要参考资料为樊东东 老师的<linux内核源码剖析(上下册)>,再此对樊老师表示感谢,这是一本理解网络协议栈很好的书,两本合计1000多页,内 容比较多,但都很经典,对阅读内核协议栈源码有很大的帮助。

由于工作中经常需要修改协议栈源码,包括封包解包各种隧道报文, NAT功能添加,路径修改,添加自己的netfilter代

码等,由于部分内容涉及到公司保密内容,因此这些工作中新增修改的内核代码已经从本分github中移除,因此可能造成部分 函数没有定义,但不会影响各位同行阅读和理解协议栈源码。

该代码已经详细分析和注释的协议栈功能有: .二层 三层 4层 发包收包调用流程,及各层头部封包解包分析注释。 .netfilter框架代码分析注释 .sock处理过程中的各种系统调用以及内核处理过程分析注释 .SKB封包 解包 克隆复制 拆分 拉直等详细分析注释 .网络dev设备注册 注销详解。 .内核态用户态通信netlink代码分析注释 .ip分片重组分析注释 .套接口层代码分析及详细注释 .传输控制块分析注释 .TCP链接建立过程分析注释 .链接终止过程分析分析注释 .ip层输入输出分析,TCP输入输出分析 及其层次调用过程分析注释 .tc限速源码分析注释 .ppp内核模块分析注释 .相关模块功能分析注释

待分析主要模块:网桥模块,vlan模块,邻居子系统,路由表模块。

reading-and-comprehense-linux-kernel-network-protocol-stack's People

Contributors

y123456yz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

reading-and-comprehense-linux-kernel-network-protocol-stack's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.