计算机网络的分层结构
一.大家和小鹿一起思考一个问题:我是怎样将一个文件发送到你的电脑上去的?
别着急,我带着大家一起一探究竟
1.发送文件前要完成的工作
- 1.发起通信的计算机(我的电脑)必须将数据通信的通路进行激活
- 2.告诉网络如何识别目的主机(你的电脑)
- 3.发起通信的计算机要查明目的主机是否开机且与网络正常连接
- 4.发起通信的计算机要弄清楚,对方计算机中文件管理程序是否已做好准备
- 5.确保出现的差错和意外可以解决
- 告诉大家一句话:在计算机中没有什么问题是**加一层(分层)**解决不了的
二.如何实现分层
1.分层的基本原则
- 1.各层之间相互独立,每层只实现一种相对独立的功能
- 2.每层之间界面自然清晰,易于理解,相互交流尽可能的少(高内聚,低耦合)
- 3.结构上可分割开,每层都采用合适的技术实现
- 4.保证下层对上层的独立性,上层单向使用下层提供的服务
- 5.整个分层结构尽可能地促进标准化工作
2.分层结构
- 1.实体:第n层中的活动元素称为n层实体,同一层的实体称为对等实体
- 2.协议:为网络中对等实体实现数据交换而建立的(level水平)规则,标准或约定称为网络协议
- 3.协议分为三部分:语法(传输数据的格式),语义(所要完成的功能),同步(各种操作的顺序)
- 4.接口(访问服务点SAP):上层使用下层服务的入口
- 5.服务(service):下层为相邻上层提供的功能调用(单向,vertical垂直)
- 6.SDU服务数据单元:为完成用户所要求的功能而应传送的数据
- 7.PCI协议控制信息:控制协议操作的信息
- 8.PDU协议数据单元:对等层次之间传送的数据单元
PCI + SDU = PDU
3.易混淆的点
- 1.网络体系结构是从功能上描述计算机网络结构的
- 2.计算机网络体系结构简称为网络体系结构,是分层结构
- 3.每层遵循某些网络协议来完成本层的功能
- 4.计算机网络体系结构是计算机网络各层及其协议的集合
- 5.第n层向第n+1层提供服务时不仅包括第n层本身的功能,还包括所有下层提供的功能
- 6.仅在相邻层有接口,且所提供的服务具体实现细节对上一层完全屏蔽(类似于Java语言的封装)
- 7.体系结构是抽象的,而实现细节是指能运行的一些软件及硬件
三.参考模型
1.OSI参考模型(法定标准)
- 目的:支持异构网络系统的互联互通
- 自上而下分为:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层七层
- 会话层,表示层,应用层称为资源子网(用来数据处理)
- 物理层,数据链路层,网络层称为通信子网(实现数据通信)
- 而传输层是通信子网和资源子网的通信接口
1.1深入了解每一层
小鹿想起最近抖音很火的一句话:每一帧都是热爱。
- 1.应用层:用户与网络的界面(应用程序,QQ,微信等),所有能和用户交互产生网络流量的程序
- 2.表示层:用于处理在两个通信系统中交换信息的表示方式(语法和语义),实现数据格式变换,数据加密和解密及数据压缩和回复
- 3.会话层:向表示层实体或用户进程建立连接并在连接上有序的传输数据,即建立会话也叫建立同步(SYN),该层
实现建立,管理及终止会话;使用校验点可使会话在通信失效时从校验点(也叫同步点)继续恢复通信,实现数据同步。 - 4.传输层:负责主机中两个进程的通信,即端到端(以端口识别)的通信。传输单位是报文段或用户数据报;实现传输(可靠/不可靠),差错控制,流量控制和复用分用
- 5.网络层:将分组从源端传送到目的端,为分组交换网上的不同主机提供通信服务,传输单位为数据报;实现路由选择(选择最佳路径),流量控制,差错控制及拥塞控制
- 6.数据链路层:将网络层传下来的数据包组装成帧,该层的单位为帧;实现成帧,差错控制(通过协议实现),流量控制(协调速度)及访问(接入)控制
- 7.物理层:在物理媒体上实现比特流(该层无视数据类型)的透明传输,该层单位为比特;该层定义了接口特性,传输模式,传输速率,比特同步及比特编码
2.TCP/IP参考模型(法定标准)
- 应用层:HTTP,FTP,DNS等协议
- 传输层:TCP,UDP等协议
- 网际层:IP等协议
- 网络接口层:Ethernet,ATM,Frame Relay等协议
3.两者比较
- 1.OSI定义三点:服务,协议,接口
- 2.OSI模型先于协议发明,不偏向特定协议,而TCP/IP先声明了协议,然后才出现了该架构
- 3.TCP/IP设计之初就考虑到异构网互联问题,将IP作为主要层次
4.五层参考模型(综合了OSI和TCP/IP的优点)
- 应用层:报文传输,支持各种网络应用
- 传输层:进程间的数据传输
- 网络层:源主机到目的主机的数据分组路由于转发
- 数据链路层:将网络层传下来的数据报组装成帧
- 物理层:即比特传输
|