物理层:协调在物理媒介中传送比特流所需的功能。
链路层:将物理层转换为可靠的链路,使物理层对上层(网络层)是不产生差错的。确保分组在同一网络(链路)两个系统之间的交付。
- 将从网络层收到的比特流划分为帧
- 给每个帧加上首部,以明确发送地址和接收的物理地址
- 如果接收器的接收速度小于发送器的发送速度,就进行流控制
- 检测和重传受损伤,丢失和重复的帧(差错控制:通常是在帧的最后加上一个尾部来实现的)。
- 当多个设备使用同一个链路层时,决定在任意时刻由哪个设备控制链路层(接入控制)。
网络层:确保每个分组能到达目的地(可能会跨域多个网络(链路))。如果两个系统连接到同一网络(链路)。那么通常是不需要网络层的。
- 给上层传来的分组加一个首部,明确发送地址和接收的逻辑地址
- 选择路由或选择使用交换的方法(路由选择)
运输层:负责将完整的报文发送到目的地。一个报文里有好几个分组。网络层只是确保单个分组的准确专递。
- 确定每个报文的目的端口号
- 将一个报文划分为若干个报文段(分组),给每个报文段标一个序号
- 连接控制:运输层可以是无连接的,这时,将每个报文段看成是独立的数据报。如果是有连接的,在发送分组前会与目的机器的运输层建立连接。
- 流控制:这时在端口上实现流控制的,而不是在链路上实现的(这是与链路层的流控制的区别)
差错控制:确保整个报文的五差错(无损伤,无丢失,无重复)。这也是在端口上实现的。
会话层:允许两个系统进入回话状态,允许两个进程以半双工或全双工的方式进行通信(回话控制),并且允许对一个数据流中插入若干个同步点,以此进行同步。比如说,一个数据流有1000页,我们可以在每100页插入同步点,这样确保每100页的单独接收和确认。如果在传输到534页时系统崩溃,我们只需重传第501页到523页,剩下的依然是正常传输的。
表示层:
- 转换:由于不同计算机采用不同的编码方式,表示层就是将与该发送的计算机相关的消息格式转换为一种公共的格式。在目的计算机上的表示层将公共格式转换为目的计算机所采用的信息格式。
- 加密解密:对信息进行加密解密
- 压缩:对数据进行压缩,以减少比特数
应用层:给用户提供许多服务(邮件,文件传送和存取等)的接口