计算机网络 数据链路层
数据链路层
书籍:计算机网络自顶向下. TCP/IP详解
以太网帧的格式
在网络层,给数据包增加了接收端和发送端的IP地址。在数据链路层里,增加了帧头帧尾,MAC地址和校验值。
数据链路层的三个基本问题
封装成帧(framing)
- 封装成帧(framing)就是在一段数据的前后分别 添加首部和尾部,然后就构成了一个帧。确定帧的界限。
- 首部和尾部的一个重要作用就是进行帧定界
- 最大传送单元(Maximum Transfer Unit,MTU)。意思是IP数据报的最大长度(不包括帧头帧尾)。MTU的单位是字节。
透明传输
解决办法:
- 发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符 “ESC”(其十六进制编码是 1B)。
- 字节填充(byte stuffing)或字符填充(character stuffing)——接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。
- 如果转义字符也出现数据当中,那么应在转义字 符前面插入一个转义字符。当接收端收到连续的 两个转义字符时,就删除其中前面的一个。
差错检测
- 在传输过程中可能会产生比特差错:1 可能会变成0而0也可能变成1。
- 在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率 BER (Bit Error Rate)。
- 误码率与信噪比有很大的关系。
- 为了保证数据传输的可靠性,在计算机网络传 输数据时,必须采用各种差错检测措施。
解决办法:
- 仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受(accept)
- “无差错接受”是指:“凡是接受的帧(即不包括丢弃的帧),我们都能以非常接近于 1 的概率认为这些帧在传输过程中没有产生差错”
- 要做到“可靠传输”(即发送什么就收到什么) 就必须再加上确认和重传机制。
两种情况下的数据链路层
使用点对点信道的数据链路层
PPP协议
ppp协议(point to point protocol)是数据链路层协议,例如用户使用拨号上网。
使用广播信道的数据链路层
局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。
局域网具有如下的一些主要优点:
- 具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件 和软件资源。
- 便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。
-
提高了系统的可靠性、可用性和残存性。
- 局域网的拓扑:
CSMA/CD 协议
- CSMA/CD 表示 Carrier Sense Multiple Access with Collision Detection。
- “多点接入”表示许多计算机以多点接入的方式连接在一根总线上。
- “载波监听”是指每一个站在发送数据之前先 要检测一下总线上是否有其他计算机在发送数 据,如果有,则暂时不要发送数据,以免发生 碰撞。
- 总线上并没有什么“载波”。因此,“载波监 听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。
- 使用 CSMA/CD 协议的以太网不能进行全 双工通信而只能进行双向交替通信(半双工通信)。
争用期:
最先发送数据帧的站,在发送数据帧后至 多经过时间 2t (两倍的端到端往返时延) 就可知道发送的数据帧是否遭受了碰撞。以太网的端到端往返时延 2t 称为争用期, 或碰撞窗口。经过争用期这段时间还没有检测到碰撞, 才能肯定这次发送不会发生碰撞。
- 争用期的长度
- 以太网取 51.2 μs 为争用期的长度。
- 对于 10 Mb/s 以太网,在争用期内可发送 512 bit,即 64 字节。
- 以太网在发送数据时,若前 64 字节没有发 生冲突,则后续的数据就不会发生冲突。
- 最短有效帧长
- 如果发生冲突,就一定是在发送的前 64 字节之内。
- 由于一检测到冲突就立即中止发送,这时 已经发送出去的数据一定小于 64 字节。
- 以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。
- 二进制指数类型退避算法
- 发生碰撞的站在停止发送数据后,要推迟 (退避)一个随机时间才能再发送数据。
- 强化碰撞;当发送数据的站一旦发现发生了碰撞时:
- 立即停止发送数据;
- 再继续发送若干比特的人为干扰信号(jamming signal),以便让所有用户都知道现在已经发生 了碰撞。
既已览卷至此,何不品评一二: