详解协议层次以及TCP/IP服务模型
经过我们之前对Internet的介绍,Internet是什么,我们可以理解到,Internet是一个极其复杂的系统。
为什么我们要分层呢?
- 清楚的结构允许我们对大型复杂系统定义其特定部分,探讨其各部分的关系,比如分层参考模型的讨论
- 模块化使得系统的维护、升级简化改变其某一层服务的具体实现,对系统其余部分透明(不影响)
- 分层的弊端?
- 各层可能重复较低层功能 …
两种参考模型
ISO/OSI 七层参考模型
是国际通用标准,为我们后来发展做参考
实际使用不多,比较繁杂。
层号 | 层的名称 | 层的英文名称 | 层的英语缩写 |
7 | 应用层 | Application | A |
6 | 表示层 | Presentation | P |
5 | 会话层 | Session | S |
4 | 传输层 | Transport | T |
3 | 网络层 | NetWork | N |
2 | 数据链路层 | Data Link | DL |
1 | 物理层 | Physical | PL |
TCP/IP参考模型
基于OSI 去掉表示层,会话层
主要有两种变形:
网络协议栈
具体实现是通过协议实现,总的协议叫做协议栈
-
应用层application: 支持网络应用,报文传送
- FTP, SMTP, STTP …
-
传输层transport: 主机进程间数据段传送
- TCP,UDP
-
网络层network: 主机(源目标节点)间分组传送
- 主要是IP协议, 路由协议 …
-
链路层link: 相邻网络节点间的数据帧传送
- PPP, Ethernet …
-
物理层physical:
- 物理介质上的比特传送
逻辑通信
-
分布式
-
在各节点的网络实体(entities) 实现了各层的功能
主机实现5层功能,路由器和 交换机实现2-3层功能。
-
网络实体完成功能动作, 对等实体交换消息
实体:定义自身功能的硬软件的集合
对等实体: 两台计算机上同一层 所属的程序、进程或实体称为该层的对等程序、对等进程或 对等实体。
逻辑通信就是在对等实体之间交互,不用管其他层次,各司其职
物理通信
各层发方从上层到下层,收方从下层到上层传递数据,上层使用下层提供的服务
-
发方添加头部信息创建新的数据单元,收方去掉头部
-
传递新的数据单元到下层/上层
-
各层传送不同的协议数据单元(也叫作
PDU
)
物理通信可以看作逻辑通信的实现,描述了数据传输的具体过程,如图所示
以上是对协议层次,以及服务模型的总结