计算机网络3 数据链路层

本文详细探讨了数据链路层在点对点信道和广播信道中的应用,重点讲解了点对点协议PPP的原理、帧格式和工作状态,以及以太网的MAC层、CSMA/CD协议、集线器与交换机的区别,以及虚拟局域网VLAN的概念。内容涵盖了数据链路层的封装成帧、透明传输和差错检测机制,展示了数据链路层在确保网络通信可靠性方面的重要作用。
摘要由CSDN通过智能技术生成

使用点对点信道的数据链路层

数据链路层属于计算机网络的低层,主要使用:

  • 点对点信道:一对一的点对点通信方式,点对点协议PPP
  • 广播信道:一对多的广播通信方式,CSMA/CD协议

数据链路和帧

  • 链路(link):从一个结点到相邻结点的一段物理线路(有线或无线),中间没有其它交换结点,链路只是一条完整通信路径的组成部分

  • 数据链路(data link):通信时,除了必要的物理线路,还必须有通信协议来控制数据传输,将这些协议的硬件和软件加到链路上,就构成了数据链路

    • 常用网络适配器来实现这些协议,一般的适配器包括了数据链路层和物理层的功能
  • 帧(frame):数据链路层把网络层交下来的数据构成帧发送到链路上,以及把接收到的帧中数据取出,并上交给网络层

  • 点对点协议的数据链路层简化

在这里插入图片描述

  • 点对点信道的数据链路层在进行通信时的主要步骤如下:
    • 结点A的数据链路层把网络层交下来的IP数据报添加首部和尾部封装成帧
    • 结点A把封装好的帧发送给结点B的数据链路层
    • 若结点B的数据链路层收到的帧无差错,则从收到的帧中提取出IP数据报上交给网络层,否则丢弃此帧

三个基本问题

数据链路层协议有很多,但三个基本问题是共同的:封装成帧、透明传输、差错检测

封装成帧

  • 用户主机有从应用层到物理层的全部5层,而交换机只有网络层、链路层、物理层3层

  • 在互联网上传输数据的基本单位是分组(即网络层的IP数据报)

  • 网络层的IP数据报送到数据链路层,便是帧是数据部分,根据不同协议加上帧头帧尾,构成完整的帧,这样的帧是数据链路层的数据传送单元

  • 封装成帧(framing)就是将网络层传下来的IP数据报加上首部和尾部,接收端从物理层获得的比特流后,根据首部和尾部的标识,就能识别帧的开始和结束

  • 首部和尾部的重要作用是进行帧定界,即确定帧的界限,此外还包括许多必要的控制信息

  • 每一种链路层协议都规定了所能传送的帧的数据部分长度上限-最大传送单元MTU

在这里插入图片描述

  • 当数据是由可打印的ASCII码组成的文本文件时,帧定界可以使用特殊的帧定界符

在这里插入图片描述

  • SOH(start of header):放在帧的首部,表示帧的首部,十六进制编码为0x01
  • EOT(end of transmission):放在帧的尾部,表示帧的结束,十六进制编码为0x04
  • 当出现差错时,例如连续收到两次SOH,则第一次的EOT丢失了,认为这次传输失败,直接丢弃

透明传输

  • 透明:某一个实际存在的事物,看起来却好像不存在一样
  • 透明传输:无论什么样的比特组合,都能按照原样没有差错地通过这个数据链路层,或者说,数据链路层对于这些数据来说是透明的
  • 由于帧头帧尾使用专门的控制字符,因此数据中不能有帧定界符,否则出现帧定界错误

在这里插入图片描述

  • 为了解决透明传输问题,就必须使数据中的SOH、EOT在接收端不被解释为控制字符
    • 在发送端,如果数据中出现SOH、EOT,则在前面插入转义字符ESC
    • 在接收端,删除数据中出现的转义字符ESC
    • 这种方式称为字节填充(byte stuffing)字符填充(character stuffing)
    • 如果转义字符也出现在数据中,那么在前面再插入一个转义字符

在这里插入图片描述

差错检测

  • 为了保证数据传输的可靠性,在计算机网络传输数据时,必须采取各种差错检测措施
  • 目前数据链路层广泛使用的是循环冗余校验CRC(Cyclic Redundancy Check)
  • 在数据链路层要进行差错校验,数据必须按帧传输,每一帧加上冗余码FCS
  • 仅仅使用CRC仅能做到无比特差错传输,但是不能实现可靠传输(无传输差错)
    • 比特差错:传输过程出现1变0、0变1
    • 传输差错:帧丢失、帧重复、帧失序
  • 在通信质量较差的无线传输链路中,数据链路层使用确认和重传机制,向上提供可靠传输服务
    • 在CRC基础上,增加帧编号、确认和重传机制
    • 收到正确的帧,需要向发送方发送确认,发送方超时没有
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值