课业-计算机网络第三章

1. 数据链路层

1.1. 数据链路层概述

链路是从一个结点到相邻结点的一段物理线路,数据链路则是在链路的基础上增加了一些必要的硬件(如网络适配器)和软件(如协议的实现)

网络中的主机、路由器等都必须实现数据链路层

局域网中的主机、交换机等都必须实现数据链路层

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

1.2. 三个问题

1.2.1. 帧界定

封装成帧 (framing) 就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。

首部和尾部的一个重要作用就是进行帧定界。

1.2.2. 发送方向

可以用编址(地址)的来解决

将帧的目的地址添加在帧中一起传输

1.2.3. 数据碰撞

1.3. 三个过程

1.3.1. 封装成帧

封装成帧 (framing) 就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。

首部和尾部的一个重要作用就是进行帧定界。

前导码

前同步码:作用是使接收方的时钟同步
帧开始定界符:表明其后面紧跟着的就是MAC帧
另外以太网还规定了帧间间隔为96比特时间,因此,MAC帧不需要帧结束定界符

1.3.2. 差错控制

奇偶校验

奇校验(odd parity):让传输的数据(包含校验位)中1的个数为奇数。即:如果传输字节中1的个数是偶数,则校验位为“1”,奇数相反。

偶校验(even parity):让传输的数据(包含校验位)中1的个数为偶数。即:如果传输字节中1的个数是偶数,则校验位为“0”,奇数相反。


需要传输”11001110”,数据中含5个”1”,所以其奇校验位为”0”,同时把”110011100”传输给接收方,接收方收到数据后再一次计算奇偶性,”110011100”中仍然含有5个”1”,所以接收方计算出的奇校验位还是”0”,与发送方一致,表示在此次传输过程中未发生错误。

当出现奇数个误码时,可检测出错误
奇校验使1的个数为奇数个,不是则发生误码

循环冗余校验CRC(Cyclic Redundancy Check)

1.3.3. 可靠传输

  • 解决透明传输问题

数据链路层应该对上层交付的数据有限制,其内容不能包含帧定界符的值
面向字节的物理链路使用字节填充 (byte stuffing) 或字符填充 (character stuffing),面向比特的物理链路使用比特填充的方法实现透明输

停止-等待协议的信道利用率

假设收发双方之间是一条直通的信道

TD:是发送方发送数据分组所耗费的发送时延

RTT:是收发双方之间的往返时间

TA:是接收方发送确认分组所耗费的发送时延

TA一般都远小于TD,可以忽略,当RTT远大于TD时,信道利用率会非常低

您的鼓励是我最大的动力!

欢迎关注我的其它发布渠道