数据链路层的主要任务是实现帧在一段链路上或一个网络中进行传输。数据链路层协议由多种,但有三个基本问题是共同的,封装成帧、透明传输和差错检测。
1、数据链路层的地位:某道的书上的数据流动图可以看出,数据进入路由器后要先从物理层上到网络层,在转发表中找到下一跳的地址后,再下到物理层转发出去。我们学习数据链路层,通常只关心协议中水平方向的各数据链路层。了解点对点信道的概念:链路、数据链路层、帧。
2、数据链路层为网络层提供的服务:1、无确认的无连接服务。源主机发送帧时不需要先建立链路连接,目的主机收到帧时不需要发送确认,数据传输的可靠性由高层负责。2、有确认的无连接服务。源主机发送帧时不需先建立链路连接,但目的主机收到帧时必须发回确认,该服务适用于误码率较高的信道。3、有确认的面向连接服务。帧传输三个阶段:建立链路、传输帧、释放链路。目的主机对收到的每一个帧都要返回确认。
3、数据链路层连接的建立、维持和释放过程称为链路管理,它主要用于面向连接的服务,首先确认对方已处于就绪状态,并交换一些必要的信息以对帧序号初始化。
4、封装成帧是指在一段数据的前后分别添加首部和尾部,构成帧,帧时数据链路层的数据传输单位。若在数据中恰好出现与帧定界符相同的比特组合,则要采用有效的措施来解决这个问题,即透明传输。透明传输是指不论所传的数据是什么样的比特组合,都能够按原样无差错地在这个数据链路上传输。
5、流量控制就是限制发送方的发送速率,使之不超过接收方的接受能力。
6、因为信道噪声等原因,帧在传输过程中可能会出现错误,有位错和帧错之分,数据链路层运用crc检错,目的是将有差错的帧丢弃,保证上交的帧都是正确的,而面对出错的帧的重传任务由高层协议完成。