最近在看The Linux Network Architecture其实这本书的名字很长的我就简写了。
学习内核,文件系统很重要,因为Linux内核中几乎所有项目都是通过文件系统接口加以处理的。
内核分为:整体式内核,微内核。
Linux是采用整体式内核的,但是2.0开始把某些功能变成了模块;可载人内核也可移出内核。
模块化的好处:接口的定义会始终如一。
在linux-2.6/net的目录下有很多关于网络方面的源代码,在linux-2.6/Documentation/networking目录下也很多的相关的文档是不是也要读一读呢?应该的,至少在暑假期间把这些都看一遍的。
[RuCo01] [BBDK+01] [BoCe00]这些资料应该看看。
学习网络,我们应该知道ISO/OSI参考模型,虽然它们现在用的不是很广泛但是对我们理解网络还是很有忙助的。
这边是模型图,但是现在应用比较多的还是TCP/IP,在看看它们的对比。好好观测它们之间的不同,和相同的地方,还有就是TCP/IP的优点。每一层之间的关系,和下一层,还有上一层的关系。
今天,感觉理解了服务和协议。我就简单的介绍一下。
一些预定义的规则控制不同计算机上相同层的俩个实例之间的通信,这些规则被称为协议。
一个层(第N层)向更高的层(第N+1层)提供一个功能集合,这个功能集合被称为服务。
我们也就是要理解同层与同层之间的关系,不同层与不同层之间的关系。
* 应用层 (Application):应用层是个很广泛的概念,有一些基本相同的系统级 TCP/IP 应用以及应用协议,也有许多的企业商业应用和互联网应用。
* 传输层 (Transport):传输层包括 UDP 和 TCP,UDP 几乎不对报文进行检查,而 TCP 提供传输保证。
* 网络层 (Network):网络层协议由一系列协议组成,包括 ICMP、IGMP、RIP、OSPF、IP(v4,v6) 等。
* 链路层 (Link):又称为物理数据网络接口层,负责报文传输。
好!明天继续!
阅读(1399) | 评论(0) | 转发(0) |