ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

计算机网络 自顶向下 第6章 链路层和局域网(上)读书笔记

2022-04-10 09:00:26  阅读:166  来源: 互联网

标签:读书笔记 比特 传输 信道 自顶向下 时隙 节点 链路层


最近在二刷《计算机网络——自顶向下》做点笔记,加深印象,书不在手边时也能有个参考。之前的章节会陆续补充。

两种链路层信道:

  • 广播信道:如有线局域网、卫星网、混合光纤同轴电缆(HFC)。需要媒体访问协议来协调帧传输。
  • 点对点通信链路:如长距离链路连接的两台路由器、PC到以太网交换机。

6.1 链路层概述

节点(node):运行链路层协议的任何设备。如主机、路由器、交换机、Wi-Fi接入点

链路(link):连接相邻节点的通信信道

6.1.1 链路层提供的服务

  1. 成帧:封装成链路层帧(如以太网帧格式)
  2. 链路接入:主要用于广播信道,媒体访问控制(MAC)协议,用于协调多个节点的帧传输
  3. 可靠交付:通常通过确认和重传实现。对于光线、同轴、双绞线,很少出现比特差错,可靠交付会产生不必要的开销,因此以太网没有提供可靠交付
  4. 差错检测和纠正:运输层有因特网校验和(checksum);链路层的差错检测更复杂,用硬件实现。以太网采用CRC,能够检测差错,但是不能纠正(直接丢弃)。

6.1.2 链路层在何处实现

链路层主体部分在网络适配器(网络接口卡NIC),其核心是链路层控制器

大部分链路层服务在硬件(链路层控制器)中实现:

  • 成帧:从内存中接收IP数据报
  • 链路接入
  • 差错检测

部分链路层在软件中实现:

  • 组装寻址信息、激活控制器硬件
  • 响应控制器中断、向上传递给网络层等

链路层是软硬件结合体, 是协议栈中软件与硬件交接的地方。

6.2 差错检测和纠正技术

通常,要保护网络层数据报以及链路层帧首部。即使采用了差错检测比特,还是可能有未检出比特出差。

三种技术:

  • 奇偶校验
  • 检验和(checksum):运输层
  • 循环冗余检测(CRC):适配器链路层

6.2.1 奇偶校验

  • 偶校验:数据+校验比特共偶数个1

  • 奇校验:数据+校验比特共奇数个1

实际上差错经常以“突发”的方式聚集在一起,一旦出错通常会有多个比特一起出错。单比特奇偶检验保护的一帧中未检出差错概率达50%。

二维奇偶检验

可以检测并纠正单个比特差错(包括校验比特本身)

  • 能够检测但不能纠正两个比特差错

6.2.2 检验和方法

d比特数据,按 k 比特划分为一个个整数,把这些整数加起来。

因特网检验和将数据按16bit整数对待,求和,取反码(每一位取反)。接收方对接收到的数据(包括检验和)求和取反,检测是否全1。

TCP和UDP对所有字段包括首部和数据字段都计算因特网检验和。

  • 运输层软件实现,简单快速
  • 链路层在适配器中用专用硬件实现,能快速执行复杂的CRC

6.2.3 循环冗余检测 CRC

也称为多项式编码,将发送比特串看成是系数是0和1的多项式。每个CRC标准都能检测

  • 任何小于r+1比特的突发差错
  • 任何奇数个比特差错
  • 长度大于 r+1 的比特突发差错以概率 1-0.5^r 被检测到

6.3 多路访问链路和协议

点对点链路:

  • PPP:Point-to-Point Protocol
  • HDLC:High-level Data Link Control

广播链路:

  • 以太网
  • 无线局域网

多路访问信道:

  • 有线共享(如电缆接入网)
  • 无线共享(如Wi-Fi)
  • 卫星

多路访问协议:规范共享广播信道上的传输行为,协调活跃节点的传输

  • 信道划分协议
  • 随机接入协议
  • 轮流协议

理想情况下,对于速率为 R bps的广播信道:

  1. 单节点发送,具有R bps吞吐量
  2. M个节点发送,每个节点平均吞吐量 R/M bps
  3. 协议分散,无单点故障
  4. 协议简单,实现成本低

6.3.1 信道划分协议

  • 时分多路复用 TDM
  • 频分多路复用 FDM
  • 码分多址 CDMA(Code Division Multiple Access)

TDM将时间划分为时间帧,每个时间帧 time frame 分为N个时隙 slot。TDM 消除了碰撞、公平。但单节点只能利用 R/N 带宽,即使只有一个发送节点。且节点必须等待轮次。

FDM 优缺点同 TDM:消除碰撞,单节点最大 R/N 带宽。

CDMA 对每个节点分配不同的编码,同时传输,不在乎其他节点干扰。CDMA编码类似于 TDM的时隙和FDM的频率。军用到民用蜂窝电话。

6.3.2 随机接入协议

节点总是以全部速率 R 发送。碰撞时,等待随机时延,反复重发,直到无碰撞通过。

以太网是CSMA协议。

1. 时隙 ALOHA

  • 所有帧长L比特
  • 时隙:传一帧所用的时间
  • 节点只在时隙起点开始传输帧
  • 节点是同步的,每个节点知道时隙何时开始
  • 如果碰撞,所有节点在时隙结束前检测到碰撞
  • 发送节点等待时隙开始,传输帧
  • 如果没碰撞,成功传输,无需重传
  • 如果碰撞,以概率p在后续时隙中重传

最大效率: 一个节点成功传输的概率 p*(1-p)^(N-1)

N个节点活跃节点,时隙 ALOHA的效率是 Np*(1-p)^(N-1)

当 N趋向于∞,最大效率 37%。另外37%空闲,另外26%碰撞。

2. ALOHA

非时隙、完全分散。收到网络层数据报,立即发送,如果碰撞,发完之后立即以概率p重传。

ALOHA 最大效率是时隙ALOHA的一半。

3. 载波侦听多路访问 CSMA

  • 载波侦听:节点发送前先听信道,如果有其他节点正在发送,则等待一段时间没有传输后再开始发送。

  • 碰撞检测:检测到碰撞,立即停止传输。

这两个规则包含在CSMA和CSMA/CD中。

为什么有载波侦听还会碰撞?因为传播时延。A节点发送数据,但传播到B节点需要一段时间,这时B节点也开始发送。传播时延越长,碰撞机会越大。

4. 具有碰撞检测的载波侦听多路访问 CSMA/CD

CSMA没有碰撞检测,即使碰撞也会继续发送完。

CSMA/CD 检测到碰撞立即停止传输。

  1. 适配器从网络层获取数据报,准备链路层帧,放入帧适配器缓存中
  2. 如果适配器侦测到信道空闲,开始传输;如果信道正忙,等待
  3. 传输过程中监听信道其他适配器的信号能量
  4. 如果传完整帧每检测到其他适配器信号能量,传输完成;如果检测到碰撞,终止传输
  5. 终止传输后,等待随机时间量,返回步骤 2

随机时间量的选取:以太网和DOCSIS使用二进制指数后退算法。一个帧经历n次碰撞后,随机从 {0...2^n - 1} 中选择K。对于以太网,等待的时间是发送512比特所需时间的K倍。

5. CSMA/CD 效率

定义:大量活跃节点,大量帧要发送

传输时间指传是一个最大长度以太网帧的时间,对于10M以太网,约为1.2ms。

效率=1/(1+5*传播时延/传输时间)

  • 传播时延接近0时,效率趋近1
  • 传输时间变大时,效率也趋近1(占用信道时间长)

6.3.3 轮流协议

6.3 节中对于速率为 R bps的广播信道的理想特性:

  1. 单节点发送,具有R bps吞吐量
  2. M个节点发送,每个节点平均吞吐量 R/M bps

随机接入的 ALOHA 和 CSMA 具备第1个特性,但不具备第2个特性。轮流协议可以满足第2个特性。

两种重要的轮流协议:

  • 轮询协议:有一个主节点,依次告知每个节点能够传输帧的最多数量,通过观察信道是否空闲判断节点是否发送完成。消除了碰撞和空时隙,但引入了轮询时延——依次询问每个非活跃节点。如果主节点故障,整个信道不可用!例子:802.15和蓝牙协议。
  • 令牌传递协议(token):没有主节点。小的令牌帧,以固定次序在节点之间交换。节点收到令牌,若有帧传输,则发送最大数目的帧数,然后把令牌发给下个节点;否则直接把令牌转发给下个节点。如果节点故障(如忘记释放令牌),可能使整个信道崩溃。

6.3.4 DOCSIS:用于电缆因特网的链路层协议

电缆接入网用到了信道划分协议、随机接入协议和轮流协议。

  • CMTS:Cable Modem Termination System,电缆调制解调器端接系统

  • DOCSIS:Data Over Cable Service Interface,CMTS:数据经电缆服务接口

DOCSIS 使用 FDM 将下行(CMTS到Modem)和上行(Modem到CMTS)划分为多个频率信道。每个上下行均为广播信道。下行只有CMTS发送,没有多路访问问题;上行可能出现碰撞。每个上行信道划分为时间间隔(类TDM),CMTS在下行信道通过MAP控制报文显式准许各个Modem在特定微时隙进行传输。

为了通知CMTS有数据发送,Modem在微时隙的特定间隔内向CMTS发送请求帧。请求帧以随机接入方式传输,不能帧听信道是否空闲,也没有碰撞检测,如果没有在下一个下行控制报文收到响应,则以二进制指数回退延缓重发。

标签:读书笔记,比特,传输,信道,自顶向下,时隙,节点,链路层
来源: https://www.cnblogs.com/tengzijian/p/16124738.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有