免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 瀚海书香

CU线上连载讨论一从内核源码的角度来剖析Linux网络部分 [复制链接]

论坛徽章:
0
发表于 2011-08-16 08:29 |显示全部楼层
回复 2# 瀚海书香


    总结得极是。。。对新人帮助很大。。。

论坛徽章:
0
发表于 2011-08-16 11:27 |显示全部楼层
接36楼

我觉得学习网络的这个部分开始不能太深入源码的细节, 首先搞清楚代码的结构后会比较顺利些,也就是功能在代码的结构分布。
无论什么代码,代码总是一步一步写成的,而写成的代码也是一步一步的运行的,所以从运行的过程来理解代码的结构分布也是一种容易的理解方法,你就当成你自己在实现功能,书写代码

理解网络的关键是网络代码的运行过程中有一个栈,链路层,网络层,传输层,应用层,这些关键的层概念一个都不会少。

0. 操作系统核不在我们的思考范畴,当她已经存在了,固执而不可理喻,你得跟着她指挥棒转()都懂哈

1. 操作系统负责将这些层组织成了一个栈结构的反应机制,所以,从操作系统的角度来观察网络模块这个黑盒子,网络模块首先必须包括【配合操作系统的控制接口的支持结构】,用于初始化模块(构建栈,构建过程中对每个层的模块实施构建),关闭模块(销毁栈)。操作系统配合网络模块完成在vfs的加载, 上层应用就可以通过观察vfs了解这个模块的情绪啊,所在位置啊,现金流啊()什么的运行情况,为什么用“这个”?对操作系统来说,网络模块就是一个内含【vfs支持结构】模块而已,没区别。。。。突然想到,她这种生物总是容易变心,是不是也是应为这个缘故呢? 纠结(

怕发不出来,先发了,待续。。。

论坛徽章:
0
发表于 2011-08-16 12:26 |显示全部楼层
支持一下

论坛徽章:
13
午马
日期:2015-01-19 14:08:552017金鸡报晓
日期:2017-01-10 15:13:29黑曼巴
日期:2016-11-07 11:24:56PHP
日期:2016-10-25 16:06:46黄金圣斗士
日期:2015-11-24 10:43:13IT运维版块每日发帖之星
日期:2015-09-25 06:20:00IT运维版块每日发帖之星
日期:2015-09-14 06:20:002015亚冠之阿尔纳斯尔
日期:2015-07-27 11:17:582015亚冠之广州恒大
日期:2015-07-24 15:04:162015年亚洲杯之乌兹别克斯坦
日期:2015-04-01 13:28:012015年辞旧岁徽章
日期:2015-03-03 16:54:15处女座
日期:2015-01-22 16:09:16
发表于 2011-08-16 20:25 |显示全部楼层
看看大神都怎么剖析,反正我是什么都不会。。。。

论坛徽章:
0
发表于 2011-08-17 10:36 |显示全部楼层
接42楼

2. 操作系统的功能需要使用网络,但花费更多时间和网络打交道的实际是操作系统中的应用程序,所以黑盒子也同样需要包括能够满足【应用程序接口的支持结构】, 比如我们已经熟悉的Socket, 当然应用程序能接触到的也是操作系统做过修饰的接口,毕竟她有些自己的小心思,这涉及到域的概念,暂缓到后续帖子分解。
    这里声明下,直到现在所讲述的内容只是“你就当成你自己在实现功能,书写代码”所会想到的各种概念,和linux内核的实际实现的功能和执行次序并不相同,毕竟她一个版本就抹一回脸,我只是尽可能面面俱到。

3. 描述了黑盒子外围,现在我们来看看黑盒子里有什么。
    “物理层,链路层,网络层,传输层”
    链路层,物理层和网络层的中间那一层,那什么是物理层呢?网线,网卡硬件部分。网络层呢?我们先理解这个层也是个大黑盒子里的小黑盒子吧,不过是纯软件的。
    那链路层就可以理解为从网卡硬件部分到小黑盒子软件中间的所有部分吗?可以这么看。那包括些什么呢?网卡上的固件,网卡上数据缓冲,总线控制和通路,cpu中断,网卡驱动,网卡驱动的内核数据缓冲。哈,好像很多,不过没关系,实际我们所关心而且所能操控也只有只包括网卡驱动和网卡驱动中的内核数据缓冲(),我们需要理解的狭义的链路层就是包括了网卡驱动,以及【网卡驱动与网络层打交道的支持结构】。
    楼太长,看着很累吧,其实我写长了也比较累,虽然没你累,好吧,待续。。。

论坛徽章:
0
发表于 2011-08-17 10:49 |显示全部楼层
我知道一本鸟哥私房菜
那个书可以吗  我学了一段时间linux后 感觉也挺好学的 但是越往后 我就晕了
指点一下吧

论坛徽章:
6
金牛座
日期:2013-10-08 10:19:10技术图书徽章
日期:2013-10-14 16:24:09CU十二周年纪念徽章
日期:2013-10-24 15:41:34狮子座
日期:2013-11-24 19:26:19未羊
日期:2014-01-23 15:50:002015年亚洲杯之阿联酋
日期:2015-05-09 14:36:15
发表于 2011-08-17 11:10 |显示全部楼层
回复 47# linux小黑
那本说看过电子版的。感觉挺不错的入门的书。
有很多东西是需要融会贯通的,你不可能从一本书中了解到所有的知识点,最好是多看几本相关的书,或者相关的资料,这样理解起来就会游刃有余。

论坛徽章:
0
发表于 2011-08-17 12:00 |显示全部楼层
回复 47# linux小黑


    这本书我也看过,边看书边实践的话感觉还行。。。不过只看了Linux基础文件。。。不知道你说枯燥是不是指“Linux架站文件”

论坛徽章:
0
发表于 2011-08-17 13:44 |显示全部楼层
本帖最后由 jiayanfu 于 2011-08-17 13:45 编辑

楼上是什么意思,什么是预置

斑竹动作够麻利啊。。

论坛徽章:
0
发表于 2011-08-17 15:56 |显示全部楼层
还是更推荐新人去看TCP/IP的卷2

虽然它是BSD的系统,但是,有谁能把网络基础讲那么好呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP