Chinaunix首页 | 论坛 | 博客
  • 博客访问: 628267
  • 博文数量: 155
  • 博客积分: 5688
  • 博客等级: 大校
  • 技术积分: 2134
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-15 15:12
文章分类

全部博文(155)

文章存档

2011年(58)

2010年(97)

分类: 系统运维

2010-07-19 18:33:15

声明:本文为网络协议架构总结
#####请转贴时保留以下内容######
作者GTT
本文档归属http://oldtown.cublog.cn/.转载请注明出处!
请提出宝贵意见Mail:mtloveft@hotmail.com
 
提示:本文是关于network protocol architecture的一些总结
 
网络协议架构图如下:
 
 
 
 
 
这个图队了解网络协议很有帮助。记得我做项目时,带领的一个兄弟就一直迷糊,他总问我L2层怎么连接的,DataLink层,到底怎么Link的。网线怎么连接的,这些都是他问我的。如果对协议架构比较了解的话,这些问题
都迎刃而解。其实L2可以进行连接的,也可以无连接收发数据报的。IP packet是不需要L2连接的。但不代表L2
不可以进行连接。其实就理解一点L2和以上Ln都是逻辑处理就能回答以上问题了。如果从OO的角度考虑,LayerN的每组通信是Ln的instance,各个实例之间进行连接,通信。也可以无连接通信。
对于layerN只能使用layerN-1提供的服务。而不能利用layerN+1的服务。
对于两台通讯的计算机,对等的layer之间相互交流。layerN只和对方计算机layerN交流。
交流的规则就是协议。layerN对layerN+1提供服务。
 
有了这些概念,对设计自己的协议就很有帮助了。如果想了解如何实现网络协议,那就看看LinuxKernel吧。
source Code有很多值得学习的地方。不过也有不好的地方啊,比如net_device,结构很不合理,各个Layer
的数据都堆在一个大结构里了。
 
有了Architecture图,ISO的OSI7层设计就可以理解为上图的一个实例了。
图如下:
 
 
 
 
 
阅读(1474) | 评论(0) | 转发(0) |
0

上一篇:生活很简单

下一篇:网桥数据结构图

给主人留下些什么吧!~~