计算机网络学习笔记--数据链路层

    数据链路层的信道类型:

    点到点信道:这种信道使用一对一的点到点通信方式。

    广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。

    链路(link)是一条点到点的物理线路段,中间没有任何其他的交换节点。一条链路只是一条通路的一个组成部分。

    数据链路(data link)。除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。现最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。一般的适配器都包括了数据链路层和物理层这两层功能。

    帧是在数据包上加上帧头、帧尾、物理层地址、校验值。

    数据链路层有三个基本问题:封装成帧、透明传输、差错校验。

    封装成帧:是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。首部和尾部的一个重要作用就是进行帧定界。

    用控制字符进行帧定界的方法举例:



透明传输(加转义字符与不加效果一样,就像透明一样):

    用字节填充法解决透明传输问题:

    发送端的数据链路层在数据中出现字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码为1B)

    字节填充(byte staffing)或字符填充(character staffing)

    接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。如果转义字符也出现在数据当中,那么应在转义字符前插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其中前面的一个。

 差错检验:

    传输过程中可能产生比特差错:1可能会变成0,而0也可能变成1。在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER(Bit Error Rate)。误码率和信噪比有很大关系。为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检验措施。(不纠错,错误就扔掉。可靠传输是传输层实现的,数据链路层只负责无差错接收。)

    使用循环冗余校验CRC,CRC使用的是模2除法,与二进制除法不同二进制的乘除法都是带进位和借位的,模二乘除都是不带进位和借位的,模二除的本质就是做异或运算。

    例如:参考博客点击打开链接

帧检验序列FCS

    在数据后面添加上的冗余码称为帧检验序列FCS。循环冗余检验CRC和帧检验序列FCS并不等同。

    CRC是一种常用的检错方法,而FCS是添加在数据后面的冗余码。FCS可以用CRC这种方法得出,但CRC并非用来获得FCS的唯一方法。

    检验:若得到的余数R=0,则判定这个帧没有错,就接受。若余数R不等于0,则判定这个帧有差错,就丢弃。

    特点:但这种检查方法并不能确定究竟是哪一个或哪几个bit出现了差错。 只要经过严格的挑选,并使用位数足够多的除数P,那么出现检测不到的差错的概率就很小很小。

    PPP协议不使用序号和确认机制的原因:1、在数据链路层出现差错的概率不大时,使用比较简单的PPP协议较为合理。2、在因特网环境下,PPP的信息字段放入的数据是IP数据报。数据链路层的可靠传输并不能够保证网络层传输也是可靠的。3、帧检验序列FCS字段可保证无差错接收。

    广播:所有的计算机都能接收到的信号。目标MAC地址全1的是广播帧。

    当数据帧被接收后,FCS就被删除了。

    帧间最小距离:帧间最小间隔为9.6us,相当于96bit的发送时间。一个站在检测到总线开始空闲后,还要等待9.6us才能再次发送数据。这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。

    

    


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值