文章是用xmind直接生成的md文档,可能看起来有点别扭。
建议下载思维导图,请戳链接:https://pan.baidu.com/s/1ekZ2DtKPL1o6T7tzIgnX5A
提取码:6pg6
参考书:王道计算机。思维导图是以我期末复习准备的,所以有些不会考的点只是提了名字,没有具体介绍。
3数据链路层
基本概念
结点
- 主机,路由器
链路
- 网络中两个结点之间的物理通道
- 传输介质
- 双绞线,光纤,微波
- 分类
- 有线链路
- 无线链路
- 传输介质
数据链路
- 网络中两个结点间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路
帧
- 链路层的协议数据单元,封装网络层数据报
功能
概述
- 在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠的传输到相邻结点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路
为网络层提供服务
- 无确认的无连接服务
- 适用于实时通信或误码率较低的通信信道,如以太网
- 有确认的无连接服务
- 适用于误码率较高的通信信道,如无线通信
- 有确认的面向连接服务
- 适用于通信要求较高的场合
链路管理
- 连接的建立、维持和释放(用于面向连接的服务)
组帧
- 把网络层递交的分组封装成帧
- 主要解决帧定界、帧同步、透明传输等问题
流量控制
差错控制(帧错/位错)
组帧
字符计数法
- 在帧头部使用一个计数字段来标明帧内字符数
字符填充法
- 使用一些特定的字符来定界z一帧的开始与结束,填充转义字符来避免数据中的特殊字符被误判为首尾定界符
零比特填充法
- 使用01111110来定界。信息中每遇到5个连续的1,就在后面插一个0
- 允许数据帧中包含任意个数的比特,也允许每个字符的编码包含任意个数的比特
违规编码法
差错控制
差错来源
- 全局性
- 线路本身电气特性所产生的随机噪声(热噪声),是固有的
- 提高信噪比来减少或避免干扰(对传感器下手)
- 线路本身电气特性所产生的随机噪声(热噪声),是固有的
- 局部性
- 外界特定的短暂原因造成的冲击噪声,是主要原因
- 利用编码技术解决
- 外界特定的短暂原因造成的冲击噪声,是主要原因
差错
- 位错(比特位出错,1变成0,0变成1)
- 检错编码
- 奇偶校验码
- n-1位信息元,1位校验元
- 奇校验码
- 偶校验码
- 只能检查出奇数个比特错误
- 循环冗余码(CRC)
- 奇偶校验码
- 纠错编码
- 海明码
- 检错编码
- 帧错
- 丢失
- 重复
- 失序
流量控制与可靠传输机制
流量控制
- 控制发送速率,使接收方有足够的缓冲空间来接收每个帧
- 比较
- 传输层
- 接收端给发送端一个窗口公告
- 数据链路层
- 接收方收不下就不回复确认
- 传输层
可靠传输
- 发送端发什么,接收端接收什么
滑动窗口机制解决
- 流量控制(收不下就不给确认,想法也发不了)
- 可靠传输(发送方自动重传)
方法
- 停止-等待协议
- 每发送完一个帧就停止发送,等待对方的确认,在收到确认后再发送下一个帧
- 分类
- 无差错情况
- 有差错情况
- 超时计数器
- 每次发送一个帧就启动一个计时器,重传时间应比帧传输的平均RTT长一些
- 发完一个帧后,必须保留副本
- 数据帧和确认帧必须编号
- 分类
- 数据帧丢失或检测到帧出错
- 重传
- ACK丢失
- 超时重传
- ACK迟到
- 因为之前已经重传过,所以接收到后就直接丢弃
- 数据帧丢失或检测到帧出错
- 超时计数器
- 性能分析
- 信道利用率太低
- 信道利用率
- (L/C)/T. L是发送周期T内发送的比特数,C是发送方数据传输率,发送周期指从开始发送数据,到收到第一个确认帧为止,即发送周期=发送时间+RTT
- 信道吞吐率
- 信道利用率*发送方的发送速率
- 滑动窗口协议
- 特点
- 增加序号范围
- 发送方需要缓存多个分组
- 后退N帧协议(GBN)
- 滑动窗口机制
- 多个发送窗口,一个接收窗口
- 发送方必须响应的三件事
- 上层调用
- 收到一个ACK
- 累积确认
- 超时事件
- 如果出现超时,重传所有已发送但未被确认的帧
- 接收方要做的事
- 如果正确收到n号帧,则为n号帧发送一个ACK,并将该帧中的数据部分交付给上层
- 其余情况丢弃帧,并为最近按序接收的帧重新发送ACK。接收方只需维护一个信息,expextedseqnum(下一个按序接收的帧序号)
- 确认序号最大的,按序到达的帧
- 性能分析
- 提高了信道利用率
- 在重传时必须把原来已经正确传送的数据帧重传,使传送效率降低
- 总结
- 累积确认(偶尔捎带确认)
- 接收方只按顺序接收帧,不按序则丢弃
- 发送窗口大小上限
- 若采用n个比特对帧编号,那么发送窗口尺寸W应满足1<=W<=2^n-1
- 接收窗口大小为1
- 滑动窗口机制
- 选择重传协议(SR)
- 多个发送窗口,多个接收窗口
- 发送方必须响应的三件事
- 上层调用
- 收到一个ACK
- 如果收到ACK,假如该帧序号在窗口内,则SR发送方将那个被确认的帧标记为已接收。
- 超时事件
- 一个超时事件发生后只重传一个帧
- 接收方要做的事
- 来者不拒(接收窗口内的)。SR接收方将确认一个正确接收的帧而不管其是否按序。失序的帧将被缓存,并返回给发送法一个该帧的确认帧(收谁确认谁),直到所有的帧(即序号更小的帧)皆被收到为止,这时才可以将一批帧按序交付给上层,然后向前移动滑动窗口。如果收到了窗口序号外(小于窗口下界)的帧,就返回一个ACK,其他情况就忽略该帧。
- 总结
- 对数据帧逐一确认,收一个确认一个
- 只重传出错帧
- 接收方有缓存
- 滑动窗口长度
- 发送窗口最好等于接收窗口(大了会溢出,小了没意义)。若用n个比特对帧编号,接收窗口=发送窗口=2^(n-1)
- 特点
信道划分介质访问控制
传输数据时使用的两种链路
- 点对点链路(两个相邻结点通过一个链路相连,没有第三者)
- 应用:PPP协议,常用于广域网
- 广播式链路(所有主机共享通信介质)
- 应用:早期的总线以太网、无线局域网,常用于局域网
- 典型拓扑结构
- 总线型
- 星型(逻辑总线型)
介质访问控制
- 含义
- 采取一定的措施使得两对结点之间的通信不会发生互相干扰的情况
- 分类
- 静态划分信道—信道划分介质访问控制。不会产生冲突。
- 频分多路复用FDM:每个用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源
- 系统效率高,实现容易。
- 时分多路复用TDM:将时间划分为一段段等长的时分复用帧(TDM帧)。每一时分复用的用户在每一个TDM帧占用固定序号的时隙,所有用户轮流占用信道。信道利用率低
- 改进型:统计时分复用STDM
- 波分多路复用WDM:光的频分多路复用。在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来
- 码分多路复用CDM
- 码分多址(CDMA)是码分复用的一种方式
- 频分多路复用FDM:每个用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源
- 动态分配信道。动态媒体接入控制/多点接入。特点:信道并非在用户通信时固定分配给用户。
- 轮询访问介质访问控制。既不会产生冲突,发送时又占全部带宽。
- 轮询协议
- 主机点轮流邀请从属结点发送数据
- 令牌传递协议
- 令牌:一个特殊格式的MAC控制帧,不含任何信息。确保同一时刻只有一个结点独占信道
- 令牌环网无冲突。但每个结点只是在一定时间内(令牌持有时间)获得发送数据的权利。
- 问题
- 令牌开销
- 等待延迟
- 单点故障
- 应用于令牌环网(物理星型拓扑,逻辑环形拓扑)。采用令牌传送方式的网络常用于负载较重、通信量较大的网络中。
- 轮询协议
- 随机访问介质访问控制。(所有用户可随机发送信息,发送信息时占用全部带宽)网络负载重:产生冲突开销;负载轻:共享信道效率高,单个结点可利用信道全部带宽。
- ALOHA协议
- (纯)ALOHA协议
- 不监听信道,不按时间槽发送,随机重发。想发就发。吞吐量较低,效率较低。
- 时隙ALOHA协议
- 把时间分成若干个相同的时间片,所有用户在时间片开始时刻立刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻在发送。即控制想发就发的随意性。
- (纯)ALOHA协议
- 载波监听多路访问协议CSMA(carrier sense multiple access)
- CS:载波侦听/监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据
- MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上
- 协议思想:发送帧之前,监听信道
- 信道空闲:发送完整帧
- 信道忙:推迟发送
- 分类
- 1-坚持CSMA
- 发消息前先监听信道,空闲则直接传输。忙则一直监听,一有空闲马上传输。如有冲突则等待一个随机长的时间再监听。
- 媒体使用率高
- 容易发生冲突
- 发消息前先监听信道,空闲则直接传输。忙则一直监听,一有空闲马上传输。如有冲突则等待一个随机长的时间再监听。
- 非坚持CSMA
- 发消息前先监听信道,空闲则直接传输。忙则等待一个随机时间再监听。
- 减少冲突可能性
- 媒体利用率低
- 发消息前先监听信道,空闲则直接传输。忙则等待一个随机时间再监听。
- p-坚持CSMA
- 发消息前先监听,空闲则以p概率直接传输,概率1-p等到下一个时间槽再传输。忙则等待一个随机时间再监听。
- 减少冲突,媒体利用率高
- 发生冲突后还是坚持要把数据帧发送完,造成浪费
- 发消息前先监听,空闲则以p概率直接传输,概率1-p等到下一个时间槽再传输。忙则等待一个随机时间再监听。
- 1-坚持CSMA
- 载波监听多点接入/碰撞检测CSMA/CD(carrier sense multiple access with collision detection)
- CS:载波侦听/监听,每一个站在发送数据之前以及发送数据时都要检测一下总线上是否有其他计算机在发送数据
- MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。总线型网络,有线网络。
- CD:碰撞检测(冲突检测),“边发送边侦听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。半双工网络
- 重传时机的确定:截断二进制指数规避算法。基本退避时间为两倍的总线传播时延即2t,定义参数k为重传次数,且k=min{重传次数,10},即k最大为10。从离散的整数集合[0,1,2^k-1]中随机去一个数r,重传所需的退避时间为r倍的基本退避时间。最大重传次数为16次。
- 最小帧长=总线的传播时延x数据传输速率x2。以太网规定最短帧长为64B,凡是长度小于64B的都是无效帧。
- 载波监听多点接入/碰撞避免CSMA/CA(carrier sense multiple access with collision avoidance)
- 常用于无线局域网
- 发送数据前先检测信道是否空闲,空闲则发出RTS(request to send),包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息;忙则等待。接收端收到RTS后,将响应CTS(clear to send)。发送端收端收到CTS后,开始发送数据帧(同时预约信道:发送方告知其他站点自己要传多久数据)。接收端收到数据用CRC检错,正确则响应ACK帧。发送方收到ACK就可以进行下一个数据帧的传输,若没有则一直重传至规定重发次数为止(采用二进制指数规避算法)。
- ALOHA协议
- 轮询访问介质访问控制。既不会产生冲突,发送时又占全部带宽。
- 静态划分信道—信道划分介质访问控制。不会产生冲突。
局域网基本概念和体系结构
局域网
- 在某一区域内有多台计算机互联成的计算机组,使用广播信道
- 特点
- 覆盖范围小
- 使用专门的传输介质(双绞线、同轴电缆)进行联网,数据传输率高(10Mb/s~1Gb/s)
- 通信延迟时间短,误码率低,可靠性较高
- 各站为平等关系,共享传输信道
- 多采用分布式控制和广播式通信,能进行广播和组播
- 四种拓扑结构
- 星型
- 总线型
- 环形
- 树型
- 介质访问控制
- CSMA/CD
- 常用于总线型局域网,也用于树型网络
- 令牌总线
- 常用于总线型局域网,也用于树型网络
- 令牌环
- 用于环形局域网,如令牌环网
- CSMA/CD
- 分类
- 以太网
- 使用IEEE 802.3系列标准
- 令牌环网
- FDDI网(Fiber Distributed Data Interface)
- ATM网(Asynchronous Transfer Mode)
- 较新型的单元交换技术,使用53字节固定长度的单元进行交换
- 无线局域网(Wireless Local Area Network;WLAN)
- 采用IEEE 802.11标准
- 以太网
- IEEE 802
- 局域网、城域网技术系列标准。
- IEEE 802.3 以太网介质访问控制协议(CSMA/CD)及物理层技术规范
- IEEE 802.5 令牌环网(Token-Ring)的介质访问控制协议及物理层技术规范
- IEEE 802.8 光纤技术咨询组,提供有关光纤联网的技术咨询
- IEEE 802.11 无线局域网(WLAN)的介质访问控制协议及物理层技术规范
- 局域网、城域网技术系列标准。
- 传输介质
- 有线局域网
- 双绞线、同轴电缆
- 无线局域网
- 电磁波
- 有线局域网
- 链路层的两个控制子层
- LLC子层(逻辑链路控制子层)
- 识别网络层协议,对他们进行封装。
- MAC子层(介质访问控制子层)
- 数据帧的封装/卸装,帧的寻址和识别,帧的接收与发送,链路的管理,帧的差错控制等
- LLC子层(逻辑链路控制子层)
以太网Ethernet
- 基带总线局域网规范,使用CSMA/CD技术
- 提供无连接、不可靠的服务
- 只能实现无差错接收,不实现可靠传输
- 拓扑结构
- 逻辑上总线,物理上星型
- 10-BASE-T以太网
- 传送基带信号的双绞线以太网,T表示采用双绞线。无屏蔽双绞线(UTP),传输速率10Mb/s
- 物理上采用星型拓扑,逻辑上总线型,每段双绞线最长100m
- 采用曼彻斯特编码
- 采用CSMA/CD介质访问控制
- 以太网MAC帧格式
- Ethernet v2
- 在IP数据报基础上形成MAC帧。MAC帧中固定有6B的目的地址字段,6B的源地址字段,2B的类型字段,尾部的4B的FCS字段,MAC帧总长度为64B,因此IP数据报的最短长度为46B,最长1500B。
- Ethernet v2
- 高速以太网(速率大于等于100Mb/)
- 100BASE-T以太网
- 双绞线上,支持全双工和半双工,可在全双工下无冲突
- 吉比特以太网
- 光纤或双绞线上,支持全双工和半双工
- 10吉比特以太网
- 光纤上,只支持全双工
- 100BASE-T以太网
广域网中的PPP协议&HDLC协议
广域网
- 通信子网主要使用分组交换技术。
- 因特网是最大的广域网
点对点协议PPP(Point-to-Point Protocol)
- 数据链路层协议,用户使用拨号电话接入因特网时一般都是使用PPP协议
- 简单
- 对链路层的帧,无需纠错,无需序号,无需流量控制
- 封装成帧
- 帧定界符
- 透明传输
- 与帧定界符一样的比特组合的数据应如何处理
- 异步线路用字节填充
- 同步线路用比特填充
- 与帧定界符一样的比特组合的数据应如何处理
- 多种网络层协议
- 封装IP数据报可以采用多种协议
- 多种类型链路
- 串行/并行,同步/异步,电/光等等
- 差错检测
- 错就丢弃
- 检测连接状态
- 链路是否正常工作
- 最大传送单元
- 数据部分最大长度MTU
- 网络层地址协商
- 知道通信双方的网络层地址
- 数据压缩协商
- 不需要的功能
- 纠错
- 流量控制
- 序号
- 不支持多点线路
- 三个组成部分
- 一个将IP数据报封装到串行链路(同步串行/异步串行)的方法
- 链路控制协议LCP:建立并维护数据链路连接。身份验证。
- 网络控制协议:PPP可支持多种网络层协议,每个网络层协议都要有一个相应的NCP来配置,为网络层协议建立和配置逻辑连接
- 帧格式
- 以字节为单位。信息部分不超过1500B
高级数据链路控制(High-Level Data Link Control)HDLC
- 是一个在同步网上传输数据、面向比特的数据链路层协议。报文可透明传输,采用全双工通信,所有帧采用CRC校验。
- 三种站
- 主站
- 发送命令(包括数据信息)帧、接收响应帧,并负责对整个链路的控制系统的初启、流程的控制、差错检测或恢复等
- 从站
- 接收由主站发来的命令帧,向主站发送响应帧
- 复合站
- 既能发送又能接收,并且负责控制
- 主站
PPP与HDLC比较
- 相同点
- 都只支持全双工链路
- 都可实现透明传输
- 都可实现差错检测,但不纠正差错
- 不同点
- PPP面向字节,HDLC面向比特
- PPP协议有2B的协议字段,HDLC没有
- PPP无序号和确认机制,HDLC有编号和确认机制
- PPP不可靠,HDLC可靠
链路层设备
物理层扩展以太网
- 光纤
- 主干集线器
链路层扩展以太网
- 网桥:根据MAC帧的目的地址对帧进行转发和过滤。有转发表
- 透明网桥
- 透明指以太网上的站点不知道所发送的帧经过哪几个网桥,是一种即插即用的设备—自学习。
- 源路由网桥
- 在发送帧时,把详细的最佳路由信息放在帧的首部
- 方法:源站以广播方式向欲通信的目的站发送一个发现帧
- 透明网桥
- 交换机(多接口网桥)
- 直通式交换机
- 查完目的地址立即转发。
- 延迟小可靠性低,无法支持具有不同速率的端口的交换
- 存储转发交换机
- 将帧放入高速缓存,并检查是否正确,正确则转发,错误则丢弃。
- 延迟大,可靠性高,可支持具有不同速率的端口的交换
- 直通式交换机
冲突域和广播域
- 冲突域:同一时间只能有一台设备发送信息的范围
- 广播域:如果一个站点发出一个广播信号,所有能接收到这个信号的设备范围
XMind: ZEN - Trial Version