计算机网络 - 数据链路层

数据链路层负责在物理层上传输数据的可靠性,包括封装成帧、透明传输、差错控制(如CRC校验、海明码)以及流量控制(如停等协议、后退N帧、选择重传)。介质访问控制技术涉及广播信道与点对点信道的管理,如CSMA/CD、CSMA/CA协议。局域网和广域网中,以太网是最常见类型,采用交换机避免冲突并提高效率。
摘要由CSDN通过智能技术生成

文章目录

1 基本概念和功能概述

1.1 基本概念

1.2 功能概述

因为物理层可能会把数据弄丢,所以数据链路层需要进行一些设置来使得物理层可以可靠的传输数据。

2 基本问题

2.1 封装成帧与透明传输

将网络层传下来的分组添加首部和尾部,用于标记帧的开始和结束。

透明表示一个实际存在的事物看起来好像不存在一样。

2.2 组帧的四种方法

2.1.1 字符计数法

缺点:记数字段丢失后,容易造成数据错乱。

2.1.2 字符填充法

加头字段与尾字段分别标记开始与结束,并且头字段与尾字段不同。

如何解决帧中出现的与标记字段相同的问题呢?解决方法:添加转义字符

2.1.3 零比特填充法

2.1.4 违规编码法

例如曼彻斯特编码中不会使用高-高、低-低来表示,所以如果使用高-高、低-低来表示帧起始和终止就不会与数据冲突

3 差错控制

3.1 差错

检验和纠正差错的编码方法主要有检错编码纠错编码

3.2 检错编码

3.2.1 奇偶校验码

缺点:只能校验奇数个错误,不能检验偶数个错误。

3.2.2 循环冗余码CRC

用传输数据除以生成多项式得到冗余码,最终发送的数据=要发送的数据+帧检验序列FCS

举一个例子:要发送的数据是1101 0110 11,采用CRC校验,生成多项式是10011,那么最终发送的数据是?

FCS的生成以及接收端CRC检验都是由硬件实现,处理很迅速,因此不会厌恶数据的传输。

3.3 纠错编码(海明码)

海明码可以发现双比特错误,纠正单比特错误

海明码纠错详解可参考最通俗易懂的海明码校验纠错讲解一文。

4 流量控制和可靠传输

4.1 概述

  • 流量控制的基本方法是由接收方控制发送方发送数据的速率
  • 常见的流量控制方式有两种:停止-等待协议与滑动窗口协议

停止-等待协议:发送窗口大小=1,接受窗口大小=1;

后退N帧协议(GBN):发送窗口大小>1,接受窗口大小=1;

选择重传协议(SR):发送窗口大小>1,接受窗口大小>1。

4.2 停止等待协议(Stop-and-Wait)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值