《计算机网络 自顶向下方法》读书笔记 第6章 链路层和局域网

第6章 链路层和局域网

6.1链路层概述

1.运行链路层协议的任何设备称为节点。把沿着通信路径连接相邻节点的通信信道称为链路

2.链路层提供的服务:

  • 成帧。在每个网络层数据报经链路传送之前,几乎所有的链路层协议都要将其用链路层帧封装起来。一个帧由一个数字字段和若干首部字段组成,其中网络层数据报就插在数据字段中。帧的结构由链路层协议规定。

  • 链路接入。媒体访问控制协议(Medium Access Control, MAC)协议规定了帧在链路上传输的规则。

  • 可靠交付。当链路层协议提供可靠交付服务时,它保证无差错地经链路层移动每个网络层数据报。

  • 差错检测和纠正。当帧中的一个比特作为1传输时,接收方节点中的链路层硬件可能不正确地将其判断为0,反之亦然。这种比特差错是由信号衰减和电磁噪声导致的。因为没有必要转发一个有差错的数据报,所以许多链路层协议提供一种机制来检测这样的比特差错。通过让发送节点在帧中包含差错检测比特,让接收节点进行差错检查,以此来完成这项工作。

3.链路层的主体部分是在网络适配器中实现的,网络适配器有时也称为网络接口卡(Network Interface Card, NIC)。位于网络适配器核心的是链路层控制器,该控制器是一个实现了许多链路层服务的专用芯片。因此,链路层控制器的许多功能是用硬件实现的。越来越多的网络适配器被综合进主机的主板。部分链路层是在运行于主机CPU上的软件中实现的。链路层的软件组件实现了高层链路层功能,如组装链路层寻址信息和激活控制器硬件。所以,链路层是硬件和软件的结合体。

6.2差错检测和纠正技术

1.在发送节点,为了保护比特免受差错,使用差错检测和纠正比特(Error-Detection and-Correction, EDC)来增强数据D。通常,要保护的数据不仅包括从网络层传递下来需要通过链路传输的数据报,而且包括链路帧首部中的链路的寻址信息、序号和其他字段。链路级中的D和EDC都被发送到接收节点。

2.奇偶校验使用单个奇偶校验位。假设要发送的信息D有d比特。在偶校验方案中,发送方只需包含一个附加的比特,选择它的值,使得这d + 1比特中1的总数是偶数。对于奇校验方案,选择校验比特值使得有奇数个1。接收方只需要数一数接收的d + 1比特中1的数目即可。如果在采用偶校验方案中发现了奇数个值为1的比特,接收方知道出现了奇数个比特差错。

3.二维奇偶校验方案中,D中的d个比特被划分为i行j列。对每行和每列计算奇偶值。产生的i + j + 1奇偶比特构成了链路层帧的差错检测比特。包含比特值改变的列和行的校验值都将会出现差错。因此接收方不仅可以检测到出现了单个比特差错的事实,而且还可以利用存在就校验差错的列和行的索引来实际识别发生差错的比特并纠正它。

4.检验和技术中,数据的字节作为16比特的整数对待并求和。这个和的反码形成了携带在报文段首部的因特网检验和。接收方通过对接收的数据的和取反码,并且检测其结果是否全为1比特来检测检验和。如果这些比特中有任何比特是0,就可以指示出差错。

5.现今的计算机网络中广泛应用的差错检测技术基于循环冗余检测(Cyclic Redundancy Check, CRC)。CRC编码也称为多项式编码,因为该编码能够将要发送的比特串看作为系数是0和1一个多项式,对比特串的操作被解释为多项式算术。

​ 假设发送节点要发送一个d比特的数据D给接收节点。发送方和接收方首先必须协商一个r + 1比特模式,称为生成多项式,将其表示为G。要求G的最高有效比特是1。对于一个给定的数据段D,发送方要选择r个附加比特R,并将它们附加到D上,使得得到的d + r比特模式用模2算术恰好能被G整除。接收方用G去除接收到的d + r比特。如果余数非0,接收方知道出现了差错;否则认为数据正确而被接收。

​ 求附加比特R的公式:
R = r e m a i n d e r D ⋅ 2 r G R = remainder \frac{D \cdot 2^r}{G} R=remainder

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值