计算机网络——数据链路层——思维导图

数据链路层

————————

思维导图下载地址

————————

  1. 功能
    1.1. 将物理层可能出错的物理连接改造为逻辑上无差错的数据链路
    1.2. 为网络层提供服务
    1.2.1. 无确认无连接
    1.2.2. 有确认无连接
    1.2.3. 有确认面向连接
    1.3. 链路管理
    1.3.1. 数据链路层连接的建立、维持和释放
    1.4. 帧定界
    1.5. 帧同步
    1.5.1. 接收方能从接收到的二进制比特流中区分出帧的起始和终止
    1.6. 透明传输
    1.7. 差错控制
  2. 组帧
    2.1. 概念
    2.1.1. 为了在出错时不需要重发全部数据,使接受方能够正确接受并检查所传输的帧
    发送方依据一定规则把网络层递交的分组封装成帧(组帧)
    2.1.2. 主要解决帧定界、帧同步、透明传输的问题
    2.2. 方法
    2.2.1. 字符计数法
    2.2.1.1. 在帧头部使用一个计数字段标明帧内字符数(包含自身所占用的一个字节)
    2.2.2. 字符填充的首尾定界符法
    2.2.2.1. 使用特定的字符来确定帧的开始(DLE STX)与结束(DLE ETX)
    2.2.2.2. 转义字符 DLE(若数据出现DLE,则在其前再加上DLE)
    2.2.3. 比特填充的首尾标志法
    2.2.3.1. 使用一个特定的比特模式,即01111110标志帧的开始与结束
    2.2.3.2. 为避免误判,若遇到5个连续的1则再其后插入一个0
    2.2.3.3. HDLC采用零比特填充法
    2.2.4. 违规编码法
    2.2.4.1. 物理层进行比特编码时,通常采用违规编码法
    2.2.4.2. 例如 曼彻斯特编码 【“1”-"高-低"电平对】【“0”-"低-高"电平对】而"高-高"与"低-低"是违规的,用作表示开始和结束
    2.2.4.3. 无需填充技术就能实现数据传输的透明性,只适用于冗余编码的特殊编码环境
  3. 差错控制
    3.1. 传输中的差错都是由噪声引起的
    3.1.1. 信道固有的、持续存在的随机热噪声
    3.1.1.1. 提高信噪比减少干扰
    3.1.1.1.1. 随机差错
    3.1.2. 外界特定短暂原因造成的冲击噪声
    3.1.2.1. 突发差错
    3.2. 自动重传请求【ARQ】
    3.2.1. 接受端检测出差错,就设法通知发送端重发,直到接受到正确的码字为止
    3.3. 前向纠错【FEC】
    3.3.1. 不仅发现差错,可确定错误位置,从而加以纠错
    3.4. 检错编码
    3.4.1. 奇偶校验码
    3.4.1.1. n-1位信息元+1位校验元
    3.4.1.2. 奇校验
    3.4.1.2.1. 附加一个校验元后,码长为n的码字中1的数量为奇数
    3.4.1.3. 偶校验
    3.4.1.3.1. 附加一个校验元后,码长为n的码字中1的数量为偶数
    3.4.2. 循环冗余码(多项式码)【CRC】
    3.4.2.1. 任意一个由二进制位串组成的代码都可以和一个系数仅为‘0’和‘1’取值的多项式一一对应。
    3.4.2.1.1. k位帧视为x(k-1)到x0的k次多项式的系数序列
    3.4.2.1.2. 7位帧1010111对应的多项式为x6+x4+x^2+x+1
    3.4.2.2. 给定一个m bit的帧或报文,生成一个r bit的序列 称为帧检验序列(FCS)
    则形成的帧由m+r比特组成,发送方和接收方确定一个多项式G(x)(最高位和最低位必须为1)
    使得帧能被G(x)整除,接收方使用G(x)除去帧,无余数则无差错
    3.4.2.3. 模2除法
    3.4.2.3.1. 与逻辑异或相似: 1-1=0, 1-0=1, 0-1=1 , 0-0=0,
    3.4.2.4. CRC校验的步骤
    3.4.2.4.1. (1)选择一个生成多项式,作为对接收的帧进行除法运算时的除数
    3.4.2.4.1.1. ①最高位和最低位必须为1;
    3.4.2.4.1.2. ②当CRC码的任何一位发生错误时,新帧除生成多项式后余数不为0;
    3.4.2.4.1.3. ③不同位发生错误时,余数应该是不同的;
    3.4.2.4.1.4. 例如 x5+x3+x2+1,写为二进制:101101
    3.4.2.4.2. (2)计算CRC校验码位数k=生成多项式位数-1,在要发送的数据帧后加k个0
    除第一步用生成多项式转化的二进制数,得到的余数即为CRC校验码;
    3.4.2.4.2.1. 模2除时,余数的位数必须只比除数少一位,不能省略0
    3.4.2.4.3. (3)把得到的校验码CRC代替补足的k个0,构成一个新数据帧发送到接收端,接收端将新帧除以之前选择的除数,
    如果没有余数,则表明该数据帧在传输过程中没有出错,否则出错;
    3.4.2.5. 例子
    3.4.2.5.1. G(x)=1101(r=3) 待传送数据M=101001(m=6)
    3.4.2.5.1.1. 余数R=001 发送的数据 101001001
    3.4.2.5.1.2.
    3.5. 纠错编码
    3.5.1. 将码字从左至右依次编码 1 2 3 … n
    3.5.2. 校验位是2的幂的位 (1 2 4 8 … )其余位按顺序填入数据
    3.5.3. 将每个编号改写扩展式(1=1 2=2 3=1+2 4=4 5=1+4 … 11=1+2+8)(2的幂的和的形式)
    每个数据位由其扩展式编号的位检测 (11由1、2、8位检测)
    3.5.4. m个信息位插入r个校验位组成m+r位码字 要求 2^r >=m+r+1
    3.5.5. 海明码纠错d位 需要码距2d+1
    海明码检错d位 需要码距d+1
    3.5.6. 例如 4位数据编码
    3.5.6.1.
  4. 流量控制
    4.1. 接受方控制发送方发送数据的速率
    4.2. 常见方式
    4.2.1. 停止-等待流量控制
    4.2.1.1. 发送方每发送一帧,都等待接收方的应答信号,收到信号才能继续发送
    接收方每收到一帧,都反馈一个应答信号,表示可以接受下一帧
    不反馈应答信号则发送方必须一直等待,效率很低
    4.2.2. 滑动窗口流量控制
    4.2.2.1. 发送窗口
    4.2.2.1.1. 任意时刻发送方都维持一组连续的允许发送的帧的序号
    4.2.2.2. 接受窗口
    4.2.2.2.1. 任意时刻接受方都维持一组连续的允许接受的帧的序号
    4.2.2.3. 发送窗口代表还未收到对方确认信息的情况下还可以发送多少个数据
    数据帧属于接受窗口才允许接受,否则丢弃
    4.3. 数据链路层的滑动窗口协议中,窗口的大小在传输过程中是固定的
    4.4. 当接收窗口的大小为1时,可保证帧的有序接收
  5. 可靠传输机制
    5.1. 确认
    5.1.1. 确认是一种无数据的控制帧,可以使接收方能让发送方知道哪些内容被正确接受
    5.1.2. 捎带确认
    5.1.2.1. 为提高传输效率,将确认捎带在一个回复帧中
    5.2. 超时重传
    5.2.1. 设置一个计时器,发送方发送某个数据后,在一定时间内没收到发送的数据帧确认,则重新发送
    5.3. 自动请求重传【ARQ】
    5.3.1. 停止等待
    5.3.1.1. 单帧滑动窗口和停止等待协议
    5.3.1.1.1. 相当于发送窗口和接受窗口为1的滑动窗口协议
    5.3.1.1.2. 可能出现的2种差错
    5.3.1.1.2.1. 到达目的站的帧已经损坏
    5.3.1.1.2.1.1. 接受方检测错误后,将其丢弃
    源站配备计时器,等待确认,超时仍未收到确认,则再次发送相同的帧
    5.3.1.1.2.2. 数据帧正确,确认帧破坏
    5.3.1.1.2.2.1. 发送方收不到确认,重传数据帧,接收方收到后丢弃,再重传确认帧
    5.3.1.1.3. 连续出现相同发送编号的数据帧 发送端超时重传
    5.3.1.1.4. 连续出现序号相同的确认帧 接受端收到重复帧
    5.3.1.1.5. 为判定重复帧,需要设置帧缓冲区
    5.3.1.1.6.
    5.3.2. 连续ARQ协议
    5.3.2.1. 后退N帧
    5.3.2.1.1. 多帧滑动窗口与后退N帧协议【GBN】
    5.3.2.1.1.1. 连续发送帧,接收方检测出失序的信息帧,要求重发最后一个正确接受的信息帧后的所有帧,
    或当发送方发送了N个帧之后,若发现N个帧的前一个帧在计时器超时后仍未返回确认信息,
    则该帧被判出错或丢失,发送方重传出错帧和其后的N个帧
    5.3.2.1.1.2. 一般采用累计确认
    5.3.2.1.1.3. 接受窗口为1,保证按序接受数据帧
    5.3.2.1.1.4. 采用n比特对帧编号,则发送窗口应满足1 <= W <= (2^n - 1)
    5.3.2.1.1.4.1. W>(2^n -1),接收方无法分辨新帧和旧帧
    5.3.2.1.1.5. 误码率大时,其不一定优于停止-等待协议
    5.3.2.1.1.6.
    5.3.2.2. 选择性重传
    5.3.2.2.1. 多帧滑动窗口与选择重传协议【SR】
    5.3.2.2.1.1. 每个发送缓冲区对应一个计时器,计时器超时,缓冲区的帧重传,且一旦接收方怀疑帧出错,就会发送否定帧NAK,要求重传
    5.3.2.2.1.2. 接受和发送窗口均大于1
    5.3.2.2.1.3. 若采用n比特对帧编码【接受窗口+发送窗口<=2^n 、接受窗口不能超过发送窗口】
    【接受窗口<=2(n-1)、接受窗口为最大值时,接受窗口=发送窗口=2(n-1)】
    5.3.2.2.1.4.
    5.4. 从滑动窗口的概念看,停止-等待协议、后退N帧协议和选择重传协议只在发送窗口大小和接收窗口的大小有所差别
    5.4.1.
    5.5. 信道利用率
    5.5.1. 发送方在一个发送周期内,有效地发送数据所需要的时间占整个发送周期的比率
    5.5.1.1. 利用率=(L/C)/T
    5.5.1.1.1. 发送周期T
    周期内发送的数据 L比特
    发送方数据传输率C
    发送有效数据的时间L/C
    5.5.1.1.1.1. T= 一个帧的传输时延+ 一个帧的传播时延
    • 确认帧的传输时延(题目一般不考虑)+ 确认帧的传播时延
      5.5.1.2. 信道吞吐率=信道利用率×发送方发送速率
  6. 介质访问控制
    6.1. 主要任务
    6.1.1. 为使用介质的每个结点隔离来自同一信道其他结点所传送的信号
    6.2. 概念
    6.2.1. 决定广播信道中信道分配的协议属于数据链路层的一个子层
    6.3. 信道划分介质访问控制
    6.3.1. 多路复用技术
    6.3.1.1. 在一条介质上同时携带多个传输信号
    6.3.1.1.1.
    6.3.2. 频分多路复用【FDM】
    6.3.2.1.
    6.3.3. 时分多路复用【TDM】
    6.3.3.1.
    6.3.4. 波分多路复用【WDM】
    6.3.4.1.
    6.3.5. 码分多路复用【CDM】
    6.3.5.1. 码分多路复用是靠不同的编码来区分各路原始信号的一种复用方式
    6.4. 随机访问介质访问控制
    6.4.1. ALOHA协议
    6.4.1.1. 纯 ALOHA 协议
    6.4.1.1.1. 当网络中的任何一个站点需要发送数据时,可以不进行任何检测就发送数据
    如果在一段时间内没有收到确认, 该站点就认为传输过程中发生了冲突
    发送站点需要等待一段时间后再发送数据,直至发送成功
    6.4.1.1.1.1.
    6.4.1.1.2. 想发就发,没确认就冲突,等会再发
    6.4.1.2. 时隙 ALOHA 协议
    6.4.1.2.1. 把所有各站在时间上都同步起来,并将时间划分为一段段等长的时隙, 规定只能在每个时隙开始时才能发送一个帧
    6.4.1.2.2.
    6.4.2. 载波侦听多路访问【CSMA】协议
    6.4.2.1. 1-坚持CSMA
    6.4.2.1.1. 当一个结点要发送数据时,首先侦听信道:如果信道空闲就立即发送数据,如果信道忙则等待,同时继续侦听直至信道空闲
    如果发生冲突,则随机等待一段时间后,再重新开始侦听信道
    6.4.2.1.2. “1-坚持”的含义是指:当侦听到信道忙后,继续坚持侦听信道,当侦听到信道空闲后,发送帧的概率为 1,即立刻发送数据
    6.4.2.1.3. 一直监听,空闲才发,忙则等待,冲突等会再发
    6.4.2.2. 非坚持CSMA
    6.4.2.2.1. 当一个结点要发送数据时,首先侦听信道:如果信道空闲就立即发送数据
    如果信道忙就放弃侦听,等待一个随机的时间后再重复上述过程
    6.4.2.2.2. 先监听,空闲就发,忙就等会再监听
    6.4.2.3. p-坚持CSMA
    6.4.2.3.1. 1、首先帧听信道,如果信道忙,则等待下一个时隙再帧听
    2、如果信道空闲,以概率p发送数据,以概率1-p推迟到下一个时隙
    3、如果在下一个时隙信道仍然空闲,则仍以概率 p 发送数 据,以概率 1-p 推迟到下一个时隙
    4、一直持续到数据发送成功或者因其他结点发送数据而检测到信道忙为止
    5、若是后者,则等待一个随机的时间后再重新开始侦听
    6.4.2.3.1.1. 用于时分信道
    6.4.2.3.2. 与非坚持相似 但加了时隙,以某种概率发送数据
    6.4.2.4.
    6.4.3. 载波侦听多路访问/碰撞检测协议【CSMA/CD】(detection)
    6.4.3.1. 先听后发,边听边发(区别于 CSMA 协议),冲突停发,随机重发
    6.4.3.1.1. 一直监听,边听边发,空闲就发,忙就等待,冲突停发,传拥塞信号,随机重发
    6.4.3.2. 1)适配器从它的父结点获得一个网络层数据报,准备一个以太网帧,并把该帧放到适配器缓冲区中。
    2)如果适配器侦听到信道空闲,开始传输该帧。若信道忙,则等待直至侦听到没有信号能量才开始传输该帧
    3)在传输过程中,适配器检测来自其他适配器的信号能量。 如果传输完整个帧而没有检测到来自其他适配器的信号能量,则完成该帧的传输。
    否则,适配器停止传输,传输一个48 比特的拥塞信号
    4)在中止(即传输拥塞信号)以后,适配器采用截断二进制指数退避算法来等待一段随机时间后返回到第 2)步
    6.4.3.3. CSMA/CD 的以太网不可能进行全双工通信,而只能进行半双工通信
    6.4.3.4.
    6.4.3.5.
    6.4.3.5.1. 总线传播时延有时通过线路长度来描述
    6.4.4. 载波侦听多路访问/避免碰撞协议【CSMA/CA】协议(avoid)
    6.4.4.1. 预约信道
    6.4.4.2. ACK帧
    6.4.4.3. RTS/CTS帧
    6.4.4.3.1. 解决隐蔽站问题
    6.5. 轮询访问介质访问控制
    6.5.1. 令牌传递协议
  7. 局域网
    7.1. 局域网的基本概念和体系结构
    7.1.1. 概念
    7.1.1.1. 在一个较小的地理范围(学校)内将各种计算机、外部设备和数据库系统等通过双绞线、同轴电缆等连接介质互相连接起来,组成资源和信息共享的计算机互联网络
    7.1.2. 特点
    7.1.2.1. 1)为一个单位所拥有,且地理范围和站点数目均有限
    2)所有的站共享较高的总带宽(即较高的数据传输速率)
    3)较低的时延和较低的误码率
    4)各站为平等关系而不是主从关系
    5)能进行广播和组播
    7.1.3. 拓扑结构
    7.1.3.1. 星形
    7.1.3.2. 环形
    7.1.3.3. 总线形
    7.1.3.4. 星形和总线形结合
    7.1.4. 拓扑实现
    7.1.4.1. 以太网(目前使用范围最广的局域网) 一一逻辑拓扑是总线形结构,物理拓扑是星形或拓展星形结构
    令牌环(Token Ring, IEEE802.5) 一一逻辑拓扑是环形结构,物理拓扑是星形结构
    FDDI (光纤分布数字接口, IEEE802.8)一一逻辑拓扑是环形结构,物理拓扑是双环结构
    7.1.5. 局域网的介质访问控制方法
    7.1.5.1. CSMA/CD、令牌总线和令牌环
    前两种方法主要用于总线形局域网,令牌环主要用于环形局域网
    7.2. 以太网
    7.2.1. 以太网的MAC帧
    7.2.1.1. 每一块网络适配器(网卡)有一个地址,称为 MAC 地址,也称物理地址
    7.2.1.2.
    7.2.1.2.1. 前导码:使接受端与发送端时钟同步
    地址:通常使用 6 字节(48bit)地址(MAC 地址)
    类型:2 字节,指出数据域中携带的数据应交给哪个协议实体处理
    数据:46~1500 字节,包含高层的协议消息。由于 CSMA/CD 算法的限制,以太网帧必须满足最小长度要求 64 字节,当数据较少时必须加以填充 (o~46 字节)
    7.2.1.2.2. 填充: 0~46 字节,当帧长太短时填充帧,使之达到 64 字节最小长度
    校验码 (FCS): 4 字节,校验范围从目的地址段到数据段的末尾,算法采用 32 位循环冗余码(CRC),不但需要检验 MAC 帧的数据部分,还要检验目的地址、源地址和类型宇段,但是不校验前导码
    7.2.2. 以太网的所有计算机共享一条总线,以广播方式发送信息,适用CSMA/CD对总线进行访问控制,采用两项措施简化通信流程1、无连接工作方式 2、不对数据帧编号,也不要求确认,即仅提供尽最大努力的交付
  8. 广域网
    8.1. 通常是指覆盖范围很广(远远超过一个城市的范围〉的长距离网络。
    8.2.
    8.3.
    8.4. PPP点对点协议
    8.4.1. 使用串行线路通信的【面向字节】的协议, 该协议应用在直接连接两个结点的链路之上
    设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共同的解决方案
    8.4.2. 面向字节的协议
    8.5. 高级数据链路控制协议【HDLC】
    8.5.1. 面向比特的协议
    8.5.2. 采用比特填充的首尾标志法实现透明传输
  9. 数据链路层设备
    9.1. 网桥
    9.1.1. 工作在链路层的MAC子层,可以使以太网各网段成为隔离开的碰撞域
    9.1.2. 各网段相对独立,一个网段的故障不会影响到另一个网段
    9.1.3. 网桥处理数据的对象是帧,所以它是工作在数据链路层的设备
    9.1.4. 中继器、放大器处理数据的对象是信号,所以它是工作在物理层的设备
    9.1.5. 优点
    9.1.5.1. ①过滤通信量
    ②扩大了物理范围
    ③可使用不同的物理层
    ④可互联不同类型的局域网
    ⑤提高了可靠性
    ⑥性能得到改善
    9.1.6. 缺点
    9.1.6.1. ①增加时延
    ②MAC子层没有流量控制功能(流量控制需要用到编号机制, 编号机制的实现在 LLC 子层)
    ③不同MAC子层的网段桥接在一起时, 需要帧格式的转换
    ④网桥只适合于用户数不多和通信量不太大的局域网,否则有时还会因传播过多的广播信息而产生网络拥塞——广播风暴
    9.1.7.
    9.1.8. 两种网桥
    9.1.8.1. 透明网桥(选择的不是最佳路由)
    9.1.8.2. 源路由网桥(选择的是最佳路由)
    9.2. 以太网交换机
    9.2.1. 实质
    9.2.1.1. 多端口网桥
    9.2.2. 将网络分成小的冲突域,为每个工作站提供更高的带宽
    9.2.3. 利用以太网交换机可以现虚拟局域网(VLAN),其不仅可以隔离冲突域,也可以隔离广播域
    9.2.4. 特点
    9.2.4.1. 1) 以太网交换机的每个端口都直接与单个主机相连(普通网桥的端口往往是连接到以太网的一个网段),并且一般都工作在全双工方式。
    2)以太网交换机能同时连通许多对的端口,使每一对相互通信的主机都能像独占通信媒体那样,无碰撞地传输数据。
    3)以太网交换机也是一种即插即用设备(和透明网桥一样),其内部的帧的转发表也是通过自学习算法自动地逐渐建立起来的。
    4)以太网交换机由于使用了专用的交换结构芯片,其交换速率较高。
    5)以太网交换机独占传输媒体的带宽。
    9.2.4.2. 对于普通10Mb/s的共享式以太网,若共有N个用户, 则每个用户占有的平均带宽只有总带宽的N分之一
    在使用以太网交换机时,每个端口到主机的带宽还是10Mb/s,用户在通信时是独占带宽的,这是交换机的最大优点
    9.2.5. 交换模式
    9.2.5.1. 直通式
    9.2.5.1.1. 只检查帧的目的地址,这使得帧在接收后几乎能马上就被传出去
    这种方式速度很快,但缺乏智能性和安全性,也无法支持具有不同速率的端口的交换
    9.2.5.2. 存储转发式
    9.2.5.2.1. 机先将接收到的帧缓存到高速缓存器中,并检查数据是否正确,确认无误后通过查找表转换成输出端口将该帧发送出去。如果发现帧有错,就将其丢弃。 存储转发式的 优点是可靠性高,并能支持不同速度端口间的转换,缺点是延迟较大。
  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
加0规则:按指定的除数的位数-1,加在传送的数据后面 101001000 3)商的规则 补位后,余数部分首位是0,除数首位是1,商0 其它商1 4)求余数的规则: 异或(不同为1,相同为0) 5) 最后留下余数R,做FCS 6) 最终传送数据是:传送数据 + 余数 101001001 7) 接受方:用接收到的数据/协商好的除数==>余数为0,传输过程没有错误;否则错误,扔掉,要求重传 8)说明 除数是数据链层协商定的 商不管 注 具有r检测位的多项式,能够检测出所有小于或等于r的突发错误 长度大于r+1的错误,逃脱的概率是1/(2的r次方) 仅能做到无差错接收(不是可靠传输) CRC是检错码。CRC是具有纠错功能的,但是在计算机网络中,一般是出错就直接要求重传,所以默认CRC是检错码(不是纠错码) 概述:在接收端不但能检查错误,而且还能纠正检查出来的错误。常见的纠错编码是海明编码 概述:在信息字段中插入若干位数据,用于监督码字里的哪一位数据发生了变化,具有一位纠错能力 1)求出校验码位数 原理 假设信息位有k位,冗余位r位,整个码字的长度就设置为k+r位 每一位数据有0、1两个状态,r位可以表示2^r种状态 一种状态来表示一个码元发生了错误;k+r位码元,需要k+r种状态来表示 还额外需要一位表示数据的正确情况 所以2^r-1>=k+r才能检查一位错误 例子 推D=101101的海明码,信息位有6位
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值