# 4. 局域网 & 应用

## 1. 局域网基本概念 & 体系结构

### 1.1 局域网

局域网（Local Area Network）：简称 LAN，是指在某一区域内由多台计算机互联成的计算机组，使用**广播信道**。

**特点：**

1. 覆盖的地理范围较小，只在一个相对独立的局部范围内联，如一座或集中的建筑群内
2. 使用专门铺设的传输介质（双绞线，同轴电缆）进行联网，数据传输速率高（10Mb/s \~ 10Gb/s）
3. 通信延迟时间短，误码率低，可靠性较高
4. 各站为平等关系，共享传输信道
5. 多采用分布式控制和广播式通信，能进行广播和组播

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

### 1.2 局域网拓扑结构

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDn9cRabhsxaYJamq9z%2F-MDnHTDnU6TkNW4JfgbX%2Fimage.png?alt=media\&token=288360f6-b692-4c9b-9cf7-b187a9ad821a)

#### 1. 星型拓扑

* 中心节点是控制中心，任意两个节点间的通信最多只需要**两步**，**传输速度快，并且网络构形简单、建网容易，便于控制和管理**。但这种网络系统，**网络可靠性低，网络共享能力差，有单点故障问题**。

#### 2. 总线型拓扑

* 网络可靠性高、网络节点间响应速度快、共享资源能力强、设备投入量少，成本低、安装使用方便，当某个工作站节点出现故障时，对整个网络系统影响小。

#### 3. 环形拓扑

* 系统中通信设备和路线比较节省。有**单点故障**问题；由于环路是封闭的，所以不便于扩充，系统响应时延长，且信息传输效率相对较低。

#### 4. 树型拓扑

* 易于拓展，易于隔离故障，也容易有**单点故障**。

### 1.3 局域网传输介质

有线局域网：常用介质：双绞线、同轴电缆、光纤

无线局域网：常用介质：电磁波

### 1.4 局域网介质访问控制方法

1. CSMA/CD：常用于**总线型局域网**，也用于树型网络
2. 令牌总线：常用于**总线型局域网**，也用于树型网络

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

### 1.5 局域网的分类

#### 1. 以太网

* 以太网是应用最为广泛的局域网，包括标准以太网（10Mbps）、快速以太网（100Mbps）、千兆以太网（1000 Mbps）和 10G 以太网，它们都符合 IEEE802.3 系列标椎规范。逻辑拓扑总线型，物理拓扑是星型或拓展星型。使用 CSMA/CD

#### 2. 令牌环网

* 物理上采用了星形拓扑结构，逻辑上是环形拓扑结构。已经过时

#### 3. FDDI 网（Fiber Distributed Data Interface）

* 物理上采用了双环拓扑结构，逻辑上是环形拓扑结构

#### 4. ATM 网（Asynchronous Transfer Mode）

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

#### 5. 无线局域网（Wireless Local Area Network；WLAN）

* 采用 IEEE 802.11 标准

### 1.6 IEEE 802 标准

IEEE 802 系列标准是 IEEE 802 LAN/MAN 标准委员会制定的局域网、城域网技术标准（1980年2月成立）。其中最广泛使用的有以太网、令牌环、无线局域网等。这一系列标准中的每一个子标准都由委员会中的一个专门工作组负责。

**IEEE 802.3**：以太网介质访问控制协议（CSMA/CD）及物理层技术规范

**IEEE 802.5**：令牌环网（Token-Ring）的介质访问控制协议及物理层技术规范

**IEEE 802.8**：光纤技术咨询组，提供有关光纤联网的技术咨询

**IEEE 802.11**：无线局域网（WLAN）的介质访问控制协议及物理技术规范

### 1.7 MAC 子层 & LLC 子层

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

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDnMIwjxUPNp4YdeYrl%2F-MDnOY-aHmxHYvEA_zEa%2Fimage.png?alt=media\&token=273102be-da26-4d8f-8a7d-0093c6b7cc41)

**LLC子层功能：**&#x8D1F;责识别网络层协议，然后对它们进行封装。LLC 报头告诉数据链路层一旦帧被接收到，应当对数据包做何处理。为网络层提供服务：无确认无连接、面向连接、带确认无连接、高速传送

**MAC子层功能：**&#x6570;据帧的封装/解封装，帧的寻址和识别，真的接收和发送，链路的管理，帧的差错控制等。MAC子层的存在屏蔽了不同物理链路种类的差异性

### 1.8 知识脑图

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDnQfO2TVmRV8zkrHJm%2F-MDnQibRZRhkFmgIvYCR%2F%E5%B1%80%E5%9F%9F%E7%BD%91.svg?alt=media\&token=2fa52144-a2fe-4ae6-8f63-b5eb7df1266a)

## 2. 以太网

### 2.1 以太网概述

以太网（**Ethernet**）指的是由 Xerox 公司创建并由 Xerox、Intel 和 DEC 公司联合开发的**基带总线局域网规范**，是当今现有局域网采用的最通用的通信协议标准。以太网络使用 **CSMA/CD**（载波监听多路访问及冲突检测）技术。

以太网在局域网各种技术中占**统治性**地位：

1. 造价低廉（以太网网卡不到100元）
2. 是应用最广泛的局域网技术
3. 比令牌环网、ATM网便宜，简单
4. **满足网络速率要求：10Mb/s \~ 10Gb/s**

**以太网两个标准：**

1. DIX Ethernet V2：第一个局域网产品（以太网）规约
2. IEEE 802.3：IEEE 802 委员会 802.3 工作组制定的第一个 IEEE 的以太网标准

**以太网提供无连接、不可靠服务：**

* **无连接：**&#x53D1;送方和接收方之间无 握手过程
* **不可靠：**&#x4E0D;对发送方的数据帧**编号**，接收方不向发送方进行**确认**，差错帧直接丢弃，差错纠正由高层负责
* 以太网只实现无差错接受，不实现可靠传输

### 2.2 以太网传输介质 & 拓扑结构的发展

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDnQzTlVcIHDeKoqDZe%2F-MDnZDZsNFQX9ajHfAE8%2Fimage.png?alt=media\&token=551c2a5c-56fb-473b-803f-26178de023b2)

**物理拓扑：**&#x603B;线型 -> 星型

使用集线器的以太网在逻辑上仍是一个总线网，各站共享逻辑上的总线，使用的还是 CSMA/CD 协议。

以太网拓扑：**逻辑**上**总**线型，**物理**上**星**型

### 2.3 10BASE-T 以太网

10BASE-T 是传送**基带信号**的双绞线以太网，T 表示采用双绞线，现 10BASE-T 采用的是**无屏蔽双绞线**（UTP），传输速率是 **10Mb/s**

* **物理上采用星型拓扑，逻辑上采用总线型，**&#x6BCF;段双绞线最长为 100m
* 采用**曼彻斯特编码**
* 采用**CSMA/CD**介质访问控制

### 2.4 以太网 MAC 帧

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDnQzTlVcIHDeKoqDZe%2F-MDnamdU8bPY4gdbahXw%2Fimage.png?alt=media\&token=2922dc46-ce39-4dc6-8e75-064c4427a856)

### 2.5 高速以太网

**速率** $$\ge 100 Mb/s$$ **的以太网称为高速以太网**

1. 100BASE-T 以太网

   在**双绞线**上传送**100Mb/s基带信号**的**星型**拓扑以太网，仍使用 IEEE802.3 的**CSMA/CD**协议。支持**全行工**和**半双工**，可在全双工方式下工作而无冲突
2. 吉比特以太网

   在**光纤或双绞线**上传送**1Gb/s信号**。支持**全双工**和**半双工**，可在全双工方式下工作而无冲突
3. 10 吉比特

   10 吉比特以太网在**光纤**上传送 **10 Gb/s 信号**。只支持全双工，无争用问题

### 2.6 知识脑图

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDncYyWAG_zgk4Q7LLP%2F-MDnd3bNo8MLT0BTAd0o%2F%E4%BB%A5%E5%A4%AA%E7%BD%91.svg?alt=media\&token=099441b3-77e8-4895-bb4b-9627cbca064d)

## 3. IEEE 802.11 无线局域网

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDndB5oIJYnV9SNowhP%2F-MDo17XYPp8lxDa7-_et%2Fimage.png?alt=media\&token=f7e730bc-a665-4a06-b338-5a1e9da5de9b)

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDndB5oIJYnV9SNowhP%2F-MDo1DntX3Eez-jUvWqH%2Fimage.png?alt=media\&token=80a7273a-f5da-4284-94f8-e8930ca2c634)

### 3.1 无线局域网的分类

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

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDndB5oIJYnV9SNowhP%2F-MDo1eMcNtGe6uyLwl4P%2Fimage.png?alt=media\&token=e2d0a906-c87f-4d17-aa35-eb82c4fb0859)

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

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDndB5oIJYnV9SNowhP%2F-MDo1iPwUSKCWsWXq_82%2Fimage.png?alt=media\&token=c5277e16-b082-4eba-82a2-f6ab479dac9f)

## 4. 广域网

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

广域网的通信子网主要是用**分组交换**技术。广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网，它将分布在不同地区的**局域网或计算机系统**互连起来，达到**资源共享**的目的。如因特网（Internet）是世界范围内最大的广域网。

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDo5EdSa50r-CAEhhur%2F-MDo7dknfe_GpZpTRQH-%2Fimage.png?alt=media\&token=dcd32889-a0ce-409f-859d-9bb5c672f32e)

## 5. ppp 协议

### 5.1 特点

点对点协议 ppp（Point-to-Point Protocol）是目前使用最广泛的数据链路层协议，用户使用拨号电话接入因特网时一般都使用 ppp 协议。**只支持全双工链路**。

### 5.2 应满足的要求

1. **简单**
   * IETF 在设计互联网体系结构时，就把最复杂的部分放到 TCP 协议中，而网际层协议 IP 相对比较简单，提供不可靠的数据报服务。所以数据链路层也没必要比 IP 协议有更多的功能，对于数据链路层的帧，不需要纠错，不需要序号，也不需要流量控制，仅仅把简单作为**首要要求**。
   * 总结：数据链路层的功能，接收方每收到一个帧，就进行 CRC 检验。如果 CRC 检验正确，就收下这个帧；反之，丢弃这个帧。
2. **封装成帧**
   * PPP 协议必须规定特殊的字符作为**帧定界符**，以便接收端可以准确的找到真的开始和结束位置
3. **透明性**
   * PPP 协议必须保证数据传输的透明性，即，如果数据中出现了和帧定界符一样的比特组合时，就要采取有效的措施来解决。
4. **多种网络层协议**
   * PPP 协议必须能够**在同一条物理链路上同时支持多种网络层协议**（如 IP 和 IPX等）的运行。当点对点链路所连接的是局域网或路由器时，PPP 协议必须同时支持在链路所连接的局域网或路由器上运行的各种网络层协议。
5. **多种类型链路**
   * 除了要支持多种网络层的协议外，PPP 还必须能够在多种类型的链路上运行。如：串行的（一次只发送一个比特）或并行的（一次并行发送多个比特），同步的或异步的，低速的或高速的，电的或光的，交换的（动态的）或非交换的（静态的）点对点链路。
6. **差错检测**
   * PPP 协议必须能够对接收端收到的帧进行检测，并**立即丢失有差错的帧**。这样可以节约网络资源，可以让错误的帧不在网络上继续转发。
7. **检测连接状态**
   * PPP 协议必须具有一种机制能够及时（不超过几分钟）自动检测出链路是否处于正常工作状态。当出现故障的链路隔了一段时间后又重新恢复正常工作时，就特别需要有这种及时检测功能。
8. **最大传送单元**
   * PPP 协议必须对每一种类型的点对点链路设置**最大传送单元 MTU** 的标准默认值。这样做是为了促进各种实现之间的互操作性。如果高层协议发送的分组过长并超过 MTU 的数值，PPP 就要丢弃这样的帧，并返回差错。
9. **网络层地址协商**
   * PPP 协议必须提供一种机制使通信的两个网络层的实体能够通过协商知道或能够配置彼此的网络层地址。因为如果仅仅在链路层建立了连接而不知道对方网络层地址，则还不能保证网络层可以传送分组。
10. **数据压缩协商**
    * PPP 协议必须提供一种方法来协商使用数据压缩算法。但 PPP 协议并不要求将数据压缩算法进行标准化。

### 5.3 协议的组成

1. 一个将 IP 数据报封装到串行链路（同步串行/异步串行）的方法
2. 一个用来建立、配置和测试数据链路连接的**链路控制协议 LCP**（Link Control Protocol）-> **身份验证**
3. 一套**网络控制协议 NCP**（Network Control Protocol）：ppp 可支持多种网络层协议，每个不同的网络层协议都要一个相应的 NCP 来配置，为网络层协议建立和配置逻辑连接

### 5.4 协议的状态图

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDo5EdSa50r-CAEhhur%2F-MDo9b1tS9K1YKR7IYxJ%2Fimage.png?alt=media\&token=3d4d7b21-3634-4b24-bc9d-038a66bafe03)

### 5.5 协议的帧格式

![PPP 帧的格式](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MD_h63DCnn7zumBE33i%2F-MD_hUK6_z6uRbRXd5Vr%2Fimage.png?alt=media\&token=970cec85-329d-4774-9957-65e4dc776582)

**首部（四个字段）：**

* 第一个字段是**标志字段 F**（Flag），规定为 0x7E，**表示一个帧的开始或结束**。连续两帧之间只需要用一个标志字段，如果出现两个连续的标志字段，就表示中间有一个空帧，应当丢弃。
* 第二个字段是**地址字段 A**，目前无实际含义
* 第三个字段是**控制字段 C**，目前无实际含义
* 第四个字段是 **2 字节的协议字段**
  * 0x0021，表示帧的信息字段是 IP 数据报
  * 0xC021，表示帧的信息字段是 LCP 的数据

**尾部（两个字段）：**

* 第一个字段是 使用 CRC 的帧检验序列 FCS
* 第二个字段和首部的第一个字段一样

### 5.6 字节填充

当信息字段中出现了和标志字段一样的比特（0x7E）组合时，就必须采取一些措施使这种形式上和标志字段一样的比特组合不出现在信息字段中。具体填充方法如下：

* 把信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列（0x7D，0x5E）
* 若信息字段中出现了一个 0x7D 的字节（即出现了和转义字符一样的比特组合），则把 0x7D 转变为 2 字节序列（0x7D，0x5D）
* 若信息字段中出现 ASCII 码的控制字符（即数值小于 0x20 的字符），则在该字符前面要加入一个 0x7D 字节，同时将该字符的编码加以改变。例如，出现 0x03，就要把它转变为 2 字节序列（0x7D，0x23）

### 5.7 零比特填充

PPP 协议用在 SONET/SDH 链路时，使用同步传输（一连串的特比连续传送）而不是异步传输（逐个字符地传送）。在这种情况下，PPP 协议采用零比特填充方法来实现透明传输。

**具体做法：**

* 在信息字段中，只要发现有 5 个连续的 1，则立即填入一个 0
* 接收端，如果发现 5 个连续的 1，就把后面的 0 删除，还原数据

**原因：**

* 因为标志字段为 0x7E，二进制为：0111 1110，经过上述操作，就会将信息字段中出现标志字段的可能性避免

## 6. HDLC 协议

高级数据链路控制（High-Level Data Link Control），是一个再同步网上传输数据，**面向比特**的数据链路层协议，它是由国际标准化组织（ISO）根据 IBM 公司的 SDLC（SynchronousData Link Control）协议扩展开发而成的。

数据报文可透明传输，用于实现透明传输的 **0比特插入法** 易于硬件实现

**采用全双工通信**

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

### 6.1 主站、从站、复合站

**主站的主要功能**是发送命令（包括数据信息）帧、接收响应帧，并负责对整个链路的控制系统的初启、流程的控制、差错检测或恢复等

**从站的主要功能**是接收由主站发来的命令帧，向主站发送响应帧，并且配合主站参与差错恢复等链路控制

**复合站的主要功能**是既能发送，又能接收命令帧和响应帧，并且负责对整个链路的控制

**三种数据操作方式：**

1. 正常响应方式
2. 异步平衡方式
3. 异步响应方式

### 6.2 协议的帧格式

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDoBFlS6pKyws2_7Xap%2F-MDoEEQyNn9Qc606gTiP%2Fimage.png?alt=media\&token=b1b81f40-bcde-4aeb-9ee8-b4b067307aa0)

**控制字段C：**

1. 信息帧（I）第一位为 **0**，用来**传输数据信息**，或使用捎带技术对数据进行确认
2. 监督帧（S）**10**，用于**流量控制和差错控制**，执行对信息帧的确认、请求重发和请求暂停发送等功能
3. 无编号帧（U）**11**，用于提供对**链路**的建立、拆除等多种控制功能

## 7. ppp协议 & HDLC协议 对比

**相同点：**

* HDLC、PPP只支持全双工链路
* 都可以实现透明传输
* 都可以实现差错检测，但不能纠错

**不同点：**

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDoBFlS6pKyws2_7Xap%2F-MDoFgLnO0ZR9CL4V6cW%2Fimage.png?alt=media\&token=e441c6c5-6ada-4203-aedc-9f0254a5713d)

### 7.1 知识脑图

![](https://2396550738-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8zvqNNVZctOHx6v8No%2F-MDoBFlS6pKyws2_7Xap%2F-MDoGYQIxqEqAnCMmCJQ%2FPPP%E5%8D%8F%E8%AE%AE%20%26%20HDLC%E5%8D%8F%E8%AE%AE.svg?alt=media\&token=206a1c69-3786-4414-8b94-d4c93af1c97a)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lfool.gitbook.io/computer-network/di-san-zhang-shu-ju-lian-lu/untitled.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
