[计算机网络]——数据链路层(一)
此博客主要记录数据链路层的功能、组帧、差错控制、流量传输与可靠传输机制
一、数据链路层
主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路,使之对网络层变现为一条无差错的链路。
对于网络层而言,数据链路层提供的服务有:
(1): 无确认的无连接服务; (2): 有确认的无连接服务; (3): 有确认的面向连接服务
数据链路层将网络层的数据包增加首部与尾部,就构成了帧。几个基本概念如下:
封装成帧,用标识位表示帧的开始和结束;接收方能从接受的二进制比特流中区分帧的起始于终止。
透明传输,不管什么样的组合都能在链路上传输。解决方案是数据包在出现帧开始符和帧结束符时加上转义字符,如果出现转义字符也加上转移字符,接受后再进行删除。
流量控制,通过反馈机制限制发送方的数据流量。常用的方式有两种,停止等待协议和滑动窗口协议
差错控制,错误分为位错和帧错,位错通过自动重传请求(ARQ)发送方发送带有循环冗余校验码(CRC)的数据帧,帧错的方法是引入定时器和编号机制。
在数据链路层扩展局域网是使用网桥。
网桥工作在数据链路层,它根据MAC帧的目标地址对收到的帧进行转发。网桥具有过滤帧的功能,当网桥收到一个帧时,并不是向所有的接口转发帧,而是先检查此帧的目的MAC地址,然后将该帧转发到哪一个接口。
网桥是两端口转发,交换器是多端口转发。网桥支持储存转发,而交换机支持储存转发和直接转发两种方式。可以将交换机看作是网桥的升级版本。
二、流量控制与可靠传输
停止等待协议和滑动窗口协议,其中滑动窗口又分为后退N帧协议(CBN)和 选择重传协议(SR)
停止等待协议,一次只允许发送一帧,效率太低。
后退N帧协议优点是,因连续发送数据帧提高了信道的利用率,缺点是在重传时必须把原来已经正确传送的数据帧重传,使传送效率降低。
选择重传协议使数据帧逐一确认,收一个确认一个,只重传错帧,接收方有缓存