计算机网络的体系结构
? 计算机网络的 体系结构 (architecture)是计算机
网络的各层及其协议的集合。
? 体系结构就是这个计算机网络及其部件所应完
成的功能的 精确定义 。
? 实现 (implementation)是遵循这种体系结构的前
提下用何种硬件或软件完成这些功能的问题。
? 体系结构是抽象的,而实现则是具体的,是真
正在运行的计算机硬件和软件。
划分层次的概念举例
? 计算机 1 向计算机 2 通过网络发送文件。
? 可以将要做的工作进行如下的划分。
? 第一类工作与传送文件直接有关。
– 确信对方已做好接收和存储文件的准备。
– 双方协调好一致的文件格式。
? 两个计算机将 文件传送模块 作为最高的
一层 。剩下的工作由下面的模块负责。
两个计算机交换文件
文件传送模块
计算机 1 计算机 2
文件传送模块
只看这两个文件传送模块
好像文件及文件传送命令
是按照水平方向的虚线传送的
把文件交给下层模块
进行发送
把收到的文件交给
上层模块
再设计一个通信服务模块
文件传送模块
计算机 1 计算机 2
文件传送模块 只看这两个通信服务模块
好像可直接把文件
可靠地传送到对方
把文件交给下层模块
进行发送
把收到的文件交给
上层模块
通信服务模块 通信服务模块
再设计一个网络接入模块
文件传送模块
计算机 1 计算机 2
文件传送模块
通信服务模块 通信服务模块
网络接入模块 网络接入模块 通信网络
网络
接口
网络
接口
网络接入模块负责做与网络接口细节有关的工作
例如,规定传输的帧格式,帧的最大长度等。
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
应用进程数据先传送到应用层
加上应用层首部,成为应用层 PDU
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
应用层 PDU 再传送到运输层
加上运输层首部,成为运输层报文
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
运输层报文再传送到网络层
加上网络层首部,成为 IP 数据报(或分组)
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
IP 数据报再传送到数据链路层
加上链路层首部和尾部,成为数据链路层帧
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
数据链路层帧再传送到物理层
最下面的物理层把比特流传送到物理媒体
计算机 1 向计算机 2 发送数据
? 应用层 (application layer)
5
4
3
2
1
5
4
3
2
1
物理传输媒体
计算机 1
AP2 AP1
电信号(或光信号)在物理媒体中传播
从发送端物理层传送到接收端物理层
计算机 2
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
物理层接收到比特流,上交给数据链路层
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
数据链路层剥去帧首部和帧尾部
取出数据部分,上交给网络层
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
网络层剥去首部,取出数据部分
上交给运输层
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
运输层剥去首部,取出数据部分
上交给应用层
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
应用层剥去首部,取出应用程序数据
上交给应用进程
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2 我收到了 AP
1 发来的
应用程序数据!
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
应 用 程 序 数 据 应用层首部
H5
10100110100101 比 特 流 110101110101
注意观察加入或剥去首部(尾部)的层次
应 用 程 序 数 据
H5 应 用 程 序 数 据
H4 H5 应 用 程 序 数 据
H3 H4 H5 应 用 程 序 数 据
H4
运输层首部
H3
网络层首部
H2
链路层
首部
T2
链路层
尾部
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
10100110100101 比 特 流 110101110101
计算机 2 的物理层收到比特流后
交给数据链路层
H2 T2 H3 H4 H5 应 用 程 序 数 据
H3 H4 H5 应 用 程 序 数 据
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
数据链路层剥去帧首部和帧尾部后
把帧的数据部分交给网络层
H2 T2 H3 H4 H5 应 用 程 序 数 据
H4 H5 应 用 程 序 数 据
H3 H4 H5 应 用 程 序 数 据
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
网络层剥去分组首部后
把分组的数据部分交给运输层
H5 应 用 程 序 数 据
H4 H5 应 用 程 序 数 据
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2 运输层剥去报文首部后
把报文的数据部分交给应用层
应 用 程 序 数 据
H5 应 用 程 序 数 据
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2
应用层剥去应用层 PDU 首部后
把应用程序数据交给应用进程
计算机 1 向计算机 2 发送数据
5
4
3
2
1
5
4
3
2
1
计算机 1
AP2 AP1
计算机 2 我收到了 AP
1 发来的
应用程序数据!
TCP/IP 四层协议
的表示方法举例
应用层
运输层
网际层
网络
接口层
主机 A 主机 B
路由器
网络 2 网络 1
应用层
运输层
网际层
网络
接口层
网际层
网络
接口层
4
3
2
1
OSI 与 TCP/IP
体系结构的比较
应用层
运输层
网络层
表示层
会话层
数据链路层
物理层
7
6
5
4
3
2
1
OSI 的体系结构
应用层
网络接口层
网际层 IP
(各种应用层协议如
TELNET,FTP,
SMTP 等 )
运输层 (TCP 或 UDP)
TCP/IP 的体系结构
无连接分组交付服务
运输服务
(可靠或不可靠 )
各种
应用服务
TCP/IP 的三个服务层次
沙漏计时器形状的
TCP/IP协议族
HTTP SMTP DNS RTP
TCP UDP
IP 网际层
网络接口层
运输层
应用层 … …
… 网络接口
1 网络接口 2 网络接口 3
Everything over IP
IP 可为各式各样的应用程序提供服务
IP over Everything
IP 可应用到各式各样的网络上