IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 第三章 链路层【王道】 -> 正文阅读

[网络协议]第三章 链路层【王道】

1. 链路层概述和功能

概述

在这里插入图片描述

  • 结点:

    主机、路由器

  • 链路:

    网络中两个结点之间的 物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无限链路。

  • 数据链路:

    网络中两个结点之间的 逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成了数据链路。

  • 帧:

    链路层的协议数据单元,封装物理层数据报。

数据链路层 负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报。

功能

数据链路层在物理层提供服务的基础上向 物理层提供服务,其最基本的服务是将源自网络层来的数据 可靠 地传输到相邻节点地目标机网络层。

其主要作用是 加强物理层传输原始比特流地功能,将物理层提供地可能出错的物理连接改造成为 逻辑上无差错的数据链路 ,使之对网络层表现为一条无差错的链路。

功能:

  • 为网络层提供服务。 无确认无连接服务,有确认无连接服务,有确认面向连接服务。(有连接一定有确认)
  • 链路管理,即连接的建立、维持、释放(用于面向连接的服务)。
  • 组帧。
  • 流量控制。(限制发送方)
  • 差错控制(帧错 / 位错)

2. 封装成帧和透明传输

封装成帧

  • 封装成帧 就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。

接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记。从收到的比特流中识别帧的开始和结束。

在这里插入图片描述

首部和尾部包含许多的控制信息,他们的一个重要作用: 帧定界(确定帧的界限)。

  • 帧同步接收方 应当能从接收到的二进制比特流中区分出帧的起始和终止。

  • 组帧的四种方法

    • 字符计数法

      帧首部使用一个计数字段(第一个字节,8位)来标明帧内字符数

      在这里插入图片描述

      一出错后面全错,不常用。

    • 字符(节)填充法

      在这里插入图片描述

      使用字符填充法

      在这里插入图片描述

    • 零比特填充法

      在这里插入图片描述

      操作:

      ● 在发送端,扫描整个信息字段,只要连续5个1,就立即填入1个0.

      在这里插入图片描述

      ● 在接收端收到一个帧时,先找到标志字段确定边界,再用硬件对比特流进行扫描。发现连续5个1时,就把后面的0删除。

      在这里插入图片描述

      保证了透明传输:在传送的比特流中可以传送任意比特组合,而不会引起对帧边界的判断错误

    • 违规编码法

      在这里插入图片描述

    由于字节计数法中Count字段的脆弱性(其值若有差错将导致灾难性后果)及字符填充实现上的复杂性和不兼容性,目前较普遍使用的帧同步法是 比特填充违规编码法

透明传输

  • 透明传输 是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就 “看不见” 有什么妨碍数据传输的东西

    当所传数据中的比特组合恰巧于某一控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。

3. 差错控制(检错编码)

  • 差错产生的原因

    在这里插入图片描述

  • 差错的分类

    在这里插入图片描述

    在这里插入图片描述

  • 链路层差错控制原因

    在这里插入图片描述

    出现错误时,可以在第一个路由器中被发现,及时丢弃,不再往后传,避免把错误的数据传过去造成不必要的资源浪费。

  • 差错控制分类

    在这里插入图片描述

  • 数据链路层编码和物理层的数据编码与调制 不同

    • 物理层编码针对的是 单个比特,解决传输过程中比特的同步等问题,如曼彻斯特编码。
    • 数据链路层的编码针对的是 一组比特,它通过冗余码的技术实现一组二进制比特串在传输过程是否出现了差错。

    冗余编码:

    在这里插入图片描述

3.1 检错编码

奇偶校验码

在这里插入图片描述

  • 例:在这里插入图片描述

  • 奇偶校验码特点:

    • 只能检查出 奇数个比特 错误,检错能力为 50%.

      奇数个位数出错可以校验出来,偶数个位数出错不可以校验出来。

CRC循环冗余码

在这里插入图片描述

发送端:

  • 最终发送的数据:要发送的数据 + 帧检验序列 FCS

  • 计算冗余码

    1. 加0 假设生成多项式 G(x) 的阶为 r,则 r 加个 0.

      多项式 N 位,阶为 N - 1

    2. 模 2 除法 异或运算(同0异1)

      数据加0后 除以多项式,余数 为冗余码 / FCS / CRC 检验码的比特序列.

  • 例:

    在这里插入图片描述

    1. 多项式

      在这里插入图片描述

      多项式 5 位,阶为 5 - 1 = 4位

    2. 除 异或运算

      在这里插入图片描述

    最终发送数据为 1101011011 ┊1110


接收端:

接收端检错过程:把收到的每一个帧都除以同样的除数,然后检查得到的余数R.

  1. 余数为 0,判定这个帧没有差错,接受
  2. 余数不为0,判定这个帧有差错(无法确定到位),丢弃

FCS的生成以及接收端CRC检验都是硬件实现,处理很迅速,因此不会延误数据的传输。

在这里插入图片描述

链路层使用CRC检验,能够实现无比特差错的传输,但这 还不是可靠传输

可靠传输:数据链路层发送端发送什么,接收端就收到什么。

3.2 纠错编码

海明码

  • 海明码:

    发送双 比特错, 纠正单 比特错。

  • 工作原理:动一发而牵全身

  • 工作流程:

    在这里插入图片描述

  1. 确定校验码位数 r

    海明不等式: 2 r ≥ k + r + 1

    r 为冗余信息位, k 为信息位.

    ● r 位冗余位的组合共有 2 r

    ● 选择 2 r 种组合中的一种用于表示数据正确

    ● 其中 2 r - 1 种组合用于表示编码中产生一位错误

    ● 故得到海明不等式

    例:要发送的数据:D = 101101

    数据的位数 k = 6,满足不等式的最小 r 为 4,也就是 D = 101101的海明码应该有 6 + 4 = 10 位,其中原数据 6 位,校验码 4 位。

  2. 确定校验码和数据的位置

    假设4位校验码分别为 P 1 、P 2 、P 3 、P 4 ,数据从左到右为 D 1 、D 2、…、D 6.

    校验码 放在2的几次方的位置,数据 按序把空填满

    在这里插入图片描述

  3. 求校验码的值

    在这里插入图片描述

    令所有要校验的位异或 = 0

    校验码 P i 的二进制 i 位为 1,与二进制 i 位为1 数据 D j 进行异或,令结果为0求 P i

    ● P 1 ⊕ D 1 ⊕ D 2 ⊕ D 4 ⊕ D 5 = 0,得 P 1 = 0;

    ● P 2 ⊕ D 1 ⊕ D 3 ⊕ D 4 ⊕ D 6 = 0,得 P 2 = 0;

    ● P 3 ⊕ D 2 ⊕ D 3 ⊕ D 4 = 0,得 P 3 = 0;

    ● P 4 ⊕ D 5 ⊕ D 6 = 0,得 P 4 = 1;

    故 101101的海明码为 0 0 1 0 0 1 1 1 0 1 .

  4. 检错并纠错

    在这里插入图片描述

    假设第五位出错,因此接收到的数据位为 0010111101,

    令所有要校验的位异或运算

    ● P 1 ⊕ D 1 ⊕ D 2 ⊕ D 4 ⊕ D 5 = 1;

    ● P 2 ⊕ D 1 ⊕ D 3 ⊕ D 4 ⊕ D 6 = 0;

    ● P 3 ⊕ D 2 ⊕ D 3 ⊕ D 4 = 1;

    ● P 4 ⊕ D 5 ⊕ D 6 = 0;

    从后往前排得到 0101,即 5,说明第五位出现错误。

4. 流量控制与可靠传输机制

选择题中一定会考!!!

4.1 数据链路层的流量控制

  • 较高的发送速度较低的接收能力 的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。

  • 数据链路层的流量控制与传输层的流量控制区别:

    • 数据链路层的流量控制是点对点的,传输层的流量控制是端对端的.

    • 数据链路层 流量控制手段:接收方收不下就不回复确认;

      传输层 流量控制手段:接收端给发送端一个窗口公告。

4.2 流量控制的方法

4.2.1 停止 - 等待协议

  • 为什么要有停止 - 等待协议

    在这里插入图片描述

  • 研究停等协议的前提:

    在这里插入图片描述

  • 每发送完一个帧就停止发送,等待对方的确认,在收到确认后再发送下一个帧。

    发送窗口大小 = 1,接收窗口大小 = 1;

在这里插入图片描述

  • 停等协议有几种应用情况:

    • 无差错情况

      在这里插入图片描述

      每发送 1 个数据帧就停止并等待,因此用 1 bit 来编号就够。

    • 有差错情况

      • 数据帧丢失或检测到帧出错

        在这里插入图片描述

        超时重传 也叫 自动重传,注意:

        1. 发送完一个帧后,必须保留它的副本。
        2. 数据帧和确认帧必须编号。
      • ACK 丢失

        在这里插入图片描述

      • ACK 迟到

        在这里插入图片描述

  • 停等协议性能分析:

    简单,但信道利用率太低

    在这里插入图片描述

  • 补充:信道利用率

    发送方在一个发送周期内,有效发送数据所需要的时间占整个发送周期的比率。

    在这里插入图片描述

    例题:

    在这里插入图片描述

    设数据帧长度为 L bit,数据传输速率 C = 4 kb/s,单向30ms则双向是RTT = 60ms,

    在这里插入图片描述

4.2.2 滑动窗口协议

在这里插入图片描述

流水线技术

在这里插入图片描述

  1. 必须增加序号范围。
  2. 发送方需要缓存多个分组。

后退N帧协议(GBN)

  • 发送窗口大小 > 1,接收窗口大小 = 1;

在这里插入图片描述

接收方接收到 0 帧 后返回一个确认值,接收窗口往前移动到 1 号;

接收方收到确认后,也向前移动。

在这里插入图片描述

  • GBN发送方必须响应的三件事

    1) 上层的调用

    上层要发送数据时,发送方先检查发送窗口是否已满,如果 未满,则产生一个帧并将其发送;

    如果 窗口已满,发送方只需将数据返回给上层,暗示上层窗口已满。

    上层等一会再发送。(实际实现中,发送方可以缓存这些数据,窗口不满时再发送帧)。

    2) 收到了一个 ACK

    GBN 协议中,对 n 号帧的确认采用 累积确认 的方式,标明接收方已经收到 n 号帧和它之前的全部帧。

    3) 超时事件

    协议的名字为后退N帧 / 回退N帧,来源于出现丢失和时延过长帧时发送方的行为。

    就像在停等协议中一样,定时器将再次用于恢复数据帧或确认帧的丢失。

    如果出现超时,发送方重传所有已发送但未被确认的帧。

  • GBN接收方要做的事

    如果正确收到 n 号帧,并且按序,那么接收方为 n 帧发送一个 ACK,并将该帧中的数据部分交付给上层。

    其余情况都丢弃帧,并为最近按序接收的帧重新发送 ACK。接收方无需缓存任何失序帧,只需要维护一个信息:expectedseqnum(下一个按序接收的帧序号)

  • 滑动窗口长度

    若采用 n 个比特对帧编号,那么发送窗口的尺寸 WT 应满足:1 ≤ WT ≤ 2 n - 1。因为发送窗口尺寸过大,就会使得接收方无法区别新帧和旧帧。

在这里插入图片描述

假设发送窗口尺寸为4
出现超时,发送方重传所有已发送但未被确认的帧
  • GBN 协议重点总结(常考必考点)🔺

    1)累积确认(偶尔捎带确认)

    2)接收方只按顺序接收帧,不按序无情丢弃

    3)确认序列号最大的、按序到达的帧

    4)发送窗口最大为 2 n - 1,接收窗口大小为1

  • GBN协议性能分析

    1)因连续发送数据帧而提高了信道利用率

    2)在重传时必须把原来已经正确传送的数据帧重传,是传送效率降低。

  • 例题

    在这里插入图片描述

    发送方收到 0、2、3号帧的确认,看最大的,是3号帧,则说明0~3号帧传送成功,重新发送 4、5、6、7号帧,因此选 C。

选择重传协议(SR)

  • GBN协议的弊端

    在这里插入图片描述

  • 发送窗口大小 > 1,接收窗口大小 > 1;

    在这里插入图片描述

    (图中发送方、接收方的数据是没有关系的,只是要说明其数据是什么样的状态。)

  • SR发送方必须响应的三件事

    1)上层的调用

    从上层收到数据后,SR发送方检查下一个可用于该帧的序号,如果序号位于发送窗口内,则发送数据帧;

    否则就像 GBN 一样,要么将数据 缓存,要么 返回给上层 之后再传输。

    2)收到了一个 ACK

    如果收到 ACK,加入该帧序号在窗口内,则SR发送方将那个被确认的帧标记为已接收。

    如果该帧序号是窗口的下界(最左边第一个窗口对应得序号),则窗口向前移动到具有最小序号得未确认帧处。

    如果窗口移动了并且有序号在窗口内的未发送帧,则发送这些帧。

    3)超时事件

    每个帧都有自己的定时器,一个超时事件发生后 只重传一个帧

  • SR接收方要做的事

    SR接收方 确认一个正确接收的帧不管其是否按序。失序的帧将被 缓存,并返回给发送方一个该帧的确认帧【收谁确认谁】,直到所有帧(即序号更小的帧)皆被收到为止,这时才可以将一批帧按序交付给上层,然后 向前移动滑动窗口

    在这里插入图片描述

    如果收到了窗口序号外(小于窗口下界)的帧,就返回一个 ACK。

    其他情况,就忽略该帧。

  • 滑动窗口长度

    发送窗口最好等于接收窗口。(大了会溢出,小了没意义)

    WTmax = W Rmax = 2 ( n - 1 ) ,T指发送窗口,R是接收窗口,n是用多少位bit来标窗口序号

    一个例子,假如接收方和发送方都是3个窗口

    在这里插入图片描述

    图中左边最后的0号帧是重传的,右边的是新的0号帧,即会出现二义性问题。

    图中窗口序号为0、1、2、3,即需要2位bit来表示,窗口为 3 > max = 2 ( 2 - 1 ) = 2,就会出现二义性问题。

在这里插入图片描述

假设发送窗口尺寸为4
图中最后收到ACK 3后发送方滑动窗口还不能移动,因为还没收到 2 号帧的确认
  • SR协议重点总结

    1)对数据帧逐一确认,收一个确认一个

    2)只重传错误的帧

    3)接收方有缓存

    4)WTmax = W Rmax = 2 ( n - 1 )

  • 例题:

    在这里插入图片描述

    题中说超时的只有 0、2,未提到3,所以当前传0、2就可以了,选A

可靠传输、滑动窗口、流量控制

  • 可靠传输:发送端发什么,接收端接收什么。

  • 流量控制:控制发送速率,使接收方有足够的缓冲空间来接收每一个帧。

  • 滑动窗口解决:

    在这里插入图片描述

5. 介质访问控制

  • 传输数据使用的两种链路

    • 点对点链路

      两个相邻节点通过一个链路相连,没有第三者。

      应用:PPP协议,常用于 广域网

      在这里插入图片描述

    • 广播式链路

      所有主机共享通信介质。

      应用:早期的总线以太网、无线局域网,常用于 局域网

      在这里插入图片描述

      典型拓扑结构:总线型、星型(逻辑总线型)

      在这里插入图片描述

      总线型(左图)、星型(右图)
    如果线路出错,星型比总线型灵活
  • 介质访问控制

    介质访问控制 :采取一定的措施,使得两对节点之间的通信不会发生互相干扰的情况。

    在这里插入图片描述

5.1 静态划分信道

5.1.1 信道划分介质访问控制

  • 信道划分介质访问控制:

    将使用介质的每个设备与来自同一信道上的其他设备的 通信隔离开,把 时域和频域资源 合理地分配给网络上地设备。

    在这里插入图片描述

  • 类别

    在这里插入图片描述

频分多路复用 FDM

在这里插入图片描述

  • 优点:

    充分利用传输介质带宽,系统 效率较高

    由于技术比较成熟,实现也比较容易。

时分多路复用 TDM

  • 时分多路复用 TDM

在这里插入图片描述

  • 统计时分复用 STDM —— 改进地时分复用

    在这里插入图片描述

波分多路复用 WDM

光的频分多路复用

在这里插入图片描述

码分多路复用 CDM 🟣

  • 码分多址(CDMA):是码分复用的一种方式

  • 1bit分为多个码片 / 芯片(chip),每一个站点被指定一个唯一的 m 位的芯片序列

  • 发送 1 时站点发送芯片序列,发送 0 时发送芯片序列反码(通常把 0 写成 -1)

    如何不打架:多个站点同时发送数据的时候,要求各个站点芯片序列相互正交

    如何合并:各路数据在信道中被线性相加

    如何分离:合并的数据和源站规格化内积

5.2 动态分配信道

在这里插入图片描述

5.2.1 随机访问介质访问控制

ALOHA协议

  • 纯 ALOHA 协议

    ? 协议思想:不监听信道,不按时间槽发送,随机重发。 想发就发

    ? 冲突如何检测:如果发生冲突,接收方就会检测出差错,然后不予确认,发送方在一定时间内收不到确认就判断发生冲突。

    ? 冲突如何解决: 超时后等一随机时间再重传

    在这里插入图片描述

  • 时隙 ALOHA 协议

    ? 思想:把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发生。 控制想发就发的随意性

    在这里插入图片描述

  • 关于 ALOHA 需要知道的事

    1)纯 ALOHA 比时隙 ALOHA 吞吐量更低,效率更低。

    2)纯 ALOHA 想发就发,时隙 ALOHA 只有在时间片段开始时才能发。

?

CSMA 协议

? CS:载波侦听 / 监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。

在这里插入图片描述

? MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。

在这里插入图片描述

? 协议思想:发送帧之前,监听 信道。

在这里插入图片描述

?

  • 1-坚持 CSMA

    坚持指的是对于监听信道 之后的坚持。

    ? 思想:

    如果一个主机要发送消息,那么它先监听信道。

    空闲则直接传输,不必等待

    忙则一直监听,直到空闲马上传输

    如果有冲突(一段时间内未收到肯定回复),则等待一个随机长的时间再监听,重复上述过程。

    ? 优点:

    只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。

    ? 缺点:

    假如有两个或两个以上的站点有数据要发送,冲突就不可避免。

  • 非坚持CSMA

    非坚持指的是对于监听信道 之后就不继续监听。

    ? 思想:

    如果一个主机要发送信息,那么它先监听信道。

    空闲则直接传输,不必等待

    忙则等待一个随机的时间之后再进行监听

    ? 优点:

    采用随机的重发延迟时间可以减少冲突发生的可能性。

    ? 缺点:

    可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率降低。

  • p-坚持CSMA

    p-坚持指的是对于监听信道 空闲 的处理。

    ? 思想:

    如果一个主机要发送信息,那么它先监听信道。

    空闲则以 p 概率直接传输,不必等待;概率 1 - p 等待到下一个时间槽再传输

    忙则持续监听直到信道空闲再以 p 概率发送

    若冲突则等到下一个时间槽开始再监听并重复上述过程

    ? 优点:

    既能像非坚持算法那样减少冲突,又能像 1-坚持算法那样减少媒体空闲时间的这种方案。

    ? 缺点:

    发生冲突后还是要坚持把数据帧发送完,造成了浪费。

?

? 三种CSMA协议对比总结:

在这里插入图片描述

类比排队喝奶茶的三种人

在这里插入图片描述

?

CSMA / CD 协议 🟣

? 载波监听多点接入 / 碰撞检测 CSMA / CD (carrier sense multiple access with collision detection)

? CS:载波侦听 / 监听,每一个站在 发送数据之前 以及 发送数据时 都要检测一下总线上是否有其他计算机在发送数据。

? MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。 总线型网络

? CD:碰撞检测(冲突检测),“边发送边监听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。 半双工网络

?

? 先听后发为什么还会冲突:因为电磁波在总线上总是以有限的速率传播的。

?

  • 传播时延对载波监听的影响

    在这里插入图片描述

    A、B具体通信细节:

    在这里插入图片描述

?

  • 如何确定碰撞后的重传时机——截断二进制指数规避算法

    1)确定基本退避( 推迟 )时间为争用期
    2 τ 2 \tau 2τ
    2)定义参数 k ,它等于 重传次数,但 k 不超过 10,即 k = min[重传次数,10]。

    ? 当重传次数不超过 10 时,k 等于重传次数;

    ? 当重传次数大于 10 时,k 就不再增大而一直等于 10.

    3)从离散的整数集合 {0, 1, … , 2 k - 1} 中随机取出一个数 r,重传所需要退避的时间就是 r 倍的基本退避时间,即:
    2 τ ? r 2 \tau*r 2τ?r
    4)当重传达 16次 仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错。

    例如:

    在这里插入图片描述

    若连续多次发送冲突,就表明可能有 较多的站参与争用 信道。使用此算法可使重传需要推迟的平均时间随重传次数的增大而增大,因而减小发生碰撞的概率,有利于整个系统的稳定。

    例题:

    在这里插入图片描述

    k = min {11, 10} = 10

    2 10 - 1 = 1023

    r ∈ [0, 1, … , 1023]

    ?

  • 最小帧长问题

    帧的传输时延至少要两倍于信号在总线中的传播时延
    帧 长 ( b i t ) 数 据 传 输 速 率 ≥ 2 τ \frac{帧长(bit)}{数据传输速率} \ge 2\tau bit?2τ
    最小帧长 = 总线传播时延 × 数据传输速率 × 2
    2 τ × 数 据 传 输 速 率 2\tau \times数据传输速率 2τ×
    以太网规定最短帧长为 64 B,凡是长度小于 64 B 的都是由于冲突而异常终止的无效帧。

?

CSMA / CA 协议

? 载波监听多点接入 / 碰撞避免 CSMA / CA(carrier sense multiple access with collision avoidance)

在这里插入图片描述

  • CSMA / CA 协议工作原理

    ? 发送数据前,先检测信道是否空闲。

    ? 空闲则发出 RTS,RTS包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息;信道忙则等待。

    ? 接收端收到 RTS 后,将响应 CTS(clear to send)

    ? 发送端收到 CTS 后,开始发送数据帧(同时 预约信道:发送方告知其他站点自己要传多久数据)。

    ? 接收端收到数据帧后,将用 CRC 来检测数据是否正确,正确则 响应 ACK 帧

    ? 发送方收到 ACK 就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用 二进制指数退避算法 来确定随机的推迟时间)。

    总结下来就是:

    1) 预约信道

    2) ACK帧

    3)RTS / CTS 帧(可选)

  • CSMA / CD 与 CSMA / CA

    • 相同点:

      CSMA / CD 与 CSMA /CA 机制都从属于 CSMA 的思路,其核心是 先听再说。换言之,两个在接入信道之前都须要进行监听。当发现信道空闲后,才能进行接入。

    • 不同点:

      1)传输介质不同:CSMA / CD 用于总线式以太网【有线】,而 CSMA / CA 用于无线局域网【无线】。

      2)载波检测方式不同:因 传输介质不同, CSMA/CD 与 CSMA/CA的 检测方式也不同。 CSMA / CD 通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压就会随着发生变化;而 CSMA / CA 采用能量检测(ED)、载波检测(CS)和能量载波混合检测三种检测信道空闲的方式。

      3)CSMA/CD检测冲突,CSMA/CA避免冲突,二者出现冲突后都会进行 有上限的重传

?

5.2.2 轮询访问介质访问控制

  • 信道划分介质访问控制(MAC Multiple Access Contril)协议:

    ? 基于 多路复用 技术划分资源。

    ? 网络负载重:共享信道效率高,且公平

    ? 网络负载轻:共享信道效率低

  • 随机访问 MAC 协议: 冲突

    ? 用户根据意愿 随机 发送信息,发送信息时可独占信道带宽。

    ? 网络负载重:产生冲突开销

    ? 网络负载轻:共享信道效率高,单个结点可利用信道全部带宽

  • 轮询访问 MAC 协议 / 轮流协议 / 轮转访问 MAC 协议:

    既要 不产生冲突,又要发送时 占全部带宽

    • 轮询协议
    • 令牌传递协议

?

轮询协议

在这里插入图片描述

令牌传递协议

  • 令牌:一个特殊格式的 MAC 控制帧,不含任何信息。

    控制信道的使用,确保同一时刻只有一个结点独占信道。

    令牌环网无碰撞

    每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权力,并不是无限制地持有令牌。

  • 问题:

    1)令牌开销

    2)等待延迟

    3)单点故障

    应用于令牌环网(物理星型拓扑,逻辑环形拓扑)。

    采用令牌传送方式的网络常用于 负载较重、通信量较大 的网络中。

?

6. 局域网

6.1 局域网的基本概念和体系结构

  • 局域网(Local Area Network)

    简称 LAN,是指在 某一区域内 由多台计算机互联成的计算机组,使用 广播信道

    在这里插入图片描述

    决定局域网的主要因素为: 网络拓扑、传输介质 与 介质访问控制方法

?

  • 局域网拓扑结构

    在这里插入图片描述

    总线型拓扑是局域网当中常用的拓扑结构。

?

  • 局域网传输介质

    在这里插入图片描述

?

  • 局域网介质访问控制方法

    1)CSMA / CD

    常用于 总线型局域网,也用于树型网络

    2)令牌总线

    常用于 总线型局域网,也用于树型网络

    它总把总线型或树型网络中的各个工作站按一定顺序如按接口地址大小排列形成一个逻辑环。只有令牌持有者才能控制总线,才有发送信息的权力。

    3)令牌环

    常用于 环形局域网,如令牌环网

?

  • 局域网的分类

    1)以太网

    以太网是应用最为广泛的局域网,包括标准以太网(10Mbps)、快速以太网(100Mbps)、千兆以太网(1000Mbps)和10G 以太网,它们都符合 IEEE802.3 系列标准规范。

    逻辑拓扑总线型,物理拓扑是星型或拓展星型。

    使用 CSMA / CD。

    2)令牌环网

    物理上采用了星形拓扑结构,逻辑上是环形拓扑结构。已是“明日黄花”,基本用不到了。

    使用 IEEE802.5 标准

    3)FDDI网(Fiber Distributed Data Interface) 了解即可

    物理上采用了双环拓扑结构,逻辑上是树形拓扑结构。

    4)ATM网(Asynchronous Transfer Mode) 了解即可

    较新型的单元交换技术,使用 53 字节固定长度的单元进行交换。

    5)无线局域网(Wireless Local Area Network; WLAN)

    采用 IEEE802.11 标准。

?

  • IEEE 802 标准

    在这里插入图片描述

    IEEE 802标准

    在这里插入图片描述

?

  • MAC 子层和 LLC 子层

    IEEE 802标准所描述的局域网参考模型只对应 OSI 参考模型的 数据链路层与物理层,它将数据链路层划分为逻辑链路层 LLC 子层和介质访问控制 MAC 子层

    在这里插入图片描述

?

6.2 以太网

在这里插入图片描述

  • 以太网提供无连接、不可靠的服务

    ? 无连接:发送方和接收方之间无 “握手过程”。

    ? 不可靠:不对发送方的数据帧 编号,接收方不向发送方进行 确认,差错帧直接丢弃,差错纠正由高层负责。

    以太网只实现无差错接收,不实现可靠传输

?

  • 以太网传输介质与拓扑结构的发展

    在这里插入图片描述

?

  • 10BASE-T以太网

    10BASE-T是传输 基带信号 的双绞线以太网,T表示采用双绞线,现 10BASE-T 采用的是 无屏蔽双绞线(UDP),传输速率是 10Mb/s

    物理上采用星型拓扑,逻辑上总线型,每段双绞线最长为 100m

    采用 曼彻斯特编码

    采用 CSMA / CD 介质访问控制。

?

  • 适配器与MAC地址

    在这里插入图片描述

?

  • 以太网 MAC 帧

    在这里插入图片描述

?

  • 高速以太网

    在这里插入图片描述

?

6.3 无线局域网

  • 802.11的MAC帧头格式

    在这里插入图片描述

    A和B主机要进行通信,A发到附近最近的基站AP1,AP1再发送到B附近最近的基站AP2,由AP2发往B。

    手持移动设备移动时,手机号在基站的数据库中不停地更新。

    在这里插入图片描述

    不同过程中,地址1、地址2、地址3表示不同。

?

  • 无线局域网地分类

    1. 有固定基础设施无线局域网

      在这里插入图片描述

    2. 无固定基础设施无线局域网地自组织网络

      在这里插入图片描述

?

7. 广域网

  • 广域网(WAN,Wide Area Network):

    通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。

    广域网的通信子网主要使用 分组交换 技术。广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网,它将分布在不同地区的 局域网或计算机系统 互连起来,达到 资源共享 的目的。

    如因特网(Internet)是世界范围内最大的广域网。

    在这里插入图片描述

    一些补充:

    结点交换机(单个网络中转发分组)

    路由器(多个网络之间转发分组)

    广域网覆盖的网络体系结构层次:物理层、链路层、网络层 (点对点)(强调资源共享)

    局域网覆盖的网络体系结构层次:物理层、链路层 (多点接入)(强调数据传输)

?

7.1 PPP协议

  • PPP协议的特点

    点对点协议PPP(Point-to-Point Protocol)是目前使用最广泛的数据链路层协议,用户使用拨号电话接入因特网时一般都使用 PPP 协议。

    只支持全双工链路

  • PPP 协议应满足的要求

    简单:对于链路层的帧,无需纠错,无需序号,无需流量控制

    封装成帧:帧定界符

    透明传输:与帧定界符一样比特组合的数据应该如何处理:异步线路用字节填充,同步线路用比特填充。

    多种网络层协议:封装的IP数据报可以采用多种协议。

    多种类型链路:串行 / 并行,同步 / 异步,电 / 光…

    差错检测:错就丢弃

    检测连接状态:链路是否正常工作

    最大传送单元:数据部分最大长度 MTU(MTU默认不超过1500字节)

    网络层地址协商:知道通信双方的网络层地址

    数据压缩协商

  • PPP 协议无需满足的要求

    纠错、流量控制、序号、不支持多点线路

?

  • PPP协议的三个组成部分
    1. 一个将IP数据报封装到串行链路(同步串行 / 异步串行)的方法。
    2. 链路控制协议 LCP:建立并维护数据链路连接。 身份验证
    3. 网络控制协议 NCP:PPP可支持多种网络层协议,每个不同的网络层协议都要一个相应的 NCP 来配置,为网络层协议建立和配置逻辑连接。

?

  • PPP协议的状态图

    在这里插入图片描述

?

  • PPP协议的帧格式

    在这里插入图片描述

    PPP协议是一种面向字节的协议(帧格式是以字节为单位的,传输的数据都是整数个字节)。

?

7.2 HDLC协议

(很少用)

  • 高级数据链路控制(High-Level Data Link Control或简称HLDC),是一个在同步网上传输数据、面向比特 的数据链路层协议,它是由国际标准化组织(ISO)根据 IBM 公司的 SDLC(synchronous Data Link Control)协议扩展开发而成的。

    数据报文可透明传输,用于实现透明传输的 “0比特插入法” 易于硬件实现。

    采用全双工通信

    所有帧采用 CRC检验,对信息帧进行顺序 编号,可防止漏收或重发,传输可靠性高。

?

  • HDLC站

    在这里插入图片描述

?

  • HDLC帧格式

    在这里插入图片描述

    ? 控制C:

    1)信息帧(I):

    第1位为 0,用来 传输数据信息,或使用捎带技术对数据进行确认;

    2)监督帧(S):

    10,用来 流量控制和差错控制,执行对信息帧的确认、请求重发和请求暂停发送等功能;

    3)无编号帧(U):

    11,用来提供对 链路 的建立、拆除等多种控制功能。

?

7.3 PPP协议和HDLC协议比较

  • 相同点:

    ? HDLC、PPP只支持 全双工 链路。

    ? 都可以实现透明传输。

    ? 都可以实现差错检测,但不纠正差错。

  • 不同点:

    在这里插入图片描述

在这里插入图片描述

?

8. 数据链路层设备

8.1 物理层扩展以太网

主机和集线器间距离不能超过 100m ,若超过会失帧严重,无法恢复。

在物理层上对以太网进行扩展:

  1. 法一:通过光纤的方式:

    在这里插入图片描述

    光纤调制器:实现光信号和电信号之间的转换。

  2. 法二:利用多个集线器组合

    在这里插入图片描述

    集线器会从所有端口转发出去

?

8.2 链路层扩展以太网

8.2.1 网桥

网桥 根据 MAC帧的目的地址 对帧进行 转发过滤

当网桥收到一个帧时,并不向所有接口转发此帧,而是先检查此帧的目的MAC地址,然后再确定将该帧转发到哪一个接口,或者是把它丢弃(即过滤)。

在这里插入图片描述

  • 网桥分类

    1. 透明网桥

      在这里插入图片描述

      通过自学习完善转发表:

      在这里插入图片描述

      会进行更新。

    2. 源路由网桥

      在这里插入图片描述

?

8.2.2 多接口网桥——以太网交换机

在这里插入图片描述

以太网交换机也可以直接连接主机
  • 以太网交换机的两种交换方式:

    ? 直通式交换机:

    查完目的地址(6B)就立刻转发。

    延迟小,可靠性低,无法支持具有不同速率的端口的交换。

    ? 存储转发式交换机:

    将帧放入高速缓存,并检查是否正确,正确则转发,错误则丢弃。

    延迟大,可靠性高,可以支持具有不同速率的端口的交换

?

  • 补充——冲突域和广播域:

    ? 冲突域:

    在同一个冲突域中的每一个节点都能收到所有被发送的帧,简单来说就是同一时间内只能有一台设备发送信息的范围。

    ? 广播域:

    网络中能接收任一设备发出的广播帧的所有设备的集合,简单来说就是如果站点发出一个广播信号,所有能接收收到这个信号的设备范围称为一个广播域。

    在这里插入图片描述

?

  • 例题:

    在这里插入图片描述

    广播域个数可以看路由器个数,如果有一个路由器说明左边、右边各有一个广播域,即总共两个广播域。

    本题:4个冲突域,1个广播域

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-06 13:32:18  更:2022-03-06 13:34:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:29:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码