Loading... ## 数据链路层的功能 - 数据链路层使用物理层提供的 “比特传输” 服务。 - 数据链路层为网络层提供服务,将网络层的 IP 数据报(分组) **封装成帧**,传输给下一个相邻结点。 ![image-20241105020558737.png][1] ## 组帧 发送方根据一定的规则将网络层传递过来的分组组装成帧,称为**组帧**。 组帧过程中主要解决的问题有两个: 1. 帧定界:如何让接收方能够确定帧的界限。 2. 透明传输:接收方要能够去除 "帧定界" 的附加信息,把帧恢复原样。 ### 字符计数法 - 原理:在每个帧开头,用一个定长计数字段表示帧长。 - 最大缺点:任何一个计数字段出错,都会导致后续所有帧无法定界。(健壮性不好) ![image-20241105021632126.png][2] ### 字节填充法 使用特定字节来定界一阵的开始与结束。如规定控制字符 SOH 表示帧的开始,控制字符 EOT 表示帧结束。 若帧的数据部分包含“特殊字符”,则发送方需要在这些 “特殊字符” 前填充 “转义字符 ESC”(接收方要做逆处理)。 ![image-20241105022352501.png][3] ### 零比特填充法 使用一个特定的比特串 `01111110` 来表示一帧的开始和结束。 若数据中存在该特定比特串,则会进行以下操作: - 发送方需要对帧的数据部分进行处理,每当遇到连续 5 个 1 ,就填充一个 0 。 - 接受方需要对帧的数据部分进行逆处理,每当遇到连续 5 个 1 ,就删掉后面的 0 。 ![image-20241105022637400.png][4] > 零比特填充法在现代计算机网络中很常用,因为这个过程可以很方便地使用硬件实现。如 HDLC ,PPP 协议。 ### 违规编码法 在物理层进行比特编码时使用。例如曼切斯特编码的规则是中间必定会跳变。若周期中间不跳变,则说明是一个违规编码,可以将这个违规编码作为边界。 ![image-20241105023033349.png][5] > 现代计算机网络中常用。 ### 小结 ![image-20241105023107748.png][6] ## 差错控制 通信传输过程中不是理想的,可能会出现传输差错 (如比特差错) ,因此需要进行**差错控制**。 数据链路层的差错控制的目标是发现并解决一个帧内部的位错,即比特差错。 ### 检错编码 接收方**发现**比特错后**丢弃该帧**,并通知发送方**重传帧**。 #### 奇偶校验码 - **奇校验码**:整个校验码(有效信息位和校验位)中 “1” 的个数为奇数。 - **偶校验码**:整个校验码(有效信息位和校验位)中 “1” 的个数为偶数。 现实中常用偶校验码,因为偶校验位可以很方便的使用硬件实现:各信息进行异或(模2加)运算,得到的结果即为偶校验位。 ![image-20241105122105851.png][7] 例:给出两个编码 `1001101` 和 `1010111` 的奇校验码和偶校验码。 设最高位为校验位,余7位是信息位,则对应的奇偶校验码为: - 奇校验: `11001101` , `01010111` ; - 偶校验: `01001101` , `11010111` ; #### 循环冗余校验码 循环冗余校验(Cyclic Redundancy Check, CRC)的思想: - 数据发送、接受方约定一个 “除数” ; 常用生成多项式来给出。如 $G(x) = x^3 + x^2 + 1$ ,其对应的二进制除数为 $1101$ 。 - K 个信息位 + R 个校验位作为 “被除数” ,添加校验位后需保证除法的余数为 0 ; R 的值为生成多项式的最高次幂。如上面的 $G(x)$ 对应的 R 应该为 3 。 将 K 个信息位左移 R 位,再用生成多项式进行**模 2 除法**,得到的余数即为校验码。 - 收到数据后,进行除法检查余数是否为 0 ; - 若余数非 0 说明出错,则进行重传或纠错。 ![image-20241105131502361.png][8] 若生成多项式选择得当,且 $2^R \geq K+R+1$,则 CRC 码**可纠正 1 位错**。但实际应用通常 K 远大于 R ,一般只用来检错。 #### 小结 ![image-20241105125130362.png][9] ![image-20241105131438171.png][10] ### 纠错编码 由接收方**发现并纠正**比特错误,这里主要介绍**海明校验码**。 #### 基本思想 奇偶校验码使用一位校验位,只能携带两种状态信息。海明码将信息位分组进行偶校验,每个分组都有一个校验位。某一位出错后,会引起多个校验位的变化,从而达到定位出错位置的功能。 假设信息位有 n 位,校验位有 k 位,则 k 应该满足 $2^k \geq n + k + 1$ 。k 位校验位可以记录 $2^k$ 种状态,需要表示 n + k 位中任意一位出错的状态,以及 1 种正确的状态。 #### 求解步骤 假设信息位是 `1010` ; 1. 确定海明码的位数。 根据公式 $2^k \geq n + k + 1$ 可知,$n = 4$ 的时候 $k = 3$ 。 2. 确定校验位的分布。 校验位 $P_i$ 应放在海明位号为 $2^{i−1}$ 的位置上,信息位按顺序放到其余位置。 设信息位 $D_4D_3D_2D_1$(1010),共 4 位,校验位 $P_3P_2P_1$ ,共 3 位,对应的海明码为 $H_7H_6H_5H_4H_3H_2H_1$ 。 ![image-20241105135047217.png][11] 3. 求校验位的值。 每个数据位由多个校验位进行校验,这些校验位要满足一个规则:各校验位的海明位号之和等于该数据位的海明位号,检验位 $P_i$ 的值位第 $i$ 组 (由该检验位检验的数据为) 所有位求异或得到。可以转换成二进制求解: ![image-20241105135559941.png][12] 4. 检错纠错。 每个检验组分别利用检验为和参与形成该检验为的信息位进行奇偶检验检查: $$ S_1 = P_1 \oplus D_1 \oplus D_2 \oplus D_4 \\ S_2 = P_2 \oplus D_1 \oplus D_3 \oplus D_4 \\ S_3 = P_3 \oplus D_2 \oplus D_3 \oplus D_4 $$ 若 $S_3S_2S_1$ 的值为 000 ,则表示没有出错;否则说明出错,且这个数就是错误位的位号。如 010 表示 $H_2$ 出错。 #### 海明距离 (码距) 两个长度相等的字符串的海明距离是在相同位置上不同的字符的个数,也就是将一个字符串替换成另一个字符串需要的替换的次数。 校验码的码距决定了其检错能力和纠错能力: - 海明距离为 d+1 的编码能检测出 d 位差错。因为在距离为 d+1 的检验码中,只改变 d 位的值,不可能产生另一个合法码。如奇偶校验码,海明距离为 2,能查出单个错。 - 海明距离为 2d+1 的编码,能纠正 d 位差错。因为此时,如果一个码字有 d 位发生差错,它仍然距离原来的码字距离最近,可以直接恢复为该码。 #### 全校验位 上面的海明码中码距为 3 ,因此具有 1 位纠错能力和 2 位检错能力,但无法区分到底是 1 位错还是 2 位错。因此实际情况中通常会加上一个 "全校验位" ,对整体进行偶校验。 ![image-20241105143646327.png][13] - 若 $S_3S_2S_1$ 的值为 000 且全校验成功,则表明无错误; - 若 $S_3S_2S_1$ 的值不为 000 且全校验失败,则说明有一位错,纠正即可; - 若 $S_3S_2S_1$ 的值不为 000 且全校验成功,则表明有两位错,需要重传。 #### 小结 ![image-20241105143809546.png][14] ## 流量控制与可靠传输 重点关注四个方面: ![image-20241105145930471.png][15] ### 滑动窗口机制 > 流量控制、可靠传输两种功能是交织在一起的,它们都可以基于滑动窗口机制来实现。 在任意时刻,发送方都维持一组**连续的允许发送帧**的序号,称为**发送窗口**;同时接收方也维持一组**连续的允许接受帧**的序号,称为**接收窗口**。 ![image-20241105145412916.png][16] 发送方每**收到一个按序确认的确认帧**,就将发送窗口**向前滑动**一个位置,并**发送新进入窗口的帧**;接收方每收到一个**序号落入接收窗口**的数据帧,就将接收窗口**向前滑动**,并**发回确认**。 ![image-20241105145802860.png][17] ### 停止-等待协议 (S-W) 发送方每次只能发送一个帧,当发送方收到接收方的确认帧之后,才可以发送下一个帧。 因为每次只发送一个帧,所以编号只需要使用 1bit 。 > 编号是为了判定是否是重复帧。 ![image-20241105153451180.png][18] 为了应对数据帧出错被丢弃或未收到的情况,需要设置一个计时器,发送方在一定时间内没收到 ACK 就会触发重传。 #### 小结 ![image-20241105154050507.png][19] ### 后退 N 帧协议 (GBN) 发送方可以在未收到确认帧的情况下,将序号在发送窗口内的多个数据帧全部发送出去。 后退 N 帧的含义:发送方发送 N 各数据帧后,若发现这 N 各帧的前一个数据帧在计时器超市前仍未收到其确认消息,则该镇呗判为出错或丢失,此时翻松方不得不重传该出错真及其随后的 N 各帧。 > 接收方只允许顺序接受帧,即接收窗口大小为 1 。 ![image-20241105184037622.png][20] 后退N帧协议规定:接收方可以 “累积确认” 。即连续收到多个数据帧时,可以仅返回最后一个正确帧的 ACK 。 若不满足 $W_T + W_R \leq 2^n$ ,则可能会出现重传的帧被当成下一个窗口的数据帧的情况: ![image-20241105184246518.png][21] #### 小结 ![image-20241105184304343.png][22] ### 选择重传协议 (SR) 为了进一步提高信道的利用率,可以设法只重传出现差错和计时器超时的那些数据帧。此时必须加大接收窗口,以便收下失序但被正确传递的数据。 ![image-20241105185854923.png][23] 选择重传协议的窗口大小需满足如下两个条件: 1. 若用 $n$ bit 给帧编号,$W_T + W_R \leq 2^n$ ; 2. $W_R \leq W_T$ (若大于则会出现浪费)。 > 实际应用中通常会取 $W_R = W_T$ 。 为了使发送方仅重传出错的帧,因此不能采用累计确认的方式,每收到一帧就要返回 ACK 。 除了超时重传机制,SR 还有一个请求重传机制:如果接收方收到一个有差错的帧,就将此帧丢弃,并返回对应的否认帧 NAK_i ,主动请求发送方重传 i 号帧。 #### 小结 ![image-20241105190228058.png][24] ### 三种协议的信道利用率 #### S-W 协议 假设信道的数据传输速率 = 1 kbps ,数据帧⻓度 = 4 kb,确认帧⻓度 = 1 kb,信道单向传播时延 = 7s。 则信道利用率为 $\frac{4}{4 + 2 \times 7 + 1} \approx 21\%$ 。 ![image-20241105203906047.png][25] 理想情况下,信道利用率 $U = \frac{T_D}{T_D + RTT + T_A}$ 。 #### GBN,SR 协议 假设信道的数据传输速率 = 1 kbps ,数据帧⻓度 = 4 kb,确认帧⻓度 = 1 kb,信道单向传播时延 = 7s ,发送窗口大小 N = 4。 信道利用率 = $\frac{4 \times 4}{4 + 2 \times 7 + 1} \approx 84\%$ 。 ![image-20241105204408298.png][26] 理想情况下,信道利用率 $U = \frac{NT_D}{T_D + RTT + T_A}$ 。 > 注意信道利用率不能大于 1 。 #### 术语补充 **滑动窗口协议**:一般指 GBN 或 SR ,S-W 不属于滑动窗口协议范畴。 **ARQ (Automatic repeat request) 协议**:通常译为 “自动重传请求” 协议,包含 S-W、GBN、SR 三种协议。 **连续 ARQ 协议**:包含 GBN 和 SR ,不包含 S-W 。 #### 小结 ![image-20241105210815448.png][27] ## 介质访问控制 介质访问控制(Medium Access Control,MAC) :多个节点共享同一个 “总线型” 广播信道时,可能发生 “信号冲突” 。应该怎么控制各节点对传输介质的访问,才能减少冲突,甚至避免冲突? ### 信道划分 #### 时分复用 (TDM) 时分复用(Time Division Multiplexing,TDM)—— 将时间分为等长的“TDM帧”,每个 “TDM帧” 又分为等长的 m 个 “时隙” ,将 m 个时隙分配给 m 对用户(节点)使用。 ![image-20241105214602181.png][28] **TDM 的缺点**: - 每个节点最多只能分配到信道总带宽的 $1 \over m$ 。 - 如果某节点暂不发送数据,会导致被分配的 “时隙” 闲置,信道利用率低。 #### 统计时分复用 (STDM) 为了解决 TDM 利用率低的问题,可统计每个节点对信道的使用需求,动态按需分配时隙,即统计时分复用 (Statistic Time Division Multiplexing,STDM) ,又称异步时分复用。 **STDM 的优点**: - 如果需要时,一个节点可以在一段时间内获得所有的信道带宽资源。 - 如果某节点暂不发送数据,可以不分配 “时隙” ,信道利用率更高。 #### 频分复用 (FDM) **频分复用**(Frequency Division Mul9plexing,FDM)是将信道的总频带**划分为多个子频带**, 每个子频带作为一个子信道,每对用户使用一个子信道进行通信。 ![image-20241105220437689.png][29] - **优点**:各节点可同时发送信号;充分利用了信道带宽(Hz)。 - **缺点**:FDM技术只能用于模拟信号的传输。 #### 波分复用 (WDM) 波分复用(Wavelength Division Multiplexing,WDM)—— 即光的频分复用。 ![image-20241105221047418.png][30] 光信号的频带范围(带宽)非常大,因此很适合采用波分复用技术,将一根光纤在逻辑上拆分为多个子信道。 #### 码分复用 (CDM) > 重点 **码分复用** (Code Division Multiplexing, CDM) 是采用不同的编码来区分各路原始信号的复用方式。它既共享信道的频率,又共享时间。 **码片**:将每个比特时间再划分为 m 各短的时间槽,称为码片 (Chip) 。可以将码片看成 **m 维向量**。 ![image-20241106005643210.png][31] 各节点的向量必须相互正交,这样可以从叠加的信号中分离出各节点的信息。 #### 小结 ![image-20241106005809121.png][32] ### 随机访问 #### ALOHA 协议 ALOHA :Additive Links On-line Hawaii Area ##### 纯 ALOHA 协议 ![image-20241106012248369.png][33] 纯 ALOHA 协议要点:如果准备好数据帧,就立刻发送。 下面是一段纯 ALOHA 协议的示意图: ![image-20241106012517592.png][34] ##### 时隙 ALOHA 协议 ![image-20241106012605073.png][35] 时隙 ALOHA 协议要点: - 时隙大小固定,且等于传输一个最长帧所需时间。 - 只有在每个时隙开始时才能发送帧。 下面是一段时隙 ALOHA 协议的示意图: ![image-20241106012836422.png][36] 时隙 ALOHA 避免了用户发送数据的随意性,**降低了冲突概率**,提高了信道的利用率。 #### CSMA协议 CSMA (Carrier Sense Multiple Access)协议,即**载波监听多路访问协议**。CSMA 协议在 ALOHA 协议基础上提出改进:在发送数据之前,先监听信道是否空闲,只有信道空闲时,才会尝试发送。 ##### 1-坚持 CSMA 协议 ![image-20241106013134913.png][37] - **优点**:**信道利用率高**,信道一旦空闲,就可以被下一个节点使用。 - **缺点**:当多个节点都已准备好数据时,一旦信道空闲,会有多个节点同时发送数据,**冲突概率大**。 ##### 非坚持 CSMA 协议 ![image-20241106013216301.png][38] - **优点**:当多个节点都已准备好数据时,如果**信道不空闲**,则各节点会**随机推迟一段时间再尝试监听**,从而使各节点 “错开” 发送数据,降低冲突概率。 - **缺点**:信道刚恢复空闲时,可能不会被立即利用,导致**信道利用率降低**。 ##### p-坚持 CSMA 协议 ![image-20241106013316198.png][39] **优点**:属于 1-坚持 CSMA、非坚持 CSMA 的折中方案,降低冲突概率的同时,提升信道利用率。 #### ALOHA 和 CSMA 协议小结 ![image-20241106013412830.png][40] #### CSMA/CD 协议 > 重难点 在 CSMA 协议的基础上增加 CD (Collision Detection) 功能,适用于有线网络(如:以太网技术)。 ##### 发送方流程图 先听后发,边听边发,**冲突停发**,**随机重发**。 ![image-20241106020631798.png][41] ##### 争用期 争用期是一个固定长度的时间,一般取两倍的最远单向传播时延。其含义是一个节点最多需要花多久时间可以确信自己已经 "占领地盘" 了。 > 在经过一个最远单向传播时延后,信号就能传播至信道中的每一个节点;经过两个最远单向传播时延后,可以确定没有冲突。 ![image-20241106022127940.png][42] CSMA/CD 协议**没有 ACK 机制**,若发送过程中未检测到冲突,则认为帧发送成功。 ##### 最短帧长限制 CSMA/CD 协议限制了数据的最短帧长为 $2 \times 最大单向传播时延 \times 信道带宽$ ,若收到的帧长小于该值,则认为是**无效帧**。 若发送的帧小于该长度,则会导致在争用期未结束的时候就发完了所有帧。此时出现的碰撞将无法被检测到。 - **例如**:假设 A, B 两个节点相距 6000 $m$ ,信号的传播速度为 200 $m/\mu s$ ,信道带宽为 10 $Mbps$ ; 此时最短帧长为 $2 \times 30 \mu s \times 10 Mbps = 600 bit$ 。 若 A 发送 500 $bit$ 数据,则只需要 50 $\mu s$ 即可传输完成。 此时若 B 在 51 $\mu s$ 时发送信息,则 A 无法检测到 B 发生的冲突,会导致 A 接收错误的信息。 > 如果实际要发送的数据很少,可 “填充” 至合法长度后再发送。 ##### 接收方流程图 ![image-20241106023517632.png][43] ##### 最长帧长限制 防止某些节点一直占用信道,防饥饿。 ##### 小结 ![image-20241106023737950.png][44] #### CSMA/CA 协议 > 难点 将 CSMA/CD 协议的冲突检测改为 CA (Collision Avoidance) 功能,适用于无线网络(如:IEEE 802.11标准的无线局域网技术,即 WiFi )。 无线通信环境中不能简单地套用 CSMA/CD 协议,主要有两个原因: 1. 硬件上很难实现“边听边发,冲突检测”。 因为接收信号的强度往往远小于发送信号的强度,且在无线介质上信号强度的动态变化范围很大。 2. 存在 “隐蔽站” 问题。 在无线通信中,并非所有站点都能够听见对方。发送结点处没有冲突并不意味着在接收结点处就没有冲突。 **AP (Access Point)** :无线网络接入点,如平时连接的无线 WiFi 热点。 ##### 帧间间隔 (IFS) 802.11 协议规定了三种不同长度的 IFS : - DIFS (分布式协调 IFS) :最长的帧间间隔,每次 "帧事务" 开始之前需要等待的时间。 - SIFS (短 IFS) :最短的帧间间隔,预留 SIFS 用于处理收到的帧(如完成差错控制等)。 - PIFS :中等长度的 IFS ,在 PCF 操作中使用,考研不关注。 ##### 发送流程 因为无线信道的通信质量远不如有线信道,所以 802.11 标准使用 ARQ 方案。 ![image-20241106115403147.png][45] 示例: ![image-20241106115419788.png][46] ##### 隐蔽站问题 ![image-20241106115825086.png][47] - RTS 控制帧(Request ToSend,请求发送)—— 它包括源地址、目的地址和这次通信所需的持续时间。 - CTS控制帧(Clear To Send,允许发送)—— 它也包括源地址、目的地址和这次通信所需的持续时间。 ![image-20241106115932506.png][48] 如果超时未收到 CTS ,说明预约失败,则 “随机退避” 后再次 RTS 预约。 > 信道预约机制可开启可不开启。如果数据帧较短,重传代价低,可选择不开启。实际情况中会设置一个阈值,高于阈值长度的帧才会开启预约。 ##### 小结 ![image-20241106120341003.png][49] ### 轮询访问 > 大纲只要求了解令牌传递协议,且考频很低。 **MAU**:令牌环网的集中控制站。 ![image-20241106123453202.png][50] **知识小结**: ![image-20241106123343506.png][51] ## 局域网 局域网技术与 802 委员会的关系: ![image-20241106123902312.png][52] ### 局域网的基本概念和体系 ![image-20241106124524946.png][53] 同轴电缆只能半双工,光纤只能全双工。双绞线在速率 < 2.5Gbps可支持半双工 or 全双工(节点连接时协商);速率 ≥ 2.5Gbps 时仅支持支全双工。 做题时默认交换机连接的终端节点都可以全双工;用集线器连接的节点,仅支持半双工模式。 ![image-20241106134219803.png][54] ### 以太网 数据链路层中的介质访问控制子层称为 MAC 层,其有两种主流标准: 1. DEC、Intel、Xerox 推出的 DIX Ethernet V2 标准; 2. IEEE 802.3 推出的 IEEE 802.3 标准。 两种标准在 “帧” 格式上有细微差别。市面上常用V2标准。 #### V2 标准的以太网 MAC 帧 ![image-20241106134758916.png][55] > 要记住结构。记忆口诀:6 6 2 N 4,收发协数验。 #### IEEE 802.3 标准的以太网 MAC 帧 ![image-20241106144550099.png][56] > 记忆口诀:6 6 2 N 4,收发长数验。 在 IEEE 802.3 标准中,MAC 层上面还有一层 LLC 子层 (逻辑链路控制子层,现已名存实亡) ,因此 MAC 层不需要关心要使用哪个网络层协议,这部分功能由 LLC 子层执行。 #### 单播帧和广播帧的传播 **MAC 地址**:MAC 地址是数据链路层的概念。路由器、交换机都有 MAC 地址,而**集线器没有 MAC 地址**。 如以下的网络结构: ![image-20241106145146711.png][57] 对于单播帧, - $A \to C$ 的情况下,仅 $C$ 能收到并接收帧; - $A \to F$ 的情况下,$E, F, G$ 能收到,但仅 $F$ 会接收帧; - $E \to A$ 的情况下,$F, G, A$ 能收到,但仅 $A$ 会接收帧; - $E \to F$ 的情况下,$F, G$ 能收到,但仅 $F$ 会接收帧; 对于广播帧(目的地址全为1): - $A$ 发出广播帧,$B, C, D, E, F, G, R$ 都能收到并接收帧; - $E$ 发出广播帧,$A, B, C, D, F, G, R$ 都能收到并接收帧; > 注意:路由器 R 收到广播帧后,不会再转发至其他网络。只有同一个局域网内的各节点才属于同一个 “**广播域**” 。 #### 小结 ![image-20241106145755401.png][58] ### 无线局域网 #### 基本概念 **门户 (Portal)** :将 802.3 和 802.11 两种协议的局域网连接起来的设备。 **基本服务集 (Basic Service Set, BSS) ** :无线局域网的最小构件。一个基本服务集包括一个接入点和若干移动站。(一个 WiFi 和下面连接的一堆设备) **服务集标识符 (Service Set IDentifier, SSID)** :无线局域网的名字,不超过 32 字节。 **基本服务区 (Basic Service Area, BSA)** :一个基本服务集能够覆盖的地理范围。 **扩展服务集 (Extended Service Set, ESS)** :将多个 AP 连接到同一个分配系统 (Distribution System, DS) ,组成一个更大的服务集。 **漫游**:一个移动站从一个基本服务集切换到另一个基本服务集,仍然可以保持通信。 ![image-20241106171329379.png][59] #### 802.11 帧 802.11 帧共有三种类型:数据帧,控制帧和管理帧。控制帧是携带控制信息的帧,如 ACK ,RTS,CTS 帧;管理帧如探测请求,探测响应帧,这两个帧的作用是用于发现 WiFi 用的。 三种帧的重点是数据帧。数据帧主要由三个部分组成: 1. MAC 首部,共 30 字节。帧的复杂性都在 MAC 首部内。 2. 帧主体,即帧的数据部分,不超过 2312 字节。它比以太网的最大长度长很多。 3. 帧检验序列 FCS ,记录在 MAC 的尾部,共 4 字节。 ![image-20241106172601595.png][60] > 802.11 无线局域网内,两个移动站之间不能直接通信,必须通过基站 (AP) 转发。 四个地址中主要关注前三个地址。假设有这么一个通信场景: ![image-20241106173527118.png][61] - 当数据帧是 A 发送至 AP 时,即帧控制字段的第九,十比特是 10 的时候,地址 1 表示**接收地址** (AP 的地址) ;地址 2 表示**发送地址** (A 的地址) ;地址 3 表示**目的地址** (B 的地址) 。 - 当数据帧从 AP 发送至 B 时,即帧控制字段的第九,十比特是 01 的时候,地址 1 表示**接收地址** (B 的地址) ;地址 2 表示**发送地址** (AP 的地址) ;地址 3 表示**源地址** (A 的地址) 。 > 记忆口诀: > > 30 N 4 首数验,首部 3 + 1 地址; > > 九十比特表去来,帧的中转靠 AP ; > > 去往 AP 中起止,来自 AP 止中起。 #### 小结 ![image-20241106174859177.png][62] ### VLAN 一个大型局域网面临的问题: 1. 局域网内任何一个节点发出的广播帧,都会被广播至所有节点。可能出现 “广播风暴” 。 2. 不安全,局域网内可能会有一些敏感节点。 通过**虚拟局域网** (Virtual LAN, VLAN) ,可以将一个较大的局域网分割成一些较小的与地理位置无关的**逻辑上的** VLAN ,而**每个 VLAN 都是一个较小的广播域**,并且对应一个 VID 。 > 需要使用支持VLAN功能的以太网交换机来实现。 #### 划分 VLAN 的方式 1. **基于接口**,将交换机的若干接口划为一个逻辑组。 ![image-20241106152050629.png][63] 这种方法最简单有效,但如果主机离开了原来的接口,则可能进入一个新的子网。 2. **基于 MAC 地址**。按 MAC 地址将一些主机划分为一个逻辑子网,当主机的物理位置从一个交换机移动到另一个交换机时,它仍然属于原来的子网。 ![image-20241106152238946.png][64] 3. **基于 IP 地址**。根据网络层地址或协议划分 VLAN ,这样的 VLAN **可以跨越路由器进行扩展**,将多个局域网的主机连接在一起。 ![image-20241106152351777.png][65] > 需要网络层功能支持 #### 802.1Q 帧 主机与交换机之间传输的是标准以太网帧,而交换机与交换机之间传输的是 802.1Q 帧,其内部需要指明 VID 。 ![image-20241106152609264.png][66] > 记忆口诀:6 6 4 2 N 4,收发V协数验。 #### 小结 ![image-20241106152700029.png][67] ## 广域网 > 考频极低,了解即可 广域网(WAN,Wide Area Network),通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。 广域网的通信子网主要使用**分组交换**技术。广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网,它将分布在不同地区的局域网或计算机系统互连起来,达到资源共享的目的。如因特网(Internet)是世界范围内最大的广域网。 ![image-20241106153039530.png][68] ### PPP 协议 点对点协议 PPP(Point-to-Point Protocol)是目前使用最广泛的数据链路层协议,用户使用拨号电话接入因特网时一般都使用 PPP 协议。 > 只支持全双工通信 #### 组成部分 1. 一个将IP数据报封装到串行链路(同步串行/异步串行)的方法。 2. 链路控制协议 LCP:建立并维护数据链路连接 (身份验证) 。 3. 网络控制协议 NCP:PPP 可支持多种网络层协议,每个不同的网络层协议都要一个相应的 NCP 来配置,为网络层协议建立和配置逻辑连接。 #### 状态图 ![image-20241106153637496.png][69] #### 帧格式 ![image-20241106153811857.png][70] #### 特点 1. PPP 不适用序号和确认机制,只保证无差错接受 (CRC 检验) ,因此是**不可靠服务**。 2. PPP **仅支持全双工的点对点**链路,不支持多点线路。 3. PPP 的**两端可以运行不同的网络层协议**,但仍可使用同一个 PPP 进行通信。 4. PPP 是**面向字节**的,所有 PPP 帧的长度都是整数个字节。 ## 以太网交换机 ### 自学习功能 每个交换机都会维护一个交换表,其每收到一个帧,就会将发送方的 MAC 地址和端口号登记到交换表内。接着查询交换表,找出该帧应该发往哪个端口。若交换表中没有目的地址的信息,则把帧**广播**到除了入口以外的所有端口。 交换表中每个表项都有一个**有效期**,**过期的表项自动作废**。这样是为了在某些节点发生变化的时候可以更新交换表中对应的表项。 > 支持即插即用 ### 直通交换 只检查帧的目的 MAC 地址,以决定该帧的转发接口。 ![image-20241106163036195.png][71] - 优点:转发时延低。 - 缺点:不适用于需要速率匹配,协议转换或差错检测的线路。 ### 存储转发交换 先将接收到的帧缓存在高速缓存器中,并检查数据是否正确。确认无误后通过查找表转换为输出接口,将该帧转发出去。若发现该帧有错,则将其丢弃。 ![image-20241106163206686.png][72] - 优点:适用于需要速率匹配,协议转换或差错检测的线路。 - 缺点:转发时延高。 ### 小结 ![image-20241106163551241.png][73] [1]: https://blog.domineto.top/usr/uploads/2024/11/1146095639.png [2]: https://blog.domineto.top/usr/uploads/2024/11/972371967.png [3]: https://blog.domineto.top/usr/uploads/2024/11/3765282918.png [4]: https://blog.domineto.top/usr/uploads/2024/11/1956162204.png [5]: https://blog.domineto.top/usr/uploads/2024/11/1276849862.png [6]: https://blog.domineto.top/usr/uploads/2024/11/1932598621.png [7]: https://blog.domineto.top/usr/uploads/2024/11/3761254042.png [8]: https://blog.domineto.top/usr/uploads/2024/11/4059538234.png [9]: https://blog.domineto.top/usr/uploads/2024/11/3396095066.png [10]: https://blog.domineto.top/usr/uploads/2024/11/2130234046.png [11]: https://blog.domineto.top/usr/uploads/2024/11/3358629289.png [12]: https://blog.domineto.top/usr/uploads/2024/11/3370839763.png [13]: https://blog.domineto.top/usr/uploads/2024/11/3881642875.png [14]: https://blog.domineto.top/usr/uploads/2024/11/241506260.png [15]: https://blog.domineto.top/usr/uploads/2024/11/751222955.png [16]: https://blog.domineto.top/usr/uploads/2024/11/3085087611.png [17]: https://blog.domineto.top/usr/uploads/2024/11/3410200628.png [18]: https://blog.domineto.top/usr/uploads/2024/11/730809616.png [19]: https://blog.domineto.top/usr/uploads/2024/11/3218531054.png [20]: https://blog.domineto.top/usr/uploads/2024/11/1669377733.png [21]: https://blog.domineto.top/usr/uploads/2024/11/182146972.png [22]: https://blog.domineto.top/usr/uploads/2024/11/2390844766.png [23]: https://blog.domineto.top/usr/uploads/2024/11/2761306612.png [24]: https://blog.domineto.top/usr/uploads/2024/11/1908603725.png [25]: https://blog.domineto.top/usr/uploads/2024/11/3209638612.png [26]: https://blog.domineto.top/usr/uploads/2024/11/2823471273.png [27]: https://blog.domineto.top/usr/uploads/2024/11/441111747.png [28]: https://blog.domineto.top/usr/uploads/2024/11/347245604.png [29]: https://blog.domineto.top/usr/uploads/2024/11/792692570.png [30]: https://blog.domineto.top/usr/uploads/2024/11/2815358899.png [31]: https://blog.domineto.top/usr/uploads/2024/11/1760485992.png [32]: https://blog.domineto.top/usr/uploads/2024/11/3619078679.png [33]: https://blog.domineto.top/usr/uploads/2024/11/3522744575.png [34]: https://blog.domineto.top/usr/uploads/2024/11/3533553305.png [35]: https://blog.domineto.top/usr/uploads/2024/11/1210269632.png [36]: https://blog.domineto.top/usr/uploads/2024/11/2668766513.png [37]: https://blog.domineto.top/usr/uploads/2024/11/2777447159.png [38]: https://blog.domineto.top/usr/uploads/2024/11/1189857174.png [39]: https://blog.domineto.top/usr/uploads/2024/11/32293014.png [40]: https://blog.domineto.top/usr/uploads/2024/11/2281984473.png [41]: https://blog.domineto.top/usr/uploads/2024/11/1674639232.png [42]: https://blog.domineto.top/usr/uploads/2024/11/127968436.png [43]: https://blog.domineto.top/usr/uploads/2024/11/590905041.png [44]: https://blog.domineto.top/usr/uploads/2024/11/968232981.png [45]: https://blog.domineto.top/usr/uploads/2024/11/879402740.png [46]: https://blog.domineto.top/usr/uploads/2024/11/4178024613.png [47]: https://blog.domineto.top/usr/uploads/2024/11/1207708806.png [48]: https://blog.domineto.top/usr/uploads/2024/11/3744233213.png [49]: https://blog.domineto.top/usr/uploads/2024/11/3122508694.png [50]: https://blog.domineto.top/usr/uploads/2024/11/1237704137.png [51]: https://blog.domineto.top/usr/uploads/2024/11/3337763513.png [52]: https://blog.domineto.top/usr/uploads/2024/11/368842687.png [53]: https://blog.domineto.top/usr/uploads/2024/11/791654011.png [54]: https://blog.domineto.top/usr/uploads/2024/11/1265263400.png [55]: https://blog.domineto.top/usr/uploads/2024/11/2929333612.png [56]: https://blog.domineto.top/usr/uploads/2024/11/2122651319.png [57]: https://blog.domineto.top/usr/uploads/2024/11/746698104.png [58]: https://blog.domineto.top/usr/uploads/2024/11/3444902482.png [59]: https://blog.domineto.top/usr/uploads/2024/11/2669685105.png [60]: https://blog.domineto.top/usr/uploads/2024/11/803311314.png [61]: https://blog.domineto.top/usr/uploads/2024/11/1491710821.png [62]: https://blog.domineto.top/usr/uploads/2024/11/2904692317.png [63]: https://blog.domineto.top/usr/uploads/2024/11/2288586056.png [64]: https://blog.domineto.top/usr/uploads/2024/11/3873885984.png [65]: https://blog.domineto.top/usr/uploads/2024/11/2201584412.png [66]: https://blog.domineto.top/usr/uploads/2024/11/2736310848.png [67]: https://blog.domineto.top/usr/uploads/2024/11/4196344032.png [68]: https://blog.domineto.top/usr/uploads/2024/11/1343554150.png [69]: https://blog.domineto.top/usr/uploads/2024/11/1520388137.png [70]: https://blog.domineto.top/usr/uploads/2024/11/3277589523.png [71]: https://blog.domineto.top/usr/uploads/2024/11/1078548680.png [72]: https://blog.domineto.top/usr/uploads/2024/11/2962692881.png [73]: https://blog.domineto.top/usr/uploads/2024/11/908892534.png 最后修改:2024 年 11 月 11 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏