计算机网络学习笔记(三)数据链路层

本文围绕数据链路层展开,介绍其以帧为单位传输和处理数据,使用点对点和广播信道。阐述封装成帧的概念,差错检测的奇偶校验和循环冗余校验CRC方法。还提及可靠传输面临的比特差错、分组丢失等问题及解决协议,最后介绍了MAC地址格式和MAC帧格式。

概述

  • 链路(Link)就是从一个节点到相邻节点的一段路线线路,而中间没有任何其他的交换结点。
  • 数据链路(Data Link)是指把实现通信协议的硬件和软件加到链路上,就构成了数据链路。
  • 数据链路层以帧为单位传输和处理数据。
  • 网络中的主机、路由器等都必须实现数据链路层
  • 局域网中的主机、交换机等也都必须实现数据链路层

数据链路层在网络体系结构中所处的地位
在这里插入图片描述
如上图所示,数据的流动的

从数据链路层观察帧的流动
在这里插入图片描述
注意:
局域网属于数据链路层

这里的局域网虽然是个网络。但我们并不把局域网放在网络层中讨论。在网络层要讨论的是多个网络互连的问题,是讨论分组怎么从一个网络,通过路由器,转发到另一个网络。
而在同一个局域网中,分组怎么从一台主机传送到另一台主机,但并不经过路由器转发。从整个互联网来看,局域网仍属于数据链路层的范围

数据链路层使用的信道
数据链路层属于计算机网路的低层。数据链路层使用的信道主要有以下两种类型:

  • 点对点信道
  • 广播信道
    在这里插入图片描述

封装成帧

数据链路层传送的协议数据单元是帧

  • 封装成帧 (framing) 就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。
  • 首部和尾部的一个重要作用就是进行帧定界。
    在这里插入图片描述
    发送方的数据链路层将上层交付下来的协议数据单元封装成帧后,还要通过物理层,将构成帧的各比特,转换成电信号交给传输媒体,接收方的数据链路层根据帧定界从物理层交付的比特流中提取出一个个的帧。

差错检测

在传输过程中可能会产生比特差错:1 可能会变成 0, 而 0 也可能变成 1。

在这里插入图片描述

解决差错检验

奇偶校验

  • 在待发送的数据后面添加1位奇偶校验位,使整个数据(包括所添加的校验位在内)中“1”的个数为奇数(奇校验)或偶数(偶校验)
  • 如果有奇数个位发生误码,则奇偶性发生变化,可以检查出误码;
  • 如果有偶数个位发生误码,则就行不发生变化,不能检查出误码(漏检)

在这里插入图片描述

循环冗余校验CRC

  • 收发双方约定好一个生成多项式;
  • 发送发基于待发送的数据和生成多项式计算出差错校验码(冗余码),将其添加到待传输数据的后面一起传输;
  • 接收方通过生成多项式来计算收到的数据是否产生了误码;
    在这里插入图片描述
    在这里插入图片描述
    总结:
    在这里插入图片描述

可靠传输

接收方主机收到有误码的帧后,是不会接受该帧的,会将它丢弃
如果数据链路层向其上层提供的是不可靠服务,那么丢弃就丢弃了,不会再有更多措施
如果数据链路层向其上层提供的是可靠服务,那就还需要其他措施,来确保接收方主机还可以重新收到被丢弃的这个帧的正确副本
在这里插入图片描述

比特差错

在这里插入图片描述

其他传输差错

分组丢失

路由器输入队列快满了,主动丢弃收到的分组
在这里插入图片描述

分组失序

数据并未按照发送顺序依次到达接收端
在这里插入图片描述

分组重复

由于某些原因,有些分组在网络中滞留了,没有及时到达接收端,这可能会造成发送端对该分组的重发,重发的分组到达接收端,但一段时间后,滞留在网络的分组也到达了接收端,这就造成分组重复的传输差错
在这里插入图片描述
解决上述问题可以采用以下三种可靠协议

  • 停止-等待协议SW
  • 回退N帧协议GBN
  • 选择重传协议SR

MAC地址

硬件地址又称为物理地址或MAC地址
硬件地址其实不算严格意义上的地址,因为并没有指明具体位置,硬件地址是适配器唯一编号,用来唯一的标识每台电脑上的适配器
硬件地址在适配器生产时固化在适配器的ROM中;

MAC地址的格式

总共64位(6字节)前三字节由管理全球硬件地址的机构——注册管理机构RA向适配器制造公司出售称为组织唯一标识符OUI,后三字节由制造公司自行分配,称为扩展标识符,(其中前三字节中有两位是用来标识是否位单播地址和是否属于全球管理的)

MAC帧的格式

在这里插入图片描述
目的地址和源地址指的是硬件地址
类型字段用来标志上层使用的是什么协议
FCS帧检验序列,使用CRC检验
前同步码是为了使适配器的时钟与比特流达成同步;
同时我们要注意的是在MAC帧中并没有数据长度的标识,但由于传输时使用的是曼彻斯特编码的方式,所以通过对曼彻斯特编码的信号特点的观察便可确定是否传送完毕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值