![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
TCP/IP
小菜鸟勒大梦想
这个作者很懒,什么都没留下…
展开
-
sk_buff 整理笔记(一、数据结构)
在这几天的工作中总是或多或少的接触到了sk_buff结构体。后来我觉得这样时不时地学点sk_buff结构还不如干脆花段时间来研究下这个重要的结构体。所以我就学习了《深入理解linux网络技术内幕》有关sk_buff结构的介绍,这系列博文本来是我根据《深入理解linux网络技术内幕》学习整理而来的,可以算作是笔记吧。后来在看sk_buff克隆和拷贝时,又看了下《linux内核源码剖析:TCP/IP实...转载 2019-01-31 22:14:49 · 397 阅读 · 0 评论 -
sk_buff整理笔记(两、操作函数)
承接上一:sk_buff 整理笔记(一、数据结构)这一篇要讲的是内核为sk_buff结构提供的一些操作函数。 第一、首先要讲的是sk_buff中的四大指针: 四大指针各自是:head、data、tail、end;这四个指针都是指向了数据区的。数据区中存放的是协议头和数据。head和end指针是每一个数据包一样的,也是有这两个指针来确定数据区的大小的。最開始...转载 2019-01-31 22:15:46 · 490 阅读 · 0 评论 -
sk_buff整理笔记(三、内存申请和释放)
承接上一篇blog--sk_buff整理笔记(二、操作函数),这篇是要来讲解下sk_buff结构的内存申请和释放函数。因为sk_buff结构是比较复杂的(并不是其本身结构复杂,而是其所指的数据区以及分片结构等,合在一起就变复杂了),所以在内存申请和释放时,就要搞清楚什么函数对应的申请分配或释放什么结构内存。这里不提倡自己用kmalloc()和kfree()函数来为sk_buff相关结构体申请内存...转载 2019-01-31 22:17:07 · 756 阅读 · 0 评论 -
sk_buff整理笔记(四、克隆与复制)
在第一篇 sk_buff 整理笔记(一、数据结构)中已经对sk_buff的相关结构的常用成员字段进行了详细的分析,这里就不再赘述了。但前面的sk_buff结构成员字段对这篇sk_buff的克隆与拷贝非常重要,尤其是那几幅图,所以如果看此文时有不明白的地方,可以到第一篇中去查找下相关成员字段分析解释。根据前面已经说过sk_buff结构体是有三大块(其实是有四块结构体连接而成的,只是sk_buff数据...转载 2019-01-31 22:18:30 · 896 阅读 · 0 评论 -
sk_buff整理笔记(五、队列管理函数)
从开始的sk_buff结构及相关结构体的成员变量分析到sk_buff结构的一些操作函数,然后是sk_buff结构的内存申请和释放,接着是几个克隆拷贝函数的区别,再到现在要分析得列表管理函数。这有关sk_buff结构的一系列blog差不多就接近尾声了,仔细的分析了这几块内容,虽不能说对sk_buff结构非常了解,但也有了个全新的认识。感觉收获匪浅。下面开始分析下队列管理函数。初始化函数: ...转载 2019-01-31 22:19:35 · 2412 阅读 · 0 评论 -
TCP/IP四层模型与OSI参考模型
TCP/IP四层模型与OSI参考模型TCP/IP四层模型:1.链路层(数据链路层/网络接口层):包括操作系统中的设备驱动程序、计算机中对应的网络接口卡2.网络层(互联网层):处理分组在网络中的活动,比如分组的选路。3.运输层:主要为两台主机上的应用提供端到端的通信。4.应用层:负责处理特定的应用程序细节。 假设在一个局域网(LAN)如以太网中有两台主机,...转载 2019-01-30 22:07:55 · 201 阅读 · 0 评论 -
TCP三次握手四次分手
关于TCP三次握手四次分手,之前看资料解释的都很笼统,很多地方都不是很明白,所以很难记,前几天看的一个博客豁然开朗,可惜现在找不到了。现在把之前的疑惑总结起来,方便一下大家。先上个TCP三次握手和四次分手的图网上好多都是错的,只能自己画了,一个正确的图的确可以方便理解。疑问一,上图传递过程中出现的几个字符(SYN,ACK,FIN,seq,ack)各代表什么意思SYN,...原创 2019-03-07 23:42:24 · 190 阅读 · 0 评论