目录
1 计算机网络体系结构的形成
两台计算机要互相传送文件需解决很多问题
1.1 提出了不同体系结构
- 最初的 ARPANET 设计时提出了分层的设计方法
- 分层:将庞大而复杂的问题,转化为若干较小的局部问题
- 1974 年,IBM 按照分层的方法制定并提出了系统网络体系结构 SNA (System Network Architecture)
- 此后,其他一些公司也相继推出了具有不同名称的体系结构
但由于网络体系结构的不同,不同公司的设备很难互相连通。
1.2 国际标准:开放系统互连参考模型 OSI/RM
- ISO (国际标准化组织) 提出的 OSI/RM (Open Systems Interconnection Reference Model) 是使各种计算机在世界范围内互连成网的标准框架
- OSI/RM 是个抽象的概念
- 1983年,形成了著名的 ISO 7498 国际标准,即七层协议的体系结构。
但 ISO/OSI 失败了
- 基于 TCP/IP 的互联网已抢先在全球相当大的范围成功地运行了。
- OSI 的专家们在完成 OSI 标准时没有商业驱动力;
- OSI 的协议实现起来过分复杂,且运行效率很低;
- OSI 标准的制定周期太长,使得按 OSI 标准生产的设备无法及时进入市场;
- OSI 的层次划分也不太合理,有些功能在多个层次中重复出现。
1.3 存在两种国际标准
- 法律上的 (de jure) 国际标准 OSI(但并没有得到市场的认可)
- 事实上的 (de facto) 国际标准 TCP/IP(获得了最广泛的应用)
2 协议与划分层次
2.1 网络协议
网络协议 (network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。
三个组成要素:
- 语法:数据与控制信息的结构或格式 。
- 语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
- 同步:事件实现顺序的详细说明。
2.2 协议的两种形式
文字描述:便于人来阅读和理解
程序代码:让计算机能够理解
2.3 层次式协议结构
ARPANET 的研制经验表明:对于非常复杂的计算机网络协议,其结构应该是层次式的。
划分层次的概念举例:两台主机通过网络传送文件
2.4 各层完成的主要功能
- 差错控制:使相应层次对等方的通信更加可靠。
- 流量控制:发送端的发送速率必须使接收端来得及接收,不要太快。
- 分段和重装:发送端将要发送的数据块划分为更小的单位,在接收端将其还原。
- 复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
- 连接建立和释放:交换数据前先建立一条逻辑连接,数据传送结束后释放连接。
2.5 计算机网络的体系结构
网络的体系结构 (Network Architecture) 是计算机网络的各层及其协议的集合,就是这个计算机网络及其构件所应完成的功能的精确定义(不涉及实现)
实现 (implementation) 是遵循这种体系结构的前提下,用何种硬件或软件完成这些功能的问题
体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。
3 OSI七层体系结构
高层:负责主机之间的数据传输
低层:负责网络之间的数据传输
应用层:如微信、抖音、QQ
表示层:如文字、视频(压缩)
会话层:面向用户的聊天也不能乱发,要建立、管理、中止会话
运输层:端口号(标注应用),流控,端口差错校验
网络层:不同主机在不同网络,需要标注哪个网络哪台主机,地址差错校验
数据链路层:点对点数据传输,传输错误、帧同步和流控制等。
物理层:数据0和1的比特流,电压、光信号等。