协议分层与参考模型
协议分层将网络功能组织成一个分层堆栈,每一层通过接口向上层提供明确定义的服务,其中OSI和TCP/IP参考模型是划分这些功能的两种规范方式。
用 PaperMind 寻找选题即将推出Find papers & topics
Tools & resources
Learn & explore
视频即将推出
Definition
参考模型是一个抽象的分层框架,它将通信功能划分为多个层,每一层都由其提供的服务、向相邻层呈现的接口以及与另一主机上对等实体通信所使用的协议来定义。
Scope
本主题涵盖网络协议为何以及如何分层:服务、接口和协议的概念;数据在堆栈中向下传递时的封装;以及两种主要的参考模型。它比较了七层OSI模型(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层)与五层互联网/TCP-IP模型,解释了每一层的功能以及互联网模型为何合并了OSI的较高层。本主题不包括任何单一层内的详细机制,这些机制将在相应的专题中讨论。
Core questions
- 一个层的服务、接口和协议是什么,它们之间有何区别?
- OSI和TCP/IP模型的每一层执行什么功能?
- 什么是封装,以及报头如何在堆栈中累积?
- 为什么互联网采用了五层模型而不是完整的七层OSI模型?
- 严格分层的优点和缺点是什么?
Key concepts
- 层服务、接口和协议
- OSI七层模型
- TCP/IP五层模型
- 封装和报头
- 物理层和数据链路层
- 网络层和传输层
- 会话层和表示层
- 应用层
- 协议数据单元
Key theories
- 服务、接口和协议
- 分层区分了层提供的服务、上层通过其访问服务的接口,以及同一层上的对等实体之间通信所使用的协议;将这些分离可以使实现发生变化而不会破坏相邻层。
- 封装
- 当消息在堆栈中向下传递时,每一层都会用自己的报头(有时还有报尾)封装接收到的数据,因此每一层的数据单元都将上层数据作为有效载荷;接收方在向上传递时会反向执行此过程。
- 互联网设计理念
- DARPA互联网围绕一个简单、健壮的尽力而为网络分层,智能位于终端主机,优先考虑生存性和互操作性,而非OSI的全面功能集,这塑造了更精简的TCP/IP模型。
Clinical relevance
参考模型是工程师们用来定位和讨论功能的共享词汇:说一个问题“在第3层”或一个设备是“一个第2层交换机”可以精确地传达它在堆栈中的操作位置。这些模型指导故障排除、互操作性标准以及网络软件和硬件的模块化设计。
History
OSI参考模型由ISO在1970年代后期开发,并于1980年由Zimmermann正式确立为一个与供应商无关的框架。与此同时,TCP/IP协议套件源于ARPANET研究,Clark在1988年的论文阐述了其设计理念。尽管OSI的堆栈从未完全部署,但其术语经久不衰,而TCP/IP模型则成为互联网的运行标准。
Debates
- OSI的教学价值与TCP/IP的实际操作现实
- OSI的七层清晰地分离了会话层和表示层等功能,而互联网堆栈将这些功能整合到应用程序中,这使得OSI在教学中很有用;批评者认为它过度设计,从未与实际系统匹配,因此教科书出于不同目的同时介绍了两者。
Key figures
- Hubert Zimmermann
- David D. Clark
- Vinton Cerf
- Robert Kahn
Related topics
Seminal works
- zimmermann1980
- clark1988
- kurose2021
Frequently asked questions
- 互联网协议堆栈有多少层?
- 互联网堆栈通常被描述为五层:应用层、传输层、网络层、链路层和物理层。七层OSI模型在应用层和传输层之间增加了会话层和表示层,这些功能在互联网模型中留给应用程序处理。
- 什么是封装?
- 封装是每一层将其自身的控制信息(通常是报头)添加到从上层传递下来的数据周围的过程。当数据到达物理链路时,它已经被多层报头包裹,接收主机在向上处理时会逐层剥离这些报头。